
@font-face{font-family:"Lora";src:url("fonts/f1.ttf") format("truetype");font-weight:400 700;font-style:normal}
@font-face{font-family:"Lora";src:url("fonts/f2.ttf") format("truetype");font-weight:400 700;font-style:italic}
@font-face{font-family:"Poppins";src:url("fonts/f3.ttf");font-weight:400}
@font-face{font-family:"Poppins";src:url("fonts/f4.ttf");font-weight:500}
:root{
  --nuit:#0d0d0e; --ardoise:#17181c; --brume:#e9ebee; --creme:#f3f1ec; --creme-2:#e8e5dd; --encre:#141414; --encre-2:#4b4f58; --brume-2:rgba(233,235,238,.62); --brume-3:rgba(233,235,238,.28);
  --givre:#9098a8; --givre-2:#b7bdc9; --champagne:#d4cbb8;
  --serif:"Lora",Georgia,serif; --sans:"Poppins",system-ui,sans-serif;
  --ease:cubic-bezier(.22,.61,.36,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
html,body{background:var(--nuit);color:var(--brume);font-family:var(--serif);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
body{overflow-x:hidden;cursor:none}
@media (hover:none),(pointer:coarse){body{cursor:auto}}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
:focus-visible{outline:2px solid var(--givre-2);outline-offset:3px}
.wrap{width:min(1240px,calc(100% - 48px));margin:0 auto}
.sans{font-family:var(--sans)}
h1,h2,h3{font-weight:400;line-height:1.08;letter-spacing:-.012em}
p{max-width:62ch}
.lede{font-size:clamp(19px,1.5vw,22px);color:var(--brume-2);line-height:1.55}

/* ---------- curseur de brume ---------- */
#mist{position:fixed;left:0;top:0;width:360px;height:360px;margin:-180px 0 0 -180px;border-radius:50%;pointer-events:none;z-index:50;
  background:radial-gradient(circle,rgba(144,152,168,.22) 0%,rgba(144,152,168,.08) 38%,rgba(144,152,168,0) 70%);
  filter:blur(6px);transition:transform .9s var(--ease),opacity .4s;opacity:0;mix-blend-mode:screen}
#dot{position:fixed;left:0;top:0;width:6px;height:6px;margin:-3px 0 0 -3px;border-radius:50%;background:var(--brume);pointer-events:none;z-index:51;opacity:0;transition:opacity .3s,transform .2s}
body.has-mouse #mist,body.has-mouse #dot{opacity:1}
body.on-link #dot{transform:scale(2.6);background:var(--champagne)}
@media (hover:none),(pointer:coarse){#mist,#dot{display:none}}

/* ---------- barre ---------- */
.bar{position:fixed;top:0;left:0;right:0;z-index:40;display:flex;align-items:center;justify-content:space-between;padding:20px 24px;
  background:linear-gradient(180deg,rgba(13,13,14,.85),rgba(13,13,14,0));transition:background .4s}
.bar.hidden{opacity:0;pointer-events:none}
.bar.solid{background:rgba(13,13,14,.92);backdrop-filter:blur(10px)}
.bar .logo{height:40px;filter:brightness(1.25)}
.bar .right{display:flex;align-items:center;gap:22px}
.lang{font-family:var(--sans);font-size:12px;letter-spacing:.06em;display:flex;gap:6px;color:var(--brume-3)}
.lang button{padding:6px 4px;min-width:30px;color:inherit}
.lang button[aria-pressed="true"]{color:var(--brume);border-bottom:1px solid var(--givre)}
.menu-btn{font-family:var(--sans);font-size:13px;letter-spacing:.04em;display:flex;align-items:center;gap:12px;padding:10px 0;min-height:44px}
.menu-btn i{width:28px;height:1px;background:var(--brume);position:relative;display:block;transition:transform .3s}
.menu-btn i::after{content:"";position:absolute;left:0;top:7px;width:18px;height:1px;background:var(--brume);transition:width .3s}
.menu-btn:hover i::after{width:28px}
.devis-btn{font-family:var(--sans);font-size:13px;letter-spacing:.04em;padding:11px 18px;border:1px solid var(--brume-3);border-radius:999px;min-height:44px;transition:border-color .3s,background .3s}
.devis-btn:hover{border-color:var(--brume);background:rgba(233,235,238,.06)}

/* ---------- menu plein écran ---------- */
#menu{position:fixed;inset:0;z-index:45;background:rgba(13,13,14,.96);display:grid;grid-template-columns:1.2fr .8fr;opacity:0;visibility:hidden;transition:opacity .45s var(--ease),visibility .45s}
#menu.open{opacity:1;visibility:visible}
#menu .close{position:absolute;top:22px;right:24px;font-family:var(--sans);font-size:13px;min-height:44px;padding:10px 0}
#menu nav{padding:14vh 6vw;display:flex;flex-direction:column;justify-content:center;gap:4px}
#menu nav a{font-size:clamp(32px,3.8vw,54px);line-height:1.12;color:var(--brume-3);transition:color .3s,transform .5s var(--ease);display:inline-block;width:max-content;max-width:100%}
#menu nav a:hover,#menu nav a.current{color:var(--brume);transform:translateX(14px)}
#menu nav a small{display:block;font-size:14px;font-family:var(--sans);color:var(--givre);margin-top:-4px;letter-spacing:.02em}
#menu aside{border-left:1px solid rgba(233,235,238,.1);padding:14vh 5vw;display:flex;flex-direction:column;justify-content:flex-end;gap:28px;color:var(--brume-2);font-size:15px}
#menu aside b{display:block;color:var(--brume);font-weight:400;margin-bottom:4px}
#menu aside .cities{line-height:1.9;max-width:28ch}

/* ---------- pièces (pages) ---------- */
.room{display:none}
.room.active{display:block;animation:roomIn .7s var(--ease)}
@keyframes roomIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.room.active{animation:none}#mist{transition:none}*{scroll-behavior:auto!important}}

/* ---------- accueil ---------- */
.hero{position:relative;height:100svh;min-height:640px;overflow:hidden}
.hero video,.hero .poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero .poster{background:url("img/hero-1800.jpg") center/cover,#000 url("data:image/jpeg;base64,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") center/cover;filter:brightness(.8)}
.hero video{opacity:0;transition:opacity 1.2s}
.hero video.ready{opacity:1}
.hero .veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,13,14,.15) 0%,rgba(13,13,14,.05) 45%,rgba(13,13,14,.92) 100%)}
.hero .txt{position:absolute;left:0;right:0;bottom:0;padding:0 24px 56px}
.hero h1{font-size:clamp(44px,7vw,104px);max-width:14ch;line-height:1.04;color:var(--brume)}
.hero .hkick{font-family:var(--sans);font-size:14px;letter-spacing:.04em;color:var(--givre-2);margin-bottom:14px}
.hero h1 em{font-style:italic;color:var(--givre-2)}
.hero .sub{margin-top:26px;display:flex;align-items:flex-end;justify-content:space-between;gap:40px;flex-wrap:wrap}
.hero .sub p{font-family:var(--sans);font-size:15px;color:var(--brume-2);max-width:56ch;line-height:1.7}
.hero .scroll{font-family:var(--sans);font-size:12px;letter-spacing:.08em;color:var(--brume-3);display:flex;align-items:center;gap:12px}
.hero .scroll i{display:block;width:1px;height:44px;background:linear-gradient(180deg,var(--givre),transparent);animation:drip 2.2s infinite}
@keyframes drip{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}

/* les trois portes : révélées par la brume */
.portes{position:relative;padding:120px 0 40px}
.portes h2{font-size:clamp(28px,3.4vw,44px);max-width:22ch;color:var(--brume)}
.portes .lede{margin-top:22px}
.doors{margin-top:64px;display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:rgba(233,235,238,.06)}
.door{position:relative;aspect-ratio:3/4.1;overflow:hidden;background:var(--ardoise);display:block}
.door img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) brightness(.42) contrast(1.1);transform:scale(1.03);transition:filter .6s var(--ease),transform .9s var(--ease)}
.door:hover img,.door:focus-visible img,.door.touched img{filter:grayscale(.15) brightness(.78) contrast(1.05);transform:scale(1)}
.door .frost{position:absolute;inset:0;background:radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(144,152,168,.28),rgba(144,152,168,0) 42%);opacity:0;transition:opacity .5s}
.door:hover .frost{opacity:1}
.door .cap{position:absolute;left:0;right:0;bottom:0;padding:26px 24px 28px;background:linear-gradient(180deg,rgba(13,13,14,0),rgba(13,13,14,.92) 60%)}
.door .cap h3{font-size:clamp(26px,2.6vw,38px);color:var(--brume)}
.door .cap p{font-family:var(--sans);font-size:14px;color:var(--brume-2);margin-top:8px;max-width:30ch;line-height:1.6}
.door .cap span{display:inline-block;margin-top:16px;font-family:var(--sans);font-size:13px;color:var(--givre-2);border-bottom:1px solid var(--givre);padding-bottom:3px;opacity:.75;transition:opacity .3s,transform .4s var(--ease);transform:translateY(4px)}
.door:hover .cap span{opacity:1;transform:none}

/* preuve : compteurs + citation */
.preuve{padding:120px 0 110px}
.preuve .grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}
.counts{display:grid;gap:34px}
.count b{font-weight:400;font-size:clamp(54px,6vw,86px);line-height:1;color:var(--brume);display:block;font-variant-numeric:tabular-nums}
.count span{font-family:var(--sans);font-size:14px;color:var(--brume-2);display:block;margin-top:6px}
.quote{font-size:clamp(22px,2.2vw,30px);line-height:1.4;font-style:italic;color:var(--brume)}
.quote cite{display:block;font-style:normal;font-family:var(--sans);font-size:13px;color:var(--givre-2);margin-top:22px;line-height:1.7}
.marques{margin-top:0;padding:64px 0 70px;overflow:hidden;background:var(--nuit);color:var(--brume);border-top:1px solid rgba(233,235,238,.08);border-bottom:1px solid rgba(233,235,238,.08)}
.marques p{font-family:var(--sans);font-size:13px;color:var(--brume-3);max-width:none;padding:0 24px}
.tape{margin-top:22px;display:flex;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.tape ul{display:flex;gap:0;list-style:none;flex:none;animation:tape 46s linear infinite;will-change:transform}
.tape.rev ul{animation-direction:reverse;animation-duration:58s}
.tape:hover ul{animation-play-state:paused}
.tape li{font-size:clamp(28px,3.4vw,52px);color:rgba(20,20,20,.5);padding:10px 48px;white-space:nowrap;transition:color .4s;position:relative}
.tape li::after{content:none}
.tape li:hover{color:var(--encre)}
@keyframes tape{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.tape ul{animation:none;flex-wrap:wrap}.tape{mask-image:none;-webkit-mask-image:none}}

/* ---------- pages des univers ---------- */
.dhero{position:relative;min-height:88svh;display:grid;grid-template-columns:1fr 1fr;align-items:end;overflow:hidden}
.dhero .pic{position:absolute;inset:0}
.dhero .pic img{width:100%;height:100%;object-fit:cover;filter:brightness(.55) saturate(.85)}
.dhero .pic::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,13,14,.92) 0%,rgba(13,13,14,.55) 55%,rgba(13,13,14,.2) 100%)}
.dhero .txt{position:relative;grid-column:1/-1;padding:160px 24px 70px}
.dhero .back{font-family:var(--sans);font-size:13px;color:var(--brume-2);display:inline-flex;gap:10px;align-items:center;min-height:44px}
.dhero .back::before{content:"";width:22px;height:1px;background:var(--givre)}
.dhero h1{margin-top:28px;font-size:clamp(44px,7vw,98px);line-height:1;max-width:12ch}
.dhero h1 em{font-style:italic;color:var(--givre-2)}
.dhero .deg{font-variant-numeric:tabular-nums;color:var(--brume)}
.dhero .deg::before{content:"−";color:var(--givre)}
.dhero .lede{margin-top:30px;max-width:52ch}
.sec{padding:100px 0}
.sec h2{font-size:clamp(30px,3.6vw,48px);max-width:20ch}
.sec .lede{margin-top:16px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.two img{width:100%;aspect-ratio:4/5;object-fit:cover;filter:saturate(.85)}
.list{margin-top:36px;border-top:1px solid rgba(233,235,238,.12)}
.list details{border-bottom:1px solid rgba(233,235,238,.12)}
.list summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;font-size:clamp(20px,1.8vw,26px);cursor:pointer;min-height:44px}
.list summary::-webkit-details-marker{display:none}
.list summary i{width:14px;height:14px;position:relative;flex:none}
.list summary i::before,.list summary i::after{content:"";position:absolute;background:var(--givre-2);left:0;top:6px;width:14px;height:1px;transition:transform .35s var(--ease)}
.list summary i::after{transform:rotate(90deg)}
.list details[open] summary i::after{transform:rotate(0)}
.list details p{padding:0 0 22px;color:var(--brume-2);font-size:16px;max-width:60ch}

.cas{padding:0;background:var(--nuit)}
.cas .wrap h2{padding:100px 0 50px}
.cas .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin:0;background:rgba(233,235,238,.08)}
.cas article{position:relative;min-height:520px;display:flex;flex-direction:column;justify-content:flex-end;padding:34px 30px;overflow:hidden;background:var(--ardoise)}
.cas article img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.5) saturate(.8);transition:transform 1.2s var(--ease),filter .8s}
.cas article:hover img{transform:scale(1.04);filter:brightness(.62) saturate(.9)}
.cas article::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,13,14,0) 30%,rgba(13,13,14,.9) 100%)}
.cas article > *{position:relative;z-index:1}
.cas article h3{font-size:26px;color:var(--brume)}
.cas article .meta{font-family:var(--sans);font-size:13px;color:var(--givre-2);margin-top:6px;line-height:1.6}
.cas article p{margin-top:12px;color:var(--brume-2);font-size:15px;max-width:34ch}
.cas .stat{font-size:64px;line-height:1;margin-top:0;margin-bottom:auto;color:var(--brume);padding-top:0}
.cas .stat small{display:block;font-family:var(--sans);font-size:13px;color:var(--brume-2);margin-top:8px}

/* Nitro : la carte givrée + les 3 temps */
.carte{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;margin-top:50px;background:rgba(233,235,238,.06)}
.item{position:relative;background:var(--nuit);padding:30px 28px 28px;min-height:170px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}
.item::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(212,203,184,.16),rgba(212,203,184,0) 46%);opacity:0;transition:opacity .5s}
.item:hover::before{opacity:1}
.item h3 small,.carte-names small{display:block;font-family:var(--sans);font-size:13px;letter-spacing:0;color:var(--givre-2);margin-top:6px;font-weight:400}
.item h3{font-size:clamp(22px,2vw,28px);position:relative}
.item p{font-family:var(--sans);font-size:14px;color:var(--brume-2);margin-top:8px;position:relative;max-width:36ch}
.item .tag{font-family:var(--sans);font-size:12px;color:var(--champagne);position:absolute;top:32px;right:28px;letter-spacing:.02em}
.item h3{padding-right:110px}
.temps{padding:120px 0}
.temps .step{display:grid;grid-template-columns:120px 1fr;gap:40px;align-items:start;padding:56px 0;border-top:1px solid rgba(233,235,238,.12);opacity:.28;transform:translateY(14px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.temps .step.in{opacity:1;transform:none}
.temps .step .n{font-size:64px;line-height:1;color:transparent;-webkit-text-stroke:1px rgba(233,235,238,.75);font-style:normal}
.temps .step h3{font-size:clamp(30px,3.4vw,46px)}
.temps .step p{margin-top:14px;color:var(--brume-2)}
.temps .step:last-child h3{color:var(--champagne)}
.faq{padding:0 0 110px}
/* ce qui se passe vraiment */
.vrai{padding:110px 0;border-top:1px solid rgba(20,20,20,.12)}
.vrai h2{font-size:clamp(30px,3.6vw,48px);max-width:18ch}
.vrai .lede{margin-top:16px}
.vrai .steps{margin-top:60px;display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:rgba(20,20,20,.12)}
.vrai .s{background:var(--creme);padding:0 0 30px;position:relative}
.vrai .s img{width:100%;aspect-ratio:4/3;object-fit:cover;filter:saturate(.85)}
.vrai .s b{display:block;font-weight:400;font-family:var(--sans);font-size:13px;color:#7d8596;margin:22px 26px 0}
.vrai .s h3{font-size:clamp(22px,2vw,28px);margin:6px 26px 0}
.vrai .s p{font-size:15px;color:var(--encre-2);margin:10px 26px 0;max-width:34ch}
.vrai .phrase{margin-top:70px;font-size:clamp(26px,3vw,40px);line-height:1.3;max-width:26ch;color:var(--encre)}
.vrai .phrase em{font-style:italic;color:#8a7a56}
.vrai .facts{margin-top:56px;display:grid;grid-template-columns:repeat(4,1fr);gap:28px;font-family:var(--sans);font-size:14px;color:var(--encre-2);line-height:1.6;border-top:1px solid rgba(20,20,20,.14);padding-top:28px}
.vrai .facts b{display:block;font-family:var(--serif);font-weight:400;font-size:22px;color:var(--encre);margin-bottom:6px}
.vrai .facts .todo{color:#9a8f73;font-size:11px;font-style:italic}
@media (max-width:900px){.vrai{padding:72px 0}.vrai .steps,.vrai .facts{grid-template-columns:1fr}}


/* ---------- zones claires ---------- */
.light{background:var(--creme);color:var(--encre)}
.light .lede{color:var(--encre-2)}
.light h1,.light h2,.light h3{color:var(--encre)}
.light .list{border-top-color:rgba(20,20,20,.18)}
.light .list details{border-bottom-color:rgba(20,20,20,.14)}
.light .list details p{color:var(--encre-2)}
.light .list summary i::before,.light .list summary i::after{background:var(--encre)}
.light .item{background:var(--creme)}
.light .carte{background:rgba(20,20,20,.12)}
.light .item p{color:var(--encre-2)}
.light .item .tag{color:var(--givre-2);color:#7d8596}
.light .temps .step{border-top-color:rgba(20,20,20,.14)}
.light .temps .step p{color:var(--encre-2)}
.light .temps .step .n{-webkit-text-stroke-color:rgba(20,20,20,.7)}
.light .temps .step:last-child h3{color:#8a7a56}
.light .faq{padding-bottom:110px}
.sec h2,.vrai h2,.temps h2,.faq h2,.cas h2{margin-bottom:0}
.sec .lede,.vrai .lede{margin-top:22px}
.sec .list,.vrai .steps{margin-top:56px}

/* ---------- ouverture : de +20° à −196° ---------- */
#ouverture{position:fixed;inset:0;z-index:100;background:var(--creme);color:var(--encre);display:grid;place-items:center;overflow:hidden;cursor:pointer;transition:opacity .9s var(--ease),background 1.1s,color .35s}
#ouverture.froid{background:var(--nuit);color:var(--brume)}
#ouverture.off{opacity:0;pointer-events:none}
#ouverture .temp{position:relative;font-size:clamp(120px,24vw,340px);line-height:1;font-variant-numeric:tabular-nums;letter-spacing:-.03em;display:flex;align-items:flex-start;transition:opacity .7s,transform .7s var(--ease)}
#ouverture .temp .u{font-size:.42em;margin-top:.1em;color:var(--givre)}
#ouverture .cap{position:absolute;bottom:13vh;left:0;right:0;text-align:center;font-family:var(--sans);font-size:14px;color:var(--givre-2);opacity:0;transition:opacity .8s;padding:0 24px}
#ouverture.pose .cap{opacity:1}
#ouverture .lg{position:absolute;height:clamp(84px,15vw,210px);opacity:0;transform:scale(.9);transition:opacity .8s,transform .8s var(--ease)}
#ouverture.logo .temp{opacity:0;transform:scale(1.08)}
#ouverture.logo .lg{opacity:1;transform:none}
#ouverture .brume{position:absolute;inset:-25%;background:radial-gradient(ellipse 38% 22% at 30% 96%,rgba(233,235,238,.5),transparent 70%),radial-gradient(ellipse 42% 20% at 72% 100%,rgba(233,235,238,.38),transparent 70%),radial-gradient(ellipse 60% 18% at 50% 104%,rgba(144,152,168,.45),transparent 70%);opacity:0;filter:blur(34px);transform:translateY(14%);transition:opacity 1.8s,transform 3s var(--ease)}
#ouverture.froid .brume{opacity:1;transform:none}
#ouverture .skip{position:absolute;right:24px;top:22px;font-family:var(--sans);font-size:13px;color:inherit;opacity:.6;min-height:44px;padding:0 6px}
#ouverture .skip:hover{opacity:1}
body.ouvre{overflow:hidden}
body.ouvre .bar{opacity:0}
.bar{transition:opacity .8s}
@media (prefers-reduced-motion:reduce){#ouverture{display:none}}

/* ---------- formules Ø ---------- */
.formules{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:50px;background:rgba(233,235,238,.08)}
.formules .f{background:var(--nuit);padding:34px 28px 30px;cursor:pointer;position:relative;overflow:hidden;min-height:200px;display:flex;flex-direction:column;justify-content:space-between}
.formules .f::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(212,203,184,.16),rgba(212,203,184,0) 46%);opacity:0;transition:opacity .5s}
.formules .f:hover::before{opacity:1}
.formules .f b{display:block;font-weight:400;font-size:clamp(34px,3.4vw,52px);letter-spacing:.04em;line-height:1;position:relative}
.formules .f p{margin-top:14px;font-size:15px;color:var(--brume-2);max-width:30ch;position:relative}
.formules .f .more{margin-top:22px;font-family:var(--sans);font-size:13px;color:var(--givre-2);position:relative;display:inline-flex;gap:10px;align-items:center}
.formules .f .more::after{content:"";width:18px;height:1px;background:var(--givre);transition:width .4s var(--ease)}
.formules .f:hover .more::after{width:34px}
@media (max-width:760px){.formules{grid-template-columns:1fr}}

/* ---------- fiche (détail d'une rubrique) ---------- */
#fiche{position:fixed;inset:0;z-index:70;display:grid;grid-template-columns:1fr 1fr;background:var(--creme);color:var(--encre);transform:translateY(100%);transition:transform .75s var(--ease);visibility:hidden}
#fiche.open{transform:none;visibility:visible}
#fiche .fpic{position:relative;background:var(--ardoise);overflow:hidden}
#fiche .fpic img{width:100%;height:100%;object-fit:cover;display:block}
#fiche .fpic .ph{position:absolute;inset:0;display:grid;place-items:center;color:var(--givre-2);font-family:var(--sans);font-size:14px;text-align:center;padding:24px;background:repeating-linear-gradient(135deg,rgba(233,235,238,.04) 0 12px,transparent 12px 24px)}
#fiche .fpic .ph span{border:1px solid rgba(233,235,238,.25);padding:14px 20px}
#fiche.has-img .fpic .ph{display:none}
#fiche .fthumbs{position:absolute;left:16px;right:16px;bottom:16px;display:flex;gap:6px;z-index:2}
#fiche .fthumbs button{width:64px;height:48px;padding:0;border:1px solid rgba(255,255,255,.35);background:#000 center/cover;cursor:pointer;opacity:.75;transition:opacity .3s,border-color .3s}
#fiche .fthumbs button[aria-current="true"]{opacity:1;border-color:#fff}
#fiche .fthumbs button:hover{opacity:1}
@media (max-width:860px){#fiche .fthumbs button{width:52px;height:40px}}
#fiche .ftxt{padding:44px 6vw 60px;overflow:auto}
#fiche .back{font-family:var(--sans);font-size:13px;color:var(--encre-2);display:inline-flex;gap:10px;align-items:center;min-height:44px;cursor:pointer}
#fiche .back::before{content:"";width:22px;height:1px;background:var(--encre)}
#fiche .kind{margin-top:34px;font-family:var(--sans);font-size:13px;color:#7d8596}
#fiche h2{margin-top:10px;font-size:clamp(34px,4vw,56px);line-height:1.02;letter-spacing:-.01em}
#fiche h2 b{font-weight:400;letter-spacing:.04em}
#fiche .lede{margin-top:22px;color:var(--encre-2)}
#fiche .fbody{margin-top:34px;max-width:54ch}
#fiche .fbody h3{font-size:19px;margin-top:26px}
#fiche .fbody p{margin-top:10px;color:var(--encre-2);font-size:16px;line-height:1.65}
#fiche .ffacts{margin-top:36px;display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:22px 28px;border-top:1px solid rgba(20,20,20,.14);padding-top:24px;font-family:var(--sans);font-size:14px;color:var(--encre-2);line-height:1.6}
#fiche .ffacts div b{display:block;font-family:var(--serif);font-weight:400;font-size:20px;color:var(--encre);margin-bottom:4px}
#fiche .todo{margin-top:26px;font-family:var(--sans);font-size:12px;color:#9a8f73;font-style:italic}
#fiche .btn{margin-top:38px;display:inline-flex;align-items:center;gap:12px;background:var(--encre);color:var(--creme);font-family:var(--sans);font-size:14px;padding:16px 26px;border:0;cursor:pointer;min-height:48px}
#fiche .btn:hover{background:#2a2b30}
.item,.formules .f{cursor:pointer}
.item .more{font-family:var(--sans);font-size:13px;color:var(--givre-2);position:relative;display:inline-flex;gap:10px;align-items:center;margin-top:22px}
.item .more::after{content:"";width:18px;height:1px;background:var(--givre);transition:width .4s var(--ease)}
.item:hover .more::after{width:34px}
.light .item::before{background:radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(144,152,168,.3),rgba(144,152,168,0) 46%)}
.light .item .more{color:#7d8596}
.light .item .more::after{background:var(--encre)}
@media (max-width:860px){#fiche{grid-template-columns:1fr;grid-template-rows:42vh 1fr}#fiche .ftxt{padding:24px 24px 60px}}

/* ---------- pour votre événement ---------- */
.occ{padding:120px 0 40px}
.occ h2{max-width:22ch}
.occ .lede{margin-top:22px}
.occ .rows{margin-top:56px;border-top:1px solid rgba(233,235,238,.14)}
.occ .row{display:grid;grid-template-columns:1.35fr 1.3fr auto;gap:40px;align-items:center;padding:30px 0;border-bottom:1px solid rgba(233,235,238,.14);cursor:pointer;position:relative}
.occ .row h3{font-size:clamp(24px,2.3vw,34px);transition:transform .5s var(--ease)}
.occ .row:hover h3{transform:translateX(10px)}
.occ .row p{font-family:var(--sans);font-size:15px;color:var(--brume-2);max-width:46ch;line-height:1.65}
.occ .row .more{font-family:var(--sans);font-size:13px;color:var(--givre-2);display:inline-flex;gap:10px;align-items:center;white-space:nowrap}
.occ .row .more::after{content:"";width:18px;height:1px;background:var(--givre);transition:width .4s var(--ease)}
.occ .row:hover .more::after{width:34px}
.light .occ .rows,.light .occ .row{border-color:rgba(20,20,20,.14)}
.light .occ h2,.light .occ h3{color:var(--encre)}
.light .occ .row p{color:var(--encre-2)}
.light .occ .row .more{color:#7d8596}
.light .occ .row .more::after{background:var(--encre)}
@media (max-width:860px){.occ .row{grid-template-columns:1fr;gap:10px;padding:24px 0}.occ{padding:80px 0 20px}}

/* ---------- galerie ---------- */
.gal{padding:100px 0 110px}
.gal.gal-suite{padding-top:0}
.gal .wrap h2{margin-bottom:34px}
.mosaic{columns:4 260px;column-gap:4px;padding:0 24px}
.mosaic figure{margin:0 0 4px;break-inside:avoid;overflow:hidden;background:var(--ardoise);cursor:zoom-in}
.mosaic img{width:100%;height:auto;display:block;transition:transform 1.2s var(--ease),filter .6s}
.mosaic figure:hover img{transform:scale(1.03)}
.gal .hint{font-family:var(--sans);font-size:12px;color:var(--brume-3);padding:14px 24px 0}
.light .gal .hint{color:#7d8596}
@media (max-width:860px){.mosaic{columns:2;padding:0 12px}}
/* visionneuse */
#lb{position:fixed;inset:0;z-index:90;background:rgba(13,13,14,.96);display:none;align-items:center;justify-content:center;cursor:zoom-out}
#lb.open{display:flex}
#lb img{max-width:92vw;max-height:88vh;object-fit:contain}
#lb button{position:absolute;top:50%;transform:translateY(-50%);background:none;border:0;color:var(--brume);font-size:42px;font-family:var(--serif);padding:20px;cursor:pointer;min-width:60px;min-height:60px}
#lb .p{left:8px}#lb .n{right:8px}
#lb .x{top:18px;right:12px;transform:none;font-size:15px;font-family:var(--sans)}

/* ---------- témoin ---------- */
.temoin{padding:100px 0 110px}
.temoin blockquote{font-size:clamp(22px,2.4vw,34px);line-height:1.4;font-style:italic;max-width:30ch;color:var(--brume)}
.temoin cite{display:block;font-style:normal;font-family:var(--sans);font-size:13px;color:var(--givre-2);margin-top:24px;line-height:1.7}
.light .temoin blockquote{color:var(--encre)}
.light .temoin cite{color:#7d8596}

/* ---------- la maison / Jeff ---------- */
.maison{padding:110px 0 100px}
.maison .grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.maison .pic{aspect-ratio:4/5;overflow:hidden;background:var(--ardoise)}
.maison .pic img{width:100%;height:100%;object-fit:cover;filter:saturate(.9)}
.maison h2{max-width:16ch}
.maison .lede{margin-top:24px}
.maison p.sans{font-family:var(--sans);font-size:15px;color:var(--brume-2);line-height:1.7;margin-top:18px;max-width:52ch}
.maison .sig{margin-top:30px;font-size:22px;font-style:italic;color:var(--brume)}
.maison .sig small{display:block;font-style:normal;font-family:var(--sans);font-size:13px;color:var(--givre-2);margin-top:6px}
.maison .dl{margin-top:36px;display:flex;gap:14px;flex-wrap:wrap}
.btn-dl{display:inline-flex;align-items:center;gap:12px;font-family:var(--sans);font-size:14px;color:var(--brume);border:1px solid rgba(233,235,238,.35);padding:14px 22px;min-height:48px;text-decoration:none;transition:border-color .3s,background .3s}
.manif{padding:110px 24px 30px;display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:start}
.manif .big{font-size:clamp(34px,4.6vw,64px);line-height:1.08;color:var(--brume);max-width:14ch}
.manif .big em{font-style:italic;color:var(--givre-2)}
.manif .mis p{font-family:var(--sans);font-size:15px;line-height:1.75;color:var(--brume-2);margin-top:14px;max-width:52ch}
.manif .chain{list-style:none;margin-top:26px;padding:0;counter-reset:c}
.manif .chain li{counter-increment:c;font-size:21px;color:var(--brume);padding:14px 0;border-top:1px solid rgba(233,235,238,.14);display:flex;gap:18px;align-items:baseline}
.manif .chain li::before{content:counter(c);font-family:var(--sans);font-size:12px;color:var(--givre-2);min-width:14px}
.trio{padding:90px 24px 40px}
.trio .cols{display:grid;grid-template-columns:repeat(3,1fr);margin-top:40px;border-top:1px solid rgba(233,235,238,.14)}
.trio .c{padding:30px 28px 34px 0}
.trio .c+.c{padding-left:28px;border-left:1px solid rgba(233,235,238,.14)}
.trio .n{display:block;font-family:var(--serif,inherit);font-weight:300;font-size:clamp(72px,8vw,120px);line-height:.9;color:var(--brume)}
.trio h3{font-size:22px;margin-top:10px;color:var(--brume)}
.trio p{font-family:var(--sans);font-size:14px;line-height:1.7;color:var(--brume-2);margin-top:14px}
.trio .note{font-size:13px;color:var(--givre-2)}
.trio ul{list-style:none;padding:0;margin-top:16px}
.trio .ind li{font-family:var(--sans);font-size:14px;color:var(--brume);padding:8px 0;border-bottom:1px solid rgba(233,235,238,.08)}
.trio .prop li button{all:unset;cursor:pointer;display:flex;justify-content:space-between;width:100%;font-family:var(--sans);font-size:14px;color:var(--brume);padding:10px 0;border-bottom:1px solid rgba(233,235,238,.08);min-height:24px}
.trio .prop li button::after{content:"+";color:var(--givre-2)}
.trio .prop li button:hover,.trio .prop li button:focus-visible{color:#fff}
.trio .prop li button:focus-visible{outline:1px solid var(--givre-2);outline-offset:4px}
.equipe{padding:90px 24px 40px}
.equipe .team{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:36px}
.equipe figure{margin:0}
.equipe img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block;filter:grayscale(1) contrast(1.05)}
.equipe figcaption{margin-top:12px;font-family:var(--sans)}
.equipe figcaption b{display:block;font-family:inherit;font-weight:500;font-size:15px;color:var(--brume)}
.equipe figcaption .nick{display:block;font-family:var(--serif,inherit);font-style:italic;font-size:17px;color:var(--givre-2);margin:4px 0 2px}
.equipe figcaption span{font-size:13px;color:var(--brume-2)}
.equipe .bases{margin-top:30px;font-family:var(--sans);font-size:15px;color:var(--brume-2)}
.equipe .bases b{color:var(--brume);font-weight:500}
.films{padding:90px 24px 40px}
.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:30px}
.fgrid.one{grid-template-columns:1fr;max-width:980px}
.film{margin:0;position:relative;cursor:pointer;background:#000}
.film img,.film video{width:100%;aspect-ratio:1172/592;object-fit:cover;display:block}
.film .play{position:absolute;left:50%;top:calc(50% - 30px);width:68px;height:68px;margin:-34px 0 0 -34px;border-radius:50%;background:rgba(13,13,14,.55);border:1px solid rgba(233,235,238,.6);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:transform .3s}
.film .play::after{content:"";position:absolute;left:27px;top:22px;border-left:18px solid var(--brume);border-top:12px solid transparent;border-bottom:12px solid transparent}
.film:hover .play{transform:scale(1.08)}
.film.on .play,.film.on img{display:none}
.film.wait .play{opacity:.5}
.film figcaption{padding:14px 0 0;font-family:var(--sans)}
.film figcaption b{display:block;font-weight:500;font-size:15px;color:var(--brume)}
.film figcaption span{font-size:13px;color:var(--brume-2)}
.journal .art img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;margin-bottom:6px}
.light .trio h3,.light .manif .big{color:var(--encre)}
@media (max-width:900px){.manif{grid-template-columns:1fr;gap:34px;padding-top:80px}.trio .cols{grid-template-columns:1fr}.trio .c,.trio .c+.c{padding:26px 0;border-left:0;border-bottom:1px solid rgba(233,235,238,.14)}.equipe .team{grid-template-columns:1fr 1fr}.fgrid{grid-template-columns:1fr}}
.cas article.go{cursor:pointer}
.cas article .more{margin-top:14px;font-family:var(--sans);font-size:13px;color:var(--brume);text-decoration:underline;text-decoration-color:rgba(233,235,238,.35);text-underline-offset:4px}
.cas-room .ckick{margin-top:26px;font-size:14px;color:var(--givre-2)}
.cas-room .dhero h1{margin-top:8px}
.cbody{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;padding:100px 24px 30px}
.cfacts{margin:0;border-top:1px solid rgba(233,235,238,.14)}
.cfacts div{padding:16px 0;border-bottom:1px solid rgba(233,235,238,.14)}
.cfacts dt{font-family:var(--sans);font-size:12px;color:var(--givre-2)}
.cfacts dd{margin:4px 0 0;font-family:var(--sans);font-size:15px;color:var(--brume);line-height:1.5}
.ctext p{font-size:19px;line-height:1.6;color:var(--brume-2);margin-top:18px;max-width:60ch}
.ctext h3{margin-top:40px;font-size:21px;color:var(--brume)}
.cpts{margin:16px 0 0;padding:0;list-style:none}
.cpts li{font-family:var(--sans);font-size:15px;line-height:1.6;color:var(--brume-2);padding:12px 0 12px 22px;border-bottom:1px solid rgba(233,235,238,.1);position:relative}
.cpts li::before{content:"";position:absolute;left:0;top:22px;width:10px;height:1px;background:var(--givre-2)}
.cphotos{padding:50px 24px 20px}
.cgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.cgrid img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block}
.cq{margin:60px 0 0;font-style:italic;font-size:clamp(22px,2.6vw,32px);line-height:1.4;color:var(--brume);max-width:34ch}
.cq cite{display:block;margin-top:18px;font-style:normal;font-family:var(--sans);font-size:13px;color:var(--brume-2)}
.ccta{padding:90px 24px 110px}
.ccta .row{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
@media (max-width:900px){.cbody{grid-template-columns:1fr;gap:40px;padding-top:70px}.cgrid{grid-template-columns:1fr 1fr}.ctext p{font-size:17px}.ccta .row .hb{width:100%}}
.tape.logos li{padding:12px 38px;display:flex;align-items:center}
.tape.logos img{height:calc(var(--h,40) * 1px);width:auto;max-width:220px;object-fit:contain;display:block;filter:brightness(0) invert(1);opacity:.42;transition:opacity .4s}
.tape.logos li:hover img{opacity:1}
.tape.logos+.tape.logos{margin-top:10px}
@media (max-width:760px){.tape.logos img{height:calc(var(--h,40) * .7px);max-width:150px}.tape.logos li{padding:8px 24px}}
.trio .n{font-weight:700;font-size:clamp(150px,16vw,240px);line-height:.85;color:transparent;-webkit-background-clip:text;background-clip:text;background-size:cover;background-position:center;-webkit-text-stroke:1px rgba(233,235,238,.35);filter:saturate(1.1)}
.trio .n1{background-image:url("img/ja-11-900.jpg")}.trio .n9{background-image:url("img/ja-16-900.jpg")}.trio .n6{background-image:url("img/ja-12-900.jpg")}
.quote.qusa{position:relative;padding:44px 40px 40px;overflow:hidden;isolation:isolate}
.quote.qusa::before{content:"";position:absolute;inset:0;z-index:-2;background:url("img/cas-usa-1200.jpg") center 30%/cover;filter:saturate(1.15)}
.quote.qusa::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(13,13,14,.45),rgba(13,13,14,.82) 70%)}
@media (max-width:760px){.quote.qusa{padding:34px 24px 30px}}
.occ .row{padding:34px 24px;margin:0 -24px;overflow:hidden;isolation:isolate}
.occ .row .rbg{position:absolute;inset:0;z-index:-2;background-size:cover;background-position:center;opacity:.42;filter:grayscale(.3);transform:scale(1.02);transition:opacity .6s var(--ease),transform 1.2s var(--ease),filter .6s}
.occ .row::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(13,13,14,.92) 0%,rgba(13,13,14,.7) 55%,rgba(13,13,14,.45) 100%)}
.occ .row:hover .rbg,.occ .row:focus-visible .rbg{opacity:.75;filter:none;transform:scale(1)}
@media (max-width:760px){.occ .row .rbg{opacity:.45}}
.occ .row .ic{position:absolute;left:24px;top:50%;width:30px;height:30px;margin-top:-15px;color:var(--givre-2);opacity:.9}
.occ .row{padding-left:74px}
.occ .row.bonus{margin-top:26px;border-top:1px solid rgba(233,235,238,.14)}
.occ .row h3 .bt{display:block;width:max-content;font-family:var(--sans);font-size:12px;letter-spacing:.02em;color:var(--givre-2);border:1px solid rgba(233,235,238,.35);border-radius:99px;padding:3px 10px;margin-bottom:10px}
@media (max-width:760px){.occ .row .ic{top:30px;margin-top:0;width:26px;height:26px}.occ .row{padding-left:64px}}
.journal{padding-top:90px;padding-bottom:40px}
.journal .arts{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:36px;border-top:1px solid rgba(233,235,238,.14)}
.journal .art{display:flex;flex-direction:column;gap:10px;padding:26px 24px 28px 0;border-bottom:1px solid rgba(233,235,238,.14);color:var(--brume);text-decoration:none}
.journal .art+.art{padding-left:24px;border-left:1px solid rgba(233,235,238,.14)}
.journal time{font-family:var(--sans);font-size:12px;color:var(--givre-2)}
.journal h3{font-size:21px;line-height:1.25;font-weight:400}
.journal .art p{font-family:var(--sans);font-size:14px;line-height:1.6;color:var(--brume-2)}
.journal .art span{margin-top:auto;font-family:var(--sans);font-size:13px;color:var(--brume);text-decoration:underline;text-decoration-color:rgba(233,235,238,.3);text-underline-offset:4px}
.journal .art:hover span{text-decoration-color:currentColor}
.journal .more{display:inline-block;margin-top:26px;font-family:var(--sans);font-size:14px;color:var(--brume);text-decoration:underline;text-decoration-color:rgba(233,235,238,.3);text-underline-offset:4px}
@media (max-width:900px){.journal .arts{grid-template-columns:1fr}.journal .art,.journal .art+.art{padding:22px 0;border-left:0}}
@media (max-width:900px){
 .journal .arts{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-left:24px;gap:14px;border-top:0;margin-left:-24px;margin-right:-24px;padding:0 24px 8px;scrollbar-width:none}
 .journal .arts::-webkit-scrollbar{display:none}
 .journal .art,.journal .art+.art{flex:0 0 78%;scroll-snap-align:start;padding:0 0 18px;border:0;border-bottom:0}
 .trio .ind{display:flex;flex-wrap:wrap;gap:8px}
 .trio .ind li{border:1px solid rgba(233,235,238,.18);border-radius:999px;padding:7px 12px;font-size:13px}
 #accueil .gal .mosaic figure:nth-child(n+9){display:none}
}
.clink{color:inherit;text-decoration:underline;text-decoration-color:rgba(233,235,238,.3);text-underline-offset:4px;transition:text-decoration-color .3s;display:inline-block;padding:3px 0}
.clink:hover{text-decoration-color:currentColor}
.btn-dl::before{content:"";flex:0 0 18px;width:18px;height:18px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3Cpolyline points='7 10 12 15 17 10'/%3E%3Cline x1='12' y1='15' x2='12' y2='3'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3Cpolyline points='7 10 12 15 17 10'/%3E%3Cline x1='12' y1='15' x2='12' y2='3'/%3E%3C/svg%3E") center/contain no-repeat}
.hero-dl{margin-top:26px}
.hero-dl .btn-dl{background:rgba(13,13,14,.35);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
#menu .mdl{margin-top:18px}
#menu .mdl-t{font-family:var(--sans);font-size:13px;letter-spacing:.04em;color:var(--brume-2);display:flex;align-items:center;gap:10px;min-height:44px;padding:0}
#menu .mdl-t::before{content:"";width:18px;height:18px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3Cpolyline points='7 10 12 15 17 10'/%3E%3Cline x1='12' y1='15' x2='12' y2='3'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3Cpolyline points='7 10 12 15 17 10'/%3E%3Cline x1='12' y1='15' x2='12' y2='3'/%3E%3C/svg%3E") center/contain no-repeat}
#menu .mdl-l{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
#menu .mdl-l a{font-family:var(--sans);font-size:13px;color:var(--brume);border:1px solid rgba(233,235,238,.3);padding:10px 14px;min-height:40px;display:inline-flex;align-items:center;gap:8px;transition:border-color .3s,background .3s}
#menu .mdl-l a:hover{border-color:var(--brume);background:rgba(233,235,238,.06)}
#menu .mdl-l a::before{content:"";width:15px;height:15px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3Cpolyline points='7 10 12 15 17 10'/%3E%3Cline x1='12' y1='15' x2='12' y2='3'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3Cpolyline points='7 10 12 15 17 10'/%3E%3Cline x1='12' y1='15' x2='12' y2='3'/%3E%3C/svg%3E") center/contain no-repeat}
.btn-dl:hover{border-color:var(--brume);background:rgba(233,235,238,.06)}
.light .btn-dl{color:var(--encre);border-color:rgba(20,20,20,.3)}
.light .btn-dl:hover{border-color:var(--encre);background:rgba(20,20,20,.04)}
.light .maison h2,.light .maison .sig{color:var(--encre)}
.light .maison p.sans{color:var(--encre-2)}
.light .maison .sig small{color:#7d8596}
.dl-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:40px}
@media (max-width:860px){.maison .grid{grid-template-columns:1fr;gap:34px}.maison{padding:80px 0 70px}}

#fiche .ftop{display:flex;flex-direction:column;gap:18px}
#fiche .fsib{display:flex;gap:6px;flex-wrap:wrap}
#fiche .fsib button{font-family:var(--sans);font-size:12.5px;padding:8px 14px;border:1px solid rgba(20,20,20,.18);border-radius:999px;color:var(--encre-2);background:transparent;cursor:pointer;min-height:36px;white-space:nowrap;transition:background .3s,color .3s,border-color .3s}
#fiche .fsib button:hover{border-color:var(--encre);color:var(--encre)}
#fiche .fsib button[aria-selected="true"]{background:var(--encre);color:var(--creme);border-color:var(--encre)}
#fiche .fnav{display:flex;justify-content:space-between;gap:16px;margin-top:44px;padding-top:22px;border-top:1px solid rgba(20,20,20,.14)}
#fiche .fnav button{font-family:var(--serif);font-size:20px;color:var(--encre);background:none;border:0;cursor:pointer;padding:6px 0;min-height:44px;text-align:left}
#fiche .fnav button small{display:block;font-family:var(--sans);font-size:12px;color:#7d8596;margin-bottom:2px}
#fiche .fnav .fnext{text-align:right;margin-left:auto}
#fiche .fpic img{transition:opacity .35s var(--ease)}
#fiche .fpic img.fade{opacity:0}
#fiche .fp-prev,#fiche .fp-next{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:48px;height:48px;border-radius:50%;border:0;background:rgba(13,13,14,.45);color:#fff;font-size:28px;line-height:1;font-family:var(--serif);cursor:pointer;backdrop-filter:blur(6px);display:none;transition:background .3s}
#fiche .fp-prev{left:16px}#fiche .fp-next{right:16px}
#fiche .fp-prev:hover,#fiche .fp-next:hover{background:rgba(13,13,14,.75)}
#fiche.multi .fp-prev,#fiche.multi .fp-next{display:block}
#fiche .famb{position:absolute;bottom:18px;right:18px;z-index:3;font-family:var(--sans);font-size:11px;letter-spacing:.04em;color:rgba(255,255,255,.85);background:rgba(13,13,14,.5);padding:4px 9px;border-radius:999px}
#fiche .famb[hidden]{display:none}
#fiche .fcount{position:absolute;top:18px;left:18px;z-index:3;font-family:var(--sans);font-size:12px;letter-spacing:.06em;color:#fff;background:rgba(13,13,14,.45);padding:5px 10px;border-radius:999px;display:none}
#fiche.multi .fcount{display:block}
@media (max-width:860px){
  #fiche{grid-template-rows:46vh 1fr}
  #fiche .fsib{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 -24px;padding:0 24px 2px}
  #fiche .fsib::-webkit-scrollbar{display:none}
  #fiche .fthumbs{display:none}
  #fiche .fp-prev,#fiche .fp-next{width:40px;height:40px;font-size:24px}
  #fiche .fdots{display:flex}
}
#fiche .fdots{display:none;position:absolute;left:0;right:0;bottom:14px;justify-content:center;gap:7px;z-index:3}
#fiche .fdots i{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.45);transition:background .3s,transform .3s}
#fiche .fdots i.on{background:#fff;transform:scale(1.25)}

/* ---------- parcours ---------- */
.hero-cta{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.hb{font-family:var(--sans);font-size:14px;letter-spacing:.02em;padding:14px 24px;border-radius:999px;border:1px solid rgba(233,235,238,.5);color:var(--brume);min-height:48px;display:inline-flex;align-items:center;cursor:pointer;background:transparent;transition:background .3s,border-color .3s,color .3s}
.hb:hover{border-color:var(--brume);background:rgba(233,235,238,.08)}
.hb.solid{background:var(--brume);color:var(--encre);border-color:var(--brume)}
.hb.solid:hover{background:#fff}
.dsw{display:flex;gap:6px;flex-wrap:wrap;margin-top:18px}
.dsw a{font-family:var(--sans);font-size:12.5px;padding:8px 14px;border:1px solid rgba(233,235,238,.28);border-radius:999px;color:var(--brume-2);white-space:nowrap;transition:border-color .3s,color .3s,background .3s}
.dsw a:hover{border-color:var(--brume);color:var(--brume)}
.dsw a[aria-current="page"]{background:var(--brume);color:var(--encre);border-color:var(--brume)}
.suite{padding:100px 0 110px}
.doors.two{grid-template-columns:1fr 1fr;margin-top:40px}
.doors.two .door{aspect-ratio:16/10}
#tiroir .ctx{display:none;align-items:center;gap:10px;margin-top:22px;font-family:var(--sans);font-size:13px;color:var(--brume-2)}
#tiroir .ctx.on{display:flex}
#tiroir .ctx b{font-weight:500;color:var(--brume);border:1px solid rgba(233,235,238,.3);border-radius:999px;padding:6px 12px}
#tiroir .ctx button{color:var(--brume-3);font-size:18px;line-height:1;padding:4px 8px;min-height:32px}
#lb .cnt{position:absolute;top:24px;left:20px;font-family:var(--sans);font-size:13px;color:var(--brume-2)}
@media (max-width:760px){
  .hero .scroll{display:none}
  .hero-cta{width:100%}
  .hb{flex:1 1 auto;justify-content:center;padding:13px 18px}
  .dsw{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-right:-24px;padding-right:24px}
  .dsw::-webkit-scrollbar{display:none}
  .suite{padding:60px 0 70px}
  .doors.two{grid-template-columns:1fr;margin-top:26px}
}


/* ---------- envie : la glace, dès l'accueil ---------- */
.envie{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);align-items:center;background:#000;min-height:min(92vh,860px)}
.envie-pic{margin:0;height:100%;overflow:hidden;cursor:pointer;position:relative}
.envie-pic img{width:100%;height:100%;object-fit:cover;object-position:55% 35%;display:block;transition:transform 2.4s var(--ease)}
.envie-pic:hover img{transform:scale(1.03)}
.envie-txt{padding:64px clamp(28px,5vw,88px);max-width:560px}
.envie-txt h2{font-size:clamp(32px,3.4vw,52px);line-height:1.08;margin:0 0 22px}
.envie-txt p{font-family:var(--serif);font-size:19px;line-height:1.6;color:var(--brume-2,#c9ccd2);margin:0 0 30px}
.carte-strip{padding:56px 0 30px;background:#000}
.cs-head{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:22px}
.cs-head h2{font-size:clamp(24px,2.4vw,34px);margin:0}
.strip{display:flex;gap:3px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 16px 18px;padding-left:max(16px,calc((100vw - 1240px)/2));scroll-padding-left:max(16px,calc((100vw - 1240px)/2));scrollbar-width:none}
.strip::-webkit-scrollbar{display:none}
.strip figure{flex:0 0 clamp(240px,24vw,340px);margin:0;scroll-snap-align:start;cursor:pointer;position:relative}
.strip img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block;transition:filter .5s}
.strip figure:hover img{filter:brightness(1.08)}
.strip figcaption{font-family:var(--serif);font-size:17px;color:var(--brume);padding:12px 2px 0}
@media (max-width:860px){
 .envie{grid-template-columns:1fr;min-height:0}
 .envie-pic{height:auto}.envie-pic img{aspect-ratio:1;height:auto;object-position:58% 40%}
 .envie-txt{padding:34px 24px 46px}
 .envie-txt p{font-size:17px}
 .strip figure{flex-basis:68vw}
 .cs-head{flex-direction:column;gap:6px}
}
.door img[src*="ex-a160"]{object-position:50% 10%}

/* ---------- accueil : comment ça se passe + pourquoi 196 ---------- */
.temps-home .cta-row{padding-top:40px;border-top:1px solid rgba(233,235,238,.12)}
.why{padding:110px 0 40px}
.why h2{margin-bottom:30px;font-size:clamp(28px,3.4vw,44px)}
.why .r{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:40px;padding:34px 0;border-top:1px solid rgba(233,235,238,.12);align-items:baseline}
.why h3{font-size:clamp(24px,2.4vw,32px)}
.why p{font-family:var(--sans);font-size:16px;line-height:1.65;color:var(--brume-2);max-width:52ch}
.why .todo{font-size:11px;font-style:italic;color:#9a8f73;white-space:nowrap}
@media (max-width:760px){.why{padding:70px 0 20px}.why .r{grid-template-columns:1fr;gap:10px;padding:26px 0}.temps-home .cta-row .hb{width:100%}}

/* ---------- signature : le souffle du dragon ---------- */
.souffle{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:center;background:#000;border-top:1px solid rgba(233,235,238,.08)}
.souffle-txt{padding:72px clamp(28px,5vw,88px);max-width:600px;justify-self:end}
.souffle-txt h2{font-size:clamp(34px,3.6vw,56px);line-height:1.05;margin:0 0 22px}
.souffle-txt p{font-family:var(--serif);font-size:19px;line-height:1.6;color:var(--brume-2);margin:0 0 18px}
.souffle-txt .tag{font-family:var(--sans);font-size:14px;color:var(--champagne);margin-bottom:30px}
.souffle-pic{margin:0;height:100%;max-height:820px;overflow:hidden;cursor:pointer}
.souffle-pic img{width:100%;height:100%;object-fit:cover;object-position:50% 30%;display:block;transition:transform 2.4s var(--ease)}
.souffle-pic:hover img{transform:scale(1.03)}
@media (max-width:860px){.souffle{grid-template-columns:1fr}.souffle-pic{order:-1;height:auto}.souffle-pic img{aspect-ratio:1;height:auto}.souffle-txt{padding:34px 24px 50px;justify-self:stretch}.souffle-txt p{font-size:17px}}
/* ---------- vu chez eux ---------- */
.chez-sec{padding:100px 0 34px}
.chez{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;padding:0 24px 4px;margin:0 auto}
.chez figure{aspect-ratio:4/5 !important}
.chez figcaption.lg{bottom:18px;left:20px}
.chez figcaption.lg img{display:block;width:auto;max-width:150px;filter:brightness(0) invert(1);opacity:.95}
@media (max-width:760px){.chez figcaption.lg img{max-width:110px;transform:scale(.8);transform-origin:left bottom}}
@media (max-width:1100px){.chez{grid-template-columns:repeat(3,1fr)}}
.chez figure{margin:0;position:relative;overflow:hidden;aspect-ratio:1;background:var(--ardoise);cursor:zoom-in}
.chez img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.2s var(--ease),filter .6s;filter:saturate(.92)}
.chez figure:hover img{transform:scale(1.04);filter:saturate(1)}
.chez figure::after{content:"";position:absolute;inset:auto 0 0 0;height:42%;background:linear-gradient(180deg,rgba(13,13,14,0),rgba(13,13,14,.82))}
.chez figcaption{position:absolute;left:18px;bottom:16px;z-index:1;font-family:var(--serif);font-size:clamp(18px,1.6vw,24px);color:var(--brume);letter-spacing:.01em}
@media (max-width:760px){.chez-sec{padding:64px 0 22px}.chez{grid-template-columns:1fr 1fr;padding:0 3px 3px}.chez figure{aspect-ratio:4/5}.chez figcaption{left:12px;bottom:10px;font-size:16px}}
/* ---------- formules : la différence en un coup d'œil ---------- */
.formules .f .verb{font-family:var(--sans);font-size:12px;letter-spacing:.08em;text-transform:none;color:var(--champagne);margin-bottom:14px;position:relative}
.formules .f dl{margin:20px 0 0;display:grid;grid-template-columns:auto 1fr;gap:8px 14px;font-family:var(--sans);font-size:13.5px;line-height:1.45;position:relative}
.formules .f dt{color:var(--brume-3)}
.formules .f dd{margin:0;color:var(--brume)}
/* ---------- tiroir devis ---------- */
#tiroir{position:fixed;top:0;right:0;bottom:0;width:min(560px,100%);background:var(--ardoise);z-index:60;transform:translateX(100%);transition:transform .55s var(--ease);padding:80px 40px 40px;overflow:auto;border-left:1px solid rgba(233,235,238,.1)}
#tiroir.open{transform:none}
#tiroir .close{position:absolute;top:22px;right:24px;font-family:var(--sans);font-size:13px;min-height:44px;padding:10px 0}
#tiroir h2{font-size:38px}
#tiroir .lede{margin-top:12px;font-size:17px}
.form{margin-top:34px;display:grid;gap:18px}
.form label{display:grid;gap:8px;font-family:var(--sans);font-size:13px;color:var(--brume-2)}
.form textarea{min-height:110px;resize:vertical;padding:12px 14px;background:var(--nuit);border:1px solid rgba(233,235,238,.18);color:var(--brume);font:inherit;font-size:16px;border-radius:0;width:100%;box-sizing:border-box;line-height:1.5}
.form textarea:focus{border-color:var(--givre);outline:none}
.form input,.form select{min-height:48px;padding:12px 14px;background:var(--nuit);border:1px solid rgba(233,235,238,.18);color:var(--brume);font:inherit;font-size:16px;border-radius:0}
.form input:focus,.form select:focus{border-color:var(--givre);outline:none}
.form .row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}
.form input,.form select{width:100%;min-width:0;box-sizing:border-box}
.form label{min-width:0}
.form button{margin-top:10px;min-height:52px;background:var(--brume);color:var(--nuit);font-family:var(--sans);font-size:15px;transition:background .3s}
.form button:hover{background:var(--champagne)}
.form .ok{display:none;padding:22px;border:1px solid var(--champagne);color:var(--brume);font-size:16px}
.form.sent .ok{display:block}
.form.sent > :not(.ok){display:none}
#tiroir .alt{margin-top:28px;font-family:var(--sans);font-size:13px;color:var(--brume-3);line-height:1.8}
#scrim{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:55;opacity:0;visibility:hidden;transition:opacity .4s,visibility .4s}
#scrim.open{opacity:1;visibility:visible}

/* ---------- pied ---------- */
footer{border-top:1px solid rgba(233,235,238,.1);padding:46px 0 40px}
footer .grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;font-family:var(--sans);font-size:13px;color:var(--brume-2);line-height:1.9}
footer b{color:var(--brume);font-weight:400;display:block}
footer .logo{height:40px;filter:brightness(1.25);margin-bottom:14px}
.proto{position:fixed;left:16px;bottom:14px;z-index:46;font-family:var(--sans);font-size:11px;letter-spacing:.06em;color:var(--brume-3);background:rgba(13,13,14,.7);padding:6px 10px;border:1px solid rgba(233,235,238,.1)}

@media (max-width:900px){
  #menu{grid-template-columns:1fr}#menu aside{display:none}#menu nav{padding:18vh 24px}
  .doors{grid-template-columns:1fr}.door{aspect-ratio:4/3}
  .preuve .grid,.two,.cas .grid{grid-template-columns:1fr;gap:40px}
  .carte{grid-template-columns:1fr}
  .temps .step{grid-template-columns:1fr;gap:12px;padding:40px 0}
  .dhero .txt{padding:130px 24px 50px}
  .hero .txt{padding:0 24px 44px}
  .sec,.cas,.preuve,.temps{padding:72px 0}
  #tiroir{padding:70px 24px 30px}
  .form .row{grid-template-columns:1fr}
  footer .grid{grid-template-columns:1fr}
  .wrap{width:calc(100% - 32px)}
}


@media (hover:none){
  .door img{filter:grayscale(.1) brightness(.62) contrast(1.05)}
  .cas article img{filter:brightness(.55) saturate(.95)}
}
/* les photos apparaissent en douceur quand elles arrivent */
.mosaic img{opacity:0;transition:opacity .7s var(--ease),transform 1.2s var(--ease)}
.mosaic img.on{opacity:1}
@media (max-width:760px){
  .proto{display:none}
  .gal{padding:64px 0 70px}
  .gal .wrap h2{margin-bottom:22px}
  .occ{padding:64px 0 10px}
  .occ .rows{margin-top:34px}
  .maison{padding:64px 0 56px}
  .temoin{padding:56px 0 64px}
  .temoin blockquote{font-size:22px}
  .preuve{padding:64px 0 56px}
  .counts{gap:22px}
  .count b{font-size:52px}
  .quote{font-size:21px}
  .marques{padding:46px 0 52px}
  .portes{padding:70px 0 20px}
  .doors{margin-top:34px;gap:2px}
  .door{aspect-ratio:5/4}
  .door .cap{padding:20px 18px 22px}
  .sec,.cas,.temps,.vrai{padding:60px 0}
  .light .faq{padding-bottom:60px}
  .dl-row{padding-bottom:60px !important;margin-top:-24px !important}
  .btn-dl{width:100%;justify-content:flex-start}
  .cas .wrap h2{padding:60px 0 30px}
  .cas article{min-height:440px;padding:26px 22px}
  .cas .stat{font-size:52px}
  .dhero{min-height:78svh}
  .dhero h1{font-size:46px}
  .hero h1{font-size:46px}
  .formules .f{min-height:0;padding:28px 22px}
  .item{padding:24px 20px;min-height:0}
  .item h3{font-size:22px;padding-right:84px}
  .item .tag{top:27px;right:20px}
  .mosaic{columns:2;column-gap:3px;padding:0 3px}
  .mosaic figure{margin-bottom:3px}
  .gal .hint{padding:12px 16px 0}
  .proto-m{display:block}
  .cas .grid{grid-template-columns:1fr !important}
}
.proto-m{display:none;font-family:var(--sans);font-size:11px;letter-spacing:.08em;color:var(--brume-3);margin-top:28px}
/* ---------- téléphone ---------- */
#menu .mfoot{display:none}
.cta-m{display:none}
@media (max-width:760px){
  .bar{padding:14px 16px}
  .bar .logo{height:34px}
  .bar .lang,.bar .devis-btn{display:none}
  .bar .right{gap:0}
  #menu .mfoot{display:flex;position:absolute;left:24px;right:24px;bottom:34px;align-items:center;justify-content:space-between;gap:16px}
  #menu .mfoot .lang{font-size:13px}
  #menu .close{top:14px;right:16px}
  #menu nav{padding:16vh 24px 120px;justify-content:flex-start}
  #menu{background:var(--nuit)}
  #menu nav{gap:14px}
  #menu nav a{font-size:28px;color:var(--brume)}
  #menu nav a small{margin-top:2px}
  .cta-m{display:flex;align-items:center;justify-content:center;position:fixed;left:12px;right:12px;bottom:12px;z-index:38;min-height:52px;border-radius:999px;background:rgba(233,235,238,.94);color:var(--encre);font-family:var(--sans);font-size:14px;letter-spacing:.02em;box-shadow:0 8px 30px rgba(0,0,0,.35);transform:translateY(90px);opacity:0;transition:transform .5s var(--ease),opacity .4s;backdrop-filter:blur(8px)}
  .cta-m.show{transform:none;opacity:1}
  body.ouvre .cta-m,#tiroir.open~.cta-m{opacity:0}
  footer{padding-bottom:90px}
}

/* ---------- ateliers & dégustations ---------- */
.ateliers{padding:120px 0 60px}
.ateliers .at-k{display:inline-block;font-family:var(--sans);font-size:12px;letter-spacing:.02em;color:var(--givre-2);border:1px solid rgba(233,235,238,.35);border-radius:99px;padding:4px 12px;margin:0 0 22px}
.ateliers h2{max-width:16ch}
.ateliers .lede{margin-top:22px;max-width:52ch}
.at-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:56px}
.at{position:relative;display:block;padding:0;border:0;background:#111;color:inherit;text-align:left;cursor:pointer;aspect-ratio:4/5;overflow:hidden;isolation:isolate;font:inherit}
.at img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform 1.4s var(--ease),filter .8s;filter:saturate(.85)}
.at::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(13,13,14,0) 38%,rgba(13,13,14,.88) 100%)}
.at:hover img,.at:focus-visible img{transform:scale(1.045);filter:none}
.at-t{position:absolute;left:26px;right:26px;bottom:24px;display:flex;flex-direction:column;gap:8px}
.at-t b{font-family:var(--serif);font-weight:400;font-size:clamp(24px,2.1vw,32px);line-height:1.1;color:#f3f4f6}
.at-t em{font-style:normal;font-family:var(--sans);font-size:14px;line-height:1.55;color:rgba(233,235,238,.82);max-width:30ch}
.at-foot{display:flex;align-items:center;justify-content:space-between;gap:40px;margin-top:40px;padding-top:30px;border-top:1px solid rgba(233,235,238,.14)}
.at-foot p{font-family:var(--sans);font-size:15px;line-height:1.65;color:var(--brume-2);max-width:62ch}
.at-foot p b{font-weight:500;color:var(--brume)}
.at-foot .hb{flex:none}
@media (max-width:980px){.at-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.ateliers{padding:72px 0 30px}.at-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;margin:34px -24px 0;padding:0 24px 6px;scrollbar-width:none}.at-grid::-webkit-scrollbar{display:none}.at{flex:0 0 78%;scroll-snap-align:start}.at-t{left:20px;right:20px;bottom:20px}.at-foot{flex-direction:column;align-items:flex-start;gap:20px}}

/* ================= WordPress / Elementor ================= */
.e196 .elementor-section,.e196 .elementor-container,.e196 .elementor-column,.e196 .elementor-widget-wrap,.e196 .elementor-widget,.e196 .elementor-widget-container{display:block;max-width:none;width:auto;margin:0;padding:0;position:static}
.e196 .elementor{display:block}
.e196 .room{display:block}
.e196 #wpadminbar{position:fixed}
body.e196.admin-bar .bar{top:32px}
@media (max-width:782px){body.e196.admin-bar .bar{top:46px}}
#tiroir .form .err{display:none;color:#e9a0a0;font-family:var(--sans);font-size:14px;margin-top:10px}
#tiroir .form.fail .err{display:block}
#tiroir .form .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.todo{display:none !important}
.lang a{display:inline-block;padding:6px 4px;min-width:30px;color:inherit;text-align:center;text-decoration:none}
.lang a[aria-current="true"]{color:var(--brume);border-bottom:1px solid var(--givre)}
