:root{--heavy:cubic-bezier(.16,1,.20,1);--deep:#000;--brand:#b92b44}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#000;color:#fff;font-family:'Helvetica Now Display','Helvetica Neue',Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
.home-page{overflow:clip}

/* One exact silhouette, multiple registered light layers. No unaligned transforms. */
.home-intro{height:calc(100vh + 2px);height:calc(100dvh + 2px);min-height:540px;background:#000;display:grid;place-items:center;overflow:hidden;isolation:isolate}
.intro-inner{width:min(100%,1100px);height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(52px,7vh,96px);padding:0 24px 5vh}
.present-line{font-size:clamp(10px,.78vw,12px);font-weight:400;letter-spacing:.06em;line-height:1.3;color:#e7e5e5;margin:0;opacity:0;filter:blur(24px);transform:translateY(13px);transition:opacity 4000ms cubic-bezier(.22,.48,.24,1),filter 4800ms cubic-bezier(.16,.76,.2,1),transform 4400ms var(--heavy);will-change:opacity,filter,transform}
body.intro-present .present-line{opacity:.85;filter:blur(0);transform:none}
.logo-theatre{position:relative;width:min(80vw,825px);aspect-ratio:324 / 117;isolation:isolate;flex:0 0 auto;pointer-events:none;transform:none}
.logo-theatre .chroma-halo,.logo-theatre .chroma-body,.logo-theatre .light-ribbon,.logo-theatre .light-bloom,.logo-theatre .final-logo,.logo-theatre .logo-vector{position:absolute;inset:0;width:100%;height:100%;transform:none}
.chroma-body,.chroma-halo,.light-ribbon,.light-bloom{mask:url('markets-eye-logo.svg') center/100% 100% no-repeat;-webkit-mask:url('markets-eye-logo.svg') center/100% 100% no-repeat}
.chroma-body{background:linear-gradient(115deg,#4f0b2d 2%,#f12c4c 21%,#ff8c55 39%,#fff8e5 52%,#ffb466 65%,#c82746 82%,#71132d 100%);background-size:100% 100%;filter:drop-shadow(0 0 17px rgba(246,57,81,.62)) drop-shadow(0 0 32px rgba(255,129,72,.27));opacity:0;clip-path:inset(0 100% 0 0);z-index:2}
.chroma-halo{background:linear-gradient(110deg,#7c143f,#f02c4a,#ffd09a,#ffffff,#ff6945,#b81c38);background-size:100% 100%;filter:blur(19px) drop-shadow(0 0 30px rgba(238,52,70,.85));opacity:0;clip-path:inset(0 100% 0 0);z-index:1}
.light-ribbon{z-index:3;opacity:0;background:linear-gradient(96deg,transparent 20%,rgba(255,255,255,.03) 33%,rgba(255,234,190,.92) 48%,#fff 51%,rgba(255,160,111,.83) 56%,transparent 78%);background-size:190% 100%;filter:drop-shadow(0 0 8px #ff8a63)}
.light-bloom{z-index:1;opacity:0;background:linear-gradient(96deg,transparent 21%,#b91642 37%,#fff3c9 52%,#e52346 67%,transparent 81%);background-size:190% 100%;filter:blur(22px) drop-shadow(0 0 30px rgba(255,78,80,.85))}
.logo-vector{z-index:4;overflow:visible;fill:none}
/* Exact reference geometry lives in SVG defs and is not separately painted. */
.logo-vector use{stroke:url(#burn-line);stroke-linejoin:round;stroke-linecap:round;fill:none;stroke-dasharray:1;stroke-dashoffset:1;opacity:0;vector-effect:non-scaling-stroke}
.stroke-light{stroke-width:1.2px;filter:drop-shadow(0 0 3px #ffe1b2) drop-shadow(0 0 7px #fb3b54)}
.stroke-halo{stroke-width:3.3px;filter:blur(3.5px) drop-shadow(0 0 12px rgba(225,27,65,.75))}
.rim-light,.rim-halo{stroke:#ffe8d2;stroke-dasharray:.028 .972!important;stroke-dashoffset:1.1;stroke-width:1.1px}
.rim-halo{stroke:#f54557;stroke-width:3.5px;filter:blur(3.3px)}
.final-logo{object-fit:contain;z-index:6;filter:brightness(0) invert(1);opacity:0;transition:opacity 2800ms var(--heavy)}
body.intro-construct .chroma-body{animation:materialize 4.25s cubic-bezier(.17,.83,.18,1) both,chromaDrift 4.25s linear both}
body.intro-construct .chroma-halo{animation:materialize 4.45s cubic-bezier(.17,.84,.17,1) both,chromaDrift 4.45s linear both}
body.intro-construct .light-ribbon{animation:ribbon 4.65s var(--heavy) both}
body.intro-construct .light-bloom{animation:ribbon 4.9s var(--heavy) both}
body.intro-construct .stroke-light{animation:writeShape 4.4s cubic-bezier(.18,.89,.19,1) both}
body.intro-construct .stroke-halo{animation:writeShape 4.65s cubic-bezier(.16,.9,.2,1) both}
body.intro-resolve .final-logo{opacity:1}
body.intro-resolve .chroma-body,body.intro-resolve .chroma-halo{animation:materialExit 3s var(--heavy) both!important;clip-path:inset(0)}
body.intro-resolve .light-ribbon,body.intro-resolve .light-bloom,body.intro-resolve .stroke-light,body.intro-resolve .stroke-halo{animation:lightExit 2.5s var(--heavy) both!important}
body.intro-resolve .rim-light,body.intro-resolve .rim-halo{animation:periodicContour 20s cubic-bezier(.14,.75,.22,1) 4.5s infinite}
@keyframes materialize{0%{opacity:0;clip-path:inset(0 100% 0 0)}8%{opacity:.92}56%{opacity:1;clip-path:inset(0 24% 0 0)}100%{opacity:1;clip-path:inset(0)}}
@keyframes chromaDrift{from{background-position:0% 92%}to{background-position:100% 0%}}
@keyframes ribbon{0%{opacity:0;background-position:0% 0%}13%{opacity:1}70%{opacity:.9}100%{opacity:.02;background-position:100% 0%}}
@keyframes writeShape{0%{stroke-dashoffset:1;opacity:0}14%{opacity:.8}72%{opacity:1}100%{stroke-dashoffset:0;opacity:.7}}
@keyframes materialExit{0%{opacity:1}100%{opacity:0}}
@keyframes lightExit{0%{opacity:1}100%{opacity:0}}
@keyframes periodicContour{0%,15%{opacity:0;stroke-dashoffset:1.1}17%{opacity:.95}34%{opacity:.75;stroke-dashoffset:.16}42%{opacity:0;stroke-dashoffset:-.16}43%,100%{opacity:0;stroke-dashoffset:-.16}}

/* The living field is dot geometry: no connecting wireframe. */
.home-audit{position:relative;height:112svh;min-height:690px;background:#fff;overflow:hidden;color:#141414;isolation:isolate}
.ocean-canvas,.observations{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none}
.ocean-canvas{z-index:1}.observations{z-index:2}
.founding-seal{position:absolute;z-index:4;display:block;width:clamp(170px,17.5vw,252px);aspect-ratio:1;top:23.8%;left:50%;transform:translate(-50%,-50%);outline-offset:8px;border-radius:50%;-webkit-tap-highlight-color:transparent}
.founding-seal:focus-visible{outline:2px solid #ae2b44}
.seal-motion{position:relative;display:block;width:100%;height:100%;animation:sealHover 6.1s ease-in-out infinite}
.seal-ring{position:absolute;inset:0;width:100%;height:100%;overflow:visible;transform-origin:center;animation:ringRotate 15.25s linear infinite;pointer-events:none}
.seal-type{font-family:'Helvetica Now Display','Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:400;font-size:23px;letter-spacing:.3px;fill:#121212}
.seal-object{position:absolute;inset:13.6%;filter:drop-shadow(0 12px 17px rgba(30,0,5,.13));transform:rotate(-8deg);transition:transform 1300ms var(--heavy),filter 1300ms var(--heavy)}
.seal-disc{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;user-select:none}
.seal-lion{position:absolute;left:31.2%;top:30.5%;width:37%;height:39%;object-fit:contain;opacity:.92;mix-blend-mode:multiply;filter:drop-shadow(-1.25px -1.25px 1px rgba(255,165,148,.92)) drop-shadow(2px 2px 1px rgba(88,0,16,.65));user-select:none}
.seal-sticker{position:absolute;right:-2%;top:-5%;width:41%;height:auto;z-index:3;transform:rotate(8deg);filter:drop-shadow(0 7px 5px rgba(46,24,24,.20));user-select:none}
.founding-seal:hover .seal-object,.founding-seal:focus-visible .seal-object{transform:rotate(-4deg) translateY(-8px) scale(1.06);filter:drop-shadow(0 23px 27px rgba(33,0,6,.2))}
.founding-seal:active .seal-object{transform:rotate(-7deg) scale(.98);transition-duration:240ms}
@keyframes ringRotate{to{transform:rotate(360deg)}}
@keyframes sealHover{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}

/* Layered light with curved extinction, irregular internally blurred columns and pure black falloff. */
.home-case{position:relative;min-height:108svh;display:grid;place-items:center;overflow:hidden;background:#000;isolation:isolate}
.case-atmosphere{position:absolute;inset:-1%;background-image:url('case-atmosphere.webp');background-position:center top;background-size:cover;will-change:transform;animation:atmosphereBreathe 27s ease-in-out infinite alternate}
.case-luminous{position:absolute;inset:0;pointer-events:none;mix-blend-mode:screen;background:radial-gradient(ellipse 34% 52% at 49% 32%,rgba(255,115,40,.08),transparent 75%);animation:lightBreathing 18s ease-in-out infinite alternate}
@keyframes atmosphereBreathe{from{transform:scale(1.01) translate3d(-.3%,0,0)}to{transform:scale(1.04) translate3d(.4%,-.25%,0)}}
@keyframes lightBreathing{from{opacity:.15}to{opacity:.75}}
.case-content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;text-align:center;width:min(95%,680px);padding:20vh 24px 4vh;color:#fff}
.case-content h2{font-size:clamp(43px,5.1vw,71px);font-weight:400;line-height:1.08;letter-spacing:-.049em;margin:0 0 20px}
.case-content p{font-size:clamp(14px,1.16vw,17px);line-height:1.5;margin:0 0 32px}
.case-button{display:inline-flex;justify-content:center;align-items:center;gap:28px;padding:14px 19px;background:rgba(0,0,0,.06);border:1px solid rgba(255,255,255,.5);color:#fff;font-size:12px;transition:transform .9s var(--heavy),background .9s var(--heavy),border-color .9s var(--heavy)}
.case-button:hover,.case-button:focus-visible{background:rgba(0,0,0,.25);border-color:#fff;transform:translateY(-3px)}
.case-button svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.elevator{opacity:1;transform:translateY(0);filter:none}
.has-motion .elevator{opacity:0;transform:translateY(35px);filter:blur(5px);transition:opacity 1.4s var(--heavy),transform 1.95s var(--heavy),filter 2s var(--heavy)}
.has-motion .case-content.in-view .elevator{opacity:1;transform:none;filter:none}
.case-content .elevator:nth-child(2){transition-delay:.19s}.case-content .elevator:nth-child(3){transition-delay:.35s}

@media(max-width:760px){.intro-inner{gap:54px}.logo-theatre{width:93vw}.home-audit{min-height:660px;height:105svh}.founding-seal{top:24%;width:clamp(170px,42vw,230px)}.case-content{padding-top:13vh}}
@media(max-width:440px){.present-line{font-size:10px}.logo-theatre{width:94vw}.home-audit{min-height:610px}.founding-seal{width:46vw}.case-content h2{font-size:46px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.present-line,.final-logo,.elevator{opacity:1!important;transform:none!important;filter:none!important}.chroma-body,.chroma-halo,.light-ribbon,.light-bloom,.logo-vector{display:none!important}}

/* Shared footer from approved V10; no content or layout redesign. */

.v5-continuation .me-footer{background:#010102;color:#fff;position:relative;overflow:hidden;min-height:900px}
.v5-continuation .tree-stage{position:relative;height:clamp(460px,48vw,790px);width:100%;overflow:hidden}
.v5-continuation .tree-stage canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.v5-continuation .footer-inner{position:relative;z-index:1;padding:0 clamp(26px,6vw,110px) 35px}
.v5-continuation .footer-claim{display:flex;justify-content:space-between;align-items:flex-start;gap:40px;margin:0 0 clamp(75px,7vw,135px)}
.v5-continuation .footer-claim h2{font-size:clamp(48px,5vw,95px);font-weight:400;line-height:1.12;letter-spacing:-.053em;color:#686869;margin:0;max-width:1000px}
.v5-continuation .footer-claim h2 span{color:#f2f2f2}
.v5-continuation .footer-cta{background:#f7f7f7;color:#090909;display:flex;align-items:center;gap:36px;padding:17px 22px;white-space:nowrap;font-size:14px;min-height:51px;transition:background .2s,transform .2s}
.v5-continuation .footer-cta svg{height:18px;width:18px;stroke:#111;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.v5-continuation .footer-cta:hover{background:#ddd;transform:translateY(-2px)}
.v5-continuation .footer-columns{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(20px,3vw,65px);margin-bottom:clamp(65px,6.5vw,140px)}
.v5-continuation .footer-columns>div{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.v5-continuation .footer-col-title{font-size:12px;letter-spacing:.045em;color:#818181;margin:0 0 7px}
.v5-continuation .footer-columns a,.v5-continuation .footer-columns span:not(.footer-col-title){color:#e4e4e4;font-size:14px;line-height:1.3}
.v5-continuation .footer-columns a:hover{text-decoration:underline}
.v5-continuation .footer-bottom{border-top:1px solid #4b4b4b;padding-top:28px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;color:#858585;font-size:11px;letter-spacing:.018em}
.v5-continuation .footer-bottom a{color:#ddd}
@media(max-width:780px){.v5-continuation .footer-claim{flex-direction:column}.v5-continuation .footer-columns{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:45px}.v5-continuation .footer-claim h2{font-size:clamp(49px,7vw,78px)}.v5-continuation .tree-stage{height:clamp(440px,58vw,570px)}}
@media(max-width:560px){.logo-stage{width:94vw}.intro-stage{gap:40px}.home-audit{height:102svh;min-height:650px}.founding-seal{width:clamp(170px,55vw,230px);top:29%}.case-content h2{font-size:clamp(49px,13vw,72px)}.v5-continuation .footer-inner{padding-inline:22px}.v5-continuation .footer-claim h2{font-size:clamp(42px,10vw,63px)}.v5-continuation .footer-columns{gap:40px 15px}.v5-continuation .footer-columns a,.v5-continuation .footer-columns span:not(.footer-col-title){font-size:13px}.v5-continuation .tree-stage{height:470px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.present-line{opacity:1;filter:none;transform:none;transition:none}.white-mark{opacity:0;transition:none}.final-logo{opacity:1;transition:none}.light-fill,.drawing-paths,.glowing-paths,.rim-paths,.rim-halo{display:none!important}.seal-motion,.seal-ring,.case-image,.case-threads{animation:none!important}.elevator{opacity:1;transform:none;filter:none;transition:none}}


/* V14: the V11-style chromatic build returns, this time registered to the exact
   logo coordinates and led by staggered stroke energy rather than a fast reveal. */
.logo-theatre{transform:translate3d(0,32px,0) scale(.835);filter:blur(15px);opacity:0;transform-origin:50% 50%}
body.intro-construct .logo-theatre{animation:logoMonument 6.55s cubic-bezier(.12,.85,.12,1) both}
@keyframes logoMonument{
  0%{opacity:0;transform:translate3d(0,32px,0) scale(.835);filter:blur(15px)}
  16%{opacity:1;filter:blur(9px)}
  40%{opacity:1;transform:translate3d(0,9px,0) scale(.947);filter:blur(3px)}
  70%{transform:translate3d(0,-2px,0) scale(1.017);filter:blur(.65px)}
  100%{opacity:1;transform:translate3d(0,0,0) scale(1);filter:blur(0)}
}
.logo-vector .path-trace-group{fill:none;stroke:url(#burn-line);stroke-linejoin:round;stroke-linecap:round}
.logo-vector .path-trace-group .trace-path{fill:none;stroke-dasharray:1;stroke-dashoffset:1;opacity:0;vector-effect:non-scaling-stroke}
.logo-vector .stroke-halo{stroke-width:3.4px;filter:blur(3.3px) drop-shadow(0 0 10px rgba(235,37,66,.88))}
.logo-vector .stroke-light{stroke-width:1.25px;filter:drop-shadow(0 0 3px rgba(255,240,194,.95)) drop-shadow(0 0 8px #fb3b54)}
body.intro-construct .logo-vector .stroke-light .trace-path{animation:traceBorn 3.9s cubic-bezier(.14,.92,.2,1) both;animation-delay:calc(var(--order) * .18s)}
body.intro-construct .logo-vector .stroke-halo .trace-path{animation:traceBorn 4.25s cubic-bezier(.14,.88,.2,1) both;animation-delay:calc(var(--order) * .18s + .13s)}
@keyframes traceBorn{
  0%{opacity:0;stroke-dashoffset:1}
  11%{opacity:0;stroke-dashoffset:.985}
  28%{opacity:1}
  76%{opacity:1;stroke-dashoffset:.09}
  100%{opacity:.86;stroke-dashoffset:0}
}
body.intro-construct .chroma-body{animation:brandBuild 5.6s cubic-bezier(.16,.87,.17,1) both,chromaFlow 5.6s cubic-bezier(.18,.8,.18,1) both}
body.intro-construct .chroma-halo{animation:brandBuild 5.8s cubic-bezier(.16,.87,.17,1) both,chromaFlow 5.8s cubic-bezier(.18,.8,.18,1) both}
.chroma-body,.chroma-halo{background-size:180% 125%;background-position:95% 50%}
@keyframes brandBuild{
  0%,10%{opacity:0;clip-path:inset(0 100% 0 0)}
  22%{opacity:.14;clip-path:inset(0 91% 0 0)}
  39%{opacity:.45;clip-path:inset(0 61% 0 0)}
  63%{opacity:.86;clip-path:inset(0 24% 0 0)}
  88%,100%{opacity:1;clip-path:inset(0 0 0 0)}
}
@keyframes chromaFlow{0%{background-position:98% 30%}40%{background-position:54% 62%}100%{background-position:4% 38%}}
body.intro-construct .light-ribbon{animation:logoBeam 5.8s cubic-bezier(.15,.83,.14,1) both}
body.intro-construct .light-bloom{animation:logoBeam 6s cubic-bezier(.15,.83,.14,1) both}
@keyframes logoBeam{0%,10%{opacity:0;background-position:0% 0%}20%{opacity:.15}38%{opacity:1}70%{opacity:.91}100%{opacity:0;background-position:100% 0%}}
body.intro-resolve .stroke-light .trace-path,body.intro-resolve .stroke-halo .trace-path{animation:traceExit 2.6s cubic-bezier(.15,.8,.2,1) both!important;animation-delay:0s!important}
@keyframes traceExit{0%{opacity:.9;stroke-dashoffset:0}100%{opacity:0;stroke-dashoffset:-.12}}
body.intro-resolve .chroma-body,body.intro-resolve .chroma-halo{animation:materialExit 3.15s var(--heavy) both!important;clip-path:inset(0)!important}
body.intro-resolve .light-ribbon,body.intro-resolve .light-bloom{animation:lightExit 2.4s var(--heavy) both!important}
body.intro-resolve .final-logo{opacity:1;transition:opacity 3.05s var(--heavy)}

/* True aurora dynamics. Keep the exact approved background available as a fallback. */
.case-atmosphere{animation:none!important;transform:none!important;will-change:auto}
.aurora-canvas{position:absolute;inset:0;display:block;width:100%;height:100%;z-index:1;opacity:0;pointer-events:none;transition:opacity .85s ease}
.aurora-canvas.is-ready{opacity:1}
.case-luminous{z-index:2}
.case-content{z-index:3}
@media(prefers-reduced-motion:reduce){.logo-theatre{opacity:1!important;transform:none!important;filter:none!important}.aurora-canvas{display:none!important}.logo-vector .path-trace-group{display:none!important}}


/* V15 surgical refinements: preserve V14's chromatic layers and the original mark. */
/* The entire mark has one fixed scale. Dramatic energy stays in the light, not a size overshoot. */
.logo-theatre{transform:translate3d(0,12px,0) scale(1);filter:blur(9px);opacity:0}
body.intro-construct .logo-theatre{animation:logoArrivalV15 6.55s cubic-bezier(.20,.80,.18,1) both}
@keyframes logoArrivalV15{
  0%,8%{opacity:0;transform:translate3d(0,12px,0) scale(1);filter:blur(9px)}
  24%{opacity:.93;transform:translate3d(0,7px,0) scale(1);filter:blur(5px)}
  53%{opacity:1;transform:translate3d(0,2px,0) scale(1);filter:blur(1.8px)}
  100%{opacity:1;transform:translate3d(0,0,0) scale(1);filter:blur(0)}
}
/* Resolve the rightmost typography with the rest of the mark, not seconds later. */
@keyframes brandBuild{
  0%,9%{opacity:0;clip-path:inset(0 100% 0 0)}
  20%{opacity:.13;clip-path:inset(0 83% 0 0)}
  39%{opacity:.48;clip-path:inset(0 39% 0 0)}
  64%{opacity:.90;clip-path:inset(0 0 0 0)}
  79%,100%{opacity:1;clip-path:inset(0 0 0 0)}
}
/* Crossfade the fully developed chromatic logo into white without a visible snap. */
body.intro-resolve .final-logo{opacity:1;transition:opacity 5.2s cubic-bezier(.46,0,.54,1)}
body.intro-resolve .chroma-body,body.intro-resolve .chroma-halo{
  animation:materialExitV15 5.2s cubic-bezier(.46,0,.54,1) both!important;
  clip-path:inset(0)!important;
}
body.intro-resolve .light-ribbon,body.intro-resolve .light-bloom{
  animation:lightExitV15 4.7s cubic-bezier(.46,0,.54,1) both!important;
}
body.intro-resolve .stroke-light .trace-path,body.intro-resolve .stroke-halo .trace-path{
  animation:traceExitV15 4.7s cubic-bezier(.43,0,.57,1) both!important;
  animation-delay:0s!important;
}
@keyframes materialExitV15{0%{opacity:1}100%{opacity:0}}
@keyframes lightExitV15{0%{opacity:1}100%{opacity:0}}
@keyframes traceExitV15{0%{opacity:.86;stroke-dashoffset:0}100%{opacity:0;stroke-dashoffset:-.12}}

/* The individual trace paths no longer leave the final letters waiting behind the main form. */
body.intro-construct .logo-vector .stroke-light .trace-path{animation-delay:var(--trace-lead,0s)}
body.intro-construct .logo-vector .stroke-halo .trace-path{animation-delay:calc(var(--trace-lead,0s) + .13s)}


/* V18: show the real wave geometry from the first paint. The exact-wave poster
   stays beneath the live renderer until its first completed canvas draw. */
.home-audit::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:#fff url('ocean-first-frame.webp') center / 100% 100% no-repeat;opacity:1;transition:opacity .24s ease}
.home-audit.wave-live::before{opacity:0}
@media(max-width:760px){.home-audit::before{background-image:url('ocean-first-frame-mobile.webp')}}
@media(prefers-reduced-motion:reduce){.home-audit::before{transition:none}}


/* V19 — understated institutional passage, contiguous with the white ocean. */
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0!important;margin:-1px!important;overflow:hidden;clip:rect(0,0,0,0)!important;white-space:nowrap;border:0}
.present-line{
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-weight:400;
  font-size:11px;
  letter-spacing:.04em;
  font-kerning:normal;
  text-rendering:optimizeLegibility;
}
.home-institution{
  background:#fff;
  color:#292929;
  margin:0;
  border:0;
  padding:clamp(110px,12vh,160px) 24px clamp(90px,10vh,142px);
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
}
.institution-column{
  width:min(100%,645px);
  margin-left:max(0px,calc((100vw - 1080px)/2 + 65px - 24px));
  font-size:11.5px;
  font-weight:400;
  line-height:1.65;
  letter-spacing:.005em;
}
.institution-column p{margin:0 0 18px}
.institution-column p:last-child{margin-bottom:0}
.institution-column .institution-latin{font-style:italic}
.institution-column .institution-latin:first-child{margin-bottom:29px}
.institution-column .institution-final{margin-top:29px}
/* This boundary is deliberately colorless: one uninterrupted white field. */
.home-institution + .home-audit{margin-top:0;border-top:0}
@media(max-width:760px){
  .home-institution{padding:92px 27px 75px}
  .institution-column{width:min(100%,540px);margin:0 auto;font-size:11.5px;line-height:1.68}
}
@media(max-width:440px){
  .home-institution{padding:80px 25px 65px}
  .present-line{font-size:10.5px}
}
/* Reduced-motion users still receive the finished white logo, not a black SVG on black. */
@media(prefers-reduced-motion:reduce){.final-logo{filter:brightness(0) invert(1)!important}}


/* V20 — editorial manifesto, not a fine-print insert. No divider between the white scenes. */
.home-intro{height:calc(100vh + 44px);height:calc(100dvh + 44px);min-height:584px;background:#000}
.intro-inner{padding-bottom:calc(5vh + 44px)}
.present-line{font-family:"Helvetica Now Display","Helvetica Neue",Arial,Helvetica,sans-serif}
.home-institution{background:#fff;color:#111;margin:0;border:0;padding:clamp(112px,13vh,172px) clamp(23px,5.9vw,112px) clamp(72px,9vh,115px);font-family:"Helvetica Now Display","Helvetica Neue",Arial,Helvetica,sans-serif}
.institution-column{width:min(100%,1210px);max-width:1210px;margin:0 auto;font-size:inherit;line-height:normal;letter-spacing:normal}
.institution-column .institution-prose{margin:0;font-size:clamp(27px,3.13vw,47px);line-height:1.095;letter-spacing:-.042em;font-weight:400;text-wrap:pretty;color:#111}
.institution-column .institution-latin{font-size:clamp(11px,.92vw,13px);line-height:1.4;letter-spacing:0;font-weight:400;font-style:italic;color:#222;margin:0 0 30px}
.institution-column .institution-latin:first-child{margin:0 0 clamp(25px,3.9vw,56px)}
.institution-column .institution-final{margin:clamp(30px,4.1vw,60px) 0 0;color:#222}
.home-institution + .home-audit{margin-top:0;border:0;box-shadow:none}
/* Retune both luminous overlay and canvas fallback to the exact crimson / rose reveal family. */
.case-luminous{background:radial-gradient(ellipse 38% 57% at 49% 31%,rgba(231,32,81,.15),rgba(106,8,47,.06) 50%,transparent 76%)}
@media(max-width:760px){.home-institution{padding:clamp(88px,12vh,125px) 25px 68px}.institution-column{max-width:none;width:100%;margin:0}.institution-column .institution-prose{font-size:clamp(25px,5.7vw,37px);line-height:1.12;letter-spacing:-.038em}.institution-column .institution-latin:first-child{margin-bottom:32px}.institution-column .institution-final{margin-top:36px}}
@media(max-width:390px){.home-institution{padding-left:21px;padding-right:21px}.institution-column .institution-prose{font-size:clamp(23px,6.15vw,26px);line-height:1.12}}

/* V21 final institution typography */
.institution-column .institution-prose{font-weight:700!important}
.institution-column .institution-latin{font-style:normal!important}

/* V22 final institutional treatment: original full declaration, one continuous white scene. */
.home-institution{padding:clamp(92px,11vh,150px) clamp(26px,5.5vw,108px) clamp(64px,8vh,108px);background:#fff!important;border:0!important}
.institution-column{width:100%;max-width:1536px;margin-inline:auto}
.institution-column .institution-prose{font-family:"Helvetica Now Display","Helvetica Neue",Arial,sans-serif;font-size:clamp(29px,2.65vw,40px);font-weight:400!important;line-height:1.17;letter-spacing:-.032em;text-wrap:pretty;color:#101010}
.institution-column .institution-latin{font-family:"Helvetica Now Display","Helvetica Neue",Arial,sans-serif;font-size:clamp(12px,.96vw,14px);line-height:1.45;font-weight:400;font-style:normal!important;letter-spacing:-.006em}
.institution-prose.ink-ready .ink-char{color:#dedede;transition:color .12s linear}
.institution-prose.ink-ready .ink-char.is-read{color:#111}
.institution-prose .ink-word{white-space:nowrap}
@media(max-width:760px){.home-institution{padding:clamp(80px,10vh,108px) 23px 70px}.institution-column .institution-prose{font-size:clamp(23px,5.9vw,32px);line-height:1.18;letter-spacing:-.031em}}
@media(max-width:360px){.home-institution{padding-inline:19px}.institution-column .institution-prose{font-size:22px}}
@media(prefers-reduced-motion:reduce){.institution-prose.ink-ready .ink-char{color:#111!important;transition:none!important}}

/* V22 footer additions. Existing footer text, geometry, and tree are untouched. */
.v5-continuation .footer-socials{margin:-34px 0 clamp(65px,6.5vw,140px)}
.v5-continuation .footer-social-labels{display:flex;gap:clamp(18px,2vw,32px);flex-wrap:wrap}
.v5-continuation .footer-social-labels span{color:#e4e4e4;font-size:14px;line-height:1.3}
@media(max-width:560px){.v5-continuation .footer-socials{margin:-10px 0 70px}.v5-continuation .footer-social-labels span{font-size:13px}}
