:root{
  
  --c-bg:#F4F6F8;
  --c-surface:#FFFFFF;
  --c-text:#10161C;
  --c-muted:#48555F;
  --c-hairline:#C6CFD8;
  --c-primary:#2D7FF0;
  --c-primary-ink:#1B5FC0;
  --c-primary-lift:#4E93F5;
  --c-secondary:#FF0000;
  --c-secondary-lift:#FF3B3B;
  --c-accent:#FFB020;
  --c-dark:#0B1218;
  --c-dark-1:#131C24;
  --c-dark-2:#17222B;
  --c-dark-3:#1F2A33;
  --c-dark-text:#E8EDF2;
  --c-dark-muted:#9FB0BF;

  
  --ff-display:"Saira Condensed", "Arial Narrow", Arial, sans-serif;
  --ff-body:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
  --ff-mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;

  
  --sp-1:0.25rem;
  --sp-2:0.5rem;
  --sp-3:0.75rem;
  --sp-4:1rem;
  --sp-5:1.5rem;
  --sp-6:2rem;
  --sp-7:3rem;
  --sp-8:4rem;
  --sp-9:6rem;
  --sp-10:8rem;

  
  --gutter:clamp(1.25rem, 0.9rem + 2.4vw, 3rem);
  --maxw:1240px;
  --section-y:clamp(3.5rem, 2.4rem + 4.4vw, 7rem);
  --radius:4px;
  --radius-sm:2px;
  --header-h:72px;

  
  --mo-dur:320ms;
  --mo-ease:cubic-bezier(0.2, 0.85, 0.2, 1);
  --mo-dist:12px;
  --mo-stagger:55ms;
}
@media (min-width:900px){ :root{ --header-h:92px; } }

*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;overflow-x:hidden;}
body{
  margin:0;
  overflow-x:hidden;
  background:var(--c-bg);
  color:var(--c-text);
  font-family:var(--ff-body);
  font-size:1.0625rem;
  font-weight:400;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
@media (prefers-reduced-motion: no-preference){
  html{scroll-behavior:smooth;}
}
img,picture,video,canvas,svg{display:block;max-width:100%;}
img{height:auto;border-radius:0;}
input,button,textarea,select{font:inherit;color:inherit;}
button{cursor:pointer;}
hr{border:0;height:1px;background:var(--c-hairline);margin-block:var(--sp-6);}
ul,ol{margin:0;padding:0;}
figure,blockquote,p,h1,h2,h3,h4{margin:0;}

[id]{scroll-margin-top:calc(var(--header-h) + 1rem);}
#top{scroll-margin-top:0;}

h1,h2,h3,h4,.display{
  font-family:var(--ff-display);
  font-weight:700;
  line-height:1.04;
  letter-spacing:-0.02em;
  text-wrap:balance;
}
h1{
  font-size:clamp(2.1rem, 1.35rem + 3.2vw, 4.4rem);
  line-height:1.02;
  max-width:min(92vw, 800px);
}
h2{
  font-size:clamp(2rem, 1.2rem + 3vw, 4.5rem);
  font-weight:600;
  line-height:1.04;
  max-width:min(94vw, 20ch);
}
h3{
  font-size:clamp(1.35rem, 1.15rem + 0.7vw, 1.75rem);
  line-height:1.12;
  letter-spacing:-0.01em;
}
h4{font-size:1.1875rem;line-height:1.2;}
.tile-name{font-family:var(--ff-display);font-weight:700;font-size:1.55rem;line-height:1.1;letter-spacing:-0.01em;}
p{max-width:62ch;}
p + p{margin-top:var(--sp-4);}
.lede{font-size:clamp(1.125rem, 1.02rem + 0.4vw, 1.3125rem);line-height:1.55;max-width:58ch;}
.measure{max-width:62ch;}
.measure-narrow{max-width:52ch;}
.meta,.caption,figcaption{font-size:0.8125rem;line-height:1.5;color:var(--c-muted);max-width:56ch;}
strong,b{font-weight:600;}
small{font-size:0.8125rem;}

a{color:var(--c-primary-ink);text-decoration:none;}
a:hover{color:var(--c-text);}
.prose a{text-decoration:underline;text-underline-offset:0.18em;text-decoration-thickness:1px;}

:focus-visible{outline:2px solid var(--c-primary-ink);outline-offset:2px;}
.on-dark :focus-visible,.section--dark :focus-visible,.site-footer :focus-visible{outline-color:var(--c-primary-lift);}

.container{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter);}
.container--narrow{max-width:820px;}
.section{padding-block:var(--section-y);padding-inline:var(--gutter);}
main > section{padding-inline:var(--gutter);}
.section .container,main > section .container{padding-inline:0;}
.section--dark{background:var(--c-dark);color:var(--c-dark-text);}
.section--dark h1,.section--dark h2,.section--dark h3{color:var(--c-dark-text);}
.section--dark a{color:var(--c-primary-lift);}
.section--dark .meta,.section--dark .caption{color:var(--c-dark-muted);}
.section--surface{background:var(--c-surface);}
.band{padding-block:var(--section-y);padding-inline:var(--gutter);}
.band__inner{width:100%;max-width:var(--maxw);margin-inline:auto;}
.stack > * + *{margin-top:var(--sp-4);}
.stack-lg > * + *{margin-top:var(--sp-6);}

.grid{display:grid;gap:clamp(1.25rem, 1rem + 1.2vw, 2.25rem);grid-template-columns:minmax(0,1fr);}
@media (min-width:768px){
  .grid--2{grid-template-columns:repeat(2,minmax(0,1fr));}
  .grid--3{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (min-width:1000px){
  .grid--3{grid-template-columns:repeat(3,minmax(0,1fr));}
}

.visually-hidden,.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;}

.skip-link{position:absolute;left:var(--gutter);top:-160px;z-index:200;background:var(--c-dark);color:var(--c-dark-text);padding:0.75rem 1rem;font-size:0.9375rem;font-weight:600;border-bottom:3px solid var(--c-secondary);transition:top var(--mo-dur) var(--mo-ease);}
.skip-link:focus{top:0.5rem;color:var(--c-dark-text);}

.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;
  min-height:48px;padding:0.7rem 1.4rem;
  font-family:var(--ff-body);font-size:1.125rem;font-weight:600;letter-spacing:0.01em;line-height:1.2;
  border:2px solid transparent;border-radius:var(--radius);
  text-align:center;text-decoration:none;
  transition:background-color var(--mo-dur) var(--mo-ease), color var(--mo-dur) var(--mo-ease), border-color var(--mo-dur) var(--mo-ease), transform var(--mo-dur) var(--mo-ease);
}
.btn--primary{background:var(--c-primary);border-color:var(--c-primary);color:#FFFFFF;font-size:1.1875rem;font-weight:600;}
.btn--primary:hover,.btn--primary:focus-visible{background:var(--c-primary-ink);border-color:var(--c-primary-ink);color:#FFFFFF;}
.btn--ghost{background:transparent;border-color:var(--c-text);color:var(--c-text);}
.btn--ghost:hover,.btn--ghost:focus-visible{background:var(--c-text);color:var(--c-bg);}
.btn--dark{background:transparent;border-color:var(--c-primary-lift);color:var(--c-primary-lift);}
.btn--dark:hover,.btn--dark:focus-visible{background:var(--c-primary-lift);color:var(--c-dark);}
.btn--block{width:100%;}
@media (prefers-reduced-motion: no-preference){
  .btn:hover,.btn:focus-visible{transform:translateY(-2px);}
}

.live-line{
  display:block;width:70px;height:4px;border-radius:0;
  background:linear-gradient(to right, var(--c-primary) 0 56px, var(--c-secondary) 56px 70px);
  margin-top:0.75rem;
}
.live-line--tight{margin-top:0.5rem;}
.section--dark .live-line{background:linear-gradient(to right, var(--c-primary-lift) 0 56px, var(--c-secondary) 56px 70px);}
@media (prefers-reduced-motion: no-preference){
  .live-line{transform-origin:left center;transition:transform calc(var(--mo-dur) * 1.3) var(--mo-ease);}
  .reveal:not(.is-visible) .live-line,.reveal-stagger:not(.is-visible) .live-line{transform:scaleX(0);}
}

.kicker{
  display:flex;align-items:baseline;gap:0.5rem;
  font-size:0.8rem;line-height:1.2;margin-bottom:1rem;
}
.kicker__index{font-family:var(--ff-mono);font-weight:500;color:var(--c-secondary);letter-spacing:0.02em;}
.kicker__slash{color:var(--c-hairline);font-weight:400;}
.kicker__label{font-family:var(--ff-body);font-weight:600;text-transform:uppercase;letter-spacing:0.16em;color:var(--c-primary-ink);}
.section--dark .kicker__label,.on-dark .kicker__label{color:var(--c-primary-lift);}
.section--dark .kicker__slash,.on-dark .kicker__slash{color:#3A4753;}

.spec-plate{
  position:absolute;left:0;bottom:0;z-index:2;
  display:block;max-width:min(92%, 46ch);
  background:rgba(11,18,24,0.92);
  color:var(--c-dark-text);
  font-family:var(--ff-mono);font-size:0.8125rem;font-weight:400;line-height:1.35;
  letter-spacing:0.02em;text-transform:uppercase;
  padding:10px 14px;
  border-left:3px solid var(--c-accent);
}

.badge-247{
  display:inline-flex;align-items:center;gap:0.55rem;
  padding:0.4rem 0.85rem;
  border:1px solid var(--c-secondary);border-radius:999px;background:transparent;
  font-family:var(--ff-body);font-size:0.8rem;font-weight:600;letter-spacing:0.12em;
  text-transform:uppercase;color:var(--c-secondary);width:max-content;max-width:100%;
}
.badge-247__dot{width:8px;height:8px;border-radius:50%;background:var(--c-secondary);flex:0 0 auto;}
.section--dark .badge-247,.site-footer .badge-247,.on-dark .badge-247{border-color:var(--c-secondary-lift);color:var(--c-secondary-lift);}
.section--dark .badge-247__dot,.site-footer .badge-247__dot,.on-dark .badge-247__dot{background:var(--c-secondary-lift);}

.callout{background:var(--c-surface);border-left:4px solid var(--c-accent);padding:var(--sp-5) var(--sp-5);}
.callout p{max-width:56ch;}
.note-dark{background:var(--c-dark-2);border:1px solid #2A3742;color:var(--c-dark-text);padding:var(--sp-5);}
.note-dark__label{display:block;font-family:var(--ff-body);font-size:0.8rem;font-weight:600;text-transform:uppercase;letter-spacing:0.16em;color:var(--c-primary-lift);margin-bottom:0.6rem;}
.fact{display:block;}
.fact__num{display:block;font-family:var(--ff-display);font-weight:700;font-size:clamp(2.75rem, 2rem + 3.2vw, 5rem);line-height:0.95;letter-spacing:-0.02em;font-variant-numeric:tabular-nums;color:var(--c-primary-ink);}
.section--dark .fact__num,.on-dark .fact__num{color:var(--c-primary-lift);}
.fact__label{display:block;margin-top:0.5rem;font-size:0.875rem;line-height:1.4;letter-spacing:0.02em;color:var(--c-muted);max-width:32ch;}
.section--dark .fact__label,.on-dark .fact__label{color:var(--c-dark-muted);}

.step-ordinal{font-family:var(--ff-display);font-weight:700;font-size:5.5rem;line-height:0.85;letter-spacing:-0.03em;color:var(--c-dark-3);font-variant-numeric:tabular-nums;}

.frame{position:relative;overflow:hidden;background:var(--c-dark-1);border-radius:var(--radius);aspect-ratio:3 / 2;}
.frame--portrait{aspect-ratio:4 / 5;}
.frame--natural{aspect-ratio:auto;}
.frame img{width:100%;height:100%;object-fit:cover;object-position:var(--focal, 50% 50%);}
.frame--natural img{height:auto;}
.frame--scrim::after{content:"";position:absolute;inset:0;background:var(--c-dark);opacity:0.5;pointer-events:none;}
.img-treated{
  filter:contrast(1.09) saturate(1.04) brightness(0.98);
  background:var(--c-dark-1);
}
.frame--treated::before{
  content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:var(--c-primary);opacity:0.07;mix-blend-mode:soft-light;
}
.frame .spec-plate{z-index:3;}

.statement{display:flex;flex-direction:column;justify-content:center;min-height:max(700px, 82vh);padding-block:var(--section-y);padding-inline:var(--gutter);}
.statement__inner{width:100%;max-width:var(--maxw);margin-inline:auto;}
.statement__copy{font-family:var(--ff-display);font-weight:700;font-size:clamp(2.1rem, 1.35rem + 3.2vw, 4.4rem);line-height:1.14;letter-spacing:-0.02em;max-width:26ch;}

.pillars-reveal{display:grid;gap:1px;grid-template-columns:minmax(0,1fr);background:var(--c-hairline);}
@media (min-width:860px){ .pillars-reveal{grid-template-columns:repeat(3,minmax(0,1fr));} }
.pillars-reveal > *{position:relative;isolation:isolate;overflow:hidden;background:var(--c-surface);min-height:420px;}
.pillar__media{position:absolute;inset:0;z-index:0;clip-path:inset(0 0 55% 0);}
.pillar__media img{width:100%;height:100%;object-fit:cover;object-position:var(--focal, 50% 50%);}
.pillar__body{position:relative;z-index:1;}
@media (prefers-reduced-motion: no-preference) and (hover:hover){
  .pillar__media{transition:clip-path calc(var(--mo-dur) * 1.6) var(--mo-ease);}
  .pillars-reveal > *:hover .pillar__media,.pillars-reveal > *:focus-within .pillar__media{clip-path:inset(0 0 0 0);}
}
@media (hover:none){ .pillar__media{clip-path:inset(0 0 0 0);} }
@media (prefers-reduced-motion: reduce){ .pillar__media{clip-path:inset(0 0 0 0);transition:none;} }

.tour-scroller{display:flex;gap:clamp(0.75rem, 0.5rem + 1vw, 1.5rem);overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-block:0.25rem;}
.tour-scroller::-webkit-scrollbar{display:none;}
.tour-panel{scroll-snap-align:center;flex:0 0 auto;width:min(84vw, 520px);}

[data-card]{position:sticky;top:calc(var(--header-h, 0px) + 88px + (var(--card-i, 0) * 16px));}
@media (prefers-reduced-motion: reduce){ [data-card]{position:static;} }
@media (max-width:767px){ [data-card]{position:static;} }

[data-count]{font-family:var(--ff-display);font-weight:700;font-variant-numeric:tabular-nums;font-size:clamp(2.75rem, 2rem + 3.4vw, 5.25rem);line-height:0.95;letter-spacing:-0.02em;}

.quote-serif{font-family:var(--ff-body);font-style:italic;font-weight:500;font-size:clamp(1.3rem, 1.05rem + 1.1vw, 1.9rem);line-height:1.35;max-width:22ch;letter-spacing:-0.01em;}

.wordmark-footer{display:block;container-type:inline-size;}
.wordmark-footer .wordmark-footer__word{display:block;font-family:var(--ff-display);font-weight:700;line-height:0.9;letter-spacing:-0.02em;font-size:clamp(2.5rem, 9vw, 6rem);}
@supports (container-type:inline-size){
  .wordmark-footer .wordmark-footer__word{font-size:clamp(2.5rem, 16cqw, 6rem);}
}

.reveal{opacity:0;}
.reveal.is-visible{opacity:1;}
.reveal-stagger > *{opacity:0;}
.reveal-stagger.is-visible > *,.reveal-stagger > .is-visible{opacity:1;}

@media (prefers-reduced-motion: no-preference){
  .reveal{
    transform:translateY(var(--mo-dist));
    transition:opacity var(--mo-dur) var(--mo-ease) var(--reveal-delay, 0ms), transform var(--mo-dur) var(--mo-ease) var(--reveal-delay, 0ms);
  }
  .reveal.is-visible{transform:none;}
  .reveal-stagger > *{
    transform:translateY(var(--mo-dist));
    transition:opacity var(--mo-dur) var(--mo-ease) var(--reveal-delay, 0ms), transform var(--mo-dur) var(--mo-ease) var(--reveal-delay, 0ms);
  }
  .reveal-stagger.is-visible > *,.reveal-stagger > .is-visible{transform:none;}
  .reveal--fade,.kicker.reveal{transform:none;}

  .media-zoom{overflow:hidden;}
  .media-zoom img{transition:transform calc(var(--mo-dur) * 2) var(--mo-ease);will-change:transform;}
  .media-zoom:hover img,.media-zoom:focus-within img{transform:scale(1.03);}

  .link-draw{position:relative;display:inline-block;}
  .link-draw::after{content:"";position:absolute;left:0;right:0;bottom:-3px;height:2px;background:currentColor;transform:scaleX(0);transform-origin:left center;transition:transform var(--mo-dur) var(--mo-ease);}
  .link-draw:hover::after,.link-draw:focus-visible::after{transform:scaleX(1);}

  .ken-burns{animation:kb 12s var(--mo-ease) infinite alternate;}
  @keyframes kb{ from{transform:scale(1);} to{transform:scale(1.04);} }

  .card,.tile,.tour-panel{transition:transform var(--mo-dur) var(--mo-ease), background-color var(--mo-dur) var(--mo-ease), border-color var(--mo-dur) var(--mo-ease);}
  .card:hover,.card:focus-within,.tile:hover,.tile:focus-within{transform:translateY(-2px);}
}

@media (prefers-reduced-motion: reduce){
  .reveal,.reveal-stagger > *{transform:none !important;transition:opacity 1ms linear;}
  .ken-burns{animation:none;}
  .media-zoom img{transition:none;}
  .link-draw::after{transform:scaleX(1);transition:none;}
}

.card{background:var(--c-surface);border:1px solid var(--c-hairline);border-radius:var(--radius);padding:clamp(1.25rem, 1rem + 1vw, 2rem);}
.card--dark{background:var(--c-dark-2);border-color:#28343E;color:var(--c-dark-text);}
.card.card--dark h3,.card.card--dark h2{color:var(--c-dark-text);}
.tile{position:relative;background:var(--c-dark-1);color:var(--c-dark-text);border-left:3px solid transparent;padding:clamp(1.25rem, 1rem + 1vw, 2rem);}
.tile:hover,.tile:focus-within{background:var(--c-dark-2);border-left-color:var(--c-primary);}

.field{display:block;margin-bottom:var(--sp-5);}
.field > label{display:block;font-size:0.875rem;font-weight:600;letter-spacing:0.06em;text-transform:uppercase;margin-bottom:0.5rem;}
.field input,.field textarea,.field select{
  width:100%;min-height:52px;padding:0.85rem 1rem;
  background:var(--c-surface);color:var(--c-text);
  border:1px solid var(--c-hairline);border-bottom:2px solid var(--c-hairline);border-radius:var(--radius-sm);
  font-size:1.0625rem;
  transition:border-color var(--mo-dur) var(--mo-ease), background-color var(--mo-dur) var(--mo-ease);
}
.field textarea{min-height:150px;resize:vertical;}
.field input:focus,.field textarea:focus,.field select:focus{border-bottom-color:var(--c-primary);outline:2px solid transparent;outline-offset:2px;}
.field input:focus-visible,.field textarea:focus-visible{outline:2px solid var(--c-primary-ink);}
.form-wrap{padding:clamp(1.25rem, 1rem + 1.6vw, 2.5rem);background:var(--c-surface);border:1px solid var(--c-hairline);}
.section--dark .form-wrap{background:var(--c-dark-2);border-color:#28343E;}
.section--dark .field input,.section--dark .field textarea,.section--dark .field select{background:var(--c-dark-1);color:var(--c-dark-text);border-color:#33414D;border-bottom-color:#33414D;}

.site-header{
  position:sticky;top:0;z-index:100;
  background:var(--c-surface);
  border-bottom:1px solid var(--c-hairline);
}
.site-header__inner{
  display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);
  width:100%;max-width:var(--maxw);margin-inline:auto;
  padding-inline:var(--gutter);
  min-height:var(--header-h);
}
.identity{display:inline-flex;flex-direction:column;gap:0;color:var(--c-text);text-decoration:none;padding-block:0.6rem;}
.identity__name{
  display:block;position:relative;
  font-family:var(--ff-display);font-weight:700;text-transform:uppercase;
  font-size:clamp(1.55rem, 1.25rem + 1.3vw, 2.1rem);
  line-height:1;letter-spacing:-0.01em;color:var(--c-primary-ink);
  padding-bottom:7px;
}
.identity__name::after{content:"";position:absolute;left:0;bottom:0;width:100%;height:3px;background:var(--c-secondary);}
.identity__desc{
  display:block;margin-top:6px;
  font-family:var(--ff-body);font-weight:600;font-size:0.75rem;line-height:1.2;
  text-transform:uppercase;letter-spacing:0.12em;color:var(--c-text);
}
@media (min-width:420px){ .identity__desc{letter-spacing:0.16em;} }
.identity:hover .identity__name{color:var(--c-primary);}

.nav-toggle{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;}
.nav-toggle-label{display:none;}
.nav-close{display:none;}
.nav-scrim{display:none;}

.site-nav__list{list-style:none;}
.site-nav__list a{
  display:inline-flex;align-items:center;min-height:44px;
  font-family:var(--ff-body);font-weight:600;font-size:1rem;letter-spacing:0.04em;
  color:var(--c-text);text-decoration:none;position:relative;
  transition:color var(--mo-dur) var(--mo-ease), transform var(--mo-dur) var(--mo-ease);
}
.site-nav__list a:hover,.site-nav__list a:focus-visible{color:var(--c-primary-ink);}
.site-nav__list a[aria-current="page"]{color:var(--c-primary-ink);}
.site-nav__list a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:6px;height:3px;background:var(--c-accent);}

@media (max-width:899px){
  .nav-toggle-label{
    display:inline-flex;align-items:center;justify-content:center;
    width:48px;height:48px;flex:0 0 auto;margin-right:-6px;
    border:1px solid var(--c-hairline);border-radius:var(--radius-sm);
    background:var(--c-surface);cursor:pointer;
    transition:background-color var(--mo-dur) var(--mo-ease), transform var(--mo-dur) var(--mo-ease);
  }
  .nav-toggle-label:hover{background:var(--c-bg);}
  .nav-burger,.nav-burger::before,.nav-burger::after{display:block;width:22px;height:2px;background:var(--c-text);}
  .nav-burger{position:relative;}
  .nav-burger::before,.nav-burger::after{content:"";position:absolute;left:0;}
  .nav-burger::before{top:-7px;}
  .nav-burger::after{top:7px;}
  .nav-toggle:focus-visible + .site-header__inner .nav-toggle-label,
  .site-header__inner .nav-toggle-label:focus-visible{outline:2px solid var(--c-primary-ink);outline-offset:2px;}

  .site-nav{
    display:none;
    position:fixed;left:0;right:0;top:var(--header-h);
    max-height:calc(100dvh - var(--header-h));
    overflow-y:auto;-webkit-overflow-scrolling:touch;
    background:var(--c-surface);
    border-top:3px solid var(--c-primary);
    border-bottom:1px solid var(--c-hairline);
    padding:var(--sp-4) var(--gutter) var(--sp-6);
    z-index:120;
  }
  .nav-toggle:checked ~ .site-header__inner .site-nav{display:block;}
  .nav-toggle:checked ~ .nav-scrim{display:block;position:fixed;inset:0;top:var(--header-h);background:rgba(11,18,24,0.5);z-index:110;cursor:pointer;}
  .site-nav__list{display:flex;flex-direction:column;}
  .site-nav__list li{border-bottom:1px solid var(--c-hairline);}
  .site-nav__list a{display:flex;width:100%;min-height:56px;font-size:1.125rem;}
  .site-nav__cta{margin-top:var(--sp-5);width:100%;}
  .nav-close{
    display:inline-flex;align-items:center;justify-content:center;
    margin-top:var(--sp-4);min-height:44px;padding:0.5rem 1rem;cursor:pointer;
    font-size:0.875rem;font-weight:600;letter-spacing:0.16em;text-transform:uppercase;
    color:var(--c-muted);border:1px solid var(--c-hairline);border-radius:var(--radius-sm);
    transition:color var(--mo-dur) var(--mo-ease), border-color var(--mo-dur) var(--mo-ease);
  }
  .nav-close:hover{color:var(--c-text);border-color:var(--c-text);}
}

@media (min-width:900px){
  .site-nav{display:flex;align-items:center;gap:clamp(1.25rem, 0.6rem + 1.6vw, 2.5rem);position:static;max-height:none;overflow:visible;background:transparent;border:0;padding:0;}
  .site-nav__list{display:flex;align-items:center;gap:clamp(1.25rem, 0.8rem + 1vw, 2.25rem);}
  .site-nav__list li{border:0;}
  .site-nav__cta{margin:0;width:auto;}
  .nav-toggle-label,.nav-close,.nav-scrim{display:none;}
}

.site-footer{
  margin-top:0;
  background:var(--c-dark);
  color:var(--c-dark-text);
  padding-block:clamp(3.25rem, 2.4rem + 3vw, 5.5rem) clamp(1.75rem, 1.4rem + 1vw, 2.5rem);
  border-top:4px solid var(--c-primary);
}
.site-footer a{color:var(--c-dark-text);}
.site-footer a:hover{color:var(--c-primary-lift);}
.site-footer__top{display:grid;gap:clamp(2rem, 1.4rem + 2.4vw, 3.5rem);grid-template-columns:minmax(0,1fr);}
@media (min-width:760px){ .site-footer__top{grid-template-columns:1.4fr 0.8fr 1.1fr;} }
.footer-wordmark{display:block;color:var(--c-dark-text);text-decoration:none;max-width:420px;}
.footer-wordmark__name{color:var(--c-primary-lift);text-transform:uppercase;position:relative;padding-bottom:10px;}
.footer-wordmark__name::after{content:"";position:absolute;left:0;bottom:0;width:100%;height:3px;background:var(--c-secondary);}
.footer-wordmark__desc{display:block;margin-top:10px;font-family:var(--ff-body);font-weight:600;font-size:0.8125rem;line-height:1.3;text-transform:uppercase;letter-spacing:0.16em;color:var(--c-dark-text);}
.site-footer__line{margin-top:var(--sp-4);color:var(--c-dark-muted);font-size:0.9375rem;max-width:38ch;}
.site-footer .badge-247{margin-top:var(--sp-4);}
.site-footer__h{font-family:var(--ff-body);font-size:0.8125rem;font-weight:600;letter-spacing:0.16em;text-transform:uppercase;color:var(--c-dark-muted);margin:0 0 var(--sp-3);max-width:none;line-height:1.4;}
.site-footer__list{list-style:none;display:flex;flex-direction:column;gap:0.15rem;}
.site-footer__list li{font-size:1rem;color:var(--c-dark-muted);}
.site-footer__list a{display:inline-flex;align-items:center;min-height:44px;font-weight:500;}
.site-footer__list span{display:inline-flex;align-items:center;min-height:44px;}
.site-footer__bottom{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;
  gap:var(--sp-3) var(--sp-5);
  margin-top:clamp(2.25rem, 1.8rem + 2vw, 3.5rem);
  padding-top:var(--sp-4);
  border-top:1px solid #22303B;
}
.site-footer__copy{font-size:0.8125rem;color:var(--c-dark-muted);max-width:none;}
.site-footer__legal{list-style:none;display:flex;flex-wrap:wrap;gap:var(--sp-4);}
.site-footer__legal a{font-size:0.8125rem;color:var(--c-dark-muted);display:inline-flex;align-items:center;min-height:44px;}
.site-footer__legal a:hover{color:var(--c-dark-text);}
.site-footer__by{font-size:0.8125rem;}
.site-footer__by a{color:var(--c-dark-muted);}
.site-footer__by a:hover{color:var(--c-primary-lift);}

.social-row{display:flex;flex-wrap:wrap;gap:var(--sp-3);margin-top:var(--sp-5);}
.social-row a{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;color:var(--c-dark-text);font-size:1.25em;transition:color var(--mo-dur) var(--mo-ease), transform var(--mo-dur) var(--mo-ease);}
.social-row a:hover{color:var(--c-primary-lift);}

@media (min-width:900px){
  .nav-toggle-label,.nav-close,.nav-scrim{display:none;}
  .site-nav{display:flex;position:static;}
}

.reveal{opacity:0;transition:opacity var(--mo-dur,600ms) var(--mo-ease,cubic-bezier(.22,1,.36,1));transition-delay:var(--reveal-delay,0ms)}
.reveal.is-visible{opacity:1}
.reveal-stagger>*{opacity:0;transition:opacity var(--mo-dur,600ms) var(--mo-ease,cubic-bezier(.22,1,.36,1));transition-delay:var(--reveal-delay,0ms)}
.reveal-stagger.is-visible>*,.reveal-stagger>.is-visible{opacity:1}
@media (prefers-reduced-motion:no-preference){
  .reveal{transform:translateY(14px);transition:opacity var(--mo-dur,600ms) var(--mo-ease,cubic-bezier(.22,1,.36,1)),transform var(--mo-dur,600ms) var(--mo-ease,cubic-bezier(.22,1,.36,1))}
  .reveal.is-visible{transform:none}
  .reveal-stagger>*{transform:translateY(14px);transition:opacity var(--mo-dur,600ms) var(--mo-ease,cubic-bezier(.22,1,.36,1)),transform var(--mo-dur,600ms) var(--mo-ease,cubic-bezier(.22,1,.36,1))}
  .reveal-stagger.is-visible>*,.reveal-stagger>.is-visible{transform:none}
}
@media (prefers-reduced-motion:reduce){.reveal,.reveal-stagger>*{opacity:1;transform:none;transition:none}}
.split-word{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.08em;margin-bottom:-.08em}
.split-word__i{display:inline-block}
html.motion [data-split] .split-word__i{transform:translateY(112%);opacity:0}
html.motion [data-split].is-visible .split-word__i{transform:none;opacity:1;transition:transform var(--mo-split-dur,900ms) var(--mo-ease,cubic-bezier(.22,1,.36,1)),opacity var(--mo-split-dur,900ms) var(--mo-ease,cubic-bezier(.22,1,.36,1));transition-delay:calc(var(--split-i,0) * var(--mo-split-stagger,40ms))}
[data-magnetic]{transition:transform .5s var(--mo-ease,cubic-bezier(.22,1,.36,1))}
.marquee{overflow:hidden}
.marquee-track{display:flex;width:max-content}
html.motion .marquee-track{animation:nn-marquee var(--mo-marquee-dur,40s) linear infinite}
.marquee:hover .marquee-track,.marquee:focus-within .marquee-track{animation-play-state:paused}
@keyframes nn-marquee{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
@media (prefers-reduced-motion:reduce){
  html.motion [data-split] .split-word__i,html.motion [data-split].is-visible .split-word__i{transform:none;opacity:1;transition:none}
  .marquee-track,html.motion .marquee-track{animation:none}
  [data-magnetic]{transition:none;transform:none}
}
.shape-steps [data-card]{position:sticky;top:calc(var(--header-h,0px) + 88px + (var(--card-i,0) * 16px));margin-bottom:1.5rem}
@media(prefers-reduced-motion:reduce){.shape-steps [data-card]{position:static}}
.shape-statement{min-height:max(700px,82vh);display:flex;align-items:center}
.shape-statement .statement__copy{font-size:var(--display-size,clamp(1.75rem,4.1vw,3.75rem));font-weight:300;line-height:1.14;letter-spacing:-.022em;max-width:26ch}
.shape-wordmark{container-type:inline-size;overflow:hidden}
.shape-wordmark .wordmark{display:block;font-size:clamp(3.5rem,29vw,15rem);font-weight:300;line-height:.82;letter-spacing:-.045em}
@supports (font-size:1cqw){.shape-wordmark .wordmark{font-size:38cqw}}
/* nn:mobile-floor */
@media (max-width:899px){
.site-header{position:sticky}
.header__bar{flex-wrap:nowrap}
.nav-panel{position:absolute;top:100%;left:0;right:0;width:100%;max-height:calc(100dvh - var(--header-h,64px));overflow-y:auto;-webkit-overflow-scrolling:touch}
}
input,select,textarea{min-width:0;box-sizing:border-box;max-width:100%}
input[type="date"],input[type="time"],input[type="datetime-local"],input[type="month"],input[type="week"]{-webkit-appearance:none;appearance:none;width:100%}
input[type="date"]::-webkit-date-and-time-value{text-align:left;margin:0}
input[type="date"]::-webkit-calendar-picker-indicator{margin-inline-start:auto}

/* nn:nav-open-floor */
@media (max-width:899px){
header:has(.nav-toggle:checked) :where(.nav-panel,.mobile-nav,.mobile-menu,#nav-panel,#mobile-nav,#mobile-menu,#site-menu),
header:has(input[id="nav-toggle"]:checked) :where(.nav-panel,.mobile-nav,.mobile-menu,#nav-panel,#mobile-nav,#mobile-menu,#site-menu),
header:has(input[id="menu-toggle"]:checked) :where(.nav-panel,.mobile-nav,.mobile-menu,#nav-panel,#mobile-nav,#mobile-menu,#site-menu),
header:has(input[id="nav-check"]:checked) :where(.nav-panel,.mobile-nav,.mobile-menu,#nav-panel,#mobile-nav,#mobile-menu,#site-menu){display:block;max-height:calc(100dvh - var(--header-h,64px));overflow-y:auto;visibility:visible;opacity:1;transform:none;pointer-events:auto}
}
