@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&family=DM+Sans:wght@400;500;700&display=swap');
/* ============================================================
   RESETS & PRIMITIVES
   ============================================================ */
.rsg-page *{box-sizing: border-box;}
.rsg-page h1, .rsg-page h2, .rsg-page h3, .rsg-page h4{font-family: var(--font-display); font-weight: 700; color: var(--ink-900); line-height: 1.15; margin: 0;}
.rsg-page h1{font-size: clamp(36px, 5vw, 56px); letter-spacing: -0.02em;}
.rsg-page h2{font-size: clamp(28px, 3.6vw, 42px); letter-spacing: -0.015em;}
.rsg-page h3{font-size: clamp(20px, 2.2vw, 24px);}
.rsg-page p{margin: 0 0 16px; color: var(--ink-2);}
.rsg-page a{color: inherit; text-decoration: none;}
.rsg-page strong{color: var(--ink-900); font-weight: 700;}
.rsg-page img{max-width: 100%; height: auto; display: block;}
.rsg-page ul, .rsg-page ol{margin: 0; padding: 0;}
.rsg-page .container{max-width: 1200px; margin: 0 auto; padding: 0 var(--gutter);}
/* Heading reset &mdash; plain, no italic, no underline (Rule 3, May 2026) */
.rsg-page h1 em, .rsg-page h2 em, .rsg-page h3 em, .rsg-page h4 em{font-style: normal; text-decoration: none; color: var(--green-500); font-weight: inherit;}
/* Eyebrow with green dot prefix (rule 6) &mdash; Montserrat for brand consistency */
.rsg-page .eyebrow{display: inline-flex; align-items: center; gap: 10px; font-family: var(--font-display); font-size: 12px; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase; color: var(--green-600); margin-bottom: 18px;}
.rsg-page .eyebrow::before{content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--green-500); flex-shrink: 0;}
.rsg-page .section-dark .eyebrow{color: var(--green-500);}
.rsg-page .section-dark .eyebrow::before{background: var(--green-500); box-shadow: 0 0 12px rgba(32,157,80,0.6);}
/* Dark-pill eyebrow variant &mdash; matches the SEO Audit CTA-pill style */
.rsg-page .eyebrow.eyebrow-pill{background: #000; color: #fff; padding: 9px 18px; border-radius: 999px; gap: 9px; font-size: 11.5px; letter-spacing: 0.14em; margin-bottom: 22px; box-shadow: 0 4px 14px rgba(0,0,0,0.18);}
.rsg-page .eyebrow.eyebrow-pill::before{width: 8px; height: 8px; background: var(--green-500); box-shadow: 0 0 0 4px rgba(32,157,80,0.28); animation: pulse 2s infinite;}
/* Section header */
.rsg-page .section-header{margin-bottom: var(--header-mb);}
.rsg-page .section-header.align-left{text-align: left;}
.rsg-page .section-header.align-center{text-align: center;}
.rsg-page .section-header .lede{font-size: clamp(15px, 1.4vw, 17px); color: var(--ink-2); max-width: 820px; margin-top: 16px; text-wrap: balance;}
.rsg-page .section-dark .section-header h2,
.rsg-page .section-dark .section-header .lede{color: #fff;}
.rsg-page .section-dark .lede{color: rgba(255,255,255,0.75);}
.rsg-page .lede{font-size: 17px; color: var(--ink-2); line-height: 1.65;}
/* Buttons */
.rsg-page .btn{display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 14px 24px; font-family: var(--font-display); font-size: 14px; font-weight: 600; letter-spacing: 0.01em; border-radius: 999px; transition: transform .15s, box-shadow .15s, background .15s, color .15s; cursor: pointer; border: 0; text-decoration: none;}
.rsg-page .btn-primary{background: var(--green-500); color: #fff;}
.rsg-page .btn-primary:hover{background: var(--green-600); transform: translateY(-1px); box-shadow: 0 8px 24px rgba(32,157,80,0.25);}
.rsg-page .btn-ghost{background: transparent; color: var(--ink-900); border: 1.5px solid var(--ink-900);}
.rsg-page .btn-ghost:hover{background: var(--ink-900); color: #fff;}
.rsg-page .section-dark .btn-ghost{color: #fff; border-color: rgba(255,255,255,0.4);}
.rsg-page .section-dark .btn-ghost:hover{background: #fff; color: #000;}
.rsg-page .btn-large{padding: 16px 26px; font-size: 15px; white-space: nowrap;}
/* Sections */
.rsg-page .section{padding: var(--section-y) 0;}
.rsg-page .section-dark{background: var(--dark-grad); color: #fff;}
.rsg-page .section-dark h2, .rsg-page .section-dark h3, .rsg-page .section-dark h4{color: #fff;}
.rsg-page .section-dark p{color: rgba(255,255,255,0.78);}
/* Entrance animations */
.rsg-page .reveal{opacity: 0; transform: translateY(28px); transition: opacity .8s ease-out, transform .8s ease-out;}
.rsg-page .reveal.visible{opacity: 1; transform: translateY(0);}
@media (prefers-reduced-motion: reduce){.rsg-page .reveal{opacity: 1; transform: none; transition: none;}}
/* ============================================================
   NAV
   ============================================================ */
.rsg-page .nav{background: var(--paper); padding: 18px 0; border-bottom: 1px solid var(--line-2); position: sticky; top: 0; z-index: 30; backdrop-filter: blur(6px);}
.rsg-page .nav-inner{display: flex; align-items: center; justify-content: space-between; gap: 24px;}
.rsg-page .nav-logo img{height: 32px;}
.rsg-page .nav-links{display: flex; gap: 28px; align-items: center;}
.rsg-page .nav-links a{font-family: var(--font-display); font-size: 14px; color: var(--ink-700); font-weight: 500;}
.rsg-page .nav-links a:hover{color: var(--green-600);}
/* ============================================================
   HERO  (v2.1 &mdash; May 2026 design refinement, content unchanged)
   ============================================================ */
.rsg-page .hero{padding: 72px 0 var(--section-y); background: var(--paper); position: relative; overflow: hidden;}
.rsg-page .hero::before{content: ""; position: absolute; top: -180px; right: -120px; width: 760px; height: 760px;
  background: radial-gradient(circle, rgba(32,157,80,0.07) 0%, rgba(32,157,80,0.02) 40%, transparent 70%);
  pointer-events: none; z-index: 0;}
.rsg-page .hero::after{content: ""; position: absolute; bottom: -160px; left: -100px; width: 480px; height: 480px;
  background: radial-gradient(circle, rgba(200,32,43,0.045) 0%, rgba(200,32,43,0.01) 50%, transparent 75%);
  pointer-events: none; z-index: 0;}
.rsg-page .hero .container{position: relative; z-index: 1;}
.rsg-page .hero-grid{display: grid; grid-template-columns: 1.02fr 1fr; gap: 110px; align-items: center;}
.rsg-page .hero h1{font-size: 40px; margin-bottom: 12px; line-height: 1.2em; letter-spacing: -0.025em; text-wrap: balance;}
.rsg-page .hero h1 em{color: var(--green-600); position: relative; z-index: 1;}
/* hero h1 em underline shade &mdash; removed per Hamza request */
.rsg-page .hero-eyebrow-wrap{display: flex; align-items: center; gap: 14px; margin-bottom: 22px; flex-wrap: wrap;}
.rsg-page .hero-eyebrow-wrap .eyebrow{margin-bottom: 0;}
.rsg-page .hero-eyebrow-wrap .trust-pill{display: inline-flex; align-items: center; gap: 7px; padding: 6px 12px; background: #fff; border: 1px solid var(--line); border-radius: 999px; font-family: var(--font-mono); font-size: 10px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--ink-700); box-shadow: 0 2px 8px rgba(0,0,0,0.04);}
.rsg-page .hero-eyebrow-wrap .trust-pill .tp-yelp{font-family: 'Montserrat', sans-serif; font-weight: 800; color: #C8202B; letter-spacing: -0.02em; text-transform: lowercase; font-size: 12px;}
.rsg-page .hero-eyebrow-wrap .trust-pill .tp-check{width: 13px; height: 13px; border-radius: 50%; background: var(--green-500); color: #fff; display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0;}
.rsg-page .hero-eyebrow-wrap .trust-pill .tp-check svg{width: 8px; height: 8px;}
.rsg-page .hero-subhead{font-family: var(--font-display); font-weight: 700; font-size: 18px; color: var(--ink-900); margin: 0 0 16px; line-height: 1.4; max-width: 560px; display: flex; align-items: flex-start; gap: 12px;}
.rsg-page .hero-subhead::before{content: ""; width: 28px; height: 3px; background: var(--green-500); flex-shrink: 0; border-radius: 2px; margin-top: 11px;}
.rsg-page .dashed-callout, .rsg-page h1.dashed-callout, .rsg-page h2.dashed-callout, .rsg-page h3.dashed-callout, .rsg-page h4.dashed-callout{display: block; background: #EBECFF; border: 1.5px dashed rgb(0, 38, 135); border-radius: 10px; padding: 8px 14px; font-family: var(--font-display); font-style: italic; font-weight: 500; font-size: 13px !important; line-height: 1.4; color: rgb(0, 38, 135); text-align: left; text-decoration: none; text-transform: capitalize; letter-spacing: 0; margin: 0 0 18px;}
.rsg-page .dashed-callout strong{color: rgb(0, 38, 135); font-weight: 700;}
.rsg-page .hero-lede{font-family: var(--font-body); font-size: 15px; color: var(--ink-2); margin: 0 0 14px; line-height: 1.6; max-width: 560px;}
.rsg-page .hero-lede.last{margin-bottom: 22px;}
.rsg-page .hero-lede.hero-lede-bold{font-size: 16.5px; font-weight: 700; color: var(--ink-900);}
.rsg-page .hero-ctas{display: flex; gap: 10px; flex-wrap: nowrap; align-items: center;}
.rsg-page .hero-ctas .btn svg{width: 14px; height: 14px;}
.rsg-page .hero-ctas .btn{white-space: nowrap;}
.rsg-page .hero-ctas .btn-large{padding: 10px 18px; font-size: 12.5px;}
.rsg-page .hero-tagline{display: flex; align-items: center; gap: 10px; margin-top: 22px; font-family: var(--font-mono); font-size: 12px; color: var(--ink-500); font-style: italic;}
.rsg-page .hero-tagline .ht-dot{width: 6px; height: 6px; border-radius: 50%; background: var(--green-500); flex-shrink: 0; box-shadow: 0 0 0 4px rgba(32,157,80,0.15); animation: pulse 2.4s infinite;}
.rsg-page .hero-trust-row{display: flex; align-items: center; flex-wrap: wrap; gap: 16px; margin-top: 14px; font-family: var(--font-display); font-size: 13.5px; color: var(--ink-700);}
.rsg-page .hero-trust-row .htr-rating, .rsg-page .hero-trust-row .htr-badge{display: inline-flex; align-items: center; gap: 8px;}
.rsg-page .hero-trust-row .htr-stars{display: inline-flex; align-items: center; gap: 1px; margin-right: 4px;}
.rsg-page .hero-trust-row .htr-stars svg{width: 14px; height: 14px;}
.rsg-page .hero-trust-row strong{color: var(--ink-900); font-weight: 700;}
.rsg-page .hero-trust-row .htr-muted{color: var(--ink-2); font-weight: 500;}
.rsg-page .hero-trust-row .htr-badge svg{width: 16px; height: 16px; flex-shrink: 0;}
.rsg-page .hero-trust-row .htr-divider{width: 1px; height: 14px; background: var(--line);}
.rsg-page .hero-tip-callout{display: flex; align-items: flex-start; gap: 12px; background: #fff; border: 1px solid var(--line); border-left: 4px solid var(--green-500); border-radius: 10px; padding: 12px 16px 12px 12px; margin-top: 12px; max-width: 580px; box-shadow: 0 4px 16px rgba(0,0,0,0.04);}
.rsg-page .hero-tip-callout .htc-icon{display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 8px; background: rgba(44,122,75,0.08); flex-shrink: 0;}
.rsg-page .hero-tip-callout .htc-icon svg{width: 18px; height: 18px;}
.rsg-page .hero-tip-callout p{margin: 0; font-size: 13.5px; line-height: 1.55; color: var(--ink-900); font-family: var(--font-body);}
@media (max-width: 480px){.rsg-page .hero-trust-row{flex-direction: column; align-items: center; gap: 8px; font-size: 13px;}}
@media (max-width: 480px){.rsg-page .hero-trust-row .htr-divider{display: none;}}
@media (max-width: 480px){.rsg-page .hero-trust-row .htr-rating, .rsg-page .hero-trust-row .htr-badge{background: #FFFFFF; border: 1px solid var(--line); border-radius: 999px; padding: 6px 14px; gap: 8px; box-shadow: 0 2px 6px rgba(0,0,0,0.04);}}
@media (max-width: 480px){.rsg-page .hero-trust-row .htr-stars{gap: 1.5px; margin-right: 2px;}}
@media (max-width: 480px){.rsg-page .hero-trust-row .htr-stars svg{width: 13px; height: 13px;}}
@media (max-width: 480px){.rsg-page .hero-trust-row .htr-badge svg{width: 15px; height: 15px;}}
@media (max-width: 480px){.rsg-page .hero-tip-callout{padding: 12px 14px;}}
@media (max-width: 480px){.rsg-page .hero-tip-callout p{font-size: 13px;}}
@media (max-width: 640px){.rsg-page .hero-ctas{flex-wrap: wrap;}}
.rsg-page .hero-stage{position: relative; padding: 0;}
.rsg-page .float-card{background: #fff; border: 1px solid var(--line); border-radius: 12px; padding: 12px 14px; box-shadow: var(--shadow-lg); position: absolute; z-index: 2;}
.rsg-page .float-card.ping .fc-dot{width: 10px; height: 10px; border-radius: 50%; background: var(--green-500); flex-shrink: 0; box-shadow: 0 0 0 4px rgba(32,157,80,0.18); animation: pulse 2s infinite;}
.rsg-page .float-card.ping strong{display: block; font-family: var(--font-display); font-size: 12px; color: var(--ink-900); line-height: 1.3;}
.rsg-page .float-card.ping span:not(.fc-dot){display: block; font-size: 10px; color: var(--ink-500); line-height: 1.3; margin-top: 2px;}
/* KPI Dashboard */
.rsg-page .kpi-card{background: #fff; border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 24px; box-shadow: var(--shadow-md); position: relative; z-index: 1;}
.rsg-page .kpi-head{display: flex; justify-content: space-between; align-items: center; margin-bottom: 18px;}
.rsg-page .kpi-title{font-family: var(--font-display); font-weight: 700; font-size: 15px; color: var(--ink-900);}
.rsg-page .kpi-badge{background: var(--green-50); color: var(--green-700); padding: 4px 10px; border-radius: 999px; font-size: 10px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; display: inline-flex; align-items: center; gap: 6px;}
.rsg-page .kpi-pulse{width: 6px; height: 6px; border-radius: 50%; background: var(--green-500); animation: pulse 2s ease-in-out infinite; display: inline-block;}
.rsg-page .kpi-stats{display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; margin-bottom: 20px;}
.rsg-page .kpi-stat{padding: 12px; background: var(--paper-soft); border-radius: 10px;}
.rsg-page .kpi-lbl{font-family: var(--font-mono); font-size: 10px; color: var(--ink-500); letter-spacing: 0.08em; text-transform: uppercase; margin-bottom: 4px; font-weight: 700;}
.rsg-page .kpi-val{font-family: var(--font-display); font-size: 26px; font-weight: 800; color: var(--ink-900); line-height: 1;}
.rsg-page .kpi-delta{font-size: 11px; font-weight: 700; margin-top: 4px; font-family: var(--font-mono);}
.rsg-page .kpi-delta.up{color: var(--green-600);}
.rsg-page .kpi-delta.down{color: var(--green-600);}
.rsg-page .kpi-spark{padding-top: 8px; border-top: 1px solid var(--line-2);}
.rsg-page .kpi-spark svg{width: 100%; height: 40px;}
.rsg-page .kpi-caption{font-family: var(--font-mono); font-size: 9px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--ink-500); margin-top: 8px; font-weight: 600;}
/* ============================================================
   PLATFORM-CONTEXT HERO MOCKUP (Pattern 35 &mdash; Yelp variant, v2)
   Single backdrop card: photo fills it, phone sits in lower-left,
   stat sticker top-right, agency-partner badge top-left.
   ============================================================ */
.rsg-page .platform-hero{position: relative; width: 100%; max-width: 620px; height: 640px; margin: 0 auto;}
.rsg-page .platform-hero::before{content: ""; position: absolute; top: 30px; left: 30px; right: -10px; bottom: -10px;
  background: linear-gradient(135deg, var(--green-50) 0%, rgba(200,32,43,0.06) 100%);
  border-radius: 28px; z-index: 0;}
.rsg-page .platform-hero-photo{position: absolute; inset: 0; border-radius: 26px; overflow: hidden; box-shadow: 0 30px 70px rgba(0,0,0,0.20), 0 12px 36px rgba(0,0,0,0.10); z-index: 1; border: 1px solid rgba(255,255,255,0.6);}
.rsg-page .platform-hero-photo img{width: 100%; height: 100%; object-fit: cover; object-position: 35% 25%; display: block;}
.rsg-page .platform-hero-photo::after{content: ""; position: absolute; inset: 0; background: linear-gradient(160deg, rgba(0,0,0,0.05) 0%, rgba(0,0,0,0) 35%, rgba(0,0,0,0) 60%, rgba(20,62,37,0.42) 100%); pointer-events: none;}
.rsg-page .platform-hero-photo::before{content: ""; position: absolute; inset: 0; box-shadow: inset 0 0 60px rgba(0,0,0,0.12); border-radius: 26px; pointer-events: none; z-index: 2;}
.rsg-page .phone-shell{position: absolute; bottom: 36px; left: -72px; width: 232px; height: 440px; background: #111; border-radius: 32px; padding: 6px; box-shadow: 0 28px 60px rgba(0,0,0,0.38), 0 10px 24px rgba(0,0,0,0.24), 0 0 0 4px rgba(255,255,255,0.85); z-index: 3;}
.rsg-page .phone-shell::after{content: ""; position: absolute; top: -14px; left: -14px; right: -14px; bottom: -14px; border-radius: 40px; background: radial-gradient(ellipse at center, rgba(32,157,80,0.18) 0%, transparent 70%); z-index: -1; pointer-events: none;}
.rsg-page .phone-notch{position: absolute; top: 6px; left: 50%; transform: translateX(-50%); width: 78px; height: 18px; background: #111; border-radius: 0 0 12px 12px; z-index: 5;}
.rsg-page .phone-screen{width: 220px; height: 428px; background: #fff; border-radius: 26px; overflow: hidden; position: relative;}
.rsg-page .ph-statusbar{display: flex; justify-content: space-between; align-items: center; padding: 6px 22px 4px; font-family: system-ui, -apple-system, sans-serif; font-size: 10px; font-weight: 700; color: #1a1a1a; padding-top: 8px;}
.rsg-page .ph-yelpbar{display: flex; align-items: center; justify-content: space-between; padding: 8px 14px 10px; border-bottom: 1px solid #EEE;}
.rsg-page .ph-yelpwordmark{font-family: 'Montserrat', system-ui, sans-serif; font-weight: 800; font-size: 18px; color: #C8202B; letter-spacing: -0.02em;}
.rsg-page .ph-loc{display: inline-flex; align-items: center; gap: 4px; font-family: system-ui, sans-serif; font-size: 10.5px; color: #444; font-weight: 600;}
.rsg-page .ph-loc svg{width: 11px; height: 11px;}
.rsg-page .ph-sponsored-lbl{font-family: system-ui, sans-serif; font-size: 9.5px; font-weight: 700; color: #C8202B; letter-spacing: 0.04em; text-transform: uppercase; padding: 10px 14px 4px; display: flex; align-items: center; gap: 6px;}
.rsg-page .ph-sponsored-lbl::before{content: ""; width: 4px; height: 4px; border-radius: 50%; background: #C8202B;}
.rsg-page .ph-listing{margin: 0 14px; padding: 12px; background: #fff; border: 1px solid #E4E4E0; border-radius: 10px; font-family: system-ui, sans-serif; box-shadow: 0 2px 8px rgba(0,0,0,0.04);}
.rsg-page .ph-listing-top{display: flex; gap: 10px; align-items: flex-start; margin-bottom: 8px;}
.rsg-page .ph-listing-thumb{width: 52px; height: 52px; border-radius: 6px; overflow: hidden; flex-shrink: 0; background: linear-gradient(135deg, #2C7A4B 0%, #143E25 100%); position: relative; display: flex; align-items: center; justify-content: center; color: #fff;}
.rsg-page .ph-listing-thumb img{width: 100%; height: 100%; object-fit: cover; display: block;}
.rsg-page .ph-listing-thumb .pt-icon{width: 26px; height: 26px; color: #fff;}
.rsg-page .ph-listing-info{flex: 1; min-width: 0;}
.rsg-page .ph-biz-name{display: block; font-size: 13px; font-weight: 700; color: #1a1a1a; margin-bottom: 4px; font-family: system-ui, sans-serif; line-height: 1.2;}
.rsg-page .ph-stars{display: flex; align-items: center; gap: 5px; margin-bottom: 4px;}
.rsg-page .ph-star{background: #C8202B; color: #fff; font-size: 9px; padding: 2px 4px; border-radius: 2px; letter-spacing: -0.5px; font-weight: 700; line-height: 1;}
.rsg-page .ph-reviews{font-size: 10px; color: #666; font-weight: 600;}
.rsg-page .ph-addr{display: flex; align-items: center; gap: 3px; font-size: 9.5px; color: #777;}
.rsg-page .ph-badges{display: flex; gap: 12px; padding: 6px 0; border-top: 1px solid #F0F0EC; border-bottom: 1px solid #F0F0EC; margin-bottom: 8px;}
.rsg-page .ph-badge{display: inline-flex; align-items: center; gap: 4px; font-size: 9.5px; font-weight: 700;}
.rsg-page .ph-badge.verified{color: #1E88E5;}
.rsg-page .ph-badge.guarantee{color: #C8202B;}
.rsg-page .ph-badge svg{width: 12px; height: 12px; flex-shrink: 0;}
.rsg-page .ph-quote{font-size: 10px; color: #444; line-height: 1.45; margin: 0 0 8px; font-style: italic;}
.rsg-page .ph-quote::before{content: "\201C"; color: #C8202B; font-weight: 800; margin-right: 2px;}
.rsg-page .ph-response{display: flex; align-items: center; gap: 4px; font-size: 10px; color: #1a1a1a; margin: 0 0 10px; font-weight: 600;}
.rsg-page .ph-response-dot{width: 6px; height: 6px; border-radius: 50%; background: #34C759; flex-shrink: 0; box-shadow: 0 0 0 3px rgba(52,199,89,0.18);}
.rsg-page .ph-response strong{color: #1a1a1a;}
.rsg-page .ph-cta{width: 100%; padding: 10px; background: #C8202B; color: #fff; border: 0; border-radius: 6px; font-size: 11.5px; font-weight: 700; font-family: system-ui, sans-serif; cursor: pointer; letter-spacing: 0.02em;}
.rsg-page .ph-next{margin: 12px 14px 0; padding: 10px 12px; background: #FAFAF6; border: 1px solid #EEEEE8; border-radius: 8px; opacity: 0.85;}
.rsg-page .ph-next-thumb-row{display: flex; gap: 8px; align-items: center;}
.rsg-page .ph-next-thumb{width: 32px; height: 32px; border-radius: 4px; background: #E0E0DA; flex-shrink: 0;}
.rsg-page .ph-next-lines{flex: 1;}
.rsg-page .ph-next-line{height: 6px; background: #DADAD2; border-radius: 3px; margin-bottom: 4px;}
.rsg-page .ph-next-line.short{width: 50%;}
.rsg-page .hero-stat-sticker{position: absolute; top: 64px; right: -36px; z-index: 5; background: #fff; border-radius: 16px; padding: 14px 18px; box-shadow: 0 20px 44px rgba(0,0,0,0.22), 0 4px 12px rgba(0,0,0,0.10); display: flex; align-items: center; gap: 14px; border: 1px solid var(--line);}
.rsg-page .hero-stat-sticker .hss-icon{width: 40px; height: 40px; border-radius: 12px; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: flex; align-items: center; justify-content: center; flex-shrink: 0; box-shadow: 0 6px 18px rgba(32,157,80,0.32);}
.rsg-page .hero-stat-sticker .hss-icon svg{width: 20px; height: 20px;}
.rsg-page .hero-stat-sticker .hss-meta{display: flex; flex-direction: column; gap: 2px;}
.rsg-page .hero-stat-sticker .hss-label{font-family: var(--font-mono); font-size: 9px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--ink-500); font-weight: 700;}
.rsg-page .hero-stat-sticker .hss-value{font-family: var(--font-display); font-size: 20px; font-weight: 800; color: var(--ink-900); line-height: 1; letter-spacing: -0.01em;}
.rsg-page .hero-stat-sticker .hss-delta{font-family: var(--font-mono); font-size: 10px; color: var(--green-600); font-weight: 700; margin-top: 3px; letter-spacing: 0.04em;}
.rsg-page .hero-partner-badge{position: absolute; top: -16px; left: 50%; transform: translateX(-50%); z-index: 4; background: #fff; border-radius: 999px; padding: 9px 18px; display: inline-flex; align-items: center; gap: 9px; box-shadow: 0 10px 28px rgba(0,0,0,0.16), 0 2px 6px rgba(0,0,0,0.08); font-family: var(--font-mono); font-size: 10.5px; letter-spacing: 0.12em; text-transform: uppercase; font-weight: 700; color: var(--ink-900); border: 1px solid var(--line); white-space: nowrap;}
.rsg-page .hero-partner-badge .hpb-yelp{color: #C8202B; font-family: 'Montserrat', sans-serif; font-weight: 800; letter-spacing: -0.02em; font-size: 14px; text-transform: lowercase;}
.rsg-page .hero-partner-badge .hpb-divider{width: 1px; height: 14px; background: var(--line);}
.rsg-page .hero-partner-badge .hpb-check{width: 15px; height: 15px; border-radius: 50%; background: var(--green-500); color: #fff; display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; box-shadow: 0 0 0 3px rgba(32,157,80,0.18);}
.rsg-page .hero-partner-badge .hpb-check svg{width: 9px; height: 9px;}
.rsg-page .hero-floating-ping{position: absolute; bottom: 28px; right: 24px; z-index: 4; background: #fff; border-radius: 14px; padding: 12px 16px; box-shadow: 0 16px 36px rgba(0,0,0,0.22), 0 3px 10px rgba(0,0,0,0.10); display: flex; align-items: center; gap: 12px; max-width: 220px; border: 1px solid rgba(255,255,255,0.7);}
.rsg-page .hero-floating-ping .hfp-dot{width: 10px; height: 10px; border-radius: 50%; background: var(--green-500); flex-shrink: 0; box-shadow: 0 0 0 4px rgba(32,157,80,0.22); animation: pulse 2s infinite;}
.rsg-page .hero-floating-ping strong{display: block; font-family: var(--font-display); font-size: 13px; color: var(--ink-900); line-height: 1.3; font-weight: 700;}
.rsg-page .hero-floating-ping span:not(.hfp-dot){display: block; font-size: 10.5px; color: var(--ink-500); line-height: 1.35; margin-top: 3px;}
/* Mid-right secondary sticker &mdash; Yelp Premium Partner badge for visual balance */
.rsg-page .hero-cpl-card{position: absolute; top: 50%; right: -28px; transform: translateY(-50%); z-index: 4; background: var(--dark-grad); color: #fff; border-radius: 16px; padding: 14px 18px 14px 14px; box-shadow: 0 18px 38px rgba(0,0,0,0.24), 0 4px 10px rgba(0,0,0,0.12); display: flex; align-items: center; gap: 12px; border: 1px solid rgba(255,255,255,0.06);}
.rsg-page .hero-cpl-card .hcc-icon{width: 38px; height: 38px; border-radius: 10px; background: rgba(32,157,80,0.18); color: var(--green-500); display: flex; align-items: center; justify-content: center; flex-shrink: 0;}
.rsg-page .hero-cpl-card .hcc-icon svg{width: 18px; height: 18px;}
.rsg-page .hero-cpl-card .hcc-meta{display: flex; flex-direction: column; gap: 2px; min-width: 80px;}
.rsg-page .hero-cpl-card .hcc-label{font-family: var(--font-mono); font-size: 9px; letter-spacing: 0.12em; text-transform: uppercase; color: rgba(255,255,255,0.55); font-weight: 700;}
.rsg-page .hero-cpl-card .hcc-value{font-family: var(--font-display); font-size: 18px; font-weight: 800; color: var(--green-500); line-height: 1; letter-spacing: -0.01em;}
.rsg-page .hero-cpl-card .hcc-delta{font-family: var(--font-mono); font-size: 9.5px; color: rgba(255,255,255,0.7); margin-top: 3px; letter-spacing: 0.04em;}
/* ============================================================
   REASON STACK (alternating-row layout, May 2026)
   Adapted from LSA page. Each row has text + custom visualization.
   ============================================================ */
.rsg-page .reason-stack{display: grid; gap: 18px;}
.rsg-page .reason-row{display: grid; grid-template-columns: 1.05fr 1fr; gap: 40px; align-items: center; background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 28px 32px; position: relative; overflow: hidden; box-shadow: var(--shadow-md);}
.rsg-page .reason-row.flip{grid-template-columns: 1fr 1.05fr;}
.rsg-page .reason-row.flip .rr-text{order: 2;}
.rsg-page .reason-row.flip .rr-viz{order: 1;}
.rsg-page .reason-row .rr-num{position: absolute; top: 6px; right: 22px; font-family: var(--font-display); font-size: 96px; font-weight: 800; color: var(--ink-900); opacity: 0.05; line-height: 1; pointer-events: none;}
.rsg-page .reason-row.flip .rr-num{right: auto; left: 28px;}
.rsg-page .reason-row .rr-tag{display: inline-flex; align-items: center; gap: 7px; padding: 5px 10px; background: var(--green-50); color: var(--green-700); border-radius: 999px; font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.12em; text-transform: uppercase; font-weight: 700; margin-bottom: 12px;}
.rsg-page .reason-row .rr-tag::before{content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--green-500);}
.rsg-page .reason-row h3{font-size: 21px; margin-bottom: 10px; line-height: 1.25;}
.rsg-page .reason-row p{font-size: 14px; margin-bottom: 12px; line-height: 1.55;}
.rsg-page .reason-row .rr-quote{background: var(--paper-soft); border-left: 3px solid var(--green-500); padding: 10px 14px; border-radius: 0 8px 8px 0; font-family: var(--font-display); font-style: italic; font-size: 13px; color: var(--ink-700); margin: 0; line-height: 1.45;}
.rsg-page .reason-row .rr-viz{position: relative; min-height: 200px;}
/* VIZ 1 &mdash; Yelp comparison stack (Reason 01) */
.rsg-page .viz-compare{position: relative; min-height: 200px; display: flex; align-items: center; justify-content: center; padding: 4px;}
.rsg-page .viz-compare .vc-stack{display: grid; gap: 10px; width: 100%; max-width: 320px;}
.rsg-page .viz-compare .vc-card{background: #fff; border: 1px solid var(--line); border-radius: 12px; padding: 12px 14px; display: grid; grid-template-columns: 40px 1fr auto; gap: 12px; align-items: center; box-shadow: 0 4px 12px rgba(0,0,0,0.04); transition: transform .2s;}
.rsg-page .viz-compare .vc-card.featured{border: 2px solid var(--green-500); box-shadow: 0 12px 28px rgba(32,157,80,0.18); transform: scale(1.04); position: relative;}
.rsg-page .viz-compare .vc-card.featured::after{content: "1st to reply"; position: absolute; top: -10px; right: 10px; background: var(--green-500); color: #fff; font-family: var(--font-mono); font-size: 9px; letter-spacing: 0.1em; text-transform: uppercase; font-weight: 700; padding: 3px 8px; border-radius: 999px;}
.rsg-page .viz-compare .vc-logo{width: 40px; height: 40px; border-radius: 8px; background: linear-gradient(135deg, var(--green-500), var(--green-700)); display: flex; align-items: center; justify-content: center; color: #fff;}
.rsg-page .viz-compare .vc-logo svg{width: 20px; height: 20px;}
.rsg-page .viz-compare .vc-card.muted .vc-logo{background: linear-gradient(135deg, #B6B6B6, #8B8B8B);}
.rsg-page .viz-compare .vc-name{display: block; font-family: var(--font-display); font-size: 13px; font-weight: 700; color: var(--ink-900); line-height: 1.2;}
.rsg-page .viz-compare .vc-meta{display: block; font-family: var(--font-mono); font-size: 10px; color: var(--ink-500); margin-top: 3px;}
.rsg-page .viz-compare .vc-stars{color: #C8202B; font-size: 11px; letter-spacing: 0;}
.rsg-page .viz-compare .vc-caption{margin-top: 14px; text-align: center; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--ink-500); font-weight: 700; display: flex; align-items: center; justify-content: center; gap: 8px;}
.rsg-page .viz-compare .vc-caption .vcc-dot{width: 6px; height: 6px; border-radius: 50%; background: var(--green-500); box-shadow: 0 0 0 3px rgba(32,157,80,0.18); animation: pulse 2s infinite;}
/* VIZ 2 &mdash; CPL bar comparison (Reason 02) */
.rsg-page .viz-cpl{padding: 8px 4px;}
.rsg-page .viz-cpl .vcpl-row{display: grid; grid-template-columns: 90px 1fr; gap: 14px; align-items: center; margin-bottom: 16px;}
.rsg-page .viz-cpl .vcpl-label{font-family: var(--font-display); font-size: 13px; font-weight: 700; color: var(--ink-900);}
.rsg-page .viz-cpl .vcpl-label small{display: block; font-family: var(--font-mono); font-size: 9px; font-weight: 600; color: var(--ink-500); letter-spacing: 0.08em; text-transform: uppercase; margin-top: 2px;}
.rsg-page .viz-cpl .vcpl-bar{height: 40px; border-radius: 8px; position: relative; overflow: hidden; background: var(--paper-soft);}
.rsg-page .viz-cpl .vcpl-fill{position: absolute; top: 0; bottom: 0; left: 0; border-radius: 8px; display: flex; align-items: center; padding: 0 14px; color: #fff; font-family: var(--font-display); font-weight: 800; font-size: 14px; letter-spacing: -0.01em;}
.rsg-page .viz-cpl .vcpl-fill.yelp{width: 40%; background: linear-gradient(90deg, var(--green-500), var(--green-700)); box-shadow: 0 4px 12px rgba(32,157,80,0.28);}
.rsg-page .viz-cpl .vcpl-fill.ppc{width: 78%; background: linear-gradient(90deg, var(--red), #9F1219); box-shadow: 0 4px 12px rgba(200,32,43,0.24);}
.rsg-page .viz-cpl .vcpl-fill.ppc::after{content: "Up to 2x more"; position: absolute; right: 14px; top: 50%; transform: translateY(-50%); font-family: var(--font-mono); font-size: 9px; font-weight: 700; letter-spacing: 0.08em; opacity: 0.9; text-transform: uppercase;}
.rsg-page .viz-cpl .vcpl-axis{display: flex; justify-content: space-between; padding: 0 0 0 104px; font-family: var(--font-mono); font-size: 9.5px; color: var(--ink-500); font-weight: 600; margin-top: 8px;}
.rsg-page .viz-cpl .vcpl-axis span:nth-child(odd){opacity: 0.6;}
.rsg-page .viz-cpl .vcpl-caption{text-align: center; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--ink-500); font-weight: 700; margin-top: 18px; padding-top: 14px; border-top: 1px dashed var(--line);}
/* VIZ 3 &mdash; Parallel pipeline (Reason 03) */
.rsg-page .viz-pipes{position: relative; padding: 4px 0; min-height: 200px; display: flex; align-items: center; justify-content: center;}
.rsg-page .viz-pipes .vp-stage{display: grid; grid-template-columns: 1fr 1fr; gap: 22px; width: 100%; max-width: 360px;}
.rsg-page .viz-pipes .vp-col{background: #fff; border-radius: 12px; padding: 12px 12px; position: relative; border: 1px solid var(--line); min-height: 180px; display: flex; flex-direction: column;}
.rsg-page .viz-pipes .vp-col.google{background: linear-gradient(180deg, #fff, #FBE9EA); border-color: rgba(200,32,43,0.25);}
.rsg-page .viz-pipes .vp-col.yelp{background: linear-gradient(180deg, #fff, var(--green-50)); border-color: rgba(32,122,75,0.3);}
.rsg-page .viz-pipes .vp-head{display: flex; align-items: center; justify-content: space-between; padding-bottom: 8px; border-bottom: 1px dashed var(--line); margin-bottom: 10px;}
.rsg-page .viz-pipes .vp-head strong{font-family: var(--font-display); font-size: 12px; font-weight: 800; color: var(--ink-900); letter-spacing: 0.02em;}
.rsg-page .viz-pipes .vp-status{font-family: var(--font-mono); font-size: 8.5px; font-weight: 700; letter-spacing: 0.08em; padding: 3px 7px; border-radius: 4px; text-transform: uppercase;}
.rsg-page .viz-pipes .vp-status.warn{background: rgba(200,32,43,0.12); color: var(--red);}
.rsg-page .viz-pipes .vp-status.ok{background: var(--green-50); color: var(--green-700);}
.rsg-page .viz-pipes .vp-pipe{flex: 1; display: flex; flex-direction: column; gap: 4px; align-items: center; padding: 8px 0;}
.rsg-page .viz-pipes .vp-drop{width: 16px; height: 16px; border-radius: 50%;}
.rsg-page .viz-pipes .vp-drop.green{background: var(--green-500); box-shadow: 0 0 0 3px rgba(32,157,80,0.18);}
.rsg-page .viz-pipes .vp-drop.red{background: var(--red); opacity: 0.6;}
.rsg-page .viz-pipes .vp-drop.gray{background: #BBB; opacity: 0.5;}
.rsg-page .viz-pipes .vp-arrow{color: var(--ink-500); font-size: 14px; line-height: 1; opacity: 0.5;}
.rsg-page .viz-pipes .vp-zigzag{font-family: var(--font-mono); font-size: 9px; color: var(--red); font-weight: 700; letter-spacing: 0.08em; margin: 4px 0; text-transform: uppercase;}
.rsg-page .viz-pipes .vp-bottom{padding: 8px 10px; background: var(--ink-900); color: #fff; border-radius: 8px; text-align: center; font-family: var(--font-mono); font-size: 9px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; margin-top: 8px;}
.rsg-page .viz-pipes .vp-bottom.yelp{background: var(--green-700);}
/* VIZ 4 &mdash; Speed vs Budget gauge (Reason 04) */
.rsg-page .viz-speed{position: relative; min-height: 200px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; padding: 8px;}
.rsg-page .viz-speed .vs-gauge{width: 200px; height: 130px; position: relative; padding-bottom: 18px;}
.rsg-page .viz-speed .vs-gauge svg{width: 100%; height: 100%;}
.rsg-page .viz-speed .vs-num{position: absolute; bottom: 22px; left: 50%; transform: translateX(-50%); text-align: center;}
.rsg-page .viz-speed .vs-num strong{display: block; font-family: var(--font-display); font-size: 26px; font-weight: 800; color: var(--ink-900); line-height: 1; letter-spacing: -0.02em;}
.rsg-page .viz-speed .vs-num span{display: block; font-family: var(--font-mono); font-size: 9px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--green-700); margin-top: 4px; font-weight: 700;}
.rsg-page .viz-speed .vs-scale{position: absolute; bottom: 2px; left: 0; right: 0; display: flex; justify-content: space-between; padding: 0 6px; font-family: var(--font-mono); font-size: 8.5px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--ink-500); font-weight: 700;}
.rsg-page .viz-speed .vs-versus{display: grid; grid-template-columns: 1fr auto 1fr; gap: 14px; align-items: center; width: 100%; max-width: 320px; margin-top: 4px;}
.rsg-page .viz-speed .vs-pill{padding: 10px 12px; border-radius: 10px; text-align: center; background: #fff; border: 1px solid var(--line);}
.rsg-page .viz-speed .vs-pill.win{background: var(--green-50); border-color: rgba(32,157,80,0.3);}
.rsg-page .viz-speed .vs-pill.lose{background: var(--paper-soft); opacity: 0.7;}
.rsg-page .viz-speed .vs-pill strong{display: block; font-family: var(--font-display); font-size: 13px; font-weight: 800; color: var(--ink-900); line-height: 1.2;}
.rsg-page .viz-speed .vs-pill.win strong{color: var(--green-700);}
.rsg-page .viz-speed .vs-pill.lose strong{text-decoration: line-through; text-decoration-color: var(--ink-500);}
.rsg-page .viz-speed .vs-pill span{display: block; font-family: var(--font-mono); font-size: 8.5px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--ink-500); font-weight: 700; margin-top: 3px;}
.rsg-page .viz-speed .vs-vs{font-family: var(--font-display); font-weight: 800; font-size: 13px; color: var(--ink-700); letter-spacing: 0.04em;}
@media (max-width: 1024px){.rsg-page .reason-row, .rsg-page .reason-row.flip{grid-template-columns: 1fr; gap: 32px; padding: 32px 28px;}}
@media (max-width: 1024px){.rsg-page .reason-row.flip .rr-text, .rsg-page .reason-row.flip .rr-viz{order: initial;}}
@media (max-width: 1024px){.rsg-page .reason-row .rr-num{font-size: 88px;}}
/* ============================================================
   LOGO MARQUEE (Pattern 16)
   ============================================================ */
.rsg-page .logo-marquee{overflow: hidden; padding: 40px 0; background: #fff; border-top: 1px solid var(--line-2); border-bottom: 1px solid var(--line-2); position: relative;}
.rsg-page .logo-marquee::before, .rsg-page .logo-marquee::after{content: ""; position: absolute; top: 0; bottom: 0; width: 120px; z-index: 2; pointer-events: none;}
.rsg-page .logo-marquee::before{left: 0; background: linear-gradient(90deg, #fff 0%, rgba(255,255,255,0) 100%);}
.rsg-page .logo-marquee::after{right: 0; background: linear-gradient(270deg, #fff 0%, rgba(255,255,255,0) 100%);}
.rsg-page .lm-track{display: flex; width: max-content; animation: marqueeScroll 70s linear infinite;}
.rsg-page .lm-set{display: flex; gap: 56px; padding-right: 56px; align-items: center;}
.rsg-page .lm-logo{height: 56px; width: auto; max-width: 160px; object-fit: contain; opacity: 0.75; filter: grayscale(0.15); transition: opacity .25s, filter .25s, transform .25s; flex-shrink: 0;}
.rsg-page .lm-logo:hover{opacity: 1; filter: none; transform: scale(1.05);}
/* ============================================================
   CAMPAIGN OVERVIEW STATS
   ============================================================ */
.rsg-page .stat-row{display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--grid-gap);}
.rsg-page .stat-tile{background: #fff; border: 1px solid var(--line); border-radius: var(--radius-md); padding: var(--card-pad); position: relative; overflow: hidden; min-height: 130px;}
.rsg-page .stat-tile .bg-num{position: absolute; top: 8px; right: 18px; font-family: var(--font-display); font-size: 72px; font-weight: 800; color: var(--ink-900); opacity: 0.04; line-height: 1;}
.rsg-page .stat-tile .st-label{font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--ink-500); font-weight: 700; margin-bottom: 8px;}
.rsg-page .stat-tile .st-value{font-family: var(--font-display); font-size: 32px; font-weight: 800; color: var(--ink-900); line-height: 1;}
.rsg-page .stat-tile .st-delta{display: inline-flex; align-items: center; gap: 4px; font-family: var(--font-mono); font-size: 11px; color: var(--green-700); font-weight: 700; margin-top: 8px; padding: 3px 8px; background: var(--green-50); border-radius: 6px;}
/* ============================================================
   REASON / FEATURE CARDS (Why HVAC owners add Yelp to the mix)
   ============================================================ */
.rsg-page .reason-grid{display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--grid-gap);}
.rsg-page .reason-card{background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: var(--card-pad-lg); position: relative; overflow: hidden;}
.rsg-page .reason-card .rc-bg-num{position: absolute; top: 8px; right: 20px; font-family: var(--font-display); font-size: 96px; font-weight: 800; color: var(--ink-900); opacity: 0.045; line-height: 1; pointer-events: none;}
.rsg-page .reason-card > *{position: relative; z-index: 1;}
.rsg-page .reason-card .rc-num{font-family: var(--font-mono); font-size: 11px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--green-700); font-weight: 700; margin-bottom: 14px; display: inline-block; padding: 4px 10px; background: var(--green-50); border-radius: 999px;}
.rsg-page .reason-card h3{font-size: 20px; margin-bottom: 12px;}
.rsg-page .reason-card p{font-size: 14px;}
/* Speed-to-live section redesign */
.rsg-page .speed-hero{display: grid; grid-template-columns: auto 1fr; gap: 32px; align-items: center; padding: 28px 36px; margin: 0 0 36px; background: linear-gradient(135deg, #fff, var(--paper-soft)); border: 1px solid var(--line); border-radius: 18px; box-shadow: 0 4px 16px rgba(0,0,0,0.04);}
.rsg-page .speed-hero .sh-num{font-family: var(--font-display); font-size: clamp(48px, 5vw, 64px); font-weight: 800; color: var(--ink-900); letter-spacing: -0.03em; line-height: 0.95;}
.rsg-page .speed-hero .sh-num em{color: var(--green-700); font-style: normal;}
.rsg-page .speed-hero .sh-num-lbl{display: block; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--ink-500); font-weight: 700; margin-top: 6px;}
.rsg-page .speed-hero .sh-bars{display: flex; flex-direction: column; gap: 10px; min-width: 0;}
.rsg-page .speed-hero .sh-bar{display: grid; grid-template-columns: 100px 1fr 90px; align-items: center; gap: 12px;}
.rsg-page .speed-hero .sh-bar .sh-bar-lbl{font-family: var(--font-display); font-size: 12.5px; font-weight: 700; color: var(--ink-900);}
.rsg-page .speed-hero .sh-bar .sh-bar-val{font-family: var(--font-mono); font-size: 10.5px; letter-spacing: 0.10em; text-transform: uppercase; color: var(--ink-500); font-weight: 700; text-align: right;}
.rsg-page .speed-hero .sh-bar .sh-bar-track{height: 8px; background: var(--paper-soft); border-radius: 999px; overflow: hidden; position: relative; border: 1px solid var(--line-2);}
.rsg-page .speed-hero .sh-bar .sh-bar-fill{height: 100%; border-radius: 999px;}
.rsg-page .speed-hero .sh-bar.featured .sh-bar-fill{background: linear-gradient(90deg, var(--green-500), #6EE7B7); width: 12%;}
.rsg-page .speed-hero .sh-bar.featured .sh-bar-lbl{color: var(--green-700);}
.rsg-page .speed-hero .sh-bar.featured .sh-bar-val{color: var(--green-700);}
.rsg-page .speed-hero .sh-bar.meta .sh-bar-fill{background: linear-gradient(90deg, #F87171, #EF4444); width: 55%;}
.rsg-page .speed-hero .sh-bar.lsa .sh-bar-fill{background: linear-gradient(90deg, #F59E0B, #FBBF24); width: 100%;}
.rsg-page .speed-hero .sh-bar.ppc .sh-bar-fill{background: linear-gradient(90deg, #60A5FA, #3B82F6); width: 65%;}
/* Friction-removed cards (replaces No.01-No.04) */
.rsg-page .friction-grid{display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px;}
.rsg-page .friction-card{position: relative; background: #fff; border: 1px solid var(--line); border-radius: 18px; padding: 26px 28px 24px; overflow: hidden; transition: transform .25s, box-shadow .25s, border-color .25s;}
.rsg-page .friction-card:hover{transform: translateY(-3px); box-shadow: 0 16px 36px rgba(0,0,0,0.07);}
.rsg-page .friction-card::before{content: ''; position: absolute; top: 0; left: 0; right: 0; height: 4px; opacity: 0.95;}
.rsg-page .friction-card.f-red::before{background: linear-gradient(90deg, #F87171, #FCA5A5);}
.rsg-page .friction-card.f-amber::before{background: linear-gradient(90deg, #F59E0B, #FBBF24);}
.rsg-page .friction-card.f-blue::before{background: linear-gradient(90deg, #3B82F6, #60A5FA);}
.rsg-page .friction-card.f-green::before{background: linear-gradient(90deg, var(--green-500), #6EE7B7);}
.rsg-page .friction-card .fc-head{display: flex; align-items: center; gap: 14px; margin-bottom: 14px;}
.rsg-page .friction-card .fc-icon{width: 52px; height: 52px; border-radius: 14px; color: #fff; display: flex; align-items: center; justify-content: center; flex-shrink: 0; position: relative;}
.rsg-page .friction-card .fc-icon svg{width: 26px; height: 26px;}
.rsg-page .friction-card.f-red .fc-icon{background: linear-gradient(135deg, #F87171, #EF4444); box-shadow: 0 10px 24px rgba(239,68,68,0.28);}
.rsg-page .friction-card.f-amber .fc-icon{background: linear-gradient(135deg, #F59E0B, #D97706); box-shadow: 0 10px 24px rgba(245,158,11,0.28);}
.rsg-page .friction-card.f-blue .fc-icon{background: linear-gradient(135deg, #3B82F6, #1D4ED8); box-shadow: 0 10px 24px rgba(59,130,246,0.28);}
.rsg-page .friction-card.f-green .fc-icon{background: linear-gradient(135deg, var(--green-500), var(--green-700)); box-shadow: 0 10px 24px rgba(32,157,80,0.28);}
.rsg-page .friction-card .fc-tag{display: inline-flex; align-items: center; gap: 6px; font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 800; padding: 4px 10px; border-radius: 999px;}
.rsg-page .friction-card.f-red .fc-tag{background: rgba(239,68,68,0.10); color: #B91C1C;}
.rsg-page .friction-card.f-amber .fc-tag{background: rgba(245,158,11,0.12); color: #B45309;}
.rsg-page .friction-card.f-blue .fc-tag{background: rgba(59,130,246,0.10); color: #1D4ED8;}
.rsg-page .friction-card.f-green .fc-tag{background: var(--green-50); color: var(--green-700);}
.rsg-page .friction-card.f-green .fc-tag::before{content: ''; width: 6px; height: 6px; border-radius: 50%; background: var(--green-500); box-shadow: 0 0 6px var(--green-500);}
.rsg-page .friction-card h3{font-family: var(--font-display); font-size: 19px; font-weight: 800; color: var(--ink-900); margin: 0 0 8px; letter-spacing: -0.005em; line-height: 1.3;}
.rsg-page .friction-card p{margin: 0; font-size: 14px; line-height: 1.6; color: var(--ink-2);}
/* AI Search Visibility section redesign */
.rsg-page .ai-tools-strip{display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-bottom: 28px; padding: 16px 20px; background: linear-gradient(135deg, #fff, var(--paper-soft)); border: 1px solid var(--line); border-radius: 14px;}
.rsg-page .ai-tools-strip .ats-lbl{font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--ink-700); font-weight: 700; margin-right: 4px;}
.rsg-page .ai-tools-strip .ats-chip{display: inline-flex; align-items: center; gap: 7px; padding: 6px 12px 6px 7px; background: #fff; border: 1px solid var(--line); border-radius: 999px; font-family: var(--font-display); font-size: 12.5px; font-weight: 700; color: var(--ink-900); transition: border-color .2s, transform .2s;}
.rsg-page .ai-tools-strip .ats-chip:hover{transform: translateY(-1px);}
.rsg-page .ai-tools-strip .ats-chip .ats-dot{width: 22px; height: 22px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; color: #fff; font-family: var(--font-display); font-weight: 800; font-size: 10px; box-shadow: 0 3px 8px rgba(0,0,0,0.10);}
.rsg-page .ai-tools-strip .ats-chip.openai .ats-dot{background: #10A37F;}
.rsg-page .ai-tools-strip .ats-chip.gemini .ats-dot{background: linear-gradient(135deg, #4285F4, #9333EA);}
.rsg-page .ai-tools-strip .ats-chip.perplexity .ats-dot{background: #20B8CD;}
.rsg-page .ai-tools-strip .ats-chip.claude .ats-dot{background: #D97757;}
/* AI insight cards (replaces simple bulleted list) */
.rsg-page .ai-insights{display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin: 0 0 32px;}
.rsg-page .ai-insight{position: relative; background: #fff; border: 1px solid var(--line); border-radius: 18px; padding: 26px 26px 22px; overflow: hidden; transition: transform .25s, box-shadow .25s, border-color .25s; display: flex; flex-direction: column; gap: 14px;}
.rsg-page .ai-insight:hover{transform: translateY(-3px); box-shadow: 0 16px 36px rgba(0,0,0,0.07);}
.rsg-page .ai-insight::before{content: ''; position: absolute; top: 0; left: 0; right: 0; height: 4px;}
.rsg-page .ai-insight.i-blue::before{background: linear-gradient(90deg, #3B82F6, #60A5FA);}
.rsg-page .ai-insight.i-red::before{background: linear-gradient(90deg, #F87171, #FCA5A5);}
.rsg-page .ai-insight.i-green::before{background: linear-gradient(90deg, var(--green-500), #6EE7B7);}
.rsg-page .ai-insight .ai-icon{width: 48px; height: 48px; border-radius: 13px; color: #fff; display: flex; align-items: center; justify-content: center; flex-shrink: 0;}
.rsg-page .ai-insight .ai-icon svg{width: 24px; height: 24px;}
.rsg-page .ai-insight.i-blue .ai-icon{background: linear-gradient(135deg, #3B82F6, #1D4ED8); box-shadow: 0 10px 24px rgba(59,130,246,0.28);}
.rsg-page .ai-insight.i-red .ai-icon{background: linear-gradient(135deg, #F87171, #EF4444); box-shadow: 0 10px 24px rgba(239,68,68,0.28);}
.rsg-page .ai-insight.i-green .ai-icon{background: linear-gradient(135deg, var(--green-500), var(--green-700)); box-shadow: 0 10px 24px rgba(32,157,80,0.28);}
.rsg-page .ai-insight .ai-headline{font-family: var(--font-display); font-size: 16.5px; font-weight: 800; color: var(--ink-900); line-height: 1.35; margin: 0; letter-spacing: -0.005em;}
.rsg-page .ai-insight p{margin: 0; font-size: 13.5px; line-height: 1.6; color: var(--ink-2);}
.rsg-page .ai-profile-chips{display: flex; flex-wrap: wrap; gap: 6px; margin-top: 4px;}
.rsg-page .ai-profile-chips .apc{background: var(--paper-soft); border: 1px solid var(--line-2); padding: 3px 9px; border-radius: 999px; font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.08em; font-weight: 700; color: var(--ink-700);}
/* AI dashboard frame (Google search screenshot) */
.rsg-page .ai-dashboard{position: relative; background: #fff; border-radius: 16px; overflow: hidden; box-shadow: 0 16px 40px rgba(0,0,0,0.08), 0 0 0 1px var(--line); margin: 24px 0 32px;}
.rsg-page .ai-dashboard-bar{display: flex; align-items: center; justify-content: space-between; padding: 12px 18px; background: #F8FAFC; border-bottom: 1px solid #E2E8F0;}
.rsg-page .ai-dashboard-bar .ad-dots{display: flex; gap: 6px;}
.rsg-page .ai-dashboard-bar .ad-dots span{width: 10px; height: 10px; border-radius: 50%;}
.rsg-page .ai-dashboard-bar .ad-dots .d1{background: #FF5F56;}
.rsg-page .ai-dashboard-bar .ad-dots .d2{background: #FFBD2E;}
.rsg-page .ai-dashboard-bar .ad-dots .d3{background: #27C93F;}
.rsg-page .ai-dashboard-bar .ad-label{font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.14em; text-transform: uppercase; color: #64748B; font-weight: 700;}
.rsg-page .ai-dashboard-bar .ad-query{display: inline-flex; align-items: center; gap: 7px; font-family: var(--font-mono); font-size: 9px; letter-spacing: 0.14em; text-transform: uppercase; color: #1D4ED8; font-weight: 700;}
.rsg-page .ai-dashboard-bar .ad-query::before{content: ''; width: 6px; height: 6px; border-radius: 50%; background: #1D4ED8;}
.rsg-page .ai-dashboard img{display: block; width: 100%; height: auto;}
/* heading line helper: forces a break at the phrase boundary on desktop, flows naturally on mobile (no stray <br>) */
.rsg-page .hd-ln{display: block;}
@media (max-width: 600px){.rsg-page .hd-ln{display: inline;}}
@media (max-width: 600px){.rsg-page .ai-dashboard-bar{padding: 10px 12px; gap: 10px;}}
@media (max-width: 600px){.rsg-page .ai-dashboard-bar .ad-dots{flex-shrink: 0;}}
@media (max-width: 600px){.rsg-page .ai-dashboard-bar .ad-dots span{width: 8px; height: 8px;}}
@media (max-width: 600px){.rsg-page .ai-dashboard-bar .ad-label{font-size: 8px; letter-spacing: 0.06em; white-space: nowrap; flex-shrink: 0;}}
@media (max-width: 600px){.rsg-page .ai-dashboard-bar .ad-query{font-size: 7.5px; letter-spacing: 0.04em; gap: 5px; white-space: nowrap; overflow: hidden; min-width: 0;}}
@media (max-width: 600px){.rsg-page .ai-dashboard-bar .ad-query::before{flex-shrink: 0;}}
@media (max-width: 460px){/* on the smallest phones the right-hand query crowds the label &mdash; drop it, keep the labelled chrome */
  .rsg-page .ai-dashboard-bar .ad-query{display: none;}}
/* Truth About Reviews section redesign */
.rsg-page .rating-compare{display: grid; grid-template-columns: 1fr 140px 1fr; gap: 18px; align-items: stretch; margin: 0 0 32px;}
.rsg-page .rc-card{padding: 26px 28px; border-radius: 18px; border: 1px solid var(--line); background: #fff; display: flex; flex-direction: column; gap: 12px; position: relative; overflow: hidden; transition: transform .25s, box-shadow .25s; box-shadow: 0 6px 18px rgba(0,0,0,0.04);}
.rsg-page .rc-card:hover{transform: translateY(-2px); box-shadow: 0 18px 40px rgba(0,0,0,0.08);}
.rsg-page .rc-card .rc-label{font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--ink-500); font-weight: 700;}
.rsg-page .rc-card.rc-yelp .rc-label{color: var(--green-700);}
.rsg-page .rc-card.rc-google .rc-label{color: var(--green-700);}
.rsg-page .rc-card .rc-rating{font-family: var(--font-display); font-size: clamp(36px, 4vw, 52px); font-weight: 800; color: var(--ink-900); line-height: 1; letter-spacing: -0.02em; display: flex; align-items: baseline; gap: 6px;}
.rsg-page .rc-card .rc-rating .rc-stars{color: #FBBF24; font-size: 0.7em;}
.rsg-page .rc-card.rc-yelp .rc-rating{background: linear-gradient(135deg, var(--green-700), var(--green-500)); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;}
.rsg-page .rc-card .rc-desc{font-size: 13px; line-height: 1.55; color: var(--ink-2); margin-top: 4px;}
.rsg-page .rc-card .rc-desc strong{color: var(--ink-900); font-weight: 700;}
.rsg-page .rc-vs{display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 6px;}
.rsg-page .rc-vs .rc-vs-circle{width: 48px; height: 48px; border-radius: 50%; background: var(--ink-900); color: #fff; display: flex; align-items: center; justify-content: center; font-family: var(--font-display); font-weight: 800; font-size: 13px; letter-spacing: 0.05em; box-shadow: 0 10px 24px rgba(0,0,0,0.20);}
.rsg-page .rc-vs .rc-vs-line{font-family: var(--font-mono); font-size: 9px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--ink-500); font-weight: 700; white-space: nowrap;}
.rsg-page .rc-card.rc-yelp{background: linear-gradient(135deg, #fff 60%, rgba(32,157,80,0.06)); border-color: rgba(32,157,80,0.20);}
.rsg-page .rc-card.rc-yelp::after{content: ''; position: absolute; top: -80px; right: -80px; width: 200px; height: 200px; border-radius: 50%; background: radial-gradient(circle, rgba(32,157,80,0.10), transparent 70%); pointer-events: none;}
.rsg-page .rc-card.rc-google::after{content: ''; position: absolute; top: -80px; right: -80px; width: 200px; height: 200px; border-radius: 50%; background: radial-gradient(circle, rgba(0,0,0,0.03), transparent 70%); pointer-events: none;}
.rsg-page .rc-card .rc-head{display: flex; align-items: center; justify-content: space-between; margin-bottom: 4px; position: relative; z-index: 1;}
.rsg-page .rc-card .rc-logo{width: 44px; height: 44px; border-radius: 12px; display: flex; align-items: center; justify-content: center; box-shadow: 0 8px 20px rgba(0,0,0,0.12); position: relative; flex-shrink: 0;}
.rsg-page .rc-card .rc-logo svg, .rsg-page .rc-card .rc-logo img{display: block; width: 100%; height: 100%; object-fit: contain;}
.rsg-page .rc-card.rc-google .rc-logo{background: #fff; border: 1px solid var(--line); padding: 7px; box-shadow: 0 8px 20px rgba(66,133,244,0.18);}
.rsg-page .rc-card.rc-yelp .rc-logo{background: #fff; border: 1px solid var(--line); padding: 7px; box-shadow: 0 8px 20px rgba(199,0,0,0.28);}
.rsg-page .rc-card .rc-stat{display: flex; align-items: baseline; gap: 18px; flex-wrap: wrap; position: relative; z-index: 1;}
.rsg-page .rc-card .rc-stars-bar{position: relative; font-size: 22px; line-height: 1; letter-spacing: 3px; flex-shrink: 0;}
.rsg-page .rc-card .rc-stars-bar .stars-bg{color: #E5E7EB;}
.rsg-page .rc-card .rc-stars-bar .stars-fg{position: absolute; top: 0; left: 0; overflow: hidden; color: #FBBF24; white-space: nowrap;}
/* Rating + Filter explainer block */
.rsg-page .reviews-grid-v2{display: grid; grid-template-columns: 1fr 1fr; gap: 28px; align-items: center; margin-bottom: 36px;}
.rsg-page .reviews-grid-v2 .rg-dist{background: #fff; border: 1px solid var(--line); border-radius: 16px; padding: 14px; box-shadow: 0 8px 24px rgba(0,0,0,0.04); position: relative; overflow: hidden;}
.rsg-page .reviews-grid-v2 .rg-dist img{display: block; width: 100%; height: auto; border-radius: 10px;}
.rsg-page .reviews-grid-v2 .rg-explain{padding-left: 8px;}
.rsg-page .reviews-grid-v2 .rg-explain .rg-tag{display: inline-flex; align-items: center; gap: 8px; background: rgba(32,157,80,0.10); color: var(--green-700); padding: 5px 12px; border-radius: 999px; font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 700; margin-bottom: 12px;}
.rsg-page .reviews-grid-v2 .rg-explain h3{font-family: var(--font-display); font-size: clamp(20px, 2vw, 24px); font-weight: 800; color: var(--ink-900); margin: 0 0 10px; line-height: 1.3; letter-spacing: -0.005em;}
.rsg-page .reviews-grid-v2 .rg-explain p{margin: 0; font-size: 14.5px; line-height: 1.65; color: var(--ink-2);}
/* Yelp filtering screenshot dashboard frame */
.rsg-page .yelp-filter-frame{position: relative; background: #fff; border-radius: 16px; overflow: hidden; box-shadow: 0 16px 40px rgba(0,0,0,0.08), 0 0 0 1px var(--line); margin: 0 0 32px;}
.rsg-page .yelp-filter-frame .yff-bar{display: flex; align-items: center; justify-content: space-between; padding: 12px 18px; background: #F8FAFC; border-bottom: 1px solid #E2E8F0;}
.rsg-page .yelp-filter-frame .yff-dots{display: flex; gap: 6px;}
.rsg-page .yelp-filter-frame .yff-dots span{width: 10px; height: 10px; border-radius: 50%;}
.rsg-page .yelp-filter-frame .yff-dots .d1{background: #FF5F56;}
.rsg-page .yelp-filter-frame .yff-dots .d2{background: #FFBD2E;}
.rsg-page .yelp-filter-frame .yff-dots .d3{background: #27C93F;}
.rsg-page .yelp-filter-frame .yff-label{font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.14em; text-transform: uppercase; color: #64748B; font-weight: 700;}
.rsg-page .yelp-filter-frame .yff-source{display: inline-flex; align-items: center; gap: 7px; font-family: var(--font-mono); font-size: 9px; letter-spacing: 0.14em; text-transform: uppercase; color: #DC2626; font-weight: 700;}
.rsg-page .yelp-filter-frame .yff-source::before{content: ''; width: 16px; height: 16px; border-radius: 4px; background: #DC2626; display: inline-flex; align-items: center; justify-content: center;}
.rsg-page .yelp-filter-frame img{display: block; width: 100%; height: auto;}
/* Reviews insight cards (replaces bulleted list) */
.rsg-page .reviews-insights{display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin: 0 0 32px;}
.rsg-page .ri-card{position: relative; background: #fff; border: 1px solid var(--line); border-radius: 18px; padding: 26px 26px 22px; overflow: hidden; transition: transform .25s, box-shadow .25s; display: flex; flex-direction: column; gap: 14px;}
.rsg-page .ri-card:hover{transform: translateY(-3px); box-shadow: 0 16px 36px rgba(0,0,0,0.07);}
.rsg-page .ri-card::before{content: ''; position: absolute; top: 0; left: 0; right: 0; height: 4px;}
.rsg-page .ri-card.ri-blue::before{background: linear-gradient(90deg, #3B82F6, #60A5FA);}
.rsg-page .ri-card.ri-amber::before{background: linear-gradient(90deg, #F59E0B, #FBBF24);}
.rsg-page .ri-card.ri-green::before{background: linear-gradient(90deg, var(--green-500), #6EE7B7);}
.rsg-page .ri-card .ri-icon{width: 48px; height: 48px; border-radius: 13px; color: #fff; display: flex; align-items: center; justify-content: center;}
.rsg-page .ri-card .ri-icon svg{width: 24px; height: 24px;}
.rsg-page .ri-card.ri-blue .ri-icon{background: linear-gradient(135deg, #3B82F6, #1D4ED8); box-shadow: 0 10px 24px rgba(59,130,246,0.28);}
.rsg-page .ri-card.ri-amber .ri-icon{background: linear-gradient(135deg, #F59E0B, #D97706); box-shadow: 0 10px 24px rgba(245,158,11,0.28);}
.rsg-page .ri-card.ri-green .ri-icon{background: linear-gradient(135deg, var(--green-500), var(--green-700)); box-shadow: 0 10px 24px rgba(32,157,80,0.28);}
.rsg-page .ri-card .ri-headline{font-family: var(--font-display); font-size: 16.5px; font-weight: 800; color: var(--ink-900); line-height: 1.35; margin: 0; letter-spacing: -0.005em;}
.rsg-page .ri-card p{margin: 0; font-size: 13.5px; line-height: 1.65; color: var(--ink-2);}
/* Why Choose Us section redesign */
.rsg-page .choose-stats-strip{display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin: 0 0 36px;}
.rsg-page .css-tile{position: relative; background: #fff; border: 1px solid var(--line); border-radius: 14px; padding: 18px 20px; overflow: hidden; transition: transform .25s, box-shadow .25s;}
.rsg-page .css-tile:hover{transform: translateY(-2px); box-shadow: 0 14px 32px rgba(0,0,0,0.05);}
.rsg-page .css-tile .css-icon{width: 32px; height: 32px; border-radius: 9px; background: var(--green-50); color: var(--green-700); display: flex; align-items: center; justify-content: center; margin-bottom: 10px;}
.rsg-page .css-tile .css-icon svg{width: 16px; height: 16px;}
.rsg-page .css-tile .css-num{font-family: var(--font-display); font-size: clamp(24px, 2.4vw, 30px); font-weight: 800; color: var(--ink-900); line-height: 1; letter-spacing: -0.02em;}
.rsg-page .css-tile .css-lbl{display: block; font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--ink-500); font-weight: 700; margin-top: 6px;}
/* Differentiator cards */
.rsg-page .diff-cards{display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin: 0 0 40px;}
.rsg-page .diff-card{position: relative; border-radius: 20px; padding: 30px 32px; overflow: hidden; transition: transform .25s, box-shadow .25s;}
.rsg-page .diff-card:hover{transform: translateY(-3px);}
.rsg-page .diff-card.dc-light{background: #fff; border: 1px solid var(--line); box-shadow: 0 8px 24px rgba(0,0,0,0.04);}
.rsg-page .diff-card.dc-dark{background: var(--dark-grad); color: #fff; border: 1px solid rgba(255,255,255,0.08); box-shadow: 0 16px 40px rgba(0,0,0,0.20);}
.rsg-page .diff-card.dc-dark::before{content: ''; position: absolute; top: -100px; right: -100px; width: 280px; height: 280px; border-radius: 50%; background: radial-gradient(circle, rgba(32,157,80,0.20), transparent 65%); pointer-events: none;}
.rsg-page .diff-card.dc-light::before{content: ''; position: absolute; top: -80px; right: -80px; width: 240px; height: 240px; border-radius: 50%; background: radial-gradient(circle, rgba(32,157,80,0.06), transparent 70%); pointer-events: none;}
.rsg-page .diff-card .dc-head{display: flex; align-items: center; gap: 14px; margin-bottom: 14px; position: relative; z-index: 1;}
.rsg-page .diff-card .dc-icon{width: 46px; height: 46px; border-radius: 13px; display: flex; align-items: center; justify-content: center; color: #fff; flex-shrink: 0;}
.rsg-page .diff-card .dc-icon svg{width: 22px; height: 22px;}
.rsg-page .diff-card.dc-light .dc-icon{background: linear-gradient(135deg, var(--green-500), var(--green-700)); box-shadow: 0 10px 24px rgba(32,157,80,0.28);}
.rsg-page .diff-card.dc-dark .dc-icon{background: linear-gradient(135deg, #FF1A1A, #C70000); box-shadow: 0 10px 24px rgba(199,0,0,0.30);}
.rsg-page .diff-card .dc-tag{display: inline-flex; align-items: center; gap: 8px; padding: 5px 12px; border-radius: 999px; font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 700;}
.rsg-page .diff-card.dc-light .dc-tag{background: var(--green-50); color: var(--green-700);}
.rsg-page .diff-card.dc-dark .dc-tag{background: rgba(32,157,80,0.20); color: var(--green-500); border: 1px solid rgba(32,157,80,0.30);}
.rsg-page .diff-card .dc-title{font-family: var(--font-display); font-size: clamp(20px, 2vw, 24px); font-weight: 800; line-height: 1.25; margin: 0 0 14px; letter-spacing: -0.01em; position: relative; z-index: 1;}
.rsg-page .diff-card.dc-light .dc-title{color: var(--ink-900);}
.rsg-page .diff-card.dc-dark .dc-title{color: #fff;}
.rsg-page .diff-card .dc-lead{font-size: 14px; line-height: 1.65; margin: 0 0 18px; position: relative; z-index: 1;}
.rsg-page .diff-card.dc-light .dc-lead{color: var(--ink-2);}
.rsg-page .diff-card.dc-dark .dc-lead{color: rgba(255,255,255,0.78);}
.rsg-page .diff-card .dc-checks{display: flex; flex-direction: column; gap: 12px; list-style: none; padding: 0; margin: 0; position: relative; z-index: 1;}
.rsg-page .diff-card .dc-checks li{display: grid; grid-template-columns: 26px 1fr; gap: 12px; align-items: flex-start; font-size: 13.5px; line-height: 1.55;}
.rsg-page .diff-card.dc-light .dc-checks li{color: var(--ink-2);}
.rsg-page .diff-card.dc-dark .dc-checks li{color: rgba(255,255,255,0.85);}
.rsg-page .diff-card .dc-checks .check{width: 22px; height: 22px; border-radius: 50%; display: flex; align-items: center; justify-content: center; flex-shrink: 0; margin-top: 1px;}
.rsg-page .diff-card.dc-light .dc-checks .check{background: var(--green-50); color: var(--green-700);}
.rsg-page .diff-card.dc-dark .dc-checks .check{background: rgba(32,157,80,0.20); color: var(--green-500);}
.rsg-page .diff-card .dc-checks .check svg{width: 12px; height: 12px; stroke-width: 3;}
.rsg-page .diff-card .dc-checks li strong{color: inherit; font-weight: 700;}
.rsg-page .diff-card.dc-light .dc-checks li strong{color: var(--ink-900);}
.rsg-page .diff-card.dc-dark .dc-checks li strong{color: #fff;}
/* Yelp-vs-Google scale comparison callout */
.rsg-page .scale-callout{position: relative; background: var(--dark-grad); color: #fff; border-radius: 22px; padding: 36px 40px; overflow: hidden; border: 1px solid rgba(255,255,255,0.08); box-shadow: 0 24px 60px rgba(0,0,0,0.30); margin: 0 0 32px;}
.rsg-page .scale-callout::before{content: ''; position: absolute; top: -120px; right: -120px; width: 360px; height: 360px; border-radius: 50%; background: radial-gradient(circle, rgba(32,157,80,0.18), transparent 65%); pointer-events: none;}
.rsg-page .scale-callout::after{content: ''; position: absolute; bottom: -100px; left: -100px; width: 260px; height: 260px; border-radius: 50%; background: radial-gradient(circle, rgba(32,157,80,0.08), transparent 65%); pointer-events: none;}
.rsg-page .scale-callout .sc-head{display: flex; align-items: center; gap: 14px; margin-bottom: 24px; position: relative; z-index: 1;}
.rsg-page .scale-callout .sc-tag{display: inline-flex; align-items: center; gap: 8px; background: rgba(32,157,80,0.18); color: var(--green-500); padding: 6px 14px; border-radius: 999px; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 700; border: 1px solid rgba(32,157,80,0.30);}
.rsg-page .scale-callout .sc-grid{display: grid; grid-template-columns: 1fr auto 1fr; gap: 24px; align-items: center; padding: 24px 28px; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.10); border-radius: 16px; margin-bottom: 22px; position: relative; z-index: 1;}
.rsg-page .scale-callout .sc-platform{display: flex; flex-direction: column; gap: 8px; align-items: flex-start;}
.rsg-page .scale-callout .sc-platform.right{align-items: flex-end;}
.rsg-page .scale-callout .sc-name{display: inline-flex; align-items: center; gap: 8px; padding: 5px 11px; background: rgba(255,255,255,0.08); border-radius: 999px; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; color: rgba(255,255,255,0.75); font-weight: 700;}
.rsg-page .scale-callout .sc-name .sc-dot{width: 8px; height: 8px; border-radius: 50%;}
.rsg-page .scale-callout .sc-name.yelp .sc-dot{background: #FF1A1A; box-shadow: 0 0 8px #FF1A1A;}
.rsg-page .scale-callout .sc-name.google .sc-dot{background: linear-gradient(135deg, #4285F4, #34A853);}
.rsg-page .scale-callout .sc-amount{font-family: var(--font-display); font-weight: 800; line-height: 1; letter-spacing: -0.03em;}
.rsg-page .scale-callout .sc-platform.yelp .sc-amount{font-size: clamp(32px, 3.4vw, 44px); color: #fff;}
.rsg-page .scale-callout .sc-platform.google .sc-amount{font-size: clamp(48px, 6vw, 72px); background: linear-gradient(135deg, #fff 30%, #9CA3AF); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;}
.rsg-page .scale-callout .sc-bar{display: block; height: 6px; border-radius: 999px;}
.rsg-page .scale-callout .sc-platform.yelp .sc-bar{background: linear-gradient(90deg, #FF1A1A, #C70000); width: 60px;}
.rsg-page .scale-callout .sc-platform.google .sc-bar{background: linear-gradient(90deg, #4285F4, #EA4335 30%, #FBBC04 60%, #34A853); width: 220px; max-width: 100%;}
.rsg-page .scale-callout .sc-multiplier{display: flex; flex-direction: column; align-items: center; gap: 8px;}
.rsg-page .scale-callout .sc-multiplier .sc-mult-num{font-family: var(--font-display); font-size: 38px; font-weight: 800; line-height: 1; letter-spacing: -0.02em; background: linear-gradient(135deg, var(--green-500), #6EE7B7); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;}
.rsg-page .scale-callout .sc-multiplier .sc-mult-lbl{font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.16em; text-transform: uppercase; color: rgba(255,255,255,0.55); font-weight: 700; text-align: center;}
.rsg-page .scale-callout .sc-body{font-size: 14.5px; line-height: 1.7; color: rgba(255,255,255,0.82); margin: 0 0 18px; position: relative; z-index: 1;}
.rsg-page .scale-callout .sc-body strong{color: #fff; font-weight: 700;}
.rsg-page .scale-callout .sc-glove{display: inline-flex; align-items: center; gap: 10px; padding: 10px 18px; background: rgba(32,157,80,0.18); border: 1px solid rgba(32,157,80,0.30); border-radius: 999px; color: var(--green-500); font-family: var(--font-display); font-size: 13px; font-weight: 700; position: relative; z-index: 1;}
.rsg-page .scale-callout .sc-glove svg{width: 14px; height: 14px;}
/* What Happens On Your Account section redesign */
.rsg-page .profile-setup-card{position: relative; background: #fff; border: 1px solid var(--line); border-radius: 22px; padding: 32px 36px; overflow: hidden; box-shadow: 0 8px 24px rgba(0,0,0,0.04); margin: 0 0 32px;}
.rsg-page .profile-setup-card::before{content: ''; position: absolute; top: -100px; right: -100px; width: 280px; height: 280px; border-radius: 50%; background: radial-gradient(circle, rgba(32,157,80,0.10), transparent 65%); pointer-events: none;}
.rsg-page .profile-setup-card .psc-head{display: flex; align-items: center; gap: 16px; margin-bottom: 16px; position: relative; z-index: 1;}
.rsg-page .profile-setup-card .psc-icon{width: 56px; height: 56px; border-radius: 16px; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: flex; align-items: center; justify-content: center; box-shadow: 0 12px 28px rgba(32,157,80,0.28); flex-shrink: 0;}
.rsg-page .profile-setup-card .psc-icon svg{width: 28px; height: 28px;}
.rsg-page .profile-setup-card .psc-tag{display: inline-flex; align-items: center; gap: 8px; background: var(--green-50); color: var(--green-700); padding: 6px 14px; border-radius: 999px; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 700;}
.rsg-page .profile-setup-card .psc-title{font-family: var(--font-display); font-size: clamp(20px, 2.2vw, 26px); font-weight: 800; color: var(--ink-900); margin: 0 0 10px; line-height: 1.3; letter-spacing: -0.01em; position: relative; z-index: 1;}
.rsg-page .profile-setup-card .psc-lead{font-size: 15px; line-height: 1.65; color: var(--ink-2); margin: 0 0 22px; position: relative; z-index: 1;}
.rsg-page .profile-setup-card .psc-checks{display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; position: relative; z-index: 1;}
.rsg-page .profile-setup-card .psc-check{background: var(--paper-soft); border: 1px solid var(--line-2); border-radius: 14px; padding: 16px 18px; transition: border-color .25s, background .25s;}
.rsg-page .profile-setup-card .psc-check:hover{border-color: rgba(32,157,80,0.25); background: #fff;}
.rsg-page .profile-setup-card .psc-check .check-badge{width: 30px; height: 30px; border-radius: 10px; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: flex; align-items: center; justify-content: center; margin-bottom: 10px; box-shadow: 0 6px 14px rgba(32,157,80,0.22);}
.rsg-page .profile-setup-card .psc-check .check-badge svg{width: 14px; height: 14px; stroke-width: 3;}
.rsg-page .profile-setup-card .psc-check strong{display: block; color: var(--ink-900); font-family: var(--font-display); font-size: 14.5px; font-weight: 800; margin-bottom: 6px; line-height: 1.3;}
.rsg-page .profile-setup-card .psc-check p{margin: 0; font-size: 13px; line-height: 1.55; color: var(--ink-2);}
.rsg-page .cadence-grid{display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin: 0 0 36px;}
.rsg-page .cadence-card{position: relative; background: #fff; border: 1px solid var(--line); border-radius: 20px; padding: 26px 28px 22px; overflow: hidden; transition: transform .25s, box-shadow .25s, border-color .25s;}
.rsg-page .cadence-card:hover{transform: translateY(-3px); box-shadow: 0 18px 40px rgba(0,0,0,0.08);}
.rsg-page .cadence-card::before{content: ''; position: absolute; top: 0; left: 0; right: 0; height: 4px;}
.rsg-page .cadence-card.cc-amber::before{background: linear-gradient(90deg, #F59E0B, #FBBF24);}
.rsg-page .cadence-card.cc-blue::before{background: linear-gradient(90deg, #3B82F6, #60A5FA);}
.rsg-page .cadence-card.cc-green::before{background: linear-gradient(90deg, var(--green-500), #6EE7B7);}
.rsg-page .cadence-card::after{content: ''; position: absolute; top: -60px; right: -60px; width: 180px; height: 180px; border-radius: 50%; pointer-events: none;}
.rsg-page .cadence-card.cc-amber::after{background: radial-gradient(circle, rgba(245,158,11,0.10), transparent 70%);}
.rsg-page .cadence-card.cc-blue::after{background: radial-gradient(circle, rgba(59,130,246,0.10), transparent 70%);}
.rsg-page .cadence-card.cc-green::after{background: radial-gradient(circle, rgba(32,157,80,0.10), transparent 70%);}
.rsg-page .cadence-card .cc-head{display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 14px; position: relative; z-index: 1;}
.rsg-page .cadence-card .cc-icon{width: 52px; height: 52px; border-radius: 15px; color: #fff; display: flex; align-items: center; justify-content: center; flex-shrink: 0;}
.rsg-page .cadence-card .cc-icon svg{width: 26px; height: 26px;}
.rsg-page .cadence-card.cc-amber .cc-icon{background: linear-gradient(135deg, #F59E0B, #D97706); box-shadow: 0 12px 28px rgba(245,158,11,0.28);}
.rsg-page .cadence-card.cc-blue .cc-icon{background: linear-gradient(135deg, #3B82F6, #1D4ED8); box-shadow: 0 12px 28px rgba(59,130,246,0.28);}
.rsg-page .cadence-card.cc-green .cc-icon{background: linear-gradient(135deg, var(--green-500), var(--green-700)); box-shadow: 0 12px 28px rgba(32,157,80,0.28);}
.rsg-page .cadence-card .cc-tag{display: inline-flex; align-items: center; gap: 6px; padding: 5px 12px; border-radius: 999px; font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 700; white-space: nowrap;}
.rsg-page .cadence-card.cc-amber .cc-tag{background: rgba(245,158,11,0.12); color: #B45309;}
.rsg-page .cadence-card.cc-blue .cc-tag{background: rgba(59,130,246,0.10); color: #1D4ED8;}
.rsg-page .cadence-card.cc-green .cc-tag{background: var(--green-50); color: var(--green-700);}
.rsg-page .cadence-card .cc-title{font-family: var(--font-display); font-size: 20px; font-weight: 800; color: var(--ink-900); margin: 0 0 16px; line-height: 1.3; letter-spacing: -0.005em; position: relative; z-index: 1;}
.rsg-page .cadence-card .cc-tasks{list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 12px; position: relative; z-index: 1;}
.rsg-page .cadence-card .cc-tasks li{display: grid; grid-template-columns: 24px 1fr; gap: 12px; align-items: flex-start; font-size: 13.5px; line-height: 1.55; color: var(--ink-2); padding-bottom: 12px; border-bottom: 1px solid var(--line-2);}
.rsg-page .cadence-card .cc-tasks li:last-child{border-bottom: 0; padding-bottom: 0;}
.rsg-page .cadence-card .cc-tasks li::before{content: ''; width: 8px; height: 8px; border-radius: 50%; margin-top: 7px;}
.rsg-page .cadence-card.cc-amber .cc-tasks li::before{background: #F59E0B; box-shadow: 0 0 0 3px rgba(245,158,11,0.18);}
.rsg-page .cadence-card.cc-blue .cc-tasks li::before{background: #3B82F6; box-shadow: 0 0 0 3px rgba(59,130,246,0.18);}
.rsg-page .cadence-card.cc-green .cc-tasks li::before{background: var(--green-500); box-shadow: 0 0 0 3px rgba(32,157,80,0.18);}
/* Partnership section redesign --- compact 2x2 commit cards */
.rsg-page .partnership-hero{position: relative; background: #fff; border-radius: 16px; overflow: hidden; box-shadow: 0 16px 40px rgba(0,0,0,0.06), 0 0 0 1px var(--line); margin: 0 0 28px;}
.rsg-page .partnership-hero .ph-bar{display: flex; align-items: center; justify-content: space-between; padding: 12px 18px; background: #F8FAFC; border-bottom: 1px solid #E2E8F0;}
.rsg-page .partnership-hero .ph-dots{display: flex; gap: 6px;}
.rsg-page .partnership-hero .ph-dots span{width: 10px; height: 10px; border-radius: 50%;}
.rsg-page .partnership-hero .ph-dots .d1{background: #FF5F56;}
.rsg-page .partnership-hero .ph-dots .d2{background: #FFBD2E;}
.rsg-page .partnership-hero .ph-dots .d3{background: #27C93F;}
.rsg-page .partnership-hero .ph-label{font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.14em; text-transform: uppercase; color: #64748B; font-weight: 700;}
.rsg-page .partnership-hero .ph-source{display: inline-flex; align-items: center; gap: 7px; font-family: var(--font-mono); font-size: 9px; letter-spacing: 0.14em; text-transform: uppercase; color: #DC2626; font-weight: 700;}
.rsg-page .partnership-hero img{display: block; width: 100%; height: auto;}
.rsg-page .partnership-intro{font-size: 16px; line-height: 1.65; color: var(--ink-2); margin: 0 0 32px; max-width: 980px; text-wrap: pretty;}
.rsg-page .commit-grid{display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; margin: 0 0 32px;}
.rsg-page .commit-card{position: relative; background: #fff; border: 1px solid var(--line); border-radius: 18px; overflow: hidden; transition: transform .25s, box-shadow .25s; display: flex; flex-direction: column;}
.rsg-page .commit-card:hover{transform: translateY(-3px); box-shadow: 0 18px 40px rgba(0,0,0,0.08);}
.rsg-page .commit-card .com-strip{height: 4px; width: 100%;}
.rsg-page .commit-card.com-amber .com-strip{background: linear-gradient(90deg, #F59E0B, #FBBF24);}
.rsg-page .commit-card.com-green .com-strip{background: linear-gradient(90deg, var(--green-500), #6EE7B7);}
.rsg-page .commit-card.com-blue .com-strip{background: linear-gradient(90deg, #3B82F6, #60A5FA);}
.rsg-page .commit-card.com-red .com-strip{background: linear-gradient(90deg, #F87171, #FCA5A5);}
.rsg-page .commit-card .com-shot{background: var(--paper-soft); aspect-ratio: 16/9; overflow: hidden; position: relative;}
.rsg-page .commit-card .com-shot img{display: block; width: 100%; height: 100%; object-fit: cover; object-position: top center;}
/* Weekly Review mockup graphic */
.rsg-page .wr-mock{width: 100%; height: 100%; background: linear-gradient(180deg, #F8FAFC 0%, #EEF4F1 100%); padding: 16px 18px; display: grid; grid-template-rows: auto auto auto auto; gap: 12px; font-family: var(--font-display);}
.rsg-page .wr-mock .wr-head{display: flex; justify-content: space-between; align-items: center; gap: 12px;}
.rsg-page .wr-mock .wr-head-left{display: flex; align-items: center; gap: 10px; min-width: 0;}
.rsg-page .wr-mock .wr-head-badge{width: 30px; height: 30px; border-radius: 50%; background: var(--green-500); color: #fff; display: flex; align-items: center; justify-content: center; flex-shrink: 0;}
.rsg-page .wr-mock .wr-head-badge svg{width: 16px; height: 16px;}
.rsg-page .wr-mock .wr-head-left strong{display: block; font-size: 13px; font-weight: 800; color: var(--ink-900); line-height: 1.2;}
.rsg-page .wr-mock .wr-head-left span{display: block; font-family: var(--font-mono); font-size: 9px; font-weight: 700; color: var(--ink-700); letter-spacing: 0.12em; text-transform: uppercase; margin-top: 2px;}
.rsg-page .wr-mock .wr-confirmed{display: inline-flex; align-items: center; gap: 6px; padding: 4px 12px; background: #fff; border: 1px solid var(--green-500); border-radius: 999px; font-family: var(--font-mono); font-size: 9px; font-weight: 700; color: var(--green-700); letter-spacing: 0.12em; text-transform: uppercase; flex-shrink: 0;}
.rsg-page .wr-mock .wr-confirmed-dot{width: 6px; height: 6px; border-radius: 50%; background: var(--green-500);}
.rsg-page .wr-mock .wr-days{display: grid; grid-template-columns: repeat(5, 1fr); gap: 6px;}
.rsg-page .wr-mock .wr-day{background: #fff; border: 1px solid var(--line); border-radius: 8px; padding: 8px 4px; text-align: center;}
.rsg-page .wr-mock .wr-day-lbl{display: block; font-family: var(--font-mono); font-size: 8px; font-weight: 700; color: var(--ink-700); letter-spacing: 0.12em; text-transform: uppercase; margin-bottom: 2px;}
.rsg-page .wr-mock .wr-day-num{display: block; font-family: var(--font-display); font-size: 18px; font-weight: 800; color: var(--ink-900); line-height: 1;}
.rsg-page .wr-mock .wr-day-active{background: linear-gradient(135deg, var(--green-500), var(--green-700)); border-color: var(--green-700); box-shadow: 0 4px 12px rgba(44,122,75,0.30);}
.rsg-page .wr-mock .wr-day-active .wr-day-lbl{color: rgba(255,255,255,0.75);}
.rsg-page .wr-mock .wr-day-active .wr-day-num{color: #fff;}
.rsg-page .wr-mock .wr-slot{display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 14px; background: #fff; border: 1.5px solid var(--green-500); border-radius: 10px; padding: 10px 14px; position: relative; overflow: hidden;}
.rsg-page .wr-mock .wr-slot::before{content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 4px; background: var(--green-500);}
.rsg-page .wr-mock .wr-slot-time strong{display: block; font-family: var(--font-display); font-size: 18px; font-weight: 800; color: var(--ink-900); line-height: 1;}
.rsg-page .wr-mock .wr-slot-time span{display: block; font-size: 10px; font-weight: 600; color: var(--ink-2); margin-top: 3px;}
.rsg-page .wr-mock .wr-slot-info{border-left: 1px solid var(--line); padding-left: 14px; min-width: 0;}
.rsg-page .wr-mock .wr-slot-info strong{display: block; font-family: var(--font-display); font-size: 12.5px; font-weight: 700; color: var(--ink-900); line-height: 1.2;}
.rsg-page .wr-mock .wr-slot-info span{display: block; font-family: var(--font-body); font-size: 10.5px; color: var(--ink-2); margin-top: 3px; line-height: 1.35;}
.rsg-page .wr-mock .wr-slot-cta{padding: 6px 14px; background: var(--green-500); color: #fff; border-radius: 999px; font-family: var(--font-display); font-size: 10px; font-weight: 700; letter-spacing: 0.04em; flex-shrink: 0; text-transform: uppercase;}
.rsg-page .wr-mock .wr-stats{display: grid; grid-template-columns: 1fr 1fr 1.2fr; gap: 12px;}
.rsg-page .wr-mock .wr-stat{background: #fff; border: 1px solid var(--line); border-radius: 8px; padding: 8px 10px;}
.rsg-page .wr-mock .wr-stat-lbl{display: block; font-family: var(--font-mono); font-size: 8px; font-weight: 700; color: var(--ink-700); letter-spacing: 0.12em; text-transform: uppercase; margin-bottom: 6px;}
.rsg-page .wr-mock .wr-bars{display: flex; gap: 4px; align-items: flex-end; height: 26px;}
.rsg-page .wr-mock .wr-bars span{flex: 1; background: linear-gradient(180deg, var(--green-500), var(--green-700)); border-radius: 2px; min-height: 30%;}
.rsg-page .wr-mock .wr-att{display: flex; align-items: baseline; gap: 6px;}
.rsg-page .wr-mock .wr-att strong{font-family: var(--font-display); font-size: 18px; font-weight: 800; color: var(--ink-900); line-height: 1;}
.rsg-page .wr-mock .wr-att em{font-family: var(--font-body); font-size: 10px; font-weight: 600; font-style: normal; color: var(--green-600);}
.rsg-page .wr-mock .wr-next strong{display: block; font-family: var(--font-display); font-size: 11.5px; font-weight: 700; color: var(--ink-900); line-height: 1.2;}
.rsg-page .wr-mock .wr-next span{display: block; font-family: var(--font-body); font-size: 9.5px; color: var(--ink-2); margin-top: 2px;}
.rsg-page .commit-card .com-body{padding: 22px 24px 24px; display: flex; flex-direction: column; gap: 10px; flex: 1;}
.rsg-page .commit-card .com-head{display: flex; align-items: center; gap: 10px; margin-bottom: 4px;}
.rsg-page .commit-card .com-num{width: 32px; height: 32px; border-radius: 9px; color: #fff; display: inline-flex; align-items: center; justify-content: center; font-family: var(--font-display); font-weight: 800; font-size: 12px; flex-shrink: 0;}
.rsg-page .commit-card.com-amber .com-num{background: linear-gradient(135deg, #F59E0B, #D97706); box-shadow: 0 6px 16px rgba(245,158,11,0.28);}
.rsg-page .commit-card.com-green .com-num{background: linear-gradient(135deg, var(--green-500), var(--green-700)); box-shadow: 0 6px 16px rgba(32,157,80,0.28);}
.rsg-page .commit-card.com-blue .com-num{background: linear-gradient(135deg, #3B82F6, #1D4ED8); box-shadow: 0 6px 16px rgba(59,130,246,0.28);}
.rsg-page .commit-card.com-red .com-num{background: linear-gradient(135deg, #F87171, #EF4444); box-shadow: 0 6px 16px rgba(239,68,68,0.28);}
.rsg-page .commit-card .com-tag{font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 700; padding: 3px 9px; border-radius: 999px;}
.rsg-page .commit-card.com-amber .com-tag{background: rgba(245,158,11,0.12); color: #B45309;}
.rsg-page .commit-card.com-green .com-tag{background: var(--green-50); color: var(--green-700);}
.rsg-page .commit-card.com-blue .com-tag{background: rgba(59,130,246,0.10); color: #1D4ED8;}
.rsg-page .commit-card.com-red .com-tag{background: rgba(239,68,68,0.10); color: #B91C1C;}
.rsg-page .commit-card .com-title{font-family: var(--font-display); font-size: 18px; font-weight: 800; color: var(--ink-900); margin: 0; line-height: 1.3; letter-spacing: -0.005em;}
.rsg-page .commit-card p{margin: 0; font-size: 13.5px; line-height: 1.6; color: var(--ink-2);}
/* Right Partner section redesign --- fit-col-v2 (fixes badge overlap glitch) */
.rsg-page .fit-grid-v2{display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin: 0 0 32px;}
.rsg-page .fcv-card{position: relative; border-radius: 20px; padding: 26px 28px 24px; overflow: hidden; display: flex; flex-direction: column; gap: 16px; transition: transform .25s, box-shadow .25s, border-color .25s;}
.rsg-page .fcv-card:hover{transform: translateY(-3px); box-shadow: 0 18px 40px rgba(0,0,0,0.08);}
.rsg-page .fcv-card.fcv-notfit{background: #fff; border: 1px solid var(--line);}
.rsg-page .fcv-card.fcv-builtfor{background: #fff; border: 1px solid var(--line);}
.rsg-page .fcv-card.fcv-pact{background: var(--dark-grad); color: #fff; border: 1px solid rgba(255,255,255,0.08); box-shadow: 0 16px 40px rgba(0,0,0,0.20);}
.rsg-page .fcv-card.fcv-pact::before{content: ''; position: absolute; top: -80px; right: -80px; width: 200px; height: 200px; border-radius: 50%; background: radial-gradient(circle, rgba(245,184,77,0.18), transparent 70%); pointer-events: none;}
.rsg-page .fcv-card.fcv-notfit::before{content: ''; position: absolute; top: -60px; right: -60px; width: 180px; height: 180px; border-radius: 50%; background: radial-gradient(circle, rgba(239,68,68,0.08), transparent 70%); pointer-events: none;}
.rsg-page .fcv-card.fcv-builtfor::before{content: ''; position: absolute; top: -60px; right: -60px; width: 180px; height: 180px; border-radius: 50%; background: radial-gradient(circle, rgba(32,157,80,0.08), transparent 70%); pointer-events: none;}
.rsg-page .fcv-head{display: flex; align-items: center; justify-content: space-between; gap: 12px; position: relative; z-index: 1;}
.rsg-page .fcv-icon{width: 48px; height: 48px; border-radius: 13px; display: flex; align-items: center; justify-content: center; color: #fff; flex-shrink: 0;}
.rsg-page .fcv-icon svg{width: 24px; height: 24px; stroke-width: 2.5;}
.rsg-page .fcv-card.fcv-notfit .fcv-icon{background: linear-gradient(135deg, #F87171, #EF4444); box-shadow: 0 10px 24px rgba(239,68,68,0.28);}
.rsg-page .fcv-card.fcv-builtfor .fcv-icon{background: linear-gradient(135deg, var(--green-500), var(--green-700)); box-shadow: 0 10px 24px rgba(32,157,80,0.28);}
.rsg-page .fcv-card.fcv-pact .fcv-icon{background: linear-gradient(135deg, #F5B84D, #DC9632); box-shadow: 0 10px 24px rgba(245,184,77,0.32);}
.rsg-page .fcv-tag{display: inline-flex; align-items: center; gap: 6px; padding: 5px 12px; border-radius: 999px; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 700; white-space: nowrap;}
.rsg-page .fcv-card.fcv-notfit .fcv-tag{background: rgba(239,68,68,0.10); color: #B91C1C;}
.rsg-page .fcv-card.fcv-builtfor .fcv-tag{background: var(--green-50); color: var(--green-700);}
.rsg-page .fcv-card.fcv-pact .fcv-tag{background: rgba(245,184,77,0.18); color: #F5B84D; border: 1px solid rgba(245,184,77,0.32);}
.rsg-page .fcv-title{font-family: var(--font-display); font-size: 18px; font-weight: 800; line-height: 1.3; margin: 0; letter-spacing: -0.005em; position: relative; z-index: 1; padding-bottom: 14px; border-bottom: 1px solid var(--line-2);}
.rsg-page .fcv-card.fcv-notfit .fcv-title, .rsg-page .fcv-card.fcv-builtfor .fcv-title{color: var(--ink-900);}
.rsg-page .fcv-card.fcv-pact .fcv-title{color: #fff; border-bottom-color: rgba(255,255,255,0.12);}
.rsg-page .fcv-list{list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 12px; position: relative; z-index: 1;}
.rsg-page .fcv-list li{display: grid; grid-template-columns: 16px 1fr; gap: 12px; align-items: flex-start; font-size: 13.5px; line-height: 1.55;}
.rsg-page .fcv-card.fcv-notfit .fcv-list li, .rsg-page .fcv-card.fcv-builtfor .fcv-list li{color: var(--ink-2);}
.rsg-page .fcv-card.fcv-pact .fcv-list li{color: rgba(255,255,255,0.82);}
.rsg-page .fcv-list li::before{content: ''; width: 7px; height: 7px; border-radius: 50%; margin-top: 7px;}
.rsg-page .fcv-card.fcv-notfit .fcv-list li::before{background: #EF4444; box-shadow: 0 0 0 3px rgba(239,68,68,0.18);}
.rsg-page .fcv-card.fcv-builtfor .fcv-list li::before{background: var(--green-500); box-shadow: 0 0 0 3px rgba(32,157,80,0.18);}
.rsg-page .fcv-card.fcv-pact .fcv-list li::before{background: #F5B84D; box-shadow: 0 0 0 3px rgba(245,184,77,0.24);}
@media (max-width: 880px){.rsg-page .fit-grid-v2{grid-template-columns: 1fr;}}
@media (max-width: 880px){.rsg-page .commit-grid{grid-template-columns: 1fr;}}
@media (max-width: 880px){.rsg-page .profile-setup-card{padding: 26px;}}
@media (max-width: 880px){.rsg-page .profile-setup-card .psc-checks{grid-template-columns: 1fr;}}
@media (max-width: 880px){.rsg-page .cadence-grid{grid-template-columns: 1fr;}}
@media (max-width: 880px){.rsg-page .choose-stats-strip{grid-template-columns: repeat(2, 1fr);}}
@media (max-width: 880px){.rsg-page .diff-cards{grid-template-columns: 1fr;}}
@media (max-width: 880px){.rsg-page .scale-callout{padding: 28px 24px;}}
@media (max-width: 880px){.rsg-page .scale-callout .sc-grid{grid-template-columns: 1fr; gap: 18px; padding: 20px;}}
@media (max-width: 880px){.rsg-page .scale-callout .sc-platform.right{align-items: flex-start;}}
@media (max-width: 880px){.rsg-page .rating-compare{grid-template-columns: 1fr; gap: 12px;}}
@media (max-width: 880px){.rsg-page .rating-compare .rc-vs{flex-direction: row; gap: 12px; margin: 0; padding: 4px 0;}}
@media (max-width: 880px){.rsg-page .reviews-grid-v2{grid-template-columns: 1fr; gap: 24px;}}
@media (max-width: 880px){.rsg-page .reviews-insights{grid-template-columns: 1fr;}}
@media (max-width: 880px){.rsg-page .ai-insights{grid-template-columns: 1fr;}}
@media (max-width: 880px){.rsg-page .ai-tools-strip{gap: 8px; padding: 14px 16px;}}
/* Scenario persona cards */
.rsg-page .scenarios-section{margin-top: 56px;}
.rsg-page .scenarios-head{margin-bottom: 24px; max-width: 880px;}
.rsg-page .scenarios-head .sh-tag{display: inline-flex; align-items: center; gap: 8px; background: rgba(32,157,80,0.10); color: var(--green-700); padding: 5px 12px; border-radius: 999px; font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 700; margin-bottom: 14px;}
.rsg-page .scenarios-head h3{font-family: var(--font-display); font-size: clamp(22px, 2.4vw, 28px); font-weight: 800; color: var(--ink-900); margin: 0; letter-spacing: -0.01em; line-height: 1.25;}
.rsg-page .scenarios-grid{display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px;}
.rsg-page .scenario-card{background: #fff; border: 1px solid var(--line); border-radius: 16px; padding: 24px 24px 22px; transition: transform .25s, border-color .25s, box-shadow .25s; position: relative; overflow: hidden;}
.rsg-page .scenario-card:hover{transform: translateY(-2px); border-color: rgba(32,157,80,0.25); box-shadow: 0 12px 32px rgba(0,0,0,0.06);}
.rsg-page .scenario-card .sc-step{font-family: var(--font-display); font-size: 32px; font-weight: 800; color: var(--ink-900); opacity: 0.08; position: absolute; top: 14px; right: 18px; letter-spacing: -0.02em; line-height: 1;}
.rsg-page .scenario-card .sc-icon{width: 48px; height: 48px; border-radius: 12px; display: flex; align-items: center; justify-content: center; margin-bottom: 14px; color: #fff; box-shadow: 0 8px 20px rgba(0,0,0,0.10);}
.rsg-page .scenario-card .sc-icon svg{width: 24px; height: 24px;}
.rsg-page .scenario-card.s-amber .sc-icon{background: linear-gradient(135deg, #F59E0B, #D97706); box-shadow: 0 8px 20px rgba(245,158,11,0.25);}
.rsg-page .scenario-card.s-blue .sc-icon{background: linear-gradient(135deg, #3B82F6, #1D4ED8); box-shadow: 0 8px 20px rgba(59,130,246,0.25);}
.rsg-page .scenario-card.s-green .sc-icon{background: linear-gradient(135deg, var(--green-500), var(--green-700)); box-shadow: 0 8px 20px rgba(32,157,80,0.25);}
.rsg-page .scenario-card p{margin: 0; font-size: 14px; line-height: 1.6; color: var(--ink-2);}
/* 90-day onboarding callout */
.rsg-page .onboarding-callout{position: relative; margin-top: 56px; padding: 36px 40px; background: linear-gradient(135deg, #F4F9F5 0%, #E9F1EB 100%); color: var(--ink-900); border-radius: 22px; overflow: hidden; border: 1px solid rgba(44,122,75,0.18); box-shadow: 0 18px 44px rgba(20,62,37,0.08);}
.rsg-page .onboarding-callout::before{content: ''; position: absolute; top: -120px; right: -120px; width: 360px; height: 360px; border-radius: 50%; background: radial-gradient(circle, rgba(44,122,75,0.16), transparent 65%); pointer-events: none;}
.rsg-page .onboarding-callout::after{content: ''; position: absolute; bottom: -100px; left: -100px; width: 280px; height: 280px; border-radius: 50%; background: radial-gradient(circle, rgba(44,122,75,0.08), transparent 65%); pointer-events: none;}
.rsg-page .onboarding-callout .ob-grid{display: grid; grid-template-columns: 1.1fr 1fr; gap: 36px; align-items: center; position: relative; z-index: 1;}
.rsg-page .onboarding-callout .ob-tag{display: inline-flex; align-items: center; gap: 8px; background: #fff; color: var(--green-700); padding: 6px 14px; border-radius: 999px; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 700; border: 1px solid rgba(44,122,75,0.25); margin-bottom: 16px; box-shadow: 0 2px 6px rgba(20,62,37,0.05);}
.rsg-page .onboarding-callout .ob-body{color: var(--ink-2); font-size: 15px; line-height: 1.7; margin: 0 0 20px;}
.rsg-page .onboarding-callout .ob-body strong{color: var(--ink-900); font-weight: 700;}
.rsg-page .onboarding-callout .ob-cta{display: inline-flex; align-items: center; gap: 10px; background: var(--green-500); color: #fff; padding: 13px 26px; border-radius: 999px; font-family: var(--font-display); font-weight: 700; font-size: 14px; text-decoration: none; box-shadow: 0 10px 24px rgba(44,122,75,0.30); transition: transform .25s, box-shadow .25s;}
.rsg-page .onboarding-callout .ob-cta:hover{transform: translateY(-2px); box-shadow: 0 14px 32px rgba(44,122,75,0.40);}
.rsg-page .onboarding-callout .ob-cta svg{width: 16px; height: 16px;}
.rsg-page .onboarding-callout .ob-timeline{display: flex; flex-direction: column; gap: 16px;}
.rsg-page .onboarding-callout .ob-phase{display: grid; grid-template-columns: 56px 1fr; gap: 16px; align-items: center; padding: 16px 18px; background: #fff; border: 1px solid rgba(44,122,75,0.15); border-radius: 14px; position: relative; box-shadow: 0 4px 12px rgba(20,62,37,0.04);}
.rsg-page .onboarding-callout .ob-phase::before{content: ''; position: absolute; left: 39px; top: -16px; height: 16px; width: 2px; background: linear-gradient(180deg, transparent, rgba(44,122,75,0.40));}
.rsg-page .onboarding-callout .ob-phase:first-child::before{display: none;}
.rsg-page .onboarding-callout .ob-phase .ob-num{width: 44px; height: 44px; border-radius: 50%; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: flex; flex-direction: column; align-items: center; justify-content: center; font-family: var(--font-display); font-weight: 800; line-height: 1; box-shadow: 0 6px 14px rgba(44,122,75,0.28);}
.rsg-page .onboarding-callout .ob-phase .ob-num strong{font-size: 16px;}
.rsg-page .onboarding-callout .ob-phase .ob-num span{font-family: var(--font-mono); font-size: 8px; letter-spacing: 0.10em; text-transform: uppercase; margin-top: 1px; opacity: 0.85;}
.rsg-page .onboarding-callout .ob-phase .ob-info strong{display: block; color: var(--ink-900); font-family: var(--font-display); font-size: 15px; font-weight: 700; margin-bottom: 2px;}
.rsg-page .onboarding-callout .ob-phase .ob-info span{font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--ink-2); font-weight: 700;}
@media (max-width: 880px){.rsg-page .speed-hero{grid-template-columns: 1fr; padding: 24px; gap: 20px;}}
@media (max-width: 880px){.rsg-page .speed-hero .sh-bar{grid-template-columns: 88px 1fr 80px;}}
@media (max-width: 880px){.rsg-page .friction-grid{grid-template-columns: 1fr;}}
@media (max-width: 880px){.rsg-page .scenarios-grid{grid-template-columns: 1fr;}}
@media (max-width: 880px){.rsg-page .onboarding-callout{padding: 28px 24px;}}
@media (max-width: 880px){.rsg-page .onboarding-callout .ob-grid{grid-template-columns: 1fr; gap: 28px;}}
.rsg-page .reason-stat{margin-top: 16px; padding: 14px 16px; background: var(--paper-soft); border-radius: 10px; display: flex; justify-content: space-between; align-items: center;}
.rsg-page .reason-stat strong{font-family: var(--font-display); font-size: 22px; font-weight: 800; color: var(--green-600);}
.rsg-page .reason-stat span{font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--ink-500); font-weight: 600; max-width: 60%; text-align: right;}
/* ============================================================
   FOUNDER PROMISE (dark gradient section)
   ============================================================ */
.rsg-page .founder-grid{display: grid; grid-template-columns: 1.1fr 1fr; gap: 56px; align-items: center;}
.rsg-page .founder-checks{list-style: none; padding: 0; margin: 28px 0 28px; display: grid; gap: 22px;}
.rsg-page .founder-checks li{display: flex; gap: 16px; font-size: 14.5px; color: rgba(255,255,255,0.72); line-height: 1.6; align-items: flex-start;}
.rsg-page .founder-checks svg{width: 22px; height: 22px; color: var(--green-500); flex-shrink: 0; margin-top: 2px;}
.rsg-page .founder-checks li strong{color: #fff; display: inline; font-family: var(--font-display); font-size: inherit; font-weight: 700;}
/* Green callout box (inspiration style) */
.rsg-page .founder-callout{background: rgba(32,157,80,0.12); border: 1px solid rgba(32,157,80,0.35); border-radius: 12px; padding: 18px 22px; margin: 8px 0 28px;}
.rsg-page .founder-callout strong{display: block; color: #fff; font-family: var(--font-display); font-size: 16px; font-weight: 700; margin-bottom: 4px;}
.rsg-page .founder-callout span{display: block; color: var(--green-500); font-size: 14.5px; line-height: 1.55;}
/* "A NOTE FROM THE FOUNDER" green pill badge above video frame */
.rsg-page .video-frame-wrap{position: relative; max-width: 440px; margin: 0 auto; padding-top: 14px;}
.rsg-page .founder-note-badge{position: absolute; top: 0; left: 50%; transform: translateX(-50%); background: var(--green-500); color: #fff; padding: 7px 16px; border-radius: 999px; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.14em; text-transform: uppercase; font-weight: 700; z-index: 4; white-space: nowrap; box-shadow: 0 6px 16px rgba(32,157,80,0.32);}
.rsg-page .video-caption{text-align: center; margin-top: 16px; font-size: 13px; color: rgba(255,255,255,0.7);}
.rsg-page .video-caption strong{display: block; color: #fff; font-family: var(--font-display); font-size: 14px; font-weight: 700; margin-bottom: 3px;}
.rsg-page .founder-quote{background: rgba(255,255,255,0.06); border-left: 3px solid var(--green-500); padding: 18px 22px; border-radius: 0 12px 12px 0; font-size: 14px; line-height: 1.7; color: rgba(255,255,255,0.86); margin-bottom: 24px;}
.rsg-page .founder-quote span{display: block; margin-top: 8px; font-family: var(--font-mono); font-size: 11px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--green-500); font-weight: 700;}
.rsg-page .video-frame{position: relative; aspect-ratio: 9/16; width: 100%; max-width: 440px; margin: 0 auto; border-radius: 22px; overflow: hidden; background: linear-gradient(135deg, #2A2A2A, #1A1A1A); border: 1px solid rgba(255,255,255,0.1); box-shadow: var(--shadow-lg);}
.rsg-page .video-frame video, .rsg-page .video-frame img{position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; background: #000;}
.rsg-page .video-frame .vf-play{position: absolute; bottom: 18px; left: 18px; width: 56px; height: 56px; border-radius: 50%; background: rgba(255,255,255,0.95); border: 0; padding: 0; display: flex; align-items: center; justify-content: center; cursor: pointer; z-index: 3; box-shadow: 0 8px 22px rgba(0,0,0,0.30); transition: transform .2s, background .2s, opacity .2s;}
.rsg-page .video-frame .vf-play:hover{transform: scale(1.08); background: #fff;}
.rsg-page .video-frame .vf-play .vf-play-icon{display: block; width: 0; height: 0; border-left: 18px solid var(--green-600); border-top: 11px solid transparent; border-bottom: 11px solid transparent; margin-left: 4px;}
.rsg-page .video-frame.playing .vf-play{opacity: 0; pointer-events: none;}
.rsg-page .video-frame .vf-embed{position: absolute; inset: 0; width: 100%; height: 100%; border: 0; z-index: 4; display: block;}
.rsg-page .video-frame .vf-label{position: absolute; bottom: 18px; left: 18px; right: 18px; color: #fff; font-family: var(--font-display); font-size: 13px; font-weight: 600; opacity: 0.9;}
.rsg-page .video-frame .vf-time{position: absolute; top: 14px; right: 14px; padding: 4px 10px; background: rgba(0,0,0,0.7); color: #fff; border-radius: 999px; font-family: var(--font-mono); font-size: 11px; font-weight: 700; z-index: 3; pointer-events: none;}
/* ============================================================
   HOW YELP WORKS &mdash; screenshot + comparison
   ============================================================ */
.rsg-page .how-grid{display: grid; grid-template-columns: 1fr 1fr; gap: 32px; align-items: start;}
.rsg-page .how-card{background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 24px;}
.rsg-page .how-card h3{font-size: 16px; margin-bottom: 14px; display: flex; align-items: center; gap: 10px;}
.rsg-page .how-card h3 .badge-sponsored{padding: 4px 10px; background: var(--orange-500); color: #fff; border-radius: 6px; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.08em; font-weight: 700; text-transform: uppercase;}
.rsg-page .how-card h3 .badge-form{padding: 4px 10px; background: var(--green-500); color: #fff; border-radius: 6px; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.08em; font-weight: 700; text-transform: uppercase;}
.rsg-page .how-shot{aspect-ratio: 16/9; border-radius: var(--radius-md); overflow: hidden; background: var(--paper-soft); border: 1px solid var(--line); margin-bottom: 0;}
.rsg-page .how-shot img{width: 100%; height: 100%; object-fit: cover;}
.rsg-page .how-card p{font-size: 13px; margin: 0;}
/* Ã‚Â§4 section vertical compaction */
.rsg-page #how-lsa-vs-channels{padding: 64px 0;}
.rsg-page #how-lsa-vs-channels .section-header{margin-bottom: 32px;}
.rsg-page #how-lsa-vs-channels .lede{max-width: 760px; margin-top: 10px;}
.rsg-page #how-lsa-vs-channels .yelp-workflow-grid{margin-bottom: 20px;}
.rsg-page #how-lsa-vs-channels .how-card{padding: 22px 22px 18px; padding-top: 26px;}
.rsg-page #how-lsa-vs-channels .how-card h3{font-size: 14px; margin-bottom: 10px;}
.rsg-page #how-lsa-vs-channels .info-cards-grid{margin: 0 auto 20px;}
.rsg-page #how-lsa-vs-channels .info-stat-card{padding: 24px 26px 22px; gap: 14px;}
.rsg-page #how-lsa-vs-channels .info-stat-card .isc-icon{width: 50px; height: 50px; border-radius: 14px;}
.rsg-page #how-lsa-vs-channels .info-stat-card .isc-icon svg{width: 23px; height: 23px;}
.rsg-page #how-lsa-vs-channels .info-stat-card .isc-title{font-size: 18px;}
.rsg-page #how-lsa-vs-channels .section-header .lede{max-width: 1100px;}
.rsg-page #how-lsa-vs-channels .info-stat-card p{font-size: 13.5px; line-height: 1.6;}
.rsg-page #how-lsa-vs-channels .info-stat-card .isc-stat{padding: 12px 18px;}
.rsg-page #how-lsa-vs-channels .info-stat-card .isc-stat strong{font-size: 26px;}
.rsg-page #how-lsa-vs-channels .channel-cmp{padding: 20px 24px; margin: 0 auto 20px;}
.rsg-page #how-lsa-vs-channels .channel-cmp h4{font-size: 16px; margin-bottom: 14px; padding-bottom: 10px;}
.rsg-page #how-lsa-vs-channels .ch-header{padding: 0 12px 8px; margin-bottom: 4px;}
.rsg-page #how-lsa-vs-channels .channel-row{padding: 11px 12px;}
.rsg-page #how-lsa-vs-channels .channel-row.featured{padding-left: 22px; padding-right: 22px; padding-top: 12px; padding-bottom: 12px; margin: 4px -12px;}
.rsg-page #how-lsa-vs-channels .channel-row .ch-icon{width: 32px; height: 32px; font-size: 12px;}
.rsg-page #how-lsa-vs-channels .channel-row .ch-name{font-size: 14px;}
.rsg-page #how-lsa-vs-channels .channel-row .ch-pricing{font-size: 11.5px;}
.rsg-page #how-lsa-vs-channels .channel-row .ch-cpl{font-size: 14px;}
.rsg-page #how-lsa-vs-channels .math-grid{margin: 0 auto 10px;}
.rsg-page #how-lsa-vs-channels .math-card{padding: 16px 18px; gap: 8px;}
.rsg-page #how-lsa-vs-channels .math-card .mc-head{padding-bottom: 6px; margin-bottom: 2px;}
.rsg-page #how-lsa-vs-channels .math-card .mc-head strong{font-size: 14px;}
.rsg-page #how-lsa-vs-channels .math-card .mc-eq{padding: 7px 12px;}
.rsg-page #how-lsa-vs-channels .math-card .mc-eq span{font-size: 11px;}
.rsg-page #how-lsa-vs-channels .math-card .mc-result{padding: 12px 14px;}
.rsg-page #how-lsa-vs-channels .math-card .mc-result strong{font-size: 26px;}
.rsg-page #how-lsa-vs-channels .math-conclusion{padding: 14px 22px; gap: 14px;}
.rsg-page #how-lsa-vs-channels .math-conclusion p{font-size: 13px;}
/* ============================================================
   Ã‚Â§4 ENHANCEMENTS &mdash; workflow steps, stat cards, channel cmp, math
   ============================================================ */
.rsg-page .yelp-workflow-grid{display: grid; grid-template-columns: 1fr 72px 1fr; gap: 14px; align-items: stretch; margin: 0 auto 28px; width: 100%;}
.rsg-page .yelp-workflow-grid .how-card{position: relative; padding-top: 28px;}
.rsg-page .how-card .step-badge{position: absolute; top: -14px; left: 22px; background: var(--ink-900); color: #fff; padding: 7px 16px; border-radius: 999px; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.14em; text-transform: uppercase; font-weight: 700; z-index: 2; box-shadow: 0 6px 16px rgba(0,0,0,0.18);}
/* WORKFLOW CARD REDESIGN &mdash; bigger step number header strip */
.rsg-page .yelp-workflow-grid .how-card{background: linear-gradient(180deg, #fff 0%, var(--paper-soft) 100%); border: 1px solid var(--line); border-radius: 18px; padding: 0; overflow: hidden; box-shadow: 0 10px 28px rgba(0,0,0,0.08), 0 2px 6px rgba(0,0,0,0.04); transition: transform .25s ease, box-shadow .25s ease; position: relative; padding-top: 0 !important;}
.rsg-page .yelp-workflow-grid .how-card:hover{transform: translateY(-4px); box-shadow: 0 20px 44px rgba(32,157,80,0.12), 0 4px 12px rgba(0,0,0,0.06);}
.rsg-page .yelp-workflow-grid .how-card .step-badge{position: static; display: none;}
.rsg-page .yelp-workflow-grid .how-card .ws-head{display: grid; grid-template-columns: 72px 1fr; gap: 16px; padding: 18px 22px 16px; border-bottom: 1px solid var(--line-2); background: linear-gradient(135deg, rgba(32,157,80,0.06), transparent 60%); align-items: center;}
.rsg-page .yelp-workflow-grid .how-card .ws-num{display: flex; flex-direction: column; align-items: flex-start; line-height: 1; border-right: 1px solid var(--line-2); padding-right: 16px;}
.rsg-page .yelp-workflow-grid .how-card .ws-num small{font-family: var(--font-mono); font-size: 9px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--green-700); font-weight: 700; margin-bottom: 4px;}
.rsg-page .yelp-workflow-grid .how-card .ws-num strong{font-family: var(--font-display); font-size: 36px; font-weight: 800; color: var(--ink-900); letter-spacing: -0.03em; line-height: 1;}
.rsg-page .yelp-workflow-grid .how-card .ws-meta{display: flex; flex-direction: column; gap: 6px;}
.rsg-page .yelp-workflow-grid .how-card .ws-meta h4{margin: 0; font-size: 16px; font-weight: 800; color: var(--ink-900); line-height: 1.25; display: flex; align-items: center; gap: 8px; flex-wrap: wrap;}
.rsg-page .yelp-workflow-grid .how-card .ws-meta h4 .badge-sponsored,
.rsg-page .yelp-workflow-grid .how-card .ws-meta h4 .badge-form{padding: 3px 8px; font-size: 9px;}
.rsg-page .yelp-workflow-grid .how-card .ws-meta span.ws-sub{font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.08em; color: var(--ink-500); font-weight: 600;}
.rsg-page .yelp-workflow-grid .how-card .how-shot{margin: 0; border: 0; border-radius: 0; aspect-ratio: 16/9; background: #fff;}
.rsg-page .yelp-workflow-grid .how-card .how-shot img{object-fit: contain; padding: 14px; background: var(--paper-soft);}
/* WORKFLOW CONNECTOR BADGE */
.rsg-page .yelp-workflow-arrow{position: relative; display: flex; align-items: center; justify-content: center;}
.rsg-page .yelp-workflow-arrow::before{content: ""; position: absolute; left: 4px; right: 4px; top: 50%; height: 0; border-top: 2px dashed rgba(32,157,80,0.35); transform: translateY(-50%); z-index: 1;}
.rsg-page .yelp-workflow-arrow .ywa-line{display: none;}
.rsg-page .yelp-workflow-arrow .ywa-badge{width: 56px; height: 56px; border-radius: 50%; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: flex; align-items: center; justify-content: center; box-shadow: 0 10px 24px rgba(32,157,80,0.32), 0 0 0 6px rgba(32,157,80,0.10); position: relative; z-index: 2;}
.rsg-page .yelp-workflow-arrow .ywa-badge svg{width: 22px; height: 22px;}
.rsg-page .yelp-workflow-arrow .ywa-label{position: absolute; bottom: -22px; left: 50%; transform: translateX(-50%); font-family: var(--font-mono); font-size: 9px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--green-700); font-weight: 700; white-space: nowrap; z-index: 3; background: var(--paper); padding: 0 6px;}
/* Insight cards &mdash; redesigned (numbered, gradient icon, decorative blob, hover lift) */
.rsg-page .info-cards-grid{display: grid; grid-template-columns: 1fr 1fr; gap: 20px; max-width: 1040px; margin: 0 auto 28px;}
.rsg-page .info-stat-card{background: #fff; border: 1px solid var(--line); border-radius: 20px; padding: 28px 30px 26px; position: relative; overflow: hidden; box-shadow: 0 8px 24px rgba(0,0,0,0.04); transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;}
.rsg-page .info-stat-card:hover{transform: translateY(-3px); box-shadow: 0 20px 48px rgba(0,0,0,0.10); border-color: rgba(32,157,80,0.30);}
.rsg-page .info-stat-card::before{content: ""; position: absolute; top: 0; left: 0; bottom: 0; width: 5px; background: linear-gradient(180deg, var(--green-500), var(--green-700));}
.rsg-page .info-stat-card::after{content: ""; position: absolute; top: -60px; right: -60px; width: 200px; height: 200px; border-radius: 50%; background: radial-gradient(circle, rgba(32,157,80,0.09), rgba(32,157,80,0.02) 50%, transparent 75%); pointer-events: none;}
.rsg-page .info-stat-card .isc-head{display: contents;}
.rsg-page .info-stat-card .isc-icon{width: 52px; height: 52px; border-radius: 14px; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: flex; align-items: center; justify-content: center; box-shadow: 0 12px 28px rgba(32,157,80,0.28); float: right; margin: 0 0 14px 18px; position: relative; z-index: 2;}
.rsg-page .info-stat-card .isc-icon::before{content: ""; position: absolute; inset: 0; border-radius: 16px; background: linear-gradient(135deg, rgba(255,255,255,0.25), transparent 50%); pointer-events: none;}
.rsg-page .info-stat-card .isc-icon svg{width: 26px; height: 26px; position: relative; z-index: 1;}
.rsg-page .info-stat-card .isc-title{font-family: var(--font-display); font-size: 20px; font-weight: 800; color: var(--ink-900); line-height: 1.28; margin: 0 0 14px; letter-spacing: -0.005em; position: relative; z-index: 1;}
.rsg-page .info-stat-card .isc-stat{display: inline-flex; align-items: baseline; gap: 12px; padding: 14px 20px; background: linear-gradient(135deg, rgba(32,157,80,0.08), rgba(32,157,80,0.14)); border-radius: 12px; border: 1px solid rgba(32,157,80,0.22); position: relative; z-index: 1; margin: 0 0 14px;}
.rsg-page .info-stat-card .isc-stat strong{font-family: var(--font-display); font-size: 30px; font-weight: 800; color: var(--green-700); letter-spacing: -0.02em; line-height: 1;}
.rsg-page .info-stat-card .isc-stat span{font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--ink-700); font-weight: 700;}
.rsg-page .info-stat-card p{margin: 0; font-size: 14px; color: var(--ink-2); line-height: 1.65; position: relative; z-index: 1;}
/* Channel comparison (replaces plain HTML table) */
.rsg-page .channel-cmp{background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 22px 28px; max-width: 1040px; margin: 0 auto 24px; box-shadow: var(--shadow-md);}
.rsg-page .channel-cmp h4{font-family: var(--font-display); font-size: 19px; margin: 0 0 20px; padding-bottom: 14px; border-bottom: 2px solid var(--ink-900); display: flex; align-items: center; justify-content: space-between;}
.rsg-page .channel-cmp h4 small{font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase; font-weight: 700; color: var(--ink-500); border: 0; padding: 0;}
.rsg-page .ch-header{display: grid; grid-template-columns: 40px 1fr 1fr 130px 150px; gap: 16px; padding: 0 12px 12px; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase; font-weight: 700; color: var(--ink-500); border-bottom: 1px solid var(--line-2); margin-bottom: 6px;}
.rsg-page .channel-row{display: grid; grid-template-columns: 40px 1fr 1fr 130px 150px; gap: 16px; align-items: center; padding: 14px 12px; border-bottom: 1px solid var(--line-2); position: relative; transition: background .2s;}
.rsg-page .channel-row:last-child{border-bottom: 0;}
.rsg-page .channel-row.featured{background: var(--green-50); margin: 6px -12px 6px; padding-left: 24px; padding-right: 24px; border-radius: 12px; border: 1px solid rgba(32,157,80,0.28);}
.rsg-page .channel-row .ch-icon{width: 36px; height: 36px; border-radius: 9px; display: flex; align-items: center; justify-content: center; color: #fff; font-family: var(--font-display); font-weight: 800; font-size: 13px; flex-shrink: 0; box-shadow: 0 4px 10px rgba(0,0,0,0.08);}
.rsg-page .channel-row .ch-icon.yelp{background: linear-gradient(135deg, #FF1A1A, #C70000);}
.rsg-page .channel-row .ch-icon.lsa{background: #fff; border: 1px solid var(--line-2); padding: 4px;}
.rsg-page .channel-row .ch-icon.ppc{background: linear-gradient(135deg, #4285F4, #34A853);}
.rsg-page .channel-row .ch-icon.meta{background: linear-gradient(135deg, #1877F2, #0A5BCB);}
.rsg-page .channel-row .ch-name{font-family: var(--font-display); font-size: 15px; font-weight: 700; color: var(--ink-900);}
.rsg-page .channel-row .ch-pricing{font-family: var(--font-mono); font-size: 12px; color: var(--ink-700); font-weight: 600; letter-spacing: 0.02em;}
.rsg-page .channel-row .ch-cpl{font-family: var(--font-display); font-size: 15px; font-weight: 800; color: var(--ink-900); text-align: left; letter-spacing: -0.01em;}
.rsg-page .channel-row.featured .ch-cpl{color: var(--green-700);}
.rsg-page .channel-row .ch-mode{padding: 6px 12px; border-radius: 999px; font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.08em; font-weight: 700; text-transform: uppercase; display: inline-block; white-space: nowrap;}
.rsg-page .channel-row .ch-mode.compare{background: rgba(32,157,80,0.18); color: var(--green-700);}
.rsg-page .channel-row .ch-mode.urgent{background: rgba(231,138,44,0.18); color: var(--orange-500);}
.rsg-page .channel-row .ch-mode.active{background: rgba(66,133,244,0.14); color: #1E5BC4;}
.rsg-page .channel-row .ch-mode.discovery{background: rgba(107,107,107,0.12); color: var(--ink-700);}
/* Channel comparison table (Notion-style: channels as rows, attributes as columns) */
.rsg-page .channel-cmp-v2{background: #fff; border: 1px solid var(--line); border-radius: 16px; overflow: hidden; max-width: 1040px; margin: 0 auto 24px; box-shadow: var(--shadow-md);}
.rsg-page .channel-cmp-v2 .cmp-caption{padding: 16px 22px; font-family: var(--font-display); font-size: 14.5px; font-weight: 800; color: var(--ink-900); background: #fff; border-bottom: 2px solid var(--ink-900); display: flex; align-items: center; justify-content: space-between;}
.rsg-page .channel-cmp-v2 .cmp-caption .cmp-sub{font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--ink-500); font-weight: 700;}
.rsg-page .channel-cmp-v2 table{width: 100%; border-collapse: collapse;}
.rsg-page .channel-cmp-v2 th, .rsg-page .channel-cmp-v2 td{padding: 16px 20px; text-align: left; border-bottom: 1px solid var(--line-2); font-size: 14px; vertical-align: middle;}
.rsg-page .channel-cmp-v2 tr:last-child td, .rsg-page .channel-cmp-v2 tr:last-child th{border-bottom: 0;}
.rsg-page .channel-cmp-v2 thead th{background: var(--paper-soft); padding: 14px 20px; font-family: var(--font-mono); font-weight: 700; font-size: 10.5px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--ink-700); border-bottom: 2px solid var(--ink-900);}
.rsg-page .channel-cmp-v2 tbody th{font-family: var(--font-display); font-size: 15px; font-weight: 800; color: var(--ink-900); width: 290px; white-space: nowrap;}
.rsg-page .channel-cmp-v2 tbody th .ch-icon{display: inline-flex; vertical-align: middle; margin-right: 10px; width: 30px; height: 30px; border-radius: 8px; align-items: center; justify-content: center; background: #FFFFFF; padding: 5px; box-shadow: 0 2px 6px rgba(0,0,0,0.08), 0 0 0 1px rgba(0,0,0,0.05);}
.rsg-page .channel-cmp-v2 .ch-icon svg, .rsg-page .channel-cmp-v2 .ch-icon img{display: block; width: 100%; height: 100%; object-fit: contain;}
.rsg-page .channel-cmp-v2 tbody td{color: var(--ink-2);}
.rsg-page .channel-cmp-v2 .ch-cpl-val{font-family: var(--font-display); font-size: 15px; font-weight: 800; color: var(--ink-900); letter-spacing: -0.01em;}
.rsg-page .channel-cmp-v2 tr.featured-row{background: rgba(32,157,80,0.07); position: relative; box-shadow: inset 4px 0 0 var(--green-500);}
.rsg-page .channel-cmp-v2 tr.featured-row th{color: var(--green-700); position: relative;}
.rsg-page .channel-cmp-v2 tr.featured-row th .feat-pill{display: inline-flex; align-items: center; gap: 4px; margin-left: 10px; background: var(--green-500); color: #fff; padding: 3px 8px 3px 7px; border-radius: 999px; font-family: var(--font-mono); font-size: 8.5px; letter-spacing: 0.14em; text-transform: uppercase; font-weight: 700; vertical-align: middle; white-space: nowrap; box-shadow: 0 3px 8px rgba(32,157,80,0.30);}
.rsg-page .channel-cmp-v2 tr.featured-row th .feat-pill::before{content: ""; width: 6px; height: 6px; border-radius: 50%; background: #fff; box-shadow: 0 0 0 2px rgba(255,255,255,0.4);}
.rsg-page .channel-cmp-v2 tr.featured-row th .ch-name{display: inline-flex; align-items: center; gap: 0; white-space: nowrap;}
.rsg-page .channel-cmp-v2 tr.featured-row td .ch-cpl-val{color: var(--green-700);}
.rsg-page .channel-cmp-v2 .ch-mode{display: inline-block; padding: 5px 11px; border-radius: 999px; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.10em; font-weight: 700; text-transform: uppercase; white-space: nowrap;}
.rsg-page .channel-cmp-v2 .ch-mode.compare{background: rgba(32,157,80,0.18); color: var(--green-700);}
.rsg-page .channel-cmp-v2 .ch-mode.urgent{background: rgba(231,138,44,0.18); color: var(--orange-500);}
.rsg-page .channel-cmp-v2 .ch-mode.active{background: rgba(66,133,244,0.14); color: #1E5BC4;}
.rsg-page .channel-cmp-v2 .ch-mode.discovery{background: rgba(107,107,107,0.12); color: var(--ink-700);}
@media (max-width: 768px){.rsg-page .channel-cmp-v2{overflow-x: auto;}}
@media (max-width: 768px){.rsg-page .channel-cmp-v2 table{min-width: 720px;}}
@media (max-width: 768px){.rsg-page .channel-cmp-v2 th, .rsg-page .channel-cmp-v2 td{padding: 12px 14px; font-size: 13px;}}
/* Math comparison cards */
.rsg-page .math-grid{display: grid; grid-template-columns: 1fr 60px 1fr; gap: 16px; align-items: stretch; max-width: 1040px; margin: 0 auto 14px;}
.rsg-page .math-card{background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 20px 22px; box-shadow: var(--shadow-md); display: flex; flex-direction: column; gap: 10px; position: relative;}
.rsg-page .math-card.yelp{border-top: 4px solid var(--green-500);}
.rsg-page .math-card.lsa{border-top: 4px solid var(--orange-500);}
.rsg-page .math-card .mc-head{display: flex; align-items: center; gap: 10px; padding-bottom: 8px; border-bottom: 1px solid var(--line-2); margin-bottom: 4px;}
.rsg-page .math-card .mc-head .mc-dot{width: 30px; height: 30px; border-radius: 8px; display: flex; align-items: center; justify-content: center; background: #FFFFFF; padding: 5px; flex-shrink: 0; box-shadow: 0 2px 6px rgba(0,0,0,0.08), 0 0 0 1px rgba(0,0,0,0.05);}
.rsg-page .math-card .mc-dot svg, .rsg-page .math-card .mc-dot img{display: block; width: 100%; height: 100%; object-fit: contain;}
.rsg-page .math-card .mc-head strong{font-family: var(--font-display); font-size: 15px; color: var(--ink-900); font-weight: 800;}
.rsg-page .math-card .mc-eq{display: flex; align-items: center; justify-content: space-between; padding: 10px 14px; background: var(--paper-soft); border-radius: 8px;}
.rsg-page .math-card .mc-eq span{font-family: var(--font-mono); font-size: 11.5px; color: var(--ink-700); font-weight: 600; letter-spacing: 0.02em;}
.rsg-page .math-card .mc-eq .mc-op{font-family: var(--font-display); font-weight: 800; color: var(--ink-900); font-size: 16px;}
.rsg-page .math-card .mc-result{padding: 16px 18px; border-radius: 10px; text-align: center; margin-top: auto;}
.rsg-page .math-card.yelp .mc-result{background: var(--green-50); border: 1px solid rgba(32,157,80,0.22);}
.rsg-page .math-card.lsa .mc-result{background: rgba(231,138,44,0.10); border: 1px solid rgba(231,138,44,0.22);}
.rsg-page .math-card .mc-result strong{display: block; font-family: var(--font-display); font-size: 32px; font-weight: 800; line-height: 1; letter-spacing: -0.02em;}
.rsg-page .math-card.yelp .mc-result strong{color: var(--green-700);}
.rsg-page .math-card.lsa .mc-result strong{color: var(--orange-500);}
.rsg-page .math-card .mc-result span{display: block; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--ink-500); font-weight: 700; margin-top: 6px;}
.rsg-page .math-vs{display: flex; align-items: center; justify-content: center;}
.rsg-page .math-vs span{font-family: var(--font-display); font-size: 13px; font-weight: 800; color: var(--ink-700); letter-spacing: 0.04em; background: #fff; border: 1.5px solid var(--line); width: 52px; height: 52px; border-radius: 50%; display: flex; align-items: center; justify-content: center; box-shadow: var(--shadow-md);}
.rsg-page .math-conclusion{background: var(--paper-soft); color: var(--ink-2); border: 1px solid var(--line-2); border-left: 5px solid var(--green-500); border-radius: 10px; padding: 14px 26px 14px 22px; max-width: 1040px; margin: 0 auto; display: flex; align-items: center; gap: 14px; box-shadow: 0 2px 8px rgba(0,0,0,0.04);}
.rsg-page .math-conclusion .mc-tag{background: rgba(32,157,80,0.15); color: var(--green-700); width: 36px; height: 36px; padding: 0; border-radius: 50%; display: flex; align-items: center; justify-content: center; flex-shrink: 0;}
.rsg-page .math-conclusion .mc-tag svg{width: 20px; height: 20px;}
.rsg-page .math-conclusion p{margin: 0; font-size: 14px; line-height: 1.55; color: var(--ink-2);}
.rsg-page .math-conclusion p strong{color: var(--ink-900); font-weight: 800;}
.rsg-page .math-conclusion p em{font-style: italic; color: var(--ink-2);}
.rsg-page .math-conclusion.mc-with-cta{padding: 12px 12px 12px 22px; gap: 16px; flex-wrap: wrap;}
.rsg-page .math-conclusion.mc-with-cta p{flex: 1 1 auto; min-width: 240px;}
.rsg-page .math-conclusion .mc-cta-btn{margin-left: auto; align-self: center; padding: 8px 16px; font-size: 12px; border-radius: 999px; display: inline-flex; align-items: center; white-space: nowrap; flex-shrink: 0; line-height: 1.2;}
.rsg-page .math-conclusion .mc-cta-btn svg{width: 14px !important; height: 14px !important; margin-right: 6px !important;}
@media (max-width: 720px){.rsg-page .math-conclusion.mc-with-cta{flex-direction: column; align-items: flex-start; padding: 16px 18px;}}
@media (max-width: 720px){.rsg-page .math-conclusion .mc-cta-btn{margin-left: 0; width: 100%; justify-content: center; white-space: normal; text-align: center; line-height: 1.3; padding: 11px 16px;}}
@media (max-width: 1024px){.rsg-page .yelp-workflow-grid{grid-template-columns: 1fr; gap: 32px;}}
@media (max-width: 1024px){.rsg-page .yelp-workflow-arrow{display: none;}}
@media (max-width: 1024px){.rsg-page .info-cards-grid{grid-template-columns: 1fr;}}
@media (max-width: 1024px){.rsg-page .channel-row, .rsg-page .ch-header{grid-template-columns: 40px 1fr 110px 130px; gap: 12px;}}
@media (max-width: 1024px){.rsg-page .channel-row .ch-pricing, .rsg-page .ch-header > span:nth-child(3){display: none;}}
@media (max-width: 1024px){.rsg-page .math-grid{grid-template-columns: 1fr; gap: 16px;}}
@media (max-width: 1024px){.rsg-page .math-vs{display: none;}}
@media (max-width: 1024px){.rsg-page .math-conclusion{flex-direction: column; align-items: flex-start;}}
/* ============================================================
   PERCENT BREAKDOWN BAR (Pattern 17)
   ============================================================ */
.rsg-page .pct-bar{max-width: 880px; margin: 0 auto;}
.rsg-page .pb-labels{display: flex; margin-bottom: 10px;}
.rsg-page .pb-lbl{padding: 0 6px;}
.rsg-page .pb-lbl strong{display: block; font-family: var(--font-display); font-size: 26px; font-weight: 800; color: var(--ink-900); line-height: 1;}
.rsg-page .pb-lbl span{display: block; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--ink-500); margin-top: 4px; font-weight: 700;}
.rsg-page .pb-track{display: flex; height: 56px; border-radius: 12px; overflow: hidden; box-shadow: var(--shadow-md);}
.rsg-page .pb-seg{display: flex; align-items: center; justify-content: center; color: #fff; font-family: var(--font-display); font-weight: 800; font-size: 15px; letter-spacing: -0.01em;}
.rsg-page .pb-seg.red{background: linear-gradient(135deg, var(--red), #9F1219);}
.rsg-page .pb-seg.orange{background: linear-gradient(135deg, var(--orange-500), #C46E1A);}
.rsg-page .pb-seg.green{background: linear-gradient(135deg, var(--green-500), var(--green-700));}
.rsg-page .pb-caption{margin-top: 14px; font-family: var(--font-mono); font-size: 11px; letter-spacing: 0.08em; color: var(--ink-500); text-align: left; font-weight: 600;}
/* ============================================================
   COMPARISON TABLES (Pattern 19)
   ============================================================ */
.rsg-page .cmp-stack{display: grid; gap: 24px;}
.rsg-page .cmp-table{background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 24px;}
.rsg-page .cmp-head h4{font-family: var(--font-display); font-size: 18px; margin-bottom: 18px; padding-bottom: 14px; border-bottom: 2px solid var(--ink-900);}
.rsg-page .cmp-grid{display: grid; grid-template-columns: 130px 1fr 1fr; gap: 0;}
.rsg-page .cmp-col-head{padding: 14px 12px; background: var(--paper-soft); font-family: var(--font-mono); font-size: 11px; letter-spacing: 0.1em; text-transform: uppercase; font-weight: 700; color: var(--ink-900); border-bottom: 1px solid var(--line);}
.rsg-page .cmp-blank{background: var(--paper-soft); border-bottom: 1px solid var(--line);}
.rsg-page .cmp-key{padding: 14px 12px; background: var(--paper-soft); font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--ink-700); font-weight: 700; border-bottom: 1px solid var(--line-2);}
.rsg-page .cmp-val{padding: 14px 16px; font-size: 14px; color: var(--ink-2); border-bottom: 1px solid var(--line-2);}
.rsg-page .cmp-val.highlight{background: var(--green-50); color: var(--green-700); font-weight: 600;}
.rsg-page .cmp-note{margin: 18px 0 0; font-size: 14px; color: var(--ink-2);}
/* ============================================================
   CHANNEL SETUP TIMELINE (Pattern 29)
   ============================================================ */
.rsg-page .setup-timeline{background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 28px; box-shadow: var(--shadow-md);}
.rsg-page .st-row{display: grid; grid-template-columns: 130px 1fr 90px; gap: 16px; align-items: center; padding: 14px 0; border-bottom: 1px solid var(--line-2);}
.rsg-page .st-row:last-child{border-bottom: 0;}
.rsg-page .str-name{display: flex; align-items: center; gap: 10px; font-family: var(--font-display); font-weight: 700; font-size: 14px; color: var(--ink-900);}
.rsg-page .str-name i{width: 8px; height: 8px; border-radius: 50%; display: inline-block;}
.rsg-page .str-bar{height: 14px; background: var(--paper-soft); border-radius: 7px; overflow: hidden; position: relative;}
.rsg-page .str-fill{height: 100%; border-radius: 7px; transition: width 1s ease;}
.rsg-page .str-fill.yelp{width: 14%; background: linear-gradient(90deg, var(--green-500), var(--green-700));}
.rsg-page .str-fill.ppc{width: 28%; background: linear-gradient(90deg, #4285F4, #1E5BC4);}
.rsg-page .str-fill.meta{width: 28%; background: linear-gradient(90deg, #1877F2, #0A5BCB);}
.rsg-page .str-fill.lsa{width: 100%; background: linear-gradient(90deg, var(--orange-500), var(--red));}
.rsg-page .str-dur{font-family: var(--font-mono); font-size: 12px; font-weight: 700; color: var(--ink-900); text-align: right;}
.rsg-page .st-tip{padding: 14px 16px; background: var(--green-50); border-radius: 10px; margin-top: 16px; font-size: 13px; color: var(--green-700);}
.rsg-page .st-tip strong{color: var(--green-700);}
/* ============================================================
   BRAND INSIGHTS AI TABLE (Pattern 3)
   ============================================================ */
.rsg-page .brand-insights{background: #000; border-radius: var(--radius-lg); padding: 24px; color: #fff; box-shadow: var(--shadow-lg);}
.rsg-page .brand-insights header{display: flex; align-items: center; gap: 10px; padding-bottom: 16px; border-bottom: 1px solid rgba(255,255,255,0.1); margin-bottom: 8px;}
.rsg-page .bi-icon{width: 36px; height: 36px; border-radius: 8px; background: linear-gradient(135deg, #8B5CF6, #A78BFA); display: inline-flex; align-items: center; justify-content: center; font-size: 18px;}
.rsg-page .brand-insights h4{color: #fff; flex: 1; font-size: 18px; margin: 0;}
.rsg-page .bi-tag{background: rgba(255,255,255,0.1); padding: 4px 10px; border-radius: 999px; font-size: 10px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase;}
.rsg-page .bi-table{width: 100%; border-collapse: collapse;}
.rsg-page .bi-table th{text-align: left; padding: 12px 8px; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.1em; text-transform: uppercase; color: rgba(255,255,255,0.5); font-weight: 600; border-bottom: 1px solid rgba(255,255,255,0.08);}
.rsg-page .bi-table td{padding: 14px 8px; font-size: 14px; border-bottom: 1px solid rgba(255,255,255,0.06); color: rgba(255,255,255,0.85);}
.rsg-page .bi-table tr:last-child td{border-bottom: 0;}
.rsg-page .bi-plat{display: inline-block; width: 24px; height: 24px; border-radius: 50%; line-height: 24px; text-align: center; margin-right: 10px; font-size: 14px; color: #fff; font-weight: 700;}
.rsg-page .bi-plat.gemini{background: linear-gradient(135deg, #4285F4, #34A853);}
.rsg-page .bi-plat.chatgpt{background: #10A37F;}
.rsg-page .bi-plat.perplexity{background: #1A1A1A; border: 1px solid rgba(255,255,255,0.2);}
.rsg-page .bi-plat.grok{background: #000; border: 1px solid rgba(255,255,255,0.3);}
.rsg-page .bi-plat.copilot{background: linear-gradient(135deg, #00A4EF, #0078D4);}
.rsg-page .bi-plat.google{background: #fff; color: #4285F4;}
.rsg-page .bi-table td u{text-decoration: underline; text-decoration-color: rgba(255,255,255,0.3);}
.rsg-page .bi-emoji{margin-left: 10px;}
.rsg-page .bi-emoji.good{color: #22C55E;}
.rsg-page .bi-emoji.bad{color: #F97316;}
/* ============================================================
   RATING DISTRIBUTION + Google Business Profile PROFILE (Pattern 13 + 31)
   ============================================================ */
.rsg-page .reviews-grid{display: grid; grid-template-columns: 1.2fr 1fr; gap: 32px; align-items: start;}
.rsg-page .rating-dist{background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 24px;}
.rsg-page .rd-top{display: flex; justify-content: space-between; align-items: center; padding-bottom: 14px; border-bottom: 1px solid var(--line-2); margin-bottom: 14px;}
.rsg-page .rd-top h5{font-size: 14px; margin: 0;}
.rsg-page .rd-score{display: flex; align-items: baseline; gap: 6px;}
.rsg-page .rd-score strong{font-family: var(--font-display); font-size: 32px; font-weight: 800; color: var(--ink-900);}
.rsg-page .rd-score span{color: var(--orange-500); font-size: 18px; letter-spacing: 1px;}
.rsg-page .rd-row{display: grid; grid-template-columns: 36px 1fr 50px; gap: 12px; align-items: center; margin-bottom: 10px;}
.rsg-page .rd-star{font-size: 13px; color: var(--ink-500); font-weight: 600;}
.rsg-page .rd-bar{height: 10px; background: var(--paper-soft); border-radius: 5px; overflow: hidden;}
.rsg-page .rd-fill{height: 100%; background: linear-gradient(90deg, var(--green-500), var(--green-600)); border-radius: 5px;}
.rsg-page .rd-pct{font-size: 12px; color: var(--ink-700); font-weight: 700; text-align: right;}
.rsg-page .rd-note{margin-top: 16px; padding-top: 14px; border-top: 1px solid var(--line-2); font-size: 13px; color: var(--ink-2);}
.rsg-page .rd-note strong{color: var(--green-700);}
.rsg-page .gbp-card{background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 22px; box-shadow: var(--shadow-md);}
.rsg-page .gbp-head{display: flex; justify-content: space-between; align-items: center; margin-bottom: 14px;}
.rsg-page .gbp-title{font-family: var(--font-display); font-weight: 700; font-size: 14px; color: var(--ink-900);}
.rsg-page .gbp-strength{font-family: var(--font-mono); font-size: 11px; color: var(--ink-500);}
.rsg-page .gbp-strength strong{color: var(--green-700); font-weight: 700;}
.rsg-page .gbp-tabs{display: flex; gap: 14px; padding: 12px 0; border-top: 1px solid var(--line-2); border-bottom: 1px solid var(--line-2); overflow-x: auto;}
.rsg-page .gbp-tabs::-webkit-scrollbar{display: none;}
.rsg-page .gbp-tab{font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.06em; color: var(--ink-500); white-space: nowrap; font-weight: 600; padding: 4px 0; border-bottom: 2px solid transparent;}
.rsg-page .gbp-tab.active{color: var(--ink-900); border-bottom-color: var(--green-500);}
.rsg-page .gbp-stats{display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin: 14px 0;}
.rsg-page .gbp-stat{background: var(--paper-soft); border-radius: 10px; padding: 12px 10px; text-align: center;}
.rsg-page .gbp-stat strong{display: block; font-family: var(--font-display); font-size: 18px; font-weight: 800; color: var(--ink-900); line-height: 1;}
.rsg-page .gbp-stat span{display: block; font-family: var(--font-mono); font-size: 8px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--ink-500); margin-top: 6px; font-weight: 600;}
.rsg-page .gbp-mini-chart{padding: 12px 14px; background: var(--paper-soft); border-radius: 10px; margin-bottom: 14px;}
.rsg-page .gbp-mini-chart .gmc-row{display: flex; justify-content: space-between; align-items: center; margin-bottom: 6px;}
.rsg-page .gbp-mini-chart .gmc-row span:first-child{font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.06em; text-transform: uppercase; color: var(--ink-700); font-weight: 700;}
.rsg-page .gbp-mini-chart .gmc-row span:last-child{font-family: var(--font-display); font-size: 13px; font-weight: 700; color: var(--green-700);}
.rsg-page .gbp-mini-chart svg{width: 100%; height: 36px; display: block;}
.rsg-page .gbp-foot{padding-top: 4px;}
.rsg-page .gbp-foot strong{display: block; font-family: var(--font-display); font-size: 15px; color: var(--ink-900);}
.rsg-page .gbp-rate{display: block; font-size: 12px; color: var(--ink-700); margin: 2px 0;}
.rsg-page .gbp-rate b{color: var(--orange-500);}
.rsg-page .gbp-cat{display: block; font-size: 11px; color: var(--ink-500); margin-bottom: 10px;}
.rsg-page .gbp-verify{display: inline-flex; align-items: center; gap: 5px; font-family: var(--font-mono); font-size: 10px; color: var(--green-700); font-weight: 700; letter-spacing: 0.04em; padding: 4px 10px; background: var(--green-50); border-radius: 999px;}
.rsg-page .gbp-verify svg{width: 13px; height: 13px; color: var(--green-500);}
/* ============================================================
   RISK CARDS (Pattern 24)
   ============================================================ */
.rsg-page .risk-grid{display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--grid-gap);}
.rsg-page .risk-card{background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: var(--card-pad-lg); position: relative; overflow: hidden;}
.rsg-page .risk-card .rc-bg-num{position: absolute; top: 4px; right: 18px; font-family: var(--font-display); font-size: 80px; font-weight: 800; color: var(--ink-900); opacity: 0.05; line-height: 1;}
.rsg-page .rc-sev{display: inline-block; padding: 5px 12px; border-radius: 999px; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.1em; text-transform: uppercase; font-weight: 700; margin-bottom: 14px;}
.rsg-page .rc-sev.high{background: rgba(200,32,43,0.1); color: var(--red);}
.rsg-page .rc-sev.med{background: rgba(231,138,44,0.12); color: var(--orange-500);}
.rsg-page .rc-sev.low{background: var(--green-50); color: var(--green-700);}
.rsg-page .risk-card h3{font-size: 19px; margin-bottom: 12px;}
.rsg-page .risk-card p{font-size: 14px;}
.rsg-page .rc-move{margin-top: 16px; padding: 14px 16px; background: var(--paper-soft); border-left: 3px solid var(--green-500); border-radius: 0 10px 10px 0;}
.rsg-page .rc-move-tag{display: block; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--green-700); font-weight: 700; margin-bottom: 6px;}
.rsg-page .rc-move p{margin: 0; font-size: 13px; color: var(--ink-2);}
/* ============================================================
   EQUATION CALLOUT (Pattern 25) &mdash; used in lead-quality section
   ============================================================ */
.rsg-page .eq-card{border-radius: var(--radius-lg); padding: 44px; text-align: center; box-shadow: var(--shadow-lg); background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.1);}
.rsg-page .eq-tag{display: inline-block; background: rgba(32,157,80,0.2); color: var(--green-500); padding: 6px 14px; border-radius: 999px; font-family: var(--font-mono); font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; font-weight: 700; margin-bottom: 24px;}
.rsg-page .eq-row{display: flex; align-items: center; justify-content: center; gap: 24px; flex-wrap: wrap; margin-bottom: 18px;}
.rsg-page .eq-wrong{font-family: var(--font-mono); font-size: 22px; color: rgba(255,255,255,0.4); font-weight: 600;}
.rsg-page .eq-wrong s{text-decoration-color: var(--red); text-decoration-thickness: 2px;}
.rsg-page .eq-arrow{font-family: var(--font-display); font-size: 28px; color: var(--green-500);}
.rsg-page .eq-right{font-family: var(--font-mono); font-size: 22px; color: var(--green-500); font-weight: 700;}
.rsg-page .eq-note{font-size: 14px; color: rgba(255,255,255,0.72); max-width: 600px; margin: 0 auto;}
.rsg-page .leadq-grid{display: grid; grid-template-columns: 1fr 1fr; gap: var(--grid-gap); margin-top: 40px;}
.rsg-page .leadq-card{background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.1); border-radius: var(--radius-lg); padding: var(--card-pad-lg);}
.rsg-page .leadq-card h4{color: #fff; font-size: 18px; margin-bottom: 12px;}
.rsg-page .leadq-card p{color: rgba(255,255,255,0.75); font-size: 14px;}
.rsg-page .leadq-bars{display: grid; gap: 12px; margin-top: 16px;}
.rsg-page .leadq-bar-row{display: grid; grid-template-columns: 1fr 1fr; gap: 10px; align-items: center;}
.rsg-page .leadq-bar-row .lqr-label{font-family: var(--font-mono); font-size: 11px; letter-spacing: 0.06em; color: rgba(255,255,255,0.7); font-weight: 600; text-transform: uppercase;}
.rsg-page .leadq-bar-row .lqr-bar{height: 24px; background: rgba(255,255,255,0.08); border-radius: 6px; overflow: hidden; position: relative; display: flex; align-items: center; padding: 0 8px;}
.rsg-page .leadq-bar-row .lqr-fill{position: absolute; left: 0; top: 0; bottom: 0; background: linear-gradient(90deg, var(--green-500), var(--green-700)); border-radius: 6px;}
.rsg-page .leadq-bar-row .lqr-fill.red{background: linear-gradient(90deg, var(--red), #9F1219);}
.rsg-page .leadq-bar-row .lqr-val{position: relative; z-index: 2; font-family: var(--font-display); font-weight: 800; font-size: 13px; color: #fff;}
/* ============================================================
   VERIFIED PARTNER BADGES (Pattern 21)
   ============================================================ */
/* SPECIALIZATION &mdash; split layout (light section + dark partner card) */
.rsg-page .spec-split{display: grid; grid-template-columns: 1.1fr 0.95fr; gap: 56px; align-items: center;}
.rsg-page .spec-left .eyebrow{margin-bottom: 18px;}
.rsg-page .spec-left h2{margin-bottom: 18px;}
.rsg-page .spec-left .lede{max-width: 520px; margin-bottom: 28px;}
.rsg-page .spec-stats{display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; padding: 22px; background: #000; border-radius: var(--radius-lg);}
.rsg-page .spec-stats .ss-tile{padding: 4px 8px;}
.rsg-page .spec-stats .ss-tile strong{display: block; font-family: var(--font-display); font-size: 28px; font-weight: 800; color: var(--green-500); line-height: 1;}
.rsg-page .spec-stats .ss-tile span{display: block; font-family: var(--font-mono); font-size: 9px; letter-spacing: 0.08em; text-transform: uppercase; color: rgba(255,255,255,0.65); margin-top: 8px; font-weight: 700; line-height: 1.4;}
.rsg-page .cert-card{background: var(--dark-grad); border-radius: var(--radius-lg); padding: 32px; color: #fff; box-shadow: var(--shadow-lg); position: relative; overflow: hidden;}
.rsg-page .cert-card::before{content: ""; position: absolute; top: -40%; right: -20%; width: 280px; height: 280px; background: radial-gradient(circle, rgba(32,157,80,0.18), transparent 70%); pointer-events: none;}
.rsg-page .cc-tag{display: inline-block; background: rgba(32,157,80,0.18); color: var(--green-500); padding: 5px 12px; border-radius: 999px; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase; font-weight: 700; margin-bottom: 14px; position: relative;}
.rsg-page .cert-card h4{font-size: 22px; color: #fff; margin-bottom: 10px; position: relative;}
.rsg-page .cert-card > p{color: rgba(255,255,255,0.7); font-size: 14px; margin-bottom: 22px; position: relative;}
.rsg-page .cc-list{display: grid; gap: 10px; margin-bottom: 22px; position: relative;}
.rsg-page .cc-row{display: grid; grid-template-columns: 44px 1fr auto; gap: 14px; align-items: center; padding: 14px 16px; background: rgba(255,255,255,0.05); border-radius: 12px; border: 1px solid rgba(255,255,255,0.08);}
.rsg-page .cc-logo{width: 44px; height: 44px; border-radius: 10px; display: flex; align-items: center; justify-content: center; font-family: var(--font-display); font-weight: 800; font-size: 18px; color: #fff;}
.rsg-page .cc-logo.yelp{background: linear-gradient(135deg, #FF1A1A, #C70000);}
.rsg-page .cc-logo.google{background: linear-gradient(135deg, #4285F4, #34A853);}
.rsg-page .cc-logo.meta{background: linear-gradient(135deg, #1877F2, #0A5BCB);}
.rsg-page .cc-logo.lsa{background: linear-gradient(135deg, #1A73E8, #0D47A1); font-size: 14px;}
.rsg-page .cc-info strong{display: block; font-family: var(--font-display); font-size: 14px; color: #fff;}
.rsg-page .cc-info span{display: block; font-family: var(--font-body); font-size: 12px; color: rgba(255,255,255,0.6); margin-top: 2px;}
.rsg-page .cc-verify{display: inline-flex; align-items: center; gap: 5px; padding: 5px 10px; background: rgba(32,157,80,0.15); border: 1px solid rgba(32,157,80,0.3); border-radius: 999px; color: var(--green-500); font-family: var(--font-mono); font-size: 9px; letter-spacing: 0.12em; text-transform: uppercase; font-weight: 700;}
.rsg-page .cc-foot{color: rgba(255,255,255,0.55); font-size: 12px; font-style: italic; margin: 0; padding-top: 18px; border-top: 1px solid rgba(255,255,255,0.08); position: relative;}
/* ============================================================
   CASE STUDY &mdash; Google Search Console Dashboard + Lead Flow Chart
   ============================================================ */
.rsg-page .case-feature{display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: center;}
.rsg-page .case-info h2 em{color: var(--green-500);}
.rsg-page .case-tiles{display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; margin: 28px 0;}
.rsg-page .case-tile{padding: 18px 20px; background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.1); border-radius: 14px;}
.rsg-page .case-tile strong{display: block; font-family: var(--font-display); font-size: 28px; font-weight: 800; color: var(--green-500); line-height: 1;}
.rsg-page .case-tile span{display: block; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.08em; text-transform: uppercase; color: rgba(255,255,255,0.7); margin-top: 8px; font-weight: 600;}
.rsg-page .gsc-dash{background: #fff; border-radius: var(--radius-lg); padding: 24px; box-shadow: var(--shadow-lg);}
/* Maryland case study --- premium redesign */
.rsg-page .case-roi-reveal{position: relative; display: grid; grid-template-columns: 1fr 100px 1.4fr; gap: 28px; align-items: center; padding: 32px 40px; margin: 0 0 40px; background: linear-gradient(135deg, rgba(255,255,255,0.04), rgba(32,157,80,0.06)); border: 1px solid rgba(255,255,255,0.10); border-radius: 20px; overflow: hidden;}
.rsg-page .case-roi-reveal::before{content: ""; position: absolute; top: -120px; right: -120px; width: 360px; height: 360px; border-radius: 50%; background: radial-gradient(circle, rgba(32,157,80,0.20), transparent 65%); pointer-events: none;}
.rsg-page .roi-investment, .rsg-page .roi-result{display: flex; flex-direction: column; gap: 8px; position: relative; z-index: 1;}
.rsg-page .roi-investment .roi-label, .rsg-page .roi-result .roi-label{font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 700;}
.rsg-page .roi-investment .roi-label{color: rgba(255,255,255,0.55);}
.rsg-page .roi-result .roi-label{color: var(--green-500);}
.rsg-page .roi-investment .roi-amount{font-family: var(--font-display); font-size: clamp(32px, 4vw, 44px); font-weight: 800; color: rgba(255,255,255,0.65); letter-spacing: -0.02em; line-height: 1;}
.rsg-page .roi-result .roi-amount{font-family: var(--font-display); font-size: clamp(48px, 6.5vw, 72px); font-weight: 800; letter-spacing: -0.03em; line-height: 1; background: linear-gradient(135deg, #fff 30%, #6EE7B7); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;}
.rsg-page .roi-investment .roi-sub, .rsg-page .roi-result .roi-sub{font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.14em; text-transform: uppercase; color: rgba(255,255,255,0.45); font-weight: 600;}
.rsg-page .roi-arrow{position: relative; display: flex; align-items: center; justify-content: center; z-index: 1;}
.rsg-page .roi-multiplier{position: absolute; top: -32px; left: 50%; transform: translateX(-50%); background: var(--green-500); color: #fff; padding: 5px 12px; border-radius: 999px; font-family: var(--font-display); font-weight: 800; font-size: 13px; box-shadow: 0 10px 24px rgba(32,157,80,0.40); white-space: nowrap;}
.rsg-page .roi-arrow-line{width: 80px; height: 2px; background: linear-gradient(90deg, rgba(255,255,255,0.20), var(--green-500)); position: relative;}
.rsg-page .roi-arrow-line::after{content: ""; position: absolute; right: -2px; top: 50%; border: 8px solid transparent; border-left-color: var(--green-500); transform: translateY(-50%);}
.rsg-page .case-feature-v2{display: grid; grid-template-columns: 1.1fr 1fr; gap: 40px; align-items: center; margin-bottom: 32px;}
.rsg-page .case-info-v2{display: flex; flex-direction: column; gap: 22px;}
.rsg-page .case-chips{display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px;}
.rsg-page .case-chip{background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.10); border-radius: 14px; padding: 16px 18px; position: relative; overflow: hidden;}
.rsg-page .case-chip::before{content: ""; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: linear-gradient(90deg, var(--green-500), #6EE7B7);}
.rsg-page .case-chip strong{display: block; font-family: var(--font-display); font-size: 24px; font-weight: 800; color: #fff; line-height: 1; letter-spacing: -0.02em;}
.rsg-page .case-chip span{display: block; font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.12em; text-transform: uppercase; color: rgba(255,255,255,0.65); margin-top: 8px; font-weight: 700;}
.rsg-page .case-quote{position: relative; padding: 18px 22px 18px 56px; background: rgba(32,157,80,0.08); border: 1px solid rgba(32,157,80,0.20); border-radius: 12px; color: rgba(255,255,255,0.88); font-size: 14.5px; line-height: 1.6; font-style: italic;}
.rsg-page .case-quote::before{content: "\201C"; position: absolute; top: -8px; left: 16px; font-family: var(--font-display); font-size: 64px; font-weight: 800; color: var(--green-500); line-height: 1; opacity: 0.55;}
.rsg-page .case-reasons-row{margin-top: 32px;}
.rsg-page .case-reasons-row .crh-head{display: flex; align-items: center; gap: 14px; margin-bottom: 18px;}
.rsg-page .case-reasons-row .crh-head .ct-tag{display: inline-flex; align-items: center; gap: 8px; background: rgba(32,157,80,0.18); color: var(--green-500); padding: 7px 14px; border-radius: 999px; font-family: var(--font-mono); font-size: 10.5px; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 700; border: 1px solid rgba(32,157,80,0.30);}
.rsg-page .case-reasons-row .crh-divider{flex: 1; height: 1px; background: linear-gradient(90deg, rgba(255,255,255,0.12), transparent);}
.rsg-page .case-reasons{display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px;}
.rsg-page .case-reason{display: flex; flex-direction: column; gap: 12px; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 14px; padding: 22px 22px 20px; transition: border-color .25s, background .25s, transform .25s; position: relative; overflow: hidden;}
.rsg-page .case-reason::before{content: ""; position: absolute; top: 0; left: 0; right: 0; height: 3px; opacity: 0.85;}
.rsg-page .case-reason.r-amber::before{background: linear-gradient(90deg, #F59E0B, #FBBF24);}
.rsg-page .case-reason.r-blue::before{background: linear-gradient(90deg, #3B82F6, #60A5FA);}
.rsg-page .case-reason.r-green::before{background: linear-gradient(90deg, var(--green-500), #6EE7B7);}
.rsg-page .case-reason.r-amber:hover{border-color: rgba(245,158,11,0.35); background: rgba(245,158,11,0.05);}
.rsg-page .case-reason.r-blue:hover{border-color: rgba(59,130,246,0.35); background: rgba(59,130,246,0.05);}
.rsg-page .case-reason.r-green:hover{border-color: rgba(32,157,80,0.35); background: rgba(32,157,80,0.06);}
.rsg-page .case-reason:hover{transform: translateY(-3px);}
.rsg-page .case-reason .cr-icon{width: 48px; height: 48px; border-radius: 14px; color: #fff; display: flex; align-items: center; justify-content: center; flex-shrink: 0;}
.rsg-page .case-reason.r-amber .cr-icon{background: linear-gradient(135deg, #F59E0B, #D97706); box-shadow: 0 8px 20px rgba(245,158,11,0.30);}
.rsg-page .case-reason.r-blue .cr-icon{background: linear-gradient(135deg, #3B82F6, #1D4ED8); box-shadow: 0 8px 20px rgba(59,130,246,0.30);}
.rsg-page .case-reason.r-green .cr-icon{background: linear-gradient(135deg, var(--green-500), var(--green-700)); box-shadow: 0 8px 20px rgba(32,157,80,0.30);}
.rsg-page .case-reason .cr-icon svg{width: 24px; height: 24px;}
.rsg-page .case-reason .cr-body strong{display: block; color: #fff; font-family: var(--font-display); font-size: 16px; font-weight: 800; margin-bottom: 6px; letter-spacing: -0.005em;}
.rsg-page .case-reason .cr-body p{margin: 0; color: rgba(255,255,255,0.75); font-size: 13.5px; line-height: 1.55;}
.rsg-page .case-dashboard{position: relative; background: #fff; border-radius: 16px; overflow: hidden; box-shadow: 0 24px 60px rgba(0,0,0,0.40), 0 0 0 1px rgba(255,255,255,0.10);}
.rsg-page .case-dashboard-bar{display: flex; align-items: center; justify-content: space-between; padding: 12px 16px; background: #F8FAFC; border-bottom: 1px solid #E2E8F0;}
.rsg-page .case-dashboard-bar .dash-dots{display: flex; gap: 6px;}
.rsg-page .case-dashboard-bar .dash-dots span{width: 10px; height: 10px; border-radius: 50%;}
.rsg-page .case-dashboard-bar .dash-dots .d1{background: #FF5F56;}
.rsg-page .case-dashboard-bar .dash-dots .d2{background: #FFBD2E;}
.rsg-page .case-dashboard-bar .dash-dots .d3{background: #27C93F;}
.rsg-page .case-dashboard-bar .dash-label{font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.14em; text-transform: uppercase; color: #64748B; font-weight: 700;}
.rsg-page .case-dashboard-bar .dash-live{display: inline-flex; align-items: center; gap: 6px; font-family: var(--font-mono); font-size: 9px; letter-spacing: 0.14em; text-transform: uppercase; color: #16A34A; font-weight: 700;}
.rsg-page .case-dashboard-bar .dash-live::before{content: ""; width: 6px; height: 6px; border-radius: 50%; background: #16A34A; box-shadow: 0 0 8px #16A34A; animation: dashPulse 2s infinite;}
.rsg-page .case-dashboard img{display: block; width: 100%; height: auto;}
.rsg-page .case-totals{position: relative; margin-top: 48px; padding: 32px 36px; background: linear-gradient(135deg, rgba(255,255,255,0.04), rgba(32,157,80,0.05)); border: 1px solid rgba(255,255,255,0.10); border-radius: 20px; overflow: hidden;}
.rsg-page .case-totals::before{content: ""; position: absolute; bottom: -120px; right: -120px; width: 360px; height: 360px; border-radius: 50%; background: radial-gradient(circle, rgba(32,157,80,0.16), transparent 65%); pointer-events: none;}
.rsg-page .case-totals-head{display: flex; align-items: center; gap: 16px; margin-bottom: 24px; padding-bottom: 20px; border-bottom: 1px solid rgba(255,255,255,0.10); position: relative; z-index: 1;}
.rsg-page .case-totals-head .ct-tag{display: inline-flex; align-items: center; gap: 8px; background: rgba(32,157,80,0.18); color: var(--green-500); padding: 8px 16px; border-radius: 999px; font-family: var(--font-mono); font-size: 10.5px; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 700; border: 1px solid rgba(32,157,80,0.30);}
.rsg-page .case-totals-head .ct-tag svg{width: 12px; height: 12px;}
.rsg-page .case-totals-grid{display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; position: relative; z-index: 1; margin-bottom: 24px;}
.rsg-page .case-total-card{position: relative; padding: 20px; border-radius: 14px; background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.10); display: flex; flex-direction: column; gap: 8px; transition: transform .25s, border-color .25s;}
.rsg-page .case-total-card:hover{transform: translateY(-3px); border-color: rgba(32,157,80,0.30);}
.rsg-page .case-total-card .ct-icon{width: 36px; height: 36px; border-radius: 10px; background: rgba(32,157,80,0.18); color: var(--green-500); display: flex; align-items: center; justify-content: center; margin-bottom: 4px;}
.rsg-page .case-total-card .ct-icon svg{width: 18px; height: 18px;}
.rsg-page .case-total-card .ct-num{font-family: var(--font-display); font-size: clamp(26px, 2.5vw, 32px); font-weight: 800; line-height: 1; letter-spacing: -0.02em; color: #fff;}
.rsg-page .case-total-card .ct-lbl{font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.14em; text-transform: uppercase; color: rgba(255,255,255,0.65); font-weight: 700;}
.rsg-page .case-totals-summary{position: relative; z-index: 1; padding-top: 20px; border-top: 1px solid rgba(255,255,255,0.10); color: rgba(255,255,255,0.85); font-size: 14.5px; line-height: 1.65; margin: 0;}
.rsg-page .case-totals-summary strong{color: #fff; font-weight: 700;}
@media (max-width: 880px){.rsg-page .case-feature-v2{grid-template-columns: 1fr; gap: 32px;}}
@media (max-width: 880px){.rsg-page .case-reasons{grid-template-columns: 1fr;}}
@media (max-width: 880px){.rsg-page .case-roi-reveal{grid-template-columns: 1fr; padding: 24px;}}
@media (max-width: 880px){.rsg-page .case-roi-reveal .roi-arrow{transform: rotate(90deg); margin: 0 auto;}}
@media (max-width: 880px){.rsg-page .case-totals-grid{grid-template-columns: repeat(2, 1fr);}}
@media (max-width: 640px){.rsg-page .case-chips{grid-template-columns: 1fr;}}
@media (max-width: 640px){.rsg-page .case-totals-grid{grid-template-columns: 1fr;}}
.rsg-page .gsc-head{display: flex; justify-content: space-between; align-items: center; padding-bottom: 14px; border-bottom: 1px solid var(--line-2); margin-bottom: 18px;}
.rsg-page .gsc-head strong{font-family: var(--font-display); font-weight: 700; font-size: 16px; color: var(--ink-900);}
.rsg-page .gsc-range{font-family: var(--font-mono); font-size: 11px; letter-spacing: 0.06em; color: var(--ink-500); padding: 4px 10px; background: var(--paper-soft); border-radius: 6px; font-weight: 600;}
.rsg-page .gsc-tiles{display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin-bottom: 18px;}
.rsg-page .gsc-tile{padding: 12px; border-radius: 10px; color: #fff;}
.rsg-page .gsc-tile span{display: block; font-family: var(--font-mono); font-size: 9px; letter-spacing: 0.08em; text-transform: uppercase; opacity: 0.92; margin-bottom: 6px; font-weight: 700;}
.rsg-page .gsc-tile strong{display: block; font-family: var(--font-display); font-size: 22px; font-weight: 800;}
.rsg-page .gsc-tile.blue{background: linear-gradient(135deg, #4285F4, #1E5BC4);}
.rsg-page .gsc-tile.purple{background: linear-gradient(135deg, #8B5CF6, #6D3FD6);}
.rsg-page .gsc-tile.green{background: linear-gradient(135deg, #22C55E, var(--green-700));}
.rsg-page .gsc-tile.orange{background: linear-gradient(135deg, var(--orange-500), #C46E1A);}
.rsg-page .gsc-chart{position: relative;}
.rsg-page .gsc-chart svg{width: 100%; height: 180px; display: block;}
.rsg-page .gsc-axis{display: flex; justify-content: space-between; padding-top: 6px; font-family: var(--font-mono); font-size: 10px; color: var(--ink-500); font-weight: 600;}
.rsg-page .gsc-legend{display: flex; gap: 16px; flex-wrap: wrap; margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--line-2);}
.rsg-page .gsc-legend span{display: inline-flex; align-items: center; gap: 6px; font-family: var(--font-mono); font-size: 11px; color: var(--ink-700); font-weight: 600;}
.rsg-page .gsc-legend i{width: 12px; height: 3px; border-radius: 2px;}
/* ============================================================
   OPS GRID (Pattern 23)
   ============================================================ */
.rsg-page .ops-strip{text-align: left;}
.rsg-page .ops-status{background: #000; color: #fff; padding: 12px 22px; border-radius: 999px; display: inline-flex; align-items: center; gap: 14px; font-family: var(--font-mono); font-size: 11px; letter-spacing: 0.1em; text-transform: uppercase; font-weight: 600; margin: 0 auto 32px;}
.rsg-page .ops-status .live{display: inline-flex; align-items: center; gap: 6px;}
.rsg-page .ops-status .live i{width: 7px; height: 7px; border-radius: 50%; background: var(--green-500); animation: pulse 2s infinite;}
.rsg-page .ops-grid{display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--grid-gap); text-align: left;}
.rsg-page .ops-col{background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: var(--card-pad-lg);}
.rsg-page .oc-tag{display: inline-block; background: var(--green-50); color: var(--green-700); padding: 5px 12px; border-radius: 999px; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.1em; text-transform: uppercase; font-weight: 700; margin-bottom: 12px;}
.rsg-page .ops-col h3{font-size: 17px; margin-bottom: 18px; line-height: 1.35;}
.rsg-page .ops-col ul{list-style: none; padding: 0; margin: 0 0 16px;}
.rsg-page .ops-col li{padding: 14px 0; border-top: 1px solid var(--line-2); font-size: 14px; color: var(--ink-2); line-height: 1.6;}
.rsg-page .ops-col li:first-child{border-top: 0; padding-top: 0;}
.rsg-page .ops-col li strong{color: var(--ink-900);}
/* High-budget exception callout (premium dark card with stat band + pills) */
.rsg-page .hb-callout{position: relative; background: var(--dark-grad); color: #fff; border-radius: 20px; padding: 32px 36px; max-width: none; margin: 40px 0 0; overflow: hidden; border: 1px solid rgba(255,255,255,0.08); box-shadow: 0 24px 60px rgba(0,0,0,0.30);}
.rsg-page .hb-callout::before{content: ""; position: absolute; top: -120px; right: -120px; width: 360px; height: 360px; border-radius: 50%; background: radial-gradient(circle, rgba(32,157,80,0.20), transparent 65%); pointer-events: none;}
.rsg-page .hb-callout::after{content: ""; position: absolute; bottom: -100px; left: -100px; width: 260px; height: 260px; border-radius: 50%; background: radial-gradient(circle, rgba(32,157,80,0.10), transparent 65%); pointer-events: none;}
.rsg-page .hb-decoration{position: absolute; top: 28px; right: 32px; display: flex; gap: 8px; z-index: 1;}
.rsg-page .hb-decoration .hb-dot{width: 8px; height: 8px; border-radius: 50%; background: var(--green-500); box-shadow: 0 0 12px rgba(32,157,80,0.6);}
.rsg-page .hb-decoration .hb-dot.d2{background: rgba(32,157,80,0.6); box-shadow: 0 0 8px rgba(32,157,80,0.4);}
.rsg-page .hb-decoration .hb-dot.d3{background: rgba(255,255,255,0.3); box-shadow: none;}
.rsg-page .hb-tag{display: inline-flex; align-items: center; gap: 8px; background: rgba(32,157,80,0.18); color: var(--green-500); padding: 6px 14px; border-radius: 999px; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 700; border: 1px solid rgba(32,157,80,0.30); margin-bottom: 18px; position: relative; z-index: 2;}
.rsg-page .hb-tag svg{width: 12px; height: 12px; color: #FFD60A;}
.rsg-page .hb-stat-band{display: grid; grid-template-columns: 1fr 48px 1fr; gap: 24px; align-items: center; padding: 22px 28px; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.10); border-radius: 14px; margin-bottom: 24px; position: relative; z-index: 2;}
.rsg-page .hb-big-stat{display: flex; flex-direction: column; gap: 4px;}
.rsg-page .hb-big-num{font-family: var(--font-display); font-size: clamp(26px, 3vw, 34px); font-weight: 800; color: #fff; letter-spacing: -0.02em; line-height: 1;}
.rsg-page .hb-big-stat.alt .hb-big-num{background: linear-gradient(135deg, var(--green-500), #6EE7B7); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;}
.rsg-page .hb-big-lbl{font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.14em; text-transform: uppercase; color: rgba(255,255,255,0.55); font-weight: 700;}
.rsg-page .hb-arrow{width: 44px; height: 44px; border-radius: 50%; background: var(--green-500); color: #fff; display: flex; align-items: center; justify-content: center; box-shadow: 0 10px 28px rgba(32,157,80,0.45); justify-self: center;}
.rsg-page .hb-arrow svg{width: 22px; height: 22px;}
.rsg-page .hb-body{position: relative; z-index: 2;}
.rsg-page .hb-body p{color: rgba(255,255,255,0.78); font-size: 14.5px; line-height: 1.7; margin: 0 0 14px;}
.rsg-page .hb-body p:last-child{margin-bottom: 0;}
.rsg-page .hb-body p strong{color: #fff; font-weight: 700;}
.rsg-page .hb-pills{display: flex; flex-wrap: wrap; gap: 10px; align-items: center;}
.rsg-page .hb-actions{display: flex; align-items: center; justify-content: space-between; gap: 18px; flex-wrap: wrap; margin-top: 22px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,0.10); position: relative; z-index: 2;}
.rsg-page .hb-cta-btn{display: inline-flex; align-items: center; padding: 10px 20px; background: var(--green-500); color: #fff; border-radius: 999px; text-decoration: none; font-family: var(--font-display); font-size: 13px; font-weight: 700; letter-spacing: 0.01em; line-height: 1.2; transition: background .2s, transform .2s; box-shadow: 0 6px 16px rgba(44,122,75,0.30); white-space: nowrap;}
.rsg-page .hb-cta-btn:hover{background: var(--green-600); transform: translateY(-1px);}
@media (max-width: 720px){.rsg-page .hb-actions{justify-content: flex-start;}}
@media (max-width: 720px){.rsg-page .hb-cta-btn{width: 100%; justify-content: center;}}
.rsg-page .hb-pill{display: inline-flex; align-items: center; gap: 10px; background: rgba(255,255,255,0.06); color: #fff; border: 1px solid rgba(255,255,255,0.12); padding: 8px 16px 8px 8px; border-radius: 999px; font-family: var(--font-display); font-size: 13px; font-weight: 700; transition: background .25s, border-color .25s;}
.rsg-page .hb-pill:hover{background: rgba(32,157,80,0.16); border-color: rgba(32,157,80,0.30);}
.rsg-page .hb-pill .hb-pill-num{width: 22px; height: 22px; border-radius: 50%; background: var(--green-500); color: #fff; display: inline-flex; align-items: center; justify-content: center; font-family: var(--font-mono); font-size: 10px; font-weight: 800;}
@media (max-width: 720px){.rsg-page .hb-callout{padding: 26px 22px;}}
@media (max-width: 720px){.rsg-page .hb-stat-band{grid-template-columns: 1fr; gap: 14px; padding: 18px;}}
@media (max-width: 720px){.rsg-page .hb-arrow{transform: rotate(90deg); margin: 0 auto; width: 36px; height: 36px;}}
@media (max-width: 720px){.rsg-page .hb-arrow svg{width: 18px; height: 18px;}}
@media (max-width: 720px){.rsg-page .hb-decoration{top: 18px; right: 18px;}}
/* Phase timeline (vertical numbered roadmap) */
.rsg-page .phase-timeline{position: relative; max-width: 980px; margin: 0 0 40px;}
.rsg-page .pt-row{display: grid; grid-template-columns: 60px 1fr; gap: 24px; position: relative; padding-bottom: 22px;}
.rsg-page .pt-row:last-child{padding-bottom: 0;}
.rsg-page .pt-num-col{position: relative; display: flex; justify-content: center;}
.rsg-page .pt-num{width: 48px; height: 48px; border-radius: 50%; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: flex; align-items: center; justify-content: center; font-family: var(--font-display); font-weight: 800; font-size: 15px; box-shadow: 0 8px 20px rgba(32,157,80,0.30), 0 0 0 5px rgba(32,157,80,0.10); position: relative; z-index: 2; flex-shrink: 0; height: 48px;}
.rsg-page .pt-num.dark{background: linear-gradient(135deg, var(--ink-900), #000); box-shadow: 0 8px 20px rgba(0,0,0,0.22), 0 0 0 5px rgba(0,0,0,0.08);}
.rsg-page .pt-line{position: absolute; top: 50px; bottom: -22px; left: 50%; transform: translateX(-50%); width: 2px; background: linear-gradient(180deg, rgba(32,157,80,0.40), var(--line-2)); z-index: 1;}
.rsg-page .pt-row:last-child .pt-line{display: none;}
.rsg-page .pt-card{background: var(--paper-soft); border: 1px solid var(--line-2); border-radius: 14px; padding: 20px 24px; transition: border-color .25s, transform .25s, box-shadow .25s;}
.rsg-page .pt-card:hover{border-color: rgba(32,157,80,0.30); box-shadow: 0 8px 24px rgba(0,0,0,0.06); transform: translateX(2px);}
.rsg-page .pt-card .pt-meta{display: inline-flex; align-items: center; gap: 10px; margin-bottom: 10px;}
.rsg-page .pt-card .pt-badge{display: inline-block; background: rgba(32,157,80,0.12); color: var(--green-700); padding: 4px 10px; border-radius: 6px; font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.14em; text-transform: uppercase; font-weight: 700;}
.rsg-page .pt-card h3{font-family: var(--font-display); font-size: 19px; font-weight: 800; color: var(--ink-900); margin: 0 0 10px; line-height: 1.3; letter-spacing: -0.005em;}
.rsg-page .pt-card p{margin: 0; font-size: 14px; color: var(--ink-2); line-height: 1.65;}
@media (max-width: 640px){.rsg-page .phase-timeline .pt-row{grid-template-columns: 48px 1fr; gap: 16px;}}
@media (max-width: 640px){.rsg-page .phase-timeline .pt-num{width: 40px; height: 40px; font-size: 13px;}}
@media (max-width: 640px){.rsg-page .phase-timeline .pt-card{padding: 16px 18px;}}
@media (max-width: 640px){.rsg-page .phase-timeline .pt-card h3{font-size: 16.5px;}}
@media (max-width: 640px){.rsg-page .phase-timeline .pt-line{top: 42px;}}
.rsg-page .oc-caption{display: block; padding-top: 14px; border-top: 1px solid var(--line-2); font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--ink-500); font-weight: 700;}
.rsg-page .oc-caption .dot-active{color: var(--green-500);}
/* ============================================================
   SCORE VISUALIZATION (Pattern 5)
   ============================================================ */
.rsg-page .score-viz{display: grid; grid-template-columns: 1fr 1fr; gap: 24px; max-width: 720px; margin: 0 auto 40px;}
.rsg-page .sv-side{background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 28px; text-align: center; display: flex; flex-direction: column; align-items: center; gap: 14px;}
.rsg-page .sv-side.green{border-top: 4px solid var(--green-500);}
.rsg-page .sv-side.red{border-top: 4px solid var(--red);}
.rsg-page .sv-num{width: 84px; height: 84px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-family: var(--font-display); font-size: 24px; font-weight: 800; color: #fff;}
.rsg-page .sv-side.green .sv-num{background: linear-gradient(135deg, var(--green-500), var(--green-700)); box-shadow: 0 8px 24px rgba(32,157,80,0.3);}
.rsg-page .sv-side.red .sv-num{background: linear-gradient(135deg, var(--red), #9F1219); box-shadow: 0 8px 24px rgba(200,32,43,0.3);}
.rsg-page .sv-side p{margin: 0; font-size: 14px; color: var(--ink-2);}
.rsg-page .sv-side p strong{display: block; color: var(--ink-900); margin-bottom: 4px; font-size: 16px;}
.rsg-page .verdict-wrap{position: relative;}
.rsg-page .verdict-grid{display: grid; grid-template-columns: 1fr 1fr; gap: 26px; position: relative; align-items: stretch;}
.rsg-page .verdict-grid::before{content: "VS"; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 54px; height: 54px; border-radius: 50%; background: #fff; border: 1.5px solid var(--line); box-shadow: 0 8px 22px rgba(0,0,0,0.14); display: flex; align-items: center; justify-content: center; font-family: var(--font-display); font-weight: 800; font-size: 13px; color: var(--ink-2); letter-spacing: 0.06em; z-index: 5;}
.rsg-page .verdict-col{display: flex; flex-direction: column; background: #fff; border: 1px solid var(--line); border-radius: 20px; padding: 0; position: relative; overflow: hidden; box-shadow: 0 10px 30px rgba(0,0,0,0.05); transition: transform .2s, box-shadow .2s;}
.rsg-page .verdict-col:hover{transform: translateY(-3px); box-shadow: 0 18px 42px rgba(0,0,0,0.10);}
.rsg-page .verdict-col.green{background: linear-gradient(170deg, #FFFFFF 0%, #F4FAF6 100%); border-color: rgba(44,122,75,0.20);}
.rsg-page .verdict-col.red{background: linear-gradient(170deg, #FFFFFF 0%, #FDF1F1 100%); border-color: rgba(200,32,43,0.18);}
.rsg-page .verdict-col::after{content: ""; position: absolute; top: 0; left: 0; right: 0; height: 4px; z-index: 1;}
.rsg-page .verdict-col.green::after{background: linear-gradient(90deg, var(--green-500), #6EE7B7);}
.rsg-page .verdict-col.red::after{background: linear-gradient(90deg, var(--red), #E66A6A);}
.rsg-page .verdict-col .vh-icon{position: absolute; top: 24px; right: 24px; width: 42px; height: 42px; border-radius: 12px; display: flex; align-items: center; justify-content: center; color: #fff; box-shadow: 0 8px 20px rgba(0,0,0,0.16); z-index: 2;}
.rsg-page .verdict-col.green .vh-icon{background: linear-gradient(135deg, var(--green-500), var(--green-600));}
.rsg-page .verdict-col.red .vh-icon{background: linear-gradient(135deg, #E0414C, var(--red));}
.rsg-page .verdict-col .vh-icon svg{width: 20px; height: 20px;}
.rsg-page .verdict-col header{padding: 26px 64px 18px 26px; border-bottom: 1px solid var(--line-2); margin-bottom: 0;}
.rsg-page .vh-tag{display: inline-block; padding: 5px 12px; border-radius: 999px; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.1em; text-transform: uppercase; font-weight: 700; margin-bottom: 10px;}
.rsg-page .verdict-col.green .vh-tag{background: var(--green-50); color: var(--green-700);}
.rsg-page .verdict-col.red .vh-tag{background: rgba(200,32,43,0.1); color: var(--red);}
.rsg-page .verdict-col h3{font-size: 18px; font-weight: 800; line-height: 1.3; margin: 0;}
.rsg-page .vc-items{display: flex; flex-direction: column; justify-content: center; flex: 1; padding: 6px 26px;}
.rsg-page .vc-item{display: grid; grid-template-columns: 38px 1fr; gap: 14px; padding: 15px 0; border-bottom: 1px solid var(--line-2); align-items: start;}
.rsg-page .vc-items .vc-item:last-child{border-bottom: 0;}
.rsg-page .vc-num{display: flex; align-items: center; justify-content: center; width: 38px; height: 38px; border-radius: 50%; font-family: var(--font-display); font-size: 14px; font-weight: 800; color: #fff; flex-shrink: 0;}
.rsg-page .verdict-col.green .vc-num{background: linear-gradient(135deg, var(--green-500), var(--green-600)); box-shadow: 0 6px 14px rgba(44,122,75,0.30);}
.rsg-page .verdict-col.red .vc-num{background: linear-gradient(135deg, #E0414C, var(--red)); box-shadow: 0 6px 14px rgba(200,32,43,0.28);}
.rsg-page .vc-body strong{display: block; font-family: var(--font-display); font-size: 14.5px; color: var(--ink-900); margin-bottom: 4px; line-height: 1.3;}
.rsg-page .vc-body p{margin: 0; font-size: 13px; line-height: 1.6; color: var(--ink-2);}
.rsg-page .vc-foot{display: flex; align-items: center; gap: 10px; margin-top: auto; padding: 15px 26px; border-top: 1px solid var(--line-2); font-size: 12.5px; font-weight: 600; font-style: italic;}
.rsg-page .vc-foot svg{width: 16px; height: 16px; flex-shrink: 0;}
.rsg-page .verdict-col.green .vc-foot{color: var(--green-700);}
.rsg-page .verdict-col.red .vc-foot{color: #B0303A;}
/* ============================================================
   PRICING (3-tier with featured Accelerate)
   ============================================================ */
.rsg-page .pricing-section{padding: var(--section-y) 0; background: var(--paper-soft);}
.rsg-page .pricing-includes{background: #fff; border-radius: 999px; padding: 14px 28px; display: inline-flex; align-items: center; gap: 18px; margin: 0 auto 40px; flex-wrap: wrap; justify-content: center; box-shadow: var(--shadow-md);}
.rsg-page .pricing-includes strong{font-family: var(--font-mono); font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--green-700); font-weight: 700;}
.rsg-page .pricing-includes span{font-family: var(--font-mono); font-size: 11px; color: var(--ink-700); display: inline-flex; align-items: center; gap: 6px;}
.rsg-page .pricing-includes span::before{content: "Ã¢Å“â€œ"; color: var(--green-500); font-weight: 700;}
.rsg-page .pricing-grid{display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--grid-gap); align-items: stretch;}
.rsg-page .pricing-card{background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: var(--card-pad-lg); display: flex; flex-direction: column; position: relative;}
.rsg-page .pricing-card.featured{background: #000; color: #fff; transform: translateY(-12px); box-shadow: var(--shadow-lg); border-color: rgba(255,255,255,0.1);}
.rsg-page .pricing-card.featured h3{color: #fff;}
.rsg-page .pricing-card.featured .price-amt{color: #fff;}
.rsg-page .pricing-card.featured .price-band, .rsg-page .pricing-card.featured .price-list li{color: rgba(255,255,255,0.8);}
.rsg-page .pricing-card.featured .price-list li::before{color: var(--green-500);}
.rsg-page .featured-badge{position: absolute; top: -14px; left: 50%; transform: translateX(-50%); background: var(--green-500); color: #fff; padding: 6px 14px; border-radius: 999px; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase; font-weight: 700;}
.rsg-page .price-tag{font-family: var(--font-mono); font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--green-700); font-weight: 700; margin-bottom: 10px;}
.rsg-page .pricing-card.featured .price-tag{color: var(--green-500);}
.rsg-page .pricing-card h3{font-size: 24px; margin-bottom: 6px;}
.rsg-page .price-band{font-family: var(--font-mono); font-size: 11px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--ink-500); margin-bottom: 18px;}
.rsg-page .price-amt{font-family: var(--font-display); font-size: 44px; font-weight: 800; line-height: 1; color: var(--ink-900); margin-bottom: 4px;}
.rsg-page .price-amt sub{font-size: 14px; font-weight: 500; color: var(--ink-500); margin-left: 2px; vertical-align: baseline;}
.rsg-page .price-desc{font-size: 13px; color: var(--ink-2); margin: 14px 0 20px; min-height: 38px;}
.rsg-page .pricing-card.featured .price-desc{color: rgba(255,255,255,0.75);}
.rsg-page .price-list{list-style: none; padding: 0; margin: 0 0 24px; flex: 1;}
.rsg-page .price-list li{padding: 8px 0 8px 24px; font-size: 13px; color: var(--ink-2); position: relative;}
.rsg-page .price-list li::before{content: "Ã¢Å“â€œ"; position: absolute; left: 0; color: var(--green-500); font-weight: 800;}
.rsg-page .price-list li strong{color: var(--ink-900);}
.rsg-page .pricing-card.featured .price-list li strong{color: #fff;}
/* Pricing v2 &mdash; full-content card layout matching live pricing page */
.rsg-page .pg-v2 .pricing-card{padding: 30px 28px; gap: 0;}
.rsg-page .pg-v2 .price-tier-name{display: block; font-family: var(--font-display); font-size: 13px; font-weight: 800; letter-spacing: 0.16em; text-transform: uppercase; color: var(--green-600); margin-bottom: 8px;}
.rsg-page .pg-v2 .pricing-card.featured .price-tier-name{color: var(--green-500);}
.rsg-page .pg-v2 .pricing-card:last-child .price-tier-name{color: var(--green-700);}
.rsg-page .pg-v2 .price-amt{font-family: var(--font-display); font-size: 44px; font-weight: 800; line-height: 1; color: var(--ink-900); margin: 0 0 18px; display: flex; align-items: baseline; gap: 4px;}
.rsg-page .pg-v2 .price-amt strong{font-weight: 800;}
.rsg-page .pg-v2 .price-amt span{font-size: 16px; font-weight: 500; color: var(--ink-500);}
.rsg-page .pg-v2 .pricing-card.featured .price-amt{color: #fff;}
.rsg-page .pg-v2 .pricing-card.featured .price-amt span{color: rgba(255,255,255,0.7);}
.rsg-page .pg-v2 .price-desc-lead{font-family: var(--font-display); font-size: 17px; font-weight: 700; line-height: 1.35; color: var(--ink-900); margin: 0 0 10px; letter-spacing: -0.005em;}
.rsg-page .pg-v2 .pricing-card.featured .price-desc-lead{color: #fff;}
.rsg-page .pg-v2 .price-desc{font-size: 13.5px; color: var(--ink-2); margin: 0 0 20px; line-height: 1.55; min-height: 0;}
.rsg-page .pg-v2 .price-list{margin: 0 0 18px;}
.rsg-page .pg-v2 .price-list li{padding: 6px 0 6px 24px; font-size: 13px; line-height: 1.5;}
.rsg-page .pg-v2 .price-list li.pl-highlight{color: var(--green-600); font-weight: 700;}
.rsg-page .pg-v2 .pricing-card.featured .price-list li.pl-highlight{color: var(--green-500);}
.rsg-page .pg-v2 .price-baseline{display: inline-flex; align-items: center; gap: 6px; padding: 0 0 18px; border-top: 1px solid var(--line); padding-top: 16px; margin: 0 0 18px; font-family: var(--font-body); font-size: 12px; font-style: italic; color: var(--ink-500); cursor: pointer;}
.rsg-page .pg-v2 .price-baseline svg{width: 14px; height: 14px;}
.rsg-page .pg-v2 .pricing-card.featured .price-baseline{border-top-color: rgba(255,255,255,0.12); color: rgba(255,255,255,0.6);}
.rsg-page .pg-v2 .price-cta{margin-top: auto; width: 100%; justify-content: center; text-align: center;}
.rsg-page .btn-amber{display: inline-flex; align-items: center; justify-content: center; padding: 14px 22px; background: linear-gradient(135deg, #F5B84D, #DC9632); color: #fff; border: 0; border-radius: 999px; font-family: var(--font-display); font-size: 14px; font-weight: 700; text-decoration: none; letter-spacing: 0.01em; transition: transform .2s, box-shadow .2s; box-shadow: 0 10px 24px rgba(220,150,50,0.32);}
.rsg-page .btn-amber:hover{transform: translateY(-1px); box-shadow: 0 14px 32px rgba(220,150,50,0.42);}
/* Featured (Accelerate) card &mdash; force all content to render white per user request */
.rsg-page .pg-v2 .pricing-card.featured{padding-top: 30px;}
.rsg-page .pg-v2 .pricing-card.featured .price-amt strong{color: #FFFFFF;}
.rsg-page .pg-v2 .pricing-card.featured .price-amt span{color: rgba(255,255,255,0.85);}
.rsg-page .pg-v2 .pricing-card.featured .price-desc-lead{color: #FFFFFF;}
.rsg-page .pg-v2 .pricing-card.featured .price-desc{color: rgba(255,255,255,0.85);}
.rsg-page .pg-v2 .pricing-card.featured .price-list li{color: rgba(255,255,255,0.92);}
.rsg-page .pg-v2 .pricing-card.featured .price-list li.pl-highlight{color: #FFFFFF; font-weight: 700;}
.rsg-page .pg-v2 .pricing-card.featured .price-list li::before{color: #FFFFFF;}
.rsg-page .pg-v2 .pricing-card.featured .price-tier-name{color: var(--green-500);}
.rsg-page .pg-v2 .pricing-card.featured .price-baseline{color: rgba(255,255,255,0.7); border-top-color: rgba(255,255,255,0.18);}
.rsg-page .price-cta{width: 100%;}
.rsg-page .price-footnote{text-align: left; max-width: 700px; margin: 32px 0 0; font-size: 12px; color: var(--ink-500); font-style: italic;}
/* ============================================================
   MUTUAL FIT (3-column with Pact black card)
   ============================================================ */
.rsg-page .fit-grid{display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--grid-gap);}
.rsg-page .fit-col{background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: var(--card-pad-lg); position: relative;}
.rsg-page .fit-col.pact{background: var(--dark-grad); color: #fff; border-color: rgba(255,255,255,0.1);}
.rsg-page .fit-col.pact h3{color: #fff;}
.rsg-page .fit-col header{padding: 4px 0 16px; border-bottom: 1px solid var(--line-2); margin-bottom: 16px; padding-left: 52px;}
.rsg-page .fit-col.pact header{border-bottom-color: rgba(255,255,255,0.12);}
.rsg-page .fit-col .fit-icon{position: absolute; top: var(--card-pad-lg); left: var(--card-pad-lg); width: 38px; height: 38px; border-radius: 10px; display: flex; align-items: center; justify-content: center; color: #fff;}
.rsg-page .fit-col .fit-icon svg{width: 18px; height: 18px;}
.rsg-page .fit-col.notfit .fit-icon{background: var(--red);}
.rsg-page .fit-col.builtfor .fit-icon{background: var(--green-500);}
.rsg-page .fit-col.pact .fit-icon{background: var(--green-500); box-shadow: 0 0 0 4px rgba(32,157,80,0.18);}
.rsg-page .fit-col .fit-tag{position: absolute; top: calc(var(--card-pad-lg) + 6px); right: var(--card-pad-lg); padding: 5px 12px; border-radius: 999px; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.1em; text-transform: uppercase; font-weight: 700; background: var(--paper-soft); color: var(--ink-700);}
.rsg-page .fit-col.notfit .fit-tag{background: rgba(200,32,43,0.1); color: var(--red);}
.rsg-page .fit-col.builtfor .fit-tag{background: var(--green-50); color: var(--green-700);}
.rsg-page .fit-col.pact .fit-tag{background: rgba(231,138,44,0.18); color: var(--orange-500);}
.rsg-page .fit-col h3{font-size: 17px; line-height: 1.35;}
.rsg-page .fit-col ul{list-style: none; padding: 0; margin: 0;}
.rsg-page .fit-col li{padding: 12px 0 12px 20px; font-size: 13px; line-height: 1.6; position: relative; border-bottom: 1px solid var(--line-2);}
.rsg-page .fit-col.pact li{color: rgba(255,255,255,0.82); border-bottom-color: rgba(255,255,255,0.08);}
.rsg-page .fit-col li:last-child{border-bottom: 0;}
.rsg-page .fit-col li::before{content: ""; position: absolute; left: 0; top: 18px; width: 8px; height: 8px; border-radius: 50%;}
.rsg-page .fit-col.notfit li::before{background: var(--red);}
.rsg-page .fit-col.builtfor li::before{background: var(--green-500);}
.rsg-page .fit-col.pact li::before{background: var(--green-500); box-shadow: 0 0 12px rgba(32,157,80,0.6);}
/* ============================================================
   TESTIMONIALS (Pattern 9)
   ============================================================ */
.rsg-page .testimonials{padding: var(--section-y) 0;}
.rsg-page .test-card{position: relative; max-width: 920px; margin: 0 auto; background: #fff; border-radius: var(--radius-lg); padding: 48px 64px; box-shadow: var(--shadow-md);}
.rsg-page .test-grid{display: grid; grid-template-columns: 140px 1fr; gap: 36px; align-items: start;}
.rsg-page .test-photo{width: 140px; height: 140px; border-radius: 50%; background: var(--paper-soft); border: 3px solid var(--green-500); overflow: hidden; display: flex; align-items: center; justify-content: center; flex-shrink: 0;}
.rsg-page .test-photo-fallback{font-family: var(--font-display); font-size: 42px; font-weight: 800; color: var(--green-500);}
.rsg-page .test-stars{color: #FBBF24; font-size: 22px; letter-spacing: 2px; margin-bottom: 14px;}
.rsg-page .test-quote{font-size: 17px; color: var(--ink-2); line-height: 1.65; margin: 0 0 14px;}
.rsg-page .test-greenline{font-size: 17px; line-height: 1.65; color: var(--green-700); font-weight: 600; margin: 0 0 18px; background: var(--green-50); padding: 10px 14px; border-radius: 8px; border-left: 3px solid var(--green-500);}
.rsg-page .test-attrib strong{display: block; font-size: 16px; color: var(--ink-900);}
.rsg-page .test-attrib span{font-size: 13px; color: var(--ink-500);}
.rsg-page .test-arrow{position: absolute; top: 50%; transform: translateY(-50%); width: 40px; height: 40px; border-radius: 50%; background: var(--paper-soft); border: 0; cursor: pointer; font-size: 18px; color: var(--ink-700);}
.rsg-page .test-arrow.left{left: -20px;}
.rsg-page .test-arrow.right{right: -20px;}
/* New testimonials carousel (4-slide) */
.rsg-page .tc-carousel{position: relative; max-width: 1080px; margin: 0 auto; padding: 0 56px;}
.rsg-page .tc-viewport{position: relative; overflow: hidden; border-radius: 22px;}
.rsg-page .tc-track{display: flex; transition: transform .5s cubic-bezier(0.22, 1, 0.36, 1);}
.rsg-page .tc-slide{min-width: 100%; display: grid; grid-template-columns: 1fr 1.1fr; gap: 36px; padding: 36px 40px; background: var(--paper-soft); align-items: center;}
.rsg-page .tc-content{display: flex; flex-direction: column; gap: 18px;}
.rsg-page .tc-quote-normal{font-size: 14.5px; line-height: 1.65; color: var(--ink-2); margin: 0;}
.rsg-page .tc-quote-highlight{font-family: var(--font-display); font-size: 17px; line-height: 1.55; color: var(--green-700); font-weight: 700; margin: 0; letter-spacing: -0.005em;}
.rsg-page .needs-source{background: rgba(231,138,44,0.08); border: 1px dashed var(--orange-500); padding: 16px 18px; border-radius: var(--radius-md); font-family: var(--font-mono); font-size: 12px; color: var(--orange-500); font-style: normal; line-height: 1.5; letter-spacing: 0.02em;}
.rsg-page .tc-attrib{display: inline-flex; align-items: center; gap: 14px; background: #fff; border: 1px solid var(--line); border-radius: 999px; padding: 8px 22px 8px 8px; margin-top: 4px; align-self: flex-start; box-shadow: 0 6px 16px rgba(0,0,0,0.06);}
.rsg-page .tc-avatar{width: 50px; height: 50px; border-radius: 50%; overflow: hidden; flex-shrink: 0; display: flex; align-items: center; justify-content: center; color: #fff; font-family: var(--font-display); font-weight: 800; font-size: 16px;}
.rsg-page .tc-avatar img{width: 100%; height: 100%; object-fit: cover;}
.rsg-page .tc-avatar.av-1{background: linear-gradient(135deg, #3B82F6, #1D4ED8);}
.rsg-page .tc-avatar.av-2{background: linear-gradient(135deg, #F5B84D, #DC9632);}
.rsg-page .tc-avatar.av-3{background: linear-gradient(135deg, var(--green-500), var(--green-700));}
.rsg-page .tc-avatar.av-4{background: linear-gradient(135deg, #EF4444, #B91C1C);}
.rsg-page .tc-attrib-text{display: flex; flex-direction: column; gap: 2px;}
.rsg-page .tc-attrib-text strong{color: var(--ink-900); font-family: var(--font-display); font-size: 17px; font-weight: 800; letter-spacing: -0.005em; line-height: 1.2;}
.rsg-page .tc-attrib-text span{color: var(--green-700); font-size: 12.5px; font-weight: 600;}
.rsg-page .tc-hero{position: relative; aspect-ratio: 4/3; border-radius: 18px; overflow: hidden; background: linear-gradient(135deg, #E2E8F0, #CBD5E1); box-shadow: 0 16px 40px rgba(0,0,0,0.10);}
.rsg-page .tc-hero img{width: 100%; height: 100%; object-fit: cover; display: block;}
.rsg-page .tc-arrow{position: absolute !important; top: 50% !important; transform: translateY(-50%) !important; width: 44px !important; height: 44px !important; min-width: 44px !important; padding: 0 !important; border-radius: 50% !important; background: #FFFFFF !important; color: #475569 !important; border: 1px solid #E5E7EB !important; cursor: pointer !important; display: flex !important; align-items: center !important; justify-content: center !important; box-shadow: 0 6px 16px rgba(0,0,0,0.08) !important; transition: background .2s, transform .2s, box-shadow .2s !important; z-index: 2 !important; appearance: none !important; -webkit-appearance: none !important; text-decoration: none !important; font: inherit !important; line-height: 1 !important;}
.rsg-page .tc-arrow:hover{background: #2C7A4B !important; border-color: #2C7A4B !important; color: #FFFFFF !important; transform: translateY(-50%) scale(1.05) !important; box-shadow: 0 10px 24px rgba(44,122,75,0.25) !important;}
.rsg-page .tc-arrow:hover svg, .rsg-page .tc-arrow:hover svg *{color: #FFFFFF !important; stroke: #FFFFFF !important;}
.rsg-page .tc-arrow svg{width: 18px !important; height: 18px !important; display: block !important; color: #475569 !important; stroke: #475569 !important; fill: none !important; flex-shrink: 0 !important; pointer-events: none !important;}
.rsg-page .tc-arrow.left{left: 0;}
.rsg-page .tc-arrow.right{right: 0;}
.rsg-page .tc-dots{display: flex; justify-content: center; gap: 8px; margin-top: 24px;}
.rsg-page .tc-dot{width: 28px; height: 6px; border-radius: 999px; background: var(--line); border: 0; cursor: pointer; padding: 0; transition: background .25s, width .25s;}
.rsg-page .tc-dot.active{background: var(--green-500); width: 44px;}
.rsg-page .tc-dot:hover{background: var(--green-700);}
@media (max-width: 880px){.rsg-page .tc-carousel{padding: 0 12px;}}
@media (max-width: 880px){.rsg-page .tc-slide{grid-template-columns: 1fr; padding: 28px 22px; gap: 24px;}}
@media (max-width: 880px){.rsg-page .tc-arrow{top: auto !important; bottom: -52px !important; transform: none !important;}}
@media (max-width: 880px){.rsg-page .tc-arrow:hover{transform: scale(1.05) !important;}}
@media (max-width: 880px){.rsg-page .tc-arrow.left{left: calc(50% - 56px);}}
@media (max-width: 880px){.rsg-page .tc-arrow.right{right: calc(50% - 56px);}}
@media (max-width: 880px){.rsg-page .tc-dots{margin-top: 60px;}}
.rsg-page .test-dots{display: flex; gap: 6px; justify-content: center; margin-top: 28px;}
.rsg-page .test-dots .dot{width: 6px; height: 6px; border-radius: 50%; background: var(--line);}
.rsg-page .test-dots .dot.active{background: var(--green-500); width: 22px; border-radius: 3px;}
/* ============================================================
   FAQ
   ============================================================ */
.rsg-page .faq{padding: var(--section-y) 0; background: var(--paper);}
.rsg-page .faq-list{max-width: 880px; margin: 0 auto; display: grid; gap: 12px;}
.rsg-page .faq-item{background: #fff; border: 1px solid var(--line); border-radius: var(--radius-md); overflow: hidden;}
.rsg-page .faq-item details summary{padding: 22px 28px; cursor: pointer; list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 18px; font-family: var(--font-display); font-size: 13px; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; color: var(--ink-900);}
.rsg-page .faq-item details summary::-webkit-details-marker{display: none;}
.rsg-page .faq-item details summary::after{content: ""; width: 28px; height: 28px; border-radius: 50%; background: var(--green-50); flex-shrink: 0; position: relative; transition: transform .2s;}
.rsg-page .faq-item details summary{position: relative;}
.rsg-page .faq-item details summary::before{content: ""; position: absolute; right: 36px; width: 10px; height: 10px; border-right: 2px solid var(--green-600); border-bottom: 2px solid var(--green-600); transform: translateY(-3px) rotate(45deg); transition: transform .2s; z-index: 2;}
.rsg-page .faq-item details[open] summary::before{transform: translateY(3px) rotate(-135deg);}
.rsg-page .faq-item details .faq-body{padding: 0 28px 24px; font-size: 14px; color: var(--ink-2); line-height: 1.7; text-transform: none; font-family: var(--font-body);}
.rsg-page .faq-item details .faq-body p{margin: 0 0 12px;}
.rsg-page .faq-item details .faq-body p:last-child{margin: 0;}
/* FAQ v2 - 2-col header with callout + numbered list */
.rsg-page .faq-v2 .faq-top{display: grid; grid-template-columns: 1fr 380px; gap: 56px; align-items: start; margin-bottom: 44px;}
.rsg-page .faq-v2 .faq-top-left .eyebrow{display: inline-flex; align-items: center; gap: 8px; font-size: 12px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--green-600); font-family: var(--font-display); margin-bottom: 14px;}
.rsg-page .faq-v2 .faq-top-left .eyebrow::before{content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--green-500);}
.rsg-page .faq-v2 .faq-top-left h2{font-family: var(--font-display); font-size: clamp(34px, 4vw, 50px); font-weight: 800; letter-spacing: -0.02em; line-height: 1.08; color: var(--ink-900); margin: 0 0 16px; max-width: 620px; text-wrap: balance;}
.rsg-page .faq-v2 .faq-top-left .lede{font-size: 15px; color: var(--ink-2); line-height: 1.55; max-width: 520px; margin: 0; text-wrap: pretty;}
.rsg-page .faq-v2 .faq-cta{background: rgba(44, 122, 75, 0.07); border: 1px solid rgba(44, 122, 75, 0.18); border-radius: 16px; padding: 22px 24px;}
.rsg-page .faq-v2 .faq-cta-icon{width: 40px; height: 40px; border-radius: 10px; background: linear-gradient(135deg, var(--green-500), var(--green-700)); display: flex; align-items: center; justify-content: center; color: #fff; margin-bottom: 14px; box-shadow: 0 6px 14px rgba(44,122,75,0.22);}
.rsg-page .faq-v2 .faq-cta-eyebrow{font-size: 11px; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--green-700); font-family: var(--font-display); margin-bottom: 6px;}
.rsg-page .faq-v2 .faq-cta-body{font-size: 13.5px; color: var(--ink-2); line-height: 1.55; margin: 0 0 16px;}
.rsg-page .faq-v2 .faq-cta-btn{display: inline-flex; align-items: center; gap: 10px; padding: 6px 7px 6px 18px; background: #fff; border: 1.5px solid var(--ink-900); border-radius: 999px; text-decoration: none; font-family: var(--font-display); font-size: 13px; font-weight: 700; color: var(--ink-900); transition: background .2s, color .2s;}
.rsg-page .faq-v2 .faq-cta-btn:hover{background: var(--ink-900); color: #fff;}
.rsg-page .faq-v2 .faq-cta-btn .arrow{width: 28px; height: 28px; border-radius: 50%; background: var(--ink-900); display: flex; align-items: center; justify-content: center; color: #fff; transition: background .2s;}
.rsg-page .faq-v2 .faq-cta-btn:hover .arrow{background: var(--green-500);}
.rsg-page .faq-v2 .faq-list{max-width: none; margin: 0; gap: 10px;}
.rsg-page .faq-v2 .faq-item{border-radius: 14px;}
.rsg-page .faq-v2 .faq-item details summary{display: grid; grid-template-columns: 44px 1fr 32px; align-items: center; gap: 16px; padding: 22px 28px;}
.rsg-page .faq-v2 .faq-item details summary::before, .rsg-page .faq-v2 .faq-item details summary::after{display: none;}
.rsg-page .faq-v2 .faq-item .faq-num{font-family: var(--font-display); font-size: 13px; font-weight: 800; color: var(--green-600); letter-spacing: 0.04em;}
.rsg-page .faq-v2 .faq-item .faq-q{font-family: var(--font-display); font-size: 13px; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; color: var(--ink-900); line-height: 1.4;}
.rsg-page .faq-v2 .faq-item .faq-chevron{width: 28px; height: 28px; border-radius: 50%; background: var(--green-50); display: flex; align-items: center; justify-content: center; flex-shrink: 0; transition: transform .25s; justify-self: end;}
.rsg-page .faq-v2 .faq-item .faq-chevron svg{width: 12px; height: 12px; color: var(--green-600);}
.rsg-page .faq-v2 .faq-item details[open] .faq-chevron{transform: rotate(180deg);}
.rsg-page .faq-v2 .faq-item details .faq-body{padding: 0 28px 24px 86px;}
@media (max-width: 880px){.rsg-page .faq-v2 .faq-top{grid-template-columns: 1fr; gap: 24px; margin-bottom: 32px;}}
@media (max-width: 880px){.rsg-page .faq-v2 .faq-item details summary{grid-template-columns: 36px 1fr 28px; padding: 18px 20px; gap: 12px;}}
@media (max-width: 880px){.rsg-page .faq-v2 .faq-item details .faq-body{padding: 0 20px 20px;}}
/* ============================================================
   FINAL CTA + CITY FOOTER + SITE FOOTER
   ============================================================ */
.rsg-page .final-cta{background: var(--dark-grad); color: #fff; padding: 96px 0; text-align: center; position: relative; overflow: hidden;}
.rsg-page .final-cta h2{color: #fff; margin: 0 0 18px; font-size: clamp(36px, 4.6vw, 56px); font-weight: 800; letter-spacing: -0.02em; line-height: 1.08; max-width: 820px; margin-left: auto; margin-right: auto; text-wrap: balance;}
.rsg-page .final-cta p.fc-lede{color: rgba(255,255,255,0.78); max-width: 640px; margin: 0 auto 32px; font-size: 17px; line-height: 1.55; text-wrap: pretty;}
.rsg-page .final-cta .container{position: relative; z-index: 2;}
.rsg-page .final-cta::before{content: ""; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 800px; height: 800px; background: radial-gradient(circle at center, rgba(44,122,75,0.18) 0%, rgba(44,122,75,0) 60%); pointer-events: none; z-index: 1;}
.rsg-page .final-cta .eyebrow{display: inline-flex; align-items: center; gap: 8px; color: #4ade80; font-size: 12px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; font-family: var(--font-display); margin: 0 0 18px; justify-content: center;}
.rsg-page .final-cta .eyebrow::before{content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--green-500);}
.rsg-page .final-cta .fc-sub{color: rgba(255,255,255,0.55); font-size: 13.5px; font-style: italic; margin: 22px 0 0; line-height: 1.5;}
.rsg-page .final-cta .fc-sub em{color: rgba(255,255,255,0.85); font-style: italic; font-weight: 600;}
.rsg-page .city-footer-wrap{background: linear-gradient(180deg, var(--dark-grad) 50%, var(--paper) 50%); padding: 0 var(--gutter);}
.rsg-page .city-footer{max-width: 1200px; margin: 0 auto; background: #fff; border-radius: var(--radius-lg); padding: 56px 48px; box-shadow: var(--shadow-lg); transform: translateY(-60px);}
.rsg-page .city-footer h2{font-size: clamp(24px, 3vw, 32px); margin-bottom: 8px;}
.rsg-page .city-footer .cf-cap{font-size: 14px; color: var(--ink-500); margin-bottom: 32px;}
.rsg-page .city-grid{display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px 24px;}
.rsg-page .city-grid a{font-family: var(--font-display); font-size: 13px; color: var(--ink-700); font-weight: 500; padding: 4px 0;}
.rsg-page .city-grid a:hover{color: var(--green-600);}
.rsg-page .site-footer{background: var(--dark-grad); color: rgba(255,255,255,0.78); padding: 60px 0 24px; margin-top: -60px;}
.rsg-page .site-footer .footer-grid{display: grid; grid-template-columns: 1.5fr 1fr 1fr 1.2fr; gap: 32px; padding-bottom: 36px; border-bottom: 1px solid rgba(255,255,255,0.1);}
.rsg-page .site-footer h5{color: #fff; font-family: var(--font-display); font-size: 14px; letter-spacing: 0.04em; margin-bottom: 14px; text-transform: uppercase; font-weight: 700;}
.rsg-page .site-footer ul{list-style: none; padding: 0; margin: 0;}
.rsg-page .site-footer ul li{padding: 4px 0;}
.rsg-page .site-footer ul a{font-size: 13px; color: rgba(255,255,255,0.7);}
.rsg-page .site-footer ul a:hover{color: var(--green-500);}
.rsg-page .footer-logo img{height: 36px; margin-bottom: 18px; filter: brightness(1.1);}
.rsg-page .footer-bio{font-size: 13px; color: rgba(255,255,255,0.68); margin-bottom: 18px; line-height: 1.6;}
.rsg-page .footer-socials{display: flex; gap: 10px;}
.rsg-page .footer-socials a{width: 36px; height: 36px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; color: #fff;}
.rsg-page .footer-socials .sf{background: #1877F2;}
.rsg-page .footer-socials .sl{background: #0A66C2;}
.rsg-page .footer-socials .si{background: linear-gradient(135deg, #833AB4, #FD1D1D, #FCB045);}
.rsg-page .footer-socials .sy{background: #FF0000;}
.rsg-page .footer-socials svg{width: 16px; height: 16px;}
.rsg-page .footer-copy{padding-top: 24px; font-size: 12px; color: rgba(255,255,255,0.55); display: flex; justify-content: space-between; flex-wrap: wrap; gap: 12px;}
/* Floating UI */
.rsg-page .float-ui-call{position: fixed; bottom: 24px; left: 24px; width: 56px; height: 56px; border-radius: 50%; background: var(--green-500); color: #fff; display: flex; align-items: center; justify-content: center; box-shadow: 0 8px 24px rgba(32,157,80,0.4); z-index: 50;}
.rsg-page .float-ui-call svg{width: 22px; height: 22px;}
.rsg-page .float-ui-help{position: fixed; bottom: 24px; right: 24px; background: #fff; padding: 12px 18px 12px 14px; border-radius: 999px; box-shadow: var(--shadow-lg); display: flex; align-items: center; gap: 10px; z-index: 50;}
.rsg-page .float-ui-help .help-av{width: 36px; height: 36px; border-radius: 50%; background: linear-gradient(135deg, var(--green-500), var(--green-700)); display: flex; align-items: center; justify-content: center; color: #fff; font-family: var(--font-display); font-weight: 800; font-size: 14px;}
.rsg-page .float-ui-help span{font-family: var(--font-display); font-size: 13px; font-weight: 600; color: var(--ink-900);}
@media (max-width: 640px){.rsg-page .platform-hero{height: 560px;}}
@media (max-width: 640px){.rsg-page .phone-shell{left: 8px; transform: none; width: 188px; height: 360px;}}
@media (max-width: 640px){.rsg-page .phone-screen{width: 176px; height: 348px;}}
@media (max-width: 640px){.rsg-page .hero-partner-badge{font-size: 9px; padding: 6px 10px;}}
@media (max-width: 640px){.rsg-page .hero-stat-sticker{right: 10px; top: 10px; padding: 8px 12px;}}
@media (max-width: 640px){.rsg-page .hero-stat-sticker .hss-icon{width: 32px; height: 32px;}}
@media (max-width: 640px){.rsg-page .hero-stat-sticker .hss-icon svg{width: 16px; height: 16px;}}
@media (max-width: 640px){.rsg-page .hero-stat-sticker .hss-value{font-size: 14px;}}
@media (max-width: 640px){.rsg-page .hero-stat-sticker .hss-label{font-size: 8px;}}
@media (max-width: 640px){.rsg-page .hero-cpl-card{bottom: 10px; right: 10px; padding: 10px 12px;}}
@media (max-width: 640px){.rsg-page .hero-cpl-card .hcc-icon{width: 30px; height: 30px;}}
@media (max-width: 640px){.rsg-page .hero-cpl-card .hcc-icon svg{width: 14px; height: 14px;}}
@media (max-width: 640px){.rsg-page .hero-cpl-card .hcc-value{font-size: 13px;}}
@media (max-width: 640px){.rsg-page .hero-cpl-card .hcc-label{font-size: 8px;}}
@media (max-width: 640px){.rsg-page .nav-links{display: none;}}
@media (max-width: 640px){.rsg-page .stat-row, .rsg-page .gsc-tiles, .rsg-page .spec-stats{grid-template-columns: 1fr;}}
@media (max-width: 640px){.rsg-page .city-grid{grid-template-columns: repeat(2, 1fr);}}
@media (max-width: 640px){.rsg-page .test-card{padding: 32px 24px;}}
@media (max-width: 640px){.rsg-page .test-grid{grid-template-columns: 1fr; text-align: center;}}
@media (max-width: 640px){.rsg-page .test-photo{margin: 0 auto;}}
@media (max-width: 640px){.rsg-page .pb-track{height: 44px;}}
@media (max-width: 640px){.rsg-page .footer-grid{grid-template-columns: 1fr;}}
@media (max-width: 640px){.rsg-page .verdict-col header{padding: 22px 56px 16px 20px;}}
@media (max-width: 640px){.rsg-page .verdict-col .vh-icon{top: 18px; right: 18px; width: 38px; height: 38px;}}
@media (max-width: 640px){.rsg-page .vc-items{padding: 4px 20px;}}
@media (max-width: 640px){.rsg-page .vc-foot{padding: 14px 20px;}}
@media (max-width: 640px){.rsg-page .fit-col header{padding-left: 0; padding-top: 56px;}}
@media (max-width: 640px){.rsg-page .fit-col .fit-tag{top: 20px; right: 20px;}}
/* ============================================================
   §6 BLUE CHECK / VERIFIED BADGE section styles
   ============================================================ */
.rsg-page .badge-imgs-row{display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin: 0 0 40px;}
.rsg-page .badge-imgs-row figure{margin: 0; background: #fff; border: 1px solid var(--line); border-radius: var(--radius-md); padding: 18px; display: flex; flex-direction: column; gap: 14px; box-shadow: var(--shadow-sm);}
.rsg-page .badge-imgs-row img{width: 100%; height: auto; display: block; border-radius: 8px; max-height: 220px; object-fit: contain;}
.rsg-page .badge-imgs-row figcaption{font-family: var(--font-mono); font-size: 11px; letter-spacing: 0.06em; color: var(--ink-500); font-weight: 600; text-align: center;}
.rsg-page .reqs-intro{font-size: 22px; margin: 0 0 22px; color: var(--ink-900); font-weight: 700;}
.rsg-page .reqs-grid{display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin: 0 0 36px;}
.rsg-page .req-card{background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 28px 24px 26px; position: relative; overflow: hidden; box-shadow: var(--shadow-sm); transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; isolation: isolate;}
.rsg-page .req-card:hover{transform: translateY(-4px); box-shadow: 0 18px 40px rgba(0,0,0,0.08), 0 4px 12px rgba(0,0,0,0.05); border-color: rgba(44,122,75,0.25);}
.rsg-page .req-card::before{content: ""; position: absolute; top: 0; left: 0; right: 0; height: 4px; background: linear-gradient(90deg, var(--green-500), var(--green-700)); z-index: 2;}
.rsg-page .req-card::after{content: ""; position: absolute; bottom: -40px; right: -40px; width: 140px; height: 140px; border-radius: 50%; background: radial-gradient(circle, rgba(44,122,75,0.10) 0%, transparent 70%); z-index: 0; pointer-events: none;}
.rsg-page .req-card > *{position: relative; z-index: 1;}
.rsg-page .req-card .rc-head{display: flex; align-items: center; justify-content: space-between; margin-bottom: 18px; gap: 12px;}
.rsg-page .req-card .rc-icon{width: 48px; height: 48px; border-radius: 12px; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; box-shadow: 0 8px 20px rgba(44,122,75,0.30);}
.rsg-page .req-card .rc-icon svg{width: 22px; height: 22px;}
.rsg-page .req-card .rc-tag{font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--green-700); font-weight: 700; padding: 5px 11px; background: var(--green-50); border-radius: 999px; white-space: nowrap;}
.rsg-page .req-card .rc-num{position: absolute; top: 14px; right: 18px; font-family: var(--font-display); font-size: 88px; font-weight: 800; color: var(--ink-900); opacity: 0.04; line-height: 1; pointer-events: none; z-index: 0;}
.rsg-page .req-card h4{font-size: 17px; margin: 0 0 12px; color: var(--ink-900); line-height: 1.3; font-weight: 800;}
.rsg-page .req-card p{margin: 0; font-size: 14px; line-height: 1.6; color: var(--ink-2);}
.rsg-page .req-card .rc-footnote{margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--line-2); font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--ink-500); font-weight: 700; display: inline-flex; align-items: center; gap: 6px;}
.rsg-page .req-card .rc-footnote::before{content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--green-500);}
.rsg-page .timeline-note{font-size: 15px; color: var(--ink-2); margin: 0 0 24px; max-width: 880px; line-height: 1.65;}
.rsg-page .timeline-note strong{color: var(--ink-900);}
.rsg-page .ein-callout{background: var(--dark-grad); color: rgba(255,255,255,0.88); border-radius: var(--radius-md); padding: 18px 22px; display: flex; gap: 14px; align-items: flex-start; margin: 0 0 24px;}
.rsg-page .ein-callout .ein-icon{width: 28px; height: 28px; flex-shrink: 0; display: inline-flex; align-items: center; justify-content: center;}
.rsg-page .ein-callout .ein-icon svg{width: 22px; height: 22px;}
.rsg-page .ein-callout p{margin: 0; font-size: 14px; line-height: 1.6; color: rgba(255,255,255,0.88);}
.rsg-page .ein-callout p strong{color: #fff;}
.rsg-page .multichannel-note{font-size: 15px; color: var(--ink-2); margin: 0 0 28px; max-width: 880px; line-height: 1.65;}
.rsg-page .multichannel-note strong{color: var(--ink-900);}
.rsg-page .badge-cta-row{margin: 0 0 8px;}
@media (max-width: 768px){.rsg-page .badge-imgs-row{grid-template-columns: 1fr;}}
@media (max-width: 768px){.rsg-page .reqs-grid{grid-template-columns: 1fr;}}
/* ============================================================
   §6 BLUE CHECK — Timeline viz + warning callout + multichannel insight
   ============================================================ */
.rsg-page .vtimeline{background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 28px 26px; margin: 0 0 24px; box-shadow: var(--shadow-sm); position: relative; overflow: hidden;}
.rsg-page .vtimeline::before{content: ""; position: absolute; top: 0; left: 0; right: 0; height: 4px; background: linear-gradient(90deg, var(--green-500), var(--green-700), var(--green-500));}
.rsg-page .vtimeline-head{display: flex; align-items: center; gap: 12px; margin-bottom: 22px;}
.rsg-page .vtimeline-head .vth-tag{font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--green-700); font-weight: 700; padding: 5px 12px; background: var(--green-50); border-radius: 999px;}
.rsg-page .vtimeline-head h4{margin: 0; font-size: 17px; color: var(--ink-900); font-weight: 800; line-height: 1.3;}
.rsg-page .vtimeline-steps{display: grid; grid-template-columns: 1fr 22px 1fr 22px 1fr 22px 1.1fr; gap: 10px; align-items: stretch; position: relative;}
.rsg-page .vt-step{background: var(--paper-soft); border-radius: var(--radius-md); padding: 18px 16px 16px; position: relative; display: flex; flex-direction: column; gap: 6px; transition: transform .2s, background .2s;}
.rsg-page .vt-step.vt-total{background: linear-gradient(180deg, var(--green-50), #fff); border: 1.5px solid var(--green-500); box-shadow: 0 8px 22px rgba(44,122,75,0.15);}
.rsg-page .vtimeline-steps{position: relative;}
.rsg-page .vt-arrow{display: flex; align-items: center; justify-content: center; color: var(--green-600); opacity: 0.55;}
.rsg-page .vt-arrow svg{width: 22px; height: 22px;}
.rsg-page .vt-step .vt-eye{font-family: var(--font-mono); font-size: 9px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--ink-500); font-weight: 700;}
.rsg-page .vt-step.vt-total .vt-eye{color: var(--green-700);}
.rsg-page .vt-step .vt-val{font-family: var(--font-display); font-size: 22px; font-weight: 800; color: var(--ink-900); line-height: 1; margin-top: 2px; letter-spacing: -0.01em;}
.rsg-page .vt-step.vt-total .vt-val{color: var(--green-700); font-size: 26px;}
.rsg-page .vt-step .vt-desc{font-size: 12.5px; color: var(--ink-2); line-height: 1.45; margin-top: 6px;}
.rsg-page .ein-warning{background: linear-gradient(135deg, var(--paper-soft) 0%, var(--green-50) 100%); color: var(--ink-900); border-radius: var(--radius-lg); padding: 24px 28px; margin: 0 0 24px; position: relative; overflow: hidden; box-shadow: var(--shadow-sm); border: 1px solid rgba(44,122,75,0.22);}
.rsg-page .ein-warning::before{content: ""; position: absolute; top: 0; left: 0; bottom: 0; width: 4px; background: linear-gradient(180deg, var(--green-500), var(--green-700));}
.rsg-page .ein-warning::after{content: ""; position: absolute; top: -60px; right: -60px; width: 200px; height: 200px; border-radius: 50%; background: radial-gradient(circle, rgba(44,122,75,0.14) 0%, transparent 70%); pointer-events: none;}
.rsg-page .ein-warning-head{display: flex; align-items: center; gap: 12px; margin-bottom: 12px; position: relative;}
.rsg-page .ein-warning .ew-pulse{width: 10px; height: 10px; border-radius: 50%; background: var(--green-500); box-shadow: 0 0 0 4px rgba(44,122,75,0.22); animation: pulse 2s infinite; flex-shrink: 0;}
.rsg-page .ein-warning .ew-eyebrow{font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--green-700); font-weight: 700;}
.rsg-page .ein-warning .ew-body{font-size: 15px; line-height: 1.55; color: var(--ink-900); margin: 0 0 14px; font-weight: 500;}
.rsg-page .ein-warning .ew-body strong{color: var(--green-700); font-weight: 700;}
.rsg-page .ein-warning .ew-solution{display: flex; gap: 12px; align-items: flex-start; padding: 14px 16px; background: #fff; border-radius: 10px; border-left: 3px solid var(--green-500); border: 1px solid rgba(44,122,75,0.20); border-left: 3px solid var(--green-500);}
.rsg-page .ein-warning .ew-solution .ews-tag{font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--green-700); font-weight: 700; white-space: nowrap; padding-top: 2px;}
.rsg-page .ein-warning .ew-solution p{margin: 0; font-size: 13.5px; line-height: 1.55; color: var(--ink-2);}
.rsg-page .ein-warning .ew-solution p strong{color: var(--ink-900); font-weight: 700;}
.rsg-page .multichannel-insight{background: linear-gradient(135deg, var(--green-50) 0%, #fff 60%); border: 1px solid var(--line); border-left: 4px solid var(--green-500); border-radius: var(--radius-md); padding: 22px 26px; margin: 0 0 32px; display: grid; grid-template-columns: 44px 1fr; gap: 16px; align-items: flex-start;}
.rsg-page .multichannel-insight .mi-icon{width: 44px; height: 44px; border-radius: 12px; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: flex; align-items: center; justify-content: center; box-shadow: 0 6px 16px rgba(44,122,75,0.30); flex-shrink: 0;}
.rsg-page .multichannel-insight .mi-icon svg{width: 22px; height: 22px;}
.rsg-page .multichannel-insight .mi-eye{font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--green-700); font-weight: 700; margin-bottom: 6px; display: block;}
.rsg-page .multichannel-insight h4{font-size: 17px; margin: 0 0 8px; color: var(--ink-900); font-weight: 800; line-height: 1.3;}
.rsg-page .multichannel-insight p{margin: 0; font-size: 14px; line-height: 1.6; color: var(--ink-2);}
.rsg-page .multichannel-insight p strong{color: var(--ink-900);}
.rsg-page .badge-cta-row{display: flex; flex-direction: column; align-items: center; gap: 12px; padding: 16px 0 8px;}
.rsg-page .badge-cta-row .bcr-btn{padding: 10px 20px; font-size: 12.5px; border-radius: 999px;}
.rsg-page .badge-cta-row .bcr-btn svg{width: 14px !important; height: 14px !important;}
.rsg-page .badge-cta-row .bcr-subline{font-family: var(--font-mono); font-size: 11px; letter-spacing: 0.08em; color: var(--ink-500); font-style: italic; text-align: center;}
.rsg-page .multichannel-insight .mc-action{margin-top: 14px; padding-top: 14px; border-top: 1px solid rgba(44,122,75,0.15); display: flex; align-items: center; gap: 14px; flex-wrap: wrap;}
.rsg-page .multichannel-insight .mc-action .bcr-btn{padding: 8px 16px; font-size: 11.5px; border-radius: 999px; flex-shrink: 0;}
.rsg-page .multichannel-insight .mc-action .bcr-btn svg{width: 13px !important; height: 13px !important; margin-right: 5px !important;}
.rsg-page .multichannel-insight .mc-action .bcr-subline{font-family: var(--font-mono); font-size: 10.5px; letter-spacing: 0.04em; color: var(--ink-500); font-style: italic; flex: 1; min-width: 200px; text-align: left;}
@media (max-width: 640px){.rsg-page .multichannel-insight .mc-action{flex-direction: column; align-items: flex-start; gap: 10px;}}
@media (max-width: 640px){.rsg-page .multichannel-insight .mc-action .bcr-subline{width: 100%;}}
@media (max-width: 768px){.rsg-page .vtimeline-steps{grid-template-columns: 1fr 1fr; gap: 10px;}}
@media (max-width: 768px){.rsg-page .vt-arrow{display: none;}}
@media (max-width: 768px){.rsg-page .ein-warning{padding: 20px 22px;}}
@media (max-width: 768px){.rsg-page .ein-warning .ew-solution{flex-direction: column; gap: 6px;}}
/* ============================================================
   §7 RANKING FACTORS — evidence images + 4-factor grid + closing
   ============================================================ */
.rsg-page .rank-evidence{display: grid; grid-template-columns: 1fr 1fr; gap: 22px; margin: 0 0 36px;}
.rsg-page .rank-evidence .re-img{margin: 0; background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 14px; display: flex; flex-direction: column; gap: 12px; box-shadow: var(--shadow-sm);}
.rsg-page .rank-evidence .re-img img{width: 100%; height: auto; display: block; border-radius: 10px; max-height: 240px; object-fit: contain; background: var(--paper-soft);}
.rsg-page .rank-evidence .re-img figcaption{font-family: var(--font-mono); font-size: 11px; letter-spacing: 0.06em; color: var(--ink-500); font-weight: 600; text-align: center;}
.rsg-page .rank-factors-grid{display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; margin: 0 0 28px;}
.rsg-page .rf-card{background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 28px 26px; position: relative; overflow: hidden; box-shadow: var(--shadow-sm); transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;}
.rsg-page .rf-card:hover{transform: translateY(-3px); box-shadow: 0 18px 40px rgba(0,0,0,0.08), 0 4px 12px rgba(0,0,0,0.05); border-color: rgba(44,122,75,0.20);}
.rsg-page .rf-card::before{content: ""; position: absolute; top: 0; left: 0; bottom: 0; width: 4px; background: linear-gradient(180deg, var(--green-500), var(--green-700));}
.rsg-page .rf-card .rf-head{display: flex; align-items: center; justify-content: space-between; margin-bottom: 14px;}
.rsg-page .rf-card .rf-num{font-family: var(--font-display); font-size: 22px; font-weight: 800; color: var(--green-700); letter-spacing: -0.02em; padding: 4px 12px; background: var(--green-50); border-radius: 8px; line-height: 1;}
.rsg-page .rf-card .rf-icon{width: 42px; height: 42px; border-radius: 10px; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; box-shadow: 0 6px 16px rgba(44,122,75,0.28);}
.rsg-page .rf-card .rf-icon svg{width: 20px; height: 20px;}
.rsg-page .rf-card h3{font-size: 18px; margin: 0 0 10px; color: var(--ink-900); font-weight: 800; line-height: 1.3;}
.rsg-page .rf-card p{margin: 0; font-size: 14px; line-height: 1.65; color: var(--ink-2);}
.rsg-page .rf-card p strong{color: var(--ink-900); font-weight: 700;}
.rsg-page .rf-card p em{color: var(--green-700); font-style: italic; font-weight: 600;}
.rsg-page .rank-closing{background: linear-gradient(135deg, var(--paper-soft) 0%, var(--green-50) 100%); border: 1px solid var(--line); border-left: 5px solid var(--green-500); border-radius: var(--radius-md); padding: 22px 28px;}
.rsg-page .rank-closing p{margin: 0; font-size: 15px; line-height: 1.65; color: var(--ink-700); font-family: var(--font-display);}
.rsg-page .rank-closing p em{font-style: italic; color: var(--ink-2); font-weight: 500;}
.rsg-page .rank-closing p strong{color: var(--green-700); font-weight: 800;}
@media (max-width: 880px){.rsg-page .rank-evidence{grid-template-columns: 1fr;}}
@media (max-width: 880px){.rsg-page .rank-factors-grid{grid-template-columns: 1fr;}}
/* ============================================================
   §8 CASE STUDIES — dark unified section with 2 articles
   ============================================================ */
.rsg-page .cs-section{background: linear-gradient(180deg, #0A0A0A 0%, #1A1A1A 50%, #0F0F0F 100%); position: relative; overflow: hidden;}
.rsg-page .cs-section::before{content: ""; position: absolute; top: 0; right: -200px; width: 600px; height: 600px; border-radius: 50%; background: radial-gradient(circle, rgba(44,122,75,0.10) 0%, transparent 70%); pointer-events: none;}
.rsg-page .cs-section::after{content: ""; position: absolute; bottom: 0; left: -200px; width: 600px; height: 600px; border-radius: 50%; background: radial-gradient(circle, rgba(44,122,75,0.08) 0%, transparent 70%); pointer-events: none;}
.rsg-page .cs-section .container{position: relative; z-index: 1;}
.rsg-page .cs-card{background: linear-gradient(135deg, rgba(255,255,255,0.04), rgba(44,122,75,0.04)); border: 1px solid rgba(255,255,255,0.10); border-radius: 22px; padding: 36px 36px 32px; margin: 0 0 32px; position: relative; overflow: hidden; box-shadow: 0 24px 60px rgba(0,0,0,0.35);}
.rsg-page .cs-card:last-child{margin-bottom: 0;}
.rsg-page .cs-card::before{content: ""; position: absolute; top: 0; left: 0; right: 0; height: 4px; background: linear-gradient(90deg, var(--green-500), var(--green-700), var(--green-500));}
.rsg-page .cs-card .cs-head{margin-bottom: 26px;}
.rsg-page .cs-card .cs-loc{font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--green-500); font-weight: 700; display: inline-block; padding: 6px 14px; background: rgba(44,122,75,0.15); border: 1px solid rgba(44,122,75,0.30); border-radius: 999px; margin-bottom: 14px;}
.rsg-page .cs-card .cs-head h3{color: #fff; font-size: clamp(22px, 2.4vw, 28px); margin: 0; font-weight: 800; line-height: 1.25; letter-spacing: -0.015em;}
.rsg-page .cs-stat-row{display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-bottom: 28px;}
.rsg-page .cs-stat{background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 12px; padding: 16px 18px;}
.rsg-page .cs-stat strong{display: block; font-family: var(--font-display); font-size: 26px; font-weight: 800; color: #fff; line-height: 1; letter-spacing: -0.015em;}
.rsg-page .cs-stat span{display: block; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.1em; text-transform: uppercase; color: rgba(255,255,255,0.55); font-weight: 600; margin-top: 8px; line-height: 1.3;}
.rsg-page .cs-stat.highlight{background: linear-gradient(135deg, rgba(44,122,75,0.18), rgba(44,122,75,0.06)); border-color: rgba(44,122,75,0.40); box-shadow: 0 4px 16px rgba(44,122,75,0.20);}
.rsg-page .cs-stat.highlight strong{color: var(--green-500);}
.rsg-page .cs-imgs{display: grid; grid-template-columns: 1.1fr 1fr; gap: 16px; margin-bottom: 28px;}
.rsg-page .cs-imgs .cs-img{margin: 0; background: #fff; border-radius: 14px; padding: 12px 12px 10px; position: relative; box-shadow: 0 12px 32px rgba(0,0,0,0.35);}
.rsg-page .cs-imgs .cs-img-tag{position: absolute; top: -10px; left: 14px; font-family: var(--font-mono); font-size: 9px; letter-spacing: 0.14em; text-transform: uppercase; color: #fff; background: var(--green-700); padding: 4px 10px; border-radius: 999px; font-weight: 700; box-shadow: 0 4px 10px rgba(44,122,75,0.35); white-space: nowrap;}
.rsg-page .cs-imgs .cs-img img{width: 100%; height: auto; display: block; border-radius: 8px; max-height: 260px; object-fit: contain; background: var(--paper-soft);}
.rsg-page .cs-body{font-size: 14.5px; line-height: 1.7; color: rgba(255,255,255,0.82); margin: 0 0 18px;}
.rsg-page .cs-body strong{color: #fff; font-weight: 700;}
.rsg-page .cs-body:last-of-type{margin-bottom: 0;}
.rsg-page .cs-totals{margin-top: 28px; padding: 22px 24px; background: linear-gradient(135deg, rgba(44,122,75,0.10), rgba(255,255,255,0.02)); border: 1px solid rgba(44,122,75,0.25); border-radius: 14px;}
.rsg-page .cs-totals-tag{font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--green-500); font-weight: 700; margin-bottom: 16px; display: inline-flex; align-items: center; gap: 8px;}
.rsg-page .cs-totals-tag::before{content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--green-500); box-shadow: 0 0 0 4px rgba(44,122,75,0.20);}
.rsg-page .cs-totals-grid{display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px;}
.rsg-page .ctot strong{display: block; font-family: var(--font-display); font-size: 28px; font-weight: 800; color: #fff; line-height: 1; letter-spacing: -0.02em;}
.rsg-page .ctot span{display: block; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.1em; text-transform: uppercase; color: rgba(255,255,255,0.55); font-weight: 600; margin-top: 8px; line-height: 1.3;}
.rsg-page .cs-quote{margin-top: 28px; padding: 22px 26px; background: rgba(0,0,0,0.30); border: 1px solid rgba(255,255,255,0.08); border-left: 4px solid var(--green-500); border-radius: 14px;}
.rsg-page .cs-quote-tag{font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--green-500); font-weight: 700; margin-bottom: 10px; display: block;}
.rsg-page .cs-quote p{margin: 0; font-size: 14.5px; line-height: 1.7; color: rgba(255,255,255,0.85);}
.rsg-page .cs-quote p strong{color: #fff; font-weight: 700;}
.rsg-page .cs-quote p em{color: var(--green-500); font-style: italic; font-weight: 600;}
.rsg-page .cs-cta-row{margin-top: 24px; display: flex; align-items: center; gap: 14px; flex-wrap: wrap;}
.rsg-page .cs-cta{padding: 9px 18px; font-size: 12px; border-radius: 999px;}
.rsg-page .cs-cta-sub{font-family: var(--font-mono); font-size: 10.5px; letter-spacing: 0.06em; color: rgba(255,255,255,0.55); font-style: italic; flex: 1; min-width: 200px;}
@media (max-width: 880px){.rsg-page .cs-card{padding: 28px 24px;}}
@media (max-width: 880px){.rsg-page .cs-stat-row{grid-template-columns: repeat(2, 1fr);}}
@media (max-width: 880px){.rsg-page .cs-imgs{grid-template-columns: 1fr;}}
@media (max-width: 880px){.rsg-page .cs-totals-grid{grid-template-columns: repeat(2, 1fr);}}
@media (max-width: 880px){.rsg-page .cs-cta-row{flex-direction: column; align-items: flex-start;}}
/* ============================================================
   §8 CASE STUDIES — compact 2-col layout (v2)
   ============================================================ */
.rsg-page .cs-card{padding: 30px 30px 28px;}
.rsg-page .cs-card .cs-head{margin-bottom: 22px;}
.rsg-page .cs-card .cs-head h3{color: #fff; font-size: clamp(20px, 2.2vw, 26px);}
.rsg-page .cs-split{display: grid; grid-template-columns: 1fr 1.05fr; gap: 28px; align-items: stretch; margin-bottom: 22px;}
.rsg-page .cs-left{display: flex; flex-direction: column; gap: 14px;}
.rsg-page .cs-tag{display: inline-block; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--green-500); background: rgba(44,122,75,0.15); border: 1px solid rgba(44,122,75,0.30); padding: 6px 14px; border-radius: 999px; font-weight: 700; align-self: flex-start;}
.rsg-page .cs-stats3{display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px;}
.rsg-page .cs3{background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.10); border-top: 2px solid var(--green-500); border-radius: 10px; padding: 14px 14px 12px;}
.rsg-page .cs3 strong{display: block; font-family: var(--font-display); font-size: 22px; font-weight: 800; color: #fff; line-height: 1; letter-spacing: -0.015em;}
.rsg-page .cs3 span{display: block; font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.08em; text-transform: uppercase; color: rgba(255,255,255,0.55); font-weight: 600; margin-top: 8px; line-height: 1.3;}
.rsg-page .cs-quote-side{margin: 4px 0 0; padding: 14px 16px; background: rgba(44,122,75,0.10); border: 1px solid rgba(44,122,75,0.25); border-left: 3px solid var(--green-500); border-radius: 10px; font-size: 13.5px; line-height: 1.6; color: rgba(255,255,255,0.85);}
.rsg-page .cs-quote-side em{font-style: italic; color: #fff; font-weight: 500;}
.rsg-page .cs-right{display: flex; align-items: center; justify-content: center;}
.rsg-page .cs-window{width: 100%; background: #fff; border-radius: 12px; padding: 0; overflow: hidden; box-shadow: 0 16px 38px rgba(0,0,0,0.40); border: 1px solid rgba(255,255,255,0.08);}
.rsg-page .cs-window-bar{display: flex; align-items: center; gap: 12px; padding: 10px 14px; background: #F4F4F0; border-bottom: 1px solid var(--line-2);}
.rsg-page .csw-dots{display: inline-flex; gap: 6px;}
.rsg-page .csw-dots i{width: 9px; height: 9px; border-radius: 50%; display: inline-block;}
.rsg-page .csw-dots i:nth-child(1){background: #FF5F56;}
.rsg-page .csw-dots i:nth-child(2){background: #FFBD2E;}
.rsg-page .csw-dots i:nth-child(3){background: #27C93F;}
.rsg-page .csw-label{flex: 1; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.10em; text-transform: uppercase; color: var(--ink-700); font-weight: 700; text-align: center;}
.rsg-page .csw-live{font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--green-700); font-weight: 700;}
.rsg-page .cs-window img{width: 100%; height: auto; display: block; max-height: 280px; object-fit: contain; background: #fff; padding: 8px;}
.rsg-page .cs-body{font-size: 14px; line-height: 1.65; color: rgba(255,255,255,0.82); margin: 0 0 22px;}
.rsg-page .cs-body strong{color: #fff; font-weight: 700;}
.rsg-page .cs-totals-compact{background: rgba(0,0,0,0.30); border: 1px solid rgba(255,255,255,0.08); border-radius: 14px; padding: 22px 22px 22px;}
.rsg-page .csc-tag{display: inline-flex; align-items: center; gap: 8px; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--green-500); font-weight: 700; margin-bottom: 14px;}
.rsg-page .csc-tag::before{content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--green-500); box-shadow: 0 0 0 4px rgba(44,122,75,0.20);}
.rsg-page .csc-grid{display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-bottom: 16px;}
.rsg-page .csc{padding: 12px 14px; background: rgba(255,255,255,0.04); border-radius: 10px; border: 1px solid rgba(255,255,255,0.06);}
.rsg-page .csc strong{display: block; font-family: var(--font-display); font-size: 22px; font-weight: 800; color: #fff; line-height: 1;}
.rsg-page .csc span{display: block; font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.08em; text-transform: uppercase; color: rgba(255,255,255,0.55); font-weight: 600; margin-top: 6px; line-height: 1.3;}
.rsg-page .csc-chart{margin-top: 4px;}
@media (max-width: 880px){.rsg-page .cs-card{padding: 24px 22px;}}
@media (max-width: 880px){.rsg-page .cs-split{grid-template-columns: 1fr; gap: 20px;}}
@media (max-width: 880px){.rsg-page .cs-stats3{grid-template-columns: repeat(3, 1fr);}}
@media (max-width: 880px){.rsg-page .csc-grid{grid-template-columns: repeat(2, 1fr);}}
@media (max-width: 880px){/* stacked: column no longer stretches, so reset the equal-height flex or images collapse to 0 height */
  .rsg-page .cs-section .cs-right .cs-window{flex: none; display: block;}}
@media (max-width: 880px){.rsg-page .cs-section .cs-right .cs-window img{flex: none; height: auto; max-height: 320px; object-fit: contain;}}
@media (max-width: 480px){.rsg-page .cs-stats3{grid-template-columns: 1fr;}}
@media (max-width: 480px){.rsg-page .cs3 strong{font-size: 20px;}}
/* ============================================================
   §11 WHY CHOOSE US — 3 reason cards (HVAC-Only / Premier Partner / Daily Ops)
   ============================================================ */
.rsg-page .why-reasons{display: grid; grid-template-columns: 1fr; gap: 20px; margin: 0 0 32px;}
.rsg-page .wr-card{border-radius: var(--radius-lg); padding: 32px 32px 28px; position: relative; overflow: hidden; box-shadow: var(--shadow-md); transition: transform .25s ease, box-shadow .25s ease;}
.rsg-page .wr-card:hover{transform: translateY(-3px); box-shadow: 0 20px 50px rgba(0,0,0,0.10);}
.rsg-page .wr-card::before{content: ""; position: absolute; top: 0; left: 0; bottom: 0; width: 5px; background: linear-gradient(180deg, var(--green-500), var(--green-700));}
.rsg-page .wr-card.wr-light{background: linear-gradient(135deg, #fff 0%, var(--green-50) 100%); border: 1px solid var(--line);}
.rsg-page .wr-card.wr-dark{background: linear-gradient(135deg, #0F0F0F 0%, #1F1F1F 100%); border: 1px solid rgba(255,255,255,0.08); color: rgba(255,255,255,0.85);}
.rsg-page .wr-card.wr-dark::before{background: var(--green-500);}
.rsg-page .wr-card.wr-discipline{background: linear-gradient(135deg, var(--paper-soft) 0%, #fff 50%, var(--green-50) 100%); border: 1px solid var(--line);}
.rsg-page .wr-card.wr-discipline::before{background: var(--green-500);}
.rsg-page .wr-head{display: flex; align-items: center; gap: 14px; margin-bottom: 18px; flex-wrap: wrap;}
.rsg-page .wr-num{font-family: var(--font-display); font-size: 24px; font-weight: 800; color: var(--green-600); padding: 6px 14px; background: var(--green-50); border: 1px solid var(--green-500); border-radius: 10px; line-height: 1; letter-spacing: -0.02em;}
.rsg-page .wr-card.wr-dark .wr-num{background: rgba(44,122,75,0.18); border-color: rgba(44,122,75,0.45); color: var(--green-500);}
.rsg-page .wr-pill{font-family: var(--font-mono); font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--green-700); padding: 6px 14px; background: var(--green-50); border-radius: 999px; font-weight: 700;}
.rsg-page .wr-card.wr-dark .wr-pill{background: rgba(44,122,75,0.18); color: var(--green-500);}
.rsg-page .wr-card h3{font-size: 22px; margin: 0 0 14px; color: var(--ink-900); font-weight: 800; line-height: 1.25;}
.rsg-page .wr-card.wr-dark h3{color: #fff;}
.rsg-page .wr-body{font-size: 14.5px; line-height: 1.65; color: var(--ink-2); margin: 0 0 16px;}
.rsg-page .wr-card.wr-dark .wr-body{color: rgba(255,255,255,0.78);}
.rsg-page .wr-card.wr-dark .wr-body strong{color: #fff;}
.rsg-page .wr-list{list-style: none; padding: 0; margin: 0; display: grid; gap: 12px;}
.rsg-page .wr-list li{display: grid; grid-template-columns: 24px 1fr; gap: 12px; align-items: flex-start; font-size: 14px; line-height: 1.55; color: var(--ink-2);}
.rsg-page .wr-list li svg{width: 22px; height: 22px; color: #fff; background: var(--green-500); border-radius: 50%; padding: 4px; flex-shrink: 0; box-shadow: 0 3px 10px rgba(44,122,75,0.32); margin-top: 1px;}
.rsg-page .wr-list li strong{color: var(--ink-900); font-weight: 700;}
.rsg-page .wr-card.wr-dark .wr-list li{color: rgba(255,255,255,0.78);}
.rsg-page .wr-card.wr-dark .wr-list li strong{color: #fff;}
.rsg-page .wr-cadence-grid{display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; margin: 0 0 22px;}
.rsg-page .wr-cad{background: #fff; border: 1px solid var(--line); border-radius: 12px; padding: 16px 12px 14px; display: flex; flex-direction: column; align-items: flex-start; gap: 8px; position: relative; overflow: hidden; transition: border-color .2s;}
.rsg-page .wr-cad::before{content: ""; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: var(--green-500);}
.rsg-page .wr-cad:hover{border-color: var(--green-500);}
.rsg-page .wrc-num{font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--green-700); font-weight: 700; padding: 3px 8px; background: var(--green-50); border-radius: 6px;}
.rsg-page .wrc-lbl{font-family: var(--font-display); font-size: 13px; font-weight: 700; color: var(--ink-900); line-height: 1.3;}
.rsg-page .wr-closing{background: var(--green-50); color: var(--ink-900); border: 1px solid rgba(44,122,75,0.25); border-left: 4px solid var(--green-500); border-radius: var(--radius-md); padding: 16px 20px; display: grid; grid-template-columns: 32px 1fr; gap: 14px; align-items: center;}
.rsg-page .wr-closing .wrcl-icon{width: 32px; height: 32px; border-radius: 50%; background: var(--green-500); display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0;}
.rsg-page .wr-closing .wrcl-icon svg{width: 16px; height: 16px; color: #fff;}
.rsg-page .wr-closing p{margin: 0; font-size: 14px; line-height: 1.55; color: var(--ink-2);}
.rsg-page .wr-closing p strong{color: var(--ink-900); font-weight: 700;}
.rsg-page .why-cta-row{display: flex; justify-content: flex-start; padding: 6px 0;}
.rsg-page .why-cta{padding: 10px 22px; font-size: 13px; border-radius: 999px;}
@media (max-width: 880px){.rsg-page .wr-card{padding: 24px 22px;}}
@media (max-width: 880px){.rsg-page .wr-cadence-grid{grid-template-columns: repeat(2, 1fr);}}
@media (max-width: 880px){.rsg-page .wr-card h3{font-size: 19px;}}
@media (max-width: 480px){.rsg-page .wr-cadence-grid{grid-template-columns: 1fr;}}
/* ============================================================
   §12 DISPUTES — comparison table + Google AI callout + rate rule
   ============================================================ */
.rsg-page .disp-evidence{background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 0; overflow: hidden; box-shadow: var(--shadow-md); margin: 0 0 36px;}
.rsg-page .disp-evidence .de-bar{display: flex; align-items: center; gap: 14px; padding: 10px 16px; background: #F4F4F0; border-bottom: 1px solid var(--line-2);}
.rsg-page .de-dots{display: inline-flex; gap: 6px;}
.rsg-page .de-dots i{width: 9px; height: 9px; border-radius: 50%; display: inline-block;}
.rsg-page .de-dots i:nth-child(1){background: #FF5F56;}
.rsg-page .de-dots i:nth-child(2){background: #FFBD2E;}
.rsg-page .de-dots i:nth-child(3){background: #27C93F;}
.rsg-page .de-label{flex: 1; text-align: center; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--ink-700); font-weight: 700;}
.rsg-page .de-live{font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--green-700); font-weight: 700;}
.rsg-page .disp-evidence img{width: 100%; height: auto; display: block; padding: 12px; background: #fff;}
.rsg-page .disp-subhead{font-size: 22px; font-weight: 800; color: var(--ink-900); margin: 0 0 18px;}
.rsg-page .disp-compare{display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin: 0 0 28px;}
.rsg-page .dc-col{background: #fff; border-radius: var(--radius-lg); padding: 28px 28px 24px; position: relative; box-shadow: var(--shadow-sm); overflow: hidden; border: 1px solid var(--line);}
.rsg-page .dc-col::before{content: ""; position: absolute; top: 0; left: 0; right: 0; height: 4px;}
.rsg-page .dc-col.dc-yes{background: linear-gradient(180deg, #fff 0%, var(--green-50) 100%); border-color: rgba(44,122,75,0.30);}
.rsg-page .dc-col.dc-yes::before{background: var(--green-500);}
.rsg-page .dc-col.dc-no{background: linear-gradient(180deg, #fff 0%, #FFF5F5 100%); border-color: rgba(200,32,43,0.25);}
.rsg-page .dc-col.dc-no::before{background: var(--red);}
.rsg-page .dc-header{display: grid; grid-template-columns: 44px 1fr; gap: 14px; align-items: center; margin-bottom: 18px; padding-bottom: 16px; border-bottom: 1px solid var(--line-2);}
.rsg-page .dc-tick, .rsg-page .dc-x{width: 44px; height: 44px; border-radius: 12px; display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; box-shadow: 0 6px 16px rgba(0,0,0,0.10);}
.rsg-page .dc-tick{background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff;}
.rsg-page .dc-x{background: linear-gradient(135deg, var(--red), #8E1620); color: #fff;}
.rsg-page .dc-tick svg, .rsg-page .dc-x svg{width: 22px; height: 22px;}
.rsg-page .dc-eyebrow{display: block; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 700; margin-bottom: 4px;}
.rsg-page .dc-yes .dc-eyebrow{color: var(--green-700);}
.rsg-page .dc-no .dc-eyebrow{color: var(--red);}
.rsg-page .dc-header h4{margin: 0; font-size: 16px; color: var(--ink-900); font-weight: 800; line-height: 1.3;}
.rsg-page .dc-list{list-style: none; padding: 0; margin: 0; display: grid; gap: 12px;}
.rsg-page .dc-list li{font-size: 14px; line-height: 1.55; color: var(--ink-2); padding-left: 22px; position: relative;}
.rsg-page .dc-list li::before{content: ""; position: absolute; left: 0; top: 7px; width: 10px; height: 10px; border-radius: 50%;}
.rsg-page .dc-yes .dc-list li::before{background: var(--green-500); box-shadow: 0 0 0 3px rgba(44,122,75,0.15);}
.rsg-page .dc-no .dc-list li::before{background: var(--red); box-shadow: 0 0 0 3px rgba(200,32,43,0.12);}
.rsg-page .dc-yes .dc-list li strong{color: var(--ink-900); font-weight: 700;}
.rsg-page .disp-ai-callout{background: linear-gradient(135deg, #F4F8FF 0%, #EBF2FE 100%); color: var(--ink-900); border-radius: var(--radius-lg); padding: 26px 30px; margin: 0 0 28px; display: grid; grid-template-columns: 56px 1fr; gap: 20px; align-items: flex-start; position: relative; overflow: hidden; border: 1px solid rgba(66,133,244,0.25);}
.rsg-page .disp-ai-callout::before{content: ""; position: absolute; top: 0; left: 0; bottom: 0; width: 4px; background: linear-gradient(180deg, #4285F4, var(--green-500));}
.rsg-page .disp-ai-callout::after{content: ""; position: absolute; top: -40px; right: -40px; width: 200px; height: 200px; border-radius: 50%; background: radial-gradient(circle, rgba(66,133,244,0.18) 0%, transparent 70%); pointer-events: none;}
.rsg-page .disp-ai-callout .dac-icon{width: 56px; height: 56px; border-radius: 14px; background: linear-gradient(135deg, #4285F4, #1E5BC4); color: #fff; display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; box-shadow: 0 8px 22px rgba(66,133,244,0.32); position: relative; z-index: 1;}
.rsg-page .disp-ai-callout .dac-icon svg{width: 28px; height: 28px;}
.rsg-page .disp-ai-callout .dac-body{position: relative; z-index: 1;}
.rsg-page .disp-ai-callout .dac-eye{display: block; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; color: #4285F4; font-weight: 700; margin-bottom: 8px;}
.rsg-page .disp-ai-callout p{margin: 0; font-size: 14.5px; line-height: 1.65; color: var(--ink-2);}
.rsg-page .disp-ai-callout p strong{color: var(--ink-900); font-weight: 700;}
.rsg-page .disp-rule{background: #fff; border: 1px solid var(--line); border-left: 5px solid var(--green-500); border-radius: var(--radius-lg); padding: 26px 30px; margin: 0 0 24px; box-shadow: var(--shadow-sm);}
.rsg-page .disp-rule .dr-rate{display: grid; grid-template-columns: 1fr 60px 1fr; gap: 18px; align-items: center; padding-bottom: 20px; margin-bottom: 18px; border-bottom: 1px solid var(--line-2);}
.rsg-page .disp-rule .drr-pct{text-align: center; padding: 14px 18px; background: var(--green-50); border-radius: var(--radius-md); border: 1px solid rgba(44,122,75,0.20);}
.rsg-page .disp-rule .drr-pct strong{display: block; font-family: var(--font-display); font-size: 30px; font-weight: 800; color: var(--green-700); line-height: 1; letter-spacing: -0.02em;}
.rsg-page .disp-rule .drr-pct span{display: block; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--ink-500); font-weight: 700; margin-top: 8px;}
.rsg-page .disp-rule .drr-pct.danger{background: #FFF5F5; border-color: rgba(200,32,43,0.20);}
.rsg-page .disp-rule .drr-pct.danger strong{color: var(--red);}
.rsg-page .disp-rule .drr-divider{font-family: var(--font-display); font-size: 14px; font-weight: 800; color: var(--ink-500); text-align: center; position: relative;}
.rsg-page .disp-rule .drr-divider::before{content: "VS";}
.rsg-page .disp-rule .dr-body{margin: 0; font-size: 14.5px; line-height: 1.65; color: var(--ink-2);}
.rsg-page .disp-rule .dr-body strong{color: var(--ink-900); font-weight: 700;}
.rsg-page .disp-cta-row{display: flex; align-items: center; gap: 14px; flex-wrap: wrap; padding: 6px 0;}
.rsg-page .disp-cta{padding: 10px 22px; font-size: 13px; border-radius: 999px;}
.rsg-page .disp-cta-sub{font-family: var(--font-mono); font-size: 13.5px; letter-spacing: 0.02em; color: var(--ink-700); font-style: italic; flex: 1; min-width: 220px;}
@media (max-width: 880px){.rsg-page .disp-compare{grid-template-columns: 1fr;}}
@media (max-width: 880px){.rsg-page .disp-ai-callout{grid-template-columns: 1fr; padding: 22px 24px; gap: 14px;}}
@media (max-width: 880px){.rsg-page .disp-rule .dr-rate{grid-template-columns: 1fr; gap: 12px;}}
@media (max-width: 880px){.rsg-page .disp-rule .drr-divider{padding: 6px 0;}}
/* VOLUME SWINGS section styling */
.rsg-page .vol-grid{display: grid; grid-template-columns: 1.55fr 1fr; gap: 24px; margin: 0 0 32px; align-items: stretch;}
.rsg-page .vol-chart{background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); overflow: hidden; box-shadow: var(--shadow-md); margin: 0; display: flex; flex-direction: column;}
.rsg-page .vol-chart .vc-bar{display: flex; align-items: center; gap: 14px; padding: 10px 16px; background: #F4F4F0; border-bottom: 1px solid var(--line-2);}
.rsg-page .vol-chart .vc-bar .de-label{flex: 1; text-align: center; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--ink-700); font-weight: 700;}
.rsg-page .vol-chart .vc-bar .de-live{font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--green-700); font-weight: 700;}
.rsg-page .vol-chart img{width: 100%; height: auto; display: block; padding: 14px; background: #fff; flex: 1; object-fit: contain;}
.rsg-page .vol-months{display: grid; grid-template-rows: 1fr 1fr 1fr; gap: 14px;}
.rsg-page .vm-tile{background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 18px 22px 16px; box-shadow: var(--shadow-sm); display: flex; flex-direction: column; gap: 10px; position: relative; overflow: hidden;}
.rsg-page .vm-tile::before{content: ""; position: absolute; top: 0; bottom: 0; left: 0; width: 4px;}
.rsg-page .vm-tile.vm-peak::before{background: var(--green-500);}
.rsg-page .vm-tile.vm-low::before{background: #C8202B;}
.rsg-page .vm-tile.vm-mid::before{background: #E0A828;}
.rsg-page .vm-tile .vm-head{display: flex; align-items: baseline; justify-content: space-between; gap: 12px;}
.rsg-page .vm-tile .vm-rank{font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 700; color: var(--ink-500);}
.rsg-page .vm-tile.vm-peak .vm-rank{color: var(--green-700);}
.rsg-page .vm-tile.vm-low .vm-rank{color: #C8202B;}
.rsg-page .vm-tile.vm-mid .vm-rank{color: #B6831A;}
.rsg-page .vm-tile .vm-count{display: inline-flex; align-items: baseline; gap: 6px;}
.rsg-page .vm-tile .vm-count strong{font-family: var(--font-display); font-size: 28px; font-weight: 800; color: var(--ink-900); line-height: 1; letter-spacing: -0.02em;}
.rsg-page .vm-tile.vm-peak .vm-count strong{color: var(--green-700);}
.rsg-page .vm-tile.vm-low .vm-count strong{color: #C8202B;}
.rsg-page .vm-tile.vm-mid .vm-count strong{color: #B6831A;}
.rsg-page .vm-tile .vm-count span{font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--ink-500); font-weight: 700;}
.rsg-page .vm-tile .vm-month{font-family: var(--font-display); font-size: 22px; font-weight: 800; color: var(--ink-900); line-height: 1.1; letter-spacing: -0.01em; margin: 0;}
.rsg-page .vm-tile .vm-gauge{display: flex; flex-direction: column; gap: 6px; margin-top: 4px;}
.rsg-page .vm-tile .vm-gauge-track{position: relative; height: 10px; background: #F1EFEA; border-radius: 999px; overflow: hidden;}
.rsg-page .vm-tile .vm-gauge-fill{position: absolute; top: 0; left: 0; bottom: 0; border-radius: 999px; transition: width 0.4s ease;}
.rsg-page .vm-tile.vm-peak .vm-gauge-fill{background: linear-gradient(90deg, #4FB37A, var(--green-500));}
.rsg-page .vm-tile.vm-low .vm-gauge-fill{background: linear-gradient(90deg, #E45A65, #C8202B);}
.rsg-page .vm-tile.vm-mid .vm-gauge-fill{background: linear-gradient(90deg, #ECC04C, #C8941A);}
.rsg-page .vm-tile .vm-gauge-tick{position: absolute; top: -3px; bottom: -3px; width: 1px; background: rgba(0,0,0,0.20);}
.rsg-page .vm-tile .vm-gauge-meta{display: flex; align-items: center; justify-content: space-between; font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--ink-500); font-weight: 700;}
.rsg-page .vm-tile .vm-gauge-meta strong{color: var(--ink-900); font-weight: 800; font-family: var(--font-display); font-size: 12px; letter-spacing: -0.01em; text-transform: none;}
.rsg-page .vm-tile.vm-peak .vm-gauge-meta strong{color: var(--green-700);}
.rsg-page .vm-tile.vm-low .vm-gauge-meta strong{color: #C8202B;}
.rsg-page .vm-tile.vm-mid .vm-gauge-meta strong{color: #B6831A;}
.rsg-page .vol-explain{display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin: 0 0 24px;}
.rsg-page .ve-card{background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 24px 26px; box-shadow: var(--shadow-sm); position: relative;}
.rsg-page .ve-card.ve-why{border-left: 4px solid #E0A828;}
.rsg-page .ve-card.ve-fix{border-left: 4px solid var(--green-500);}
.rsg-page .ve-eyebrow{display: inline-flex; align-items: center; gap: 8px; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 700; color: var(--ink-700); margin-bottom: 12px;}
.rsg-page .ve-dot{width: 8px; height: 8px; border-radius: 50%; display: inline-block;}
.rsg-page .ve-dot-amber{background: #E0A828; box-shadow: 0 0 0 3px rgba(224,168,40,0.18);}
.rsg-page .ve-dot-green{background: var(--green-500); box-shadow: 0 0 0 3px rgba(44,122,75,0.18);}
.rsg-page .ve-card p{margin: 0; font-size: 14.5px; line-height: 1.65; color: var(--ink-2);}
.rsg-page .ve-card p strong{color: var(--ink-900); font-weight: 700;}
@media (max-width: 980px){.rsg-page .vol-grid{grid-template-columns: 1fr;}}
@media (max-width: 980px){.rsg-page .vol-months{grid-template-rows: auto; grid-template-columns: 1fr 1fr 1fr;}}
@media (max-width: 720px){.rsg-page .vol-explain{grid-template-columns: 1fr;}}
@media (max-width: 720px){.rsg-page .vol-months{grid-template-columns: 1fr;}}
@media (max-width: 720px){.rsg-page .vm-tile{grid-template-columns: 1fr auto 48px;}}
/* PARTNERSHIP section - 4 step cards + closing emphasis */
.rsg-page .partner-steps{display: grid; grid-template-columns: 1fr 1fr; gap: 22px; margin: 0 0 32px;}
.rsg-page .ps-card{position: relative; background: #fff; border: 1px solid var(--line); border-radius: 22px; padding: 30px 30px 26px; box-shadow: 0 4px 14px rgba(0,0,0,0.04); overflow: hidden; min-height: 280px; display: flex; flex-direction: column; gap: 0; isolation: isolate; transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;}
.rsg-page .ps-card::before{content: ""; position: absolute; top: 0; right: 0; width: 260px; height: 260px; pointer-events: none; z-index: 0; opacity: 0.85; transition: opacity 0.3s ease;}
.rsg-page .ps-card::after{content: ""; position: absolute; bottom: -120px; left: -60px; width: 280px; height: 280px; border-radius: 50%; pointer-events: none; z-index: 0; opacity: 0.5; transition: opacity 0.3s ease;}
.rsg-page .ps-card:hover{transform: translateY(-4px); box-shadow: 0 18px 40px rgba(0,0,0,0.10);}
.rsg-page .ps-card:hover::before{opacity: 1;}
.rsg-page .ps-card:hover::after{opacity: 0.75;}
.rsg-page .ps-card:hover .ps-medallion{transform: rotate(-6deg) scale(1.05);}
.rsg-page .ps-card.ps-1::before{background: radial-gradient(circle at top right, rgba(44,122,75,0.16) 0%, transparent 65%);}
.rsg-page .ps-card.ps-1::after{background: radial-gradient(circle, rgba(44,122,75,0.10) 0%, transparent 70%);}
.rsg-page .ps-card.ps-1:hover{border-color: rgba(44,122,75,0.32);}
.rsg-page .ps-card.ps-2::before{background: radial-gradient(circle at top right, rgba(224,168,40,0.18) 0%, transparent 65%);}
.rsg-page .ps-card.ps-2::after{background: radial-gradient(circle, rgba(224,168,40,0.10) 0%, transparent 70%);}
.rsg-page .ps-card.ps-2:hover{border-color: rgba(224,168,40,0.38);}
.rsg-page .ps-card.ps-3::before{background: radial-gradient(circle at top right, rgba(66,133,244,0.16) 0%, transparent 65%);}
.rsg-page .ps-card.ps-3::after{background: radial-gradient(circle, rgba(66,133,244,0.10) 0%, transparent 70%);}
.rsg-page .ps-card.ps-3:hover{border-color: rgba(66,133,244,0.32);}
.rsg-page .ps-card.ps-4::before{background: radial-gradient(circle at top right, rgba(200,32,43,0.14) 0%, transparent 65%);}
.rsg-page .ps-card.ps-4::after{background: radial-gradient(circle, rgba(200,32,43,0.08) 0%, transparent 70%);}
.rsg-page .ps-card.ps-4:hover{border-color: rgba(200,32,43,0.32);}
.rsg-page .ps-medallion{position: absolute; top: 24px; right: 24px; width: 64px; height: 64px; border-radius: 20px; display: inline-flex; align-items: center; justify-content: center; color: #fff; z-index: 2; transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);}
.rsg-page .ps-medallion::before{content: ""; position: absolute; inset: -6px; border-radius: 26px; border: 1px dashed; opacity: 0.35; pointer-events: none;}
.rsg-page .ps-medallion svg{width: 28px; height: 28px; position: relative; z-index: 1;}
.rsg-page .ps-card.ps-1 .ps-medallion{background: linear-gradient(135deg, #4FB37A, var(--green-700)); box-shadow: 0 12px 28px rgba(44,122,75,0.36), inset 0 1px 0 rgba(255,255,255,0.30);}
.rsg-page .ps-card.ps-1 .ps-medallion::before{border-color: var(--green-500);}
.rsg-page .ps-card.ps-2 .ps-medallion{background: linear-gradient(135deg, #ECC04C, #C8941A); box-shadow: 0 12px 28px rgba(224,168,40,0.40), inset 0 1px 0 rgba(255,255,255,0.30);}
.rsg-page .ps-card.ps-2 .ps-medallion::before{border-color: #E0A828;}
.rsg-page .ps-card.ps-3 .ps-medallion{background: linear-gradient(135deg, #6FA1F7, #2B6CD4); box-shadow: 0 12px 28px rgba(66,133,244,0.36), inset 0 1px 0 rgba(255,255,255,0.30);}
.rsg-page .ps-card.ps-3 .ps-medallion::before{border-color: #4285F4;}
.rsg-page .ps-card.ps-4 .ps-medallion{background: linear-gradient(135deg, #E45A65, #C8202B); box-shadow: 0 12px 28px rgba(200,32,43,0.36), inset 0 1px 0 rgba(255,255,255,0.30);}
.rsg-page .ps-card.ps-4 .ps-medallion::before{border-color: #C8202B;}
.rsg-page .ps-tag{display: inline-flex; align-items: center; gap: 8px; padding: 6px 14px 6px 12px; background: #fff; border: 1px solid; border-radius: 999px; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 700; align-self: flex-start; max-width: calc(100% - 88px); position: relative; z-index: 1; box-shadow: 0 2px 8px rgba(0,0,0,0.04); margin-bottom: 22px;}
.rsg-page .ps-tag .ps-tag-dot{width: 7px; height: 7px; border-radius: 50%; display: inline-block; flex-shrink: 0;}
.rsg-page .ps-card.ps-1 .ps-tag{color: var(--green-700); border-color: rgba(44,122,75,0.28);}
.rsg-page .ps-card.ps-1 .ps-tag .ps-tag-dot{background: var(--green-500); box-shadow: 0 0 0 3px rgba(44,122,75,0.18);}
.rsg-page .ps-card.ps-2 .ps-tag{color: #B6831A; border-color: rgba(224,168,40,0.36);}
.rsg-page .ps-card.ps-2 .ps-tag .ps-tag-dot{background: #E0A828; box-shadow: 0 0 0 3px rgba(224,168,40,0.20);}
.rsg-page .ps-card.ps-3 .ps-tag{color: #2B6CD4; border-color: rgba(66,133,244,0.28);}
.rsg-page .ps-card.ps-3 .ps-tag .ps-tag-dot{background: #4285F4; box-shadow: 0 0 0 3px rgba(66,133,244,0.18);}
.rsg-page .ps-card.ps-4 .ps-tag{color: #C8202B; border-color: rgba(200,32,43,0.28);}
.rsg-page .ps-card.ps-4 .ps-tag .ps-tag-dot{background: #C8202B; box-shadow: 0 0 0 3px rgba(200,32,43,0.18);}
.rsg-page .ps-card h3{margin: 0 0 12px; font-family: var(--font-display); font-size: 22px; font-weight: 800; color: var(--ink-900); line-height: 1.25; letter-spacing: -0.01em; position: relative; z-index: 1; padding-right: 0; max-width: 100%;}
.rsg-page .ps-card p{margin: 0 0 22px; font-size: 14.5px; line-height: 1.65; color: var(--ink-2); position: relative; z-index: 1; flex: 1;}
.rsg-page .ps-card p strong{color: var(--ink-900); font-weight: 700;}
.rsg-page .ps-foot{display: flex; align-items: center; gap: 12px; padding-top: 18px; border-top: 1px dashed rgba(0,0,0,0.10); position: relative; z-index: 1;}
.rsg-page .ps-foot-line{display: inline-block; width: 28px; height: 2px; border-radius: 2px; flex-shrink: 0;}
.rsg-page .ps-foot-mark{font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.14em; text-transform: uppercase; font-weight: 700;}
.rsg-page .ps-card.ps-1 .ps-foot-line{background: var(--green-500);}
.rsg-page .ps-card.ps-1 .ps-foot-mark{color: var(--green-700);}
.rsg-page .ps-card.ps-2 .ps-foot-line{background: #E0A828;}
.rsg-page .ps-card.ps-2 .ps-foot-mark{color: #B6831A;}
.rsg-page .ps-card.ps-3 .ps-foot-line{background: #4285F4;}
.rsg-page .ps-card.ps-3 .ps-foot-mark{color: #2B6CD4;}
.rsg-page .ps-card.ps-4 .ps-foot-line{background: #C8202B;}
.rsg-page .ps-card.ps-4 .ps-foot-mark{color: #C8202B;}
/* PARTNER CLOSE - source-faithful, WP-safe */
.rsg-page .partner-close{background: linear-gradient(135deg, var(--paper-soft) 0%, var(--green-50) 100%) !important; border: 1px solid var(--line) !important; border-left: 5px solid var(--green-500) !important; border-radius: var(--radius-lg) !important; padding: 32px 38px !important; position: relative;}
.rsg-page .partner-close .pc-eyebrow{display: inline-flex !important; align-items: center; gap: 8px; font-family: var(--font-mono); font-size: 11px; letter-spacing: 0.18em; text-transform: uppercase; font-weight: 700; color: var(--green-700) !important; margin: 0 0 14px !important;}
.rsg-page .partner-close .pc-eyebrow-dot{width: 8px !important; height: 8px !important; border-radius: 50% !important; background: var(--green-500) !important; box-shadow: 0 0 0 3px rgba(44,122,75,0.20); display: inline-block !important; flex-shrink: 0;}
.rsg-page .partner-close .pc-body{margin: 0 0 20px !important; padding: 0 0 20px !important; border-bottom: 1px solid rgba(44,122,75,0.22) !important; font-size: 16px !important; line-height: 1.65 !important; color: var(--ink-900) !important; font-weight: 500 !important;}
.rsg-page .partner-close .pc-emph{margin: 0 !important; font-family: var(--font-display) !important; font-size: 17px !important; font-weight: 700 !important; color: var(--ink-900) !important; line-height: 1.5 !important; letter-spacing: -0.01em !important;}
.rsg-page .partner-close .pc-emph em{font-style: italic !important; color: var(--green-700) !important;}
@media (max-width: 920px){.rsg-page .partner-steps{grid-template-columns: 1fr;}}
@media (max-width: 920px){.rsg-page .ps-card{padding: 26px 24px 22px; min-height: 0;}}
@media (max-width: 920px){.rsg-page .ps-medallion{top: 20px; right: 20px; width: 54px; height: 54px;}}
@media (max-width: 920px){.rsg-page .ps-medallion svg{width: 24px; height: 24px;}}
@media (max-width: 920px){.rsg-page .ps-tag{max-width: calc(100% - 76px);}}
@media (max-width: 920px){.rsg-page .ps-card h3{font-size: 19px;}}
@media (max-width: 560px){.rsg-page .partner-close{padding: 24px 22px;}}
@media (max-width: 560px){.rsg-page .partner-close .pc-emph{grid-template-columns: 1fr;}}
/* PRICING SECTION rebuild — included strip + 3 tier cards + ad-spend stats + close */
.rsg-page .pp-included{background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 22px 28px; margin: 0 0 32px; box-shadow: var(--shadow-sm); display: grid; grid-template-columns: minmax(220px, 280px) 1fr; gap: 28px; align-items: center;}
.rsg-page .ppi-head{display: flex; flex-direction: column; gap: 6px;}
.rsg-page .ppi-eye{display: inline-flex; align-items: center; gap: 8px; font-family: var(--font-mono); font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 700; color: var(--green-700);}
.rsg-page .ppi-eye-dot{width: 8px; height: 8px; border-radius: 50%; background: var(--green-500); box-shadow: 0 0 0 3px rgba(44,122,75,0.20); display: inline-block; flex-shrink: 0;}
.rsg-page .ppi-sub{font-family: var(--font-display); font-size: 15px; font-weight: 700; color: var(--ink-900); line-height: 1.4; letter-spacing: -0.01em;}
.rsg-page .ppi-chips{list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px;}
.rsg-page .ppi-chip{display: inline-flex; align-items: center; gap: 8px; padding: 7px 14px 7px 10px; background: var(--green-50); border: 1px solid rgba(44,122,75,0.20); border-radius: 999px; font-size: 13px; font-weight: 600; color: var(--ink-900); line-height: 1;}
.rsg-page .ppi-chip-ic{width: 18px; height: 18px; border-radius: 50%; background: var(--green-500); color: #fff; display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0;}
.rsg-page .ppi-chip-ic svg{width: 11px; height: 11px;}
.rsg-page .pp-cards{display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 18px; margin: 0 0 32px; align-items: stretch;}
.rsg-page .pp-card{background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 30px 28px; box-shadow: var(--shadow-sm); display: flex; flex-direction: column; position: relative; overflow: hidden; transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;}
.rsg-page .pp-card:hover{transform: translateY(-4px); box-shadow: var(--shadow-md); border-color: rgba(44,122,75,0.28);}
.rsg-page .pp-card::before{content: ""; position: absolute; top: 0; left: 0; right: 0; height: 4px; background: var(--green-500); opacity: 0.7;}
.rsg-page .pp-card.pp-grow::before{background: linear-gradient(90deg, #4FB37A, var(--green-500));}
.rsg-page .pp-card.pp-dom::before{background: linear-gradient(90deg, var(--green-700), #1B5230);}
.rsg-page .pp-card .ppc-head{display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 0 0 18px;}
.rsg-page .pp-card .ppc-name{font-family: var(--font-mono); font-size: 12px; letter-spacing: 0.20em; text-transform: uppercase; font-weight: 800; color: var(--green-700);}
.rsg-page .pp-card .ppc-range{display: inline-flex; align-items: center; padding: 5px 11px; background: var(--green-50); border: 1px solid rgba(44,122,75,0.24); border-radius: 999px; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.10em; text-transform: uppercase; font-weight: 700; color: var(--green-700);}
.rsg-page .pp-card .ppc-price{display: flex; align-items: baseline; gap: 6px; margin: 0 0 18px;}
.rsg-page .pp-card .ppc-price strong{font-family: var(--font-display); font-size: 44px; font-weight: 800; color: var(--ink-900); line-height: 1; letter-spacing: -0.025em;}
.rsg-page .pp-card .ppc-price span{font-family: var(--font-mono); font-size: 12px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--ink-500); font-weight: 700;}
.rsg-page .pp-card .ppc-best{margin: 0 0 24px; font-family: var(--font-display); font-size: 16px; font-weight: 700; color: var(--ink-900); line-height: 1.45; letter-spacing: -0.005em; padding-bottom: 22px; border-bottom: 1px dashed rgba(0,0,0,0.10); flex: 1;}
.rsg-page .pp-card .ppc-footer{margin-top: auto;}
.rsg-page .pp-card .ppc-cta{display: inline-flex; align-items: center; gap: 8px; font-family: var(--font-mono); font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; font-weight: 700; color: var(--green-700); text-decoration: none; transition: gap 0.25s ease, color 0.25s ease;}
.rsg-page .pp-card .ppc-cta svg{width: 14px !important; height: 14px !important; transition: transform 0.25s ease;}
.rsg-page .pp-card .ppc-cta:hover{gap: 12px; color: var(--green-900);}
.rsg-page .pp-card .ppc-cta:hover svg{transform: translateX(2px);}
.rsg-page .pp-card.pp-featured{background: linear-gradient(135deg, #000 0%, #1F1F1F 50%, #2C2C2C 100%); color: #fff; border-color: transparent; box-shadow: 0 20px 50px rgba(0,0,0,0.25); transform: translateY(-8px);}
.rsg-page .pp-card.pp-featured:hover{transform: translateY(-12px); box-shadow: 0 28px 60px rgba(0,0,0,0.32); border-color: transparent;}
.rsg-page .pp-card.pp-featured::before{background: linear-gradient(90deg, var(--green-500), #4FB37A); height: 5px; opacity: 1;}
.rsg-page .pp-card.pp-featured .ppc-name{color: #4FB37A;}
.rsg-page .pp-card.pp-featured .ppc-range{background: rgba(79,179,122,0.14); border-color: rgba(79,179,122,0.35); color: #6BCB94;}
.rsg-page .pp-card.pp-featured .ppc-price strong{color: #fff !important;}
.rsg-page .pp-card.pp-featured .ppc-price span{color: rgba(255,255,255,0.55);}
.rsg-page .pp-card.pp-featured .ppc-best{color: #fff !important; border-bottom-color: rgba(255,255,255,0.18);}
.rsg-page .pp-card.pp-featured .ppc-cta{color: #6BCB94 !important;}
.rsg-page .pp-card.pp-featured .ppc-cta:hover{color: #8DDDB0 !important;}
.rsg-page .pp-card.pp-featured strong, .rsg-page .pp-card.pp-featured b{color: #fff !important;}
.rsg-page .pp-adspend{background: linear-gradient(135deg, var(--paper-soft) 0%, var(--green-50) 100%); border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 26px 32px; margin: 0 0 28px;}
.rsg-page .ppa-stats{display: grid; grid-template-columns: 1fr 1px 1fr 1px 1fr; gap: 24px; align-items: center; padding-bottom: 22px; border-bottom: 1px solid rgba(44,122,75,0.22); margin-bottom: 22px;}
.rsg-page .ppa-stat{text-align: center;}
.rsg-page .ppa-stat strong{display: block; font-family: var(--font-display); font-size: 30px; font-weight: 800; color: var(--ink-900); line-height: 1; letter-spacing: -0.025em;}
.rsg-page .ppa-stat strong small{font-family: var(--font-mono); font-size: 12px; letter-spacing: 0.04em; color: var(--ink-500); font-weight: 700;}
.rsg-page .ppa-stat span{display: block; font-family: var(--font-mono); font-size: 10.5px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--ink-500); font-weight: 700; margin-top: 8px;}
.rsg-page .ppa-stat.ppa-accent strong{color: var(--green-700);}
.rsg-page .ppa-divider{width: 1px; height: 48px; background: rgba(44,122,75,0.22); margin: 0 auto;}
.rsg-page .ppa-explain{display: flex; flex-direction: column; gap: 8px;}
.rsg-page .ppa-explain .ppa-line{margin: 0; font-size: 14.5px; line-height: 1.6; color: var(--ink-900);}
.rsg-page .ppa-explain .ppa-note{margin: 0; font-size: 13.5px; line-height: 1.6; color: var(--ink-2); font-style: italic;}
.rsg-page .ppa-explain strong{color: var(--ink-900); font-weight: 700;}
.rsg-page .pp-close{display: flex; align-items: center; gap: 28px; padding: 24px 4px 0; border-top: 1px dashed rgba(0,0,0,0.10); flex-wrap: wrap;}
.rsg-page .pp-close .ppcl-body{margin: 0; flex: 1; min-width: 320px; font-size: 15px; line-height: 1.65; color: var(--ink-2);}
.rsg-page .pp-close .ppcl-body strong{color: var(--ink-900); font-weight: 700;}
.rsg-page .pp-close .pp-final-cta{display: inline-flex; align-items: center; gap: 10px; padding: 14px 26px; font-size: 14px; border-radius: 999px; flex-shrink: 0; white-space: nowrap;}
.rsg-page .pp-close .pp-final-cta-ic{width: 16px !important; height: 16px !important;}
@media (max-width: 980px){.rsg-page .pp-included{grid-template-columns: 1fr; gap: 14px;}}
@media (max-width: 980px){.rsg-page .pp-cards{grid-template-columns: 1fr; gap: 14px;}}
@media (max-width: 980px){.rsg-page .pp-card.pp-featured{transform: translateY(0);}}
@media (max-width: 980px){.rsg-page .pp-card.pp-featured:hover{transform: translateY(-4px);}}
@media (max-width: 980px){.rsg-page .ppa-stats{grid-template-columns: 1fr; gap: 18px;}}
@media (max-width: 980px){.rsg-page .ppa-divider{display: none;}}
@media (max-width: 980px){.rsg-page .pp-close{gap: 16px;}}
/* WR CTA inside discipline card */
.rsg-page .wr-discipline .wr-cta-row{margin-top: 18px; padding-top: 0; display: flex;}
.rsg-page .wr-discipline .wr-cta-row .why-cta{padding: 10px 22px; font-size: 13px; border-radius: 999px;}
/* WR CTA inside discipline card */
.rsg-page .wr-discipline .wr-cta-row{margin-top: 18px; display: flex; justify-content: flex-end;}
.rsg-page .wr-discipline .wr-cta-row .why-cta{padding: 8px 16px; font-size: 11.5px; border-radius: 999px; letter-spacing: 0.02em;}
.rsg-page .wr-discipline .wr-cta-row .why-cta svg{width: 12px !important; height: 12px !important; margin-right: 5px !important;}
@media (max-width: 480px){.rsg-page{--section-y: 48px; --gutter: 16px;}}
@media (max-width: 480px){.rsg-page .container{padding: 0 16px;}}
@media (max-width: 480px){.rsg-page .city-grid{grid-template-columns: 1fr; gap: 8px;}}
@media (max-width: 480px){.rsg-page .hero h1{font-size: clamp(32px, 9vw, 40px);}}
@media (max-width: 480px){.rsg-page .btn-large{padding: 12px 22px; font-size: 13px;}}
@media (max-width: 480px){.rsg-page .hero-ctas .btn{width: 100%; justify-content: center;}}
@media (max-width: 480px){.rsg-page .final-cta h2{font-size: clamp(26px, 8vw, 32px);}}
@media (max-width: 480px){.rsg-page .final-cta .fc-lede{font-size: 15px;}}
@media (max-width: 480px){.rsg-page .faq-v2 .faq-item details summary{padding: 16px 16px; gap: 10px; grid-template-columns: 32px 1fr 26px;}}
@media (max-width: 480px){.rsg-page .faq-v2 .faq-item .faq-q{font-size: 12px; letter-spacing: 0.03em;}}
@media (max-width: 480px){.rsg-page .faq-v2 .faq-cta{padding: 18px 18px;}}
@media (max-width: 480px){.rsg-page .tc-attrib{padding: 6px 16px 6px 6px; gap: 10px;}}
@media (max-width: 480px){.rsg-page .tc-attrib-text strong{font-size: 15px;}}
@media (max-width: 480px){.rsg-page .tc-quote-normal, .rsg-page .tc-quote-highlight{font-size: 14px; line-height: 1.55;}}
@media (max-width: 480px){.rsg-page .tc-slide{padding: 22px 16px; gap: 18px;}}
@media (max-width: 480px){.rsg-page .hero-cpl-card{right: 8px; padding: 10px 12px;}}
@media (max-width: 480px){.rsg-page .hero-partner-badge{font-size: 9px; padding: 5px 10px;}}
/* Prevent horizontal scroll from any rogue overflow */
.rsg-page{overflow-x: hidden;}
.rsg-page img, .rsg-page svg{max-width: 100%;}
@media (max-width: 640px){/* Hide hero CPL card + partner badge on small phones; the 3 benefit pills stay (positioned in the &le;640 block below, after the base rule) */
  .rsg-page .hero-cpl-card, .rsg-page .hero-partner-badge{display: none !important;}}
@media (max-width: 640px){/* Give the phone mockup room so the Map Pack listing reads cleanly (left-anchored, backdrop stays right) */
  .rsg-page .phone-shell{left: 8px; transform: none; width: 214px; height: 420px; bottom: 22px;}}
@media (max-width: 640px){.rsg-page .phone-screen{width: 202px; height: 408px;}}
@media (max-width: 640px){.rsg-page .ph-listing{margin: 0 11px; padding: 11px;}}
@media (max-width: 640px){.rsg-page .ph-listing-thumb{width: 44px; height: 44px;}}
@media (max-width: 640px){.rsg-page .ph-listing-thumb .pt-icon{width: 21px; height: 21px;}}
@media (max-width: 640px){.rsg-page .ph-biz-name{font-size: 12.5px; line-height: 1.25;}}
@media (max-width: 640px){.rsg-page .ph-sponsored-lbl{font-size: 8.5px; padding: 9px 12px 4px;}}
@media (max-width: 640px){/* Allow #how-lsa-vs-channels CTA button text to wrap */
  .rsg-page #how-lsa-vs-channels .btn-large{font-size: 12.5px; padding: 11px 14px;}}
@media (max-width: 400px){.rsg-page .platform-hero{height: 520px;}}
@media (max-width: 400px){.rsg-page .phone-shell{width: 198px; height: 392px;}}
@media (max-width: 400px){.rsg-page .phone-screen{width: 186px; height: 380px;}}
@media (max-width: 480px){/* CPL viz &mdash; even tighter */
  .rsg-page .viz-cpl .vcpl-row{grid-template-columns: 60px 1fr; gap: 8px;}}
@media (max-width: 480px){.rsg-page .viz-cpl .vcpl-label{font-size: 11px;}}
@media (max-width: 480px){.rsg-page .viz-cpl .vcpl-fill{font-size: 11px; padding: 0 8px;}}
@media (max-width: 480px){.rsg-page .viz-cpl .vcpl-axis{padding-left: 68px; font-size: 8px;}}
@media (max-width: 480px){/* Stats single col */
  .rsg-page .wr-mock .wr-stats{grid-template-columns: 1fr;}}
@media (max-width: 480px){.rsg-page .wr-mock .wr-stat:last-child{grid-column: span 1;}}
/* ===== Defensive SVG sizing &mdash; kills theme overrides that inflate inline icons in buttons ===== */
.rsg-page .btn svg, .rsg-page .btn-large svg, .rsg-page a.btn svg, .rsg-page a.btn-large svg, .rsg-page a.btn-primary svg, .rsg-page a.btn-ghost svg{width: 18px !important; height: 18px !important; max-width: 18px !important; max-height: 18px !important; min-width: 0 !important; min-height: 0 !important; flex-shrink: 0 !important; display: inline-block !important; vertical-align: middle !important;}
.rsg-page .btn-large svg{margin-right: 6px !important;}
/* ===== Force white text inside onboarding phase badges (30 DAYS / 90 DAYS circles) ===== */
.rsg-page .onboarding-callout .ob-phase .ob-num,
.rsg-page .onboarding-callout .ob-phase .ob-num strong,
.rsg-page .onboarding-callout .ob-phase .ob-num span{color: #FFFFFF !important;}
/* ============================================================
   PPC PAGE SUPPLEMENTARY COMPONENTS (May 2026)
   Uses the existing design tokens only. PPC-specific visuals.
   ============================================================ */
/* Hero benefit pill stack (bottom-right corner of the graphic) */
.rsg-page .hero-pill-stack{position: absolute; bottom: 22px; right: -56px; z-index: 5; display: flex; flex-direction: column; gap: 10px; align-items: flex-end;}
.rsg-page .hps-pill{display: inline-flex; align-items: center; gap: 8px; background: #fff; border: 1px solid var(--line); border-radius: 999px; padding: 6px 15px 6px 6px; box-shadow: 0 10px 26px rgba(0,0,0,0.16), 0 2px 8px rgba(0,0,0,0.07); white-space: nowrap;}
.rsg-page .hps-pill .hps-ic{width: 24px; height: 24px; border-radius: 50%; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; box-shadow: 0 3px 8px rgba(32,157,80,0.28);}
.rsg-page .hps-pill .hps-ic svg{width: 13px; height: 13px;}
.rsg-page .hps-pill .hps-txt{font-family: var(--font-display); font-size: 11.5px; font-weight: 700; color: var(--ink-900); letter-spacing: -0.005em;}
.rsg-page .hps-pill .hps-txt span{font-weight: 500; color: var(--ink-500);}
@media (max-width: 640px){/* keep the 3 hero benefit pills on-screen (this block is AFTER the base .hero-pill-stack rule, so it wins) */
  .rsg-page .hero-pill-stack{right: 8px; bottom: 12px; left: auto; width: auto; max-width: 64%; gap: 6px; align-items: flex-end;}}
@media (max-width: 640px){.rsg-page .hps-pill{padding: 5px 11px 5px 5px; gap: 7px; max-width: 100%;}}
@media (max-width: 640px){.rsg-page .hps-pill .hps-ic{width: 21px; height: 21px;}}
@media (max-width: 640px){.rsg-page .hps-pill .hps-ic svg{width: 11px; height: 11px;}}
@media (max-width: 640px){.rsg-page .hps-pill .hps-txt{font-size: 10px; white-space: normal;}}
/* Light tip callout (lightbulb + bold prefix + supporting text) */
.rsg-page .ppc-tip{display: flex; align-items: flex-start; gap: 14px; background: linear-gradient(135deg, var(--paper-soft) 0%, var(--green-50) 100%); border: 1px solid var(--line); border-left: 5px solid var(--green-500); border-radius: 10px; padding: 18px 22px; margin: 28px 0 0;}
.rsg-page .ppc-tip .ppct-icon{width: 38px; height: 38px; border-radius: 9px; background: rgba(44,122,75,0.10); display: flex; align-items: center; justify-content: center; flex-shrink: 0;}
.rsg-page .ppc-tip .ppct-icon svg{width: 20px; height: 20px; stroke: var(--green-500); fill: none;}
.rsg-page .ppc-tip p{margin: 0; font-size: 14px; line-height: 1.62; color: var(--ink-2);}
.rsg-page .ppc-tip p strong{color: var(--green-700);}
/* SERP screenshot + tip side-by-side row */
.rsg-page .ppc-serp-row{display: grid; grid-template-columns: 1.08fr 1fr; gap: 28px; align-items: stretch; margin: 0 0 32px;}
.rsg-page .ppc-serp-row .ai-dashboard{margin: 0;}
/* Jargon glossary panel (graphic, fills height beside the screenshot) */
.rsg-page .jargon-panel{background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 22px 24px; box-shadow: var(--shadow-md); display: flex; flex-direction: column; gap: 14px; height: 100%; position: relative; overflow: hidden;}
.rsg-page .jargon-panel::before{content: ""; position: absolute; top: -70px; right: -70px; width: 190px; height: 190px; background: radial-gradient(circle, rgba(32,157,80,0.08) 0%, transparent 70%); pointer-events: none;}
.rsg-page .jargon-panel .jp-eyebrow{font-family: var(--font-mono); font-size: 10.5px; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 700; color: var(--green-700); display: inline-flex; align-items: center; gap: 8px; position: relative;}
.rsg-page .jargon-panel .jp-eyebrow::before{content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--green-500); box-shadow: 0 0 0 4px rgba(44,122,75,0.14);}
.rsg-page .jp-terms{flex: 1; display: flex; flex-direction: column; gap: 10px;}
.rsg-page .jp-term{flex: 1; display: flex; align-items: center; gap: 14px; background: var(--paper-soft); border: 1px solid var(--line-2); border-radius: 12px; padding: 12px 16px; transition: border-color .2s, box-shadow .2s, transform .2s;}
.rsg-page .jp-term:hover{border-color: rgba(44,122,75,0.30); box-shadow: 0 8px 20px rgba(0,0,0,0.05); transform: translateY(-1px);}
.rsg-page .jp-term .jp-ic{width: 46px; height: 46px; border-radius: 12px; background: #fff; border: 1px solid var(--line); display: flex; align-items: center; justify-content: center; flex-shrink: 0; box-shadow: 0 2px 8px rgba(0,0,0,0.05);}
.rsg-page .jp-term .jp-ic svg{width: 24px; height: 24px;}
.rsg-page .jp-term .jp-ic img{max-width: 27px; max-height: 27px; width: auto; height: auto; display: block;}
.rsg-page .jp-term strong{display: block; font-family: var(--font-display); font-size: 15px; font-weight: 700; color: var(--ink-900); margin-bottom: 2px; letter-spacing: -0.005em;}
.rsg-page .jp-term p{margin: 0; font-size: 12.5px; line-height: 1.45; color: var(--ink-2);}
.rsg-page .jp-takeaway{background: linear-gradient(135deg, var(--paper-soft) 0%, var(--green-50) 100%); border: 1px solid rgba(44,122,75,0.18); border-left: 4px solid var(--green-500); border-radius: 0 10px 10px 0; padding: 13px 16px; font-size: 12.5px; line-height: 1.5; color: var(--ink-2); position: relative;}
.rsg-page .jp-takeaway strong{color: var(--green-700);}
@media (max-width: 880px){.rsg-page .ppc-serp-row{grid-template-columns: 1fr; gap: 22px; align-items: start;}}
@media (max-width: 880px){.rsg-page .jargon-panel{height: auto;}}
@media (max-width: 880px){.rsg-page .jp-term{flex: none;}}
/* Google ad-type comparison table */
.rsg-page .adtype-table{background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); overflow: hidden; box-shadow: var(--shadow-md); margin: 0 0 8px;}
.rsg-page .adtype-table table{width: 100%; border-collapse: collapse;}
.rsg-page .adtype-table thead th{text-align: left; padding: 16px 24px; background: linear-gradient(180deg, #fff, var(--paper-soft)); font-family: var(--font-mono); font-size: 10.5px; letter-spacing: 0.12em; text-transform: uppercase; font-weight: 700; color: var(--ink-700); border-bottom: 2px solid var(--line);}
.rsg-page .adtype-table tbody tr{transition: background .2s;}
.rsg-page .adtype-table tbody tr:hover{background: var(--paper-soft);}
.rsg-page .adtype-table tbody td{padding: 18px 24px; font-size: 13.5px; line-height: 1.55; color: var(--ink-2); border-bottom: 1px solid var(--line-2); vertical-align: middle;}
.rsg-page .adtype-table tbody tr:last-child td{border-bottom: 0;}
.rsg-page .adtype-table .at-typecell{display: flex; align-items: center; gap: 13px;}
.rsg-page .adtype-table .at-ic{width: 44px; height: 44px; border-radius: 11px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; background: #fff; border: 1px solid var(--line); box-shadow: 0 2px 8px rgba(0,0,0,0.05);}
.rsg-page .adtype-table .at-ic svg{width: 24px; height: 24px;}
.rsg-page .adtype-table .at-ic img{max-width: 28px; max-height: 28px; width: auto; height: auto; display: block;}
.rsg-page .adtype-table .at-name{font-family: var(--font-display); font-weight: 700; color: var(--ink-900); font-size: 14px; line-height: 1.25;}
.rsg-page .adtype-table tbody td{border-bottom: 0;}
.rsg-page .adtype-table tr.featured-row{background: linear-gradient(90deg, rgba(44,122,75,0.05), transparent);}
.rsg-page .adtype-table .at-rel{display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-bottom: 9px;}
.rsg-page .adtype-table .at-meter{display: inline-flex; gap: 4px;}
.rsg-page .adtype-table .at-meter i{width: 15px; height: 5px; border-radius: 3px; background: var(--line);}
.rsg-page .adtype-table tr.lvl-high .at-meter i.on{background: var(--green-500);}
.rsg-page .adtype-table tr.lvl-med .at-meter i.on{background: #E78A2C;}
.rsg-page .adtype-table tr.lvl-low .at-meter i.on{background: #94A3B8;}
.rsg-page .adtype-table tr.lvl-risk .at-meter i.on{background: var(--red);}
.rsg-page .adtype-table .rel-pill{display: inline-flex; align-items: center; gap: 6px; padding: 4px 11px; border-radius: 999px; font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.07em; text-transform: uppercase; font-weight: 700;}
.rsg-page .adtype-table .rel-pill::before{content: ""; width: 6px; height: 6px; border-radius: 50%; background: currentColor;}
.rsg-page .adtype-table .rel-high{background: var(--green-50); color: var(--green-700);}
.rsg-page .adtype-table .rel-med{background: rgba(231,138,44,0.13); color: #B45309;}
.rsg-page .adtype-table .rel-low{background: rgba(100,116,139,0.12); color: #64748B;}
.rsg-page .adtype-table .rel-risk{background: rgba(200,32,43,0.10); color: var(--red);}
.rsg-page .adtype-table .at-relnote{display: block; font-size: 13px; color: var(--ink-2); line-height: 1.5;}
/* CPC market-tier bars */
.rsg-page .cpc-tiers{display: grid; gap: 18px; background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 28px 32px; box-shadow: var(--shadow-md); margin: 0 0 22px;}
.rsg-page .cpc-row{display: grid; grid-template-columns: 240px 1fr; gap: 18px; align-items: center;}
.rsg-page .cpc-label{font-family: var(--font-display); font-size: 14px; font-weight: 700; color: var(--ink-900);}
.rsg-page .cpc-label small{display: block; font-family: var(--font-mono); font-size: 9.5px; font-weight: 600; color: var(--ink-500); letter-spacing: 0.06em; text-transform: uppercase; margin-top: 3px;}
.rsg-page .cpc-bar{height: 38px; border-radius: 8px; background: var(--paper-soft); position: relative; overflow: hidden; border: 1px solid var(--line-2);}
.rsg-page .cpc-fill{position: absolute; top: 0; bottom: 0; left: 0; border-radius: 8px; display: flex; align-items: center; padding: 0 14px; color: #fff; font-family: var(--font-display); font-weight: 800; font-size: 13.5px; letter-spacing: -0.01em;}
.rsg-page .cpc-fill.t1{width: 32%; background: linear-gradient(90deg, var(--green-500), var(--green-700)); box-shadow: 0 4px 12px rgba(32,157,80,0.22);}
.rsg-page .cpc-fill.t2{width: 58%; background: linear-gradient(90deg, #E78A2C, #B45309); box-shadow: 0 4px 12px rgba(231,138,44,0.20);}
.rsg-page .cpc-fill.t3{width: 92%; background: linear-gradient(90deg, var(--red), #9F1219); box-shadow: 0 4px 12px rgba(200,32,43,0.20);}
.rsg-page .cpc-val-out{position: absolute; top: 0; bottom: 0; display: flex; align-items: center; margin-left: 12px; color: var(--ink-900); font-family: var(--font-display); font-weight: 700; font-size: 13px; white-space: nowrap;}
.rsg-page .cpc-peak{display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 4px;}
.rsg-page .cpc-peak-card{background: var(--paper-soft); border: 1px solid var(--line); border-radius: 12px; padding: 18px 20px;}
.rsg-page .cpc-peak-card .cpk-lbl{font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--ink-500); font-weight: 700; margin-bottom: 6px;}
.rsg-page .cpc-peak-card .cpk-val{font-family: var(--font-display); font-size: 24px; font-weight: 800; color: var(--ink-900); line-height: 1;}
.rsg-page .cpc-peak-card .cpk-sub{font-size: 12.5px; color: var(--ink-2); margin-top: 8px; line-height: 1.5;}
/* "Where budgets get wasted" loss list */
.rsg-page .waste-list{list-style: none; margin: 0; padding: 0; display: grid; gap: 14px;}
.rsg-page .waste-list li{position: relative; overflow: hidden; display: flex; align-items: center; gap: 16px; background: #fff; border: 1px solid var(--line); border-left: 4px solid var(--red); border-radius: 14px; padding: 18px 22px; box-shadow: var(--shadow-md);}
.rsg-page .waste-list li::after{content: ""; position: absolute; top: -40px; right: -40px; width: 130px; height: 130px; background: radial-gradient(circle, rgba(200,32,43,0.07) 0%, transparent 70%); pointer-events: none;}
.rsg-page .waste-list .wi-ic{position: relative; z-index: 1; width: 42px; height: 42px; border-radius: 11px; background: linear-gradient(135deg, #E2434E, var(--red)); color: #fff; display: flex; align-items: center; justify-content: center; flex-shrink: 0; box-shadow: 0 6px 16px rgba(200,32,43,0.3);}
.rsg-page .waste-list .wi-ic svg{width: 21px; height: 21px;}
.rsg-page .waste-list .wi-text{position: relative; z-index: 1; font-size: 14.5px; font-weight: 600; color: var(--ink-900); line-height: 1.4;}
.rsg-page .waste-split{display: grid; grid-template-columns: 1.5fr 1fr; gap: 24px; align-items: stretch;}
.rsg-page .waste-split .waste-list{align-content: start;}
.rsg-page .waste-aside{position: relative; overflow: hidden; background: linear-gradient(150deg, #10231A 0%, #0A0A0A 55%, #0E1A13 100%); border: 1px solid rgba(44,122,75,0.30); border-radius: 18px; padding: 32px 30px; display: flex; flex-direction: column; justify-content: center; gap: 15px; box-shadow: 0 24px 56px rgba(0,0,0,0.32);}
.rsg-page .waste-aside::before{content: ""; position: absolute; top: -70px; left: -50px; width: 200px; height: 200px; background: radial-gradient(circle, rgba(44,122,75,0.30) 0%, transparent 70%); pointer-events: none;}
.rsg-page .waste-aside::after{content: ""; position: absolute; bottom: -80px; right: -60px; width: 240px; height: 240px; background: radial-gradient(circle, rgba(44,122,75,0.22) 0%, transparent 70%); pointer-events: none;}
.rsg-page .waste-aside .wa-eyebrow{position: relative; z-index: 1; display: inline-flex; align-items: center; gap: 8px; align-self: flex-start; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 700; color: var(--green-500); background: rgba(44,122,75,0.16); border: 1px solid rgba(44,122,75,0.32); padding: 6px 14px; border-radius: 999px;}
.rsg-page .waste-aside .wa-eyebrow::before{content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--green-500); box-shadow: 0 0 8px var(--green-500);}
.rsg-page .waste-aside .wa-ic{position: relative; z-index: 1; width: 58px; height: 58px; border-radius: 16px; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: flex; align-items: center; justify-content: center; box-shadow: 0 0 0 6px rgba(44,122,75,0.15), 0 12px 28px rgba(32,157,80,0.5);}
.rsg-page .waste-aside .wa-ic svg{width: 29px; height: 29px;}
.rsg-page .waste-aside .wa-title{position: relative; z-index: 1; font-family: var(--font-display); font-size: 20px; font-weight: 800; color: #fff; margin: 2px 0 0; letter-spacing: -0.01em; line-height: 1.2;}
.rsg-page .waste-aside .wa-text{position: relative; z-index: 1; font-size: 13.5px; line-height: 1.6; color: rgba(255,255,255,0.72); margin: 0;}
.rsg-page .waste-aside .wa-goal{position: relative; z-index: 1; font-size: 13.5px; line-height: 1.55; color: rgba(255,255,255,0.85); background: rgba(44,122,75,0.14); border: 1px solid rgba(44,122,75,0.3); border-left: 4px solid var(--green-500); border-radius: 10px; padding: 13px 16px;}
.rsg-page .waste-aside .wa-goal strong{color: #fff;}
.rsg-page .waste-aside .wa-outcome{position: relative; z-index: 1; display: inline-flex; align-items: center; gap: 8px; align-self: flex-start; background: linear-gradient(135deg, var(--green-500), var(--green-600)); color: #fff; font-family: var(--font-display); font-size: 12.5px; font-weight: 700; padding: 10px 18px; border-radius: 999px; box-shadow: 0 8px 22px rgba(32,157,80,0.45);}
.rsg-page .waste-aside .wa-outcome svg{width: 15px; height: 15px;}
.rsg-page .faq-v2 .faq-cta-icon svg{width: 22px; height: 22px;}
@media (max-width: 640px){.rsg-page .pp-close .pp-final-cta{white-space: normal !important; width: 100%; justify-content: center; text-align: center; line-height: 1.35; padding: 14px 18px; font-size: 13.5px;}}
@media (max-width: 860px){.rsg-page .waste-split{grid-template-columns: 1fr;}}
/* Sub-topic label inside a section */
.rsg-page .ppc-subhead{font-family: var(--font-display); font-size: 21px; font-weight: 700; color: var(--ink-900); margin: 44px 0 8px; letter-spacing: -0.01em;}
.rsg-page .ppc-subhead:first-of-type{margin-top: 0;}
.rsg-page .ppc-sub-lede{font-size: 15px; color: var(--ink-2); line-height: 1.62; margin: 0 0 22px;}
.rsg-page .section-header .lede{max-width: none; text-wrap: pretty;}
/* Landing-page build elements (5 cards) */
.rsg-page .lp-grid{display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px;}
.rsg-page .lp-card{background: #fff; border: 1px solid var(--line); border-radius: 16px; padding: 24px 26px; position: relative; overflow: hidden; transition: transform .25s, box-shadow .25s;}
.rsg-page .lp-card:hover{transform: translateY(-3px); box-shadow: 0 16px 36px rgba(0,0,0,0.07);}
.rsg-page .lp-card .lpc-ic{width: 46px; height: 46px; border-radius: 12px; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: flex; align-items: center; justify-content: center; margin-bottom: 14px; box-shadow: 0 8px 20px rgba(32,157,80,0.22);}
.rsg-page .lp-card .lpc-ic svg{width: 22px; height: 22px;}
.rsg-page .lp-card h4{font-family: var(--font-display); font-size: 16.5px; font-weight: 700; color: var(--ink-900); margin: 0 0 8px; line-height: 1.3;}
.rsg-page .lp-card p{margin: 0; font-size: 13.5px; line-height: 1.6; color: var(--ink-2);}
.rsg-page .lp-card.lp-wide{grid-column: 1 / -1;}
.rsg-page .lp-pair{display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 36px; align-items: center; margin: 0 0 10px;}
.rsg-page .lp-pair .lp-mock{display: flex; align-items: center;}
.rsg-page .lp-pair .ai-dashboard{margin: 0; width: 100%; max-width: 600px;}
.rsg-page .lp-mock{position: relative;}
.rsg-page .lp-mock-badge{position: absolute; top: -12px; right: 16px; z-index: 3; background: var(--green-500); color: #fff; font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.1em; text-transform: uppercase; font-weight: 700; padding: 6px 14px; border-radius: 999px; box-shadow: 0 8px 20px rgba(32,157,80,0.35); display: inline-flex; align-items: center; gap: 6px;}
.rsg-page .lp-mock-badge svg{width: 12px; height: 12px;}
.rsg-page .need-flow{position: relative; display: flex; flex-direction: column; justify-content: space-between; height: 100%; gap: 24px; padding-left: 4px;}
.rsg-page .need-flow::before{content: ""; position: absolute; left: 28px; top: 26px; bottom: 26px; width: 2px; background: linear-gradient(180deg, var(--green-500) 0%, rgba(44,122,75,0.22) 100%); border-radius: 2px;}
.rsg-page .need-step{position: relative; display: flex; gap: 20px; align-items: flex-start;}
.rsg-page .need-step .ns-node{position: relative; z-index: 1; width: 50px; height: 50px; border-radius: 15px; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: flex; align-items: center; justify-content: center; flex-shrink: 0; box-shadow: 0 0 0 6px rgba(44,122,75,0.10), 0 10px 24px rgba(32,157,80,0.34);}
.rsg-page .need-step .ns-node svg{width: 23px; height: 23px;}
.rsg-page .need-step .ns-body{padding-top: 7px;}
.rsg-page .need-step h4{font-family: var(--font-display); font-size: 16px; font-weight: 700; color: var(--ink-900); margin: 0 0 5px;}
.rsg-page .need-step p{font-size: 13.5px; line-height: 1.55; margin: 0; color: var(--ink-2);}
.rsg-page .need-flow .ns-deco{position: absolute; left: 29px; width: 11px; height: 11px; border-radius: 50%; background: var(--green-500); transform: translate(-50%, -50%); box-shadow: 0 0 0 5px rgba(44,122,75,0.12); animation: pulse 2.6s ease-in-out infinite; z-index: 0;}
.rsg-page .need-flow .ns-deco.d2{animation-delay: 1.3s;}
.rsg-page .need-flow .ns-spark{position: absolute; left: 29px; width: 5px; height: 5px; border-radius: 50%; background: rgba(44,122,75,0.45); transform: translate(-50%, -50%);}
.rsg-page .need-timeline{position: relative; display: flex; flex-direction: column; gap: 20px;}
.rsg-page .need-timeline::before{content: ""; position: absolute; left: 28px; top: 36px; bottom: 36px; width: 2px; background: linear-gradient(180deg, var(--green-500) 0%, rgba(44,122,75,0.2) 100%); z-index: 0;}
.rsg-page .nt-row{position: relative; display: grid; grid-template-columns: 56px 1fr; gap: 20px; align-items: center;}
.rsg-page .nt-badge{position: relative; z-index: 1; width: 56px; height: 56px; border-radius: 50%; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: flex; align-items: center; justify-content: center; font-family: var(--font-display); font-weight: 800; font-size: 16px; letter-spacing: 0.02em; box-shadow: 0 8px 20px rgba(32,157,80,0.3);}
.rsg-page .nt-badge::before{content: ""; position: absolute; inset: -6px; border: 2px dashed rgba(44,122,75,0.35); border-radius: 50%;}
.rsg-page .nt-card{background: #fff; border: 1px solid var(--line); border-radius: 14px; padding: 18px 22px; box-shadow: var(--shadow-md); transition: transform .2s, box-shadow .2s, border-color .2s;}
.rsg-page .nt-card:hover{transform: translateY(-2px); border-color: rgba(44,122,75,0.3); box-shadow: 0 14px 30px rgba(0,0,0,0.07);}
.rsg-page .nt-card h4{font-family: var(--font-display); font-size: 16px; font-weight: 700; color: var(--ink-900); margin: 0 0 5px;}
.rsg-page .nt-card p{font-size: 13.5px; line-height: 1.55; margin: 0; color: var(--ink-2);}
.rsg-page .setup-intro{margin: 0 0 22px;}
.rsg-page .setup-eyebrow{display: inline-flex; align-items: center; gap: 11px; background: rgba(44,122,75,0.08); color: var(--green-700); font-family: var(--font-mono); font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; font-weight: 700; padding: 7px 18px 7px 7px; border-radius: 999px; margin-bottom: 16px;}
.rsg-page .setup-eyebrow .se-ic{width: 30px; height: 30px; border-radius: 50%; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: flex; align-items: center; justify-content: center; box-shadow: 0 4px 12px rgba(32,157,80,0.3);}
.rsg-page .setup-eyebrow .se-ic svg{width: 15px; height: 15px;}
.rsg-page .setup-intro h3{font-family: var(--font-display); font-size: 23px; font-weight: 800; color: var(--ink-900); margin: 0 0 8px; letter-spacing: -0.01em;}
.rsg-page .setup-intro p{font-size: 15px; color: var(--ink-2); margin: 0;}
.rsg-page .setup-grid{display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin: 0 0 36px;}
.rsg-page .setup-item{position: relative; overflow: hidden; display: flex; gap: 16px; align-items: flex-start; background: #fff; border: 1px solid var(--line); border-radius: 16px; padding: 24px 26px; box-shadow: var(--shadow-md); transition: transform .25s, box-shadow .25s, border-color .25s;}
.rsg-page .setup-item::after{content: ""; position: absolute; top: -45px; right: -45px; width: 140px; height: 140px; background: radial-gradient(circle, rgba(44,122,75,0.08) 0%, transparent 70%); pointer-events: none;}
.rsg-page .setup-item:hover{transform: translateY(-3px); border-color: rgba(44,122,75,0.35); box-shadow: 0 18px 40px rgba(0,0,0,0.09);}
.rsg-page .setup-item .su-ic{position: relative; z-index: 1; width: 48px; height: 48px; border-radius: 14px; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: flex; align-items: center; justify-content: center; flex-shrink: 0; box-shadow: 0 8px 20px rgba(32,157,80,0.28);}
.rsg-page .setup-item .su-ic svg{width: 23px; height: 23px;}
.rsg-page .setup-item .su-body{position: relative; z-index: 1;}
.rsg-page .setup-item strong{display: block; font-family: var(--font-display); font-size: 15.5px; font-weight: 700; color: var(--ink-900); margin: 0 0 6px; line-height: 1.3;}
.rsg-page .setup-item p{font-size: 13px; line-height: 1.55; margin: 0; color: var(--ink-2);}
@media (max-width: 760px){.rsg-page .setup-grid{grid-template-columns: 1fr;}}
.rsg-page .cs-window img{display: block; width: 100%; height: auto;}
.rsg-page .cs-right{flex-direction: column; align-items: stretch; justify-content: flex-start; gap: 16px;}
.rsg-page .cs-right .cs-window.cs-window-wide{margin-top: 0;}
.rsg-page .cs-window.cs-window-wide{margin-top: 20px;}
.rsg-page .build-list{display: grid; grid-template-columns: 1fr 1fr; gap: 18px;}
.rsg-page .build-item{position: relative; overflow: hidden; display: flex; gap: 16px; align-items: flex-start; background: #fff; border: 1px solid var(--line); border-radius: 16px; padding: 24px 26px; box-shadow: var(--shadow-md); transition: border-color .25s, box-shadow .25s, transform .25s;}
.rsg-page .build-item::after{content: ""; position: absolute; top: -45px; right: -45px; width: 145px; height: 145px; background: radial-gradient(circle, rgba(44,122,75,0.09) 0%, transparent 70%); pointer-events: none;}
.rsg-page .build-item:hover{border-color: rgba(44,122,75,0.35); box-shadow: 0 18px 40px rgba(0,0,0,0.09); transform: translateY(-3px);}
.rsg-page .build-item .bi-ic{position: relative; z-index: 1; width: 50px; height: 50px; border-radius: 14px; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: flex; align-items: center; justify-content: center; flex-shrink: 0; box-shadow: 0 8px 20px rgba(32,157,80,0.28);}
.rsg-page .build-item .bi-ic svg{width: 24px; height: 24px;}
.rsg-page .build-item .bi-incl{position: absolute; top: 16px; right: 16px; z-index: 2; width: 24px; height: 24px; border-radius: 50%; background: var(--green-50); color: var(--green-600); display: flex; align-items: center; justify-content: center;}
.rsg-page .build-item .bi-incl svg{width: 13px; height: 13px;}
.rsg-page .build-item .bi-body{position: relative; z-index: 1; padding-right: 16px;}
.rsg-page .build-item h4{font-family: var(--font-display); font-size: 16px; font-weight: 700; color: var(--ink-900); margin: 0 0 5px;}
.rsg-page .build-item p{font-size: 13px; line-height: 1.55; margin: 0; color: var(--ink-2);}
.rsg-page .build-item.bi-wide{grid-column: 1 / -1;}
@media (max-width: 860px){.rsg-page .lp-pair{grid-template-columns: 1fr; gap: 24px;}}
@media (max-width: 860px){.rsg-page .need-flow{height: auto; gap: 30px;}}
@media (max-width: 860px){.rsg-page .build-list{grid-template-columns: 1fr;}}
.rsg-page .ppc-split{display: grid; grid-template-columns: 1fr 1fr; gap: 30px; align-items: stretch; margin: 0 0 10px;}
.rsg-page .ppc-split.flip .ppc-split-a{order: 2;}
.rsg-page .ppc-split .ppc-split-a{display: flex;}
.rsg-page .ppc-split .ai-dashboard{margin: 0; display: flex; flex-direction: column; width: 100%;}
.rsg-page .ppc-split .ai-dashboard img{flex: 1; min-height: 0; width: 100%; object-fit: cover; object-position: top center;}
.rsg-page .ppc-stack{display: flex; flex-direction: column; gap: 14px;}
.rsg-page .fit-spectrum{display: grid; grid-template-columns: 1fr auto 1fr auto 1fr; gap: 12px; align-items: center; margin: 0 0 40px;}
.rsg-page .fs-stage{background: #fff; border: 1px solid var(--line); border-radius: 16px; padding: 24px 18px; text-align: center; display: flex; flex-direction: column; align-items: center; gap: 5px; box-shadow: var(--shadow-md);}
.rsg-page .fs-stage .fs-ic{width: 48px; height: 48px; border-radius: 13px; background: var(--paper-soft); border: 1px solid var(--line); display: flex; align-items: center; justify-content: center; color: var(--ink-700); margin-bottom: 6px;}
.rsg-page .fs-stage .fs-ic svg{width: 23px; height: 23px;}
.rsg-page .fs-stage .fs-name{font-family: var(--font-display); font-size: 15.5px; font-weight: 800; color: var(--ink-900); letter-spacing: -0.01em;}
.rsg-page .fs-stage .fs-desc{font-size: 12px; color: var(--ink-500); line-height: 1.4;}
.rsg-page .fs-stage.featured{background: linear-gradient(160deg, #fff 0%, var(--green-50) 100%); border: 2px solid var(--green-500); box-shadow: 0 18px 38px rgba(32,157,80,0.16); transform: translateY(-8px);}
.rsg-page .fs-stage.featured .fs-ic{background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; border: 0; box-shadow: 0 6px 14px rgba(32,157,80,0.3);}
.rsg-page .fs-stage.featured .fs-name{color: var(--green-700);}
.rsg-page .fs-stage.featured .fs-tagline{font-family: var(--font-mono); font-size: 9px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--green-600); font-weight: 700; margin-top: 4px;}
.rsg-page .fs-arrow{display: flex; align-items: center; justify-content: center; color: var(--green-500);}
.rsg-page .fs-arrow svg{width: 24px; height: 24px;}
@media (max-width: 760px){.rsg-page .fit-spectrum{grid-template-columns: 1fr; gap: 10px;}}
@media (max-width: 760px){.rsg-page .fs-arrow{transform: rotate(90deg); margin: 2px 0;}}
@media (max-width: 760px){.rsg-page .fs-stage.featured{transform: none;}}
.rsg-page .rank-eq{display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; align-items: stretch; margin: 0 0 18px;}
.rsg-page .rank-eq .rk-card{position: relative; overflow: hidden; background: linear-gradient(160deg, rgba(255,255,255,0.06) 0%, rgba(44,122,75,0.07) 100%); border: 1px solid rgba(255,255,255,0.10); border-radius: 16px; padding: 28px 26px 26px; box-shadow: 0 20px 44px rgba(0,0,0,0.32); transition: transform .3s, box-shadow .3s, border-color .3s;}
.rsg-page .rank-eq .rk-card::before{content: ""; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: linear-gradient(90deg, var(--green-500), #6EE7B7);}
.rsg-page .rank-eq .rk-card::after{content: ""; position: absolute; top: -55px; right: -55px; width: 175px; height: 175px; background: radial-gradient(circle, rgba(44,122,75,0.30) 0%, transparent 70%); pointer-events: none;}
.rsg-page .rank-eq .rk-card:hover{transform: translateY(-4px); border-color: rgba(44,122,75,0.5); box-shadow: 0 30px 62px rgba(0,0,0,0.46), 0 0 0 1px rgba(44,122,75,0.3);}
.rsg-page .rank-eq .rk-ic{position: relative; z-index: 1; width: 52px; height: 52px; border-radius: 14px; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: flex; align-items: center; justify-content: center; margin-bottom: 18px; box-shadow: 0 0 0 6px rgba(44,122,75,0.15), 0 10px 26px rgba(32,157,80,0.55);}
.rsg-page .rank-eq .rk-ic svg{width: 25px; height: 25px;}
.rsg-page .rank-eq .rk-card h3{position: relative; z-index: 1; font-family: var(--font-display); font-size: 18px; font-weight: 800; color: #fff; margin: 0 0 9px; letter-spacing: -0.01em;}
.rsg-page .rank-eq .rk-card p{position: relative; z-index: 1; font-size: 13.5px; line-height: 1.6; margin: 0; color: rgba(255,255,255,0.74);}
.rsg-page .rank-eq .rk-op{display: flex; align-items: center; justify-content: center; font-family: var(--font-display); font-size: 28px; font-weight: 800; color: var(--green-500);}
.rsg-page .rank-result{position: relative; overflow: hidden; background: linear-gradient(135deg, rgba(44,122,75,0.2) 0%, rgba(255,255,255,0.03) 60%); border: 1px solid rgba(44,122,75,0.38); border-left: 5px solid var(--green-500); border-radius: 14px; padding: 22px 28px; box-shadow: 0 16px 40px rgba(0,0,0,0.32);}
.rsg-page .rank-result::after{content: ""; position: absolute; top: -70px; right: -50px; width: 240px; height: 240px; background: radial-gradient(circle, rgba(44,122,75,0.24) 0%, transparent 70%); pointer-events: none;}
.rsg-page .rank-result .rk-eq-sign{width: 46px; height: 46px; border-radius: 12px; background: linear-gradient(135deg, var(--green-500), var(--green-700)); display: flex; align-items: center; justify-content: center; flex-shrink: 0; box-shadow: 0 8px 20px rgba(32,157,80,0.4);}
.rsg-page .rank-result .rk-eq-sign svg{width: 22px; height: 22px; color: #fff;}
.rsg-page .rank-result p{position: relative; z-index: 1; margin: 0; font-size: 14.5px; line-height: 1.6; color: rgba(255,255,255,0.82);}
.rsg-page .rank-result p strong{color: #fff;}
@media (max-width: 860px){.rsg-page .rank-eq{grid-template-columns: 1fr;}}
@media (max-width: 860px){.rsg-page .rank-eq .rk-op{padding: 2px 0;}}
@media (max-width: 860px){.rsg-page .ppc-split, .rsg-page .ppc-split.flip{grid-template-columns: 1fr; gap: 22px;}}
@media (max-width: 860px){.rsg-page .ppc-split.flip .ppc-split-a{order: 0;}}
@media (max-width: 860px){.rsg-page .ppc-split .ppc-split-a{display: block;}}
@media (max-width: 860px){.rsg-page .ppc-split .ai-dashboard{display: block;}}
@media (max-width: 860px){.rsg-page .ppc-split .ai-dashboard img{flex: none; height: auto; object-fit: contain;}}
/* ============================================================
   §2 — "WHAT IS HVAC SEO" MACHINE LAYOUT (redesign, June 2026)
   ============================================================ */
.rsg-page .seo-lead-frame{margin: 0 0 20px;}
.rsg-page .seo-worktogether{font-size: 15.5px; line-height: 1.64; color: var(--ink-2); margin: 0 0 42px; max-width: none;}
.rsg-page .seo-worktogether strong{color: var(--ink-900);}
.rsg-page .seo-feature{display: grid; grid-template-columns: 1fr 1fr; gap: 44px; align-items: stretch; margin: 0 0 26px;}
.rsg-page .seo-feature.flip .seo-feature-media{order: 2;}
.rsg-page .seo-feature-media{min-width: 0; display: flex; align-items: center;}
.rsg-page .seo-feature-media .ai-dashboard{margin: 0; width: 100%;}
.rsg-page .seo-feature-body{display: flex; flex-direction: column; justify-content: center;}
.rsg-page .sf-eyebrow{display: inline-flex; align-items: center; gap: 10px; font-family: var(--font-mono); font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; font-weight: 700; color: var(--green-700); margin-bottom: 13px;}
.rsg-page .sf-eyebrow i{font-style: normal; width: 26px; height: 26px; border-radius: 7px; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: inline-flex; align-items: center; justify-content: center; font-size: 12px; font-weight: 800; box-shadow: 0 4px 10px rgba(32,157,80,0.3);}
.rsg-page .seo-feature-body h3{font-family: var(--font-display); font-size: 22px; font-weight: 800; color: var(--ink-900); margin: 0 0 10px; letter-spacing: -0.01em; line-height: 1.25;}
.rsg-page .seo-feature-body p{font-size: 14.5px; line-height: 1.64; color: var(--ink-2); margin: 0;}
/* infographic visuals that fill the text column */
.rsg-page .sf-viz{margin-top: 22px;}
.rsg-page .sf-statrow{display: flex; gap: 12px; margin-bottom: 16px; flex-wrap: wrap;}
.rsg-page .sf-stat{background: linear-gradient(135deg, var(--green-50), #fff); border: 1px solid rgba(44,122,75,0.22); border-radius: 12px; padding: 11px 17px;}
.rsg-page .sf-stat strong{display: block; font-family: var(--font-display); font-size: 19px; font-weight: 800; color: var(--green-700); line-height: 1; margin-bottom: 4px;}
.rsg-page .sf-stat span{font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--ink-500); font-weight: 700;}
.rsg-page .sf-checks{list-style: none; margin: 0; padding: 0; display: grid; gap: 12px;}
.rsg-page .sf-checks li{display: flex; align-items: center; gap: 12px; font-size: 13.5px; color: var(--ink-900); font-weight: 600;}
.rsg-page .sf-checks .sf-ck{width: 24px; height: 24px; border-radius: 7px; background: var(--green-50); color: var(--green-600); display: flex; align-items: center; justify-content: center; flex-shrink: 0;}
.rsg-page .sf-checks .sf-ck svg{width: 13px; height: 13px;}
.rsg-page .sf-rings{display: flex; gap: 12px;}
.rsg-page .sf-ring{display: flex; flex-direction: column; align-items: center; gap: 8px; flex: 1;}
.rsg-page .sf-ring-c{position: relative; width: 62px; height: 62px;}
.rsg-page .sf-ring-c svg{width: 62px; height: 62px; transform: rotate(-90deg);}
.rsg-page .sf-ring-v{position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; font-family: var(--font-display); font-weight: 800; font-size: 16px; color: var(--green-700);}
.rsg-page .sf-ring small{font-family: var(--font-mono); font-size: 8.5px; letter-spacing: 0.05em; text-transform: uppercase; color: var(--ink-500); font-weight: 700; text-align: center; line-height: 1.3;}
.rsg-page .sf-pills{display: flex; gap: 10px; flex-wrap: wrap; margin-bottom: 16px;}
.rsg-page .sf-pill{display: inline-flex; align-items: center; gap: 8px; background: #fff; border: 1px solid var(--line); border-radius: 999px; padding: 8px 16px; font-family: var(--font-display); font-weight: 700; font-size: 13px; color: var(--ink-900); box-shadow: 0 4px 12px rgba(0,0,0,0.05);}
.rsg-page .sf-pill .sf-dot{width: 9px; height: 9px; border-radius: 50%;}
.rsg-page .sf-hub{display: flex; align-items: center; gap: 12px; background: var(--paper-soft); border: 1px solid var(--line); border-radius: 14px; padding: 16px;}
.rsg-page .sf-hub-col{display: flex; flex-direction: column; gap: 7px;}
.rsg-page .sf-hub-tag{font-family: var(--font-mono); font-size: 9.5px; font-weight: 700; letter-spacing: 0.04em; color: var(--ink-700); background: #fff; border: 1px solid var(--line); border-radius: 7px; padding: 6px 9px; text-align: center; white-space: nowrap;}
.rsg-page .sf-hub-core{font-family: var(--font-display); font-weight: 800; font-size: 12.5px; color: #fff; background: linear-gradient(135deg, var(--green-500), var(--green-700)); border-radius: 10px; padding: 13px 12px; text-align: center; box-shadow: 0 8px 18px rgba(32,157,80,0.3); flex: 1;}
.rsg-page .sf-hub-core.dark{background: linear-gradient(135deg, #143E25, #0A0A0A); box-shadow: 0 8px 18px rgba(0,0,0,0.3);}
.rsg-page .sf-hub-arrow{color: var(--green-500); flex-shrink: 0;}
.rsg-page .sf-hub-arrow svg{width: 18px; height: 18px; display: block;}
.rsg-page .seo-phone-duo{display: flex; gap: 18px; justify-content: center; align-items: flex-start;}
.rsg-page .seo-phone{width: 50%; max-width: 210px; background: #0b0b0b; border-radius: 30px; padding: 7px; box-shadow: 0 24px 50px rgba(0,0,0,0.24), 0 6px 16px rgba(0,0,0,0.12); border: 1px solid rgba(0,0,0,0.45); position: relative;}
.rsg-page .seo-phone::before{content: ""; position: absolute; top: 15px; left: 50%; transform: translateX(-50%); width: 46px; height: 5px; border-radius: 3px; background: rgba(255,255,255,0.4); z-index: 2;}
.rsg-page .seo-phone img{display: block; width: 100%; height: auto; border-radius: 24px;}
.rsg-page .seo-web-duo{display: flex; gap: 18px; padding: 24px 26px; background: var(--paper-soft); justify-content: center; align-items: flex-start;}
.rsg-page .seo-web-duo img{width: 50%; max-width: 244px; height: auto; display: block; border-radius: 13px; box-shadow: 0 12px 28px rgba(0,0,0,0.13); border: 1px solid var(--line);}
.rsg-page .seo-gbp-wrap{position: relative;}
.rsg-page .seo-badge-float{position: absolute; right: -16px; bottom: -18px; background: #fff; border-radius: 13px; padding: 9px 11px; box-shadow: 0 16px 34px rgba(0,0,0,0.2); border: 1px solid var(--line); width: 230px; max-width: 62%; z-index: 4;}
.rsg-page .seo-badge-float img{display: block; width: 100%; height: auto; border-radius: 5px;}
.rsg-page .seo-trio{display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin: 16px 0 0;}
.rsg-page .seo-trio-card{background: #fff; border: 1px solid var(--line); border-radius: 16px; padding: 24px 26px; box-shadow: var(--shadow-md); transition: transform .25s, box-shadow .25s, border-color .25s; display: flex; flex-direction: column;}
.rsg-page .seo-trio-card:hover{transform: translateY(-3px); border-color: rgba(44,122,75,0.32); box-shadow: 0 16px 36px rgba(0,0,0,0.07);}
.rsg-page .seo-trio-card .st-ic{width: 44px; height: 44px; border-radius: 12px; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: flex; align-items: center; justify-content: center; margin-bottom: 14px; box-shadow: 0 8px 20px rgba(32,157,80,0.22);}
.rsg-page .seo-trio-card .st-ic svg{width: 21px; height: 21px;}
.rsg-page .seo-trio-card h4{font-family: var(--font-display); font-size: 16.5px; font-weight: 700; color: var(--ink-900); margin: 0 0 7px;}
.rsg-page .seo-trio-card p{font-size: 13.5px; line-height: 1.6; color: var(--ink-2); margin: 0;}
.rsg-page .st-foot{margin-top: auto; padding-top: 16px; border-top: 1px solid var(--line-2); display: flex; align-items: center; gap: 10px;}
.rsg-page .st-stars{display: inline-flex; gap: 2px;}
.rsg-page .st-stars svg{width: 15px; height: 15px;}
.rsg-page .st-foot-label{font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.04em; text-transform: uppercase; color: var(--ink-500); font-weight: 700; line-height: 1.3;}
.rsg-page .st-net{width: 30px; height: 30px; border-radius: 8px; background: var(--green-50); display: flex; align-items: center; justify-content: center; flex-shrink: 0;}
.rsg-page .st-net svg{width: 17px; height: 17px; color: var(--green-600);}
.rsg-page .st-tags{display: flex; gap: 7px; flex-wrap: wrap;}
.rsg-page .st-tag{font-family: var(--font-mono); font-size: 10px; font-weight: 700; letter-spacing: 0.03em; text-transform: uppercase; color: var(--green-700); background: var(--green-50); border: 1px solid rgba(44,122,75,0.2); border-radius: 6px; padding: 5px 9px;}
@media (max-width: 880px){.rsg-page .seo-feature, .rsg-page .seo-feature.flip{grid-template-columns: 1fr; gap: 24px;}}
@media (max-width: 880px){.rsg-page .seo-feature.flip .seo-feature-media{order: 0;}}
@media (max-width: 880px){.rsg-page .seo-trio{grid-template-columns: 1fr;}}
@media (max-width: 880px){.rsg-page .seo-phone{max-width: 178px;}}
@media (max-width: 880px){.rsg-page .seo-badge-float{position: static; width: auto; max-width: 280px; margin: 14px auto 0;}}
/* §4 — pain / symptom cards */
.rsg-page .pain-grid{display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin: 0 0 40px;}
.rsg-page .pain-card{position: relative; overflow: hidden; background: #fff; border: 1px solid var(--line); border-radius: 16px; padding: 24px 24px 22px; box-shadow: var(--shadow-md); display: flex; flex-direction: column; transition: transform .25s, box-shadow .25s, border-color .25s;}
.rsg-page .pain-foot{margin-top: auto; padding-top: 16px; border-top: 1px solid var(--line-2); display: flex; align-items: center; gap: 13px;}
.rsg-page .pain-foot svg{display: block; flex-shrink: 0;}
.rsg-page .pf-label{font-family: var(--font-mono); font-size: 9px; letter-spacing: 0.07em; text-transform: uppercase; font-weight: 700; color: var(--red); line-height: 1.4;}
.rsg-page .pain-card::after{content: ""; position: absolute; top: -40px; right: -40px; width: 130px; height: 130px; background: radial-gradient(circle, rgba(200,32,43,0.06) 0%, transparent 70%); pointer-events: none;}
.rsg-page .pain-card:hover{transform: translateY(-3px); border-color: rgba(200,32,43,0.28); box-shadow: 0 16px 36px rgba(0,0,0,0.08);}
.rsg-page .pain-ic{position: relative; z-index: 1; width: 44px; height: 44px; border-radius: 12px; background: linear-gradient(135deg, #E2434E, var(--red)); color: #fff; display: flex; align-items: center; justify-content: center; margin-bottom: 14px; box-shadow: 0 8px 18px rgba(200,32,43,0.26);}
.rsg-page .pain-ic svg{width: 21px; height: 21px;}
.rsg-page .pain-card h4{position: relative; z-index: 1; font-family: var(--font-display); font-size: 16px; font-weight: 700; color: var(--ink-900); margin: 0 0 7px; line-height: 1.3;}
.rsg-page .pain-card p{position: relative; z-index: 1; font-size: 13px; line-height: 1.58; color: var(--ink-2); margin: 0 0 16px;}
.rsg-page .pain-tag{position: relative; z-index: 1; margin-top: auto; align-self: flex-start; display: inline-flex; align-items: center; gap: 7px; font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.1em; text-transform: uppercase; font-weight: 700; color: var(--red); background: rgba(200,32,43,0.07); border: 1px solid rgba(200,32,43,0.2); border-radius: 7px; padding: 6px 11px;}
.rsg-page .pain-tag::before{content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--red); box-shadow: 0 0 0 3px rgba(200,32,43,0.14);}
@media (max-width: 900px){.rsg-page .pain-grid{grid-template-columns: 1fr 1fr;}}
@media (max-width: 600px){.rsg-page .pain-grid{grid-template-columns: 1fr;}}
/* §5 — "what makes HVAC SEO different" card footers (green positive visuals) */
.rsg-page .lp-grid-diff .lp-card{display: flex; flex-direction: column;}
.rsg-page .lp-grid-diff .lp-card p{margin-bottom: 18px;}
.rsg-page .diff-foot{margin-top: auto; padding-top: 15px; border-top: 1px solid var(--line-2);}
.rsg-page .df-cap{display: block; font-family: var(--font-mono); font-size: 9px; letter-spacing: 0.09em; text-transform: uppercase; font-weight: 700; color: var(--green-700); margin-bottom: 10px;}
.rsg-page .diff-foot svg{display: block; width: 100%; height: auto;}
/* §5 — Local vs National comparison (enhanced versus table) */
.rsg-page .vs-table{background:#fff; border:1px solid var(--line); border-radius: var(--radius-lg); box-shadow: var(--shadow-md); overflow:hidden; margin:0 0 8px;}
.rsg-page .vs-table table{width:100%; border-collapse:collapse;}
.rsg-page .vs-table th, .rsg-page .vs-table td{padding:15px 24px; text-align:left; vertical-align:middle;}
.rsg-page .vs-table thead th{border-bottom:2px solid var(--line); background:#fff;}
.rsg-page .vs-table tbody td{border-bottom:1px solid var(--line-2); font-size:13.5px; line-height:1.5; color:var(--ink-2);}
.rsg-page .vs-table tbody tr:last-child td{border-bottom:0;}
.rsg-page .vs-table tbody tr:hover td{background-color: rgba(0,0,0,0.012);}
.rsg-page .vs-table .vs-dim{width:206px; font-family:var(--font-display); font-weight:700; color:var(--ink-900); font-size:14px;}
.rsg-page .vs-table .vs-local{border-left:1px solid rgba(44,122,75,0.18); border-right:1px solid rgba(44,122,75,0.18); background: rgba(44,122,75,0.05);}
.rsg-page .vs-table thead .vs-local{background: linear-gradient(180deg, rgba(44,122,75,0.16), rgba(44,122,75,0.06));}
.rsg-page .vs-table tbody td.vs-local{color:var(--ink-900); font-weight:600;}
.rsg-page .vs-table tbody tr:hover td.vs-local{background-color: rgba(44,122,75,0.09);}
.rsg-page .vs-ck{display:inline-flex; width:19px; height:19px; border-radius:50%; background:var(--green-500); color:#fff; align-items:center; justify-content:center; margin-right:9px; vertical-align:-4px;}
.rsg-page .vs-ck svg{width:11px; height:11px;}
.rsg-page .vs-na{display:inline-flex; width:19px; height:19px; border-radius:50%; background:#EEF1F4; color:#AEB7C2; align-items:center; justify-content:center; margin-right:9px; vertical-align:-4px;}
.rsg-page .vs-na svg{width:10px; height:10px;}
.rsg-page .vs-thh{display:inline-flex; align-items:center; gap:11px;}
.rsg-page .vs-thh .vs-hic{width:33px; height:33px; border-radius:9px; display:flex; align-items:center; justify-content:center; flex-shrink:0;}
.rsg-page .vs-local .vs-hic{background:linear-gradient(135deg,var(--green-500),var(--green-700)); color:#fff; box-shadow:0 6px 14px rgba(32,157,80,0.3);}
.rsg-page .vs-nat .vs-hic{background:#EEF1F4; color:#94A3B8;}
.rsg-page .vs-thh .vs-hic svg{width:17px; height:17px;}
.rsg-page .vs-thh b{font-family:var(--font-display); font-weight:800; font-size:15px; color:var(--ink-900); letter-spacing:-0.01em; line-height:1.1;}
.rsg-page .vs-thh .vs-sub{display:block; font-family:var(--font-mono); font-size:9px; letter-spacing:0.1em; text-transform:uppercase; font-weight:700; margin-top:4px; color:var(--green-700);}
.rsg-page .vs-nat .vs-thh b{color:var(--ink-700);}
.rsg-page .vs-nat .vs-thh .vs-sub{color:var(--ink-500);}
@media (max-width:760px){.rsg-page .vs-table{overflow-x:auto;}}
@media (max-width:760px){.rsg-page .vs-table table{min-width:600px;}}
@media (max-width:760px){.rsg-page .vs-table .vs-dim{width:140px;}}
/* §6 — Mistake -> Fix transformation rows (refined) */
.rsg-page .fix-list{display: grid; gap: 18px; margin: 0 0 8px;}
.rsg-page .fix-row{position: relative; display: grid; grid-template-columns: 1fr 1fr; align-items: stretch; background: #fff; border: 1px solid var(--line); border-radius: 18px; box-shadow: 0 6px 20px rgba(0,0,0,0.05); overflow: hidden; transition: transform .25s, box-shadow .25s, border-color .25s;}
.rsg-page .fix-row:hover{transform: translateY(-3px); border-color: rgba(44,122,75,0.25); box-shadow: 0 20px 44px rgba(0,0,0,0.09);}
.rsg-page .fix-problem{display: flex; gap: 16px; align-items: flex-start; padding: 26px 48px 26px 28px;}
.rsg-page .fix-xic{width: 42px; height: 42px; border-radius: 12px; background: linear-gradient(135deg, #E2434E, var(--red)); color: #fff; display: flex; align-items: center; justify-content: center; flex-shrink: 0; box-shadow: 0 8px 18px rgba(200,32,43,0.28);}
.rsg-page .fix-xic svg{width: 20px; height: 20px;}
.rsg-page .fix-problem h4{font-family: var(--font-display); font-size: 16.5px; font-weight: 700; color: var(--ink-900); margin: 0 0 6px; line-height: 1.3;}
.rsg-page .fix-problem p{font-size: 13px; line-height: 1.58; color: var(--ink-2); margin: 0;}
.rsg-page .fix-fix{position: relative; display: flex; flex-direction: column; justify-content: center; gap: 11px; padding: 26px 30px 26px 48px; background: linear-gradient(135deg, #F1F8F3 0%, #E6F1E9 100%);}
.rsg-page .ff-pill{align-self: flex-start; display: inline-flex; align-items: center; gap: 7px; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; font-family: var(--font-mono); font-size: 9px; letter-spacing: 0.12em; text-transform: uppercase; font-weight: 700; padding: 5px 13px 5px 10px; border-radius: 999px; box-shadow: 0 5px 12px rgba(32,157,80,0.3);}
.rsg-page .ff-pill svg{width: 12px; height: 12px;}
.rsg-page .fix-fix p{font-family: var(--font-display); font-size: 14.5px; font-weight: 700; color: var(--ink-900); margin: 0; line-height: 1.4; letter-spacing: -0.01em;}
.rsg-page .fix-seam{position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); z-index: 3; width: 40px; height: 40px; border-radius: 50%; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: flex; align-items: center; justify-content: center; box-shadow: 0 0 0 5px #fff, 0 8px 18px rgba(32,157,80,0.4);}
.rsg-page .fix-seam svg{width: 18px; height: 18px;}
@media (max-width: 820px){.rsg-page .fix-row{grid-template-columns: 1fr;}}
@media (max-width: 820px){.rsg-page .fix-problem{padding: 24px 24px 26px;}}
@media (max-width: 820px){.rsg-page .fix-fix{padding: 24px 24px 26px;}}
@media (max-width: 820px){.rsg-page .fix-seam{display: none;}}
.rsg-page .shot-2up{display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin: 0 0 8px;}
.rsg-page .shot-2up .ai-dashboard{margin: 0;}
.rsg-page .nt-badge::before{display: none;}
.rsg-page .lp-pair-eq .need-timeline::before{display: none;}
.rsg-page .lp-pair-eq .nt-row{align-items: flex-start; position: relative;}
.rsg-page .lp-pair-eq .nt-badge{position: relative; z-index: 1;}
.rsg-page .lp-pair-eq .nt-row:not(:last-child)::after{content: ""; position: absolute; left: 27px; top: 28px; width: 2px; height: calc(100% + 20px); background: linear-gradient(180deg, var(--green-500), rgba(44,122,75,0.55)); z-index: 0;}
.rsg-page .howdo{position: relative; display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; margin: 0 0 8px;}
.rsg-page .howdo::before{content: ""; position: absolute; top: 34px; left: 17%; right: 17%; height: 2px; background: linear-gradient(90deg, rgba(44,122,75,0.12), rgba(44,122,75,0.4) 20%, rgba(44,122,75,0.4) 80%, rgba(44,122,75,0.12)); z-index: 0;}
.rsg-page .howdo-step{position: relative; z-index: 1; text-align: center; padding: 0 10px;}
.rsg-page .howdo-ic{width: 68px; height: 68px; border-radius: 50%; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: flex; align-items: center; justify-content: center; margin: 0 auto 18px; box-shadow: 0 0 0 6px #fff, 0 10px 24px rgba(32,157,80,0.32);}
.rsg-page .howdo-ic svg{width: 28px; height: 28px;}
.rsg-page .howdo-step h4{font-family: var(--font-display); font-size: 16.5px; font-weight: 700; color: var(--ink-900); margin: 0 0 8px; letter-spacing: -0.01em;}
.rsg-page .howdo-step p{font-size: 13.5px; line-height: 1.6; color: var(--ink-2); margin: 0;}
@media (max-width: 760px){.rsg-page .howdo{grid-template-columns: 1fr; gap: 30px;}}
@media (max-width: 760px){.rsg-page .howdo::before{display: none;}}
.rsg-page .lp-pair-eq{align-items: stretch; grid-template-columns: 0.92fr 1.08fr;}
.rsg-page .lp-pair-eq .lp-mock{display: flex; height: 100%;}
.rsg-page .lp-pair-eq .lp-mock .ai-dashboard{max-width: none; width: 100%; height: 100%; display: flex; flex-direction: column;}
.rsg-page .lp-pair-eq .lp-mock .ai-dashboard img{flex: 1 1 0%; min-height: 0; width: 100%; height: 100%; object-fit: cover; object-position: top center;}
@media (max-width: 860px){.rsg-page .lp-pair-eq{grid-template-columns: 1fr; align-items: start;}}
@media (max-width: 860px){.rsg-page .lp-pair-eq .lp-mock{height: auto;}}
@media (max-width: 860px){.rsg-page .lp-pair-eq .lp-mock .ai-dashboard{height: auto;}}
@media (max-width: 860px){.rsg-page .lp-pair-eq .lp-mock .ai-dashboard img{flex: none; height: auto; object-fit: contain;}}
@media (max-width: 480px){.rsg-page .lp-pair-eq .nt-row{grid-template-columns: 46px 1fr; gap: 14px;}}
@media (max-width: 480px){.rsg-page .lp-pair-eq .nt-badge{width: 46px; height: 46px; font-size: 14px;}}
@media (max-width: 480px){.rsg-page .lp-pair-eq .nt-row:not(:last-child)::after{left: 22px;}}
@media (max-width: 760px){.rsg-page .shot-2up{grid-template-columns: 1fr;}}
/* §8 — service showcase cards (dark) */
.rsg-page .svc-grid{display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin: 0 0 24px;}
.rsg-page .svc-card{background: linear-gradient(160deg, rgba(255,255,255,0.055), rgba(44,122,75,0.06)); border: 1px solid rgba(255,255,255,0.1); border-radius: 16px; overflow: hidden; display: flex; flex-direction: column; transition: transform .25s, border-color .25s, box-shadow .25s;}
.rsg-page .svc-card:hover{transform: translateY(-4px); border-color: rgba(44,122,75,0.5); box-shadow: 0 24px 50px rgba(0,0,0,0.4);}
.rsg-page .svc-shot{height: 156px; background: #fff; border-bottom: 1px solid rgba(255,255,255,0.12); overflow: hidden;}
.rsg-page .svc-shot img{display: block; width: 100%; height: 100%; object-fit: cover; object-position: top center;}
.rsg-page .svc-iconhero{display: flex; align-items: center; justify-content: center; background: radial-gradient(circle at 50% 38%, var(--green-50), #fff);}
.rsg-page .svc-iconhero .ih-ic{width: 64px; height: 64px; border-radius: 18px; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: flex; align-items: center; justify-content: center; box-shadow: 0 0 0 8px rgba(44,122,75,0.08), 0 14px 28px rgba(32,157,80,0.3);}
.rsg-page .svc-iconhero .ih-ic svg{width: 30px; height: 30px;}
.rsg-page .svc-aishot{gap: 9px; flex-wrap: wrap; padding: 0 16px;}
.rsg-page .svc-aishot .ai-chip{display: inline-flex; align-items: center; gap: 7px; background: #fff; border: 1px solid var(--line); border-radius: 999px; padding: 7px 13px; font-family: var(--font-display); font-weight: 700; font-size: 12px; color: var(--ink-900); box-shadow: 0 3px 8px rgba(0,0,0,0.06);}
.rsg-page .svc-aishot .ai-dot{width: 8px; height: 8px; border-radius: 50%;}
.rsg-page .svc-body{padding: 20px 22px 22px;}
.rsg-page .svc-head{display: flex; align-items: center; gap: 12px; margin-bottom: 10px;}
.rsg-page .svc-ic{width: 38px; height: 38px; border-radius: 10px; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: flex; align-items: center; justify-content: center; flex-shrink: 0; box-shadow: 0 6px 14px rgba(32,157,80,0.3);}
.rsg-page .svc-ic svg{width: 19px; height: 19px;}
.rsg-page .svc-card h3{font-family: var(--font-display); font-size: 15px; font-weight: 700; color: #fff; margin: 0; line-height: 1.25; letter-spacing: -0.01em;}
.rsg-page .svc-card p{font-size: 12.5px; line-height: 1.55; color: rgba(255,255,255,0.7); margin: 0;}
.rsg-page .svc-report{display: grid; grid-template-columns: 1.05fr 1fr; gap: 28px; align-items: center; background: linear-gradient(150deg, rgba(44,122,75,0.16), rgba(255,255,255,0.03)); border: 1px solid rgba(44,122,75,0.3); border-radius: 18px; padding: 24px;}
.rsg-page .svc-report .sr-shot{border-radius: 12px; overflow: hidden; border: 1px solid rgba(255,255,255,0.14); background: #fff;}
.rsg-page .svc-report .sr-shot img{display: block; width: 100%; height: auto;}
.rsg-page .svc-report .sr-eyebrow{display: inline-flex; align-items: center; gap: 9px; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.14em; text-transform: uppercase; font-weight: 700; color: var(--green-500); margin-bottom: 11px;}
.rsg-page .svc-report .sr-eyebrow::before{content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--green-500); box-shadow: 0 0 8px var(--green-500);}
.rsg-page .svc-report h3{font-family: var(--font-display); font-size: 19px; font-weight: 800; color: #fff; margin: 0 0 9px; letter-spacing: -0.01em;}
.rsg-page .svc-report p{font-size: 13.5px; line-height: 1.6; color: rgba(255,255,255,0.78); margin: 0;}
.rsg-page .svc-report .sr-flow{display: flex; align-items: center; gap: 9px; flex-wrap: wrap; margin-top: 20px;}
.rsg-page .svc-report .sr-chip{display: inline-flex; align-items: center; background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.16); border-radius: 999px; padding: 8px 15px; font-family: var(--font-display); font-weight: 700; font-size: 12.5px; color: #fff;}
.rsg-page .svc-report .sr-chip.on{background: linear-gradient(135deg, var(--green-500), var(--green-700)); border-color: transparent; box-shadow: 0 6px 16px rgba(32,157,80,0.4);}
.rsg-page .svc-report .sr-arrow{color: var(--green-500); display: inline-flex;}
.rsg-page .svc-report .sr-arrow svg{width: 15px; height: 15px;}
@media (max-width: 980px){.rsg-page .svc-grid{grid-template-columns: 1fr 1fr;}}
@media (max-width: 760px){.rsg-page .svc-grid{grid-template-columns: 1fr;}}
@media (max-width: 760px){.rsg-page .svc-report{grid-template-columns: 1fr;}}
/* §10 — crawl-to-rank pipeline */
.rsg-page .crawl-flow{position: relative; display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin: 0 0 20px;}
.rsg-page .crawl-flow::before{content: ""; position: absolute; top: 33px; left: 12.5%; right: 12.5%; height: 3px; background: linear-gradient(90deg, rgba(44,122,75,0.22), rgba(44,122,75,0.5), var(--green-500)); border-radius: 3px; z-index: 0;}
.rsg-page .crawl-step{position: relative; z-index: 1; text-align: center; padding: 0 6px;}
.rsg-page .crawl-node{width: 66px; height: 66px; border-radius: 50%; background: #fff; border: 2px solid var(--line); color: var(--green-600); display: flex; align-items: center; justify-content: center; margin: 0 auto 15px; box-shadow: 0 0 0 6px var(--paper-soft), 0 8px 18px rgba(0,0,0,0.06);}
.rsg-page .crawl-node svg{width: 28px; height: 28px;}
.rsg-page .crawl-step.final .crawl-node{background: linear-gradient(135deg, var(--green-500), var(--green-700)); border-color: transparent; color: #fff; box-shadow: 0 0 0 6px var(--paper-soft), 0 12px 26px rgba(32,157,80,0.4);}
.rsg-page .crawl-step h4{font-family: var(--font-display); font-size: 15.5px; font-weight: 700; color: var(--ink-900); margin: 0 0 5px; letter-spacing: -0.01em;}
.rsg-page .crawl-step p{font-size: 12.5px; line-height: 1.5; color: var(--ink-2); margin: 0;}
@media (max-width: 760px){.rsg-page .crawl-flow{grid-template-columns: 1fr 1fr; gap: 26px 14px;}}
@media (max-width: 760px){.rsg-page .crawl-flow::before{display: none;}}
/* §10 — foundation cards with phone mockups */
.rsg-page .lp-grid-cw{grid-template-columns: repeat(3, 1fr);}
@media (max-width: 900px){.rsg-page .lp-grid-cw{grid-template-columns: repeat(2, 1fr);}}
@media (max-width: 620px){.rsg-page .lp-grid-cw{grid-template-columns: 1fr;}}
.rsg-page .lp-grid-cw .lp-card{display: flex; flex-direction: column;}
.rsg-page .cw-foot{margin-top: auto; padding-top: 22px; display: flex; flex-direction: column; align-items: center; gap: 12px;}
.rsg-page .cw-phone{width: 118px; height: 172px; border-radius: 21px; background: #0e0e0e; padding: 6px; box-shadow: 0 16px 32px rgba(0,0,0,0.2); position: relative;}
.rsg-page .cw-phone::before{content: ""; position: absolute; top: 11px; left: 50%; transform: translateX(-50%); width: 32px; height: 4px; border-radius: 3px; background: rgba(255,255,255,0.32); z-index: 3;}
.rsg-page .cw-screen{width: 100%; height: 100%; border-radius: 16px; background: #fff; overflow: hidden; position: relative; display: flex; flex-direction: column;}
.rsg-page .cw-cap{font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.06em; text-transform: uppercase; font-weight: 700; color: var(--green-700);}
/* screen 1: speed gauge */
.rsg-page .s-speed{align-items: center; justify-content: center; gap: 11px; padding: 12px;}
.rsg-page .s-speed .sp-val{font-family: var(--font-display); font-weight: 800; font-size: 14px; color: var(--green-700);}
.rsg-page .s-speed .sp-bar{width: 82px; height: 7px; border-radius: 4px; background: #E5E7EB; overflow: hidden;}
.rsg-page .s-speed .sp-bar i{display: block; width: 90%; height: 100%; border-radius: 4px; background: linear-gradient(90deg, var(--green-500), var(--green-700));}
/* screen 2: mobile site */
.rsg-page .s-site .ss-bar{height: 24px; background: linear-gradient(135deg, var(--green-500), var(--green-700)); display: flex; align-items: center; justify-content: space-between; padding: 0 9px;}
.rsg-page .s-site .ss-bar .l{height: 5px; border-radius: 2px; background: rgba(255,255,255,0.9);}
.rsg-page .s-site .ss-hero{height: 56px; margin: 7px; border-radius: 7px; background: linear-gradient(160deg, #20384a, #0f2330); display: flex; flex-direction: column; justify-content: center; gap: 5px; padding: 9px;}
.rsg-page .s-site .ss-hero .l{height: 5px; border-radius: 2px; background: rgba(255,255,255,0.55);}
.rsg-page .s-site .ss-cta{margin: 0 7px; height: 20px; border-radius: 6px; background: linear-gradient(90deg, var(--green-500), var(--green-700)); display: flex; align-items: center; justify-content: center;}
.rsg-page .s-site .ss-cta span{font-family: var(--font-display); font-size: 8px; font-weight: 800; color: #fff; letter-spacing: 0.05em;}
.rsg-page .s-site .ss-rows{padding: 9px 9px 0; display: flex; flex-direction: column; gap: 6px;}
.rsg-page .s-site .ss-rows .l{height: 5px; border-radius: 2px; background: #E5E7EB;}
/* screen 3: schema rich result */
.rsg-page .s-schema{padding: 13px 11px; gap: 9px;}
.rsg-page .s-schema .sc-title{height: 7px; width: 80%; border-radius: 3px; background: #4285F4; opacity: 0.85;}
.rsg-page .s-schema .sc-url{height: 5px; width: 55%; border-radius: 3px; background: #CBD5E1;}
.rsg-page .s-schema .sc-stars{display: flex; gap: 2px; align-items: center;}
.rsg-page .s-schema .sc-stars svg{width: 11px; height: 11px;}
.rsg-page .s-schema .sc-stars b{font-family: var(--font-mono); font-size: 8px; color: var(--ink-500); margin-left: 3px;}
.rsg-page .s-schema .sc-faq{margin-top: 2px; border-top: 1px solid #EEF1F4; padding-top: 8px; display: flex; flex-direction: column; gap: 8px;}
.rsg-page .s-schema .sc-faq-row{display: flex; align-items: center; justify-content: space-between; gap: 6px;}
.rsg-page .s-schema .sc-faq-row .l{height: 5px; border-radius: 2px; background: #E5E7EB; flex: 1;}
.rsg-page .s-schema .sc-faq-row svg{width: 11px; height: 11px; color: var(--green-600); flex-shrink: 0;}
/* §11 — backlink convergence hub */
.rsg-page .bl-hub{display: grid; grid-template-columns: 1.5fr 108px 0.92fr; gap: 18px; align-items: center; margin: 0 0 8px;}
.rsg-page .bl-sources{display: flex; flex-direction: column; gap: 14px;}
.rsg-page .bl-source{display: flex; gap: 14px; align-items: flex-start; background: #fff; border: 1px solid var(--line); border-radius: 14px; padding: 15px 18px; box-shadow: var(--shadow-md); transition: transform .2s, box-shadow .2s, border-color .2s;}
.rsg-page .bl-source:hover{transform: translateX(4px); border-color: rgba(44,122,75,0.3); box-shadow: 0 12px 28px rgba(0,0,0,0.07);}
.rsg-page .bl-source .bs-ic{width: 38px; height: 38px; border-radius: 10px; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: flex; align-items: center; justify-content: center; flex-shrink: 0; box-shadow: 0 6px 14px rgba(32,157,80,0.28);}
.rsg-page .bl-source .bs-ic svg{width: 19px; height: 19px;}
.rsg-page .bl-source h4{font-family: var(--font-display); font-size: 14.5px; font-weight: 700; color: var(--ink-900); margin: 0 0 4px; letter-spacing: -0.01em;}
.rsg-page .bl-source p{font-size: 12.5px; line-height: 1.5; color: var(--ink-2); margin: 0;}
.rsg-page .bl-connect{align-self: stretch; display: flex; align-items: center; justify-content: center;}
.rsg-page .bl-connect svg{width: 100%; height: 100%;}
.rsg-page .bl-core{background: linear-gradient(150deg, var(--green-50), #fff); border: 1px solid rgba(44,122,75,0.25); border-radius: 18px; padding: 28px 20px; text-align: center; box-shadow: 0 16px 34px rgba(32,157,80,0.12);}
.rsg-page .bl-core .bc-ring{width: 72px; height: 72px; border-radius: 50%; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: flex; align-items: center; justify-content: center; margin: 0 auto 14px; box-shadow: 0 0 0 8px rgba(44,122,75,0.1), 0 12px 26px rgba(32,157,80,0.38);}
.rsg-page .bl-core .bc-ring svg{width: 32px; height: 32px;}
.rsg-page .bl-core h4{font-family: var(--font-display); font-size: 16px; font-weight: 800; color: var(--ink-900); margin: 0 0 9px; letter-spacing: -0.01em;}
.rsg-page .bl-core .bc-trend{display: inline-flex; align-items: center; gap: 6px; font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.08em; text-transform: uppercase; font-weight: 700; color: #fff; background: linear-gradient(135deg, var(--green-500), var(--green-700)); border-radius: 999px; padding: 6px 13px; box-shadow: 0 6px 14px rgba(32,157,80,0.34);}
.rsg-page .bl-core .bc-trend svg{width: 13px; height: 13px;}
@media (max-width: 860px){.rsg-page .bl-hub{grid-template-columns: 1fr; gap: 16px;}}
@media (max-width: 860px){.rsg-page .bl-connect{display: none;}}
@media (max-width: 860px){.rsg-page .bl-core{max-width: 340px; margin: 6px auto 0;}}
/* §12 — vertical phase timeline */
.rsg-page .ph-tl{position: relative; display: flex; flex-direction: column; gap: 26px; margin: 0 0 30px;}
.rsg-page .ph-item{position: relative; display: grid; grid-template-columns: 56px 1fr; gap: 30px; align-items: start;}
.rsg-page .ph-item .ph-badge{position: relative; z-index: 2; width: 56px; height: 56px; border-radius: 50%; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: flex; align-items: center; justify-content: center; font-family: var(--font-display); font-weight: 800; font-size: 17px; box-shadow: 0 0 0 6px var(--paper-soft), 0 8px 18px rgba(0,0,0,0.12);}
.rsg-page .ph-item.payoff .ph-badge{background: linear-gradient(135deg, #1c1c1c, #000); box-shadow: 0 0 0 6px var(--paper-soft), 0 0 0 10px rgba(44,122,75,0.12), 0 8px 18px rgba(0,0,0,0.2);}
.rsg-page .ph-item:not(:last-child)::after{content: ""; position: absolute; left: 27px; top: 28px; width: 2px; height: calc(100% + 26px); background: linear-gradient(180deg, var(--green-500), rgba(44,122,75,0.4)); z-index: 1;}
.rsg-page .ph-card2{background: #fff; border: 1px solid var(--line); border-radius: 16px; padding: 22px 26px; box-shadow: var(--shadow-md); transition: transform .2s, box-shadow .2s, border-color .2s;}
.rsg-page .ph-card2:hover{transform: translateY(-2px); border-color: rgba(44,122,75,0.3); box-shadow: 0 16px 34px rgba(0,0,0,0.07);}
.rsg-page .ph-pill{display: inline-flex; align-items: center; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase; font-weight: 700; color: var(--green-700); background: var(--green-50); border-radius: 999px; padding: 5px 13px; margin-bottom: 11px;}
.rsg-page .ph-item.payoff .ph-pill{color: #fff; background: linear-gradient(135deg, #143E25, #0A0A0A);}
.rsg-page .ph-card2 h3{font-family: var(--font-display); font-size: 21px; font-weight: 800; color: var(--ink-900); margin: 0 0 8px; letter-spacing: -0.01em;}
.rsg-page .ph-card2 p{font-size: 14px; line-height: 1.6; color: var(--ink-2); margin: 0;}
@media (max-width: 560px){.rsg-page .ph-item{grid-template-columns: 46px 1fr; gap: 18px;}}
@media (max-width: 560px){.rsg-page .ph-item .ph-badge{width: 46px; height: 46px; font-size: 15px;}}
@media (max-width: 560px){.rsg-page .ph-item:not(:last-child)::after{left: 22px; top: 23px;}}
/* §13 — search-to-revenue flow */
.rsg-page .flow5{display: grid; grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr auto 1fr; align-items: center; gap: 8px; margin: 0 0 26px;}
.rsg-page .flow-node{display: flex; flex-direction: column; align-items: center; gap: 12px; text-align: center;}
.rsg-page .flow-node .fn-ic{width: 62px; height: 62px; border-radius: 17px; background: rgba(255,255,255,0.05); border: 1px solid rgba(44,122,75,0.45); color: #6EE7B7; display: flex; align-items: center; justify-content: center; transition: transform .2s;}
.rsg-page .flow-node:hover .fn-ic{transform: translateY(-3px);}
.rsg-page .flow-node .fn-ic svg{width: 26px; height: 26px;}
.rsg-page .flow-node.final .fn-ic{background: linear-gradient(135deg, var(--green-500), var(--green-700)); border-color: transparent; color: #fff; box-shadow: 0 0 0 6px rgba(44,122,75,0.16), 0 14px 30px rgba(32,157,80,0.5);}
.rsg-page .flow-node .fn-label{font-family: var(--font-display); font-weight: 700; font-size: 14px; color: #fff; letter-spacing: -0.01em;}
.rsg-page .flow-node.final .fn-label{color: #6EE7B7;}
.rsg-page .flow-arrow{color: rgba(110,231,183,0.55); display: flex; align-items: center; justify-content: center; padding-bottom: 30px;}
.rsg-page .flow-arrow svg{width: 22px; height: 22px;}
@media (max-width: 720px){.rsg-page .flow5{grid-template-columns: repeat(3, 1fr); gap: 24px 8px;}}
@media (max-width: 720px){.rsg-page .flow-arrow{display: none;}}
/* §14 — SEO vs Paid comparison (refined) */
.rsg-page .cmp{background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); box-shadow: var(--shadow-md); overflow: hidden; margin: 0 0 8px;}
.rsg-page .cmp table{width: 100%; border-collapse: collapse;}
.rsg-page .cmp th, .rsg-page .cmp td{padding: 15px 24px; text-align: left; vertical-align: middle;}
.rsg-page .cmp thead th{border-bottom: 2px solid var(--line); background: #fff; padding-top: 20px; padding-bottom: 20px;}
.rsg-page .cmp tbody td{border-bottom: 1px solid var(--line-2); font-size: 13.5px; line-height: 1.5;}
.rsg-page .cmp tbody tr:last-child td{border-bottom: 0;}
.rsg-page .cmp tbody tr:hover td{background-color: rgba(0,0,0,0.012);}
.rsg-page .cmp .cmp-dim{width: 204px; font-family: var(--font-display); font-weight: 700; color: var(--ink-900); font-size: 14px;}
.rsg-page .cmp .cmp-seo{background: rgba(44,122,75,0.05); border-left: 1px solid rgba(44,122,75,0.16); border-right: 1px solid rgba(44,122,75,0.16); color: var(--ink-900); font-weight: 600;}
.rsg-page .cmp thead .cmp-seo{background: linear-gradient(180deg, rgba(44,122,75,0.14), rgba(44,122,75,0.05)); border-top: 3px solid var(--green-500);}
.rsg-page .cmp tbody tr:hover td.cmp-seo{background-color: rgba(44,122,75,0.085);}
.rsg-page .cmp .cmp-paid{color: var(--ink-2);}
.rsg-page .cmp-th{display: flex; flex-direction: column; gap: 4px;}
.rsg-page .cmp-th .cth-ic{width: 33px; height: 33px; border-radius: 9px; display: flex; align-items: center; justify-content: center; flex-shrink: 0;}
.rsg-page .cmp-seo .cth-ic{background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; box-shadow: 0 6px 14px rgba(32,157,80,0.3);}
.rsg-page .cmp-paid .cth-ic{background: #EEF1F4; color: #64748B;}
.rsg-page .cmp-th .cth-ic svg{width: 17px; height: 17px;}
.rsg-page .cmp-th b{font-family: var(--font-display); font-weight: 800; font-size: 17px; color: var(--ink-900); line-height: 1.1;}
.rsg-page .cmp-th .cth-sub{display: block; font-family: var(--font-mono); font-size: 9px; letter-spacing: 0.08em; text-transform: uppercase; font-weight: 700; margin-top: 3px;}
.rsg-page .cmp-seo .cth-sub{color: var(--green-700);}
.rsg-page .cmp-paid .cth-sub{color: var(--ink-500);}
@media (max-width: 680px){.rsg-page .cmp{overflow-x: auto;}}
@media (max-width: 680px){.rsg-page .cmp table{min-width: 580px;}}
@media (max-width: 680px){.rsg-page .cmp .cmp-dim{width: 130px;}}
/* §16 — result growth-chart panel (fills the left column, reads as data) */
.rsg-page .cs-graph{margin-top: auto; padding-top: 6px;}
.rsg-page .cs-graph-card{background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.10); border-radius: 14px; padding: 16px 18px 14px;}
.rsg-page .cs-graph-head{display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 6px;}
.rsg-page .cgh-label{font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.12em; text-transform: uppercase; font-weight: 700; color: rgba(255,255,255,0.62);}
.rsg-page .cgh-trend{display: inline-flex; align-items: center; gap: 5px; font-family: var(--font-mono); font-size: 9px; letter-spacing: 0.08em; text-transform: uppercase; font-weight: 700; color: #6EE7B7; background: rgba(44,122,75,0.18); border: 1px solid rgba(44,122,75,0.40); border-radius: 999px; padding: 4px 10px; white-space: nowrap;}
.rsg-page .cgh-trend svg{width: 11px; height: 11px;}
.rsg-page .cs-chart svg{display: block; width: 100%; height: auto;}
.rsg-page .cs-chart .cc-big{font-family: var(--font-display); font-weight: 800; font-size: 28px; fill: #6EE7B7; letter-spacing: -0.02em;}
.rsg-page .cs-chart .cc-sub{font-family: var(--font-mono); font-size: 8.5px; letter-spacing: 0.08em; text-transform: uppercase; font-weight: 700; fill: rgba(255,255,255,0.6);}
.rsg-page .cs-chart .cc-tick{font-family: var(--font-mono); font-size: 8px; letter-spacing: 0.06em; text-transform: uppercase; font-weight: 700; fill: rgba(255,255,255,0.45);}
.rsg-page .cs-graph-foot{display: flex; gap: 22px; margin-top: 12px; padding-top: 12px; border-top: 1px solid rgba(255,255,255,0.09);}
.rsg-page .cgf{display: flex; align-items: baseline; gap: 6px;}
.rsg-page .cgf b{font-family: var(--font-display); font-weight: 800; font-size: 16px; color: #fff; line-height: 1;}
.rsg-page .cgf span{font-family: var(--font-mono); font-size: 8.5px; letter-spacing: 0.06em; text-transform: uppercase; font-weight: 700; color: rgba(255,255,255,0.55);}
@media (max-width: 560px){.rsg-page .cs-graph-foot{gap: 16px;}}
/* §4 — buyer persona cards */
.rsg-page .bp-grid{display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin: 0 0 16px;}
.rsg-page .bp-card{display: flex; flex-direction: column; background: #fff; border: 1px solid var(--line); border-radius: 16px; overflow: hidden; box-shadow: var(--shadow-md); transition: transform .25s, box-shadow .25s, border-color .25s;}
.rsg-page .bp-card:hover{transform: translateY(-4px); box-shadow: 0 18px 42px rgba(0,0,0,0.10);}
.rsg-page .bp-shot-bar{display: flex; align-items: center; gap: 6px; padding: 8px 12px; background: #F4F6F8; border-bottom: 1px solid var(--line);}
.rsg-page .bp-shot-bar .bp-dot{width: 9px; height: 9px; border-radius: 50%; display: inline-block;}
.rsg-page .bp-shot-bar .bp-lbl{font-family: var(--font-mono); font-size: 8.5px; letter-spacing: 0.1em; text-transform: uppercase; color: #64748B; font-weight: 700; margin-left: auto;}
.rsg-page .bp-shot img{width: 100%; height: 152px; object-fit: cover; object-position: top; display: block;}
.rsg-page .bp-body{padding: 18px 18px 20px; display: flex; flex-direction: column; flex: 1;}
.rsg-page .bp-head{display: flex; align-items: center; gap: 11px; margin-bottom: 12px;}
.rsg-page .bp-ic{width: 42px; height: 42px; border-radius: 12px; display: flex; align-items: center; justify-content: center; color: #fff; flex-shrink: 0; box-shadow: 0 8px 16px rgba(0,0,0,0.12);}
.rsg-page .bp-ic svg{width: 20px; height: 20px;}
.rsg-page .bp-name{font-family: var(--font-display); font-weight: 800; font-size: 15.5px; color: var(--ink-900); line-height: 1.2; display: block;}
.rsg-page .bp-decide{font-family: var(--font-mono); font-size: 9px; letter-spacing: 0.08em; text-transform: uppercase; font-weight: 700; margin-top: 5px; display: block;}
.rsg-page .bp-want{font-size: 13px; line-height: 1.55; color: var(--ink-2); margin: 0 0 15px;}
.rsg-page .bp-want strong{color: var(--ink-900);}
.rsg-page .bp-gives{margin-top: auto; background: var(--paper-soft); border: 1px solid var(--line); border-radius: 11px; padding: 13px 14px;}
.rsg-page .bp-gives-lbl{display: flex; align-items: center; gap: 6px; font-family: var(--font-mono); font-size: 8.5px; letter-spacing: 0.09em; text-transform: uppercase; font-weight: 700; color: var(--green-700); margin-bottom: 10px;}
.rsg-page .bp-gives ul{list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px;}
.rsg-page .bp-gives li{display: flex; align-items: flex-start; gap: 8px; font-size: 12px; line-height: 1.42; color: var(--ink-2);}
.rsg-page .bp-ck{flex-shrink: 0; width: 16px; height: 16px; border-radius: 50%; background: var(--green-50); display: inline-flex; align-items: center; justify-content: center; margin-top: 1px;}
.rsg-page .bp-ck svg{width: 9px; height: 9px; color: var(--green-600);}
.rsg-page .bp-emergency .bp-ic{background: linear-gradient(135deg, #E2434E, var(--red));}
.rsg-page .bp-emergency .bp-decide{color: var(--red);}
.rsg-page .bp-ticket .bp-ic{background: linear-gradient(135deg, var(--green-500), var(--green-700));}
.rsg-page .bp-ticket .bp-decide{color: var(--green-700);}
.rsg-page .bp-research .bp-ic{background: linear-gradient(135deg, #E9A23B, var(--orange-500));}
.rsg-page .bp-research .bp-decide{color: var(--orange-500);}
@media (max-width: 880px){.rsg-page .bp-grid{grid-template-columns: 1fr;}}
/* CW — business-type card color variants (no purple) */
.rsg-page .bp-residential .bp-ic{background: linear-gradient(135deg, #E2434E, var(--red));}
.rsg-page .bp-residential .bp-decide{color: var(--red);}
.rsg-page .bp-commercial .bp-ic{background: linear-gradient(135deg, #3B82F6, #1E40AF);}
.rsg-page .bp-commercial .bp-decide{color: #1E40AF;}
.rsg-page .bp-duct .bp-ic{background: linear-gradient(135deg, #E9A23B, var(--orange-500));}
.rsg-page .bp-duct .bp-decide{color: var(--orange-500);}
.rsg-page .bp-area .bp-ic{background: linear-gradient(135deg, var(--green-500), var(--green-700));}
.rsg-page .bp-area .bp-decide{color: var(--green-700);}
.rsg-page .bp-fab .bp-ic{background: linear-gradient(135deg, #0E9AA6, #155E75);}
.rsg-page .bp-fab .bp-decide{color: #155E75;}
.rsg-page .bp-grid.bp-grid-5{grid-template-columns: repeat(3, 1fr);}
@media (max-width: 880px){.rsg-page .bp-grid.bp-grid-5{grid-template-columns: 1fr;}}
/* CW — before/after voice quote cards */
.rsg-page .voice-ba{display: grid; grid-template-columns: 1fr 1fr; gap: 22px; margin: 8px 0 0;}
.rsg-page .vba-card{border-radius: 16px; padding: 26px 26px 24px; border: 1px solid var(--line); background: #fff; box-shadow: var(--shadow-md); position: relative; display: flex; flex-direction: column;}
.rsg-page .vba-card.generic{background: #FBFBFA; border-color: var(--line);}
.rsg-page .vba-card.yours{background: linear-gradient(155deg, #F4F9F5, #E9F1EB); border-color: rgba(44,122,75,0.30);}
.rsg-page .vba-tag{display: inline-flex; align-items: center; gap: 7px; align-self: flex-start; font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.1em; text-transform: uppercase; font-weight: 700; border-radius: 999px; padding: 6px 12px; margin-bottom: 16px;}
.rsg-page .vba-card.generic .vba-tag{color: var(--ink-500); background: #EEF0F2; border: 1px solid var(--line);}
.rsg-page .vba-card.yours .vba-tag{color: var(--green-700); background: rgba(44,122,75,0.10); border: 1px solid rgba(44,122,75,0.25);}
.rsg-page .vba-quote{font-family: var(--font-display); font-weight: 700; font-size: 18px; line-height: 1.42; color: var(--ink-900); margin: 0; letter-spacing: -0.01em;}
.rsg-page .vba-card.generic .vba-quote{color: var(--ink-500);}
.rsg-page .vba-foot{margin-top: 16px; padding-top: 14px; border-top: 1px solid var(--line-2); font-size: 12.5px; line-height: 1.5; color: var(--ink-2);}
@media (max-width: 760px){.rsg-page .voice-ba{grid-template-columns: 1fr;}}
/* ============================================================
   §WH — SUPPLEMENTARY CSS (Hosting & Maintenance page-specific)
   Reuses master-css tokens. New mini-components only.
   ============================================================ */
/* responsive heading break helper */
.rsg-page .hd-ln{display: block;}
@media (max-width: 600px){.rsg-page .hd-ln{display: inline;}}
/* hero backdrop framing — shift crop window so the engineer sits clearly visible and clear of the phone (page-local override) */
.rsg-page .platform-hero-photo img{object-position: 60% 50% !important;}
/* hero phone — website health monitor screen */
.rsg-page .ph-site{background: linear-gradient(135deg, var(--green-700), #0A0A0A); padding: 12px 13px 13px; color: #fff;}
.rsg-page .ph-site-bar{display: flex; align-items: center; gap: 6px; background: rgba(255,255,255,0.14); border-radius: 7px; padding: 5px 9px; margin-bottom: 11px;}
.rsg-page .ph-site-bar svg{width: 11px; height: 11px; color: #7BE3A4; flex-shrink: 0;}
.rsg-page .ph-site-bar span{font-family: var(--font-mono); font-size: 9px; letter-spacing: 0.04em; color: rgba(255,255,255,0.92);}
.rsg-page .ph-site-h{font-family: var(--font-display); font-weight: 800; font-size: 14px; line-height: 1.2; margin: 0 0 3px; color: #fff;}
.rsg-page .ph-site-sub{font-size: 9.5px; color: rgba(255,255,255,0.7); margin: 0 0 10px;}
.rsg-page .ph-site-cta{display: inline-flex; align-items: center; gap: 6px; background: var(--green-500); color: #fff; font-family: var(--font-display); font-weight: 700; font-size: 10px; padding: 7px 12px; border-radius: 7px;}
.rsg-page .ph-site-cta svg{width: 11px; height: 11px;}
.rsg-page .ph-health{padding: 13px 13px 15px; background: #fff;}
.rsg-page .ph-health-top{display: flex; align-items: center; justify-content: space-between; margin-bottom: 11px;}
.rsg-page .ph-health-top strong{font-family: var(--font-display); font-size: 11.5px; font-weight: 800; color: var(--ink-900);}
.rsg-page .ph-health-live{display: inline-flex; align-items: center; gap: 5px; font-family: var(--font-mono); font-size: 7.5px; letter-spacing: 0.1em; text-transform: uppercase; font-weight: 700; color: var(--green-600);}
.rsg-page .ph-health-live::before{content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--green-500); box-shadow: 0 0 0 3px rgba(44,122,75,0.2); animation: pulse 2s infinite;}
.rsg-page .ph-hrow{display: flex; align-items: center; gap: 9px; padding: 8px 0; border-bottom: 1px solid var(--line-2);}
.rsg-page .ph-hrow:last-child{border-bottom: 0;}
.rsg-page .ph-hrow .ph-hic{width: 24px; height: 24px; border-radius: 7px; background: var(--green-50); color: var(--green-600); display: flex; align-items: center; justify-content: center; flex-shrink: 0;}
.rsg-page .ph-hrow .ph-hic svg{width: 13px; height: 13px;}
.rsg-page .ph-hrow .ph-hlabel{font-family: var(--font-body); font-size: 11px; font-weight: 600; color: var(--ink-900); flex: 1;}
.rsg-page .ph-hrow .ph-hstatus{display: inline-flex; align-items: center; gap: 5px; font-family: var(--font-mono); font-size: 9px; font-weight: 700; letter-spacing: 0.04em; color: var(--green-600);}
.rsg-page .ph-hrow .ph-hstatus::before{content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--green-500);}
/* generic icon feature card grid (hosting features, QA checks) */
.rsg-page .wh-feat-grid{display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin: 0 0 8px;}
.rsg-page .wh-feat-card{background: #fff; border: 1px solid var(--line); border-radius: 16px; padding: 22px 22px 20px; box-shadow: var(--shadow-md); transition: transform .25s, box-shadow .25s, border-color .25s;}
.rsg-page .wh-feat-card:hover{transform: translateY(-3px); border-color: rgba(44,122,75,0.3); box-shadow: 0 16px 36px rgba(0,0,0,0.07);}
.rsg-page .wh-feat-card .wf-ic{width: 42px; height: 42px; border-radius: 12px; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: flex; align-items: center; justify-content: center; margin-bottom: 14px; box-shadow: 0 8px 18px rgba(44,122,75,0.22);}
.rsg-page .wh-feat-card .wf-ic svg{width: 20px; height: 20px;}
.rsg-page .wh-feat-card h4{font-family: var(--font-display); font-size: 15.5px; font-weight: 700; color: var(--ink-900); margin: 0 0 6px; line-height: 1.3;}
.rsg-page .wh-feat-card p{font-size: 13px; line-height: 1.58; color: var(--ink-2); margin: 0;}
@media (max-width: 900px){.rsg-page .wh-feat-grid{grid-template-columns: 1fr 1fr;}}
@media (max-width: 600px){.rsg-page .wh-feat-grid{grid-template-columns: 1fr;}}
/* numbered security-layer cards */
.rsg-page .wh-layers{display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin: 0 0 32px;}
.rsg-page .wh-layer{position: relative; overflow: hidden; background: #fff; border: 1px solid var(--line); border-radius: 16px; padding: 24px 22px 20px; box-shadow: var(--shadow-md); transition: transform .25s, box-shadow .25s, border-color .25s;}
.rsg-page .wh-layer:hover{transform: translateY(-3px); border-color: rgba(44,122,75,0.3); box-shadow: 0 16px 36px rgba(0,0,0,0.07);}
.rsg-page .wh-layer::after{content: ""; position: absolute; top: -38px; right: -38px; width: 120px; height: 120px; background: radial-gradient(circle, rgba(44,122,75,0.07) 0%, transparent 70%); pointer-events: none;}
.rsg-page .wh-layer .wl-head{display: flex; align-items: center; gap: 12px; margin-bottom: 13px;}
.rsg-page .wh-layer .wl-num{font-family: var(--font-display); font-size: 12px; font-weight: 800; color: var(--green-700); background: var(--green-50); border: 1px solid rgba(44,122,75,0.2); border-radius: 999px; padding: 4px 11px; letter-spacing: 0.06em;}
.rsg-page .wh-layer .wl-ic{width: 38px; height: 38px; border-radius: 11px; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: flex; align-items: center; justify-content: center; flex-shrink: 0; box-shadow: 0 6px 14px rgba(44,122,75,0.24);}
.rsg-page .wh-layer .wl-ic svg{width: 18px; height: 18px;}
.rsg-page .wh-layer h3{font-family: var(--font-display); font-size: 16px; font-weight: 700; color: var(--ink-900); margin: 0 0 7px; line-height: 1.28;}
.rsg-page .wh-layer p{font-size: 13px; line-height: 1.58; color: var(--ink-2); margin: 0; position: relative; z-index: 1;}
@media (max-width: 900px){.rsg-page .wh-layers{grid-template-columns: 1fr 1fr;}}
@media (max-width: 600px){.rsg-page .wh-layers{grid-template-columns: 1fr;}}
/* screenshot strip (3-up ai-dashboard frames) */
.rsg-page .wh-shots{display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin: 8px 0 0;}
.rsg-page .wh-shots .ai-dashboard{margin: 0;}
@media (max-width: 900px){.rsg-page .wh-shots{grid-template-columns: 1fr;}}
/* 2-up variant — mobile-first so it never gets stuck wide on phones */
.rsg-page .wh-shots.cols-2{grid-template-columns: 1fr;}
@media (min-width: 761px){.rsg-page .wh-shots.cols-2{grid-template-columns: 1fr 1fr;}}
/* §4 hosting fleet row — cover-crop both frames to one consistent 16:9 box (equal height) */
.rsg-page .wh-host .ai-dashboard img{width: 100%; aspect-ratio: 16 / 9; object-fit: cover; object-position: left bottom; display: block;}
/* edit-requests two-col (common requests + report shot) */
.rsg-page .wh-edit-grid{display: grid; grid-template-columns: 1fr; gap: 32px; align-items: center; margin-top: 44px;}
@media (min-width: 821px){.rsg-page .wh-edit-grid{grid-template-columns: 1fr 1fr; gap: 40px;}}
/* response flow (if compromised) */
.rsg-page .resp-flow{display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin: 18px 0 0; counter-reset: rf;}
.rsg-page .rf-step{position: relative; background: var(--paper-soft); border: 1px solid var(--line); border-radius: 14px; padding: 18px 18px 16px;}
.rsg-page .rf-step .rf-num{display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 8px; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; font-family: var(--font-display); font-weight: 800; font-size: 13px; margin-bottom: 11px; box-shadow: 0 6px 14px rgba(44,122,75,0.24);}
.rsg-page .rf-step strong{display: block; font-family: var(--font-display); font-size: 13.5px; color: var(--ink-900); margin-bottom: 5px; line-height: 1.3;}
.rsg-page .rf-step p{font-size: 12.5px; line-height: 1.55; color: var(--ink-2); margin: 0;}
@media (max-width: 820px){.rsg-page .resp-flow{grid-template-columns: 1fr 1fr;}}
@media (max-width: 460px){.rsg-page .resp-flow{grid-template-columns: 1fr;}}
/* definition chip list (§2) */
.rsg-page .wh-def{background: #fff; border: 1px solid var(--line); border-left: 4px solid var(--green-500); border-radius: 16px; padding: 26px 28px; box-shadow: var(--shadow-md); margin: 0 0 8px;}
.rsg-page .wh-def-lead{font-size: 16px; line-height: 1.6; color: var(--ink-900); margin: 0 0 20px; font-weight: 500;}
.rsg-page .wh-def-lead strong{color: var(--green-700);}
.rsg-page .wh-chips{list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px;}
.rsg-page .wh-chip{display: flex; align-items: center; gap: 10px; background: var(--paper-soft); border: 1px solid var(--line); border-radius: 11px; padding: 12px 14px; font-family: var(--font-display); font-weight: 700; font-size: 13.5px; color: var(--ink-900); transition: border-color .2s, transform .2s;}
.rsg-page .wh-chip:hover{border-color: rgba(44,122,75,0.34); transform: translateY(-2px);}
.rsg-page .wh-chip .wh-chip-ic{width: 26px; height: 26px; border-radius: 7px; background: var(--green-50); color: var(--green-600); display: flex; align-items: center; justify-content: center; flex-shrink: 0;}
.rsg-page .wh-chip .wh-chip-ic svg{width: 14px; height: 14px;}
@media (max-width: 760px){.rsg-page .wh-chips{grid-template-columns: 1fr 1fr;}}
@media (max-width: 480px){.rsg-page .wh-chips{grid-template-columns: 1fr;}}
/* scale-back drift split (§12) — premium comparison cards */
.rsg-page .wh-drift{position: relative; display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin: 8px 0 0; align-items: stretch;}
.rsg-page .wh-drift-col{position: relative; display: flex; flex-direction: column; border-radius: 18px; padding: 0; border: 1px solid var(--line); overflow: hidden; box-shadow: 0 10px 30px rgba(0,0,0,0.05); transition: transform .2s, box-shadow .2s;}
.rsg-page .wh-drift-col:hover{transform: translateY(-3px); box-shadow: 0 18px 42px rgba(0,0,0,0.10);}
.rsg-page .wh-drift-col.bad{background: linear-gradient(165deg, #FFFFFF 0%, #FCEFEF 100%); border-color: rgba(200,32,43,0.20);}
.rsg-page .wh-drift-col.good{background: linear-gradient(165deg, #F5FAF6 0%, #E7F1EA 100%); border-color: rgba(44,122,75,0.24);}
.rsg-page .wh-drift-col::before{content: ""; position: absolute; top: 0; left: 0; right: 0; height: 4px;}
.rsg-page .wh-drift-col.bad::before{background: linear-gradient(90deg, var(--red), #E66A6A);}
.rsg-page .wh-drift-col.good::before{background: linear-gradient(90deg, var(--green-500), #6EE7B7);}
.rsg-page .wd-head{display: flex; align-items: flex-start; gap: 14px; padding: 26px 26px 16px;}
.rsg-page .wd-medal{width: 46px; height: 46px; border-radius: 13px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; box-shadow: 0 8px 20px rgba(0,0,0,0.14);}
.rsg-page .wd-medal svg{width: 23px; height: 23px; color: #fff;}
.rsg-page .wh-drift-col.bad .wd-medal{background: linear-gradient(135deg, #E0414C, var(--red));}
.rsg-page .wh-drift-col.good .wd-medal{background: linear-gradient(135deg, var(--green-500), var(--green-600));}
.rsg-page .wh-drift-eye{display: inline-flex; align-items: center; gap: 8px; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase; font-weight: 700; margin-bottom: 7px;}
.rsg-page .wh-drift-col.bad .wh-drift-eye{color: var(--red);}
.rsg-page .wh-drift-col.good .wh-drift-eye{color: var(--green-700);}
.rsg-page .wh-drift-eye span{width: 8px; height: 8px; border-radius: 50%;}
.rsg-page .wh-drift-col.bad .wh-drift-eye span{background: var(--red);}
.rsg-page .wh-drift-col.good .wh-drift-eye span{background: var(--green-500);}
.rsg-page .wh-drift-col h3{font-family: var(--font-display); font-size: 19px; font-weight: 800; color: var(--ink-900); margin: 0; line-height: 1.25;}
.rsg-page .wh-drift-list{list-style: none; margin: 0; padding: 2px 18px 8px; display: grid; gap: 3px; flex: 1;}
.rsg-page .wh-drift-list li{display: flex; align-items: flex-start; gap: 12px; font-size: 14px; line-height: 1.5; color: var(--ink-900); font-weight: 500; padding: 9px 10px; border-radius: 10px; transition: background .2s;}
.rsg-page .wh-drift-col.bad .wh-drift-list li:hover{background: rgba(200,32,43,0.05);}
.rsg-page .wh-drift-col.good .wh-drift-list li:hover{background: rgba(44,122,75,0.06);}
.rsg-page .wh-drift-list .wd-mk{width: 24px; height: 24px; border-radius: 50%; display: flex; align-items: center; justify-content: center; flex-shrink: 0; margin-top: 0;}
.rsg-page .wh-drift-list .wd-mk svg{width: 13px; height: 13px;}
.rsg-page .wh-drift-col.bad .wd-mk{background: rgba(200,32,43,0.12); color: var(--red);}
.rsg-page .wh-drift-col.good .wd-mk{background: var(--green-50); color: var(--green-600);}
.rsg-page .wd-foot{display: flex; align-items: center; gap: 10px; margin-top: auto; padding: 15px 26px; border-top: 1px solid rgba(0,0,0,0.06); font-size: 12.5px; font-weight: 600; font-style: italic;}
.rsg-page .wd-foot svg{width: 16px; height: 16px; flex-shrink: 0;}
.rsg-page .wh-drift-col.bad .wd-foot{color: #B0303A;}
.rsg-page .wh-drift-col.good .wd-foot{color: var(--green-700);}
.rsg-page .wd-vs{position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 3; width: 46px; height: 46px; border-radius: 50%; background: #fff; border: 1px solid var(--line); box-shadow: 0 6px 18px rgba(0,0,0,0.14); display: flex; align-items: center; justify-content: center; font-family: var(--font-display); font-weight: 800; font-size: 12px; color: var(--ink-2); text-transform: uppercase; letter-spacing: 0.04em;}
@media (max-width: 820px){.rsg-page .wh-drift{grid-template-columns: 1fr; gap: 18px;}}
@media (max-width: 820px){.rsg-page .wd-vs{display: none;}}
/* monthly report layout (§10) */
.rsg-page .wh-report{display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: stretch;}
.rsg-page .wh-report .ai-dashboard{margin: 0;}
.rsg-page .wh-report-list{list-style: none; margin: 0; padding: 0; display: grid; gap: 14px;}
.rsg-page .wh-report-list li{display: flex; align-items: flex-start; gap: 13px;}
.rsg-page .wh-report-list .wr-ic{width: 36px; height: 36px; border-radius: 10px; background: var(--green-50); color: var(--green-600); display: flex; align-items: center; justify-content: center; flex-shrink: 0;}
.rsg-page .wh-report-list .wr-ic svg{width: 18px; height: 18px;}
.rsg-page .wh-report-list strong{display: block; font-family: var(--font-display); font-size: 14.5px; color: var(--ink-900); margin-bottom: 3px;}
.rsg-page .wh-report-list p{font-size: 13px; line-height: 1.55; color: var(--ink-2); margin: 0;}
@media (max-width: 880px){.rsg-page .wh-report{grid-template-columns: 1fr; gap: 28px;}}
/* ownership backup list (§11) */
.rsg-page .wh-own-backup{background: var(--paper-soft); border: 1px solid var(--line); border-radius: 14px; padding: 22px 24px; margin: 22px 0 0;}
.rsg-page .wh-own-backup .wob-h{display: flex; align-items: center; gap: 10px; font-family: var(--font-display); font-weight: 800; font-size: 14px; color: var(--ink-900); margin-bottom: 14px;}
.rsg-page .wh-own-backup .wob-h svg{width: 18px; height: 18px; color: var(--green-600);}
.rsg-page .wob-grid{list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px;}
.rsg-page .wob-grid li{display: flex; align-items: center; gap: 9px; font-size: 13px; font-weight: 600; color: var(--ink-900);}
.rsg-page .wob-grid .wob-ck{width: 20px; height: 20px; border-radius: 6px; background: var(--green-50); color: var(--green-600); display: flex; align-items: center; justify-content: center; flex-shrink: 0;}
.rsg-page .wob-grid .wob-ck svg{width: 11px; height: 11px;}
@media (max-width: 760px){.rsg-page .wob-grid{grid-template-columns: 1fr;}}
/* §9 — edit-requests redesign (common-request cards + full-width completed-edits log) */
.rsg-page .wh-edit{margin-top: 44px;}
.rsg-page .wh-edit-head{margin: 0 0 20px;}
.rsg-page .wh-edit-head h3{font-family: var(--font-display); font-size: 20px; font-weight: 800; color: var(--ink-900); margin: 0 0 8px;}
.rsg-page .wh-edit-head p{font-size: 14.5px; line-height: 1.6; color: var(--ink-2); margin: 0; max-width: 760px;}
.rsg-page .wh-req-grid{list-style: none; margin: 0 0 34px; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px;}
.rsg-page .wh-req-card{display: flex; align-items: center; gap: 13px; background: #fff; border: 1px solid var(--line); border-radius: 13px; padding: 15px 16px; box-shadow: var(--shadow-md); transition: border-color .2s, transform .2s, box-shadow .2s;}
.rsg-page .wh-req-card:hover{border-color: rgba(44,122,75,0.34); transform: translateY(-3px); box-shadow: 0 12px 28px rgba(0,0,0,0.09);}
.rsg-page .wh-req-card .wrc-ic{width: 40px; height: 40px; border-radius: 11px; background: linear-gradient(135deg, var(--green-50), #fff); border: 1px solid rgba(44,122,75,0.16); color: var(--green-600); display: flex; align-items: center; justify-content: center; flex-shrink: 0;}
.rsg-page .wh-req-card .wrc-ic svg{width: 19px; height: 19px;}
.rsg-page .wh-req-card .wrc-tx{font-family: var(--font-display); font-weight: 700; font-size: 13.5px; line-height: 1.35; color: var(--ink-900);}
@media (max-width: 880px){.rsg-page .wh-req-grid{grid-template-columns: 1fr 1fr;}}
@media (max-width: 540px){.rsg-page .wh-req-grid{grid-template-columns: 1fr;}}
/* full-width completed-edits log table (native, on-brand) */
.rsg-page .wh-log{background: #fff; border-radius: 16px; overflow: hidden; box-shadow: 0 16px 40px rgba(0,0,0,0.08), 0 0 0 1px var(--line);}
.rsg-page .wh-log-bar{display: flex; align-items: center; gap: 14px; padding: 13px 20px; background: #F8FAFC; border-bottom: 1px solid #E2E8F0;}
.rsg-page .wh-log-bar .wl-dots{display: flex; gap: 6px; flex-shrink: 0;}
.rsg-page .wh-log-bar .wl-dots span{width: 10px; height: 10px; border-radius: 50%;}
.rsg-page .wh-log-bar .wl-dots .d1{background: #FF5F56;}
.rsg-page .wh-log-bar .wl-dots .d2{background: #FFBD2E;}
.rsg-page .wh-log-bar .wl-dots .d3{background: #27C93F;}
.rsg-page .wh-log-bar .wl-title{font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.14em; text-transform: uppercase; color: #64748B; font-weight: 700;}
.rsg-page .wh-log-bar .wl-badge{margin-left: auto; display: inline-flex; align-items: center; gap: 7px; font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.1em; text-transform: uppercase; font-weight: 700; color: var(--green-700); background: var(--green-50); border: 1px solid rgba(44,122,75,0.2); border-radius: 999px; padding: 4px 11px; white-space: nowrap;}
.rsg-page .wh-log-bar .wl-badge svg{width: 12px; height: 12px;}
.rsg-page .wh-log-scroll{overflow-x: auto; -webkit-overflow-scrolling: touch;}
.rsg-page .wh-log-table{width: 100%; min-width: 720px; border-collapse: collapse;}
.rsg-page .wh-log-table thead th{font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.12em; text-transform: uppercase; color: #94A3B8; font-weight: 700; text-align: left; padding: 13px 18px; background: #FBFCFD; border-bottom: 1px solid #E8ECEA;}
.rsg-page .wh-log-table tbody td{padding: 14px 18px; border-bottom: 1px solid var(--line-2); vertical-align: top;}
.rsg-page .wh-log-table tbody tr:nth-child(even){background: #FAFBFB;}
.rsg-page .wh-log-table tbody tr:hover{background: var(--green-50);}
.rsg-page .wh-log-table tbody tr:last-child td{border-bottom: 0;}
.rsg-page .wh-log-table .wl-num{font-family: var(--font-mono); font-size: 12px; font-weight: 700; color: var(--green-600); width: 36px;}
.rsg-page .wh-log-table .wl-client{white-space: nowrap;}
.rsg-page .wh-log-table .wl-client .wlc-row{display: flex; align-items: center; gap: 9px;}
.rsg-page .wh-log-table .wl-client .wlc-av{width: 26px; height: 26px; border-radius: 7px; background: var(--green-50); border: 1px solid rgba(44,122,75,0.16); color: var(--green-700); font-family: var(--font-display); font-weight: 800; font-size: 10px; display: flex; align-items: center; justify-content: center; flex-shrink: 0;}
.rsg-page .wh-log-table .wl-client strong{font-family: var(--font-display); font-size: 13px; font-weight: 700; color: var(--ink-900);}
.rsg-page .wh-log-table .wl-task{font-family: var(--font-display); font-size: 13px; font-weight: 600; color: var(--ink-900); min-width: 160px;}
.rsg-page .wh-log-table .wl-details{font-size: 12.5px; line-height: 1.55; color: var(--ink-2); max-width: 430px;}
.rsg-page .wh-log-table .wl-details .wl-dash{color: #A8B0AD;}
.rsg-page .wh-log-table .wl-status{text-align: center; width: 48px;}
.rsg-page .wh-log-table .wl-check{display: inline-flex; align-items: center; justify-content: center; width: 22px; height: 22px; border-radius: 50%; background: var(--green-500); color: #fff;}
.rsg-page .wh-log-table .wl-check svg{width: 12px; height: 12px;}
.rsg-page .wh-log-foot{display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 20px; background: #F8FAFC; border-top: 1px solid #E8ECEA;}
.rsg-page .wh-log-foot .wlf-label{font-family: var(--font-display); font-size: 13px; font-weight: 800; color: var(--ink-900);}
.rsg-page .wh-log-foot .wlf-count{display: inline-flex; align-items: center; justify-content: center; min-width: 30px; height: 26px; padding: 0 9px; border-radius: 8px; background: var(--green-500); color: #fff; font-family: var(--font-display); font-weight: 800; font-size: 13px;}
@media (max-width: 600px){.rsg-page .wh-log-bar{padding: 11px 14px; gap: 10px;}}
@media (max-width: 600px){.rsg-page .wh-log-bar .wl-title{font-size: 8px; letter-spacing: 0.06em;}}
@media (max-width: 600px){.rsg-page .wh-log-foot{padding: 12px 14px;}}
/* §10 — native monthly-report mockup + elevated explainer cards */
.rsg-page .wh-report-mock{background: #fff; border-radius: 16px; overflow: hidden; box-shadow: 0 16px 40px rgba(0,0,0,0.08), 0 0 0 1px var(--line);}
.rsg-page .wh-rm-bar{display: flex; align-items: center; gap: 12px; padding: 12px 18px; background: #F8FAFC; border-bottom: 1px solid #E2E8F0;}
.rsg-page .wh-rm-bar .wl-dots{display: flex; gap: 6px; flex-shrink: 0;}
.rsg-page .wh-rm-bar .wl-dots span{width: 10px; height: 10px; border-radius: 50%;}
.rsg-page .wh-rm-bar .wl-dots .d1{background: #FF5F56;}
.rsg-page .wh-rm-bar .wl-dots .d2{background: #FFBD2E;}
.rsg-page .wh-rm-bar .wl-dots .d3{background: #27C93F;}
.rsg-page .wh-rm-bar .wl-title{font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.14em; text-transform: uppercase; color: #64748B; font-weight: 700;}
.rsg-page .wh-rm-body{padding: 24px 24px 20px;}
.rsg-page .wh-rm-head{display: flex; align-items: flex-end; justify-content: space-between; gap: 14px; padding-bottom: 14px; border-bottom: 2px solid var(--green-500); margin-bottom: 18px;}
.rsg-page .wh-rm-title{font-family: var(--font-display); font-size: 22px; font-weight: 800; color: var(--ink-900); margin: 0; line-height: 1.1;}
.rsg-page .wh-rm-sub{display: block; font-family: var(--font-mono); font-size: 11px; color: var(--ink-2); letter-spacing: 0.03em; margin-top: 4px;}
.rsg-page .wh-rm-month{font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.1em; text-transform: uppercase; font-weight: 700; color: var(--green-700); background: var(--green-50); border: 1px solid rgba(44,122,75,0.2); border-radius: 999px; padding: 5px 12px; white-space: nowrap; flex-shrink: 0;}
.rsg-page .wh-rm-kpis{display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; margin-bottom: 20px;}
.rsg-page .wh-rm-kpi{text-align: center; background: var(--paper-soft); border: 1px solid var(--line); border-radius: 12px; padding: 14px 6px;}
.rsg-page .wh-rm-kpi .k-num{display: block; font-family: var(--font-display); font-size: 26px; font-weight: 800; color: var(--green-600); line-height: 1;}
.rsg-page .wh-rm-kpi .k-lab{display: block; font-size: 9.5px; color: var(--ink-2); font-weight: 600; margin-top: 6px; line-height: 1.25;}
.rsg-page .wh-rm-section{display: flex; align-items: center; gap: 10px; background: linear-gradient(135deg,#000 0%,#4A4A4A 100%); border-radius: 9px; padding: 11px 14px;}
.rsg-page .wh-rm-sec-num{font-family: var(--font-mono); font-size: 11px; font-weight: 800; color: var(--green-500);}
.rsg-page .wh-rm-sec-tx{font-family: var(--font-display); font-size: 12.5px; font-weight: 700; color: #fff; letter-spacing: 0.02em;}
.rsg-page .wh-rm-scroll{overflow-x: auto; -webkit-overflow-scrolling: touch;}
.rsg-page .wh-rm-table{width: 100%; min-width: 440px; border-collapse: collapse;}
.rsg-page .wh-rm-table thead th{font-family: var(--font-mono); font-size: 9px; letter-spacing: 0.1em; text-transform: uppercase; color: #94A3B8; font-weight: 700; text-align: left; padding: 11px 12px; border-bottom: 1px solid #E8ECEA;}
.rsg-page .wh-rm-table thead th.rm-c{text-align: center; width: 56px;}
.rsg-page .wh-rm-table tbody td{padding: 12px; border-bottom: 1px solid var(--line-2); vertical-align: middle;}
.rsg-page .wh-rm-table tbody tr:last-child td{border-bottom: 0;}
.rsg-page .wh-rm-table .rm-client strong{display: block; font-family: var(--font-display); font-size: 13px; font-weight: 700; color: var(--ink-900);}
.rsg-page .wh-rm-table .rm-client .rm-dom{display: block; font-family: var(--font-mono); font-size: 10.5px; color: var(--green-600); margin-top: 2px;}
.rsg-page .wh-rm-table .rm-loc{font-size: 12px; color: var(--ink-2); line-height: 1.4;}
.rsg-page .wh-rm-table .rm-count{text-align: center;}
.rsg-page .wh-rm-table .rm-pill{display: inline-flex; align-items: center; justify-content: center; min-width: 26px; height: 24px; padding: 0 8px; border-radius: 7px; background: var(--green-50); border: 1px solid rgba(44,122,75,0.18); color: var(--green-700); font-family: var(--font-display); font-weight: 800; font-size: 12.5px;}
.rsg-page .wh-rm-foot{padding: 12px 12px 2px;}
.rsg-page .wh-rm-foot span{font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.06em; text-transform: uppercase; color: #94A3B8; font-weight: 700;}
@media (max-width: 560px){.rsg-page .wh-rm-kpis{grid-template-columns: repeat(3, 1fr);}}
@media (max-width: 560px){.rsg-page .wh-rm-body{padding: 18px 16px 16px;}}
/* elevate the explainer list into cards; flex column so cards fill the mockup's height */
.rsg-page .wh-report-list{gap: 12px; display: flex; flex-direction: column; height: 100%;}
.rsg-page .wh-report-list li{flex: 1 1 auto; align-items: center; background: #fff; border: 1px solid var(--line); border-radius: 13px; padding: 15px 16px; box-shadow: var(--shadow-md); transition: border-color .2s, transform .2s, box-shadow .2s;}
.rsg-page .wh-report-list li:hover{border-color: rgba(44,122,75,0.34); transform: translateY(-2px); box-shadow: 0 12px 28px rgba(0,0,0,0.08);}
.rsg-page .wh-report-list .wr-ic{width: 40px; height: 40px; border-radius: 11px; background: linear-gradient(135deg, var(--green-50), #fff); border: 1px solid rgba(44,122,75,0.16);}
/* §11 — "Two Clean Options" dark callout redesign (2-col + portability hub + options band + footer) */
.rsg-page .lo-grid{display: grid; grid-template-columns: 1.15fr 1fr; gap: 34px; align-items: center; margin-bottom: 24px; position: relative; z-index: 2;}
.rsg-page .lo-left h3{color: #fff; font-family: var(--font-display); font-size: clamp(20px, 2.4vw, 26px); font-weight: 800; margin: 0 0 12px; line-height: 1.2;}
.rsg-page .lo-left > p{color: rgba(255,255,255,0.74); font-size: 14.5px; line-height: 1.65; margin: 0 0 20px;}
.rsg-page .lo-checks{list-style: none; margin: 0; padding: 0; display: grid; gap: 15px;}
.rsg-page .lo-checks li{display: flex; align-items: flex-start; gap: 12px;}
.rsg-page .lo-checks .lo-ck{width: 26px; height: 26px; border-radius: 8px; background: rgba(32,157,80,0.18); border: 1px solid rgba(32,157,80,0.34); color: var(--green-500); display: flex; align-items: center; justify-content: center; flex-shrink: 0; margin-top: 1px;}
.rsg-page .lo-checks .lo-ck svg{width: 14px; height: 14px;}
.rsg-page .lo-checks strong{display: block; font-family: var(--font-display); font-size: 14.5px; font-weight: 700; color: #fff; margin-bottom: 3px;}
.rsg-page .lo-checks .lo-cd{font-size: 13px; line-height: 1.55; color: rgba(255,255,255,0.62);}
.rsg-page .lo-diagram{background: rgba(255,255,255,0.03); border: 1px solid rgba(255,255,255,0.10); border-radius: 16px; padding: 18px 18px 20px;}
.rsg-page .lo-dg-title{display: block; font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.16em; text-transform: uppercase; color: rgba(255,255,255,0.45); font-weight: 700; margin-bottom: 4px;}
.rsg-page .lo-dg-stage{position: relative; width: 100%; height: 240px;}
.rsg-page .lo-dg-lines{position: absolute; inset: 0; width: 100%; height: 100%;}
.rsg-page .lo-node{position: absolute; transform: translate(-50%, -50%); display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; font-family: var(--font-display); font-weight: 700; z-index: 2;}
.rsg-page .lo-node.lo-corner{background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.16); color: rgba(255,255,255,0.92); border-radius: 999px; padding: 7px 13px; font-size: 11.5px; box-shadow: 0 6px 16px rgba(0,0,0,0.25);}
.rsg-page .lo-node-center{flex-direction: column; gap: 5px; left: 50%; top: 50%; background: var(--green-500); color: #fff; border-radius: 50%; width: 94px; height: 94px; justify-content: center; box-shadow: 0 0 0 7px rgba(32,157,80,0.16), 0 14px 30px rgba(32,157,80,0.45); font-size: 12px; text-align: center; line-height: 1.15;}
.rsg-page .lo-node-center svg{width: 22px; height: 22px;}
.rsg-page .lo-n1{left: 17%; top: 22%;}
.rsg-page .lo-n2{left: 83%; top: 22%;}
.rsg-page .lo-n3{left: 17%; top: 78%;}
.rsg-page .lo-n4{left: 83%; top: 78%;}
.rsg-page .lo-options{display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; padding: 22px 24px; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.10); border-radius: 14px; margin-bottom: 22px; position: relative; z-index: 2;}
.rsg-page .lo-opt{display: flex; flex-direction: column; gap: 7px;}
.rsg-page .lo-opt + .lo-opt{border-left: 1px solid rgba(255,255,255,0.10); padding-left: 16px;}
.rsg-page .lo-opt .lo-num{font-family: var(--font-display); font-size: clamp(24px, 2.8vw, 32px); font-weight: 800; color: #fff; letter-spacing: -0.02em; line-height: 1;}
.rsg-page .lo-opt:first-child .lo-num{color: var(--green-500);}
.rsg-page .lo-opt .lo-num small{font-size: 0.5em; font-weight: 700;}
.rsg-page .lo-opt .lo-lbl{font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.12em; text-transform: uppercase; color: rgba(255,255,255,0.55); font-weight: 700; line-height: 1.4;}
.rsg-page .lo-foot-row{display: flex; align-items: center; justify-content: space-between; gap: 18px; flex-wrap: wrap; padding-top: 20px; border-top: 1px solid rgba(255,255,255,0.10); position: relative; z-index: 2;}
.rsg-page .lo-foot-row p{margin: 0; font-size: 13.5px; line-height: 1.55; color: rgba(255,255,255,0.68); max-width: 560px;}
.rsg-page .lo-foot-row p strong{color: #fff; font-weight: 700;}
@media (max-width: 820px){.rsg-page .lo-grid{grid-template-columns: 1fr; gap: 24px;}}
@media (max-width: 820px){.rsg-page .lo-options{grid-template-columns: 1fr; gap: 0;}}
@media (max-width: 820px){.rsg-page .lo-opt + .lo-opt{border-left: 0; border-top: 1px solid rgba(255,255,255,0.10); padding-left: 0; padding-top: 14px; margin-top: 14px;}}
@media (max-width: 820px){.rsg-page .lo-foot-row{flex-direction: column; align-items: stretch;}}
@media (max-width: 820px){.rsg-page .lo-foot-row .hb-cta-btn{width: 100%; justify-content: center;}}
@media (max-width: 480px){.rsg-page .lo-dg-stage{height: 224px;}}
@media (max-width: 480px){.rsg-page .lo-node.lo-corner{font-size: 10px; padding: 6px 10px;}}
@media (max-width: 480px){.rsg-page .lo-n1, .rsg-page .lo-n3{left: 21%;}}
@media (max-width: 480px){.rsg-page .lo-n2, .rsg-page .lo-n4{left: 79%;}}
/* §2 — Site Health Monitor: nine instrument cards (replaces the flat chip grid) */
    .rsg-page .iw-monitor{margin: -16px 0 0;}
.rsg-page .iw-bar{display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; background: #fff; border: 1px solid var(--line); border-radius: 12px; box-shadow: var(--shadow-md); padding: 13px 18px; margin-bottom: 20px;}
.rsg-page .iw-bar-left{display: inline-flex; align-items: center; gap: 13px;}
.rsg-page .iw-dots{display: inline-flex; gap: 6px;}
.rsg-page .iw-dots span{width: 10px; height: 10px; border-radius: 50%; display: block;}
.rsg-page .iw-dots .r{background: #FF5F56;}
.rsg-page .iw-dots .y{background: #FFBD2E;}
.rsg-page .iw-dots .g{background: #27C93F;}
.rsg-page .iw-live{display: inline-flex; align-items: center; gap: 9px; font-family: var(--font-mono); font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; font-weight: 700; color: var(--ink-900);}
.rsg-page .iw-live::before{content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--green-500); box-shadow: 0 0 0 4px rgba(44,122,75,0.2);}
.rsg-page .iw-legend{font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.08em; text-transform: uppercase; font-weight: 700; color: var(--green-700); background: var(--green-50); border: 1px solid rgba(44,122,75,0.2); border-radius: 999px; padding: 6px 12px;}
.rsg-page .iw-grid{display: grid; grid-template-columns: 1fr; gap: 18px;}
@media (min-width: 620px){.rsg-page .iw-grid{grid-template-columns: repeat(2, 1fr);}}
@media (min-width: 980px){.rsg-page .iw-grid{grid-template-columns: repeat(3, 1fr);}}
.rsg-page .iw-card{position: relative; overflow: hidden; background: var(--paper); border: 1px solid var(--line); border-radius: 16px; box-shadow: 0 2px 10px rgba(17,17,17,0.05); padding: 20px; display: flex; flex-direction: column; transition: transform .25s, box-shadow .25s, border-color .25s;}
.rsg-page .iw-card:hover{transform: translateY(-3px); border-color: rgba(44,122,75,0.35); box-shadow: 0 16px 36px rgba(0,0,0,0.08);}
.rsg-page .iw-card::after{content: ""; position: absolute; top: -34px; left: -34px; width: 120px; height: 120px; background: radial-gradient(circle, rgba(44,122,75,0.08) 0%, transparent 70%); pointer-events: none;}
.rsg-page .iw-top{display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 13px; position: relative; z-index: 1;}
.rsg-page .iw-chip{width: 34px; height: 34px; border-radius: 9px; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: flex; align-items: center; justify-content: center; flex-shrink: 0; box-shadow: 0 6px 14px rgba(44,122,75,0.24);}
.rsg-page .iw-chip svg{width: 18px !important; height: 18px !important;}
.rsg-page .iw-status{display: inline-flex; align-items: center; gap: 6px; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.06em; text-transform: uppercase; font-weight: 700; color: var(--green-600); background: var(--green-50); border-radius: 999px; padding: 5px 10px; white-space: nowrap;}
.rsg-page .iw-status::before{content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--green-500); flex-shrink: 0;}
.rsg-page .iw-viz{height: 92px; border: 1px solid var(--line-2); border-radius: 10px; background: #FBFCFB; padding: 12px; overflow: hidden; display: flex; align-items: center; justify-content: center; position: relative; z-index: 1;}
.rsg-page .iw-viz svg{max-width: 100%;}
.rsg-page .iw-card h3{font-family: var(--font-display); font-size: 15.5px; font-weight: 700; color: var(--ink-900); margin: 14px 0 5px; line-height: 1.3; position: relative; z-index: 1;}
.rsg-page .iw-card > p{font-size: 13px; line-height: 1.55; color: var(--ink-500); margin: 0; position: relative; z-index: 1;}
.rsg-page .iw-foot{font-size: 14px; line-height: 1.6; color: var(--ink-500); margin: 20px 0 0; font-style: italic;}
/* viz 1 — uptime ribbon */
    .rsg-page .iwv-ribbon{display: flex; align-items: flex-end; gap: 3px; width: 100%; height: 100%;}
.rsg-page .iwv-ribbon i{flex: 1 1 auto; min-width: 3px; border-radius: 2px; background: var(--green-500); opacity: .88;}
.rsg-page .iwv-ribbon i.live{background: linear-gradient(180deg, var(--green-500), var(--green-700)); opacity: 1;}
/* viz 2 — version bump */
    .rsg-page .iwv-stack{display: flex; flex-direction: column; align-items: center; gap: 10px;}
.rsg-page .iwv-verrow{display: inline-flex; align-items: center; gap: 8px;}
.rsg-page .iwv-vchip{font-family: var(--font-mono); font-size: 11px; font-weight: 700; padding: 4px 9px; border-radius: 7px;}
.rsg-page .iwv-vchip.old{background: var(--green-50); color: var(--green-700); border: 1px solid var(--line);}
.rsg-page .iwv-vchip.new{background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: inline-flex; align-items: center; gap: 5px;}
.rsg-page .iwv-vchip.new svg{width: 11px !important; height: 11px !important;}
.rsg-page .iwv-arrow svg{width: 15px !important; height: 15px !important;}
.rsg-page .iwv-toggle{display: inline-flex; align-items: center; gap: 7px; font-family: var(--font-mono); font-size: 9px; letter-spacing: 0.06em; text-transform: uppercase; font-weight: 700; color: var(--ink-500);}
.rsg-page .iwv-sw{width: 26px; height: 15px; border-radius: 999px; background: var(--green-500); position: relative; flex-shrink: 0;}
.rsg-page .iwv-sw::after{content: ""; position: absolute; top: 2px; right: 2px; width: 11px; height: 11px; border-radius: 50%; background: #fff;}
/* viz 3 — form receipt */
    .rsg-page .iwv-form{display: flex; align-items: center; gap: 10px; justify-content: center;}
.rsg-page .iwv-fmock{display: flex; flex-direction: column; gap: 4px; width: 64px;}
.rsg-page .iwv-fline{height: 6px; border-radius: 3px; background: var(--line-2);}
.rsg-page .iwv-fbtn{height: 11px; border-radius: 3px; background: var(--green-500); margin-top: 2px;}
.rsg-page .iwv-env{color: var(--green-600); position: relative; display: inline-flex;}
.rsg-page .iwv-env svg{width: 34px !important; height: 34px !important;}
.rsg-page .iwv-envck{position: absolute; right: -5px; bottom: -3px; width: 16px; height: 16px; border-radius: 50%; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: flex; align-items: center; justify-content: center; box-shadow: 0 2px 6px rgba(44,122,75,0.4);}
.rsg-page .iwv-envck svg{width: 9px !important; height: 9px !important;}
/* viz 4 — tap call */
    .rsg-page .iwv-call{display: flex; align-items: center; gap: 14px;}
.rsg-page .iwv-phoneframe{position: relative; border: 1px solid var(--line); border-radius: 9px; padding: 10px 9px; background: #fff;}
.rsg-page .iwv-callbtn{display: inline-flex; align-items: center; gap: 5px; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; font-family: var(--font-display); font-weight: 700; font-size: 9.5px; padding: 6px 10px; border-radius: 6px;}
.rsg-page .iwv-callbtn svg{width: 11px !important; height: 11px !important;}
.rsg-page .iwv-ripple{position: absolute; top: -6px; right: -10px;}
.rsg-page .iwv-ripple svg{width: 34px !important; height: 34px !important;}
.rsg-page .iwv-wave{display: inline-flex; align-items: flex-end; gap: 3px; height: 30px;}
.rsg-page .iwv-wave i{width: 4px; border-radius: 2px; background: var(--green-500);}
/* viz 5 — sparkline */
    .rsg-page .iwv-spark{width: 100%;}
.rsg-page .iwv-spark svg{width: 100% !important; height: 62px !important; display: block;}
/* viz 6 — shield scan */
    .rsg-page .iwv-shield{display: flex; align-items: center; gap: 14px; justify-content: center;}
.rsg-page .iwv-shieldwrap{position: relative; overflow: hidden; border-radius: 6px; display: inline-flex;}
.rsg-page .iwv-shieldwrap svg.sh{width: 46px !important; height: 46px !important;}
.rsg-page .iwv-scan{position: absolute; left: 2px; right: 2px; top: 4px; height: 2px; background: var(--green-500); border-radius: 2px; box-shadow: 0 0 8px 1px rgba(44,122,75,0.65);}
.rsg-page .iwv-files{display: flex; flex-direction: column; gap: 6px;}
.rsg-page .iwv-frow{display: flex; align-items: center; gap: 6px;}
.rsg-page .iwv-frow > span:first-child{width: 30px; height: 6px; border-radius: 3px; background: var(--line-2);}
.rsg-page .iwv-fck{width: 14px; height: 14px; border-radius: 50%; background: var(--green-50); display: inline-flex; align-items: center; justify-content: center;}
.rsg-page .iwv-fck svg{width: 8px !important; height: 8px !important;}
/* viz 7 — backups */
    .rsg-page .iwv-backup{display: flex; flex-direction: column; align-items: center; gap: 11px;}
.rsg-page .iwv-days{display: inline-flex; gap: 6px;}
.rsg-page .iwv-day{width: 15px; height: 15px; border-radius: 50%; background: var(--green-500); color: #fff; display: inline-flex; align-items: center; justify-content: center;}
.rsg-page .iwv-day svg{width: 8px !important; height: 8px !important;}
.rsg-page .iwv-day.today{box-shadow: 0 0 0 3px rgba(44,122,75,0.25);}
.rsg-page .iwv-restore{display: inline-flex; align-items: center; gap: 6px; border: 1px solid var(--green-500); color: var(--green-600); border-radius: 7px; padding: 5px 11px; font-family: var(--font-display); font-weight: 700; font-size: 10px;}
.rsg-page .iwv-restore svg{width: 12px !important; height: 12px !important;}
/* viz 8 — edit track */
    .rsg-page .iwv-edit{display: flex; flex-direction: column; align-items: center; gap: 11px;}
.rsg-page .iwv-track{display: inline-flex; align-items: center; gap: 7px;}
.rsg-page .iwv-am{width: 22px; height: 22px; border-radius: 50%; background: var(--green-50); color: var(--green-600); display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0;}
.rsg-page .iwv-am svg{width: 12px !important; height: 12px !important;}
.rsg-page .iwv-tnode{font-family: var(--font-mono); font-size: 8.5px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em; padding: 4px 8px; border-radius: 6px; display: inline-flex; align-items: center; gap: 4px;}
.rsg-page .iwv-tnode.sub{background: var(--green-50); color: var(--green-700); border: 1px solid var(--line);}
.rsg-page .iwv-tnode.done{background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff;}
.rsg-page .iwv-tnode.done svg{width: 9px !important; height: 9px !important;}
.rsg-page .iwv-tbar{width: 16px; height: 3px; border-radius: 2px; background: var(--green-500);}
.rsg-page .iwv-cal{display: inline-flex; align-items: center; gap: 6px; font-family: var(--font-mono); font-size: 8.5px; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; color: var(--ink-700); background: #fff; border: 1px solid var(--line); border-radius: 7px; padding: 5px 9px;}
.rsg-page .iwv-cal svg{width: 12px !important; height: 12px !important; color: var(--green-600);}
/* viz 9 — report doc */
    .rsg-page .iwv-doc{width: 124px; background: #fff; border: 1px solid var(--line); border-radius: 8px; overflow: hidden; box-shadow: 0 4px 12px rgba(0,0,0,0.06);}
.rsg-page .iwv-doc-top{background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; font-family: var(--font-mono); font-size: 7.5px; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; padding: 5px 8px; display: flex; justify-content: space-between; align-items: center;}
.rsg-page .iwv-doc-body{padding: 7px 9px; display: flex; flex-direction: column; gap: 5px;}
.rsg-page .iwv-drow{display: flex; align-items: center; gap: 6px; font-family: var(--font-body); font-size: 8.5px; color: var(--ink-700); font-weight: 600;}
.rsg-page .iwv-drow::before{content: ""; width: 5px; height: 5px; border-radius: 50%; background: var(--green-500); flex-shrink: 0;}
@media (prefers-reduced-motion: no-preference){.rsg-page .iw-live::before{animation: pulse 2s infinite;}}
@media (prefers-reduced-motion: no-preference){.rsg-page .iwv-ribbon i.live{animation: iwPulse 1.6s ease-in-out infinite;}}
@media (prefers-reduced-motion: no-preference){.rsg-page .iwv-scan{animation: iwScan 2.6s ease-in-out infinite;}}
@media (prefers-reduced-motion: no-preference){.rsg-page .iwv-ripple svg{transform-origin: center; animation: iwRip 2.4s ease-out infinite;}}
@media (max-width: 600px){.rsg-page .iw-card{padding: 18px;}}
/* §2 closing CTA band (mobile-first: column base -> row at >=721px) */
    .rsg-page .s2cta-band{position: relative; overflow: hidden; margin-top: 36px; display: flex; flex-direction: column; align-items: flex-start; gap: 18px; padding: 24px 22px; background: linear-gradient(135deg, #FFFFFF 0%, var(--green-50) 100%); border: 1px solid rgba(44,122,75,0.22); border-left: 5px solid var(--green-500); border-radius: 18px; box-shadow: 0 10px 30px rgba(44,122,75,0.10);}
.rsg-page .s2cta-band::before{content: ""; position: absolute; top: -80px; right: -60px; width: 240px; height: 240px; background: radial-gradient(circle, rgba(44,122,75,0.12), transparent 65%); pointer-events: none; z-index: 0;}
.rsg-page .s2cta-copy, .rsg-page .s2cta-action{position: relative; z-index: 1; width: 100%; min-width: 0;}
.rsg-page .s2cta-eyebrow{display: inline-flex; align-items: center; gap: 8px; padding: 5px 12px; background: var(--green-50); color: var(--green-700); border-radius: 999px; font-family: var(--font-mono); font-size: 11px; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; line-height: 1;}
.rsg-page .s2cta-dot{width: 8px; height: 8px; border-radius: 50%; background: var(--green-500); box-shadow: 0 0 0 4px rgba(44,122,75,0.18); flex: 0 0 auto;}
.rsg-page .s2cta-head{font-family: var(--font-display); font-size: clamp(19px, 2.4vw, 23px); font-weight: 800; line-height: 1.25; color: var(--ink-900); margin: 12px 0 0;}
.rsg-page .s2cta-sub{font-family: var(--font-body); font-size: 14.5px; line-height: 1.55; color: var(--ink-2); margin: 8px 0 0;}
.rsg-page .s2cta-action{display: flex; flex-direction: column; align-items: stretch; width: 100%;}
.rsg-page .s2cta-action .btn{width: 100%; justify-content: center;}
.rsg-page .s2cta-action .btn svg{width: 18px !important; height: 18px !important;}
.rsg-page .s2cta-micro{font-family: var(--font-body); font-size: 11.5px; color: var(--ink-500); margin-top: 10px; text-align: center;}
@media (prefers-reduced-motion: no-preference){.rsg-page .s2cta-dot{animation: iwPulse 2s infinite;}}
@media (min-width: 721px){.rsg-page .s2cta-band{flex-direction: row; align-items: center; justify-content: space-between; gap: 28px; padding: 30px 34px;}}
@media (min-width: 721px){.rsg-page .s2cta-copy{flex: 1 1 320px; width: auto;}}
@media (min-width: 721px){.rsg-page .s2cta-action{flex: 0 0 auto; align-items: flex-end; width: auto;}}
@media (min-width: 721px){.rsg-page .s2cta-action .btn{width: auto;}}
@media (min-width: 721px){.rsg-page .s2cta-micro{text-align: right;}}
/* §3 — what-can-break comparison (light, featured right col) */
.rsg-page .cmp{background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); box-shadow: var(--shadow-md); overflow: hidden; margin: 36px 0 8px;}
.rsg-page .cmp table{width: 100%; border-collapse: collapse;}
.rsg-page .cmp th, .rsg-page .cmp td{padding: 15px 24px; text-align: left; vertical-align: middle;}
.rsg-page .cmp thead th{border-bottom: 2px solid var(--line); background: #fff; padding-top: 20px; padding-bottom: 20px;}
.rsg-page .cmp tbody td{border-bottom: 1px solid var(--line-2); font-size: 13.5px; line-height: 1.5;}
.rsg-page .cmp tbody tr:last-child td{border-bottom: 0;}
.rsg-page .cmp tbody tr:hover td{background-color: rgba(0,0,0,0.012);}
.rsg-page .cmp .cmp-dim{width: 44%; font-family: var(--font-body); color: var(--ink-2); font-size: 13.5px;}
.rsg-page .cmp .cmp-seo{background: rgba(44,122,75,0.05); border-left: 1px solid rgba(44,122,75,0.16); border-right: 1px solid rgba(44,122,75,0.16); color: var(--ink-900); font-weight: 600;}
.rsg-page .cmp thead .cmp-seo{background: linear-gradient(180deg, rgba(44,122,75,0.14), rgba(44,122,75,0.05)); border-top: 3px solid var(--green-500);}
.rsg-page .cmp tbody tr:hover td.cmp-seo{background-color: rgba(44,122,75,0.085);}
.rsg-page .cmp .cmp-paid{color: var(--ink-2);}
.rsg-page .cmp-th{display: grid; grid-template-columns: auto 1fr; grid-template-rows: auto auto; column-gap: 12px; align-items: center;}
.rsg-page .cmp-th .cth-ic{grid-column: 1; grid-row: 1 / span 2; align-self: center;}
.rsg-page .cmp-th b{grid-column: 2; align-self: end;}
.rsg-page .cmp-th .cth-sub{grid-column: 2; align-self: start;}
.rsg-page .cmp-th .cth-ic{width: 33px; height: 33px; border-radius: 9px; display: flex; align-items: center; justify-content: center; flex-shrink: 0;}
.rsg-page .cmp-seo .cth-ic{background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; box-shadow: 0 6px 14px rgba(44,122,75,0.3);}
.rsg-page .cmp-paid .cth-ic{background: #EEF1F4; color: #64748B;}
.rsg-page .cmp-th .cth-ic svg{width: 17px; height: 17px;}
.rsg-page .cmp-th b{font-family: var(--font-display); font-weight: 800; font-size: 16px; color: var(--ink-900); line-height: 1.1;}
.rsg-page .cmp-th .cth-sub{display: block; font-family: var(--font-mono); font-size: 9px; letter-spacing: 0.08em; text-transform: uppercase; font-weight: 700; margin-top: 3px;}
.rsg-page .cmp-seo .cth-sub{color: var(--green-700);}
.rsg-page .cmp-paid .cth-sub{color: var(--ink-500);}
@media (max-width: 680px){.rsg-page .cmp{overflow-x: auto;}}
@media (max-width: 680px){.rsg-page .cmp table{min-width: 560px;}}
.rsg-page .tip-with-cta{display: flex; flex-direction: column; align-items: stretch; gap: 14px;}
.rsg-page .tip-with-cta .twc-row{display: flex; align-items: flex-start; gap: 12px;}
.rsg-page .tip-with-cta .twc-row p{margin: 0;}
.rsg-page .tip-with-cta .htc-icon{width: 32px; height: 32px; border-radius: 8px; background: rgba(44,122,75,0.08); display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0;}
.rsg-page .tip-with-cta .htc-icon svg{width: 18px !important; height: 18px !important;}
.rsg-page .tip-with-cta .s3-incard-cta{align-self: flex-end; padding: 8px 16px; font-size: 11.5px;}
.rsg-page .tip-with-cta .s3-incard-cta svg{width: 12px !important; height: 12px !important;}
@media (max-width: 480px){.rsg-page .tip-with-cta .s3-incard-cta{align-self: stretch; justify-content: center;}}
/* guiding-principle pull-quote callout */
    .rsg-page .principle-callout{position: relative; margin-top: 24px; padding: 26px 30px 28px; background: linear-gradient(135deg, #FFFFFF 0%, var(--green-50) 100%); border: 1px solid rgba(44,122,75,0.22); border-radius: 18px; box-shadow: 0 14px 36px rgba(44,122,75,0.10); overflow: hidden;}
.rsg-page .principle-callout .pc-eye{display: inline-flex; align-items: center; gap: 9px; font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 700; color: var(--green-700); margin-bottom: 12px; position: relative; z-index: 1;}
.rsg-page .principle-callout .pc-eye .pc-dot{width: 7px; height: 7px; border-radius: 50%; background: var(--green-500); box-shadow: 0 0 0 4px rgba(44,122,75,0.14);}
.rsg-page .principle-callout p{position: relative; z-index: 1; margin: 0; font-family: var(--font-display); font-size: 18px; line-height: 1.55; color: var(--ink-900); font-weight: 600;}
.rsg-page .principle-callout p a{color: var(--green-700); font-weight: 700; text-decoration: none; border-bottom: 1.5px solid rgba(44,122,75,0.4);}
@media (max-width: 600px){.rsg-page .principle-callout{padding: 22px 22px 24px;}}
@media (max-width: 600px){.rsg-page .principle-callout p{font-size: 16px;}}
/* §4 feature cards — "Benefit Wells" (same instrument family as §2, deliberately re-keyed) */
    .rsg-page .hf2-card{background: var(--paper); border: 1px solid var(--line); border-radius: 16px; box-shadow: 0 2px 10px rgba(17,17,17,0.05); padding: 20px; display: flex; flex-direction: column; position: relative; overflow: hidden; transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;}
.rsg-page .hf2-card:hover{transform: translateY(-3px); border-color: rgba(44,122,75,0.45); box-shadow: 0 16px 36px rgba(17,17,17,0.10);}
.rsg-page .hf2-card::after{content: ""; position: absolute; top: -20px; left: -20px; width: 120px; height: 120px; background: radial-gradient(circle, rgba(44,122,75,0.07), transparent 70%); pointer-events: none; z-index: 0;}
.rsg-page .hf2-head, .rsg-page .hf2-well, .rsg-page .hf2-title, .rsg-page .hf2-desc{position: relative; z-index: 1;}
.rsg-page .hf2-head{display: flex; align-items: center; justify-content: space-between; gap: 10px;}
.rsg-page .hf2-chip{width: 34px; height: 34px; border-radius: 9px; background: linear-gradient(135deg, var(--green-500), var(--green-700)); box-shadow: 0 6px 14px rgba(44,122,75,0.24); display: flex; align-items: center; justify-content: center; flex-shrink: 0;}
.rsg-page .hf2-chip svg{width: 18px !important; height: 18px !important;}
.rsg-page .hf2-cap{font-family: var(--font-mono); font-size: 9.5px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--green-700);}
.rsg-page .hf2-well{position: relative; height: 92px; border-radius: 10px; overflow: hidden; padding: 12px; display: flex; align-items: center; justify-content: center; margin-top: 14px; background: linear-gradient(160deg, #FFF 0%, var(--green-50) 100%); border: 1px solid rgba(44,122,75,0.12);}
.rsg-page .hf2-well::before{content: ""; position: absolute; top: 0; left: 0; right: 0; height: 2px; background: linear-gradient(90deg, var(--green-500), var(--green-700));}
.rsg-page .hf2-well svg{max-width: 100%; height: auto;}
.rsg-page .hf2-card svg{flex-shrink: 0;}
.rsg-page .hf2-title{font-family: var(--font-display); font-size: 15.5px; font-weight: 700; line-height: 1.3; color: var(--ink-900); margin: 14px 0 0;}
.rsg-page .hf2-desc{font-family: var(--font-body); font-size: 13px; line-height: 1.58; color: var(--ink-500); margin: 6px 0 0;}
/* highlight card #8 */
    .rsg-page .hf2-highlight{background: linear-gradient(135deg, var(--green-50), #FFF); border-color: rgba(44,122,75,0.28); border-left: 4px solid var(--green-500); padding-left: 18px;}
.rsg-page .hf2-highlight .hf2-cap{background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; padding: 3px 9px; border-radius: 999px; display: inline-flex; align-items: center; gap: 5px;}
.rsg-page .hf2-highlight .hf2-cap::before{content: ""; width: 5px; height: 5px; border-radius: 50%; background: #fff;}
.rsg-page .hf2-highlight .hf2-well{background: linear-gradient(135deg, var(--green-50) 0%, #FFF 90%);}
/* viz helpers */
    .rsg-page .hf2-cachewrap{display: flex; flex-direction: column; align-items: center; gap: 7px;}
.rsg-page .hf2-pageMini{position: relative; width: 46px; height: 33px; background: #fff; border: 1px solid var(--line); border-radius: 5px; padding: 5px; display: flex; flex-direction: column; gap: 4px;}
.rsg-page .hf2-skel{height: 3px; border-radius: 2px; background: var(--line-2);}
.rsg-page .hf2-bolt{position: absolute; top: -5px; right: -5px; width: 16px; height: 16px; border-radius: 50%; background: linear-gradient(135deg, var(--green-500), var(--green-700)); display: flex; align-items: center; justify-content: center; box-shadow: 0 3px 7px rgba(44,122,75,0.35);}
.rsg-page .hf2-bolt svg{width: 9px !important; height: 9px !important;}
.rsg-page .hf2-track{width: 58px; height: 5px; background: var(--line-2); border-radius: 4px; overflow: hidden;}
.rsg-page .hf2-fill{height: 100%; width: 92%; border-radius: 4px; background: linear-gradient(90deg, var(--green-500), var(--green-700));}
.rsg-page .hf2-imgrow{display: flex; align-items: center; gap: 9px;}
.rsg-page .hf2-imgcol{display: flex; flex-direction: column; align-items: center; gap: 4px;}
.rsg-page .hf2-imgTile{width: 30px; height: 30px; background: #fff; border: 1px solid var(--line); border-radius: 5px; display: flex; align-items: center; justify-content: center;}
.rsg-page .hf2-imgTile.green{background: var(--green-50); border-color: rgba(44,122,75,0.25);}
.rsg-page .hf2-imgTile svg{width: 15px !important; height: 15px !important;}
.rsg-page .hf2-tag{font-family: var(--font-mono); font-size: 8px; font-weight: 700; color: var(--ink-500); letter-spacing: 0.04em;}
.rsg-page .hf2-badge{font-family: var(--font-mono); font-size: 8.5px; font-weight: 700; background: var(--green-50); color: var(--green-700); border-radius: 5px; padding: 1px 5px; letter-spacing: 0.02em;}
.rsg-page .hf2-gate{display: flex; align-items: center; gap: 11px;}
.rsg-page .hf2-reqs{display: flex; flex-direction: column; gap: 7px;}
.rsg-page .hf2-req{display: inline-flex; align-items: center; gap: 3px;}
.rsg-page .hf2-req svg{width: 13px !important; height: 13px !important;}
.rsg-page .hf2-wall{width: 3px; height: 46px; border-radius: 2px; background: linear-gradient(180deg, var(--green-500), var(--green-700));}
.rsg-page .hf2-sitemini{width: 30px; height: 23px; background: #fff; border: 1px solid var(--line); border-radius: 4px; padding: 4px; display: flex; flex-direction: column; gap: 3px;}
.rsg-page .hf2-sitemini span{height: 3px; border-radius: 2px; background: var(--green-50);}
.rsg-page .hf2-up{font-family: var(--font-mono); font-size: 8px; font-weight: 700; text-transform: uppercase; background: var(--green-50); color: var(--green-700); border-radius: 4px; padding: 1px 5px;}
.rsg-page .hf2-sslwrap{display: flex; flex-direction: column; align-items: center; gap: 8px;}
.rsg-page .hf2-addr{width: 100px; height: 22px; background: #fff; border: 1px solid var(--line); border-radius: 999px; display: flex; align-items: center; gap: 5px; padding: 0 9px;}
.rsg-page .hf2-addr svg{flex-shrink: 0;}
.rsg-page .hf2-https{font-family: var(--font-mono); font-size: 8.5px; font-weight: 700; color: var(--green-700);}
.rsg-page .hf2-urlskel{flex: 1; height: 4px; background: var(--line-2); border-radius: 2px;}
.rsg-page .hf2-cipher{display: flex; gap: 3px;}
.rsg-page .hf2-cipher span{width: 6px; height: 6px; border-radius: 1px;}
.rsg-page .hf2-chat{display: flex; flex-direction: column; gap: 5px; width: 108px;}
.rsg-page .hf2-bub{padding: 6px 7px; border: 1px solid var(--line);}
.rsg-page .hf2-bub.in{align-self: flex-start; background: #fff; border-radius: 10px 10px 10px 2px;}
.rsg-page .hf2-bub.in span{display: block; height: 3px; width: 46px; border-radius: 2px; background: var(--line-2);}
.rsg-page .hf2-bub.out{align-self: flex-end; background: var(--green-50); border-color: rgba(44,122,75,0.22); border-radius: 10px 10px 2px 10px; display: inline-flex; align-items: center; gap: 7px;}
.rsg-page .hf2-avatar{width: 16px; height: 16px; border-radius: 50%; background: linear-gradient(135deg, var(--green-500), var(--green-700)); display: flex; align-items: center; justify-content: center; flex-shrink: 0;}
.rsg-page .hf2-avatar svg{width: 9px !important; height: 9px !important;}
.rsg-page .hf2-typing{display: inline-flex; gap: 3px;}
.rsg-page .hf2-typing i{width: 3.5px; height: 3.5px; border-radius: 50%; background: var(--green-500);}
.rsg-page .hf2-team{display: flex; flex-direction: column; align-items: center; gap: 6px;}
.rsg-page .hf2-eye{color: var(--green-700); line-height: 0;}
.rsg-page .hf2-eye svg{width: 18px !important; height: 18px !important;}
.rsg-page .hf2-avstack{display: inline-flex;}
.rsg-page .hf2-avstack .hf2-avatar{width: 19px; height: 19px; border: 1.5px solid #fff; margin-left: -5px;}
.rsg-page .hf2-avstack .hf2-avatar:first-child{margin-left: 0;}
.rsg-page .hf2-nodes{display: inline-flex; gap: 6px; align-items: center;}
.rsg-page .hf2-nodes i{width: 5px; height: 5px; border-radius: 50%; background: rgba(44,122,75,0.32);}
.rsg-page .hf2-stage{display: flex; align-items: center; gap: 9px;}
@media (max-width: 600px){.rsg-page .hf2-card{padding: 18px;}}
@media (max-width: 600px){.rsg-page .hf2-highlight{padding-left: 16px;}}
/* §7 — Vertical Defense Stack (one fused wall, replaces the 6-card layer grid) */
    .rsg-page .sl7-wall{position: relative; background: var(--paper); border: 1px solid var(--line); border-radius: 16px; box-shadow: 0 18px 48px rgba(17,17,17,0.07); overflow: hidden; margin: 0 0 8px;}
.rsg-page .sl7-intake{display: flex; align-items: center; flex-wrap: wrap; gap: 11px; background: #FFFFFF; border-bottom: 1px solid rgba(200,32,43,0.18); padding: 13px 22px;}
.rsg-page .sl7-threat-ic{width: 24px; height: 24px; border-radius: 7px; background: rgba(200,32,43,0.12); color: #C8202B; display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0;}
.rsg-page .sl7-threat-ic svg{width: 14px !important; height: 14px !important;}
.rsg-page .sl7-intake-label{font-family: var(--font-mono); font-size: 10px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: #C8202B;}
.rsg-page .sl7-intake-run{font-family: var(--font-body); font-size: 12px; color: #A23B42;}
.rsg-page .sl7-intake-chev{margin-left: auto; color: rgba(200,32,43,0.55); display: inline-flex; flex-shrink: 0;}
.rsg-page .sl7-intake-chev svg{width: 16px !important; height: 16px !important;}
.rsg-page .sl7-stack{position: relative;}
.rsg-page .sl7-stack::before{content: ""; position: absolute; top: 0; bottom: 0; left: 42px; width: 4px; border-radius: 2px; background: linear-gradient(to bottom, var(--green-500) 0%, var(--green-600) 55%, var(--green-700) 100%); z-index: 0;}
.rsg-page .sl7-tier{font-family: var(--font-mono); font-size: 10px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--ink-500); padding: 13px 22px 5px 82px; position: relative; z-index: 1;}
.rsg-page .sl7-band{display: flex; align-items: flex-start; gap: 16px; padding: 15px 22px; border-top: 1px solid var(--line-2); position: relative; z-index: 1;}
.rsg-page .sl7-rail{width: 44px; flex-shrink: 0; display: flex; justify-content: center; position: relative;}
.rsg-page .sl7-node{width: 38px; height: 38px; border-radius: 11px; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: flex; align-items: center; justify-content: center; box-shadow: 0 6px 14px rgba(44,122,75,0.26); position: relative; z-index: 1;}
.rsg-page .sl7-node svg{width: 18px !important; height: 18px !important;}
.rsg-page .sl7-tick{position: absolute; top: -5px; right: 1px; width: 16px; height: 16px; border-radius: 50%; background: #fff; border: 1.5px solid var(--green-500); color: var(--green-600); display: flex; align-items: center; justify-content: center; z-index: 2; box-shadow: 0 1px 3px rgba(0,0,0,0.12);}
.rsg-page .sl7-tick svg{width: 9px !important; height: 9px !important;}
.rsg-page .sl7-body{flex: 1; min-width: 0; padding-top: 1px;}
.rsg-page .sl7-chip{display: inline-block; font-family: var(--font-mono); font-size: 10px; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--green-700); background: var(--green-50); border: 1px solid rgba(44,122,75,0.2); border-radius: 999px; padding: 3px 9px; margin-bottom: 8px;}
.rsg-page .sl7-band h3{font-family: var(--font-display); font-size: 16.5px; font-weight: 700; color: var(--ink-900); margin: 0 0 5px; line-height: 1.3;}
.rsg-page .sl7-band p{font-family: var(--font-body); font-size: 14px; line-height: 1.58; color: var(--ink-2); margin: 0;}
.rsg-page .sl7-band p strong{color: var(--green-700);}
.rsg-page .sl7-d1{background: #FFFFFF;}
.rsg-page .sl7-d2{background: #FCFEFD;}
.rsg-page .sl7-d3{background: #FAFDFB;}
.rsg-page .sl7-d4{background: #F8FCFA;}
.rsg-page .sl7-d5{background: #F6FAF7;}
.rsg-page .sl7-dest{display: flex; align-items: center; gap: 13px; background: linear-gradient(135deg, var(--green-50), #EAF4EE); border-top: 1px solid rgba(44,122,75,0.22); padding: 16px 22px 16px 29px; position: relative; z-index: 1;}
.rsg-page .sl7-dest-ic{width: 30px; height: 30px; color: var(--green-700); display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0;}
.rsg-page .sl7-dest-ic svg{width: 26px !important; height: 26px !important;}
.rsg-page .sl7-dest strong{font-family: var(--font-display); font-size: 16px; font-weight: 800; color: var(--green-700); letter-spacing: -0.01em;}
.rsg-page .sl7-foundation{position: relative; background: var(--green-50); border-top: 2px dashed var(--green-500); box-shadow: inset 0 3px 10px rgba(20,62,37,0.10); padding: 16px 22px; display: flex; align-items: flex-start; gap: 16px;}
.rsg-page .sl7-foundation .sl7-rail{width: 44px;}
.rsg-page .sl7-foundation .sl7-node{background: linear-gradient(135deg, var(--green-600), var(--green-700));}
.rsg-page .sl7-found-body{flex: 1; min-width: 0;}
.rsg-page .sl7-found-tier{display: inline-block; font-family: var(--font-mono); font-size: 9.5px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--green-700); margin-bottom: 7px;}
.rsg-page .sl7-found-body h3{font-family: var(--font-display); font-size: 16.5px; font-weight: 700; color: var(--ink-900); margin: 0 0 5px; line-height: 1.3;}
.rsg-page .sl7-found-body p{font-family: var(--font-body); font-size: 14px; line-height: 1.58; color: var(--ink-2); margin: 0 0 7px;}
.rsg-page .sl7-found-micro{display: inline-flex; align-items: center; gap: 6px; font-family: var(--font-mono); font-size: 9.5px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--green-600);}
.rsg-page .sl7-found-micro::before{content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--green-500);}
@media (max-width: 600px){.rsg-page .sl7-stack::before{display: none;}}
@media (max-width: 600px){.rsg-page .sl7-band, .rsg-page .sl7-foundation{flex-direction: column; gap: 11px; padding: 16px 18px;}}
@media (max-width: 600px){.rsg-page .sl7-rail, .rsg-page .sl7-foundation .sl7-rail{width: auto; justify-content: flex-start;}}
@media (max-width: 600px){.rsg-page .sl7-body, .rsg-page .sl7-found-body{width: 100%;}}
@media (max-width: 600px){.rsg-page .sl7-tier{padding: 13px 18px 3px;}}
@media (max-width: 600px){.rsg-page .sl7-tick{right: -6px; top: -6px;}}
@media (max-width: 600px){.rsg-page .sl7-dest{padding: 16px 18px;}}
/* §7 proof strip — render screenshots at native 512px (no upscaling), centered */
    .rsg-page .wh-proof .ai-dashboard img{max-width: 512px; margin-left: auto; margin-right: auto;}
@media (min-width: 761px){.rsg-page .wh-proof.cols-2{grid-template-columns: repeat(2, minmax(0, 512px)); justify-content: center;}}
/* §7 — incident-response flow: connected 4-step process (replaces disconnected cards) */
    .rsg-page .rf2-flow{position: relative; display: flex; gap: 0; margin: 20px 0 0;}
.rsg-page .rf2-flow::before{content: ""; position: absolute; top: 25px; left: 12.5%; right: 12.5%; height: 2px; background: linear-gradient(90deg, var(--green-500), var(--green-700)); z-index: 0;}
.rsg-page .rf2-step{flex: 1; text-align: center; padding: 0 14px; position: relative; z-index: 1;}
.rsg-page .rf2-node{position: relative; width: 50px; height: 50px; border-radius: 50%; margin: 0 auto 14px; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; display: flex; align-items: center; justify-content: center; box-shadow: 0 8px 18px rgba(44,122,75,0.28); border: 3px solid #fff;}
.rsg-page .rf2-node svg{width: 22px !important; height: 22px !important;}
.rsg-page .rf2-numbadge{position: absolute; top: -5px; left: -5px; min-width: 19px; height: 19px; padding: 0 4px; border-radius: 999px; background: #fff; color: var(--green-700); border: 1.5px solid var(--green-500); font-family: var(--font-display); font-weight: 800; font-size: 10.5px; display: flex; align-items: center; justify-content: center; box-shadow: 0 2px 5px rgba(0,0,0,0.1);}
.rsg-page .rf2-step:not(:last-child)::after{content: ""; position: absolute; top: 20px; right: -6px; width: 11px; height: 11px; border-top: 2px solid var(--green-600); border-right: 2px solid var(--green-600); transform: rotate(45deg); z-index: 2;}
.rsg-page .rf2-body h4{font-family: var(--font-display); font-size: 15.5px; font-weight: 700; color: var(--ink-900); margin: 0 0 5px; line-height: 1.3;}
.rsg-page .rf2-body p{font-family: var(--font-body); font-size: 13px; line-height: 1.55; color: var(--ink-2); margin: 0;}
@media (max-width: 700px){.rsg-page .rf2-flow{flex-direction: column;}}
@media (max-width: 700px){.rsg-page .rf2-flow::before{top: 4px; bottom: 28px; left: 25px; right: auto; width: 2px; height: auto;}}
@media (max-width: 700px){.rsg-page .rf2-step{display: flex; align-items: flex-start; gap: 16px; text-align: left; padding: 0 0 22px 0;}}
@media (max-width: 700px){.rsg-page .rf2-step:last-child{padding-bottom: 0;}}
@media (max-width: 700px){.rsg-page .rf2-node{margin: 0; flex-shrink: 0;}}
@media (max-width: 700px){.rsg-page .rf2-step:not(:last-child)::after{display: none;}}
@media (max-width: 700px){.rsg-page .rf2-body{padding-top: 5px;}}
/* §8 — alternating feature rows (wd-feat design from the website-design page) */
    .rsg-page .wd-feat{display: grid; grid-template-columns: 1.05fr 1fr; gap: 46px; align-items: center; margin: 0 0 38px;}
.rsg-page .wd-feat:last-of-type{margin-bottom: 0;}
.rsg-page .wd-feat .ai-dashboard{margin: 0; width: 100%;}
.rsg-page .ai-dashboard.wd-fit img{height: 300px; object-fit: cover; object-position: top center;}
@media (max-width: 880px){.rsg-page .ai-dashboard.wd-fit img{height: 260px;}}
.rsg-page .wd-feat.rev .wd-feat-media{order: 2;}
.rsg-page .wd-pill{display: inline-flex; align-items: center; gap: 8px; align-self: flex-start; background: linear-gradient(135deg, var(--green-500), var(--green-700)); color: #fff; font-family: var(--font-mono); font-size: 10px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; padding: 7px 14px 7px 12px; border-radius: 999px; margin-bottom: 15px; box-shadow: 0 6px 16px rgba(44,122,75,0.28);}
.rsg-page .wd-pill-dot{width: 7px; height: 7px; border-radius: 50%; background: #fff; display: inline-block; box-shadow: 0 0 0 3px rgba(255,255,255,0.25);}
.rsg-page .wd-feat-body h3{font-family: var(--font-display); font-size: 21px; font-weight: 800; color: var(--ink-900); margin: 0 0 10px; line-height: 1.25;}
.rsg-page .wd-feat-body > p{font-size: 14.5px; line-height: 1.6; color: var(--ink-2); margin: 0 0 16px;}
.rsg-page .wd-checks{list-style: none; margin: 0 0 16px; padding: 0; display: flex; flex-direction: column; gap: 11px;}
.rsg-page .wd-checks li{display: flex; align-items: flex-start; gap: 11px; font-size: 13.5px; line-height: 1.5; color: var(--ink-2);}
.rsg-page .wd-checks li strong{color: var(--ink-900);}
.rsg-page .wd-ck{flex-shrink: 0; width: 21px; height: 21px; border-radius: 50%; background: var(--green-50); display: inline-flex; align-items: center; justify-content: center; margin-top: 1px;}
.rsg-page .wd-ck svg{width: 12px !important; height: 12px !important; color: var(--green-600);}
.rsg-page .wd-note{background: var(--paper-soft); border: 1px solid var(--line); border-left: 3px solid var(--green-500); border-radius: 9px; padding: 11px 14px; font-size: 12.5px; font-style: italic; line-height: 1.5; color: var(--ink-2);}
@media (max-width: 880px){.rsg-page .wd-feat{grid-template-columns: 1fr; gap: 22px; margin-bottom: 28px;}}
@media (max-width: 880px){.rsg-page .wd-feat.rev .wd-feat-media{order: 0;}}