:root{
  --bg:#0b0f16; --panel:#111725; --panel2:#161d2e; --line:#24324a;
  --ink:#f3f7ff; --muted:#9fb3c8; --lime:#EEAF2B; --lime2:#d99a1f; --gold:#f59e0b; --red:#ff3b30;
  --radius:14px; --radius-lg:22px; --maxw:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth; -webkit-text-size-adjust:100%; text-size-adjust:100%; scroll-padding-top:84px}
body{margin:0; font-family:"Archivo",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--ink); background:var(--bg); line-height:1.6; -webkit-font-smoothing:antialiased; overflow-x:hidden}
h1,h2,h3{font-family:"Anton","Archivo",sans-serif; font-weight:400; text-transform:uppercase; letter-spacing:.5px; line-height:.98; margin:0 0 .4em}
a{color:inherit}
img{max-width:100%; display:block}
/* Skip link (visible on keyboard focus) */
.skip-link{position:absolute; left:-9999px; top:0; z-index:200; background:var(--lime); color:#061015;
  padding:.7rem 1.1rem; font-weight:800; border-radius:0 0 8px 0; text-decoration:none}
.skip-link:focus{left:0}
/* Global keyboard focus indicator */
:focus-visible{outline:3px solid var(--lime); outline-offset:2px; border-radius:4px}
.container{width:100%; max-width:var(--maxw); margin:0 auto; padding:0 22px}
.center{text-align:center}
.muted{color:var(--muted)}
.lime{color:var(--lime)}

.btn{display:inline-flex; align-items:center; justify-content:center; gap:.5rem; padding:.9rem 1.5rem;
  border-radius:10px; font-weight:800; text-decoration:none; border:2px solid transparent; cursor:pointer;
  transition:.15s ease; font-size:1rem; white-space:nowrap; text-transform:uppercase; letter-spacing:.5px}
.btn-lg{padding:1.15rem 2rem; font-size:1.08rem}
.btn-block{width:100%}
.btn-primary{background:var(--lime); color:#061015; box-shadow:0 0 0 rgba(238,175,43,.6)}
.btn-primary:hover{background:var(--lime2); transform:translateY(-2px); box-shadow:0 12px 30px rgba(238,175,43,.35)}
.btn-outline{background:transparent; color:var(--ink); border-color:var(--line)}
.btn-outline:hover{border-color:var(--lime); color:var(--lime)}

.topbar{background:var(--lime); color:#061015; text-align:center; font-weight:800; font-size:.9rem;
  padding:.5rem 12px; text-transform:uppercase; letter-spacing:.5px}
.topbar a{color:#061015; text-decoration:underline}

.site-header{position:sticky; top:0; z-index:50; background:rgba(11,15,22,.85); backdrop-filter:blur(10px); border-bottom:1px solid var(--line)}
.nav{display:flex; align-items:center; gap:20px; padding:14px 22px}
.brand{display:flex; align-items:center; gap:8px; text-decoration:none; font-family:"Anton",sans-serif; font-size:1.35rem; letter-spacing:1px}
.brand .mk{background:var(--lime); color:#061015; padding:0 8px; border-radius:6px}
.nav-links{display:flex; gap:22px; margin-left:12px; flex:1}
.nav-links a{color:var(--muted); text-decoration:none; font-weight:700; font-size:.9rem; text-transform:uppercase; letter-spacing:.5px}
.nav-links a:hover{color:var(--lime)}

/* Hero */
.hero{position:relative; overflow:hidden; border-bottom:1px solid var(--line)}
.hero::before{content:""; position:absolute; inset:0; background:
  linear-gradient(135deg, rgba(11,15,22,.88), rgba(14,26,45,.80) 40%, rgba(11,39,64,.78)),
  url("/assets/weekly/hero.jpg") center/cover no-repeat; z-index:0}
.hero-inner{position:relative; z-index:1; padding:70px 0 60px}
.hero-grid{display:grid; grid-template-columns:1.15fr .85fr; gap:44px; align-items:center}
.tag{display:inline-flex; align-items:center; gap:8px; background:rgba(238,175,43,.14); color:var(--lime);
  border:1px solid rgba(238,175,43,.4); padding:.4rem .9rem; border-radius:999px; font-weight:800; font-size:.8rem;
  text-transform:uppercase; letter-spacing:.6px; margin-bottom:18px}
.hero h1{font-size:clamp(2.8rem,7vw,5.6rem)}
.hero h1 .hl{color:var(--lime)}
.hero .lede{font-size:1.18rem; color:#d4d4d8; max-width:46ch; margin-top:8px}
.hero-cta{display:flex; gap:14px; flex-wrap:wrap; margin-top:26px}
.hero-mini{display:flex; gap:22px; flex-wrap:wrap; margin-top:22px; color:#d4d4d8; font-weight:700; font-size:.92rem}
.hero-mini b{color:var(--lime)}

/* Hero form card */
.hero-form{background:var(--panel); border:1px solid var(--line); border-radius:var(--radius-lg); padding:26px;
  box-shadow:0 30px 60px rgba(0,0,0,.5)}
.hero-form h3{font-size:1.5rem}
.hero-form .sub{color:var(--muted); margin:-6px 0 16px; font-size:.92rem; text-transform:none; font-family:"Archivo",sans-serif; font-weight:500}
.qf{display:grid; gap:12px}
.qf input,.qf select,.qf textarea{background:#0b0f1b; border:1px solid var(--line); color:var(--ink);
  border-radius:10px; padding:.9rem 1rem; font-size:1rem; width:100%; font-family:inherit}
.qf input:focus,.qf select:focus,.qf textarea:focus{outline:2px solid var(--lime); border-color:var(--lime)}
.qf .row{display:grid; grid-template-columns:1fr 1fr; gap:12px}
.qf .check{display:flex; gap:8px; align-items:flex-start; font-size:.78rem; color:var(--muted); font-weight:500}
.qf .check input{width:auto; margin-top:3px}
.fineprint{font-size:.74rem; color:var(--muted); margin:2px 0 0}
.hp{position:absolute; left:-9999px; width:1px; height:1px; opacity:0}
.hidden{display:none !important}

/* Full-screen essentials-first hero */
.hero-inner.hero-lead{padding:44px 0 54px; min-height:calc(100dvh - 96px); display:flex; align-items:center}
.hero-grid.lead{grid-template-columns:.9fr 1.1fr; gap:40px}
.hero-pitch h1{font-size:clamp(2.4rem,6vw,4.6rem)}
.hero-pitch .lede{max-width:40ch}
.hero-points{list-style:none; padding:0; margin:22px 0 0; display:grid; gap:12px; font-weight:800; font-size:1.05rem}
.hero-points li{display:flex; gap:10px; align-items:center}
.hero-points li::before{content:"✓"; color:#061015; background:var(--lime); width:24px; height:24px; border-radius:6px;
  display:inline-flex; align-items:center; justify-content:center; font-weight:900; flex:0 0 auto}
.hero-points .hl{color:var(--lime)}

/* Big hero lead form */
.hero-form.big{padding:28px}
.hero-form.big h3{font-size:1.85rem}
.hero-form label{display:grid; gap:6px; font-size:.74rem; color:var(--muted); font-weight:800; text-transform:uppercase; letter-spacing:.5px}
.hero-form .row{display:grid; grid-template-columns:1fr 1fr; gap:12px}
.hero-form input,.hero-form select,.hero-form textarea{background:#0b0f1b; border:1px solid var(--line); color:var(--ink);
  border-radius:10px; padding:.95rem 1rem; font-size:1rem; width:100%; font-family:"Archivo",sans-serif}
.hero-form input:focus,.hero-form select:focus,.hero-form textarea:focus{outline:2px solid var(--lime); border-color:var(--lime)}
.hero-form .check{display:flex; gap:8px; align-items:flex-start; font-size:.76rem; color:var(--muted); font-weight:500; text-transform:none; letter-spacing:0}
.hero-form .check input{width:auto; margin-top:3px}

/* Expandable "more details" dropdown */
.more{border:1px solid var(--line); border-radius:12px; background:#0b0f1b; overflow:hidden}
.more>summary{cursor:pointer; list-style:none; padding:.85rem 1rem; font-weight:800; text-transform:uppercase; letter-spacing:.5px;
  font-size:.82rem; color:var(--lime); display:flex; align-items:center; justify-content:space-between}
.more>summary::-webkit-details-marker{display:none}
.more>summary::after{content:"+"; font-size:1.3rem; line-height:1; color:var(--lime)}
.more[open]>summary::after{content:"–"}
.more .more-body{padding:0 14px 14px; display:grid; gap:12px}
.filedrop{display:grid; gap:6px}
.filedrop input[type=file]{background:#0b0f16; border:1px dashed var(--line); color:var(--muted); padding:.8rem;
  border-radius:10px; font-size:.85rem}

/* Stat band */
.band{background:var(--lime); color:#061015}
.band .container{display:grid; grid-template-columns:repeat(4,1fr); gap:10px; padding:26px 22px}
.band .s{ text-align:center; border-right:2px solid rgba(0,0,0,.15)}
.band .s:last-child{border-right:0}
.band b{display:block; font-family:"Anton",sans-serif; font-size:2.2rem; line-height:1}
.band span{font-weight:800; text-transform:uppercase; font-size:.8rem; letter-spacing:.5px}

/* Sections */
.section{padding:74px 0}
.section.alt{background:var(--panel)}
.eyebrow{color:var(--lime); font-weight:800; letter-spacing:.16em; text-transform:uppercase; font-size:.8rem; text-align:center}
.section-title{font-size:clamp(2rem,4.5vw,3.4rem); text-align:center; margin-top:8px}
.section-title.left{text-align:left}
.section-sub{text-align:center; color:var(--muted); max-width:60ch; margin:12px auto 40px; font-size:1.05rem; font-family:"Archivo",sans-serif}

/* Beat-any-offer */
.beat{display:grid; grid-template-columns:1.1fr .9fr; gap:36px; align-items:center}
.beat h2{font-size:clamp(2rem,4vw,3rem)}
.beat p{color:var(--muted); font-family:"Archivo",sans-serif}
.beat ul{list-style:none; padding:0; margin:18px 0 0; display:grid; gap:12px; font-weight:700}
.beat li{display:flex; gap:10px; align-items:center}
.beat li::before{content:"✓"; color:#061015; background:var(--lime); width:24px; height:24px; border-radius:6px;
  display:inline-flex; align-items:center; justify-content:center; font-weight:900; flex:0 0 auto}
.beat-card{background:var(--panel2); border:1px solid var(--line); border-radius:var(--radius-lg); padding:28px}
.beat-card .big{font-family:"Anton",sans-serif; font-size:3rem; color:var(--lime); line-height:1}
.beat-card .stars{color:var(--lime); letter-spacing:3px; font-size:1.2rem}

/* Marquee */
.marquee{position:relative; overflow:hidden; border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:#0b0f1b; padding:16px 0}
.marquee-track{display:flex; gap:16px; width:max-content; animation:scroll 40s linear infinite}
.marquee.paused .marquee-track{animation-play-state:paused}
.marquee img{height:180px; width:auto; border-radius:12px; border:1px solid var(--line); object-fit:cover}
.marquee-toggle{position:absolute; top:8px; right:10px; z-index:2; background:rgba(11,15,22,.85); color:var(--ink);
  border:1px solid var(--line); border-radius:8px; padding:.35rem .7rem; font-size:.75rem; font-weight:800;
  text-transform:uppercase; letter-spacing:.5px; cursor:pointer; font-family:"Archivo",sans-serif}
.marquee-toggle:hover{border-color:var(--lime); color:var(--lime)}
@keyframes scroll{from{transform:translateX(0)} to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){
  .marquee-track{animation:none}
  html{scroll-behavior:auto}
}

/* Steps */
.steps{display:grid; grid-template-columns:repeat(3,1fr); gap:20px}
.step{background:var(--panel); border:1px solid var(--line); border-radius:var(--radius); padding:28px; position:relative}
.step .n{font-family:"Anton",sans-serif; font-size:3.4rem; color:var(--lime); line-height:.9}
.step h3{font-size:1.35rem; margin-top:6px}
.step p{color:var(--muted); margin:0; font-family:"Archivo",sans-serif}

/* Reviews */
.reviews{display:grid; grid-template-columns:repeat(3,1fr); gap:20px}
.reviews blockquote{margin:0; background:var(--panel); border:1px solid var(--line); border-left:4px solid var(--lime); border-radius:12px; padding:24px}
.reviews .stars{color:var(--lime); letter-spacing:2px; margin-bottom:10px}
.reviews p{margin:0 0 12px; font-family:"Archivo",sans-serif}
.reviews footer{color:var(--muted); font-weight:800; text-transform:uppercase; font-size:.82rem; letter-spacing:.5px}

/* Big CTA form */
.cta{background:linear-gradient(180deg,var(--panel),#0b0f16); border-top:1px solid var(--line)}
.cta-close{max-width:820px; text-align:center}
.cta-close h2{font-size:clamp(2rem,4.5vw,3.4rem)}
.cta-close p{color:var(--muted); font-family:"Archivo",sans-serif; margin:12px auto 24px; max-width:56ch}
.cta-close .cta-help{margin-left:auto; margin-right:auto}
.cta-grid{display:grid; grid-template-columns:1fr 1.05fr; gap:44px; align-items:start}
.cta-intro h2{font-size:clamp(2.2rem,4.5vw,3.6rem)}
.cta-intro p{color:var(--muted); font-family:"Archivo",sans-serif}
.cta-list{list-style:none; padding:0; margin:20px 0; display:grid; gap:12px; font-weight:700}
.cta-list li{display:flex; gap:10px}
.cta-help{color:var(--muted); font-family:"Archivo",sans-serif}
.cta-help a{color:var(--lime); font-weight:800}
.form-card{background:var(--panel); border:1px solid var(--line); border-radius:var(--radius-lg); padding:30px; box-shadow:0 30px 60px rgba(0,0,0,.5)}
.form-card h3{font-size:1.5rem}
.form-card .sub{color:var(--muted); margin:-6px 0 16px; font-family:"Archivo",sans-serif; font-weight:500; text-transform:none}
.lead-form{display:grid; gap:14px}
.lead-form label{display:grid; gap:6px; font-size:.78rem; color:var(--muted); font-weight:800; text-transform:uppercase; letter-spacing:.5px}
.lead-form .row{display:grid; grid-template-columns:1fr 1fr; gap:14px}
.lead-form input,.lead-form select,.lead-form textarea{background:#0b0f1b; border:1px solid var(--line); color:var(--ink);
  border-radius:10px; padding:.9rem 1rem; font-size:1rem; width:100%; font-family:"Archivo",sans-serif}
.lead-form input:focus,.lead-form select:focus,.lead-form textarea:focus{outline:2px solid var(--lime); border-color:var(--lime)}
.lead-form .check{display:flex; gap:8px; align-items:flex-start; flex-direction:row; font-size:.78rem; color:var(--muted); font-weight:500; text-transform:none; letter-spacing:0}
.lead-form .check input{width:auto; margin-top:3px}
.form-success{text-align:center; padding:16px 8px}
.form-success .ok{width:64px; height:64px; border-radius:50%; background:var(--lime); color:#061015; font-size:2rem; font-weight:900;
  display:flex; align-items:center; justify-content:center; margin:0 auto 14px}
.form-success a{color:var(--lime); font-weight:800}

/* FAQ */
#faq details{border:1px solid var(--line); border-radius:12px; padding:2px 20px; margin-bottom:12px; background:var(--panel)}
#faq summary{cursor:pointer; font-weight:800; padding:16px 0; list-style:none; text-transform:uppercase; letter-spacing:.5px; font-size:.98rem}
#faq summary::-webkit-details-marker{display:none}
#faq summary::after{content:"+"; float:right; color:var(--lime); font-size:1.4rem; line-height:1}
#faq details[open] summary::after{content:"–"}
#faq details p{color:var(--muted); margin:0 0 16px; font-family:"Archivo",sans-serif}

/* Footer */
.site-footer{background:#0b0f1b; border-top:1px solid var(--line); padding:52px 0 26px}
.footer-grid{display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr auto; gap:32px}
.footer-brand{font-family:"Anton",sans-serif; font-size:1.6rem; letter-spacing:1px; margin-bottom:10px}
.site-footer h4{color:#fff; font-size:.95rem; text-transform:uppercase; letter-spacing:.5px}
.site-footer a{color:var(--muted); text-decoration:none} .site-footer a:hover{color:var(--lime)}
.socials{display:flex; gap:14px; margin-top:12px; flex-wrap:wrap}
.socials a{display:inline-flex; align-items:center; justify-content:center; width:40px; height:40px; border-radius:50%;
  border:1px solid var(--line); color:var(--muted); transition:color .2s, border-color .2s, transform .2s, background .2s}
.socials a:hover{color:#061015; background:var(--lime); border-color:var(--lime); transform:translateY(-2px)}
.socials svg{display:block}
.footer-bottom{border-top:1px solid var(--line); margin-top:30px; padding-top:20px; display:flex; justify-content:space-between;
  gap:16px; flex-wrap:wrap; color:#9aa3b2; font-size:.82rem; font-family:"Archivo",sans-serif}

/* Mobile CTA */
.mobile-cta{position:fixed; bottom:0; left:0; right:0; z-index:60; display:none; gap:10px; padding:10px 14px;
  padding-bottom:calc(10px + env(safe-area-inset-bottom)); background:rgba(11,15,22,.97);
  backdrop-filter:blur(8px); border-top:1px solid var(--line)}
.mobile-cta .btn{flex:1; padding:.85rem 1rem; font-size:.95rem}

@media (max-width:900px){
  .hero-grid,.hero-grid.lead,.beat,.cta-grid{grid-template-columns:1fr}
  .hero-inner.hero-lead{min-height:0; padding:28px 0 36px}
  .hero-form.big{order:-1}
  .steps,.reviews{grid-template-columns:1fr}
  .band .container{grid-template-columns:1fr 1fr; gap:18px}
  .band .s:nth-child(2){border-right:0}
  .nav-links,.header-phone{display:none}
  .footer-grid{grid-template-columns:1fr 1fr}
  .footer-follow{grid-column:1 / -1}
  .section{padding:52px 0}
}
@media (max-width:560px){
  .topbar{font-size:.72rem; letter-spacing:.3px; padding:.5rem 10px; line-height:1.35}
  .container{padding:0 16px}
  .qf .row,.lead-form .row,.hero-form .row{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr; gap:22px}
  .footer-bottom{flex-direction:column}
  .site-header .btn-primary{display:none}
  .nav{justify-content:space-between; padding:12px 16px}
  .brand{font-size:1.15rem}
  .hero-pitch h1{font-size:clamp(2.1rem,10vw,2.8rem)}
  .hero-points{font-size:.98rem}
  .hero-form.big{padding:20px}
  .hero-form.big h3{font-size:1.5rem}
  .band b{font-size:1.7rem}
  .mobile-cta{display:flex} body{padding-bottom:76px}
}

/* Cookie consent banner */
.cookie-banner{position:fixed; left:0; right:0; bottom:0; z-index:70; display:none;
  background:rgba(11,15,22,.97); backdrop-filter:blur(10px); border-top:1px solid var(--line);
  padding:16px 0; padding-bottom:calc(16px + env(safe-area-inset-bottom)); box-shadow:0 -12px 30px rgba(0,0,0,.4)}
.cookie-banner.show{display:block}
.cookie-inner{display:flex; align-items:center; gap:18px; flex-wrap:wrap; justify-content:space-between}
.cookie-text{flex:1; min-width:260px; color:var(--muted); font-size:.9rem; font-family:"Archivo",sans-serif; line-height:1.55; margin:0}
.cookie-text a{color:var(--lime); font-weight:800; text-decoration:none}
.cookie-text a:hover{text-decoration:underline}
.cookie-actions{display:flex; gap:10px; flex-wrap:wrap}
.cookie-actions .btn{padding:.7rem 1.2rem; font-size:.85rem}
@media (max-width:560px){
  .cookie-inner{flex-direction:column; align-items:stretch; gap:12px}
  .cookie-actions .btn{flex:1}
  .cookie-banner{padding-bottom:calc(16px + 76px + env(safe-area-inset-bottom))}
}
