:root { --red:#c8102e; --gold:#f4a724; --ink:#1c0a00; --cream:#fff8e1; --paper:#fffdf6; --line:rgba(28,10,0,.16); }
* { box-sizing:border-box; }
body { margin:0; padding-top:64px; background:var(--cream); color:var(--ink); font:16px/1.55 Inter,system-ui,sans-serif; }
a { color:inherit; }
.skip { position:absolute; left:1rem; top:-4rem; z-index:1101; background:var(--gold); padding:.75rem 1rem; font-weight:700; }
.skip:focus { top:1rem; }
.wrap { width:min(1100px,calc(100% - 2rem)); margin:auto; }
.hero { background:linear-gradient(120deg,#2e0e05,#7b1323); color:#fff; padding:clamp(2rem,5vw,3.25rem) 0; }
.eyebrow { color:var(--gold); font-size:.76rem; font-weight:800; letter-spacing:.15em; text-transform:uppercase; }
h1,h2 { font-family:Oswald,Arial,sans-serif; font-weight:700; letter-spacing:.02em; text-transform:uppercase; line-height:1; }
h1 { max-width:1000px; margin:.5rem 0 1rem; font-size:clamp(2.7rem,6vw,4.5rem); }
.hero p { max-width:630px; font-size:1.08rem; color:rgba(255,255,255,.9); }
main { padding:clamp(2.5rem,6vw,5rem) 0; }
.layout { display:grid; gap:2rem; align-items:start; grid-template-columns:minmax(0,1fr); }
.intro h2 { font-size:clamp(2rem,4vw,3.25rem); margin:.25rem 0 1rem; }
.intro p { max-width:610px; }
.intro .eyebrow { color:#963223; }
#customer-signup-form { display:grid; gap:.9rem; }
.truths { margin:1.5rem 0 0; padding:0; list-style:none; display:grid; gap:.75rem; }
.truths li { padding-left:1.5rem; position:relative; }
.truths li::before { content:""; position:absolute; left:0; top:.48rem; width:.62rem; height:.62rem; border-radius:50%; background:var(--gold); }
.card { background:var(--paper); border:1px solid var(--line); border-radius:14px; box-shadow:0 16px 38px rgba(28,10,0,.1); padding:clamp(1.25rem,4vw,2rem); }
.card h2 { margin:0 0 .25rem; font-size:2rem; }
.hint { color:#63483d; font-size:.92rem; margin:.25rem 0 1.25rem; }
.fields { display:grid; grid-template-columns:1fr; gap:1rem; }
label { display:grid; gap:.4rem; font-size:.9rem; font-weight:700; }
input,textarea { width:100%; min-height:46px; border:1px solid #9a8378; border-radius:7px; background:#fff; padding:.7rem .8rem; color:var(--ink); font:inherit; }
textarea { min-height:90px; resize:vertical; }
input:focus-visible,textarea:focus-visible,a:focus-visible,button:focus-visible { outline:3px solid var(--gold); outline-offset:3px; }
.required { color:var(--red); }
.contact-note { margin:.1rem 0 0; font-size:.84rem; color:#63483d; }
.marketing-consent { display:flex; align-items:flex-start; gap:.7rem; margin-top:.9rem; font-size:.9rem; line-height:1.4; }
.marketing-consent input { width:1.15rem; min-height:1.15rem; margin:.05rem 0 0; accent-color:var(--red); }
.marketing-consent input:disabled + span { color:#63483d; }
.marketing-disclosure { min-height:1.3rem; margin:.5rem 0 0 1.85rem; color:#63483d; font-size:.82rem; }
.honeypot { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
.button { display:inline-flex; min-height:46px; align-items:center; justify-content:center; margin-top:1.25rem; border:0; border-radius:7px; background:var(--red); color:#fff; padding:.75rem 1.1rem; font:800 .9rem Arial,sans-serif; cursor:pointer; }
.button:hover:not(:disabled) { background:#a40d25; }
.button:disabled { cursor:not-allowed; opacity:.55; }
.form-status { min-height:1.5em; margin:1rem 0 0; font-weight:700; }
.form-status.error { color:#9c1229; }
.form-status.success { color:#26683a; }
.fine { margin:1.2rem 0 0; color:#63483d; font-size:.82rem; }
.footer { background:var(--ink); color:var(--cream); padding:2rem 0; }
.footer-line { display:flex; justify-content:space-between; gap:1rem; flex-wrap:wrap; font-size:.9rem; }
.footer a { color:var(--gold); }
@media (min-width:840px) { .layout { grid-template-columns:.9fr 1.1fr; gap:4rem; } .fields.two { grid-template-columns:1fr 1fr; } }
