/* ============================================================
   GILLY DIGITAL — Service landing pages (Atlanta, GA)
   Dark theme · Gold accents · Lightweight (no WebGL/GSAP)
   Shared across the 5 service pages.
   ============================================================ */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}

:root{
  --bg:#0A0A0B;
  --bg-2:#111113;
  --surface:#18181B;
  --surface-2:#1E1E22;
  --text:#F4F4F5;
  --text-dim:#A1A1AA;
  --gold:#FFD700;
  --gold-dim:#D4A812;
  --gold-glow:rgba(245,197,24,.15);
  --font-body:'Inter',system-ui,-apple-system,sans-serif;
  --font-display:'Space Grotesk','Inter',sans-serif;
}

html{scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--gold-dim) var(--bg);}
body{
  font-family:var(--font-body);
  background:var(--bg);
  color:var(--text);
  -webkit-font-smoothing:antialiased;
  line-height:1.6;
}

a{color:var(--gold);text-decoration:none;}

/* ---- Navigation ---- */
.site-nav{
  position:sticky;top:0;z-index:100;
  background:rgba(10,10,11,.92);
  backdrop-filter:blur(20px);
  border-bottom:1px solid rgba(245,197,24,.08);
  padding:16px 40px;
  display:flex;align-items:center;justify-content:space-between;
  gap:16px;
}
.nav-logo{display:flex;align-items:center;gap:10px;color:var(--text);}
.nav-logo img{height:30px;width:auto;display:block;}
.nav-brand{font-family:var(--font-display);font-weight:700;font-size:18px;letter-spacing:-.01em;}
.nav-links{display:flex;gap:24px;list-style:none;align-items:center;flex-wrap:wrap;}
.nav-links a{
  color:var(--text-dim);font-size:12.5px;font-weight:500;
  letter-spacing:.06em;text-transform:uppercase;transition:color .3s;
}
.nav-links a:hover{color:var(--gold);}
.nav-links .nav-cta{
  background:var(--gold);color:var(--bg);
  padding:9px 20px;border-radius:60px;font-weight:600;
}
.nav-links .nav-cta:hover{background:#FFE44D;color:var(--bg);}
.nav-toggle{display:none;width:40px;height:40px;background:transparent;border:0;cursor:pointer;position:relative;}
.nav-toggle span,.nav-toggle span::before,.nav-toggle span::after{
  content:'';position:absolute;left:8px;width:24px;height:2px;background:var(--text);transition:transform .3s,top .3s;
}
.nav-toggle span{top:19px;}
.nav-toggle span::before{top:-7px;}
.nav-toggle span::after{top:7px;}
.nav-toggle[aria-expanded="true"] span{background:transparent;}
.nav-toggle[aria-expanded="true"] span::before{top:0;transform:rotate(45deg);}
.nav-toggle[aria-expanded="true"] span::after{top:0;transform:rotate(-45deg);}

/* ---- Breadcrumb ---- */
.breadcrumb{
  max-width:1100px;margin:0 auto;padding:26px 32px 0;
  font-size:12px;letter-spacing:.04em;color:var(--text-dim);
}
.breadcrumb a{color:var(--gold);}
.breadcrumb span{opacity:.6;}

/* ---- Hero ---- */
.hero{
  padding:90px 32px 70px;
  max-width:1100px;margin:0 auto;
}
.hero .eyebrow{
  font-size:11px;font-weight:600;letter-spacing:.3em;text-transform:uppercase;
  color:var(--gold);margin-bottom:20px;
}
.hero h1{
  font-family:var(--font-display);
  font-size:clamp(36px,5.5vw,64px);font-weight:700;
  line-height:1.05;letter-spacing:-.02em;
  max-width:820px;
}
.hero h1 .gold{color:var(--gold);}
.hero .lead{
  font-size:clamp(16px,1.8vw,19px);color:var(--text-dim);font-weight:300;
  margin-top:24px;max-width:640px;line-height:1.7;
}
.hero-cta{display:flex;gap:14px;margin-top:40px;flex-wrap:wrap;}
.btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:14px 30px;border-radius:60px;
  font-size:14px;font-weight:600;letter-spacing:.02em;
  transition:all .35s;
}
.btn-primary{background:var(--gold);color:var(--bg);}
.btn-primary:hover{background:#FFE44D;transform:translateY(-2px);box-shadow:0 8px 30px rgba(245,197,24,.3);}
.btn-outline{background:transparent;color:var(--text);border:1px solid rgba(255,255,255,.15);}
.btn-outline:hover{border-color:var(--gold);color:var(--gold);transform:translateY(-2px);}

/* ---- Sections ---- */
section.content-block{max-width:1100px;margin:0 auto;padding:60px 32px;}
.section-label{
  font-size:11px;font-weight:600;letter-spacing:.3em;text-transform:uppercase;
  color:var(--gold);margin-bottom:16px;
}
h2{
  font-family:var(--font-display);font-weight:700;
  font-size:clamp(26px,3.6vw,40px);line-height:1.12;letter-spacing:-.02em;
  margin-bottom:20px;
}
p{color:var(--text-dim);font-weight:300;}
.content-block p{max-width:720px;margin-bottom:16px;}

/* ---- What's included (checklist) ---- */
.checks{list-style:none;margin-top:10px;display:grid;grid-template-columns:1fr 1fr;gap:14px 28px;max-width:860px;}
.checks li{
  position:relative;padding-left:30px;
  color:var(--text);font-weight:300;font-size:15.5px;line-height:1.5;
}
.checks li::before{
  content:'✓';position:absolute;left:0;top:0;
  color:var(--gold);font-weight:700;font-size:17px;
}
@media(max-width:640px){.checks{grid-template-columns:1fr;}}

/* ---- Why Atlanta / proof ---- */
.panel{
  background:var(--bg-2);
  border-top:1px solid rgba(255,255,255,.05);
  border-bottom:1px solid rgba(255,255,255,.05);
}
.proof-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:28px;}
.proof-card{background:var(--surface);border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:26px;}
.proof-card h3{font-family:var(--font-display);font-size:17px;font-weight:600;margin-bottom:8px;}
.proof-card p{font-size:13.5px;line-height:1.6;margin:0;}
@media(max-width:820px){.proof-grid{grid-template-columns:1fr;}}

/* ---- FAQ ---- */
.faq-list{max-width:760px;display:flex;flex-direction:column;gap:12px;margin-top:28px;}
details{
  background:var(--surface);border:1px solid rgba(255,255,255,.06);
  border-radius:14px;padding:0 22px;
}
summary{
  cursor:pointer;list-style:none;
  font-family:var(--font-display);font-size:16px;font-weight:600;
  padding:18px 0;display:flex;justify-content:space-between;align-items:center;
}
summary::-webkit-details-marker{display:none;}
summary::after{content:'+';color:var(--gold);font-size:20px;transition:transform .3s;}
details[open] summary::after{transform:rotate(45deg);}
details p{padding:0 0 18px;font-size:14.5px;margin:0;}

/* ---- CTA / contact ---- */
.cta{max-width:1100px;margin:0 auto;padding:70px 32px 90px;}
.cta-box{
  background:linear-gradient(150deg,var(--surface),var(--surface-2));
  border:1px solid rgba(245,197,24,.15);
  border-radius:24px;padding:48px 44px;
  display:grid;grid-template-columns:1.3fr 1fr;gap:40px;align-items:center;
}
.cta-box h2{margin-bottom:12px;}
.cta-box p{margin-bottom:20px;}
.contact-links{display:flex;flex-direction:column;gap:12px;}
.contact-link{
  display:inline-flex;align-items:center;gap:10px;
  padding:13px 22px;border-radius:60px;
  background:var(--surface-2);border:1px solid rgba(255,255,255,.08);
  color:var(--text);font-size:13.5px;font-weight:500;transition:all .3s;
}
.contact-link:hover{border-color:var(--gold);background:var(--gold-glow);color:var(--gold);transform:translateY(-2px);}
.contact-link svg{width:16px;height:16px;flex-shrink:0;}
@media(max-width:820px){.cta-box{grid-template-columns:1fr;padding:36px 26px;}}

/* ---- Footer ---- */
footer{
  padding:34px 40px;
  border-top:1px solid rgba(255,255,255,.06);
  display:flex;justify-content:space-between;align-items:center;
  font-size:12.5px;color:var(--text-dim);gap:20px;flex-wrap:wrap;
}
.footer-links{display:flex;gap:18px;flex-wrap:wrap;}
.footer-links a{color:var(--text-dim);transition:color .3s;}
.footer-links a:hover{color:var(--gold);}

/* ---- Responsive ---- */
@media(max-width:820px){
  .site-nav{padding:14px 20px;}
  .nav-links{
    position:fixed;top:0;right:0;bottom:0;width:min(320px,82vw);
    background:var(--bg-2);flex-direction:column;align-items:flex-start;
    padding:80px 28px 40px;transform:translateX(100%);transition:transform .4s;
    gap:8px;
  }
  .nav-links.open{transform:translateX(0);}
  .nav-links li{width:100%;}
  .nav-links a{display:block;padding:14px 8px;font-size:14px;}
  .nav-links .nav-cta{margin-top:14px;text-align:center;}
  .nav-toggle{display:block;}
  .breadcrumb{padding:20px 20px 0;}
  .hero{padding:60px 20px 50px;}
  section.content-block,.cta{padding-left:20px;padding-right:20px;}
  footer{padding:26px 20px;flex-direction:column;text-align:center;}
  .footer-links{justify-content:center;}
}
