:root{--c-bg:#0F0F0F;--c-surface:#181818;--c-text:#EDEAE3;--c-primary:#111111;--c-secondary:#C9A227;--c-accent:#2E4A47;--c-dark-bg:#0B0B0B;--c-dark-text:#EDEAE3;--c-light-bg:#F4F1EA;--c-gold-dark:#8A6E12;--c-gold-hover:#B8930F;--c-hairline:#2A2A2A;--c-border:#242424;--c-ghost:#2A2A2A;--ff-display:"Saira Condensed","Arial Narrow",Impact,sans-serif;--ff-body:"Source Serif 4",Georgia,"Times New Roman",serif;--fs-h1:clamp(2.4rem, 1.7rem + 2.9vw, 4.4rem);--fs-h2:clamp(1.75rem, 1.3rem + 1.8vw, 2.9rem);--fs-h3:clamp(1.25rem, 1.05rem + 0.7vw, 1.6rem);--fs-body:1.0625rem;--fs-small:0.9375rem;--fs-micro:11px;--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 + 1.8vw, 3rem);--maxw:1200px;--maxw-text:62ch;--radius:0px;--header-h:74px;--mo-dur:460ms;--mo-ease:cubic-bezier(0.22, 0.9, 0.24, 1);--mo-dist:14px;--mo-stagger:90ms;--reveal-delay:0ms}
*,*::before,*::after{box-sizing:border-box}
html,body{overflow-x:hidden}
html{-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion: no-preference){html{scroll-behavior:smooth}}
body{margin:0;background:var(--c-bg);color:var(--c-text);font-family:var(--ff-body);font-size:var(--fs-body);line-height:1.62;font-weight:400;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,picture,video,canvas,svg{display:block;max-width:100%;height:auto}
input,button,textarea,select{font:inherit;color:inherit}
h1,h2,h3,h4,h5,h6{margin:0 0 var(--sp-4);font-family:var(--ff-display);font-weight:600;letter-spacing:-0.005em;line-height:1.02;text-wrap:balance}
h1{font-size:var(--fs-h1);line-height:1.0}
h2{font-size:var(--fs-h2)}
h3{font-size:var(--fs-h3);line-height:1.12}
p{margin:0 0 var(--sp-4);max-width:var(--maxw-text)}
p:last-child{margin-bottom:0}
ul,ol{margin:0 0 var(--sp-4);padding-left:1.15rem}
li{margin-bottom:var(--sp-2);max-width:var(--maxw-text)}
strong{font-weight:600}
em{font-style:italic}
small{font-size:var(--fs-small)}
hr{border:0;height:1px;background:var(--c-hairline);margin:var(--sp-7) 0}
a{color:var(--c-secondary);text-decoration:none}
a:hover{color:var(--c-gold-hover)}
:focus-visible{outline:2px solid var(--c-secondary);outline-offset:3px}
.tp{color:var(--c-secondary)}
.notranslate{}
.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}
.container{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}
.container--narrow{max-width:840px}
.section{padding-block:clamp(3.5rem, 2.4rem + 4.4vw, 7rem)}
.section > .container,.section-inner{padding-inline:var(--gutter);width:100%;max-width:var(--maxw);margin-inline:auto}
.section--dark{background:var(--c-dark-bg)}
.section--surface{background:var(--c-surface)}
.section--light{background:var(--c-light-bg);color:var(--c-primary)}
.section--light h1,.section--light h2,.section--light h3{color:var(--c-primary)}
.section--light .tp{color:var(--c-gold-dark)}
.section--light a{color:var(--c-gold-dark)}
.section--light .three-beat{color:var(--c-gold-dark)}
.section--light .three-beat b{background:var(--c-gold-dark)}
[id]{scroll-margin-top:calc(var(--header-h) + 1rem)}
.lede{font-size:clamp(1.0625rem, 1rem + 0.3vw, 1.25rem);line-height:1.55}
.measure{max-width:var(--maxw-text)}
.meta{font-family:var(--ff-display);font-size:var(--fs-micro);letter-spacing:0.22em;text-transform:uppercase;font-weight:600}
.stack > * + *{margin-top:var(--sp-4)}
.center{text-align:center}
.grid{display:grid;gap:var(--sp-5)}
@media (min-width:768px){.grid--2{grid-template-columns:repeat(2,1fr)}.grid--3{grid-template-columns:repeat(3,1fr)}.grid--4{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1000px){.grid--4{grid-template-columns:repeat(4,1fr)}}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);font-family:var(--ff-display);font-weight:600;font-size:0.9375rem;letter-spacing:0.10em;text-transform:uppercase;padding:0.85rem 1.5rem;min-height:48px;border-radius:var(--radius);border:1px solid transparent;cursor:pointer;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),opacity var(--mo-dur) var(--mo-ease)}
.btn--primary{background:var(--c-secondary);color:var(--c-primary);border-color:var(--c-secondary)}
.btn--primary:hover,.btn--primary:focus-visible{background:var(--c-gold-hover);border-color:var(--c-gold-hover);color:var(--c-primary)}
.btn--ghost{background:transparent;color:var(--c-text);border-color:var(--c-text)}
.btn--ghost:hover,.btn--ghost:focus-visible{background:rgba(237,234,227,0.08);color:var(--c-text)}
.section--light .btn--ghost{color:var(--c-primary);border-color:var(--c-primary)}
.section--light .btn--ghost:hover{background:rgba(17,17,17,0.07)}
@media (prefers-reduced-motion: no-preference){.btn:hover,.btn:focus-visible{transform:translateY(-2px)}}
.three-beat{display:flex;align-items:center;flex-wrap:wrap;gap:0.7em;font-family:var(--ff-display);font-weight:600;font-size:var(--fs-micro);line-height:1.4;letter-spacing:0.22em;text-transform:uppercase;color:var(--c-secondary);margin:0 0 var(--sp-3)}
.three-beat b{display:inline-block;width:3px;height:3px;background:var(--c-secondary);font-size:0;flex:0 0 auto}
.rule-beat{position:relative;display:block;width:100%;height:1px;background:var(--c-hairline);margin:0 0 var(--sp-6);overflow:hidden}
.rule-beat::before{content:"";position:absolute;left:0;top:0;height:1px;width:48px;background:var(--c-secondary);transform-origin:left center}
.section--light .rule-beat{background:rgba(17,17,17,0.18)}
.section--light .rule-beat::before{background:var(--c-gold-dark)}
.kicker-rule{display:block;width:100%;height:2px;margin:0 0 var(--sp-5);background:linear-gradient(to right,var(--c-secondary) 0,var(--c-secondary) 48px,var(--c-accent) 48px,var(--c-accent) 96px,var(--c-hairline) 96px,var(--c-hairline) 100%)}
.advance-index{display:flex;align-items:center;gap:var(--sp-3);margin:0 0 var(--sp-3)}
.advance-index::before{content:"";width:2px;height:20px;background:var(--c-secondary);flex:0 0 auto}
.advance-index span{font-family:var(--ff-display);font-weight:700;font-size:40px;line-height:1;color:var(--c-ghost);letter-spacing:0.01em}
.section--light .advance-index span{color:rgba(17,17,17,0.16)}
.section--light .advance-index::before{background:var(--c-gold-dark)}
.post-plate{background:var(--c-surface);border:1px solid var(--c-border);border-radius:0;position:relative;padding:clamp(1.25rem, 1rem + 1vw, 2rem);font-size:0.96875rem}
.post-plate::before{content:"";position:absolute;top:0;left:0;height:3px;width:56px;background:var(--c-secondary);transition:width var(--mo-dur) var(--mo-ease)}
.post-plate:hover::before,.post-plate:focus-within::before{width:96px}
.post-plate h3,.post-plate h4{font-family:var(--ff-display);font-weight:600;text-transform:uppercase;letter-spacing:0.06em;font-size:1.05rem;line-height:1.25}
.section--light .post-plate{background:#FFFFFF;border-color:rgba(17,17,17,0.12);color:var(--c-primary)}
.section--light .post-plate::before{background:var(--c-gold-dark)}
.card-heading{font-family:var(--ff-display);font-weight:600;text-transform:uppercase;letter-spacing:0.06em;font-size:1.05rem;line-height:1.25;margin:0 0 var(--sp-3)}
.fact{font-family:var(--ff-display);font-weight:700;font-size:clamp(2.2rem, 1.6rem + 2vw, 3.2rem);line-height:1;color:var(--c-secondary);margin:0 0 var(--sp-2)}
.callout{background:rgba(237,234,227,0.05);border:1px solid var(--c-border);padding:clamp(1.25rem, 1rem + 1vw, 2rem)}
.callout .callout__label{font-family:var(--ff-display);font-size:var(--fs-micro);letter-spacing:0.22em;text-transform:uppercase;font-weight:600;color:var(--c-secondary);display:block;margin-bottom:var(--sp-3)}
input,textarea,select{width:100%;background:var(--c-bg);color:var(--c-text);border:1px solid var(--c-border);border-radius:0;padding:0.75rem 0.9rem;min-height:48px;font-family:var(--ff-body);font-size:1rem;transition:border-color var(--mo-dur) var(--mo-ease),box-shadow var(--mo-dur) var(--mo-ease)}
textarea{min-height:140px;resize:vertical}
input:focus,textarea:focus,select:focus{outline:none;border-color:var(--c-accent);box-shadow:0 0 0 2px var(--c-accent)}
label{display:block;font-family:var(--ff-display);font-weight:600;font-size:var(--fs-micro);letter-spacing:0.18em;text-transform:uppercase;margin-bottom:var(--sp-2)}
.img-treated{filter:grayscale(0.35) contrast(1.12) brightness(0.82) sepia(0.22) saturate(1.1);border-radius:0;display:block;width:100%}
.img-plate{background:var(--c-primary);border-radius:0}
.media-zoom{overflow:hidden;border-radius:0;display:block}
.media-zoom img{width:100%;transform:scale(1);transition:transform calc(var(--mo-dur) * 2) var(--mo-ease)}
.link-draw{position:relative;display:inline-block;color:var(--c-text);text-decoration:none}
.link-draw::after{content:"";position:absolute;left:0;bottom:-2px;width:100%;height:1px;background:var(--c-secondary);transform:scaleX(0);transform-origin:left;transition:transform var(--mo-dur) var(--mo-ease)}
.link-draw:hover,.link-draw:focus-visible{color:var(--c-secondary)}
.skip-link{position:absolute;left:var(--gutter);top:-160px;z-index:200;background:var(--c-secondary);color:var(--c-primary);font-family:var(--ff-display);font-weight:600;letter-spacing:0.10em;text-transform:uppercase;padding:0.75rem 1.25rem;transition:top var(--mo-dur) var(--mo-ease)}
.skip-link:focus{top:0.5rem;color:var(--c-primary)}
.site-header{position:sticky;top:0;z-index:100;background:var(--c-dark-bg);border-bottom:1px solid var(--c-hairline)}
.header__bar{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);padding-block:0.75rem;min-height:var(--header-h)}
.identity{display:flex;align-items:center;gap:0.75rem;flex:0 1 auto;min-width:0;text-decoration:none;color:var(--c-text)}
.identity__logo{height:34px;width:auto;flex:0 0 auto}
.identity__divider{width:1px;align-self:stretch;background:var(--c-hairline);flex:0 0 auto}
.identity__text{display:flex;flex-direction:column;line-height:1;min-width:0}
.identity__line1{font-family:var(--ff-display);font-weight:600;text-transform:uppercase;letter-spacing:0.10em;font-size:0.95rem;color:var(--c-text);white-space:nowrap}
.identity__line2{font-family:var(--ff-display);font-weight:600;text-transform:uppercase;letter-spacing:0.10em;font-size:0.74rem;color:var(--c-secondary);white-space:nowrap;margin-top:2px}
.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:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;flex:0 0 auto;cursor:pointer;border:1px solid var(--c-hairline);background:transparent;transition:border-color var(--mo-dur) var(--mo-ease),background-color var(--mo-dur) var(--mo-ease)}
.nav-toggle-label:hover{border-color:var(--c-secondary)}
.burger{position:relative;display:block;width:20px;height:2px;background:var(--c-text)}
.burger::before,.burger::after{content:"";position:absolute;left:0;width:20px;height:2px;background:var(--c-text)}
.burger::before{top:-6px}
.burger::after{top:6px}
.nav-desktop{display:none}
.nav-desktop ul{display:flex;align-items:center;gap:clamp(1rem, 0.4rem + 1.1vw, 1.9rem);list-style:none;margin:0;padding:0}
.nav-desktop ul li{margin:0}
.nav-desktop ul a{font-family:var(--ff-display);font-weight:600;font-size:0.8125rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--c-text);text-decoration:none;padding:var(--sp-2) 0;transition:color var(--mo-dur) var(--mo-ease)}
.nav-desktop ul a:hover,.nav-desktop ul a:focus-visible{color:var(--c-secondary)}
.nav-panel{display:none;background:var(--c-dark-bg);border-top:1px solid var(--c-hairline);max-height:calc(100dvh - var(--header-h));overflow-y:auto;-webkit-overflow-scrolling:touch}
.nav-panel__inner{padding-inline:var(--gutter);padding-block:var(--sp-4) var(--sp-6);max-width:var(--maxw);margin-inline:auto}
.nav-panel ul{list-style:none;margin:0 0 var(--sp-5);padding:0}
.nav-panel li{margin:0;border-bottom:1px solid rgba(42,42,42,0.7)}
.nav-panel a{display:flex;align-items:center;min-height:52px;font-family:var(--ff-display);font-weight:600;font-size:1rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--c-text);text-decoration:none;transition:color var(--mo-dur) var(--mo-ease)}
.nav-panel a:hover,.nav-panel a:focus-visible{color:var(--c-secondary)}
.nav-panel .btn{width:100%}
.nav-panel__contact{margin-top:var(--sp-4);font-size:var(--fs-small)}
.nav-panel__contact a{display:inline;min-height:0;font-family:var(--ff-body);text-transform:none;letter-spacing:0;font-weight:400;font-size:var(--fs-small);color:var(--c-secondary)}
.nav-close{display:inline-flex;align-items:center;gap:var(--sp-2);margin-top:var(--sp-5);min-height:44px;cursor:pointer;font-family:var(--ff-display);font-weight:600;font-size:var(--fs-micro);letter-spacing:0.22em;text-transform:uppercase;color:var(--c-secondary)}
.nav-toggle:checked ~ .nav-panel{display:block}
.site-footer{background:var(--c-dark-bg);border-top:1px solid var(--c-hairline);margin-top:0;padding-block:clamp(3rem, 2.2rem + 3vw, 5rem) var(--sp-6)}
.footer__inner{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}
.footer__identity{text-align:center;margin-bottom:var(--sp-7)}
.footer__wordmark{display:inline-flex;flex-direction:column;align-items:center;font-family:var(--ff-display);font-weight:600;text-transform:uppercase;line-height:1.05}
.footer__wordmark .l1{font-size:clamp(1.35rem, 1.1rem + 1vw, 1.9rem);letter-spacing:0.10em;color:var(--c-text)}
.footer__wordmark .l2{font-size:clamp(1.05rem, 0.9rem + 0.6vw, 1.45rem);letter-spacing:0.10em;color:var(--c-secondary);margin-top:0.15em}
.footer__beat{justify-content:center;margin-top:var(--sp-4)}
.footer__grid{display:grid;gap:var(--sp-6);margin-bottom:var(--sp-7)}
@media (min-width:720px){.footer__grid{grid-template-columns:1fr 1fr}}
@media (min-width:980px){.footer__grid{grid-template-columns:1.2fr 1fr 1fr}}
.footer__col h2{font-family:var(--ff-display);font-size:var(--fs-micro);font-weight:600;letter-spacing:0.22em;text-transform:uppercase;color:var(--c-secondary);margin:0 0 var(--sp-4)}
.footer__col ul{list-style:none;margin:0;padding:0}
.footer__col li{margin:0 0 var(--sp-2)}
.footer__col a{color:var(--c-text);font-size:var(--fs-small);transition:color var(--mo-dur) var(--mo-ease)}
.footer__col a:hover,.footer__col a:focus-visible{color:var(--c-secondary)}
.footer__col p{font-size:var(--fs-small);color:rgba(237,234,227,0.78);margin-bottom:var(--sp-3)}
.footer__bottom{border-top:1px solid var(--c-hairline);padding-top:var(--sp-5);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-3) var(--sp-5);font-size:0.875rem}
.footer__legal{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2) var(--sp-4);margin:0}
.footer__legal a{color:rgba(237,234,227,0.78);font-size:0.875rem}
.footer__legal a:hover{color:var(--c-secondary)}
.footer__copy{color:rgba(237,234,227,0.72);margin:0;max-width:none}
.footer__by{margin:0;max-width:none}
.footer__by a{color:rgba(237,234,227,0.78)}
.footer__by a:hover{color:var(--c-secondary)}
.reveal{opacity:0}
@media (prefers-reduced-motion: no-preference){.reveal{transform:translateY(var(--mo-dist));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:translateY(0)}.reveal-stagger > *{opacity:0;transform:translateY(var(--mo-dist));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{opacity:1;transform:translateY(0)}.media-zoom:hover img,.media-zoom:focus-within img{transform:scale(1.03)}.rule-beat::before{transform:scaleX(0);transition:transform var(--mo-dur) var(--mo-ease)}.rule-beat.is-visible::before,.is-visible .rule-beat::before{transform:scaleX(1)}.ken-burns{animation:kb 12s var(--mo-ease) infinite alternate}@keyframes kb{from{transform:scale(1)}to{transform:scale(1.04)}}.post-plate{transition:border-color var(--mo-dur) var(--mo-ease),transform var(--mo-dur) var(--mo-ease)}.post-plate:hover{transform:translateY(-2px);border-color:#2E2E2E}.identity{transition:opacity var(--mo-dur) var(--mo-ease)}.identity:hover{opacity:0.85}}
.reveal.is-visible,.reveal-stagger > *.is-visible{opacity:1}
@media (prefers-reduced-motion: reduce){.reveal,.reveal-stagger > *{opacity:1;transform:none;transition:none}.ken-burns{animation:none}.rule-beat::before{transform:none}.media-zoom img{transition:none}}
@media (min-width:900px){.nav-desktop{display:flex;align-items:center;gap:clamp(1rem, 0.4rem + 1.2vw, 2rem)}.nav-toggle-label{display:none}.nav-panel,.nav-toggle:checked ~ .nav-panel{display:none}.identity__logo{height:44px}.identity__line1{font-size:1.05rem}.identity__line2{font-size:0.82rem}}
.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}}
/* 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}
