/* Pages services : mise en page éditoriale claire, une couleur par service */
body.sp{--cream:#F6F2EA;--ink:#23221E;--dim:#5A5850;--line:#DDD7CA;background:var(--cream);color:var(--ink)}
.sp-wrap{max-width:1160px;margin:0 auto;padding-inline:clamp(20px,5vw,64px)}
.sp .top{padding-inline:clamp(20px,5vw,64px)}
.top.lite img{filter:invert(1)}
.top.lite nav a{color:#23221E}
.top.lite nav a:hover{color:var(--sc)}
.top.lite nav a.lg{opacity:.7}
.top.lite nav a.pill{border-color:rgba(35,34,30,.4)}
.top.lite nav a.pill:hover{background:var(--sc);border-color:var(--sc);color:#fff}
.top.lite nav .dd-menu{background:#FBF9F4;border:1px solid var(--line);box-shadow:0 18px 40px rgba(35,34,30,.14);border-radius:2px}
.top.lite nav .dd-menu a{color:#23221E}
.top.lite nav .dd-menu a:before{color:var(--sc)}
.top.lite nav .dd-menu a:hover,.top.lite nav .dd-menu a:focus-visible{background:rgba(35,34,30,.05);border-left-color:var(--sc);color:#23221E}
.top.lite nav .dd-menu a.dd-all{color:#6B6A63;border-bottom-color:var(--line)}
.top.lite nav .dd-menu a[aria-current]{color:var(--sc)}
.sp-hero{position:relative;overflow:hidden;background:var(--soft);padding:clamp(140px,20vh,190px) 0 clamp(78px,11vh,120px)}
.sp-hero .num{position:absolute;right:-2vw;bottom:-5vw;font:italic 300 clamp(15rem,34vw,32rem)/.8 'Cormorant Garamond',Georgia,serif;color:transparent;-webkit-text-stroke:1.5px var(--sca);pointer-events:none;user-select:none}
.hgrid{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:clamp(32px,6vw,90px);align-items:end}
.sp-hero .crumb{color:#6B6A63;margin-bottom:30px}
.sp-hero .crumb a{text-decoration:none}.sp-hero .crumb a:hover{text-decoration:underline}
.sp-hero .kick{color:var(--sc);display:block;margin-bottom:16px}
.sp-hero h1{font:300 clamp(2.5rem,5.6vw,4.6rem)/1.02 'Cormorant Garamond',Georgia,serif;letter-spacing:-.012em;color:var(--ink);margin:0 0 24px;max-width:15em}
.sp-hero .lead{max-width:640px;color:#3B3A34;font-size:clamp(1rem,1.4vw,1.12rem);line-height:1.8;margin:0 0 34px}
.sp .acts{display:flex;flex-wrap:wrap;gap:14px 26px;align-items:center}
.sp .btn{display:inline-flex;padding:15px 30px;border-radius:50px;background:var(--sc);color:#fff;text-decoration:none;font:12px 'Space Mono',monospace;letter-spacing:.12em;text-transform:uppercase;transition:transform .25s,filter .25s}
.sp .btn:hover{transform:translateY(-2px);filter:brightness(1.1)}
.sp .btn.w{background:#fff;color:var(--sc)}
.sp .lnk{font:12px 'Space Mono',monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);text-decoration:none;border-bottom:1px solid rgba(35,34,30,.35);padding:4px 0}
.sp .lnk:hover{border-color:var(--sc);color:var(--sc)}
.idx{display:flex;flex-direction:column;border-top:1px solid rgba(35,34,30,.25);align-self:end}
.idx .mono{color:#6B6A63;padding:14px 0 10px}
.idx a{display:flex;gap:16px;align-items:baseline;padding:11px 0;border-bottom:1px solid rgba(35,34,30,.13);text-decoration:none;color:#4A4943;font:400 1.15rem/1.25 'Cormorant Garamond',Georgia,serif;transition:color .2s,padding .25s}
.idx a i{font:normal 12px/1 'Space Mono',monospace;letter-spacing:.1em;color:var(--sc)}
.idx a:hover{color:var(--sc);padding-left:6px}
.idx a[aria-current]{color:var(--sc);font-style:italic}
@media(max-width:900px){.hgrid{grid-template-columns:1fr}.idx{display:none}.sp-hero .num{font-size:15rem;bottom:-2rem}}

body.sp{background-color:var(--cream);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .14 0 0 0 0 .13 0 0 0 0 .11 0 0 0 .045 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
.sp-hero{padding-bottom:clamp(56px,8vh,92px)}
.notes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 clamp(24px,4vw,56px);margin:clamp(44px,7vh,76px) 0 0;position:relative;z-index:1}
.notes>div{border-top:1px solid rgba(35,34,30,.35);padding-top:14px}
.notes dt{color:var(--sc);margin:0 0 8px}
.notes dd{margin:0;font:italic 400 clamp(1.15rem,1.7vw,1.4rem)/1.3 'Cormorant Garamond',Georgia,serif;color:#34332E}
@media(max-width:820px){.notes{grid-template-columns:1fr;gap:22px}}
.sp-toc{margin-top:0}
.lab{display:flex;align-items:center;gap:14px;color:var(--sc);margin-bottom:18px}
.lab:before{content:"";width:36px;height:1px;background:var(--sc)}
.sub{margin:0 0 36px;color:var(--dim);max-width:560px}
.sh.big{font-size:clamp(2.2rem,5vw,4rem);max-width:14em}
/* constat : manifeste */
.mani{list-style:none;margin:clamp(30px,5vh,56px) 0 0;padding:0;display:flex;flex-direction:column;gap:clamp(22px,4vh,42px)}
.mani li{position:relative;font:italic 300 clamp(1.6rem,3.2vw,2.6rem)/1.18 'Cormorant Garamond',Georgia,serif;color:#2B2A26;max-width:19em;padding-left:clamp(0px,0vw,0px)}
.mani li:nth-child(even){align-self:flex-end;text-align:left;margin-right:clamp(0px,4vw,60px)}
.mani li:nth-child(odd){margin-left:clamp(0px,4vw,60px)}
.mani b{display:block;font:500 12px/1 'Space Mono',monospace;letter-spacing:.16em;color:var(--sc);font-style:normal;margin-bottom:8px}
/* approche */
.agrid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,6vw,96px);align-items:start}
.ahd{position:sticky;top:90px}
.ahd .sh{margin:0}
.atxt p{max-width:640px;margin:0 0 20px;color:#34332E;line-height:1.85}
.atxt p:first-child{font-size:1.18rem;line-height:1.7;color:#23221E}
.atxt p:first-child::first-letter{font:300 4.4rem/.8 'Cormorant Garamond',Georgia,serif;float:left;padding:6px 12px 0 0;color:var(--sc)}
.pq{margin:clamp(48px,8vh,96px) 0 0;color:var(--sc);position:relative}
.pq blockquote{margin:0;max-width:16em;font:italic 300 clamp(2.2rem,5.4vw,4.4rem)/1.05 'Cormorant Garamond',Georgia,serif;color:var(--ink)}
.pq blockquote:before{content:"“";display:block;font-size:1.6em;line-height:.6;color:var(--sc);margin-bottom:6px}
.pq .sq{display:block;width:clamp(160px,28vw,340px);height:14px;margin-top:14px}
@media(max-width:900px){.agrid{grid-template-columns:1fr}.ahd{position:static}}
/* livrables : liste a balayage de couleur, comme l'accueil */
.dls{list-style:none;margin:0;padding:0;border-top:1px solid rgba(35,34,30,.25)}
.dls li{display:grid;grid-template-columns:72px minmax(0,1fr) minmax(0,1.1fr);gap:8px 28px;align-items:baseline;padding:26px 18px 26px 0;border-bottom:1px solid rgba(35,34,30,.25);background:linear-gradient(90deg,var(--sc),var(--sc)) no-repeat left/0% 100%;transition:background-size .55s cubic-bezier(.2,.7,.2,1),padding .4s,color .3s}
.dls li:hover{background-size:100% 100%;padding-left:20px;color:#fff}
.dls .n{font:500 12px/1 'Space Mono',monospace;letter-spacing:.14em;color:var(--sc);transition:color .3s}
.dls h3{margin:0;font:400 clamp(1.5rem,2.6vw,2.2rem)/1.1 'Cormorant Garamond',Georgia,serif}
.dls p{margin:0;color:var(--dim);line-height:1.6;transition:color .3s}
.dls li:hover .n,.dls li:hover p{color:rgba(255,255,255,.88)}
@media(max-width:760px){.dls li{grid-template-columns:48px 1fr}.dls p{grid-column:2}.dls li:hover{background-size:0% 100%;padding-left:0;color:inherit}.dls li:hover .n{color:var(--sc)}.dls li:hover p{color:var(--dim)}}
/* deroule : une racine qui pousse */
.root{list-style:none;margin:clamp(20px,4vh,40px) 0 0;padding:0;position:relative;color:var(--sc)}
.root .rt{position:absolute;left:50%;top:0;width:120px;height:100%;transform:translateX(-50%);overflow:visible}
.root .rt path{stroke-dasharray:1;stroke-dashoffset:0;transition:stroke-dashoffset 2.4s cubic-bezier(.4,0,.2,1)}
.root.anim .rt path{stroke-dashoffset:1}
.root.anim.in .rt path{stroke-dashoffset:0}
.rs{position:relative;display:grid;grid-template-columns:1fr 1fr;padding:0 0 clamp(34px,6vh,64px)}
.rs:last-child{padding-bottom:0}
.rs .nd{position:absolute;left:50%;top:0;transform:translateX(-50%);width:46px;height:46px;border-radius:50%;background:var(--sc);color:#fff;display:grid;place-items:center;font:italic 300 1.5rem/1 'Cormorant Garamond',Georgia,serif;z-index:1;box-shadow:0 0 0 8px var(--soft)}
.rs .rb{grid-column:1;padding-right:clamp(40px,7vw,96px);text-align:right}
.rs:nth-child(odd) .rb{grid-column:2;padding:0 0 0 clamp(40px,7vw,96px);text-align:left}
.rs h3{font:400 clamp(1.7rem,3vw,2.4rem)/1.08 'Cormorant Garamond',Georgia,serif;margin:0 0 10px;padding-top:6px}
.rs p{margin:0 0 14px;color:#34332E;line-height:1.7}
.rs .you{display:block;font:italic 400 1.1rem/1.35 'Cormorant Garamond',Georgia,serif;color:var(--sc)}
.rs .you b{font:500 12px/1.4 'Space Mono',monospace;letter-spacing:.12em;text-transform:uppercase;font-style:normal;margin-right:6px}
@media(max-width:820px){.root .rt{left:22px;width:60px}.rs{grid-template-columns:1fr}.rs .nd{left:22px}.rs .rb,.rs:nth-child(odd) .rb{grid-column:1;padding:0 0 0 72px;text-align:left}}
/* projets */
.sp-sec .cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:34px 24px;align-items:start}
.sp-sec .card{display:flex;flex-direction:column;gap:3px;text-decoration:none}
.sp-sec .card:nth-child(even){margin-top:clamp(0px,3vw,38px)}
.sp-sec .card .ph{display:block;aspect-ratio:4/3;background:#14130F;overflow:hidden;margin-bottom:12px}
.sp-sec .card .ph img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.sp-sec .card .ph.lg img{object-fit:contain;padding:14%}
.sp-sec .card:hover .ph img{transform:scale(1.04)}
.sp-sec .card .ct{font:400 1.5rem/1.2 'Cormorant Garamond',Georgia,serif}
.sp-sec .card .cs{font:12px/1.55 'Space Mono',monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--dim)}
.sp-sec .card:hover .ct{color:var(--sc)}
.sp-sec .card .ph.none{display:grid;place-items:center;background:var(--soft)}
.sp-sec .card .ph.none b{font:italic 300 5rem/1 'Cormorant Garamond',Georgia,serif;color:var(--sc)}
/* questions : entretien */
.faqs{margin-top:clamp(20px,4vh,40px)}
.qa{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:10px clamp(28px,6vw,96px);padding:30px 0;border-top:1px solid rgba(35,34,30,.25)}
.qa:last-child{border-bottom:1px solid rgba(35,34,30,.25)}
.qa h3{margin:0;font:italic 300 clamp(1.5rem,2.4vw,2rem)/1.15 'Cormorant Garamond',Georgia,serif;color:var(--sc)}
.qa p{margin:0;max-width:620px;color:#34332E;line-height:1.8}
@media(max-width:820px){.qa{grid-template-columns:1fr}}
/* autres expertises : lignes */
.ols{display:flex;flex-direction:column;border-top:1px solid rgba(35,34,30,.25);margin-top:clamp(20px,4vh,40px)}
.ol{display:grid;grid-template-columns:18px minmax(0,1.2fr) minmax(0,1fr) 30px;gap:0 22px;align-items:baseline;padding:24px 0;border-bottom:1px solid rgba(35,34,30,.25);text-decoration:none;color:var(--ink);transition:padding .35s,color .25s}
.ol i{width:10px;height:10px;border-radius:50%;background:var(--c);align-self:center}
.ol strong{font:italic 300 clamp(1.7rem,3.2vw,2.7rem)/1.1 'Cormorant Garamond',Georgia,serif;font-weight:300}
.ol em{font:12px/1.5 'Space Mono',monospace;letter-spacing:.08em;text-transform:uppercase;font-style:normal;color:var(--dim)}
.ol .ar{font-size:1.3rem;color:var(--c);transition:transform .3s}
.ol:hover{padding-left:14px}
.ol:hover strong{color:var(--c)}
.ol:hover .ar{transform:translateX(6px)}
@media(max-width:760px){.ol{grid-template-columns:18px 1fr 24px}.ol em{grid-column:2/3;margin-top:4px}.ol .ar{grid-column:3;grid-row:1}}
/* cta */
.sp-cta{position:relative;overflow:hidden;background:var(--sc);color:#fff;padding:clamp(72px,12vh,130px) 0}
.sp-cta .cr{position:absolute;right:2vw;top:0;height:100%;width:auto;color:rgba(255,255,255,.2);pointer-events:none}
.sp-cta .sp-wrap{position:relative}
.sp-cta .mono{display:block;color:rgba(255,255,255,.78);margin-bottom:16px}
.sp-cta h2{font:300 clamp(2.6rem,7vw,5.4rem)/.98 'Cormorant Garamond',Georgia,serif;margin:0 0 18px}
.sp-cta h2 em{font-style:italic}
.sp-cta p{max-width:480px;margin:0 0 30px;color:rgba(255,255,255,.9)}
.sp-cta .lnk{color:#fff;border-color:rgba(255,255,255,.5)}
.sp-cta .lnk:hover{color:#fff;border-color:#fff}
.sp-foot{background:var(--cream);color:#4A4943;padding:28px 0;font-size:13px;border-top:1px solid var(--line)}
.sp-foot .sp-wrap{display:flex;flex-wrap:wrap;gap:10px 28px;justify-content:space-between}
.sp-foot div{display:flex;flex-wrap:wrap;gap:8px 22px}
.sp-foot a{color:#3B3A34;text-decoration:none}.sp-foot a:hover{text-decoration:underline}
.sp main{padding:0}
@media(max-width:600px){.sp-hero .num{display:none}}
@media(prefers-reduced-motion:reduce){.dls li,.ol,.sp .btn,.card .ph img,.root .rt path{transition:none}html{scroll-behavior:auto}}
.sp-toc{position:sticky;top:0;z-index:40;background:rgba(246,242,234,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.sp-toc .sp-wrap{display:flex;gap:6px 28px;overflow-x:auto;scrollbar-width:none}
.sp-toc a{flex:none;padding:15px 0;font:12px 'Space Mono',monospace;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;color:#5A5850;border-bottom:2px solid transparent}
.sp-toc a:hover{color:var(--sc);border-color:var(--sc)}
.sp-sec{padding:clamp(72px,11vh,124px) 0;scroll-margin-top:50px}
.sp-sec.alt{background:var(--soft)}
.sh{font:300 clamp(2rem,4vw,3.1rem)/1.06 'Cormorant Garamond',Georgia,serif;letter-spacing:-.01em;margin:0 0 20px;text-wrap:balance}
.sh.big{font-size:clamp(2.2rem,5vw,4rem)}

/* v72 constat : cases a cocher */
.sub{margin:0 0 6px}
.chk{list-style:none;margin:clamp(28px,5vh,48px) 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.chk li{display:flex;gap:20px;align-items:flex-start;padding:26px 28px;background:#FBF9F5;border:1px solid var(--line);border-left:4px solid var(--sc);border-radius:3px;font:italic 400 clamp(1.3rem,2vw,1.7rem)/1.25 'Cormorant Garamond',Georgia,serif;color:#2B2A26}
.chk li:nth-child(even){transform:translateY(22px)}
.chk .bx{flex:0 0 38px;width:38px;height:38px;color:var(--sc);overflow:visible}
.chk .tk{stroke-dasharray:1;stroke-dashoffset:0}
.chk.anim .tk{stroke-dashoffset:1;transition:stroke-dashoffset .7s cubic-bezier(.3,.7,.2,1) calc(.25s + var(--i)*.35s)}
.chk.in .tk{stroke-dashoffset:0}
.chk-end{margin-top:clamp(48px,7vh,72px);display:flex;flex-wrap:wrap;gap:16px 32px;align-items:center;padding-top:26px;border-top:1px dashed var(--sc)}
.chk-end p{margin:0;font:italic 300 clamp(1.5rem,2.6vw,2.2rem)/1.15 'Cormorant Garamond',Georgia,serif;color:var(--sc)}
@media(max-width:760px){.chk{grid-template-columns:1fr}.chk li:nth-child(even){transform:none}}

/* livrables : cartes empilees */
.stk{list-style:none;margin:clamp(28px,5vh,48px) 0 0;padding:0 0 10px}
.stk li{position:sticky;top:calc(84px + var(--i)*16px);margin:0 0 22px;border-radius:6px;padding:clamp(26px,4vw,46px);min-height:200px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;overflow:hidden;box-shadow:0 -10px 28px rgba(35,34,30,.08)}
.stk li:nth-child(3n+1){background:var(--sc);color:#fff}
.stk li:nth-child(3n+2){background:var(--soft);color:#2B2A26;border:1px solid var(--sca)}
.stk li:nth-child(3n){background:#FBF9F5;color:#2B2A26;border:1px solid var(--sc)}
.stk .n{display:block;font-size:12px;letter-spacing:.16em;margin-bottom:12px;opacity:.8}
.stk h3{margin:0 0 10px;font:400 clamp(1.7rem,3vw,2.5rem)/1.08 'Cormorant Garamond',Georgia,serif}
.stk p{margin:0;max-width:34em;line-height:1.65}
.stk li:nth-child(3n+1) p{color:rgba(255,255,255,.92)}
.stk .big{font:italic 300 clamp(6rem,14vw,11rem)/.8 'Cormorant Garamond',Georgia,serif;color:transparent;-webkit-text-stroke:1.2px currentColor;opacity:.35}
.stk li:nth-child(3n+2) .big,.stk li:nth-child(3n) .big{-webkit-text-stroke-color:var(--sc)}
@media(max-width:700px){.stk li{grid-template-columns:1fr;top:calc(70px + var(--i)*12px)}.stk .big{position:absolute;right:12px;bottom:6px;font-size:5.5rem}}

/* boutons etapes */
.rs .stb{display:inline-flex;align-items:center;gap:8px;margin-top:16px;padding:10px 18px;border:1.5px solid var(--sc);border-radius:999px;color:var(--sc);font:500 12px/1 'Space Mono',monospace;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;transition:background .25s,color .25s}
.rs .stb:hover{background:var(--sc);color:#fff}

/* bas de page : meme noir que le site, sans racines */
.sp-cta .cr{display:none}
.sp-foot{background:#151411;color:#B9BBB5;border-top:0}
.sp-foot a{color:#C9CBC6}
.stk li:nth-child(3n+1) .big{-webkit-text-stroke-color:#fff}

/* v74 : bouton langue flottant (mobile/tablette) + apparition au defilement */
.lgfab{display:none}
@media(max-width:900px){
.lgfab{display:inline-flex;align-items:center;gap:6px;position:fixed;z-index:60;right:14px;bottom:calc(18px + env(safe-area-inset-bottom,0px));padding:9px 14px;border-radius:999px;background:rgba(21,20,17,.9);border:1px solid rgba(255,255,255,.18);color:#F5F3EE;font:500 12px/1 'Space Mono',monospace;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;box-shadow:0 4px 20px rgba(0,0,0,.25);transition:opacity .35s ease,transform .35s ease}
html.is-scrolling .lgfab{opacity:0;transform:translateY(10px);pointer-events:none}
}
.anim-ready .rv,.rv{opacity:1}
@media(prefers-reduced-motion:no-preference){
.sp-sec .rv{opacity:0;transform:translateY(26px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.sp-sec .rv.rvin{opacity:1;transform:none}
.sp-sec .card.rv{transition-delay:calc(var(--k,0)*.08s)}
}
@media(hover:none){
.ol .ar{transform:translateX(0)}.ol.rvin .ar{animation:nudge 1.4s .5s ease 1}
.ol:active{padding-left:14px}
}
@keyframes nudge{0%,100%{transform:translateX(0)}50%{transform:translateX(8px)}}

/* ===== page A propos ===== */
.ab .rbg{margin:0;display:flex;flex-direction:column;gap:0;font:italic 300 clamp(3.2rem,8vw,6.2rem)/.95 'Cormorant Garamond',Georgia,serif;color:#2B2A26}
.ab .rbg span:nth-child(2){margin-left:.9em;color:transparent;-webkit-text-stroke:1.3px var(--sc)}
.ab .rbg span:nth-child(3){margin-left:.3em;color:var(--sc)}
.ab .vl{display:block;margin:clamp(48px,8vh,84px) 0 20px}
.ab .vals{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:22px}
.ab .vals li{padding-top:16px;border-top:2px solid var(--sc)}
.ab .vals .mono{display:block;font-size:12px;letter-spacing:.16em;color:var(--sc);margin-bottom:10px}
.ab .vals h3{margin:0 0 8px;font:italic 400 clamp(1.5rem,2.2vw,1.9rem)/1.1 'Cormorant Garamond',Georgia,serif}
.ab .vals p{margin:0;color:var(--dim);line-height:1.6;font-size:.95rem}
.ab .letter p{font-size:1.08rem;line-height:1.85;color:#2B2A26}
.ab .fnd .ahd{position:sticky;top:110px;align-self:start}
.ab .fnd .pq{margin-top:34px}
.ab .fnd .pq figcaption{margin-top:14px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--sc)}
.ab .stage{margin-top:clamp(56px,9vh,96px)}
.ab .stg{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 16px;margin:0 0 26px;font:400 clamp(1.8rem,3.4vw,2.8rem)/1.05 'Cormorant Garamond',Georgia,serif}
.ab .stg .mono{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--sc);color:#fff;font-size:13px;transform:translateY(-4px)}
.ab .stg em{font-size:.55em;color:var(--dim)}
.ab .chal{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.ab .chal li{display:flex;flex-direction:column;gap:10px;padding:24px 26px;background:#FBF9F5;border:1px solid var(--line);border-left:4px solid var(--c);border-radius:3px}
.ab .chal li:nth-child(even){transform:translateY(16px)}
.ab .chal h3{margin:0;font:italic 400 clamp(1.4rem,2.2vw,1.8rem)/1.15 'Cormorant Garamond',Georgia,serif}
.ab .chal p{margin:0;color:#4A4943;line-height:1.6;font-size:.96rem}
.ab .chal a{margin-top:auto;align-self:flex-start;display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border:1.5px solid var(--c);border-radius:999px;color:var(--c);text-decoration:none;font:500 12px/1 'Space Mono',monospace;letter-spacing:.08em;text-transform:uppercase;transition:background .25s,color .25s}
.ab .chal a i{width:8px;height:8px;border-radius:50%;background:var(--c)}
.ab .chal a:hover{background:var(--c);color:#fff}.ab .chal a:hover i{background:#fff}
.ab .meth5{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px;position:relative}
.ab .meth5::before{content:"";position:absolute;left:23px;right:0;top:23px;height:2px;background:var(--sc);transform-origin:left;transition:transform 1.6s cubic-bezier(.3,.7,.2,1)}
.ab .meth5.anim::before{transform:scaleX(0)}.ab .meth5.in::before{transform:scaleX(1)}
.ab .meth5 li{position:relative;padding-top:64px}
.ab .meth5 .nd{position:absolute;top:0;left:0;width:46px;height:46px;border-radius:50%;background:var(--sc);color:#fff;display:grid;place-items:center;font:italic 300 1.5rem/1 'Cormorant Garamond',Georgia,serif;box-shadow:0 0 0 7px var(--bg,#F6F2EA)}
.ab .meth5 h3{margin:0 0 6px;font:italic 400 1.9rem/1.05 'Cormorant Garamond',Georgia,serif;color:var(--sc)}
.ab .meth5 b{display:block;margin-bottom:10px;font:500 12px/1.4 'Space Mono',monospace;letter-spacing:.06em;text-transform:uppercase;color:#2B2A26}
.ab .meth5 p{margin:0;color:#4A4943;line-height:1.6;font-size:.92rem}
@media(max-width:980px){
.ab .meth5{grid-template-columns:1fr;gap:30px;padding-left:0}
.ab .meth5::before{left:22px;right:auto;top:0;bottom:0;width:2px;height:auto;transform-origin:top}
.ab .meth5.anim::before{transform:scaleY(0)}.ab .meth5.in::before{transform:scaleY(1)}
.ab .meth5 li{padding:0 0 0 70px}
.ab .fnd .ahd{position:static}
}
@media(max-width:760px){.ab .chal{grid-template-columns:1fr}.ab .chal li:nth-child(even){transform:none}}
.ab .sp-sec .meth5 .nd{box-shadow:0 0 0 7px #F6F2EA}
.ab .fnd .pq blockquote{font-size:clamp(1.7rem,2.8vw,2.3rem);line-height:1.2}
@media(min-width:1000px){.ab .vals{grid-template-columns:repeat(5,minmax(0,1fr))}}
