/* EXOMIE v2 — page components */
.cta-row{display:flex;gap:14px;flex-wrap:wrap}
/* HERO */
.hero{min-height:100svh;padding:150px 0 70px;background:radial-gradient(70% 80% at 85% 20%,rgba(231,169,142,.45),transparent 62%),radial-gradient(50% 60% at 0% 100%,rgba(201,216,182,.5),transparent 65%),var(--ivory);overflow:hidden;display:flex;align-items:center}
.hero .cells{opacity:.5}
.hero-g{position:relative;z-index:2;display:grid;grid-template-columns:1.1fr .9fr;gap:4vw;align-items:center;width:100%}
.hero-t h1{margin:24px 0 28px;font-size:clamp(50px,7.4vw,116px)}.hero-t .ld{margin-bottom:40px}
.hero-a{position:relative;justify-self:center;width:min(440px,84%)}
.arch.big{aspect-ratio:3/4.2;box-shadow:0 60px 120px -50px rgba(46,23,57,.6)}
.pill{position:absolute;padding:14px 22px;border-radius:99px;background:rgba(252,248,241,.9);backdrop-filter:blur(10px);border:1px solid var(--line);box-shadow:0 20px 50px -24px rgba(46,23,57,.5);font-size:14px;white-space:nowrap;animation:fl2 7s ease-in-out infinite alternate}
.pill b{font-family:var(--serif);font-size:26px;font-weight:400;margin-right:6px;color:var(--copper)}
.pill.p1{left:-18%;top:22%}.pill.p2{right:-14%;bottom:24%;animation-delay:-3s}
.rotb{position:absolute;right:-8%;top:-6%;width:130px;height:130px;animation:spin 30s linear infinite}.rotb text{font-size:11.5px;letter-spacing:.2em;fill:var(--plum);font-weight:600;text-transform:uppercase}
@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:900px){.hero-g{grid-template-columns:1fr}.hero{padding-top:130px}.hero-a{width:min(320px,80%);order:-1;margin-bottom:10px}.pill.p1{left:-8%}.pill.p2{right:-6%}}
/* DOORS accordion */
.doors{display:flex;gap:14px;height:min(620px,78vh);min-height:520px}
.door{position:relative;flex:1;border-radius:var(--r);overflow:hidden;background:var(--paper);border:1px solid var(--line);cursor:pointer;transition:flex .9s var(--ease),background .6s;display:flex;flex-direction:column;justify-content:space-between;padding:34px}
.door.on{flex:2.6}.door:nth-child(1).on{background:var(--plum);color:#D9CDE0}.door:nth-child(2).on{background:var(--copper);color:#FFF1E6}.door:nth-child(3).on{background:#3f5a44;color:#E8F0DF}
.door .no{font-family:var(--serif);font-style:italic;font-size:22px;opacity:.7}
.door h3{font-size:clamp(28px,3vw,44px);margin-top:10px}.door.on h3{color:#fff}
.door .dbody{max-width:44ch;opacity:0;transform:translateY(16px);transition:.7s var(--ease) .15s;max-height:0;overflow:hidden}.door.on .dbody{opacity:1;transform:none;max-height:340px}
.door .dbody p{margin:14px 0 18px}.door .dbody .lk{display:inline-flex;gap:10px;font-weight:600;border-bottom:1.5px solid currentColor;padding-bottom:3px}
.door .dart{position:absolute;right:-6%;bottom:-4%;width:52%;opacity:.0;transition:.9s var(--ease);color:rgba(255,255,255,.28)}.door.on .dart{opacity:1}
.door .dart .art{color:inherit;width:100%}
.door .vt{position:absolute;left:34px;bottom:34px;writing-mode:vertical-rl;transform:rotate(180deg);font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);transition:.4s}.door.on .vt{opacity:0}
@media(max-width:900px){.doors{flex-direction:column;height:auto}.door{flex:none}.door .dbody{opacity:1;transform:none;max-height:none}.door .dart{opacity:.6;width:40%}.door .vt{display:none}.door:nth-child(n){background:var(--paper);color:var(--ink)}.door:nth-child(n) h3{color:var(--ink)}}
/* MARQUEE */
.mq{overflow:hidden;padding:34px 0;border-block:1px solid var(--line);background:var(--paper)}
.mq-t{display:flex;gap:56px;width:max-content;animation:mq 55s linear infinite}.mq-t span{font-family:var(--serif);font-style:italic;font-weight:300;font-size:clamp(40px,6vw,88px);letter-spacing:-.03em;white-space:nowrap;color:transparent;-webkit-text-stroke:1.2px var(--plum);display:flex;align-items:center;gap:56px}
.mq-t span::after{content:"";width:16px;height:16px;border-radius:50%;background:var(--copper);flex:none}
@keyframes mq{to{transform:translateX(-50%)}}
/* STORY */
.story{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(30px,6vw,100px);align-items:start}
.st-stick{position:sticky;top:110px}
.st-card{position:relative;border-radius:36px;background:var(--plum);aspect-ratio:1;overflow:hidden;color:var(--apricot)}
.st-card .cells{opacity:.7}
.st-vis{position:absolute;inset:0;display:grid;place-items:center;opacity:0;transform:scale(.94);transition:.9s var(--ease)}.st-vis.on{opacity:1;transform:none}.st-vis .art{width:58%;color:var(--apricot)}
.st-no{position:absolute;left:30px;top:22px;font-family:var(--serif);font-weight:300;font-size:clamp(70px,9vw,130px);letter-spacing:-.05em;color:rgba(255,255,255,.14);line-height:1}
.st-steps>div{min-height:66vh;display:flex;flex-direction:column;justify-content:center;padding:30px 0;border-top:1px solid var(--line);opacity:.35;transition:.6s}.st-steps>div.on{opacity:1}
.st-steps span.n{font-family:var(--serif);font-style:italic;color:var(--copper);font-size:22px}.st-steps h3{font-size:clamp(30px,3.6vw,52px);margin:10px 0 16px}.st-steps p{max-width:48ch;color:var(--muted)}
@media(max-width:900px){.story{grid-template-columns:1fr}.st-stick{position:relative;top:0}.st-card{aspect-ratio:4/3}.st-steps>div{min-height:0;opacity:1;padding:36px 0}}
/* RAIL / specimen cards */
.rail{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:10px var(--gut) 30px;margin:0 calc(var(--gut) * -1);scrollbar-width:none;cursor:grab}.rail::-webkit-scrollbar{display:none}.rail.dg{cursor:grabbing;scroll-snap-type:none}
.sp{flex:0 0 clamp(250px,24vw,310px);scroll-snap-align:start;border-radius:26px;background:var(--paper);border:1px solid var(--line);overflow:hidden;position:relative;display:flex;flex-direction:column;transition:transform .7s var(--ease),box-shadow .7s;text-align:left}
.sp:hover{transform:translateY(-8px);box-shadow:0 30px 60px -34px rgba(46,23,57,.5)}
.sp .top{height:170px;position:relative;overflow:hidden;background:radial-gradient(circle at 30% 30%,var(--c),transparent 70%),var(--sand)}
.sp .top::before,.sp .top::after{content:"";position:absolute;border-radius:50%;border:2px dotted var(--c);opacity:.7}.sp .top::before{width:120px;height:120px;right:-20px;bottom:-30px}.sp .top::after{width:64px;height:64px;left:24px;top:24px;background:radial-gradient(circle at 30% 28%,#fff,var(--c) 60%,transparent 72%);border:0;opacity:.85}
.sp .no{position:absolute;right:18px;top:14px;font-family:var(--serif);font-style:italic;font-size:20px;color:rgba(27,17,32,.55)}
.sp .b{padding:20px 22px 24px}.sp h3{font-size:26px}.sp .lt{font-family:var(--serif);font-style:italic;color:var(--muted);font-size:16px;margin:2px 0 14px}.sp .m{display:flex;justify-content:space-between;font-size:13px;color:#4b3b50;border-top:1px solid var(--line);padding-top:12px}
.rl-c{display:flex;gap:10px;margin-top:8px}.rl-c button{width:54px;height:54px;border-radius:50%;border:1.5px solid var(--ink);display:grid;place-items:center;font-size:20px;transition:.4s}.rl-c button:hover{background:var(--ink);color:#fff}
/* FINISHED */
.fin{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.fc{position:relative;border-radius:36px;overflow:hidden;min-height:560px;padding:clamp(28px,4vw,52px);display:flex;flex-direction:column;justify-content:flex-end;isolation:isolate;transition:transform .8s var(--ease)}.fc:hover{transform:translateY(-6px)}
.fc.a{background:linear-gradient(160deg,#4A2559,#2E1739);color:#D9CDE0}.fc.b{background:linear-gradient(160deg,#3f5a44,#1E3A2C);color:#E3EDD8}
.fc .art{position:absolute;right:6%;top:6%;width:52%;color:rgba(255,255,255,.35);z-index:-1;transition:.9s var(--ease)}.fc:hover .art{transform:scale(1.06) rotate(-2deg)}
.fc h3{font-size:clamp(34px,4vw,58px);color:#fff;margin:12px 0}.fc .ey{color:var(--rose)}.fc p{max-width:40ch;margin-bottom:22px}
.fc .tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:24px}.fc .tags span{font-size:12.5px;padding:6px 14px;border-radius:99px;border:1px solid rgba(255,255,255,.3)}
@media(max-width:900px){.fin{grid-template-columns:1fr}.fc{min-height:480px}}
/* PROCESS */
.proc{display:grid;grid-template-columns:repeat(5,1fr);gap:0;counter-reset:p;position:relative}
.proc>div{padding:78px 20px 0 0;position:relative;counter-increment:p}.proc>div::before{content:"";position:absolute;top:30px;left:0;right:0;height:1.5px;background:var(--line)}.proc.in>div::before{background:linear-gradient(90deg,var(--copper),var(--line))}
.proc>div::after{content:counter(p,decimal-leading-zero);position:absolute;top:8px;left:0;width:46px;height:46px;border-radius:50%;background:var(--ivory);border:1.5px solid var(--copper);display:grid;place-items:center;font-family:var(--serif);font-size:16px;color:var(--copper)}
.dk .proc>div::after{background:var(--plum)}.proc h3{font-size:22px;margin-bottom:8px}.proc p{font-size:15px;color:var(--muted)}.dk .proc p{color:#CDBFD6}
@media(max-width:900px){.proc{grid-template-columns:1fr}.proc>div{padding:6px 0 30px 68px}.proc>div::before{top:0;bottom:0;left:22px;right:auto;width:1.5px;height:auto}.proc>div::after{top:0}}
/* quality strip */
.qs{display:flex;flex-wrap:wrap;gap:10px}.qs .chip{font-size:14px;padding:10px 18px}
/* CATALOGUE */
.ctl{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;margin-bottom:22px}
.srch{position:relative}.srch input{width:100%;font:inherit;padding:16px 22px 16px 54px;border-radius:99px;border:1.5px solid var(--line);background:var(--paper);transition:.3s}.srch input:focus{outline:0;border-color:var(--copper)}.srch::before{content:"";position:absolute;left:22px;top:50%;width:14px;height:14px;border:2px solid var(--muted);border-radius:50%;transform:translateY(-60%)}.srch::after{content:"";position:absolute;left:35px;top:calc(50% + 4px);width:7px;height:2px;background:var(--muted);transform:rotate(45deg)}
.pills{display:flex;gap:8px;flex-wrap:wrap}.pills button{padding:11px 20px;border-radius:99px;border:1.5px solid var(--line);font-size:14.5px;transition:.35s;background:var(--paper)}.pills button:hover{border-color:var(--copper)}.pills button.on{background:var(--plum);color:#fff;border-color:var(--plum)}
.pills.sm2 button{padding:8px 16px;font-size:13.5px}.cnt{font-size:14px;color:var(--muted);margin:14px 0 6px}
.rows{border-top:1.5px solid var(--ink)}
.rw{border-bottom:1px solid var(--line)}
.rw-h{display:grid;grid-template-columns:64px 1.6fr 1fr 1fr 1.1fr 40px;gap:18px;align-items:center;padding:24px 8px;width:100%;text-align:left;transition:.4s}.rw-h:hover{background:rgba(255,255,255,.55);padding-left:20px}
.rw .no{font-family:var(--serif);font-style:italic;color:var(--muted);font-size:19px}.rw .nm{font-family:var(--serif);font-size:clamp(24px,2.6vw,36px);letter-spacing:-.02em;line-height:1.1}.rw .nm em{display:block;font-size:16px;color:var(--muted);margin-top:3px}
.rw .fm{display:inline-flex;align-items:center;gap:9px;font-size:14px}.rw .fm i{width:11px;height:11px;border-radius:50%;background:var(--c)}
.rw .sz,.rw .cc{font-size:14.5px;color:#4b3b50}.rw .ch{width:34px;height:34px;border-radius:50%;border:1.5px solid var(--line);position:relative;transition:.5s var(--ease)}.rw .ch::before,.rw .ch::after{content:"";position:absolute;left:9px;right:9px;top:50%;height:1.5px;background:var(--ink);transition:.5s}.rw .ch::after{transform:rotate(90deg)}.rw.open .ch{background:var(--plum);border-color:var(--plum);transform:rotate(180deg)}.rw.open .ch::before,.rw.open .ch::after{background:#fff}.rw.open .ch::after{transform:rotate(0)}
.rw-d{display:none;padding:6px 8px 34px 92px}.rw.open .rw-d{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:34px;animation:op .6s var(--ease)}@keyframes op{from{opacity:0;transform:translateY(-8px)}}
.rw-d h4{font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--copper);margin-bottom:10px}.rw-d p{color:#4b3b50;font-size:16px}.rw-d dl{display:grid;grid-template-columns:auto 1fr;gap:8px 18px;font-size:14.5px}.rw-d dt{color:var(--muted)}
.rw-d .go{margin-top:18px}
@media(max-width:900px){.ctl{grid-template-columns:1fr}.rw-h{grid-template-columns:44px 1fr 30px;gap:12px}.rw-h .fm,.rw-h .sz,.rw-h .cc{display:none}.rw-d{padding:6px 8px 30px}.rw.open .rw-d{grid-template-columns:1fr}}
/* CALCULATOR */
.calc{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,4vw,60px)}
.cp{padding:clamp(26px,3.4vw,46px);border-radius:32px;background:rgba(255,255,255,.06);border:1px solid var(--line2)}
.cp label{display:grid;gap:8px;margin-bottom:20px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#B9A9C4}
.cp input,.cp select{font:inherit;font-size:17px;letter-spacing:0;text-transform:none;color:#fff;background:rgba(255,255,255,.08);border:1px solid var(--line2);border-radius:16px;padding:15px 18px;width:100%}.cp select option{background:var(--plum)}.cp input:focus,.cp select:focus{outline:0;border-color:var(--rose)}
.co{display:grid;grid-template-columns:1fr 1fr;gap:12px}.co div{padding:20px;border-radius:20px;background:rgba(0,0,0,.18)}.co .bigo{grid-column:1/-1;background:linear-gradient(120deg,rgba(217,133,82,.4),rgba(231,169,142,.16))}
.co b{display:block;font-family:var(--serif);font-weight:300;font-size:clamp(24px,2.6vw,36px);color:#fff;letter-spacing:-.02em;line-height:1.1}.co .bigo b{font-size:clamp(34px,4vw,54px);color:var(--apricot)}.co span{font-size:12.5px;letter-spacing:.08em;color:#B9A9C4}
.mt{height:12px;border-radius:99px;background:rgba(255,255,255,.1);overflow:hidden;margin-top:16px}.mt i{display:block;height:100%;width:0;border-radius:99px;background:linear-gradient(90deg,var(--copper2),var(--apricot));transition:width 1s var(--ease)}.wn{margin-top:14px;font-size:14px;color:var(--apricot);min-height:22px}
@media(max-width:900px){.calc{grid-template-columns:1fr}}
/* SERVICES */
.svl{display:grid;grid-template-columns:260px 1fr;gap:clamp(30px,6vw,100px);align-items:start}
.svn{position:sticky;top:120px;display:grid;gap:2px;border-left:1.5px solid var(--line);padding-left:22px}.svn a{padding:10px 0;font-size:15px;color:var(--muted);transition:.3s}.svn a:hover,.svn a.on{color:var(--copper)}.svn small{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.sv{padding:0 0 clamp(60px,7vw,100px);margin-bottom:clamp(60px,7vw,100px);border-bottom:1px solid var(--line);scroll-margin-top:110px}.sv:last-child{border:0;margin:0}
.sv .n{font-family:var(--serif);font-style:italic;font-size:clamp(70px,9vw,130px);font-weight:300;line-height:.8;color:transparent;-webkit-text-stroke:1.2px var(--copper)}
.sv h3{font-size:clamp(32px,4vw,56px);margin:18px 0 14px}.sv .sub{font-size:12.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--copper);font-weight:600}
.sv .cols{display:grid;grid-template-columns:1.2fr .8fr;gap:34px;margin-top:26px}.out{padding:28px;border-radius:24px;background:var(--plum);color:#D9CDE0}.out h4{font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--rose);margin-bottom:12px}.out li{padding:8px 0;border-bottom:1px solid var(--line2);font-size:15px}.out li:last-child{border:0}
@media(max-width:900px){.svl{grid-template-columns:1fr}.svn{position:static;display:flex;flex-wrap:wrap;gap:4px 18px;border:0;padding:0}.sv .cols{grid-template-columns:1fr}}
.cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.cd{padding:34px 30px;border-radius:28px;background:var(--paper);border:1px solid var(--line);transition:.7s var(--ease);display:flex;flex-direction:column;gap:12px}.cd:hover{transform:translateY(-6px);border-color:var(--copper)}
.cd small{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--copper);font-weight:700}.cd h3{font-size:26px}.cd p{color:var(--muted);font-size:15.5px}
.dk .cd{background:rgba(255,255,255,.05);border-color:var(--line2)}.dk .cd p{color:#CDBFD6}.dk .cd small{color:var(--rose)}
@media(max-width:900px){.cards3{grid-template-columns:1fr}}
/* PRODUCTS (finished) */
.pg{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.pc{border-radius:30px;background:var(--paper);border:1px solid var(--line);overflow:hidden;display:flex;flex-direction:column;transition:.7s var(--ease)}.pc:hover{transform:translateY(-6px);box-shadow:0 30px 60px -36px rgba(46,23,57,.5)}
.pc .pa{height:260px;position:relative;background:linear-gradient(180deg,var(--c1),var(--c2));display:grid;place-items:center;color:rgba(255,255,255,.9);overflow:hidden}.pc .pa .art{width:44%;color:#fff}.pc .pa .cells{opacity:.6}
.pc .pb{padding:26px 28px 32px;display:flex;flex-direction:column;gap:14px;flex:1}.pc h3{font-size:28px}.pc .sub{font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--copper);font-weight:700}.pc h4{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}.pc ul.mini li{font-size:14.5px;padding:5px 0;border-bottom:1px solid var(--line);color:#4b3b50}
@media(max-width:1000px){.pg{grid-template-columns:1fr 1fr}}@media(max-width:640px){.pg{grid-template-columns:1fr}}
.rit{display:grid;grid-template-columns:1fr 1fr;gap:16px}.rt{padding:38px;border-radius:32px}.rt.am{background:linear-gradient(160deg,#F2C9A8,#E7A98E);color:var(--ink)}.rt.pm{background:linear-gradient(160deg,var(--plum2),var(--plum));color:#E9DDEE}
.rt h3{font-style:italic;font-weight:300;font-size:46px}.rt ol{margin-top:20px;list-style:none;counter-reset:r}.rt li{counter-increment:r;display:grid;grid-template-columns:44px 1fr;gap:2px 14px;padding:16px 0;border-top:1px solid rgba(0,0,0,.14);align-items:center}.rt.pm li{border-color:var(--line2)}
.rt li::before{content:counter(r);grid-row:span 2;width:38px;height:38px;border-radius:50%;border:1.5px solid currentColor;display:grid;place-items:center;font-weight:700}.rt li b{font-family:var(--serif);font-weight:500;font-size:20px}.rt li span{font-size:14.5px;opacity:.8}
@media(max-width:800px){.rit{grid-template-columns:1fr}}
/* SAGE THEME (Exonira) */
body.sage{--ivory:#F3F1E7;--paper:#FAF9F1;--sand:#E4E3D0;--plum:#1E3A2C;--plum2:#2C5240;--plum3:#3E6B55;--copper:#4E7B5A;--copper2:#8DBB96;--rose:#CFE3C6;--apricot:#DDEBD2;--line:rgba(30,58,44,.16);--muted:#5B6E60}
body.sage .glow{background:radial-gradient(circle,rgba(141,187,150,.2),transparent 65%)}
body.sage .ph{background:linear-gradient(180deg,#E4E3D0,#F3F1E7)}
.tl{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;position:relative;padding-top:60px}.tl::before{content:"";position:absolute;left:0;right:0;top:22px;height:1.5px;background:var(--line)}.tl::after{content:"";position:absolute;left:0;top:22px;height:1.5px;width:0;background:var(--copper);transition:width 2.4s var(--ease)}.tl.in::after{width:100%}
.tl .pt{position:relative}.tl .pt::before{content:"";position:absolute;top:-48px;left:0;width:20px;height:20px;border-radius:50%;background:var(--ivory);border:2px solid var(--copper)}
.tl .day{font-family:var(--serif);font-style:italic;font-weight:300;font-size:44px;line-height:1}.tl h3{font-size:18px;margin:10px 0 6px;color:var(--copper)}.tl p{font-size:14.5px;color:var(--muted)}
@media(max-width:900px){.tl{grid-template-columns:1fr;padding:0 0 0 40px;gap:30px}.tl::before,.tl::after{left:8px;right:auto;top:0;bottom:0;width:1.5px;height:auto}.tl::after{height:0;transition:height 2.4s var(--ease);width:1.5px}.tl.in::after{height:100%;width:1.5px}.tl .pt::before{left:-40px;top:6px}}
.herbs{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.hb{padding:22px 24px;border-radius:22px;background:var(--paper);border:1px solid var(--line);transition:.5s}.hb:hover{border-color:var(--copper);transform:translateY(-4px)}
.hb h3{font-size:22px}.hb .lt{font-family:var(--serif);font-style:italic;color:var(--muted);font-size:15px}.hb .pc2{display:flex;align-items:center;gap:12px;margin-top:14px}.hb .pc2 .bt{flex:1;height:7px}.hb .pc2 b{font-family:var(--serif);font-weight:400;font-size:19px}
.hb .bt i{width:0}.herbs.in .bt i{width:var(--w)}
@media(max-width:900px){.herbs{grid-template-columns:1fr 1fr}}@media(max-width:560px){.herbs{grid-template-columns:1fr}}
.charts{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.ch2{padding:26px;border-radius:26px;background:var(--paper);border:1px solid var(--line)}.ch2 h3{font-size:20px}.ch2 p{font-size:13px;color:var(--muted);margin-bottom:8px}.ch2 svg{width:100%;height:auto;overflow:visible}
.ch2 .gr line{stroke:var(--line)}.ch2 text{fill:var(--muted);font-size:11px;font-family:var(--sans)}.ch2 .bd{fill:rgba(78,123,90,.14)}.ch2 .ln{fill:none;stroke:var(--copper);stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1200;stroke-dashoffset:1200;transition:stroke-dashoffset 2.6s var(--ease)}.ch2.in .ln{stroke-dashoffset:0}.ch2 circle.pt{fill:var(--paper);stroke:var(--copper);stroke-width:2.5}
@media(max-width:1000px){.charts{grid-template-columns:1fr}}
.caut{padding:28px 32px;border-radius:24px;border:1.5px solid rgba(181,120,30,.4);background:rgba(232,190,90,.14);font-size:15px;color:#5a4a1c}.caut b{color:#7a5a10}
.stp{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.stp div{padding:34px 26px;border-radius:26px;background:var(--paper);border:1px solid var(--line)}.stp div::before{content:attr(data-n);display:block;font-family:var(--serif);font-style:italic;font-size:60px;font-weight:300;line-height:1;color:var(--copper);margin-bottom:10px}.stp h3{font-size:22px;margin-bottom:8px}.stp p{font-size:15px;color:var(--muted)}
@media(max-width:1000px){.stp{grid-template-columns:1fr 1fr}}@media(max-width:600px){.stp{grid-template-columns:1fr}}
/* science */
.bio{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.bs{padding:22px 20px 26px;border-radius:26px;background:var(--paper);border:1px solid var(--line);position:relative}.bs svg{width:100%;height:110px;margin-bottom:12px;color:var(--copper)}.bs b{position:absolute;top:16px;left:20px;font-family:var(--serif);font-style:italic;font-size:30px;color:var(--copper);font-weight:300}.bs h3{font-size:19px;margin-bottom:6px}.bs p{font-size:14px;color:var(--muted)}
@media(max-width:1100px){.bio{grid-template-columns:1fr 1fr}}@media(max-width:600px){.bio{grid-template-columns:1fr}}
.lad{padding:80px 0 30px}.la{position:relative;height:150px;border-bottom:2px solid var(--line)}.la::after{content:"";position:absolute;left:0;bottom:-2px;height:2px;width:0;background:var(--copper);transition:width 2.4s var(--ease)}.lad.in .la::after{width:100%}
.lp{position:absolute;left:var(--x);transform:translateX(-50%);text-align:center;white-space:nowrap;opacity:0;transition:opacity .8s calc(var(--i)*.25s + .4s)}.lad.in .lp{opacity:1}.lp.up{bottom:26px}.lp.dn{bottom:76px}
.lp b{display:block;font-family:var(--serif);font-weight:400;font-size:17px}.lp span{font-size:12px;color:var(--muted)}.lp i{position:absolute;left:50%;bottom:-32px;width:12px;height:12px;border-radius:50%;background:var(--mist);transform:translateX(-50%)}.lp.up i{bottom:-32px}.lp.dn i{bottom:-82px}
.lp.hl i{background:var(--copper);width:20px;height:20px;box-shadow:0 0 0 8px rgba(181,96,43,.18)}.lp.hl b{color:var(--copper);font-size:21px}
.lt2{display:flex;justify-content:space-between;margin-top:18px;font-size:12px;color:var(--muted)}
@media(max-width:700px){.lp span{display:none}.lp b{font-size:11px}}
.gl{display:grid;grid-template-columns:1fr 1fr;gap:0 60px}.gl div{padding:22px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:96px 1fr;gap:16px}.gl dt{font-family:var(--serif);font-size:22px;color:var(--copper)}.gl dd{color:var(--muted);font-size:15.5px}@media(max-width:800px){.gl{grid-template-columns:1fr}}
.pl{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.pm{padding:26px 22px;border-radius:26px;background:var(--paper);border:1px solid var(--line);min-height:260px;display:flex;flex-direction:column;transition:.6s var(--ease)}.pm:hover{transform:translateY(-6px);border-color:var(--copper)}.pm small{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.pm h3{margin:10px 0 auto;font-size:24px}.pm .cc2{margin-top:20px;display:grid;gap:7px}.pm .cc2 span{padding:8px 13px;border-radius:12px;background:var(--sand);font-size:13px}
@media(max-width:1100px){.pl{grid-template-columns:1fr 1fr}}@media(max-width:600px){.pl{grid-template-columns:1fr}}
/* about / contact */
.pil{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.pi{padding:34px 26px;border-radius:28px;background:var(--paper);border:1px solid var(--line)}.pi b{font-family:var(--serif);font-style:italic;font-weight:300;font-size:52px;color:var(--copper);line-height:1}.pi h3{margin:16px 0 8px;font-size:22px}.pi p{font-size:15px;color:var(--muted)}
@media(max-width:1000px){.pil{grid-template-columns:1fr 1fr}}@media(max-width:560px){.pil{grid-template-columns:1fr}}
.cg2{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(30px,6vw,100px)}.ci dt{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--copper);margin-top:30px;font-weight:700}.ci dd{font-family:var(--serif);font-size:24px;margin-top:6px;line-height:1.35}.ci a:hover{color:var(--copper)}
.seg{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:26px}.seg button{padding:14px 24px;border-radius:99px;border:1.5px solid var(--line);font-weight:600;font-size:15px;transition:.4s var(--ease);background:var(--paper)}.seg button.on{background:var(--plum);color:#fff;border-color:var(--plum)}
.fm2{display:none;gap:16px;padding:clamp(26px,3.4vw,46px);border-radius:32px;background:var(--paper);border:1px solid var(--line)}.fm2.on{display:grid;animation:op .6s var(--ease)}.fm2 .two{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.fm2 label{display:grid;gap:8px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:600}.fm2 input,.fm2 select,.fm2 textarea{font:inherit;font-size:16px;letter-spacing:0;text-transform:none;color:var(--ink);background:var(--ivory);border:1.5px solid var(--line);border-radius:16px;padding:15px 18px;width:100%;transition:.3s}.fm2 input:focus,.fm2 select:focus,.fm2 textarea:focus{outline:0;border-color:var(--copper)}.fm2 textarea{min-height:130px;resize:vertical}
@media(max-width:900px){.cg2{grid-template-columns:1fr}.fm2 .two{grid-template-columns:1fr}}
.ac{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:30px;overflow:hidden}.ac div{padding:36px 28px;border-right:1px solid var(--line);background:var(--paper)}.ac div:last-child{border:0}.ac small{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--copper);font-weight:700}.ac h3{margin:14px 0 10px;font-size:26px}.ac p{font-size:15px;color:var(--muted)}
@media(max-width:1000px){.ac{grid-template-columns:1fr 1fr}.ac div{border-bottom:1px solid var(--line)}}@media(max-width:560px){.ac{grid-template-columns:1fr}}

.proc.p7{grid-template-columns:repeat(7,1fr)}.proc.p7>div{padding-right:8px}
.cards3.c4{grid-template-columns:repeat(4,1fr)}.stp.s2{grid-template-columns:1fr 1fr}.pil.p2{grid-template-columns:1fr 1fr}
.kp.k2{grid-template-columns:1fr 1fr}.kp.k2 div:nth-child(2){border-right:0}.kp.k2 div:nth-child(n+3){border-top:1px solid rgba(127,100,140,.25)}.kp.k2 div:nth-child(3){padding-left:0}.kp.k1{grid-template-columns:1fr}.kp.k1 div{border-right:0;padding-left:0;border-bottom:1px solid var(--line2)}
@media(max-width:1000px){.cards3.c4{grid-template-columns:1fr 1fr}}
@media(max-width:900px){.proc.p7{grid-template-columns:1fr}.proc.p7>div{padding:6px 0 30px 68px}.kp.k2 div:nth-child(2){border-right:0}}
@media(max-width:600px){.cards3.c4,.stp.s2{grid-template-columns:1fr}.pil.p2{grid-template-columns:1fr}}

/* specimen strip: real material photographs */
.spcs{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.spcs-t{display:flex;gap:46px;width:max-content;animation:mq 110s linear infinite;padding:10px 0 20px}.spcs:hover .spcs-t{animation-play-state:paused}
.spc{flex:none;text-align:center;width:170px}
.lz,.th{display:block;border-radius:50%;overflow:hidden;position:relative;box-shadow:0 0 0 2px var(--c),0 0 0 8px color-mix(in srgb,var(--c) 18%,transparent),0 24px 40px -22px color-mix(in srgb,var(--c) 80%,#000);transition:transform .9s var(--ease)}
.lz{width:150px;height:150px;margin:6px auto 20px}.lz img,.th img{width:100%;height:100%;object-fit:cover;transform:scale(1.1);transition:transform 1.4s var(--ease)}
.lz::after,.th::after{content:"";position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 30% 24%,rgba(255,255,255,.26),transparent 42%);pointer-events:none}
.spc:hover .lz{transform:translateY(-6px)}.spc:hover .lz img{transform:scale(1.22)}
.spc b{display:block;font-family:var(--serif);font-weight:400;font-size:22px;letter-spacing:-.01em;line-height:1.15}.spc em{display:block;font-size:13px;color:var(--muted);margin-top:3px;font-style:italic;font-family:var(--serif)}
@media(prefers-reduced-motion:reduce){.spcs-t{animation:none;flex-wrap:wrap;justify-content:center;width:auto}}
/* rail photo cards */
.sp .top.ph{background:var(--sand)}.sp .top.ph::before,.sp .top.ph::after{display:none}
.sp .top.ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--ease)}.sp:hover .top.ph img{transform:scale(1.08)}
.sp .top.ph::before{display:block;content:"";position:absolute;inset:0;border:0;border-radius:0;width:auto;height:auto;right:auto;bottom:auto;background:var(--c);mix-blend-mode:multiply;opacity:.16}
.sp .top.ph .no{z-index:2;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.5)}
/* catalogue thumbs */
.rw .no{display:flex;align-items:center}.rw .th{width:52px;height:52px;box-shadow:0 0 0 1.5px var(--c),0 0 0 5px color-mix(in srgb,var(--c) 16%,transparent)}
.rw .th i{display:grid;place-items:center;width:100%;height:100%;font-family:var(--serif);font-style:italic;font-size:17px;color:var(--c);background:color-mix(in srgb,var(--c) 14%,var(--paper))}
.rw-h:hover .th img{transform:scale(1.22)}
.th.big{width:132px;height:132px;margin-bottom:22px}
@media(max-width:900px){.rw .th{width:42px;height:42px}.th.big{width:96px;height:96px}}

/* rail card stage v2: template-coloured stage + round specimen */
.sp .top,.sp .top.ph{height:200px;background:radial-gradient(circle at 50% 48%,color-mix(in srgb,var(--c) 42%,#fff) 0,transparent 62%),linear-gradient(180deg,var(--sand),color-mix(in srgb,var(--c) 26%,var(--paper)))}
.sp .top::before,.sp .top.ph::before{content:"";position:absolute;inset:auto;width:190px;height:190px;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%;border:2px dotted var(--c);opacity:.55;background:none;mix-blend-mode:normal}
.sp .top::after,.sp .top.ph::after{content:"";position:absolute;width:250px;height:250px;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%;border:1px solid color-mix(in srgb,var(--c) 40%,transparent);background:none;opacity:.6}
.sp .top .lz{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:132px;height:132px;margin:0;z-index:2;transition:transform .9s var(--ease)}
.sp:hover .top .lz{transform:translate(-50%,-54%) scale(1.05)}
.sp .top .lz.v{box-shadow:none;border-radius:0;overflow:visible}.sp .top .lz.v::after{display:none}.sp .top .lz.v svg{width:100%;height:100%;overflow:visible}
.sp .top .no{z-index:3;color:rgba(27,17,32,.6);text-shadow:none}
.th.v,.th.big.v{box-shadow:none;border-radius:0;overflow:visible;background:none}.th.v::after{display:none}.th.v svg{width:100%;height:100%;overflow:visible}
.rw .th.v{background:radial-gradient(circle,color-mix(in srgb,var(--c) 22%,transparent),transparent 70%)}

.stp.s3{grid-template-columns:repeat(3,1fr)}.stp.s3 div::before{font-size:38px;margin-bottom:14px}
@media(max-width:900px){.stp.s3{grid-template-columns:1fr 1fr}}@media(max-width:600px){.stp.s3{grid-template-columns:1fr}}
.nv a:not(.btn){padding:9px 12px;font-size:14px}
.gf{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(30px,6vw,100px);align-items:center}
@media(max-width:900px){.gf{grid-template-columns:1fr}}

.svl>div{min-width:0}.sv .tw{max-width:100%}

.dk .tb td b{color:#FBF5EC}
.dk .cd h3,.dk .stp h3{color:#FBF5EC}

/* dropdown nav */
.dd{position:relative}.ddb{font-size:14px;padding:9px 12px;border-radius:99px;color:#4b3b50;display:inline-flex;align-items:center;gap:8px;transition:.35s}.ddb:hover,.ddb[aria-current]{background:rgba(46,23,57,.07);color:var(--ink)}.ddb[aria-current]{background:var(--plum);color:#fff}
.ddb i{width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:.4s}
.dd-m{position:absolute;left:50%;top:calc(100% + 12px);transform:translate(-50%,8px);min-width:300px;padding:10px;border-radius:22px;background:rgba(252,248,241,.97);backdrop-filter:blur(16px);border:1px solid var(--line);box-shadow:0 30px 70px -26px rgba(46,23,57,.45);opacity:0;pointer-events:none;transition:.4s var(--ease)}
.dd:hover .dd-m,.dd:focus-within .dd-m,.dd.open .dd-m{opacity:1;pointer-events:auto;transform:translate(-50%,0)}.dd:hover .ddb i,.dd.open .ddb i{transform:rotate(225deg) translateY(-2px)}
.dd-m a{display:block;padding:13px 16px;border-radius:16px;transition:.3s;background:none!important;color:var(--ink)!important;font-size:14px!important}.dd-m a:hover,.dd-m a[aria-current]{background:rgba(181,96,43,.1)!important}
.dd-m a b{display:block;font-family:var(--serif);font-weight:500;font-size:18px}.dd-m a span{font-size:12.5px;color:var(--muted)}
@media(max-width:1100px){.ddb{display:none}.dd{display:contents}.dd-m{position:static;opacity:1;pointer-events:auto;transform:none;background:none;border:0;box-shadow:none;padding:0;min-width:0}.dd-m a{text-align:center;padding:6px}.dd-m a span{display:none}.dd-m a b{font-family:var(--serif);font-size:34px;font-weight:400}.nv a:not(.btn){font-size:34px}}
/* video frames */
.vf{position:relative;border-radius:30px;overflow:hidden;aspect-ratio:16/9;background:var(--plum);box-shadow:0 50px 100px -50px rgba(46,23,57,.6);border:1px solid rgba(46,23,57,.12)}
.vf video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.1s var(--ease)}.vf video.on{opacity:1}
.vf-ui{position:absolute;left:16px;bottom:16px;display:flex;gap:8px;z-index:3}.vd{padding:8px 16px;border-radius:99px;background:rgba(27,17,32,.55);backdrop-filter:blur(8px);color:#fff;font-size:12.5px;font-weight:600;border:1px solid rgba(255,255,255,.25);transition:.35s}.vd.on{background:var(--copper);border-color:var(--copper)}.vd:hover{background:var(--copper2)}
.hero-g.hv{grid-template-columns:.85fr 1.15fr}.hv .hero-a{width:100%;justify-self:stretch}.hv .pill.p1{left:-8%;top:auto;bottom:16%}.hv .rotb{right:-3%;top:-9%}
.ph-g{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,80px);align-items:center}.ph.hv2 .ph-in h1{max-width:none}.ph.hv2{padding-bottom:clamp(50px,6vw,90px)}
@media(max-width:900px){.hero-g.hv,.ph-g{grid-template-columns:1fr}.hv .hero-a{order:-1}.hv .pill.p1{left:12px;bottom:12px;top:auto}.hv .rotb{display:none}}
/* tabs */
.tb2{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:30px}.tb2 button{padding:13px 22px;border-radius:99px;border:1.5px solid var(--line);font-size:15px;font-weight:600;background:var(--paper);transition:.4s var(--ease)}.tb2 button:hover{border-color:var(--copper)}.tb2 button.on{background:var(--plum);color:#fff;border-color:var(--plum)}
.tp{display:none}.tp.on{display:block;animation:op .6s var(--ease)}
.bdg{display:inline-block;padding:7px 16px;border-radius:99px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:700}.bdg.a{background:#dcebd2;color:#2d5a3a}.bdg.b{background:#f2dfc2;color:#7a4a12}.bdg.c{background:#e6dfee;color:#4a2559}
.proc.p4{grid-template-columns:repeat(4,1fr)}@media(max-width:900px){.proc.p4{grid-template-columns:1fr}}
.rflag{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(24px,5vw,70px);padding:clamp(28px,4vw,56px);border-radius:34px;background:linear-gradient(160deg,#7a2c1c,#4a1a12);color:#f7dfd6}.rflag h2{color:#fff;margin-top:14px}.rflag h2 em{color:#ffb9a1}.rflag .ey{color:#ffb9a1}.rflag .cl li{border-color:rgba(255,255,255,.18)}.rflag .cl li::before{background:#ffb9a1}
@media(max-width:900px){.rflag{grid-template-columns:1fr}}
/* publications */
.post{padding:0 0 clamp(40px,5vw,70px);margin-bottom:clamp(40px,5vw,70px);border-bottom:1px solid var(--line);scroll-margin-top:110px}.post:last-child{border:0}
.post .meta{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--copper);font-weight:700}.post h4{font-family:var(--serif);font-size:26px;font-weight:400;margin:28px 0 8px}.post p{color:#4a3b50;margin-bottom:16px;max-width:68ch;font-size:17.5px}
.post ul{margin:0 0 20px;display:grid;gap:8px;max-width:68ch}.post li{padding-left:24px;position:relative;color:#4a3b50}.post li::before{content:"";position:absolute;left:0;top:.75em;width:10px;height:1.5px;background:var(--copper)}
.takeaway{margin-top:24px;padding:22px 26px;border-radius:22px;border:1px solid rgba(181,96,43,.35);background:rgba(181,96,43,.07);font-size:16px}.takeaway b{display:block;font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--copper);margin-bottom:6px}
.dl{display:grid;grid-template-columns:1fr 1fr;gap:14px}.dl a{padding:24px 26px;border-radius:22px;border:1.5px dashed rgba(181,96,43,.5);background:rgba(181,96,43,.04);transition:.5s var(--ease)}.dl a:hover{background:var(--copper);color:#fff;transform:translateY(-4px)}.dl a b{display:block;font-family:var(--serif);font-weight:500;font-size:20px}.dl a span{font-size:13.5px;opacity:.75}
@media(max-width:700px){.dl{grid-template-columns:1fr}}

.cards3>*,.stp>*,.split>*,.sv>*{min-width:0}.cards3{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:900px){.cards3{grid-template-columns:minmax(0,1fr)}}
.cd,.cd *{overflow-wrap:anywhere}

/* ---- v3: logo ---- */
.wm{display:inline-flex;align-items:center;color:var(--plum)}
.wm svg.logo{height:30px;width:auto;display:block;--logo-ring:var(--copper)}
.ft .wm{color:#FBF5EC}.ft .wm svg.logo{--logo-ring:var(--copper2);height:38px}
@media(max-width:1100px){.wm svg.logo{height:26px}}
/* ---- v3: full-bleed video banners ---- */
.vbg{position:absolute;inset:0;overflow:hidden;background:var(--plum)}
.vbg video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.2s var(--ease)}.vbg video.on{opacity:1}
.vshade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(27,17,32,.92) 0%,rgba(46,23,57,.74) 34%,rgba(46,23,57,.2) 68%,rgba(46,23,57,0) 100%),linear-gradient(0deg,rgba(27,17,32,.72) 0%,rgba(27,17,32,0) 42%),linear-gradient(180deg,rgba(27,17,32,.35),rgba(27,17,32,0) 24%)}
.vbg .vf-ui{position:absolute;right:max(var(--gut),calc((100vw - 1320px)/2 + var(--gut)));bottom:34px;left:auto;display:flex;gap:8px;z-index:4;align-items:center}
.vpz{width:38px;height:38px;border-radius:50%;background:rgba(27,17,32,.55);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.28);display:grid;grid-auto-flow:column;place-content:center;gap:4px;transition:.3s}.vpz:hover{background:var(--copper)}
.vpz i{width:3px;height:13px;background:#fff;border-radius:2px}.vpz.on i:first-child{width:0;height:0;background:none;border-left:11px solid #fff;border-top:7px solid transparent;border-bottom:7px solid transparent;border-radius:0}.vpz.on i:last-child{display:none}
.hero.hero-v{background:var(--plum);color:#fff;min-height:100svh;align-items:flex-end;padding:150px 0 0;border-radius:0 0 44px 44px;position:relative;overflow:hidden;flex-direction:column;justify-content:flex-end}
.hero-v .hero-g{display:block;position:relative;z-index:3;padding-bottom:36px}.hero-v .hero-t{max-width:760px}
.hero-v h1{color:#FBF5EC;font-size:clamp(50px,7.6vw,118px)}.hero-v h1 em{color:var(--rose)}.hero-v .ey{color:var(--rose)}.hero-v .ld{color:#E6DAEB}
.hero-v .btn.pri{background:var(--copper2);color:var(--ink)}.hero-v .btn.pri:hover{background:var(--rose)}.hero-v .btn.gh{border-color:rgba(255,255,255,.5);color:#fff}.hero-v .btn.gh:hover{background:#fff;color:var(--plum)}
.hv-foot{position:relative;z-index:3;width:100%;display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding-bottom:30px;flex-wrap:wrap}
.hv-stats{display:flex;gap:clamp(24px,4vw,64px);border-top:1px solid rgba(255,255,255,.22);padding-top:20px}.hv-stats b{display:block;font-family:var(--serif);font-weight:300;font-size:clamp(26px,3vw,40px);letter-spacing:-.02em;color:#fff;line-height:1.1}.hv-stats span{font-size:13px;color:#CDBFD6}
.vcap{font-size:12px;color:rgba(255,255,255,.55);letter-spacing:.04em;max-width:240px;text-align:right}
.hero-v .cells{display:none}
.ph.phv{background:var(--plum);color:#fff;min-height:clamp(480px,74vh,740px);display:flex;align-items:flex-end;padding:150px 0 70px;border:0;position:relative;overflow:hidden}
.phv .ph-in{position:relative;z-index:3;width:100%}.phv h1{color:#FBF5EC;max-width:13ch}.phv h1 em{color:var(--rose)}.phv .ey{color:var(--rose)}.phv .ld{color:#E6DAEB}
@media(max-width:900px){.vshade{background:linear-gradient(0deg,rgba(27,17,32,.9) 8%,rgba(46,23,57,.55) 55%,rgba(46,23,57,.35) 100%)}.hv-foot{padding-bottom:78px}.vcap{text-align:left}.vbg .vf-ui{right:var(--gut);bottom:20px}.hv-stats{flex-wrap:wrap;gap:20px}}
@media(prefers-reduced-motion:reduce){.vbg video{transition:none}}
/* ---- v3: dossier ---- */
.kp.k3{grid-template-columns:repeat(3,1fr)}.kp.k3 div:nth-child(3n){border-right:0}.kp.k3 div:nth-child(n+4){border-top:1px solid rgba(127,100,140,.25)}.kp.k3 div:nth-child(3n+1){padding-left:0}
@media(max-width:700px){.kp.k3{grid-template-columns:1fr 1fr}.kp.k3 div:nth-child(3n){border-right:1px solid rgba(127,100,140,.25)}.kp.k3 div:nth-child(2n){border-right:0}.kp.k3 div:nth-child(3n+1){padding-left:28px}.kp.k3 div:nth-child(2n+1){padding-left:0}}
.ch2 .ckey{display:flex;gap:16px;flex-wrap:wrap;margin-top:10px;font-size:12.5px;color:var(--muted)}.ch2 .ckey i{display:inline-block;width:16px;height:3px;border-radius:2px;margin-right:7px;vertical-align:middle}
.ch2 .ln{stroke-width:2.8}
@media(max-width:1000px){.charts[style*="1fr 1fr"]{grid-template-columns:1fr!important}}

.rw .nm u.up{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;background:var(--sand);color:var(--copper);padding:3px 9px;border-radius:99px;margin-left:8px;vertical-align:middle;font-weight:600}
.rw .rw-d dd{overflow-wrap:anywhere}

.xf{margin:0;border-radius:24px;overflow:hidden;background:var(--paper);border:1px solid var(--line)}.xf img{display:block;width:100%;height:auto}.xf figcaption{padding:12px 18px;font-size:13.5px;color:var(--muted)}.xf figcaption b{color:var(--ink)}
.xg4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.xcs{display:grid;gap:14px}.xcs h4{font-family:var(--serif);font-size:26px;font-weight:400;margin:18px 0 0}.xcs .xf img{max-height:none}
@media(max-width:900px){.xg4{grid-template-columns:1fr 1fr}}
.tags:not(.fc .tags){display:flex;flex-wrap:wrap;gap:8px}.tags:not(.fc .tags) span{font-size:13px;padding:7px 15px;border-radius:99px;border:1px solid var(--line);background:var(--paper)}
.xf.pk{max-width:400px;margin-inline:auto}

.wm img.logo{height:34px;width:auto;display:block}.ft .wm img.logo{height:44px}@media(max-width:1100px){.wm img.logo{height:30px}}

.bfs{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.bf{padding:24px 26px;border-radius:24px;background:var(--paper);border:1px solid var(--line);border-top:4px solid var(--c)}.bf h3{font-size:22px;margin-bottom:12px}.bf h3 small{font-family:var(--sans);font-size:12px;color:var(--muted);margin-left:6px}
.bf ul,.rel{list-style:none;padding:0;margin:0;display:grid;gap:2px}.bf li a,.rel li a{display:block;padding:7px 0;font-size:15px;border-bottom:1px solid var(--line);transition:.3s}.bf li a:hover,.rel li a:hover{color:var(--copper);padding-left:6px}.bf li em,.rel li em{display:block;font-family:var(--serif);color:var(--muted);font-size:13.5px}.bf u{font-size:10px;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;color:var(--copper);margin-left:6px}
.rel{grid-template-columns:repeat(3,1fr);gap:4px 28px}
@media(max-width:900px){.bfs{grid-template-columns:1fr}.rel{grid-template-columns:1fr}}
.cookie{position:fixed;left:16px;right:16px;bottom:16px;max-width:620px;margin-inline:auto;z-index:90;display:flex;gap:18px;align-items:center;flex-wrap:wrap;justify-content:space-between;padding:16px 20px;border-radius:20px;background:var(--plum);color:#F6F0E6;box-shadow:0 20px 60px -20px rgba(0,0,0,.5);font-size:14px}.cookie[hidden]{display:none}.cookie p{margin:0;flex:1 1 240px}.cookie a{text-decoration:underline}.cookie div{display:flex;gap:8px}.cookie .btn{padding:10px 18px;font-size:13.5px}.cookie .btn.gh{color:#F6F0E6;border-color:rgba(255,255,255,.35)}
