@font-face{font-family:"TeX Gyre Bonum";src:url("fonts/texgyrebonum-regular.woff2") format("woff2"),url("fonts/texgyrebonum-regular.otf") format("opentype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"TeX Gyre Bonum";src:url("fonts/texgyrebonum-bold.woff2") format("woff2"),url("fonts/texgyrebonum-bold.otf") format("opentype");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"TeX Gyre Bonum";src:url("fonts/texgyrebonum-italic.woff2") format("woff2"),url("fonts/texgyrebonum-italic.otf") format("opentype");font-weight:400;font-style:italic;font-display:swap}
:root{--accent:#C62A22;--accent-text:#E5544C;--ink:#121212;--ink-2:#0B0B0B;--ink-3:#1B1B1B;--line:#2A2A2A;--fg:#E8E4DA;--fg-strong:#F4F1EA;--fg-muted:#C9C4B8;--fg-dim:#9C978C;--paper:#F4F1EA;--paper-ink:#1A1A1A;
--mono:"Courier Prime","Courier New",monospace;--serif:"Bookman Old Style","Bookman","TeX Gyre Bonum","URW Bookman","URW Bookman L",Georgia,serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ink);color:var(--fg);font-family:var(--serif);font-size:18px;line-height:1.6}
img{max-width:100%;display:block}
a{color:var(--fg)}a:hover{color:#fff}
h1,h2,h3{font-family:var(--mono);margin:0;line-height:1.2}
p{margin:0}
.wrap{max-width:1240px;margin:0 auto;padding:0 24px}
.site-header{background:var(--ink-2);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}
.header-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 16px;padding-top:14px;padding-bottom:14px}
.brand{display:flex;align-items:center;gap:14px;text-decoration:none}
.brand img{width:84px;height:50px;object-fit:cover}
.brand span{font-family:var(--mono);font-weight:700;font-size:18px;letter-spacing:.04em;color:var(--fg-strong)}
nav{display:flex;flex-wrap:wrap;align-items:center;gap:4px 22px;font-family:var(--mono);font-size:16px}
nav a{text-decoration:none;padding:10px 0}
.btn{font-family:var(--mono);font-weight:700;text-decoration:none;background:var(--accent);color:#fff!important;padding:12px 18px;display:inline-block}
.btn:hover{background:#A31D18}
.btn-lg{font-size:17px;padding:16px 26px}
.btn-outline{font-family:var(--mono);font-weight:700;font-size:17px;text-decoration:none;border:2px solid var(--fg);padding:14px 24px;display:inline-block}
.hero-row{display:flex;flex-wrap:wrap;gap:56px;align-items:center;padding-top:88px;padding-bottom:96px}
.hero-text{flex:999 1 520px;min-width:0;display:flex;flex-direction:column;gap:26px}
.slug{font-family:var(--mono);font-size:16px;letter-spacing:.12em;color:var(--accent-text);font-weight:700}
.hero h1{font-size:clamp(36px,5vw,58px);line-height:1.08;color:var(--fg-strong)}
.lede{font-size:20px;color:var(--fg-muted);max-width:640px}
.btn-row{display:flex;flex-wrap:wrap;gap:14px;padding-top:6px}
.contact-line{font-family:var(--mono);font-size:17px;display:flex;flex-wrap:wrap;gap:8px 28px;padding-top:8px}
.contact-line a{text-decoration:none}
.hero-photo{flex:1 1 380px;margin:0;min-width:0;display:flex;flex-direction:column;gap:10px}
.hero-photo img{width:100%;aspect-ratio:460/420;object-fit:cover;border:1px solid var(--line)}
.hero-photo figcaption{font-family:var(--mono);font-size:14px;color:var(--fg-dim)}
.credits{background:var(--accent)}
.credits .wrap{padding-top:44px;padding-bottom:44px;display:flex;flex-direction:column;gap:18px}
.eyebrow-light{font-size:16px;letter-spacing:.14em;color:#fff}
.credits p{font-family:var(--mono);font-size:22px;line-height:1.7;color:#fff;font-weight:700}
.dark .wrap,.paper .wrap{padding-top:96px;padding-bottom:96px;display:flex;flex-direction:column;gap:40px}
.section-head{display:flex;flex-direction:column;gap:14px;max-width:760px}
h2{font-size:clamp(32px,4vw,44px);color:var(--fg-strong)}
.section-head p{font-size:19px;color:var(--fg-muted)}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(330px,100%),1fr));gap:28px}
.card{text-decoration:none;display:flex;flex-direction:column;background:var(--ink-3);border:1px solid var(--line);transition:border-color .15s}
.card:hover{border-color:var(--accent)}
.thumb{position:relative;aspect-ratio:16/9;background:var(--ink-2);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:center;overflow:hidden}
.thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.play{position:relative;display:flex}
.card-body{padding:22px 22px 26px;display:flex;flex-direction:column;gap:10px}
.tag{font-family:var(--mono);font-size:13px;letter-spacing:.1em;color:var(--accent-text);font-weight:700}
.card h3{font-size:21px;line-height:1.3;color:var(--fg-strong)}
.card p{font-size:16px;line-height:1.55;color:var(--fg-muted)}
.card .note{font-size:15px;color:var(--fg-dim)}
.paper{background:var(--paper);color:var(--paper-ink)}
.paper h2{color:#111}
.paper a{color:#B3201A}
.services{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr));gap:32px 40px}
.svc{display:flex;flex-direction:column;gap:10px;border-top:3px solid #111;padding-top:18px}
.svc h3{font-size:21px;color:#111}
.svc p{font-size:17px;color:#3A3A3A}
.kit{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(340px,100%),1fr));gap:0 56px;font-family:var(--mono)}
.kit-group{padding:26px 0;border-top:1px dashed #4A4A4A;display:flex;flex-direction:column;gap:12px}
.kit-group h3{font-size:15px;letter-spacing:.14em;color:var(--accent-text)}
.kit-group ul{list-style:none;margin:0;padding:0;font-size:18px;line-height:1.75}
.about-row{flex-direction:row!important;flex-wrap:wrap;align-items:flex-start}
.about-row{gap:56px!important}
.about-photo{flex:1 1 340px;margin:0;min-width:0}
.about-photo img{width:100%;aspect-ratio:478/326;object-fit:cover}
.about-text{flex:999 1 520px;min-width:0;max-width:700px;display:flex;flex-direction:column;gap:20px}
.about-text p{font-size:19px;line-height:1.7;color:#2A2A2A}
.about-text .signoff{font-family:var(--mono);font-size:17px;color:#111}
.products{background:var(--ink-3);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.products .wrap{padding-top:72px;padding-bottom:72px;display:flex;flex-direction:column;gap:12px}
.eyebrow{font-family:var(--mono);font-size:14px;letter-spacing:.14em;color:var(--accent-text);font-weight:700}
.products h2{font-size:40px}
.contact{background:var(--ink-2)}
.contact .wrap{padding-top:104px;padding-bottom:88px;display:flex;flex-direction:column;gap:28px;align-items:flex-start}
.contact h2{font-size:clamp(34px,4.5vw,52px);line-height:1.1;max-width:900px}
.contact-big{display:flex;flex-wrap:wrap;gap:14px 40px;font-family:var(--mono);font-size:clamp(22px,3vw,28px);font-weight:700}
.contact-big a{text-decoration:none;padding:6px 0}
.site-footer{background:var(--ink-2);border-top:1px solid var(--line)}
.footer-row{padding-top:22px;padding-bottom:22px;font-family:var(--mono);font-size:14px;color:var(--fg-dim)}
@media (max-width:640px){.brand span{font-size:15px}.site-header{position:static}}
.avail-form{display:grid;grid-template-columns:1fr;gap:20px 24px;width:100%;max-width:900px;font-family:var(--mono)}
.avail-form .field{display:flex;flex-direction:column;gap:6px;min-width:0}
.avail-form label{font-family:var(--mono);font-size:15px;font-weight:700;color:var(--fg-strong)}
.avail-form input,.avail-form textarea{font:inherit;font-family:var(--mono);font-size:17px;color:var(--fg-strong);background:var(--ink);border:1px solid #4A4A4A;border-radius:0;padding:10px 12px;min-height:44px;width:100%;box-sizing:border-box}
.avail-form textarea{resize:vertical;min-height:140px}
.avail-form input:focus,.avail-form textarea:focus{outline:2px solid var(--accent-text);outline-offset:1px}
.avail-form .btn{border:0;cursor:pointer;font-size:17px;min-height:44px;width:100%}
.avail-form .hp{position:absolute;left:-9999px;height:0;overflow:hidden}
@media (min-width:700px){.avail-form{grid-template-columns:1fr 1fr}.avail-form .full{grid-column:1/-1}.avail-form .btn{width:auto}}
.thanks h1{font-size:clamp(34px,4.5vw,52px);color:var(--fg-strong);max-width:900px}
