
*{box-sizing:border-box}html,body{margin:0;padding:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
:root{--red:#d90429;--red-dark:#a1031f;--ink:#fff;--ink-dim:#d1d5db;--bg:#0a0a0a}
body.theme-dark{min-height:100%;background:radial-gradient(1200px 800px at 80% -10%, #2a0008 0%, #0a0a0a 45%, #000 100%);color:var(--ink)}
a{color:inherit;text-decoration:none}
.container{max-width:1100px;margin:0 auto;padding:0 1rem}
.site-header{position:sticky;top:0;background:rgba(0,0,0,.88);backdrop-filter:saturate(140%) blur(4px);border-bottom:4px solid var(--red);z-index:20}
.header-inner{display:flex;align-items:center;gap:.6rem;min-height:64px}
.logo{font-weight:800;letter-spacing:.2px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.btn{display:inline-block;padding:.6rem 1rem;border-radius:.75rem;border:2px solid transparent;font-weight:700;cursor:pointer}
.btn-primary{background:var(--red);border-color:var(--red);color:#fff}
.btn-outline{background:transparent;border-color:var(--red);color:#fff}
.btn-ghost{background:transparent;border-color:transparent;color:#fff;opacity:.9}
.btn-lg{padding:.85rem 1.2rem}

@keyframes pulseBlink{0%,100%{filter:none;transform:translateY(0)}50%{filter:brightness(1.1);transform:translateY(-1px)}}
.call-inline{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;margin-left:.6rem;margin-right:1.1rem;background:#d90429;border:3px solid #a1031f;color:#fff;border-radius:9999px;box-shadow:0 10px 24px rgba(217,4,41,.35);animation:pulseBlink 1.6s infinite}
.call-inline .phone-emoji{font-size:18px;line-height:1}

.mega-menu-btn{display:inline-flex;align-items:center;justify-content:center;width:46px;height:42px;margin-left:.25rem;border-radius:9999px;border:3px solid var(--red-dark);background:var(--red);color:#fff}
.mega-menu-btn .bars{display:flex;flex-direction:column;gap:4px}
.mega-menu-btn .bars i{display:block;width:18px;height:3px;background:#fff;border-radius:2px}

.header-panel{position:absolute;top:64px;right:12px;width:min(340px,90vw);background:rgba(0,0,0,.96);border:1px solid rgba(255,255,255,.12);border-radius:.9rem;padding:.8rem;display:none;z-index:35;box-shadow:0 12px 24px rgba(0,0,0,.5)}
.header-panel.open{display:block}
.header-panel .panel-link{display:block;color:#fff;padding:.7rem .6rem;border-bottom:1px solid rgba(255,255,255,.08)}
.header-panel .panel-link:last-child{border-bottom:0}

.hero{padding:3.2rem 0;background:linear-gradient(180deg,rgba(217,4,41,.18) 0,rgba(0,0,0,0) 100%)}
.hero h1{font-size:2rem;margin:0 0 .5rem 0;color:#fff}
.hero .subtitle{color:var(--ink-dim);max-width:720px}

.section{padding:2.2rem 0}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-top:1rem}
.card{display:block;padding:1rem;border:2px solid rgba(255,255,255,.06);border-radius:.9rem;background:rgba(255,255,255,.03);transition:.15s; color:#fff}
.card:hover{border-color:var(--red);transform:translateY(-2px)}
.prose p,.prose ul,.prose details{line-height:1.7;color:#e5e7eb}
.prose h1,.prose h2,.prose h3{color:#fff}
.prose details{background:rgba(0,0,0,.4);border:1px solid rgba(255,255,255,.08);border-radius:.5rem;padding:.5rem 1rem;margin:.6rem 0}

.site-footer{background:rgba(0,0,0,.95);color:#fff;padding:2rem 0;border-top:4px solid var(--red)}
.footer-grid{display:grid;grid-template-columns:2fr 1fr;gap:1rem}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:1rem;margin-top:1rem;text-align:center;color:#ccc}

.form .hint{color:#d1d5db; opacity:.85; margin:.4rem 0 0}

.qb{background:rgba(255,255,255,.03);border:2px solid rgba(255,255,255,.06);padding:1rem;border-radius:.9rem}
.qb-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem 1rem}
.qb-item .num{display:inline-block;min-width:1.6rem;text-align:center;border-radius:999px;background:var(--red);color:#fff;font-weight:800;margin-right:.4rem}
.qb-item input,.qb-item select,.qb-item textarea{background:#fff;color:#111;border:2px solid var(--red);padding:.6rem;border-radius:.6rem}
.qb-item textarea{grid-column:1 / -1;min-height:110px}
.qb-actions{display:flex;gap:.6rem;margin-top:.8rem;flex-wrap:wrap}
@media (max-width:760px){.qb-grid{grid-template-columns:1fr}}
