:root{--limestone:#f6f4ef;--nile-green:#26523a;--logo-deep-green:#0c432a;--logo-sage:#618e6f;--logo-gold:#c9a96e;--paper:#fcfaf6;--sand:#ebe6db;--mint:#cde3d2;--mint-dim:#daddd6;--gold:#cfb889;--gold-deep:#a8874f;--sage:#819d8d;--sage-tint:#e3e6df;--cream-tint:#f0ece1;--green-panel:#365e48;--ink:#14262b;--ink-mid:#4c6058;--ink-soft:#54645e;--line:#7c8c84;--nile-navy:#1c3645;--nile-blue:#6e94a3}
@font-face{font-family:'Comma Base';font-style:normal;font-weight:300;font-display:swap;src:url(../fonts/comma-base-300.woff2) format('woff2')}
@font-face{font-family:'Comma Base';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/comma-base-400.woff2) format('woff2')}
@font-face{font-family:'Comma Base';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/comma-base-500.woff2) format('woff2')}
@font-face{font-family:'Comma Base';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/link-arrow-400.woff2) format('woff2');unicode-range:U+2192}
@font-face{font-family:'Comma Base';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/link-arrow-500.woff2) format('woff2');unicode-range:U+2192}
.t-display-92{font-family:'Comma Base', 'Segoe UI', system-ui, sans-serif;font-weight:400;font-size:clamp(37px, 6.3889vw, 92px);line-height:1.0326;letter-spacing:-0.0120em}
.t-display-56{font-family:'Comma Base', 'Segoe UI', system-ui, sans-serif;font-weight:400;font-size:clamp(37px, 3.8889vw, 56px);line-height:1.0714;letter-spacing:-0.0120em}
.t-display-37{font-family:'Comma Base', 'Segoe UI', system-ui, sans-serif;font-weight:400;font-size:clamp(26px, 2.5694vw, 37px);line-height:1.1081;letter-spacing:-0.0120em}
.t-display-26{font-family:'Comma Base', 'Segoe UI', system-ui, sans-serif;font-weight:500;font-size:26px;line-height:32px;letter-spacing:-0.0060em}
.t-legend-25{font-family:'Comma Base', 'Segoe UI', system-ui, sans-serif;font-weight:500;font-size:25px;line-height:30px;letter-spacing:-0.0060em}
.t-quote-31{font-family:'Comma Base', 'Segoe UI', system-ui, sans-serif;font-weight:400;font-size:clamp(24px, 2.1528vw, 31px);line-height:1.2581;letter-spacing:-0.0060em}
.t-title-18{font-family:'Comma Base', 'Segoe UI', system-ui, sans-serif;font-weight:500;font-size:18px;line-height:24px;letter-spacing:-0.0040em}
.t-lede-21{font-family:'Comma Base', 'Segoe UI', system-ui, sans-serif;font-weight:400;font-size:21px;line-height:33px}
.t-body-17{font-family:'Comma Base', 'Segoe UI', system-ui, sans-serif;font-weight:400;font-size:17px;line-height:28px}
.t-meta-16{font-family:'Comma Base', 'Segoe UI', system-ui, sans-serif;font-weight:400;font-size:16px;line-height:25px}
.t-label-12{font-family:'Comma Base', 'Segoe UI', system-ui, sans-serif;font-weight:500;font-size:12px;line-height:18px;letter-spacing:0.1500em}
.t-fine-14-5{font-family:'Comma Base', 'Segoe UI', system-ui, sans-serif;font-weight:400;font-size:14.5px;line-height:22px}
.t-button-16{font-family:'Comma Base', 'Segoe UI', system-ui, sans-serif;font-weight:500;font-size:16px;line-height:22px}
.t-field-label-14-5{font-family:'Comma Base', 'Segoe UI', system-ui, sans-serif;font-weight:500;font-size:14.5px;line-height:20px;letter-spacing:0.0100em}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--paper);color:var(--ink);font-variant-numeric:lining-nums;font-feature-settings:'lnum' 1,'kern' 1;font-family:'Comma Base','Segoe UI',system-ui,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4,p,ul,figure,fieldset,legend{margin:0}
p,h1,h2,h3,legend,label{white-space:pre-line;overflow-wrap:break-word}
ul{padding:0;list-style:none}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.2em}
p>a{text-decoration:none}
p>a:hover{text-decoration:underline}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,.chip input:focus-visible+span{outline:3px solid var(--gold-deep);outline-offset:3px}
.skip{position:absolute;left:-9999px;top:0;background:var(--ink);color:var(--paper);padding:10px 16px;z-index:100}
.skip:focus{left:16px;top:12px}
main{display:flex;flex-direction:column}
/* header */
.site-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;height:78px;padding:0 max(clamp(20px,2.778vw,40px),calc((100% - 1360px)/2));background:var(--paper);border-bottom:1px solid var(--sand)}
.brand{display:block;line-height:0}
.site-nav{display:flex;align-items:center;gap:26px}
.site-nav a{font:400 16px/1.55 'Comma Base','Segoe UI',system-ui,sans-serif;color:var(--ink);text-decoration:none}
.site-nav a:hover{text-decoration:underline}
.site-nav a[aria-current=page]{font-weight:500;text-decoration:underline;text-underline-offset:.35em;text-decoration-thickness:2px;text-decoration-color:var(--nile-green)}
.site-nav .nav-cta{font-weight:500;font-size:16px;line-height:22px;color:var(--paper);background:var(--nile-green);border-radius:999px;padding:10px 18px}
.site-nav .nav-cta:hover{text-decoration:none;background:#1d4330}
.site-nav .nav-cta[aria-current=page]{color:var(--paper);text-decoration:none;box-shadow:0 0 0 2px var(--paper),0 0 0 4px var(--gold)}
.menu-btn{display:none;font:500 16px/22px 'Comma Base','Segoe UI',system-ui,sans-serif;color:var(--nile-green);background:transparent;border:1px solid var(--nile-green);border-radius:999px;padding:8px 14px;cursor:pointer}
/* buttons + text links */
.btn{font:500 16px/22px 'Comma Base','Segoe UI',system-ui,sans-serif}
.btn:hover{filter:brightness(.94)}
a.btn span,button.btn span{white-space:nowrap}
/* forms */
.input{display:block;font:400 16px/1.4 'Comma Base','Segoe UI',system-ui,sans-serif;color:var(--ink);padding:12px 14px;appearance:none;-webkit-appearance:none}
textarea.input{resize:vertical}
.input:focus{outline:2px solid var(--nile-green);outline-offset:1px}
.chip{position:relative;display:flex;cursor:pointer}
.chip input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.chip span{display:block;font:400 16px/25px 'Comma Base','Segoe UI',system-ui,sans-serif;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:10px 16px;transition:background-color .15s,color .15s}
.chip:hover span{border-color:var(--nile-green)}
.chip input:checked+span{background:var(--nile-green);color:var(--paper);border-color:var(--line)}
.form-note{font:400 14.5px/1.45 'Comma Base','Segoe UI',system-ui,sans-serif;color:var(--ink-soft)}
.form-error{color:#8a2d1c;font:500 15px/1.4 'Comma Base','Segoe UI',system-ui,sans-serif}
/* footer */
.site-footer{display:flex;flex-direction:column;gap:44px;padding:72px max(clamp(20px,8.333vw,120px),calc((100% - 1200px)/2)) 56px;background:var(--logo-deep-green);color:var(--mint)}
.f-cols{display:flex;gap:48px}
.f-about{flex:0 0 420px;display:flex;flex-direction:column;gap:16px}
.f-about p{max-width:400px}
.f-col{flex:1 1 0;display:flex;flex-direction:column;gap:12px}
.f-col ul{display:flex;flex-direction:column;gap:12px}
.f-head{color:var(--gold)}
.site-footer a{font:400 14.5px/1.5 'Comma Base','Segoe UI',system-ui,sans-serif;color:var(--mint);text-decoration:none}
.site-footer a:hover{color:var(--paper);text-decoration:underline}
.f-base{display:flex;justify-content:space-between;gap:24px;padding-top:28px;border-top:1px solid rgba(255,255,255,.18)}
.f-memory{color:var(--gold)}
/* film */
.film{position:relative;display:block;cursor:pointer;border:0;padding:0;background:none}
.film video{position:absolute;inset:0;width:100%;height:100%;border-radius:4px;background:#000}
@media (max-width:1100px){.f-cols{flex-wrap:wrap}.f-about{flex:1 1 100%}.f-col{flex:1 1 160px}}
@media (max-width:820px){
 .site-header{height:62px;padding:0 20px}
 .site-header .lockup{width:104px;height:21.7px}
 .menu-btn{display:inline-block}
 .site-nav{display:none;position:absolute;left:0;right:0;top:62px;flex-direction:column;align-items:stretch;gap:0;background:var(--paper);border-bottom:1px solid var(--sand);padding:8px 20px 24px;box-shadow:0 16px 24px rgba(20,38,43,.08)}
 .site-nav.open{display:flex}
 .site-nav a{font:400 26px/1.22 'Comma Base','Segoe UI',system-ui,sans-serif;letter-spacing:-.006em;padding:12px 0;border-bottom:1px solid var(--sand)}
 .site-nav .nav-cta{margin-top:16px;text-align:center;font:500 16px/22px 'Comma Base','Segoe UI',system-ui,sans-serif;padding:15px 26px;border:0}
 main *{max-width:100%}
 .site-footer{padding:56px 20px 40px;gap:32px}
 .f-cols{flex-direction:column;gap:28px}
 .f-about{flex:none}
 .f-base{flex-direction:column;gap:8px}
}
