
:root{--red:#d4111a;--reddk:#a90d14;--char:#1f2226;--char2:#2a2d31;--gray:#e9ecef;--steel:#8a9199;--white:#fff;--text:#23262a}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font:17px/1.65 "Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--text);background:#fff}
img{max-width:100%;height:auto;display:block}a{color:var(--reddk)}
h1,h2,h3{font-family:"Arial Narrow","Segoe UI",Arial,sans-serif;line-height:1.1;text-transform:uppercase;letter-spacing:.01em;margin:0 0 .5em;color:var(--char)}
h1{font-size:clamp(2rem,5vw,3.5rem);font-weight:800}h2{font-size:clamp(1.5rem,3.2vw,2.3rem);font-weight:800}h3{font-size:1.15rem;font-weight:700}
.wrap{max-width:1180px;margin:0 auto;padding:0 22px}
.skip{position:absolute;left:-999px;top:0;background:var(--red);color:#fff;padding:10px;z-index:100}.skip:focus{left:0}
header.site{position:sticky;top:0;z-index:50;background:#fff;border-bottom:4px solid var(--red)}
.bar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:72px}
.brand img{height:58px;width:auto}
nav.main ul{display:flex;gap:2px;list-style:none;margin:0;padding:0;flex-wrap:wrap}
nav.main a{display:block;padding:8px 9px;font-size:.83rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--char);text-decoration:none;position:relative}
nav.main a::after{content:"";position:absolute;left:9px;right:9px;bottom:2px;height:3px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .25s}
nav.main a:hover::after,nav.main a[aria-current=page]::after{transform:scaleX(1)}
nav.main a.cta{background:var(--red);color:#fff}nav.main a.cta::after{display:none}
.toggle{display:none;background:var(--char);color:#fff;border:0;padding:10px 14px;font-weight:700;text-transform:uppercase;cursor:pointer}
@media(max-width:1100px){.toggle{display:block}nav.main{position:absolute;left:0;right:0;top:100%;background:var(--char);display:none}nav.main.open{display:block}nav.main ul{flex-direction:column;padding:10px 22px 18px}nav.main a{color:#fff;padding:12px 4px;border-bottom:1px solid #3a3e44}nav.main a::after{display:none}nav.main a.cta{text-align:center;margin-top:8px}}
.btn{display:inline-block;padding:13px 22px;font-weight:800;text-transform:uppercase;font-size:.88rem;letter-spacing:.04em;text-decoration:none;background:var(--red);color:#fff;border:2px solid var(--red);clip-path:polygon(0 0,100% 0,calc(100% - 12px) 100%,0 100%);padding-right:32px;transition:background .2s}
.btn:hover{background:var(--reddk)}.btn.alt{background:transparent;color:#fff;border-color:#fff}.btn.alt:hover{background:#fff;color:var(--char)}.btn.dk{background:var(--char);border-color:var(--char)}.btn.line{background:#fff;color:var(--char);border-color:var(--char)}
.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.hero{background:var(--char);color:#fff;position:relative;overflow:hidden;background-image:linear-gradient(#ffffff0a 1px,transparent 1px),linear-gradient(90deg,#ffffff0a 1px,transparent 1px);background-size:44px 44px}
.hero::after{content:"";position:absolute;right:-60px;top:0;bottom:0;width:180px;background:var(--red);transform:skewX(-14deg);opacity:.9}
.hero .wrap{position:relative;z-index:1;display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center;padding-top:64px;padding-bottom:64px}
.hero h1{color:#fff}.hero p{color:#dfe3e7;max-width:60ch}
.logo-plate{background:#fff;padding:18px;border-left:8px solid var(--red);box-shadow:0 0 0 1px #ffffff22}
@media(max-width:860px){.hero .wrap{grid-template-columns:1fr}.hero::after{width:60px}}
.page-hero{background:var(--char);color:#fff;padding:54px 0;border-bottom:6px solid var(--red);background-image:linear-gradient(90deg,#ffffff0a 1px,transparent 1px);background-size:44px 44px}
.page-hero h1{color:#fff;margin:0 0 .3em}.page-hero p{max-width:70ch;color:#dfe3e7;margin:0}
.eyebrow{display:inline-block;color:var(--red);font-weight:800;text-transform:uppercase;font-size:.8rem;letter-spacing:.14em;margin-bottom:10px}
.hero .eyebrow,.page-hero .eyebrow,.dark .eyebrow{color:#ff6b72}
section.s{padding:72px 0}section.gray{background:var(--gray)}section.dark{background:var(--char);color:#dfe3e7}section.dark h2,section.dark h3{color:#fff}
.divider{height:22px;background:repeating-linear-gradient(115deg,var(--red) 0 24px,transparent 24px 48px);opacity:.9;border-top:1px solid #0001}
.split{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}.split.r{grid-template-columns:1.1fr .9fr}
@media(max-width:860px){.split,.split.r{grid-template-columns:1fr}}
.grid{display:grid;gap:22px;grid-template-columns:repeat(auto-fit,minmax(270px,1fr))}
.cat{background:#fff;border:1px solid #cfd4d9;border-top:5px solid var(--red);padding:24px;position:relative;transition:transform .2s,box-shadow .2s}
.cat:hover{transform:translateY(-3px);box-shadow:0 10px 24px #0002}
.cat .n{font:800 .8rem monospace;color:var(--steel);letter-spacing:.1em}
.cat p{margin:.4em 0 0}.cat a.more{font-weight:700;text-transform:uppercase;font-size:.82rem}
.dark .cat{background:var(--char2);border-color:#3a3e44;border-top-color:var(--red);color:#dfe3e7}
.art{border:1px solid #cfd4d9;border-bottom:6px solid var(--red)}
.note{font-size:.88rem;color:#5d646b;margin-top:8px}.dark .note{color:#aab1b8}
ul.tick{list-style:none;padding:0}ul.tick li{padding-left:28px;position:relative;margin:.5em 0}ul.tick li::before{content:"";position:absolute;left:0;top:.55em;width:14px;height:8px;background:var(--red);clip-path:polygon(0 0,100% 50%,0 100%)}
ol.steps{counter-reset:s;list-style:none;padding:0;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
ol.steps li{counter-increment:s;background:var(--char2);padding:22px;border-left:5px solid var(--red)}
ol.steps li::before{content:"0" counter(s);display:block;font:800 1.4rem monospace;color:#ff6b72}
.band{background:var(--red);color:#fff;padding:40px 0}.band h2{color:#fff;margin:0}.band .wrap{display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between}.band .btn{background:#fff;color:var(--red);border-color:#fff}
form.inq{display:grid;gap:16px;grid-template-columns:1fr 1fr;background:#fff;padding:28px;border:1px solid #cfd4d9;border-top:6px solid var(--red)}
form.inq .full{grid-column:1/-1}@media(max-width:700px){form.inq{grid-template-columns:1fr}}
label{display:block;font-weight:700;font-size:.9rem;margin-bottom:4px}
input,select,textarea{width:100%;padding:11px 12px;font:inherit;border:1px solid #8a9199;background:#fff;color:var(--text);border-radius:0}
input:focus,select:focus,textarea:focus,a:focus-visible,button:focus-visible{outline:3px solid #1a73e8;outline-offset:2px}
.req{color:var(--red)}.status{display:none;padding:14px;background:#fff4e5;border-left:5px solid #b26a00;font-size:.95rem}.status.show{display:block}
.contact-card{background:var(--char);color:#fff;padding:30px;border-left:8px solid var(--red)}.contact-card a{color:#fff}.contact-card address{font-style:normal}
.legal{max-width:820px}.legal h2{font-size:1.4rem;margin-top:1.8em}
footer.site{background:var(--char);color:#c7ccd1;border-top:6px solid var(--red);padding:48px 0 22px;font-size:.95rem}
footer.site a{color:#fff}.fgrid{display:grid;gap:30px;grid-template-columns:1.3fr 1fr 1fr}@media(max-width:760px){.fgrid{grid-template-columns:1fr}}
footer.site h3{color:#fff;font-size:1rem}footer.site ul{list-style:none;padding:0;margin:0}footer.site li{margin:.3em 0}
.copy{border-top:1px solid #3a3e44;margin-top:30px;padding-top:16px;font-size:.85rem}
.reveal{opacity:0;transform:translateY(14px);transition:opacity .6s,transform .6s}.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}*{transition:none!important;scroll-behavior:auto}}
