:root{
  
  --ff-display:"Fraunces", Georgia, "Times New Roman", serif;
  --ff-body:"Karla", "Helvetica Neue", Arial, sans-serif;

  
  --c-ink:#0B0B0B;
  --c-bg:#0B0B0B;
  --c-dark-bg:#0B0B0B;
  --c-surface:#1C120A;
  --c-text:#F2ECE1;
  --c-dark-text:#EFE7DA;
  --c-primary:#C08A33;
  --c-secondary:#D8C280;
  --c-accent:#D9784A;
  --c-accent-deep:#A64B1E;
  --c-accent-light:#EE9A6F;

  
  --c-paper:#F4EFE6;
  --c-paper-surface:#FFFFFF;
  --c-paper-text:#1A1410;
  --c-primary-paper:#7A5A22;
  --c-secondary-paper:#7A6428;
  --c-accent-paper:#A64B1E;
  --c-accent-paper-deep:#8A3C14;

  
  --ground:var(--c-ink);
  --ground-surface:var(--c-surface);
  --ink:var(--c-text);
  --ink-muted:rgba(242,236,225,0.76);
  --heading:var(--c-text);
  --kicker:var(--c-secondary);
  --rule:var(--c-primary);
  --rule-tooth:var(--c-secondary);
  --link:var(--c-accent);
  --link-hover:var(--c-accent-light);
  --hair:rgba(216,194,128,0.22);

  
  --gutter:clamp(1.25rem, 0.9rem + 2.4vw, 3rem);
  --maxw:1180px;
  --sp-1:0.5rem;
  --sp-2:0.875rem;
  --sp-3:1.25rem;
  --sp-4:2rem;
  --sp-5:3rem;
  --sp-6:4.5rem;
  --sp-7:6.5rem;
  --section-y:clamp(4rem, 2.6rem + 5vw, 8.5rem);
  --radius:10px;
  --radius-sm:3px;
  --header-h:92px;

  
  --mo-dur:520ms;
  --mo-ease:cubic-bezier(0.20, 0.70, 0.20, 1);
  --mo-dist:20px;
  --mo-stagger:90ms;
}

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

*,*::before,*::after{box-sizing:border-box;}
html,body{overflow-x:hidden;}
html{-webkit-text-size-adjust:100%;}
body{
  margin:0;
  background:var(--c-bg);
  color:var(--c-text);
  font-family:var(--ff-body);
  font-weight:400;
  font-size:1.0625rem;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img,svg,video{max-width:100%;height:auto;display:block;}
ul,ol{margin:0;padding:0;list-style:none;}
h1,h2,h3,h4,p,figure,blockquote{margin:0;}
button,input,select,textarea{font:inherit;color:inherit;}
[id]{scroll-margin-top:calc(var(--header-h) + 1rem);}

h1,.h-display{
  font-family:var(--ff-display);
  font-weight:700;
  font-size:clamp(2.75rem, 1.5rem + 6.5vw, 8.5rem);
  line-height:1.0;
  letter-spacing:-0.02em;
  color:var(--heading);
  max-width:18ch;
}
h2,.h-section{
  font-family:var(--ff-display);
  font-weight:700;
  font-size:clamp(2rem, 1.2rem + 3vw, 4.5rem);
  line-height:1.08;
  letter-spacing:-0.015em;
  color:var(--heading);
  max-width:20ch;
}
h3,.h-card{
  font-family:var(--ff-display);
  font-weight:700;
  font-size:clamp(1.25rem, 1.1rem + 0.7vw, 1.625rem);
  line-height:1.2;
  color:var(--heading);
}
h4{font-family:var(--ff-body);font-weight:700;font-size:1.0625rem;letter-spacing:0.02em;}
.h-accent{color:var(--c-primary);font-style:normal;}
p{max-width:62ch;}
.prose p + p{margin-top:1em;}
.prose li{max-width:62ch;}
.lede{font-size:clamp(1.125rem, 1.02rem + 0.45vw, 1.375rem);line-height:1.55;color:var(--ink-muted);max-width:56ch;}
.meta,.caption{font-size:clamp(0.8125rem, 0.78rem + 0.15vw, 0.9375rem);color:var(--ink-muted);}

a{color:var(--link);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;transition:color var(--mo-dur) var(--mo-ease), text-underline-offset var(--mo-dur) var(--mo-ease);}
a:hover{color:var(--link-hover);text-underline-offset:5px;}
:focus-visible{outline:2px solid var(--c-secondary);outline-offset:3px;border-radius:2px;}

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

.bleed{width:100%;}
.bleed__inner{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter);}
.section{padding-block:var(--section-y);background:var(--ground);color:var(--ink);}
.section > .container,.section > .bleed__inner{padding-inline:var(--gutter);}
.section--ink{--ground:var(--c-ink);--ground-surface:var(--c-surface);}
.section--paper,.on-paper{
  --ground:var(--c-paper);
  --ground-surface:var(--c-paper-surface);
  --ink:var(--c-paper-text);
  --ink-muted:rgba(26,20,16,0.74);
  --heading:var(--c-paper-text);
  --kicker:var(--c-secondary-paper);
  --rule:var(--c-primary-paper);
  --rule-tooth:var(--c-secondary-paper);
  --link:var(--c-accent-paper);
  --link-hover:var(--c-accent-paper-deep);
  --hair:rgba(26,20,16,0.16);
  background:var(--ground);
  color:var(--ink);
}
.stack > * + *{margin-top:var(--sp-3);}
.stack-lg > * + *{margin-top:var(--sp-4);}
.grid-2{display:grid;gap:var(--sp-4);grid-template-columns:repeat(2, minmax(0,1fr));}
.grid-3{display:grid;gap:var(--sp-4);grid-template-columns:repeat(3, minmax(0,1fr));}
.grid-4{display:grid;gap:var(--sp-4);grid-template-columns:repeat(4, minmax(0,1fr));}
@media (max-width:900px){.grid-3,.grid-4{grid-template-columns:repeat(2, minmax(0,1fr));}}
@media (max-width:767px){.grid-2,.grid-3,.grid-4{grid-template-columns:minmax(0,1fr);}}
.text-center{text-align:center;}
.text-center p,.text-center .lede{margin-inline:auto;}

.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:absolute;top:-120px;left:var(--gutter);z-index:200;background:var(--c-secondary);color:#0B0B0B;font-weight:700;font-size:0.9375rem;padding:0.75rem 1.125rem;border-radius:4px;text-decoration:none;transition:top var(--mo-dur) var(--mo-ease);}
.skip-link:focus{top:0.75rem;color:#0B0B0B;}

.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:0.6rem;
  min-height:48px;padding:0.8rem 1.5rem;
  font-family:var(--ff-body);font-weight:700;font-size:0.9375rem;
  letter-spacing:0.08em;text-transform:uppercase;text-decoration:none;
  border:1px solid transparent;border-radius:4px;cursor:pointer;
  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-accent);color:#0B0B0B;border-color:var(--c-accent);}
.btn--primary::after{content:"";width:0.45rem;height:0.45rem;border-right:2px solid currentColor;border-top:2px solid currentColor;transform:rotate(45deg);transition:transform var(--mo-dur) var(--mo-ease);}
.btn--primary:hover,.btn--primary:focus-visible{background:var(--c-accent-deep);border-color:var(--c-accent-deep);color:var(--c-text);}
.btn--primary:hover::after,.btn--primary:focus-visible::after{transform:rotate(45deg) translate(3px, -3px);}
.btn--ghost{background:transparent;color:var(--link);border-color:currentColor;}
.btn--ghost:hover,.btn--ghost:focus-visible{color:var(--link-hover);}
.section--paper .btn--primary{background:var(--c-accent-paper);border-color:var(--c-accent-paper);color:#FFFFFF;}
.section--paper .btn--primary:hover{background:var(--c-accent-paper-deep);border-color:var(--c-accent-paper-deep);color:#FFFFFF;}

.keyed-rule{
  display:block;width:56px;height:3px;flex:0 0 auto;
  background:linear-gradient(90deg, var(--rule) 0 47px, var(--rule-tooth) 47px 56px);
  margin-bottom:20px;
}
.keyed-rule--footer{margin-bottom:16px;}

.brass-kicker{
  display:inline-flex;align-items:center;gap:8px;
  font-family:var(--ff-body);font-weight:700;
  font-size:clamp(0.75rem, 0.72rem + 0.12vw, 0.8125rem);
  line-height:1.3;letter-spacing:0.18em;text-transform:uppercase;
  color:var(--kicker);margin:0 0 var(--sp-2);
}
.brass-kicker::before{content:"";width:6px;height:6px;background:var(--rule);flex:0 0 auto;}

.chip{position:absolute;left:14px;bottom:14px;z-index:3;font-family:var(--ff-body);font-weight:700;font-size:0.75rem;line-height:1;letter-spacing:0.16em;text-transform:uppercase;padding:6px 10px;border-radius:var(--radius-sm);}
.chip--before{color:var(--c-dark-text);background:rgba(11,11,11,0.78);}
.chip--after{color:#0B0B0B;background:var(--c-primary);}

.plaque{display:inline-flex;align-items:center;justify-content:center;padding:12px;border-radius:var(--radius);background:#FFFFFF;border:1px solid rgba(216,194,128,0.3);}
.on-paper .plaque,.section--paper .plaque{background:transparent;border-color:transparent;padding:0;}

.seam{width:100%;height:4px;background:linear-gradient(90deg, var(--c-primary) 0 62%, var(--c-secondary) 62% 100%);}

.card{background:var(--ground-surface);border:1px solid var(--hair);border-radius:var(--radius);padding:clamp(1.25rem, 1rem + 1.4vw, 2.125rem);color:var(--ink);transition:transform var(--mo-dur) var(--mo-ease), border-color var(--mo-dur) var(--mo-ease), opacity var(--mo-dur) var(--mo-ease);}
.card h3{margin-bottom:var(--sp-2);}
.card p{color:var(--ink-muted);}

.note-panel{background:rgba(216,194,128,0.06);border:1px solid var(--hair);border-radius:var(--radius);padding:clamp(1.25rem, 1rem + 1.2vw, 2rem);}
.note-panel p{color:var(--ink);}
.fact{display:flex;flex-direction:column;gap:0.35rem;}
.fact__num{font-family:var(--ff-display);font-weight:900;font-variant-numeric:tabular-nums;font-size:clamp(2.5rem, 1.6rem + 3.4vw, 4.75rem);line-height:0.95;color:var(--c-primary);letter-spacing:-0.02em;}
.fact__label{font-size:clamp(0.8125rem, 0.78rem + 0.15vw, 0.9375rem);letter-spacing:0.08em;text-transform:uppercase;color:var(--ink-muted);}

.img-treated{filter:saturate(1.04) contrast(1.05) brightness(0.98) sepia(0.10) hue-rotate(-4deg);}
.figure{position:relative;isolation:isolate;overflow:hidden;border-radius:var(--radius);}
.figure--portrait{aspect-ratio:0.56;}
.figure--landscape{aspect-ratio:16 / 10;}
.figure img{width:100%;height:100%;object-fit:cover;}

.statement{min-height:max(700px, 82vh);display:flex;flex-direction:column;justify-content:center;gap:var(--sp-4);}
.statement__copy{font-family:var(--ff-display);font-weight:700;font-size:clamp(2.25rem, 1.4rem + 3.8vw, 5.25rem);line-height:1.14;letter-spacing:-0.02em;max-width:26ch;color:var(--heading);}

.pillars-reveal{display:grid;gap:var(--sp-4);grid-template-columns:repeat(3, minmax(0,1fr));}
@media (max-width:767px){.pillars-reveal{grid-template-columns:minmax(0,1fr);}}
.pillar{position:relative;isolation:isolate;overflow:hidden;border-radius:var(--radius);min-height:clamp(320px, 26vw, 460px);padding:clamp(1.25rem, 1rem + 1.2vw, 2rem);display:flex;flex-direction:column;justify-content:flex-end;background:var(--ground-surface);}
.pillar__photo{position:absolute;inset:0;z-index:-1;clip-path:inset(0 0 55% 0);transition:clip-path calc(var(--mo-dur) * 1.2) var(--mo-ease);}
.pillar__photo img{width:100%;height:100%;object-fit:cover;}
.pillar__photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(11,11,11,0.05) 0%, rgba(11,11,11,0.78) 100%);}
.pillar:hover .pillar__photo,.pillar:focus-within .pillar__photo{clip-path:inset(0 0 0 0);}
@media (hover:none){.pillar__photo{clip-path:inset(0 0 0 0);}}

.tour-scroller{display:flex;gap:var(--sp-3);overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-block:var(--sp-2);}
.tour-scroller::-webkit-scrollbar{display:none;}
.tour-panel{scroll-snap-align:center;flex:0 0 auto;width:min(86vw, 640px);}

[data-card]{position:sticky;top:calc(var(--header-h, 0px) + 88px + (var(--card-i, 0) * 16px));}

[data-count]{font-family:var(--ff-display);font-weight:900;font-variant-numeric:tabular-nums;font-size:clamp(2.5rem, 1.6rem + 3.4vw, 4.75rem);line-height:0.95;letter-spacing:-0.02em;color:var(--c-primary);}

.quote-serif{font-family:var(--ff-display);font-style:italic;font-weight:400;font-size:clamp(1.375rem, 1.1rem + 1.6vw, 2.5rem);line-height:1.28;max-width:22ch;color:var(--heading);}
.quote-serif cite{display:block;margin-top:var(--sp-3);font-style:normal;font-family:var(--ff-body);font-size:0.9375rem;letter-spacing:0.08em;text-transform:uppercase;color:var(--kicker);}

.wordmark-footer{container-type:inline-size;width:100%;}
.wordmark-footer__text{display:block;font-family:var(--ff-display);font-weight:700;line-height:0.95;letter-spacing:0.02em;text-transform:uppercase;font-size:clamp(2rem, 1.1rem + 4.6vw, 4.5rem);}
@supports (font-size:1cqw){.wordmark-footer__text{font-size:max(2rem, 11cqw);}}
.wordmark-footer__text .wm-key{color:var(--c-secondary);}
.wordmark-footer__text .wm-ent{display:block;margin-top:0.45rem;font-family:var(--ff-body);font-weight:500;font-size:clamp(0.8125rem, 0.76rem + 0.28vw, 1rem);letter-spacing:0.18em;color:var(--c-dark-text);}

.site-header{position:sticky;top:0;z-index:100;background:var(--c-ink);}
.site-header__inner{position:relative;display:flex;align-items:center;gap:clamp(0.75rem, 0.5rem + 1vw, 1.75rem);width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter);padding-block:10px;min-height:var(--header-h);}
.identity{display:inline-flex;align-items:center;gap:clamp(10px, 0.5rem + 0.8vw, 20px);text-decoration:none;color:var(--c-text);margin-right:auto;}
.identity:hover{color:var(--c-text);}
.identity__plaque{padding:10px;border-radius:var(--radius);background:#FFFFFF;border:1px solid rgba(216,194,128,0.3);display:inline-flex;}
.identity__logo{height:56px;width:auto;}
@media (min-width:900px){.identity__logo{height:64px;}.identity__plaque{padding:12px;}}
.wordmark{display:flex;flex-direction:column;align-items:flex-start;gap:2px;line-height:1;}
@media (min-width:480px){.wordmark{flex-direction:row;align-items:baseline;gap:0.5rem;}}
.wordmark__key{font-family:var(--ff-display);font-weight:700;text-transform:uppercase;letter-spacing:0.06em;font-size:clamp(1.25rem, 1.05rem + 0.6vw, 1.5rem);color:var(--c-secondary);}
.wordmark__ent{font-family:var(--ff-body);font-weight:500;text-transform:uppercase;letter-spacing:0.18em;font-size:clamp(0.8125rem, 0.76rem + 0.24vw, 0.9375rem);color:var(--c-text);}

.nav-toggle-label{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;flex:0 0 auto;border:1px solid var(--hair);border-radius:6px;cursor:pointer;background:transparent;transition:border-color var(--mo-dur) var(--mo-ease), transform var(--mo-dur) var(--mo-ease);}
.nav-toggle-label:hover{border-color:var(--c-secondary);}
.nav-toggle-label__bars,.nav-toggle-label__bars::before,.nav-toggle-label__bars::after{display:block;width:22px;height:2px;background:var(--c-secondary);content:"";}
.nav-toggle-label__bars{position:relative;}
.nav-toggle-label__bars::before{position:absolute;top:-7px;left:0;}
.nav-toggle-label__bars::after{position:absolute;top:7px;left:0;}
.nav-toggle:focus-visible ~ .nav-toggle-label{outline:2px solid var(--c-secondary);outline-offset:3px;}

.nav{position:fixed;left:0;right:0;top:var(--header-h);max-height:calc(100dvh - var(--header-h));overflow-y:auto;background:var(--c-ink);border-top:1px solid var(--hair);border-bottom:1px solid var(--hair);display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-4) var(--gutter);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-8px);transition:opacity var(--mo-dur) var(--mo-ease), transform var(--mo-dur) var(--mo-ease), visibility var(--mo-dur) var(--mo-ease);z-index:90;}
.nav-toggle:checked ~ .nav{opacity:1;visibility:visible;pointer-events:auto;transform:none;}
.nav__links{display:flex;flex-direction:column;gap:var(--sp-1);}
.nav__links a{display:flex;align-items:center;justify-content:space-between;min-height:52px;padding:0.5rem 0;border-bottom:1px solid var(--hair);font-family:var(--ff-body);font-weight:700;font-size:1.125rem;letter-spacing:0.06em;text-transform:uppercase;color:var(--c-text);text-decoration:none;transition:color var(--mo-dur) var(--mo-ease), transform var(--mo-dur) var(--mo-ease);}
.nav__links a:hover,.nav__links a:focus-visible{color:var(--c-secondary);}
.nav__cta{align-self:flex-start;}
.nav__close{display:inline-flex;align-items:center;gap:0.5rem;align-self:flex-start;min-height:44px;padding:0.5rem 0.75rem;font-size:0.8125rem;font-weight:700;letter-spacing:0.16em;text-transform:uppercase;color:var(--c-secondary);border:1px solid var(--hair);border-radius:4px;cursor:pointer;transition:border-color var(--mo-dur) var(--mo-ease);}
.nav__close:hover{border-color:var(--c-secondary);}
.nav-scrim{position:fixed;inset:var(--header-h) 0 0 0;background:rgba(11,11,11,0.86);opacity:0;visibility:hidden;pointer-events:none;z-index:80;transition:opacity var(--mo-dur) var(--mo-ease), visibility var(--mo-dur) var(--mo-ease);}
.nav-toggle:checked ~ .nav-scrim{opacity:1;visibility:visible;pointer-events:auto;}

@media (min-width:900px){
  .nav-toggle-label{display:none;}
  .nav-scrim{display:none;}
  .nav__close{display:none;}
  .nav{position:static;height:auto;overflow:visible;flex-direction:row;align-items:center;gap:clamp(1rem, 0.5rem + 1.4vw, 2.25rem);padding:0;border-top:0;background:transparent;opacity:1;visibility:visible;pointer-events:auto;transform:none;}
  .nav__links{flex-direction:row;align-items:center;gap:clamp(1rem, 0.6rem + 1.2vw, 2rem);}
  .nav__links a{min-height:44px;font-size:0.9375rem;border-bottom:0;justify-content:flex-start;}
}

.hero{position:relative;isolation:isolate;display:flex;align-items:flex-end;min-height:max(620px, 86vh);background:var(--c-ink);color:var(--c-text);padding-block:var(--sp-6) var(--sp-6);overflow:hidden;}
.hero__media{position:absolute;inset:0;z-index:-2;}
.hero__media img{width:100%;height:100%;object-fit:cover;}
.hero__media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(11,11,11,0.55) 0%, rgba(11,11,11,0.35) 45%, rgba(11,11,11,0.88) 100%);}
.hero__inner{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter);}
.hero__copy{max-width:min(92vw, 980px);}
.hero h1{max-width:14ch;}
.hero .lede{margin-top:var(--sp-3);}
.hero__actions{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-top:var(--sp-4);}

.site-footer{margin-top:0;background:var(--c-ink);color:var(--c-dark-text);padding-block:clamp(3rem, 2rem + 4vw, 5.5rem) clamp(1.5rem, 1.2rem + 1vw, 2.25rem);}
.site-footer__grid{display:grid;gap:var(--sp-5);grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr);}
@media (max-width:900px){.site-footer__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);}}
@media (max-width:640px){.site-footer__grid{grid-template-columns:minmax(0,1fr);}}
.site-footer p{color:rgba(239,231,218,0.78);}
.footer-list{display:flex;flex-direction:column;gap:0.35rem;}
.footer-list li{font-size:1rem;color:rgba(239,231,218,0.82);}
.footer-link{display:inline-flex;align-items:center;min-height:44px;color:var(--c-secondary);text-decoration:none;}
.footer-link:hover,.footer-link:focus-visible{color:var(--c-primary);}
.site-footer__bottom{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2) var(--sp-4);margin-top:var(--sp-5);padding-top:var(--sp-3);}
.site-footer__bottom p{margin:0;}
.copyright,.legal-links a,.attribution a{font-size:clamp(0.8125rem, 0.78rem + 0.12vw, 0.9375rem);}
.legal-links{display:flex;flex-wrap:wrap;gap:var(--sp-3);}
.legal-links a{color:rgba(239,231,218,0.78);text-decoration:none;display:inline-flex;align-items:center;min-height:36px;}
.legal-links a:hover{color:var(--c-secondary);}
.attribution{margin-left:auto;}
.attribution a{color:var(--c-secondary);text-decoration:none;}
.attribution a:hover{color:var(--c-primary);}

@media (prefers-reduced-motion: no-preference){
  html{scroll-behavior:smooth;}
  .reveal{opacity:0;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{opacity:1;transform:none;}
  .reveal-stagger > *{opacity:0;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 > *{opacity:1;transform:none;}
  .keyed-rule.reveal{opacity:1;transform:scaleX(0);transform-origin:left center;}
  .keyed-rule.reveal.is-visible{transform:scaleX(1);}
  .media-zoom{overflow:hidden;}
  .media-zoom img{transition:transform calc(var(--mo-dur) * 2) var(--mo-ease);}
  .media-zoom:hover img,.media-zoom:focus-within img{transform:scale(1.03);}
  .card:hover,.card:focus-within{transform:translateY(-2px);border-color:var(--hair);}
  .ken-burns{animation:kb-drift 13s var(--mo-ease) infinite alternate;}
  @keyframes kb-drift{from{transform:scale(1);}to{transform:scale(1.04);}}
}
.link-draw{position:relative;text-decoration:none;}
.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);}

@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:0.001ms !important;animation-iteration-count:1 !important;transition-duration:0.001ms !important;scroll-behavior:auto !important;}
  .reveal,.reveal-stagger > *{opacity:1 !important;transform:none !important;}
  .keyed-rule.reveal{transform:none !important;}
  .pillar__photo{clip-path:inset(0 0 0 0) !important;}
  [data-card]{position:static;}
  .ken-burns{animation:none !important;}
}

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

.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-hero-stacked{display:grid;grid-template-rows:auto 1fr;min-height:100svh}
.shape-hero-stacked .hero__copy{padding:clamp(2rem,6vw,5.5rem) clamp(1.5rem,5vw,5rem) clamp(1.25rem,3vw,2.5rem);max-width:min(100%,44rem)}
.shape-hero-stacked .hero__copy h1{max-width:16ch}
.shape-hero-stacked [data-hero-media]{position:relative;min-height:clamp(18rem,46svh,34rem)}
.shape-hero-stacked [data-hero-media] img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--hero-focal,50% 50%)}
.shape-offers{display:grid;grid-template-columns:1fr;gap:clamp(1.5rem,3.5vw,2.5rem)}
@media(min-width:768px){.shape-offers{grid-template-columns:repeat(var(--offer-count,3),minmax(0,1fr));column-gap:clamp(2rem,5vw,4rem)}}
.shape-offers [data-offer]{display:grid;gap:clamp(.5rem,1.2vw,.85rem);align-content:start;padding-top:clamp(.9rem,2vw,1.4rem);border-top:1px solid;border-color:color-mix(in srgb,currentColor 22%,transparent)}
.shape-offers [data-offer] h3{font-size:clamp(1.15rem,2vw,1.6rem);font-weight:400;letter-spacing:-.015em}
.shape-offers [data-offer] p{max-width:38ch}
.shape-offers [data-offer] svg,.shape-offers [data-offer] img{display:none}
.shape-about{display:grid;grid-template-columns:1fr;gap:clamp(1.5rem,4vw,3rem);align-items:stretch}
@media(min-width:900px){.shape-about{grid-template-columns:minmax(0,5fr) minmax(0,7fr);column-gap:clamp(2.5rem,6vw,5rem)}}
.shape-about [data-portrait]{position:relative;overflow:hidden;min-height:clamp(18rem,44vh,32rem)}
.shape-about [data-portrait]>img,.shape-about [data-portrait]>picture>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--portrait-focal,50% 30%)}
.shape-about .about__copy{max-width:52ch;display:grid;gap:clamp(.75rem,1.6vw,1.15rem);align-content:center}
.shape-audience{display:grid;grid-template-columns:1fr}
@media(min-width:768px){.shape-audience{grid-template-columns:repeat(2,1fr);column-gap:clamp(2rem,6vw,5rem)}}
.shape-audience [data-audience-row]{display:flex;align-items:baseline;gap:1rem;padding:clamp(.6rem,1.3vw,.95rem) 0;border-bottom:1px solid;border-color:color-mix(in srgb,currentColor 14%,transparent)}
.shape-audience [data-audience-row] .audience__who{font-size:clamp(1.02rem,1.5vw,1.3rem);font-weight:400;flex:0 0 auto}
.shape-audience [data-audience-row] .audience__note{opacity:.72;font-size:.95em}
.shape-contact{display:grid;grid-template-columns:1fr;gap:clamp(1.75rem,4vw,3rem)}
@media(min-width:820px){.shape-contact{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:clamp(2.5rem,6vw,5rem)}}
.shape-contact [data-panel]{display:grid;gap:clamp(.6rem,1.4vw,1rem);align-content:start}
@media(min-width:820px){.shape-contact [data-panel]+[data-panel]{padding-left:clamp(2.5rem,6vw,5rem);border-left:1px solid;border-color:color-mix(in srgb,currentColor 16%,transparent)}}
.shape-contact [data-panel] a{font-size:clamp(1.05rem,1.8vw,1.4rem);text-underline-offset:.18em}
.shape-faq{display:grid;grid-template-columns:1fr;max-width:68ch}
.shape-faq [data-faq-item]{border-bottom:1px solid;border-color:color-mix(in srgb,currentColor 16%,transparent)}
.shape-faq [data-faq-item]>summary{cursor:pointer;list-style:none;display:flex;align-items:baseline;justify-content:space-between;gap:1.5rem;padding:clamp(.9rem,1.9vw,1.35rem) 0;font-size:clamp(1.02rem,1.5vw,1.25rem);font-weight:400}
.shape-faq [data-faq-item]>summary::-webkit-details-marker{display:none}
.shape-faq [data-faq-item]>summary::after{content:"+";font-weight:300;font-size:1.4em;line-height:1;transition:transform .28s var(--mo-ease,cubic-bezier(.22,1,.36,1))}
.shape-faq [data-faq-item][open]>summary::after{transform:rotate(45deg)}
.shape-faq [data-faq-item]>*:not(summary){padding-bottom:clamp(.9rem,1.9vw,1.35rem);max-width:60ch}
@media(prefers-reduced-motion:reduce){.shape-faq [data-faq-item]>summary::after{transition:none}}
.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}
}

/* nn:logo-floor */
header .identity__logo{min-height:64px;width:auto;object-fit:contain}
@media (max-width:899px){
header .identity__logo{min-height:56px;width:auto;object-fit:contain}
}
