*,*::before,*::after{box-sizing:border-box}
:root{--s4:4px;--s8:8px;--s12:12px;--s16:16px;--s24:24px;--s32:32px;--s40:40px;--s64:64px;--cream:#f6ecd8;--cream-2:#efdfc2;--paper:#fffaf1;--ink:#181410;--ink-soft:#3d342a;--red:#bf3521;--teal:#14545e;--mustard:#9a6a08;--mustard-bright:#e9b84a;--footer-muted:#cbb99a;--focus:#14545e;--focus-dark:#e9b84a;--max:1120px;--display:Impact,"Haettenschweiler","Arial Narrow",Arial,sans-serif;--body:Georgia,"Iowan Old Style","Times New Roman",serif}
[hidden]{display:none!important}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;color:var(--ink);font-family:var(--body);font-size:1rem;line-height:1.65;background-color:var(--cream);background-image:repeating-linear-gradient(0deg,rgba(24,20,16,.035) 0 1px,transparent 1px 5px),radial-gradient(rgba(24,20,16,.07) 1px,transparent 1.4px);background-size:auto,7px 7px}
h1,h2,h3,p,ul,ol,dl,figure,table{overflow-wrap:anywhere}
h1,h2,h3{font-family:var(--display);text-transform:uppercase;letter-spacing:.02em;line-height:.95;margin:0}
p,ul,ol,dl{margin:0}
img{display:block;max-width:100%;height:auto}
a{color:var(--teal)}
a:hover{color:var(--red)}
:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.site-footer :focus-visible,.mobile-menu :focus-visible,.cookie-banner :focus-visible{outline-color:var(--focus-dark)}
.container{width:min(calc(100% - var(--s32)),var(--max));margin-inline:auto}
.skip-link{position:absolute;left:var(--s8);top:-72px;z-index:100;background-color:var(--ink);color:var(--paper);padding:var(--s8) var(--s16);text-decoration:none;font-family:var(--display);text-transform:uppercase}
.skip-link:focus{top:var(--s8)}
.site-header{background-color:var(--cream-2);border-bottom:4px solid var(--ink)}
.header-row{display:flex;align-items:center;gap:var(--s16);min-height:50px}
.brand{display:flex;align-items:center;gap:var(--s8);text-decoration:none;color:var(--ink);flex-shrink:0}
.brand-mark{width:26px;height:26px;color:var(--red);flex-shrink:0}
.brand-name{font-family:var(--display);text-transform:uppercase;font-size:.85rem;letter-spacing:.04em;white-space:nowrap}
.brand-tld{color:var(--red)}
.site-nav{display:none;margin-inline:auto;min-width:0}
.site-nav ul{display:flex;list-style:none;gap:var(--s16);margin:0;padding:0}
.site-nav a{font-family:var(--display);text-transform:uppercase;letter-spacing:.05em;font-size:.875rem;color:var(--ink);text-decoration:none;white-space:nowrap}
.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--red)}
.cta{display:none;flex-shrink:0;white-space:nowrap;background-color:var(--red);color:var(--paper);font-family:var(--display);text-transform:uppercase;letter-spacing:.06em;font-size:.875rem;padding:var(--s8) var(--s16);text-decoration:none;border:2px solid var(--ink);box-shadow:4px 4px 0 var(--ink)}
.cta:hover{background-color:var(--ink);color:var(--paper)}
.menu-toggle{margin-left:auto;flex-shrink:0;background-color:var(--ink);color:var(--paper);border:2px solid var(--ink);font-family:var(--display);text-transform:uppercase;letter-spacing:.08em;font-size:.875rem;padding:var(--s8) var(--s12);cursor:pointer}
.mobile-menu{position:fixed;inset:0;z-index:60;background-color:var(--ink);color:var(--paper);display:flex;flex-direction:column;justify-content:flex-start;overflow-y:auto;padding:var(--s24)}
.mobile-menu-top{display:flex;justify-content:flex-end}
.mobile-menu ul{list-style:none;padding:0;margin-block:auto;display:flex;flex-direction:column;gap:var(--s16);width:100%}
.mobile-menu a{color:var(--paper);font-family:var(--display);text-transform:uppercase;font-size:1.5rem;text-decoration:none;display:block;border-bottom:2px solid rgba(246,236,216,.25);padding-bottom:var(--s8)}
.mobile-menu .cta{display:inline-block}
@media(min-width:1024px){.header-row{min-height:60px;gap:var(--s24)}.brand-name{font-size:.95rem}.site-nav{display:block}.cta{display:inline-block}.menu-toggle{display:none}}
main{display:block}
.section{padding-block:var(--s64)}
.section-tight{padding-block:var(--s40)}
.eyebrow{font-family:var(--display);text-transform:uppercase;letter-spacing:.14em;font-size:.875rem;color:var(--red);margin-bottom:var(--s12)}
.display-xl{font-size:clamp(2.4rem,8vw,4.5rem);text-shadow:4px 4px 0 var(--mustard-bright),8px 8px 0 var(--teal)}
.standfirst{font-size:1.15rem;color:var(--ink-soft);margin-top:var(--s24);max-width:60ch}
.hero{display:grid;gap:var(--s32);padding-block:var(--s40) var(--s64)}
.hero>*{min-width:0}
@media(min-width:1024px){.hero{grid-template-columns:1.05fr .95fr;align-items:center;gap:var(--s40)}}
.lead-figure{margin:var(--s32) 0 0;border:3px solid var(--ink);background-color:var(--paper);box-shadow:10px 10px 0 var(--red);position:relative}
.lead-figure img{width:100%;aspect-ratio:16/9;object-fit:cover;border-bottom:3px solid var(--ink)}
.lead-figure figcaption{padding:var(--s12) var(--s16);font-size:.9375rem;color:var(--ink-soft)}
.halftone-frame::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(rgba(24,20,16,.22) 1px,transparent 1.5px);background-size:6px 6px;mix-blend-mode:multiply}
.rule{height:8px;background-color:var(--ink);background-image:repeating-linear-gradient(90deg,var(--red) 0 24px,var(--ink) 24px 48px);border:0;margin:0}
.poster-tiles{display:grid;grid-template-columns:1fr;gap:var(--s24);list-style:none;margin:0;padding:0}
.poster-tiles>*{min-width:0}
@media(min-width:768px){.poster-tiles{grid-template-columns:repeat(2,1fr);gap:var(--s32)}}
@media(min-width:1024px){.poster-tiles{grid-template-columns:repeat(3,1fr)}}
.tile{position:relative;display:flex;flex-direction:column;justify-content:flex-end;aspect-ratio:1/1;border:3px solid var(--ink);box-shadow:8px 8px 0 var(--ink);text-decoration:none;color:var(--paper);background-color:var(--ink)}
.tile:hover{box-shadow:8px 8px 0 var(--red)}
.tile-media{position:absolute;inset:0}
.tile-media img{width:100%;height:100%;object-fit:cover}
.tile-media::after{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(24,20,16,.3) 1px,transparent 1.5px);background-size:5px 5px;mix-blend-mode:multiply}
.tile-body{position:relative;background-color:rgba(20,17,13,.94);color:var(--paper);padding:var(--s24);border-top:3px solid var(--mustard-bright)}
.tile-num{font-family:var(--display);font-size:clamp(3rem,7vw,4.25rem);line-height:.8;color:var(--mustard-bright);display:block}
.tile-title{font-size:clamp(1.25rem,2.4vw,1.6rem);margin-top:var(--s8);color:var(--paper)}
.tile-line{font-size:.9375rem;margin-top:var(--s8);color:#e8dcc6}
.h2{font-size:clamp(1.7rem,4vw,2.5rem);margin-bottom:var(--s16)}
.h2-bar{border-top:6px solid var(--ink);padding-top:var(--s16)}
.h3{font-size:1.15rem;letter-spacing:.06em;margin-bottom:var(--s8)}
.prose{max-width:70ch;margin-inline:auto}
.prose h2{font-size:clamp(1.5rem,3.4vw,2.1rem);margin-top:var(--s40);margin-bottom:var(--s12);border-top:4px solid var(--ink);padding-top:var(--s16)}
.prose h3{font-size:1.1rem;letter-spacing:.05em;margin-top:var(--s24);margin-bottom:var(--s8)}
.prose p{margin-top:var(--s16);font-size:1.0625rem}
.prose ul,.prose ol{margin-top:var(--s16);padding-left:var(--s24)}
.prose li{margin-top:var(--s8)}
.note{background-color:var(--paper);border:3px solid var(--ink);border-left:12px solid var(--teal);padding:var(--s24);margin-top:var(--s32)}
.spec{background-color:var(--paper);border:3px solid var(--ink);box-shadow:8px 8px 0 var(--teal);padding:var(--s24);margin-top:var(--s32)}
.spec dl{display:grid;grid-template-columns:1fr;gap:var(--s16);margin-top:var(--s16)}
.spec dl>*{min-width:0}
@media(min-width:768px){.spec dl{grid-template-columns:repeat(2,1fr);gap:var(--s24)}}
.spec dt{font-family:var(--display);text-transform:uppercase;letter-spacing:.08em;font-size:.875rem;color:var(--mustard)}
.spec dd{margin:var(--s4) 0 0;font-size:.9375rem;color:var(--ink-soft)}
.def-grid{display:grid;grid-template-columns:1fr;gap:var(--s24);margin-top:var(--s32)}
.def-grid>*{min-width:0}
@media(min-width:768px){.def-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.def-grid{grid-template-columns:repeat(3,1fr)}}
.def{background-color:var(--paper);border:3px solid var(--ink);padding:var(--s24);box-shadow:6px 6px 0 var(--mustard-bright)}
.def p{margin-top:var(--s8);font-size:.9375rem;color:var(--ink-soft)}
.next-links{display:flex;flex-wrap:wrap;gap:var(--s12);margin-top:var(--s32);list-style:none;padding:0}
.next-links a{font-family:var(--display);text-transform:uppercase;font-size:.875rem;letter-spacing:.06em;text-decoration:none;color:var(--ink);border:2px solid var(--ink);padding:var(--s8) var(--s12);background-color:var(--cream-2)}
.next-links a:hover{background-color:var(--ink);color:var(--paper)}
.table-wrap{overflow-x:auto;border:3px solid var(--ink);background-color:var(--paper);margin-top:var(--s24)}
table{border-collapse:collapse;width:100%;min-width:520px;font-size:.9375rem}
th,td{text-align:left;padding:var(--s12) var(--s16);border-bottom:1px solid rgba(24,20,16,.25);vertical-align:top}
th{font-family:var(--display);text-transform:uppercase;letter-spacing:.06em;background-color:var(--cream-2)}
.form-grid{display:grid;grid-template-columns:1fr;gap:var(--s24);margin-top:var(--s32)}
.form-grid>*{min-width:0}
@media(min-width:1024px){.form-grid{grid-template-columns:1.1fr .9fr;gap:var(--s40)}}
form{background-color:var(--paper);border:3px solid var(--ink);box-shadow:8px 8px 0 var(--red);padding:var(--s24)}
.field{margin-bottom:var(--s16)}
label{display:block;font-family:var(--display);text-transform:uppercase;letter-spacing:.07em;font-size:.875rem;margin-bottom:var(--s4)}
input,select,textarea{width:100%;font-family:var(--body);font-size:1rem;padding:var(--s12);border:2px solid var(--ink);background-color:var(--cream);color:var(--ink)}
textarea{min-height:140px;resize:vertical}
.is-invalid{border-color:var(--red);background-color:#fbeeea}
.error{display:block;margin-top:var(--s4);font-size:.875rem;color:#a02a18}
.hint{font-size:.875rem;color:var(--ink-soft);margin-top:var(--s4)}
.btn{display:inline-block;background-color:var(--ink);color:var(--paper);border:2px solid var(--ink);font-family:var(--display);text-transform:uppercase;letter-spacing:.08em;font-size:1rem;padding:var(--s12) var(--s24);cursor:pointer;box-shadow:5px 5px 0 var(--teal);text-decoration:none}
.btn:hover{background-color:var(--red);color:var(--paper)}
.form-status{margin-top:var(--s16);background-color:var(--cream-2);border:2px solid var(--ink);padding:var(--s12);font-size:.9375rem}
.contact-card{background-color:var(--cream-2);border:3px solid var(--ink);padding:var(--s24)}
.contact-card h2{font-size:1.3rem}
.contact-card p{margin-top:var(--s12);font-size:.9375rem}
.site-footer{background-color:var(--ink);color:var(--paper);border-top:8px solid var(--red);margin-top:var(--s64);padding-block:var(--s40)}
.footer-grid{display:grid;grid-template-columns:1fr;gap:var(--s32)}
.footer-grid>*{min-width:0}
@media(min-width:768px){.footer-grid{grid-template-columns:2fr 1fr 1fr;gap:var(--s40)}}
.footer-brand{font-family:var(--display);text-transform:uppercase;font-size:1.1rem;letter-spacing:.04em}
.footer-muted{color:var(--footer-muted);font-size:.9375rem;margin-top:var(--s12)}
.footer-head{font-size:.9375rem;letter-spacing:.1em;color:var(--mustard-bright);margin-bottom:var(--s12)}
.site-footer ul{list-style:none;padding:0;display:flex;flex-direction:column;gap:var(--s8)}
.site-footer a{color:var(--paper);font-size:.9375rem}
.site-footer a:hover{color:var(--mustard-bright)}
.footer-base{margin-top:var(--s32);border-top:2px solid rgba(246,236,216,.3);padding-top:var(--s16)}
.footer-base p{font-size:.875rem}
.cookie-banner{position:fixed;left:0;right:0;bottom:0;z-index:70;background-color:var(--ink);color:var(--paper);border-top:4px solid var(--mustard-bright);padding:var(--s16)}
.cookie-inner{display:flex;flex-direction:column;gap:var(--s12);width:min(calc(100% - var(--s16)),var(--max));margin-inline:auto}
.cookie-inner p{font-size:.9375rem}
.cookie-actions{display:flex;flex-direction:column;gap:var(--s8)}
.cookie-actions button{background-color:var(--cream);color:var(--ink);border:2px solid var(--cream);font-family:var(--display);text-transform:uppercase;letter-spacing:.06em;font-size:.875rem;padding:var(--s8) var(--s16);cursor:pointer;white-space:nowrap}
.cookie-actions button:hover{background-color:var(--mustard-bright);color:var(--ink)}
.cookie-prefs{background-color:#241e18;color:var(--paper);border:2px solid var(--footer-muted);padding:var(--s16)}
.cookie-prefs p{color:var(--footer-muted)}
.cookie-prefs label{display:flex;gap:var(--s8);align-items:flex-start;font-family:var(--body);text-transform:none;letter-spacing:0;font-size:.9375rem;margin-top:var(--s12)}
.cookie-prefs input{width:auto;margin:0;flex-shrink:0}
.cookie-prefs .btn{box-shadow:none;margin-top:var(--s16);background-color:var(--cream);color:var(--ink);border-color:var(--cream)}
@media(min-width:480px){.cookie-actions{flex-direction:row;flex-wrap:wrap}.cookie-actions button{flex:1 1 auto}}
@media(min-width:768px){.cookie-inner{flex-direction:row;align-items:center;gap:var(--s24)}.cookie-copy{flex:1 1 auto}.cookie-actions{flex:0 0 auto;justify-content:flex-end;flex-wrap:nowrap}.cookie-actions button{flex:0 0 auto}.cookie-prefs{flex-basis:100%}}
@media(max-width:767px){.tile,.lead-figure,.spec,.def,form{box-shadow:none}.display-xl{text-shadow:3px 3px 0 var(--mustard-bright)}}
@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}html{scroll-behavior:auto}}