@font-face{font-family:Manrope;src:url('/brand/fonts/Manrope-Variable.woff2') format('woff2');font-weight:200 800;font-style:normal;font-display:swap}
:root{color-scheme:dark;--background:#05070a;--text:#f1f4f8;--muted:#9bA5b4;--blue:#7fbaff;--line:rgba(164,188,218,.16);font-family:Manrope,sans-serif;font-synthesis:none}
*{box-sizing:border-box}
html{background:var(--background);scroll-behavior:smooth}
body{margin:0;color:var(--text);-webkit-font-smoothing:antialiased}
button,a{-webkit-tap-highlight-color:transparent}
button{font:inherit}
button[hidden],[hidden]{display:none!important}
button:focus-visible,a:focus-visible{outline:2px solid var(--blue);outline-offset:7px}
button{cursor:pointer}
::selection{background:#234e77;color:white}
.page{position:relative;isolation:isolate;min-height:800px;height:100svh;overflow:hidden;background:var(--background)}
.field{position:absolute;inset:0;z-index:-1;pointer-events:none;animation:field-enter 2.2s ease-out both}
.field canvas{position:absolute;inset:0;width:100%;height:100%;opacity:0;transition:opacity 1.2s ease}
.field.is-ready canvas{opacity:1}
.field-fallback{position:absolute;inset:0;background:url('/field-fallback.svg') 74% 48% / min(65vw,1000px) auto no-repeat;opacity:.7;transition:opacity .8s}
.field.is-ready .field-fallback{opacity:0}
.field-vignette{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,7,10,.3),transparent 55%),linear-gradient(0deg,#05070a 0%,transparent 24%,transparent 83%,rgba(5,7,10,.3))}
.header{position:absolute;top:0;left:0;right:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:39px 4.3vw}
.brand{display:inline-flex;align-items:center;opacity:.95;transition:opacity .2s}
.brand:hover{opacity:.65}
.brand img{display:block;width:144px;height:auto}
.hero{position:relative;min-height:100%;display:flex;align-items:center;padding:135px 8.4vw 142px}
.hero-copy{position:relative;z-index:1;padding-top:15px}
.eyebrow{display:flex;align-items:center;gap:13px;margin:0 0 27px;font-size:9px;line-height:1.6;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:#a6b5c9}
.small-cross{font-size:20px;font-weight:300;color:#8aafd4;line-height:10px;transform:translateY(-1px)}
h1{font-size:clamp(96px,11.4vw,178px);line-height:1.05;font-weight:500;letter-spacing:-.085em;margin:0 0 33px -8px}
.title-period{color:#7cb7ff;margin-left:1px}
h2{margin:0;font-size:clamp(27px,2.6vw,39px);line-height:1.28;letter-spacing:-.045em;font-weight:400}
h2 span{color:#a5afbd}
.description{font-size:12px;line-height:1.9;letter-spacing:.015em;color:#94a1b3;margin:24px 0 0}
.hero-action{display:flex;flex-direction:column;align-items:flex-start;gap:13px;margin-top:32px}
.shift-button{display:flex;align-items:center;gap:34px;padding:14px 16px 14px 20px;min-height:46px;color:#e1eaf6;font-size:10px;font-weight:500;letter-spacing:.02em;border:1px solid #96bad137;border-radius:3px;background:linear-gradient(110deg,#9bcfff0a,#a9d1ff03);transition:border-color .25s,background .25s}
.shift-button svg{width:17px;height:17px;color:#91b6e1;transition:transform .3s}
.shift-button:hover{border-color:#91b6e188;background:#71b4ff12}
.shift-button:hover svg{transform:translateX(4px)}
.shift-button:active svg{transform:translateX(6px)}
.action-note{font-size:9px;letter-spacing:.015em;color:#8190a4}
.field-caption{position:absolute;right:9.1%;bottom:19.5%;width:208px;opacity:.85;animation:caption-enter 1.6s 1.1s both}
.caption-line{height:1px;width:100%;background:linear-gradient(90deg,transparent,#6889af73);margin-bottom:14px;position:relative}
.caption-line:after{content:'';position:absolute;right:0;top:-2px;width:5px;height:5px;border:1px solid #86aace;transform:rotate(45deg)}
.caption-text{display:flex;flex-direction:column;gap:9px}
.field-label{font-size:10px;font-weight:400;letter-spacing:.02em;color:#c1ccdb}
.field-index{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:8px;letter-spacing:.12em;color:#889ab0}
.footer{position:absolute;bottom:0;left:4.3vw;right:4.3vw;display:flex;align-items:center;justify-content:space-between;padding:25px 0 30px;border-top:1px solid var(--line);font-size:9px;letter-spacing:.05em;color:#8996a8}
.footer p{margin:0;position:absolute;left:50%;transform:translateX(-50%);letter-spacing:.035em}
.copyright{font-size:8px;margin-left:auto}
.reveal{animation:content-enter 1.05s cubic-bezier(.22,.7,.24,1) both}
.reveal:nth-child(2){animation-delay:.1s}
.reveal:nth-child(3){animation-delay:.2s}
.reveal:nth-child(4){animation-delay:.3s}
.reveal:nth-child(5){animation-delay:.4s}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;top:12px;left:12px;z-index:10;padding:12px 16px;background:#eaf2ff;color:#05070a;transform:translateY(-150%)}
.skip-link:focus{transform:translateY(0)}
.error-page{min-height:100svh;display:grid;place-content:center;padding:32px;text-align:center;background:radial-gradient(ellipse at center,#0c1b2b,#05070a 65%)}
.error-page img{width:56px;height:56px;justify-self:center;margin-bottom:38px}
.error-page h1{font-size:56px;letter-spacing:-.05em;margin:0 0 20px}
.error-page p{color:var(--muted);font-size:14px;line-height:1.8}
.error-page a{color:#b7d7ff;text-decoration:none;margin-top:20px;font-size:13px}
.about-link{font-size:10px;color:#a5afbd;text-underline-offset:4px;margin-top:7px}
.about-header{padding:39px 4.3vw}
.about-content{max-width:760px;margin:50px auto 80px;padding:0 28px}
.about-content h1{font-size:clamp(42px,7vw,76px);letter-spacing:-.06em;margin:0 0 28px}
.about-content h2{font-size:24px;margin-top:40px}
.about-content p{font-size:15px;line-height:1.9;color:var(--muted)}
.about-content .eyebrow{font-size:9px}
.about-content .about-intro{font-size:19px;color:var(--text)}
.about-content a{color:#b7d7ff;text-underline-offset:4px}
.about-content .about-signoff{margin-top:50px}
.about-footer{max-width:704px;margin:0 auto;padding:24px 28px 36px;border-top:1px solid var(--line);font-size:11px;line-height:1.8;color:var(--muted)}
@keyframes content-enter{from{opacity:0;transform:translateY(18px);filter:blur(4px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
@keyframes field-enter{from{opacity:0;transform:scale(1.06)}to{opacity:1;transform:scale(1)}}
@keyframes caption-enter{from{opacity:0;transform:translateX(10px)}to{opacity:.85;transform:translateX(0)}}
@media(min-width:1800px){.hero{padding-left:10vw}.field-caption{right:12%}}
@media(max-height:780px) and (min-width:761px){.page{min-height:660px}.hero{padding-top:100px;padding-bottom:98px}.eyebrow{margin-bottom:15px}h1{font-size:clamp(90px,10vw,140px);margin-bottom:21px}h2{font-size:29px}.description{margin-top:17px}.hero-action{margin-top:23px}.header{padding-top:28px}.footer{padding-bottom:24px}.field-caption{bottom:19%}}
@media(max-width:1100px) and (min-width:761px){.hero{padding-left:7vw}h1{font-size:12vw}.field-caption{right:6%;width:170px}.field-vignette{background:linear-gradient(90deg,#05070a66,transparent 70%)}}
@media(max-width:760px){
  .page{height:100svh;min-height:820px}
  .header{padding:27px 25px}
  .brand img{width:121px}
  .hero{align-items:flex-end;padding:390px 29px 125px}
  .hero-copy{width:100%;padding-top:0}
  .eyebrow{font-size:7.3px;letter-spacing:.14em;gap:9px;margin-bottom:19px}
  .small-cross{font-size:16px}
  h1{font-size:clamp(70px,16.9vw,122px);margin:0 0 20px -3px;letter-spacing:-.08em}
  h2{font-size:28px;line-height:1.25}
  h2 br{display:none}
  h2 span{display:block}
  .description{font-size:12px;line-height:1.85;margin-top:19px}
  .hero-action{margin-top:24px;gap:12px}
  .shift-button{font-size:10px;min-height:44px;padding:12px 16px;gap:29px}
  .action-note{font-size:9px}
  .field-fallback{background-size:580px;background-position:50% 0%}
  .field-vignette{background:linear-gradient(0deg,#05070a 0%,#05070a 48%,transparent 65%,transparent 84%,#05070a66)}
  .field-caption{right:27px;top:337px;bottom:auto;width:116px;opacity:.85}
  .caption-line{margin-bottom:9px}
  .field-label{font-size:8px}
  .field-index{font-size:7px}
  .caption-text{gap:6px}
  .footer{left:25px;right:25px;padding:20px 0 24px;font-size:8px}
  .footer p{position:static;transform:none;margin-left:auto;font-size:8px}
  .copyright{display:none}
}
@media(max-width:380px){.header{padding-inline:20px}.hero{padding-inline:24px}.brand img{width:113px}.eyebrow{font-size:6.8px}.footer{left:20px;right:20px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
