/* xtao.co — the reference stylesheet (unchanged), then production additions and the phone/tablet layer */
:root{--jc57e22d4:url("/img/motifs/v2-xtao-d_funnel.webp");--j11176f8f:url("/img/motifs/v2-xtao-l_funnel_wide.webp");--j15b84d3b:url("/img/motifs/v2-xtao-d_funnel_portrait.webp");--jbbc65dd6:url("/img/motifs/v2-xtao-l_funnel.webp");--j21071c4e:url("/img/motifs/v2-xtao-d_field.webp");--j10ba1ab8:url("/img/motifs/v2-xtao-l_field.webp");--j85ac9666:url("/img/motifs/v2-xtao-d_braid.webp");--j6f689e15:url("/img/motifs/v2-xtao-l_braid.webp");--jconfd:url("/img/motifs/v2-xtao-d_confluence.webp");--jconfl:url("/img/motifs/v2-xtao-l_confluence.webp");--j17c49e4e:url("/img/motifs/v2-xtao-l_strands.webp");--jstrD:url("/img/motifs/v2-xtao-d_strands.webp");--riseD:url("/img/footer/xtao-d_rise.webp");--riseL:url("/img/footer/xtao-l_rise.webp");--tD-constellation:url("/img/treatments/tr_D_constellation.webp");--tL-constellation:url("/img/treatments/tr_L_constellation.webp");--tD-contour:url("/img/treatments/tr_D_contour.webp");--tL-contour:url("/img/treatments/tr_L_contour.webp");--pD-karia:url("/img/portraits/karia_quiet_d.webp");--pL-karia:url("/img/portraits/karia_quiet_l.webp");--pD-victor:url("/img/portraits/victor_quiet_d.webp");--pL-victor:url("/img/portraits/victor_quiet_l.webp");--pD-ken:url("/img/portraits/ken_quiet_d.webp");--pL-ken:url("/img/portraits/ken_quiet_l.webp");--pD-ala:url("/img/portraits/ala_quiet_d.webp");--pL-ala:url("/img/portraits/ala_quiet_l.webp");--pD-joseph:url("/img/portraits/joseph_quiet_d.webp");--pL-joseph:url("/img/portraits/joseph_quiet_l.webp");--pD-david:url("/img/portraits/david_quiet_d.webp");--pL-david:url("/img/portraits/david_quiet_l.webp");--pD-william:url("/img/portraits/william_quiet_d.webp");--pL-william:url("/img/portraits/william_quiet_l.webp");--pD-bill:url("/img/portraits/bill_quiet_d.webp");--pL-bill:url("/img/portraits/bill_quiet_l.webp");--pD-mike:url("/img/portraits/mike_quiet_d.webp");--pL-mike:url("/img/portraits/mike_quiet_l.webp");}

html,body{margin:0;padding:0}
body{background:#04050E;overflow-x:hidden;-webkit-font-smoothing:antialiased;font-family:'Geist','Helvetica Neue',Helvetica,sans-serif}
html[data-theme="light"] body{background:#F3F0EA}
[hidden]{display:none !important}
#stage{width:1440px;margin:0 auto}
.page{overflow-x:visible !important;overflow-y:clip !important}
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid #6E8BFF;outline-offset:3px}
:root{--paper:#F3F0EA;--ink:#15141C;--night:#04050E;--star:#F4F3FF}
html[data-theme="dark"]{--bg:#04050E;--fg:#F4F3FF;--mut:rgba(244,243,255,.68);--line:rgba(244,243,255,.14);--surf:#0A0C1C;--btn-bg:#F4F3FF;--btn-fg:#04050E}
html[data-theme="light"]{--bg:#F3F0EA;--fg:#15141C;--mut:#4A4855;--line:rgba(21,20,28,.14);--surf:#EAE6DE;--btn-bg:#15141C;--btn-fg:#F3F0EA}

/* ---------- global header ---------- */
.gh{position:fixed;z-index:60;left:0;right:0;top:0;height:calc(84px * var(--z,1));transition:background .35s ease,border-color .35s ease,backdrop-filter .35s ease;border-bottom:1px solid transparent}
.gh-in{width:1440px;height:84px;box-sizing:border-box;padding:0 56px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;transform:scale(var(--z,1));transform-origin:top center;color:var(--fg);font-size:14px}
.gh.scrolled{border-bottom-color:var(--line);-webkit-backdrop-filter:blur(16px) saturate(1.2);backdrop-filter:blur(16px) saturate(1.2)}
html[data-theme="dark"] .gh.scrolled{background:rgba(4,5,14,.78)}
html[data-theme="light"] .gh.scrolled{background:rgba(243,240,234,.84)}
.gh a{color:inherit;text-decoration:none}
.gh-logo img{height:22px;width:auto;display:block}
html[data-theme="light"] .logo-img, html[data-theme="light"] .gh-logo img{filter:invert(1)}
.gh-nav{display:flex;gap:30px;margin-left:72px;margin-right:auto}
.gh-nav a{opacity:.72;transition:opacity .2s ease;padding:6px 0;border-bottom:1px solid transparent}
.gh-nav a.on{opacity:1}@media (hover: hover){.gh-nav a:hover{opacity:1}}
.gh-nav a.on{border-bottom-color:currentColor}
.gh-right{display:flex;align-items:center;gap:24px}
.gh-tick{font-family:'Geist Mono',ui-monospace,monospace;font-size:12px;letter-spacing:.04em;opacity:.7}
.gh-deck{height:44px;padding:0 18px;display:flex;align-items:center;border-radius:999px;background:var(--btn-bg);color:var(--btn-fg) !important;font-weight:500}
.tt{position:relative;width:88px;height:44px;padding:0;border-radius:999px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;box-sizing:border-box;
  background:#04050E;border:1px solid rgba(244,243,255,0.24);transition:background .35s ease,border-color .35s ease}
.tt svg{position:relative;z-index:1;width:18px;height:18px;margin:0 12px;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transition:stroke .35s ease}
.tt .knob{position:absolute;top:4px;left:4px;width:34px;height:34px;border-radius:999px;background:#F4F3FF;transition:transform .45s cubic-bezier(.2,.7,.1,1),background .35s ease}
html[data-theme="dark"] .tt .knob{transform:translateX(44px)}
html[data-theme="dark"] .tt .sun{stroke:rgba(244,243,255,0.6)}
html[data-theme="dark"] .tt .moon{stroke:#04050E}
html[data-theme="light"] .tt{background:#F3F0EA;border-color:rgba(21,20,28,0.2)}
html[data-theme="light"] .tt .knob{background:#15141C}
html[data-theme="light"] .tt .sun{stroke:#F3F0EA}
html[data-theme="light"] .tt .moon{stroke:rgba(21,20,28,0.55)}

/* ---------- live ribbon ---------- */
.why-canvas{position:absolute;left:0;top:0;width:100%;height:100%;display:block}

/* ---------- inner pages ---------- */
.pg{width:1440px;color:var(--fg);overflow-x:visible;overflow-y:clip}
.pnl{position:relative;background:var(--bg);color:var(--fg);box-shadow:0 0 0 100vmax var(--bg);clip-path:inset(0 -100vmax);padding:128px 56px;box-sizing:border-box;
  --c-mut:var(--mut);--c-line:var(--line);--c-surf:var(--surf);--c-btn-bg:var(--btn-bg);--c-btn-fg:var(--btn-fg);--c-fg:var(--fg)}
.pnl.paper{background:#F3F0EA;color:#15141C;box-shadow:0 0 0 100vmax #F3F0EA;--c-mut:#4A4855;--c-line:rgba(21,20,28,.14);--c-surf:#EAE6DE;--c-btn-bg:#15141C;--c-btn-fg:#F3F0EA;--c-fg:#15141C}
.pnl a{color:inherit;text-decoration:none}
.eyebrow{font-family:'Geist Mono',ui-monospace,monospace;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--c-mut)}
.h1{font-weight:250;font-size:92px;line-height:.96;letter-spacing:-.055em;margin:0;text-wrap:balance}
.h2{font-weight:250;font-size:56px;line-height:1.04;letter-spacing:-.045em;margin:0;text-wrap:balance}
.h3{font-weight:400;font-size:23px;line-height:1.25;letter-spacing:-.02em;margin:0}
.lede{font-size:20px;line-height:1.6;color:var(--c-mut);max-width:640px;margin:0;text-wrap:pretty}
.body{font-size:17px;line-height:1.65;color:var(--c-mut);margin:0;text-wrap:pretty}
.note{font-family:'Geist Mono',ui-monospace,monospace;font-size:12px;color:var(--c-mut);margin:0}
.fine{font-size:13px;line-height:1.55;color:var(--c-mut);margin:0;max-width:520px}
.inline{border-bottom:1px solid currentColor}
.actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.btn{height:52px;padding:0 24px;display:inline-flex;align-items:center;gap:10px;border-radius:999px;background:var(--c-btn-bg);color:var(--c-btn-fg) !important;font-size:15px;font-weight:500;border:0;cursor:pointer;font-family:inherit;white-space:nowrap}
.btn.ghost{background:transparent;color:var(--c-fg) !important;border:1px solid var(--c-line)}
@media (hover: hover){.btn:hover{filter:brightness(1.06)}}
.link{display:inline-flex;align-items:center;gap:10px;font-size:15px}
.link:before{content:'';width:36px;height:1px;background:currentColor;display:block}
.arw{transition:transform .25s ease;display:inline-block}
@media (hover: hover){a:hover .arw{transform:translateX(4px)}}
.sec-head{display:flex;flex-direction:column;gap:18px;margin-bottom:56px;max-width:900px}
body.l-iris .sec-head{align-items:center;text-align:center;margin-left:auto;margin-right:auto}
.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.grid4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.card{padding:30px;border-radius:14px;background:var(--c-surf);border:1px solid var(--c-line);display:flex;flex-direction:column;gap:14px;box-sizing:border-box}
.card.tall{min-height:260px;justify-content:flex-end}
.card-link{transition:border-color .25s ease,transform .35s cubic-bezier(.2,.7,.1,1)}
@media (hover: hover){.card-link:hover{border-color:var(--c-fg);transform:translateY(-3px)}}
.card-foot{margin-top:auto;padding-top:18px;font-size:14px;display:flex;gap:8px}
.step{display:flex;flex-direction:column;gap:14px;padding-top:24px;border-top:1px solid var(--c-fg)}
.step-n,.tl-date,.row-date,.cv-when{font-family:'Geist Mono',ui-monospace,monospace;font-size:13px;color:var(--c-mut)}
.def{display:flex;flex-direction:column;gap:12px;padding-top:22px;border-top:1px solid var(--c-line)}
.split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:96px;align-items:start}
.split > div{display:flex;flex-direction:column;gap:18px}
.stack{display:flex;flex-direction:column;gap:18px}
.quote{margin:0;display:flex;flex-direction:column;justify-content:space-between;gap:28px;padding:34px;border-radius:14px;background:var(--c-surf);border:1px solid var(--c-line)}
.quote blockquote{margin:0;font-size:24px;line-height:1.35;letter-spacing:-.02em;font-weight:300}
.quote figcaption{display:flex;flex-direction:column;gap:4px;font-size:14px;color:var(--c-mut)}
.quote figcaption strong{color:var(--c-fg);font-weight:500}
.tl{border-top:1px solid var(--c-fg)}
.tl-row{display:grid;grid-template-columns:160px minmax(0,1fr) 24px;gap:24px;align-items:center;min-height:84px;border-bottom:1px solid var(--c-line);font-size:19px;transition:padding .3s ease}
@media (hover: hover){.tl-row:hover{padding-left:10px}}
.rows{border-top:1px solid var(--c-fg);margin-bottom:36px}
.row{display:grid;grid-template-columns:190px minmax(0,1fr) 170px 24px;gap:24px;align-items:center;min-height:80px;border-bottom:1px solid var(--c-line);transition:padding .3s ease}
@media (hover: hover){.row:hover{padding-left:10px}}
.row-title{font-size:20px;letter-spacing:-.015em}
.row-kind{font-size:13px;color:var(--c-mut)}
.kvs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--c-fg)}
.kv{display:flex;flex-direction:column;gap:8px;padding:26px 24px 26px 0;border-bottom:1px solid var(--c-line)}
.kv span{font-size:13px;color:var(--c-mut)}
.kv strong{font-weight:400;font-size:21px;letter-spacing:-.015em}
.fin{border-top:1px solid var(--c-fg)}
.fin-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;min-height:80px;border-bottom:1px solid var(--c-line)}
.fin-period{font-size:20px;letter-spacing:-.015em}
.chip{height:40px;padding:0 16px;display:inline-flex;align-items:center;gap:8px;border-radius:999px;border:1px solid var(--c-line);font-size:14px;transition:border-color .2s ease}
@media (hover: hover){.chip:hover{border-color:var(--c-fg)}}
.faqs{border-top:1px solid var(--c-fg);max-width:960px}
body.l-iris .faqs{margin:0 auto}
.faq{border-bottom:1px solid var(--c-line)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:78px;font-size:20px;letter-spacing:-.015em}
.faq summary::-webkit-details-marker{display:none}
.faq-i{font-size:24px;font-weight:300;transition:transform .3s ease}
.faq[open] .faq-i{transform:rotate(45deg)}
.faq .body{padding:0 0 28px;max-width:760px}
.sub{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:96px;align-items:start}
.sub > div{display:flex;flex-direction:column;gap:18px}
.sub-form{display:flex;flex-direction:column;gap:12px}
.sub-form label{font-size:14px;color:var(--c-mut)}
.sub-row{display:flex;gap:10px}
.sub-row input{flex:1;height:52px;box-sizing:border-box;padding:0 20px;background:transparent;border:1px solid var(--c-line);border-radius:999px;color:var(--c-fg);font-family:inherit;font-size:15px}
.sub-ok{font-size:15px;margin:0}
.deck-feature{display:grid;grid-template-columns:776px minmax(0,1fr);gap:72px;align-items:center}
.deck-cover{position:relative;display:block;width:776px;height:464px;transition:transform .45s cubic-bezier(.2,.7,.1,1)}
@media (hover: hover){.deck-cover:hover{transform:translateY(-6px)}}
.deck-sheet{position:absolute;width:736px;height:414px;border-radius:8px;display:block}
.deck-sheet.s1{left:40px;top:0;background:var(--c-surf);opacity:.7}
.deck-sheet.s2{left:20px;top:25px;background:var(--c-surf)}
.deck-front{position:absolute;left:0;top:50px;width:736px;height:414px;border-radius:8px;box-sizing:border-box;padding:32px 36px;display:flex;flex-direction:column;justify-content:space-between;background-color:var(--bg);background-size:cover;background-position:center;box-shadow:0 36px 80px -24px rgba(4,5,14,.5),0 0 0 1px var(--c-line);color:var(--fg)}
.deck-front img{height:20px;width:auto;align-self:flex-start}
.deck-t{display:flex;flex-direction:column;gap:10px;font-weight:250;font-size:48px;line-height:1;letter-spacing:-.05em}
.deck-t small{font-family:'Geist Mono',ui-monospace,monospace;font-size:12px;letter-spacing:.06em;opacity:.75}
.deck-text{display:flex;flex-direction:column;gap:22px}
.ep{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:64px;align-items:center}
.ep-frame{position:relative;height:440px;border-radius:14px;background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center}
.ep-play{width:88px;height:88px;border-radius:999px;border:1px solid rgba(244,243,255,.5);background:rgba(4,5,14,.35);color:#F4F3FF;display:flex;align-items:center;justify-content:center;cursor:pointer}
.ep-text{display:flex;flex-direction:column;gap:18px}
.person{display:flex;flex-direction:column;gap:10px}
.portrait{height:360px;border-radius:14px;background:var(--c-surf);border:1px solid var(--c-line);display:flex;align-items:center;justify-content:center;font-family:'Geist Mono',ui-monospace,monospace;font-size:12px;color:var(--c-mut);margin-bottom:12px}
.role{font-size:15px;color:var(--c-mut)}
.person-links{display:flex;gap:20px;font-size:14px;margin-top:6px}
.advs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--c-fg)}
.adv{display:flex;justify-content:space-between;align-items:center;min-height:84px;padding-right:32px;border-bottom:1px solid var(--c-line);font-size:21px;letter-spacing:-.015em}
.cv{border-top:1px solid var(--c-fg)}
.cv-row{display:grid;grid-template-columns:200px minmax(0,1fr);gap:24px;padding:30px 0;border-bottom:1px solid var(--c-line)}
.cv-row > div{display:flex;flex-direction:column;gap:8px}
.pill{height:32px;padding:0 14px;display:inline-flex;align-items:center;border-radius:999px;border:1px solid var(--c-line);font-family:'Geist Mono',ui-monospace,monospace;font-size:12px;color:var(--c-mut)}

/* page heads */
.phead{min-height:680px;padding-top:200px;padding-bottom:104px;display:flex;flex-direction:column;justify-content:flex-end;overflow:visible}
.phead-text{position:relative;display:flex;flex-direction:column;gap:26px;max-width:760px}
.phead-art{position:absolute;pointer-events:none;background-size:cover;background-position:center}
body.l-daylight .phead-art{right:calc(-1 * var(--g,0px));top:0;width:calc(860px + var(--g,0px));height:100%;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 34%);mask-image:linear-gradient(90deg,transparent 0,#000 34%)}
body.l-iris .phead{align-items:center;text-align:center;justify-content:flex-start;padding-top:150px}
body.l-iris .phead-art{position:relative;width:400px;height:400px;flex-shrink:0;margin-bottom:12px;border-radius:50%;-webkit-mask-image:radial-gradient(closest-side,#000 64%,transparent 100%);mask-image:radial-gradient(closest-side,#000 64%,transparent 100%);animation:turn 240s linear infinite}
body.l-iris .phead-text{align-items:center}
body.l-iris .lede{margin:0 auto}
.phead-person .phead-art.sig-emblem{background-size:50% 50%}
body.l-daylight .phead-person .phead-art{width:900px;height:900px;top:50%;margin-top:-450px;right:-170px;-webkit-mask-image:radial-gradient(closest-side,#000 68%,transparent 100%);mask-image:radial-gradient(closest-side,#000 68%,transparent 100%)}
.cta{text-align:left}
body.l-iris .cta{display:flex;flex-direction:column;align-items:center}
body.l-iris .cta .actions{justify-content:center}
html[data-theme="dark"]{--a-funnel:var(--ic57e22d4);--a-field:var(--i21071c4e);--a-braid:var(--i85ac9666);--a-bloom:var(--i685f3575);--a-rise:var(--ib840af72)}
html[data-theme="light"]{--a-funnel:var(--i11176f8f);--a-field:var(--i10ba1ab8);--a-braid:var(--i6f689e15);--a-bloom:var(--i7c4e28f2);--a-rise:var(--ibe3bcf73)}
.art-funnel{background-image:var(--a-funnel)}
.art-field{background-image:var(--a-field)}
.art-braid{background-image:var(--a-braid)}
.art-bloom{background-image:var(--a-bloom)}
.art-rise{background-image:var(--a-rise)}
body.l-daylight .phead-art.art-bloom{background-size:contain;background-repeat:no-repeat;background-position:right center}

/* global footer on inner pages */
.gfoot{min-height:540px;padding:96px 56px 40px;display:flex;flex-direction:column;justify-content:space-between;overflow:visible}
.gf-top{position:relative;display:flex;justify-content:space-between;align-items:flex-start;gap:48px}
.gf-logo img{height:44px;width:auto;display:block}
.gf-nav{display:grid;grid-template-columns:repeat(2,auto);column-gap:64px;row-gap:14px;font-size:15px}
.gf-legal{position:relative;display:flex;justify-content:space-between;align-items:center;gap:24px;font-size:13px;color:var(--c-mut);padding:14px 20px;border-radius:999px}
html[data-theme="dark"] .gf-legal{background:rgba(4,5,14,.6)}
html[data-theme="light"] .gf-legal{background:rgba(243,240,234,.8)}
.gf-legal-links{display:flex;gap:24px}
body.l-iris .gf-top{flex-direction:column;align-items:center}
body.l-iris .gf-nav{display:flex;gap:32px}
.gfoot .foot-wrap{left:-180px;top:-110px}

/* ---------- document viewer ---------- */
.vhead{padding-top:150px;padding-bottom:120px;min-height:100vh}
.vhead-row{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:36px}
.vhead-row > div{display:flex;flex-direction:column;gap:14px}
.vhead-meta{flex-direction:row !important;align-items:center;gap:20px !important}
.doc-title{font-size:44px;max-width:1000px}
.doc-date{font-size:14px;color:var(--c-mut)}
.viewer{position:relative;color:var(--c-fg)}
.v-stage{position:relative;width:1328px;aspect-ratio:16/9;background:var(--c-surf);border-radius:12px;overflow:hidden;box-shadow:0 0 0 1px var(--c-line)}
.v-stage canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.v-hit{position:absolute;top:0;bottom:0;width:22%;border:0;background:transparent;cursor:pointer;z-index:2}
.v-hit.prev{left:0}.v-hit.next{right:0}
@media (hover: hover){.v-hit:hover{background:linear-gradient(90deg,rgba(0,0,0,.06),transparent)}}
@media (hover: hover){.v-hit.next:hover{background:linear-gradient(270deg,rgba(0,0,0,.06),transparent)}}
.v-state{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;text-align:center;padding:40px;z-index:3;font-size:17px;color:var(--c-mut)}
.v-state h3{color:var(--c-fg)}
.v-bar{display:flex;align-items:center;gap:14px;margin-top:18px}
.v-btn{height:44px;min-width:44px;padding:0 14px;border-radius:999px;border:1px solid var(--c-line);background:transparent;color:var(--c-fg);font-family:inherit;font-size:14px;cursor:pointer;display:inline-flex;align-items:center;gap:8px;justify-content:center}
@media (hover: hover){.v-btn:hover{border-color:var(--c-fg)}}
.v-btn:disabled{opacity:.35;cursor:default}
.v-count{font-family:'Geist Mono',ui-monospace,monospace;font-size:13px;min-width:70px;text-align:center}
.v-prog{flex:1;height:2px;background:var(--c-line);position:relative;border-radius:2px;overflow:hidden}
.v-prog i{position:absolute;left:0;top:0;bottom:0;background:var(--c-fg);transition:width .35s ease}
.v-thumbs{display:flex;gap:12px;overflow-x:auto;padding:18px 2px 6px}
.v-thumb{flex:0 0 auto;width:176px;aspect-ratio:16/9;border-radius:6px;border:1px solid var(--c-line);background:var(--c-surf);cursor:pointer;padding:0;position:relative;overflow:hidden}
.v-thumb canvas{width:100%;height:100%;display:block}
.v-thumb span{position:absolute;left:6px;bottom:4px;font-family:'Geist Mono',ui-monospace,monospace;font-size:11px;color:#fff;text-shadow:0 0 6px rgba(0,0,0,.8)}
.v-thumb.on{border-color:var(--c-fg);box-shadow:0 0 0 1px var(--c-fg)}
.viewer:fullscreen{background:#04050E;display:flex;flex-direction:column;justify-content:center;padding:24px;box-sizing:border-box;--c-fg:#F4F3FF;--c-line:rgba(244,243,255,.2);--c-surf:#0A0C1C}
.viewer:fullscreen .v-stage{width:auto;height:calc(100vh - 120px);margin:0 auto}
.viewer:fullscreen .v-thumbs{display:none}
.v-pages{display:flex;flex-direction:column;align-items:center;gap:22px}
.v-page{position:relative;width:1000px;background:#fff;box-shadow:0 0 0 1px var(--c-line),0 20px 50px -30px rgba(4,5,14,.45);border-radius:4px;overflow:hidden}
.v-page canvas{width:100%;height:100%;display:block}
.v-pageno{position:sticky;top:110px;align-self:flex-end;z-index:4;font-family:'Geist Mono',ui-monospace,monospace;font-size:12px;padding:8px 12px;border-radius:999px;background:var(--c-surf);border:1px solid var(--c-line)}
.v-local{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--c-mut);cursor:pointer;margin-top:16px}
.v-local input{display:none}
.v-local span{border-bottom:1px dashed currentColor}

/* ---------- tracking preview (dev) ---------- */
.devp{position:fixed;left:16px;bottom:16px;z-index:70;font-family:'Geist Mono',ui-monospace,monospace;font-size:12px}
.devp-btn{height:36px;padding:0 14px;border-radius:999px;border:1px solid rgba(110,139,255,.6);background:#0A0C1C;color:#C9D2FF;cursor:pointer;font-family:inherit;font-size:12px}
.devp-list{position:absolute;left:0;bottom:46px;width:420px;max-height:360px;overflow:auto;background:#0A0C1C;color:#DDE2FF;border:1px solid rgba(110,139,255,.4);border-radius:12px;padding:10px;box-sizing:border-box}
.devp-list p{margin:0 0 8px;color:#8E97C7;font-size:11px;line-height:1.5}
.devp-ev{padding:6px 8px;border-radius:6px;border-bottom:1px solid rgba(255,255,255,.06);white-space:pre-wrap;word-break:break-word}
.devp-ev b{color:#FFFFFF;font-weight:500}

/* ---------- integrated imagery in panels ---------- */
.pnl > :not(.pnl-band):not(.pnl-rise):not(.phead-art):not(.foot-wrap){position:relative;z-index:1}
.has-band{padding-bottom:440px !important}
.pnl-band{position:absolute;z-index:0;bottom:0;left:calc(-1 * var(--g,0px));width:calc(1440px + 2 * var(--g,0px));height:360px;background-size:cover;background-position:center;pointer-events:none;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 34%);mask-image:linear-gradient(180deg,transparent 0,#000 34%)}
.pnl-band.live{height:400px;-webkit-mask-image:none;mask-image:none}
.has-rise{padding-bottom:380px !important}
.pnl-rise{position:absolute;z-index:0;left:50%;bottom:-760px;width:1100px;height:1100px;margin-left:-550px;pointer-events:none;transition:transform 2.4s cubic-bezier(.16,.8,.2,1),opacity 1.6s ease}
body.l-daylight .pnl-rise{left:auto;right:calc(-240px - var(--g,0px));margin-left:0}
.pnl-rise-img{width:100%;height:100%;background-size:100% 100%;animation:turn 300s linear infinite;-webkit-mask-image:radial-gradient(closest-side,#000 80%,transparent 100%);mask-image:radial-gradient(closest-side,#000 80%,transparent 100%)}
.armed .rv-rise .pnl-rise{transform:translateY(240px);opacity:0}
.armed .rv-rise.in .pnl-rise{transform:none;opacity:1}
.card-art{width:100%;aspect-ratio:16/9;border-radius:10px;background-size:cover;background-position:center;flex-shrink:0;margin-bottom:6px}
.card-art.tall{aspect-ratio:16/10;margin-bottom:10px}
.def .card-art{margin-bottom:8px}
.glance{display:grid;grid-template-columns:minmax(0,1fr) 440px;gap:72px;align-items:center}
.glance .kvs{grid-template-columns:repeat(2,minmax(0,1fr))}
.orb{width:440px;height:440px;border-radius:50%;background-size:cover;background-position:center;-webkit-mask-image:radial-gradient(closest-side,#000 62%,transparent 100%);mask-image:radial-gradient(closest-side,#000 62%,transparent 100%);animation:turn 240s linear infinite}
.portrait{position:relative;overflow:hidden;background-size:cover;background-position:center}
.portrait span{padding:6px 12px;border-radius:999px;background:rgba(243,240,234,.86);color:#4A4855}
.split .portrait{height:380px;margin-top:18px}
.ink-funnel{background-image:var(--i11176f8f)}
.ink-field{background-image:var(--i10ba1ab8)}
.ink-braid{background-image:var(--i6f689e15)}
.ink-bloom{background-image:var(--i7c4e28f2)}
.ink-rise{background-image:var(--ibe3bcf73)}
.ink-strands{background-image:var(--i17c49e4e)}
.ink-horizon{background-image:var(--i5f3570af)}
.ink-conf{background-image:var(--iconfl)}
html[data-theme="dark"]{--a-horizon:var(--id1ebcc1b);--a-conf:var(--iconfd)}
html[data-theme="light"]{--a-horizon:var(--i5f3570af);--a-conf:var(--iconfl)}
.art-horizon{background-image:var(--a-horizon)}
.art-conf{background-image:var(--a-conf)}

/* ---------- deck cover art switch (review tool) ---------- */
.cover-toggle{display:inline-flex;align-items:center;gap:4px;padding:4px 4px 4px 14px;border-radius:999px;border:1px solid rgba(21,20,28,.2);font-family:'Geist Mono',ui-monospace,monospace;font-size:12px;color:#4A4855;margin-top:6px;width:max-content}
.cover-toggle span{margin-right:6px}
.cover-toggle button{height:30px;padding:0 12px;border-radius:999px;border:0;background:transparent;color:#15141C;font-family:inherit;font-size:12px;cursor:pointer}
.cover-toggle button[aria-pressed="true"]{background:#15141C;color:#F3F0EA}
.pnl .cover-toggle{border-color:var(--c-line);color:var(--c-mut)}
.pnl .cover-toggle button{color:var(--c-fg)}
.pnl .cover-toggle button[aria-pressed="true"]{background:var(--c-btn-bg);color:var(--c-btn-fg)}
html[data-cover="confluence"] #t-dark .cover{background-image:var(--iconfd) !important;background-size:cover !important;background-position:center !important}
html[data-cover="confluence"] #t-light .cover{background-image:var(--iconfl) !important;background-size:cover !important;background-position:center !important}
html[data-cover="confluence"] .deck-front{background-image:var(--a-conf) !important}
.no-review .cover-toggle{display:none !important}

/* ================= merged site ================= */
html[data-theme="dark"]{--a-funnel:var(--ic57e22d4);--a-funnelp:var(--i15b84d3b);--a-field:var(--i21071c4e);--a-braid:var(--i85ac9666);--a-conf:var(--iconfd)}
html[data-theme="light"]{--a-funnel:var(--i11176f8f);--a-funnelp:var(--ibbc65dd6);--a-field:var(--i10ba1ab8);--a-braid:var(--i6f689e15);--a-conf:var(--iconfl)}
.art-funnelp{background-image:var(--a-funnelp)}
.no-review .pending{display:none !important}
.sig,.sig-daylight,.sig-spiral{background-size:50% 50% !important;background-position:0 0,100% 0,0 100%,100% 100% !important;background-repeat:no-repeat !important}
@keyframes turn{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@keyframes heroRise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes ping{0%{transform:scale(.35);opacity:.95}70%{opacity:0}100%{transform:scale(5);opacity:0}}
@keyframes flare-dk{0%{filter:none;transform:scale(.97)}22%{filter:brightness(2.1) saturate(1.6);transform:scale(1.03)}100%{filter:none;transform:scale(1)}}
@keyframes flare-lt{0%{filter:none;transform:scale(.97)}22%{filter:saturate(2) contrast(1.2) brightness(.96);transform:scale(1.03)}100%{filter:none;transform:scale(1)}}

/* hero */
.hero{height:900px;padding:0 56px;overflow:visible}
.hero-sig{position:absolute;z-index:0;animation:turn 240s linear infinite;-webkit-mask-image:radial-gradient(closest-side,#000 78%,transparent 100%);mask-image:radial-gradient(closest-side,#000 78%,transparent 100%)}
.sig-daylight{left:-235px;top:-777px;width:2400px;height:2400px}
.sig-spiral{left:330px;top:-250px;width:1340px;height:1340px}
html:not([data-hero="spiral"]) .sig-spiral{display:none}
html[data-hero="spiral"] .sig-daylight{display:none}
.hero-inner{position:absolute !important;z-index:2 !important;left:56px;right:56px;bottom:64px;display:flex;justify-content:space-between;align-items:flex-end;gap:64px}
.hero-h{margin:0;font-weight:200;font-size:148px;line-height:.9;letter-spacing:-.06em;animation:heroRise 1.4s cubic-bezier(.2,.7,.1,1) both}
html[data-theme="dark"] .hero-h{text-shadow:0 0 60px rgba(4,5,14,.45)}
html[data-theme="light"] .hero-h{text-shadow:0 0 60px rgba(243,240,234,.7)}
.hero-side{width:360px;flex-shrink:0;display:flex;flex-direction:column;gap:22px;padding-bottom:14px;animation:heroRise 1.4s cubic-bezier(.2,.7,.1,1) .25s both}
.hero-side p{margin:0;font-size:16px;line-height:1.6;color:var(--c-fg);opacity:.82}
html[data-theme="dark"] .hero-side p{text-shadow:0 0 24px rgba(4,5,14,.8)}
.hero .cover-toggle.hero-toggle{position:absolute !important;z-index:3 !important;top:118px;left:56px;margin:0}
html[data-theme="dark"] .hero .hero-toggle{background:rgba(4,5,14,.55)}
html[data-theme="light"] .hero .hero-toggle{background:rgba(243,240,234,.7)}

/* evidence strip */
.evidence{padding:0 56px 76px}
.ev-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--c-line)}
.ev{display:flex;flex-direction:column;gap:10px;padding:30px 32px 4px 0}
.ev + .ev{padding-left:32px;border-left:1px solid var(--c-line)}
.ev-k{font-family:'Geist Mono',ui-monospace,monospace;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--c-mut)}
.ev-v{font-weight:250;font-size:58px;line-height:1;letter-spacing:-.045em}
.ev-s{font-size:13px;line-height:1.5;color:var(--c-mut)}
@media (hover: hover){.ev:hover .ev-v{opacity:.85}}
.tofill{background:rgba(110,139,255,.24);border-radius:8px;padding:0 10px}

/* why */
.why{padding-top:150px}
.why-grid{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,9fr);gap:40px}
.why-grid .eyebrow{padding-top:18px}
.h-xl{font-weight:250;font-size:80px;line-height:1.02;letter-spacing:-.05em;margin:0;text-wrap:balance}
.pnl-band.live.reveal{-webkit-mask-image:linear-gradient(90deg,#000 0%,#000 42%,transparent 58%,transparent 100%);mask-image:linear-gradient(90deg,#000 0%,#000 42%,transparent 58%,transparent 100%);-webkit-mask-size:260% 100%;mask-size:260% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:0 0;mask-position:0 0;transition:-webkit-mask-position 2.6s cubic-bezier(.3,.6,.2,1),mask-position 2.6s cubic-bezier(.3,.6,.2,1)}
.armed .rv-why .pnl-band.live.reveal{-webkit-mask-position:100% 0;mask-position:100% 0}
.armed .rv-why.in .pnl-band.live.reveal{-webkit-mask-position:0 0;mask-position:0 0}

/* what xTAO does */
.judge{display:grid;grid-template-columns:minmax(0,1fr) 520px;gap:96px;align-items:start}
.judge .sec-head{margin-bottom:48px}
.srows{border-top:1px solid var(--c-fg)}
.srow{display:grid;grid-template-columns:64px minmax(0,1fr);gap:24px;padding:26px 0;border-bottom:1px solid var(--c-line)}
.srow > div{display:flex;flex-direction:column;gap:8px}
.judge-r{margin:0;display:flex;flex-direction:column;gap:14px}
.plate{position:relative;width:520px;height:760px;background-size:cover;background-position:center 40%;border-radius:4px}
.ping{position:absolute;left:260px;top:395px;width:28px;height:28px;margin:-14px 0 0 -14px;border-radius:999px;box-sizing:border-box;opacity:0}
html[data-theme="dark"] .ping{border:1.5px solid rgba(255,255,255,.85)}
html[data-theme="light"] .ping{border:1.5px solid rgba(21,20,28,.55)}
.armed .rv-judge.in .ping{animation:ping 1.9s cubic-bezier(.2,.6,.3,1) .3s 1 both}
.armed .rv-judge.in .ping.late{animation-delay:1s}
html[data-theme="dark"] .armed .rv-judge.in .plate{animation:flare-dk 1.5s cubic-bezier(.2,.7,.2,1) .15s 1 both}
html[data-theme="light"] .armed .rv-judge.in .plate{animation:flare-lt 1.5s cubic-bezier(.2,.7,.2,1) .15s 1 both}
.lines{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:64px;padding-top:26px;border-top:1px solid var(--c-fg)}
.line{display:flex;flex-direction:column;gap:6px}
.line strong{font-weight:450;font-size:18px}
.line span{font-size:15px;color:var(--c-mut)}
.pnl > .actions{margin-top:32px}

/* compact deck */
.deck-c{padding-top:100px;padding-bottom:100px}
.deck-feature.compact{grid-template-columns:600px minmax(0,1fr);gap:80px}
.deck-cover.sm{width:600px;height:360px}
.deck-cover.sm .deck-sheet{width:570px;height:320px}
.deck-cover.sm .deck-sheet.s1{left:30px;top:0}
.deck-cover.sm .deck-sheet.s2{left:15px;top:20px}
.deck-cover.sm .deck-front{top:40px;width:570px;height:320px;padding:26px 28px}
.deck-cover.sm .deck-t{font-size:38px}
.deck-text .cover-toggle{margin-top:8px}

/* documents on home */
.docs2{display:grid;grid-template-columns:440px minmax(0,1fr);gap:80px;align-items:start}
.docs2 .sec-head{margin-bottom:8px}
.chips{display:flex;gap:10px}
.docs2 .rows{margin-bottom:0}
.ep.ep-rev{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr)}
.ep-cap{position:absolute;left:24px;bottom:20px;font-family:'Geist Mono',ui-monospace,monospace;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#F4F3FF;text-shadow:0 0 18px rgba(4,5,14,.9)}
.lead{display:grid;grid-template-columns:420px minmax(0,1fr);gap:80px;align-items:center}
.lead .portrait{height:480px;margin:0}
.lead .h2{font-size:64px}

/* documents as documents */
.feat{display:grid;grid-template-columns:200px minmax(0,1fr);gap:48px;align-items:center;margin-bottom:56px}
.feat-doc{display:block;transition:transform .35s cubic-bezier(.2,.7,.1,1)}
@media (hover: hover){.feat-doc:hover{transform:translateY(-4px) rotate(-1deg)}}
.feat-t{font-size:44px}
.doc-sheet{aspect-ratio:8.5/11;background:#FBFAF7;border-radius:4px;box-shadow:0 0 0 1px rgba(21,20,28,.08),0 18px 40px -24px rgba(4,5,14,.5);padding:18px 16px;display:flex;flex-direction:column;gap:10px;color:#15141C;overflow:hidden;box-sizing:border-box}
.ds-logo{height:10px;width:auto;filter:invert(1);align-self:flex-start}
.ds-kind{font-size:11px;line-height:1.3;font-weight:500}
.ds-lines{flex:1;background:repeating-linear-gradient(180deg,rgba(21,20,28,.13) 0 1px,transparent 1px 9px)}
.doc-card .doc-sheet{width:58%;align-self:center;margin:4px 0 12px}
.typo{min-height:250px}
.typo-pub{font-weight:250;font-size:40px;line-height:1;letter-spacing:-.04em}

/* page heads */
.phead.compact{min-height:500px;padding-top:170px;padding-bottom:76px}
body.l-daylight .phead-art.sig{top:50%;right:-170px;width:900px;height:900px;margin-top:-450px;-webkit-mask-image:radial-gradient(closest-side,#000 68%,transparent 100%);mask-image:radial-gradient(closest-side,#000 68%,transparent 100%);animation:turn 240s linear infinite}

/* footer: the signature rises up into view as you reach the footer, then keeps turning (restored) */
.foot-wrap{position:absolute;left:-180px;top:-110px;width:1800px;height:1800px;pointer-events:none;transition:transform 2.4s cubic-bezier(.16,.8,.2,1),opacity 1.6s ease}
.foot-sig{position:absolute;left:0;top:0;width:1800px;height:1800px;animation:turn 240s linear infinite;-webkit-mask-image:radial-gradient(closest-side,#000 78%,transparent 100%);mask-image:radial-gradient(closest-side,#000 78%,transparent 100%)}
.armed .rv-foot .foot-wrap{transform:translateY(260px);opacity:0}
.armed .rv-foot.in .foot-wrap{transform:none;opacity:1}

/* footer: colours rising from the bottom as you scroll down (restored from the original footer) */
.pnl > .foot-rise{position:absolute !important;z-index:0 !important}
.foot-rise{left:calc(-1 * var(--g,0px));right:calc(-1 * var(--g,0px));bottom:-30px;height:660px;pointer-events:none;will-change:transform,opacity;
  -webkit-mask-image:linear-gradient(180deg,transparent 0,#000 40%);mask-image:linear-gradient(180deg,transparent 0,#000 40%)}
.foot-rise-img{position:absolute;inset:0;background-size:cover;background-position:center bottom;animation:floatup 22s ease-in-out infinite}
html[data-theme="dark"] .foot-rise-img{background-image:var(--riseD)}
html[data-theme="light"] .foot-rise-img{background-image:var(--riseL)}
@keyframes floatup{0%,100%{transform:translateY(0)}50%{transform:translateY(-38px)}}
html[data-theme="dark"] .gfoot .gf-nav a{text-shadow:0 0 18px rgba(4,5,14,.75)}

/* footer: Iris reference — centred, the original Spiral rising into view and turning */
.gfoot{height:560px;min-height:560px !important;padding:96px 56px 40px !important;display:flex;flex-direction:column;align-items:center;justify-content:space-between;overflow:visible}
.gfoot .foot-wrap{left:-180px !important;top:-120px !important}
.iris-sig{background-size:50% 50% !important;background-position:0 0,100% 0,0 100%,100% 100% !important;background-repeat:no-repeat !important}
.gf-center{position:relative;display:flex;flex-direction:column;align-items:center;gap:32px}
.gf-center .gf-logo img{height:44px;width:auto;display:block}
.gf-row{display:flex;gap:36px;font-size:14px}
.gf-row a,.gf-legal2 a{color:inherit;text-decoration:none}
.gf-legal2{position:relative;display:flex;gap:28px;font-size:13px}
html[data-theme="dark"] .gf-legal2{color:rgba(244,243,255,.8);text-shadow:0 0 20px rgba(4,5,14,.9)}
html[data-theme="light"] .gf-legal2{color:#4A4855;text-shadow:0 0 20px rgba(243,240,234,.95)}
html[data-theme="dark"] .gf-row a{text-shadow:0 0 18px rgba(4,5,14,.8)}
html[data-theme="light"] .gf-row a{text-shadow:0 0 18px rgba(243,240,234,.9)}

/* ===================== version switching ===================== */
html:not([data-ver="v2"]) .v2only{display:none !important}
html[data-ver="v2"] .v1only{display:none !important}
em.acc{font:inherit;letter-spacing:inherit}
.verbar{position:fixed;right:16px;bottom:16px;z-index:75;display:flex;align-items:center;gap:4px;padding:4px 4px 4px 14px;border-radius:999px;background:#0A0C1C;border:1px solid rgba(110,139,255,.6);font-family:'Geist Mono',ui-monospace,monospace;font-size:12px;color:#C9D2FF}
.verbar span{margin-right:6px}
.verbar button{height:30px;padding:0 14px;border-radius:999px;border:0;background:transparent;color:#C9D2FF;font-family:inherit;font-size:12px;cursor:pointer}
.verbar button[aria-pressed="true"]{background:#C9D2FF;color:#0A0C1C}
.no-review .verbar{display:none}

/* ===================== v2: typography, a second voice ===================== */
html[data-ver="v2"] em.acc{font-family:'Instrument Serif',Georgia,serif;font-style:italic;font-weight:400;letter-spacing:-.015em;font-size:1.1em;line-height:.95}
html[data-ver="v2"] .h1,html[data-ver="v2"] .h2,html[data-ver="v2"] .h-xl{font-weight:300}
html[data-ver="v2"] .hero-h{font-weight:250}
html[data-ver="v2"] .ev-v,html[data-ver="v2"] .kv strong,html[data-ver="v2"] .perf-v{font-weight:500;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
html[data-ver="v2"] .ev-v{font-size:54px}
html[data-ver="v2"] .sec-head .eyebrow,html[data-ver="v2"] .why-grid > .eyebrow,html[data-ver="v2"] .deck-text > .eyebrow{display:none}
html[data-ver="v2"] .why-grid{grid-template-columns:minmax(0,2fr) minmax(0,10fr)}
html[data-ver="v2"] .why-grid > .stack{grid-column:2}
html[data-ver="v2"] .lede{font-size:21px}
html[data-ver="v2"] .row-title,html[data-ver="v2"] .tl-row,html[data-ver="v2"] .fin-period{font-weight:400}

/* ===================== v2: live hero ===================== */
.hero-live{position:absolute;z-index:1;top:0;left:calc(-1 * var(--g,0px));width:calc(1440px + 2 * var(--g,0px));height:900px;pointer-events:none}
html[data-theme="dark"] .hero-live{mix-blend-mode:screen}
html[data-theme="light"] .hero-live{mix-blend-mode:multiply}
html[data-ver="v2"][data-theme="dark"] .hero-sig{opacity:.82}
html[data-ver="v2"][data-theme="light"] .hero-sig{opacity:.72}
html[data-ver="v2"] .hero-hint{position:absolute;z-index:2;right:56px;top:124px;font-family:'Geist Mono',ui-monospace,monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--c-mut);animation:heroRise 1.4s cubic-bezier(.2,.7,.1,1) .8s both}

/* ===================== v2: proof ===================== */
.perf .perf-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-bottom:40px}
.perf-t{display:flex;flex-direction:column;gap:10px;padding-top:24px;border-top:1px solid var(--c-fg)}
.perf-t span{font-size:13px;color:var(--c-mut)}
.perf-v{font-weight:300;font-size:64px;line-height:1;letter-spacing:-.05em}
.tchart{position:relative;width:100%;height:360px}
.tchart svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.tchart .tl{fill:none;stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:1600;stroke-dashoffset:1600;transition:stroke-dashoffset 2.2s cubic-bezier(.3,.6,.2,1)}
.tchart.drawn .tl{stroke-dashoffset:0}
.tchart .dot{opacity:0;transition:opacity .6s ease 1.8s}
.tchart.drawn .dot{opacity:1}
.tchart .ax{font-family:'Geist Mono',ui-monospace,monospace;font-size:12px;fill:var(--c-mut)}
.chart-foot{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:22px;font-size:13px;color:var(--c-mut)}
.ir-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:56px;align-items:start}
.quote-box{border:1px solid var(--c-line);border-radius:14px;padding:22px;min-height:420px;display:flex;flex-direction:column;gap:12px;background:var(--c-surf)}
.quote-head{display:flex;justify-content:space-between;align-items:baseline}
.quote-head strong{font-weight:400;font-size:22px;letter-spacing:-.02em}
.quote-mount{flex:1;min-height:330px}
.events{border-top:1px solid var(--c-fg)}
.evt{display:grid;grid-template-columns:120px minmax(0,1fr) auto;gap:20px;align-items:center;padding:20px 0;border-bottom:1px solid var(--c-line)}
.evt-date{font-family:'Geist Mono',ui-monospace,monospace;font-size:12px;line-height:1.5;color:var(--c-mut);text-transform:uppercase;letter-spacing:.06em}
.evt-t{font-size:18px;letter-spacing:-.01em}
.evt-t small{display:block;font-size:13px;color:var(--c-mut);margin-top:4px}
.evt a,.evt button{font-size:13px;border:1px solid var(--c-line);border-radius:999px;height:34px;padding:0 12px;display:inline-flex;align-items:center;background:transparent;color:var(--c-fg);cursor:pointer;font-family:inherit;white-space:nowrap}
@media (hover: hover){.evt a:hover,.evt button:hover{border-color:var(--c-fg)}}
.evt-past .evt-t{color:var(--c-mut)}

/* ===================== v2: real-content slots ===================== */
html[data-ver="v2"] .portrait{background:#07080D !important;border-color:rgba(244,243,255,.08) !important;color:rgba(244,243,255,.6)}
html[data-ver="v2"] .portrait::before{content:'';position:absolute;inset:0;z-index:2;pointer-events:none;background:radial-gradient(55% 45% at 88% 18%,rgba(226,78,151,.42),transparent 70%),radial-gradient(60% 50% at 8% 86%,rgba(58,103,224,.42),transparent 70%);mix-blend-mode:screen}
html[data-ver="v2"] .portrait::after{content:'';position:absolute;inset:0;z-index:2;pointer-events:none;background:radial-gradient(120% 90% at 50% 40%,transparent 55%,rgba(4,5,14,.7) 100%)}
.portrait img.ph{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;filter:grayscale(1) contrast(1.1) brightness(.74)}
html[data-ver="v2"] .portrait > span{position:relative;z-index:3;background:rgba(4,5,14,.6) !important;color:rgba(244,243,255,.7) !important}
.try-photo{position:absolute;z-index:4;right:12px;bottom:12px;font-family:'Geist Mono',ui-monospace,monospace;font-size:11px;letter-spacing:.04em;padding:7px 10px;border-radius:999px;background:rgba(244,243,255,.9);color:#15141C;cursor:pointer}
.try-photo input{display:none}
.no-review .try-photo{display:none}
.vmodal{position:fixed;inset:0;z-index:90;background:rgba(4,5,14,.88);display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.vmodal-in{width:min(1100px,90vw);aspect-ratio:16/9;background:#000;border-radius:12px;overflow:hidden;position:relative}
.vmodal-in iframe,.vmodal-in video{width:100%;height:100%;border:0;display:block}
.vmodal-x{position:absolute;right:24px;top:24px;height:44px;padding:0 16px;border-radius:999px;border:1px solid rgba(244,243,255,.3);background:transparent;color:#F4F3FF;font-family:inherit;cursor:pointer}
.toast{position:fixed;left:50%;bottom:28px;z-index:95;transform:translateX(-50%);padding:12px 18px;border-radius:999px;background:#0A0C1C;color:#DDE2FF;font-size:14px;border:1px solid rgba(110,139,255,.5)}

/* ===================== v2: page sweep ===================== */
.sweep{position:fixed;inset:0;z-index:80;pointer-events:none;overflow:hidden;visibility:hidden}
.sweep.on{visibility:visible}
.sweep-band{position:absolute;top:0;bottom:0;left:-140%;width:140%;background-size:cover;background-position:center;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 18%,#000 82%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 18%,#000 82%,transparent 100%)}
html[data-theme="dark"] .sweep-band{background-color:#04050E;background-image:var(--jstrD)}
html[data-theme="light"] .sweep-band{background-color:#F3F0EA;background-image:var(--j17c49e4e)}
.sweep.on .sweep-band{animation:sweepGo 1s cubic-bezier(.65,0,.35,1) forwards}
@keyframes sweepGo{from{transform:translateX(0)}to{transform:translateX(171.5%)}}

/* ===================== v2: livelier hover states ===================== */
html[data-ver="v2"] .row,html[data-ver="v2"] .tl-row{position:relative;transition:padding .45s cubic-bezier(.2,.7,.1,1),background .45s ease}
html[data-ver="v2"] .row::after,html[data-ver="v2"] .tl-row::after{content:'';position:absolute;left:0;bottom:-1px;height:1px;width:0;background:linear-gradient(90deg,#3A67E0,#8A6FE0,#E24E97);transition:width .7s cubic-bezier(.2,.7,.1,1)}
@media (hover: hover){html[data-ver="v2"] .row:hover::after,html[data-ver="v2"] .tl-row:hover::after{width:100%}}
@media (hover: hover){html[data-ver="v2"] .row:hover,html[data-ver="v2"] .tl-row:hover{padding-left:16px;background:linear-gradient(90deg,rgba(110,139,255,.07),rgba(110,139,255,0) 60%)}}
html[data-ver="v2"] .card{overflow:hidden;transition:transform .55s cubic-bezier(.2,.7,.1,1),box-shadow .55s ease,border-color .3s ease}
@media (hover: hover){html[data-ver="v2"] .card:hover{transform:translateY(-6px);box-shadow:0 34px 60px -34px rgba(80,90,230,.55),0 0 0 1px rgba(138,111,224,.45)}}
html[data-ver="v2"] .card-art{transition:transform 1.4s cubic-bezier(.2,.7,.1,1)}
@media (hover: hover){html[data-ver="v2"] .card:hover .card-art{transform:scale(1.05)}}
html[data-ver="v2"] .btn{position:relative;overflow:hidden;transition:transform .3s ease}
html[data-ver="v2"] .btn::after{content:'';position:absolute;top:0;bottom:0;left:-60%;width:40%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.35),transparent);transform:skewX(-20deg);transition:left .8s cubic-bezier(.2,.7,.1,1)}
@media (hover: hover){html[data-ver="v2"] .btn:hover::after{left:120%}}
@media (hover: hover){html[data-ver="v2"] .btn:hover{transform:translateY(-1px)}}
html[data-ver="v2"] .gh-nav a{position:relative;border-bottom:0}
html[data-ver="v2"] .gh-nav a::after{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.2,.7,.1,1)}
html[data-ver="v2"] .gh-nav a.on::after{transform:scaleX(1)}@media (hover: hover){html[data-ver="v2"] .gh-nav a:hover::after{transform:scaleX(1)}}
html[data-ver="v2"] .ev{transition:background .4s ease}
@media (hover: hover){html[data-ver="v2"] .ev:hover{background:radial-gradient(80% 90% at 30% 60%,rgba(110,139,255,.10),transparent 70%)}}
@media (hover: hover){html[data-ver="v2"] .feat-doc:hover,html[data-ver="v2"] .doc-card:hover .doc-sheet{transform:translateY(-6px) rotate(-1.5deg)}}
html[data-ver="v2"] .doc-sheet{transition:transform .6s cubic-bezier(.2,.7,.1,1)}
html[data-ver="v2"] .chip{transition:border-color .2s ease,background .3s ease}
@media (hover: hover){html[data-ver="v2"] .chip:hover{background:linear-gradient(90deg,rgba(58,103,224,.12),rgba(226,78,151,.12))}}

/* v2 home rhythm: panels alternate dark / ivory all the way down */
html[data-ver="v2"] .route[data-route="home"] > .pg{display:flex;flex-direction:column}
html[data-ver="v2"] .route[data-route="home"] .pg > .hero{order:1}
html[data-ver="v2"] .route[data-route="home"] .pg > .evidence{order:2}
html[data-ver="v2"] .route[data-route="home"] .pg > #why{order:3}
html[data-ver="v2"] .route[data-route="home"] .pg > .rv-judge{order:4}
html[data-ver="v2"] .route[data-route="home"] .pg > #deck{order:5}
html[data-ver="v2"] .route[data-route="home"] .pg > .perf{order:6}
html[data-ver="v2"] .route[data-route="home"] .pg > section:has(> .lead){order:7}
html[data-ver="v2"] .route[data-route="home"] .pg > #investors{order:8}
html[data-ver="v2"] .route[data-route="home"] .pg > section:has(> .ep-rev){order:9}
html[data-ver="v2"] .route[data-route="home"] .pg > .gfoot{order:10}
html[data-ver="v2"] .route[data-route="home"] .pg > section:has(> .lead){background:#F3F0EA;color:#15141C;box-shadow:0 0 0 100vmax #F3F0EA;padding-bottom:128px !important;
  --c-mut:#4A4855;--c-line:rgba(21,20,28,.14);--c-surf:#EAE6DE;--c-btn-bg:#15141C;--c-btn-fg:#F3F0EA;--c-fg:#15141C}
html[data-ver="v2"] .route[data-route="home"] .lead ~ .pnl-rise{display:none}
html[data-ver="v2"] .route[data-route="home"] .pg > section:has(> .ep-rev){background:#F3F0EA;box-shadow:0 0 0 100vmax #F3F0EA}

html[data-ver="v2"][data-theme="dark"]{--a-funnel:var(--jc57e22d4);--a-funnelp:var(--j15b84d3b);--a-field:var(--j21071c4e);--a-braid:var(--j85ac9666);--a-conf:var(--jconfd)}
html[data-ver="v2"][data-theme="light"]{--a-funnel:var(--j11176f8f);--a-funnelp:var(--jbbc65dd6);--a-field:var(--j10ba1ab8);--a-braid:var(--j6f689e15);--a-conf:var(--jconfl)}
html[data-ver="v2"] .ink-funnel{background-image:var(--j11176f8f)}html[data-ver="v2"] .ink-field{background-image:var(--j10ba1ab8)}html[data-ver="v2"] .ink-braid{background-image:var(--j6f689e15)}html[data-ver="v2"] .ink-conf{background-image:var(--jconfl)}html[data-ver="v2"] .ink-strands{background-image:var(--j17c49e4e)}
html[data-ver="v2"][data-theme="dark"] .sig-daylight,html[data-ver="v2"][data-theme="dark"]:not([data-hero="spiral"]) .sig{background-image:url("/img/hero/v2-hr_d_vortex_t0.webp"),url("/img/hero/v2-hr_d_vortex_t1.webp"),url("/img/hero/v2-hr_d_vortex_t2.webp"),url("/img/hero/v2-hr_d_vortex_t3.webp") !important}
html[data-ver="v2"][data-theme="light"] .sig-daylight,html[data-ver="v2"][data-theme="light"]:not([data-hero="spiral"]) .sig{background-image:url("/img/hero/v2-hr_l_vortex_t0.webp"),url("/img/hero/v2-hr_l_vortex_t1.webp"),url("/img/hero/v2-hr_l_vortex_t2.webp"),url("/img/hero/v2-hr_l_vortex_t3.webp") !important}
html[data-ver="v2"][data-theme="dark"] .sig-spiral,html[data-ver="v2"][data-theme="dark"][data-hero="spiral"] .sig{background-image:url("/img/hero/v2-hr_d_iris_t0.webp"),url("/img/hero/v2-hr_d_iris_t1.webp"),url("/img/hero/v2-hr_d_iris_t2.webp"),url("/img/hero/v2-hr_d_iris_t3.webp") !important}
html[data-ver="v2"][data-theme="light"] .sig-spiral,html[data-ver="v2"][data-theme="light"][data-hero="spiral"] .sig{background-image:url("/img/hero/v2-hr_l_iris_t0.webp"),url("/img/hero/v2-hr_l_iris_t1.webp"),url("/img/hero/v2-hr_l_iris_t2.webp"),url("/img/hero/v2-hr_l_iris_t3.webp") !important}
html[data-theme="dark"] .iris-sig,html[data-ver="v2"][data-theme="dark"] .hero .sig-spiral{background-image:url("/img/footer/hr_d_iris_t0.webp"),url("/img/footer/hr_d_iris_t1.webp"),url("/img/footer/hr_d_iris_t2.webp"),url("/img/footer/hr_d_iris_t3.webp") !important}
html[data-theme="light"] .iris-sig,html[data-ver="v2"][data-theme="light"] .hero .sig-spiral{background-image:url("/img/footer/hr_l_iris_t0.webp"),url("/img/footer/hr_l_iris_t1.webp"),url("/img/footer/hr_l_iris_t2.webp"),url("/img/footer/hr_l_iris_t3.webp") !important}
html[data-ver="v2"][data-theme="dark"] .hero .sig-daylight{background-image:url("/img/hero/ref-daylight_d_t0.webp"),url("/img/hero/ref-daylight_d_t1.webp"),url("/img/hero/ref-daylight_d_t2.webp"),url("/img/hero/ref-daylight_d_t3.webp") !important}
html[data-ver="v2"][data-theme="light"] .hero .sig-daylight{background-image:url("/img/hero/ref-daylight_l_t0.webp"),url("/img/hero/ref-daylight_l_t1.webp"),url("/img/hero/ref-daylight_l_t2.webp"),url("/img/hero/ref-daylight_l_t3.webp") !important}
html[data-ver="v2"] .hero .hero-sig{opacity:1 !important}

/* ===== treatments ===== */
.pnl > .bgart{position:absolute !important;z-index:0 !important}
.bgart{inset:0;left:calc(-1 * var(--g,0px));right:calc(-1 * var(--g,0px));background-size:cover;background-position:center;pointer-events:none;opacity:.6;
  -webkit-mask-image:radial-gradient(120% 100% at 72% 50%,#000 25%,transparent 82%);mask-image:radial-gradient(120% 100% at 72% 50%,#000 25%,transparent 82%)}
.bgart.right{-webkit-mask-image:linear-gradient(90deg,transparent 28%,#000 78%);mask-image:linear-gradient(90deg,transparent 28%,#000 78%);opacity:.75}
.bgart.soft{opacity:1;-webkit-mask-image:none;mask-image:none}
.bgart.low{opacity:.42}
html[data-theme="dark"]{--tr-defocus:var(--tD-defocus)}html[data-theme="light"]{--tr-defocus:var(--tL-defocus)}.tr-defocus{background-image:var(--tr-defocus);background-size:cover;background-position:center}.trL-defocus{background-image:var(--tL-defocus);background-size:cover;background-position:center}
html[data-theme="dark"]{--tr-contour:var(--tD-contour)}html[data-theme="light"]{--tr-contour:var(--tL-contour)}.tr-contour{background-image:var(--tr-contour);background-size:cover;background-position:center}.trL-contour{background-image:var(--tL-contour);background-size:cover;background-position:center}
html[data-theme="dark"]{--tr-constellation:var(--tD-constellation)}html[data-theme="light"]{--tr-constellation:var(--tL-constellation)}.tr-constellation{background-image:var(--tr-constellation);background-size:cover;background-position:center}.trL-constellation{background-image:var(--tL-constellation);background-size:cover;background-position:center}
html[data-theme="dark"]{--tr-portrait:var(--tD-portrait)}html[data-theme="light"]{--tr-portrait:var(--tL-portrait)}.tr-portrait{background-image:var(--tr-portrait);background-size:cover;background-position:center}.trL-portrait{background-image:var(--tL-portrait);background-size:cover;background-position:center}
html[data-theme="dark"]{--tr-ridge:var(--tD-ridge)}html[data-theme="light"]{--tr-ridge:var(--tL-ridge)}.tr-ridge{background-image:var(--tr-ridge);background-size:cover;background-position:center}.trL-ridge{background-image:var(--tL-ridge);background-size:cover;background-position:center}
html[data-theme="dark"]{--tr-stipple:var(--tD-stipple)}html[data-theme="light"]{--tr-stipple:var(--tL-stipple)}.tr-stipple{background-image:var(--tr-stipple);background-size:cover;background-position:center}.trL-stipple{background-image:var(--tL-stipple);background-size:cover;background-position:center}
html[data-theme="dark"]{--tr-stream:var(--tD-stream)}html[data-theme="light"]{--tr-stream:var(--tL-stream)}.tr-stream{background-image:var(--tr-stream);background-size:cover;background-position:center}.trL-stream{background-image:var(--tL-stream);background-size:cover;background-position:center}

/* ===== real, styled portraits ===== */
html[data-ver="v2"] .portrait.real{border:0 !important;background-size:cover !important;background-position:center 22% !important;background-repeat:no-repeat !important}
html[data-ver="v2"] .portrait.real::before,html[data-ver="v2"] .portrait.real::after{display:none}
html[data-theme="dark"]{--ph-karia:var(--pD-karia)}html[data-theme="light"]{--ph-karia:var(--pL-karia)}html[data-ver="v2"] .ph-karia{background-image:var(--ph-karia) !important}
html[data-theme="dark"]{--ph-victor:var(--pD-victor)}html[data-theme="light"]{--ph-victor:var(--pL-victor)}html[data-ver="v2"] .ph-victor{background-image:var(--ph-victor) !important}
html[data-theme="dark"]{--ph-ken:var(--pD-ken)}html[data-theme="light"]{--ph-ken:var(--pL-ken)}html[data-ver="v2"] .ph-ken{background-image:var(--ph-ken) !important}
html[data-theme="dark"]{--ph-ala:var(--pD-ala)}html[data-theme="light"]{--ph-ala:var(--pL-ala)}html[data-ver="v2"] .ph-ala{background-image:var(--ph-ala) !important}
html[data-theme="dark"]{--ph-joseph:var(--pD-joseph)}html[data-theme="light"]{--ph-joseph:var(--pL-joseph)}html[data-ver="v2"] .ph-joseph{background-image:var(--ph-joseph) !important}
html[data-theme="dark"]{--ph-david:var(--pD-david)}html[data-theme="light"]{--ph-david:var(--pL-david)}html[data-ver="v2"] .ph-david{background-image:var(--ph-david) !important}
html[data-theme="dark"]{--ph-william:var(--pD-william)}html[data-theme="light"]{--ph-william:var(--pL-william)}html[data-ver="v2"] .ph-william{background-image:var(--ph-william) !important}
html[data-theme="dark"]{--ph-bill:var(--pD-bill)}html[data-theme="light"]{--ph-bill:var(--pL-bill)}html[data-ver="v2"] .ph-bill{background-image:var(--ph-bill) !important}
html[data-theme="dark"]{--ph-mike:var(--pD-mike)}html[data-theme="light"]{--ph-mike:var(--pL-mike)}html[data-ver="v2"] .ph-mike{background-image:var(--ph-mike) !important}

.adv-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.adv-card{display:flex;flex-direction:column;gap:8px}
.adv-card .portrait{height:380px;margin-bottom:12px;border-radius:12px;transition:transform .6s cubic-bezier(.2,.7,.1,1)}
@media (hover: hover){.adv-card:hover .portrait{transform:translateY(-6px)}}
.adv-name{font-size:22px;letter-spacing:-.015em}
.person .portrait.real{height:420px}

/* ===== iteration B: scroll thread + live constellation ===== */
.scroll-thread{position:absolute;left:0;top:0;width:1440px;pointer-events:none;z-index:6;overflow:visible}
.scroll-thread path{fill:none;stroke-linecap:round;stroke-linejoin:round}
.const-live{position:absolute;inset:0;width:100%;height:100%;display:block}
.iter-b .phead-art.const-host{background-image:none !important}
.iter-c .glance{grid-template-columns:1fr}.iter-c .glance .kvs{grid-template-columns:repeat(3,minmax(0,1fr))}


/* ===================== Iteration D: the reading experience ===================== */
.xv,.xr{position:relative;color:var(--c-fg)}
/* --- slides --- */
.xv-wrap{position:relative;width:1328px}
.xv-glow{position:absolute;left:8%;right:8%;top:10%;bottom:-6%;filter:blur(60px);opacity:.55;pointer-events:none;background:radial-gradient(60% 60% at 30% 50%,rgba(58,103,224,.55),transparent 70%),radial-gradient(60% 60% at 72% 55%,rgba(226,78,151,.5),transparent 70%)}
html[data-theme="light"] .xv-glow{opacity:.35}
.xv-stage{position:relative;width:100%;aspect-ratio:16/9;border-radius:16px;overflow:hidden;background:#07080E;box-shadow:0 50px 120px -50px rgba(40,50,160,.6),0 0 0 1px rgba(244,243,255,.07);cursor:pointer;touch-action:pan-y}
.xv-layer{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transform:translateX(0) scale(1);transition:opacity .5s cubic-bezier(.2,.7,.1,1),transform .62s cubic-bezier(.2,.7,.1,1);will-change:opacity,transform}
.xv-layer.in{opacity:1}
.xv-layer.from-r{transform:translateX(34px) scale(.992)}.xv-layer.from-l{transform:translateX(-34px) scale(.992)}
.xv-layer.out-l{opacity:0;transform:translateX(-34px) scale(.992)}.xv-layer.out-r{opacity:0;transform:translateX(34px) scale(.992)}
.xv-sk,.xr-sk{position:absolute;inset:0;background:linear-gradient(100deg,rgba(255,255,255,0) 30%,rgba(255,255,255,.07) 50%,rgba(255,255,255,0) 70%) #0B0C14;background-size:220% 100%;animation:shimmer 1.6s linear infinite;transition:opacity .5s ease}
.xr-sk{background-color:#F1EFEA;background-image:linear-gradient(100deg,rgba(255,255,255,0) 30%,rgba(255,255,255,.75) 50%,rgba(255,255,255,0) 70%)}
@keyframes shimmer{from{background-position:120% 0}to{background-position:-120% 0}}
.xv-sk.gone,.xr-sk.gone{opacity:0;pointer-events:none}
.xv-nav{position:absolute;top:50%;width:52px;height:52px;margin-top:-26px;border-radius:999px;border:1px solid rgba(244,243,255,.22);background:rgba(4,5,14,.42);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#F4F3FF;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .35s ease,transform .35s ease;z-index:3}
.xv-nav.prev{left:20px;transform:translateX(-6px)}.xv-nav.next{right:20px;transform:translateX(6px)}
@media (hover: hover){.xv-stage:hover .xv-nav{opacity:1;transform:none}}
.xv-nav:disabled{opacity:0 !important;pointer-events:none}
.xv-bar{display:flex;align-items:center;gap:14px;margin:22px auto 0;width:max-content;padding:8px 10px 8px 8px;border-radius:999px;border:1px solid var(--c-line);background:var(--c-surf);transition:opacity .45s ease,transform .45s ease}
.xv-btn{height:40px;min-width:40px;padding:0 14px;border-radius:999px;border:0;background:transparent;color:var(--c-fg);font-family:inherit;font-size:14px;cursor:pointer;display:inline-flex;align-items:center;gap:8px;justify-content:center;transition:background .25s ease}
@media (hover: hover){.xv-btn:hover{background:rgba(127,127,160,.14)}}
.xv-btn:disabled{opacity:.3;cursor:default;background:transparent}
.xv-count{font-family:'Geist Mono',ui-monospace,monospace;font-size:13px;min-width:74px;text-align:center;display:inline-flex;justify-content:center;gap:6px;overflow:hidden}
.xv-count b{font-weight:500;display:inline-block}
.xv-count b.tick{animation:tick .42s cubic-bezier(.2,.7,.1,1)}
@keyframes tick{from{transform:translateY(9px);opacity:0}to{transform:none;opacity:1}}
.xv-prog{position:relative;width:220px;height:2px;border-radius:2px;background:var(--c-line);overflow:hidden}
.xv-prog i{position:absolute;left:0;top:0;bottom:0;width:0;background:linear-gradient(90deg,#3A67E0,#8A6FE0,#E24E97);transition:width .6s cubic-bezier(.2,.7,.1,1)}
.xv-sep{width:1px;height:22px;background:var(--c-line)}
.xv-strip{display:flex;gap:14px;overflow-x:auto;padding:26px 4px 10px;scroll-behavior:smooth;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.xv-strip::-webkit-scrollbar{display:none}
.xv-th{position:relative;flex:0 0 auto;width:168px;aspect-ratio:16/9;border-radius:8px;overflow:hidden;background:#0B0C14;border:0;padding:0;cursor:pointer;opacity:.55;transition:opacity .35s ease,transform .45s cubic-bezier(.2,.7,.1,1),box-shadow .35s ease}
@media (hover: hover){.xv-th:hover{opacity:.9;transform:translateY(-3px)}}
.xv-th.on{opacity:1;box-shadow:0 0 0 2px #8A6FE0,0 14px 30px -14px rgba(80,90,230,.7)}
.xv-th canvas{width:100%;height:100%;display:block;object-fit:contain}
.xv-th span{position:absolute;left:8px;bottom:6px;font-family:'Geist Mono',ui-monospace,monospace;font-size:10px;color:#fff;text-shadow:0 0 6px rgba(0,0,0,.9)}
.xv-grid{position:absolute;inset:-12px;z-index:6;border-radius:18px;padding:28px;box-sizing:border-box;overflow:auto;background:rgba(4,5,14,.86);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-content:start;opacity:0;transform:scale(.985);pointer-events:none;transition:opacity .35s ease,transform .45s cubic-bezier(.2,.7,.1,1)}
html[data-theme="light"] .xv-grid{background:rgba(243,240,234,.9)}
.xv-grid.open{opacity:1;transform:none;pointer-events:auto}
.xv-grid .xv-th{width:auto;opacity:.85}
.xv:fullscreen{background:#04050E;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:26px;box-sizing:border-box;--c-fg:#F4F3FF;--c-line:rgba(244,243,255,.16);--c-surf:rgba(16,18,34,.75)}
.xv:fullscreen .xv-wrap{width:auto;height:calc(100vh - 120px);aspect-ratio:16/9}
.xv:fullscreen .xv-strip,.xv:fullscreen .xv-glow{display:none}
.xv:fullscreen.idle .xv-bar{opacity:0;transform:translateY(10px)}
.xv:fullscreen.idle{cursor:none}
.xv-note{margin-top:14px;text-align:center;font-family:'Geist Mono',ui-monospace,monospace;font-size:11px;letter-spacing:.06em;color:var(--c-mut)}
/* --- reader --- */
.xr{display:grid;grid-template-columns:184px minmax(0,1fr);gap:44px;align-items:start}
.xr-side{position:sticky;top:178px;max-height:calc(100vh - 220px);overflow:auto;display:flex;flex-direction:column;gap:14px;padding:4px 6px 20px 2px;scrollbar-width:thin}
.xr-th{position:relative;width:100%;border-radius:4px;overflow:hidden;background:#fff;border:0;padding:0;cursor:pointer;opacity:.6;box-shadow:0 0 0 1px var(--c-line);transition:opacity .3s ease,box-shadow .3s ease,transform .4s cubic-bezier(.2,.7,.1,1)}
@media (hover: hover){.xr-th:hover{opacity:.95;transform:translateX(2px)}}
.xr-th.on{opacity:1;box-shadow:0 0 0 2px #8A6FE0}
.xr-th canvas{width:100%;display:block}
.xr-th span{position:absolute;right:6px;bottom:4px;font-family:'Geist Mono',ui-monospace,monospace;font-size:10px;color:#4A4855}
.xr-bar{position:sticky;top:96px;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 10px 8px 20px;border-radius:999px;border:1px solid var(--c-line);background:var(--c-surf);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);margin-bottom:28px;overflow:hidden}
html[data-theme="dark"] .xr-bar{background:rgba(16,18,34,.82)}
html[data-theme="light"] .xr-bar{background:rgba(236,232,224,.88)}
.xr-bar .pg-ind{font-family:'Geist Mono',ui-monospace,monospace;font-size:12px;letter-spacing:.04em}
.xr-bar .xr-tools{display:flex;align-items:center;gap:4px}
.xr-bar .zoom{font-family:'Geist Mono',ui-monospace,monospace;font-size:12px;min-width:52px;text-align:center}
.xr-bar a.xv-btn{text-decoration:none}
.xr-line{position:absolute;left:0;bottom:0;height:2px;width:0;background:linear-gradient(90deg,#3A67E0,#8A6FE0,#E24E97);transition:width .2s linear}
.xr-pages{display:flex;flex-direction:column;align-items:center;gap:30px}
.xr-page{position:relative;width:var(--pw,960px);background:#FFFFFF;border-radius:5px;overflow:hidden;box-shadow:0 0 0 1px rgba(21,20,28,.06),0 30px 70px -40px rgba(4,5,14,.6);transition:width .45s cubic-bezier(.2,.7,.1,1)}
.xr-page canvas{position:absolute;inset:0;width:100%;height:100%;display:block;opacity:0;transition:opacity .55s ease}
.xr-page canvas.on{opacity:1}
.xr-sample{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;padding:12px 18px;border-radius:12px;border:1px dashed var(--c-line);font-size:14px;color:var(--c-mut)}
.xr-sample a{color:var(--c-fg);border-bottom:1px solid currentColor;text-decoration:none}
/* --- closing --- */
.xv-close{height:40px;padding:0 8px 0 16px;border-radius:999px;border:1px solid var(--c-line);background:var(--c-surf);color:var(--c-fg);font-family:inherit;font-size:14px;cursor:pointer;display:inline-flex;align-items:center;gap:10px;transition:border-color .25s ease,transform .3s ease}
@media (hover: hover){.xv-close:hover{border-color:var(--c-fg);transform:translateY(-1px)}}
.xv-close kbd{font-family:'Geist Mono',ui-monospace,monospace;font-size:11px;padding:3px 7px;border-radius:6px;border:1px solid var(--c-line);color:var(--c-mut)}
.route[data-route="presentation"] .vhead,.route[data-route="document"] .vhead{cursor:zoom-out}
.vhead .xv-wrap,.vhead .xv-bar,.vhead .xv-strip,.vhead .xr-main,.vhead .xr-side,.vhead a,.vhead button,.vhead .vhead-row > div:first-child{cursor:auto}
.vhead .xv-stage{cursor:pointer}
.vhead .xv-bar button,.vhead .xv-th,.vhead .xr-th,.vhead a{cursor:pointer}
/* --- open-from-thumbnail transition --- */
.xv-ghost{position:fixed;z-index:85;pointer-events:none;border-radius:10px;box-shadow:0 40px 90px -30px rgba(4,5,14,.6);background-size:cover;background-position:center;transform-origin:0 0}
.xv-ghost.paper{background:#FBFAF7 repeating-linear-gradient(180deg,rgba(21,20,28,.07) 0 1px,transparent 1px 14px);border-radius:6px}
.xv-ghost.deck{background-color:#07080E}

/* ===================== Iteration E ===================== */
/* investors and partners */
.backers{padding:6px 56px 64px}
.backers-in{display:flex;align-items:center;gap:56px;border-top:1px solid var(--c-line);padding-top:30px}
.backers-in .eyebrow{flex-shrink:0;width:150px;line-height:1.5}
.backers-row{list-style:none;margin:0;padding:0;flex:1;display:flex;align-items:center;justify-content:space-between;gap:28px}
.backers-row li{display:flex;align-items:center;opacity:.62;transition:opacity .35s ease,transform .5s cubic-bezier(.2,.7,.1,1)}
@media (hover: hover){.backers-row li:hover{opacity:1;transform:translateY(-2px)}}
.backers-row img{height:28px;width:auto;display:block}
.backers-row li:nth-child(2) img,.backers-row li:nth-child(4) img,.backers-row li:nth-child(5) img{height:38px}
.backers-row li:nth-child(6) img{height:30px}
html[data-theme="light"] .backers-row img{filter:invert(1) brightness(.2)}
.armed .backers .backers-row li{opacity:0;transform:translateY(10px)}
.armed .backers.in .backers-row li{opacity:.62;transform:none;transition-delay:calc(var(--i,0) * 70ms)}
@media (hover: hover){.armed .backers.in .backers-row li:hover{opacity:1;transition-delay:0s}}
html[data-ver="v2"] .route[data-route="home"] .pg > .backers{order:2}
/* numbers */
.perf-t{text-decoration:none;color:inherit}
.perf-t span:last-child{font-size:13px;line-height:1.5}
@media (hover: hover){.perf-t:hover .perf-v{opacity:.85}}
.chart-head{display:flex;justify-content:space-between;align-items:baseline;margin:6px 0 10px}
.chart-key{font-size:13px;color:var(--c-mut)}
.chart-src{font-size:12px;line-height:1.6;color:var(--c-mut);margin:18px 0 0;max-width:1000px}
.tchart .val{font-family:'Geist Mono',ui-monospace,monospace;font-size:12px;fill:var(--c-fg);opacity:0;transition:opacity .6s ease 1.9s}
.tchart.drawn .val{opacity:.85}
.tchart .yax{font-family:'Geist Mono',ui-monospace,monospace;font-size:11px;fill:var(--c-mut)}
/* message from Karia */
.lead.msg{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:72px;align-items:center}
.msg-frame{position:relative;display:block;width:100%;aspect-ratio:16/10;border:0;padding:0;border-radius:16px;overflow:hidden;cursor:pointer;background-color:#0B0C14;background-size:cover !important;background-position:center 22% !important;box-shadow:0 40px 90px -40px rgba(4,5,14,.6);transition:transform .6s cubic-bezier(.2,.7,.1,1)}
@media (hover: hover){.msg-frame:hover{transform:translateY(-4px)}}
.msg-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(4,5,14,.75),rgba(4,5,14,0) 55%)}
.msg-play{position:absolute;left:50%;top:50%;width:84px;height:84px;margin:-42px 0 0 -42px;border-radius:999px;display:flex;align-items:center;justify-content:center;color:#F4F3FF;background:rgba(4,5,14,.38);border:1px solid rgba(244,243,255,.45);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:transform .4s cubic-bezier(.2,.7,.1,1),background .3s ease}
@media (hover: hover){.msg-frame:hover .msg-play{transform:scale(1.07);background:rgba(4,5,14,.55)}}
.msg-cap{position:absolute;left:24px;bottom:20px;font-family:'Geist Mono',ui-monospace,monospace;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#F4F3FF}
.lead.msg .h2{font-size:56px}
.ask{display:flex;flex-direction:column;gap:10px;margin-top:10px;padding-top:22px;border-top:1px solid var(--c-line)}
.ask label{font-size:15px;color:var(--c-fg)}
.ask textarea,.ask input{width:100%;box-sizing:border-box;background:transparent;border:1px solid var(--c-line);border-radius:14px;color:var(--c-fg);font-family:inherit;font-size:15px;padding:14px 16px;resize:vertical;transition:border-color .25s ease}
.ask input{border-radius:999px;height:52px;padding:0 20px}
.ask textarea:focus,.ask input:focus{outline:none;border-color:#8A6FE0}
.ask-row{display:flex;gap:10px}
.ask-ok{margin:0;font-size:15px}
/* Karia page */
.kp-head{padding-top:170px;padding-bottom:110px}
.kp-grid{display:grid;grid-template-columns:minmax(0,1.2fr) 480px;gap:80px;align-items:center}
.kp-text{display:flex;flex-direction:column;gap:24px}
.kp-photo{height:600px;border-radius:18px;box-shadow:0 50px 100px -50px rgba(4,5,14,.7)}
.kp-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--c-line)}
.kp-meta div{display:flex;flex-direction:column;gap:6px;padding:18px 0}
.kp-meta span{font-family:'Geist Mono',ui-monospace,monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--c-mut)}
.kp-meta strong{font-weight:400;font-size:18px}
.kp-msg{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:72px;align-items:center}
/* materials page */
.pnl > .mat-bar{position:sticky !important;z-index:6 !important}
.pnl > .mat-list{z-index:1}
.mat-bar{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:28px;position:sticky;top:96px;z-index:4;padding:10px 0;background:#F3F0EA;box-shadow:0 0 0 100vmax #F3F0EA;clip-path:inset(0 -100vmax)}
.mat-tabs{position:relative;display:flex;gap:4px;padding:4px;border-radius:999px;border:1px solid var(--c-line)}
.mat-tabs button{position:relative;z-index:1;height:40px;padding:0 16px;border-radius:999px;border:0;background:transparent;color:var(--c-fg);font-family:inherit;font-size:14px;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:color .3s ease}
.mat-tabs button span{font-family:'Geist Mono',ui-monospace,monospace;font-size:11px;opacity:.6}
.mat-tabs button[aria-selected="true"]{color:#F3F0EA}
.mat-ind{position:absolute;z-index:0;top:4px;bottom:4px;left:4px;width:0;border-radius:999px;background:#15141C;transition:left .45s cubic-bezier(.2,.7,.1,1),width .45s cubic-bezier(.2,.7,.1,1)}
.mat-tools{display:flex;gap:10px;align-items:center}
.mat-q{height:44px;width:240px;box-sizing:border-box;border-radius:999px;border:1px solid var(--c-line);background:transparent;padding:0 18px;font-family:inherit;font-size:14px;color:var(--c-fg)}
.mat-q:focus{outline:none;border-color:#8A6FE0}
.mat-sort{height:44px;padding:0 16px;border-radius:999px;border:1px solid var(--c-line);background:transparent;color:var(--c-fg);font-family:inherit;font-size:14px;cursor:pointer}
.mrow.hide{display:none}
.mrow.enter{animation:mrowIn .5s cubic-bezier(.2,.7,.1,1) both}
@keyframes mrowIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.mat-empty{font-size:16px;color:var(--c-mut)}
.mat-note{margin-top:28px}
/* the coloured hover line, everywhere there is a list */
html[data-ver="v2"] .fin-row,html[data-ver="v2"] .evt,html[data-ver="v2"] .faq,html[data-ver="v2"] .cv-row,html[data-ver="v2"] .kv{position:relative}
html[data-ver="v2"] .fin-row::after,html[data-ver="v2"] .evt::after,html[data-ver="v2"] .faq::after,html[data-ver="v2"] .cv-row::after{content:'';position:absolute;left:0;bottom:-1px;height:1px;width:0;background:linear-gradient(90deg,#3A67E0,#8A6FE0,#E24E97);transition:width .7s cubic-bezier(.2,.7,.1,1)}
@media (hover: hover){html[data-ver="v2"] .fin-row:hover::after,html[data-ver="v2"] .evt:hover::after,html[data-ver="v2"] .faq:hover::after,html[data-ver="v2"] .cv-row:hover::after{width:100%}}
html[data-ver="v2"] .fin-row,html[data-ver="v2"] .evt{transition:background .45s ease}
@media (hover: hover){html[data-ver="v2"] .fin-row:hover,html[data-ver="v2"] .evt:hover{background:linear-gradient(90deg,rgba(110,139,255,.07),rgba(110,139,255,0) 60%)}}

/* ==========================================================================
   Additions to the reference stylesheet (production). Everything here is new
   UI the brief asked for; the reference's own CSS is used unchanged above it.
   Values are in the reference's 1440 px canvas (it scales with the page).
   ========================================================================== */

/* self-hosted fonts (same families the reference loaded from Google Fonts) */
@font-face { font-family: 'Geist'; font-style: normal; font-display: swap; font-weight: 100 900; src: url(/fonts/geist-latin-wght-normal.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: 'Geist'; font-style: normal; font-display: swap; font-weight: 100 900; src: url(/fonts/geist-latin-ext-wght-normal.woff2) format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'Geist Mono'; font-style: normal; font-display: swap; font-weight: 400; src: url(/fonts/geist-mono-latin-400-normal.woff2) format('woff2'); }
@font-face { font-family: 'Geist Mono'; font-style: normal; font-display: swap; font-weight: 500; src: url(/fonts/geist-mono-latin-500-normal.woff2) format('woff2'); }
@font-face { font-family: 'Instrument Serif'; font-style: normal; font-display: swap; font-weight: 400; src: url(/fonts/instrument-serif-latin-400-normal.woff2) format('woff2'); }
@font-face { font-family: 'Instrument Serif'; font-style: italic; font-display: swap; font-weight: 400; src: url(/fonts/instrument-serif-latin-400-italic.woff2) format('woff2'); }

/* accessibility helpers */
.sr-only { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.skip { position: fixed; left: 16px; top: -60px; z-index: 100; padding: 12px 18px; border-radius: 999px; background: var(--btn-bg); color: var(--btn-fg); text-decoration: none; font-size: 14px; transition: top .2s ease; }
.skip:focus { top: 12px; }
.hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

/* sign-up: consent line (CASL), status, Turnstile slot — same look as the reference forms */
.su-consent { display: flex; gap: 12px; align-items: flex-start; font-size: 13px; line-height: 1.55; color: var(--c-mut); cursor: pointer; max-width: 520px; margin: 2px 0 0; }
.ask .su-consent { font-size: 13px; color: var(--c-mut); }
.su-consent input { flex-shrink: 0; appearance: none; -webkit-appearance: none; box-sizing: border-box; width: 18px; height: 18px; padding: 0; margin: 1px 0 0; border-radius: 5px; border: 1px solid var(--c-line); background: transparent; cursor: pointer; display: grid; place-content: center; transition: background .2s ease, border-color .2s ease; }
.su-consent input::before { content: ''; width: 9px; height: 5px; border-left: 2px solid var(--c-btn-fg); border-bottom: 2px solid var(--c-btn-fg); transform: translateY(-1px) rotate(-45deg) scale(0); transition: transform .2s cubic-bezier(.2,.7,.1,1); }
.su-consent input:checked { background: var(--c-btn-bg); border-color: var(--c-btn-bg); }
.su-consent input:checked::before { transform: translateY(-1px) rotate(-45deg) scale(1); }
.su-consent input:focus-visible { outline: 2px solid #6E8BFF; outline-offset: 3px; }
.su-status { margin: 0; font-size: 15px; }
.su-status:empty { display: none; }
.su-status.err { color: #E0567A; }
.pnl.paper .su-status.err, .route[data-route="home"] section:has(> .lead) .su-status.err { color: #B4234E; }
form.done .sub-row, form.done .ask-row, form.done .su-consent { display: none; }
.ask-note { margin: -2px 0 2px; font-size: 14px; line-height: 1.55; color: var(--c-mut); max-width: 520px; }
.sub-form .fine a, .ask .fine a { border-bottom: 1px solid currentColor; }

/* news release: the text reads like a document page in the reader */
.rel-side { gap: 18px; }
.rel-side .doc-sheet { width: 150px; }
.rel-side .link { font-size: 14px; }
.rel-paper { padding: 80px 88px 88px; color: #15141C; font-size: 17px; line-height: 1.72; box-sizing: border-box; }
.rel-paper p { margin: 0 0 1.1em; }
.rel-paper a { color: inherit; border-bottom: 1px solid rgba(21,20,28,.4); text-decoration: none; overflow-wrap: anywhere; }
.rel-paper b, .rel-paper strong { font-weight: 550; }
.rel-paper i, .rel-paper em { color: #4A4855; }
.rel-paper ul, .rel-paper ol { margin: 0 0 1.1em; padding-left: 1.3em; }
.rel-paper table { width: 100%; border-collapse: collapse; margin: 0 0 1.4em; font-size: 15px; display: block; overflow-x: auto; }
.rel-paper td, .rel-paper th { padding: 8px 12px 8px 0; border-bottom: 1px solid rgba(21,20,28,.12); text-align: left; vertical-align: top; }
.rel-paper .rel-logo { height: 28px; width: auto; filter: invert(1); display: block; margin-bottom: 44px; }
.rel-paper .rel-dateline { font-family: 'Geist Mono', ui-monospace, monospace; font-size: 12px; letter-spacing: .06em; text-transform: uppercase; color: #4A4855; margin: 0 0 22px; }
.rel-paper.rel-fallback { min-height: 420px; }
.rel-paper .xr-sk { position: relative; height: 640px; inset: auto; }
.rel-foot { display: flex; justify-content: space-between; gap: 24px; margin-top: 44px; padding-top: 22px; border-top: 1px solid rgba(21,20,28,.12); font-size: 14px; color: #4A4855; }

/* press */
.kit { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr); gap: 80px; align-items: start; }
.kit-items { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.kit-item { display: flex; flex-direction: column; gap: 10px; padding: 14px; border-radius: 12px; border: 1px solid var(--c-line); background: var(--c-surf); text-decoration: none; transition: border-color .25s ease, transform .45s cubic-bezier(.2,.7,.1,1); }
@media (hover: hover){.kit-item:hover { border-color: var(--c-fg); transform: translateY(-3px); }}
.kit-prev { aspect-ratio: 4/3; border-radius: 8px; display: grid; place-items: center; overflow: hidden; }
.kit-prev.night { background: #04050E; } .kit-prev.ivory { background: #F3F0EA; box-shadow: inset 0 0 0 1px rgba(21,20,28,.08); } .kit-prev.ph { background: #07080D; }
.kit-prev img { max-width: 70%; max-height: 52%; width: auto; height: auto; }
.kit-prev.ph img { max-width: 100%; max-height: 100%; width: 100%; height: 100%; object-fit: cover; object-position: center 22%; }
.kit-item b { font-weight: 450; font-size: 14px; }
.kit-item small { font-family: 'Geist Mono', ui-monospace, monospace; font-size: 11px; color: var(--c-mut); }
.boiler { max-width: 900px; padding: 40px; border-radius: 14px; border: 1px solid var(--c-line); background: var(--c-surf); display: flex; flex-direction: column; gap: 18px; }
.boiler p { margin: 0; font-size: 20px; line-height: 1.6; letter-spacing: -.01em; }
.press-contact { display: flex; flex-direction: column; gap: 18px; }
.press-contact .big { font-size: 44px; font-weight: 300; letter-spacing: -.04em; border-bottom: 1px solid var(--c-line); align-self: flex-start; }

/* legal pages */
.legal-body { max-width: 820px; font-size: 17px; line-height: 1.72; color: var(--c-fg); }
.legal-body p { margin: 0 0 1.2em; text-wrap: pretty; }
.legal-body .legal-h { font-size: 21px; line-height: 1.3; font-weight: 600; letter-spacing: -0.01em; margin: 2em 0 0.6em; text-wrap: balance; }
.legal-body ul { margin: 0 0 1.2em; padding-left: 1.2em; }
.legal-body li { margin: 0 0 0.6em; padding-left: 0.2em; text-wrap: pretty; }

/* not found */
.nf-head { min-height: 760px; }

/* menu button + full-screen menu exist only in the phone layout */
.gh-menu, .mnav { display: none; }

/* loading only: art below the first screen loads as it approaches (see site/client/lazyart.js) */
html.js:root .lzbg:not(.lz-on) { background-image: none !important; }
.ep-frame { background-color: #0B0C14; } /* dark base while the episode art loads, as the reference does for .msg-frame */
.vmodal-tr { position: absolute; left: 50%; bottom: 24px; transform: translateX(-50%); margin: 0; font-size: 13px; color: rgba(244,243,255,.8); }
.vmodal-tr a { color: inherit; border-bottom: 1px solid currentColor; text-decoration: none; }

/* loading only: the page-sweep band's art arrives after the first screen (site/client/lazyart.js) */
html:not(.sweep-art) .sweep-band { background-image: none !important; }

/* Header on the desktop canvas below 1440 px: the reference's auto margins collapse inside the narrower bar, so the
   scaled header slid right and its theme switch went off-screen (1024–1365 px). Centre the 1440 px bar before scaling. */
@media (min-width: 1024px) { .gh-in { margin: 0 0 0 calc(50% - 720px); } }

/* The rotating art is four tiles at 50 % each; at fractional scales Safari leaves a hairline cross between them.
   Each tile is drawn 1px larger so neighbours overlap (a 0.1 % size change, invisible otherwise). */
.sig, .sig-daylight, .sig-spiral, .iris-sig { background-size: calc(50% + 1px) calc(50% + 1px) !important; }

/* art that is off-screen stops turning until it comes back (site/client/polish.js) */
.anim-off, .anim-off::before, .anim-off::after { animation-play-state: paused !important; }
/* video pop-up: the page behind stays put; controls clear the notch and home bar */
html.vmodal-open, html.vmodal-open body { overflow: hidden; }
.vmodal-x { top: calc(24px + env(safe-area-inset-top, 0px)); right: calc(24px + env(safe-area-inset-right, 0px)); }
.vmodal-tr { bottom: calc(24px + env(safe-area-inset-bottom, 0px)); }
.toast { bottom: calc(28px + env(safe-area-inset-bottom, 0px)); max-width: calc(100vw - 32px); }

/* ---- desktop review fixes (October 2026) ---- */
/* "Subscribe" is longer than the reference's "Send": keep the button its natural width */
.ask-row .btn, .sub-row .btn { flex-shrink: 0; }
/* closing a document opened from the materials list returns to the same row (no scroll anchoring while it re-sorts) */
.mat-list { overflow-anchor: none; }
/* the consent box is a required control: its outline needs 3:1 contrast in both themes */
.su-consent input { border-color: var(--c-mut); }
/* Press: the latest releases sit in a half-width column, so they drop the kind column and breathe */
@media (min-width: 1024px) {
  .rows-compact .row { grid-template-columns: 150px minmax(0, 1fr) 24px; padding: 18px 0; }
}
.rows-compact .row-kind { display: none; }
[data-route="press"] p { text-wrap: pretty; }
/* the deck fits short laptop screens (site/client/polish.js sets --xv-max) */
@media (min-width: 1024px) {
  .xv-wrap { max-width: var(--xv-max, none); margin-left: auto; margin-right: auto; }
  .xv:fullscreen .xv-wrap { max-width: none; }
}
/* reader: thumbnails keep their page shape in the rail (long filings squashed them into slivers; the reference's
   three-page sample never showed it) */
.xr-th { flex-shrink: 0; }
/* documents: the Download PDF link is for phones and tablets (desktop has "Original" in the toolbar) */
.xr-dl { display: none; }

/* Horizontal overflow from the decorative art is clipped at the page itself (not just hidden), so touch screens can't
   pan sideways into it; clip (unlike hidden) doesn't make body a scroll container, so sticky toolbars keep working */
html, html body { overflow-x: clip; }
/* in-site navigation moves focus to the new page's content (announced by screen readers) without a visible ring */
#stage:focus { outline: none; }
/* light theme: the Spotlight caption sits on near-white art, so it gets a dark pill (white on white was unreadable,
   also in the reference) */
html[data-theme="light"] .ep-cap { background: rgba(4,5,14,.62); padding: 6px 10px; border-radius: 999px; text-shadow: none; }
/* toasts size to their text (left: 50% limited them to half the screen, so short messages wrapped) */
.toast { width: max-content; max-width: calc(100vw - 32px); box-sizing: border-box; }

/* Investors facts with the Frankfurt listing and the share count: four across on desktop; source notes under values */
@media (min-width: 1024px) { .iter-c .kvs:has(> .kv:nth-child(8)) { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.kv-note { font-style: normal; font-size: 12px; line-height: 1.45; color: var(--c-mut); }
/* the fitted deck on short laptop screens: the filmstrip and hint sit under the slide, not at the page edge */
@media (min-width: 1024px) { .xv-strip, .xv-note { max-width: var(--xv-max, none); margin-left: auto; margin-right: auto; } }
/* Investors: the facts and the FAQ are both paper panels since the placeholder panel between them went; a hairline
   and a tighter gap keep them reading as two sections */
#faq.pnl.paper { padding-top: 72px; }
#faq.pnl.paper::before { content: ''; display: block; height: 1px; margin: 0 0 72px; background: var(--c-line); }
/* loading skeletons: the shimmer stops once a page or slide has arrived, and in the reader it only runs on pages near
   the screen (it repainted every page every frame) */
.xv-sk.gone, .xr-sk.gone { animation: none; }
.xr-page .xr-sk { animation-play-state: paused; }
.xr-page.near .xr-sk:not(.gone) { animation-play-state: running; }
.xr-th canvas { height: auto; }

/* ---- footer (owner's request, October 2026): shorter and tidier; the rising, turning Spiral is unchanged ---- */
.gfoot { height: auto !important; min-height: 0 !important; padding: 112px 56px 34px !important; display: block !important; overflow: hidden; }
/* the Spiral sits higher so its bright rim stays behind the shorter footer, and fades in from the footer's top edge */
@media (min-width: 1024px) { .gfoot .foot-wrap { top: -380px !important; -webkit-mask-image: linear-gradient(180deg, transparent 380px, #000 560px); mask-image: linear-gradient(180deg, transparent 380px, #000 560px); } }
.gf-top { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: 40px; }
.gf-brand { display: flex; align-items: center; gap: 22px; }
.gf-brand .gf-logo img { height: 30px; width: auto; display: block; }
.gf-tick { font-family: 'Geist Mono', ui-monospace, monospace; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; opacity: .7; white-space: nowrap; }
.gfoot .gf-row { display: flex; align-items: center; gap: 30px; font-size: 14px; }
.gfoot .gf-row .gf-deck { display: inline-flex; align-items: center; height: 40px; padding: 0 18px; border-radius: 999px; border: 1px solid currentColor; line-height: 1; }
.gf-bottom { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-top: 52px; padding-top: 18px; border-top: 1px solid var(--line); }
.gfoot .gf-legal2 { gap: 24px; font-size: 13px; }
.gf-social { display: flex; gap: 10px; }
.gf-social a { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 999px; border: 1px solid var(--line); color: inherit; transition: background-color .3s ease, border-color .3s ease; }
@media (hover: hover){.gf-social a:hover { border-color: currentColor; }}
.gf-social svg { width: 16px; height: 16px; fill: currentColor; display: block; }
html[data-theme="dark"] .gf-tick, html[data-theme="dark"] .gf-social { color: rgba(244,243,255,.9); text-shadow: 0 0 18px rgba(4,5,14,.8); }
html[data-theme="light"] .gf-tick, html[data-theme="light"] .gf-social { color: #2E2C38; }
html[data-theme="dark"] .gf-social a { background: rgba(4,5,14,.35); }
html[data-theme="light"] .gf-social a { background: rgba(243,240,234,.55); }

/* ---- page-head art that was a still image now moves slowly (owner's request): the image sits on a layer inside the
   art's frame and drifts, breathes or turns a few degrees; the frame, its fade and its place stay as they were ---- */
.phead-art.tr-contour, .phead-art.tr-constellation, .phead-art.art-braid, .phead-art.art-field { overflow: hidden; background-size: 0 0 !important; }
.phead-art.tr-contour::before, .phead-art.tr-constellation::before, .phead-art.art-braid::before, .phead-art.art-field::before {
  content: ''; position: absolute; inset: -8%; background-image: inherit; background-size: cover; background-position: center; background-repeat: no-repeat;
  will-change: transform; animation-duration: 28s; animation-timing-function: ease-in-out; animation-iteration-count: infinite; animation-direction: alternate; }
.phead-art.tr-contour::before { animation-name: headBreathe; }
.phead-art.tr-constellation::before { animation-name: headDrift; animation-duration: 34s; }
.phead-art.art-braid::before { animation-name: headFlow; animation-duration: 24s; }
.phead-art.art-field::before { animation-name: headTurn; animation-duration: 32s; }
@keyframes headBreathe { from { transform: scale(1) rotate(-1.5deg); } to { transform: scale(1.08) rotate(1.5deg); } }
@keyframes headDrift { from { transform: translate(-2.5%, -1.5%) scale(1.02); } to { transform: translate(2.5%, 1.5%) scale(1.07) rotate(2deg); } }
@keyframes headFlow { from { transform: translateX(-4%) translateY(-.8%); } to { transform: translateX(4%) translateY(.8%); } }
@keyframes headTurn { from { transform: rotate(-4deg) scale(1.02); } to { transform: rotate(4deg) scale(1.08); } }

/* ===================== One page (owner's request, October 2026) ===================== */
/* header: a bigger wordmark, the home page's sections, no tickers */
.gh-logo img { height: 30px; }
.gh-nav { margin-left: 64px; }
/* the home page's panels show in the order they are written (the reference ordered its home panels in CSS) */
html[data-ver="v2"] .route[data-route="home"] .pg > * { order: 0 !important; }
/* a section reached by its address starts just under the header (before the script measures it exactly) */
.route[data-route="home"] .pg > [id] { scroll-margin-top: 84px; }

/* investors and partners: the reference's staggered fade-in, then the row drifts slowly to the left, round and round
   (two copies of the row; the second is hidden from screen readers). It pauses off-screen and under the pointer. */
.bk-marquee { padding-top: 76px; padding-bottom: 76px; }
.bk-marquee .backers-in { border-top: 0; padding-top: 0; }
.bk-marquee .backers-row { display: block; min-width: 0; 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); }
.bk-track { list-style: none; margin: 0; padding: 0; display: flex; align-items: center; width: max-content; animation: bkDrift calc(var(--n, 16) * 6s) linear 1.4s infinite; }
.bk-track li { flex: none; margin-right: 64px; }
.bk-track li img { height: var(--h) !important; width: auto; }
.armed .bk-marquee:not(.in) .bk-track { animation-play-state: paused; }
@media (hover: hover){.bk-marquee .backers-row:hover .bk-track { animation-play-state: paused; }}
@keyframes bkDrift { to { transform: translateX(-50%); } }

/* media: each outlet's logo at one height and in one colour, above the headline */
.press-card { gap: 22px; min-height: 250px; }
.press-logo { display: flex; align-items: center; height: 44px; }
.press-logo img { height: var(--h, 26px); width: auto; max-width: 190px; object-fit: contain; object-position: left center; opacity: .92; }
html[data-theme="light"] .press-logo img, html[data-theme="dark"] .paper .press-logo img { filter: invert(1) brightness(.2); }
.press-card .h3 { flex: 1; }
.media-foot { margin-top: 40px; gap: 32px; }

/* about Bittensor: the research links follow the four ideas */
.ideas-more { margin-top: 112px; }
/* investor materials: the first eight rows, then "Show all" */
.mat > .sec-head { margin-bottom: 40px; }
.mrow.cut { display: none !important; }
.mat-foot { display: flex; justify-content: center; margin-top: 32px; }
.mat-more[hidden] { display: none; }
/* stay in touch: the contact address under the sign-up line */
.sub-mail { margin-top: 14px; }
/* the materials list sits on a dark panel now: its sticky filter bar takes the panel's colours (it was made for paper) */
.mat:not(.paper) .mat-bar { background: var(--bg); box-shadow: 0 0 0 100vmax var(--bg); }
.mat:not(.paper) .mat-ind { background: var(--c-btn-bg); }
.mat:not(.paper) .mat-tabs button[aria-selected="true"] { color: var(--c-btn-fg); }
.route[data-route="home"] .pg > [id]:focus { outline: none; }
/* release and document headers: "Investor materials" stays on one line */
.vhead-meta .link { white-space: nowrap; }
/* the deck page (owner, October 13, 2026): "Investors" on the left and Close on the right, on one line, centred on each
   other (the title is for screen readers only) */
html:root .route[data-route="presentation"] .vhead-row { align-items: center; flex-wrap: nowrap; }
html:root .route[data-route="presentation"] .vhead-row .eyebrow { display: block; padding-top: 0; margin: 0; }
/* … and over the deck's own edges, which come in on short laptop screens (--xv-max, site/client/polish.js) */
@media (min-width: 1024px) {
  html:root .route[data-route="presentation"] .vhead-row { max-width: var(--xv-max, none); margin-left: auto; margin-right: auto; }
}
/* the home page's deck: with no heading beside the cover, its one line reads at the size of a lede */
.deck-text .body { font-size: clamp(17px, 2.1vw, 21px); line-height: 1.55; max-width: 28em; text-wrap: balance; }
/* In the news: the featured video (CNBC) beside its headline, above the other coverage */
.press-feature { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 64px; align-items: center; margin-bottom: 64px; }
.press-feature .stack { display: flex; flex-direction: column; align-items: flex-start; gap: 18px; }
.press-feature-t { font-size: 30px !important; line-height: 1.18 !important; letter-spacing: -.02em; }
.press-video { background-image: var(--poster) !important; background-size: cover !important; background-position: center !important; }
/* Mitchell Demeter, director (added October 2026): his portrait in the site's treatment, like the reference's */
:root { --pD-mitchell: url("/img/portraits/mitchell_quiet_d.webp"); --pL-mitchell: url("/img/portraits/mitchell_quiet_l.webp"); }
html[data-theme="dark"] { --ph-mitchell: var(--pD-mitchell); }
html[data-theme="light"] { --ph-mitchell: var(--pL-mitchell); }
html[data-ver="v2"] .ph-mitchell { background-image: var(--ph-mitchell) !important; }
/* Vanessa Grellet, advisor (added October 12, 2026), the same way */
:root { --pD-vanessa: url("/img/portraits/vanessa_quiet_d.webp"); --pL-vanessa: url("/img/portraits/vanessa_quiet_l.webp"); }
html[data-theme="dark"] { --ph-vanessa: var(--pD-vanessa); }
html[data-theme="light"] { --ph-vanessa: var(--pL-vanessa); }
html[data-ver="v2"] .ph-vanessa { background-image: var(--ph-vanessa) !important; }
/* leadership and board: four across on desktop */
@media (min-width: 1024px) { #team .grid3:has(> .person:nth-child(4)) { grid-template-columns: repeat(4, minmax(0, 1fr)); } }

/* ===================== October 12, 2026: the draft reviewed with the Winter 2026 investor deck ===================== */
/* facts strip: the listings' symbols a size down so both fit; the yield's footnote under the strip */
.ev-v.ev-sym { font-size: 40px !important; line-height: 1.35; }
.ev-note { margin: 18px 0 0; max-width: 1000px; font-size: 12px; line-height: 1.6; color: var(--c-mut); }
sup.fn { font-size: .42em; vertical-align: super; line-height: 0; margin-left: .06em; letter-spacing: 0; font-weight: 400; }
/* a message from Karia: centred, the video with his name and title */
.msg-c .msg-in { max-width: 1080px; margin: 0 auto; display: flex; flex-direction: column; align-items: center; gap: 44px; text-align: center; }
.msg-c .h2 { font-size: 56px; }
.msg-c .msg-frame { width: 100%; aspect-ratio: 16 / 9; }
/* until the video is added: a photo of Karia at his desk, "Coming soon" in its corner, nothing to click */
.msg-c .msg-still { cursor: default; }
@media (hover: hover){.msg-c .msg-still:hover { transform: none; }}
.msg-still img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.msg-who { margin: -8px 0 0; display: flex; flex-direction: column; align-items: center; gap: 6px; }
.msg-name { font-size: 22px; letter-spacing: -.015em; }
/* our core business: each line's status, and the sources under it */
.biz-tag { font-family: 'Geist Mono', ui-monospace, monospace; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: var(--c-mut); }
.srow .biz-tag + .h3 { margin-top: 2px; }
.biz-src { margin-top: 48px; }
/* the business in numbers: six figures, footnotes after the chart */
.fnotes { margin-top: 28px; padding-top: 22px; border-top: 1px solid var(--c-line); display: flex; flex-direction: column; gap: 10px; max-width: 1080px; }
.fnotes p { margin: 0; font-size: 12px; line-height: 1.6; color: var(--c-mut); }
/* about Bittensor: the network in numbers, and two quotes */
.bt-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 40px; margin-top: 104px; }
.bt-f { display: flex; flex-direction: column; gap: 10px; padding-top: 24px; border-top: 1px solid var(--c-fg); }
.bt-f .perf-v { font-size: 56px; }
.bt-l { font-size: 16px; }
.bt-d { font-size: 13px; line-height: 1.5; color: var(--c-mut); }
.bt-grid + .chart-src { margin-top: 22px; }
.qs { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); gap: 72px; margin-top: 112px; align-items: start; }
.q { margin: 0; display: flex; flex-direction: column; gap: 22px; padding-top: 28px; border-top: 1px solid var(--c-line); }
.q blockquote { margin: 0; }
.q p { margin: 0; font-size: 23px; line-height: 1.45; font-weight: 300; letter-spacing: -.012em; }
.q figcaption { display: flex; flex-direction: column; gap: 4px; }
.q-who { font-size: 16px; }
.q-role { font-size: 13px; line-height: 1.5; color: var(--c-mut); }
/* team: one line about each person; advisors four across (seven now) */
.person .bio { margin: 2px 0 0; font-size: 14px; line-height: 1.55; color: var(--c-mut); max-width: 320px; }
@media (min-width: 1024px) { #advisors .adv-cards { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px 24px; } #advisors .adv-card .portrait { height: 330px; } }
/* investors: our priorities, under the presentation */
.prio { margin-top: 120px; }
.prio-rows { border-top: 1px solid var(--c-fg); }
.prio-row { display: grid; grid-template-columns: 64px minmax(0, 1fr) minmax(0, 1fr); gap: 24px; align-items: baseline; padding: 26px 0; border-bottom: 1px solid var(--c-line); }
.prio-n { font-family: 'Geist Mono', ui-monospace, monospace; font-size: 13px; color: var(--c-mut); }
.prio-row .h3 { margin: 0; }
.prio-row .body { margin: 0; color: var(--c-mut); }
/* the media kit page */
.mk-about { gap: 28px !important; }
.mk-about .kvs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.mk-people .kit-prev { aspect-ratio: 4 / 5; }
.mk-swatches { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 14px; }
.mk-sw { display: flex; flex-direction: column; gap: 10px; }
.mk-sw b { font-weight: 450; font-size: 14px; }
.mk-chip { aspect-ratio: 1; border-radius: 12px; box-shadow: inset 0 0 0 1px rgba(127,127,127,.25); }
.mk-sw small { font-family: 'Geist Mono', ui-monospace, monospace; font-size: 11px; color: var(--c-mut); margin-top: -6px; }
.mk-type { margin-top: 48px; }
#press-contact .stack { display: flex; flex-direction: column; gap: 18px; }

/* page transitions (site/client/transitions.js; owner's request, October 12, 2026). The header keeps still. */
.gh { view-transition-name: xt-header; }
::view-transition-old(xt-header) { display: none; }
::view-transition-new(xt-header), ::view-transition-group(xt-header) { animation: none; }
html.xt-dissolve::view-transition-old(root) { animation: xt-out 200ms cubic-bezier(.4, 0, 1, 1) both; }
html.xt-dissolve::view-transition-new(root) { animation: xt-in 480ms cubic-bezier(.16, 1, .3, 1) 70ms both; }
html.xt-focus::view-transition-old(root) { animation: xt-blur-out 260ms cubic-bezier(.4, 0, 1, 1) both; }
html.xt-focus::view-transition-new(root) { animation: xt-blur-in 540ms cubic-bezier(.16, 1, .3, 1) 60ms both; }
@keyframes xt-out { to { opacity: 0; } }
@keyframes xt-in { from { opacity: 0; transform: translateY(10px); } }
@keyframes xt-blur-out { to { opacity: 0; filter: blur(8px); transform: scale(.992); } }
@keyframes xt-blur-in { from { opacity: 0; filter: blur(10px); transform: scale(1.006); } }
#xt-veil { position: fixed; inset: 0; z-index: 55; background: var(--bg); opacity: 0; visibility: hidden; pointer-events: none; }
#xt-veil.in { visibility: visible; opacity: 1; transition: opacity 170ms cubic-bezier(.4, 0, 1, 1); }
#xt-veil.out { visibility: visible; opacity: 0; transition: opacity 400ms cubic-bezier(.16, 1, .3, 1); }
.route.xt-rise > .pg { animation: xt-rise 560ms cubic-bezier(.16, 1, .3, 1) both; }
@keyframes xt-rise { from { opacity: 0; transform: translateY(14px); } }
/* footer: the forward-looking information note (site/build.mjs) */
.gf-fli { margin: 22px 0 0; max-width: 980px; font-size: 12px; line-height: 1.55; color: var(--mut); text-wrap: pretty; }
.gf-fli a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }

/* ===================== October 12, 2026: the owner's second review ===================== */
/* the deck buttons' eye, at the light/dark switch's icon size; the header's deck button has it too */
.btn svg.eye, .gh-deck svg.eye { width: 18px; height: 18px; flex: none; }
.gh-deck { gap: 8px; }
/* header: Merch after a hairline, quieter than the sections */
.gh-sep { width: 1px; height: 14px; align-self: center; background: currentColor; opacity: .22; margin: 0 -8px; }
.gh-nav a.gh-merch, .gf-row a.gf-merch { opacity: .62; }
 .gh-nav a.gh-merch.on{ opacity: 1; }@media (hover: hover){.gh-nav a.gh-merch:hover, .gf-row a.gf-merch:hover { opacity: 1; }}
/* the footer: Merch and the deck button as in the header */
.gf-row .gh-sep { margin: 0 -10px; }
.gfoot .gf-row .gf-deck { gap: 8px; height: 44px; border: 0; background: var(--btn-bg); color: var(--btn-fg) !important; font-weight: 500; }
.gf-deck svg.eye { width: 18px; height: 18px; flex: none; }
/* facts strip: the listings card holds a link per market */
.ev-links a { color: inherit; text-decoration: none; background: linear-gradient(currentColor, currentColor) 0 100% / 0 1px no-repeat; transition: background-size .35s cubic-bezier(.2,.7,.1,1); }
 .ev-links a:focus-visible { background-size: 100% 1px; }@media (hover: hover){.ev-links a:hover{ background-size: 100% 1px; }}
@media (hover: hover){.ev-links .ev-s a:hover { color: var(--c-fg); }}
.gf-tick a { color: inherit; text-decoration: none; }
@media (hover: hover){.gf-tick a:hover { text-decoration: underline; text-underline-offset: 3px; }}
/* our business: the company in a sentence under the heading */
.biz-intro { margin-top: 4px; }
/* our priorities: a panel of their own now */
.prio-s .prio { margin-top: 0; }
/* every row the same height (owner, October 12, 2026), the words centred in it */
@media (min-width: 1024px) { .prio-rows { display: grid; grid-auto-rows: 1fr; } .prio-row { align-content: center; } }
@media (max-width: 1023px) { html:root .prio-br { display: none; } }
/* Bittensor's co-founders on xTAO: Ala Shaabana's line large, Jacob Steeves's beside it */
.voices > .eyebrow { display: block; margin-bottom: 44px; }
.vq { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 88px; align-items: start; }
.vq .q { border-top-color: var(--c-fg); }
.vq .q-lead p { font-size: 42px; line-height: 1.18; font-weight: 300; letter-spacing: -.03em; text-wrap: balance; }
.vq .q:not(.q-lead) p { font-size: 20px; line-height: 1.55; }
/* advisors: their photos (now down to the shoulders) sit a little lower, with room above the head */
html[data-ver="v2"] #advisors .portrait.real { background-position: center 4% !important; }
/* leadership and advisors (owner, October 12, 2026): the photos stay still on hover; the xTAO colours draw a line under
   the name instead. A leadership photo opens Karia's profile or the person's LinkedIn. */
@media (hover: hover){.adv-card:hover .portrait, html[data-ver="v2"] .adv-card:hover .portrait { transform: none; }}
.person > .h3, .adv-card .adv-name { align-self: flex-start; padding-bottom: 5px; background: linear-gradient(90deg, #2E5BD6, #8A6FE0 50%, #EE4E97) no-repeat 0 100% / 0 2px; transition: background-size .7s cubic-bezier(.2,.7,.1,1); }
 .person:focus-within > .h3, .adv-card:focus-visible .adv-name { background-size: 100% 2px; }@media (hover: hover){.person:hover > .h3, .adv-card:hover .adv-name{ background-size: 100% 2px; }}
.person-ph { display: block; color: inherit; border-radius: 14px; }
.person-ph:focus-visible { outline: 2px solid #6E8BFF; outline-offset: 3px; }
.person-ph .portrait { margin-bottom: 0; }
/* About Bittensor: the two sentences on lines of their own, a little space between (as in the deck) */
.why-h span { display: block; }
.why-h span + span { margin-top: .22em; }
@media (min-width: 1024px) { .why-h { font-size: 72px; } .why-h span { white-space: nowrap; } }
/* the research: a light panel of its own */
#research.ideas-more { margin-top: 0; }
/* Karia's profile: the longer story under the lede */
.kp-bio { margin: -8px 0 0; max-width: 640px; font-size: 16px; line-height: 1.65; color: var(--c-mut); }
.kp-bio + .kp-bio { margin-top: -10px; }
/* the monthly update: a light card, set apart from the materials above and the footer below */
.sub-s { padding-top: 64px; padding-bottom: 128px; }
.sub-card { position: relative; overflow: hidden; padding: 72px 80px; border-radius: 28px; background: #F3F0EA; color: #15141C;
  --c-mut: #4A4855; --c-line: rgba(21,20,28,.18); --c-surf: #EAE6DE; --c-btn-bg: #15141C; --c-btn-fg: #F3F0EA; --c-fg: #15141C;
  box-shadow: 0 40px 100px -50px rgba(0,0,0,.7); }
.sub-card::before { content: ''; position: absolute; inset: 0; pointer-events: none;
  background: radial-gradient(55% 75% at 100% 0%, rgba(138,111,224,.16), transparent 70%), radial-gradient(45% 70% at 0% 100%, rgba(46,91,214,.10), transparent 70%); }
.sub-card > * { position: relative; }
.sub-card .eyebrow { color: #4A4855; }
.sub-card .su-status.err { color: #B4234E; }
html[data-theme="light"] .sub-card { background: #FFFFFF; border: 1px solid rgba(21,20,28,.08); box-shadow: 0 40px 100px -60px rgba(21,20,28,.45); }

/* the sign-up window around the deck (site/client/deck-exit.js): the page dims, the window rises. "Questions about
   xTAO?", Email Karia directly, the mailing list, and Karia's photo (head and shoulders on its own black, which is the
   card's colour) down the left of the card; a banner across the top on phones. The consent box and sender line appear
   once someone starts on the email field. */
html.dx-open { overflow: hidden; }
.dx { position: fixed; inset: 0; z-index: 90; display: flex; padding: 24px 24px 76px; box-sizing: border-box; overflow-y: auto; overscroll-behavior: contain;
  background: rgba(4,5,14,.82); -webkit-backdrop-filter: blur(10px) saturate(.8); backdrop-filter: blur(10px) saturate(.8); opacity: 0; transition: opacity .5s ease; }
.dx[hidden] { display: none; }
.dx.on { opacity: 1; }
.dx-card { position: relative; width: 100%; max-width: 500px; margin: auto; border-radius: 26px; overflow: hidden; background: #030303; color: #F4F3FF;
  border: 1px solid rgba(244,243,255,.12); box-shadow: 0 50px 140px -30px rgba(0,0,0,.85);
  --c-fg: #F4F3FF; --c-mut: rgba(244,243,255,.66); --c-line: rgba(244,243,255,.2); --c-surf: #0A0C1C; --c-btn-bg: #F4F3FF; --c-btn-fg: #04050E;
  transform: translateY(32px) scale(.975); opacity: 0; transition: transform .8s cubic-bezier(.16,1,.3,1) .1s, opacity .55s ease .1s; }
.dx-card:focus { outline: none; }
.dx.on .dx-card { transform: none; opacity: 1; }
.dx-in { position: relative; z-index: 1; display: flex; flex-direction: column; gap: 14px; padding: 44px 40px 30px; }
.dx-in .eyebrow { color: var(--c-mut); }
.dx-h { margin: 0; font-size: 40px; line-height: 1.04; font-weight: 300; letter-spacing: -.04em; text-wrap: balance; }
.dx .sub-form { gap: 10px; }
.dx .sub-form label[for] { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.dx .sub-row input { background: rgba(244,243,255,.05); border-color: rgba(244,243,255,.22); }
.dx .sub-row input:focus { border-color: rgba(244,243,255,.6); outline: none; }
.dx form:not(.engaged) .su-consent, .dx form:not(.engaged) .fine { display: none; }
.dx .su-consent { font-size: 12px; }
.dx .fine { margin: 0; font-size: 11px; line-height: 1.5; color: var(--c-mut); }
.dx a { color: inherit; text-decoration: none; }
.dx .su-status.ok { color: var(--c-fg); font-size: 17px; }
.dx-x { position: absolute; top: 14px; right: 14px; z-index: 3; width: 40px; height: 40px; padding: 0; display: grid; place-items: center; border-radius: 999px; cursor: pointer;
  color: var(--c-fg); background: rgba(3,3,3,.55); border: 1px solid rgba(244,243,255,.2); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); transition: background .2s ease; }
@media (hover: hover){.dx-x:hover { background: rgba(3,3,3,.85); }}
.dx-mail { display: inline-flex; justify-content: center; gap: 10px; height: 54px; margin-top: 4px; }
.dx-or { display: flex; align-items: center; gap: 14px; margin: 6px 0 0; font-size: 13px; color: var(--c-mut); }
.dx-or::before, .dx-or::after { content: ''; flex: 1; height: 1px; background: var(--c-line); }
.dx-foot { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; margin-top: 6px; }
.dx-sig b { display: block; font-size: 17px; font-weight: 500; }
.dx-sig small { display: block; margin-top: 3px; font-size: 13px; color: var(--c-mut); }
.dx-no { flex: none; margin: 0 -14px -6px 0; padding: 8px 14px; border: 0; background: none; color: var(--c-mut); font: inherit; font-size: 14px; cursor: pointer; }
@media (hover: hover){.dx-no:hover { color: var(--c-fg); }}
.dx-x:focus-visible, .dx-no:focus-visible, .dx-mail:focus-visible { outline: 2px solid #6E8BFF; outline-offset: 2px; }
form.done ~ .dx-foot .dx-no { display: none; }
.dx-photo { position: absolute; pointer-events: none; }
.dx-photo img { display: block; width: 100%; height: 100%; object-fit: cover; }
/* a tall portrait down the left of a wider card, his name over its foot */
.dx[data-v="side"] .dx-card { max-width: 860px; display: grid; grid-template-columns: 340px minmax(0, 1fr); }
.dx[data-v="side"] .dx-photo { position: relative; grid-column: 1; grid-row: 1;
  -webkit-mask-image: linear-gradient(90deg, #000 68%, transparent); mask-image: linear-gradient(90deg, #000 68%, transparent); }
.dx[data-v="side"] .dx-photo img { position: absolute; inset: 0; object-position: 50% 10%; }
.dx[data-v="side"] .dx-in { grid-column: 2; grid-row: 1; position: static; padding: 56px 44px 30px 12px; }
.dx[data-v="side"] .dx-sig { position: absolute; z-index: 2; left: 30px; bottom: 28px; text-shadow: 0 2px 14px #000; }
.dx[data-v="side"] .dx-foot { justify-content: flex-end; }


@media (max-width: 1023px) {
  html:root .gh-sep { display: none; }
  /* the menu (October 13, 2026): Merch as 06, the same size, in the dimmer grey; a bigger deck button */
  html:root .mnav nav a.mnav-merch { color: var(--mut); }
  html:root .mnav-foot .btn.mnav-deck { height: 58px; padding: 0 30px; font-size: 17px; gap: 12px; }
  /* the deck on phones: no Overview button (it crowded Download; the thumbnail row does the same job) */
  html:root .xv-bar [data-a="grid"] { display: none; }
  /* the footer links wrap onto as many lines as they need, at any width or text size; the deck button on its own line */
  html:root .gfoot .gf-row { display: flex !important; flex-wrap: wrap; justify-content: flex-start !important; gap: 0 22px !important; }
  html:root .gfoot .gf-row .gh-sep { display: block; order: 1; flex-basis: 100%; width: auto; height: 0; margin: 0; opacity: 0; }
  html:root .gfoot .gf-row .gf-deck { order: 2; }
  html:root .vq { grid-template-columns: 1fr; gap: 48px; }
  html:root .vq .q-lead p { font-size: clamp(26px, 6.6vw, 36px); }
  html:root .vq .q:not(.q-lead) p { font-size: 17px; }
  html:root .voices > .eyebrow { margin-bottom: 28px; }
  html:root .sub-s { padding-top: 32px; padding-bottom: 72px; }
  html:root .sub-card { padding: 36px 24px; border-radius: 22px; }
  html:root .kp-bio { margin-top: -4px; font-size: 16px; }
  html:root .dx { padding: 14px 14px 70px; }
  html:root .dx-in { padding: 36px 22px 22px; }
  html:root .dx-h { font-size: clamp(30px, 8.6vw, 38px); }
  html:root .dx-sig b { font-size: 16px; white-space: nowrap; }
  html:root .dx-sig small { font-size: 12px; white-space: nowrap; }
  /* on a phone the portrait is a banner across the top, his name on its left */
  html:root .dx[data-v="side"] .dx-card { display: block; }
  html:root .dx[data-v="side"] .dx-photo { position: relative; inset: auto; width: auto; height: 210px;
    -webkit-mask-image: none; mask-image: none; }
  html:root .dx[data-v="side"] .dx-photo img { position: static; width: 58%; margin-left: auto; object-position: 50% 12%;
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 32%), linear-gradient(0deg, transparent, #000 38%); -webkit-mask-composite: source-in;
    mask-image: linear-gradient(90deg, transparent, #000 32%), linear-gradient(0deg, transparent, #000 38%); mask-composite: intersect; }
  html:root .dx[data-v="side"] .dx-in { position: static; width: auto; padding: 4px 22px 22px; }
  html:root .dx[data-v="side"] .dx-sig { position: absolute; z-index: 2; left: 22px; top: 136px; bottom: auto; }
  html:root .dx[data-v="side"] .dx-foot { justify-content: flex-end; margin-top: 0; }
}

/* the footer's email button beside LinkedIn and X; the home sign-up without its "Email address" label (still read out) */
.gf-social .gf-mail svg { fill: none; width: 17px; height: 17px; }
.sub-card .sub-form > label[for] { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* the team's photos (owner, October 13, 2026; assets/team): natural colour, already graded (no filter), one 4:5 frame
   for leadership, advisors and Karia's profile at every width, on the card colour, a fade over the last 16% only */
html[data-ver="v2"] .portrait.team-ph { height: auto !important; aspect-ratio: 4 / 5 !important; background: #13141D !important; background-image: none !important; overflow: hidden; }
.portrait.team-ph img { display: block; width: 100%; height: 100%; object-fit: contain; object-position: center; filter: none; opacity: 1;
  -webkit-mask-image: linear-gradient(to bottom, #000 84%, transparent 100%); mask-image: linear-gradient(to bottom, #000 84%, transparent 100%); }
html:root .kp-photo.team-ph { max-width: 480px; }

/* link arrows (October 13, 2026; site/build.mjs ARROW): a small drawn arrow in the link's colour, in place of ↗ and → */
.arw svg.arr { display: inline-block; width: 10px; height: 10px; vertical-align: middle; position: relative; top: -1px; overflow: visible; }
@media (hover: hover){a:hover .arw:has(> svg.arr), button:hover .arw:has(> svg.arr) { transform: translate(2px, -2px); }}
/* the deck: pinch zoom on a slide (its 2560 px image stays sharp); the slide images and thumbnails */
.xv-stage { touch-action: pan-y pinch-zoom; }
.xv-th img { display: block; width: 100%; height: 100%; object-fit: contain; }
/* the deck sideways on a phone: lifted onto the page's body (site/build.mjs LAND), the slide as large as the screen allows */
#xv-land-host { position: relative; z-index: 80; }
html:root .xv.land .xv-wrap { width: min(calc(100vw - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px)), calc((100svh - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px)) * 16 / 9)) !important; }
.xv.land .xv-stage { border-radius: 0; box-shadow: none; }
#xv-land-host a { color: inherit; text-decoration: none; }
/* the deck's window for a browser that has signed up: the email button, and a note in place of the sign-up */
.dx-member-note { display: none; margin: 6px 0 0; font-size: 14px; color: var(--c-mut); text-align: center; }
.dx.dx-member .dx-or, .dx.dx-member form { display: none; }
.dx.dx-member .dx-member-note { display: block; }

/* ===================== Merch =====================
   The approved merch layout (xtao-shop-v4, October 12, 2026), scoped to the Merch route and its dialogs, on the
   site's own theme colours and fonts. 1024 px and up: the 1440 px canvas, in px (the canvas is scaled as a whole, so
   no vw units here); below that the fluid layout at the end. Nothing moves or grows on hover (owner, October 12,
   2026): only colour, border and focus change. Enlarging a photograph is a click. */
.merch { padding-top: 84px; background: var(--bg); color: var(--fg); font-family: 'Geist', system-ui, sans-serif; }
.merch a { color: inherit; text-decoration: none; }
.merch button, .merch-dlg button { font: inherit; color: inherit; border: 0; background: none; cursor: pointer; padding: 0; }
.merch img { display: block; }
.merch .collection-bar { position: sticky; top: 84px; z-index: 20; display: flex; justify-content: space-between; align-items: center; gap: 20px; min-height: 76px; padding: 20px 56px; box-sizing: border-box; background: var(--bg); border-bottom: 1px solid var(--line); }
.merch .collection-links { display: flex; align-items: center; gap: 30px; font-size: 12px; }
.merch .collection-links a { color: var(--mut); }
.merch .collection-links a.active{ color: var(--fg); }@media (hover: hover){ .merch .collection-links a:hover { color: var(--fg); }}
.merch .collection-tools { display: flex; align-items: center; gap: 26px; flex-shrink: 0; }
.merch .collection-count { font: 10px 'Geist Mono', ui-monospace, monospace; color: var(--mut); }
.merch .cart-toggle { display: inline-flex; align-items: center; white-space: nowrap; padding: 8px 0; font: 11px 'Geist Mono', ui-monospace, monospace; letter-spacing: -.03em; }

/* the collection: three across, no names over the photographs; DETAILS bottom left, the item code bottom right */
.merch .product-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.merch .tile { aspect-ratio: 4 / 5; position: relative; display: block; overflow: hidden; background: #929291; color: #fff; }
.merch .piece-photo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.merch .tile-details { position: absolute; bottom: 22px; left: 24px; display: flex; gap: 14px; font: 10px 'Geist Mono', ui-monospace, monospace; letter-spacing: .06em; text-shadow: 0 1px 4px #0003; }
@media (hover: hover){.merch .tile:hover .tile-details { text-decoration: underline; text-underline-offset: 3px; }}
.merch .tile-code { position: absolute; right: 24px; bottom: 22px; font: 8px 'Geist Mono', ui-monospace, monospace; opacity: .65; }

/* a product: the gallery on the left, the options on the right */
.merch .product-page { display: grid; grid-template-columns: 58% 42%; align-items: start; }
.merch .product-gallery { min-width: 0; }
.merch .gallery-frame { position: relative; }
.merch .product-stage { position: relative; display: block; width: 100%; aspect-ratio: 4 / 5; overflow: hidden; background: #90908f; cursor: zoom-in; }
.merch .zoom { position: absolute; bottom: 24px; right: 24px; width: 35px; height: 35px; display: grid; place-items: center; border: 1px solid #fff8; border-radius: 50%; color: #fff; font-size: 20px; line-height: 1; }
.merch .photo-nav { position: absolute; right: 20px; top: 20px; z-index: 2; display: flex; align-items: center; padding: 3px 6px; color: #fff; background: #04050e99; border: 1px solid #ffffff40; }
.merch .photo-pos { font: 9px 'Geist Mono', ui-monospace, monospace; padding: 0 9px; }
.merch .photo-nav button { width: 32px; height: 32px; font-size: 15px; }
@media (hover: hover){.merch .photo-nav button:hover { color: #fff; background: #ffffff1f; }}
.merch .gallery-controls { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 24px 56px; }
.merch .gallery-thumbs { display: flex; gap: 12px; }
.merch .gallery-thumbs button { position: relative; width: 60px; height: 75px; overflow: hidden; background: #929291; border: 1px solid transparent; }
.merch .gallery-thumbs button[aria-pressed="true"] { outline: 1px solid var(--fg); outline-offset: 3px; }
.merch .gallery-caption { margin: 0; font: 9px 'Geist Mono', ui-monospace, monospace; color: var(--mut); }
.merch .product-options { padding: 43px 58px 52px; }
.merch .back, .merch-dlg .back { font: 11px 'Geist Mono', ui-monospace, monospace; color: var(--mut); display: inline-block; }
@media (hover: hover){.merch .back:hover, .merch-dlg .back:hover { color: var(--fg); }}
.merch .product-name { font-weight: 300; letter-spacing: -.04em; font-size: 46px; line-height: 1.08; margin: 38px 0 18px; outline: none; }
.merch .product-description { max-width: 360px; font-size: 12px; line-height: 1.8; color: var(--mut); margin: 0 0 26px; }
.merch .color-label { margin: 0; font-size: 11px; color: var(--mut); }
.merch .variant-grid { display: flex; flex-wrap: wrap; gap: 10px; margin: 24px 0 34px; }
.merch .variant { width: 68px; height: 85px; position: relative; overflow: hidden; border: 1px solid transparent; background: #929291; }
.merch .variant.active { outline: 1px solid var(--fg); outline-offset: 3px; }
@media (hover: hover){.merch .variant:hover { border-color: var(--fg); }}
.merch .purchase-label { font: 10px 'Geist Mono', ui-monospace, monospace; text-transform: uppercase; }
.merch .sizes { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 15px; }
.merch .size { height: 39px; flex: 1 0 46px; min-width: 40px; border: 1px solid var(--line) !important; font: 11px 'Geist Mono', ui-monospace, monospace !important; }
@media (hover: hover){.merch .size:hover { border-color: var(--fg) !important; }}
.merch .size[aria-pressed="true"] { background: var(--fg) !important; color: var(--bg) !important; border-color: var(--fg) !important; }
.merch .size:disabled { opacity: .35; text-decoration: line-through; cursor: default; }
.merch .size-hint { font-size: 11px; color: #cf917e; min-height: 26px; padding-top: 7px; margin: 0; }
.merch .product-price { margin: 0 0 16px; font-size: 20px; letter-spacing: -.02em; }
.merch .product-price span:not(.price-amount) { font: 10px 'Geist Mono', ui-monospace, monospace; color: var(--mut); }
.merch .add-cart:disabled { background: transparent !important; color: var(--fg) !important; border: 1px dashed currentColor; cursor: not-allowed; }
.merch .add-cart, .merch-dlg .continue, .merch-dlg .checkout { background: var(--fg) !important; color: var(--bg) !important; width: 100%; padding: 18px 20px !important; display: flex; justify-content: space-between; font: 12px 'Geist Mono', ui-monospace, monospace !important; box-sizing: border-box; }
@media (hover: hover){.merch .add-cart:hover, .merch-dlg .continue:hover, .merch-dlg a.checkout:hover { opacity: .88; }}
.merch .more { display: block; margin-top: 28px; font-size: 11px !important; text-decoration: underline; text-underline-offset: 4px; }

/* the bag, the details and the enlarged photograph: native dialogs at the end of the page */
.merch-dlg { background: var(--bg); color: var(--fg); border: 1px solid var(--line); padding: 32px; box-sizing: border-box; font-family: 'Geist', system-ui, sans-serif; }
.merch-dlg::backdrop { background: #0008; -webkit-backdrop-filter: blur(5px); backdrop-filter: blur(5px); }
.merch-dlg h2 { font-size: 32px; font-weight: 300; letter-spacing: -.03em; margin: 30px 0; }
.merch-dlg a { color: inherit; text-decoration: none; }
#merch-bag { position: fixed; inset: 0 0 0 auto; margin: 0; width: min(450px, 100vw); max-width: 100vw; height: 100dvh; max-height: 100dvh; border: 0; border-left: 1px solid var(--line); overflow: auto; }
.merch-dlg .cart-line { display: grid; grid-template-columns: 90px 1fr; gap: 18px; padding: 22px 0; border-bottom: 1px solid var(--line); }
.merch-dlg .cart-thumb { position: relative; aspect-ratio: 4 / 5; display: block; overflow: hidden; background: #929291; }
.merch-dlg .cart-thumb img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.merch-dlg .cart-line h3 { font-size: 13px; font-weight: 400; margin: 2px 0 9px; }
.merch-dlg .cart-meta { font: 10px 'Geist Mono', ui-monospace, monospace; color: var(--mut); margin: 0; }
.merch-dlg .quantity { display: flex; align-items: center; gap: 15px; font: 11px 'Geist Mono', ui-monospace, monospace; margin-top: 18px; }
.merch-dlg .quantity button { min-width: 25px; min-height: 30px; }
.merch-dlg .quantity button:disabled { opacity: .35; cursor: default; }
.merch-dlg .quantity .remove { margin-left: auto; min-width: 48px; font-size: 9px; color: var(--mut); text-decoration: underline; }
.merch-dlg .cart-empty { color: var(--mut); font-size: 13px; padding: 25px 0 40px; margin: 0; }
.merch-dlg .cart-total { display: flex; justify-content: space-between; font-size: 13px; padding: 15px 0 0; margin: 0; }
.merch-dlg .cart-notice { font: 10px/1.7 'Geist Mono', ui-monospace, monospace; color: var(--mut); margin: 10px 0 18px; }
.merch-dlg .cart-summary .checkout { margin-top: 22px; }
.merch-dlg .checkout:disabled { background: transparent !important; color: var(--fg) !important; border: 1px dashed currentColor; cursor: not-allowed; }
.merch-dlg .continue { margin-top: 6px; }
#merch-info { width: min(570px, 90vw); max-height: 85dvh; }
#merch-info .info-body { font-size: 13px; line-height: 1.8; color: var(--mut); }
.merch-dlg .details-list { padding-left: 18px; margin: 0; }
.merch-dlg .details-list li { margin-bottom: 10px; }
#merch-image { width: 96vw; max-width: 96vw; height: 94dvh; max-height: 94dvh; padding: 0; border: 0; background: #17181b; overflow: hidden; }
#merch-image img { width: 100%; height: 100%; object-fit: contain; display: block; }
#merch-image .image-close { position: absolute; right: 15px; top: 15px; z-index: 2; width: 42px; height: 42px; color: #fff; background: #04050ecc; font-size: 28px; line-height: 1; }
.merch button:focus-visible, .merch a:focus-visible, .merch-dlg button:focus-visible, .merch-dlg a:focus-visible { outline: 2px solid #92a7ff; outline-offset: 5px; }

/* phones and tablets: fluid, as the package's 1023 px and 600 px layouts */
@media (max-width: 1023px) {
  html:root .merch { padding-top: var(--hdr); }
  html:root .merch .collection-bar { top: var(--hdr); padding: 20px var(--px); }
  html:root .merch .tile-details { font-size: 8px; left: 18px; bottom: 18px; }
  html:root .merch .tile-code { right: 18px; bottom: 18px; font-size: 7px; }
  html:root .merch .product-page { grid-template-columns: 53% 47%; }
  html:root .merch .gallery-controls { padding: 20px var(--px); }
  html:root .merch .product-options { padding: 35px 26px; }
  html:root .merch .product-name { font-size: 34px; margin-top: 30px; }
}
@media (max-width: 600px) {
  html:root .merch .collection-bar { min-height: 67px; gap: 12px; }
  html:root .merch .collection-links { gap: 25px; font-size: 11px; }
  html:root .merch .collection-count { display: none; }
  html:root .merch .collection-tools { gap: 0; }
  html:root .merch .cart-toggle { font-size: 10px; min-height: 44px; }
  html:root .merch .product-grid { grid-template-columns: 1fr; }
  html:root .merch .tile-details { left: 23px; bottom: 22px; font-size: 10px; }
  html:root .merch .tile-code { right: 23px; bottom: 22px; font-size: 8px; }
  html:root .merch .product-page { display: block; }
  html:root .merch .photo-nav { right: 14px; top: 14px; }
  html:root .merch .photo-nav button { width: 40px; height: 40px; }
  html:root .merch .gallery-thumbs button { width: 56px; height: 70px; }
  html:root .merch .product-options { padding: 32px var(--px) 55px; }
  html:root .merch .product-name { font-size: 38px; }
  html:root .merch .variant { width: 64px; height: 80px; }
  html:root .merch .size { min-height: 44px; }
  html:root .merch-dlg { padding: 24px var(--px); }
  html:root #merch-image { width: 100vw; max-width: 100vw; height: 100dvh; max-height: 100dvh; }
}

/* ==========================================================================
   Phone and tablet layout (below 1024 px). At 1024 px and wider the site is
   the reference exactly (its 1440 px canvas, scaled to fit). Below that the
   reference becomes too small to read, so this layer reflows the same
   markup. Selectors start with "html:root" so they outrank the reference's
   html[data-…] rules without touching them.
   ========================================================================== */
@media (max-width: 1023px) {
  :root { --px: max(calc(20px + env(safe-area-inset-left, 0px)), calc(20px + env(safe-area-inset-right, 0px)), 4.4vw); --py: 96px; --hdr: 64px; }
  html:root body { overflow-x: clip; }
  html:root #stage { width: auto; zoom: 1 !important; transform: none !important; --g: 0px; }
  html:root .pg { width: auto; }
  html:root { scroll-padding-top: 80px; }

  /* header + full-screen menu */
  html:root .gh { height: var(--hdr); }
  html:root .gh-in { width: auto; height: var(--hdr); padding: 0 var(--px); transform: none; }
  html:root .gh-nav, html:root .gh-tick, html:root .gh-deck { display: none; }
  html:root .gh-right { gap: 10px; }
  html:root .gh-menu { display: block; position: relative; width: 44px; height: 44px; border-radius: 999px; border: 1px solid var(--line); background: transparent; color: var(--fg); cursor: pointer; padding: 0; }
  html:root .gh-menu i { position: absolute; left: 13px; right: 13px; height: 1.5px; background: currentColor; border-radius: 2px; transition: transform .3s cubic-bezier(.2,.7,.1,1), opacity .2s ease, top .3s cubic-bezier(.2,.7,.1,1); }
  html:root .gh-menu i:nth-child(1) { top: 16px; } html:root .gh-menu i:nth-child(2) { top: 21px; } html:root .gh-menu i:nth-child(3) { top: 26px; }
  html.menu-open .gh-menu i:nth-child(1) { top: 21px; transform: rotate(45deg); }
  html.menu-open .gh-menu i:nth-child(2) { opacity: 0; }
  html.menu-open .gh-menu i:nth-child(3) { top: 21px; transform: rotate(-45deg); }
  html.menu-open .gh { background: var(--bg) !important; border-bottom-color: transparent !important; -webkit-backdrop-filter: none !important; backdrop-filter: none !important; }
  html.menu-open, html.menu-open body { overflow: hidden; }
  html:root .mnav { display: block; position: fixed; inset: 0; z-index: 58; overflow: hidden; background: var(--bg); color: var(--fg);
    opacity: 0; transform: translateY(-10px); visibility: hidden; transition: opacity .22s ease, transform .3s cubic-bezier(.2,.7,.1,1), visibility 0s linear .3s; }
  html:root .mnav[hidden] { display: none !important; }
  html.menu-open .mnav { opacity: 1; transform: none; visibility: visible; transition: opacity .24s ease, transform .32s cubic-bezier(.2,.7,.1,1), visibility 0s; }
  /* the art sits in its own clipped layer, so it can't stretch the menu's scroll area; the links scroll in .mnav-in */
  html:root .mnav-bg { position: absolute; inset: 0; overflow: hidden; pointer-events: none; }
  html:root .mnav-in { position: relative; z-index: 1; height: 100%; box-sizing: border-box; overflow-y: auto; overscroll-behavior: contain; display: flex; flex-direction: column;
    padding: calc(var(--hdr) + 24px) var(--px) calc(28px + env(safe-area-inset-bottom, 0px)); }
  html:root .mnav-art { position: absolute; z-index: 0; right: -220px; bottom: -260px; width: 620px; height: 620px; pointer-events: none; opacity: .7; animation: turn 240s linear infinite; -webkit-mask-image: radial-gradient(closest-side, #000 60%, transparent 100%); mask-image: radial-gradient(closest-side, #000 60%, transparent 100%); }
  html:root .mnav nav { position: relative; z-index: 1; display: flex; flex-direction: column; }
  html:root .mnav nav a { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; padding: 10px 0; min-height: 52px; font-size: clamp(30px, 8.4vw, 44px); font-weight: 300; letter-spacing: -.04em; line-height: 1.1; color: inherit; text-decoration: none; border-bottom: 1px solid var(--line); opacity: 0; transform: translateY(12px); transition: opacity .3s ease, transform .36s cubic-bezier(.2,.7,.1,1); }
  html:root .mnav nav a span { font-family: 'Geist Mono', ui-monospace, monospace; font-size: 11px; letter-spacing: .08em; color: var(--mut); }
  /* the section you're in: its number brighter, the name in the menu's own type (owner, October 13, 2026: no italic) */
  html:root .mnav nav a[aria-current] span { color: var(--fg); }
  html.menu-open .mnav nav a { opacity: 1; transform: none; transition-delay: calc(.04s + var(--i, 0) * .022s); }
  html:root .mnav-foot { position: relative; z-index: 1; margin-top: auto; padding-top: 28px; display: flex; flex-direction: column; gap: 18px; opacity: 0; transition: opacity .3s ease .12s; }
  html.menu-open .mnav-foot { opacity: 1; }
  html:root .mnav-foot .btn { align-self: flex-start; --c-btn-bg: var(--btn-bg); --c-btn-fg: var(--btn-fg); }
  html:root .mnav-meta { display: flex; flex-wrap: wrap; gap: 8px 20px; font-size: 13px; color: var(--mut); }
  html:root .mnav-meta a { color: inherit; border-bottom: 1px solid currentColor; text-decoration: none; }

  /* panels and type */
  html:root .pnl { padding: var(--py) var(--px); }
  html:root .h1 { font-size: clamp(44px, 6.39vw, 92px); }
  html:root .h2 { font-size: clamp(34px, 4.6vw, 56px); }
  html:root .h-xl { font-size: clamp(40px, 6.6vw, 80px); }
  html:root .h3 { font-size: clamp(20px, 2.3vw, 23px); }
  html:root .lede { font-size: clamp(17px, 2.1vw, 21px); }
  html:root .body { font-size: 16px; }
  html:root .sec-head { margin-bottom: 40px; }
  html:root .card { padding: 26px; }
  html:root .grid3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  html:root .grid4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  html:root .split { gap: 48px; }
  html:root .typo-pub { font-size: 34px; }
  html:root .quote { padding: 28px; }
  html:root .quote blockquote { font-size: 21px; }
  html:root .link, html:root .gf-row a, html:root .gf-legal2 a, html:root .person-links a { min-height: 44px; }
  html:root .gf-row a, html:root .gf-legal2 a, html:root .person-links a { line-height: 44px; }
  html:root .chip, html:root .mat-tabs button { min-height: 44px; }

  /* hero (the live thread hero over the Daylight vortex) */
  html:root .hero { height: max(100svh, 640px); max-height: 1080px; padding: 0; overflow: hidden; --hS: clamp(1000px, 260vw, 2200px); }
  html:root .hero .sig-daylight { left: calc(62% - var(--hS) / 2); top: calc(36% - var(--hS) / 2); width: var(--hS); height: var(--hS); }
  html:root .hero-live { left: 0; top: 0; width: 100%; height: 100%; }
  html:root .hero-inner { left: var(--px) !important; right: var(--px) !important; bottom: calc(36px + env(safe-area-inset-bottom, 0px)); flex-direction: column; align-items: flex-start; gap: 22px; }
  html:root .hero-h { font-size: clamp(56px, 15.5vw, 132px); }
  html:root .hero-side { width: 100%; max-width: 520px; padding-bottom: 0; gap: 18px; }

  /* facts strip, backers */
  html:root .evidence { padding: 0 var(--px) 52px; }
  html:root .ev-v { font-size: clamp(40px, 5vw, 54px); }
  html:root .backers { padding: 6px var(--px) 52px; }
  html:root .backers-in { flex-direction: column; align-items: flex-start; gap: 22px; }
  html:root .backers-in .eyebrow { width: auto; }
  html:root .backers-row { width: 100%; flex-wrap: wrap; justify-content: flex-start; gap: 22px 36px; }

  /* Why Bittensor + ribbon */
  html:root .why { padding-top: 96px; }
  html:root .has-band { padding-bottom: calc(360px + 40px) !important; }
  html:root .why-grid { grid-template-columns: 1fr; }
  html:root .why-grid > .stack { grid-column: 1; }
  html:root .pnl-band { left: 0; width: 100%; height: 320px; }
  html:root .pnl-band.live { height: 360px; }

  /* what xTAO does */
  html:root .judge { grid-template-columns: 1fr; gap: 48px; }
  html:root .judge .sec-head { margin-bottom: 32px; }
  html:root .judge-r { max-width: 440px; }
  html:root .plate { width: 100%; height: auto; aspect-ratio: 520 / 760; }
  html:root .ping { left: 50%; top: 52%; }
  html:root .lines { margin-top: 48px; gap: 28px; }

  /* deck feature */
  html:root .deck-c { padding-top: 80px; padding-bottom: 80px; }
  html:root .deck-feature.compact { grid-template-columns: 1fr; gap: 40px; }
  html:root .deck-cover.sm { width: 100%; max-width: 600px; height: auto; aspect-ratio: 600 / 360; container-type: inline-size; }
  html:root .deck-cover.sm .deck-sheet { width: 95%; height: 88.9%; }
  html:root .deck-cover.sm .deck-sheet.s1 { left: 5%; top: 0; }
  html:root .deck-cover.sm .deck-sheet.s2 { left: 2.5%; top: 5.6%; }
  html:root .deck-cover.sm .deck-front { top: 11.1%; width: 95%; height: 88.9%; padding: 4.6cqw 4.9cqw; }
  html:root .deck-front img { height: max(14px, 3.4cqw); }
  html:root .deck-cover.sm .deck-t { font-size: clamp(22px, 6.33cqw, 38px); }
  html:root .deck-t small { font-size: clamp(9px, 2cqw, 12px); }

  /* figures + chart */
  html:root .perf-v { font-size: clamp(44px, 6vw, 64px); }
  html:root .tchart { height: 300px; }

  /* message from Karia */
  html:root .lead.msg, html:root .kp-msg { grid-template-columns: 1fr; gap: 40px; }
  html:root .lead.msg .h2 { font-size: clamp(34px, 4.6vw, 56px); }
  html:root .route[data-route="home"] .pg > section:has(> .lead) { padding-bottom: var(--py) !important; }

  /* materials on home, Spotlight */
  html:root .docs2 { grid-template-columns: 1fr; gap: 40px; }
  html:root .ep, html:root .ep.ep-rev { grid-template-columns: 1fr; gap: 36px; }
  html:root .ep.ep-rev .ep-frame { order: -1; }
  html:root .ep-frame { height: auto; aspect-ratio: 16 / 10; }

  /* page heads */
  html:root .phead { min-height: 560px; padding-top: calc(var(--hdr) + 96px); padding-bottom: 72px; overflow: hidden; }
  html:root .phead.compact { min-height: 460px; padding-top: calc(var(--hdr) + 72px); padding-bottom: 60px; }
  html:root .phead-art { right: 0; top: 0; width: 62%; height: 100%; }
  html:root body .phead-art.sig { width: 640px; height: 640px; margin-top: -320px; right: -220px; top: 42%; }
  html:root .phead-text { gap: 22px; }

  /* footer: centred, the Spiral rising */
  html:root .gfoot { height: auto; min-height: 500px !important; padding: 80px var(--px) calc(40px + env(safe-area-inset-bottom, 0px)) !important; gap: 48px; overflow: hidden; }
  html:root .gfoot .foot-wrap { width: 1100px; height: 1100px; left: calc(50% - 550px) !important; top: auto !important; bottom: -640px; }
  html:root .gfoot .foot-sig { width: 1100px; height: 1100px; }
  html:root .gf-row { flex-wrap: wrap; justify-content: center; gap: 0 26px; max-width: 470px; }
  html:root .gf-legal2 { flex-wrap: wrap; justify-content: center; gap: 0 22px; }
  html:root .gf-legal2 span { display: inline-flex; align-items: center; min-height: 44px; }

  /* lists */
  html:root .row { grid-template-columns: 140px minmax(0, 1fr) 120px 20px; gap: 16px; padding: 12px 0; }
  html:root .tl-row { grid-template-columns: 110px minmax(0, 1fr) 20px; }
  html:root .kvs, html:root body .glance .kvs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  html:root .cv-row { grid-template-columns: 160px minmax(0, 1fr); }

  /* investors */
  html:root .ir-grid { grid-template-columns: 1fr; gap: 48px; }
  html:root .quote-box { min-height: 0; }
  html:root .feat { grid-template-columns: 160px minmax(0, 1fr); gap: 32px; margin-bottom: 44px; }
  html:root .feat-t { font-size: clamp(28px, 4vw, 44px); }
  html:root .sub { grid-template-columns: 1fr; gap: 40px; }
  html:root .faq summary { font-size: 18px; }

  /* materials */
  html:root .mat-bar { top: var(--hdr); flex-wrap: wrap; gap: 14px; }
  html:root .mat-tabs { max-width: 100%; overflow-x: auto; scrollbar-width: none; }
  html:root .mat-tabs::-webkit-scrollbar { display: none; }
  html:root .mat-tabs button { flex-shrink: 0; white-space: nowrap; }

  /* team, Karia */
  html:root .person .portrait.real { height: auto; aspect-ratio: 433 / 420; }
  html:root .adv-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
  html:root .adv-card .portrait { height: auto; aspect-ratio: 425 / 380; }
  html:root .kp-head { padding-top: calc(var(--hdr) + 48px); padding-bottom: 80px; }
  html:root .kp-grid { grid-template-columns: 1fr; gap: 40px; }
  html:root .kp-photo { order: -1; height: auto; aspect-ratio: 4 / 4.4; max-width: 460px; }

  /* deck viewer */
  html:root .vhead { padding-top: calc(var(--hdr) + 40px); padding-bottom: 80px; }
  html:root .vhead-row { flex-wrap: wrap; gap: 16px 24px; margin-bottom: 28px; }
  html:root .vhead-meta { flex-wrap: wrap; gap: 12px 18px !important; }
  html:root .doc-title { font-size: clamp(28px, 4vw, 44px); }
  html:root .xv-wrap { width: 100%; }
  html:root .xv-bar { max-width: 100%; }
  html:root .xv-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }

  /* document reader: single column, slim toolbar, thumbnails in a pull-up sheet */
  html:root .xr { grid-template-columns: 1fr; gap: 0; }
  html:root .xr-side { position: fixed; left: 0; right: 0; bottom: 0; top: auto; z-index: 72; max-height: min(72svh, 620px); display: grid; grid-template-columns: repeat(auto-fill, minmax(96px, 1fr)); align-content: start; gap: 14px; padding: 0 16px calc(20px + env(safe-area-inset-bottom, 0px)); border-radius: 20px 20px 0 0; background: var(--bg); box-shadow: 0 -30px 80px -20px rgba(4,5,14,.6); transform: translateY(105%); visibility: hidden; transition: transform .5s cubic-bezier(.2,.7,.1,1), visibility 0s linear .5s; overflow: auto; }
  html:root .xr.sheet .xr-side { transform: none; visibility: visible; transition: transform .5s cubic-bezier(.2,.7,.1,1), visibility 0s; }
  html:root .xr-sheet-head { display: flex; grid-column: 1 / -1; position: sticky; top: 0; z-index: 1; justify-content: space-between; align-items: center; padding: 16px 0 8px; background: inherit; font-family: 'Geist Mono', ui-monospace, monospace; font-size: 12px; letter-spacing: .06em; text-transform: uppercase; color: var(--c-mut); }
  html:root .xr-sheet-head::before { content: ''; position: absolute; left: 50%; top: 6px; width: 40px; height: 4px; margin-left: -20px; border-radius: 4px; background: var(--c-line); }
  html:root .xr-scrim { display: block; position: fixed; inset: 0; z-index: 71; background: rgba(4,5,14,.5); opacity: 0; pointer-events: none; transition: opacity .4s ease; }
  html:root .xr.sheet .xr-scrim { opacity: 1; pointer-events: auto; }
  html:root .xr-pages-btn { display: inline-flex !important; }
  html:root .xr-bar { top: calc(var(--hdr) + 8px); padding: 2px 4px 2px 14px; gap: 6px; }
  html:root .xr-pages { overflow-x: auto; align-items: flex-start; gap: 16px; }
  html:root .xr-page { width: calc(100% * var(--zf, 1)); max-width: none; margin-inline: auto; flex-shrink: 0; }
  @media (hover: hover){html:root .xr-th:hover { transform: none; }}

  /* added pages */
  html:root .rel-paper { padding: 44px 40px 52px; font-size: 16px; }
  html:root .rel-side { display: none; }
  html:root .kit { grid-template-columns: 1fr; gap: 40px; }
  html:root .boiler { padding: 28px; }
  html:root .boiler p { font-size: 18px; }
  html:root .press-contact .big { font-size: 34px; }
  html:root .nf-head { min-height: 100svh; }
}

@media (max-width: 899px) {
  html:root .ev-grid { grid-template-columns: 1fr; }
  html:root .ev { padding: 22px 0; }
  html:root .ev + .ev { padding-left: 0; border-left: 0; border-top: 1px solid var(--c-line); }
}

@media (max-width: 767px) {
  :root { --py: 72px; }
  html:root .grid2, html:root .grid3, html:root .split { grid-template-columns: minmax(0, 1fr); }
  html:root .typo { min-height: 0; }
  html:root .has-band { padding-bottom: calc(280px + 32px) !important; }
  html:root .pnl-band, html:root .pnl-band.live { height: 280px; }
  html:root .perf .perf-grid { grid-template-columns: 1fr; gap: 28px; }
  html:root .lines { grid-template-columns: 1fr; gap: 22px; }
  html:root .srow { grid-template-columns: 40px minmax(0, 1fr); gap: 14px; }
  html:root .backers-row { display: grid; grid-template-columns: repeat(3, auto); justify-content: space-between; gap: 24px 20px; }
  html:root .backers-row img { height: 22px; }
  html:root .backers-row li:nth-child(2) img, html:root .backers-row li:nth-child(4) img, html:root .backers-row li:nth-child(5) img { height: 30px; }
  html:root .backers-row li:nth-child(6) img { height: 24px; }
  html:root .msg-cap { left: 16px; bottom: 14px; font-size: 11px; }
  html:root .msg-play { width: 64px; height: 64px; margin: -32px 0 0 -32px; }
  html:root .ep-play { width: 64px; height: 64px; }
  html:root .ask-row, html:root .sub-row { flex-direction: column; }
  html:root .ask-row .btn, html:root .sub-row .btn { width: 100%; justify-content: center; }
  html:root .sub-row input { flex: none; }
  html:root .phead { min-height: 0; justify-content: flex-start; padding-top: calc(var(--hdr) + 188px); }
  html:root .phead.compact { min-height: 0; padding-top: calc(var(--hdr) + 156px); }
  html:root .phead-art { width: 100%; height: min(78%, 460px); -webkit-mask-image: linear-gradient(180deg, #000 20%, transparent 100%); mask-image: linear-gradient(180deg, #000 20%, transparent 100%); opacity: .9; }
  html:root body .phead-art.sig { width: 520px; height: 520px; top: 0; margin-top: calc(var(--hdr) - 150px); right: -150px; opacity: 1; -webkit-mask-image: radial-gradient(closest-side, #000 60%, transparent 100%); mask-image: radial-gradient(closest-side, #000 60%, transparent 100%); }
  html:root .gfoot .foot-wrap { width: 900px; height: 900px; left: calc(50% - 450px) !important; bottom: -510px; }
  html:root .gfoot .foot-sig { width: 900px; height: 900px; }
  html:root .row { grid-template-columns: minmax(0, 1fr) 20px; grid-template-areas: "d a" "t a" "k a"; gap: 4px 16px; padding: 16px 0; }
  html:root .row .row-date { grid-area: d; font-size: 12px; }
  html:root .row .row-title { grid-area: t; font-size: 17px; }
  html:root .row .row-kind { grid-area: k; }
  html:root .row .arw { grid-area: a; }
  @media (hover: hover){html:root .row:hover, html:root .tl-row:hover { padding-left: 8px; }}
  html:root .tl-row { grid-template-columns: minmax(0, 1fr) 20px; grid-template-areas: "d a" "x a"; gap: 6px 16px; padding: 18px 0; font-size: 17px; }
  html:root .tl-row .tl-date { grid-area: d; }
  html:root .tl-row .tl-text { grid-area: x; }
  html:root .tl-row .arw { grid-area: a; }
  html:root .fin-row { grid-template-columns: auto auto 1fr; padding: 18px 0; }
  html:root .fin-row .fin-period { grid-column: 1 / -1; font-size: 18px; }
  html:root .cv-row { grid-template-columns: 1fr; gap: 8px; padding: 24px 0; }
  html:root .feat { grid-template-columns: 112px minmax(0, 1fr); gap: 24px; margin-bottom: 36px; }
  html:root .doc-sheet { padding: 12px 10px; gap: 6px; }
  html:root .ds-kind { font-size: 9px; }
  html:root .evt { grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "d b" "t b"; gap: 4px 16px; }
  html:root .evt .evt-date { grid-area: d; }
  html:root .evt .evt-t { grid-area: t; }
  html:root .evt > a, html:root .evt > button { grid-area: b; min-height: 44px; }
  html:root .quote-box { padding: 16px; }
  html:root .quote-head { flex-direction: column; align-items: flex-start; gap: 4px; }
  html:root .mat-bar { flex-direction: column; align-items: stretch; }
  html:root .mat-tools { width: 100%; }
  html:root .mat-q { flex: 1; width: auto; min-width: 0; font-size: 16px; }
  html:root .mat-tabs { -webkit-mask-image: linear-gradient(90deg, #000 85%, transparent); mask-image: linear-gradient(90deg, #000 85%, transparent); }
  html:root .kp-grid { gap: 32px; }
  html:root .kp-head { padding-top: calc(var(--hdr) + 24px); }
  html:root .kp-photo { max-width: 100%; }
  html:root .kit-items { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  html:root .rel-paper { padding: 28px 22px 36px; }
  html:root .rel-paper .rel-logo { margin-bottom: 28px; }
  /* deck: edge-to-edge slides, controls below, 2-column overview */
  html:root .vhead .xv-wrap { margin-left: calc(-1 * var(--px)); margin-right: calc(-1 * var(--px)); width: auto; }
  html:root .xv-stage { border-radius: 0; box-shadow: none; }
  html:root .xv-glow, html:root .xv-nav { display: none; }
  html:root .xv-bar { width: 100%; justify-content: space-between; gap: 2px; padding: 4px; margin-top: 16px; }
  html:root .xv-prog, html:root .xv-sep { display: none; }
  html:root .xv-btn { padding: 0 10px; min-height: 44px; }
  html:root .xv-strip { padding-top: 18px; gap: 10px; }
  html:root .xv-th { width: 116px; }
  html:root .xv-grid .xv-th { width: auto; }
  html:root .xv-grid { position: fixed; inset: 0; z-index: 75; border-radius: 0; padding: calc(68px + env(safe-area-inset-top, 0px)) 16px calc(24px + env(safe-area-inset-bottom, 0px)); grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; background: rgba(4,5,14,.97); }
  html[data-theme="light"] .xv-grid { background: rgba(243,240,234,.98); }
  html:root .xv-grid-close { display: inline-flex !important; position: fixed; top: calc(14px + env(safe-area-inset-top, 0px)); right: 16px; z-index: 2; background: var(--c-surf) !important; border: 1px solid var(--c-line); }
  html.xv-grid-open .gh { visibility: hidden; }
  html.xv-grid-open, html.xv-grid-open body { overflow: hidden; }
  html:root .xr-bar .zoom { min-width: 44px; }
  html:root .xr-fit { display: none !important; }
}

@media (max-width: 559px) {
  html:root .grid4, html:root .kvs, html:root body .glance .kvs { grid-template-columns: minmax(0, 1fr); }
  html:root .actions .btn { flex: 1 1 auto; justify-content: center; }
  html:root .xr-orig { display: none !important; }
  html:root .xr-bar .pg-ind { font-size: 11px; }
}
@media (max-width: 479px) {
  html:root .backers-row { grid-template-columns: repeat(2, auto); }
  html:root .adv-cards { gap: 14px; }
  html:root .adv-name { font-size: 16px; }
  html:root .adv-card .role { font-size: 13px; }
}
@media (max-width: 380px) { html:root .hero-h { font-size: 54px; } }

/* landscape phones: the deck fills the screen */
.xv.land { position: fixed; inset: 0; z-index: 70; background: #04050E; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: env(safe-area-inset-top, 0px) env(safe-area-inset-right, 0px) env(safe-area-inset-bottom, 0px) env(safe-area-inset-left, 0px); --c-fg: #F4F3FF; --c-line: rgba(244,243,255,.16); --c-surf: rgba(16,18,34,.8); --c-mut: rgba(244,243,255,.68); }
html:root .xv.land .xv-wrap { margin: 0 !important; width: min(100vw, calc(100svh * 16 / 9)) !important; }
.xv.land .xv-strip, .xv.land .xv-note { display: none; }
.xv.land .xv-bar { position: absolute; left: 50%; bottom: calc(10px + env(safe-area-inset-bottom, 0px)); transform: translateX(-50%); width: auto; margin: 0; transition: opacity .45s ease; }
.xv.land.idle .xv-bar { opacity: 0; pointer-events: none; }
html.xv-landscape, html.xv-landscape body { overflow: hidden; }
html.xv-landscape .gh { visibility: hidden; }

/* desktop never shows the phone-only reader controls */
.xr-pages-btn, .xr-sheet-head, .xr-scrim, .xv-grid-close { display: none; }

/* reader: while the Pages sheet is open, the header steps back with the page */
html:has(.route:not([hidden]) .xr.sheet) .gh { opacity: 0; pointer-events: none; transition: opacity .3s ease; }

/* ---- touch and iOS details (review, October 2026) ---- */
@media (max-width: 1023px) {
  html:root { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; -webkit-tap-highlight-color: transparent; }
  /* iOS zooms the page into any field under 16px when it gets focus */
  html:root .sub-row input, html:root .ask input, html:root .ask textarea { font-size: 16px; }
  /* tap targets: bigger hit areas, same look */
  html:root .gh-logo { display: inline-flex; align-items: center; min-height: 44px; padding: 0 8px; margin: 0 -8px; }
  html:root .gf-legal2 a { padding: 0 11px; margin: 0 -11px; }
  html:root .xv-btn { min-height: 44px; }
  html:root .evt > a, html:root .evt > button { min-height: 44px; }
  /* small print stays readable */
  html:root .msg-cap, html:root .ep-cap, html:root .xv-note { font-size: 11px; }
  html:root .xv-th span { font-size: 11px; }
  html:root .mnav-foot .btn { text-decoration: none; }
  /* short screens: the menu fits without scrolling */
  @media (max-height: 760px) {
    html:root .mnav-in { padding-top: calc(var(--hdr) + 12px); }
    html:root .mnav nav a { min-height: 44px; padding: 6px 0; font-size: clamp(28px, 5.4svh, 40px); }
    html:root .mnav-foot { padding-top: 18px; gap: 14px; }
  }
}
/* keyboard hints mean nothing on a touch screen */
@media (pointer: coarse) and (max-width: 1023px) { html:root kbd { display: none; } }
/* the deck: pinch-zoom still works on slides; buttons respond without the double-tap delay */
html:root .xv-stage { touch-action: pan-y pinch-zoom; }
html:root .xv-btn, html:root .xv-nav, html:root .gh-menu { touch-action: manipulation; }

/* the deck in landscape full screen: a way out that fades with the other controls */
.xv-land-x { display: none; }
.xv.land .xv-land-x { display: inline-flex; align-items: center; position: absolute; z-index: 2; top: calc(10px + env(safe-area-inset-top, 0px)); right: calc(12px + env(safe-area-inset-right, 0px)); transition: opacity .45s ease; }
.xv.land.idle .xv-land-x { opacity: 0; pointer-events: none; }
/* phones on their side: the hero fits the short screen, headline and button included */
@media (max-width: 1023px) and (orientation: landscape) and (max-height: 520px) {
  html:root .hero { height: max(100svh, 340px); }
  html:root .hero-h { font-size: clamp(30px, 12svh, 64px); }
  html:root .hero-inner { top: calc(var(--hdr) + 10px); justify-content: flex-end; }
  html:root .hero-side { gap: 12px; }
}
/* a release's source link stays on one line */
@media (max-width: 1023px) { html:root .rel-bar [data-rel-source] { white-space: nowrap; } }
@media (max-width: 360px) { html:root .rel-bar .pg-ind { display: none; } html:root .rel-bar { justify-content: flex-end; } }
/* light theme on phones: the spiral sits right behind the legal line, so it gets darker text and a firmer halo */
@media (max-width: 1023px) {
  html[data-theme="light"]:root .gf-legal2 { color: #2E2C38; text-shadow: 0 0 10px rgba(243,240,234,1), 0 0 22px rgba(243,240,234,.95); }
  html[data-theme="light"]:root .gf-row a { text-shadow: 0 0 10px rgba(243,240,234,1), 0 0 22px rgba(243,240,234,.9); }
}
/* phones: a quicker page sweep (timing in site/build.mjs) */
html.phone .sweep.on .sweep-band { animation-duration: .66s; }
/* grid items may shrink (Safari kept a portrait card's landscape width after rotating) */
@media (max-width: 1023px) { html:root .person, html:root .grid3 > *, html:root .grid2 > * { min-width: 0; } }
@media (max-width: 1023px) { html:root .xr-dl:not([hidden]) { display: inline-flex; } }

/* very short screens and phones on their side: the menu fits (tighter rows; two columns in landscape) */
@media (max-width: 1023px) and (max-height: 600px) {
  html:root .mnav nav a { min-height: 40px; padding: 4px 0; font-size: clamp(24px, 5.6svh, 32px); }
  html:root .mnav-foot { padding-top: 14px; gap: 10px; }
}
@media (max-width: 1023px) and (orientation: landscape) and (max-height: 520px) {
  html:root .mnav nav { display: grid; grid-template-columns: 1fr 1fr; column-gap: 40px; }
  html:root .mnav-foot { flex-direction: row; align-items: center; justify-content: space-between; }
}

/* release pages on phones: onward links after the release (the desktop side panel is hidden) */
.rel-more { display: none; }
@media (max-width: 1023px) {
  html:root .rel-more { display: flex; flex-wrap: wrap; gap: 14px 28px; margin-top: 28px; }
  /* inline text links get a 44 px tall tap area without changing the line */
  html:root a.inline { position: relative; }
  html:root a.inline::after { content: ''; position: absolute; left: -4px; right: -4px; top: -12px; bottom: -12px; }
}

/* ---- visual polish sweep (October 2026) ---- */
@media (max-width: 1023px) {
  /* Press: the latest releases stack like the other lists (the half-width column left titles 0–115 px) */
  html:root .rows-compact .row { grid-template-columns: minmax(0, 1fr) 20px; grid-template-areas: "d a" "t a"; gap: 4px 16px; padding: 16px 0; min-height: 0; }
  html:root .rows-compact .row .row-date { grid-area: d; } html:root .rows-compact .row .row-title { grid-area: t; } html:root .rows-compact .row .arw { grid-area: a; }
  html:root .xv-bar { box-sizing: border-box; }
  html:root .row .row-date { white-space: nowrap; }
  /* the deck overview covers the page fully; the strip's slide numbers would sit on the slide titles */
  html:root .xv-grid { background: var(--bg); }
  html:root .xv-strip .xv-th span { display: none; }
  html:root .mat-tabs.scrolled { -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 28px, #000 85%, transparent); mask-image: linear-gradient(90deg, transparent 0, #000 28px, #000 85%, transparent); }
}
@media (min-width: 768px) and (max-width: 1023px) { html:root .row { grid-template-columns: 168px minmax(0, 1fr) 120px 20px; } }
@media (min-width: 481px) and (max-width: 1023px) {
  html:root .backers-row { display: grid; grid-template-columns: repeat(4, auto); justify-content: space-between; }
  html:root .judge-r { margin-left: auto; margin-right: auto; }
}
@media (max-width: 767px) {
  /* even spacing in short rows (the reference's 80 px minimum stretched one-line rows) */
  html:root .row, html:root .tl-row { min-height: 0; }
}
@media (max-width: 559px) {
  /* button groups stack as full-width buttons of one size */
  html:root .actions .btn { flex: 1 1 100%; }
}
@media (max-width: 479px) {
  html:root .rel-foot { flex-direction: column; gap: 10px; }
  html:root .backers-row li:nth-child(2) img { height: 36px; }
}
@media (max-width: 399px) {
  /* the latest-release block stacks so its headline isn't squeezed into a narrow column */
  html:root .feat { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  html:root .feat-doc { max-width: 150px; }
}
@media (max-width: 359px) { html:root .h1 { font-size: 40px; } }
/* phones on their side: the intro stays off the bright centre of the art */
@media (max-width: 1023px) and (orientation: landscape) and (max-height: 520px) {
  html:root .hero-side { max-width: 420px; }
  html:root .hero .sig-daylight { left: calc(74% - var(--hS) / 2); }
}

/* the menu leaves at once when a page change swaps the page underneath (the sweep band is covering the screen) */
html.menu-instant .mnav, html.menu-instant .mnav * { transition: none !important; }
/* very short landscape phones (iPhone SE): the intro paragraph steps aside so the headline and button fit */
@media (max-width: 1023px) and (orientation: landscape) and (max-height: 340px) { html:root .hero-side p { display: none; } }
/* footer links: an even grid (four per row; two on the narrowest phones) instead of ragged wrapping */
@media (max-width: 1023px) {
  html:root .gf-row { display: grid; grid-template-columns: repeat(4, max-content); justify-content: center; justify-items: center; gap: 0 26px; max-width: none; }
}
@media (max-width: 379px) { html:root .gf-row { grid-template-columns: repeat(2, max-content); gap: 0 40px; } }
/* phone menu: a tapped link answers at once, before the page sweep arrives */
@media (max-width: 1023px) { html:root .mnav nav a:active { opacity: .55; transition: opacity 0s; } }
/* ---- footer on phones and tablets: the same pieces, stacked ---- */
@media (max-width: 1023px) {
  html:root .gfoot { padding: 64px var(--px) calc(26px + env(safe-area-inset-bottom, 0px)) !important; min-height: 0 !important; }
  html:root .gf-top { flex-direction: column; align-items: stretch; gap: 26px; }
  html:root .gf-brand { flex-direction: column; align-items: flex-start; gap: 12px; }
  html:root .gfoot .gf-row { display: grid; grid-template-columns: repeat(4, max-content); justify-content: space-between; justify-items: start; gap: 0 12px; max-width: none; }
  html:root .gfoot .gf-row .gf-deck { grid-column: 1 / -1; margin-top: 10px; height: 44px; line-height: 1; }
  html:root .gf-bottom { margin-top: 28px; padding-top: 14px; flex-wrap: wrap; row-gap: 10px; }
  html:root .gfoot .gf-legal2 { justify-content: flex-start; gap: 0 18px; flex-wrap: wrap; }
  /* three social buttons since October 12, 2026 (email beside LinkedIn and X): they move under the legal line on
     narrow phones rather than squeeze it onto two lines */
  html:root .gfoot .gf-legal2 > * { white-space: nowrap; }
  html:root .gf-social a { width: 44px; height: 44px; }
}
@media (min-width: 600px) and (max-width: 1023px) { html:root .gfoot .gf-row { grid-template-columns: repeat(4, minmax(0, 1fr)); justify-content: stretch; } }

/* One page (owner's request, October 2026): the bigger wordmark, sections under the header, the drifting partner row */
@media (max-width: 1023px) {
  html:root .gh-logo img { height: 26px; }
  html:root .route[data-route="home"] .pg > [id] { scroll-margin-top: var(--hdr); }
  html:root .bk-marquee { padding: 56px var(--px); }
  html:root .bk-marquee .backers-row { display: block; width: 100%; }
  html:root .bk-track li { margin-right: 44px; }
  html:root .bk-track li img { height: calc(var(--h) * .82) !important; }
  html:root .press-card { min-height: 0; }
  html:root .media-foot { flex-direction: column; align-items: flex-start; gap: 16px; }
  html:root .ideas-more { margin-top: 72px; }
}
@media (max-width: 1023px) {
  html:root .press-feature { grid-template-columns: minmax(0, 1fr); gap: 24px; margin-bottom: 40px; }
  html:root .press-feature-t { font-size: 22px !important; }
}

/* October 12, 2026: the sections reworked with the investor deck, on phones and tablets */
@media (max-width: 1023px) {
  html:root .ev-v.ev-sym { font-size: clamp(30px, 4.4vw, 40px) !important; }
  html:root .msg-c .msg-in { gap: 32px; }
  html:root .msg-c .h2 { font-size: clamp(34px, 4.6vw, 56px); }
  html:root .bt-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 24px; margin-top: 72px; }
  html:root .bt-f .perf-v { font-size: clamp(40px, 6vw, 56px); }
  html:root .qs { grid-template-columns: 1fr; gap: 40px; margin-top: 72px; }
  html:root .q p { font-size: clamp(19px, 2.6vw, 23px); }
  html:root .prio { margin-top: 80px; }
  html:root .prio-row { grid-template-columns: 40px minmax(0, 1fr); gap: 8px 14px; }
  html:root .prio-row .body { grid-column: 2; }
  html:root .mk-swatches { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  html:root .mk-about .kvs { grid-template-columns: 1fr; }
  html:root .kit { grid-template-columns: 1fr; gap: 40px; }
  html:root .kit-items { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  html:root .boiler { padding: 24px; }
  html:root .boiler p { font-size: 17px; }
}
@media (max-width: 559px) {
  html:root .bt-grid { grid-template-columns: 1fr; }
  html:root .mk-swatches { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* smaller copies of the art for phones and tablets (generated) */
@media (max-width: 480px){
/* xtao.co — the reference stylesheet (unchanged), then production additions and the phone/tablet layer */
:root{--j15b84d3b:url("/img/m/motifs/v2-xtao-d_funnel_portrait.webp");--jbbc65dd6:url("/img/m/motifs/v2-xtao-l_funnel.webp");--j21071c4e:url("/img/m/motifs/v2-xtao-d_field.webp");--j10ba1ab8:url("/img/m/motifs/v2-xtao-l_field.webp");--j85ac9666:url("/img/m/motifs/v2-xtao-d_braid.webp");--j6f689e15:url("/img/m/motifs/v2-xtao-l_braid.webp");--jconfd:url("/img/m/motifs/v2-xtao-d_confluence.webp");--jconfl:url("/img/m/motifs/v2-xtao-l_confluence.webp");--j17c49e4e:url("/img/m/motifs/v2-xtao-l_strands.webp");--jstrD:url("/img/m/motifs/v2-xtao-d_strands.webp");--riseD:url("/img/m/footer/xtao-d_rise.webp");--riseL:url("/img/m/footer/xtao-l_rise.webp");--tD-constellation:url("/img/m/treatments/tr_D_constellation.webp");--tL-constellation:url("/img/m/treatments/tr_L_constellation.webp");--tD-contour:url("/img/m/treatments/tr_D_contour.webp");--tL-contour:url("/img/m/treatments/tr_L_contour.webp");--pD-ala:url("/img/m/portraits/ala_quiet_d.webp");--pL-ala:url("/img/m/portraits/ala_quiet_l.webp");--pD-joseph:url("/img/m/portraits/joseph_quiet_d.webp");--pL-joseph:url("/img/m/portraits/joseph_quiet_l.webp");--pD-david:url("/img/m/portraits/david_quiet_d.webp");--pL-david:url("/img/m/portraits/david_quiet_l.webp");--pD-william:url("/img/m/portraits/william_quiet_d.webp");--pL-william:url("/img/m/portraits/william_quiet_l.webp");--pD-bill:url("/img/m/portraits/bill_quiet_d.webp");--pL-bill:url("/img/m/portraits/bill_quiet_l.webp");--pD-mike:url("/img/m/portraits/mike_quiet_d.webp");--pL-mike:url("/img/m/portraits/mike_quiet_l.webp")}
html[data-ver="v2"][data-theme="dark"] .sig-daylight,html[data-ver="v2"][data-theme="dark"]:not([data-hero="spiral"]) .sig{background-image:url("/img/m/hero/v2-hr_d_vortex_t0.webp"),url("/img/m/hero/v2-hr_d_vortex_t1.webp"),url("/img/m/hero/v2-hr_d_vortex_t2.webp"),url("/img/m/hero/v2-hr_d_vortex_t3.webp") !important}
html[data-ver="v2"][data-theme="light"] .sig-daylight,html[data-ver="v2"][data-theme="light"]:not([data-hero="spiral"]) .sig{background-image:url("/img/m/hero/v2-hr_l_vortex_t0.webp"),url("/img/m/hero/v2-hr_l_vortex_t1.webp"),url("/img/m/hero/v2-hr_l_vortex_t2.webp"),url("/img/m/hero/v2-hr_l_vortex_t3.webp") !important}
html[data-ver="v2"][data-theme="dark"] .sig-spiral,html[data-ver="v2"][data-theme="dark"][data-hero="spiral"] .sig{background-image:url("/img/m/hero/v2-hr_d_iris_t0.webp"),url("/img/hero/v2-hr_d_iris_t1.webp"),url("/img/m/hero/v2-hr_d_iris_t2.webp"),url("/img/hero/v2-hr_d_iris_t3.webp") !important}
html[data-ver="v2"][data-theme="light"] .sig-spiral,html[data-ver="v2"][data-theme="light"][data-hero="spiral"] .sig{background-image:url("/img/m/hero/v2-hr_l_iris_t0.webp"),url("/img/m/hero/v2-hr_l_iris_t1.webp"),url("/img/m/hero/v2-hr_l_iris_t2.webp"),url("/img/m/hero/v2-hr_l_iris_t3.webp") !important}
html[data-theme="dark"] .iris-sig,html[data-ver="v2"][data-theme="dark"] .hero .sig-spiral{background-image:url("/img/m/footer/hr_d_iris_t0.webp"),url("/img/m/footer/hr_d_iris_t1.webp"),url("/img/m/footer/hr_d_iris_t2.webp"),url("/img/m/footer/hr_d_iris_t3.webp") !important}
html[data-theme="light"] .iris-sig,html[data-ver="v2"][data-theme="light"] .hero .sig-spiral{background-image:url("/img/m/footer/hr_l_iris_t0.webp"),url("/img/m/footer/hr_l_iris_t1.webp"),url("/img/m/footer/hr_l_iris_t2.webp"),url("/img/m/footer/hr_l_iris_t3.webp") !important}
html[data-ver="v2"][data-theme="dark"] .hero .sig-daylight{background-image:url("/img/m/hero/ref-daylight_d_t0.webp"),url("/img/m/hero/ref-daylight_d_t1.webp"),url("/img/m/hero/ref-daylight_d_t2.webp"),url("/img/m/hero/ref-daylight_d_t3.webp") !important}
html[data-ver="v2"][data-theme="light"] .hero .sig-daylight{background-image:url("/img/m/hero/ref-daylight_l_t0.webp"),url("/img/m/hero/ref-daylight_l_t1.webp"),url("/img/m/hero/ref-daylight_l_t2.webp"),url("/img/m/hero/ref-daylight_l_t3.webp") !important}
}
@media (max-width: 480px) and (min-resolution: 2.5dppx), (max-width: 480px) and (-webkit-min-device-pixel-ratio: 2.5){
/* xtao.co — the reference stylesheet (unchanged), then production additions and the phone/tablet layer */
:root{--j15b84d3b:url("/img/motifs/v2-xtao-d_funnel_portrait.webp");--jbbc65dd6:url("/img/motifs/v2-xtao-l_funnel.webp");--j21071c4e:url("/img/motifs/v2-xtao-d_field.webp");--j10ba1ab8:url("/img/motifs/v2-xtao-l_field.webp");--j85ac9666:url("/img/motifs/v2-xtao-d_braid.webp");--j6f689e15:url("/img/motifs/v2-xtao-l_braid.webp");--jconfd:url("/img/r/motifs/v2-xtao-d_confluence.webp");--jconfl:url("/img/r/motifs/v2-xtao-l_confluence.webp");--j17c49e4e:url("/img/r/motifs/v2-xtao-l_strands.webp");--jstrD:url("/img/r/motifs/v2-xtao-d_strands.webp");--riseD:url("/img/footer/xtao-d_rise.webp");--riseL:url("/img/r/footer/xtao-l_rise.webp");--tD-constellation:url("/img/treatments/tr_D_constellation.webp");--tL-constellation:url("/img/treatments/tr_L_constellation.webp");--tD-contour:url("/img/treatments/tr_D_contour.webp");--tL-contour:url("/img/treatments/tr_L_contour.webp");--pD-ala:url("/img/r/portraits/ala_quiet_d.webp");--pL-ala:url("/img/r/portraits/ala_quiet_l.webp");--pD-joseph:url("/img/r/portraits/joseph_quiet_d.webp");--pL-joseph:url("/img/r/portraits/joseph_quiet_l.webp");--pD-david:url("/img/r/portraits/david_quiet_d.webp");--pL-david:url("/img/r/portraits/david_quiet_l.webp");--pD-william:url("/img/r/portraits/william_quiet_d.webp");--pL-william:url("/img/r/portraits/william_quiet_l.webp");--pD-bill:url("/img/r/portraits/bill_quiet_d.webp");--pL-bill:url("/img/r/portraits/bill_quiet_l.webp");--pD-mike:url("/img/r/portraits/mike_quiet_d.webp");--pL-mike:url("/img/r/portraits/mike_quiet_l.webp")}
html[data-ver="v2"][data-theme="dark"] .sig-daylight,html[data-ver="v2"][data-theme="dark"]:not([data-hero="spiral"]) .sig{background-image:url("/img/r/hero/v2-hr_d_vortex_t0.webp"),url("/img/r/hero/v2-hr_d_vortex_t1.webp"),url("/img/r/hero/v2-hr_d_vortex_t2.webp"),url("/img/r/hero/v2-hr_d_vortex_t3.webp") !important}
html[data-ver="v2"][data-theme="light"] .sig-daylight,html[data-ver="v2"][data-theme="light"]:not([data-hero="spiral"]) .sig{background-image:url("/img/r/hero/v2-hr_l_vortex_t0.webp"),url("/img/r/hero/v2-hr_l_vortex_t1.webp"),url("/img/r/hero/v2-hr_l_vortex_t2.webp"),url("/img/r/hero/v2-hr_l_vortex_t3.webp") !important}
html[data-ver="v2"][data-theme="dark"] .sig-spiral,html[data-ver="v2"][data-theme="dark"][data-hero="spiral"] .sig{background-image:url("/img/r/hero/v2-hr_d_iris_t0.webp"),url("/img/hero/v2-hr_d_iris_t1.webp"),url("/img/r/hero/v2-hr_d_iris_t2.webp"),url("/img/hero/v2-hr_d_iris_t3.webp") !important}
html[data-ver="v2"][data-theme="light"] .sig-spiral,html[data-ver="v2"][data-theme="light"][data-hero="spiral"] .sig{background-image:url("/img/hero/v2-hr_l_iris_t0.webp"),url("/img/hero/v2-hr_l_iris_t1.webp"),url("/img/hero/v2-hr_l_iris_t2.webp"),url("/img/r/hero/v2-hr_l_iris_t3.webp") !important}
html[data-theme="dark"] .iris-sig,html[data-ver="v2"][data-theme="dark"] .hero .sig-spiral{background-image:url("/img/r/footer/hr_d_iris_t0.webp"),url("/img/r/footer/hr_d_iris_t1.webp"),url("/img/r/footer/hr_d_iris_t2.webp"),url("/img/r/footer/hr_d_iris_t3.webp") !important}
html[data-theme="light"] .iris-sig,html[data-ver="v2"][data-theme="light"] .hero .sig-spiral{background-image:url("/img/r/footer/hr_l_iris_t0.webp"),url("/img/r/footer/hr_l_iris_t1.webp"),url("/img/r/footer/hr_l_iris_t2.webp"),url("/img/r/footer/hr_l_iris_t3.webp") !important}
html[data-ver="v2"][data-theme="dark"] .hero .sig-daylight{background-image:url("/img/r/hero/ref-daylight_d_t0.webp"),url("/img/r/hero/ref-daylight_d_t1.webp"),url("/img/r/hero/ref-daylight_d_t2.webp"),url("/img/r/hero/ref-daylight_d_t3.webp") !important}
html[data-ver="v2"][data-theme="light"] .hero .sig-daylight{background-image:url("/img/r/hero/ref-daylight_l_t0.webp"),url("/img/r/hero/ref-daylight_l_t1.webp"),url("/img/r/hero/ref-daylight_l_t2.webp"),url("/img/r/hero/ref-daylight_l_t3.webp") !important}
}
@media (min-width: 481px) and (max-width: 1023px){
/* xtao.co — the reference stylesheet (unchanged), then production additions and the phone/tablet layer */
:root{--j15b84d3b:url("/img/t/motifs/v2-xtao-d_funnel_portrait.webp");--jbbc65dd6:url("/img/t/motifs/v2-xtao-l_funnel.webp");--j21071c4e:url("/img/t/motifs/v2-xtao-d_field.webp");--j10ba1ab8:url("/img/t/motifs/v2-xtao-l_field.webp");--j85ac9666:url("/img/t/motifs/v2-xtao-d_braid.webp");--j6f689e15:url("/img/t/motifs/v2-xtao-l_braid.webp");--jconfd:url("/img/t/motifs/v2-xtao-d_confluence.webp");--jconfl:url("/img/t/motifs/v2-xtao-l_confluence.webp");--riseD:url("/img/t/footer/xtao-d_rise.webp");--riseL:url("/img/t/footer/xtao-l_rise.webp");--tD-constellation:url("/img/t/treatments/tr_D_constellation.webp");--tL-constellation:url("/img/t/treatments/tr_L_constellation.webp");--tD-contour:url("/img/t/treatments/tr_D_contour.webp");--tL-contour:url("/img/t/treatments/tr_L_contour.webp");--pD-william:url("/img/t/portraits/william_quiet_d.webp")}
html[data-ver="v2"][data-theme="dark"] .sig-daylight,html[data-ver="v2"][data-theme="dark"]:not([data-hero="spiral"]) .sig{background-image:url("/img/t/hero/v2-hr_d_vortex_t0.webp"),url("/img/t/hero/v2-hr_d_vortex_t1.webp"),url("/img/t/hero/v2-hr_d_vortex_t2.webp"),url("/img/t/hero/v2-hr_d_vortex_t3.webp") !important}
html[data-ver="v2"][data-theme="light"] .sig-daylight,html[data-ver="v2"][data-theme="light"]:not([data-hero="spiral"]) .sig{background-image:url("/img/t/hero/v2-hr_l_vortex_t0.webp"),url("/img/t/hero/v2-hr_l_vortex_t1.webp"),url("/img/t/hero/v2-hr_l_vortex_t2.webp"),url("/img/t/hero/v2-hr_l_vortex_t3.webp") !important}
html[data-ver="v2"][data-theme="dark"] .sig-spiral,html[data-ver="v2"][data-theme="dark"][data-hero="spiral"] .sig{background-image:url("/img/t/hero/v2-hr_d_iris_t0.webp"),url("/img/hero/v2-hr_d_iris_t1.webp"),url("/img/t/hero/v2-hr_d_iris_t2.webp"),url("/img/hero/v2-hr_d_iris_t3.webp") !important}
html[data-ver="v2"][data-theme="light"] .sig-spiral,html[data-ver="v2"][data-theme="light"][data-hero="spiral"] .sig{background-image:url("/img/t/hero/v2-hr_l_iris_t0.webp"),url("/img/t/hero/v2-hr_l_iris_t1.webp"),url("/img/t/hero/v2-hr_l_iris_t2.webp"),url("/img/t/hero/v2-hr_l_iris_t3.webp") !important}
html[data-theme="dark"] .iris-sig,html[data-ver="v2"][data-theme="dark"] .hero .sig-spiral{background-image:url("/img/t/footer/hr_d_iris_t0.webp"),url("/img/t/footer/hr_d_iris_t1.webp"),url("/img/t/footer/hr_d_iris_t2.webp"),url("/img/t/footer/hr_d_iris_t3.webp") !important}
html[data-theme="light"] .iris-sig,html[data-ver="v2"][data-theme="light"] .hero .sig-spiral{background-image:url("/img/t/footer/hr_l_iris_t0.webp"),url("/img/t/footer/hr_l_iris_t1.webp"),url("/img/t/footer/hr_l_iris_t2.webp"),url("/img/t/footer/hr_l_iris_t3.webp") !important}
html[data-ver="v2"][data-theme="dark"] .hero .sig-daylight{background-image:url("/img/t/hero/ref-daylight_d_t0.webp"),url("/img/t/hero/ref-daylight_d_t1.webp"),url("/img/t/hero/ref-daylight_d_t2.webp"),url("/img/t/hero/ref-daylight_d_t3.webp") !important}
html[data-ver="v2"][data-theme="light"] .hero .sig-daylight{background-image:url("/img/t/hero/ref-daylight_l_t0.webp"),url("/img/t/hero/ref-daylight_l_t1.webp"),url("/img/t/hero/ref-daylight_l_t2.webp"),url("/img/t/hero/ref-daylight_l_t3.webp") !important}
}