/* ============================================================
   styles.css — consolidated stylesheet for all OptiSEOn pages
   Replaces optiseon.css and every per-page <style> block.
   Layers: 1) base  2) shared components  3) page-specific
           4) utility classes (from former inline styles)
   Page scoping uses the class on <body> (e.g. body.pg-about).
   ============================================================ */

/* ─────────────── 1. BASE (design system) ─────────────── */
/* =============================================================
   optiseon.css — Shared stylesheet for all OptiSEOn pages
   Covers: reset, variables, nav, footer, buttons, sections,
           hero, components, animations, responsive, mobile nav
   Link in every page: <link rel="stylesheet" href="/optiseon.css">
   ============================================================= */
/* ── GOOGLE FONTS ── */
/* Add in <head> before this sheet:
   <link rel="preconnect" href="https://fonts.googleapis.com">
   <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
   <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap" rel="stylesheet">
*/
/* ── RESET ── */
body:where(:not(.pg-standalone)), body:where(:not(.pg-standalone)) *,
body:where(:not(.pg-standalone))::before, body:where(:not(.pg-standalone)) *::before,
body:where(:not(.pg-standalone))::after, body:where(:not(.pg-standalone)) *::after { box-sizing: border-box; margin: 0; padding: 0; }
/* ── DESIGN TOKENS ── */
:root {
  --bg:       #0a0a0a;
  --bg2:      #111111;
  --bg3:      #1a1a1a;
  --green:    #3dd639;
  --green-dim:#2a9e26;
  --white:    #ffffff;
  --gray:     #888888;
  --gray-lt:  #cccccc;
  --border:   rgba(61,214,57,0.15);
  --border2:  rgba(61,214,57,0.3);
  --card-bg:  #111111;
  /* Accent palette */
  --purple:   #b07ee8;
  --purple-bg:rgba(123,47,190,0.12);
  --purple-b: rgba(123,47,190,0.35);
  --blue:     #5dade2;
  --blue-bg:  rgba(41,128,185,0.12);
  --blue-b:   rgba(41,128,185,0.28);
  --amber:    #f0b429;
  --amber-bg: rgba(230,168,23,0.12);
  --amber-b:  rgba(230,168,23,0.28);
  --teal:     #4ecdc4;
  --teal-bg:  rgba(14,138,138,0.12);
  --teal-b:   rgba(14,138,138,0.28);
  --font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}
/* ── BASE ── */
html { scroll-behavior: smooth; }
body:where(:not(.pg-standalone)) {
  background: var(--bg);
  color: var(--white);
  font-family: var(--font);
  font-size: 14px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}
body:where(:not(.pg-standalone))::before {
  content: '';
  position: fixed; inset: 0;
  background-image: radial-gradient(rgba(61,214,57,0.07) 1px, transparent 1px);
  background-size: 32px 32px;
  pointer-events: none; z-index: 0;
}
body:where(:not(.pg-standalone)) a { color: inherit; text-decoration: none; }
body:where(:not(.pg-standalone)) .wrap {
  position: relative; z-index: 1;
  max-width: 1100px; margin: 0 auto; padding: 0 32px;
}
/* ── NAV ── */
body:where(:not(.pg-standalone)) nav {
  display: flex; align-items: center; justify-content: space-between;
  padding: 20px 0; border-bottom: 1px solid var(--border);
  position: sticky; top: 0; background: rgba(10,10,10,0.95);
  backdrop-filter: blur(8px); z-index: 100;
}
body:where(:not(.pg-standalone)) .nav-logo img { height: 32px; display: block; }
body:where(:not(.pg-standalone)) .nav-links { display: flex; align-items: center; gap: 32px; list-style: none; }
body:where(:not(.pg-standalone)) .nav-links a { color: var(--gray-lt); text-decoration: none; font-size: 13px; letter-spacing: 0.04em; transition: color 0.2s; }
body:where(:not(.pg-standalone)) .nav-links a:hover,
body:where(:not(.pg-standalone)) .nav-links a.active { color: var(--green); }
body:where(:not(.pg-standalone)) .nav-cta {
  background: var(--green) !important; color: #000 !important;
  font-weight: 700; padding: 9px 20px !important; border-radius: 4px;
  font-size: 13px !important; transition: background 0.2s !important;
}
body:where(:not(.pg-standalone)) .nav-cta:hover { background: #4fe84b !important; }
/* ── BUTTONS ── */
body:where(:not(.pg-standalone)) .btn-green {
  background: var(--green); color: #000; font-family: var(--font); font-weight: 700;
  font-size: 15px; padding: 16px 32px; border-radius: 4px; text-decoration: none;
  transition: background 0.2s, transform 0.15s; letter-spacing: 0.02em; display: inline-block;
}
body:where(:not(.pg-standalone)) .btn-green:hover { background: #4fe84b; transform: translateY(-1px); }
body:where(:not(.pg-standalone)) .btn-outline {
  background: transparent; color: var(--white); font-family: var(--font); font-size: 15px;
  padding: 15px 32px; border-radius: 4px; text-decoration: none; display: inline-block;
  border: 1px solid rgba(255,255,255,0.2); transition: border-color 0.2s, background 0.2s;
}
body:where(:not(.pg-standalone)) .btn-outline:hover { border-color: rgba(255,255,255,0.5); background: rgba(255,255,255,0.04); }
body:where(:not(.pg-standalone)) .btn-green-sm {
  background: var(--green); color: #000; font-family: var(--font); font-weight: 700;
  font-size: 13px; padding: 11px 22px; border-radius: 4px; text-decoration: none;
  transition: background 0.2s; display: inline-block;
}
body:where(:not(.pg-standalone)) .btn-green-sm:hover { background: #4fe84b; }
body:where(:not(.pg-standalone)) .btn-outline-sm {
  background: transparent; color: var(--gray-lt); font-family: var(--font); font-size: 13px;
  padding: 10px 22px; border-radius: 4px; text-decoration: none; display: inline-block;
  border: 1px solid var(--border); transition: border-color 0.2s, color 0.2s;
}
body:where(:not(.pg-standalone)) .btn-outline-sm:hover { border-color: var(--border2); color: var(--green); }
/* ── SECTIONS ── */
body:where(:not(.pg-standalone)) .section { padding: 88px 0; }
body:where(:not(.pg-standalone)) .section + .section { border-top: 1px solid var(--border); }
body:where(:not(.pg-standalone)) .section-head { text-align: center; margin-bottom: 60px; }
body:where(:not(.pg-standalone)) .section-label {
  color: var(--green); font-size: 11px; letter-spacing: 0.22em;
  text-transform: uppercase; margin-bottom: 14px; display: block;
}
body:where(:not(.pg-standalone)) .section-title {
  font-size: clamp(30px, 4vw, 44px); font-weight: 800; color: var(--white);
  letter-spacing: -0.025em; margin-bottom: 18px; line-height: 1.12;
}
body:where(:not(.pg-standalone)) .section-title .green { color: var(--green); }
body:where(:not(.pg-standalone)) .section-sub { font-size: 16px; color: var(--gray-lt); max-width: 580px; margin: 0 auto; line-height: 1.75; }
/* ── HERO (home page) ── */
body:where(:not(.pg-standalone)) .hero {
  min-height: 92vh; display: flex; align-items: center;
  padding: 100px 0 80px; text-align: center;
  border-bottom: 1px solid var(--border); position: relative; overflow: hidden;
}
body:where(:not(.pg-standalone)) .hero::after {
  content: ''; position: absolute; width: 900px; height: 600px;
  background: radial-gradient(ellipse, rgba(61,214,57,0.1) 0%, rgba(61,214,57,0.04) 40%, transparent 70%);
  top: 50%; left: 50%; transform: translate(-50%, -60%); pointer-events: none; z-index: 0;
}
body:where(:not(.pg-standalone)) .hero > .wrap { position: relative; z-index: 1; width: 100%; }
body:where(:not(.pg-standalone)) .hero-eyebrow {
  display: inline-flex; align-items: center; gap: 8px;
  background: rgba(61,214,57,0.08); border: 1px solid var(--border2);
  color: var(--green); font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase;
  padding: 7px 18px; border-radius: 20px; margin-bottom: 32px;
}
body:where(:not(.pg-standalone)) .eyebrow-dot {
  width: 6px; height: 6px; background: var(--green); border-radius: 50%;
  animation: pulse 2s ease infinite;
}
@keyframes pulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:0.5;transform:scale(0.8)} }
body:where(:not(.pg-standalone)) .hero h1 {
  font-size: clamp(44px, 8vw, 88px); font-weight: 800; line-height: 1.0;
  letter-spacing: -0.04em; color: var(--white);
  margin-bottom: 28px; max-width: 900px; margin-left: auto; margin-right: auto;
}
body:where(:not(.pg-standalone)) .hero h1 .green { color: var(--green); }
body:where(:not(.pg-standalone)) .hero h1 .dim { color: rgba(255,255,255,0.4); }
body:where(:not(.pg-standalone)) .hero-sub {
  font-size: 18px; color: var(--gray-lt); max-width: 600px;
  margin: 0 auto 48px; line-height: 1.75; font-weight: 400;
}
body:where(:not(.pg-standalone)) .hero-buttons { display: flex; gap: 16px; justify-content: center; margin-bottom: 64px; flex-wrap: wrap; }
/* Trust badges */
body:where(:not(.pg-standalone)) .trust-strip {
  display: flex; gap: 0; justify-content: center;
  border: 1px solid var(--border); border-radius: 8px; overflow: hidden;
  max-width: 720px; margin: 0 auto; background: var(--bg2);
}
body:where(:not(.pg-standalone)) .trust-badge {
  flex: 1; padding: 16px 12px; text-align: center;
  border-right: 1px solid var(--border); transition: background 0.2s;
}
body:where(:not(.pg-standalone)) .trust-badge:last-child { border-right: none; }
body:where(:not(.pg-standalone)) .trust-badge:hover { background: var(--bg3); }
body:where(:not(.pg-standalone)) .trust-badge-icon { color: var(--green); margin-bottom: 7px; display: flex; justify-content: center; }
body:where(:not(.pg-standalone)) .trust-badge-text { font-size: 11px; color: var(--gray); letter-spacing: 0.04em; line-height: 1.4; }
/* ── TICKER ── */
body:where(:not(.pg-standalone)) .ticker-wrap {
  background: var(--bg2); border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border); padding: 16px 0; overflow: hidden; position: relative;
}
body:where(:not(.pg-standalone)) .ticker-wrap::before,
body:where(:not(.pg-standalone)) .ticker-wrap::after {
  content: ''; position: absolute; top: 0; bottom: 0; width: 80px; z-index: 2; pointer-events: none;
}
body:where(:not(.pg-standalone)) .ticker-wrap::before { left: 0; background: linear-gradient(90deg, var(--bg2), transparent); }
body:where(:not(.pg-standalone)) .ticker-wrap::after { right: 0; background: linear-gradient(-90deg, var(--bg2), transparent); }
body:where(:not(.pg-standalone)) .ticker-track { display: flex; width: max-content; animation: ticker 28s linear infinite; }
@keyframes ticker { from{transform:translateX(0)} to{transform:translateX(-50%)} }
body:where(:not(.pg-standalone)) .ticker-item {
  display: flex; align-items: center; gap: 8px; padding: 0 32px;
  border-right: 1px solid var(--border); white-space: nowrap;
  font-size: 12px; color: var(--gray); letter-spacing: 0.06em;
}
body:where(:not(.pg-standalone)) .ticker-item strong { color: var(--green); font-weight: 700; }
/* ── SERVICES 4-col ── */
body:where(:not(.pg-standalone)) .services-4 {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px;
  background: var(--border); border: 1px solid var(--border); border-radius: 8px; overflow: hidden;
}
body:where(:not(.pg-standalone)) .svc-card {
  background: var(--card-bg); padding: 32px 24px;
  position: relative; overflow: hidden; transition: background 0.25s;
  cursor: pointer; text-decoration: none; display: block;
}
body:where(:not(.pg-standalone)) .svc-card:hover { background: #161616; }
body:where(:not(.pg-standalone)) .svc-card::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px;
  background: var(--green); transform: scaleX(0); transform-origin: left;
  transition: transform 0.3s ease;
}
body:where(:not(.pg-standalone)) .svc-card:hover::before { transform: scaleX(1); }
body:where(:not(.pg-standalone)) .svc-card-num { font-size: 11px; color: rgba(61,214,57,0.4); letter-spacing: 0.2em; margin-bottom: 16px; font-weight: 600; }
body:where(:not(.pg-standalone)) .svc-card-icon { margin-bottom: 14px; display: block; color: var(--green); }
body:where(:not(.pg-standalone)) .svc-card-abbr {
  display: inline-block; background: rgba(61,214,57,0.1); border: 1px solid var(--border2);
  color: var(--green); font-size: 9px; font-weight: 700; letter-spacing: 0.16em;
  padding: 3px 10px; border-radius: 3px; margin-bottom: 12px; text-transform: uppercase;
}
body:where(:not(.pg-standalone)) .svc-card-title { font-size: 16px; font-weight: 700; color: var(--white); margin-bottom: 10px; letter-spacing: -0.01em; line-height: 1.25; }
body:where(:not(.pg-standalone)) .svc-card-desc { font-size: 12px; color: var(--gray); line-height: 1.65; margin-bottom: 18px; }
body:where(:not(.pg-standalone)) .svc-card-list { list-style: none; }
body:where(:not(.pg-standalone)) .svc-card-list li { font-size: 11px; color: #666; padding: 3px 0 3px 14px; position: relative; }
body:where(:not(.pg-standalone)) .svc-card-list li::before { content: '›'; position: absolute; left: 0; color: var(--green); font-weight: 700; }
body:where(:not(.pg-standalone)) .svc-card-link { font-size: 11px; color: var(--green); margin-top: 16px; display: block; font-weight: 600; letter-spacing: 0.04em; }
/* ── WHY SECTION ── */
body:where(:not(.pg-standalone)) .why-split { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center; }
body:where(:not(.pg-standalone)) .why-text .section-label { text-align: left; }
body:where(:not(.pg-standalone)) .why-text h2 { font-size: clamp(28px, 3.5vw, 42px); font-weight: 800; color: var(--white); letter-spacing: -0.025em; line-height: 1.12; margin-bottom: 18px; }
body:where(:not(.pg-standalone)) .why-text h2 .green { color: var(--green); }
body:where(:not(.pg-standalone)) .why-text p { font-size: 14px; color: var(--gray-lt); line-height: 1.85; margin-bottom: 16px; }
body:where(:not(.pg-standalone)) .why-checklist { list-style: none; margin: 24px 0 32px; }
body:where(:not(.pg-standalone)) .why-checklist li {
  display: flex; align-items: flex-start; gap: 12px;
  padding: 10px 0; border-bottom: 1px solid rgba(255,255,255,0.05);
  font-size: 13px; color: var(--gray-lt);
}
body:where(:not(.pg-standalone)) .why-checklist li:last-child { border-bottom: none; }
body:where(:not(.pg-standalone)) .why-checklist li .check-icon { color: var(--green); flex-shrink: 0; margin-top: 1px; }
body:where(:not(.pg-standalone)) .why-visual { display: flex; flex-direction: column; gap: 16px; }
body:where(:not(.pg-standalone)) .why-card {
  background: var(--bg2); border: 1px solid var(--border); border-radius: 8px;
  padding: 20px; display: flex; gap: 16px; align-items: flex-start;
  transition: border-color 0.2s, transform 0.2s;
}
body:where(:not(.pg-standalone)) .why-card:hover { border-color: var(--border2); transform: translateX(4px); }
body:where(:not(.pg-standalone)) .why-card-icon {
  width: 40px; height: 40px; background: rgba(61,214,57,0.1); border: 1px solid var(--border2);
  border-radius: 8px; display: flex; align-items: center; justify-content: center;
  color: var(--green); flex-shrink: 0;
}
body:where(:not(.pg-standalone)) .why-card-title { font-size: 14px; font-weight: 700; color: var(--white); margin-bottom: 4px; }
body:where(:not(.pg-standalone)) .why-card-desc { font-size: 12px; color: var(--gray); line-height: 1.55; }
body:where(:not(.pg-standalone)) .why-card-stat { font-size: 22px; font-weight: 800; color: var(--green); letter-spacing: -0.03em; margin-top: 4px; }
/* ── PROCESS ── */
body:where(:not(.pg-standalone)) .process-grid { display: grid; grid-template-columns: repeat(4, 1fr); position: relative; }
body:where(:not(.pg-standalone)) .process-grid::before {
  content: ''; position: absolute; top: 28px; left: 13%; right: 13%;
  height: 1px; background: linear-gradient(90deg, var(--green), rgba(61,214,57,0.1));
}
body:where(:not(.pg-standalone)) .proc-step { padding: 0 16px 0 0; position: relative; z-index: 1; }
body:where(:not(.pg-standalone)) .proc-num {
  width: 56px; height: 56px; border: 1px solid var(--green); border-radius: 50%;
  background: var(--bg); display: flex; align-items: center; justify-content: center;
  font-weight: 700; font-size: 15px; color: var(--green); margin-bottom: 18px;
}
body:where(:not(.pg-standalone)) .proc-title { font-size: 15px; font-weight: 700; color: var(--white); margin-bottom: 8px; }
body:where(:not(.pg-standalone)) .proc-desc { font-size: 12px; color: var(--gray); line-height: 1.65; }
/* ── STATS ── */
body:where(:not(.pg-standalone)) .stats-strip {
  background: var(--bg2); border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border); padding: 48px 0;
}
body:where(:not(.pg-standalone)) .stats-row { display: grid; grid-template-columns: repeat(5, 1fr); text-align: center; }
body:where(:not(.pg-standalone)) .stat-item { border-right: 1px solid var(--border); padding: 0 24px; }
body:where(:not(.pg-standalone)) .stat-item:last-child { border-right: none; }
body:where(:not(.pg-standalone)) .stat-num { font-size: 40px; font-weight: 800; color: var(--green); letter-spacing: -0.04em; line-height: 1; margin-bottom: 6px; }
body:where(:not(.pg-standalone)) .stat-label { font-size: 11px; color: var(--gray); letter-spacing: 0.08em; text-transform: uppercase; line-height: 1.4; }
/* ── WHAT WE DO ── */
body:where(:not(.pg-standalone)) .what-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
body:where(:not(.pg-standalone)) .what-card {
  background: var(--card-bg); border: 1px solid var(--border); border-radius: 10px;
  padding: 32px; position: relative; overflow: hidden; transition: border-color 0.25s, transform 0.2s;
}
body:where(:not(.pg-standalone)) .what-card:hover { border-color: var(--border2); transform: translateY(-2px); }
body:where(:not(.pg-standalone)) .what-card::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px;
  background: var(--green); opacity: 0; transition: opacity 0.25s;
}
body:where(:not(.pg-standalone)) .what-card:hover::before { opacity: 1; }
body:where(:not(.pg-standalone)) .what-card-header { display: flex; align-items: center; gap: 14px; margin-bottom: 18px; }
body:where(:not(.pg-standalone)) .what-card-icon {
  width: 48px; height: 48px; background: rgba(61,214,57,0.1); border: 1px solid var(--border2);
  border-radius: 10px; display: flex; align-items: center; justify-content: center;
  color: var(--green); flex-shrink: 0;
}
body:where(:not(.pg-standalone)) .what-card-abbr {
  display: inline-block; background: rgba(61,214,57,0.1); border: 1px solid var(--border2);
  color: var(--green); font-size: 9px; font-weight: 700; letter-spacing: 0.14em;
  padding: 3px 8px; border-radius: 3px; margin-bottom: 4px; text-transform: uppercase;
}
body:where(:not(.pg-standalone)) .what-card-title { font-size: 18px; font-weight: 700; color: var(--white); letter-spacing: -0.01em; }
body:where(:not(.pg-standalone)) .what-card-desc { font-size: 13px; color: var(--gray-lt); line-height: 1.75; margin-bottom: 18px; }
body:where(:not(.pg-standalone)) .what-bullets { list-style: none; display: grid; grid-template-columns: 1fr 1fr; gap: 6px 20px; }
body:where(:not(.pg-standalone)) .what-bullets li { font-size: 12px; color: #777; padding-left: 14px; position: relative; }
body:where(:not(.pg-standalone)) .what-bullets li::before { content: '›'; position: absolute; left: 0; color: var(--green); font-weight: 700; }
/* ── PRICING CARDS ── */
body:where(:not(.pg-standalone)) .pricing-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; align-items: start; }
body:where(:not(.pg-standalone)) .price-card {
  background: var(--card-bg); border: 1px solid var(--border); border-radius: 10px;
  padding: 36px 28px; position: relative; transition: border-color 0.2s;
}
body:where(:not(.pg-standalone)) .price-card:hover { border-color: var(--border2); }
body:where(:not(.pg-standalone)) .price-card.featured { border-color: var(--green); background: var(--bg2); transform: scale(1.03); }
body:where(:not(.pg-standalone)) .price-pop {
  position: absolute; top: -13px; left: 50%; transform: translateX(-50%);
  background: var(--green); color: #000; font-weight: 700; font-size: 10px;
  letter-spacing: 0.12em; padding: 4px 16px; border-radius: 20px;
  white-space: nowrap; text-transform: uppercase;
}
body:where(:not(.pg-standalone)) .price-tier { font-size: 10px; color: var(--green); letter-spacing: 0.18em; text-transform: uppercase; margin-bottom: 6px; }
body:where(:not(.pg-standalone)) .price-name { font-size: 24px; font-weight: 700; color: var(--white); margin-bottom: 4px; letter-spacing: -0.02em; }
body:where(:not(.pg-standalone)) .price-tagline { font-size: 12px; color: var(--gray); margin-bottom: 24px; font-style: italic; }
body:where(:not(.pg-standalone)) .price-amount { font-size: 52px; font-weight: 800; color: var(--green); letter-spacing: -0.04em; line-height: 1; margin-bottom: 4px; }
body:where(:not(.pg-standalone)) .price-amount sup { font-size: 24px; vertical-align: top; margin-top: 10px; }
body:where(:not(.pg-standalone)) .price-amount span { font-size: 17px; color: var(--gray); font-weight: 400; }
body:where(:not(.pg-standalone)) .price-note { font-size: 11px; color: #555; margin-bottom: 4px; }
body:where(:not(.pg-standalone)) .price-divider { height: 1px; background: var(--border); margin: 22px 0; }
body:where(:not(.pg-standalone)) .price-features { list-style: none; margin-bottom: 28px; }
body:where(:not(.pg-standalone)) .price-features li {
  font-size: 12px; color: var(--gray-lt); padding: 7px 0 7px 22px;
  position: relative; border-bottom: 1px solid rgba(255,255,255,0.04);
}
body:where(:not(.pg-standalone)) .price-features li:last-child { border-bottom: none; }
body:where(:not(.pg-standalone)) .price-features li::before { content: ''; position: absolute; left: 0; top: 10px; }
/* SVG check icon injected by JS or use class */
body:where(:not(.pg-standalone)) .price-features li .feat-check { position: absolute; left: 0; top: 8px; color: var(--green); }
body:where(:not(.pg-standalone)) .price-features li.na { color: #444; }
body:where(:not(.pg-standalone)) .price-features li.na .feat-check { color: #333; }
body:where(:not(.pg-standalone)) .price-btn { display: block; text-align: center; padding: 14px; border-radius: 6px; font-weight: 700; font-size: 13px; text-decoration: none; transition: all 0.2s; letter-spacing: 0.04em; }
body:where(:not(.pg-standalone)) .price-btn-outline { border: 1px solid var(--border2); color: var(--green); }
body:where(:not(.pg-standalone)) .price-btn-outline:hover { background: rgba(61,214,57,0.08); }
body:where(:not(.pg-standalone)) .price-btn-solid { background: var(--green); color: #000; }
body:where(:not(.pg-standalone)) .price-btn-solid:hover { background: #4fe84b; }
/* ── TESTIMONIALS ── */
body:where(:not(.pg-standalone)) .testi-wrap {
  background: var(--bg2); border: 1px solid var(--border); border-radius: 12px; padding: 56px 48px;
}
body:where(:not(.pg-standalone)) .testi-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; }
body:where(:not(.pg-standalone)) .testi-stars { color: var(--green); font-size: 14px; letter-spacing: 3px; margin-bottom: 16px; }
body:where(:not(.pg-standalone)) .testi-quote { font-size: 14px; color: var(--gray-lt); line-height: 1.8; font-style: italic; margin-bottom: 20px; }
body:where(:not(.pg-standalone)) .testi-divider { height: 1px; background: var(--border); margin-bottom: 14px; }
body:where(:not(.pg-standalone)) .testi-name { font-size: 13px; font-weight: 700; color: var(--white); }
body:where(:not(.pg-standalone)) .testi-role { font-size: 11px; color: var(--gray); margin-top: 2px; }
/* ── FAQ ── */
body:where(:not(.pg-standalone)) .faq-2col { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
body:where(:not(.pg-standalone)) .faq-item { border: 1px solid var(--border); border-radius: 8px; overflow: hidden; transition: border-color 0.2s; }
body:where(:not(.pg-standalone)) .faq-item:hover { border-color: var(--border2); }
body:where(:not(.pg-standalone)) .faq-item.open { border-color: var(--border2); }
body:where(:not(.pg-standalone)) .faq-q {
  padding: 16px 20px; font-size: 13px; font-weight: 600; color: var(--white);
  cursor: pointer; display: flex; justify-content: space-between; align-items: center;
  background: var(--card-bg); user-select: none;
}
body:where(:not(.pg-standalone)) .faq-q:hover { color: var(--green); }
body:where(:not(.pg-standalone)) .faq-icon { color: var(--green); font-size: 18px; transition: transform 0.2s; flex-shrink: 0; margin-left: 12px; }
body:where(:not(.pg-standalone)) .faq-a {
  padding: 0 20px; max-height: 0; overflow: hidden;
  transition: max-height 0.3s ease, padding 0.3s ease;
  font-size: 12px; color: var(--gray); line-height: 1.75; background: var(--bg2);
}
body:where(:not(.pg-standalone)) .faq-item.open .faq-a { max-height: 300px; padding: 14px 20px 20px; }
body:where(:not(.pg-standalone)) .faq-item.open .faq-icon { transform: rotate(45deg); }
/* ── CTA BANNER ── */
body:where(:not(.pg-standalone)) .cta-banner {
  background: var(--bg2); border: 1px solid var(--border); border-radius: 12px;
  padding: 80px 48px; text-align: center; position: relative; overflow: hidden; margin: 88px 0;
}
body:where(:not(.pg-standalone)) .cta-banner::before {
  content: ''; position: absolute; inset: 0;
  background: radial-gradient(ellipse 70% 65% at 50% 50%, rgba(61,214,57,0.08) 0%, transparent 70%);
}
body:where(:not(.pg-standalone)) .cta-banner > * { position: relative; z-index: 1; }
body:where(:not(.pg-standalone)) .cta-label { color: var(--green); font-size: 11px; letter-spacing: 0.22em; text-transform: uppercase; margin-bottom: 16px; display: block; }
body:where(:not(.pg-standalone)) .cta-title { font-size: clamp(32px, 5vw, 56px); font-weight: 800; color: var(--white); letter-spacing: -0.03em; margin-bottom: 18px; line-height: 1.08; }
body:where(:not(.pg-standalone)) .cta-title .green { color: var(--green); }
body:where(:not(.pg-standalone)) .cta-desc { font-size: 16px; color: var(--gray-lt); max-width: 500px; margin: 0 auto 40px; line-height: 1.75; }
body:where(:not(.pg-standalone)) .cta-btns { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; margin-bottom: 24px; }
body:where(:not(.pg-standalone)) .cta-sub { font-size: 12px; color: #555; }
body:where(:not(.pg-standalone)) .cta-sub a { color: var(--gray); text-decoration: none; transition: color 0.2s; }
body:where(:not(.pg-standalone)) .cta-sub a:hover { color: var(--green); }
/* ── BREADCRUMB ── */
body:where(:not(.pg-standalone)) .breadcrumb-bar { background: var(--bg2); border-bottom: 1px solid var(--border); }
body:where(:not(.pg-standalone)) .breadcrumb {
  padding: 14px 0; font-size: 12px; color: var(--gray);
  display: flex; align-items: center; gap: 0; flex-wrap: wrap;
}
body:where(:not(.pg-standalone)) .breadcrumb a { color: var(--gray); text-decoration: none; transition: color 0.2s; }
body:where(:not(.pg-standalone)) .breadcrumb a:hover { color: var(--green); }
body:where(:not(.pg-standalone)) .breadcrumb-sep { color: var(--green); margin: 0 8px; }
body:where(:not(.pg-standalone)) .breadcrumb-current { color: var(--gray-lt); }
/* ── FOOTER ── */
body:where(:not(.pg-standalone)) footer { border-top: 1px solid var(--border); padding: 64px 0 36px; }
body:where(:not(.pg-standalone)) .footer-top { display: grid; grid-template-columns: 2.2fr 1fr 1fr 1fr; gap: 48px; margin-bottom: 48px; }
body:where(:not(.pg-standalone)) .footer-brand img { height: 28px; margin-bottom: 18px; display: block; }
body:where(:not(.pg-standalone)) .footer-brand p { font-size: 12px; color: var(--gray); line-height: 1.75; max-width: 240px; margin-bottom: 20px; }
body:where(:not(.pg-standalone)) .footer-social { display: flex; gap: 10px; flex-wrap: wrap; }
body:where(:not(.pg-standalone)) .social-btn {
  width: 34px; height: 34px; border: 1px solid var(--border); border-radius: 6px;
  display: flex; align-items: center; justify-content: center;
  text-decoration: none; transition: border-color 0.2s, background 0.2s; color: var(--gray);
}
body:where(:not(.pg-standalone)) .social-btn:hover { border-color: var(--border2); background: rgba(61,214,57,0.08); color: var(--green); }
body:where(:not(.pg-standalone)) .footer-col h4 { font-weight: 700; font-size: 12px; color: var(--white); letter-spacing: 0.12em; text-transform: uppercase; margin-bottom: 16px; }
body:where(:not(.pg-standalone)) .footer-col ul { list-style: none; }
body:where(:not(.pg-standalone)) .footer-col li { margin-bottom: 10px; }
body:where(:not(.pg-standalone)) .footer-col a { font-size: 12px; color: var(--gray); text-decoration: none; transition: color 0.2s; }
body:where(:not(.pg-standalone)) .footer-col a:hover { color: var(--green); }
body:where(:not(.pg-standalone)) .footer-bottom {
  border-top: 1px solid var(--border); padding-top: 28px;
  display: flex; align-items: center; justify-content: space-between;
}
body:where(:not(.pg-standalone)) .footer-copy { font-size: 11px; color: #444; letter-spacing: 0.06em; }
body:where(:not(.pg-standalone)) .footer-loc { font-size: 11px; color: #444; display: flex; align-items: center; gap: 6px; }
/* ── ANIMATIONS ── */
@keyframes fadeUp { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }
body:where(:not(.pg-standalone)) .hero-eyebrow { animation: fadeUp 0.5s ease 0.1s both; }
body:where(:not(.pg-standalone)) .hero h1 { animation: fadeUp 0.65s ease 0.22s both; }
body:where(:not(.pg-standalone)) .hero-sub { animation: fadeUp 0.65s ease 0.36s both; }
body:where(:not(.pg-standalone)) .hero-buttons { animation: fadeUp 0.65s ease 0.48s both; }
body:where(:not(.pg-standalone)) .trust-strip { animation: fadeUp 0.65s ease 0.58s both; }
/* ── RESPONSIVE NAV ── */
body:where(:not(.pg-standalone)) .nav-hamburger {
  display: none;
  align-items: center; justify-content: center; flex-direction: column;
  gap: 5px; width: 36px; height: 36px; cursor: pointer;
  border: 1px solid rgba(61,214,57,0.3); border-radius: 6px;
  background: transparent; flex-shrink: 0; padding: 0;
}
body:where(:not(.pg-standalone)) .nav-hamburger:hover { border-color: rgba(61,214,57,0.6); }
body:where(:not(.pg-standalone)) .nav-hamburger span {
  display: block; width: 18px; height: 2px; background: #fff;
  border-radius: 2px; transition: transform 0.28s ease, opacity 0.18s ease;
  transform-origin: center;
}
body:where(:not(.pg-standalone)) .nav-hamburger.open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
body:where(:not(.pg-standalone)) .nav-hamburger.open span:nth-child(2) { opacity: 0; }
body:where(:not(.pg-standalone)) .nav-hamburger.open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
body:where(:not(.pg-standalone)) #mob-backdrop {
  position: fixed; inset: 0; background: rgba(0,0,0,0.65);
  z-index: 980; opacity: 0; visibility: hidden;
  transition: opacity 0.25s, visibility 0.25s;
}
body:where(:not(.pg-standalone)) #mob-backdrop.open { opacity: 1; visibility: visible; }
body:where(:not(.pg-standalone)) #mob-drawer {
  position: fixed; top: 0; right: 0; bottom: 0; width: min(300px, 84vw);
  background: #0e0e0e; border-left: 1px solid rgba(61,214,57,0.15);
  z-index: 990; display: flex; flex-direction: column;
  transform: translateX(100%); transition: transform 0.3s cubic-bezier(0.4,0,0.2,1);
  overflow-y: auto;
}
body:where(:not(.pg-standalone)) #mob-drawer.open { transform: translateX(0); }
body:where(:not(.pg-standalone)) .mob-drawer-head {
  display: flex; align-items: center; justify-content: space-between;
  padding: 18px 20px; border-bottom: 1px solid rgba(61,214,57,0.12); flex-shrink: 0;
}
body:where(:not(.pg-standalone)) .mob-drawer-head img { height: 26px; display: block; }
body:where(:not(.pg-standalone)) .mob-close-btn {
  display: flex; align-items: center; justify-content: center;
  width: 32px; height: 32px; border: 1px solid rgba(61,214,57,0.2);
  border-radius: 6px; background: transparent; color: #aaa;
  font-size: 16px; line-height: 1; cursor: pointer; font-family: inherit;
  transition: border-color 0.2s, color 0.2s;
}
body:where(:not(.pg-standalone)) .mob-close-btn:hover { border-color: rgba(61,214,57,0.5); color: #3dd639; }
body:where(:not(.pg-standalone)) .mob-nav-links { list-style: none; padding: 8px 0; flex: 1; }
body:where(:not(.pg-standalone)) .mob-nav-links li { border-bottom: 1px solid rgba(255,255,255,0.05); }
body:where(:not(.pg-standalone)) .mob-nav-links li:last-child { border-bottom: none; }
body:where(:not(.pg-standalone)) .mob-nav-links a {
  display: block; padding: 14px 20px; font-size: 15px; font-weight: 500;
  color: #cccccc; text-decoration: none; border-left: 2px solid transparent;
  transition: color 0.2s, background 0.2s, border-color 0.2s;
}
body:where(:not(.pg-standalone)) .mob-nav-links a:hover,
body:where(:not(.pg-standalone)) .mob-nav-links a.active {
  color: #3dd639; background: rgba(61,214,57,0.05); border-left-color: #3dd639;
}
body:where(:not(.pg-standalone)) .mob-drawer-foot {
  padding: 16px 20px 22px; border-top: 1px solid rgba(61,214,57,0.12); flex-shrink: 0;
}
body:where(:not(.pg-standalone)) .mob-drawer-cta {
  display: block; text-align: center; background: #3dd639; color: #000;
  font-weight: 700; font-size: 14px; padding: 13px; border-radius: 5px;
  text-decoration: none; transition: background 0.2s; margin-bottom: 12px;
}
body:where(:not(.pg-standalone)) .mob-drawer-cta:hover { background: #4fe84b; }
body:where(:not(.pg-standalone)) .mob-drawer-contacts { display: flex; flex-direction: column; gap: 5px; }
body:where(:not(.pg-standalone)) .mob-drawer-contacts a { font-size: 12px; color: #555; text-decoration: none; }
body:where(:not(.pg-standalone)) .mob-drawer-contacts a:hover { color: #888; }
/* ── BREAKPOINTS ── */
@media (max-width: 960px) {
body:where(:not(.pg-standalone)) .services-4 { grid-template-columns: 1fr 1fr; }
body:where(:not(.pg-standalone)) .why-split { grid-template-columns: 1fr; gap: 48px; }
body:where(:not(.pg-standalone)) .what-grid { grid-template-columns: 1fr; }
body:where(:not(.pg-standalone)) .pricing-grid { grid-template-columns: 1fr; max-width: 440px; margin: 0 auto; }
body:where(:not(.pg-standalone)) .price-card.featured { transform: none; }
body:where(:not(.pg-standalone)) .testi-grid { grid-template-columns: 1fr; }
body:where(:not(.pg-standalone)) .faq-2col { grid-template-columns: 1fr; }
body:where(:not(.pg-standalone)) .process-grid { grid-template-columns: 1fr 1fr; gap: 40px; }
body:where(:not(.pg-standalone)) .process-grid::before { display: none; }
body:where(:not(.pg-standalone)) .footer-top { grid-template-columns: 1fr 1fr; }
body:where(:not(.pg-standalone)) .stats-row { grid-template-columns: 1fr 1fr 1fr; }
}
@media (max-width: 768px) {
body:where(:not(.pg-standalone)) .nav-hamburger { display: flex !important; }
body:where(:not(.pg-standalone)) .nav-links { display: none !important; }
}
@media (max-width: 640px) {
body:where(:not(.pg-standalone)) .wrap { padding: 0 20px; }
body:where(:not(.pg-standalone)) .hero { min-height: auto; padding: 72px 0 60px; }
body:where(:not(.pg-standalone)) .services-4 { grid-template-columns: 1fr; }
body:where(:not(.pg-standalone)) .trust-strip { flex-direction: column; }
body:where(:not(.pg-standalone)) .trust-badge { border-right: none; border-bottom: 1px solid var(--border); }
body:where(:not(.pg-standalone)) .trust-badge:last-child { border-bottom: none; }
body:where(:not(.pg-standalone)) .stats-row { grid-template-columns: 1fr 1fr; }
body:where(:not(.pg-standalone)) .stat-item { border-right: none; border-bottom: 1px solid var(--border); padding: 0 0 24px; }
body:where(:not(.pg-standalone)) .testi-wrap { padding: 36px 24px; }
body:where(:not(.pg-standalone)) .cta-banner { padding: 52px 24px; margin: 56px 0; }
body:where(:not(.pg-standalone)) .footer-top { grid-template-columns: 1fr; }
body:where(:not(.pg-standalone)) .footer-bottom { flex-direction: column; gap: 8px; align-items: flex-start; }
body:where(:not(.pg-standalone)) .process-grid { grid-template-columns: 1fr; }
}

/* ─────────────── 2. SHARED COMPONENTS ─────────────── */
/* Rules that were duplicated across multiple pages, kept once. */
body:where(:not(.pg-standalone)) .split-text h2 .green { color: var(--green); }
/* ── COMPARISON TABLE ── */
body:where(:not(.pg-standalone)) .compare-table { width: 100%; border-collapse: collapse; }
/* ── FAQ ── */
body:where(:not(.pg-standalone)) .faq-list { max-width: 760px; margin: 0 auto; }
/* Flat SVG star icons in testimonials */
body:where(:not(.pg-standalone)) .testi-stars-icons { display: inline-flex; gap: 2px; align-items: center; margin-bottom: 16px; }
body:where(:not(.pg-standalone)) .testi-stars-icons svg { flex-shrink: 0; }
body:where(:not(.pg-standalone)) .hero-trust-item:last-child { border-right: none; }
/* BILLING TOGGLE */
body:where(:not(.pg-standalone)) .billing-toggle { display: flex; align-items: center; justify-content: center; gap: 16px; margin-bottom: 56px; }
body:where(:not(.pg-standalone)) .toggle-wrap.on { background: var(--green); border-color: var(--green); }
body:where(:not(.pg-standalone)) .price-amount .period { font-size: 16px; color: var(--gray); font-weight: 400; align-self: flex-end; margin-bottom: 6px; letter-spacing: 0; }
body:where(:not(.pg-standalone)) .price-custom { font-size: 38px; font-weight: 800; color: var(--green); letter-spacing: -0.03em; line-height: 1; margin-bottom: 2px; padding-top: 10px; }
body:where(:not(.pg-standalone)) .feature-list { list-style: none; margin-bottom: 32px; }
body:where(:not(.pg-standalone)) .feature-check { flex-shrink: 0; width: 16px; margin-top: 1px; color: var(--green); }
body:where(:not(.pg-standalone)) .pricing-note a { color: var(--green); text-decoration: none; }
body:where(:not(.pg-standalone)) .compare-table thead th.plan-col.featured { color: var(--green); }
body:where(:not(.pg-standalone)) .compare-table td.center { text-align: center; vertical-align: middle; }
body:where(:not(.pg-standalone)) .check-icon { color: var(--green); vertical-align: middle; }
body:where(:not(.pg-standalone)) .featured .partial { color: var(--gray-lt); }
/* ADD-ONS */
body:where(:not(.pg-standalone)) .addons-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; }
body:where(:not(.pg-standalone)) .addon-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px; background: var(--green); opacity: 0; transition: opacity 0.25s; }
body:where(:not(.pg-standalone)) .addon-card:hover::before { opacity: 1; }
body:where(:not(.pg-standalone)) .addon-body { flex: 1; }
body:where(:not(.pg-standalone)) .addon-price-row { display: flex; align-items: baseline; gap: 10px; margin-bottom: 6px; flex-wrap: wrap; }
body:where(:not(.pg-standalone)) .addon-price { font-size: 18px; font-weight: 800; color: var(--green); letter-spacing: -0.02em; margin-left: auto; }
body:where(:not(.pg-standalone)) .addon-pills { display: flex; flex-wrap: wrap; gap: 6px; }
body:where(:not(.pg-standalone)) .compare-table td.check-icon,
body:where(:not(.pg-standalone)) .compare-table td.dash-icon { text-align: center; vertical-align: middle; }
body:where(:not(.pg-standalone)) .compare-table td.check-icon svg,
body:where(:not(.pg-standalone)) .compare-table td.dash-icon svg { display: inline-block; vertical-align: middle; }
/* LEGAL LAYOUT */
body:where(:not(.pg-standalone)) .legal-layout {display:grid;grid-template-columns:240px 1fr;gap:56px;padding:56px 0 88px;align-items:start;}
/* SIDEBAR TOC */
body:where(:not(.pg-standalone)) .legal-toc {position:sticky;top:80px;}
body:where(:not(.pg-standalone)) .legal-toc-title {font-size:10px;font-weight:700;color:var(--gray);letter-spacing:0.16em;text-transform:uppercase;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--border);}
body:where(:not(.pg-standalone)) .legal-toc-list {list-style:none;display:flex;flex-direction:column;gap:2px;}
body:where(:not(.pg-standalone)) .legal-toc-list a {display:block;font-size:12px;color:var(--gray);text-decoration:none;padding:6px 10px;border-left:2px solid transparent;border-radius:0 4px 4px 0;transition:all 0.2s;}
body:where(:not(.pg-standalone)) .legal-toc-list a:hover {color:var(--white);border-left-color:var(--border2);background:rgba(255,255,255,0.03);}
body:where(:not(.pg-standalone)) .legal-toc-list a.active {color:var(--green);border-left-color:var(--green);background:rgba(61,214,57,0.05);}
/* PROSE */
body:where(:not(.pg-standalone)) .legal-prose {max-width:720px;}
body:where(:not(.pg-standalone)) .legal-header {margin-bottom:48px;padding-bottom:32px;border-bottom:1px solid var(--border);}
body:where(:not(.pg-standalone)) .legal-badge {display:inline-flex;align-items:center;gap:6px;background:rgba(61,214,57,0.08);border:1px solid var(--border2);color:var(--green);font-size:10px;font-weight:700;letter-spacing:0.16em;text-transform:uppercase;padding:4px 12px;border-radius:3px;margin-bottom:18px;}
body:where(:not(.pg-standalone)) .legal-title {font-size:clamp(28px,4vw,42px);font-weight:800;color:var(--white);letter-spacing:-0.025em;line-height:1.1;margin-bottom:16px;}
body:where(:not(.pg-standalone)) .legal-meta {display:flex;gap:24px;flex-wrap:wrap;font-size:12px;color:var(--gray);}
body:where(:not(.pg-standalone)) .legal-meta span {display:flex;align-items:center;gap:6px;}
/* Section headings */
body:where(:not(.pg-standalone)) .legal-prose h2 {font-size:20px;font-weight:700;color:var(--white);letter-spacing:-0.01em;margin:44px 0 14px;padding-bottom:10px;border-bottom:1px solid var(--border);scroll-margin-top:100px;}
body:where(:not(.pg-standalone)) .legal-prose h3 {font-size:15px;font-weight:700;color:var(--white);margin:28px 0 10px;scroll-margin-top:100px;}
/* Paragraph & lists */
body:where(:not(.pg-standalone)) .legal-prose p {font-size:14px;color:var(--gray-lt);line-height:1.85;margin-bottom:16px;}
body:where(:not(.pg-standalone)) .legal-prose p strong {color:var(--white);font-weight:600;}
body:where(:not(.pg-standalone)) .legal-prose p a {color:var(--green);text-decoration:none;border-bottom:1px solid rgba(61,214,57,0.3);transition:border-color 0.2s;}
body:where(:not(.pg-standalone)) .legal-prose p a:hover {border-color:var(--green);}
body:where(:not(.pg-standalone)) .legal-prose ul li::before {content:'';position:absolute;left:0;top:10px;width:5px;height:5px;background:var(--green);border-radius:50%;}
body:where(:not(.pg-standalone)) .legal-prose ol li::before {content:counter(ol)".";position:absolute;left:0;color:var(--green);font-weight:700;font-size:12px;}
body:where(:not(.pg-standalone)) .legal-prose hr {border:none;border-top:1px solid var(--border);margin:36px 0;}
/* Callout boxes */
body:where(:not(.pg-standalone)) .callout {border-radius:8px;padding:18px 20px;margin:24px 0;border-left:3px solid;font-size:13px;line-height:1.7;}
body:where(:not(.pg-standalone)) .callout strong {display:block;font-size:11px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;margin-bottom:6px;}
body:where(:not(.pg-standalone)) .callout p {margin:0;font-size:13px;}
body:where(:not(.pg-standalone)) .callout-info strong {color:#5dade2;}
body:where(:not(.pg-standalone)) .callout-tip strong {color:var(--green);}
body:where(:not(.pg-standalone)) .callout-warn strong {color:#f0b429;}
body:where(:not(.pg-standalone)) .contact-row {display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,0.05);font-size:13px;color:var(--gray-lt);}
body:where(:not(.pg-standalone)) .contact-row:last-child {border-bottom:none;}
body:where(:not(.pg-standalone)) .contact-row a {color:var(--green);text-decoration:none;}
body:where(:not(.pg-standalone)) .contact-row a:hover {opacity:0.8;}
/* shared by: about, contact, pricing, pricing_light, privacy, services, terms */
body:where(.pg-about) .breadcrumb,
body:where(.pg-contact) .breadcrumb,
body:where(.pg-pricing) .breadcrumb,
body:where(.pg-pricing-light) .breadcrumb,
body:where(.pg-privacy) .breadcrumb,
body:where(.pg-services) .breadcrumb,
body:where(.pg-terms) .breadcrumb { padding: 14px 0; font-size: 12px; color: var(--gray); }
/* shared by: about, contact, pricing, pricing_light, services */
body:where(.pg-about) .breadcrumb span,
body:where(.pg-contact) .breadcrumb span,
body:where(.pg-pricing) .breadcrumb span,
body:where(.pg-pricing-light) .breadcrumb span,
body:where(.pg-services) .breadcrumb span { color: var(--green); margin: 0 8px; }
/* shared by: about, ai-visibility-check, citations, contact, dr-checker, pricing, pricing_light, services */
/* ── BUTTONS ── */
body:where(.pg-about) .btn-green,
body:where(.pg-ai-visibility-check) .btn-green,
body:where(.pg-citations) .btn-green,
body:where(.pg-contact) .btn-green,
body:where(.pg-dr-checker) .btn-green,
body:where(.pg-pricing) .btn-green,
body:where(.pg-pricing-light) .btn-green,
body:where(.pg-services) .btn-green {
  background: var(--green); color: #000; font-family: var(--font); font-weight: 700;
  font-size: 14px; padding: 14px 28px; border-radius: 4px; text-decoration: none;
  transition: background 0.2s, transform 0.15s; letter-spacing: 0.02em; display: inline-block;
}
/* shared by: about, ai-visibility-check, contact, dr-checker, pricing, pricing_light, services */
body:where(.pg-about) .btn-outline,
body:where(.pg-ai-visibility-check) .btn-outline,
body:where(.pg-contact) .btn-outline,
body:where(.pg-dr-checker) .btn-outline,
body:where(.pg-pricing) .btn-outline,
body:where(.pg-pricing-light) .btn-outline,
body:where(.pg-services) .btn-outline {
  background: transparent; color: var(--white); font-family: var(--font); font-size: 14px;
  padding: 13px 28px; border-radius: 4px; text-decoration: none; display: inline-block;
  border: 1px solid rgba(255,255,255,0.2); transition: border-color 0.2s, background 0.2s;
}
/* shared by: about, citations, contact, services */
/* ── SECTION SYSTEM ── */
body:where(.pg-about) .section,
body:where(.pg-citations) .section,
body:where(.pg-contact) .section,
body:where(.pg-services) .section { padding: 80px 0; }
/* shared by: about, citations, pricing, pricing_light, services */
body:where(.pg-about) .section-head,
body:where(.pg-citations) .section-head,
body:where(.pg-pricing) .section-head,
body:where(.pg-pricing-light) .section-head,
body:where(.pg-services) .section-head { text-align: center; margin-bottom: 56px; }
/* shared by: about, ai-visibility-check, citations, contact, dr-checker, services */
body:where(.pg-about) .section-label,
body:where(.pg-ai-visibility-check) .section-label,
body:where(.pg-citations) .section-label,
body:where(.pg-contact) .section-label,
body:where(.pg-dr-checker) .section-label,
body:where(.pg-services) .section-label { color: var(--green); font-size: 12px; letter-spacing: 0.2em; text-transform: uppercase; margin-bottom: 12px; }
/* shared by: about, citations, contact, services */
body:where(.pg-about) .section-title,
body:where(.pg-citations) .section-title,
body:where(.pg-contact) .section-title,
body:where(.pg-services) .section-title { font-size: clamp(28px, 4vw, 42px); font-weight: 700; color: var(--white); letter-spacing: -0.02em; margin-bottom: 16px; line-height: 1.15; }
/* shared by: about, ai-visibility-check, citations, dr-checker, services */
body:where(.pg-about) .section-sub,
body:where(.pg-ai-visibility-check) .section-sub,
body:where(.pg-citations) .section-sub,
body:where(.pg-dr-checker) .section-sub,
body:where(.pg-services) .section-sub { font-size: 15px; color: var(--gray-lt); max-width: 560px; margin: 0 auto; line-height: 1.7; }
/* shared by: about, citations */
body:where(.pg-about) .hero-eyebrow,
body:where(.pg-citations) .hero-eyebrow {
  display: inline-block; background: rgba(61,214,57,0.1); border: 1px solid var(--border2);
  color: var(--green); font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase;
  padding: 6px 16px; border-radius: 20px; margin-bottom: 28px;
}
/* shared by: about, contact, pricing, pricing_light, services */
body:where(.pg-about) .stats-row,
body:where(.pg-contact) .stats-row,
body:where(.pg-pricing) .stats-row,
body:where(.pg-pricing-light) .stats-row,
body:where(.pg-services) .stats-row { display: grid; grid-template-columns: repeat(4, 1fr); text-align: center; }
/* shared by: about, citations, contact, pricing, pricing_light, services */
body:where(.pg-about) .stat-item,
body:where(.pg-citations) .stat-item,
body:where(.pg-contact) .stat-item,
body:where(.pg-pricing) .stat-item,
body:where(.pg-pricing-light) .stat-item,
body:where(.pg-services) .stat-item { border-right: 1px solid var(--border); padding: 0 32px; }
/* shared by: about, citations, contact, services */
body:where(.pg-about) .stat-label,
body:where(.pg-citations) .stat-label,
body:where(.pg-contact) .stat-label,
body:where(.pg-services) .stat-label { font-size: 12px; color: var(--gray); letter-spacing: 0.08em; text-transform: uppercase; }
/* shared by: about, citations, contact, services */
/* ── CTA BANNER ── */
body:where(.pg-about) .cta-banner,
body:where(.pg-citations) .cta-banner,
body:where(.pg-contact) .cta-banner,
body:where(.pg-services) .cta-banner {
  background: var(--bg2); border: 1px solid var(--border); border-radius: 12px;
  padding: 72px 48px; text-align: center; position: relative; overflow: hidden; margin: 80px 0;
}
/* shared by: about, ai-visibility-check, citations, contact, dr-checker, privacy, services, terms */
body:where(.pg-about) .cta-banner::before,
body:where(.pg-ai-visibility-check) .cta-banner::before,
body:where(.pg-citations) .cta-banner::before,
body:where(.pg-contact) .cta-banner::before,
body:where(.pg-dr-checker) .cta-banner::before,
body:where(.pg-privacy) .cta-banner::before,
body:where(.pg-services) .cta-banner::before,
body:where(.pg-terms) .cta-banner::before {
  content: ''; position: absolute; inset: 0;
  background: radial-gradient(ellipse 70% 60% at 50% 50%, rgba(61,214,57,0.07) 0%, transparent 70%);
}
/* shared by: about, ai-visibility-check, citations, contact, dr-checker, services */
body:where(.pg-about) .cta-desc,
body:where(.pg-ai-visibility-check) .cta-desc,
body:where(.pg-citations) .cta-desc,
body:where(.pg-contact) .cta-desc,
body:where(.pg-dr-checker) .cta-desc,
body:where(.pg-services) .cta-desc { font-size: 15px; color: var(--gray-lt); max-width: 460px; margin: 0 auto 36px; line-height: 1.7; }
/* shared by: about, ai-visibility-check, citations, contact, dr-checker, pricing, pricing_light, services */
body:where(.pg-about) .cta-btns,
body:where(.pg-ai-visibility-check) .cta-btns,
body:where(.pg-citations) .cta-btns,
body:where(.pg-contact) .cta-btns,
body:where(.pg-dr-checker) .cta-btns,
body:where(.pg-pricing) .cta-btns,
body:where(.pg-pricing-light) .cta-btns,
body:where(.pg-services) .cta-btns { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; }
/* shared by: about, citations, pricing, pricing_light, services */
/* ── TESTIMONIALS ── */
body:where(.pg-about) .testi-grid,
body:where(.pg-citations) .testi-grid,
body:where(.pg-pricing) .testi-grid,
body:where(.pg-pricing-light) .testi-grid,
body:where(.pg-services) .testi-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
/* shared by: about, citations, pricing, pricing_light, services */
body:where(.pg-about) .testi-card,
body:where(.pg-citations) .testi-card,
body:where(.pg-pricing) .testi-card,
body:where(.pg-pricing-light) .testi-card,
body:where(.pg-services) .testi-card { background: var(--card-bg); border: 1px solid var(--border); border-radius: 8px; padding: 28px 24px; }
/* shared by: about, citations, pricing, pricing_light, services */
body:where(.pg-about) .testi-stars,
body:where(.pg-citations) .testi-stars,
body:where(.pg-pricing) .testi-stars,
body:where(.pg-pricing-light) .testi-stars,
body:where(.pg-services) .testi-stars { color: var(--green); font-size: 14px; letter-spacing: 3px; margin-bottom: 14px; }
/* shared by: about, citations, pricing, pricing_light, services */
body:where(.pg-about) .testi-quote,
body:where(.pg-citations) .testi-quote,
body:where(.pg-pricing) .testi-quote,
body:where(.pg-pricing-light) .testi-quote,
body:where(.pg-services) .testi-quote { font-size: 13px; color: var(--gray-lt); line-height: 1.75; font-style: italic; margin-bottom: 18px; }
/* shared by: about, ai-visibility-check, citations, contact, dr-checker, pricing, pricing_light, privacy, services, terms */
/* ── FOOTER ── */
body:where(.pg-about) footer,
body:where(.pg-ai-visibility-check) footer,
body:where(.pg-citations) footer,
body:where(.pg-contact) footer,
body:where(.pg-dr-checker) footer,
body:where(.pg-pricing) footer,
body:where(.pg-pricing-light) footer,
body:where(.pg-privacy) footer,
body:where(.pg-services) footer,
body:where(.pg-terms) footer { border-top: 1px solid var(--border); padding: 60px 0 36px; }
/* shared by: about, ai-visibility-check, ai-visibility-checker, citations, contact, dr-checker, pricing, pricing_light, privacy, services, terms */
body:where(.pg-about) .footer-top,
body:where(.pg-ai-visibility-check) .footer-top,
body:where(.pg-ai-visibility-checker) .footer-top,
body:where(.pg-citations) .footer-top,
body:where(.pg-contact) .footer-top,
body:where(.pg-dr-checker) .footer-top,
body:where(.pg-pricing) .footer-top,
body:where(.pg-pricing-light) .footer-top,
body:where(.pg-privacy) .footer-top,
body:where(.pg-services) .footer-top,
body:where(.pg-terms) .footer-top { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 48px; margin-bottom: 48px; }
/* shared by: about, ai-visibility-check, ai-visibility-checker, citations, contact, dr-checker, pricing, pricing_light, privacy, services, terms */
body:where(.pg-about) .footer-brand img,
body:where(.pg-ai-visibility-check) .footer-brand img,
body:where(.pg-ai-visibility-checker) .footer-brand img,
body:where(.pg-citations) .footer-brand img,
body:where(.pg-contact) .footer-brand img,
body:where(.pg-dr-checker) .footer-brand img,
body:where(.pg-pricing) .footer-brand img,
body:where(.pg-pricing-light) .footer-brand img,
body:where(.pg-privacy) .footer-brand img,
body:where(.pg-services) .footer-brand img,
body:where(.pg-terms) .footer-brand img { height: 28px; margin-bottom: 16px; display: block; }
/* shared by: about, ai-visibility-check, ai-visibility-checker, citations, contact, dr-checker, pricing, pricing_light, privacy, services, terms */
body:where(.pg-about) .footer-brand p,
body:where(.pg-ai-visibility-check) .footer-brand p,
body:where(.pg-ai-visibility-checker) .footer-brand p,
body:where(.pg-citations) .footer-brand p,
body:where(.pg-contact) .footer-brand p,
body:where(.pg-dr-checker) .footer-brand p,
body:where(.pg-pricing) .footer-brand p,
body:where(.pg-pricing-light) .footer-brand p,
body:where(.pg-privacy) .footer-brand p,
body:where(.pg-services) .footer-brand p,
body:where(.pg-terms) .footer-brand p { font-size: 12px; color: var(--gray); line-height: 1.7; max-width: 240px; }
/* shared by: about, ai-visibility-check, ai-visibility-checker, citations, contact, dr-checker, pricing, pricing_light, privacy, services, terms */
body:where(.pg-about) .footer-col li,
body:where(.pg-ai-visibility-check) .footer-col li,
body:where(.pg-ai-visibility-checker) .footer-col li,
body:where(.pg-citations) .footer-col li,
body:where(.pg-contact) .footer-col li,
body:where(.pg-dr-checker) .footer-col li,
body:where(.pg-pricing) .footer-col li,
body:where(.pg-pricing-light) .footer-col li,
body:where(.pg-privacy) .footer-col li,
body:where(.pg-services) .footer-col li,
body:where(.pg-terms) .footer-col li { margin-bottom: 8px; }
/* shared by: about, citations, contact, pricing, pricing_light, privacy, services, terms */
body:where(.pg-about) .footer-bottom,
body:where(.pg-citations) .footer-bottom,
body:where(.pg-contact) .footer-bottom,
body:where(.pg-pricing) .footer-bottom,
body:where(.pg-pricing-light) .footer-bottom,
body:where(.pg-privacy) .footer-bottom,
body:where(.pg-services) .footer-bottom,
body:where(.pg-terms) .footer-bottom { border-top: 1px solid var(--border); padding-top: 24px; display: flex; align-items: center; justify-content: space-between; }
/* shared by: about */
body:where(.pg-about) .hero h1 { animation: fadeUp 0.6s ease 0.2s both; }
/* shared by: citations, contact, dr-checker, pricing, pricing_light, services */
body:where(.pg-citations) .hero h1,
body:where(.pg-contact) .hero h1,
body:where(.pg-dr-checker) .hero h1,
body:where(.pg-pricing) .hero h1,
body:where(.pg-pricing-light) .hero h1,
body:where(.pg-services) .hero h1 { animation: fadeUp-v2 0.6s ease 0.2s both; }
/* shared by: about */
body:where(.pg-about) .hero-sub { animation: fadeUp 0.6s ease 0.32s both; }
/* shared by: citations, contact, dr-checker, pricing, pricing_light, services */
body:where(.pg-citations) .hero-sub,
body:where(.pg-contact) .hero-sub,
body:where(.pg-dr-checker) .hero-sub,
body:where(.pg-pricing) .hero-sub,
body:where(.pg-pricing-light) .hero-sub,
body:where(.pg-services) .hero-sub { animation: fadeUp-v2 0.6s ease 0.32s both; }
/* shared by: about */
body:where(.pg-about) .hero-buttons { animation: fadeUp 0.6s ease 0.42s both; }
/* shared by: citations, services */
body:where(.pg-citations) .hero-buttons,
body:where(.pg-services) .hero-buttons { animation: fadeUp-v2 0.6s ease 0.42s both; }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
/* ── SHARED DESIGN SYSTEM (exact match: optiseon.com) ── */
body:where(.pg-ai-visibility-check), body:where(.pg-ai-visibility-check) *,
body:where(.pg-ai-visibility-checker), body:where(.pg-ai-visibility-checker) *,
body:where(.pg-dr-checker), body:where(.pg-dr-checker) *,
body:where(.pg-ai-visibility-check)::before, body:where(.pg-ai-visibility-check) *::before,
body:where(.pg-ai-visibility-checker)::before, body:where(.pg-ai-visibility-checker) *::before,
body:where(.pg-dr-checker)::before, body:where(.pg-dr-checker) *::before,
body:where(.pg-ai-visibility-check)::after, body:where(.pg-ai-visibility-check) *::after,
body:where(.pg-ai-visibility-checker)::after, body:where(.pg-ai-visibility-checker) *::after,
body:where(.pg-dr-checker)::after, body:where(.pg-dr-checker) *::after { box-sizing: border-box; margin: 0; padding: 0; }
/* shared by: ai-visibility-check, citations, services */
body:where(.pg-ai-visibility-check),
body:where(.pg-citations),
body:where(.pg-services) {
    --bg:       #0a0a0a;
    --bg2:      #111111;
    --bg3:      #1a1a1a;
    --green:    #3dd639;
    --green-dim:#2a9e26;
    --white:    #ffffff;
    --gray:     #888888;
    --gray-lt:  #cccccc;
    --border:   rgba(61,214,57,0.15);
    --border2:  rgba(61,214,57,0.3);
    --card-bg:  #111111;
    --font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  }
/* shared by: ai-visibility-check, ai-visibility-checker, ai-visibility-score-checker, dr-checker */
html:where(:has(.pg-ai-visibility-check)),
html:where(:has(.pg-ai-visibility-checker)),
html:where(:has(.pg-ai-visibility-score-checker)),
html:where(:has(.pg-dr-checker)) { scroll-behavior: smooth; }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check),
body:where(.pg-ai-visibility-checker),
body:where(.pg-dr-checker) {
    background: var(--bg);
    color: var(--white);
    font-family: var(--font);
    font-size: 14px;
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    min-height: 100vh;
  }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check)::before,
body:where(.pg-ai-visibility-checker)::before,
body:where(.pg-dr-checker)::before {
    content: '';
    position: fixed;
    inset: 0;
    background-image: radial-gradient(rgba(61,214,57,0.07) 1px, transparent 1px);
    background-size: 32px 32px;
    pointer-events: none;
    z-index: 0;
  }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .wrap,
body:where(.pg-ai-visibility-checker) .wrap,
body:where(.pg-dr-checker) .wrap {
    position: relative;
    z-index: 1;
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 32px;
  }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) a,
body:where(.pg-ai-visibility-checker) a,
body:where(.pg-dr-checker) a { color: inherit; }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
/* ── NAV ── */
body:where(.pg-ai-visibility-check) nav,
body:where(.pg-ai-visibility-checker) nav,
body:where(.pg-dr-checker) nav {
    display: flex; align-items: center; justify-content: space-between;
    padding: 20px 0; border-bottom: 1px solid var(--border);
    position: sticky; top: 0; background: rgba(10,10,10,0.95);
    backdrop-filter: blur(8px); z-index: 100;
  }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .nav-logo img,
body:where(.pg-ai-visibility-checker) .nav-logo img,
body:where(.pg-dr-checker) .nav-logo img { height: 32px; display: block; }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .nav-links,
body:where(.pg-ai-visibility-checker) .nav-links,
body:where(.pg-dr-checker) .nav-links { display: flex; align-items: center; gap: 32px; list-style: none; }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .nav-links a,
body:where(.pg-ai-visibility-checker) .nav-links a,
body:where(.pg-dr-checker) .nav-links a { color: var(--gray-lt); text-decoration: none; font-size: 13px; letter-spacing: 0.04em; transition: color 0.2s; }
/* shared by: ai-visibility-check, ai-visibility-checker, citations, dr-checker, pricing_light */
body:where(.pg-ai-visibility-check) .nav-links a:hover,
body:where(.pg-ai-visibility-checker) .nav-links a:hover,
body:where(.pg-citations) .nav-links a:hover,
body:where(.pg-dr-checker) .nav-links a:hover,
body:where(.pg-pricing-light) .nav-links a:hover { color: var(--green); }
/* shared by: ai-visibility-check, ai-visibility-checker, citations, dr-checker */
body:where(.pg-ai-visibility-check) .nav-cta,
body:where(.pg-ai-visibility-checker) .nav-cta,
body:where(.pg-citations) .nav-cta,
body:where(.pg-dr-checker) .nav-cta { background: var(--green); color: #000 !important; font-weight: 700; padding: 9px 20px !important; border-radius: 4px; font-size: 13px !important; }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .nav-cta:hover,
body:where(.pg-ai-visibility-checker) .nav-cta:hover,
body:where(.pg-dr-checker) .nav-cta:hover { background: #4fe84b !important; }
/* shared by: ai-visibility-check, dr-checker */
body:where(.pg-ai-visibility-check) .btn-green:hover,
body:where(.pg-dr-checker) .btn-green:hover { background: #4fe84b; transform: translateY(-1px); }
/* shared by: ai-visibility-check, dr-checker */
body:where(.pg-ai-visibility-check) .btn-outline:hover,
body:where(.pg-dr-checker) .btn-outline:hover { border-color: rgba(255,255,255,0.5); background: rgba(255,255,255,0.04); }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
/* ── BREADCRUMB ── */
body:where(.pg-ai-visibility-check) .breadcrumb-bar,
body:where(.pg-ai-visibility-checker) .breadcrumb-bar,
body:where(.pg-dr-checker) .breadcrumb-bar { background: var(--bg2); border-bottom: 1px solid var(--border); }
/* shared by: ai-visibility-check, ai-visibility-checker, citations, dr-checker */
body:where(.pg-ai-visibility-check) .breadcrumb,
body:where(.pg-ai-visibility-checker) .breadcrumb,
body:where(.pg-citations) .breadcrumb,
body:where(.pg-dr-checker) .breadcrumb { padding: 16px 0; font-size: 12px; color: var(--gray); }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .breadcrumb a,
body:where(.pg-ai-visibility-checker) .breadcrumb a,
body:where(.pg-dr-checker) .breadcrumb a { color: var(--gray); text-decoration: none; transition: color 0.2s; }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .breadcrumb a:hover,
body:where(.pg-ai-visibility-checker) .breadcrumb a:hover,
body:where(.pg-dr-checker) .breadcrumb a:hover { color: var(--green); }
/* shared by: ai-visibility-check, ai-visibility-checker, citations, dr-checker */
body:where(.pg-ai-visibility-check) .breadcrumb span,
body:where(.pg-ai-visibility-checker) .breadcrumb span,
body:where(.pg-citations) .breadcrumb span,
body:where(.pg-dr-checker) .breadcrumb span { color: var(--green); margin: 0 6px; }
/* shared by: ai-visibility-check, dr-checker */
body:where(.pg-ai-visibility-check) .section-head,
body:where(.pg-dr-checker) .section-head { text-align: center; margin-bottom: 48px; }
/* shared by: ai-visibility-check, dr-checker */
body:where(.pg-ai-visibility-check) .section-title,
body:where(.pg-dr-checker) .section-title { font-size: clamp(26px, 3.5vw, 38px); font-weight: 700; color: var(--white); letter-spacing: -0.02em; margin-bottom: 16px; line-height: 1.15; }
/* shared by: ai-visibility-check, dr-checker */
body:where(.pg-ai-visibility-check) .section-title .green,
body:where(.pg-dr-checker) .section-title .green { color: var(--green); }
/* shared by: ai-visibility-check, contact */
body:where(.pg-ai-visibility-check) .form-wrap::before,
body:where(.pg-contact) .form-wrap::before {
    content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px;
    background: linear-gradient(90deg, var(--green), rgba(61,214,57,0.2));
  }
/* shared by: ai-visibility-check, contact */
body:where(.pg-ai-visibility-check) label,
body:where(.pg-contact) label {
    display: block; font-size: 12px; font-weight: 600; color: var(--gray-lt);
    letter-spacing: 0.04em; margin-bottom: 8px; text-transform: uppercase;
  }
/* shared by: ai-visibility-check, contact */
body:where(.pg-ai-visibility-check) label .req,
body:where(.pg-contact) label .req { color: var(--green); margin-left: 2px; }
/* shared by: ai-visibility-check, contact */
/* ── STATUS + SUCCESS ── */
body:where(.pg-ai-visibility-check) .status,
body:where(.pg-contact) .status { display: none; padding: 12px 16px; border-radius: 6px; font-size: 13px; font-weight: 500; margin-bottom: 16px; }
/* shared by: ai-visibility-check, contact */
body:where(.pg-ai-visibility-check) .status.error,
body:where(.pg-contact) .status.error { display: block; background: rgba(220,53,69,0.12); color: #ff6b6b; border: 1px solid rgba(220,53,69,0.3); }
/* shared by: ai-visibility-check, contact */
body:where(.pg-ai-visibility-check) .status.success,
body:where(.pg-contact) .status.success { display: block; background: rgba(61,214,57,0.10); color: var(--green); border: 1px solid var(--border2); }
/* shared by: ai-visibility-check, dr-checker */
body:where(.pg-ai-visibility-check) .cta-banner > *,
body:where(.pg-dr-checker) .cta-banner > * { position: relative; z-index: 1; }
/* shared by: ai-visibility-check, dr-checker */
body:where(.pg-ai-visibility-check) .cta-title,
body:where(.pg-dr-checker) .cta-title { font-size: clamp(28px, 4vw, 46px); font-weight: 800; color: var(--white); letter-spacing: -0.03em; margin-bottom: 16px; line-height: 1.1; }
/* shared by: ai-visibility-check, dr-checker */
body:where(.pg-ai-visibility-check) .cta-title .green,
body:where(.pg-dr-checker) .cta-title .green { color: var(--green); }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .footer-social,
body:where(.pg-ai-visibility-checker) .footer-social,
body:where(.pg-dr-checker) .footer-social { display: flex; gap: 8px; margin-top: 18px; }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .social-btn,
body:where(.pg-ai-visibility-checker) .social-btn,
body:where(.pg-dr-checker) .social-btn {
    width: 32px; height: 32px; border-radius: 6px; border: 1px solid var(--border); color: var(--gray);
    display: flex; align-items: center; justify-content: center;
    transition: border-color 0.2s, color 0.2s, background 0.2s;
  }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .social-btn:hover,
body:where(.pg-ai-visibility-checker) .social-btn:hover,
body:where(.pg-dr-checker) .social-btn:hover { border-color: var(--border2); color: var(--green); background: rgba(61,214,57,0.06); }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .footer-col h4,
body:where(.pg-ai-visibility-checker) .footer-col h4,
body:where(.pg-dr-checker) .footer-col h4 { font-weight: 700; font-size: 12px; color: var(--white); letter-spacing: 0.12em; text-transform: uppercase; margin-bottom: 16px; }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .footer-col ul,
body:where(.pg-ai-visibility-checker) .footer-col ul,
body:where(.pg-dr-checker) .footer-col ul { list-style: none; }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .footer-col a,
body:where(.pg-ai-visibility-checker) .footer-col a,
body:where(.pg-dr-checker) .footer-col a { font-size: 12px; color: var(--gray); text-decoration: none; transition: color 0.2s; }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .footer-col a:hover,
body:where(.pg-ai-visibility-checker) .footer-col a:hover,
body:where(.pg-dr-checker) .footer-col a:hover { color: var(--green); }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .footer-bottom,
body:where(.pg-ai-visibility-checker) .footer-bottom,
body:where(.pg-dr-checker) .footer-bottom { border-top: 1px solid var(--border); padding-top: 24px; display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .footer-copy,
body:where(.pg-ai-visibility-checker) .footer-copy,
body:where(.pg-dr-checker) .footer-copy { font-size: 11px; color: #444; letter-spacing: 0.06em; }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .footer-loc,
body:where(.pg-ai-visibility-checker) .footer-loc,
body:where(.pg-dr-checker) .footer-loc { font-size: 11px; color: #444; display: flex; align-items: center; gap: 6px; }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
/* == RESPONSIVE NAV == */
body:where(.pg-ai-visibility-check) .nav-hamburger,
body:where(.pg-ai-visibility-checker) .nav-hamburger,
body:where(.pg-dr-checker) .nav-hamburger {
    display: none; align-items: center; justify-content: center; flex-direction: column;
    gap: 5px; width: 36px; height: 36px; cursor: pointer;
    border: 1px solid rgba(61,214,57,0.3); border-radius: 6px; background: transparent;
    flex-shrink: 0; padding: 0;
  }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .nav-hamburger:hover,
body:where(.pg-ai-visibility-checker) .nav-hamburger:hover,
body:where(.pg-dr-checker) .nav-hamburger:hover { border-color: rgba(61,214,57,0.6); }
/* shared by: ai-visibility-check, citations, dr-checker, services */
body:where(.pg-ai-visibility-check) .nav-hamburger span,
body:where(.pg-citations) .nav-hamburger span,
body:where(.pg-dr-checker) .nav-hamburger span,
body:where(.pg-services) .nav-hamburger span {
    display: block; width: 18px; height: 2px; background: #ffffff; border-radius: 2px;
    transition: transform 0.28s ease, opacity 0.18s ease; transform-origin: center;
  }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .nav-hamburger.open span:nth-child(1),
body:where(.pg-ai-visibility-checker) .nav-hamburger.open span:nth-child(1),
body:where(.pg-dr-checker) .nav-hamburger.open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .nav-hamburger.open span:nth-child(2),
body:where(.pg-ai-visibility-checker) .nav-hamburger.open span:nth-child(2),
body:where(.pg-dr-checker) .nav-hamburger.open span:nth-child(2) { opacity: 0; }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .nav-hamburger.open span:nth-child(3),
body:where(.pg-ai-visibility-checker) .nav-hamburger.open span:nth-child(3),
body:where(.pg-dr-checker) .nav-hamburger.open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) #mob-backdrop,
body:where(.pg-ai-visibility-checker) #mob-backdrop,
body:where(.pg-dr-checker) #mob-backdrop {
    position: fixed; inset: 0; background: rgba(0,0,0,0.65); z-index: 980;
    opacity: 0; visibility: hidden; transition: opacity 0.25s, visibility 0.25s;
  }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) #mob-backdrop.open,
body:where(.pg-ai-visibility-checker) #mob-backdrop.open,
body:where(.pg-dr-checker) #mob-backdrop.open { opacity: 1; visibility: visible; }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) #mob-drawer,
body:where(.pg-ai-visibility-checker) #mob-drawer,
body:where(.pg-dr-checker) #mob-drawer {
    position: fixed; top: 0; right: 0; bottom: 0; width: min(300px, 84vw);
    background: #0e0e0e; border-left: 1px solid rgba(61,214,57,0.15); z-index: 990;
    display: flex; flex-direction: column; transform: translateX(100%);
    transition: transform 0.3s cubic-bezier(0.4,0,0.2,1); overflow-y: auto;
  }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) #mob-drawer.open,
body:where(.pg-ai-visibility-checker) #mob-drawer.open,
body:where(.pg-dr-checker) #mob-drawer.open { transform: translateX(0); }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .mob-drawer-head,
body:where(.pg-ai-visibility-checker) .mob-drawer-head,
body:where(.pg-dr-checker) .mob-drawer-head {
    display: flex; align-items: center; justify-content: space-between;
    padding: 18px 20px; border-bottom: 1px solid rgba(61,214,57,0.12); flex-shrink: 0;
  }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .mob-drawer-head img,
body:where(.pg-ai-visibility-checker) .mob-drawer-head img,
body:where(.pg-dr-checker) .mob-drawer-head img { height: 26px; display: block; }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .mob-close-btn,
body:where(.pg-ai-visibility-checker) .mob-close-btn,
body:where(.pg-dr-checker) .mob-close-btn {
    display: flex; align-items: center; justify-content: center; width: 32px; height: 32px;
    border: 1px solid rgba(61,214,57,0.2); border-radius: 6px; background: transparent;
    color: #aaa; font-size: 16px; line-height: 1; cursor: pointer; font-family: inherit;
    transition: border-color 0.2s, color 0.2s;
  }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .mob-close-btn:hover,
body:where(.pg-ai-visibility-checker) .mob-close-btn:hover,
body:where(.pg-dr-checker) .mob-close-btn:hover { border-color: rgba(61,214,57,0.5); color: #3dd639; }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .mob-nav-links,
body:where(.pg-ai-visibility-checker) .mob-nav-links,
body:where(.pg-dr-checker) .mob-nav-links { list-style: none; padding: 8px 0; flex: 1; }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .mob-nav-links li,
body:where(.pg-ai-visibility-checker) .mob-nav-links li,
body:where(.pg-dr-checker) .mob-nav-links li { border-bottom: 1px solid rgba(255,255,255,0.05); }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .mob-nav-links li:last-child,
body:where(.pg-ai-visibility-checker) .mob-nav-links li:last-child,
body:where(.pg-dr-checker) .mob-nav-links li:last-child { border-bottom: none; }
/* shared by: ai-visibility-check, dr-checker */
body:where(.pg-ai-visibility-check) .mob-nav-links a,
body:where(.pg-dr-checker) .mob-nav-links a {
    display: block; padding: 14px 20px; font-size: 15px; font-weight: 500; color: #cccccc;
    text-decoration: none; border-left: 2px solid transparent;
    transition: color 0.2s, background 0.2s, border-color 0.2s;
  }
/* shared by: ai-visibility-check, dr-checker */
body:where(.pg-ai-visibility-check) .mob-nav-links a:hover,
body:where(.pg-dr-checker) .mob-nav-links a:hover,
body:where(.pg-ai-visibility-check) .mob-nav-links a.active,
body:where(.pg-dr-checker) .mob-nav-links a.active {
    color: #3dd639; background: rgba(61,214,57,0.05); border-left-color: #3dd639;
  }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .mob-drawer-foot,
body:where(.pg-ai-visibility-checker) .mob-drawer-foot,
body:where(.pg-dr-checker) .mob-drawer-foot { padding: 16px 20px 22px; border-top: 1px solid rgba(61,214,57,0.12); flex-shrink: 0; }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .mob-drawer-cta,
body:where(.pg-ai-visibility-checker) .mob-drawer-cta,
body:where(.pg-dr-checker) .mob-drawer-cta {
    display: block; text-align: center; background: #3dd639; color: #000; font-weight: 700;
    font-size: 14px; padding: 13px; border-radius: 5px; text-decoration: none;
    transition: background 0.2s; margin-bottom: 12px;
  }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .mob-drawer-cta:hover,
body:where(.pg-ai-visibility-checker) .mob-drawer-cta:hover,
body:where(.pg-dr-checker) .mob-drawer-cta:hover { background: #4fe84b; }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .mob-drawer-contacts,
body:where(.pg-ai-visibility-checker) .mob-drawer-contacts,
body:where(.pg-dr-checker) .mob-drawer-contacts { display: flex; flex-direction: column; gap: 5px; }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .mob-drawer-contacts a,
body:where(.pg-ai-visibility-checker) .mob-drawer-contacts a,
body:where(.pg-dr-checker) .mob-drawer-contacts a { font-size: 12px; color: #555; text-decoration: none; }
/* shared by: ai-visibility-check, ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-check) .mob-drawer-contacts a:hover,
body:where(.pg-ai-visibility-checker) .mob-drawer-contacts a:hover,
body:where(.pg-dr-checker) .mob-drawer-contacts a:hover { color: #888; }
/* shared by: ai-visibility-checker, dr-checker */
body:where(.pg-ai-visibility-checker) .hero h1 .green,
body:where(.pg-dr-checker) .hero h1 .green { color: var(--green); }
/* shared by: ai-visibility-score-checker, sitemap */
body:where(.pg-ai-visibility-score-checker), body:where(.pg-ai-visibility-score-checker) *,
body:where(.pg-sitemap), body:where(.pg-sitemap) * {box-sizing:border-box}
/* shared by: citations, services */
body:where(.pg-citations) .price-features li::before,
body:where(.pg-services) .price-features li::before { content: '✓'; position: absolute; left: 0; color: var(--green); font-weight: 700; }
/* shared by: citations, services */
body:where(.pg-citations) .price-features li.na::before,
body:where(.pg-services) .price-features li.na::before { content: '—'; color: #333; }
/* shared by: citations, pricing, pricing_light */
body:where(.pg-citations) .compare-table tbody tr:hover td,
body:where(.pg-pricing) .compare-table tbody tr:hover td,
body:where(.pg-pricing-light) .compare-table tbody tr:hover td { background: rgba(255,255,255,0.015); }
/* shared by: citations, pricing, pricing_light */
body:where(.pg-citations) .compare-table td,
body:where(.pg-pricing) .compare-table td,
body:where(.pg-pricing-light) .compare-table td { color: var(--gray-lt); }
/* shared by: citations, pricing, pricing_light, services */
body:where(.pg-citations) .faq-a,
body:where(.pg-pricing) .faq-a,
body:where(.pg-pricing-light) .faq-a,
body:where(.pg-services) .faq-a {
  padding: 0 20px; max-height: 0; overflow: hidden; transition: max-height 0.3s ease, padding 0.3s ease;
  font-size: 13px; color: var(--gray); line-height: 1.75; background: var(--bg2);
}
/* shared by: contact, dr-checker, services */
body:where(.pg-contact) .hero-eyebrow,
body:where(.pg-dr-checker) .hero-eyebrow,
body:where(.pg-services) .hero-eyebrow {
  display: inline-block; background: rgba(61,214,57,0.1); border: 1px solid var(--border2);
  color: var(--green); font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase;
  padding: 6px 16px; border-radius: 20px; margin-bottom: 24px;
}
/* shared by: contact, services */
/* ── STATS STRIP ── */
body:where(.pg-contact) .stats-strip,
body:where(.pg-services) .stats-strip { background: var(--bg2); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); padding: 40px 0; }
/* shared by: contact, services */
body:where(.pg-contact) .stat-num,
body:where(.pg-services) .stat-num { font-size: 38px; font-weight: 800; color: var(--green); letter-spacing: -0.04em; line-height: 1; margin-bottom: 6px; }
/* shared by: contact, services */
body:where(.pg-contact) .cta-title,
body:where(.pg-services) .cta-title { font-size: clamp(28px, 4vw, 48px); font-weight: 800; color: var(--white); letter-spacing: -0.03em; margin-bottom: 16px; line-height: 1.1; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .section-title,
body:where(.pg-pricing-light) .section-title { font-size: clamp(28px, 4vw, 44px); font-weight: 800; color: var(--white); letter-spacing: -0.025em; margin-bottom: 18px; line-height: 1.12; }
/* shared by: pricing, pricing_light, services */
/* HERO */
body:where(.pg-pricing) .hero,
body:where(.pg-pricing-light) .hero,
body:where(.pg-services) .hero { padding: 80px 0 72px; text-align: center; border-bottom: 1px solid var(--border); position: relative; overflow: hidden; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .hero::before,
body:where(.pg-pricing-light) .hero::before { content: ''; position: absolute; width: 700px; height: 400px; background: radial-gradient(ellipse, rgba(61,214,57,0.1) 0%, transparent 70%); top: 50%; left: 50%; transform: translate(-50%, -60%); pointer-events: none; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .hero-eyebrow,
body:where(.pg-pricing-light) .hero-eyebrow { display: inline-block; background: rgba(61,214,57,0.08); border: 1px solid var(--border2); color: var(--green); font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase; padding: 7px 18px; border-radius: 20px; margin-bottom: 24px; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .hero h1,
body:where(.pg-pricing-light) .hero h1 { font-size: clamp(38px, 6vw, 68px); font-weight: 800; line-height: 1.05; letter-spacing: -0.03em; color: var(--white); margin-bottom: 20px; max-width: 740px; margin-left: auto; margin-right: auto; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .hero-sub,
body:where(.pg-pricing-light) .hero-sub { font-size: 17px; color: var(--gray-lt); max-width: 540px; margin: 0 auto 48px; line-height: 1.75; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .hero-trust,
body:where(.pg-pricing-light) .hero-trust { display: flex; gap: 0; justify-content: center; border: 1px solid var(--border); border-radius: 6px; overflow: hidden; max-width: 600px; margin: 0 auto; background: var(--bg2); }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .hero-trust-item,
body:where(.pg-pricing-light) .hero-trust-item { flex: 1; padding: 14px 16px; text-align: center; border-right: 1px solid var(--border); font-size: 11px; color: var(--gray); letter-spacing: 0.04em; line-height: 1.45; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .hero-trust-item strong,
body:where(.pg-pricing-light) .hero-trust-item strong { display: block; color: var(--green); font-size: 15px; font-weight: 800; letter-spacing: -0.02em; margin-bottom: 3px; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .toggle-label,
body:where(.pg-pricing-light) .toggle-label { font-size: 13px; color: var(--gray-lt); font-weight: 500; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .toggle-label.active,
body:where(.pg-pricing-light) .toggle-label.active { color: var(--white); font-weight: 700; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .toggle-wrap,
body:where(.pg-pricing-light) .toggle-wrap { position: relative; width: 52px; height: 28px; background: var(--bg3); border: 1px solid var(--border); border-radius: 14px; cursor: pointer; transition: background 0.2s; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .toggle-knob,
body:where(.pg-pricing-light) .toggle-knob { position: absolute; top: 3px; left: 3px; width: 20px; height: 20px; background: var(--white); border-radius: 50%; transition: transform 0.2s; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .toggle-wrap.on .toggle-knob,
body:where(.pg-pricing-light) .toggle-wrap.on .toggle-knob { transform: translateX(24px); background: #000; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .save-badge,
body:where(.pg-pricing-light) .save-badge { background: rgba(61,214,57,0.15); border: 1px solid var(--border2); color: var(--green); font-size: 10px; font-weight: 700; letter-spacing: 0.1em; padding: 3px 10px; border-radius: 20px; text-transform: uppercase; }
/* shared by: pricing, pricing_light */
/* PRICING CARDS */
body:where(.pg-pricing) .pricing-grid,
body:where(.pg-pricing-light) .pricing-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; align-items: start; margin-bottom: 48px; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .price-card,
body:where(.pg-pricing-light) .price-card {
  background: var(--card-bg); border: 1px solid var(--border); border-radius: 12px;
  padding: 36px 32px; position: relative; transition: border-color 0.2s, transform 0.2s;
}
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .price-card.featured,
body:where(.pg-pricing-light) .price-card.featured {
  border-color: var(--green); background: var(--bg2);
  transform: scale(1.03); box-shadow: 0 0 0 1px rgba(61,214,57,0.2), 0 24px 48px rgba(0,0,0,0.4);
}
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .price-tier,
body:where(.pg-pricing-light) .price-tier { font-size: 10px; color: var(--green); letter-spacing: 0.2em; text-transform: uppercase; margin-bottom: 8px; font-weight: 600; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .price-name,
body:where(.pg-pricing-light) .price-name { font-size: 26px; font-weight: 800; color: var(--white); margin-bottom: 4px; letter-spacing: -0.02em; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .price-tagline,
body:where(.pg-pricing-light) .price-tagline { font-size: 12px; color: var(--gray); margin-bottom: 28px; font-style: italic; line-height: 1.5; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .price-amount,
body:where(.pg-pricing-light) .price-amount { font-size: 56px; font-weight: 800; color: var(--green); letter-spacing: -0.05em; line-height: 1; margin-bottom: 2px; display: flex; align-items: flex-start; gap: 2px; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .price-amount sup,
body:where(.pg-pricing-light) .price-amount sup { font-size: 24px; margin-top: 10px; font-weight: 700; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .price-note,
body:where(.pg-pricing-light) .price-note { font-size: 11px; color: #555; margin-bottom: 24px; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .price-divider,
body:where(.pg-pricing-light) .price-divider { height: 1px; background: var(--border); margin: 24px 0; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .feature-item,
body:where(.pg-pricing-light) .feature-item { display: flex; align-items: flex-start; gap: 10px; padding: 7px 0; border-bottom: 1px solid rgba(255,255,255,0.04); font-size: 12px; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .feature-item:last-child,
body:where(.pg-pricing-light) .feature-item:last-child { border-bottom: none; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .feature-check.no,
body:where(.pg-pricing-light) .feature-check.no { color: #3a3a3a; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .feature-text,
body:where(.pg-pricing-light) .feature-text { color: var(--gray-lt); line-height: 1.45; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .feature-text.na,
body:where(.pg-pricing-light) .feature-text.na { color: #444; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .feature-tag,
body:where(.pg-pricing-light) .feature-tag { display: inline-block; font-size: 9px; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; padding: 1px 6px; border-radius: 3px; margin-left: 6px; vertical-align: middle; background: rgba(61,214,57,0.12); color: var(--green); border: 1px solid var(--border2); }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .price-btn,
body:where(.pg-pricing-light) .price-btn { display: block; text-align: center; padding: 14px; border-radius: 6px; font-weight: 700; font-size: 13px; text-decoration: none; transition: all 0.2s; letter-spacing: 0.04em; font-family: var(--font); }
/* shared by: pricing, pricing_light */
/* PRICING NOTE */
body:where(.pg-pricing) .pricing-note,
body:where(.pg-pricing-light) .pricing-note { text-align: center; padding: 20px; background: var(--bg2); border: 1px solid var(--border); border-radius: 8px; font-size: 12px; color: var(--gray); max-width: 680px; margin: 0 auto; line-height: 1.7; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .stat-label,
body:where(.pg-pricing-light) .stat-label { font-size: 11px; color: var(--gray); letter-spacing: 0.08em; text-transform: uppercase; }
/* shared by: pricing, pricing_light */
/* COMPARISON TABLE */
body:where(.pg-pricing) .compare-wrap,
body:where(.pg-pricing-light) .compare-wrap { border: 1px solid var(--border); border-radius: 12px; overflow: hidden; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .compare-table th,
body:where(.pg-pricing-light) .compare-table th,
body:where(.pg-pricing) .compare-table td,
body:where(.pg-pricing-light) .compare-table td { padding: 14px 20px; text-align: left; font-size: 12px; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .compare-table thead tr,
body:where(.pg-pricing-light) .compare-table thead tr { background: var(--bg3); border-bottom: 1px solid var(--border); }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .compare-table thead th,
body:where(.pg-pricing-light) .compare-table thead th { color: var(--gray); font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; font-weight: 600; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .compare-table thead th.plan-col,
body:where(.pg-pricing-light) .compare-table thead th.plan-col { text-align: center; color: var(--gray-lt); font-size: 12px; letter-spacing: 0.04em; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .compare-table tbody tr,
body:where(.pg-pricing-light) .compare-table tbody tr { border-bottom: 1px solid rgba(255,255,255,0.04); transition: background 0.15s; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .compare-table tbody tr:last-child,
body:where(.pg-pricing-light) .compare-table tbody tr:last-child { border-bottom: none; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .compare-table .cat-row td,
body:where(.pg-pricing-light) .compare-table .cat-row td { background: var(--bg2); color: var(--green); font-weight: 700; font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; padding: 12px 20px; border-top: 1px solid var(--border); }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .compare-table td:first-child,
body:where(.pg-pricing-light) .compare-table td:first-child { color: var(--white); }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .compare-table td.featured,
body:where(.pg-pricing-light) .compare-table td.featured { background: rgba(61,214,57,0.03); }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .dash-icon,
body:where(.pg-pricing-light) .dash-icon { color: #333; vertical-align: middle; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .partial,
body:where(.pg-pricing-light) .partial { font-size: 11px; color: var(--gray); text-align: center; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .addon-card,
body:where(.pg-pricing-light) .addon-card {
  background: var(--card-bg); border: 1px solid var(--border); border-radius: 10px;
  padding: 28px; display: flex; gap: 20px; align-items: flex-start;
  transition: border-color 0.25s, transform 0.2s; position: relative; overflow: hidden;
}
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .addon-card:hover,
body:where(.pg-pricing-light) .addon-card:hover { border-color: var(--border2); transform: translateY(-2px); }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .addon-icon,
body:where(.pg-pricing-light) .addon-icon { width: 44px; height: 44px; background: rgba(61,214,57,0.1); border: 1px solid var(--border2); border-radius: 8px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .addon-name,
body:where(.pg-pricing-light) .addon-name { font-size: 16px; font-weight: 700; color: var(--white); letter-spacing: -0.01em; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .addon-type,
body:where(.pg-pricing-light) .addon-type { font-size: 10px; color: var(--gray); font-weight: 400; letter-spacing: 0; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .addon-desc,
body:where(.pg-pricing-light) .addon-desc { font-size: 12px; color: var(--gray); line-height: 1.65; margin-bottom: 12px; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .addon-pill,
body:where(.pg-pricing-light) .addon-pill { font-size: 10px; color: #666; background: var(--bg3); border: 1px solid rgba(255,255,255,0.06); padding: 3px 8px; border-radius: 3px; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .why-card:hover,
body:where(.pg-pricing-light) .why-card:hover { border-color: var(--border2); transform: translateY(-2px); }
/* shared by: pricing, pricing_light, services */
body:where(.pg-pricing) .faq-item,
body:where(.pg-pricing-light) .faq-item,
body:where(.pg-services) .faq-item { border: 1px solid var(--border); border-radius: 8px; margin-bottom: 10px; overflow: hidden; transition: border-color 0.2s; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .cta-banner::before,
body:where(.pg-pricing-light) .cta-banner::before { content: ''; position: absolute; inset: 0; background: radial-gradient(ellipse 70% 60% at 50% 50%, rgba(61,214,57,0.08) 0%, transparent 70%); }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .cta-title,
body:where(.pg-pricing-light) .cta-title { font-size: clamp(28px, 4.5vw, 52px); font-weight: 800; color: var(--white); letter-spacing: -0.03em; margin-bottom: 18px; line-height: 1.1; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .cta-desc,
body:where(.pg-pricing-light) .cta-desc { font-size: 16px; color: var(--gray-lt); max-width: 480px; margin: 0 auto 40px; line-height: 1.75; }
/* shared by: pricing, pricing_light */
body:where(.pg-pricing) .hero-trust,
body:where(.pg-pricing-light) .hero-trust { animation: fadeUp-v2 0.6s ease 0.44s both; }
/* shared by: pricing, pricing_light */
/* RESPONSIVE */
@media (max-width: 900px) {
body:where(.pg-pricing) .pricing-grid,
body:where(.pg-pricing-light) .pricing-grid { grid-template-columns: 1fr; max-width: 440px; margin-left: auto; margin-right: auto; }
body:where(.pg-pricing) .price-card.featured,
body:where(.pg-pricing-light) .price-card.featured { transform: none; }
body:where(.pg-pricing) .addons-grid,
body:where(.pg-pricing-light) .addons-grid { grid-template-columns: 1fr; }
body:where(.pg-pricing) .why-grid,
body:where(.pg-pricing-light) .why-grid { grid-template-columns: 1fr 1fr; }
body:where(.pg-pricing) .testi-grid,
body:where(.pg-pricing-light) .testi-grid { grid-template-columns: 1fr; max-width: 480px; margin: 0 auto; }
body:where(.pg-pricing) .footer-top,
body:where(.pg-pricing-light) .footer-top { grid-template-columns: 1fr 1fr; }
body:where(.pg-pricing) .stats-row,
body:where(.pg-pricing-light) .stats-row { grid-template-columns: 1fr 1fr; }
body:where(.pg-pricing) .stat-item,
body:where(.pg-pricing-light) .stat-item { border-right: none; border-bottom: 1px solid var(--border); padding: 0 0 24px; }
}
/* shared by: pricing, pricing_light */
@media (max-width: 640px) {
body:where(.pg-pricing) .wrap,
body:where(.pg-pricing-light) .wrap { padding: 0 20px; }
body:where(.pg-pricing) .nav-links,
body:where(.pg-pricing-light) .nav-links { display: none; }
body:where(.pg-pricing) .hero-trust,
body:where(.pg-pricing-light) .hero-trust { flex-direction: column; }
body:where(.pg-pricing) .hero-trust-item,
body:where(.pg-pricing-light) .hero-trust-item { border-right: none; border-bottom: 1px solid var(--border); }
body:where(.pg-pricing) .why-grid,
body:where(.pg-pricing-light) .why-grid { grid-template-columns: 1fr; }
body:where(.pg-pricing) .billing-toggle,
body:where(.pg-pricing-light) .billing-toggle { gap: 10px; }
body:where(.pg-pricing) .cta-banner,
body:where(.pg-pricing-light) .cta-banner { padding: 48px 24px; }
body:where(.pg-pricing) .footer-top,
body:where(.pg-pricing-light) .footer-top { grid-template-columns: 1fr; }
body:where(.pg-pricing) .footer-bottom,
body:where(.pg-pricing-light) .footer-bottom { flex-direction: column; gap: 8px; }
}
/* shared by: privacy, terms */
body:where(.pg-privacy) .legal-prose ul,
body:where(.pg-terms) .legal-prose ul,
body:where(.pg-privacy) .legal-prose ol,
body:where(.pg-terms) .legal-prose ol {margin:0 0 18px;padding-left:0;list-style:none;}
/* shared by: privacy, terms */
body:where(.pg-privacy) .legal-prose ul li,
body:where(.pg-terms) .legal-prose ul li,
body:where(.pg-privacy) .legal-prose ol li,
body:where(.pg-terms) .legal-prose ol li {font-size:14px;color:var(--gray-lt);line-height:1.75;margin-bottom:8px;padding-left:20px;position:relative;}
/* shared by: privacy, terms */
body:where(.pg-privacy) .legal-prose ol,
body:where(.pg-terms) .legal-prose ol {counter-reset:ol;}
/* shared by: privacy, terms */
body:where(.pg-privacy) .legal-prose ol li,
body:where(.pg-terms) .legal-prose ol li {counter-increment:ol;}
/* shared by: privacy, terms */
body:where(.pg-privacy) .callout-info,
body:where(.pg-terms) .callout-info {background:rgba(41,128,185,0.08);border-color:#2980b9;}
/* shared by: privacy, terms */
body:where(.pg-privacy) .callout-info,
body:where(.pg-terms) .callout-info,
body:where(.pg-privacy) .callout-info p,
body:where(.pg-terms) .callout-info p {color:var(--gray-lt);}
/* shared by: privacy, terms */
body:where(.pg-privacy) .callout-tip,
body:where(.pg-terms) .callout-tip {background:rgba(61,214,57,0.06);border-color:var(--green);}
/* shared by: privacy, terms */
body:where(.pg-privacy) .callout-tip,
body:where(.pg-terms) .callout-tip,
body:where(.pg-privacy) .callout-tip p,
body:where(.pg-terms) .callout-tip p {color:var(--gray-lt);}
/* shared by: privacy, terms */
body:where(.pg-privacy) .callout-warn,
body:where(.pg-terms) .callout-warn {background:rgba(230,168,23,0.08);border-color:#e6a817;}
/* shared by: privacy, terms */
body:where(.pg-privacy) .callout-warn,
body:where(.pg-terms) .callout-warn,
body:where(.pg-privacy) .callout-warn p,
body:where(.pg-terms) .callout-warn p {color:var(--gray-lt);}
/* shared by: privacy, terms */
/* Contact card */
body:where(.pg-privacy) .contact-card,
body:where(.pg-terms) .contact-card {background:var(--bg2);border:1px solid var(--border);border-radius:10px;padding:24px;margin-top:8px;}
/* shared by: privacy, terms */
body:where(.pg-privacy) .contact-card h3,
body:where(.pg-terms) .contact-card h3 {font-size:15px;font-weight:700;color:var(--white);margin-bottom:14px;}
/* shared by: privacy, terms */
/* CTA banner */
body:where(.pg-privacy) .cta-banner,
body:where(.pg-terms) .cta-banner {background:var(--bg2);border:1px solid var(--border);border-radius:12px;padding:56px 48px;text-align:center;position:relative;overflow:hidden;margin:0 0 88px;}
/* shared by: privacy, terms */
body:where(.pg-privacy) .cta-label,
body:where(.pg-terms) .cta-label {color:var(--green);font-size:11px;letter-spacing:0.22em;text-transform:uppercase;margin-bottom:12px;display:block;}
/* shared by: privacy, terms */
body:where(.pg-privacy) .cta-title,
body:where(.pg-terms) .cta-title {font-size:clamp(22px,3.5vw,36px);font-weight:800;color:var(--white);letter-spacing:-0.025em;margin-bottom:12px;line-height:1.15;}
/* shared by: privacy, terms */
body:where(.pg-privacy) .cta-desc,
body:where(.pg-terms) .cta-desc {font-size:14px;color:var(--gray-lt);max-width:420px;margin:0 auto 28px;line-height:1.7;}
/* shared by: privacy, terms */
body:where(.pg-privacy) .cta-btns,
body:where(.pg-terms) .cta-btns {display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}
/* shared by: privacy, terms */
body:where(.pg-privacy) .btn-green,
body:where(.pg-terms) .btn-green {background:var(--green);color:#000;font-family:var(--font);font-weight:700;font-size:14px;padding:13px 26px;border-radius:4px;text-decoration:none;transition:background 0.2s,transform 0.15s;display:inline-block;}
/* shared by: privacy, terms */
body:where(.pg-privacy) .btn-outline,
body:where(.pg-terms) .btn-outline {background:transparent;color:var(--white);font-family:var(--font);font-size:14px;padding:12px 26px;border-radius:4px;text-decoration:none;display:inline-block;border:1px solid rgba(255,255,255,0.2);transition:border-color 0.2s,background 0.2s;}

/* ─────────────── 3. ANIMATIONS (global) ─────────────── */
/* ── ANIMATIONS ── */
@keyframes fadeUp-v2 { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: translateY(0); } }
@keyframes tipFade { from { opacity: 0 } to { opacity: 1 } }
@keyframes pulse-v2 { 0%,60%,100% { opacity:.3 } 30% { opacity:1 } }
@keyframes shotShimmer { to { background-position: -200% 0; } }
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* ─────────────── 4. PAGE-SPECIFIC ─────────────── */

/* ── about.html (body.pg-about) ── */
/* ── HERO ── */
body:where(.pg-about) .hero {
  padding: 80px 0 72px;
  text-align: center;
  position: relative;
  overflow: hidden;
}
body:where(.pg-about) .hero::after {
  content: '';
  position: absolute;
  bottom: 0; left: 0; right: 0;
  height: 1px;
  background: var(--border);
}
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-about) .hero-eyebrow {
  display: inline-block; background: rgba(61,214,57,0.1); border: 1px solid var(--border2);
  color: var(--green); font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase;
  padding: 6px 16px; border-radius: 20px; margin-bottom: 28px;
}
body:where(.pg-about) .hero h1 {
  font-size: clamp(36px, 6vw, 68px); font-weight: 800; line-height: 1.05;
  letter-spacing: -0.03em; color: var(--white); margin-bottom: 24px;
  max-width: 780px; margin-left: auto; margin-right: auto;
}
body:where(.pg-about) .hero-sub {
  font-size: 17px; color: var(--gray-lt); max-width: 560px;
  margin: 0 auto 48px; line-height: 1.75;
}
body:where(.pg-about) .hero-buttons { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; margin-bottom: 64px; }
body:where(.pg-about) .location-badge {
  display: inline-flex; align-items: center; gap: 8px;
  background: var(--bg2); border: 1px solid var(--border);
  color: var(--gray); font-size: 12px; padding: 8px 16px; border-radius: 20px;
  letter-spacing: 0.04em;
}
body:where(.pg-about) .location-badge .dot { width: 6px; height: 6px; background: var(--green); border-radius: 50%; }
/* ── MISSION SPLIT ── */
body:where(.pg-about) .split {
  display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center;
}
body:where(.pg-about) .split-text .eyebrow {
  color: var(--green); font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase;
  margin-bottom: 16px; display: block;
}
body:where(.pg-about) .split-text h2 {
  font-size: clamp(26px, 3.5vw, 40px); font-weight: 700; color: var(--white);
  letter-spacing: -0.02em; line-height: 1.15; margin-bottom: 20px;
}
body:where(.pg-about) .split-text p { font-size: 14px; color: var(--gray-lt); line-height: 1.85; margin-bottom: 18px; }
body:where(.pg-about) .split-text p:last-of-type { margin-bottom: 32px; }
/* Mission visual card */
body:where(.pg-about) .mission-card {
  background: var(--bg2); border: 1px solid var(--border); border-radius: 12px;
  padding: 40px; position: relative; overflow: hidden;
}
body:where(.pg-about) .mission-card::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px;
  background: linear-gradient(90deg, var(--green), rgba(61,214,57,0.2));
}
body:where(.pg-about) .mission-card::after {
  content: ''; position: absolute; bottom: -40px; right: -40px;
  width: 160px; height: 160px;
  background: radial-gradient(circle, rgba(61,214,57,0.08) 0%, transparent 70%);
  pointer-events: none;
}
body:where(.pg-about) .mission-quote {
  font-size: 24px; font-weight: 800; color: var(--white); letter-spacing: -0.02em;
  line-height: 1.3; margin-bottom: 24px; position: relative; z-index: 1;
}
body:where(.pg-about) .mission-quote .green { color: var(--green); }
body:where(.pg-about) .mission-quote::before {
  content: '\201C'; font-size: 80px; color: rgba(61,214,57,0.15);
  position: absolute; top: -20px; left: -16px; line-height: 1;
  font-family: Georgia, serif; z-index: 0;
}
body:where(.pg-about) .mission-attrs { display: flex; flex-direction: column; gap: 12px; position: relative; z-index: 1; }
body:where(.pg-about) .mission-attr {
  display: flex; align-items: flex-start; gap: 12px;
  padding: 12px 14px; background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.06); border-radius: 6px;
}
body:where(.pg-about) .mission-attr-icon { font-size: 16px; margin-top: 1px; flex-shrink: 0; }
body:where(.pg-about) .mission-attr-title { font-size: 13px; font-weight: 600; color: var(--white); margin-bottom: 2px; }
body:where(.pg-about) .mission-attr-desc { font-size: 12px; color: var(--gray); line-height: 1.5; }
body:where(.pg-about) .stat-num { font-size: 44px; font-weight: 800; color: var(--green); letter-spacing: -0.04em; line-height: 1; margin-bottom: 6px; }
/* ── STORY TIMELINE ── */
body:where(.pg-about) .timeline { max-width: 760px; margin: 0 auto; position: relative; }
body:where(.pg-about) .timeline::before {
  content: ''; position: absolute; left: 20px; top: 8px; bottom: 8px;
  width: 1px; background: linear-gradient(180deg, var(--green), rgba(61,214,57,0.1));
}
body:where(.pg-about) .timeline-item { display: flex; gap: 32px; margin-bottom: 48px; position: relative; }
body:where(.pg-about) .timeline-item:last-child { margin-bottom: 0; }
body:where(.pg-about) .timeline-dot {
  width: 40px; height: 40px; border-radius: 50%; border: 1px solid var(--green);
  background: var(--bg); display: flex; align-items: center; justify-content: center;
  flex-shrink: 0; position: relative; z-index: 1; font-size: 14px;
}
body:where(.pg-about) .timeline-dot.active { background: var(--green); }
body:where(.pg-about) .timeline-content { padding-top: 8px; flex: 1; }
body:where(.pg-about) .timeline-year { font-size: 10px; color: var(--green); letter-spacing: 0.2em; text-transform: uppercase; margin-bottom: 6px; font-weight: 600; }
body:where(.pg-about) .timeline-title { font-size: 17px; font-weight: 700; color: var(--white); margin-bottom: 8px; letter-spacing: -0.01em; }
body:where(.pg-about) .timeline-desc { font-size: 13px; color: var(--gray); line-height: 1.7; }
/* ── VALUES GRID ── */
body:where(.pg-about) .values-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
body:where(.pg-about) .value-card {
  background: var(--card-bg); border: 1px solid var(--border); border-radius: 8px;
  padding: 32px 28px; position: relative; overflow: hidden; transition: border-color 0.25s, transform 0.2s;
}
body:where(.pg-about) .value-card:hover { border-color: var(--border2); transform: translateY(-2px); }
body:where(.pg-about) .value-card::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px;
  background: var(--green); opacity: 0; transition: opacity 0.25s;
}
body:where(.pg-about) .value-card:hover::before { opacity: 1; }
body:where(.pg-about) .value-icon { font-size: 28px; margin-bottom: 16px; }
body:where(.pg-about) .value-title { font-size: 17px; font-weight: 700; color: var(--white); margin-bottom: 10px; letter-spacing: -0.01em; }
body:where(.pg-about) .value-desc { font-size: 13px; color: var(--gray); line-height: 1.7; }
/* ── TEAM / FOUNDER ── */
body:where(.pg-about) .founder-grid { display: grid; grid-template-columns: 360px 1fr; gap: 72px; align-items: start; }
body:where(.pg-about) .founder-card {
  background: var(--bg2); border: 1px solid var(--border); border-radius: 12px;
  overflow: hidden; position: sticky; top: 100px;
}
body:where(.pg-about) .founder-avatar {
  width: 100%; aspect-ratio: 1; background: var(--bg3);
  display: flex; align-items: center; justify-content: center;
  position: relative; overflow: hidden;
}
body:where(.pg-about) .founder-avatar-inner {
  width: 120px; height: 120px; border-radius: 50%;
  background: linear-gradient(135deg, rgba(61,214,57,0.3), rgba(61,214,57,0.05));
  border: 2px solid var(--border2);
  display: flex; align-items: center; justify-content: center;
  font-size: 48px; font-weight: 800; color: var(--green);
  letter-spacing: -0.04em;
}
body:where(.pg-about) .avatar-glow {
  position: absolute; inset: 0;
  background: radial-gradient(circle at 50% 40%, rgba(61,214,57,0.12) 0%, transparent 60%);
}
body:where(.pg-about) .founder-info { padding: 28px; }
body:where(.pg-about) .founder-name { font-size: 20px; font-weight: 700; color: var(--white); margin-bottom: 4px; letter-spacing: -0.02em; }
body:where(.pg-about) .founder-role { font-size: 12px; color: var(--green); letter-spacing: 0.1em; text-transform: uppercase; margin-bottom: 16px; }
body:where(.pg-about) .founder-location { display: flex; align-items: center; gap: 8px; font-size: 12px; color: var(--gray); margin-bottom: 20px; }
body:where(.pg-about) .founder-socials { display: flex; gap: 10px; }
body:where(.pg-about) .social-link {
  width: 34px; height: 34px; border: 1px solid var(--border); border-radius: 6px;
  display: flex; align-items: center; justify-content: center; font-size: 14px;
  text-decoration: none; transition: border-color 0.2s, background 0.2s; color: var(--gray);
}
body:where(.pg-about) .social-link:hover { border-color: var(--border2); background: rgba(61,214,57,0.08); color: var(--green); }
body:where(.pg-about) .founder-bio .eyebrow { color: var(--green); font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase; margin-bottom: 16px; display: block; }
body:where(.pg-about) .founder-bio h3 { font-size: clamp(22px, 3vw, 34px); font-weight: 700; color: var(--white); letter-spacing: -0.02em; margin-bottom: 20px; line-height: 1.2; }
body:where(.pg-about) .founder-bio h3 .green { color: var(--green); }
body:where(.pg-about) .founder-bio p { font-size: 14px; color: var(--gray-lt); line-height: 1.85; margin-bottom: 18px; }
body:where(.pg-about) .founder-expertise { margin-top: 32px; }
body:where(.pg-about) .expertise-label { font-size: 11px; color: var(--gray); letter-spacing: 0.12em; text-transform: uppercase; margin-bottom: 14px; }
body:where(.pg-about) .expertise-tags { display: flex; flex-wrap: wrap; gap: 8px; }
body:where(.pg-about) .expertise-tag {
  font-size: 11px; color: var(--gray-lt); background: var(--bg2);
  border: 1px solid var(--border); padding: 5px 12px; border-radius: 20px;
  transition: border-color 0.2s, color 0.2s;
}
body:where(.pg-about) .expertise-tag:hover { border-color: var(--border2); color: var(--green); }
body:where(.pg-about) .founder-credentials { margin-top: 32px; display: flex; flex-direction: column; gap: 12px; }
body:where(.pg-about) .credential {
  display: flex; align-items: flex-start; gap: 14px;
  padding: 14px 16px; background: var(--bg2); border: 1px solid var(--border);
  border-radius: 8px; transition: border-color 0.2s;
}
body:where(.pg-about) .credential:hover { border-color: var(--border2); }
body:where(.pg-about) .credential-icon { font-size: 18px; flex-shrink: 0; margin-top: 1px; }
body:where(.pg-about) .credential-title { font-size: 13px; font-weight: 600; color: var(--white); margin-bottom: 2px; }
body:where(.pg-about) .credential-desc { font-size: 12px; color: var(--gray); }
/* ── WHY DALLAS ── */
body:where(.pg-about) .dallas-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center; }
body:where(.pg-about) .dallas-text .eyebrow { color: var(--green); font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase; margin-bottom: 16px; display: block; }
body:where(.pg-about) .dallas-text h2 { font-size: clamp(26px, 3.5vw, 38px); font-weight: 700; color: var(--white); letter-spacing: -0.02em; line-height: 1.15; margin-bottom: 20px; }
body:where(.pg-about) .dallas-text h2 .green { color: var(--green); }
body:where(.pg-about) .dallas-text p { font-size: 14px; color: var(--gray-lt); line-height: 1.85; margin-bottom: 16px; }
body:where(.pg-about) .dallas-map {
  background: var(--bg2); border: 1px solid var(--border); border-radius: 12px;
  padding: 40px; position: relative; overflow: hidden;
}
body:where(.pg-about) .dallas-map::before {
  content: ''; position: absolute; inset: 0;
  background: radial-gradient(circle at 60% 40%, rgba(61,214,57,0.06) 0%, transparent 60%);
}
body:where(.pg-about) .map-points { display: flex; flex-direction: column; gap: 14px; position: relative; z-index: 1; }
body:where(.pg-about) .map-point {
  display: flex; align-items: center; gap: 14px;
  padding: 14px 16px; background: rgba(255,255,255,0.025); border: 1px solid var(--border);
  border-radius: 8px; transition: border-color 0.2s;
}
body:where(.pg-about) .map-point:hover { border-color: var(--border2); }
body:where(.pg-about) .map-point-icon { font-size: 18px; flex-shrink: 0; }
body:where(.pg-about) .map-point-name { font-size: 13px; font-weight: 600; color: var(--white); }
body:where(.pg-about) .map-point-note { font-size: 11px; color: var(--gray); margin-top: 1px; }
body:where(.pg-about) .map-badge {
  margin-left: auto; font-size: 9px; font-weight: 700; letter-spacing: 0.1em;
  text-transform: uppercase; padding: 3px 8px; border-radius: 3px;
  background: rgba(61,214,57,0.12); color: var(--green); border: 1px solid var(--border2);
  white-space: nowrap;
}
/* ── APPROACH ── */
body:where(.pg-about) .approach-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; }
body:where(.pg-about) .approach-card {
  background: var(--card-bg); border: 1px solid var(--border); border-radius: 8px;
  padding: 28px; transition: border-color 0.25s, transform 0.2s; position: relative; overflow: hidden;
}
body:where(.pg-about) .approach-card:hover { border-color: var(--border2); transform: translateY(-2px); }
body:where(.pg-about) .approach-card::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px;
  background: var(--green); opacity: 0; transition: opacity 0.25s;
}
body:where(.pg-about) .approach-card:hover::before { opacity: 1; }
body:where(.pg-about) .approach-num { font-size: 36px; font-weight: 800; color: rgba(61,214,57,0.2); letter-spacing: -0.04em; margin-bottom: 12px; line-height: 1; }
body:where(.pg-about) .approach-title { font-size: 17px; font-weight: 700; color: var(--white); margin-bottom: 10px; }
body:where(.pg-about) .approach-desc { font-size: 13px; color: var(--gray); line-height: 1.7; }
body:where(.pg-about) .cta-title { font-size: clamp(28px, 4.5vw, 52px); font-weight: 800; color: var(--white); letter-spacing: -0.03em; margin-bottom: 16px; line-height: 1.1; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-about) .hero-eyebrow { animation: fadeUp 0.5s ease 0.1s both; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-about) .hero h1 { animation: fadeUp 0.6s ease 0.2s both; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-about) .hero-sub { animation: fadeUp 0.6s ease 0.32s both; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-about) .hero-buttons { animation: fadeUp 0.6s ease 0.42s both; }
/* ── RESPONSIVE ── */
@media (max-width: 960px) {
body:where(.pg-about) .founder-grid { grid-template-columns: 1fr; gap: 48px; }
body:where(.pg-about) .founder-card { position: static; max-width: 400px; }
body:where(.pg-about) .split,
body:where(.pg-about) .dallas-grid { grid-template-columns: 1fr; gap: 48px; }
body:where(.pg-about) .values-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 700px) {
body:where(.pg-about) .wrap { padding: 0 20px; }
body:where(.pg-about) .values-grid,
body:where(.pg-about) .approach-grid,
body:where(.pg-about) .testi-grid { grid-template-columns: 1fr; }
body:where(.pg-about) .stats-row { grid-template-columns: 1fr 1fr; }
body:where(.pg-about) .stat-item { border-right: none; border-bottom: 1px solid var(--border); padding: 0 0 24px; }
body:where(.pg-about) .stat-item:nth-child(odd) { padding-right: 0; }
body:where(.pg-about) .nav-links { display: none; }
body:where(.pg-about) .footer-top { grid-template-columns: 1fr 1fr; }
body:where(.pg-about) .footer-bottom { flex-direction: column; gap: 8px; }
body:where(.pg-about) .cta-banner { padding: 48px 24px; }
}

/* ── about.html: base re-assertion ──
   The original page linked optiseon.css again AFTER its
   style block, so base rules won equal-specificity ties.
   These base rules are re-emitted here to preserve that. */
body:where(.pg-about) .wrap {
  position: relative; z-index: 1;
  max-width: 1100px; margin: 0 auto; padding: 0 32px;
}
body:where(.pg-about) .nav-links { display: flex; align-items: center; gap: 32px; list-style: none; }
/* ── BUTTONS ── */
body:where(.pg-about) .btn-green {
  background: var(--green); color: #000; font-family: var(--font); font-weight: 700;
  font-size: 15px; padding: 16px 32px; border-radius: 4px; text-decoration: none;
  transition: background 0.2s, transform 0.15s; letter-spacing: 0.02em; display: inline-block;
}
body:where(.pg-about) .btn-green:hover { background: #4fe84b; transform: translateY(-1px); }
body:where(.pg-about) .btn-outline {
  background: transparent; color: var(--white); font-family: var(--font); font-size: 15px;
  padding: 15px 32px; border-radius: 4px; text-decoration: none; display: inline-block;
  border: 1px solid rgba(255,255,255,0.2); transition: border-color 0.2s, background 0.2s;
}
body:where(.pg-about) .btn-outline:hover { border-color: rgba(255,255,255,0.5); background: rgba(255,255,255,0.04); }
/* ── SECTIONS ── */
body:where(.pg-about) .section { padding: 88px 0; }
body:where(.pg-about) .section + .section { border-top: 1px solid var(--border); }
body:where(.pg-about) .section-head { text-align: center; margin-bottom: 60px; }
body:where(.pg-about) .section-label {
  color: var(--green); font-size: 11px; letter-spacing: 0.22em;
  text-transform: uppercase; margin-bottom: 14px; display: block;
}
body:where(.pg-about) .section-title {
  font-size: clamp(30px, 4vw, 44px); font-weight: 800; color: var(--white);
  letter-spacing: -0.025em; margin-bottom: 18px; line-height: 1.12;
}
body:where(.pg-about) .section-sub { font-size: 16px; color: var(--gray-lt); max-width: 580px; margin: 0 auto; line-height: 1.75; }
/* ── HERO (home page) ── */
body:where(.pg-about) .hero {
  min-height: 92vh; display: flex; align-items: center;
  padding: 100px 0 80px; text-align: center;
  border-bottom: 1px solid var(--border); position: relative; overflow: hidden;
}
body:where(.pg-about) .hero::after {
  content: ''; position: absolute; width: 900px; height: 600px;
  background: radial-gradient(ellipse, rgba(61,214,57,0.1) 0%, rgba(61,214,57,0.04) 40%, transparent 70%);
  top: 50%; left: 50%; transform: translate(-50%, -60%); pointer-events: none; z-index: 0;
}
body:where(.pg-about) .hero-eyebrow {
  display: inline-flex; align-items: center; gap: 8px;
  background: rgba(61,214,57,0.08); border: 1px solid var(--border2);
  color: var(--green); font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase;
  padding: 7px 18px; border-radius: 20px; margin-bottom: 32px;
}
body:where(.pg-about) .hero h1 {
  font-size: clamp(44px, 8vw, 88px); font-weight: 800; line-height: 1.0;
  letter-spacing: -0.04em; color: var(--white);
  margin-bottom: 28px; max-width: 900px; margin-left: auto; margin-right: auto;
}
body:where(.pg-about) .hero h1 .green { color: var(--green); }
body:where(.pg-about) .hero-sub {
  font-size: 18px; color: var(--gray-lt); max-width: 600px;
  margin: 0 auto 48px; line-height: 1.75; font-weight: 400;
}
body:where(.pg-about) .hero-buttons { display: flex; gap: 16px; justify-content: center; margin-bottom: 64px; flex-wrap: wrap; }
/* ── STATS ── */
body:where(.pg-about) .stats-strip {
  background: var(--bg2); border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border); padding: 48px 0;
}
body:where(.pg-about) .stats-row { display: grid; grid-template-columns: repeat(5, 1fr); text-align: center; }
body:where(.pg-about) .stat-item { border-right: 1px solid var(--border); padding: 0 24px; }
body:where(.pg-about) .stat-item:last-child { border-right: none; }
body:where(.pg-about) .stat-num { font-size: 40px; font-weight: 800; color: var(--green); letter-spacing: -0.04em; line-height: 1; margin-bottom: 6px; }
body:where(.pg-about) .stat-label { font-size: 11px; color: var(--gray); letter-spacing: 0.08em; text-transform: uppercase; line-height: 1.4; }
body:where(.pg-about) .testi-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; }
body:where(.pg-about) .testi-stars { color: var(--green); font-size: 14px; letter-spacing: 3px; margin-bottom: 16px; }
body:where(.pg-about) .testi-quote { font-size: 14px; color: var(--gray-lt); line-height: 1.8; font-style: italic; margin-bottom: 20px; }
body:where(.pg-about) .testi-name { font-size: 13px; font-weight: 700; color: var(--white); }
body:where(.pg-about) .testi-role { font-size: 11px; color: var(--gray); margin-top: 2px; }
/* ── CTA BANNER ── */
body:where(.pg-about) .cta-banner {
  background: var(--bg2); border: 1px solid var(--border); border-radius: 12px;
  padding: 80px 48px; text-align: center; position: relative; overflow: hidden; margin: 88px 0;
}
body:where(.pg-about) .cta-banner::before {
  content: ''; position: absolute; inset: 0;
  background: radial-gradient(ellipse 70% 65% at 50% 50%, rgba(61,214,57,0.08) 0%, transparent 70%);
}
body:where(.pg-about) .cta-banner > * { position: relative; z-index: 1; }
body:where(.pg-about) .cta-title { font-size: clamp(32px, 5vw, 56px); font-weight: 800; color: var(--white); letter-spacing: -0.03em; margin-bottom: 18px; line-height: 1.08; }
body:where(.pg-about) .cta-title .green { color: var(--green); }
body:where(.pg-about) .cta-desc { font-size: 16px; color: var(--gray-lt); max-width: 500px; margin: 0 auto 40px; line-height: 1.75; }
body:where(.pg-about) .cta-btns { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; margin-bottom: 24px; }
/* ── BREADCRUMB ── */
body:where(.pg-about) .breadcrumb-bar { background: var(--bg2); border-bottom: 1px solid var(--border); }
body:where(.pg-about) .breadcrumb {
  padding: 14px 0; font-size: 12px; color: var(--gray);
  display: flex; align-items: center; gap: 0; flex-wrap: wrap;
}
body:where(.pg-about) .breadcrumb a { color: var(--gray); text-decoration: none; transition: color 0.2s; }
body:where(.pg-about) .breadcrumb a:hover { color: var(--green); }
/* ── FOOTER ── */
body:where(.pg-about) footer { border-top: 1px solid var(--border); padding: 64px 0 36px; }
body:where(.pg-about) .footer-top { display: grid; grid-template-columns: 2.2fr 1fr 1fr 1fr; gap: 48px; margin-bottom: 48px; }
body:where(.pg-about) .footer-brand img { height: 28px; margin-bottom: 18px; display: block; }
body:where(.pg-about) .footer-brand p { font-size: 12px; color: var(--gray); line-height: 1.75; max-width: 240px; margin-bottom: 20px; }
body:where(.pg-about) .footer-col h4 { font-weight: 700; font-size: 12px; color: var(--white); letter-spacing: 0.12em; text-transform: uppercase; margin-bottom: 16px; }
body:where(.pg-about) .footer-col ul { list-style: none; }
body:where(.pg-about) .footer-col li { margin-bottom: 10px; }
body:where(.pg-about) .footer-col a { font-size: 12px; color: var(--gray); text-decoration: none; transition: color 0.2s; }
body:where(.pg-about) .footer-col a:hover { color: var(--green); }
body:where(.pg-about) .footer-bottom {
  border-top: 1px solid var(--border); padding-top: 28px;
  display: flex; align-items: center; justify-content: space-between;
}
body:where(.pg-about) .footer-copy { font-size: 11px; color: #444; letter-spacing: 0.06em; }
body:where(.pg-about) .hero-eyebrow { animation: fadeUp 0.5s ease 0.1s both; }
body:where(.pg-about) .hero h1 { animation: fadeUp 0.65s ease 0.22s both; }
body:where(.pg-about) .hero-sub { animation: fadeUp 0.65s ease 0.36s both; }
body:where(.pg-about) .hero-buttons { animation: fadeUp 0.65s ease 0.48s both; }
/* ── BREAKPOINTS ── */
@media (max-width: 960px) {
body:where(.pg-about) .services-4 { grid-template-columns: 1fr 1fr; }
body:where(.pg-about) .why-split { grid-template-columns: 1fr; gap: 48px; }
body:where(.pg-about) .what-grid { grid-template-columns: 1fr; }
body:where(.pg-about) .pricing-grid { grid-template-columns: 1fr; max-width: 440px; margin: 0 auto; }
body:where(.pg-about) .price-card.featured { transform: none; }
body:where(.pg-about) .testi-grid { grid-template-columns: 1fr; }
body:where(.pg-about) .faq-2col { grid-template-columns: 1fr; }
body:where(.pg-about) .process-grid { grid-template-columns: 1fr 1fr; gap: 40px; }
body:where(.pg-about) .process-grid::before { display: none; }
body:where(.pg-about) .footer-top { grid-template-columns: 1fr 1fr; }
body:where(.pg-about) .stats-row { grid-template-columns: 1fr 1fr 1fr; }
}
@media (max-width: 768px) {
body:where(.pg-about) .nav-hamburger { display: flex !important; }
body:where(.pg-about) .nav-links { display: none !important; }
}
@media (max-width: 640px) {
body:where(.pg-about) .wrap { padding: 0 20px; }
body:where(.pg-about) .hero { min-height: auto; padding: 72px 0 60px; }
body:where(.pg-about) .services-4 { grid-template-columns: 1fr; }
body:where(.pg-about) .trust-strip { flex-direction: column; }
body:where(.pg-about) .trust-badge { border-right: none; border-bottom: 1px solid var(--border); }
body:where(.pg-about) .trust-badge:last-child { border-bottom: none; }
body:where(.pg-about) .stats-row { grid-template-columns: 1fr 1fr; }
body:where(.pg-about) .stat-item { border-right: none; border-bottom: 1px solid var(--border); padding: 0 0 24px; }
body:where(.pg-about) .testi-wrap { padding: 36px 24px; }
body:where(.pg-about) .cta-banner { padding: 52px 24px; margin: 56px 0; }
body:where(.pg-about) .footer-top { grid-template-columns: 1fr; }
body:where(.pg-about) .footer-bottom { flex-direction: column; gap: 8px; align-items: flex-start; }
body:where(.pg-about) .process-grid { grid-template-columns: 1fr; }
}

/* ── ai-visibility-check.html (body.pg-ai-visibility-check) ── */
/* ── SECTION ── */
body:where(.pg-ai-visibility-check) .section { padding: 72px 0; }
body:where(.pg-ai-visibility-check) .section + .section { border-top: 1px solid var(--border); }
/* ── LEAD MAGNET SPLIT ── */
body:where(.pg-ai-visibility-check) .lead { padding: 64px 0 72px; }
body:where(.pg-ai-visibility-check) .lead-grid {
    display: grid;
    grid-template-columns: 1fr 460px;
    gap: 56px;
    align-items: start;
  }
body:where(.pg-ai-visibility-check) .lead-eyebrow {
    display: inline-block; background: rgba(61,214,57,0.1); border: 1px solid var(--border2);
    color: var(--green); font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase;
    padding: 6px 16px; border-radius: 20px; margin-bottom: 24px;
  }
body:where(.pg-ai-visibility-check) .lead-text h1 {
    font-size: clamp(34px, 5vw, 52px); font-weight: 800; line-height: 1.06;
    letter-spacing: -0.03em; color: var(--white); margin-bottom: 20px; max-width: 600px;
  }
body:where(.pg-ai-visibility-check) .lead-text h1 .green { color: var(--green); }
body:where(.pg-ai-visibility-check) .lead-sub { font-size: 16px; color: var(--gray-lt); line-height: 1.75; max-width: 520px; margin-bottom: 32px; }
body:where(.pg-ai-visibility-check) .discover-list { list-style: none; display: flex; flex-direction: column; gap: 14px; margin-bottom: 32px; }
body:where(.pg-ai-visibility-check) .discover-list li { display: flex; align-items: flex-start; gap: 12px; font-size: 14px; color: var(--gray-lt); line-height: 1.55; }
body:where(.pg-ai-visibility-check) .discover-check {
    width: 22px; height: 22px; border-radius: 50%; flex-shrink: 0; margin-top: 1px;
    background: rgba(61,214,57,0.12); border: 1px solid var(--border2);
    display: flex; align-items: center; justify-content: center;
  }
body:where(.pg-ai-visibility-check) .lead-proof {
    display: flex; gap: 0; flex-wrap: wrap;
    border: 1px solid var(--border); border-radius: 8px; overflow: hidden; max-width: 520px;
  }
body:where(.pg-ai-visibility-check) .proof-item { flex: 1; min-width: 120px; padding: 18px 20px; border-right: 1px solid var(--border); background: var(--bg2); }
body:where(.pg-ai-visibility-check) .proof-item:last-child { border-right: none; }
body:where(.pg-ai-visibility-check) .proof-num { font-size: 26px; font-weight: 800; color: var(--green); letter-spacing: -0.03em; line-height: 1; margin-bottom: 5px; }
body:where(.pg-ai-visibility-check) .proof-label { font-size: 11px; color: var(--gray); letter-spacing: 0.06em; }
/* ── FORM CARD ── */
body:where(.pg-ai-visibility-check) .form-wrap {
    background: var(--bg2); border: 1px solid var(--border2); border-radius: 12px;
    padding: 36px; position: relative; overflow: hidden; position: sticky; top: 96px;
  }
body:where(.pg-ai-visibility-check) .form-header { margin-bottom: 26px; }
body:where(.pg-ai-visibility-check) .form-badge {
    display: inline-block; background: rgba(61,214,57,0.12); color: var(--green);
    font-size: 10px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase;
    padding: 4px 12px; border-radius: 20px; margin-bottom: 14px; border: 1px solid var(--border2);
  }
body:where(.pg-ai-visibility-check) .form-header h2 { font-size: 22px; font-weight: 800; color: var(--white); letter-spacing: -0.02em; margin-bottom: 6px; }
body:where(.pg-ai-visibility-check) .form-header p { font-size: 13px; color: var(--gray); line-height: 1.6; }
body:where(.pg-ai-visibility-check) .form-group { margin-bottom: 18px; }
body:where(.pg-ai-visibility-check) input[type="text"],
body:where(.pg-ai-visibility-check) input[type="email"],
body:where(.pg-ai-visibility-check) input[type="url"] {
    width: 100%; background: var(--bg3); border: 1px solid rgba(255,255,255,0.1);
    border-radius: 6px; color: var(--white); font-family: var(--font); font-size: 14px;
    padding: 12px 14px; outline: none; transition: border-color 0.2s, background 0.2s;
    -webkit-appearance: none; appearance: none;
  }
body:where(.pg-ai-visibility-check) input::placeholder { color: #444; }
body:where(.pg-ai-visibility-check) input:focus { border-color: var(--border2); background: #1e1e1e; }
body:where(.pg-ai-visibility-check) .submit-btn {
    width: 100%; background: var(--green); color: #000; border: none; cursor: pointer;
    font-family: var(--font); font-weight: 700; font-size: 14px; padding: 15px 28px;
    border-radius: 6px; transition: background 0.2s, transform 0.15s; letter-spacing: 0.02em;
    display: flex; align-items: center; justify-content: center; gap: 6px; margin-top: 6px;
  }
body:where(.pg-ai-visibility-check) .submit-btn:hover:not(:disabled) { background: #4fe84b; transform: translateY(-1px); }
body:where(.pg-ai-visibility-check) .submit-btn:disabled { opacity: 0.65; cursor: not-allowed; }
body:where(.pg-ai-visibility-check) .submit-note { font-size: 11px; color: #555; margin-top: 14px; text-align: center; line-height: 1.6; }
body:where(.pg-ai-visibility-check) .form-success { display: none; text-align: center; padding: 24px 8px; }
body:where(.pg-ai-visibility-check) .form-success-icon {
    width: 56px; height: 56px; border-radius: 50%; margin: 0 auto 18px;
    background: rgba(61,214,57,0.12); border: 1px solid var(--border2);
    display: flex; align-items: center; justify-content: center; color: var(--green);
  }
body:where(.pg-ai-visibility-check) .form-success h3 { font-size: 21px; font-weight: 800; color: var(--white); margin-bottom: 10px; letter-spacing: -0.02em; }
body:where(.pg-ai-visibility-check) .form-success p { font-size: 14px; color: var(--gray-lt); line-height: 1.7; }
body:where(.pg-ai-visibility-check) .form-success a { color: var(--green); text-decoration: none; }
body:where(.pg-ai-visibility-check) .form-success a:hover { text-decoration: underline; }
/* ── WHAT WE CHECK ── */
body:where(.pg-ai-visibility-check) .check-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
body:where(.pg-ai-visibility-check) .check-card {
    background: var(--bg2); border: 1px solid var(--border); border-radius: 10px;
    padding: 24px 20px; transition: border-color 0.25s, transform 0.2s;
  }
body:where(.pg-ai-visibility-check) .check-card:hover { border-color: var(--border2); transform: translateY(-2px); }
body:where(.pg-ai-visibility-check) .check-card-icon {
    width: 42px; height: 42px; border-radius: 10px; margin-bottom: 16px;
    background: rgba(61,214,57,0.1); border: 1px solid var(--border2);
    display: flex; align-items: center; justify-content: center;
  }
body:where(.pg-ai-visibility-check) .check-card h3 { font-size: 14px; font-weight: 700; color: var(--white); margin-bottom: 8px; letter-spacing: -0.01em; }
body:where(.pg-ai-visibility-check) .check-card p { font-size: 12.5px; color: var(--gray-lt); line-height: 1.65; }
/* ── HOW IT WORKS ── */
body:where(.pg-ai-visibility-check) .steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; position: relative; }
body:where(.pg-ai-visibility-check) .steps::before {
    content: ''; position: absolute; top: 27px; left: 16%; right: 16%;
    height: 1px; background: linear-gradient(90deg, var(--green), rgba(61,214,57,0.1));
  }
body:where(.pg-ai-visibility-check) .step { position: relative; z-index: 1; text-align: center; }
body:where(.pg-ai-visibility-check) .step-num {
    width: 56px; height: 56px; border: 1px solid var(--green); border-radius: 50%;
    background: var(--bg); display: flex; align-items: center; justify-content: center;
    font-weight: 800; font-size: 16px; color: var(--green); margin: 0 auto 18px;
  }
body:where(.pg-ai-visibility-check) .step h3 { font-size: 15px; font-weight: 700; color: var(--white); margin-bottom: 8px; }
body:where(.pg-ai-visibility-check) .step p { font-size: 13px; color: var(--gray-lt); line-height: 1.65; max-width: 260px; margin: 0 auto; }
/* ── CTA BANNER ── */
body:where(.pg-ai-visibility-check) .cta-banner {
    background: var(--bg2); border: 1px solid var(--border); border-radius: 12px;
    padding: 64px 48px; text-align: center; position: relative; overflow: hidden; margin: 0 0 80px;
  }
body:where(.pg-ai-visibility-check) .lead-eyebrow { animation: fadeUp-v2 0.5s ease 0.1s both; }
body:where(.pg-ai-visibility-check) .lead-text h1 { animation: fadeUp-v2 0.6s ease 0.2s both; }
body:where(.pg-ai-visibility-check) .lead-sub { animation: fadeUp-v2 0.6s ease 0.32s both; }
body:where(.pg-ai-visibility-check) .form-wrap { animation: fadeUp-v2 0.6s ease 0.42s both; }
/* ── RESPONSIVE ── */
@media (max-width: 980px) {
body:where(.pg-ai-visibility-check) .lead-grid { grid-template-columns: 1fr; gap: 40px; }
body:where(.pg-ai-visibility-check) .form-wrap { position: static; max-width: 560px; }
body:where(.pg-ai-visibility-check) .check-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 768px) {
body:where(.pg-ai-visibility-check) .nav-hamburger { display: flex !important; }
body:where(.pg-ai-visibility-check) .nav-links { display: none !important; }
body:where(.pg-ai-visibility-check) .steps { grid-template-columns: 1fr; gap: 32px; }
body:where(.pg-ai-visibility-check) .steps::before { display: none; }
body:where(.pg-ai-visibility-check) .footer-top { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px) {
body:where(.pg-ai-visibility-check) .wrap { padding: 0 20px; }
body:where(.pg-ai-visibility-check) .form-wrap { padding: 28px 22px; }
body:where(.pg-ai-visibility-check) .check-grid { grid-template-columns: 1fr; }
body:where(.pg-ai-visibility-check) .lead-proof { flex-direction: column; }
body:where(.pg-ai-visibility-check) .proof-item { border-right: none; border-bottom: 1px solid var(--border); }
body:where(.pg-ai-visibility-check) .proof-item:last-child { border-bottom: none; }
body:where(.pg-ai-visibility-check) .footer-top { grid-template-columns: 1fr; }
body:where(.pg-ai-visibility-check) .footer-bottom { flex-direction: column; gap: 8px; align-items: flex-start; }
body:where(.pg-ai-visibility-check) .cta-banner { padding: 48px 24px; }
}

/* ── ai-visibility-checker.html (body.pg-ai-visibility-checker) ── */
body:where(.pg-ai-visibility-checker) {
  --bg:       #0a0a0a;
  --bg2:      #111111;
  --bg3:      #1a1a1a;
  --green:    #3dd639;
  --green-dim:#2a9e26;
  --white:    #ffffff;
  --gray:     #888888;
  --gray-lt:  #cccccc;
  --border:   rgba(61,214,57,0.15);
  --border2:  rgba(61,214,57,0.3);
  --card-bg:  #111111;
  --font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  /* scoring states (warn/bad layered onto the dark theme) */
  --amber:      #f5b53d;
  --amber-soft: rgba(245,181,61,0.12);
  --red:        #ff5c5c;
  --red-soft:   rgba(255,92,92,0.12);
  --green-soft: rgba(61,214,57,0.12);
}
/* ── HERO ── */
body:where(.pg-ai-visibility-checker) .hero { padding: 64px 0 8px; text-align: center; }
body:where(.pg-ai-visibility-checker) .hero-eyebrow {
  display: inline-block; background: var(--green-soft); border: 1px solid var(--border2);
  color: var(--green); font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase;
  padding: 6px 16px; border-radius: 20px; margin-bottom: 24px; animation: fadeUp-v2 .5s ease .1s both;
}
body:where(.pg-ai-visibility-checker) .hero h1 {
  font-size: clamp(32px, 5vw, 50px); font-weight: 800; line-height: 1.07;
  letter-spacing: -0.03em; color: var(--white); margin: 0 auto 18px; max-width: 720px;
  animation: fadeUp-v2 .6s ease .2s both;
}
body:where(.pg-ai-visibility-checker) .hero-sub { font-size: 16px; color: var(--gray-lt); line-height: 1.75; max-width: 560px; margin: 0 auto; animation: fadeUp-v2 .6s ease .32s both; }
/* ── SEARCH ── */
body:where(.pg-ai-visibility-checker) .search { display: flex; gap: 10px; margin: 32px auto 10px; max-width: 580px; animation: fadeUp-v2 .6s ease .42s both; }
body:where(.pg-ai-visibility-checker) .search input {
  flex: 1; min-width: 0; background: var(--bg3); border: 1px solid rgba(255,255,255,0.1);
  border-radius: 6px; color: var(--white); font-family: var(--font); font-size: 15px;
  padding: 14px 16px; outline: none; transition: border-color 0.2s, background 0.2s; -webkit-appearance: none; appearance: none;
}
body:where(.pg-ai-visibility-checker) .search input::placeholder { color: #444; }
body:where(.pg-ai-visibility-checker) .search input:focus { border-color: var(--border2); background: #1e1e1e; }
body:where(.pg-ai-visibility-checker) .search button {
  flex-shrink: 0; background: var(--green); color: #000; border: none; cursor: pointer;
  font-family: var(--font); font-weight: 700; font-size: 15px; padding: 14px 26px; border-radius: 6px;
  transition: background 0.2s, transform 0.15s; letter-spacing: 0.02em; white-space: nowrap;
}
body:where(.pg-ai-visibility-checker) .search button:hover:not(:disabled) { background: #4fe84b; transform: translateY(-1px); }
body:where(.pg-ai-visibility-checker) .search button:disabled { opacity: 0.6; cursor: not-allowed; }
body:where(.pg-ai-visibility-checker) .examples { text-align: center; font-size: 12.5px; color: var(--gray); margin-bottom: 8px; animation: fadeUp-v2 .6s ease .5s both; }
body:where(.pg-ai-visibility-checker) .examples a { color: var(--green); text-decoration: none; cursor: pointer; margin: 0 6px; }
body:where(.pg-ai-visibility-checker) .examples a:hover { text-decoration: underline; }
body:where(.pg-ai-visibility-checker) .results-wrap { padding: 8px 0 24px; }
body:where(.pg-ai-visibility-checker) .report-actions { display: flex; justify-content: flex-end; margin-bottom: 14px; }
body:where(.pg-ai-visibility-checker) .pdf-btn { display: inline-flex; align-items: center; gap: 8px; background: transparent; color: var(--green); border: 1px solid var(--border2); border-radius: 6px; font-family: var(--font); font-weight: 600; font-size: 13px; padding: 9px 16px; cursor: pointer; transition: background .2s, transform .15s; }
body:where(.pg-ai-visibility-checker) .pdf-btn:hover { background: var(--green-soft); transform: translateY(-1px); }
body:where(.pg-ai-visibility-checker) .pdf-btn:disabled { opacity: .6; cursor: default; transform: none; }
body:where(.pg-ai-visibility-checker) .demo-banner { background: var(--amber-soft); border: 1px solid rgba(245,181,61,0.3); color: var(--amber); font-size: 12.5px; padding: 11px 16px; border-radius: 8px; margin-bottom: 16px; text-align: center; line-height: 1.6; }
body:where(.pg-ai-visibility-checker) .demo-banner strong { font-weight: 700; }
body:where(.pg-ai-visibility-checker) .demo-banner code { background: rgba(255,255,255,0.07); padding: 1px 7px; border-radius: 4px; font-size: 12px; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }
body:where(.pg-ai-visibility-checker) .section-label { color: var(--green); font-size: 12px; letter-spacing: 0.2em; text-transform: uppercase; margin-bottom: 14px; }
/* ── TOOLTIP ── */
body:where(.pg-ai-visibility-checker) .global-tooltip {
  position: fixed; z-index: 200; display: none; pointer-events: none;
  background: #000; color: #fff; padding: 9px 12px; border: 1px solid var(--border2);
  border-radius: 6px; font-size: 12px; line-height: 1.45; width: max-content; max-width: 300px;
  white-space: pre-line; box-shadow: 0 12px 34px rgba(0,0,0,0.6); animation: tipFade .12s ease-out;
}
/* ── LOADING ── */
body:where(.pg-ai-visibility-checker) .loading { padding: 56px 0; text-align: center; }
body:where(.pg-ai-visibility-checker) .loading-title { font-size: 12px; font-weight: 700; letter-spacing: 0.2em; text-transform: uppercase; color: var(--green); }
body:where(.pg-ai-visibility-checker) .loading-dots { display: inline-flex; gap: 7px; margin-top: 16px; }
body:where(.pg-ai-visibility-checker) .loading-dots span { width: 9px; height: 9px; border-radius: 50%; background: var(--green); opacity: .3; animation: pulse-v2 1.4s ease-in-out infinite; }
body:where(.pg-ai-visibility-checker) .loading-dots span:nth-child(2) { animation-delay: .2s; }
body:where(.pg-ai-visibility-checker) .loading-dots span:nth-child(3) { animation-delay: .4s; }
body:where(.pg-ai-visibility-checker) .loading-detail { margin-top: 16px; font-size: 13px; color: var(--gray); max-width: 440px; margin-left: auto; margin-right: auto; }
/* ── CARDS ── */
body:where(.pg-ai-visibility-checker) .card { background: var(--bg2); border: 1px solid var(--border); border-radius: 12px; padding: 28px; margin-bottom: 16px; animation: fadeUp-v2 .4s ease both; }
body:where(.pg-ai-visibility-checker) .card-title { font-size: 12px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--gray-lt); margin-bottom: 18px; }
body:where(.pg-ai-visibility-checker) .card-sub { font-size: 12.5px; color: var(--gray); margin: -10px 0 18px; line-height: 1.5; }
/* ── What AI sees ── */
body:where(.pg-ai-visibility-checker) .ai-sees { display: flex; flex-direction: column; gap: 12px; }
body:where(.pg-ai-visibility-checker) .sees-row { display: grid; grid-template-columns: 130px 1fr; gap: 14px; align-items: baseline; cursor: help; }
body:where(.pg-ai-visibility-checker) .sees-label { font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--gray); }
body:where(.pg-ai-visibility-checker) .sees-val { font-size: 13.5px; color: var(--white); line-height: 1.5; word-break: break-word; }
body:where(.pg-ai-visibility-checker) .sees-val.missing { color: var(--red); font-style: italic; }
body:where(.pg-ai-visibility-checker) .sees-excerpt { display: flex; flex-direction: column; gap: 8px; margin-top: 4px; }
body:where(.pg-ai-visibility-checker) .excerpt-box { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 12px; line-height: 1.6; color: var(--gray-lt); background: var(--bg); border: 1px solid var(--border); border-radius: 8px; padding: 12px 14px; max-height: 150px; overflow: auto; }
body:where(.pg-ai-visibility-checker) .excerpt-box.missing { color: var(--red); font-family: var(--font); font-style: italic; }
/* ── Content & answerability ── */
body:where(.pg-ai-visibility-checker) .content-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
body:where(.pg-ai-visibility-checker) .cstat { background: var(--bg3); border: 1px solid var(--border); border-radius: 9px; padding: 14px 12px; text-align: center; cursor: help; }
body:where(.pg-ai-visibility-checker) .cstat-val { font-size: 22px; font-weight: 800; letter-spacing: -.02em; line-height: 1; color: var(--white); }
body:where(.pg-ai-visibility-checker) .cstat-label { font-size: 10.5px; font-weight: 600; letter-spacing: .05em; text-transform: uppercase; color: var(--gray); margin-top: 7px; }
body:where(.pg-ai-visibility-checker) .cstat.good .cstat-val { color: var(--green); }
body:where(.pg-ai-visibility-checker) .cstat.warn .cstat-val { color: var(--amber); }
body:where(.pg-ai-visibility-checker) .cstat.bad .cstat-val { color: var(--red); }
body:where(.pg-ai-visibility-checker) .cstat.idle .cstat-val { color: var(--gray-lt); }
body:where(.pg-ai-visibility-checker) .schema-block { margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--border); }
body:where(.pg-ai-visibility-checker) .schema-head { font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--gray); margin-bottom: 12px; }
body:where(.pg-ai-visibility-checker) .schema-hint { font-weight: 500; text-transform: none; letter-spacing: 0; color: var(--gray); opacity: .8; }
body:where(.pg-ai-visibility-checker) .schema-chips { display: flex; flex-wrap: wrap; gap: 8px; }
body:where(.pg-ai-visibility-checker) .schema-chip { font-size: 12px; font-weight: 600; padding: 5px 12px; border-radius: 20px; border: 1px solid var(--border); cursor: help; }
body:where(.pg-ai-visibility-checker) .schema-chip.on { background: var(--green-soft); color: var(--green); border-color: var(--border2); }
body:where(.pg-ai-visibility-checker) .schema-chip.off { background: transparent; color: var(--gray); border-style: dashed; }
body:where(.pg-ai-visibility-checker) .schema-chip.neutral { background: var(--bg3); color: var(--gray-lt); }
body:where(.pg-ai-visibility-checker) .schema-invalid { margin-top: 12px; font-size: 12px; color: var(--amber); }
body:where(.pg-ai-visibility-checker) .file-meta { color: var(--gray); }
/* ── length badges (title/desc) ── */
body:where(.pg-ai-visibility-checker) .len-badge { display: inline-block; font-size: 9.5px; font-weight: 700; letter-spacing: .03em; text-transform: none; padding: 2px 7px; border-radius: 10px; margin-left: 8px; vertical-align: middle; border: 1px solid var(--border); }
body:where(.pg-ai-visibility-checker) .len-badge.good { color: var(--green); border-color: var(--border2); background: var(--green-soft); }
body:where(.pg-ai-visibility-checker) .len-badge.warn { color: var(--amber); border-color: rgba(245,181,61,.35); background: rgba(245,181,61,.08); }
body:where(.pg-ai-visibility-checker) .len-badge.bad { color: var(--red); border-color: rgba(255,92,92,.35); background: rgba(255,92,92,.08); }
/* ── Indexing / canonical / social / files card ── */
body:where(.pg-ai-visibility-checker) .meta-block { display: flex; flex-direction: column; gap: 12px; }
body:where(.pg-ai-visibility-checker) .meta-line { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; font-size: 13px; }
body:where(.pg-ai-visibility-checker) .meta-k { font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--gray); min-width: 96px; }
body:where(.pg-ai-visibility-checker) .meta-v { font-weight: 600; }
body:where(.pg-ai-visibility-checker) .meta-v.on { color: var(--green); }
body:where(.pg-ai-visibility-checker) .meta-v.off { color: var(--red); }
body:where(.pg-ai-visibility-checker) .meta-v.idle { color: var(--gray-lt); }
body:where(.pg-ai-visibility-checker) .meta-v.warn { color: var(--amber); }
body:where(.pg-ai-visibility-checker) .meta-chips { display: flex; flex-wrap: wrap; gap: 7px; }
body:where(.pg-ai-visibility-checker) .meta-link { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 11.5px; color: var(--green); text-decoration: none; word-break: break-all; opacity: .9; }
body:where(.pg-ai-visibility-checker) .meta-link:hover { text-decoration: underline; opacity: 1; }
body:where(.pg-ai-visibility-checker) .meta-files { margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--border); display: flex; flex-direction: column; gap: 10px; }
body:where(.pg-ai-visibility-checker) .file-dot2 { width: 8px; height: 8px; border-radius: 50%; flex-shrink: 0; }
body:where(.pg-ai-visibility-checker) .file-dot2.on { background: var(--green); box-shadow: 0 0 6px rgba(61,214,57,.5); }
body:where(.pg-ai-visibility-checker) .file-dot2.off { background: var(--red); }
body:where(.pg-ai-visibility-checker) .meta-missing { font-size: 10.5px; font-weight: 700; color: var(--red); text-transform: uppercase; letter-spacing: .05em; }
/* ── Domain Rating (authority) ── */
body:where(.pg-ai-visibility-checker) .dr-wrap { display: flex; align-items: center; gap: 24px; flex-wrap: wrap; }
body:where(.pg-ai-visibility-checker) .dr-num { font-size: 56px; font-weight: 800; letter-spacing: -.03em; line-height: 1; color: var(--green); flex-shrink: 0; }
body:where(.pg-ai-visibility-checker) .dr-num.warn { color: var(--amber); }
body:where(.pg-ai-visibility-checker) .dr-num.bad { color: var(--gray-lt); }
body:where(.pg-ai-visibility-checker) .dr-max { font-size: 18px; font-weight: 600; color: var(--gray); margin-left: 3px; }
body:where(.pg-ai-visibility-checker) .dr-body { flex: 1; min-width: 220px; }
body:where(.pg-ai-visibility-checker) .dr-name { font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--gray); margin-bottom: 9px; }
body:where(.pg-ai-visibility-checker) .dr-bar { height: 7px; background: var(--bg3); border: 1px solid var(--border); border-radius: 5px; overflow: hidden; margin-bottom: 11px; }
body:where(.pg-ai-visibility-checker) .dr-fill { height: 100%; background: var(--green); border-radius: 5px; transition: width .6s ease; }
body:where(.pg-ai-visibility-checker) .dr-fill.warn { background: var(--amber); }
body:where(.pg-ai-visibility-checker) .dr-fill.bad { background: var(--gray); }
body:where(.pg-ai-visibility-checker) .dr-desc { font-size: 12.5px; color: var(--gray-lt); line-height: 1.55; margin-bottom: 10px; }
body:where(.pg-ai-visibility-checker) .dr-attr { display: inline-block; font-size: 11px; color: var(--gray); text-decoration: none; }
body:where(.pg-ai-visibility-checker) .dr-attr:hover { color: var(--green); text-decoration: underline; }
/* ── Hosting & Domain (infrastructure) ── */
body:where(.pg-ai-visibility-checker) .meta-sub { font-size: 11px; color: var(--gray); }
body:where(.pg-ai-visibility-checker) .ns-list { display: flex; flex-direction: column; gap: 5px; }
body:where(.pg-ai-visibility-checker) .ns-item { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 11.5px; color: var(--gray-lt); }
/* ── Live AI citation check ── */
body:where(.pg-ai-visibility-checker) .cite-card { border-color: var(--border2); }
body:where(.pg-ai-visibility-checker) .cite-cta { display: inline-block; margin-top: 6px; padding: 11px 20px; background: var(--green); color: #06210a; font-weight: 700; font-size: 13px; text-decoration: none; border-radius: 3px; }
body:where(.pg-ai-visibility-checker) .cite-cta:hover { filter: brightness(1.08); }
body:where(.pg-ai-visibility-checker) .cite-form { display: flex; flex-direction: column; gap: 8px; margin-top: 6px; }
body:where(.pg-ai-visibility-checker) .cite-label { font-size: 11px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: var(--gray); margin-top: 4px; }
body:where(.pg-ai-visibility-checker) .cite-input { width: 100%; box-sizing: border-box; background: var(--bg); border: 1px solid var(--border2); border-radius: 3px; color: var(--gray-lt); font: inherit; font-size: 13px; padding: 10px 12px; resize: vertical; }
body:where(.pg-ai-visibility-checker) .cite-input:focus { outline: none; border-color: var(--green); }
body:where(.pg-ai-visibility-checker) .cite-run { margin-top: 6px; padding: 12px 20px; background: var(--green); color: #06210a; font-weight: 700; font-size: 13px; border: none; border-radius: 3px; cursor: pointer; }
body:where(.pg-ai-visibility-checker) .cite-run:hover { filter: brightness(1.08); }
body:where(.pg-ai-visibility-checker) .cite-run:disabled { opacity: .6; cursor: default; }
body:where(.pg-ai-visibility-checker) .cite-note { font-size: 11px; color: var(--gray); }
body:where(.pg-ai-visibility-checker) .cite-out:empty { display: none; }
body:where(.pg-ai-visibility-checker) .cite-loading,
body:where(.pg-ai-visibility-checker) .cite-err { font-size: 13px; color: var(--gray-lt); padding: 14px 0; }
body:where(.pg-ai-visibility-checker) .cite-err { color: var(--amber); }
body:where(.pg-ai-visibility-checker) .cite-results { margin-top: 14px; display: flex; flex-direction: column; gap: 14px; }
body:where(.pg-ai-visibility-checker) .cite-q-echo { font-size: 12.5px; color: var(--gray); font-style: italic; }
body:where(.pg-ai-visibility-checker) .cite-engine { border: 1px solid var(--border); border-radius: 4px; padding: 13px 15px; background: var(--bg); }
body:where(.pg-ai-visibility-checker) .cite-eng-name { font-weight: 700; font-size: 13.5px; margin-bottom: 8px; }
body:where(.pg-ai-visibility-checker) .cite-badges { display: flex; flex-wrap: wrap; gap: 8px; }
body:where(.pg-ai-visibility-checker) .cite-badge { font-size: 11px; font-weight: 700; padding: 4px 10px; border-radius: 12px; border: 1px solid var(--border); }
body:where(.pg-ai-visibility-checker) .cite-badge.good { color: var(--green); border-color: var(--border2); background: var(--green-soft); }
body:where(.pg-ai-visibility-checker) .cite-badge.bad { color: var(--red); border-color: rgba(255,92,92,.3); background: rgba(255,92,92,.07); }
body:where(.pg-ai-visibility-checker) .cite-badge.idle { color: var(--gray); }
body:where(.pg-ai-visibility-checker) .cite-excerpt { margin-top: 10px; font-size: 12px; color: var(--gray-lt); line-height: 1.5; border-left: 2px solid var(--border2); padding-left: 10px; }
body:where(.pg-ai-visibility-checker) .cite-srcs { margin-top: 10px; display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
body:where(.pg-ai-visibility-checker) .cite-srcs-k { font-size: 11px; color: var(--gray); margin-right: 2px; }
body:where(.pg-ai-visibility-checker) .cite-src { font-family: ui-monospace, Menlo, monospace; font-size: 10.5px; color: var(--gray); padding: 2px 7px; border: 1px solid var(--border); border-radius: 10px; }
body:where(.pg-ai-visibility-checker) .cite-src.target { color: var(--green); border-color: var(--border2); background: var(--green-soft); font-weight: 700; }
body:where(.pg-ai-visibility-checker) .cite-foot { font-size: 12.5px; color: var(--gray-lt); padding-top: 4px; }
body:where(.pg-ai-visibility-checker) .cite-foot a,
body:where(.pg-ai-visibility-checker) .cite-q-echo a { color: var(--green); text-decoration: none; }
body:where(.pg-ai-visibility-checker) .cite-foot a:hover { text-decoration: underline; }
body:where(.pg-ai-visibility-checker) .result-url { display: flex; flex-direction: column; gap: 4px; margin-bottom: 24px; padding-bottom: 18px; border-bottom: 1px solid var(--border); }
body:where(.pg-ai-visibility-checker) .result-url .label { font-size: 11px; font-weight: 700; color: var(--green); text-transform: uppercase; letter-spacing: 0.12em; }
body:where(.pg-ai-visibility-checker) .result-url .path { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 13px; color: var(--gray-lt); word-break: break-all; }
body:where(.pg-ai-visibility-checker) .render-note { display: inline-flex; align-items: center; gap: 6px; margin-top: 8px; padding: 4px 12px; border-radius: 20px; font-size: 11px; font-weight: 700; letter-spacing: 0.04em; background: var(--bg3); color: var(--gray); border: 1px solid rgba(255,255,255,0.08); width: max-content; }
body:where(.pg-ai-visibility-checker) .render-note.headless { background: var(--green-soft); color: var(--green); border-color: var(--border2); }
/* ── SCORE HERO ── */
body:where(.pg-ai-visibility-checker) .score-block { text-align: center; margin-bottom: 8px; }
body:where(.pg-ai-visibility-checker) .hero-grid { display: flex; align-items: center; justify-content: center; gap: 28px; margin-bottom: 8px; flex-wrap: wrap; }
body:where(.pg-ai-visibility-checker) .score-col { text-align: center; }
body:where(.pg-ai-visibility-checker) .shot { width: 240px; flex-shrink: 0; }
body:where(.pg-ai-visibility-checker) .shot.shot-failed { display: none; }
body:where(.pg-ai-visibility-checker) .shot-frame { border: 1px solid var(--border); border-radius: 10px; overflow: hidden; background: var(--bg3); box-shadow: 0 8px 30px rgba(0,0,0,.35); }
body:where(.pg-ai-visibility-checker) .shot-bar { display: flex; align-items: center; gap: 5px; padding: 7px 10px; background: #0e0e0e; border-bottom: 1px solid var(--border); }
body:where(.pg-ai-visibility-checker) .shot-bar i { width: 8px; height: 8px; border-radius: 50%; background: #333; flex-shrink: 0; }
body:where(.pg-ai-visibility-checker) .shot-url { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 10px; color: var(--gray); margin-left: 8px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
body:where(.pg-ai-visibility-checker) .shot-img-wrap { position: relative; aspect-ratio: 4 / 3; overflow: hidden; background: linear-gradient(110deg, #141414 8%, #1c1c1c 18%, #141414 33%); background-size: 200% 100%; animation: shotShimmer 1.4s linear infinite; }
body:where(.pg-ai-visibility-checker) .shot-img { width: 100%; height: 100%; object-fit: cover; object-position: top center; display: block; opacity: 0; transition: opacity .35s; }
body:where(.pg-ai-visibility-checker) .shot-img.shot-loaded { opacity: 1; }
body:where(.pg-ai-visibility-checker) .shot-img-wrap.shot-demo { display: flex; align-items: center; justify-content: center; animation: none; background: linear-gradient(135deg, rgba(61,214,57,.12), rgba(61,214,57,.03)); }
body:where(.pg-ai-visibility-checker) .shot-img-wrap.shot-demo span { font-size: 12px; font-weight: 600; color: var(--green); letter-spacing: .04em; }
body:where(.pg-ai-visibility-checker) .shot-img-wrap.shot-fallback { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; animation: none; background: var(--bg3); }
body:where(.pg-ai-visibility-checker) .shot-fav { width: 38px; height: 38px; border-radius: 8px; }
body:where(.pg-ai-visibility-checker) .shot-img-wrap.shot-fallback span { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 11px; color: var(--gray); padding: 0 10px; text-align: center; word-break: break-all; }
body:where(.pg-ai-visibility-checker) .score-label { font-size: 11px; font-weight: 700; letter-spacing: 0.2em; text-transform: uppercase; color: var(--gray); margin-bottom: 6px; }
body:where(.pg-ai-visibility-checker) .score-number { font-size: 72px; font-weight: 800; line-height: 1; letter-spacing: -0.04em; color: var(--white); cursor: help; }
body:where(.pg-ai-visibility-checker) .score-number.good { color: var(--green); text-shadow: 0 0 44px rgba(61,214,57,0.45); }
body:where(.pg-ai-visibility-checker) .score-number.warn { color: var(--amber); text-shadow: 0 0 44px rgba(245,181,61,0.4); }
body:where(.pg-ai-visibility-checker) .score-number.bad { color: var(--red);   text-shadow: 0 0 44px rgba(255,92,92,0.4); }
body:where(.pg-ai-visibility-checker) .score-number.invisible { color: var(--red); text-shadow: 0 0 56px rgba(255,92,92,0.6); }
body:where(.pg-ai-visibility-checker) .score-status { margin: 14px auto 0; max-width: 360px; font-size: 14px; color: var(--gray-lt); }
body:where(.pg-ai-visibility-checker) .score-status.bad,
body:where(.pg-ai-visibility-checker) .score-status.invisible { color: var(--red); }
body:where(.pg-ai-visibility-checker) .signals { display: flex; justify-content: center; gap: 8px; margin-top: 20px; flex-wrap: wrap; }
body:where(.pg-ai-visibility-checker) .signal-pill { display: inline-flex; align-items: center; gap: 6px; padding: 6px 14px; background: var(--bg3); border: 1px solid var(--border); border-radius: 20px; font-size: 12.5px; color: var(--gray-lt); cursor: help; }
body:where(.pg-ai-visibility-checker) .signal-pill strong { color: var(--white); font-weight: 700; }
body:where(.pg-ai-visibility-checker) .segment-chip { display: inline-flex; align-items: center; gap: 7px; margin-top: 16px; padding: 7px 18px; border-radius: 20px; font-size: 11px; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; cursor: help; }
body:where(.pg-ai-visibility-checker) .segment-chip::before { content: ''; width: 6px; height: 6px; border-radius: 50%; }
body:where(.pg-ai-visibility-checker) .segment-chip.good { background: var(--green-soft); color: var(--green); border: 1px solid var(--border2); }
body:where(.pg-ai-visibility-checker) .segment-chip.good::before { background: var(--green); }
body:where(.pg-ai-visibility-checker) .segment-chip.warn { background: var(--amber-soft); color: var(--amber); border: 1px solid rgba(245,181,61,0.3); }
body:where(.pg-ai-visibility-checker) .segment-chip.warn::before { background: var(--amber); }
body:where(.pg-ai-visibility-checker) .segment-chip.bad { background: var(--red-soft); color: var(--red); border: 1px solid rgba(255,92,92,0.3); }
body:where(.pg-ai-visibility-checker) .segment-chip.bad::before { background: var(--red); }
body:where(.pg-ai-visibility-checker) .segment-chip.invisible { background: var(--red); color: #fff; }
body:where(.pg-ai-visibility-checker) .segment-chip.invisible::before { background: #fff; }
/* ── ISSUES + RECS ── */
body:where(.pg-ai-visibility-checker) .issue,
body:where(.pg-ai-visibility-checker) .rec { display: flex; align-items: flex-start; gap: 11px; background: var(--bg3); border: 1px solid var(--border); padding: 13px 15px; margin-bottom: 8px; border-radius: 8px; font-size: 13.5px; }
body:where(.pg-ai-visibility-checker) .issue { cursor: help; align-items: center; }
body:where(.pg-ai-visibility-checker) .issue:last-child,
body:where(.pg-ai-visibility-checker) .rec:last-child { margin-bottom: 0; }
body:where(.pg-ai-visibility-checker) .issue::before,
body:where(.pg-ai-visibility-checker) .rec::before { content: ''; flex-shrink: 0; width: 9px; height: 9px; border-radius: 50%; margin-top: 5px; }
body:where(.pg-ai-visibility-checker) .issue::before { margin-top: 0; }
body:where(.pg-ai-visibility-checker) .issue.high::before { background: var(--red); }
body:where(.pg-ai-visibility-checker) .issue.medium::before { background: var(--amber); }
body:where(.pg-ai-visibility-checker) .issue.low::before { background: var(--gray); }
body:where(.pg-ai-visibility-checker) .rec::before { background: var(--green); }
body:where(.pg-ai-visibility-checker) .issue-message,
body:where(.pg-ai-visibility-checker) .rec-action { color: var(--white); font-weight: 600; flex: 1; min-width: 0; }
body:where(.pg-ai-visibility-checker) .rec-desc { color: var(--gray); font-size: 12.5px; margin-top: 4px; font-weight: 400; line-height: 1.6; }
/* ── BREAKDOWN ── */
body:where(.pg-ai-visibility-checker) .breakdown-row { display: grid; grid-template-columns: 150px 1fr 40px; align-items: center; gap: 14px; margin-bottom: 14px; font-size: 13px; cursor: help; }
body:where(.pg-ai-visibility-checker) .breakdown-row:last-child { margin-bottom: 0; }
body:where(.pg-ai-visibility-checker) .breakdown-label { color: var(--gray-lt); }
body:where(.pg-ai-visibility-checker) .breakdown-bar { height: 8px; background: var(--bg3); border: 1px solid var(--border); border-radius: 20px; overflow: hidden; }
body:where(.pg-ai-visibility-checker) .breakdown-fill { height: 100%; border-radius: 20px; transition: width .6s ease-out; }
body:where(.pg-ai-visibility-checker) .breakdown-fill.good { background: var(--green); box-shadow: 0 0 12px rgba(61,214,57,0.5); }
body:where(.pg-ai-visibility-checker) .breakdown-fill.warn { background: var(--amber); }
body:where(.pg-ai-visibility-checker) .breakdown-fill.bad { background: var(--red); }
body:where(.pg-ai-visibility-checker) .breakdown-fill.unknown { background: #333; }
body:where(.pg-ai-visibility-checker) .breakdown-value { text-align: right; color: var(--white); font-weight: 700; }
/* ── AI brand icons (light up by status) ── */
body:where(.pg-ai-visibility-checker) .ai-icon { display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; flex-shrink: 0; border-radius: 7px; background: var(--bg3); border: 1px solid var(--border); transition: color .2s, filter .2s, border-color .2s; }
body:where(.pg-ai-visibility-checker) .ai-icon svg { width: 15px; height: 15px; display: block; }
body:where(.pg-ai-visibility-checker) .ai-icon.on { color: var(--green); border-color: var(--border2); filter: drop-shadow(0 0 5px rgba(61,214,57,.6)); }
body:where(.pg-ai-visibility-checker) .ai-icon.off { color: var(--red);   border-color: rgba(255,92,92,.4); filter: drop-shadow(0 0 5px rgba(255,92,92,.55)); }
body:where(.pg-ai-visibility-checker) .ai-icon.warn { color: var(--amber); border-color: rgba(245,181,61,.4); filter: drop-shadow(0 0 5px rgba(245,181,61,.5)); }
body:where(.pg-ai-visibility-checker) .ai-icon.idle { color: var(--gray); }
/* ── CRAWLERS ── */
body:where(.pg-ai-visibility-checker) .crawler-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px 28px; }
body:where(.pg-ai-visibility-checker) .crawler-row { display: flex; align-items: center; gap: 11px; font-size: 13px; min-width: 0; cursor: help; }
body:where(.pg-ai-visibility-checker) .crawler-dot { width: 9px; height: 9px; border-radius: 50%; flex-shrink: 0; }
body:where(.pg-ai-visibility-checker) .crawler-dot.allowed { background: var(--green); }
body:where(.pg-ai-visibility-checker) .crawler-dot.blocked { background: var(--red); }
body:where(.pg-ai-visibility-checker) .crawler-dot.unknown { background: var(--gray); }
body:where(.pg-ai-visibility-checker) .crawler-name { color: var(--white); font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
body:where(.pg-ai-visibility-checker) .crawler-vendor { color: var(--gray); font-size: 11.5px; flex-shrink: 0; }
body:where(.pg-ai-visibility-checker) .crawler-files { margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--border); font-size: 12.5px; color: var(--gray-lt); text-align: center; }
body:where(.pg-ai-visibility-checker) .file-status { display: inline-flex; align-items: center; gap: 6px; margin: 0 14px; }
body:where(.pg-ai-visibility-checker) .file-dot { width: 7px; height: 7px; border-radius: 50%; }
body:where(.pg-ai-visibility-checker) .file-dot.present { background: var(--green); }
body:where(.pg-ai-visibility-checker) .file-dot.absent { background: var(--gray); }
/* ── BOT PROBES ── */
body:where(.pg-ai-visibility-checker) .bot-probe-row { display: grid; grid-template-columns: 24px 1fr auto; align-items: center; gap: 14px; font-size: 13px; padding: 11px 0; cursor: help; }
body:where(.pg-ai-visibility-checker) .bot-probe-row + .bot-probe-row { border-top: 1px solid var(--border); }
body:where(.pg-ai-visibility-checker) .bot-probe-dot { width: 9px; height: 9px; border-radius: 50%; }
body:where(.pg-ai-visibility-checker) .bot-probe-dot.good { background: var(--green); }
body:where(.pg-ai-visibility-checker) .bot-probe-dot.warn { background: var(--amber); }
body:where(.pg-ai-visibility-checker) .bot-probe-dot.bad { background: var(--red); }
body:where(.pg-ai-visibility-checker) .bot-probe-dot.unknown { background: var(--gray); }
body:where(.pg-ai-visibility-checker) .bot-probe-name { color: var(--white); font-weight: 600; }
body:where(.pg-ai-visibility-checker) .bot-probe-vendor { color: var(--gray); font-size: 11.5px; margin-left: 6px; }
body:where(.pg-ai-visibility-checker) .bot-probe-verdict { color: var(--gray-lt); font-size: 12px; text-align: right; white-space: nowrap; }
body:where(.pg-ai-visibility-checker) .baseline-banner { margin-top: 14px; padding: 10px 16px; border-radius: 8px; background: var(--green-soft); border: 1px solid var(--border2); color: var(--green); font-size: 12px; font-weight: 700; text-align: center; }
/* ── CONVERSION CTA (matches .cta-banner) ── */
body:where(.pg-ai-visibility-checker) .convert {
  margin: 24px 0 8px; text-align: center; padding: 56px 40px; position: relative; overflow: hidden;
  background: var(--bg2); border: 1px solid var(--border2); border-radius: 12px;
}
body:where(.pg-ai-visibility-checker) .convert::before { content: ''; position: absolute; inset: 0; background: radial-gradient(ellipse 70% 60% at 50% 50%, rgba(61,214,57,0.08) 0%, transparent 70%); }
body:where(.pg-ai-visibility-checker) .convert > * { position: relative; z-index: 1; }
body:where(.pg-ai-visibility-checker) .convert h2 { font-size: clamp(24px, 4vw, 38px); font-weight: 800; color: var(--white); letter-spacing: -0.03em; margin-bottom: 14px; line-height: 1.12; }
body:where(.pg-ai-visibility-checker) .convert h2 .green { color: var(--green); }
body:where(.pg-ai-visibility-checker) .convert p { font-size: 15px; color: var(--gray-lt); max-width: 480px; margin: 0 auto 30px; line-height: 1.7; }
body:where(.pg-ai-visibility-checker) .convert-btn {
  display: inline-flex; align-items: center; gap: 8px; background: var(--green); color: #000;
  font-family: var(--font); font-weight: 700; font-size: 15px; padding: 15px 32px; border-radius: 5px;
  text-decoration: none; transition: background 0.2s, transform 0.15s; letter-spacing: 0.02em;
}
body:where(.pg-ai-visibility-checker) .convert-btn:hover { background: #4fe84b; transform: translateY(-1px); }
body:where(.pg-ai-visibility-checker) .convert-sub { margin-top: 18px; font-size: 12px; color: var(--gray); }
body:where(.pg-ai-visibility-checker) .convert-sub a { color: var(--green); text-decoration: none; }
body:where(.pg-ai-visibility-checker) .error-state { padding: 32px; text-align: center; }
body:where(.pg-ai-visibility-checker) .error-state-title { font-size: 15px; color: var(--red); font-weight: 700; margin-bottom: 8px; }
body:where(.pg-ai-visibility-checker) .error-state-detail { font-size: 13px; color: var(--gray); line-height: 1.6; max-width: 440px; margin: 0 auto; }
body:where(.pg-ai-visibility-checker) .disclaimer { text-align: center; font-size: 12px; color: #555; margin: 24px auto 0; max-width: 600px; line-height: 1.6; }
/* ── FOOTER ── */
body:where(.pg-ai-visibility-checker) footer { border-top: 1px solid var(--border); padding: 60px 0 36px; position: relative; z-index: 1; }
body:where(.pg-ai-visibility-checker) .nav-hamburger span { display: block; width: 18px; height: 2px; background: #fff; border-radius: 2px; transition: transform 0.28s ease, opacity 0.18s ease; transform-origin: center; }
body:where(.pg-ai-visibility-checker) .mob-nav-links a { display: block; padding: 14px 20px; font-size: 15px; font-weight: 500; color: #ccc; text-decoration: none; border-left: 2px solid transparent; transition: color 0.2s, background 0.2s, border-color 0.2s; }
body:where(.pg-ai-visibility-checker) .mob-nav-links a:hover { color: #3dd639; background: rgba(61,214,57,0.05); border-left-color: #3dd639; }
@media (max-width: 900px) {
body:where(.pg-ai-visibility-checker) .crawler-grid { grid-template-columns: 1fr; }
}
@media (max-width: 768px) {
body:where(.pg-ai-visibility-checker) .nav-hamburger { display: flex !important; }
body:where(.pg-ai-visibility-checker) .nav-links { display: none !important; }
body:where(.pg-ai-visibility-checker) .footer-top { grid-template-columns: 1fr 1fr; gap: 32px; }
body:where(.pg-ai-visibility-checker) .score-number { font-size: 60px; }
}
@media (max-width: 560px) {
body:where(.pg-ai-visibility-checker) .wrap { padding: 0 20px; }
body:where(.pg-ai-visibility-checker) .search { flex-direction: column; }
body:where(.pg-ai-visibility-checker) .card { padding: 22px; }
body:where(.pg-ai-visibility-checker) .convert { padding: 40px 24px; }
body:where(.pg-ai-visibility-checker) .hero-grid { gap: 18px; }
body:where(.pg-ai-visibility-checker) .shot { width: 200px; }
body:where(.pg-ai-visibility-checker) .content-grid { grid-template-columns: repeat(2, 1fr); }
body:where(.pg-ai-visibility-checker) .sees-row { grid-template-columns: 1fr; gap: 3px; }
}

/* ── ai-visibility-score-checker.html (body.pg-ai-visibility-score-checker) ── */
body:where(.pg-ai-visibility-score-checker) {
    --bg:#0a0a0a; --panel:#111111; --panel-2:#161616;
    --line:rgba(255,255,255,.09); --line-2:rgba(255,255,255,.14);
    --ink:#f4f4f4; --muted:#9a9a9a; --faint:#6a6a6a;
    --green:#3dd639; --green-dim:#2ea22b;
    --radius:16px; --maxw:1080px;
    --font:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  }
body:where(.pg-ai-visibility-score-checker) {
    margin:0; font-family:var(--font); color:var(--ink); background:var(--bg);
    -webkit-font-smoothing:antialiased; line-height:1.55;
    background-image:radial-gradient(rgba(255,255,255,.04) 1px,transparent 1px);
    background-size:22px 22px;
  }
body:where(.pg-ai-visibility-score-checker) a {color:inherit;text-decoration:none}
body:where(.pg-ai-visibility-score-checker) .wrap {max-width:var(--maxw);margin:0 auto;padding:0 24px}
/* ---------- header ---------- */
body:where(.pg-ai-visibility-score-checker) header.site {position:sticky;top:0;z-index:50;backdrop-filter:blur(10px);
    background:rgba(10,10,10,.72);border-bottom:1px solid var(--line)}
body:where(.pg-ai-visibility-score-checker) .nav {display:flex;align-items:center;justify-content:space-between;height:68px}
body:where(.pg-ai-visibility-score-checker) .nav img {height:30px;display:block}
body:where(.pg-ai-visibility-score-checker) .nav-links {display:flex;align-items:center;gap:28px}
body:where(.pg-ai-visibility-score-checker) .nav-links a {color:var(--muted);font-size:14.5px;font-weight:500;transition:color .15s}
body:where(.pg-ai-visibility-score-checker) .nav-links a:hover {color:var(--ink)}
body:where(.pg-ai-visibility-score-checker) .btn {display:inline-flex;align-items:center;justify-content:center;gap:8px;
    font-weight:600;font-size:14.5px;border-radius:999px;padding:11px 20px;
    cursor:pointer;border:1px solid transparent;transition:transform .12s,background .15s,border-color .15s}
body:where(.pg-ai-visibility-score-checker) .btn:active {transform:translateY(1px)}
body:where(.pg-ai-visibility-score-checker) .btn-green {background:var(--green);color:#06210a}
body:where(.pg-ai-visibility-score-checker) .btn-green:hover {background:#46e642}
body:where(.pg-ai-visibility-score-checker) .btn-ghost {border-color:var(--line-2);color:var(--ink)}
body:where(.pg-ai-visibility-score-checker) .btn-ghost:hover {border-color:var(--green);color:var(--green)}
body:where(.pg-ai-visibility-score-checker) .nav .btn-green {padding:10px 18px}
body:where(.pg-ai-visibility-score-checker) .hamb {display:none;background:none;border:0;color:var(--ink);cursor:pointer}
/* ---------- hero / tool ---------- */
body:where(.pg-ai-visibility-score-checker) main {padding:64px 0 40px}
body:where(.pg-ai-visibility-score-checker) .eyebrow {display:inline-flex;align-items:center;gap:9px;font-size:12.5px;font-weight:600;
    letter-spacing:.14em;text-transform:uppercase;color:var(--green);
    border:1px solid var(--line-2);border-radius:999px;padding:7px 15px;margin-bottom:26px}
body:where(.pg-ai-visibility-score-checker) .eyebrow .dot {width:7px;height:7px;border-radius:50%;background:var(--green);
    box-shadow:0 0 0 4px rgba(61,214,57,.18)}
body:where(.pg-ai-visibility-score-checker) h1 {font-size:clamp(34px,5.4vw,58px);line-height:1.04;letter-spacing:-.025em;
    font-weight:800;margin:0 0 18px}
body:where(.pg-ai-visibility-score-checker) h1 .hl {color:var(--green)}
body:where(.pg-ai-visibility-score-checker) .lede {font-size:clamp(16px,2.1vw,19px);color:var(--muted);max-width:620px;margin:0 0 40px}
/* ---------- the card ---------- */
body:where(.pg-ai-visibility-score-checker) .tool {display:grid;grid-template-columns:1fr;gap:0;
    background:linear-gradient(180deg,var(--panel),var(--panel-2));
    border:1px solid var(--line);border-radius:calc(var(--radius) + 6px);overflow:hidden;
    box-shadow:0 30px 80px -40px rgba(0,0,0,.9)}
body:where(.pg-ai-visibility-score-checker) .tool-head {padding:26px 30px 0}
body:where(.pg-ai-visibility-score-checker) .tool-head h2 {font-size:19px;font-weight:700;margin:0 0 4px;letter-spacing:-.01em}
body:where(.pg-ai-visibility-score-checker) .tool-head p {margin:0;color:var(--faint);font-size:14px}
body:where(.pg-ai-visibility-score-checker) form {padding:24px 30px 30px;display:grid;gap:16px}
body:where(.pg-ai-visibility-score-checker) .field label {display:block;font-size:13px;font-weight:600;color:var(--muted);margin:0 0 8px}
body:where(.pg-ai-visibility-score-checker) .field label .req {color:var(--green);margin-left:3px}
body:where(.pg-ai-visibility-score-checker) .field input {width:100%;background:#0c0c0c;border:1px solid var(--line-2);color:var(--ink);
    font-family:var(--font);font-size:15.5px;padding:14px 16px;border-radius:12px;transition:border-color .15s,box-shadow .15s}
body:where(.pg-ai-visibility-score-checker) .field input::placeholder {color:#5a5a5a}
body:where(.pg-ai-visibility-score-checker) .field input:focus {outline:none;border-color:var(--green);box-shadow:0 0 0 3px rgba(61,214,57,.16)}
body:where(.pg-ai-visibility-score-checker) .field input.bad {border-color:#e0563f;box-shadow:0 0 0 3px rgba(224,86,63,.16)}
body:where(.pg-ai-visibility-score-checker) .err {display:none;color:#f08368;font-size:12.5px;margin-top:7px}
body:where(.pg-ai-visibility-score-checker) .err.show {display:block}
body:where(.pg-ai-visibility-score-checker) .row2 {display:grid;grid-template-columns:1fr 1fr;gap:16px}
body:where(.pg-ai-visibility-score-checker) .submit {margin-top:4px}
body:where(.pg-ai-visibility-score-checker) .submit .btn-green {width:100%;padding:15px;font-size:15.5px}
body:where(.pg-ai-visibility-score-checker) .submit .btn-green[disabled] {opacity:.55;cursor:not-allowed}
body:where(.pg-ai-visibility-score-checker) .legal {font-size:12px;color:var(--faint);text-align:center;margin:2px 0 0}
body:where(.pg-ai-visibility-score-checker) .legal a {color:var(--muted);text-decoration:underline;text-underline-offset:2px}
/* ---------- loading ---------- */
body:where(.pg-ai-visibility-score-checker) .loading {display:none;padding:30px;align-items:center;gap:16px;border-top:1px solid var(--line)}
body:where(.pg-ai-visibility-score-checker) .loading.show {display:flex}
body:where(.pg-ai-visibility-score-checker) .spinner {width:26px;height:26px;border-radius:50%;border:3px solid rgba(255,255,255,.14);
    border-top-color:var(--green);animation:spin .8s linear infinite;flex:0 0 auto}
body:where(.pg-ai-visibility-score-checker) .loading .ltext b {display:block;font-size:14.5px;font-weight:600}
body:where(.pg-ai-visibility-score-checker) .loading .ltext span {font-size:13px;color:var(--faint)}
/* ---------- results ---------- */
body:where(.pg-ai-visibility-score-checker) .results {display:none;border-top:1px solid var(--line)}
body:where(.pg-ai-visibility-score-checker) .results.show {display:block;animation:fade .4s ease}
body:where(.pg-ai-visibility-score-checker) .results-grid {display:grid;grid-template-columns:1.25fr 1fr;gap:0}
body:where(.pg-ai-visibility-score-checker) .shot-cell {padding:30px;border-right:1px solid var(--line)}
body:where(.pg-ai-visibility-score-checker) .score-cell {padding:30px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
body:where(.pg-ai-visibility-score-checker) .shot-label {font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;
    color:var(--faint);margin:0 0 13px}
body:where(.pg-ai-visibility-score-checker) .browser {border:1px solid var(--line-2);border-radius:12px;overflow:hidden;background:#0c0c0c}
body:where(.pg-ai-visibility-score-checker) .browser-bar {display:flex;align-items:center;gap:7px;padding:10px 13px;border-bottom:1px solid var(--line);background:#141414}
body:where(.pg-ai-visibility-score-checker) .browser-bar i {width:10px;height:10px;border-radius:50%;background:#333;display:block}
body:where(.pg-ai-visibility-score-checker) .browser-bar .url {margin-left:8px;font-size:12px;color:var(--faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:ui-monospace,monospace}
body:where(.pg-ai-visibility-score-checker) .shot-frame {position:relative;aspect-ratio:16/10;background:#0c0c0c}
body:where(.pg-ai-visibility-score-checker) .shot-frame img {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top;opacity:0;transition:opacity .5s}
body:where(.pg-ai-visibility-score-checker) .shot-frame img.ready {opacity:1}
body:where(.pg-ai-visibility-score-checker) .shot-frame .placeholder {position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
    color:var(--faint);font-size:13px;gap:10px}
body:where(.pg-ai-visibility-score-checker) .shot-frame .placeholder .spinner {width:18px;height:18px;border-width:2px}
/* score ring */
body:where(.pg-ai-visibility-score-checker) .ring-wrap {position:relative;width:200px;height:200px;margin:4px 0 6px}
body:where(.pg-ai-visibility-score-checker) .ring-wrap svg {transform:rotate(-90deg);width:100%;height:100%}
body:where(.pg-ai-visibility-score-checker) .ring-wrap .track {stroke:rgba(255,255,255,.08)}
body:where(.pg-ai-visibility-score-checker) .ring-wrap .meter {stroke:var(--green);stroke-linecap:round;
    transition:stroke-dashoffset 1.1s cubic-bezier(.2,.8,.2,1)}
body:where(.pg-ai-visibility-score-checker) .ring-num {position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
body:where(.pg-ai-visibility-score-checker) .ring-num b {font-size:54px;font-weight:800;letter-spacing:-.03em;line-height:1}
body:where(.pg-ai-visibility-score-checker) .ring-num small {font-size:12px;color:var(--faint);letter-spacing:.12em;text-transform:uppercase;margin-top:4px}
body:where(.pg-ai-visibility-score-checker) .seg {font-size:18px;font-weight:700;margin:8px 0 2px}
body:where(.pg-ai-visibility-score-checker) .seg-sub {font-size:13.5px;color:var(--muted);max-width:240px;margin:0 0 6px}
/* CTA */
body:where(.pg-ai-visibility-score-checker) .cta {border-top:1px solid var(--line);padding:28px 30px;text-align:center;
    background:radial-gradient(120% 140% at 50% 0%,rgba(61,214,57,.08),transparent 60%)}
body:where(.pg-ai-visibility-score-checker) .cta h3 {font-size:21px;font-weight:800;letter-spacing:-.02em;margin:0 0 8px}
body:where(.pg-ai-visibility-score-checker) .cta p {color:var(--muted);font-size:14.5px;max-width:460px;margin:0 auto 20px}
body:where(.pg-ai-visibility-score-checker) .cta .btn-green {padding:14px 28px;font-size:15px}
body:where(.pg-ai-visibility-score-checker) .cta .small {display:block;margin-top:12px;font-size:12.5px;color:var(--faint)}
body:where(.pg-ai-visibility-score-checker) .results-error {display:none;padding:26px 30px;border-top:1px solid var(--line);
    color:var(--muted);font-size:14.5px}
body:where(.pg-ai-visibility-score-checker) .results-error.show {display:block}
/* trust strip */
body:where(.pg-ai-visibility-score-checker) .trust {display:flex;flex-wrap:wrap;gap:10px 26px;margin:28px 0 0;color:var(--faint);font-size:13px}
body:where(.pg-ai-visibility-score-checker) .trust span {display:inline-flex;align-items:center;gap:8px}
body:where(.pg-ai-visibility-score-checker) .trust span::before {content:"";width:6px;height:6px;border-radius:50%;background:var(--green)}
/* ---------- footer ---------- */
body:where(.pg-ai-visibility-score-checker) footer.site {border-top:1px solid var(--line);margin-top:70px;padding:54px 0 30px}
body:where(.pg-ai-visibility-score-checker) .foot-grid {display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:30px}
body:where(.pg-ai-visibility-score-checker) .foot-brand img {height:28px;margin-bottom:16px}
body:where(.pg-ai-visibility-score-checker) .foot-brand p {color:var(--muted);font-size:13.5px;max-width:280px;margin:0 0 18px}
body:where(.pg-ai-visibility-score-checker) .socials {display:flex;gap:12px}
body:where(.pg-ai-visibility-score-checker) .socials a {width:34px;height:34px;border:1px solid var(--line-2);border-radius:8px;
    display:flex;align-items:center;justify-content:center;color:var(--muted);transition:.15s}
body:where(.pg-ai-visibility-score-checker) .socials a:hover {border-color:var(--green);color:var(--green)}
body:where(.pg-ai-visibility-score-checker) .foot-col h4 {font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--faint);margin:0 0 16px}
body:where(.pg-ai-visibility-score-checker) .foot-col a,
body:where(.pg-ai-visibility-score-checker) .foot-col span {display:block;color:var(--muted);font-size:13.5px;margin-bottom:11px;transition:color .15s}
body:where(.pg-ai-visibility-score-checker) .foot-col a:hover {color:var(--green)}
body:where(.pg-ai-visibility-score-checker) .foot-bottom {display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;
    margin-top:44px;padding-top:22px;border-top:1px solid var(--line);color:var(--faint);font-size:12.5px}
@media(max-width:860px) {
body:where(.pg-ai-visibility-score-checker) .nav-links {display:none}
body:where(.pg-ai-visibility-score-checker) .hamb {display:block}
body:where(.pg-ai-visibility-score-checker) .row2 {grid-template-columns:1fr}
body:where(.pg-ai-visibility-score-checker) .results-grid {grid-template-columns:1fr}
body:where(.pg-ai-visibility-score-checker) .shot-cell {border-right:0;border-bottom:1px solid var(--line)}
body:where(.pg-ai-visibility-score-checker) .foot-grid {grid-template-columns:1fr 1fr}
}
@media(max-width:520px) {
body:where(.pg-ai-visibility-score-checker) .foot-grid {grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce) {
body:where(.pg-ai-visibility-score-checker), body:where(.pg-ai-visibility-score-checker) * {animation:none!important;transition:none!important}
}

/* ── citations.html (body.pg-citations) ── */
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-citations) .nav-links { display: flex; align-items: center; gap: 32px; list-style: none; }
body:where(.pg-citations) .btn-outline {
  background: transparent; color: var(--white); font-family: var(--font); font-size: 14px;
  padding: 13px 28px; border-radius: 4px; text-decoration: none;
  border: 1px solid rgba(255,255,255,0.2); transition: border-color 0.2s, background 0.2s; display: inline-block;
}
/* ── HERO ── */
body:where(.pg-citations) .hero { padding: 100px 0 80px; text-align: center; position: relative; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-citations) .hero-eyebrow {
  display: inline-block; background: rgba(61,214,57,0.1); border: 1px solid var(--border2);
  color: var(--green); font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase;
  padding: 6px 16px; border-radius: 20px; margin-bottom: 28px;
}
body:where(.pg-citations) .hero h1 {
  font-size: clamp(36px, 6vw, 68px); font-weight: 800; line-height: 1.05;
  letter-spacing: -0.03em; color: var(--white); margin-bottom: 24px;
  max-width: 860px; margin-left: auto; margin-right: auto;
}
body:where(.pg-citations) .hero-sub {
  font-size: 16px; color: var(--gray-lt); max-width: 580px;
  margin: 0 auto 40px; line-height: 1.75;
}
body:where(.pg-citations) .hero-buttons { display: flex; gap: 16px; justify-content: center; margin-bottom: 56px; flex-wrap: wrap; }
body:where(.pg-citations) .trust-badges { display: flex; gap: 0; justify-content: center; flex-wrap: wrap; }
body:where(.pg-citations) .badge { display: flex; align-items: center; gap: 8px; font-size: 12px; color: var(--gray); padding: 0 24px; border-right: 1px solid var(--border); letter-spacing: 0.04em; }
body:where(.pg-citations) .badge:last-child { border-right: none; }
body:where(.pg-citations) .badge-dot { width: 6px; height: 6px; background: var(--green); border-radius: 50%; flex-shrink: 0; }
/* ── WHAT IS CITATIONS — split layout ── */
body:where(.pg-citations) .split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 64px;
  align-items: center;
}
body:where(.pg-citations) .split-text h2 {
  font-size: clamp(26px, 3.5vw, 38px); font-weight: 700; color: var(--white);
  letter-spacing: -0.02em; line-height: 1.15; margin-bottom: 20px;
}
body:where(.pg-citations) .split-text p { font-size: 14px; color: var(--gray-lt); line-height: 1.8; margin-bottom: 16px; }
body:where(.pg-citations) .split-text p:last-of-type { margin-bottom: 28px; }
body:where(.pg-citations) .split-visual {
  background: var(--bg2);
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 32px;
  position: relative;
}
body:where(.pg-citations) .platform-stack { display: flex; flex-direction: column; gap: 12px; }
body:where(.pg-citations) .platform-row {
  display: flex; align-items: center; justify-content: space-between;
  background: var(--bg3); border: 1px solid var(--border); border-radius: 6px;
  padding: 12px 16px; transition: border-color 0.2s;
}
body:where(.pg-citations) .platform-row:hover { border-color: var(--border2); }
body:where(.pg-citations) .platform-left { display: flex; align-items: center; gap: 12px; }
body:where(.pg-citations) .platform-icon { font-size: 18px; }
body:where(.pg-citations) .platform-name { font-size: 13px; font-weight: 600; color: var(--white); }
body:where(.pg-citations) .platform-type { font-size: 10px; color: var(--gray); letter-spacing: 0.08em; text-transform: uppercase; }
body:where(.pg-citations) .platform-badge {
  font-size: 9px; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase;
  padding: 3px 8px; border-radius: 3px;
}
body:where(.pg-citations) .badge-llm { background: rgba(61,214,57,0.15); color: var(--green); border: 1px solid rgba(61,214,57,0.3); }
body:where(.pg-citations) .badge-local { background: rgba(41,128,185,0.15); color: #5dade2; border: 1px solid rgba(41,128,185,0.3); }
body:where(.pg-citations) .badge-review { background: rgba(230,168,23,0.15); color: #f0b429; border: 1px solid rgba(230,168,23,0.3); }
body:where(.pg-citations) .badge-dir { background: rgba(136,136,136,0.15); color: var(--gray); border: 1px solid rgba(136,136,136,0.3); }
body:where(.pg-citations) .visual-caption {
  margin-top: 16px; font-size: 11px; color: #555; text-align: center; letter-spacing: 0.06em;
}
/* ── TIERS SECTION ── */
body:where(.pg-citations) .tiers-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
body:where(.pg-citations) .tier-card {
  background: var(--card-bg); border: 1px solid var(--border); border-radius: 8px;
  padding: 28px 24px; position: relative; overflow: hidden; transition: border-color 0.25s, transform 0.2s;
}
body:where(.pg-citations) .tier-card:hover { border-color: var(--border2); transform: translateY(-2px); }
body:where(.pg-citations) .tier-card::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px;
  background: var(--green); opacity: 0; transition: opacity 0.25s;
}
body:where(.pg-citations) .tier-card:hover::before { opacity: 1; }
body:where(.pg-citations) .tier-pill {
  display: inline-block; font-size: 9px; font-weight: 700; letter-spacing: 0.14em;
  text-transform: uppercase; padding: 3px 10px; border-radius: 3px; margin-bottom: 14px;
}
body:where(.pg-citations) .tier-0-pill { background: rgba(123,47,190,0.2); color: #b07ee8; border: 1px solid rgba(123,47,190,0.4); }
body:where(.pg-citations) .tier-1-pill { background: rgba(61,214,57,0.12); color: var(--green); border: 1px solid var(--border2); }
body:where(.pg-citations) .tier-2-pill { background: rgba(41,128,185,0.15); color: #5dade2; border: 1px solid rgba(41,128,185,0.3); }
body:where(.pg-citations) .tier-3-pill { background: rgba(136,136,136,0.12); color: #aaa; border: 1px solid rgba(136,136,136,0.25); }
body:where(.pg-citations) .tier-4-pill { background: rgba(230,168,23,0.15); color: #f0b429; border: 1px solid rgba(230,168,23,0.3); }
body:where(.pg-citations) .tier-5-pill { background: rgba(14,138,138,0.15); color: #4ecdc4; border: 1px solid rgba(14,138,138,0.3); }
body:where(.pg-citations) .tier-name { font-size: 16px; font-weight: 700; color: var(--white); margin-bottom: 6px; letter-spacing: -0.01em; }
body:where(.pg-citations) .tier-count { font-size: 12px; color: var(--gray); margin-bottom: 14px; }
body:where(.pg-citations) .tier-desc { font-size: 12px; color: #777; line-height: 1.6; margin-bottom: 16px; }
body:where(.pg-citations) .tier-examples { display: flex; flex-wrap: wrap; gap: 6px; }
body:where(.pg-citations) .tier-example {
  font-size: 10px; color: #666; background: var(--bg3); border: 1px solid rgba(255,255,255,0.06);
  padding: 3px 8px; border-radius: 3px;
}
body:where(.pg-citations) .stats-row { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; text-align: center; }
body:where(.pg-citations) .stat-num { font-size: 42px; font-weight: 800; color: var(--green); letter-spacing: -0.04em; line-height: 1; margin-bottom: 6px; }
/* ── HOW IT HELPS — feature grid ── */
body:where(.pg-citations) .feature-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; }
body:where(.pg-citations) .feature-icon { font-size: 26px; margin-bottom: 14px; }
body:where(.pg-citations) .feature-title { font-size: 16px; font-weight: 700; color: var(--white); margin-bottom: 8px; }
body:where(.pg-citations) .feature-desc { font-size: 13px; color: var(--gray); line-height: 1.65; }
/* ── PRICING — 5 packages ── */
body:where(.pg-citations) .pricing-grid-5 {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 16px;
  align-items: start;
}
body:where(.pg-citations) .price-card {
  background: var(--card-bg); border: 1px solid var(--border); border-radius: 8px;
  padding: 28px 20px; position: relative; transition: border-color 0.2s;
}
body:where(.pg-citations) .price-pop {
  position: absolute; top: -13px; left: 50%; transform: translateX(-50%);
  background: var(--green); color: #000; font-weight: 700; font-size: 9px;
  letter-spacing: 0.12em; padding: 4px 14px; border-radius: 20px; white-space: nowrap; text-transform: uppercase;
}
body:where(.pg-citations) .price-tier { font-size: 9px; color: var(--green); letter-spacing: 0.18em; text-transform: uppercase; margin-bottom: 6px; }
body:where(.pg-citations) .price-name { font-size: 17px; font-weight: 700; color: var(--white); margin-bottom: 4px; letter-spacing: -0.02em; line-height: 1.2; }
body:where(.pg-citations) .price-tagline { font-size: 11px; color: var(--gray); margin-bottom: 20px; font-style: italic; line-height: 1.5; }
body:where(.pg-citations) .price-amount { font-size: 38px; font-weight: 800; color: var(--green); letter-spacing: -0.04em; line-height: 1; margin-bottom: 2px; }
body:where(.pg-citations) .price-amount sup { font-size: 18px; vertical-align: top; margin-top: 6px; }
body:where(.pg-citations) .price-amount span { font-size: 13px; color: var(--gray); font-weight: 400; }
body:where(.pg-citations) .price-cycle { font-size: 10px; color: #555; margin-bottom: 4px; }
body:where(.pg-citations) .price-divider { height: 1px; background: var(--border); margin: 18px 0; }
body:where(.pg-citations) .price-count { font-size: 11px; font-weight: 600; color: var(--gray-lt); margin-bottom: 12px; padding: 6px 0; border-bottom: 1px solid var(--border); }
body:where(.pg-citations) .price-features { list-style: none; margin-bottom: 24px; }
body:where(.pg-citations) .price-features li { font-size: 11px; color: var(--gray-lt); padding: 5px 0 5px 18px; position: relative; border-bottom: 1px solid rgba(255,255,255,0.04); }
body:where(.pg-citations) .price-btn {
  display: block; text-align: center; padding: 11px; border-radius: 4px;
  font-weight: 700; font-size: 12px; text-decoration: none; transition: all 0.2s; letter-spacing: 0.04em;
}
/* ── PROCESS ── */
body:where(.pg-citations) .process-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 0; position: relative; }
body:where(.pg-citations) .process-grid::before {
  content: ''; position: absolute; top: 28px; left: 10%; right: 10%;
  height: 1px; background: linear-gradient(90deg, var(--green), rgba(61,214,57,0.15));
}
body:where(.pg-citations) .proc-title { font-size: 14px; font-weight: 700; color: var(--white); margin-bottom: 6px; }
body:where(.pg-citations) .proc-desc { font-size: 12px; color: var(--gray); line-height: 1.6; }
body:where(.pg-citations) .compare-table th,
body:where(.pg-citations) .compare-table td {
  padding: 14px 16px; text-align: left; font-size: 12px;
  border-bottom: 1px solid rgba(255,255,255,0.05);
}
body:where(.pg-citations) .compare-table thead th {
  background: var(--bg2); color: var(--gray); font-size: 10px; letter-spacing: 0.14em;
  text-transform: uppercase; font-weight: 600; border-bottom: 1px solid var(--border);
}
body:where(.pg-citations) .compare-table thead th:first-child { border-radius: 6px 0 0 0; }
body:where(.pg-citations) .compare-table thead th:last-child { border-radius: 0 6px 0 0; }
body:where(.pg-citations) .compare-table thead th.featured-col { background: rgba(61,214,57,0.08); color: var(--green); }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-citations) .compare-table td { color: var(--gray-lt); }
body:where(.pg-citations) .compare-table td:first-child { color: var(--white); font-weight: 600; }
body:where(.pg-citations) .compare-table td.featured-col { background: rgba(61,214,57,0.04); }
body:where(.pg-citations) .check { color: var(--green); font-weight: 700; }
body:where(.pg-citations) .cross { color: #444; }
body:where(.pg-citations) .compare-wrap { border: 1px solid var(--border); border-radius: 8px; overflow: hidden; }
body:where(.pg-citations) .faq-item {
  border: 1px solid var(--border); border-radius: 8px; margin-bottom: 12px;
  overflow: hidden; transition: border-color 0.2s;
}
body:where(.pg-citations) .faq-q {
  padding: 18px 20px; font-size: 14px; font-weight: 600; color: var(--white);
  cursor: pointer; display: flex; justify-content: space-between; align-items: center;
  background: var(--card-bg); user-select: none;
}
body:where(.pg-citations) .faq-icon { color: var(--green); font-size: 18px; transition: transform 0.2s; flex-shrink: 0; margin-left: 16px; }
body:where(.pg-citations) .faq-item.open .faq-a { max-height: 400px; padding: 16px 20px 20px; }
body:where(.pg-citations) .cta-title { font-size: clamp(30px, 4.5vw, 52px); font-weight: 800; color: var(--white); letter-spacing: -0.03em; margin-bottom: 16px; line-height: 1.1; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-citations) .hero-eyebrow { animation: fadeUp-v2 0.5s ease 0.1s both; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-citations) .hero h1 { animation: fadeUp-v2 0.6s ease 0.2s both; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-citations) .hero-sub { animation: fadeUp-v2 0.6s ease 0.32s both; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-citations) .hero-buttons { animation: fadeUp-v2 0.6s ease 0.42s both; }
body:where(.pg-citations) .trust-badges { animation: fadeUp-v2 0.6s ease 0.52s both; }
/* ── RESPONSIVE ── */
@media (max-width: 1000px) {
body:where(.pg-citations) .pricing-grid-5 { grid-template-columns: repeat(3, 1fr); }
body:where(.pg-citations) .process-grid { grid-template-columns: repeat(3, 1fr); gap: 32px; }
body:where(.pg-citations) .process-grid::before { display: none; }
}
@media (max-width: 768px) {
body:where(.pg-citations) .wrap { padding: 0 20px; }
body:where(.pg-citations) .split { grid-template-columns: 1fr; gap: 40px; }
body:where(.pg-citations) .tiers-grid { grid-template-columns: 1fr 1fr; }
body:where(.pg-citations) .feature-grid { grid-template-columns: 1fr 1fr; }
body:where(.pg-citations) .pricing-grid-5 { grid-template-columns: 1fr 1fr; }
body:where(.pg-citations) .price-card.featured { transform: none; }
body:where(.pg-citations) .testi-grid { grid-template-columns: 1fr; }
body:where(.pg-citations) .footer-top { grid-template-columns: 1fr 1fr; }
body:where(.pg-citations) .stats-row { grid-template-columns: 1fr 1fr; gap: 32px; }
body:where(.pg-citations) .stat-item { border-right: none; border-bottom: 1px solid var(--border); padding-bottom: 24px; }
body:where(.pg-citations) .nav-links { display: none; }
body:where(.pg-citations) .process-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 480px) {
body:where(.pg-citations) .tiers-grid,
body:where(.pg-citations) .feature-grid,
body:where(.pg-citations) .pricing-grid-5,
body:where(.pg-citations) .process-grid,
body:where(.pg-citations) .footer-top { grid-template-columns: 1fr; }
body:where(.pg-citations) .trust-badges { flex-direction: column; align-items: center; gap: 12px; }
body:where(.pg-citations) .badge { border-right: none; }
body:where(.pg-citations) .footer-bottom { flex-direction: column; gap: 8px; }
body:where(.pg-citations) .cta-banner { padding: 48px 24px; }
}
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
@media (max-width: 768px) {
body:where(.pg-citations) .nav-hamburger { display: flex !important; }
body:where(.pg-citations) .nav-links { display: none !important; }
}

/* ── contact.html (body.pg-contact) ── */
body:where(.pg-contact) .section-sub { font-size: 15px; color: var(--gray-lt); line-height: 1.7; }
/* ── HERO ── */
body:where(.pg-contact) .hero { padding: 72px 0 64px; text-align: center; border-bottom: 1px solid var(--border); }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-contact) .hero-eyebrow {
  display: inline-block; background: rgba(61,214,57,0.1); border: 1px solid var(--border2);
  color: var(--green); font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase;
  padding: 6px 16px; border-radius: 20px; margin-bottom: 24px;
}
body:where(.pg-contact) .hero h1 {
  font-size: clamp(36px, 6vw, 64px); font-weight: 800; line-height: 1.05;
  letter-spacing: -0.03em; color: var(--white); margin-bottom: 20px;
  max-width: 680px; margin-left: auto; margin-right: auto;
}
body:where(.pg-contact) .hero-sub {
  font-size: 16px; color: var(--gray-lt); max-width: 520px;
  margin: 0 auto 40px; line-height: 1.75;
}
body:where(.pg-contact) .trust-row {
  display: flex; gap: 0; justify-content: center; flex-wrap: wrap;
  border: 1px solid var(--border); border-radius: 6px; overflow: hidden;
  max-width: 680px; margin: 0 auto;
}
body:where(.pg-contact) .trust-item {
  flex: 1; min-width: 160px; padding: 14px 16px; text-align: center;
  border-right: 1px solid var(--border); background: var(--bg2);
  transition: background 0.2s;
}
body:where(.pg-contact) .trust-item:last-child { border-right: none; }
body:where(.pg-contact) .trust-item:hover { background: var(--bg3); }
body:where(.pg-contact) .trust-icon { font-size: 18px; margin-bottom: 6px; }
body:where(.pg-contact) .trust-text { font-size: 11px; color: var(--gray); letter-spacing: 0.04em; }
/* ── MAIN CONTACT GRID ── */
body:where(.pg-contact) .contact-grid {
  display: grid;
  grid-template-columns: 1fr 420px;
  gap: 48px;
  align-items: start;
}
/* ── FORM ── */
body:where(.pg-contact) .form-wrap {
  background: var(--bg2);
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 40px;
  position: relative;
  overflow: hidden;
}
body:where(.pg-contact) .form-header { margin-bottom: 32px; }
body:where(.pg-contact) .form-header h2 { font-size: 22px; font-weight: 700; color: var(--white); letter-spacing: -0.02em; margin-bottom: 6px; }
body:where(.pg-contact) .form-header p { font-size: 13px; color: var(--gray); }
body:where(.pg-contact) .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
body:where(.pg-contact) .form-group { margin-bottom: 20px; }
body:where(.pg-contact) .form-group.full { grid-column: 1 / -1; }
body:where(.pg-contact) input[type="text"],
body:where(.pg-contact) input[type="email"],
body:where(.pg-contact) input[type="tel"],
body:where(.pg-contact) select,
body:where(.pg-contact) textarea {
  width: 100%; background: var(--bg3); border: 1px solid rgba(255,255,255,0.1);
  border-radius: 6px; color: var(--white); font-family: var(--font); font-size: 14px;
  padding: 12px 14px; outline: none; transition: border-color 0.2s, background 0.2s;
  -webkit-appearance: none; appearance: none;
}
body:where(.pg-contact) input::placeholder,
body:where(.pg-contact) textarea::placeholder { color: #444; }
body:where(.pg-contact) input:focus,
body:where(.pg-contact) select:focus,
body:where(.pg-contact) textarea:focus {
  border-color: var(--border2); background: #1e1e1e;
}
body:where(.pg-contact) select { cursor: pointer; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23888' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 14px center; padding-right: 36px; }
body:where(.pg-contact) select option { background: var(--bg2); color: var(--white); }
body:where(.pg-contact) textarea { resize: vertical; min-height: 120px; }
body:where(.pg-contact) .form-submit {
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
  margin-top: 8px;
}
body:where(.pg-contact) .submit-btn {
  width: 100%; background: var(--green); color: #000; border: none; cursor: pointer;
  font-family: var(--font); font-weight: 700; font-size: 14px; padding: 15px 28px;
  border-radius: 6px; transition: background 0.2s, transform 0.15s; letter-spacing: 0.02em;
}
body:where(.pg-contact) .submit-btn:hover { background: #4fe84b; transform: translateY(-1px); }
body:where(.pg-contact) .submit-note { font-size: 11px; color: #555; margin-top: 12px; text-align: center; }
/* ── SIDEBAR ── */
body:where(.pg-contact) .sidebar { display: flex; flex-direction: column; gap: 20px; }
body:where(.pg-contact) .contact-card {
  background: var(--bg2); border: 1px solid var(--border); border-radius: 10px;
  padding: 28px; transition: border-color 0.2s;
}
body:where(.pg-contact) .contact-card:hover { border-color: var(--border2); }
body:where(.pg-contact) .contact-card-title {
  font-size: 13px; font-weight: 700; color: var(--white); margin-bottom: 16px;
  padding-bottom: 12px; border-bottom: 1px solid var(--border);
  display: flex; align-items: center; gap: 8px;
}
body:where(.pg-contact) .contact-card-title .icon { font-size: 16px; }
body:where(.pg-contact) .contact-item {
  display: flex; align-items: flex-start; gap: 14px;
  padding: 10px 0; border-bottom: 1px solid rgba(255,255,255,0.04);
}
body:where(.pg-contact) .contact-item:last-child { border-bottom: none; padding-bottom: 0; }
body:where(.pg-contact) .contact-item-icon { font-size: 16px; flex-shrink: 0; margin-top: 1px; width: 24px; text-align: center; }
body:where(.pg-contact) .contact-item-label { font-size: 10px; color: var(--gray); letter-spacing: 0.1em; text-transform: uppercase; margin-bottom: 2px; }
body:where(.pg-contact) .contact-item-value { font-size: 13px; color: var(--gray-lt); }
body:where(.pg-contact) .contact-item-value a { color: var(--green); text-decoration: none; transition: opacity 0.2s; }
body:where(.pg-contact) .contact-item-value a:hover { opacity: 0.8; }
/* Booking card special style */
body:where(.pg-contact) .booking-card {
  background: var(--green); border: none; border-radius: 10px; padding: 28px;
  position: relative; overflow: hidden;
}
body:where(.pg-contact) .booking-card::before {
  content: ''; position: absolute; top: -40px; right: -40px;
  width: 120px; height: 120px;
  background: rgba(0,0,0,0.1); border-radius: 50%;
}
body:where(.pg-contact) .booking-card::after {
  content: ''; position: absolute; bottom: -20px; left: -20px;
  width: 80px; height: 80px;
  background: rgba(0,0,0,0.08); border-radius: 50%;
}
body:where(.pg-contact) .booking-card > * { position: relative; z-index: 1; }
body:where(.pg-contact) .booking-badge {
  display: inline-block; background: rgba(0,0,0,0.2); color: #000;
  font-size: 9px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase;
  padding: 3px 10px; border-radius: 20px; margin-bottom: 12px;
}
body:where(.pg-contact) .booking-title { font-size: 18px; font-weight: 800; color: #000; letter-spacing: -0.02em; margin-bottom: 6px; }
body:where(.pg-contact) .booking-desc { font-size: 12px; color: rgba(0,0,0,0.65); line-height: 1.6; margin-bottom: 20px; }
body:where(.pg-contact) .booking-features { list-style: none; margin-bottom: 20px; }
body:where(.pg-contact) .booking-features li { font-size: 12px; color: rgba(0,0,0,0.7); padding: 3px 0 3px 16px; position: relative; }
body:where(.pg-contact) .booking-features li::before { content: '✓'; position: absolute; left: 0; color: #000; font-weight: 700; font-size: 10px; }
body:where(.pg-contact) .booking-btn {
  display: block; text-align: center; background: #000; color: var(--green);
  font-weight: 700; font-size: 13px; padding: 12px 20px; border-radius: 6px;
  text-decoration: none; transition: background 0.2s; letter-spacing: 0.04em;
}
body:where(.pg-contact) .booking-btn:hover { background: #1a1a1a; }
/* Hours card */
body:where(.pg-contact) .hours-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0; }
body:where(.pg-contact) .hour-row {
  display: flex; justify-content: space-between; align-items: center;
  padding: 8px 0; font-size: 12px; border-bottom: 1px solid rgba(255,255,255,0.04);
}
body:where(.pg-contact) .hour-row:last-child,
body:where(.pg-contact) .hour-row:nth-last-child(2) { border-bottom: none; }
body:where(.pg-contact) .hour-day { color: var(--gray); }
body:where(.pg-contact) .hour-time { color: var(--gray-lt); font-weight: 500; }
body:where(.pg-contact) .hour-time.open { color: var(--green); }
body:where(.pg-contact) .hour-time.closed { color: #444; }
/* ── WHAT HAPPENS NEXT ── */
body:where(.pg-contact) .next-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; position: relative; }
body:where(.pg-contact) .next-grid::before {
  content: ''; position: absolute; top: 28px; left: 12%; right: 12%;
  height: 1px; background: linear-gradient(90deg, var(--green), rgba(61,214,57,0.1));
}
body:where(.pg-contact) .next-step { padding: 0 16px 0 0; position: relative; z-index: 1; }
body:where(.pg-contact) .next-num {
  width: 56px; height: 56px; border: 1px solid var(--green); border-radius: 50%;
  background: var(--bg); display: flex; align-items: center; justify-content: center;
  font-weight: 700; font-size: 15px; color: var(--green); margin-bottom: 18px;
}
body:where(.pg-contact) .next-title { font-size: 15px; font-weight: 700; color: var(--white); margin-bottom: 8px; }
body:where(.pg-contact) .next-desc { font-size: 12px; color: var(--gray); line-height: 1.65; }
/* ── FAQ ── */
body:where(.pg-contact) .faq-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
body:where(.pg-contact) .faq-q {
  padding: 16px 18px; font-size: 13px; font-weight: 600; color: var(--white);
  cursor: pointer; display: flex; justify-content: space-between; align-items: center;
  background: var(--card-bg); user-select: none;
}
body:where(.pg-contact) .faq-a {
  padding: 0 18px; max-height: 0; overflow: hidden; transition: max-height 0.3s ease, padding 0.3s ease;
  font-size: 12px; color: var(--gray); line-height: 1.75; background: var(--bg2);
}
body:where(.pg-contact) .faq-item.open .faq-a { max-height: 300px; padding: 14px 18px 18px; }
/* ── SUCCESS STATE ── */
body:where(.pg-contact) .form-success {
  display: none; text-align: center; padding: 40px 20px;
}
body:where(.pg-contact) .form-success-icon { font-size: 48px; margin-bottom: 16px; }
body:where(.pg-contact) .form-success h3 { font-size: 22px; font-weight: 700; color: var(--white); margin-bottom: 8px; }
body:where(.pg-contact) .form-success p { font-size: 14px; color: var(--gray); line-height: 1.7; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-contact) .hero-eyebrow { animation: fadeUp-v2 0.5s ease 0.1s both; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-contact) .hero h1 { animation: fadeUp-v2 0.6s ease 0.2s both; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-contact) .hero-sub { animation: fadeUp-v2 0.6s ease 0.32s both; }
body:where(.pg-contact) .trust-row { animation: fadeUp-v2 0.6s ease 0.44s both; }
/* ── RESPONSIVE ── */
@media (max-width: 900px) {
body:where(.pg-contact) .contact-grid { grid-template-columns: 1fr; }
body:where(.pg-contact) .sidebar { order: -1; display: grid; grid-template-columns: 1fr 1fr; }
body:where(.pg-contact) .booking-card { grid-column: 1 / -1; }
body:where(.pg-contact) .next-grid { grid-template-columns: 1fr 1fr; gap: 32px; }
body:where(.pg-contact) .next-grid::before { display: none; }
body:where(.pg-contact) .faq-grid { grid-template-columns: 1fr; }
body:where(.pg-contact) .stats-row { grid-template-columns: 1fr 1fr; }
body:where(.pg-contact) .stat-item { border-right: none; border-bottom: 1px solid var(--border); padding: 0 0 24px; }
}
@media (max-width: 640px) {
body:where(.pg-contact) .wrap { padding: 0 20px; }
body:where(.pg-contact) .form-wrap { padding: 28px 20px; }
body:where(.pg-contact) .form-row { grid-template-columns: 1fr; }
body:where(.pg-contact) .sidebar { grid-template-columns: 1fr; }
body:where(.pg-contact) .trust-row { flex-direction: column; }
body:where(.pg-contact) .trust-item { border-right: none; border-bottom: 1px solid var(--border); }
body:where(.pg-contact) .trust-item:last-child { border-bottom: none; }
body:where(.pg-contact) .next-grid { grid-template-columns: 1fr; }
body:where(.pg-contact) .footer-top { grid-template-columns: 1fr 1fr; }
body:where(.pg-contact) .footer-bottom { flex-direction: column; gap: 8px; }
body:where(.pg-contact) .cta-banner { padding: 48px 24px; }
body:where(.pg-contact) .nav-links { display: none; }
}
body:where(.pg-contact) .submit-btn.loading { opacity: 0.7; cursor: not-allowed; }

/* ── dr-checker.html (body.pg-dr-checker) ── */
body:where(.pg-dr-checker) {
    --bg:       #0a0a0a;
    --bg2:      #111111;
    --bg3:      #1a1a1a;
    --green:    #3dd639;
    --green-dim:#2a9e26;
    --white:    #ffffff;
    --gray:     #888888;
    --gray-lt:  #cccccc;
    --border:   rgba(61,214,57,0.15);
    --border2:  rgba(61,214,57,0.3);
    --card-bg:  #111111;
    --font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --mono: ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, monospace;
    --radius:    12px;
    --radius-sm: 8px;
  }
/* ── SECTION ── */
body:where(.pg-dr-checker) .section { padding: 64px 0; }
/* ── HERO ── */
body:where(.pg-dr-checker) .hero { padding: 72px 0 8px; text-align: center; position: relative; }
body:where(.pg-dr-checker) .hero h1 {
    font-size: clamp(34px, 5.5vw, 56px); font-weight: 800; line-height: 1.06;
    letter-spacing: -0.03em; color: var(--white); margin-bottom: 20px;
    max-width: 720px; margin-left: auto; margin-right: auto;
  }
body:where(.pg-dr-checker) .hero-sub {
    font-size: 16px; color: var(--gray-lt); max-width: 540px;
    margin: 0 auto; line-height: 1.75;
  }
/* ── TOOL SECTION ── */
body:where(.pg-dr-checker) .tool-section { padding: 48px 0 24px; }
body:where(.pg-dr-checker) .card {
    background: var(--card-bg);
    border: 1px solid var(--border2);
    border-radius: var(--radius);
    width: 100%;
    max-width: 660px;
    margin: 0 auto;
    padding: 36px;
    position: relative;
    overflow: hidden;
  }
body:where(.pg-dr-checker) .card::before {
    content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px;
    background: linear-gradient(90deg, var(--green), rgba(61,214,57,0.2));
  }
body:where(.pg-dr-checker) .notice {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    background: rgba(61,214,57,0.08);
    border: 1px solid var(--border2);
    border-radius: var(--radius-sm);
    padding: 12px 14px;
    margin-bottom: 28px;
    font-size: 13px;
    color: var(--gray-lt);
    line-height: 1.5;
  }
body:where(.pg-dr-checker) .notice svg { flex-shrink: 0; margin-top: 1px; }
body:where(.pg-dr-checker) .form-row { display: flex; gap: 10px; margin-bottom: 8px; }
body:where(.pg-dr-checker) .form-row input {
    flex: 1;
    background: var(--bg3);
    border: 1px solid rgba(255,255,255,0.1);
    border-radius: var(--radius-sm);
    padding: 0 16px;
    height: 48px;
    font-size: 15px;
    font-family: var(--font);
    color: var(--white);
    outline: none;
    transition: border-color .15s, background .15s;
  }
body:where(.pg-dr-checker) .form-row input::placeholder { color: #444; }
body:where(.pg-dr-checker) .form-row input:focus { border-color: var(--border2); background: #1e1e1e; }
body:where(.pg-dr-checker) .form-row button {
    background: var(--green);
    color: #000;
    border: none;
    border-radius: var(--radius-sm);
    padding: 0 24px;
    height: 48px;
    font-size: 14px;
    font-weight: 700;
    font-family: var(--font);
    letter-spacing: 0.02em;
    cursor: pointer;
    white-space: nowrap;
    display: flex;
    align-items: center;
    gap: 8px;
    transition: background .2s, transform .1s;
  }
body:where(.pg-dr-checker) .form-row button:hover:not(:disabled) { background: #4fe84b; transform: translateY(-1px); }
body:where(.pg-dr-checker) .form-row button:active:not(:disabled) { transform: scale(.98); }
body:where(.pg-dr-checker) .form-row button:disabled { opacity: .5; cursor: not-allowed; }
body:where(.pg-dr-checker) .form-hint { font-size: 12px; color: var(--gray); margin-bottom: 0; padding-left: 2px; }
body:where(.pg-dr-checker) .spinner {
    width: 16px; height: 16px;
    border: 2px solid rgba(0,0,0,.25);
    border-top-color: #000;
    border-radius: 50%;
    animation: spin .65s linear infinite;
    display: none;
  }
body:where(.pg-dr-checker) .spinner.active { display: block; }
body:where(.pg-dr-checker) .error-box {
    background: rgba(220,53,69,.1);
    border: 1px solid rgba(220,53,69,.3);
    border-radius: var(--radius-sm);
    padding: 12px 16px;
    font-size: 13px;
    color: #ff6b6b;
    margin-top: 20px;
    display: none;
    line-height: 1.5;
  }
body:where(.pg-dr-checker) .error-box.visible { display: block; }
body:where(.pg-dr-checker) .result { display: none; }
body:where(.pg-dr-checker) .result.visible { display: block; }
body:where(.pg-dr-checker) .result-inner {
    border-top: 1px solid var(--border);
    margin-top: 28px;
    padding-top: 28px;
    display: flex;
    gap: 28px;
    align-items: center;
    flex-wrap: wrap;
  }
body:where(.pg-dr-checker) .result-info { flex: 1; min-width: 180px; }
body:where(.pg-dr-checker) .result-domain { font-size: 17px; font-weight: 600; color: #fff; margin-bottom: 4px; word-break: break-all; }
body:where(.pg-dr-checker) .result-label {
    font-size: 11px;
    color: var(--gray);
    margin-bottom: 18px;
    font-family: var(--mono);
    letter-spacing: .03em;
  }
body:where(.pg-dr-checker) .score-row { display: flex; align-items: baseline; gap: 6px; margin-bottom: 10px; }
body:where(.pg-dr-checker) .score-num {
    font-size: 54px;
    font-weight: 800;
    color: #fff;
    line-height: 1;
    letter-spacing: -0.03em;
    font-variant-numeric: tabular-nums;
  }
body:where(.pg-dr-checker) .score-denom { font-size: 20px; color: var(--gray); }
body:where(.pg-dr-checker) .tier-badge {
    display: inline-block;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    padding: 4px 12px;
    border-radius: 99px;
    margin-bottom: 12px;
  }
body:where(.pg-dr-checker) .result-desc { font-size: 13px; color: var(--gray-lt); line-height: 1.65; }
body:where(.pg-dr-checker) .history { margin-top: 28px; border-top: 1px solid var(--border); padding-top: 20px; display: none; }
body:where(.pg-dr-checker) .history.visible { display: block; }
body:where(.pg-dr-checker) .history-heading {
    font-size: 11px;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: var(--gray);
    margin-bottom: 10px;
  }
body:where(.pg-dr-checker) .history-list { display: flex; flex-direction: column; gap: 6px; }
body:where(.pg-dr-checker) .history-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: var(--bg3);
    border: 1px solid var(--border);
    border-radius: var(--radius-sm);
    padding: 10px 14px;
    font-size: 13px;
    cursor: pointer;
    transition: border-color .15s;
  }
body:where(.pg-dr-checker) .history-item:hover { border-color: var(--border2); }
body:where(.pg-dr-checker) .history-domain { color: var(--gray-lt); display: flex; align-items: center; gap: 8px; }
body:where(.pg-dr-checker) .history-score { font-weight: 700; font-variant-numeric: tabular-nums; }
body:where(.pg-dr-checker) .tool-foot {
    max-width: 660px;
    margin: 24px auto 0;
    font-size: 12px;
    color: var(--gray);
    text-align: center;
    line-height: 1.6;
  }
body:where(.pg-dr-checker) .tool-foot a { color: var(--green); text-decoration: none; }
body:where(.pg-dr-checker) .tool-foot a:hover { text-decoration: underline; }
/* ── EXPLAINER CARDS ── */
body:where(.pg-dr-checker) .info-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
body:where(.pg-dr-checker) .info-card {
    background: var(--bg2); border: 1px solid var(--border); border-radius: 10px;
    padding: 28px 24px; transition: border-color 0.25s, transform 0.2s;
  }
body:where(.pg-dr-checker) .info-card:hover { border-color: var(--border2); transform: translateY(-2px); }
body:where(.pg-dr-checker) .info-card-icon {
    width: 44px; height: 44px; border-radius: 10px;
    background: rgba(61,214,57,0.1); border: 1px solid var(--border2);
    display: flex; align-items: center; justify-content: center; margin-bottom: 18px;
  }
body:where(.pg-dr-checker) .info-card h3 { font-size: 15px; font-weight: 700; color: var(--white); margin-bottom: 10px; letter-spacing: -0.01em; }
body:where(.pg-dr-checker) .info-card p { font-size: 13px; color: var(--gray-lt); line-height: 1.7; }
/* ── SCALE LEGEND ── */
body:where(.pg-dr-checker) .scale-legend { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; margin-top: 36px; }
body:where(.pg-dr-checker) .scale-chip {
    display: flex; align-items: center; gap: 8px;
    font-size: 12px; color: var(--gray-lt);
    background: var(--bg2); border: 1px solid var(--border);
    border-radius: 99px; padding: 7px 14px;
  }
body:where(.pg-dr-checker) .scale-dot { width: 9px; height: 9px; border-radius: 50%; flex-shrink: 0; }
/* ── CTA BANNER ── */
body:where(.pg-dr-checker) .cta-banner {
    background: var(--bg2); border: 1px solid var(--border); border-radius: 12px;
    padding: 64px 48px; text-align: center; position: relative; overflow: hidden; margin: 24px 0 80px;
  }
body:where(.pg-dr-checker) .hero-eyebrow { animation: fadeUp-v2 0.5s ease 0.1s both; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-dr-checker) .hero h1 { animation: fadeUp-v2 0.6s ease 0.2s both; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-dr-checker) .hero-sub { animation: fadeUp-v2 0.6s ease 0.32s both; }
body:where(.pg-dr-checker) .card { animation: fadeUp-v2 0.6s ease 0.42s both; }
/* ── RESPONSIVE ── */
@media (max-width: 900px) {
body:where(.pg-dr-checker) .info-grid { grid-template-columns: 1fr; }
body:where(.pg-dr-checker) .footer-top { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 768px) {
body:where(.pg-dr-checker) .nav-hamburger { display: flex !important; }
body:where(.pg-dr-checker) .nav-links { display: none !important; }
}
@media (max-width: 640px) {
body:where(.pg-dr-checker) .wrap { padding: 0 20px; }
body:where(.pg-dr-checker) .card { padding: 24px 20px; }
body:where(.pg-dr-checker) .form-row { flex-direction: column; }
body:where(.pg-dr-checker) .form-row button { justify-content: center; height: 46px; }
body:where(.pg-dr-checker) .result-inner { gap: 20px; }
body:where(.pg-dr-checker) .footer-top { grid-template-columns: 1fr; }
body:where(.pg-dr-checker) .footer-bottom { flex-direction: column; gap: 8px; align-items: flex-start; }
body:where(.pg-dr-checker) .cta-banner { padding: 48px 24px; }
}

/* ── pricing.html (body.pg-pricing) ── */
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing) .hero-eyebrow { display: inline-block; background: rgba(61,214,57,0.08); border: 1px solid var(--border2); color: var(--green); font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase; padding: 7px 18px; border-radius: 20px; margin-bottom: 24px; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing) .hero h1 { font-size: clamp(38px, 6vw, 68px); font-weight: 800; line-height: 1.05; letter-spacing: -0.03em; color: var(--white); margin-bottom: 20px; max-width: 740px; margin-left: auto; margin-right: auto; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing) .hero-sub { font-size: 17px; color: var(--gray-lt); max-width: 540px; margin: 0 auto 48px; line-height: 1.75; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing) .compare-table th,
body:where(.pg-pricing) .compare-table td { padding: 14px 20px; text-align: left; font-size: 12px; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing) .compare-table td { color: var(--gray-lt); }
/* WHY SECTION */
body:where(.pg-pricing) .why-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
body:where(.pg-pricing) .why-card {
  background: var(--card-bg);
  border: 1px solid var(--border);
  border-radius: 10px;
  padding: 24px 22px;
  display: flex;
  align-items: flex-start;
  gap: 16px;
  transition: border-color 0.25s, transform 0.2s;
  position: relative;
  overflow: hidden;
}
body:where(.pg-pricing) .why-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: var(--green);
  opacity: 0;
  transition: opacity 0.25s;
}
body:where(.pg-pricing) .why-card:hover::before { opacity: 1; }
body:where(.pg-pricing) .why-icon {
  width: 40px;
  height: 40px;
  min-width: 40px;
  background: rgba(61,214,57,0.1);
  border: 1px solid var(--border2);
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-top: 2px;
}
body:where(.pg-pricing) .why-body {
  flex: 1;
  min-width: 0;
}
body:where(.pg-pricing) .why-title {
  font-size: 14px;
  font-weight: 700;
  color: var(--white);
  line-height: 1.3;
  margin-bottom: 6px;
  letter-spacing: -0.01em;
}
body:where(.pg-pricing) .why-desc {
  font-size: 12px;
  color: var(--gray);
  line-height: 1.75;
}
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing) .hero-eyebrow { animation: fadeUp-v2 0.5s ease 0.1s both; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing) .hero h1 { animation: fadeUp-v2 0.6s ease 0.2s both; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing) .hero-sub { animation: fadeUp-v2 0.6s ease 0.32s both; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
/* RESPONSIVE */
@media (max-width: 900px) {
body:where(.pg-pricing) .pricing-grid { grid-template-columns: 1fr; max-width: 440px; margin-left: auto; margin-right: auto; }
body:where(.pg-pricing) .price-card.featured { transform: none; }
body:where(.pg-pricing) .addons-grid { grid-template-columns: 1fr; }
body:where(.pg-pricing) .why-grid { grid-template-columns: 1fr 1fr; }
body:where(.pg-pricing) .testi-grid { grid-template-columns: 1fr; max-width: 480px; margin: 0 auto; }
body:where(.pg-pricing) .footer-top { grid-template-columns: 1fr 1fr; }
body:where(.pg-pricing) .stats-row { grid-template-columns: 1fr 1fr; }
body:where(.pg-pricing) .stat-item { border-right: none; border-bottom: 1px solid var(--border); padding: 0 0 24px; }
}
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
@media (max-width: 640px) {
body:where(.pg-pricing) .wrap { padding: 0 20px; }
body:where(.pg-pricing) .nav-links { display: none; }
body:where(.pg-pricing) .hero-trust { flex-direction: column; }
body:where(.pg-pricing) .hero-trust-item { border-right: none; border-bottom: 1px solid var(--border); }
body:where(.pg-pricing) .why-grid { grid-template-columns: 1fr; }
body:where(.pg-pricing) .billing-toggle { gap: 10px; }
body:where(.pg-pricing) .cta-banner { padding: 48px 24px; }
body:where(.pg-pricing) .footer-top { grid-template-columns: 1fr; }
body:where(.pg-pricing) .footer-bottom { flex-direction: column; gap: 8px; }
}

/* ── pricing_light.html (body.pg-pricing-light) ── */
/* ═══════════════════════════════════════════════════════
   LIGHT THEME OVERRIDE — pricing-light.html
   Overrides optiseon.css dark variables + fixes dark-
   specific rules that can't be reached by variables alone
═══════════════════════════════════════════════════════ */
/* ── Token overrides ────────────────────────────────── */
body:where(.pg-pricing-light) {
  --bg:       #f8f9fa;
  --bg2:      #ffffff;
  --bg3:      #f1f3f5;
  --green:    #2a9e26;
  --green-dim:#1e7a1b;
  --white:    #0a0a0a;    /* inverted: "white text" becomes near-black */
  --gray:     #6b7280;
  --gray-lt:  #374151;
  --border:   rgba(0,0,0,0.09);
  --border2:  rgba(42,158,38,0.35);
  --card-bg:  #ffffff;
  --font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}
/* ── Base ───────────────────────────────────────────── */
body:where(.pg-pricing-light) {
  background: var(--bg);
  color: #374151;
}
/* Remove the dark dot-grid texture */
body:where(.pg-pricing-light)::before { display: none; }
/* ── Nav ────────────────────────────────────────────── */
body:where(.pg-pricing-light) nav {
  background: rgba(255,255,255,0.97);
  border-bottom: 1px solid rgba(0,0,0,0.08);
  box-shadow: 0 1px 8px rgba(0,0,0,0.06);
}
body:where(.pg-pricing-light) .nav-links a { color: #374151; }
body:where(.pg-pricing-light) .nav-links a.active { color: var(--green); }
body:where(.pg-pricing-light) .nav-hamburger { border-color: rgba(42,158,38,0.3); }
body:where(.pg-pricing-light) .nav-hamburger span { background: #0a0a0a; }
/* Mobile drawer */
body:where(.pg-pricing-light) #mob-drawer {
  background: #ffffff;
  border-left: 1px solid rgba(0,0,0,0.1);
}
body:where(.pg-pricing-light) .mob-drawer-head { border-bottom-color: rgba(0,0,0,0.08); }
body:where(.pg-pricing-light) .mob-close-btn { color: #6b7280; border-color: rgba(0,0,0,0.15); }
body:where(.pg-pricing-light) .mob-nav-links a { color: #374151; }
body:where(.pg-pricing-light) .mob-nav-links a:hover { background: rgba(42,158,38,0.06); color: var(--green); border-left-color: var(--green); }
body:where(.pg-pricing-light) #mob-backdrop { background: rgba(0,0,0,0.4); }
body:where(.pg-pricing-light) .mob-drawer-foot { border-top-color: rgba(0,0,0,0.08); }
body:where(.pg-pricing-light) .mob-drawer-contacts a { color: #9ca3af; }
/* ── Breadcrumb ─────────────────────────────────────── */
body:where(.pg-pricing-light) .breadcrumb-bar { background: #f1f3f5; border-bottom: 1px solid rgba(0,0,0,0.07); }
body:where(.pg-pricing-light) .breadcrumb,
body:where(.pg-pricing-light) .breadcrumb a { color: #6b7280; }
/* ── Hero ───────────────────────────────────────────── */
body:where(.pg-pricing-light) .hero { border-bottom-color: rgba(0,0,0,0.08); }
body:where(.pg-pricing-light) .hero::before {
  background: radial-gradient(ellipse, rgba(42,158,38,0.08) 0%, transparent 70%);
}
body:where(.pg-pricing-light) .hero h1 { color: #0a0a0a; }
body:where(.pg-pricing-light) .hero-sub { color: #4b5563; }
body:where(.pg-pricing-light) .hero-eyebrow {
  background: rgba(42,158,38,0.08);
  border-color: rgba(42,158,38,0.3);
  color: var(--green);
}
body:where(.pg-pricing-light) .hero-trust {
  background: #ffffff;
  border-color: rgba(0,0,0,0.1);
  box-shadow: 0 2px 8px rgba(0,0,0,0.06);
}
body:where(.pg-pricing-light) .hero-trust-item { border-right-color: rgba(0,0,0,0.08); color: #6b7280; }
body:where(.pg-pricing-light) .hero-trust-item strong { color: var(--green); }
/* ── Billing toggle ─────────────────────────────────── */
body:where(.pg-pricing-light) .toggle-label { color: #4b5563; }
body:where(.pg-pricing-light) .toggle-label.active { color: #0a0a0a; }
body:where(.pg-pricing-light) .toggle-wrap { background: #e5e7eb; border-color: rgba(0,0,0,0.12); }
body:where(.pg-pricing-light) .toggle-knob { background: #ffffff; box-shadow: 0 1px 3px rgba(0,0,0,0.2); }
body:where(.pg-pricing-light) .toggle-wrap.on .toggle-knob { background: #ffffff; }
body:where(.pg-pricing-light) .save-badge {
  background: rgba(42,158,38,0.1);
  border-color: rgba(42,158,38,0.3);
  color: var(--green);
}
/* ── Section headings ───────────────────────────────── */
body:where(.pg-pricing-light) .section + .section { border-top-color: rgba(0,0,0,0.07); }
body:where(.pg-pricing-light) .section-title { color: #0a0a0a; }
body:where(.pg-pricing-light) .section-sub { color: #4b5563; }
/* ── Pricing cards ──────────────────────────────────── */
body:where(.pg-pricing-light) .price-card {
  background: #ffffff;
  border-color: rgba(0,0,0,0.1);
  box-shadow: 0 2px 12px rgba(0,0,0,0.06);
}
body:where(.pg-pricing-light) .price-card:hover {
  border-color: rgba(42,158,38,0.4);
  box-shadow: 0 4px 20px rgba(42,158,38,0.12);
}
body:where(.pg-pricing-light) .price-card.featured {
  border-color: var(--green);
  box-shadow: 0 0 0 1px rgba(42,158,38,0.3), 0 16px 40px rgba(42,158,38,0.15);
  background: #ffffff;
}
body:where(.pg-pricing-light) .price-name { color: #0a0a0a; }
body:where(.pg-pricing-light) .price-tagline { color: #6b7280; }
body:where(.pg-pricing-light) .price-note { color: #9ca3af; }
body:where(.pg-pricing-light) .price-divider { background: rgba(0,0,0,0.08); }
body:where(.pg-pricing-light) .feature-item { border-bottom-color: rgba(0,0,0,0.05); }
body:where(.pg-pricing-light) .feature-text { color: #374151; }
body:where(.pg-pricing-light) .feature-text.na { color: #9ca3af; }
body:where(.pg-pricing-light) .feature-check.no { color: #d1d5db; }
body:where(.pg-pricing-light) .feature-tag {
  background: rgba(42,158,38,0.1);
  border-color: rgba(42,158,38,0.3);
  color: var(--green);
}
body:where(.pg-pricing-light) .price-btn-outline {
  border-color: rgba(42,158,38,0.4);
  color: var(--green);
}
body:where(.pg-pricing-light) .price-btn-outline:hover { background: rgba(42,158,38,0.08); }
/* ── Pricing note ───────────────────────────────────── */
body:where(.pg-pricing-light) .pricing-note {
  background: #ffffff;
  border-color: rgba(0,0,0,0.09);
  color: #6b7280;
}
/* ── Stats strip ────────────────────────────────────── */
body:where(.pg-pricing-light) .stats-strip {
  background: #ffffff;
  border-top: 1px solid rgba(0,0,0,0.08);
  border-bottom: 1px solid rgba(0,0,0,0.08);
}
body:where(.pg-pricing-light) .stat-item { border-right-color: rgba(0,0,0,0.08); }
body:where(.pg-pricing-light) .stat-label { color: #6b7280; }
/* ── Comparison table ───────────────────────────────── */
body:where(.pg-pricing-light) .compare-wrap { border-color: rgba(0,0,0,0.1); box-shadow: 0 2px 12px rgba(0,0,0,0.05); }
body:where(.pg-pricing-light) .compare-table thead tr { background: #f8f9fa; border-bottom-color: rgba(0,0,0,0.08); }
body:where(.pg-pricing-light) .compare-table thead th { color: #6b7280; }
body:where(.pg-pricing-light) .compare-table thead th.plan-col { color: #374151; }
body:where(.pg-pricing-light) .compare-table tbody tr { border-bottom-color: rgba(0,0,0,0.05); }
body:where(.pg-pricing-light) .compare-table tbody tr:hover td { background: rgba(42,158,38,0.03); }
body:where(.pg-pricing-light) .compare-table .cat-row td { background: #f1f3f5; color: var(--green); border-top-color: rgba(0,0,0,0.07); }
body:where(.pg-pricing-light) .compare-table td { color: #374151; }
body:where(.pg-pricing-light) .compare-table td:first-child { color: #0a0a0a; }
body:where(.pg-pricing-light) .compare-table td.featured { background: rgba(42,158,38,0.04); }
body:where(.pg-pricing-light) .dash-icon { color: #d1d5db; }
body:where(.pg-pricing-light) .partial { color: #6b7280; }
/* ── Add-ons ────────────────────────────────────────── */
body:where(.pg-pricing-light) .addon-card {
  background: #ffffff;
  border-color: rgba(0,0,0,0.1);
  box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}
body:where(.pg-pricing-light) .addon-card:hover {
  border-color: rgba(42,158,38,0.35);
  box-shadow: 0 4px 16px rgba(42,158,38,0.1);
}
body:where(.pg-pricing-light) .addon-icon { background: rgba(42,158,38,0.08); border-color: rgba(42,158,38,0.25); }
body:where(.pg-pricing-light) .addon-name { color: #0a0a0a; }
body:where(.pg-pricing-light) .addon-type { color: #9ca3af; }
body:where(.pg-pricing-light) .addon-desc { color: #6b7280; }
body:where(.pg-pricing-light) .addon-pill {
  color: #6b7280;
  background: #f3f4f6;
  border-color: rgba(0,0,0,0.08);
}
/* ── Why cards ──────────────────────────────────────── */
body:where(.pg-pricing-light) .why-card {
  background: #ffffff;
  border-color: rgba(0,0,0,0.1);
  box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}
body:where(.pg-pricing-light) .why-card:hover {
  border-color: rgba(42,158,38,0.35);
  box-shadow: 0 4px 16px rgba(42,158,38,0.1);
}
body:where(.pg-pricing-light) .why-icon { background: rgba(42,158,38,0.08); border-color: rgba(42,158,38,0.25); }
body:where(.pg-pricing-light) .why-title { color: #0a0a0a; }
body:where(.pg-pricing-light) .why-desc { color: #6b7280; }
/* ── Testimonials ───────────────────────────────────── */
body:where(.pg-pricing-light) .testi-card {
  background: #ffffff;
  border-color: rgba(0,0,0,0.1);
  box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}
body:where(.pg-pricing-light) .testi-quote { color: #374151; }
body:where(.pg-pricing-light) .testi-name { color: #0a0a0a; }
body:where(.pg-pricing-light) .testi-role { color: #9ca3af; }
/* ── FAQ ────────────────────────────────────────────── */
body:where(.pg-pricing-light) .faq-item { border-color: rgba(0,0,0,0.1); }
body:where(.pg-pricing-light) .faq-item:hover { border-color: rgba(42,158,38,0.35); }
body:where(.pg-pricing-light) .faq-q {
  background: #ffffff;
  color: #0a0a0a;
}
body:where(.pg-pricing-light) .faq-a {
  background: #f8f9fa;
  color: #374151;
}
/* ── Buttons ────────────────────────────────────────── */
body:where(.pg-pricing-light) .btn-outline {
  color: #0a0a0a;
  border-color: rgba(0,0,0,0.25);
}
body:where(.pg-pricing-light) .btn-outline:hover {
  border-color: rgba(0,0,0,0.5);
  background: rgba(0,0,0,0.04);
}
/* ── CTA banner ─────────────────────────────────────── */
body:where(.pg-pricing-light) .cta-banner {
  background: #ffffff;
  border-color: rgba(0,0,0,0.1);
  box-shadow: 0 4px 24px rgba(0,0,0,0.07);
}
body:where(.pg-pricing-light) .cta-banner::before {
  background: radial-gradient(ellipse 70% 60% at 50% 50%, rgba(42,158,38,0.07) 0%, transparent 70%);
}
body:where(.pg-pricing-light) .cta-title { color: #0a0a0a; }
body:where(.pg-pricing-light) .cta-desc { color: #4b5563; }
/* ── Footer ─────────────────────────────────────────── */
body:where(.pg-pricing-light) footer { border-top-color: rgba(0,0,0,0.1); background: #f1f3f5; }
body:where(.pg-pricing-light) .footer-brand p { color: #6b7280; }
body:where(.pg-pricing-light) .footer-col h4 { color: #0a0a0a; }
body:where(.pg-pricing-light) .footer-col a { color: #6b7280; }
body:where(.pg-pricing-light) .footer-copy { color: #9ca3af; }
body:where(.pg-pricing-light) .footer-bottom { border-top-color: rgba(0,0,0,0.08); }
/* Social buttons */
body:where(.pg-pricing-light) .social-btn {
  border-color: rgba(0,0,0,0.15);
  color: #6b7280;
}
body:where(.pg-pricing-light) .social-btn:hover {
  border-color: rgba(42,158,38,0.4);
  background: rgba(42,158,38,0.06);
  color: var(--green);
}
/* ── Nav CTA button stays green ─────────────────────── */
body:where(.pg-pricing-light) .nav-cta { background: var(--green) !important; color: #ffffff !important; }
body:where(.pg-pricing-light) .nav-cta:hover { background: var(--green-dim) !important; }
/* ── Override hardcoded dark colors in page CSS ──────── */
/* btn-outline uses rgba(255,255,255,...) hardcoded — override */
body:where(.pg-pricing-light) .btn-outline { border-color: rgba(0,0,0,0.22) !important; color: #0a0a0a !important; }
body:where(.pg-pricing-light) .btn-outline:hover { border-color: rgba(0,0,0,0.45) !important; background: rgba(0,0,0,0.04) !important; }
/* Compare table row hover uses rgba(255,255,255,0.015) — too subtle on light */
/* Already handled above via .compare-table tbody tr:hover td */
/* dash-icon was #333 hardcoded */
body:where(.pg-pricing-light) .dash-icon { color: #d1d5db !important; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
/* BREADCRUMB */
body:where(.pg-pricing-light) .breadcrumb-bar { background: var(--bg2); border-bottom: 1px solid var(--border); }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .breadcrumb { padding: 14px 0; font-size: 12px; color: var(--gray); }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .breadcrumb a { color: var(--gray); text-decoration: none; transition: color 0.2s; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .btn-outline { background: transparent; color: var(--white); font-family: var(--font); font-size: 14px; padding: 13px 28px; border-radius: 4px; text-decoration: none; display: inline-block; border: 1px solid rgba(255,255,255,0.2); transition: border-color 0.2s, background 0.2s; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .btn-outline:hover { border-color: rgba(255,255,255,0.5); background: rgba(255,255,255,0.04); }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .section + .section { border-top: 1px solid var(--border); }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .section-title { font-size: clamp(28px, 4vw, 44px); font-weight: 800; color: var(--white); letter-spacing: -0.025em; margin-bottom: 18px; line-height: 1.12; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .section-sub { font-size: 16px; color: var(--gray-lt); max-width: 580px; margin: 0 auto; line-height: 1.75; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
/* HERO */
body:where(.pg-pricing-light) .hero { padding: 80px 0 72px; text-align: center; border-bottom: 1px solid var(--border); position: relative; overflow: hidden; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .hero::before { content: ''; position: absolute; width: 700px; height: 400px; background: radial-gradient(ellipse, rgba(61,214,57,0.1) 0%, transparent 70%); top: 50%; left: 50%; transform: translate(-50%, -60%); pointer-events: none; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .hero-eyebrow { display: inline-block; background: rgba(61,214,57,0.08); border: 1px solid var(--border2); color: var(--green); font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase; padding: 7px 18px; border-radius: 20px; margin-bottom: 24px; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .hero h1 { font-size: clamp(38px, 6vw, 68px); font-weight: 800; line-height: 1.05; letter-spacing: -0.03em; color: var(--white); margin-bottom: 20px; max-width: 740px; margin-left: auto; margin-right: auto; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .hero-sub { font-size: 17px; color: var(--gray-lt); max-width: 540px; margin: 0 auto 48px; line-height: 1.75; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .hero-trust { display: flex; gap: 0; justify-content: center; border: 1px solid var(--border); border-radius: 6px; overflow: hidden; max-width: 600px; margin: 0 auto; background: var(--bg2); }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .hero-trust-item { flex: 1; padding: 14px 16px; text-align: center; border-right: 1px solid var(--border); font-size: 11px; color: var(--gray); letter-spacing: 0.04em; line-height: 1.45; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .hero-trust-item strong { display: block; color: var(--green); font-size: 15px; font-weight: 800; letter-spacing: -0.02em; margin-bottom: 3px; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .toggle-label { font-size: 13px; color: var(--gray-lt); font-weight: 500; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .toggle-label.active { color: var(--white); font-weight: 700; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .toggle-wrap { position: relative; width: 52px; height: 28px; background: var(--bg3); border: 1px solid var(--border); border-radius: 14px; cursor: pointer; transition: background 0.2s; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .toggle-knob { position: absolute; top: 3px; left: 3px; width: 20px; height: 20px; background: var(--white); border-radius: 50%; transition: transform 0.2s; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .toggle-wrap.on .toggle-knob { transform: translateX(24px); background: #000; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .save-badge { background: rgba(61,214,57,0.15); border: 1px solid var(--border2); color: var(--green); font-size: 10px; font-weight: 700; letter-spacing: 0.1em; padding: 3px 10px; border-radius: 20px; text-transform: uppercase; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .price-card {
  background: var(--card-bg); border: 1px solid var(--border); border-radius: 12px;
  padding: 36px 32px; position: relative; transition: border-color 0.2s, transform 0.2s;
}
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .price-card:hover { border-color: var(--border2); }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .price-card.featured {
  border-color: var(--green); background: var(--bg2);
  transform: scale(1.03); box-shadow: 0 0 0 1px rgba(61,214,57,0.2), 0 24px 48px rgba(0,0,0,0.4);
}
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .price-name { font-size: 26px; font-weight: 800; color: var(--white); margin-bottom: 4px; letter-spacing: -0.02em; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .price-tagline { font-size: 12px; color: var(--gray); margin-bottom: 28px; font-style: italic; line-height: 1.5; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .price-note { font-size: 11px; color: #555; margin-bottom: 24px; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .price-divider { height: 1px; background: var(--border); margin: 24px 0; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .feature-item { display: flex; align-items: flex-start; gap: 10px; padding: 7px 0; border-bottom: 1px solid rgba(255,255,255,0.04); font-size: 12px; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .feature-check.no { color: #3a3a3a; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .feature-text { color: var(--gray-lt); line-height: 1.45; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .feature-text.na { color: #444; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .feature-tag { display: inline-block; font-size: 9px; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; padding: 1px 6px; border-radius: 3px; margin-left: 6px; vertical-align: middle; background: rgba(61,214,57,0.12); color: var(--green); border: 1px solid var(--border2); }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .price-btn-outline { border: 1px solid var(--border2); color: var(--green); }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .price-btn-outline:hover { background: rgba(61,214,57,0.08); }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
/* PRICING NOTE */
body:where(.pg-pricing-light) .pricing-note { text-align: center; padding: 20px; background: var(--bg2); border: 1px solid var(--border); border-radius: 8px; font-size: 12px; color: var(--gray); max-width: 680px; margin: 0 auto; line-height: 1.7; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
/* STATS STRIP */
body:where(.pg-pricing-light) .stats-strip { background: var(--bg2); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); padding: 48px 0; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .stat-item { border-right: 1px solid var(--border); padding: 0 32px; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .stat-label { font-size: 11px; color: var(--gray); letter-spacing: 0.08em; text-transform: uppercase; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
/* COMPARISON TABLE */
body:where(.pg-pricing-light) .compare-wrap { border: 1px solid var(--border); border-radius: 12px; overflow: hidden; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .compare-table th,
body:where(.pg-pricing-light) .compare-table td { padding: 14px 20px; text-align: left; font-size: 12px; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .compare-table thead tr { background: var(--bg3); border-bottom: 1px solid var(--border); }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .compare-table thead th { color: var(--gray); font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; font-weight: 600; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .compare-table thead th.plan-col { text-align: center; color: var(--gray-lt); font-size: 12px; letter-spacing: 0.04em; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .compare-table tbody tr { border-bottom: 1px solid rgba(255,255,255,0.04); transition: background 0.15s; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .compare-table tbody tr:hover td { background: rgba(255,255,255,0.015); }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .compare-table .cat-row td { background: var(--bg2); color: var(--green); font-weight: 700; font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; padding: 12px 20px; border-top: 1px solid var(--border); }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .compare-table td { color: var(--gray-lt); }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .compare-table td:first-child { color: var(--white); }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .compare-table td.featured { background: rgba(61,214,57,0.03); }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .dash-icon { color: #333; vertical-align: middle; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .partial { font-size: 11px; color: var(--gray); text-align: center; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .addon-card {
  background: var(--card-bg); border: 1px solid var(--border); border-radius: 10px;
  padding: 28px; display: flex; gap: 20px; align-items: flex-start;
  transition: border-color 0.25s, transform 0.2s; position: relative; overflow: hidden;
}
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .addon-card:hover { border-color: var(--border2); transform: translateY(-2px); }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .addon-icon { width: 44px; height: 44px; background: rgba(61,214,57,0.1); border: 1px solid var(--border2); border-radius: 8px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .addon-name { font-size: 16px; font-weight: 700; color: var(--white); letter-spacing: -0.01em; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .addon-type { font-size: 10px; color: var(--gray); font-weight: 400; letter-spacing: 0; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .addon-desc { font-size: 12px; color: var(--gray); line-height: 1.65; margin-bottom: 12px; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .addon-pill { font-size: 10px; color: #666; background: var(--bg3); border: 1px solid rgba(255,255,255,0.06); padding: 3px 8px; border-radius: 3px; }
/* WHY SECTION */
body:where(.pg-pricing-light) .why-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
body:where(.pg-pricing-light) .why-card { background: var(--card-bg); border: 1px solid var(--border); border-radius: 8px; padding: 28px; transition: border-color 0.25s, transform 0.2s; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .why-card:hover { border-color: var(--border2); transform: translateY(-2px); }
body:where(.pg-pricing-light) .why-icon { width: 40px; height: 40px; background: rgba(61,214,57,0.1); border: 1px solid var(--border2); border-radius: 8px; display: flex; align-items: center; justify-content: center; margin-bottom: 16px; }
body:where(.pg-pricing-light) .why-title { font-size: 15px; font-weight: 700; color: var(--white); margin-bottom: 8px; }
body:where(.pg-pricing-light) .why-desc { font-size: 12px; color: var(--gray); line-height: 1.7; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .testi-card { background: var(--card-bg); border: 1px solid var(--border); border-radius: 8px; padding: 28px 24px; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .testi-quote { font-size: 13px; color: var(--gray-lt); line-height: 1.75; font-style: italic; margin-bottom: 18px; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .testi-name { font-size: 13px; font-weight: 700; color: var(--white); }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .testi-role { font-size: 11px; color: var(--gray); margin-top: 2px; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .faq-item { border: 1px solid var(--border); border-radius: 8px; margin-bottom: 10px; overflow: hidden; transition: border-color 0.2s; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .faq-item:hover { border-color: var(--border2); }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .faq-q { padding: 16px 20px; font-size: 13px; font-weight: 600; color: var(--white); cursor: pointer; display: flex; justify-content: space-between; align-items: center; background: var(--card-bg); user-select: none; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .faq-a { padding: 0 20px; max-height: 0; overflow: hidden; transition: max-height 0.3s ease, padding 0.3s ease; font-size: 13px; color: var(--gray); line-height: 1.75; background: var(--bg2); }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
/* CTA */
body:where(.pg-pricing-light) .cta-banner { background: var(--bg2); border: 1px solid var(--border); border-radius: 12px; padding: 80px 48px; text-align: center; position: relative; overflow: hidden; margin: 88px 0; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .cta-banner::before { content: ''; position: absolute; inset: 0; background: radial-gradient(ellipse 70% 60% at 50% 50%, rgba(61,214,57,0.08) 0%, transparent 70%); }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .cta-title { font-size: clamp(28px, 4.5vw, 52px); font-weight: 800; color: var(--white); letter-spacing: -0.03em; margin-bottom: 18px; line-height: 1.1; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .cta-desc { font-size: 16px; color: var(--gray-lt); max-width: 480px; margin: 0 auto 40px; line-height: 1.75; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
/* FOOTER */
body:where(.pg-pricing-light) footer { border-top: 1px solid var(--border); padding: 60px 0 36px; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .footer-brand p { font-size: 12px; color: var(--gray); line-height: 1.7; max-width: 240px; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .footer-col h4 { font-weight: 700; font-size: 12px; color: var(--white); letter-spacing: 0.12em; text-transform: uppercase; margin-bottom: 16px; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .footer-col a { font-size: 12px; color: var(--gray); text-decoration: none; transition: color 0.2s; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .footer-bottom { border-top: 1px solid var(--border); padding-top: 24px; display: flex; align-items: center; justify-content: space-between; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .footer-copy { font-size: 11px; color: #444; letter-spacing: 0.06em; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .hero-eyebrow { animation: fadeUp-v2 0.5s ease 0.1s both; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .hero h1 { animation: fadeUp-v2 0.6s ease 0.2s both; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .hero-sub { animation: fadeUp-v2 0.6s ease 0.32s both; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-pricing-light) .hero-trust { animation: fadeUp-v2 0.6s ease 0.44s both; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
/* RESPONSIVE */
@media (max-width: 900px) {
body:where(.pg-pricing-light) .pricing-grid { grid-template-columns: 1fr; max-width: 440px; margin-left: auto; margin-right: auto; }
body:where(.pg-pricing-light) .price-card.featured { transform: none; }
body:where(.pg-pricing-light) .addons-grid { grid-template-columns: 1fr; }
body:where(.pg-pricing-light) .why-grid { grid-template-columns: 1fr 1fr; }
body:where(.pg-pricing-light) .testi-grid { grid-template-columns: 1fr; max-width: 480px; margin: 0 auto; }
body:where(.pg-pricing-light) .footer-top { grid-template-columns: 1fr 1fr; }
body:where(.pg-pricing-light) .stats-row { grid-template-columns: 1fr 1fr; }
body:where(.pg-pricing-light) .stat-item { border-right: none; border-bottom: 1px solid var(--border); padding: 0 0 24px; }
}
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
@media (max-width: 640px) {
body:where(.pg-pricing-light) .wrap { padding: 0 20px; }
body:where(.pg-pricing-light) .nav-links { display: none; }
body:where(.pg-pricing-light) .hero-trust { flex-direction: column; }
body:where(.pg-pricing-light) .hero-trust-item { border-right: none; border-bottom: 1px solid var(--border); }
body:where(.pg-pricing-light) .why-grid { grid-template-columns: 1fr; }
body:where(.pg-pricing-light) .billing-toggle { gap: 10px; }
body:where(.pg-pricing-light) .cta-banner { padding: 48px 24px; }
body:where(.pg-pricing-light) .footer-top { grid-template-columns: 1fr; }
body:where(.pg-pricing-light) .footer-bottom { flex-direction: column; gap: 8px; }
}

/* ── services.html (body.pg-services) ── */
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-services) .nav-links { display: flex; align-items: center; gap: 32px; list-style: none; }
body:where(.pg-services) .nav-cta { background: var(--green); color: #000 !important; font-weight: 700; padding: 9px 20px !important; border-radius: 4px; font-size: 13px !important; transition: background 0.2s !important; }
body:where(.pg-services) .btn-green-sm {
  background: var(--green); color: #000; font-family: var(--font); font-weight: 700;
  font-size: 12px; padding: 10px 20px; border-radius: 4px; text-decoration: none;
  transition: background 0.2s; letter-spacing: 0.02em; display: inline-block;
}
body:where(.pg-services) .btn-outline-sm {
  background: transparent; color: var(--gray-lt); font-family: var(--font); font-size: 12px;
  padding: 9px 20px; border-radius: 4px; text-decoration: none; display: inline-block;
  border: 1px solid var(--border); transition: border-color 0.2s, color 0.2s;
}
body:where(.pg-services) .hero::after {
  content: ''; position: absolute; bottom: -1px; left: 0; right: 0; height: 1px; background: var(--border);
}
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-services) .hero-eyebrow {
  display: inline-block; background: rgba(61,214,57,0.1); border: 1px solid var(--border2);
  color: var(--green); font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase;
  padding: 6px 16px; border-radius: 20px; margin-bottom: 24px;
}
body:where(.pg-services) .hero h1 {
  font-size: clamp(36px, 6vw, 68px); font-weight: 800; line-height: 1.05;
  letter-spacing: -0.03em; color: var(--white); margin-bottom: 20px;
  max-width: 780px; margin-left: auto; margin-right: auto;
}
body:where(.pg-services) .hero-sub {
  font-size: 16px; color: var(--gray-lt); max-width: 560px;
  margin: 0 auto 40px; line-height: 1.75;
}
body:where(.pg-services) .hero-buttons { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; margin-bottom: 56px; }
/* ── PILLAR NAV TABS ── */
body:where(.pg-services) .pillar-tabs {
  display: flex; gap: 0; border: 1px solid var(--border); border-radius: 8px;
  overflow: hidden; max-width: 700px; margin: 0 auto;
  background: var(--bg2);
}
body:where(.pg-services) .pillar-tab {
  flex: 1; padding: 14px 12px; text-align: center; cursor: pointer; text-decoration: none;
  border-right: 1px solid var(--border); transition: background 0.2s, color 0.2s;
}
body:where(.pg-services) .pillar-tab:last-child { border-right: none; }
body:where(.pg-services) .pillar-tab:hover { background: var(--bg3); }
body:where(.pg-services) .pillar-tab-label { font-size: 11px; font-weight: 700; color: var(--green); letter-spacing: 0.12em; text-transform: uppercase; display: block; margin-bottom: 3px; }
body:where(.pg-services) .pillar-tab-desc { font-size: 10px; color: var(--gray); }
/* ── SERVICE DETAIL SECTIONS (alternating split layout) ── */
body:where(.pg-services) .svc-section { padding: 88px 0; border-top: 1px solid var(--border); }
body:where(.pg-services) .svc-split {
  display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center;
}
body:where(.pg-services) .svc-split.reverse { direction: rtl; }
body:where(.pg-services) .svc-split.reverse > * { direction: ltr; }
body:where(.pg-services) .svc-number {
  font-size: 72px; font-weight: 800; color: rgba(61,214,57,0.08);
  letter-spacing: -0.05em; line-height: 1; margin-bottom: -8px; display: block;
}
body:where(.pg-services) .svc-pill {
  display: inline-block; background: rgba(61,214,57,0.12); border: 1px solid var(--border2);
  color: var(--green); font-size: 10px; font-weight: 700; letter-spacing: 0.16em;
  text-transform: uppercase; padding: 4px 12px; border-radius: 3px; margin-bottom: 16px;
}
body:where(.pg-services) .svc-title {
  font-size: clamp(26px, 3.5vw, 38px); font-weight: 800; color: var(--white);
  letter-spacing: -0.02em; line-height: 1.1; margin-bottom: 18px;
}
body:where(.pg-services) .svc-title .green { color: var(--green); }
body:where(.pg-services) .svc-desc {
  font-size: 14px; color: var(--gray-lt); line-height: 1.85; margin-bottom: 16px;
}
body:where(.pg-services) .svc-desc + .svc-desc { margin-bottom: 28px; }
body:where(.pg-services) .svc-actions { display: flex; gap: 12px; flex-wrap: wrap; }
/* Visual panel */
body:where(.pg-services) .svc-visual {
  background: var(--bg2); border: 1px solid var(--border); border-radius: 12px;
  padding: 32px; position: relative; overflow: hidden;
}
body:where(.pg-services) .svc-visual::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px;
  background: linear-gradient(90deg, var(--green), rgba(61,214,57,0.15));
}
body:where(.pg-services) .svc-visual-title {
  font-size: 11px; color: var(--gray); letter-spacing: 0.14em; text-transform: uppercase; margin-bottom: 20px;
}
body:where(.pg-services) .deliverable-list { list-style: none; display: flex; flex-direction: column; gap: 10px; }
body:where(.pg-services) .deliverable-item {
  display: flex; align-items: flex-start; gap: 12px;
  padding: 12px 14px; background: rgba(255,255,255,0.025); border: 1px solid var(--border);
  border-radius: 6px; transition: border-color 0.2s;
}
body:where(.pg-services) .deliverable-item:hover { border-color: var(--border2); }
body:where(.pg-services) .deliverable-icon { font-size: 16px; flex-shrink: 0; margin-top: 1px; }
body:where(.pg-services) .deliverable-name { font-size: 13px; font-weight: 600; color: var(--white); margin-bottom: 2px; }
body:where(.pg-services) .deliverable-desc { font-size: 11px; color: var(--gray); line-height: 1.5; }
body:where(.pg-services) .svc-result {
  margin-top: 20px; padding: 14px 16px;
  background: rgba(61,214,57,0.06); border: 1px solid var(--border2); border-radius: 6px;
  display: flex; align-items: center; gap: 10px;
}
body:where(.pg-services) .svc-result-icon { font-size: 18px; flex-shrink: 0; }
body:where(.pg-services) .svc-result-text { font-size: 12px; color: var(--gray-lt); line-height: 1.5; }
body:where(.pg-services) .svc-result-text strong { color: var(--green); }
/* ── WHO IT'S FOR TAGS ── */
body:where(.pg-services) .who-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; }
body:where(.pg-services) .who-tag {
  font-size: 11px; color: var(--gray-lt); background: var(--bg2); border: 1px solid var(--border);
  padding: 5px 12px; border-radius: 20px; transition: border-color 0.2s, color 0.2s;
}
body:where(.pg-services) .who-tag:hover { border-color: var(--border2); color: var(--green); }
body:where(.pg-services) .who-label { font-size: 10px; color: var(--gray); letter-spacing: 0.1em; text-transform: uppercase; margin-bottom: 8px; margin-top: 20px; }
/* ── MINI FEATURE GRID (inside svc sections) ── */
body:where(.pg-services) .mini-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 24px; }
body:where(.pg-services) .mini-card {
  background: var(--bg3); border: 1px solid var(--border); border-radius: 6px;
  padding: 14px; transition: border-color 0.2s;
}
body:where(.pg-services) .mini-card:hover { border-color: var(--border2); }
body:where(.pg-services) .mini-card-title { font-size: 12px; font-weight: 600; color: var(--white); margin-bottom: 4px; }
body:where(.pg-services) .mini-card-desc { font-size: 11px; color: var(--gray); line-height: 1.5; }
/* ── HOW IT ALL FITS ── */
body:where(.pg-services) .system-wrap {
  background: var(--bg2); border: 1px solid var(--border); border-radius: 12px;
  padding: 48px; position: relative; overflow: hidden;
}
body:where(.pg-services) .system-wrap::before {
  content: ''; position: absolute; inset: 0;
  background: radial-gradient(ellipse 60% 60% at 50% 50%, rgba(61,214,57,0.05) 0%, transparent 70%);
  pointer-events: none;
}
body:where(.pg-services) .system-wrap > * { position: relative; z-index: 1; }
body:where(.pg-services) .system-flow {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; position: relative; margin-top: 40px;
}
body:where(.pg-services) .system-flow::before {
  content: ''; position: absolute; top: 32px; left: 12%; right: 12%;
  height: 1px; background: linear-gradient(90deg, var(--green), rgba(61,214,57,0.1));
}
body:where(.pg-services) .system-node { text-align: center; position: relative; z-index: 1; padding: 0 12px; }
body:where(.pg-services) .system-dot {
  width: 64px; height: 64px; border-radius: 50%; border: 1px solid var(--green);
  background: var(--bg); display: flex; align-items: center; justify-content: center;
  margin: 0 auto 16px; font-size: 22px; transition: background 0.2s;
}
body:where(.pg-services) .system-node:hover .system-dot { background: rgba(61,214,57,0.1); }
body:where(.pg-services) .system-node-label { font-size: 11px; font-weight: 700; color: var(--green); letter-spacing: 0.12em; text-transform: uppercase; margin-bottom: 6px; }
body:where(.pg-services) .system-node-title { font-size: 14px; font-weight: 700; color: var(--white); margin-bottom: 6px; }
body:where(.pg-services) .system-node-desc { font-size: 11px; color: var(--gray); line-height: 1.6; }
/* ── COMPARISON ── */
body:where(.pg-services) .compare-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
body:where(.pg-services) .compare-card {
  background: var(--card-bg); border: 1px solid var(--border); border-radius: 8px; overflow: hidden;
}
body:where(.pg-services) .compare-header {
  padding: 16px 20px; border-bottom: 1px solid var(--border);
  display: flex; align-items: center; gap: 10px;
}
body:where(.pg-services) .compare-header.old { background: rgba(255,255,255,0.02); }
body:where(.pg-services) .compare-header.new { background: rgba(61,214,57,0.06); }
body:where(.pg-services) .compare-icon { font-size: 18px; }
body:where(.pg-services) .compare-title { font-size: 13px; font-weight: 700; color: var(--white); }
body:where(.pg-services) .compare-subtitle { font-size: 11px; color: var(--gray); }
body:where(.pg-services) .compare-body { padding: 20px; }
body:where(.pg-services) .compare-row {
  display: flex; align-items: flex-start; gap: 10px;
  padding: 8px 0; border-bottom: 1px solid rgba(255,255,255,0.04); font-size: 12px;
}
body:where(.pg-services) .compare-row:last-child { border-bottom: none; }
body:where(.pg-services) .compare-check { flex-shrink: 0; width: 16px; }
body:where(.pg-services) .compare-check.yes { color: var(--green); font-weight: 700; }
body:where(.pg-services) .compare-check.no { color: #444; }
body:where(.pg-services) .compare-text { color: var(--gray-lt); line-height: 1.5; }
body:where(.pg-services) .compare-text.muted { color: #444; text-decoration: line-through; }
/* ── PROCESS ── */
body:where(.pg-services) .process-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; position: relative; }
body:where(.pg-services) .process-grid::before {
  content: ''; position: absolute; top: 28px; left: 14%; right: 14%;
  height: 1px; background: linear-gradient(90deg, var(--green), rgba(61,214,57,0.1));
}
body:where(.pg-services) .proc-step { padding: 0 20px 0 0; position: relative; z-index: 1; }
body:where(.pg-services) .price-card {
  background: var(--card-bg); border: 1px solid var(--border); border-radius: 8px;
  padding: 32px 28px; position: relative; transition: border-color 0.2s;
}
body:where(.pg-services) .price-card.featured { border-color: var(--green); background: var(--bg2); transform: scale(1.02); }
body:where(.pg-services) .price-pop {
  position: absolute; top: -13px; left: 50%; transform: translateX(-50%);
  background: var(--green); color: #000; font-weight: 700; font-size: 10px;
  letter-spacing: 0.12em; padding: 4px 14px; border-radius: 20px; white-space: nowrap; text-transform: uppercase;
}
body:where(.pg-services) .price-name { font-size: 22px; font-weight: 700; color: var(--white); margin-bottom: 4px; letter-spacing: -0.02em; }
body:where(.pg-services) .price-amount { font-size: 48px; font-weight: 800; color: var(--green); letter-spacing: -0.04em; line-height: 1; margin-bottom: 4px; }
body:where(.pg-services) .price-amount sup { font-size: 22px; vertical-align: top; margin-top: 8px; }
body:where(.pg-services) .price-amount span { font-size: 16px; color: var(--gray); font-weight: 400; }
body:where(.pg-services) .price-divider { height: 1px; background: var(--border); margin: 20px 0; }
body:where(.pg-services) .price-features li { font-size: 12px; color: var(--gray-lt); padding: 6px 0 6px 20px; position: relative; border-bottom: 1px solid rgba(255,255,255,0.04); }
body:where(.pg-services) .price-btn { display: block; text-align: center; padding: 12px; border-radius: 4px; font-weight: 700; font-size: 13px; text-decoration: none; transition: all 0.2s; letter-spacing: 0.04em; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-services) .hero-eyebrow { animation: fadeUp-v2 0.5s ease 0.1s both; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-services) .hero h1 { animation: fadeUp-v2 0.6s ease 0.2s both; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-services) .hero-sub { animation: fadeUp-v2 0.6s ease 0.32s both; }
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
body:where(.pg-services) .hero-buttons { animation: fadeUp-v2 0.6s ease 0.42s both; }
body:where(.pg-services) .pillar-tabs { animation: fadeUp-v2 0.6s ease 0.52s both; }
/* ── RESPONSIVE ── */
@media (max-width: 900px) {
body:where(.pg-services) .svc-split { grid-template-columns: 1fr; gap: 40px; }
body:where(.pg-services) .svc-split.reverse { direction: ltr; }
body:where(.pg-services) .system-flow { grid-template-columns: 1fr 1fr; gap: 32px; }
body:where(.pg-services) .system-flow::before { display: none; }
body:where(.pg-services) .process-grid { grid-template-columns: 1fr 1fr; gap: 32px; }
body:where(.pg-services) .process-grid::before { display: none; }
body:where(.pg-services) .pricing-grid { grid-template-columns: 1fr; max-width: 420px; margin: 0 auto; }
body:where(.pg-services) .price-card.featured { transform: none; }
body:where(.pg-services) .compare-cards { grid-template-columns: 1fr; }
body:where(.pg-services) .testi-grid { grid-template-columns: 1fr; max-width: 480px; margin: 0 auto; }
body:where(.pg-services) .mini-grid { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
body:where(.pg-services) .wrap { padding: 0 20px; }
body:where(.pg-services) .nav-links { display: none; }
body:where(.pg-services) .stats-row { grid-template-columns: 1fr 1fr; }
body:where(.pg-services) .stat-item { border-right: none; border-bottom: 1px solid var(--border); padding: 0 0 24px; }
body:where(.pg-services) .pillar-tabs { flex-wrap: wrap; }
body:where(.pg-services) .pillar-tab { min-width: 50%; }
body:where(.pg-services) .footer-top { grid-template-columns: 1fr 1fr; }
body:where(.pg-services) .footer-bottom { flex-direction: column; gap: 8px; }
body:where(.pg-services) .cta-banner { padding: 48px 24px; }
body:where(.pg-services) .system-flow { grid-template-columns: 1fr; }
body:where(.pg-services) .svc-section { padding: 56px 0; }
}
/* re-emitted here so this rule keeps beating the page's own
   earlier overrides, matching the original in-page order */
@media (max-width: 768px) {
body:where(.pg-services) .nav-hamburger { display: flex !important; }
body:where(.pg-services) .nav-links { display: none !important; }
}

/* ── sitemap.html (body.pg-sitemap) ── */
body:where(.pg-sitemap) {--bg:#07161c;--card:#0d242c;--text:#eef8f5;--muted:#a7c3bd;--accent:#40d39a;--line:#1e3c45;--soft:#102c35}
body:where(.pg-sitemap) {margin:0;font-family:Inter,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.6}
body:where(.pg-sitemap) a {color:var(--accent);text-decoration:none}
body:where(.pg-sitemap) a:hover {text-decoration:underline}
body:where(.pg-sitemap) .wrap {max-width:1180px;margin:0 auto;padding:40px 20px}
body:where(.pg-sitemap) header {padding:48px 0 28px;border-bottom:1px solid var(--line);margin-bottom:30px}
body:where(.pg-sitemap) .eyebrow {color:var(--accent);text-transform:uppercase;letter-spacing:.08em;font-weight:700;font-size:.84rem}
body:where(.pg-sitemap) h1 {font-size:clamp(2rem,5vw,4rem);line-height:1.05;margin:.2em 0}
body:where(.pg-sitemap) .lede {font-size:1.15rem;color:var(--muted);max-width:780px}
body:where(.pg-sitemap) .meta {display:flex;gap:14px;flex-wrap:wrap;margin-top:24px}
body:where(.pg-sitemap) .pill {background:var(--soft);border:1px solid var(--line);border-radius:999px;padding:8px 14px;color:var(--muted);font-size:.92rem}
body:where(.pg-sitemap) .toc {background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px;margin:28px 0}
body:where(.pg-sitemap) .toc ul {columns:2;gap:30px;margin:0;padding-left:20px}
body:where(.pg-sitemap) section {margin:42px 0}
body:where(.pg-sitemap) .section-title {font-size:1.7rem;margin:0 0 18px;border-bottom:1px solid var(--line);padding-bottom:10px}
body:where(.pg-sitemap) .grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px}
body:where(.pg-sitemap) .page-card {background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px}
body:where(.pg-sitemap) .page-card h3 {margin:0 0 8px;font-size:1.18rem}
body:where(.pg-sitemap) .url {font-size:.88rem;color:var(--muted);word-break:break-word;margin-bottom:12px}
body:where(.pg-sitemap) .headings {margin:14px 0 0;padding-left:18px}
body:where(.pg-sitemap) .headings li {margin:5px 0}
body:where(.pg-sitemap) .tag {display:inline-block;font-size:.76rem;color:var(--bg);background:var(--accent);border-radius:999px;padding:2px 8px;margin-right:6px;font-weight:700}
body:where(.pg-sitemap) .links {margin-top:14px;padding-top:12px;border-top:1px solid var(--line);font-size:.92rem;color:var(--muted)}
body:where(.pg-sitemap) .links a {margin-right:10px}
body:where(.pg-sitemap) .note {background:#102f35;border:1px solid var(--line);border-left:4px solid var(--accent);padding:16px 18px;border-radius:12px;color:var(--muted)}
body:where(.pg-sitemap) footer {margin-top:50px;padding-top:24px;border-top:1px solid var(--line);color:var(--muted);font-size:.94rem}

/* ─────────────── 5. UTILITIES (former inline styles) ─────────────── */
/* Quadruple-class selectors keep these winning over component rules
   (max component specificity is 3 classes), matching the priority
   the original inline styles had. */
.u-mix-1.u-mix-1.u-mix-1.u-mix-1 { display:flex; align-items:center; justify-content:space-between; width:100%; max-width:1100px; }
.u-mix-2.u-mix-2.u-mix-2.u-mix-2 { background:var(--bg2); border-top:1px solid var(--border); border-bottom:1px solid var(--border); }
.u-margin-bottom-56px.u-margin-bottom-56px.u-margin-bottom-56px.u-margin-bottom-56px { margin-bottom:56px; }
.u-text-align-center.u-text-align-center.u-text-align-center.u-text-align-center { text-align:center; }
.u-margin-top-28px.u-margin-top-28px.u-margin-top-28px.u-margin-top-28px { margin-top:28px; }
.u-mix-3.u-mix-3.u-mix-3.u-mix-3 { font-size:11px; color:var(--gray); letter-spacing:0.12em; text-transform:uppercase; margin-bottom:20px; }
.u-mix-4.u-mix-4.u-mix-4.u-mix-4 { margin-top:20px; padding-top:16px; border-top:1px solid var(--border); font-size:12px; color:var(--gray); }
.u-mix-5.u-mix-5.u-mix-5.u-mix-5 { display:inline-block; vertical-align:middle; margin-left:4px; }
.u-mix-6.u-mix-6.u-mix-6.u-mix-6 { display:inline-block; vertical-align:middle; }
.u-background-bg2.u-background-bg2.u-background-bg2.u-background-bg2 { background:var(--bg2); }
.u-flex-shrink-0.u-flex-shrink-0.u-flex-shrink-0.u-flex-shrink-0 { flex-shrink:0; }
.u-display-none.u-display-none.u-display-none.u-display-none { display:none; }
.u-mix-7.u-mix-7.u-mix-7.u-mix-7 { background:var(--bg2); border-bottom:1px solid var(--border); }
.u-border-top-1px-solid-border.u-border-top-1px-solid-border.u-border-top-1px-solid-border.u-border-top-1px-solid-border { border-top:1px solid var(--border); }
.u-mix-8.u-mix-8.u-mix-8.u-mix-8 { text-align:left; margin-bottom:12px; }
.u-mix-9.u-mix-9.u-mix-9.u-mix-9 { font-size:11px; color:var(--gray); letter-spacing:0.12em; text-transform:uppercase; margin-bottom:16px; }
.u-mix-10.u-mix-10.u-mix-10.u-mix-10 { margin-top:32px; text-align:center; font-size:12px; color:var(--gray); padding:20px; background:var(--bg2); border:1px solid var(--border); border-radius:8px; max-width:640px; margin-left:auto; margin-right:auto; }
.u-color-white.u-color-white.u-color-white.u-color-white { color:var(--white); }
.u-mix-11.u-mix-11.u-mix-11.u-mix-11 { color:var(--green); text-decoration:none; }
.u-width-28pct.u-width-28pct.u-width-28pct.u-width-28pct { width:28%; }
.u-mix-12.u-mix-12.u-mix-12.u-mix-12 { color:#555; font-weight:400; }
.u-font-weight-400.u-font-weight-400.u-font-weight-400.u-font-weight-400 { font-weight:400; }
.u-color-green.u-color-green.u-color-green.u-color-green { color:var(--green); }
.u-mix-13.u-mix-13.u-mix-13.u-mix-13 { display:inline-block; vertical-align:middle; margin-left:6px; }
.u-mix-14.u-mix-14.u-mix-14.u-mix-14 { font-size:10px; color:var(--gray); letter-spacing:0.1em; text-transform:uppercase; margin-bottom:12px; }
.u-justify-content-space-between.u-justify-content-space-between.u-justify-content-space-between.u-justify-content-space-between { justify-content:space-between; }
.u-mix-15.u-mix-15.u-mix-15.u-mix-15 { font-size:12px; color:var(--gray); }
.u-mix-16.u-mix-16.u-mix-16.u-mix-16 { font-size:12px; font-weight:600; }
.u-mix-17.u-mix-17.u-mix-17.u-mix-17 { border-bottom:none; justify-content:space-between; }
.u-font-size-12px.u-font-size-12px.u-font-size-12px.u-font-size-12px { font-size:12px; }
.u-mix-18.u-mix-18.u-mix-18.u-mix-18 { margin-top:14px; padding:10px 12px; background:rgba(61,214,57,0.06); border:1px solid var(--border); border-radius:6px; font-size:11px; color:var(--gray); line-height:1.6; }
.u-mix-19.u-mix-19.u-mix-19.u-mix-19 { text-align:center; margin-bottom:56px; }
.u-margin-0-auto.u-margin-0-auto.u-margin-0-auto.u-margin-0-auto { margin:0 auto; }
.u-background-3dd639.u-background-3dd639.u-background-3dd639.u-background-3dd639 { background:#3dd639; }
.u-background-7be36f.u-background-7be36f.u-background-7be36f.u-background-7be36f { background:#7be36f; }
.u-background-f0a830.u-background-f0a830.u-background-f0a830.u-background-f0a830 { background:#f0a830; }
.u-background-e8896d.u-background-e8896d.u-background-e8896d.u-background-e8896d { background:#e8896d; }
.u-background-c06060.u-background-c06060.u-background-c06060.u-background-c06060 { background:#c06060; }
.u-mix-20.u-mix-20.u-mix-20.u-mix-20 { font-size:11px; color:var(--gray); margin-top:2px; }
.u-mix-21.u-mix-21.u-mix-21.u-mix-21 { text-align:center; margin-top:36px; }
.u-mix-22.u-mix-22.u-mix-22.u-mix-22 { font-size:38px; padding-top:10px; }
.u-mix-23.u-mix-23.u-mix-23.u-mix-23 { text-align:center; margin-top:28px; font-size:13px; color:var(--gray); }
.u-mix-24.u-mix-24.u-mix-24.u-mix-24 { color:var(--green); text-decoration:none; font-weight:600; }
.u-mix-25.u-mix-25.u-mix-25.u-mix-25 { text-align:center; margin-top:16px; }
.u-mix-26.u-mix-26.u-mix-26.u-mix-26 { color:var(--gray); font-size:12px; text-decoration:none; transition:color 0.2s; }
.u-width-36pct.u-width-36pct.u-width-36pct.u-width-36pct { width:36%; }
.u-mix-27.u-mix-27.u-mix-27.u-mix-27 { width:21%; text-align:center; }
.u-mix-28.u-mix-28.u-mix-28.u-mix-28 { font-weight:400; color:#555; font-size:11px; }
.u-mix-29.u-mix-29.u-mix-29.u-mix-29 { font-weight:400; font-size:11px; }
.u-mix-30.u-mix-30.u-mix-30.u-mix-30 { width:22%; text-align:center; }
.u-mix-31.u-mix-31.u-mix-31.u-mix-31 { text-align:center; margin-top:32px; font-size:12px; color:var(--gray); }
.u-margin-bottom-16px.u-margin-bottom-16px.u-margin-bottom-16px.u-margin-bottom-16px { margin-bottom:16px; }
.u-mix-32.u-mix-32.u-mix-32.u-mix-32 { text-align:center; margin-bottom:8px; }
.u-mix-33.u-mix-33.u-mix-33.u-mix-33 { font-size:13px; color:var(--gray-lt); text-align:center; max-width:580px; margin:0 auto 8px; line-height:1.7; }
.u-mix-34.u-mix-34.u-mix-34.u-mix-34 { margin-top:28px; display:flex; gap:12px; }
.u-mix-35.u-mix-35.u-mix-35.u-mix-35 { font-size:36px; padding-top:8px; }
.u-mix-36.u-mix-36.u-mix-36.u-mix-36 { text-align:center; margin-top:32px; font-size:13px; color:var(--gray); }
