 @font-face {   font-family:'disp';   font-style: normal;   font-weight: 300 800;   font-display: swap;   src: url(f/disp.woff2) format('woff2');   unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
 @font-face {   font-family:'body';   font-style: normal;   font-weight: 300 700;   font-display: swap;   src: url(f/body.woff2) format('woff2');   unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
 @font-face {   font-family:'ser';   font-style: italic;   font-weight: 400;   font-display: swap;   src: url(f/ser-i.woff2) format('woff2');   unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
:root{--disp:'disp',Georgia,serif;--ser:'ser',Georgia,serif;--body:'body',system-ui,sans-serif}
:root{--bg:#eef0f1;--bg2:#e3e6e8;--bg3:#d8dbdf;--ink:#12213a;--ink2:#3e4a5f;--mut:#757e8c;--rule:#cdd1d6;--brass:#2f5bea;--brass2:#2f5bea;--navy:#12213a;--red:#2f5bea;--ease:cubic-bezier(.16,1,.3,1);--pad:clamp(20px,5vw,72px);--disp:Fraunces,Georgia,serif;--ser:Fraunces,Georgia,serif;--body:"DM Sans",system-ui,sans-serif}
*{box-sizing:border-box;margin:0;padding:0}
html{background:var(--bg);color:var(--ink);font:400 clamp(16px,1.05vw,18px)/1.55 var(--body);-webkit-font-smoothing:antialiased;overflow-x:clip}
html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}
body{overflow-x:clip}
img{display:block;max-width:100%}
a{color:inherit}
em{font-family:var(--ser);font-style:italic;font-weight:400;text-transform:none;letter-spacing:-.02em;color:var(--red)}
h1,h2{font-family:var(--disp);font-weight:800;font-stretch:68%;text-transform:uppercase;line-height:.88;letter-spacing:-.01em}
h2{font-size:clamp(2.6rem,6vw,6rem)}
.lead{color:var(--ink2);font-size:clamp(1.05rem,1.3vw,1.3rem);max-width:38ch}
.eyebrow{font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;color:var(--brass);margin-bottom:1.2rem}
.demo{position:relative;z-index:60;background:#000;color:var(--mut);font-size:12px;text-align:center;padding:6px 12px}
.grain{position:fixed;inset:-50%;z-index:90;pointer-events:none;opacity:.09;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:gr .9s steps(4) infinite}
@keyframes gr{25%{transform:translate(-3%,2%)}50%{transform:translate(2%,-3%)}75%{transform:translate(-1%,3%)}}
/* cursor */
.cur{position:fixed;left:0;top:0;z-index:95;pointer-events:none;display:none;opacity:0;transition:opacity .4s}.cur.v{opacity:1}
.cur span{position:absolute;width:38px;height:38px;margin:-19px;border:1px solid var(--brass);border-radius:50%;transition:width .35s var(--ease),height .35s var(--ease),margin .35s var(--ease),background .35s}
.cur.big span{width:86px;height:86px;margin:-43px;background:rgba(179,38,30,.12)}
@media (hover:hover) and (pointer:fine){.cur{display:block}}
/* header */
.top{position:fixed;top:28px;left:0;right:0;z-index:50;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px var(--pad);transition:background .4s,top .4s}
.top.s{top:0;background:rgba(243,244,245,.72);backdrop-filter:blur(10px)}
.logo{font-family:var(--disp);font-size:1.45rem;text-decoration:none;white-space:nowrap}
.logo sup{font-family:var(--body);font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:var(--brass);margin-left:6px}
nav{display:flex;align-items:center;gap:clamp(12px,2vw,32px)}
nav a:not(.btn){text-decoration:none;font-size:.92rem;color:var(--ink2)}
nav a:not(.btn):hover{color:var(--ink)}
.btn{display:inline-flex;align-items:center;gap:12px;background:var(--brass);color:#1b1411;text-decoration:none;font-weight:600;font-size:.95rem;padding:12px 20px;border-radius:999px;border:0;cursor:pointer;white-space:nowrap;position:relative;overflow:hidden;font-family:var(--body)}
.btn::before{content:"";position:absolute;inset:0;background:var(--ink);transform:translateY(101%);transition:transform .5s var(--ease)}
.btn:hover::before{transform:none}
.btn>*{position:relative}
.btn.big{padding:18px 30px;font-size:1.05rem}
.btn i{font-style:normal;transition:transform .4s var(--ease)}.btn:hover i{transform:translateX(5px)}
.btn.ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px var(--rule)}
.link{color:var(--ink);text-decoration:none;background:linear-gradient(var(--brass),var(--brass)) 0 100%/100% 1px no-repeat;padding-bottom:3px;transition:background-size .5s var(--ease)}
.link:hover{background-size:0 1px;background-position:100% 100%}
:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
/* hero */
.hero{position:relative;height:100svh;min-height:600px;overflow:hidden;display:flex;align-items:flex-end;isolation:isolate}
.h-media{position:absolute;inset:-8% 0 -8% 0;z-index:-3}
.h-media img{width:100%;height:100%;object-fit:cover;object-position:58% 50%;transform:scale(1.18);animation:hz 2.4s var(--ease) both;filter:saturate(.9) contrast(1.05)}
@keyframes hz{from{transform:scale(1.35);filter:brightness(.2) blur(6px)}}
.h-lamp{position:absolute;z-index:-2;left:52%;top:0;width:60vw;height:110%;transform:translateX(-50%);background:radial-gradient(ellipse 32% 55% at 50% 22%,rgba(255,200,120,.28),transparent 70%);mix-blend-mode:screen;animation:fl 6s infinite}
@keyframes fl{0%,100%{opacity:1}47%{opacity:1}48%{opacity:.6}49%{opacity:1}72%{opacity:.85}}
.h-haze{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(243,244,245,.55) 0%,rgba(243,244,245,0) 30%,rgba(243,244,245,.35) 55%,var(--bg) 100%),linear-gradient(90deg,rgba(243,244,245,.75),transparent 60%)}
.h-copy{width:100%;padding:0 var(--pad) clamp(40px,8vh,90px)}
.kick{display:flex;align-items:center;gap:10px;font-size:.85rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink2);margin-bottom:1.4rem}
.dot{width:9px;height:9px;border-radius:50%;background:var(--mut);flex:none}
.dot.on{background:#7fd38a;box-shadow:0 0 0 0 rgba(127,211,138,.6);animation:pu 1.8s infinite}
@keyframes pu{70%{box-shadow:0 0 0 10px rgba(127,211,138,0)}}
h1{font-size:clamp(3.4rem,11.5vw,12.5rem);line-height:.86}
.split .ln{display:block;overflow:hidden;padding-bottom:.08em}
.split .ln>span{display:inline-block}
.h-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-top:2rem}
.h-row p{max-width:40ch;color:var(--ink2);font-size:clamp(1rem,1.25vw,1.2rem)}
.h-scroll{position:absolute;right:var(--pad);top:50%;writing-mode:vertical-rl;font-size:.7rem;letter-spacing:.3em;text-transform:uppercase;color:var(--mut);display:flex;align-items:center;gap:12px}
.h-scroll span{width:1px;height:70px;background:linear-gradient(var(--brass) 50%,transparent 50%) 0 0/1px 200%;animation:sl 1.8s linear infinite}
@keyframes sl{to{background-position:0 -140px}}
/* marquee */
.mq{border-block:1px solid var(--rule);overflow:hidden;padding:22px 0;background:var(--bg)}
.mq-t{display:flex;width:max-content;gap:40px;font-family:var(--disp);font-size:clamp(1.8rem,3.6vw,3.4rem);white-space:nowrap;will-change:transform}
.mq-t b{color:var(--brass);font-weight:400;font-size:.55em;align-self:center}
/* pole */
.pole-sec{position:relative;height:200vh;background:radial-gradient(ellipse 60% 50% at 30% 50%,#2a1b14,var(--bg) 70%)}
.pole-pin{position:sticky;top:0;height:100svh;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:var(--pad);padding:80px var(--pad) 40px;overflow:hidden}
.pole-stage{position:relative;height:min(80svh,760px);touch-action:pan-y}
#pole{width:100%;height:calc(100% - 34px);display:block;cursor:grab}
#pole:active{cursor:grabbing}
.pole-fallback{position:absolute;left:50%;top:10%;width:70px;height:80%;margin-left:-35px;border-radius:36px;background:repeating-linear-gradient(-35deg,var(--red) 0 20px,#e5e8ea 20px 40px,#2a3d66 40px 60px,#e5e8ea 60px 80px);opacity:.9}
.pole-stage.ok .pole-fallback{display:none}
.hint{position:absolute;bottom:0;left:50%;transform:translateX(-50%);font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--mut)}
.pole-txt h2{margin-bottom:1.4rem}
.steps{list-style:none;margin-top:2rem;border-top:1px solid var(--rule)}
.steps li{display:flex;gap:18px;padding:14px 0;border-bottom:1px solid var(--rule);color:var(--mut);transition:color .5s}
.steps li b{font-family:var(--disp);font-weight:400;color:var(--rule);transition:color .5s}
.steps li.on{color:var(--ink)}.steps li.on b{color:var(--brass)}
/* say */
.say{height:200vh;position:relative}
.say-pin{position:sticky;top:0;height:100svh;display:grid;place-content:center;padding:0 var(--pad);max-width:1400px;margin:auto}
[data-wordlight]{font-family:var(--disp);font-size:clamp(2rem,5vw,5rem);line-height:1.08}
[data-wordlight] .w{color:rgba(21,21,21,.13);transition:color .7s var(--ease)}
[data-wordlight] .w.on{color:var(--ink)}[data-wordlight] .w.hi.on{color:var(--brass2)}
.cite{margin-top:2rem;color:var(--mut);font-size:.9rem}
/* film */
.film{position:relative;background:var(--bg2)}
.film-pin{height:100svh;display:flex;align-items:center;overflow:hidden;gap:6vw;padding-left:var(--pad)}
.film-h{flex:none;font-size:clamp(2.6rem,5vw,5.4rem)}
.film-track{display:flex;gap:4vw;flex:none;padding-right:var(--pad);will-change:transform}
.fr{width:min(38vw,560px);flex:none}
.fr-i{overflow:hidden;aspect-ratio:4/5;clip-path:inset(12% 12% 12% 12%);transition:clip-path 1.2s var(--ease)}
.fr.in .fr-i{clip-path:inset(0)}
.fr img{width:100%;height:100%;object-fit:cover;transform:scale(1.25);transition:transform 1.6s var(--ease)}
.fr.in img{transform:scale(1.05)}
.fr figcaption{margin-top:16px;color:var(--ink2);max-width:34ch}
.fr figcaption b{font-family:var(--disp);font-weight:400;color:var(--brass);margin-right:10px}
/* nums */
.nums{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-block:1px solid var(--rule)}
.nums div{padding:clamp(28px,5vw,64px) var(--pad);border-right:1px solid var(--rule);min-width:0}
.nums div:last-child{border-right:0}
.nums strong{display:block;font-family:var(--disp);font-weight:400;font-size:clamp(3rem,7vw,7rem);line-height:1;color:var(--brass2)}
.nums span{color:var(--mut);font-size:.9rem}
/* tarifa */
.tarifa{position:relative;padding:clamp(80px,14vh,160px) var(--pad)}
.t-head{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:var(--pad);align-items:end;margin-bottom:3rem}
.ej{display:inline-block;margin-top:.6rem;font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;color:var(--brass);border:1px solid var(--brass);padding:2px 8px}
.svc{list-style:none;border-top:1px solid var(--rule)}
.svc button{all:unset;box-sizing:border-box;width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 24px;align-items:baseline;padding:clamp(18px,3vh,30px) 0;border-bottom:1px solid var(--rule);cursor:pointer;position:relative}
.svc button::after{content:"";position:absolute;left:0;bottom:-1px;height:1px;width:100%;background:var(--brass);transform:scaleX(0);transform-origin:left;transition:transform .7s var(--ease)}
.svc button:hover::after,.svc button[aria-pressed=true]::after{transform:none}
.svc .n{font-family:var(--disp);font-size:clamp(1.6rem,3.4vw,3.2rem);line-height:1.05;transition:transform .5s var(--ease),color .4s}
.svc button:hover .n{transform:translateX(14px);color:var(--brass2)}
.svc .p{font-family:var(--disp);font-size:clamp(1.3rem,2.4vw,2.2rem)}
.svc .d{grid-column:1/-1;color:var(--mut);font-size:.9rem}
.svc button[aria-pressed=true] .n{color:var(--brass2)}
.t-peek{position:fixed;left:0;top:0;width:220px;aspect-ratio:3/4;pointer-events:none;z-index:40;opacity:0;transform:translate(-50%,-50%) scale(.6);transition:opacity .35s,transform .35s var(--ease);overflow:hidden;border-radius:4px}
.t-peek.on{opacity:1}
.t-peek img{width:100%;height:100%;object-fit:cover}
@media not ((hover:hover) and (pointer:fine)){.t-peek{display:none}}
/* book */
.book{padding:0 var(--pad) clamp(80px,14vh,160px)}
.book-card{--mx:50%;--my:50%;max-width:980px;margin:auto;padding:clamp(28px,5vw,64px);border:1px solid var(--rule);background:radial-gradient(400px circle at var(--mx) var(--my),rgba(179,38,30,.13),transparent 60%),var(--bg2);border-radius:4px}
.book-card h2{margin-bottom:2rem}
#bk{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
#bk label{display:grid;gap:8px;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--mut);min-width:0}
#bk input,#bk select{font:inherit;font-size:1rem;letter-spacing:0;text-transform:none;color:var(--ink);background:var(--bg);border:1px solid var(--rule);border-radius:2px;padding:14px;width:100%;min-width:0;color-scheme:light}
#bk .btn{grid-column:1/-1;justify-self:start}
.fine{grid-column:1/-1;color:var(--mut);font-size:.82rem}
/* visit */
.visit{height:220vh;position:relative}
.v-pin{position:sticky;top:0;height:100svh;overflow:hidden;display:flex;align-items:flex-end}
.v-img{position:absolute;inset:0;clip-path:circle(var(--r,12%) at 70% 50%)}
.v-img img{width:100%;height:100%;object-fit:cover;transform:scale(calc(1.3 - var(--k,0)*.25))}
.v-img::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(243,244,245,.92) 0%,rgba(243,244,245,.55) 50%,rgba(243,244,245,.1))}
.v-copy{position:relative;padding:0 var(--pad) clamp(40px,10vh,110px);max-width:640px}
#hrs{border-collapse:collapse;margin:1.6rem 0;width:100%;max-width:420px}
#hrs td{padding:7px 0;border-bottom:1px solid rgba(21,21,21,.12);font-size:.95rem}
#hrs td+td{text-align:right;color:var(--ink2)}
#hrs tr.t td{color:var(--brass2)}
.links{display:flex;flex-wrap:wrap;gap:14px 28px}
/* revs */
.revs{overflow:hidden;padding:clamp(70px,12vh,140px) 0}
.rv-t{display:flex;gap:4vw;width:max-content;padding-left:var(--pad)}
.rv-t blockquote{width:min(80vw,620px);flex:none;border-left:1px solid var(--brass);padding-left:24px}
.rv-t p{font-family:var(--disp);font-size:clamp(1.5rem,2.6vw,2.4rem);line-height:1.15}
.rv-t cite{display:block;margin-top:14px;font-style:normal;color:var(--mut);font-size:.85rem}
/* eclipse */
.eclipse{position:relative;min-height:110svh;display:grid;place-items:center;overflow:hidden;background:radial-gradient(ellipse at 50% 55%,#1d140f,var(--bg) 62%)}
.ring{position:absolute;left:50%;top:50%;width:min(50vw,560px);aspect-ratio:1;transform:translate(-50%,-50%) scale(.5);opacity:0;transition:transform 2.2s var(--ease),opacity 1.6s;pointer-events:none}
.eclipse.go .ring{transform:translate(-50%,-50%) scale(1);opacity:1}
.corona{position:absolute;inset:-14%;border-radius:50%;background:conic-gradient(from 0deg,transparent,rgba(179,38,30,.9),#f8f9f9,rgba(158,43,37,.7),transparent,rgba(230,196,138,.8),transparent);filter:blur(28px);animation:sp 16s linear infinite}
.halo{position:absolute;inset:-40%;border-radius:50%;background:radial-gradient(circle,rgba(179,38,30,.3),transparent 62%);animation:br 5s ease-in-out infinite}
.disc{position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 50% 45%,#150f0c,#070504 70%);box-shadow:0 0 0 1.5px rgba(255,236,200,.7),0 0 20px 4px rgba(255,220,160,.6)}
@keyframes sp{to{transform:rotate(1turn)}}@keyframes br{50%{transform:scale(1.08);opacity:.7}}
.e-copy{position:relative;text-align:center;padding:0 24px;display:grid;justify-items:center;gap:1.4rem}
.e-copy h2{font-size:clamp(3.4rem,10vw,9rem)}
.e-copy p{color:var(--ink2)}
.e-copy>*{opacity:0;transform:translateY(18px);filter:blur(6px);transition:all 1s var(--ease)}
.eclipse.go .e-copy>*{opacity:1;transform:none;filter:none}
.eclipse.go .e-copy>:nth-child(1){transition-delay:.7s}.eclipse.go .e-copy>:nth-child(2){transition-delay:.85s}.eclipse.go .e-copy>:nth-child(3){transition-delay:1s}
.foot{padding:40px var(--pad) 110px;color:var(--mut);font-size:.82rem;display:grid;gap:8px;border-top:1px solid var(--rule)}
.mbar{display:none}
/* responsive */
@media (max-width:860px){
 .hide-s{display:none}
 .top{top:40px}
 .h-scroll{display:none}
 .h-row .btn{display:none}
 .h-copy{padding-bottom:96px}
 .pole-sec{height:auto}
 .pole-pin{position:relative;height:auto;grid-template-columns:minmax(0,1fr);padding:70px var(--pad)}
 .pole-stage{height:62svh}
 .film-pin{height:auto;display:block;padding:80px var(--pad)}
 .film-h{margin-bottom:2rem}
 .film-track{flex-direction:column;gap:48px;padding:0}
 .fr{width:100%}
 .fr-i{aspect-ratio:4/4.4}
 .nums{grid-template-columns:repeat(2,minmax(0,1fr))}
 .nums div:nth-child(2){border-right:0}.nums div:nth-child(-n+2){border-bottom:1px solid var(--rule)}
 .t-head{grid-template-columns:minmax(0,1fr)}
 #bk{grid-template-columns:minmax(0,1fr)}
 .visit{height:180vh}
 .v-img{clip-path:circle(var(--r,14%) at 50% 30%)}
 .v-img::after{background:linear-gradient(180deg,rgba(243,244,245,.2),rgba(243,244,245,.95) 60%)}
 .ring{width:86vw}
 .mbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:55;gap:10px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:rgba(243,244,245,.9);backdrop-filter:blur(8px);border-top:1px solid var(--rule)}
 .mbar .btn{flex:1;justify-content:center}
}
@media (prefers-reduced-motion:reduce){.grain{animation:none}.h-media img{transform:none}}
/* v11 editorial overrides */
.logo{font-weight:800;font-stretch:75%;text-transform:uppercase;letter-spacing:.01em}
.btn{border-radius:0;background:var(--ink);color:var(--bg);text-transform:uppercase;letter-spacing:.08em;font-stretch:85%;font-size:.85rem}
.btn::before{background:var(--red)}
.btn.ghost{color:var(--ink)}
.demo{background:var(--ink);color:#bdb7ad}
.grain{opacity:.06;mix-blend-mode:multiply}
.cur span{border-color:var(--ink)}
.hero{color:var(--bg)}
.hero .kick,.hero .h-row p{color:#dcdfe2}
.hero em{color:#fff;}
.h-haze{background:linear-gradient(180deg,rgba(10,10,10,.45) 0%,rgba(10,10,10,0) 30%,rgba(10,10,10,.25) 55%,rgba(10,10,10,.85) 100%)}
.h-lamp{display:none}
.h-media img{filter:none}
@keyframes hz{from{transform:scale(1.35);filter:brightness(.4) blur(6px)}}
.top{color:var(--ink);mix-blend-mode:normal;background:rgba(243,244,245,.86);-webkit-backdrop-filter:blur(12px) saturate(1.2);backdrop-filter:blur(12px) saturate(1.2);border-bottom:1px solid rgba(21,21,21,.12);padding-top:10px;padding-bottom:10px}
.top .btn{background:var(--ink);color:var(--bg)}
.top.s{background:rgba(243,244,245,.94)}
nav a:not(.btn){color:inherit}
.mq{background:var(--red);color:var(--bg);border:0}
.mq-t{font-weight:800;font-stretch:68%;text-transform:uppercase}
.mq-t b{color:var(--bg)}
.pole-sec{background:var(--bg2)}
.steps li b{font-family:var(--ser);font-style:italic;font-weight:400}
.say{background:var(--navy);color:#e7eaec}
[data-wordlight]{font-family:var(--ser);font-style:italic;font-weight:300;letter-spacing:-.02em}
[data-wordlight] .w{color:rgba(243,244,245,.16)}
[data-wordlight] .w.on{color:#e7eaec}[data-wordlight] .w.hi.on{color:#597cee}
.say .cite{color:#9aa5b8}
.film{background:var(--bg)}
.fr figcaption b,.nums strong{color:var(--ink)}
.fr figcaption b{font-family:var(--ser);font-style:italic}
.nums strong{font-weight:800;font-stretch:62%}
.nums div:nth-child(1) strong{color:var(--red)}
.svc .n{font-weight:700;font-stretch:72%;text-transform:uppercase}
.svc .p{font-family:var(--ser);font-style:italic}
.svc button:hover .n,.svc button[aria-pressed=true] .n{color:var(--red)}
.book-card{background:#f5f6f7;border-radius:0}
.v-img img{filter:none}
.visit{color:var(--ink)}
#hrs tr.t td{color:var(--red)}
.rv-t p{font-family:var(--ser);font-style:italic;font-weight:300}
.rv-t blockquote{border-color:var(--ink)}
.eclipse{background:var(--ink);color:var(--bg)}
.e-copy p{color:#b7bcc3}
.eclipse .btn{background:var(--bg);color:var(--ink)}
.corona{background:conic-gradient(from 0deg,transparent,#284dc7,#e7eaec,#0f2340,transparent,#284dc7,transparent)}
.halo{background:radial-gradient(circle,rgba(179,38,30,.28),transparent 62%)}
.disc{background:radial-gradient(circle at 50% 45%,#1c1c1c,#0a0a0a 70%);box-shadow:0 0 0 1.5px rgba(243,244,245,.7),0 0 20px 4px rgba(243,244,245,.35)}
.mbar{background:rgba(243,244,245,.94)!important}
.credits{font-size:.75rem}
.credits a{display:inline-block}
.logo sup{color:var(--red);opacity:1}
.top{top:var(--dh,28px)}.top.s{top:0}
@media (max-width:760px){.demo{font-size:11px;line-height:1.35;padding:5px 10px}}
/* v11.1 pin fix: never clip pinned content; stack later sections above */
.pole-pin{height:auto;min-height:100svh;overflow:visible;padding-top:max(90px,calc(var(--dh,28px) + 70px))}
@media (max-height:860px) and (min-width:761px){.pole-txt h2{font-size:clamp(2.2rem,4.6vw,4.4rem);margin-bottom:.8rem}.steps{margin-top:1rem}.steps li{padding:9px 0}.pole-txt .lead{font-size:1rem}}
main>section,main>div{position:relative}
.pole-sec{z-index:1}.say{z-index:2}
/* v11.1 motion */
.rule-x{display:block;height:1px;background:var(--ink);opacity:.35;transform-origin:left;margin:0 var(--pad)}
.steps li{position:relative;transition:color .5s,padding-left .5s var(--ease)}
.steps li::before{content:"";position:absolute;left:0;bottom:-1px;height:1px;width:100%;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease)}
@media (hover:hover){.steps li:hover{padding-left:12px}.steps li:hover::before{transform:scaleX(1)}.svc button{transition:padding-left .5s var(--ease)}.svc button:hover{padding-left:14px}.links a{transition:letter-spacing .4s var(--ease)}.links a:hover{letter-spacing:.04em}}
.sec-curtain{position:absolute;left:0;right:0;top:0;height:14vh;pointer-events:none;background:linear-gradient(var(--bg2),transparent);z-index:0}
/* v11.1 visit fix */
.v-pin{height:auto;min-height:100svh;overflow:visible;padding-top:calc(var(--dh,28px) + 90px)}
.v-img{overflow:hidden}
.links a{display:inline-block;padding:4px 0 6px;line-height:1.4;white-space:nowrap}
/* v11.1 live reviews marquee */
.revs{position:relative}
.revs::before,.revs::after{content:"";position:absolute;left:var(--pad);right:var(--pad);height:1px;background:var(--ink);opacity:.3;transform:scaleX(var(--rl,0));transform-origin:left}
.revs::before{top:clamp(30px,5vh,60px)}.revs::after{bottom:clamp(30px,5vh,60px);transform-origin:right}
.rv-t{padding-left:0;will-change:transform}
.rv-t blockquote{position:relative;transition:opacity .4s}
.rv-t blockquote::before{content:"“";position:absolute;left:18px;top:-.55em;font:italic 300 5rem/1 var(--ser);color:var(--red);animation:qb 3.2s ease-in-out infinite}
.rv-t blockquote:nth-child(2n)::before{animation-delay:-1.6s}
@keyframes qb{50%{transform:translateY(-8px) rotate(-6deg);opacity:.55}}
.rv-t .w{display:inline-block;opacity:.12;transform:translateY(.35em);transition:opacity .6s,transform .8s var(--ease)}
.rv-t .in .w{opacity:1;transform:none}
@media (hover:hover){.revs:hover .rv-t blockquote{opacity:.45}.revs .rv-t blockquote:hover{opacity:1}}
/* v11.1 film + header */
.top{z-index:1000!important}.mbar{z-index:1000}.demo{z-index:1001}
.h-scroll{pointer-events:none}
@media (min-width:861px){.film-h{position:relative;z-index:3;background:var(--bg);padding:20px 3vw 20px 0;box-shadow:30px 0 40px -10px var(--bg)}.film-track{position:relative;z-index:1}}
.film-prog{position:absolute;left:var(--pad);right:var(--pad);bottom:clamp(24px,5vh,48px);display:flex;gap:10px;z-index:4}
.film-prog i{flex:1;height:2px;background:rgba(21,21,21,.15);position:relative;overflow:hidden}
.film-prog i::after{content:"";position:absolute;inset:0;background:var(--red);transform:scaleX(var(--p,0));transform-origin:left}
@media (max-width:860px){.film-prog{display:none}}
.film-h .ch{display:inline-block}
.fr figcaption{transform:translateY(24px);opacity:0;transition:transform 1s var(--ease) .25s,opacity 1s .25s}
.fr.in figcaption{transform:none;opacity:1}
.fr figcaption b{display:inline-block;transform:translateX(-14px);transition:transform 1s var(--ease) .35s}.fr.in figcaption b{transform:none}
/* ===== VA theme: blush, plum, lacquer rose, soft serif ===== */
html{background-image:none}
h1,h2{font-family:var(--disp);font-weight:380;font-stretch:normal;text-transform:none;letter-spacing:-.035em;line-height:.92;font-variation-settings:normal}
h1{font-size:clamp(3.8rem,10vw,10rem)!important}
em{font-family:var(--ser);font-style:italic;font-weight:300;letter-spacing:-.03em;color:var(--red);text-transform:none;font-variation-settings:normal}
.logo{font-family:var(--disp);font-weight:500;text-transform:none;letter-spacing:-.02em;font-size:1.8rem;font-style:italic}
.logo sup{font-family:var(--body);font-style:normal;color:var(--mut)!important;letter-spacing:.16em;font-size:.55rem}
.top{color:var(--ink)!important;background:rgba(238,240,241,.86)!important;border-bottom:1px solid rgba(18,33,58,.12)!important}
.btn,.top .btn{background:var(--ink)!important;color:#eef0f1!important;border-radius:999px!important;font-family:var(--body);font-weight:600;letter-spacing:.02em;text-transform:none;font-size:.92rem}
.btn::before{background:var(--red)!important;border-radius:999px}
.btn.ghost{background:transparent!important;color:var(--ink)!important;border:1px solid var(--ink)}
.demo{background:#12213a!important;color:#acb2ba!important}
.grain{opacity:.035!important}
.cur span{border-color:var(--red)!important}
.hero{color:#f8f9f9!important}.hero .kick,.hero .h-row p{color:#f3f4f5!important}.hero em{color:#c5d1f9!important}
.h-haze{background:linear-gradient(180deg,rgba(18,33,58,.4) 0%,rgba(18,33,58,0) 30%,rgba(18,33,58,.3) 55%,rgba(11,20,35,.88) 100%)!important}
.kick{font-family:var(--body);letter-spacing:.14em;text-transform:uppercase;font-size:.75rem}
.mq{background:var(--bg2)!important;color:var(--ink)!important;border-block:1px solid var(--rule)!important}.mq-t b{color:var(--red)!important}
.mq-t{font-family:var(--disp);font-style:italic;font-weight:300;text-transform:none}
.pole-sec{background:radial-gradient(ellipse 50% 60% at 28% 50%,#f6f8f8,var(--bg2) 70%)!important}
.pole-txt .eyebrow{color:var(--red);font-family:var(--body);letter-spacing:.2em}
.steps li b{font-family:var(--disp);font-style:italic;font-weight:300;color:var(--mut)}
.steps li.on b{color:var(--red)!important}
.say{background:#12213a!important;color:#eef0f1!important}
[data-wordlight]{font-family:var(--disp)!important;font-style:italic!important;font-weight:300!important;text-transform:none;letter-spacing:-.03em!important;line-height:1.05}
[data-wordlight] .w{color:rgba(238,240,241,.14)!important}[data-wordlight] .w.on{color:#eef0f1!important}[data-wordlight] .w.hi.on{color:#829df2!important}
.say .cite{color:#8b939f!important}
.film{background:var(--bg)!important}
.film-prog i{background:rgba(18,33,58,.12)!important}
.fr-i{border-radius:220px 220px 18px 18px;outline:none}
.fr figcaption{color:var(--ink2)}.fr figcaption b{color:var(--red)!important;font-family:var(--disp);font-style:italic!important;font-weight:300}
.nums strong{font-family:var(--disp);font-weight:300;font-style:italic;color:var(--ink)!important}
.nums div:nth-child(1) strong{color:var(--red)!important}
.svc .n{font-family:var(--disp);font-weight:400;text-transform:none;letter-spacing:-.02em}
.svc .p{font-family:var(--disp);font-style:italic;font-weight:300}
.ej{background:var(--red);color:#fff;border-radius:999px}
.book-card{background:#f8f9f9!important;border-radius:28px!important;border:1px solid var(--rule)}
.book-card input,.book-card select{border-radius:12px}
.visit{color:#f8f9f9!important}
.v-copy{background:linear-gradient(90deg,rgba(13,23,41,.86),rgba(13,23,41,.6) 70%,transparent);padding-top:40px;max-width:720px}
.v-copy .lead,#hrs td+td{color:#e1e4e6!important}
#hrs td{border-bottom-color:rgba(251,245,242,.18)!important}#hrs tr.t td{color:#97adf4!important}
.visit .link{color:#f8f9f9}
.rv-t p{font-family:var(--disp)!important;font-style:italic!important;font-weight:300!important}
.rv-t blockquote{border-color:var(--red)!important}
.rv-t blockquote::before{font-family:var(--disp)!important;color:var(--red)!important}
.eclipse{background:#0d1729!important;color:#f8f9f9!important}
.eclipse .btn{background:#eef0f1!important;color:#12213a!important}
.corona{background:conic-gradient(from 0deg,transparent,#2f5bea,#eef0f1,transparent,#829df2,transparent)!important}
.halo{background:radial-gradient(circle,rgba(200,72,95,.25),transparent 62%)!important}
.mbar{background:rgba(238,240,241,.95)!important;border-top:1px solid var(--rule)!important}
.foot{background:#0d1729;color:#8b939f}
.rule-x{background:var(--red)!important;opacity:.45!important}
.pole-fallback{background:linear-gradient(#7b97ed,#264ab5)!important;border-radius:24px 24px 30px 30px!important;width:90px!important;height:40%!important;top:35%!important;margin-left:-45px!important}
.sw{display:flex;gap:12px;justify-content:center;margin-top:-6px}
.sw button{all:unset;box-sizing:border-box;width:30px;height:30px;border-radius:50%;border:2px solid #f8f9f9;box-shadow:0 0 0 1px var(--rule);cursor:pointer;transition:transform .4s var(--ease),box-shadow .4s}
.sw button:hover{transform:scale(1.15)}.sw button.on{box-shadow:0 0 0 2px var(--ink);transform:scale(1.12)}
@media (min-width:861px){
 .film-h{background:none!important;box-shadow:none!important;padding:0!important}
 .film-pin{position:relative}
 .film-pin::before{content:"";position:absolute;left:0;top:0;bottom:0;width:calc(var(--pad) + 30vw);background:linear-gradient(90deg,var(--bg) 0,var(--bg) 62%,rgba(238,240,241,0));z-index:2;pointer-events:none}
}
.pole-stage{height:min(84svh,800px)}
@media (min-width:861px){.film-pin::before{width:calc(var(--pad) + 40vw);background:linear-gradient(90deg,var(--bg) 0,var(--bg) 78%,rgba(238,240,241,0))}}
.v-img img{filter:brightness(.78) contrast(1.08)!important}
@media (min-width:861px){.film-pin::before{width:calc(var(--hw,40vw) + 90px)!important;background:linear-gradient(90deg,var(--bg) 0,var(--bg) calc(100% - 90px),rgba(238,240,241,0))!important}}

#pole{height:calc(100% - 92px)!important}
.sw button[data-c="#7b97ed"]{background:#7b97ed}.sw button[data-c="#2649bb"]{background:#2649bb}.sw button[data-c="#1b326f"]{background:#1b326f}.sw button[data-c="#e9d7cc"]{background:#e9d7cc}.sw button[data-c="#c76b4f"]{background:#c76b4f}.sw{margin-top:12px!important}#pole{height:calc(100% - 110px)!important}
.pole-stage{display:flex;flex-direction:column}#pole{flex:1 1 auto;min-height:0;height:auto!important}.sw,.pole-stage .hint{flex:none}
.pole-stage .hint{position:static;transform:none;text-align:center;margin-top:10px;white-space:nowrap}
@media (max-width:600px){.logo sup{display:none}.top nav{flex:none}}
.pole-fallback{background:linear-gradient(#2f5bea,#264ab5)!important}
.sw button[data-c="#12213a"]{background:#12213a}.sw button[data-c="#7a4b2a"]{background:#7a4b2a}.sw button[data-c="#c9b48a"]{background:#c9b48a}.sw button[data-c="#1a1a1a"]{background:#1a1a1a}.sw button[data-c="#b8c6d6"]{background:#b8c6d6}
h1,h2{font-weight:600!important;letter-spacing:-.045em!important;line-height:.95!important;font-variation-settings:normal!important}h1{font-size:clamp(3.2rem,9vw,9rem)!important}em{font-size:1.1em;font-weight:400!important}.fr-i{border-radius:22px!important}.btn,.top .btn,.btn::before{border-radius:999px!important}.logo{font-style:normal!important;font-weight:700!important;letter-spacing:-.04em!important;font-size:1.5rem!important}.mq-t{font-style:normal!important;font-weight:600!important}.svc .n{font-weight:600!important}.nums strong{font-style:normal!important;font-weight:600!important}[data-wordlight]{font-family:var(--ser)!important}
