/* RedShield Security — styles.css */
/* Reset & tokens */
:root{
  --bg:#0b0f15; --bg-soft:#0f1622; --card:#121a27;
  --text:#e6edf3; --muted:#a0aec0; --accent:#ff4d4d; --line:#1f2a3a;
  --brand:#ff4d4d; --brand-2:#ff8686;
  --radius:16px; --shadow:0 10px 30px rgba(0,0,0,.35);
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0; font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--text); background:linear-gradient(180deg, #0b0f15 0%, #0d1420 100%);
}
img{max-width:100%; display:block}
a{color:inherit; text-decoration:none}
.container{width:min(1120px, 92%); margin-inline:auto}
h1,h2,h3{line-height:1.1; margin:0 0 .5rem}
h1{font-size:clamp(2rem, 2vw + 2rem, 3.25rem); font-weight:800}
h2{font-size:clamp(1.6rem, 1.2vw + 1.6rem, 2.2rem); font-weight:800}
h3{font-size:1.25rem; font-weight:700}
p{margin:.5rem 0 1rem}
.lede{color:var(--muted); max-width:60ch}
.accent{color:var(--accent)}
.muted{color:var(--muted)}
.btn{
  display:inline-flex; align-items:center; gap:.5rem; padding:.8rem 1rem; border-radius:999px;
  background:#1a2232; border:1px solid var(--line); box-shadow:var(--shadow); font-weight:600;
}
.btn.small{padding:.5rem .8rem; font-size:.9rem}
.btn.primary{background:var(--brand); border-color:#000; color:#111}
.btn.secondary{background:#1a2232; color:#fff}
.btn.ghost{background:transparent; border-color:var(--line)}
.btn:hover{transform:translateY(-1px)}
/* Header */
.site-header{position:sticky; top:0; z-index:50; backdrop-filter:saturate(140%) blur(8px); background:rgba(11,15,21,.65); border-bottom:1px solid var(--line)}
.header-inner{display:flex; align-items:center; justify-content:space-between; padding:.8rem 0}
.brand{display:flex; align-items:center; gap:.6rem; font-weight:800}
.brand.small span{font-weight:700}
.nav{display:flex; gap:1rem; align-items:center}
.nav a{color:var(--muted)}
.nav a:hover{color:var(--text)}
/* Hero */
.hero{padding:5rem 0 4rem; background:radial-gradient(1000px 400px at 70% -10%, rgba(255,77,77,.12), transparent 60%)}
.hero-inner{display:grid; grid-template-columns:1.1fr .9fr; gap:3rem; align-items:center}
.hero-copy p{color:var(--muted)}
.cta-row{display:flex; gap:1rem; margin:1rem 0 1.25rem}
.trust{display:flex; align-items:center; gap:.5rem; color:var(--muted)}
.trust .dot{width:8px; height:8px; background:#34d399; border-radius:999px; display:inline-block}
.hero-art .card{background:var(--card); border:1px solid var(--line); border-radius:var(--radius); padding:1rem}
.card-h{color:var(--muted); font-weight:600; margin-bottom:.25rem}
.score{display:flex; align-items:center; gap:.5rem}
.score-big{font-size:3rem; font-weight:800}
.score-pill{font-size:.75rem; border-radius:999px; padding:.2rem .5rem; border:1px solid var(--line)}
.score-pill.good{background:#0f2a1d; color:#34d399}
.meters{display:grid; gap:.5rem; margin-top:1rem}
.meters div{display:grid; gap:.25rem}
progress{width:100%}
/* Sections */
.section{padding:4rem 0}
.section.alt{background:linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0) 30%)}
.features{grid-template-columns:repeat(4,1fr); display:grid; gap:1rem; margin-top:1.5rem}
.feature{background:var(--card); border:1px solid var(--line); border-radius:var(--radius); padding:1rem; min-height:160px}
.feature .icon{font-size:1.4rem}
.two-col{display:grid; grid-template-columns:1fr 1fr; gap:2rem; align-items:center}
.steps{padding-left:1rem}
.steps li{margin:.5rem 0}
.vid .vid-frame{height:240px; background:conic-gradient(from 180deg at 50% 50%, #192436, #0f1622); border:1px solid var(--line); border-radius:var(--radius); position:relative; overflow:hidden}
.badge{position:absolute; top:10px; left:10px; background:#1a2232; border:1px solid var(--line); padding:.25rem .5rem; border-radius:6px; font-size:.8rem; color:var(--muted)}
.bars{position:absolute; inset:0; display:flex; align-items:flex-end; gap:6px; padding:14px}
.bars span{flex:1; height:10%; background:#23304a; border-radius:6px; animation:jump 1.4s ease-in-out infinite}
.bars span:nth-child(2){animation-delay:.2s} .bars span:nth-child(3){animation-delay:.4s} .bars span:nth-child(4){animation-delay:.6s}
@keyframes jump{50%{height:85%}}
/* Pricing */
.pricing{display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; margin-top:1.5rem}
.price-card{background:var(--card); border:1px solid var(--line); border-radius:var(--radius); padding:1rem}
.price-card .price{font-size:2rem; font-weight:800; margin:.5rem 0}
.price-card.highlight{outline:2px solid var(--brand); box-shadow:0 0 0 6px rgba(255,77,77,.15)}
.price-card ul{list-style:none; padding:0; margin:0 0 1rem}
.price-card li{margin:.25rem 0; color:var(--muted)}
/* FAQ */
.faq{display:grid; gap:.6rem; margin-top:1rem}
details{background:var(--card); border:1px solid var(--line); border-radius:12px; padding:.75rem 1rem}
summary{cursor:pointer; font-weight:600}
/* Contact */
.contact-card{display:grid; grid-template-columns:1fr 1fr; gap:2rem; background:var(--card); border:1px solid var(--line); border-radius:var(--radius); padding:1.5rem}
.form{display:grid; gap:.9rem}
.grid.two{display:grid; grid-template-columns:1fr 1fr; gap:.9rem}
label{display:grid; gap:.4rem; font-weight:600}
input,textarea{
  width:100%; padding:.85rem .9rem; border-radius:12px; background:#0d1420; border:1px solid var(--line); color:var(--text);
}
input:focus, textarea:focus{outline:2px solid #274060; border-color:#274060}
.form-actions{display:flex; align-items:center; gap:.8rem}
.form-status{font-size:.95rem; color:var(--muted)}
/* Footer */
.site-footer{border-top:1px solid var(--line); margin-top:3rem; padding:1.25rem 0}
.footer-inner{display:flex; align-items:center; justify-content:space-between}
.footer-nav{display:flex; gap:1rem}
/* Responsive */
@media (max-width: 980px){
  .hero-inner, .two-col, .contact-card{grid-template-columns:1fr}
  .features{grid-template-columns:repeat(2,1fr)}
  .pricing{grid-template-columns:1fr}
  .grid.two{grid-template-columns:1fr}
}
