
:root{--red:#d8101b;--red-d:#a80c15;--ink:#111214;--paper:#faf7f1;--gray:#ebe8e2;--gray-d:#5b5d62;--silver:linear-gradient(90deg,#b9bcc1,#eceef0,#b9bcc1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:"Helvetica Neue",Arial,sans-serif;color:var(--ink);background:var(--paper);line-height:1.65;font-size:17px}
img{max-width:100%;height:auto;display:block}a{color:var(--red-d)}
h1,h2,h3{font-family:"Arial Black","Helvetica Neue",Arial,sans-serif;line-height:1.08;letter-spacing:-.01em;margin:0 0 .5em;text-transform:none}
h1{font-size:clamp(2.2rem,5.4vw,4.2rem)}h2{font-size:clamp(1.7rem,3.4vw,2.6rem)}h3{font-size:1.2rem}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.skip{position:absolute;left:-999px;background:#fff;padding:8px;z-index:100}.skip:focus{left:8px;top:8px}
header.site{position:sticky;top:0;z-index:50;background:var(--paper);border-bottom:1px solid var(--ink)}
header.site::after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:3px;background:var(--silver)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:76px}
.brand img{height:56px;width:auto}
.menu{display:flex;gap:2px;list-style:none;margin:0;padding:0;flex-wrap:wrap}
.menu a{display:block;padding:8px 10px;font-size:.82rem;font-weight:700;text-decoration:none;color:var(--ink);text-transform:uppercase;letter-spacing:.05em;position:relative}
.menu a::after{content:"";position:absolute;left:10px;right:10px;bottom:2px;height:2px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .25s}
.menu a:hover::after,.menu a[aria-current]::after{transform:scaleX(1)}
.menu a.cta{background:var(--red);color:#fff;margin-left:6px}.menu a.cta::after{display:none}.menu a.cta:hover{background:var(--ink)}
.toggle{display:none;background:none;border:1px solid var(--ink);padding:10px 14px;font:700 .8rem Arial;text-transform:uppercase;letter-spacing:.08em;cursor:pointer}
.btn{display:inline-block;padding:14px 26px;font-weight:700;text-decoration:none;text-transform:uppercase;letter-spacing:.06em;font-size:.82rem;border:2px solid var(--red);background:var(--red);color:#fff;transition:background .25s,color .25s,transform .25s;cursor:pointer;font-family:inherit}
.btn:hover{background:var(--ink);border-color:var(--ink);transform:translateX(3px)}
.btn.line{background:transparent;color:var(--ink);border-color:var(--ink)}.btn.line:hover{background:var(--ink);color:#fff}
.btn.inv{background:transparent;color:#fff;border-color:#fff}.btn.inv:hover{background:#fff;color:var(--ink)}
.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.hero{padding:56px 0 72px;position:relative;overflow:hidden}
.hero .grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.eyebrow{font-size:.78rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--red-d);display:flex;align-items:center;gap:10px;margin-bottom:14px}
.eyebrow::before{content:"";width:34px;height:10px;background:var(--red);border-radius:5px}
.crop{position:relative;padding:28px;background:#fff}
.crop::before,.crop::after{content:"";position:absolute;width:26px;height:26px;border:1px solid var(--ink)}
.crop::before{top:0;left:0;border-right:0;border-bottom:0}.crop::after{bottom:0;right:0;border-left:0;border-top:0}
.stack{position:relative}.stack .sheet{position:absolute;inset:0;background:var(--gray);transform:translate(14px,14px);z-index:0}
.stack>*:not(.sheet){position:relative;z-index:1}
.hero-imgs{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px}
.sec{padding:84px 0}.sec.gray{background:var(--gray)}.sec.ink{background:var(--ink);color:#fff}.sec.ink h2,.sec.ink h3{color:#fff}.sec.ink p{color:#d4d5d8}
.sec.ink .eyebrow{color:#ff6b73}
.split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}.split.rev>:first-child{order:2}
.split .asym{margin-top:36px}
.lead{font-size:1.15rem;max-width:62ch}
.cats{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:0;border-top:1px solid var(--ink);border-left:1px solid var(--ink);margin-top:32px}
.cat{border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);padding:28px;background:var(--paper);text-decoration:none;color:inherit;display:block;position:relative;transition:background .25s,color .25s}
.cat .n{font:700 .75rem Arial;letter-spacing:.2em;color:var(--red-d)}
.cat p{margin:.4em 0 0;font-size:.97rem}
a.cat:hover{background:var(--ink);color:#fff}a.cat:hover .n{color:#ff6b73}a.cat:hover p{color:#ddd}
.cat::after{content:"";position:absolute;top:0;left:0;height:4px;width:0;background:var(--red);transition:width .3s}.cat:hover::after{width:100%}
.sec.ink .cat{background:transparent;border-color:#555;color:#fff}.sec.ink .cats{border-color:#555}
.fig{margin:0}.fig img{width:100%;border:1px solid #cfcac0}.fig figcaption{font-size:.78rem;color:var(--gray-d);margin-top:8px;letter-spacing:.04em}
.page-head{padding:72px 0 56px;background:var(--ink);color:#fff;position:relative;overflow:hidden}
.page-head p{color:#d4d5d8;max-width:62ch;font-size:1.1rem}.page-head .eyebrow{color:#ff6b73}
.page-head::after{content:"";position:absolute;right:-40px;top:50%;width:260px;height:44px;background:var(--red);transform:translateY(-50%) rotate(-12deg);opacity:.9;box-shadow:0 0 0 6px #111,0 0 0 8px #b9bcc1}
.note{border-left:4px solid var(--red);background:#fff;padding:16px 20px;font-size:.95rem;margin:28px 0}
.list{padding-left:0;list-style:none}.list li{padding:10px 0 10px 28px;border-bottom:1px solid #d6d1c6;position:relative}
.list li::before{content:"";position:absolute;left:0;top:19px;width:14px;height:6px;background:var(--red);border-radius:3px}
form.q{background:#fff;padding:32px;border:1px solid var(--ink);position:relative}
.fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.fields .full{grid-column:1/-1}
label{display:block;font-weight:700;font-size:.85rem;margin-bottom:6px}
input,select,textarea{width:100%;padding:12px;font:inherit;border:1px solid #777;background:var(--paper);border-radius:0;color:var(--ink)}
input:focus,select:focus,textarea:focus,a:focus-visible,button:focus-visible{outline:3px solid var(--red);outline-offset:2px}
.hint{font-size:.8rem;color:var(--gray-d);margin-top:4px}
.status{margin-top:16px;padding:14px;background:var(--gray);border-left:4px solid var(--ink);display:none}.status.show{display:block}
.contact-card{background:var(--ink);color:#fff;padding:32px}.contact-card a{color:#fff}.contact-card address{font-style:normal}
footer.site{background:var(--ink);color:#d4d5d8;padding:56px 0 28px;border-top:6px solid var(--red);font-size:.95rem}
footer.site a{color:#fff}.fgrid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:36px}
footer.site h2{font-size:.85rem;letter-spacing:.15em;text-transform:uppercase;color:#fff}
footer.site ul{list-style:none;padding:0;margin:0}footer.site li{margin:6px 0}
.legal{padding:60px 0}.legal h2{font-size:1.4rem;margin-top:2em}.legal .wrap{max-width:860px}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s,transform .6s}.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}}
@media(max-width:1020px){.toggle{display:block}
.menu{display:none;position:absolute;top:76px;left:0;right:0;background:var(--paper);border-bottom:2px solid var(--ink);flex-direction:column;padding:12px 24px 20px}
.menu.open{display:flex}.menu a{padding:12px 0;font-size:.9rem}.menu a.cta{margin:8px 0 0;text-align:center}
.hero .grid,.split{grid-template-columns:1fr}.split.rev>:first-child{order:0}.fgrid{grid-template-columns:1fr}}
@media(max-width:640px){body{font-size:16px}.sec{padding:56px 0}.fields{grid-template-columns:1fr}.page-head::after{display:none}.brand img{height:46px}.btn{width:100%;text-align:center}form.q{padding:20px}}
