:root{
  --bg:#0a0a0a;
  --bg-alt:#111;
  --bg-card:#141414;
  --line:#1e1e1e;
  --line2:#2a2a2a;
  --red:#c8372e;
  --gold:#c8a800;
  --pink:#b03070;
  --blue:#2e6ba8;
  --brown:#a06030;
  --text:#fff;
  --muted:#999;
  --muted2:#666;
  --font-display:'Anton','Arial Black',Impact,sans-serif;
  --font-body:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{background:var(--bg);color:var(--text);font-family:var(--font-body);line-height:1.6;-webkit-font-smoothing:antialiased;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
.wrap{max-width:860px;margin:0 auto;padding:0 20px;}

/* ---------- HEADER ---------- */
.site-header{background:rgba(10,10,10,0.97);border-bottom:1px solid var(--line);}
.site-header-inner{max-width:2400px;margin:0 auto;padding:18px 24px 10px;display:flex;flex-direction:column;align-items:center;text-align:center;position:relative;}
.site-logo{display:block;margin-bottom:6px;}
.site-logo img{height:clamp(90px, 11vw, 170px);width:auto;display:block;margin:0 auto;}
.site-nav > ul{list-style:none;display:flex;gap:clamp(20px, 2.4vw, 44px);margin:0;padding:10px 0 4px;flex-wrap:wrap;align-items:center;justify-content:center;}
.site-nav a{font-size:clamp(15px, 1.633vw, 26px);font-weight:400;letter-spacing:normal;text-transform:none;color:#e5e5e5;font-family:'Montserrat',var(--font-body);transition:color .15s;}
.site-nav a:hover, .site-nav a[aria-current="page"]{color:var(--red);}
.has-dropdown{position:relative;}
.dropdown{display:none;position:absolute;top:100%;left:0;background:#161616;border:1px solid var(--line2);border-radius:6px;padding:8px 0;min-width:190px;list-style:none;z-index:50;}
.has-dropdown.open .dropdown{display:block;}
.dropdown li a{display:block;padding:8px 16px;font-size:12px;}
.nav-toggle{display:none;background:none;border:none;flex-direction:column;gap:5px;cursor:pointer;position:absolute;right:24px;top:50%;transform:translateY(-50%);z-index:60;}
.nav-toggle span{width:24px;height:2px;background:#fff;}
@media (max-width:900px){
  .site-logo img{height:80px;}
  .site-nav{width:100%;}
  .site-nav ul{display:none;}
  .site-nav.nav-open ul{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:0;
    width:100%;
    padding:10px 0;
  }
  .site-nav.nav-open ul li{width:100%;text-align:center;}
  .site-nav.nav-open ul li a{display:block;padding:12px 0;width:100%;}
  .site-nav.nav-open .has-dropdown{position:static;}
  .site-nav.nav-open .dropdown{
    position:static;
    display:none;
    border:none;
    background:#0d0d0d;
    border-radius:0;
    padding:0;
    width:100%;
  }
  .site-nav.nav-open .has-dropdown.open .dropdown{display:block;}
  .nav-toggle{display:flex;}
}

/* ---------- FOOTER ---------- */
.site-footer{border-top:1px solid var(--line);background:var(--bg-alt);margin-top:48px;}
.footer-google{text-align:center;padding:20px;border-bottom:1px solid var(--line);font-weight:800;font-size:13px;letter-spacing:.05em;text-transform:uppercase;}
.footer-google a{color:#fff;}
.footer-google a:hover{color:var(--red);}
.footer-inner{max-width:1100px;margin:0 auto;padding:36px 24px;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:28px;text-align:center;}
.footer-col h4{font-size:12px;letter-spacing:.15em;text-transform:uppercase;color:var(--red);margin-bottom:12px;}
.footer-col a{display:block;color:var(--muted);font-size:14px;margin-bottom:8px;}
.footer-col a:hover{color:#fff;}
.footer-social{display:flex;gap:14px;justify-content:center;}
.footer-social a{width:40px;height:40px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;transition:transform .15s;}
.footer-social a:hover{transform:scale(1.08);}
.footer-social svg{width:22px;height:22px;}
.footer-bottom{text-align:center;padding:18px;color:var(--muted2);font-size:12px;border-top:1px solid var(--line);}

/* ---------- HERO ---------- */
.hero{position:relative;border-bottom:3px solid var(--red);padding:52px 20px 44px;text-align:center;background-size:cover;background-position:center 20%;}
.hero-eyebrow{font-size:11px;font-weight:800;letter-spacing:.35em;text-transform:uppercase;color:var(--red);margin-bottom:12px;}
.hero-title{font-family:var(--font-display);font-weight:900;text-transform:uppercase;font-size:clamp(28px,7vw,52px);line-height:1.0;letter-spacing:.02em;margin-bottom:16px;}
.hero-title span{color:var(--red);}
.hero-sub{font-size:15px;color:#aaa;line-height:1.7;max-width:560px;margin:0 auto 28px;}
.cta-primary{display:inline-block;background:var(--red);color:#fff;font-weight:800;font-size:15px;letter-spacing:.05em;text-transform:uppercase;padding:16px 40px;border-radius:4px;}

/* ---------- STATS BAR ---------- */
.stats-bar{background:var(--bg-card);border-bottom:1px solid var(--line);padding:20px;display:flex;flex-wrap:wrap;justify-content:center;}
.stat{text-align:center;padding:8px 28px;border-right:1px solid var(--line2);}
.stat:last-child{border-right:none;}
.stat-number{font-family:var(--font-display);font-size:26px;font-weight:900;color:var(--red);line-height:1;}
.stat-label{font-size:10px;color:var(--muted2);letter-spacing:.1em;text-transform:uppercase;margin-top:4px;}

/* ---------- SECTIONS ---------- */
.section{padding:40px 0;border-top:1px solid var(--line);}
.section-title{font-family:var(--font-display);font-size:clamp(18px,4vw,26px);font-weight:900;text-transform:uppercase;letter-spacing:.04em;margin-bottom:16px;}
.section-title span{color:var(--red);}
.body-text{font-size:14px;line-height:1.8;color:#bbb;margin-bottom:14px;}
.body-text strong{color:#fff;}

/* ---------- CARDS ---------- */
.card{background:var(--bg-card);border:1px solid var(--line);border-radius:6px;padding:18px;}
.card-red{border-left:4px solid var(--red);}
.card-gold{border-left:4px solid var(--gold);}
.card-pink{border-left:4px solid var(--pink);}
.card-blue{border-left:4px solid var(--blue);}
.card-brown{border-left:4px solid var(--brown);}

/* ---------- FAQ ---------- */
.faq-item{background:var(--bg-card);border:1px solid var(--line);border-radius:6px;padding:16px 18px;margin-bottom:8px;}
.faq-q{font-size:14px;font-weight:700;color:#fff;margin-bottom:6px;cursor:pointer;}
.faq-a{font-size:13px;color:var(--muted);line-height:1.7;}

/* ---------- BOTTOM CTA ---------- */
.bottom-cta{margin-top:40px;background:var(--bg-alt);border:1px solid var(--line);border-top:3px solid var(--red);border-radius:8px;padding:36px 24px;text-align:center;}
.bottom-cta-title{font-family:var(--font-display);font-size:clamp(18px,4vw,26px);font-weight:900;text-transform:uppercase;margin-bottom:10px;}
.bottom-cta-sub{font-size:14px;color:#888;margin-bottom:24px;line-height:1.6;}

/* Google Reviews section */
.reviews-header{text-align:center;max-width:700px;margin:0 auto 40px;padding:0 24px;}
.reviews-stars-row{margin-top:14px;}
.reviews-stars{color:var(--gold);font-size:22px;letter-spacing:3px;display:block;margin-bottom:8px;}
.reviews-score{font-size:15px;color:#ccc;}
.reviews-score strong{color:#fff;}
.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1200px;margin:0 auto;padding:0 24px;}
@media (max-width:900px){.reviews-grid{grid-template-columns:1fr;}}
.review-card{background:var(--bg-card);border:1px solid var(--line);border-radius:8px;padding:24px;display:flex;flex-direction:column;}
.review-stars{color:var(--gold);font-size:15px;letter-spacing:2px;margin-bottom:14px;}
.review-text{font-size:14px;color:#ccc;line-height:1.7;flex-grow:1;margin-bottom:18px;}
.review-author{display:flex;align-items:center;gap:12px;border-top:1px solid var(--line);padding-top:14px;font-size:13px;color:#999;}
.review-author strong{color:#fff;display:block;font-size:14px;}
.review-avatar{width:38px;height:38px;border-radius:50%;background:var(--red);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px;flex-shrink:0;}
.reviews-cta{text-align:center;margin-top:36px;}
.btn-outline{display:inline-block;border:1px solid var(--line2,#333);color:#fff;padding:14px 28px;border-radius:6px;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;transition:border-color .15s,background .15s;}
.btn-outline:hover{background:var(--bg-card);border-color:#555;}
