:root{
  
  --c-bg:#FBF5EF;
  --c-surface:#F3E7DC;
  --c-text:#241A19;
  --c-primary:#5C1F3C;
  --c-primary-hover:#A04F33;
  --c-secondary:#B85B3C;
  --c-accent:#DFA24C;
  --c-dark-bg:#1B1012;
  --c-dark-text:#F6EBE1;
  --c-rule:rgb(184 91 60 / 0.30);
  --c-rule-dark:rgb(246 235 225 / 0.26);
  --c-tint:rgb(92 31 60 / 0.06);
  --c-tint-dark:rgb(246 235 225 / 0.06);

  
  --f-display:"Fraunces","Iowan Old Style",Georgia,"Times New Roman",serif;
  --f-body:"Karla","Helvetica Neue",Helvetica,Arial,sans-serif;

  
  --sp-1:.25rem; --sp-2:.5rem; --sp-3:.75rem; --sp-4:1rem;
  --sp-5:1.5rem; --sp-6:2rem; --sp-7:3rem; --sp-8:4rem; --sp-9:6rem;
  --gutter:clamp(1.25rem, 1rem + 2vw, 3rem);
  --section-y:clamp(4rem, 3rem + 5vw, 8rem);
  --maxw:1180px;

  
  --radius:4px;
  --radius-lg:10px;

  
  --mo-dur:620ms;
  --mo-ease:cubic-bezier(0.22,0.68,0.24,1);
  --mo-dist:24px;
  --mo-stagger:95ms;
  --reveal-delay:0ms;

  
  --header-h:68px;
}
@media (min-width:900px){ :root{ --header-h:84px; } }

*,*::before,*::after{box-sizing:border-box}
*{margin:0}
html{ -webkit-text-size-adjust:100%; overflow-x:hidden; }
body{
  overflow-x:hidden;
  background:var(--c-bg);
  color:var(--c-text);
  font-family:var(--f-body);
  font-weight:400;
  font-size:17px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img,svg,video,canvas{display:block;max-width:100%}
img{height:auto}
input,button,textarea,select{font:inherit;color:inherit}
ul,ol{list-style:none;padding:0}

@media (prefers-reduced-motion: no-preference){
  html{ scroll-behavior:smooth; }
}

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

.container{
  width:100%;
  max-width:var(--maxw);
  margin-inline:auto;
  padding-inline:var(--gutter);
}

.section__inner,.bleed-inner{
  width:100%;
  max-width:var(--maxw);
  margin-inline:auto;
  padding-inline:var(--gutter);
}
section{ padding-block:var(--section-y); }

section > h1,section > h2,section > h3,section > h4,
section > p,section > ul,section > ol,section > blockquote{
  padding-inline:var(--gutter);
}
.measure{max-width:62ch}
.center{margin-inline:auto;text-align:center}
.stack > * + *{margin-top:var(--sp-4)}
.stack-lg > * + *{margin-top:var(--sp-6)}

h1,h2,h3,h4{
  font-family:var(--f-display);
  font-weight:600;
  font-variation-settings:"SOFT" 60,"WONK" 0;
  color:var(--c-primary);
  letter-spacing:-.02em;
  line-height:1.08;
  text-wrap:balance;
}
h1{
  font-size:clamp(2.5rem, 1.4rem + 5.4vw, 7rem);
  line-height:1.0;
  letter-spacing:-.025em;
  font-variation-settings:"SOFT" 60,"WONK" 0,"opsz" 72;
}
h2{ font-size:clamp(2rem, 1.2rem + 3vw, 4.5rem); line-height:1.05; font-variation-settings:"SOFT" 60,"WONK" 0,"opsz" 72; }
h3{ font-size:clamp(1.25rem, 1.1rem + 0.6vw, 1.75rem); line-height:1.2; }
h4{ font-size:1.125rem; line-height:1.3; }
p{ max-width:62ch; }
p + p{ margin-top:var(--sp-4); }
strong{font-weight:700}
small{font-size:14px}

.hero__copy{ max-width:min(94vw, 1080px); }
.hero__copy p{ max-width:56ch; }
.mark-accent{ font-weight:300; letter-spacing:-.01em; }

.kicker{
  display:inline-block;
  font-family:var(--f-body);
  font-weight:700;
  font-size:12px;
  line-height:1.2;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--c-primary);
}
.kicker + .cinch-rule{ margin-top:10px; }
.lede{ font-size:clamp(1.0625rem, 1rem + 0.35vw, 1.3125rem); line-height:1.55; max-width:56ch; }
.meta{ font-size:14px; line-height:1.5; color:var(--c-primary); opacity:.8; }

a{ color:var(--c-primary); text-decoration:underline; text-underline-offset:3px; text-decoration-thickness:1px; transition:color 180ms var(--mo-ease), text-underline-offset 180ms var(--mo-ease), opacity 180ms var(--mo-ease); }
a:hover{ color:var(--c-secondary); text-underline-offset:5px; }
:focus-visible{ outline:2px solid var(--c-primary); outline-offset:3px; border-radius:2px; }
.section--dark :focus-visible,.site-footer :focus-visible{ outline-color:var(--c-accent); }

.link-draw{ position:relative; text-decoration:none; }
.link-draw::after{
  content:""; position:absolute; left:0; right:0; bottom:-3px; height:2px;
  background:var(--c-secondary); transform:scaleX(0); transform-origin:left;
  transition:transform 320ms var(--mo-ease);
}
.link-draw:hover::after,.link-draw:focus-visible::after{ transform:scaleX(1); }

.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:.5rem;
  min-height:48px; padding:.85rem 1.6rem;
  font-family:var(--f-body); font-weight:700; font-size:16px; line-height:1.1;
  letter-spacing:.01em; text-decoration:none; border-radius:var(--radius);
  border:1px solid transparent; cursor:pointer;
  transition:background-color 180ms var(--mo-ease), color 180ms var(--mo-ease), border-color 180ms var(--mo-ease), transform 180ms var(--mo-ease);
}
.btn--primary{ background:var(--c-primary); color:var(--c-bg); border-color:var(--c-primary); }
.btn--primary:hover,.btn--primary:focus-visible{ background:var(--c-primary-hover); border-color:var(--c-primary-hover); color:var(--c-bg); }
.btn--ghost{ background:transparent; color:var(--c-primary); border-color:var(--c-primary); }
.btn--ghost:hover,.btn--ghost:focus-visible{ background:var(--c-tint); color:var(--c-primary); }
@media (prefers-reduced-motion: no-preference){
  .btn:hover,.btn:focus-visible{ transform:translateY(-2px); }
}

.cinch-rule{
  position:relative; display:block; width:100%; max-width:220px; height:3px;
}
.cinch-rule::before{
  content:""; position:absolute; left:0; right:0; top:50%; height:1px;
  transform:translateY(-50%); background:var(--c-rule);
}
.cinch-rule::after{
  content:""; position:absolute; left:50%; top:50%; width:36px; height:3px;
  transform:translate(-50%,-50%); border-radius:2px; background:var(--c-accent);
}
.cinch-rule--sm{ max-width:64px; height:3px; }
.cinch-rule--sm::after{ width:18px; height:2px; }
.cinch-rule--wide{ max-width:none; }

.goal-wash{
  padding:.02em .15em;
  border-radius:2px;
  box-decoration-break:clone;
  -webkit-box-decoration-break:clone;
  background-image:linear-gradient(180deg, transparent 52%, rgba(184,91,60,0.22) 52%);
  background-repeat:no-repeat;
  background-size:100% 100%;
}

.step-index{
  display:flex; align-items:center; gap:10px;
  font-family:var(--f-display); font-weight:600; font-size:13px;
  letter-spacing:.12em; line-height:1;
  color:rgb(92 31 60 / 0.55);
  margin-bottom:8px;
}
.step-index::after{
  content:""; display:block; width:14px; height:2px; border-radius:1px;
  background:var(--c-accent); transform-origin:left;
}

.section--surface{ background:var(--c-surface); }
.card{
  background:var(--c-surface);
  border:1px solid rgb(184 91 60 / 0.16);
  border-radius:var(--radius-lg);
  padding:clamp(1.25rem, 1rem + 1.4vw, 2.25rem);
  transition:transform var(--mo-dur) var(--mo-ease), border-color 220ms var(--mo-ease), background-color 220ms var(--mo-ease);
}
.card p{ font-size:16px; line-height:1.55; }
@media (prefers-reduced-motion: no-preference){
  .card:hover,.card:focus-within{ transform:translateY(-4px); border-color:rgb(184 91 60 / 0.38); }
}
.callout{
  background:var(--c-surface);
  border-left:3px solid var(--c-accent);
  padding:var(--sp-5) var(--sp-6);
  border-radius:0 var(--radius) var(--radius) 0;
  max-width:62ch;
}
.fact{ display:block; }
.fact__num{ font-family:var(--f-display); font-weight:600; font-variant-numeric:tabular-nums; font-size:clamp(2.25rem, 1.5rem + 3vw, 4rem); line-height:1; color:var(--c-primary); letter-spacing:-.02em; }
.fact__label{ display:block; margin-top:var(--sp-2); font-size:15px; }

.section--dark{ background:var(--c-dark-bg); color:var(--c-dark-text); }
.section--dark h1,.section--dark h2,.section--dark h3,.section--dark h4{ color:var(--c-dark-text); }
.section--dark .kicker{ color:var(--c-dark-text); }
.section--dark .cinch-rule::before{ background:var(--c-rule-dark); }
.section--dark a{ color:var(--c-accent); }
.section--dark a:hover{ color:var(--c-dark-text); }
.section--dark .btn--primary{ background:var(--c-accent); border-color:var(--c-accent); color:var(--c-text); }
.section--dark .btn--primary:hover,.section--dark .btn--primary:focus-visible{ background:var(--c-dark-text); border-color:var(--c-dark-text); color:var(--c-text); }
.section--dark .btn--ghost{ color:var(--c-dark-text); border-color:rgb(246 235 225 / 0.4); }
.section--dark .btn--ghost:hover{ background:var(--c-tint-dark); color:var(--c-dark-text); }
.section--dark .card,.card--dark{ background:rgb(246 235 225 / 0.05); border-color:rgb(246 235 225 / 0.16); color:var(--c-dark-text); }
.section--dark .fact__num{ color:var(--c-accent); }

.section--dark .callout,.callout--on-dark{
  background:rgb(246 235 225 / 0.06);
  border:1px solid rgb(246 235 225 / 0.22);
  border-left-width:1px;
  border-radius:var(--radius);
  color:var(--c-dark-text);
}

hr{ border:0; height:1px; background:var(--c-rule); margin-block:var(--sp-6); }

.img-treated{
  filter:saturate(0.98) contrast(1.03) brightness(1.02) sepia(0.14) hue-rotate(-8deg);
  border-radius:var(--radius);
}
.section--dark .img-treated{ filter:saturate(0.95) contrast(1.05) brightness(0.98) sepia(0.16) hue-rotate(-8deg); }

.statement{
  min-height:max(700px, 82vh);
  display:flex; flex-direction:column; justify-content:center;
}
.statement__copy{
  font-family:var(--f-display); font-weight:600;
  font-size:clamp(2.25rem, 1.3rem + 4.2vw, 5rem);
  line-height:1.14; letter-spacing:-.02em; max-width:26ch;
}

.pillars-reveal{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:clamp(1rem, 0.6rem + 1.4vw, 2rem); }
.pillars-reveal > *{ position:relative; isolation:isolate; overflow:hidden; border-radius:var(--radius-lg); min-height:340px; }
.pillar__photo{ position:absolute; inset:0; z-index:-1; width:100%; height:100%; object-fit:cover; clip-path:inset(0 0 55% 0); transition:clip-path calc(var(--mo-dur) * 1.2) var(--mo-ease); }
.pillars-reveal > :hover .pillar__photo,.pillars-reveal > :focus-within .pillar__photo{ clip-path:inset(0 0 0 0); }
@media (max-width:767px){ .pillars-reveal{ grid-template-columns:1fr; } }
@media (hover:none){ .pillar__photo{ clip-path:inset(0 0 0 0); } }

.tour-scroller{ display:flex; gap:clamp(1rem, 0.7rem + 1vw, 1.75rem); overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; -ms-overflow-style:none; padding-inline:var(--gutter); padding-block:var(--sp-2); }
.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)); }

[data-count]{ font-family:var(--f-display); font-weight:600; font-variant-numeric:tabular-nums; font-size:clamp(2.5rem, 1.5rem + 3.6vw, 5rem); line-height:1; letter-spacing:-.025em; color:var(--c-primary); }
.section--dark [data-count]{ color:var(--c-accent); }

.quote-serif{ font-family:var(--f-display); font-weight:500; font-style:italic; font-size:clamp(1.5rem, 1.1rem + 1.6vw, 2.5rem); line-height:1.25; max-width:22ch; color:var(--c-primary); }
.section--dark .quote-serif{ color:var(--c-dark-text); }

.wordmark-footer{ container-type:inline-size; }
.wordmark-footer__type{ font-family:var(--f-display); font-weight:600; letter-spacing:-.03em; line-height:.92; font-size:clamp(3rem, 1rem + 11vw, 10rem); }
@supports (container-type:inline-size){ .wordmark-footer__type{ font-size:14cqw; } }

.reveal{ opacity:0; transition:opacity var(--mo-dur) var(--mo-ease), transform var(--mo-dur) var(--mo-ease); transition-delay:var(--reveal-delay, 0ms); }
.reveal.is-visible{ opacity:1; transform:none; }
.reveal-stagger > *{ opacity:0; transition:opacity var(--mo-dur) var(--mo-ease), transform var(--mo-dur) var(--mo-ease); transition-delay:var(--reveal-delay, 0ms); }
.reveal-stagger.is-visible > *,.reveal-stagger > .is-visible{ opacity:1; transform:none; }
.media-zoom{ overflow:hidden; border-radius:var(--radius); }
.media-zoom img{ width:100%; transition:transform calc(var(--mo-dur) * 2) var(--mo-ease); }

@media (prefers-reduced-motion: no-preference){
  .reveal{ transform:translateY(var(--mo-dist)); }
  .reveal-stagger > *{ transform:translateY(var(--mo-dist)); }
  .media-zoom:hover img,.media-zoom:focus-within img{ transform:scale(1.03); }
  .ken-burns{ animation:kenburns 13s var(--mo-ease) infinite alternate; will-change:transform; }
  @keyframes kenburns{ from{ transform:scale(1); } to{ transform:scale(1.04); } }
  
  .goal-wash.reveal{ opacity:1; transform:none; background-size:0% 100%; transition:background-size 400ms var(--mo-ease); transition-delay:var(--reveal-delay, 0ms); }
  .goal-wash.reveal.is-visible{ background-size:100% 100%; }
  
  .reveal .step-index::after,.reveal-stagger > * .step-index::after{ transform:scaleX(0); transition:transform 320ms var(--mo-ease); transition-delay:calc(var(--reveal-delay, 0ms) + 160ms); }
  .reveal.is-visible .step-index::after,.reveal-stagger.is-visible > * .step-index::after,.reveal-stagger > .is-visible .step-index::after{ transform:scaleX(1); }
}

@media (prefers-reduced-motion: reduce){
  .reveal,.reveal-stagger > *{ transform:none !important; transition:opacity 1ms linear; }
  .ken-burns{ animation:none; }
  .media-zoom img{ transition:none; }
  .pillar__photo{ clip-path:inset(0 0 0 0); transition:none; }
  [data-card]{ position:static; }
  .btn:hover,.card:hover{ transform:none; }
}

.visually-hidden{ 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:fixed; top:.5rem; left:var(--gutter); z-index:200;
  transform:translateY(-200%);
  background:var(--c-primary); color:var(--c-bg);
  padding:.75rem 1.25rem; border-radius:var(--radius);
  font-family:var(--f-body); font-weight:700; font-size:15px; text-decoration:none;
  transition:transform 200ms var(--mo-ease);
}
.skip-link:focus{ transform:none; }

.site-header{
  position:sticky; top:0; z-index:80;
  background:var(--c-bg);
  border-bottom:1px solid rgb(184 91 60 / 0.18);
}
.header__bar{
  display:flex; align-items:center; justify-content:space-between;
  gap:var(--sp-4);
  min-height:var(--header-h);
  width:100%; max-width:var(--maxw); margin-inline:auto;
  padding-inline:var(--gutter);
}
.identity{
  display:inline-flex; align-items:center; gap:12px;
  text-decoration:none; color:var(--c-primary);
  flex:0 1 auto; min-width:0;
  transition:opacity 180ms var(--mo-ease);
}
.identity:hover{ opacity:.82; color:var(--c-primary); }
.identity__mark{ flex:0 0 auto; display:block; width:28px; height:28px; color:var(--c-primary); }
.identity__mark svg{ width:28px; height:28px; }
.cinch-lens{ fill:var(--c-bg); }
.identity__type{ display:flex; flex-direction:column; gap:6px; min-width:0; }
.identity__name{
  font-family:var(--f-display); font-weight:600;
  font-size:20px; line-height:1; letter-spacing:-.02em;
  color:var(--c-primary); white-space:nowrap;
}
.identity__rule{ max-width:52px; }
@media (min-width:900px){
  .identity__name{ font-size:22px; }
  .identity__rule{ max-width:58px; }
}

.nav-toggle{  }
.nav-toggle-label{
  display:inline-flex; align-items:center; justify-content:center;
  width:44px; height:44px; flex:0 0 auto; cursor:pointer;
  border-radius:var(--radius);
  transition:background-color 180ms var(--mo-ease);
}
.nav-toggle-label:hover{ background:var(--c-tint); }
.nav-toggle-bars{ position:relative; display:block; width:22px; height:2px; border-radius:2px; background:var(--c-primary); }
.nav-toggle-bars::before,.nav-toggle-bars::after{
  content:""; position:absolute; left:0; width:22px; height:2px; border-radius:2px;
  background:var(--c-primary); transition:transform 260ms var(--mo-ease);
}
.nav-toggle-bars::before{ top:-7px; }
.nav-toggle-bars::after{ top:7px; }
#nav-toggle:checked ~ .nav-toggle-label .nav-toggle-bars{ background:transparent; }
#nav-toggle:checked ~ .nav-toggle-label .nav-toggle-bars::before{ transform:translateY(7px) rotate(45deg); }
#nav-toggle:checked ~ .nav-toggle-label .nav-toggle-bars::after{ transform:translateY(-7px) rotate(-45deg); }

.nav-scrim{ display:none; }
#nav-toggle:checked ~ .nav-scrim{
  display:block; position:fixed; inset:0; z-index:60;
  background:rgb(27 16 18 / 0.42);
}

.site-nav{ display:none; }
#nav-toggle:checked ~ .site-nav{
  display:flex; flex-direction:column; align-items:stretch;
  position:fixed; left:0; right:0; top:var(--header-h);
  height:calc(100dvh - var(--header-h));
  overflow-y:auto; z-index:70;
  background:var(--c-bg);
  border-top:1px solid rgb(184 91 60 / 0.2);
  padding:var(--sp-5) var(--gutter) var(--sp-8);
}
.nav-list{ display:flex; flex-direction:column; }
.site-nav ul a{
  display:flex; align-items:center; min-height:52px;
  padding:.75rem 0;
  font-family:var(--f-body); font-weight:500; font-size:18px;
  color:var(--c-text); text-decoration:none;
  border-bottom:1px solid rgb(184 91 60 / 0.16);
  transition:color 180ms var(--mo-ease), transform 180ms var(--mo-ease);
}
.site-nav ul a:hover,.site-nav ul a:focus-visible{ color:var(--c-primary); }
.nav-cta{ margin-top:var(--sp-5); width:100%; }
.nav-close{
  display:inline-flex; align-items:center; justify-content:center;
  align-self:flex-start; margin-top:var(--sp-5);
  min-height:44px; padding:.5rem 1rem; cursor:pointer;
  font-family:var(--f-body); font-weight:700; font-size:13px;
  letter-spacing:.18em; text-transform:uppercase; color:var(--c-primary);
  border:1px solid rgb(92 31 60 / 0.35); border-radius:var(--radius);
  transition:background-color 180ms var(--mo-ease);
}
.nav-close:hover{ background:var(--c-tint); }

@media (min-width:900px){
  .nav-toggle-label{ display:none; }
  .nav-close{ display:none; }.nav-scrim{ display:none; }
  .site-nav,#nav-toggle:checked ~ .site-nav{
    display:flex; flex-direction:row; align-items:center;
    gap:clamp(1rem, 0.3rem + 1.4vw, 2.25rem);
    position:static; inset:auto; height:auto; overflow:visible;
    background:none; border:0; padding:0; z-index:auto;
  }
  .nav-list{ flex-direction:row; align-items:center; gap:clamp(1rem, 0.3rem + 1.2vw, 2rem); }
  .site-nav ul a{
    min-height:0; padding:.25rem 0; font-size:15px; border-bottom:0;
    position:relative;
  }
  .site-nav ul a::after{
    content:""; position:absolute; left:0; right:0; bottom:-4px; height:2px;
    background:var(--c-accent); transform:scaleX(0); transform-origin:left;
    transition:transform 260ms var(--mo-ease);
  }
  .site-nav ul a:hover::after,.site-nav ul a:focus-visible::after{ transform:scaleX(1); }
  .nav-cta{ margin-top:0; width:auto; min-height:44px; padding:.7rem 1.25rem; font-size:15px; }
}

.site-footer{
  margin-top:0;
  background:var(--c-dark-bg);
  color:var(--c-dark-text);
  padding-block:clamp(3rem, 2rem + 4vw, 6rem) clamp(2rem, 1.5rem + 2vw, 3rem);
}
.site-footer a{ color:var(--c-dark-text); text-decoration:none; }
.site-footer a:hover{ color:var(--c-accent); }
.footer__grid{
  display:grid;
  grid-template-columns:1fr;
  gap:clamp(2rem, 1.5rem + 2vw, 3.5rem);
}
@media (min-width:820px){
  .footer__grid{ grid-template-columns:1.4fr 1fr 1fr; }
}
.footer__wordmark{
  display:inline-block;
  font-family:var(--f-display); font-weight:600;
  font-size:clamp(2rem, 1.4rem + 2.2vw, 3.25rem);
  line-height:1.02; letter-spacing:-.02em; color:var(--c-dark-text);
}
.footer__rule{ margin-top:10px; max-width:96px; }
.footer__rule::before{ background:var(--c-rule-dark); }
.footer__blurb{ margin-top:var(--sp-4); font-size:16px; max-width:34ch; color:var(--c-dark-text); opacity:.86; }
.footer__head{
  font-family:var(--f-body); font-weight:700; font-size:13px;
  letter-spacing:.18em; text-transform:uppercase;
  color:var(--c-accent); margin-bottom:var(--sp-4);
}
.footer__list li + li{ margin-top:.6rem; }
.footer__list a,.footer__contact a{
  display:inline-flex; align-items:center; min-height:32px;
  font-size:16px; transition:color 180ms var(--mo-ease), transform 180ms var(--mo-ease);
}
.footer__list a:hover,.footer__contact a:hover{ color:var(--c-accent); }
.footer__contact li + li{ margin-top:.6rem; }
.footer__contact .footer__area{ font-size:16px; opacity:.86; }
.footer__social{
  display:flex; align-items:center; gap:var(--sp-3);
  margin-top:clamp(2rem, 1.5rem + 2vw, 3rem);
}
.footer__social a{
  display:inline-flex; align-items:center; justify-content:center;
  width:44px; height:44px; border-radius:50%;
  color:var(--c-dark-text);
  border:1px solid rgb(246 235 225 / 0.24);
  transition:color 180ms var(--mo-ease), border-color 180ms var(--mo-ease), transform 180ms var(--mo-ease);
}
.footer__social a:hover,.footer__social a:focus-visible{ color:var(--c-accent); border-color:var(--c-accent); }
@media (prefers-reduced-motion: no-preference){
  .footer__social a:hover{ transform:translateY(-2px); }
}
.footer__bottom{
  display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between;
  gap:var(--sp-3) var(--sp-5);
  margin-top:clamp(2rem, 1.5rem + 2vw, 3rem);
  padding-top:var(--sp-5);
  border-top:1px solid rgb(246 235 225 / 0.16);
}
.footer__copy{ font-size:14px; opacity:.86; max-width:none; }
.footer__legal{ display:flex; flex-wrap:wrap; gap:var(--sp-2) var(--sp-5); }
.footer__legal a{ font-size:14px; opacity:.86; }
.footer__legal a:hover{ opacity:1; }
.footer__attr{ font-size:14px; max-width:none; }
.footer__attr a{ text-decoration:underline; text-underline-offset:3px; opacity:.86; }
.footer__attr a:hover{ opacity:1; }

@media (min-width:900px){
  .nav-toggle-label{ display:none; }.nav-scrim{ display:none; }
}

.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-nav),
header:has(input[id="nav-toggle"]:checked) :where(.nav-panel,.mobile-nav,.mobile-menu,#nav-panel,#mobile-nav,#mobile-menu,#site-nav),
header:has(input[id="menu-toggle"]:checked) :where(.nav-panel,.mobile-nav,.mobile-menu,#nav-panel,#mobile-nav,#mobile-menu,#site-nav),
header:has(input[id="nav-check"]:checked) :where(.nav-panel,.mobile-nav,.mobile-menu,#nav-panel,#mobile-nav,#mobile-menu,#site-nav){display:block;max-height:calc(100dvh - var(--header-h,64px));overflow-y:auto;visibility:visible;opacity:1;transform:none;pointer-events:auto}
}
