/* site-v3 — direction artistique « Pierre & noyer, le calme d'un catalogue » (accueil + garnitura).
   Couleurs : uniquement les variables de palette.css (palette B). Polices : var(--display) / var(--sans) (fonts.css). */
.ed{--m:clamp(20px,8vw,144px);margin:0;background:var(--cream);color:var(--ink);font:400 17px/1.6 var(--sans);-webkit-font-smoothing:antialiased}
.ed *{box-sizing:border-box}.ed figure{margin:0}.ed img{display:block;width:100%;height:100%;object-fit:cover}
.ed a{color:inherit}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:var(--ink);color:var(--cream);padding:12px;z-index:9}
.ed :focus-visible{outline:2px solid var(--accent-on-light);outline-offset:3px}
.cap{font:600 12px/1.5 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted-aa);margin:0}
.ed-h1{margin:0}
.ed-display{font:400 clamp(40px,5vw,72px)/1.1 var(--display);letter-spacing:-.01em;margin:24px 0 0}
.ed-display em,.ed-h2 em{font-style:normal;font-weight:400;font-synthesis:none;color:var(--accent-on-light)}
.ed-h2{font:400 clamp(30px,3.5vw,44px)/1.15 var(--display);letter-spacing:-.005em;margin:16px 0 0;max-width:14em}
.ed-small{font-size:14px;line-height:1.5;color:var(--muted-aa);max-width:34em;margin:0}
.tbc{background:#EFE6D6;color:var(--accent-on-light);padding:1px 6px;font-size:inherit;border-radius:var(--r-sm)}
/* bouton : une seule forme */
.ed-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 24px;background:var(--btn-bg);color:var(--btn-fg)!important;text-decoration:none;font-size:14px;letter-spacing:.06em;border-radius:var(--r-sm);transition:background .3s}
.ed-btn:hover{background:var(--btn-hover)}
.ed-btn-o{background:transparent;color:var(--ink)!important;border:1px solid var(--ink)}.ed-btn-o:hover{background:var(--section)}
.ed-btn[href*="wa.me"],.ed-btn[href*="viber"],.ed-btn[href^="tel:"]{border-radius:999px}
/* en-tête */
.ed-head{display:flex;align-items:center;gap:32px;padding:20px var(--m);font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.ed-logo{display:flex;align-items:center;gap:10px;font:400 20px var(--display);letter-spacing:.08em;text-decoration:none;min-height:44px}
.ed-logo i{font:600 13px var(--sans);font-style:normal;background:#C0162E;color:#fff;padding:5px 6px 4px;letter-spacing:-.04em}
.ed-nav{display:flex;gap:26px;margin-left:auto}.ed-nav a,.ed-lang a{text-decoration:none;display:inline-flex;align-items:center;min-height:44px}
.ed-nav a[aria-current],.ed-lang a[aria-current]{text-decoration:underline;text-underline-offset:6px}
.ed-lang{display:flex;gap:4px}.ed-lang a{min-width:44px;justify-content:center;color:var(--muted-aa)}.ed-lang a[aria-current]{color:var(--ink)}
.ed-menu{display:none}
/* A — hero éditorial 5/7, photo sans overlay */
.ed-hero{display:grid;grid-template-columns:5fr 7fr;gap:clamp(24px,4vw,72px);padding:24px 0 0 var(--m);min-height:min(72vh,720px);align-items:stretch}
.ed-rhythm .ed-hero{min-height:100svh}
.ed-hero-t{display:flex;flex-direction:column;justify-content:center;gap:48px;padding:56px 0 48px}
.ed-hero-t>div:last-child{display:flex;flex-direction:column;gap:24px;align-items:flex-start}
.ed-hero-img{min-height:520px;border-radius:var(--r-lg);overflow:hidden}
.crumbs ol{list-style:none;display:flex;gap:10px;padding:0;margin:0 0 32px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted-aa)}
.crumbs li+li::before{content:"/";margin-right:10px}.crumbs a{display:inline-flex;min-height:44px;align-items:center;margin:-14px 0}
/* B — grille collection asymétrique */
.ed-coll,.ed-gal,.ed-intro{padding:clamp(96px,12vw,176px) var(--m) 0}
.ed-coll-head{margin-bottom:64px}
.ed-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:24px;row-gap:56px}
.ed-c{text-decoration:none;display:block}.ed-c figure img{transition:transform .9s cubic-bezier(.2,.7,.2,1)}.ed-c figure{overflow:hidden;border-radius:var(--r-md)}
.ed-c:hover img{transform:scale(1.02)}
.ed-c figcaption{margin-top:14px}
.ed-c1{grid-column:1/8}.ed-c1 img{aspect-ratio:4/5}
.ed-c2{grid-column:9/13;margin-top:180px}.ed-c2 img{aspect-ratio:1/1}
.ed-c3{grid-column:2/6;margin-top:-40px}.ed-c3 img{aspect-ratio:3/4}
.ed-c4{grid-column:7/13}.ed-c4 img{aspect-ratio:4/3}
/* C — processus (fond anthracite) */
.ed-proc{margin-top:clamp(96px,12vw,176px);background:var(--ink);color:var(--cream);padding:clamp(72px,9vw,144px) var(--m);display:grid;grid-template-columns:repeat(12,1fr);gap:24px}
.ed-proc .cap{color:var(--accent-on-dark)}.ed-proc figcaption.cap{color:var(--soft-on-dark);margin-top:12px}
.ed-proc .ed-h2 em,.ed-proc .ed-display em{color:var(--accent-on-dark)}
.ed-proc-head{grid-column:1/7}.ed-proc-img{grid-column:5/13;margin-top:48px;border-radius:var(--r-lg);overflow:hidden}.ed-proc-img img{aspect-ratio:16/9;object-position:center 40%}
.ed-steps{grid-column:1/13;list-style:none;padding:0;margin:64px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.ed-steps li{border-top:1px solid var(--accent-on-dark);padding-top:16px;font-size:15px;color:var(--soft-on-dark)}
.ed-steps b{display:block;font:400 32px var(--display);color:var(--accent-on-dark);margin-bottom:6px}
.ed-proc .tbc{background:#45413D;color:var(--accent-on-dark)}
/* D — bande contact */
.ed-ct{display:grid;grid-template-columns:6fr 6fr;min-height:640px;margin-top:clamp(96px,12vw,176px)}.ed-ct-img{border-radius:var(--r-lg);overflow:hidden}
.ed-ct-t{padding:64px var(--m) 64px clamp(32px,6vw,112px);display:flex;flex-direction:column;justify-content:center;gap:24px;align-items:flex-start}
.ed-row{display:flex;gap:12px;flex-wrap:wrap}.ed-row .ed-btn{min-width:160px}
.ed-ct-t a[href^="tel"]{display:inline-flex;min-height:44px;align-items:center}
/* garnitura : intro, galerie, FAQ */
.ed-split{display:grid;grid-template-columns:5fr 7fr;gap:24px}
.ed-intro .body-copy p{max-width:40em;margin:0 0 16px}.ed-intro .lead{font:400 clamp(22px,2vw,26px)/1.2 var(--display)}
.ed-intro .spec-list{list-style:none;padding:0;margin:64px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.ed-intro .spec-list li{border-top:1px solid var(--ink);padding-top:16px;font-size:15px;color:var(--muted-aa)}
.ed-intro .spec-list strong{display:block;font:400 22px var(--display);color:var(--ink);margin-bottom:6px}
.ed-intro .price-note{font-size:15px;color:var(--muted-aa);margin-top:40px}
.ed-galg{display:grid;grid-template-columns:repeat(12,1fr);gap:24px}
.ed-galg figure{border-radius:var(--r-md);overflow:hidden}.ed-galg figcaption{margin-top:14px;border-radius:0}
.ed-g1{grid-column:1/8}.ed-g1 img{aspect-ratio:3/2}.ed-g2{grid-column:9/13;margin-top:120px}.ed-g2 img{aspect-ratio:3/4}.ed-g3{grid-column:3/8}.ed-g3 img{aspect-ratio:4/3}
.ed-note{margin-top:40px}
.ed-faq{padding:clamp(96px,12vw,176px) var(--m) 0}.ed-faq .faq-grid{display:grid;grid-template-columns:5fr 7fr;gap:24px}
.ed-faq .section-kicker{font:600 12px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted-aa)}
.ed-faq details{border-top:1px solid var(--line)}.ed-faq details:last-child{border-bottom:1px solid var(--line)}
.ed-faq summary{min-height:56px;display:flex;align-items:center;cursor:pointer;font-size:17px;padding:10px 0;list-style:none}
.ed-faq summary::after{content:"+";margin-left:auto;padding-left:16px;font-weight:300}.ed-faq details[open] summary::after{content:"–"}
.ed-faq details p{margin:0 0 20px;color:var(--muted-aa);font-size:15px;max-width:40em}
/* pied */
.ed-foot{display:flex;gap:32px;flex-wrap:wrap;padding:48px var(--m) 120px;border-top:1px solid var(--line);margin-top:clamp(96px,12vw,176px);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted-aa)}
.ed-foot a{display:inline-flex;min-height:44px;align-items:center;margin:-12px 0}.ed-foot span{margin-right:auto}
/* motion : entrée légère une fois (IntersectionObserver → .is-in) ; pas de scrub / view-timeline */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .5s cubic-bezier(.22,1,.36,1),transform .5s cubic-bezier(.22,1,.36,1);will-change:opacity,transform}
.reveal.is-in{opacity:1;transform:none;will-change:auto}
/* hero above-fold : visible immédiatement (évite flash opacity:0 avant JS) */
.ed-hero .reveal{opacity:1;transform:none;will-change:auto}
.mobile-contact,.mobile-contact *{transition:none!important;transform:none!important;opacity:1!important}
@media (prefers-reduced-motion:reduce){
 .reveal,.reveal.is-in{opacity:1;transform:none;transition:none}
 .ed *{animation:none!important}
}
/* mobile */
@media (max-width:899px){
 .ed{--m:20px}
 .ed-nav,.ed-head>.ed-lang{display:none}
 .ed-head{justify-content:space-between}
 .ed-menu{display:block;position:relative}.ed-menu summary{min-height:44px;min-width:44px;display:flex;align-items:center;cursor:pointer;list-style:none}
 .ed-menu nav{position:absolute;right:0;top:48px;background:var(--cream);border:1px solid var(--line);padding:8px 16px;display:flex;flex-direction:column;z-index:5;min-width:200px;border-radius:var(--r-md)}
 .ed-menu nav a{min-height:44px;display:flex;align-items:center;text-decoration:none}
 .ed-hero{grid-template-columns:1fr;padding:0;min-height:0}
 /* mobile: ne pas forcer 100svh — l'image 4/5 + sticky écrasait le display */
 .ed-rhythm .ed-hero{min-height:0}
 .ed-hero-t{padding:32px var(--m) calc(96px + env(safe-area-inset-bottom,0px));gap:32px}
 .ed-hero-img{order:-1;min-height:0;max-height:40vh;border-radius:0}
 .ed-hero-img img{aspect-ratio:16/10;max-height:40vh;height:auto}
 .ed-display{font-size:40px}.ed-h2{font-size:30px}
 .ed-grid,.ed-galg,.ed-proc{grid-template-columns:1fr 1fr;row-gap:40px}
 .ed-c1,.ed-c4,.ed-g1,.ed-g3{grid-column:1/3;margin:0}.ed-c2{grid-column:2/3;margin-top:0}.ed-c3{grid-column:1/2;margin-top:64px;grid-row:2}
 .ed-g2{grid-column:1/3;margin:0 0 0 30%}
 .ed-proc-head,.ed-proc-img,.ed-steps{grid-column:1/3}.ed-steps{grid-template-columns:1fr 1fr;row-gap:32px}
 .ed-ct,.ed-split,.ed-faq .faq-grid{grid-template-columns:1fr}.ed-ct-img img{aspect-ratio:4/3}.ed-ct-t{padding:48px var(--m)}
 .ed-intro .spec-list{grid-template-columns:1fr}
 .ed-foot{padding-bottom:140px}
}
/* barre mobile WhatsApp / Viber / Thirr (repris de site-v2, couleurs palette B) */
.ed .mobile-contact{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:6px;position:fixed;z-index:30;left:10px;right:10px;bottom:10px;padding:6px;border:1px solid var(--line-dark);border-radius:var(--r-md)}
.ed .mobile-contact a{display:flex;align-items:center;justify-content:center;min-height:46px;font:600 13px var(--sans);letter-spacing:.04em;text-decoration:none;border-radius:999px}
.ed .mobile-call{border:1px solid var(--line-dark)}
.ed .mobile-viber::before{content:none!important}.ed .mobile-viber .ico-viber{margin-right:8px}
.ed .mobile-contact a:focus-visible{outline-color:#fff}
.ed-menu .ed-mlang{display:flex;gap:4px;border-top:1px solid var(--line);margin-top:8px;padding-top:8px}

.ed .mobile-call{background:#2B2927!important;color:#F4F0EA!important;border:1px solid #C8B49B!important}
/* pages étendues (site-v3, extension) */
.ed-g4{grid-column:8/13;margin-top:-40px}.ed-g4 img{aspect-ratio:4/5}
.ed-galg img{width:100%;object-fit:cover;display:block}
.ed-intro .info{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:64px 0 0}
.ed-intro .info>div{border-top:1px solid var(--ink);padding-top:16px}
.ed-intro .info dt{font:600 12px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted-aa);margin-bottom:8px}
.ed-intro .info dd{margin:0;font-size:15px}.ed-intro .info a{display:inline-block;min-height:44px;line-height:44px}
.ed-intro h2.cap{margin:0}
.ed-st{display:block;font:400 20px var(--display);color:var(--cream);margin-bottom:6px}.ed-st a{color:inherit;display:inline-block;min-height:44px}
.ed-proc .ed-steps{margin-top:48px}
.ed-rel{padding:clamp(72px,9vw,120px) var(--m) 0}.ed-related{display:flex;flex-wrap:wrap;gap:12px 32px;margin-top:16px}
.ed-related a{min-height:44px;display:inline-flex;align-items:center;font:400 clamp(22px,2vw,26px)/1.2 var(--display);color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line)}
.ed-hero .crumbs ol{list-style:none;display:flex;gap:8px;padding:0;margin:0;font-size:13px;color:var(--muted-aa)}
.ed-hero .crumbs li+li::before{content:"/";margin-right:8px}
@media (max-width:899px){.ed-g4{grid-column:1/3;margin:0 30% 0 0}.ed-intro .info{grid-template-columns:1fr}}

.ed-hero-t .ed-small a{display:inline-block;min-height:44px;line-height:44px}
.ed-wv{display:inline-flex;align-items:center;min-height:44px;min-width:44px;justify-content:center}
.ed-hero-img picture{display:contents}
@media (min-width:900px){.ed .mobile-contact{display:none}}
.ed-sign{margin:24px 0 0;max-width:360px;border-radius:var(--r-md);overflow:hidden}.ed-sign img{width:100%;height:auto;aspect-ratio:1450/900;object-fit:cover}


/* Logo client (2026-10-30) */
.ed-logo img{display:block;height:40px;width:auto}
.ed-foot-logo{margin:-12px 0}.ed-foot-logo img{display:block;width:72px;height:72px}
@media (max-width:899px){.ed-logo img{height:34px}}
