/* ── RESET ───────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
button{font-family:inherit;cursor:pointer;border:none;background:none}

/* ── DARK MODE (default) ─────────────────────────────── */
:root {
  --bg:         #070D18;
  --surface:    #0C1520;
  --surface2:   #111D2E;
  --surface3:   #16253C;
  --accent:     #4ADE80;
  --accent2:    #22C55E;
  --accent3:    #16A34A;
  --accent-dim: rgba(74,222,128,.10);
  --accent-glow:rgba(74,222,128,.18);
  --text:       #F0F4FF;
  --text-md:    rgba(240,244,255,.62);
  --text-lt:    rgba(240,244,255,.35);
  --border:     rgba(255,255,255,.07);
  --border2:    rgba(255,255,255,.12);
  --gold:       #C9A843;
  --gold-dim:   rgba(201,168,67,.15);
  --white:      #FFFFFF;
  --card-bg:    rgba(255,255,255,.04);
  --input-bg:   rgba(255,255,255,.05);
  --nav-bg:     rgba(7,13,24,.88);
  --shadow:     0 4px 24px rgba(0,0,0,.35);
  --shadow-lg:  0 16px 56px rgba(0,0,0,.5);
  --radius:     12px;
  --radius-lg:  20px;
  --tr:         .28s cubic-bezier(.4,0,.2,1);
}

/* ── LIGHT MODE ──────────────────────────────────────── */
[data-theme="light"] {
  --bg:         #FFFFFF;
  --surface:    #F0FDF4;
  --surface2:   #DCFCE7;
  --surface3:   #BBF7D0;
  --accent:     #16A34A;
  --accent2:    #15803D;
  --accent3:    #166534;
  --accent-dim: rgba(22,163,74,.08);
  --accent-glow:rgba(22,163,74,.06);
  --text:       #0A1020;
  --text-md:    #374151;
  --text-lt:    #6B7280;
  --border:     rgba(0,0,0,.08);
  --border2:    rgba(0,0,0,.14);
  --gold:       #9A7A2A;
  --gold-dim:   rgba(154,122,42,.1);
  --white:      #FFFFFF;
  --card-bg:    #FFFFFF;
  --input-bg:   #F9FAFB;
  --nav-bg:     rgba(255,255,255,.92);
  --shadow:     0 4px 24px rgba(0,0,0,.08);
  --shadow-lg:  0 16px 56px rgba(0,0,0,.12);
}

/* ── BASE ────────────────────────────────────────────── */
html{scroll-behavior:smooth}
body{
  font-family:'Inter',system-ui,sans-serif;
  color:var(--text);
  background:var(--bg);
  line-height:1.65;
  font-size:16px;
  overflow-x:hidden;
  transition:background .4s ease,color .4s ease;
}
h1,h2,h3,h4{font-family:'Space Grotesk',sans-serif;line-height:1.1;color:var(--text)}
em{font-style:italic;color:var(--accent)}
strong{color:var(--text);font-weight:700}
.container{max-width:1200px;margin:0 auto;padding:0 28px}
.label{
  display:inline-block;font-size:11px;font-weight:700;
  letter-spacing:.12em;text-transform:uppercase;
  color:var(--accent);border:1px solid var(--accent);
  background:var(--accent-dim);padding:5px 14px;border-radius:100px;margin-bottom:20px;
  transition:color var(--tr),border-color var(--tr),background var(--tr);
}

/* ── SCROLL REVEAL ───────────────────────────────────── */
.reveal-up{opacity:0;transform:translateY(36px);transition:opacity .75s cubic-bezier(.16,1,.3,1),transform .75s cubic-bezier(.16,1,.3,1)}
.reveal-up.visible{opacity:1;transform:none}
.d1{transition-delay:.10s}.d2{transition-delay:.20s}.d3{transition-delay:.30s}
.d4{transition-delay:.40s}.d5{transition-delay:.50s}.d6{transition-delay:.60s}
.reveal-load{opacity:0;transform:translateY(50px);transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1)}
body.loaded .reveal-load{opacity:1;transform:none}
body.loaded .d1{transition-delay:.12s}body.loaded .d2{transition-delay:.25s}
body.loaded .d3{transition-delay:.38s}body.loaded .d4{transition-delay:.52s}
body.loaded .d5{transition-delay:.68s}body.loaded .d6{transition-delay:.86s}

/* ── BUTTONS ─────────────────────────────────────────── */
.btn-accent{
  display:inline-flex;align-items:center;gap:10px;
  background:var(--accent);color:var(--bg);font-family:'Space Grotesk',sans-serif;
  font-weight:700;font-size:15px;padding:14px 28px;border-radius:100px;
  border:2px solid var(--accent);transition:all var(--tr);
}
.btn-accent:hover{background:var(--accent2);border-color:var(--accent2);transform:translateY(-2px);box-shadow:0 8px 32px var(--accent-glow)}
.btn-ghost{
  display:inline-flex;align-items:center;gap:10px;background:transparent;
  color:var(--text);font-weight:600;font-size:15px;padding:14px 28px;
  border-radius:100px;border:2px solid var(--border2);transition:all var(--tr);
}
.btn-ghost:hover{border-color:var(--accent);color:var(--accent)}
.btn-full{width:100%;justify-content:center}
.arr{display:inline-block;transition:transform var(--tr)}
.btn-accent:hover .arr,.btn-ghost:hover .arr{transform:translate(3px,-3px)}

/* ── NAVBAR ──────────────────────────────────────────── */
.navbar{
  position:fixed;top:0;left:0;right:0;z-index:1000;
  background:var(--nav-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border-bottom:1px solid var(--border);
  transition:background .4s,border-color .4s,box-shadow var(--tr);
}
.navbar.solid{box-shadow:var(--shadow)}
.nav-wrap{max-width:1200px;margin:0 auto;padding:0 28px;display:flex;align-items:center;justify-content:space-between;height:68px;gap:16px}
.nav-logo{display:flex;align-items:center;gap:10px;color:var(--text);flex-shrink:0}
.nav-logo img{width:40px;height:40px;border-radius:50%;object-fit:cover;border:2px solid var(--accent);transition:border-color var(--tr)}
.nav-logo span{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:16px;white-space:nowrap}
.nav-logo em{color:var(--accent);font-style:normal}
.nav-links{display:flex;align-items:center;gap:28px}
.nav-links a{font-size:14px;font-weight:500;color:var(--text-md);transition:color var(--tr);white-space:nowrap}
.nav-links a:hover{color:var(--accent)}
.nav-right{display:flex;align-items:center;gap:12px;flex-shrink:0}
.nav-cta{
  display:inline-flex;align-items:center;gap:6px;background:var(--accent);
  color:var(--bg);font-weight:700;font-size:13px;padding:9px 18px;
  border-radius:100px;transition:all var(--tr);white-space:nowrap;
}
.nav-cta:hover{background:var(--accent2);transform:translateY(-1px)}

/* ── THEME TOGGLE ────────────────────────────────────── */
.theme-toggle{
  display:flex;align-items:center;gap:8px;
  background:var(--surface2);border:1px solid var(--border2);
  border-radius:100px;padding:5px 10px;transition:all var(--tr);cursor:pointer;
}
.theme-toggle:hover{border-color:var(--accent)}
.toggle-track{
  position:relative;width:40px;height:22px;
  background:var(--surface3);border-radius:100px;
  border:1px solid var(--border2);transition:background var(--tr);
}
.toggle-thumb{
  position:absolute;top:3px;left:3px;width:14px;height:14px;
  background:var(--accent);border-radius:50%;
  transition:transform .3s cubic-bezier(.4,0,.2,1),background var(--tr);
}
[data-theme="light"] .toggle-thumb{transform:translateX(18px)}
.toggle-icon{font-size:13px;line-height:1;transition:opacity var(--tr)}
.toggle-icon.sun{opacity:.6}
.toggle-icon.moon{opacity:1}
[data-theme="light"] .toggle-icon.sun{opacity:1}
[data-theme="light"] .toggle-icon.moon{opacity:.5}

.nav-toggle{display:none;flex-direction:column;gap:5px;padding:4px;background:none;border:none}
.nav-toggle span{display:block;width:22px;height:2px;background:var(--text);border-radius:2px;transition:all var(--tr)}
.nav-drawer{
  display:none;flex-direction:column;padding:16px 28px 24px;gap:4px;
  border-top:1px solid var(--border);background:var(--nav-bg);
  backdrop-filter:blur(20px);
}
.nav-drawer a{font-size:15px;font-weight:500;color:var(--text-md);padding:12px 0;border-bottom:1px solid var(--border);transition:color var(--tr)}
.nav-drawer a:hover{color:var(--accent)}
.nav-drawer.open{display:flex}
.drawer-bottom{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}
.drawer-cta{
  flex:1;text-align:center;background:var(--accent);color:var(--bg) !important;
  border-radius:100px;padding:12px 20px;font-weight:700 !important;
  border:none !important;font-size:15px;
}
.drawer-admin{
  padding:12px 20px;border:1px solid var(--border2);border-radius:100px;
  color:var(--text-md) !important;font-size:13px;text-align:center;
  transition:all var(--tr);
}
.drawer-admin:hover{border-color:var(--accent);color:var(--accent) !important}

/* ── HERO ────────────────────────────────────────────── */
.hero{
  min-height:100vh;display:flex;align-items:center;
  position:relative;overflow:hidden;padding-top:68px;
  background:var(--bg);transition:background .4s;
}
.hero-bg{position:absolute;inset:0;pointer-events:none;z-index:0}
.hero-grain{
  position:absolute;inset:0;opacity:.03;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
.hero-glow{
  position:absolute;bottom:-15%;left:50%;transform:translateX(-50%);
  width:800px;height:500px;
  background:radial-gradient(ellipse,var(--accent-glow) 0%,transparent 70%);
}
.hero-img-bg{
  position:absolute;inset:0;
  background:url('https://images.unsplash.com/photo-1486406146926-c627a92ad1ab?auto=format&w=1920&q=40') center/cover no-repeat;
  opacity:.05;transition:opacity .4s;
}
[data-theme="light"] .hero-img-bg{opacity:.04}
.hero-inner{position:relative;z-index:2;padding:80px 28px 120px;max-width:1200px;margin:0 auto;width:100%}
.hero-eyebrow{
  display:inline-flex;align-items:center;gap:10px;
  font-size:13px;font-weight:600;color:var(--text-md);
  letter-spacing:.03em;margin-bottom:36px;
}
.eyebrow-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);flex-shrink:0;animation:pulse 2.5s ease-in-out infinite}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.75)}}
.hero-title{
  font-size:clamp(52px,8.5vw,112px);font-weight:700;
  color:var(--text);line-height:1.0;margin-bottom:28px;letter-spacing:-.03em;
}
.ht{display:block}
.ht-accent{color:var(--accent)}
.hero-sub{
  font-size:clamp(16px,2vw,19px);color:var(--text-md);
  max-width:560px;margin-bottom:44px;line-height:1.8;font-weight:400;
}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.hero-scroll-hint{
  position:absolute;bottom:36px;left:28px;
  display:flex;align-items:center;gap:12px;z-index:2;
}
.hero-scroll-hint span{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-lt)}
.scroll-line-wrap{width:44px;height:2px;background:var(--border2);overflow:hidden;border-radius:2px}
.scroll-line-inner{height:100%;width:100%;background:var(--accent);animation:scrollline 2.2s ease-in-out infinite}
@keyframes scrollline{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}
.hero-trust{
  position:absolute;bottom:36px;right:28px;z-index:2;
  display:flex;align-items:center;gap:12px;
  background:var(--card-bg);border:1px solid var(--border2);
  border-radius:12px;padding:12px 16px;backdrop-filter:blur(10px);
}
.trust-logo{width:34px;height:34px;border-radius:50%;object-fit:cover;border:1px solid var(--accent)}
.hero-trust strong{display:block;font-size:12px;color:var(--text);font-weight:700}
.hero-trust span{display:block;font-size:11px;color:var(--text-lt)}
.hero-badges{display:flex;gap:10px;margin-top:40px;flex-wrap:wrap}
.hero-badge-pill{
  display:flex;align-items:center;gap:6px;
  background:var(--card-bg);border:1px solid var(--border2);
  border-radius:100px;padding:6px 14px;font-size:12px;font-weight:600;color:var(--text-md);
  transition:border-color var(--tr);
}
.hero-badge-pill:hover{border-color:var(--accent);color:var(--accent)}
.hero-badge-pill span{color:var(--accent);font-size:14px}

/* ── MARQUEE ─────────────────────────────────────────── */
.marquee-strip{
  background:var(--accent);padding:14px 0;overflow:hidden;
  transition:background .4s;
}
.marquee-track{
  display:flex;gap:36px;white-space:nowrap;
  animation:marquee 30s linear infinite;width:max-content;
}
.marquee-track span{
  font-family:'Space Grotesk',sans-serif;font-size:13px;
  font-weight:700;color:var(--bg);text-transform:uppercase;letter-spacing:.07em;
}
.marquee-track .mx{color:var(--bg);opacity:.35;font-size:9px}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ── SERVICES ────────────────────────────────────────── */
.services{background:var(--surface);padding:96px 0 0;transition:background .4s}
.split-header{
  display:grid;grid-template-columns:1fr 1fr;gap:56px;
  align-items:end;padding:0 28px;max-width:1200px;margin:0 auto;
}
.split-left h2{font-size:clamp(32px,4.5vw,54px);font-weight:700;color:var(--text);line-height:1.1}
.split-right{font-size:16px;color:var(--text-md);line-height:1.8;padding-bottom:4px}
.svc-list{margin-top:56px;border-top:1px solid var(--border)}
.svc-row{
  display:grid;grid-template-columns:72px 1fr auto 52px;
  align-items:center;gap:20px;
  padding:28px 28px;max-width:1200px;margin:0 auto;
  border-bottom:1px solid var(--border);
  cursor:pointer;transition:padding var(--tr),background var(--tr);
  position:relative;
}
.svc-row::before{
  content:'';position:absolute;left:0;top:0;bottom:0;width:3px;
  background:var(--accent);transform:scaleY(0);transition:transform var(--tr);transform-origin:bottom;
}
.svc-row.expanded::before,.svc-row:hover::before{transform:scaleY(1)}
.svc-row.expanded,.svc-row:hover{padding-left:44px;background:var(--accent-dim)}
.svc-num{font-family:'Space Grotesk',sans-serif;font-size:12px;font-weight:700;color:var(--text-lt);transition:color var(--tr)}
.svc-row.expanded .svc-num,.svc-row:hover .svc-num{color:var(--accent)}
.svc-name{font-size:clamp(18px,2.2vw,26px);font-weight:600;color:var(--text);transition:color var(--tr)}
.svc-desc{
  font-size:14px;color:var(--text-md);line-height:1.75;
  max-height:0;overflow:hidden;opacity:0;margin-top:0;
  transition:max-height .45s ease,opacity .35s ease,margin .3s ease;
  grid-column:2;
}
.svc-row.expanded .svc-desc{max-height:120px;opacity:1;margin-top:10px}
.svc-badge{
  font-size:11px;font-weight:700;background:var(--accent-dim);
  color:var(--accent);border:1px solid var(--accent-dim);
  padding:4px 12px;border-radius:100px;white-space:nowrap;
  letter-spacing:.04em;transition:all var(--tr);
}
.svc-arr{
  font-size:20px;color:var(--text-lt);
  transition:transform var(--tr),color var(--tr);text-align:center;
}
.svc-row.expanded .svc-arr,.svc-row:hover .svc-arr{transform:translate(3px,-3px);color:var(--accent)}

/* ── STATS ───────────────────────────────────────────── */
.stats-section{
  background:var(--bg);border-top:1px solid var(--border);
  border-bottom:1px solid var(--border);padding:72px 0;transition:background .4s;
}
.stats-grid{display:flex;align-items:stretch;justify-content:center;flex-wrap:wrap}
.stat-item{flex:1;min-width:160px;text-align:center;padding:20px 32px}
.stat-figure{
  font-family:'Space Grotesk',sans-serif;
  font-size:clamp(44px,5.5vw,70px);font-weight:700;
  color:var(--accent);line-height:1;
  display:flex;align-items:baseline;justify-content:center;gap:3px;
}
.stat-figure sup,.stat-figure>span:not(.stat-count){
  font-size:.46em;font-weight:600;color:var(--accent);
}
.stat-item p{font-size:13px;color:var(--text-lt);margin-top:8px;font-weight:500;letter-spacing:.02em}
.stat-divider{width:1px;background:var(--border);flex-shrink:0;margin:20px 0}

/* ── ABOUT ───────────────────────────────────────────── */
.about{display:grid;grid-template-columns:1fr 1fr;min-height:680px;transition:background .4s}
.about-img{position:relative;overflow:hidden;background:var(--surface2)}
.about-img img{width:100%;height:100%;object-fit:cover;object-position:center top;filter:brightness(.9)}
.about-img-overlay{
  position:absolute;inset:0;
  background:linear-gradient(to right,transparent 40%,var(--surface) 100%);
  transition:background .4s;
}
.founder-float{
  position:absolute;bottom:32px;left:28px;
  display:flex;align-items:center;gap:12px;
  background:var(--card-bg);border:1px solid var(--accent);
  border-radius:12px;padding:12px 16px;backdrop-filter:blur(16px);
}
.founder-float strong{display:block;font-size:12px;color:var(--text);font-weight:700}
.founder-float span{display:block;font-size:11px;color:var(--text-md)}
.about-content{
  background:var(--surface);padding:80px 64px 80px 56px;
  display:flex;flex-direction:column;justify-content:center;
  transition:background .4s;
}
.about-content h2{font-size:clamp(32px,3.5vw,50px);font-weight:700;color:var(--text);margin-bottom:24px;line-height:1.1}
.about-content p{color:var(--text-md);font-size:15px;line-height:1.8;margin-bottom:14px}
.about-content p strong{color:var(--text);font-weight:700}
.about-creds{
  display:flex;gap:8px;flex-wrap:wrap;margin:16px 0 20px;
}
.about-cred-pill{
  display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;
  background:var(--accent-dim);border:1px solid var(--accent-dim);
  color:var(--accent);padding:5px 12px;border-radius:100px;
}
.about-cred-pill span{font-size:14px}
.about-badges{display:flex;flex-direction:column;gap:10px;margin:20px 0 28px}
.abadge{
  display:flex;align-items:center;gap:12px;
  background:var(--card-bg);border:1px solid var(--border2);
  border-radius:10px;padding:12px 16px;transition:border-color var(--tr);
}
.abadge:hover{border-color:var(--accent)}
.abadge strong{display:block;font-size:13px;color:var(--text);font-weight:700}
.abadge span{display:block;font-size:11px;color:var(--text-lt)}

/* ── QB CERTS ────────────────────────────────────────── */
.qb-cert-section{background:var(--bg);padding:88px 0;transition:background .4s}
.cert-heading{
  font-size:clamp(28px,3.5vw,48px);font-weight:700;
  color:var(--text);margin-bottom:52px;line-height:1.1;text-align:center;
}
.cert-cards{display:flex;gap:24px;justify-content:center;flex-wrap:wrap}
.cert-card{
  background:var(--card-bg);border:1.5px solid var(--border2);
  border-radius:var(--radius-lg);padding:40px 32px;
  display:flex;flex-direction:column;align-items:center;text-align:center;
  gap:18px;flex:1;min-width:260px;max-width:320px;
  text-decoration:none;color:var(--text);
  transition:all var(--tr);box-shadow:var(--shadow);position:relative;overflow:hidden;
}
.cert-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px}
.cert-card:first-child::before{background:linear-gradient(90deg,var(--accent3),var(--accent2))}
.cert-card:last-child::before{background:linear-gradient(90deg,#1a4fa8,#2d7be5)}
.cert-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);border-color:var(--accent)}
.cert-card-shield{width:80px;height:96px}
.cert-card-shield svg{width:100%;height:100%}
.cert-card-body{display:flex;flex-direction:column;align-items:center;gap:6px;width:100%}
.cert-qb-mark{display:flex;align-items:center;gap:8px;font-family:'Space Grotesk',sans-serif;font-size:14px;font-weight:700;color:var(--text)}
.cert-qb-mark sup{font-size:9px;color:var(--text-lt)}
.cert-card-body h3{font-size:20px;font-weight:700;color:var(--text)}
.cert-card-body p{font-size:12px;color:var(--text-lt);text-transform:uppercase;letter-spacing:.07em;font-weight:600}
.cert-tags{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;margin-top:4px}
.cert-tags span{font-size:11px;font-weight:600;padding:4px 10px;border-radius:100px;background:var(--accent-dim);color:var(--accent);border:1px solid var(--accent-dim)}
.cert-card-footer{width:100%;padding:10px 16px;border-radius:100px;font-size:12px;font-weight:700;text-align:center}
.green-cf{background:var(--accent-dim);color:var(--accent3)}
.blue-cf{background:rgba(26,79,168,.1);color:#1a4fa8}
.cert-note{text-align:center;margin-top:32px;font-size:14px;color:var(--text-lt);line-height:1.75;max-width:540px;margin-left:auto;margin-right:auto}
.cert-note a{color:var(--accent);font-weight:700}

/* ── PROCESS ─────────────────────────────────────────── */
.process{background:var(--surface);padding:88px 0;transition:background .4s}
.process h2{font-size:clamp(32px,4.5vw,54px);font-weight:700;color:var(--text);margin-bottom:64px}
.process-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative}
.process-steps::before{
  content:'';position:absolute;top:22px;left:12%;right:12%;height:1px;
  background:linear-gradient(90deg,var(--accent),transparent);z-index:0;
}
.process-step{padding:0 24px;position:relative;z-index:1}
.ps-num{
  font-family:'Space Grotesk',sans-serif;font-size:11px;font-weight:700;
  color:var(--accent);letter-spacing:.1em;text-transform:uppercase;margin-bottom:16px;
  background:var(--surface);display:inline-block;padding-right:10px;transition:background .4s;
}
.process-step h3{font-size:18px;font-weight:700;color:var(--text);margin-bottom:10px}
.process-step p{font-size:14px;color:var(--text-md);line-height:1.75}

/* ── INDUSTRIES ──────────────────────────────────────── */
.industries{background:var(--bg);padding:88px 0;transition:background .4s}
.industries h2{font-size:clamp(32px,4.5vw,54px);font-weight:700;color:var(--text);margin-bottom:48px}
.industry-grid{display:flex;flex-wrap:wrap;gap:10px}
.ind-item{
  background:var(--card-bg);border:1px solid var(--border2);
  border-radius:100px;padding:10px 20px;font-size:14px;
  font-weight:500;color:var(--text-md);transition:all var(--tr);cursor:default;
}
.ind-item:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim);transform:translateY(-2px)}

/* ── WHY US ──────────────────────────────────────────── */
.why-us{background:var(--surface);padding:88px 0;transition:background .4s}
.why-us h2{font-size:clamp(32px,4.5vw,54px);font-weight:700;color:var(--text);margin-bottom:56px}
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--border);border-radius:var(--radius-lg);overflow:hidden}
.why-item{background:var(--card-bg);padding:40px 32px;transition:background var(--tr)}
.why-item:hover{background:var(--accent-dim)}
.why-num{display:block;font-family:'Space Grotesk',sans-serif;font-size:40px;font-weight:700;color:var(--accent-dim);line-height:1;margin-bottom:16px;transition:color var(--tr)}
[data-theme="light"] .why-num{color:var(--accent-dim)}
.why-item:hover .why-num{color:var(--accent)}
.why-item h3{font-size:17px;font-weight:700;color:var(--text);margin-bottom:10px}
.why-item p{font-size:14px;color:var(--text-md);line-height:1.75}

/* ── PRICING ─────────────────────────────────────────── */
.pricing{background:var(--bg);padding:88px 0;transition:background .4s}
.pricing h2{font-size:clamp(32px,4.5vw,54px);font-weight:700;color:var(--text);margin-bottom:10px}
.pricing-sub{font-size:16px;color:var(--text-md);margin-bottom:52px}
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:start}
.price-card{
  background:var(--card-bg);border:1px solid var(--border2);
  border-radius:var(--radius-lg);padding:40px 32px;
  position:relative;transition:all var(--tr);
}
.price-card:hover{border-color:var(--accent);transform:translateY(-4px);box-shadow:0 0 0 1px var(--accent),var(--shadow)}
.price-card.price-featured{
  background:var(--accent);border-color:var(--accent);
  color:var(--bg);transform:scale(1.03);
  box-shadow:0 0 0 1px var(--accent),var(--shadow-lg);
}
.price-card.price-featured:hover{transform:scale(1.03) translateY(-4px);box-shadow:0 0 0 2px var(--accent2),var(--shadow-lg)}
.price-card.price-featured *{color:var(--bg) !important}
.price-card.price-featured .pc-tag{color:var(--accent) !important;background:var(--bg) !important}
.price-card.price-featured .btn-dark-price{color:var(--accent) !important;background:var(--bg) !important}
.pc-tag{
  position:absolute;top:-14px;left:50%;transform:translateX(-50%);
  background:var(--bg);color:var(--accent);font-size:11px;font-weight:700;
  padding:5px 16px;border-radius:100px;white-space:nowrap;
  border:1px solid var(--accent);transition:background .4s;
}
.pc-plan{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;opacity:.6;margin-bottom:10px}
.pc-price{font-family:'Space Grotesk',sans-serif;font-size:52px;font-weight:700;line-height:1;margin-bottom:10px;color:var(--text)}
.price-card.price-featured .pc-price{color:var(--bg)}
.pc-price sup{font-size:22px;vertical-align:top;margin-top:12px;display:inline-block;opacity:.7}
.pc-price sub{font-size:16px;font-weight:400;opacity:.55}
.pc-desc{font-size:14px;opacity:.7;margin-bottom:24px;line-height:1.65;color:var(--text-md)}
.price-card.price-featured .pc-desc{color:var(--bg);opacity:.78}
.price-card ul{list-style:none;display:flex;flex-direction:column;gap:10px;margin-bottom:28px}
.price-card li{font-size:14px;display:flex;gap:9px;align-items:flex-start;line-height:1.5;color:var(--text-md)}
.price-card.price-featured li{color:var(--bg);opacity:.9}
.price-card li::before{content:'✓';font-weight:800;flex-shrink:0;margin-top:1px;color:var(--accent)}
.price-card.price-featured li::before{color:var(--bg) !important}
.btn-outline-price{
  display:block;text-align:center;padding:13px 20px;border-radius:100px;
  border:1.5px solid var(--border2);font-weight:700;font-size:14px;
  color:var(--text-md);transition:all var(--tr);font-family:'Space Grotesk',sans-serif;
}
.btn-outline-price:hover{border-color:var(--accent);color:var(--accent)}
.btn-dark-price{
  display:block;text-align:center;padding:13px 20px;border-radius:100px;
  background:var(--bg);font-weight:700;font-size:14px;
  color:var(--accent);transition:all var(--tr);font-family:'Space Grotesk',sans-serif;
  border:none;
}
.btn-dark-price:hover{opacity:.85;transform:translateY(-2px)}
.pricing-note{text-align:center;margin-top:28px;font-size:14px;color:var(--text-lt)}
.pricing-note a{color:var(--accent);font-weight:700}

/* ── FAQ ─────────────────────────────────────────────── */
.faq{background:var(--surface);padding:88px 0;transition:background .4s}
.faq h2{font-size:clamp(32px,4.5vw,54px);font-weight:700;color:var(--text);margin-bottom:48px}
.faq-list{border-top:1px solid var(--border)}
.faq-item{border-bottom:1px solid var(--border)}
.faq-q{
  width:100%;display:flex;justify-content:space-between;align-items:center;gap:20px;
  padding:22px 0;background:none;border:none;text-align:left;
  font-family:'Space Grotesk',sans-serif;font-size:17px;font-weight:600;
  color:var(--text);cursor:pointer;transition:color var(--tr);
}
.faq-q:hover{color:var(--accent)}
.faq-ic{font-size:22px;font-weight:300;color:var(--accent);flex-shrink:0;transition:transform var(--tr);line-height:1}
.faq-item.open .faq-ic{transform:rotate(45deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .4s ease}
.faq-a p{padding:0 0 22px;font-size:15px;color:var(--text-md);line-height:1.8}
.faq-item.open .faq-a{max-height:220px}

/* ── CTA BANNER ──────────────────────────────────────── */
.cta-banner{background:var(--accent);padding:88px 0;position:relative;overflow:hidden;transition:background .4s}
.cta-banner::before{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");opacity:.04;pointer-events:none}
.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:40px;flex-wrap:wrap;position:relative;z-index:1}
.cta-text .label{color:var(--bg);border-color:var(--bg);background:var(--border)}
.cta-text h2{font-size:clamp(28px,4.5vw,54px);font-weight:700;color:var(--bg);margin-bottom:12px;line-height:1.1}
.cta-text p{font-size:16px;color:var(--bg);opacity:.75;max-width:480px;line-height:1.75}
.cta-actions{display:flex;gap:14px;flex-wrap:wrap}
.btn-dark-lg{
  display:inline-flex;align-items:center;gap:8px;background:var(--bg);
  color:var(--accent);font-family:'Space Grotesk',sans-serif;font-weight:700;
  font-size:15px;padding:15px 30px;border-radius:100px;transition:all var(--tr);
}
.btn-dark-lg:hover{background:var(--surface);transform:translateY(-2px);box-shadow:var(--shadow)}
.btn-ghost-dark{
  display:inline-flex;align-items:center;background:transparent;color:var(--bg);
  font-weight:700;font-size:15px;padding:15px 30px;border-radius:100px;
  border:2px solid var(--bg);transition:all var(--tr);
}
.btn-ghost-dark:hover{background:var(--bg);color:var(--accent)}

/* ── CONTACT ─────────────────────────────────────────── */
.contact{background:var(--bg);padding:88px 0;transition:background .4s}
.contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:72px;align-items:start}
.contact-left h2{font-size:clamp(32px,4vw,52px);font-weight:700;color:var(--text);margin-bottom:18px;line-height:1.1}
.contact-left>p{font-size:15px;color:var(--text-md);line-height:1.8;margin-bottom:40px}
.contact-details{display:flex;flex-direction:column;gap:20px}
.cd-item{display:flex;gap:14px;align-items:flex-start}
.cd-icon{font-size:17px;width:40px;height:40px;background:var(--accent-dim);border:1px solid var(--accent-dim);border-radius:9px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.cd-item strong{display:block;font-size:13px;color:var(--text);font-weight:700;margin-bottom:3px}
.cd-item p,.cd-item a{font-size:13px;color:var(--text-md);line-height:1.6;margin:0;display:block}
.cd-item a:hover{color:var(--accent)}
.contact-form{
  background:var(--card-bg);border:1px solid var(--border2);
  border-radius:var(--radius-lg);padding:40px 36px;
}
.contact-form h3{font-family:'Space Grotesk',sans-serif;font-size:20px;font-weight:700;color:var(--text);margin-bottom:24px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
.form-group label{font-size:11px;font-weight:700;color:var(--text-lt);letter-spacing:.07em;text-transform:uppercase}
.form-group input,.form-group select,.form-group textarea{
  background:var(--input-bg);border:1px solid var(--border2);
  border-radius:8px;padding:11px 14px;font-size:14px;font-family:inherit;
  color:var(--text);outline:none;transition:border-color var(--tr),box-shadow var(--tr);
  -webkit-appearance:none;
}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{
  border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim);
}
.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-lt)}
.form-group select{color:var(--text-md)}
[data-theme="light"] .form-group select option{background:var(--bg)}
.form-group select option{background:var(--surface2)}
.char-count{font-size:11px;color:var(--text-lt);text-align:right;margin-top:3px}
.char-count.near-limit{color:orange}
.char-count.at-limit{color:#ef4444}
.form-group textarea{resize:vertical;min-height:96px}
.recaptcha-wrap{margin:8px 0 14px}
.form-note{text-align:center;font-size:11px;color:var(--text-lt);margin-top:8px;line-height:1.6}
.form-success{background:var(--accent-dim);border:1px solid var(--accent-dim);color:var(--accent);border-radius:8px;padding:14px;text-align:center;margin-top:14px;font-size:14px;font-weight:600}
.form-error{background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.2);color:#f87171;border-radius:8px;padding:14px;text-align:center;margin-top:14px;font-size:14px;font-weight:600}

/* ── FOOTER ──────────────────────────────────────────── */
.footer{background:var(--surface);border-top:1px solid var(--border);padding:72px 0 0;transition:background .4s}
.footer-top{display:grid;grid-template-columns:1.4fr 2fr;gap:72px;padding-bottom:56px;border-bottom:1px solid var(--border)}
.footer-brand .nav-logo{margin-bottom:14px}
.footer-brand p{font-size:13px;color:var(--text-lt);line-height:1.8;max-width:270px;margin-bottom:18px}
.footer-certs{display:flex;gap:7px;flex-wrap:wrap}
.footer-certs span{background:var(--accent-dim);border:1px solid var(--accent-dim);color:var(--accent);font-size:11px;font-weight:600;padding:4px 11px;border-radius:6px}
.footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.fc h4{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-lt);margin-bottom:14px}
.fc a,.fc p{display:block;font-size:13px;color:var(--text-md);margin-bottom:9px;transition:color var(--tr);line-height:1.5}
.fc a:hover{color:var(--accent)}
.footer-bot-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;padding:18px 0}
.footer-bot-inner p{font-size:12px;color:var(--text-lt)}
.footer-bot-inner div{display:flex;gap:20px;align-items:center}
.footer-bot-inner a{font-size:12px;color:var(--text-lt);transition:color var(--tr)}
.footer-bot-inner a:hover{color:var(--accent)}
.admin-link{
  font-size:11px;color:var(--text-lt);display:inline-flex;align-items:center;
  gap:5px;padding:4px 10px;border:1px solid var(--border2);border-radius:100px;
  transition:all var(--tr);
}
.admin-link:hover{border-color:var(--accent);color:var(--accent)}

/* ── MOBILE ──────────────────────────────────────────── */
@media(max-width:1024px){
  .about{grid-template-columns:1fr}
  .about-img{height:420px}
  .about-img-overlay{background:linear-gradient(to top,var(--surface) 15%,transparent 60%)}
  .about-content{padding:48px 32px}
  .pricing-grid{grid-template-columns:1fr;max-width:380px;margin:0 auto}
  .price-card.price-featured{transform:none}
  .contact-grid{grid-template-columns:1fr;gap:48px}
  .process-steps{grid-template-columns:repeat(2,1fr);gap:40px}
  .process-steps::before{display:none}
  .why-grid{grid-template-columns:repeat(2,1fr)}
  .split-header{grid-template-columns:1fr;gap:18px}
}

@media(max-width:768px){
  .nav-links,.nav-cta{display:none}
  .nav-toggle{display:flex}
  .nav-wrap{height:60px}
  .stats-grid{flex-wrap:wrap}
  .stat-divider{display:none}
  .stat-item{min-width:44%;padding:16px 20px}
  .svc-row{grid-template-columns:44px 1fr 40px;gap:12px}
  .svc-badge{display:none}
  .process-steps{grid-template-columns:1fr;gap:32px}
  .cert-cards{flex-direction:column;align-items:center}
  .why-grid{grid-template-columns:1fr}
  .cta-inner{flex-direction:column;text-align:center}
  .cta-text p{margin:0 auto}
  .footer-top{grid-template-columns:1fr;gap:40px}
  .footer-links{grid-template-columns:repeat(2,1fr)}
  .footer-bot-inner{flex-direction:column;text-align:center}
  .form-row{grid-template-columns:1fr}
  .hero-trust{display:none}
  .hero-badges{display:none}
  .hero-inner{padding:72px 28px 100px}
}

@media(max-width:480px){
  .hero-title{font-size:46px}
  .footer-links{grid-template-columns:1fr}
  .recaptcha-wrap{transform:scale(.86);transform-origin:left center}
  .svc-row.expanded,.svc-row:hover{padding-left:20px}
  .why-grid{gap:1px}
}

/* ── TRUST CHIPS (About section) ─────────────────────── */
.about-trust-row{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 20px}
.trust-chip{
  display:inline-flex;align-items:center;gap:6px;
  background:var(--accent-dim);color:var(--accent);
  border:1px solid var(--accent);border-radius:100px;
  padding:4px 12px;font-size:12px;font-weight:600;
}

/* ── CHAR COUNTER (Contact form) ─────────────────────── */
.char-limit-hint{font-size:11px;color:var(--text-lt);font-weight:400}
.char-counter{
  text-align:right;font-size:11px;color:var(--text-lt);
  margin-top:4px;transition:color var(--tr);
}

/* ── FOOTER ADMIN LINK ───────────────────────────────── */
.footer-admin-link{opacity:.35;font-size:11px}
.footer-admin-link:hover{opacity:.7;color:var(--accent)}

/* ── SMOOTH THEME TRANSITION ──────────────────────────── */
body,body *{transition:background-color .35s ease,border-color .35s ease,color .25s ease}
body *{transition-property:background-color,border-color}
.reveal-up,.reveal-load,.toggle-thumb,.scroll-line-inner,.eyebrow-dot{transition-property:opacity,transform,background-color,border-color}
