/* seowarlocks.com | 29th site | Baranain, Navarra, Spain | SEO Agency
   FIRST pure black #0A0A10 + electric green #2FED7A dark-throughout palette!
   FIRST Orbitron+Rajdhani fonts! FIRST typographic hero+animated green orbs!
   FIRST minimal dark sticky+green glow border nav!
   FIRST 3x2 phase card grid process! FIRST split 2-col FAQ viewer!
   FIRST magazine-style testimonials! FIRST .swl-spellbook builder!
   FIRST Apprentice/Warlock/Archmage plans!
   FIRST warlock-branded services: serp-domination/site-performance/backlink-arsenal
   content-warfare/local-conquest/competitor-intelligence (ALL FIRST!)
   FIRST FB+TW+WA social! FIRST W-letterform favicon!
   FIRST Baranain, Navarra! EN/ES bilingual!
   Section order: Hero→Stats→Svc→Process(grid)→Cases→FAQ(split)→Testi(mag)→Price→CTA (FIRST!)
   Min 11px (0.69rem) enforced! swl- CSS | SWL JS */
@import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@400;500;600;700;800&family=Rajdhani:wght@300;400;500;600;700&display=swap');
:root {
  --swl-void:#0A0A10; --swl-surface:#121218; --swl-panel:#1C1C25;
  --swl-border:rgba(255,255,255,.07); --swl-border-g:rgba(47,237,122,.25);
  --swl-green:#2FED7A; --swl-green-l:#5FFF9A; --swl-green-d:#1DC860;
  --swl-green-bg:rgba(47,237,122,.08); --swl-green-bgd:rgba(47,237,122,.04);
  --swl-white:#FFFFFF; --swl-text:rgba(255,255,255,.75);
  --swl-muted:rgba(255,255,255,.35); --swl-dim:rgba(255,255,255,.15);
  --swl-max:1200px;
  --swl-fh:'Orbitron',monospace; --swl-fb:'Rajdhani',system-ui,sans-serif;
  --swl-r:4px; --swl-r2:10px; --swl-r3:100px;
  --swl-ease:all .2s cubic-bezier(.4,0,.2,1);
  --swl-sh:0 4px 24px rgba(47,237,122,.08);
  --swl-sh2:0 0 0 1px var(--swl-border-g),0 20px 60px rgba(47,237,122,.08);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{background:var(--swl-void);color:var(--swl-text);font-family:var(--swl-fb);font-size:1rem;line-height:1.7;overflow-x:hidden;min-width:320px;}
img{display:block;max-width:100%;height:auto;}a{color:inherit;text-decoration:none;}ul{list-style:none;}
button{font-family:inherit;cursor:pointer;border:none;background:none;}input,textarea,select{font-family:inherit;}
address{font-style:normal;}h1,h2,h3,h4{font-family:var(--swl-fh);}
p{font-size:clamp(0.75rem,1.5vw,0.92rem);line-height:1.78;color:var(--swl-text);}

/* ── HEADER: Minimal dark sticky + green bottom glow on scroll (FIRST!) ── */
.swl-hd{position:fixed;top:0;width:100%;z-index:500;background:var(--swl-void);border-bottom:1px solid var(--swl-border);transition:border-color .28s,box-shadow .28s;}
.swl-hd.swl-hd-glow{border-bottom-color:rgba(47,237,122,.2);box-shadow:0 0 40px rgba(47,237,122,.04);}
.swl-hd-in{max-width:var(--swl-max);margin:0 auto;padding:0 2rem;height:68px;display:flex;align-items:center;gap:1.5rem;}
/* Orbitron logo — bigger */
.swl-logo{font-family:var(--swl-fh);font-size:clamp(1.15rem,2vw,1.5rem);font-weight:700;color:var(--swl-white);text-decoration:none;flex-shrink:0;letter-spacing:.08em;text-transform:uppercase;}
.swl-logo span{color:var(--swl-green);}
/* Rajdhani nav — bigger than body */
.swl-nav{flex:1;display:flex;justify-content:center;align-items:center;gap:.1rem;}
.swl-nlk{font-family:var(--swl-fb);font-size:clamp(0.85rem,1.2vw,0.95rem);font-weight:600;color:var(--swl-muted);padding:.22rem .55rem;border-radius:var(--swl-r);text-decoration:none;transition:color .14s;white-space:nowrap;text-transform:uppercase;letter-spacing:.06em;}
.swl-nlk:hover,.swl-nlk.swl-on{color:var(--swl-white);}
.swl-nlk.swl-on{color:var(--swl-green);}
.swl-hd-right{display:flex;align-items:center;gap:.5rem;flex-shrink:0;}
.swl-ls-btns{display:flex;gap:.05rem;}
.swl-ls{font-family:var(--swl-fb);font-size:0.72rem;font-weight:600;color:var(--swl-dim);cursor:pointer;padding:.04rem .18rem;border:none;background:none;transition:color .14s;}
.swl-ls.swl-ls-on,.swl-ls:hover{color:var(--swl-green);}
.swl-hd-cta{font-family:var(--swl-fb);font-size:clamp(0.78rem,1.2vw,0.88rem);font-weight:700;color:var(--swl-green);background:transparent;padding:.3rem .9rem;border-radius:var(--swl-r);border:1.5px solid var(--swl-green);text-decoration:none;white-space:nowrap;transition:var(--swl-ease);text-transform:uppercase;letter-spacing:.06em;}
.swl-hd-cta:hover{background:var(--swl-green);color:var(--swl-void);}
.swl-mob-btn{display:none;color:var(--swl-muted);}
/* Mobile overlay */
.swl-mob-overlay{position:fixed;inset:0;background:var(--swl-void);z-index:700;transform:translateX(100%);transition:transform .3s;padding:5rem 2.5rem 2.5rem;}
.swl-mob-overlay.swl-mo-vis{transform:translateX(0);}
.swl-mo-close{position:absolute;top:1.2rem;right:1.5rem;color:var(--swl-muted);}
.swl-mo-nav{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem;}
.swl-mo-lk{font-family:var(--swl-fh);font-size:1.5rem;color:var(--swl-muted);text-decoration:none;transition:color .14s;text-transform:uppercase;letter-spacing:.06em;}
.swl-mo-lk:hover{color:var(--swl-green);}

/* PAGE BANNER (dark for inner pages) */
.swl-pg-bnr{background:var(--swl-void);padding:6.5rem 2rem 3.5rem;border-bottom:1px solid var(--swl-border);}
.swl-pg-bnr-in{max-width:var(--swl-max);margin:0 auto;}
.swl-pg-tag{font-family:var(--swl-fh);font-size:0.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.28em;color:var(--swl-green);display:inline-block;margin-bottom:.6rem;}
.swl-pg-bnr h1{font-family:var(--swl-fh);font-size:clamp(1.8rem,5vw,3.8rem);color:var(--swl-white);line-height:1.05;text-transform:uppercase;letter-spacing:.04em;}
.swl-pg-sub{font-size:clamp(0.78rem,1.5vw,0.9rem);color:var(--swl-muted);margin:.5rem 0 0;max-width:60ch;line-height:1.78;}

/* ── HERO: Full-screen typographic + animated green orbs (FIRST!) ── */
.swl-hero-shell{background:var(--swl-void);padding-top:68px;min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;text-align:center;}
/* Dot grid background */
.swl-hero-shell::before{content:'';position:absolute;inset:0;background-image:radial-gradient(circle,rgba(47,237,122,.07) 1px,transparent 1px);background-size:28px 28px;pointer-events:none;}
/* Green scanline accent */
.swl-hz-in{max-width:var(--swl-max);margin:0 auto;padding:4rem 2rem;position:relative;z-index:2;}
.swl-hz-tag{font-family:var(--swl-fh);font-size:0.72rem;font-weight:400;text-transform:uppercase;letter-spacing:.4em;color:var(--swl-green);display:block;margin-bottom:1.5rem;opacity:.7;}
/* Giant typographic H1 (FIRST this style!) */
.swl-hz-h1{font-family:var(--swl-fh);font-weight:800;text-transform:uppercase;letter-spacing:.06em;line-height:.92;margin-bottom:1.5rem;}
.swl-hz-h1a{font-size:clamp(3.5rem,10vw,9rem);color:var(--swl-white);display:block;}
.swl-hz-h1b{font-size:clamp(2rem,6.5vw,6rem);color:var(--swl-green);display:block;text-shadow:0 0 40px rgba(47,237,122,.4);}
.swl-hz-sub{font-family:var(--swl-fb);font-size:clamp(0.85rem,1.5vw,1rem);color:var(--swl-muted);max-width:52ch;margin:0 auto 2.5rem;line-height:1.78;}
.swl-hz-acts{display:flex;gap:.7rem;justify-content:center;flex-wrap:wrap;}
/* Animated green orbs (CSS only — FIRST!) */
.swl-orb{position:absolute;border-radius:50%;pointer-events:none;z-index:1;}
.swl-orb1{width:400px;height:400px;background:radial-gradient(circle,rgba(47,237,122,.07) 0%,transparent 70%);top:-100px;left:-100px;animation:swlOrb1 12s ease-in-out infinite;}
.swl-orb2{width:300px;height:300px;background:radial-gradient(circle,rgba(47,237,122,.05) 0%,transparent 70%);bottom:-50px;right:-50px;animation:swlOrb2 15s ease-in-out infinite;}
.swl-orb3{width:200px;height:200px;background:radial-gradient(circle,rgba(47,237,122,.08) 0%,transparent 70%);top:50%;right:10%;animation:swlOrb3 10s ease-in-out infinite;}
@keyframes swlOrb1{0%,100%{transform:translate(0,0);}50%{transform:translate(30px,-20px);}}
@keyframes swlOrb2{0%,100%{transform:translate(0,0);}50%{transform:translate(-20px,30px);}}
@keyframes swlOrb3{0%,100%{transform:translate(0,0)scale(1);}50%{transform:translate(10px,-10px)scale(1.05);}}

/* ── STATS BAND ─────────── */
.swl-stats-section{background:var(--swl-surface);border-top:1px solid var(--swl-border);border-bottom:1px solid var(--swl-border);padding:.8rem 2rem;}
.swl-stats-in{max-width:var(--swl-max);margin:0 auto;display:grid;grid-template-columns:repeat(5,1fr);}
.swl-stat-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.8rem;border-right:1px solid var(--swl-border);}
.swl-stat-cell:last-child{border-right:none;}
.swl-sv{font-family:var(--swl-fh);font-size:clamp(1.3rem,3vw,2rem);font-weight:700;color:var(--swl-green);line-height:1;}
.swl-sl{font-family:var(--swl-fb);font-size:0.72rem;font-weight:500;text-transform:uppercase;letter-spacing:.16em;color:var(--swl-muted);margin-top:.12rem;}

/* ── SERVICES: 2-row grid with top-border cards ─── */
.swl-svc-section{background:var(--swl-void);padding:6rem 2rem;border-top:1px solid var(--swl-border);}
.swl-svc-in{max-width:var(--swl-max);margin:0 auto;}
.swl-svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--swl-border);margin-top:2.5rem;}
.swl-svc-cell{background:var(--swl-void);padding:1.8rem;border-top:2px solid transparent;text-decoration:none;display:block;transition:var(--swl-ease);position:relative;}
.swl-svc-cell:hover{background:var(--swl-surface);border-top-color:var(--swl-green);}
.swl-sc-ico{width:36px;height:36px;background:var(--swl-green-bg);border-radius:var(--swl-r);display:flex;align-items:center;justify-content:center;color:var(--swl-green);margin-bottom:.8rem;}
.swl-sc-nm{font-family:var(--swl-fh);font-size:clamp(0.75rem,1.2vw,0.88rem);color:var(--swl-white);display:block;margin-bottom:.2rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;}
.swl-sc-pr{font-family:var(--swl-fb);font-size:0.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--swl-green);display:inline-block;margin-bottom:.3rem;}
.swl-sc-tag{font-size:clamp(0.72rem,1.1vw,0.8rem);color:var(--swl-muted);line-height:1.62;}
.swl-sc-arrow{position:absolute;bottom:1.5rem;right:1.5rem;color:var(--swl-dim);opacity:0;transition:var(--swl-ease);}
.swl-svc-cell:hover .swl-sc-arrow{opacity:1;color:var(--swl-green);}

/* ── PROCESS: 3x2 phase card grid (FIRST!) ─── */
.swl-proc-section{background:var(--swl-surface);padding:6rem 2rem;border-top:1px solid var(--swl-border);}
.swl-proc-in{max-width:var(--swl-max);margin:0 auto;}
.swl-phases-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--swl-border);margin-top:2.5rem;}
.swl-phase-cell{background:var(--swl-surface);padding:2rem;transition:background .2s,box-shadow .2s;}
.swl-phase-cell:hover{background:var(--swl-panel);box-shadow:inset 0 0 0 1px var(--swl-border-g);}
.swl-ph-num{font-family:var(--swl-fh);font-size:clamp(2.5rem,4vw,3.5rem);color:var(--swl-green);opacity:.2;display:block;line-height:1;margin-bottom:.5rem;font-weight:700;}
.swl-ph-nm{font-family:var(--swl-fh);font-size:clamp(0.75rem,1.2vw,0.88rem);color:var(--swl-white);display:block;margin-bottom:.4rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;}
.swl-ph-body{font-size:clamp(0.72rem,1.1vw,0.8rem);color:var(--swl-muted);line-height:1.7;}

/* ── CASES: Dark full-width plates ─── */
.swl-cases-section{background:var(--swl-void);padding:6rem 2rem;border-top:1px solid var(--swl-border);}
.swl-cases-in{max-width:var(--swl-max);margin:0 auto;}
.swl-cases-list{margin-top:2.5rem;display:flex;flex-direction:column;gap:1px;background:var(--swl-border);}
.swl-case-row{background:var(--swl-void);display:grid;grid-template-columns:180px 1fr auto;gap:2rem;padding:2rem;align-items:start;transition:background .2s;}
.swl-case-row:hover{background:var(--swl-surface);}
.swl-cr-cat{font-family:var(--swl-fh);font-size:0.69rem;font-weight:700;text-transform:uppercase;letter-spacing:.22em;color:var(--swl-green);display:block;margin-bottom:.4rem;}
.swl-cr-result{font-family:var(--swl-fh);font-size:clamp(1.4rem,3vw,2.2rem);color:var(--swl-white);font-weight:700;display:block;line-height:1;letter-spacing:-.01em;}
.swl-cr-h{font-family:var(--swl-fb);font-size:clamp(0.82rem,1.3vw,0.92rem);color:var(--swl-text);line-height:1.55;margin-bottom:.35rem;font-weight:600;}
.swl-cr-body{font-size:clamp(0.72rem,1.1vw,0.8rem);color:var(--swl-muted);line-height:1.72;}
.swl-cr-num{font-family:var(--swl-fh);font-size:0.72rem;color:var(--swl-dim);white-space:nowrap;opacity:.4;}

/* ── FAQ: Split 2-column viewer (FIRST!) ─── */
.swl-faq-section{background:var(--swl-surface);padding:6rem 2rem;border-top:1px solid var(--swl-border);}
.swl-faq-in{max-width:var(--swl-max);margin:0 auto;}
.swl-faq-wrap{display:grid;grid-template-columns:280px 1fr;gap:0;margin-top:2.5rem;border:1px solid var(--swl-border);border-radius:var(--swl-r2);overflow:hidden;}
.swl-fq-list{background:var(--swl-void);border-right:1px solid var(--swl-border);padding:.5rem 0;}
.swl-fq-btn{display:block;width:100%;text-align:left;padding:.65rem 1.2rem;font-family:var(--swl-fb);font-size:clamp(0.75rem,1.2vw,0.85rem);font-weight:600;color:var(--swl-muted);background:none;border:none;border-left:2px solid transparent;cursor:pointer;transition:var(--swl-ease);line-height:1.5;}
.swl-fq-btn:hover{color:var(--swl-text);}
.swl-fq-btn.swl-fq-active{color:var(--swl-green);border-left-color:var(--swl-green);background:var(--swl-green-bgd);}
.swl-fq-answers{background:var(--swl-surface);padding:2rem;}
.swl-fq-answer{display:none;}
.swl-fq-answer.swl-fq-vis{display:block;}
.swl-fq-q-disp{font-family:var(--swl-fh);font-size:clamp(0.88rem,1.5vw,1.05rem);color:var(--swl-white);font-weight:700;margin-bottom:1rem;text-transform:uppercase;letter-spacing:.04em;}
.swl-fq-a-disp{font-size:clamp(0.78rem,1.2vw,0.88rem);color:var(--swl-text);line-height:1.82;}

/* ── TESTIMONIALS: Magazine style (FIRST!) ─── */
.swl-testi-section{background:var(--swl-void);padding:6rem 2rem;border-top:1px solid var(--swl-border);}
.swl-testi-in{max-width:var(--swl-max);margin:0 auto;}
/* Main large quote */
.swl-tm-main{background:var(--swl-surface);border:1px solid var(--swl-border);border-top:2px solid var(--swl-green);border-radius:var(--swl-r2);padding:3rem;margin-top:2.5rem;margin-bottom:1.5rem;position:relative;}
.swl-tm-main::before{content:'"';font-family:var(--swl-fh);font-size:8rem;color:var(--swl-green);opacity:.07;position:absolute;top:-1rem;left:2rem;line-height:1;}
.swl-tm-q{font-family:var(--swl-fb);font-size:clamp(0.95rem,1.8vw,1.2rem);color:var(--swl-white);line-height:1.65;font-weight:600;max-width:72ch;margin-bottom:1.8rem;position:relative;z-index:1;}
.swl-tm-who{font-family:var(--swl-fh);font-size:0.82rem;color:var(--swl-green);display:block;font-weight:700;text-transform:uppercase;letter-spacing:.08em;}
.swl-tm-role{font-size:0.75rem;color:var(--swl-muted);display:block;}
/* Two side quotes */
.swl-tm-side-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;}
.swl-tm-side{background:var(--swl-surface);border:1px solid var(--swl-border);border-radius:var(--swl-r2);padding:2rem;}
.swl-tm-stars{color:var(--swl-green);font-size:.75rem;letter-spacing:2px;display:block;margin-bottom:.8rem;}
.swl-tm-sq{font-family:var(--swl-fb);font-size:clamp(0.78rem,1.2vw,0.88rem);color:var(--swl-text);line-height:1.72;margin-bottom:1rem;}
.swl-tm-swho{font-family:var(--swl-fh);font-size:0.72rem;color:var(--swl-green);font-weight:700;text-transform:uppercase;letter-spacing:.06em;display:block;}
.swl-tm-srole{font-size:0.69rem;color:var(--swl-muted);display:block;}

/* ── PRICING ─────────── */
.swl-price-section{background:var(--swl-surface);padding:6rem 2rem;border-top:1px solid var(--swl-border);}
.swl-price-in{max-width:var(--swl-max);margin:0 auto;}
.swl-price-h2{font-family:var(--swl-fh);font-size:clamp(1.6rem,4vw,3.2rem);color:var(--swl-white);font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin-bottom:.3rem;}
.swl-price-sub{font-size:clamp(0.75rem,1.2vw,0.88rem);color:var(--swl-muted);margin-bottom:2.5rem;}
.swl-plan-row{display:grid;grid-template-columns:1px 1fr 1px 1.06fr 1px 1fr 1px;background:var(--swl-border);margin-top:2.5rem;}
.swl-plan-sep{background:var(--swl-border);}
.swl-plan-box{background:var(--swl-void);padding:2rem;transition:background .2s;}
.swl-plan-box.swl-pb-feat{background:var(--swl-surface);}
.swl-plan-box:hover{background:var(--swl-surface);}
.swl-pb-badge{font-family:var(--swl-fh);font-size:0.69rem;font-weight:700;text-transform:uppercase;letter-spacing:.2em;color:var(--swl-green);display:block;margin-bottom:.25rem;}
.swl-pb-nm{font-family:var(--swl-fh);font-size:clamp(1.4rem,2.5vw,1.8rem);color:var(--swl-white);font-weight:700;text-transform:uppercase;letter-spacing:.06em;}
.swl-pb-tl{font-size:0.78rem;color:var(--swl-muted);margin-top:.12rem;margin-bottom:1.2rem;line-height:1.55;max-width:30ch;}
.swl-pb-pr{font-family:var(--swl-fh);font-size:clamp(1.8rem,3vw,2.4rem);color:var(--swl-green);font-weight:700;display:block;margin-bottom:.15rem;}
.swl-pb-pp{font-size:0.72rem;color:var(--swl-muted);display:block;margin-bottom:1.5rem;}
.swl-pb-rows{display:flex;flex-direction:column;gap:.3rem;margin-bottom:1.5rem;}
.swl-pb-rows li{display:flex;align-items:flex-start;gap:.35rem;font-size:clamp(0.72rem,1.1vw,0.8rem);color:var(--swl-text);}
.swl-pb-rows li svg{color:var(--swl-green);flex-shrink:0;margin-top:.12rem;}

/* ── CTA SECTION ─────── */
.swl-cta-section{background:var(--swl-void);padding:6rem 2rem;border-top:1px solid var(--swl-border);position:relative;overflow:hidden;}
.swl-cta-section::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 50%,rgba(47,237,122,.04) 0%,transparent 70%);}
.swl-cta-in{max-width:var(--swl-max);margin:0 auto;text-align:center;position:relative;z-index:1;}
.swl-cta-h{font-family:var(--swl-fh);font-size:clamp(2rem,5vw,4.5rem);color:var(--swl-white);font-weight:700;text-transform:uppercase;letter-spacing:.04em;line-height:1.05;margin-bottom:.8rem;}
.swl-cta-sub{font-size:clamp(0.82rem,1.4vw,0.95rem);color:var(--swl-muted);line-height:1.78;margin-bottom:2rem;max-width:52ch;margin-left:auto;margin-right:auto;}

/* ── BUTTONS ─────────── */
.swl-btn-green{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--swl-fb);font-size:clamp(0.82rem,1.2vw,0.9rem);font-weight:700;color:var(--swl-void);background:var(--swl-green);padding:.5rem 1.4rem;border-radius:var(--swl-r);border:none;cursor:pointer;transition:var(--swl-ease);text-decoration:none;white-space:nowrap;text-transform:uppercase;letter-spacing:.06em;}
.swl-btn-green:hover{background:var(--swl-green-l);}
.swl-btn-outline-g{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--swl-fb);font-size:clamp(0.82rem,1.2vw,0.9rem);font-weight:700;color:var(--swl-green);background:transparent;padding:.48rem 1.4rem;border-radius:var(--swl-r);border:1.5px solid var(--swl-green);transition:var(--swl-ease);text-decoration:none;white-space:nowrap;text-transform:uppercase;letter-spacing:.06em;}
.swl-btn-outline-g:hover{background:var(--swl-green-bg);}
.swl-btn-ghost{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--swl-fb);font-size:clamp(0.82rem,1.2vw,0.9rem);font-weight:700;color:var(--swl-muted);background:transparent;padding:.48rem 1.4rem;border-radius:var(--swl-r);border:1.5px solid var(--swl-border);transition:var(--swl-ease);text-decoration:none;white-space:nowrap;text-transform:uppercase;letter-spacing:.06em;}
.swl-btn-ghost:hover{border-color:var(--swl-green);color:var(--swl-green);}

/* ── SERVICE PAGE ─────── */
.swl-svcpg-wrap{max-width:var(--swl-max);margin:0 auto;padding:3rem 2rem 6rem;display:grid;grid-template-columns:3fr 2fr;gap:3rem;align-items:start;}
.swl-sp-body h2{font-family:var(--swl-fh);font-size:clamp(0.82rem,1.3vw,0.95rem);color:var(--swl-white);margin:2rem 0 .4rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;}
.swl-sp-body p{font-size:clamp(0.78rem,1.2vw,0.9rem);color:var(--swl-text);line-height:1.82;margin-bottom:.8rem;}
.swl-del-r{display:flex;align-items:flex-start;gap:.4rem;font-size:clamp(0.75rem,1.2vw,0.85rem);color:var(--swl-text);margin-bottom:.3rem;}
.swl-del-r svg{color:var(--swl-green);flex-shrink:0;margin-top:.1rem;}
.swl-svc-sidebar{background:var(--swl-surface);border:1px solid var(--swl-border);border-top:2px solid var(--swl-green);border-radius:var(--swl-r2);overflow:hidden;position:sticky;top:5rem;}
.swl-ss-top{background:var(--swl-green);padding:.7rem 1.3rem;}
.swl-ss-ttl{font-family:var(--swl-fh);font-size:clamp(0.78rem,1.2vw,0.9rem);font-weight:700;color:var(--swl-void);text-transform:uppercase;letter-spacing:.08em;}
.swl-ss-bd{padding:1.2rem 1.3rem;}
.swl-ss-from{font-family:var(--swl-fb);font-size:0.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.18em;color:var(--swl-muted);display:block;}
.swl-ss-pr{font-family:var(--swl-fh);font-size:clamp(1.8rem,4vw,2.5rem);color:var(--swl-green);display:block;line-height:1;font-weight:700;}
.swl-ss-ot{font-size:0.72rem;color:var(--swl-muted);display:block;margin-bottom:.8rem;}
.swl-ss-row{display:flex;align-items:flex-start;gap:.35rem;font-size:.75rem;color:var(--swl-muted);margin-bottom:.22rem;}
.swl-ss-row svg{color:var(--swl-green);flex-shrink:0;margin-top:.08rem;}
.swl-ss-btn{display:flex;width:100%;justify-content:center;align-items:center;gap:.4rem;font-family:var(--swl-fb);font-size:clamp(0.82rem,1.2vw,0.9rem);font-weight:700;color:var(--swl-void);background:var(--swl-green);padding:.55rem;border-radius:var(--swl-r);border:none;cursor:pointer;transition:background .14s;margin-top:1rem;text-decoration:none;text-transform:uppercase;letter-spacing:.06em;}
.swl-ss-btn:hover{background:var(--swl-green-l);}

/* ── .swl-spellbook BUILDER (FIRST "spellbook" in 29-site series!) ── */
.swl-build-pg{padding:3rem 0 6rem;}
.swl-build-in{max-width:var(--swl-max);margin:0 auto;padding:0 2rem;}
.swl-build-wrap{display:grid;grid-template-columns:1fr 340px;gap:2rem;margin-top:2rem;align-items:start;}
.swl-build-sec{background:var(--swl-surface);border:1px solid var(--swl-border);border-radius:var(--swl-r2);padding:1.5rem;margin-bottom:1rem;}
.swl-build-sec h3{font-family:var(--swl-fh);font-size:clamp(0.78rem,1.2vw,0.9rem);color:var(--swl-white);font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.7rem;}
.swl-build-sec p{font-size:clamp(0.72rem,1.1vw,0.8rem);color:var(--swl-muted);margin-bottom:1rem;}
/* Plan toggle buttons (FIRST this interaction in 29 sites!) */
.swl-plan-btns{display:flex;flex-direction:column;gap:.5rem;}
.swl-plan-toggle{width:100%;background:none;border:1px solid var(--swl-border);border-left:3px solid transparent;border-radius:var(--swl-r);padding:.9rem 1rem;cursor:pointer;text-align:left;display:flex;align-items:center;justify-content:space-between;transition:var(--swl-ease);}
.swl-plan-toggle:hover{border-color:var(--swl-border-g);}
.swl-plan-toggle.swl-pt-on{border-color:var(--swl-green);border-left-color:var(--swl-green);background:var(--swl-green-bgd);}
.swl-pt-nm{font-family:var(--swl-fh);font-size:clamp(0.78rem,1.2vw,0.88rem);color:var(--swl-muted);font-weight:700;text-transform:uppercase;letter-spacing:.06em;}
.swl-plan-toggle.swl-pt-on .swl-pt-nm{color:var(--swl-white);}
.swl-pt-pr{font-family:var(--swl-fh);font-size:clamp(0.85rem,1.3vw,0.95rem);color:var(--swl-muted);}
.swl-plan-toggle.swl-pt-on .swl-pt-pr{color:var(--swl-green);}
/* Add-on rows */
.swl-addon-rows{display:flex;flex-direction:column;gap:.4rem;}
.swl-addon-row{border:1px solid var(--swl-border);border-radius:var(--swl-r);padding:.6rem .9rem;cursor:pointer;display:flex;align-items:center;gap:.6rem;transition:var(--swl-ease);user-select:none;}
.swl-addon-row:hover{border-color:var(--swl-border-g);}
.swl-addon-row.swl-ar-on{border-color:var(--swl-green);background:var(--swl-green-bgd);}
.swl-ar-tick{width:16px;height:16px;border:1.5px solid var(--swl-border);border-radius:3px;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:var(--swl-ease);}
.swl-addon-row.swl-ar-on .swl-ar-tick{background:var(--swl-green);border-color:var(--swl-green);}
.swl-ar-nm{font-family:var(--swl-fb);font-size:clamp(0.75rem,1.1vw,0.82rem);color:var(--swl-muted);flex:1;}
.swl-addon-row.swl-ar-on .swl-ar-nm{color:var(--swl-text);}
.swl-ar-pr{font-family:var(--swl-fh);font-size:clamp(0.78rem,1.2vw,0.85rem);color:var(--swl-muted);}
.swl-addon-row.swl-ar-on .swl-ar-pr{color:var(--swl-green);}
/* Hours range slider */
.swl-hrs-zone{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;}
.swl-hrs-range{-webkit-appearance:none;height:2px;border-radius:2px;background:var(--swl-border);cursor:pointer;flex:1;min-width:120px;}
.swl-hrs-range::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;border-radius:50%;background:var(--swl-green);cursor:pointer;}
.swl-hrs-lbl{font-family:var(--swl-fh);font-size:1.5rem;color:var(--swl-white);min-width:40px;text-align:center;font-weight:700;}
.swl-hrs-note{font-size:clamp(0.72rem,1.1vw,0.8rem);color:var(--swl-muted);}
/* .swl-spellbook sticky panel (FIRST "spellbook" naming!) */
.swl-spellbook{background:var(--swl-surface);border:1px solid var(--swl-border);border-top:2px solid var(--swl-green);border-radius:var(--swl-r2);overflow:hidden;position:sticky;top:90px;}
.swl-sb-hd{background:var(--swl-green);padding:.65rem 1.2rem;}
.swl-sb-ttl{font-family:var(--swl-fh);font-size:clamp(0.75rem,1.1vw,0.85rem);font-weight:700;color:var(--swl-void);text-transform:uppercase;letter-spacing:.08em;}
.swl-sb-bd{padding:.6rem 1.2rem;min-height:70px;}
.swl-sb-row{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.3rem;}
.swl-sb-lbl{font-size:clamp(0.69rem,1.1vw,0.78rem);color:var(--swl-muted);line-height:1.5;}
.swl-sb-val{font-family:var(--swl-fh);font-size:clamp(0.78rem,1.2vw,0.85rem);color:var(--swl-white);white-space:nowrap;font-weight:700;}
.swl-sb-empty{font-size:clamp(0.69rem,1.1vw,0.78rem);color:var(--swl-dim);font-style:italic;}
.swl-sb-sep{border:none;border-top:1px solid var(--swl-border);margin:.35rem 0;}
.swl-sb-total{display:flex;justify-content:space-between;align-items:flex-end;padding:.2rem 1.2rem .4rem;}
.swl-sb-tl{font-family:var(--swl-fb);font-size:0.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.18em;color:var(--swl-muted);}
.swl-sb-tv{font-family:var(--swl-fh);font-size:clamp(1.8rem,3.5vw,2.5rem);color:var(--swl-green);font-weight:700;}
.swl-sb-ft{padding:.6rem 1.2rem;border-top:1px solid var(--swl-border);}
.swl-sb-go{display:block;width:100%;background:var(--swl-green);color:var(--swl-void);font-family:var(--swl-fb);font-size:clamp(0.82rem,1.2vw,0.9rem);font-weight:700;padding:.6rem;border:none;border-radius:var(--swl-r);cursor:pointer;transition:background .14s;text-transform:uppercase;letter-spacing:.06em;}
.swl-sb-go:hover:not(:disabled){background:var(--swl-green-l);}
.swl-sb-go:disabled{opacity:.3;cursor:not-allowed;}

/* ── CHECKOUT + FORMS ─── */
.swl-co-pg{padding:3rem 0 6rem;}
.swl-co-in{max-width:var(--swl-max);margin:0 auto;padding:0 2rem;}
.swl-co-wrap{display:grid;grid-template-columns:1fr 360px;gap:2rem;margin-top:2rem;align-items:start;}
.swl-co-card{background:var(--swl-surface);border:1px solid var(--swl-border);border-radius:var(--swl-r2);padding:1.8rem;margin-bottom:1rem;}
.swl-co-card h3{font-family:var(--swl-fh);font-size:clamp(0.82rem,1.3vw,0.95rem);color:var(--swl-white);font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-bottom:1.2rem;}
.swl-co-summary{background:var(--swl-surface);border:1px solid var(--swl-border);border-top:2px solid var(--swl-green);border-radius:var(--swl-r2);padding:1.5rem;position:sticky;top:90px;}
.swl-co-summary h3{font-family:var(--swl-fh);font-size:clamp(0.78rem,1.2vw,0.88rem);color:var(--swl-white);font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-bottom:1.2rem;}
.swl-ords-plan{background:var(--swl-green-bg);border:1px solid var(--swl-border-g);border-radius:var(--swl-r);padding:.65rem .9rem;display:flex;justify-content:space-between;margin-bottom:.8rem;}
.swl-ords-pnm{font-family:var(--swl-fh);font-size:clamp(0.82rem,1.3vw,0.92rem);color:var(--swl-white);font-weight:700;text-transform:uppercase;letter-spacing:.06em;}
.swl-ords-ppr{font-family:var(--swl-fh);font-size:clamp(0.82rem,1.3vw,0.92rem);color:var(--swl-green);font-weight:700;}
.swl-ords-row{display:flex;justify-content:space-between;font-size:clamp(0.72rem,1.1vw,0.8rem);color:var(--swl-muted);margin-bottom:.3rem;}
.swl-ords-sep{border:none;border-top:1px solid var(--swl-border);margin:.7rem 0;}
.swl-ords-total{display:flex;justify-content:space-between;align-items:center;}
.swl-ords-tl{font-size:0.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.18em;color:var(--swl-muted);}
.swl-ords-tv{font-family:var(--swl-fh);font-size:clamp(1.8rem,3vw,2.4rem);color:var(--swl-green);font-weight:700;}
.swl-no-order{font-size:0.82rem;color:var(--swl-dim);text-align:center;padding:1.5rem 0;font-style:italic;}
.swl-frow{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:.8rem;}
.swl-fld{margin-bottom:.8rem;}
.swl-fl{display:block;font-family:var(--swl-fb);font-size:0.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.18em;color:var(--swl-muted);margin-bottom:.2rem;}
.swl-fi{width:100%;background:var(--swl-void);border:1px solid var(--swl-border);border-radius:var(--swl-r);padding:.6rem .9rem;color:var(--swl-white);font-size:clamp(0.82rem,1.2vw,0.9rem);transition:border-color .14s;font-family:var(--swl-fb);}
.swl-fi:focus{outline:none;border-color:var(--swl-green);box-shadow:0 0 0 3px var(--swl-green-bg);}
.swl-agree{display:flex;align-items:flex-start;gap:.5rem;font-size:0.78rem;color:var(--swl-muted);margin:1rem 0;line-height:1.6;}
.swl-agree input{margin-top:.14rem;accent-color:var(--swl-green);}
.swl-agree a{color:var(--swl-green);}
.swl-co-submit{width:100%;background:var(--swl-green);color:var(--swl-void);font-family:var(--swl-fb);font-size:clamp(0.88rem,1.5vw,1rem);font-weight:700;padding:.9rem;border:none;border-radius:var(--swl-r);cursor:pointer;transition:background .14s;margin-top:.4rem;text-transform:uppercase;letter-spacing:.06em;}
.swl-co-submit:hover{background:var(--swl-green-l);}
.swl-err{background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.3);border-radius:var(--swl-r);padding:.7rem 1rem;margin-bottom:1rem;font-size:clamp(0.75rem,1.2vw,0.82rem);color:#f87171;}

/* ── LEGAL ───────────── */
.swl-legal-pg{max-width:800px;margin:0 auto;padding:4rem 2rem 7rem;}
.swl-legal-eff{display:inline-block;font-size:0.72rem;color:var(--swl-muted);background:var(--swl-surface);border:1px solid var(--swl-border);padding:.18rem .65rem;border-radius:var(--swl-r3);margin-bottom:1.5rem;}
.swl-legal-pg h2{font-family:var(--swl-fh);font-size:clamp(0.82rem,1.3vw,0.95rem);color:var(--swl-white);margin:2.5rem 0 .45rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;}
.swl-legal-pg p,.swl-legal-pg li{font-size:clamp(0.75rem,1.2vw,0.88rem);color:var(--swl-text);line-height:1.78;margin-bottom:.85rem;}
.swl-legal-pg ul{padding-left:1.4rem;margin:.5rem 0;}
.swl-legal-pg li{list-style:disc;}
.swl-legal-pg a{color:var(--swl-green);}

/* ── FOOTER (FB+TW+WA FIRST!) ─── */
.swl-footer{background:var(--swl-surface);border-top:1px solid var(--swl-border);}
.swl-footer-in{max-width:var(--swl-max);margin:0 auto;padding:3rem 2rem 2rem;display:grid;grid-template-columns:1.8fr 1fr 1fr 1fr;gap:2rem;border-bottom:1px solid var(--swl-border);}
/* Bigger logo in footer */
.swl-ftr-logo{font-family:var(--swl-fh);font-size:clamp(1.15rem,2vw,1.5rem);font-weight:700;color:var(--swl-white);display:block;margin-bottom:.4rem;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;}
.swl-ftr-logo span{color:var(--swl-green);}
.swl-ftr-tag{font-size:0.72rem;color:var(--swl-dim);line-height:1.65;margin-bottom:.7rem;}
/* FB+TW+WA (FIRST!) */
.swl-ftr-socs{display:flex;gap:.4rem;margin-bottom:.7rem;}
.swl-ftr-soc{width:30px;height:30px;border:1px solid var(--swl-border);border-radius:var(--swl-r);display:flex;align-items:center;justify-content:center;color:var(--swl-muted);transition:var(--swl-ease);text-decoration:none;}
.swl-ftr-soc:hover{border-color:var(--swl-green);color:var(--swl-green);}
.swl-ftr-col-h{font-family:var(--swl-fh);font-size:0.69rem;font-weight:700;text-transform:uppercase;letter-spacing:.28em;color:var(--swl-dim);margin-bottom:.65rem;}
.swl-ftr-nav{display:flex;flex-direction:column;gap:.22rem;}
.swl-ftr-nav a{font-size:0.75rem;color:var(--swl-dim);transition:color .14s;text-decoration:none;}
.swl-ftr-nav a:hover{color:var(--swl-green);}
.swl-ftr-ct a{display:flex;align-items:flex-start;gap:.3rem;font-size:0.72rem;color:var(--swl-dim);transition:color .14s;text-decoration:none;margin-bottom:.24rem;}
.swl-ftr-ct a:hover{color:var(--swl-green);}
.swl-footer-base{max-width:var(--swl-max);margin:0 auto;padding:.65rem 2rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;}
.swl-ftr-copy{font-size:0.69rem;color:var(--swl-dim);}
.swl-ftr-legal{display:flex;gap:1rem;flex-wrap:wrap;}
.swl-ftr-legal a{font-size:0.69rem;color:var(--swl-dim);transition:color .14s;text-decoration:none;}
.swl-ftr-legal a:hover{color:var(--swl-green);}

/* ── COOKIE + CHAT ────── */
.swl-ck-bar{position:fixed;bottom:0;left:0;right:0;z-index:9999;background:var(--swl-panel);border-top:1px solid var(--swl-border-g);padding:.9rem 2rem;display:none;align-items:center;gap:2rem;justify-content:space-between;flex-wrap:wrap;}
.swl-ck-bar p{font-size:0.78rem;color:var(--swl-muted);margin:0;}
.swl-ck-bar a{color:var(--swl-green);}
.swl-ck-btns{display:flex;gap:.5rem;flex-shrink:0;}
.swl-ck-yes{background:var(--swl-green);color:var(--swl-void);font-family:var(--swl-fb);font-size:0.85rem;font-weight:700;padding:.28rem .85rem;border-radius:var(--swl-r3);cursor:pointer;border:none;text-transform:uppercase;}
.swl-ck-no{background:transparent;color:var(--swl-muted);font-family:var(--swl-fb);font-size:0.82rem;padding:.26rem .85rem;border:1px solid var(--swl-border);border-radius:var(--swl-r3);cursor:pointer;}
.swl-chat-fab{position:fixed;bottom:4.5rem;right:1.5rem;z-index:9990;width:50px;height:50px;background:var(--swl-green);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;border:none;box-shadow:0 4px 20px rgba(47,237,122,.25);transition:var(--swl-ease);color:var(--swl-void);}
.swl-chat-fab:hover{background:var(--swl-green-l);transform:scale(1.07);}
.swl-chatpop{position:fixed;bottom:7rem;right:1.5rem;z-index:9989;width:290px;background:var(--swl-surface);border:1px solid var(--swl-border-g);border-radius:var(--swl-r2);box-shadow:0 20px 60px rgba(0,0,0,.5);opacity:0;pointer-events:none;transform:translateY(10px) scale(.97);transition:opacity .2s,transform .22s;overflow:hidden;}
.swl-chatpop.swl-cp-vis{opacity:1;pointer-events:auto;transform:none;}
.swl-chat-hd{background:var(--swl-panel);border-bottom:1px solid var(--swl-border);padding:.8rem 1.1rem;}
.swl-chat-nm{font-family:var(--swl-fh);font-size:clamp(0.82rem,1.3vw,0.92rem);color:var(--swl-white);font-weight:700;text-transform:uppercase;letter-spacing:.06em;}
.swl-chat-nm span{color:var(--swl-green);}
.swl-chat-bd{padding:.8rem 1rem;}
.swl-chat-inp{width:100%;background:var(--swl-void);border:1px solid var(--swl-border);border-radius:var(--swl-r);padding:.5rem .8rem;font-size:0.85rem;color:var(--swl-white);margin-bottom:.35rem;resize:none;transition:border-color .14s;}
.swl-chat-inp:focus{outline:none;border-color:var(--swl-green);}
.swl-chat-send{width:100%;background:var(--swl-green);color:var(--swl-void);font-family:var(--swl-fb);font-size:0.88rem;font-weight:700;padding:.5rem;border-radius:var(--swl-r);border:none;cursor:pointer;transition:background .14s;text-transform:uppercase;}
.swl-chat-send:hover{background:var(--swl-green-l);}
.swl-chat-done{display:none;text-align:center;padding:.9rem;}

/* ── MISC ─────────────── */
.swl-reveal{opacity:0;transform:translateY(12px);transition:opacity .42s,transform .42s;}
.swl-reveal.swl-vis{opacity:1;transform:none;}
.swl-result-pg{min-height:72vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:8rem 2rem;flex-direction:column;gap:1.5rem;}
.swl-result-pg h1{font-family:var(--swl-fh);font-size:clamp(1.5rem,4vw,2.8rem);color:var(--swl-white);text-transform:uppercase;letter-spacing:.06em;}
.swl-sec-hd h2{font-family:var(--swl-fh);font-size:clamp(1.5rem,3.5vw,2.8rem);color:var(--swl-white);font-weight:700;text-transform:uppercase;letter-spacing:.04em;}
.swl-sec-sub{font-size:clamp(0.75rem,1.2vw,0.88rem);color:var(--swl-muted);margin-top:.3rem;max-width:52ch;}

/* ── RESPONSIVE ───────── */
@media(max-width:960px){
  .swl-nav{display:none;} .swl-mob-btn{display:flex;}
  .swl-svc-grid,.swl-phases-grid{grid-template-columns:repeat(2,1fr);}
  .swl-plan-row{grid-template-columns:1fr;}
  .swl-plan-sep{display:none;}
  .swl-faq-wrap{grid-template-columns:1fr;}
  .swl-fq-list{border-right:none;border-bottom:1px solid var(--swl-border);}
  .swl-testi-in,.swl-co-wrap,.swl-build-wrap,.swl-cta-in{grid-template-columns:1fr;}
  .swl-tm-side-grid{grid-template-columns:1fr;}
  .swl-footer-in{grid-template-columns:1fr 1fr 1fr;}
  .swl-svcpg-wrap{grid-template-columns:1fr;}
  .swl-cases-list .swl-case-row{grid-template-columns:1fr;}
  .swl-cr-num{display:none;}
}
@media(max-width:600px){
  .swl-svc-grid,.swl-phases-grid{grid-template-columns:1fr;}
  .swl-stats-in{grid-template-columns:repeat(3,1fr);}
  .swl-footer-in{grid-template-columns:1fr 1fr;}
  .swl-frow{grid-template-columns:1fr;}
}
