/* ==========================================================================
   VLGE site · default page layouts in the deck's style
   Every selector here is a class the live page already uses. A direction
   overrides layout and motion on top of these; it never needs new markup.
   ========================================================================== */

/* ---------- shared section grammar ---------- */
main>section,body>section,.info,.press{padding-block:var(--sec)}
.sechead{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap);align-items:end;margin-bottom:clamp(36px,5vw,72px)}
.sechead__l{grid-column:1/span 6;display:flex;flex-direction:column;gap:22px}
.sechead__r{grid-column:8/span 5}
.sechead__r p{font-size:var(--t-small);line-height:1.62}
.sechead__r p+p{margin-top:14px}
section>.u-kicker,.wrap>.u-kicker,[class$="__head"]>.u-kicker,.lead .u-kicker{margin-bottom:22px}
[class$="__head"]>p:not(.u-kicker){margin-top:20px;max-width:46em}
.close{text-align:left}
.close h2{font-size:var(--t-h1);max-width:16em}
.close .row{margin-top:40px}

/* ---------- HOME ---------- */
.pg-home .scene{height:100svh;min-height:620px;position:relative}
.pg-home .pin{position:absolute;inset:0;overflow:hidden}
.pg-home .layer{position:absolute;inset:0}
.pg-home #fx{position:absolute;inset:0;width:100%;height:100%;z-index:1}
.pg-home .paper-fade{position:absolute;inset:0;z-index:2;pointer-events:none;
  background:linear-gradient(98deg,var(--bg) 6%,color-mix(in srgb,var(--bg) 72%,transparent) 30%,transparent 58%),linear-gradient(0deg,var(--bg),transparent 26%),linear-gradient(180deg,color-mix(in srgb,var(--bg) 82%,transparent),transparent 30%)}
.pg-home .kick{position:absolute;z-index:6;left:var(--m);top:calc(var(--nav-h) + clamp(28px,6vh,72px))}
.pg-home .sessions{position:absolute;z-index:6;right:var(--m);top:calc(var(--nav-h) + clamp(22px,5.4vh,66px));text-align:right}
.sessions__n{font-size:clamp(24px,2.2vw,36px);font-weight:500;font-variation-settings:"wdth" 112;letter-spacing:-.01em;color:var(--ink);font-variant-numeric:tabular-nums}
.sessions__l{font-family:var(--f-mono);font-size:var(--t-label);letter-spacing:.1em;color:var(--ink-2);margin-top:6px}
.pg-home .hero-copy{position:absolute;z-index:6;left:var(--m);right:var(--m);bottom:clamp(56px,11vh,120px);max-width:min(11.6em,92vw);font-size:var(--t-display)}
.pg-home .hero-copy h1{font-size:1em;line-height:.98;font-variation-settings:"wdth" 112;letter-spacing:-.03em}
.pg-home .hero-copy p{font-size:var(--t-lede);margin-top:26px;color:var(--ink-2)}
.pg-home .hero-copy p .hl{color:var(--lilac);font-weight:600}
.pg-home .hint{position:absolute;z-index:6;right:var(--m);bottom:clamp(56px,11vh,120px);display:flex;align-items:center;gap:10px;font-family:var(--f-mono);font-size:var(--t-label);letter-spacing:.08em;color:var(--ink-2);transition:opacity .6s}
.hint .ring{width:11px;height:11px;border:1.5px solid var(--lilac);border-radius:50%}
.scrollcue{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);z-index:20;font-family:var(--f-mono);font-size:var(--t-label);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);transition:opacity .4s;pointer-events:none}
.pg-home .info-inner{max-width:calc(var(--maxw) + 2*var(--m));margin:0 auto;padding-inline:var(--m)}
.info-head{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap);align-items:start}
.info-head>div:first-child{grid-column:1/span 6;display:flex;flex-direction:column;gap:20px}
.info-head__media{grid-column:8/span 5;position:sticky;top:calc(var(--nav-h) + 40px)}
.pronounce{display:flex;align-items:baseline;gap:14px;font-family:var(--f-mono);font-size:14px;color:var(--ink-2)}
.pronounce .pw{font-family:var(--f-sans);font-size:26px;font-weight:500;font-variation-settings:"wdth" 110;color:var(--ink)}
.pronounce .ipa{font-family:var(--f-math);font-size:19px;font-style:italic;color:var(--ink-2)}
.pronounce .say{color:var(--lilac)}
.info h2.lede{font-size:var(--t-h2);line-height:1.06;color:var(--ink);max-width:none;margin-block:8px 10px}
p.manifesto{font-size:var(--t-body);line-height:1.66;max-width:38em}
.pillars{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gap);margin-top:clamp(64px,9vw,128px)}
.pillar{border-top:1px solid var(--line-2);padding-top:22px}
.pillar h3{font-size:var(--t-h3);margin-bottom:14px}
.pillar h3 a{display:inline-flex;gap:8px;transition:color .2s}
.pillar h3 a:hover{color:var(--lilac)}
.pillar p{font-size:var(--t-small);line-height:1.6}
.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap);margin-top:clamp(64px,9vw,128px);border-top:1px solid var(--line);padding-top:clamp(28px,3vw,44px)}
.stat .n{display:block;font-size:clamp(56px,8vw,140px);line-height:.92;font-weight:400;font-variation-settings:"wdth" 112;letter-spacing:-.04em;color:var(--ink);font-variant-numeric:tabular-nums}
.stat .l{display:block;margin-top:14px;font-family:var(--f-mono);font-size:var(--t-label);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2)}
.stats-note{margin-top:22px;font-family:var(--f-mono);font-size:var(--t-label);letter-spacing:.1em;color:var(--ink-3)}
.domains{display:flex;flex-wrap:wrap;gap:12px;margin-top:36px}
.domains a{border:1px solid var(--line-3);border-radius:999px;padding:12px 18px 11px;color:var(--ink);transition:background .25s,border-color .25s,color .25s}
.domains a:hover{border-color:var(--lilac);color:var(--lilac-hi)}
.domains a[style]{background:var(--bone);color:var(--on-bone)!important;border-color:var(--bone)!important}
.press{border-top:1px solid var(--line)}
.press__wrap{max-width:calc(var(--maxw) + 2*var(--m));margin:0 auto;padding-inline:var(--m);display:flex;flex-direction:column;gap:28px}
.press__l{font-family:var(--f-mono);font-size:var(--t-label);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3)}
.press__row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:28px 40px}
.press__row img{height:22px;width:auto;opacity:.62;transition:opacity .25s}
.tone-dark .press__row img{filter:invert(1) grayscale(1) brightness(1.4)}
.press__row img:hover{opacity:1}

/* ---------- BENCHMARKS ---------- */
.pg-benchmarks .hero{padding-top:calc(var(--nav-h) + clamp(80px,16vh,180px))}
.pg-benchmarks .hero h1{font-size:var(--t-display);margin-top:26px;max-width:12em}
.pg-benchmarks .hero .lede{margin-top:30px}
.pg-benchmarks .hero .lede em{color:var(--lilac)}
.ask{text-align:center}
.m-eval{position:relative;width:min(1120px,100%);height:clamp(200px,24vw,330px);margin:clamp(40px,5vw,72px) auto 0}
.m-eval canvas{position:absolute;inset:0;width:100%;height:100%}
.m-eval--frame{border:1px solid var(--line-2);border-radius:20px;background:var(--bg-2);padding:0;overflow:hidden}
.m-eval--frame canvas{inset:18px 24px;width:calc(100% - 48px);height:calc(100% - 36px)}
.ask .wrap p{font-size:var(--t-h2);line-height:1.08;font-weight:500;font-variation-settings:"wdth" 110;letter-spacing:-.02em;color:var(--ink);max-width:18em;margin-inline:auto;text-wrap:balance}
.diagram__head{max-width:56em;margin-bottom:clamp(32px,4vw,56px)}
.diagram__head h2 span{display:block}
.diagram__frame{border:1px solid var(--line);border-radius:18px;padding:clamp(16px,3vw,40px);background:var(--card);overflow-x:auto}
.bmd{width:100%;height:auto;min-width:660px}
.bmd-box{fill:var(--bg-2);stroke:var(--line-3);stroke-width:1.2}
.bmd-h{font-family:var(--f-sans);font-weight:500;font-size:21px;fill:var(--ink);font-variation-settings:"wdth" 106}
.bmd-f{font-family:var(--f-sans);font-size:18px;fill:var(--ink-2)}
.bmd-k{font-family:var(--f-mono);font-size:13px;fill:var(--ink-2)}
.bmd-strong{font-family:var(--f-mono);font-size:13px;font-weight:600;fill:var(--lilac)}
.bmd-dim{font-family:var(--f-mono);font-size:13px;fill:var(--orange)}
.bmd-cap{font-family:var(--f-mono);font-size:11px;letter-spacing:.06em;fill:var(--ink-2)}
.bmd-cap:last-of-type{font-family:var(--f-math);font-style:italic;font-size:16px;letter-spacing:0;fill:var(--ink)}
.bmd-lbl{font-family:var(--f-mono);font-size:12px;letter-spacing:.08em;fill:var(--orange)}
.bmd-ln{fill:none;stroke:var(--lilac);stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round}
.bmd-ln--dim{stroke:var(--orange);stroke-dasharray:5 4}
.bmd-curve{fill:var(--lilac-a12);stroke:var(--lilac);stroke-width:2}
.bmd-curve--dim{fill:var(--orange-a12);stroke:var(--orange);stroke-dasharray:5 4}
.bmd-base{stroke:var(--line-3);stroke-width:1}
#bmd-ah path{fill:var(--lilac)}
#bmd-ah-dim path{fill:var(--orange)}
.bmd-anim .bmd-box{opacity:0;transform:translateY(10px);transform-box:fill-box;transition:opacity .6s var(--ease) var(--bd,0s),transform .8s var(--ease) var(--bd,0s)}
.bmd-anim .bmd-text{opacity:0;transition:opacity .5s var(--ease) .25s}
.bmd-anim .bmd-draw{stroke-dasharray:var(--len);stroke-dashoffset:var(--len);transition:stroke-dashoffset 1.2s var(--ease-io) var(--bd,0s)}
.bmd-anim .bmd-fade{opacity:0;transition:opacity .7s var(--ease) var(--bd,0s)}
.bmd-anim .bmd-fill{fill-opacity:0}
.bmd-anim .bmd-draw.bmd-fill{transition:stroke-dashoffset 1.2s var(--ease-io) var(--bd,0s),fill-opacity .8s ease calc(var(--bd,0s) + .9s)}
.bmd-anim .bmd-fade.bmd-fill{transition:opacity .7s var(--ease) var(--bd,0s),fill-opacity .8s ease calc(var(--bd,0s) + .5s)}
.bmd-anim .bmd-grow{transform:scaleX(0);transform-box:fill-box;transform-origin:left center;transition:transform 1s var(--ease-io) var(--bd,0s)}
.bmd-anim .bmd-open{transform:scaleX(0);transform-box:fill-box;transform-origin:center;transition:transform .8s var(--ease-io) var(--bd,0s)}
.bmd-anim.is-on .bmd-box,.bmd-anim.is-on .bmd-text,.bmd-anim.is-on .bmd-fade{opacity:1;transform:none}
.bmd-anim.is-on .bmd-draw{stroke-dashoffset:0}
.bmd-anim.is-on .bmd-fill{fill-opacity:1}
.bmd-anim.is-on .bmd-grow,.bmd-anim.is-on .bmd-open{transform:none}
.bmd-packet{fill:var(--orange);opacity:0;transition:opacity .4s ease}
.bmd-packet-halo{fill:var(--orange);opacity:0;fill-opacity:.18;transition:opacity .4s ease}
.diagram__note{margin-top:18px;font-family:var(--f-mono);font-size:var(--t-label);letter-spacing:.06em;color:var(--ink-2)}

/* ---------- REAL ESTATE ---------- */
.pg-real-estate .intro{padding-top:calc(var(--nav-h) + clamp(80px,16vh,180px))}
.pg-real-estate .intro h1{font-size:var(--t-display);margin-top:26px;max-width:13em}
.pg-real-estate .intro .lede{margin-top:30px}
.how h2{max-width:22em;margin-bottom:clamp(36px,5vw,64px)}
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap)}
.step .media{aspect-ratio:4/3;border-radius:12px;background-size:cover;background-position:center;margin-bottom:22px;background-color:var(--bg-3)}
.step .n,.ic .v,.mod .k,.steps__no,.use__no,.item__meta,.app .tag,.dstream .no,.dcard summary>span,.bench__grid span,.layers span{font-family:var(--f-mono);font-size:var(--t-label);letter-spacing:.12em;text-transform:uppercase;color:var(--lilac)}
.step h3{margin:10px 0 12px}
.step p{font-size:var(--t-small)}
.pf__row{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap);align-items:center}
.pf__copy{grid-column:1/span 5;display:flex;flex-direction:column;gap:22px}
.pf__viz{grid-column:7/span 6;border-radius:16px;overflow:hidden;background:var(--bg-3)}
.pf__viz video{width:100%;height:auto}
.pf__note{font-family:var(--f-mono);font-size:var(--t-label);letter-spacing:.06em;color:var(--ink-2)}
.impact h2{max-width:20em;margin-bottom:clamp(36px,5vw,64px)}
.impact__split{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap);align-items:stretch}
.impact__viz{grid-column:1/span 6;position:relative;border-radius:16px;overflow:hidden;min-height:420px;background:var(--bg-2);border:1px solid var(--line)}
.impact__viz canvas{position:absolute;inset:0;width:100%;height:100%}
.vtag{position:absolute;left:16px;bottom:14px;font-family:var(--f-mono);font-size:var(--t-label);letter-spacing:.08em;color:var(--ink-2)}
.impact__grid{grid-column:7/span 6;display:grid;grid-template-columns:1fr 1fr;gap:var(--gap)}
.ic{border-top:1px solid var(--line-2);padding-top:18px}
.ic h4{margin:10px 0 8px}
.ic p{font-size:var(--t-small)}
.ic .spark{margin-top:14px;height:34px}
.ic .spark svg{width:100%;height:100%}
.ic .spark path,.ic .spark polyline{stroke:var(--lilac);fill:none}
.data .lead{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap);align-items:end;margin-bottom:clamp(36px,5vw,64px)}
.data .lead>div{grid-column:1/span 6}
.data .lead>p{grid-column:8/span 5;font-size:var(--t-small)}
.data__split{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap)}
.mods{grid-column:1/span 6;display:grid;grid-template-columns:1fr 1fr;gap:var(--gap)}
.mod{border-top:1px solid var(--line-2);padding-top:18px}
.mod .hd{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:10px}
.mod .k span{color:var(--ink-3)}
.mod p{font-size:var(--t-small)}
.mod .sig{margin-top:12px;height:30px}
.mod .sig svg{width:100%;height:100%}
.trailplan{grid-column:7/span 6;border-radius:16px;overflow:hidden;border:1px solid var(--line);background:var(--bg-2);display:flex;flex-direction:column}
.tp__cv{position:relative;flex:1;min-height:360px}
.tp__cv canvas{position:absolute;inset:0;width:100%;height:100%}
.fp{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}
.fp>span{padding:14px 16px;display:flex;flex-direction:column;gap:6px;border-left:1px solid var(--line)}
.fp>span:first-child{border-left:0}
.fp .k{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}
.fp .v{font-size:20px;font-weight:500;font-variation-settings:"wdth" 110;color:var(--ink);font-variant-numeric:tabular-nums}

/* ---------- RETAIL ---------- */
.pg-retail .hero{padding-top:calc(var(--nav-h) + clamp(80px,16vh,180px))}
.pg-retail .hero h1{font-size:var(--t-display);margin-top:26px;max-width:14em}
.pg-retail .hero .lede{margin-top:30px}
.pg-retail .hero .lede--sub{font-size:var(--t-body);margin-top:14px;color:var(--ink-2)}
.field__grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;border-radius:14px;overflow:hidden}
.field__hint{margin-top:16px;font-family:var(--f-mono);font-size:var(--t-label);letter-spacing:.06em;color:var(--ink-2)}
.sec__head{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap);align-items:end;margin-bottom:clamp(36px,5vw,64px)}
.sec__head>div{grid-column:1/span 6;display:flex;flex-direction:column;gap:22px}
.sec__head>p{grid-column:8/span 5;font-size:var(--t-small)}
.sec__head--solo h2{grid-column:1/-1;max-width:18em}
.pg-retail .steps article{border-top:1px solid var(--line-2);padding-top:20px}
.pg-retail .steps h3{margin:12px 0}
.pg-retail .steps p:not(.steps__no){font-size:var(--t-small)}
.uses{display:flex;flex-direction:column;gap:clamp(48px,7vw,96px)}
.use{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap);border-top:1px solid var(--line-2);padding-top:28px}
.use__head{grid-column:1/span 5;display:flex;flex-direction:column;gap:14px}
.use__head h3{font-size:var(--t-h2)}
.use__lede{font-size:var(--t-lede);color:var(--ink);line-height:1.4}
.use__tag{font-family:var(--f-mono);font-size:var(--t-label);letter-spacing:.08em;color:var(--orange)}
.use__body{grid-column:7/span 6;display:flex;flex-direction:column;gap:16px}
.use__open{color:var(--ink);font-weight:500}
.use__body .chips{margin-top:8px}
.behavioral-viz{border-radius:16px;overflow:hidden;border:1px solid var(--line)}
.behavioral-viz img{width:100%}
.behavioral-viz figcaption{padding:12px 16px;font-family:var(--f-mono);font-size:var(--t-label);letter-spacing:.06em;color:var(--ink-2)}
.tmnl__lead{font-size:var(--t-h2);line-height:1.08;font-weight:500;font-variation-settings:"wdth" 108;letter-spacing:-.02em;color:var(--ink);max-width:20em;margin:22px 0 clamp(36px,5vw,64px)}
.tmnl__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap)}
.tcard{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:26px;display:flex;flex-direction:column;justify-content:space-between;gap:28px}
.tcard--lead{grid-column:span 2;grid-row:span 2}
.tcard q{quotes:none;font-size:var(--t-small);line-height:1.6;color:var(--ink)}
.tcard--lead q{font-size:var(--t-lede);line-height:1.45}
.tcard__foot{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}
.tcard__who{font-size:14px;color:var(--ink-2);line-height:1.45}
.tcard__name{display:block;color:var(--ink);font-weight:500}
.tcard__role{display:block;font-family:var(--f-mono);font-size:11px;letter-spacing:.04em;margin-top:4px}
.tcard__logo img{height:20px;width:auto;opacity:.7}
.tone-dark .tcard__logo img{filter:invert(1) grayscale(1) brightness(1.5)}

/* ---------- EVENTS: four events, one screen ---------- */
.pg-events main{max-width:calc(var(--maxw) + 2*var(--m));margin:0 auto;padding:calc(var(--nav-h) + clamp(48px,9vh,110px)) var(--m) var(--sec);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.4vw,20px);align-items:start}
.pg-events .card{display:flex;flex-direction:column;gap:14px;transition:transform .5s var(--ease)}
.pg-events .card:hover{transform:translateY(-3px)}
.card__media{aspect-ratio:4/5;border-radius:14px;overflow:hidden;background:var(--bg-3);display:grid;place-items:center;border:1px solid var(--line)}
.card__media>img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.pg-events .card:hover .card__media>img{transform:scale(1.03)}
.card__logo img{width:min(160px,60%);height:auto}
.tone-dark .card__logo img{filter:invert(1)}
.card__name{font-size:17px;line-height:1.3;font-weight:500;font-variation-settings:"wdth" 104;color:var(--ink)}
@media (max-width:1000px){.pg-events main{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ---------- SALON ---------- */
.salon__top{position:fixed;top:0;left:0;right:0;z-index:80;height:var(--nav-h);display:flex;align-items:center;justify-content:space-between;padding:0 var(--m);background:var(--scrim);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--line)}
.salon__logo{height:19px;width:auto}
.tone-dark .salon__logo{filter:invert(1) brightness(1.6)}
.salon__crumb{color:var(--ink-2)}
.salon__hero{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap);padding:calc(var(--nav-h) + clamp(64px,12vh,140px)) var(--m) var(--sec);max-width:calc(var(--maxw) + 2*var(--m));margin:0 auto;align-items:start}
.salon__copy{grid-column:1/span 6;display:flex;flex-direction:column;gap:18px}
.salon__copy h1{font-size:var(--t-display);margin-bottom:10px}
.salon__lede{font-size:var(--t-lede);color:var(--ink)}
.salon__mail{color:var(--lilac);border-bottom:1px solid var(--lilac-a35)}
.salon__thanks{font-family:var(--f-mono);font-size:var(--t-label);letter-spacing:.06em;color:var(--ink-3);margin-top:12px}
.salon__image{grid-column:8/span 5;border-radius:16px;overflow:hidden;position:sticky;top:calc(var(--nav-h) + 32px)}
.salon__image video{width:100%;height:auto}
.salon__gallery{columns:4 260px;column-gap:var(--gap);padding:0 var(--m) var(--sec);max-width:calc(var(--maxw) + 2*var(--m));margin:0 auto}
.salon__gallery img{width:100%;border-radius:10px;margin-bottom:var(--gap);break-inside:avoid}

/* ---------- NEWS ---------- */
.pg-news .news{max-width:calc(var(--maxw) + 2*var(--m));margin:0 auto;padding:calc(var(--nav-h) + clamp(64px,12vh,140px)) var(--m) var(--sec)}
.news__title{font-size:var(--t-display);margin-bottom:clamp(40px,6vw,88px)}
.news__list{display:flex;flex-direction:column}
.item{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap);padding-block:clamp(28px,4vw,48px);border-top:1px solid var(--line-2)}
.item__media{grid-column:1/span 4;border-radius:12px;overflow:hidden;aspect-ratio:16/10;background:var(--bg-3)}
.item__media img{width:100%;height:100%;object-fit:cover}
.item__lockup{height:100%;display:flex;align-items:center;justify-content:center;gap:18px}
.item__lockup img{height:28px;width:auto}
.tone-dark .item__lockup img{filter:invert(1) brightness(1.5)}
.item__lockup .x{font-size:22px;color:var(--ink-3)}
.item__copy{grid-column:6/span 7;display:flex;flex-direction:column;gap:14px}
.item__meta .dot{margin:0 6px;color:var(--ink-3)}
.item__head{font-size:clamp(22px,2vw,32px);line-height:1.15;font-weight:500;font-variation-settings:"wdth" 106;letter-spacing:-.012em;color:var(--ink)}
.item__head strong{font-weight:500;color:var(--lilac)}
.item__topics{font-family:var(--f-mono);font-size:var(--t-label);letter-spacing:.06em;color:var(--ink-2)}
.item__intro{font-size:var(--t-small)}
.item__cta{align-self:flex-start;margin-top:6px}

/* ---------- ABOUT ---------- */
.pg-about .hero{height:88svh;min-height:560px;position:relative;overflow:hidden}
.pg-about .hero #fx{position:absolute;inset:0;width:100%;height:100%}
.pg-about .hero .paper-fade{position:absolute;inset:0;background:linear-gradient(0deg,var(--bg),transparent 40%),linear-gradient(90deg,var(--bg) 6%,color-mix(in srgb,var(--bg) 78%,transparent) 36%,transparent 62%);pointer-events:none;z-index:1}
.pg-about .hero-copy{z-index:2}
.pg-about .hero-copy{position:absolute;left:var(--m);right:var(--m);bottom:clamp(56px,10vh,110px);max-width:15em;font-size:var(--t-display);display:flex;flex-direction:column;gap:26px}
.pg-about .hero-copy h1{font-size:1em;line-height:.98;font-variation-settings:"wdth" 112}
.bigvision__wrap,.manifesto__wrap,.closing__wrap{max-width:calc(var(--maxw) + 2*var(--m));margin:0 auto;padding-inline:var(--m)}
.bigvision__wrap{display:flex;flex-direction:column;gap:26px}
.bigvision__lede{font-size:var(--t-h1);max-width:12em}
.bigvision__body{font-size:var(--t-lede);line-height:1.5;max-width:36em;color:var(--ink-2)}
.manifesto__wrap{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap)}
.prose{grid-column:1/span 7;display:flex;flex-direction:column;gap:20px}
.prose p{font-size:var(--t-body);line-height:1.7;max-width:40em}
.glance{grid-column:9/span 4;display:flex;flex-direction:column;gap:30px;position:sticky;top:calc(var(--nav-h) + 32px);align-self:start}
.glance__l{font-family:var(--f-mono);font-size:var(--t-label);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:12px}
.chips--ghost span{border-style:dashed}
.glance__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.gstat .n{display:block;font-size:clamp(28px,2.6vw,42px);line-height:1;font-weight:400;font-variation-settings:"wdth" 112;letter-spacing:-.03em;color:var(--ink)}
.gstat .l{display:block;margin-top:8px;font-family:var(--f-mono);font-size:10.5px;letter-spacing:.06em;color:var(--ink-2)}
.glance__note{font-family:var(--f-mono);font-size:var(--t-label);letter-spacing:.06em;color:var(--ink-3);margin-top:12px}
.closing__line{font-size:var(--t-h1);line-height:1.04;font-weight:500;font-variation-settings:"wdth" 110;letter-spacing:-.025em;color:var(--ink);max-width:13em}
.contact{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap);margin-top:clamp(48px,7vw,96px);border-top:1px solid var(--line);padding-top:32px}
.contact__col{grid-column:span 5;display:flex;flex-direction:column;gap:12px}
.contact__addrs{grid-column:8/span 5;display:grid;grid-template-columns:1fr 1fr;gap:var(--gap)}
.contact__l,.addr__l{font-family:var(--f-mono);font-size:var(--t-label);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
.contact__big{font-size:clamp(26px,3vw,46px);font-weight:500;font-variation-settings:"wdth" 110;letter-spacing:-.02em;color:var(--lilac)}
.contact__cities,.addr__body{font-size:var(--t-small);color:var(--ink-2)}

/* ---------- phones ---------- */
@media (max-width:860px){
  .sechead,.info-head,.pf__row,.impact__split,.data .lead,.data__split,.sec__head,.use,.item,.manifesto__wrap,.contact,.salon__hero{grid-template-columns:1fr}
  .sechead>*,.info-head>*,.pf__row>*,.impact__split>*,.data .lead>*,.data__split>*,.sec__head>*,.use>*,.item>*,.manifesto__wrap>*,.contact>*,.salon__hero>*{grid-column:1/-1!important}
  .info-head__media,.glance,.salon__image{position:static}
  .pillars,.steps,.tmnl__grid,.pg-events main{grid-template-columns:1fr}
  .tcard--lead{grid-column:auto;grid-row:auto}
  .stats{grid-template-columns:1fr;gap:28px}
  .impact__grid,.mods{grid-template-columns:1fr}
  .fp{grid-template-columns:1fr 1fr}
  .fp>span:nth-child(3){border-left:0}
  .pg-home .sessions{top:auto;bottom:calc(clamp(56px,11vh,120px) + 230px);left:var(--m);right:auto;text-align:left}
  .pg-home .hint{display:none}
  .contact__addrs{grid-template-columns:1fr}
  .glance__stats{grid-template-columns:repeat(3,1fr)}
}

/* ---------- LABS (/ai) ---------- */
.pg-ai .hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(32px,5vw,80px);align-items:center;padding-top:calc(var(--nav-h) + clamp(56px,12vh,140px))}
.pg-ai .hero h1{margin-top:24px}
.pg-ai .hero .lede{margin-top:28px;font-size:clamp(17px,1.3vw,21px)}
.pg-ai .hero .lede em{color:var(--lilac)}
.viewport{position:relative;aspect-ratio:4/3;border:1px solid var(--line-2);border-radius:16px;overflow:hidden;background:var(--bg-2)}
.viewport canvas{position:absolute;inset:0;width:100%;height:100%}
.vp-tele,.corpus__tele{position:absolute;top:12px;left:14px;z-index:3;font-family:var(--f-mono);font-size:11px;letter-spacing:.05em;color:var(--ink-2);line-height:1.7;pointer-events:none}
/* Lab X vs VLGE */
.bench__frame{border:1px solid var(--line-2);border-radius:16px;overflow:hidden;background:var(--card)}
.bench__lane{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1fr) minmax(0,1fr);border-bottom:1px solid var(--line)}
.bench__lane .who{padding:18px 20px;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:6px}
.bench__lane .who b{font-size:20px;font-weight:500;font-variation-settings:"wdth" 108}
.bench__lane .who span{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.06em;color:var(--ink-3)}
.bench__lane .step{padding:18px 20px;border-right:1px solid var(--line);font-size:var(--t-small);line-height:1.5;color:var(--ink-2)}
.bench__lane .step:last-child{border-right:0}
.bench__lane .step .i{display:block;font-family:var(--f-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:6px}
.bench__lane:not(.is-vlge) .who b,.bench__lane:not(.is-vlge) .step .i{color:var(--orange)}
.bench__lane.is-vlge{background:var(--lilac-a06)}
.bench__lane.is-vlge .who b,.bench__lane.is-vlge .step .i{color:var(--lilac)}
.bench__score{display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:16px;align-items:baseline;padding:16px 20px;background:var(--bone);color:var(--on-bone)}
.bench__score .k{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;opacity:.6}
.bench__score b{font-size:20px;font-weight:500;color:inherit}
.bench__score p{font-size:var(--t-small);color:inherit;opacity:.78}
.bench__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap);margin-top:var(--gap)}
.bench__grid article{border-top:1px solid var(--line-2);padding-top:18px}
.bench__grid h3{margin:10px 0 10px}
.bench__grid p{font-size:var(--t-small)}
.bench__metrics{margin-top:clamp(40px,5vw,72px);padding-top:24px;border-top:1px solid var(--line)}
.bench__metrics ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px clamp(20px,3vw,40px);margin-top:18px}
.bench__metrics li{font-family:var(--f-mono);font-size:12.5px;line-height:1.6;color:var(--ink-2)}
.bench__metrics li b{display:block;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--lilac);font-weight:500;margin-bottom:4px}
.bench__status{margin-top:24px;font-family:var(--f-mono);font-size:12.5px;line-height:1.6;color:var(--ink-2);max-width:64ch}
.bench__status a{color:var(--lilac);border-bottom:1px solid var(--lilac-a35);white-space:nowrap}
/* the session record */
.layers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap)}
.layers article{border-top:1px solid var(--line-2);padding-top:18px}
.layers h3{margin:10px 0 10px}
.layers p{font-size:var(--t-small)}
.layers p.why{color:var(--ink-3);border-top:1px solid var(--line);padding-top:10px;margin-top:12px;font-size:14px}
.layers__note{margin:24px 0 32px;font-family:var(--f-mono);font-size:12px;letter-spacing:.04em;color:var(--ink-3)}
/* corpus, decision, builds */
.corpus__head,.moment__head,.builds__head{max-width:46em;margin-bottom:clamp(28px,4vw,48px)}
.corpus__head b{color:var(--ink);font-variant-numeric:tabular-nums}
.corpus__body{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:var(--gap);align-items:stretch}
.corpus__stage{position:relative;width:100%;aspect-ratio:16/9;border:1px solid var(--line-2);border-radius:16px;overflow:hidden;background:var(--bg-2)}
.corpus__stage canvas{position:absolute;inset:0;width:100%;height:100%}
.corpus__feed{position:relative;width:100%;min-height:0}
.corpus__toggle{display:none;position:absolute;left:50%;bottom:12px;transform:translate(-50%);z-index:4;font-family:var(--f-mono);font-size:11px;letter-spacing:.06em;padding:8px 14px;border-radius:999px;border:1px solid var(--line-3);background:var(--card-2);color:var(--ink)}
.moment__stage{position:relative;aspect-ratio:16/9;border:1px solid var(--line-2);border-radius:16px;overflow:hidden;background:var(--bg-2)}
/* two people, one space */
.quote .wrap{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(32px,5vw,72px);align-items:center}
.quote p{font-size:var(--t-h2);line-height:1.08;font-weight:500;font-variation-settings:"wdth" 108;letter-spacing:-.02em;color:var(--ink);max-width:18em}
.quote .src{font-family:var(--f-mono);font-size:12.5px;line-height:1.65;color:var(--ink-2);margin-top:22px;max-width:46ch}
.quote .src em{color:var(--lilac)}
.delta{border:1px solid var(--line-2);border-radius:16px;overflow:hidden;background:var(--bg-2)}
.delta__hd{font-family:var(--f-mono);font-size:11px;letter-spacing:.04em;color:var(--ink-3);padding:10px 14px;border-bottom:1px solid var(--line);display:flex;gap:12px;align-items:center}
.delta__hd b{color:var(--ink);font-weight:500}
.delta__hd .pip{color:var(--lilac);margin-left:auto}
.delta__cv{position:relative;aspect-ratio:16/8}
.delta__cv canvas{position:absolute;inset:0;width:100%;height:100%}
.delta__rows{font-family:var(--f-mono);font-size:11px;padding:10px 14px 12px;display:grid;grid-template-columns:auto 1fr auto;gap:4px 14px;border-top:1px solid var(--line);align-items:baseline}
.delta__rows .k{color:var(--ink-3)}
.delta__rows .v,.delta__rows [data-a-id]{color:var(--lilac);text-align:right}
.delta__rows .d{color:var(--lilac-hi);text-align:right}
/* one session, every stream */
.split{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);gap:clamp(24px,3.5vw,48px);align-items:start;position:relative}
.split .stage{position:sticky;top:calc(var(--nav-h) + 24px);min-width:0}
.slotwrap{position:relative;display:grid;grid-template-columns:26px 1fr;gap:16px}
.srail{position:relative}
.srail::before{content:"";position:absolute;left:3px;top:.2em;bottom:.2em;width:1px;background:var(--line-2)}
.srail .tk{position:absolute;left:0;transform:translateY(-50%);font-family:var(--f-mono);font-size:9px;color:var(--ink-3);display:flex;align-items:center;gap:7px;transition:color .3s var(--ease)}
.srail .tk::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--ink-4);box-shadow:0 0 0 3px var(--bg);transition:background .3s var(--ease)}
.srail .tk.on{color:var(--lilac)}
.srail .tk.on::before{background:var(--lilac)}
.srail .head{position:absolute;left:3px;top:0;width:1px;height:0;background:var(--lilac)}
.sslot{position:relative;min-height:44vh}
.dstream{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;will-change:opacity,transform}
.dstream .no::before{content:"●";font-size:.7em;margin-right:8px}
.dstream h3{font-size:clamp(22px,2vw,30px);margin:10px 0 0}
.dstream p{font-size:var(--t-body);margin-top:12px;max-width:44ch}
.dstream p a{color:var(--lilac);border-bottom:1px solid var(--lilac-a35)}
.dstream .meta{font-family:var(--f-mono);font-size:12px;letter-spacing:.03em;color:var(--ink-3);margin-top:14px}
/* delivery package */
.delivery__hint{margin-top:14px;font-family:var(--f-mono);font-size:12px;letter-spacing:.03em;color:var(--ink-3)}
.delivery__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line-2);border-left:1px solid var(--line);align-items:start}
.dcard{border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:transparent}
.dcard[open]{background:var(--card)}
.dcard>summary{list-style:none;cursor:pointer;display:block;position:relative;min-height:190px;padding:20px 44px 22px 20px;transition:background .2s}
.dcard>summary::-webkit-details-marker{display:none}
.dcard>summary:hover{background:var(--lilac-a06)}
.dcard>summary::after{content:"+";position:absolute;right:18px;top:16px;font-family:var(--f-mono);font-size:14px;color:var(--lilac)}
.dcard[open]>summary::after{content:"−"}
.dcard summary h3{margin:12px 0 0}
.dcard summary p{font-size:14.5px;margin-top:10px}
.dbody{padding:0 20px 22px;border-top:1px solid var(--line)}
.dbody p{font-size:14.5px;margin-top:14px}
.dbody .fields{font-family:var(--f-mono);font-size:10.5px;line-height:1.8;letter-spacing:.02em;color:var(--ink-2);background:var(--bg-2);border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin-top:14px;word-break:break-word}
.dbody .see{margin-top:14px}
/* applications, four layers */
.apps h2{font-size:clamp(26px,2.6vw,42px);margin:22px 0 clamp(28px,4vw,48px)}
.apps__grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--gap)}
.app{position:relative;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--card);display:flex;flex-direction:column;transition:border-color .3s var(--ease)}
.app:hover{border-color:var(--lilac-a35)}
.app__viz{position:relative;aspect-ratio:16/10;overflow:hidden;background:#15121a}
.app__viz img,.app__viz video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
.app:hover .app__viz img,.app:hover .app__viz video{transform:scale(1.04)}
.app__viz canvas{position:absolute;inset:0;width:100%;height:100%}
.app__viz::after{content:"";position:absolute;left:0;right:0;bottom:0;height:34%;background:linear-gradient(to top,rgba(14,12,16,.55),rgba(14,12,16,0));pointer-events:none}
.app .tag{position:absolute;left:12px;bottom:10px;z-index:2;font-family:var(--f-mono);font-size:10px;letter-spacing:.04em;color:rgba(236,230,234,.92);text-transform:none}
.app .n{position:absolute;right:12px;top:10px;z-index:2;font-family:var(--f-mono);font-size:10px;color:rgba(236,230,234,.7);letter-spacing:.08em}
.app__txt{padding:16px 16px 18px}
.app__txt h4{font-size:18px}
.app__txt p{font-size:14px;margin-top:6px}
.explore h2{max-width:20em;margin:22px 0 clamp(28px,4vw,48px)}
.explore__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gap)}
.explore__grid>*{border-top:1px solid var(--line-2);padding-top:18px;display:flex;flex-direction:column;gap:12px}
.explore__grid span{font-family:var(--f-mono);font-size:var(--t-label);letter-spacing:.12em;color:var(--lilac)}
.explore__grid p{font-size:var(--t-small)}
.explore__grid a{margin-top:auto;align-self:flex-start;font-family:var(--f-mono);font-size:12px;color:var(--ink);border-bottom:1px solid var(--line-3);padding-bottom:4px}
.explore__grid a:hover{border-color:var(--lilac);color:var(--lilac)}
@media (max-width:1100px){
  .apps__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .explore__grid,.delivery__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:860px){
  .pg-ai .hero,.quote .wrap,.split,.corpus__body{grid-template-columns:1fr}
  .bench__lane{grid-template-columns:1fr}
  .bench__lane .who,.bench__lane .step{border-right:0;border-bottom:1px solid var(--line)}
  .bench__score{grid-template-columns:1fr;gap:6px}
  .bench__grid,.layers,.bench__metrics ul,.apps__grid,.explore__grid,.delivery__grid{grid-template-columns:1fr}
  .split .stage{position:static;margin-bottom:32px}
  .slotwrap{grid-template-columns:1fr}
  .srail{display:none}
  .sslot{min-height:0}
  .dstream{position:static;opacity:1!important;transform:none!important;margin-bottom:36px}
  .corpus__toggle{display:inline-flex}
  .corpus__stage{aspect-ratio:4/5}
  .corpus__feed{height:240px}
  .moment__stage{aspect-ratio:3/4}
  .dcard>summary{min-height:0}
}
