:root {
  --landing-surface: oklch(1 0 0);
  --landing-soft: oklch(0.977 0.008 235);
  --landing-ink: oklch(0.29 0.025 245);
  --landing-muted: oklch(0.49 0.025 245);
  --landing-border: oklch(0.90 0.016 235);
  --landing-primary: oklch(0.49 0.145 250);
  --landing-primary-hover: oklch(0.43 0.14 250);
  --landing-primary-soft: oklch(0.945 0.026 245);
  --landing-secondary: oklch(0.46 0.095 165);
  --landing-secondary-soft: oklch(0.958 0.018 165);
  --landing-on-primary: oklch(1 0 0);
  --landing-shadow: 0 6px 18px oklch(0.29 0.025 245 / 0.09);
  --landing-ring: 0 0 0 3px oklch(0.65 0.12 250 / 0.45);
  --landing-cta-font: var(--font-customer-arabic, "Noto Sans Arabic"), Tahoma, sans-serif;
  --landing-glass-primary: oklch(0.94 0.03 250 / 0.78);
  --landing-glass-secondary: oklch(0.96 0.025 165 / 0.78);
  --landing-glass-highlight: oklch(1 0 0 / 0.85);
  --landing-glass-border: oklch(0.72 0.06 250 / 0.55);
  --landing-glass-shadow: 0 8px 22px oklch(0.29 0.025 245 / 0.12), inset 0 1px 0 oklch(1 0 0 / 0.9);
  --landing-hero-surface: oklch(0.24 0.035 240);
  --landing-hero-muted: oklch(1 0 0 / 0.9);
  --landing-hero-accent: oklch(0.86 0.13 175);
  --landing-hero-glass: oklch(0.36 0.07 175 / 0.5);
  --landing-hero-overlay: linear-gradient(180deg, transparent 20%, oklch(0.2 0.03 240 / 0.12) 40%, oklch(0.2 0.03 240 / 0.86) 100%);
}

html.gs-home-first-paint #gs-first-paint {
  background: var(--landing-surface);
  color: var(--landing-ink);
}
html.gs-home-first-paint #gs-first-paint .gs-first-hero {
  background: var(--landing-hero-surface);
}
html.gs-home-first-paint #gs-first-paint .gs-first-nav {
  background: var(--landing-surface);
  border-color: var(--landing-border);
}
html.gs-home-first-paint #gs-first-paint h1 { color: var(--landing-on-primary); }
html.gs-home-first-paint #gs-first-paint .gs-first-hero p { color: var(--landing-hero-muted); }
html.gs-home-first-paint #gs-first-paint .gs-first-lang { color: var(--landing-muted); }
html.gs-home-first-paint #gs-first-paint .gs-first-mark { color: var(--landing-primary); }
html.gs-home-first-paint #gs-first-paint .gs-first-accent { color: var(--landing-hero-accent); background: none; }
html.gs-home-first-paint #gs-first-paint .gs-first-eyebrow {
  background: var(--landing-hero-glass);
  color: var(--landing-hero-accent);
}
html.gs-home-first-paint #gs-first-paint .gs-first-cta {
  box-shadow: var(--landing-glass-shadow);
  color: var(--landing-primary);
  font-family: var(--landing-cta-font) !important;
  letter-spacing: 0;
  border-radius: 8px;
  backdrop-filter: blur(16px) saturate(140%);
  -webkit-backdrop-filter: blur(16px) saturate(140%);
}
html.gs-home-first-paint #gs-first-paint .gs-first-cta :where(span) {
  font-family: var(--landing-cta-font) !important;
}
html.gs-home-first-paint #gs-first-paint .gs-first-cta-compare,
html.gs-home-first-paint #gs-first-paint .gs-first-bottom-main {
  background: linear-gradient(135deg, var(--landing-glass-highlight), var(--landing-glass-primary));
  border-color: var(--landing-glass-border);
}
html.gs-home-first-paint #gs-first-paint .gs-first-cta-compare:hover,
html.gs-home-first-paint #gs-first-paint .gs-first-bottom-main:hover {
  background: var(--landing-glass-primary);
}
html.gs-home-first-paint #gs-first-paint .gs-first-bottom-alt {
  background: linear-gradient(135deg, var(--landing-glass-highlight), var(--landing-glass-secondary));
  border-color: var(--landing-border);
  color: var(--landing-secondary);
}
html.gs-home-first-paint #gs-first-paint .gs-bottom-label,
html.gs-home-first-paint #gs-first-paint .gs-bottom-sub { color: inherit; }
html.gs-home-first-paint #gs-first-paint .gs-first-cta:focus-visible {
  outline-color: var(--landing-ring);
}
html.gs-home-first-paint #gs-first-paint .gs-first-landing-picture {
  background: var(--landing-soft);
  border-color: var(--landing-border);
  box-shadow: var(--landing-shadow);
}
html.gs-home-first-paint #site-footer {
  background: var(--landing-soft);
  color: var(--landing-muted);
  border-top: 1px solid var(--landing-border);
}
html.gs-home-first-paint #site-footer .footer-contact strong,
html.gs-home-first-paint #site-footer .footer-nav a { color: var(--landing-ink); }
html.gs-home-first-paint #site-footer .footer-phone-link,
html.gs-home-first-paint #site-footer .footer-nav a:hover { color: var(--landing-primary); }
html.gs-home-first-paint #site-footer .footer-location,
html.gs-home-first-paint #site-footer .footer-disclaimer,
html.gs-home-first-paint #site-footer .footer-note { color: var(--landing-muted); }
html.gs-home-first-paint #site-footer .footer-divider { background: var(--landing-border); }
html.gs-home-first-paint #outside-lead { background: var(--landing-surface); color: var(--landing-ink); }
html.gs-home-first-paint #outside-lead a { color: var(--landing-primary); }
html.gs-home-first-paint #outside-lead button[type="submit"] {
  background: linear-gradient(135deg, var(--landing-glass-highlight), var(--landing-glass-primary)) !important;
  color: var(--landing-primary) !important;
  font-family: var(--landing-cta-font) !important;
  border: 1px solid var(--landing-glass-border) !important;
  border-radius: 8px !important;
  box-shadow: var(--landing-glass-shadow);
  backdrop-filter: blur(16px) saturate(140%);
  -webkit-backdrop-filter: blur(16px) saturate(140%);
}

.gs-info-banner {
  --banner-surface: var(--landing-secondary-soft);
  --banner-ink: var(--landing-secondary);
  --banner-border: var(--landing-border);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 6px 14px;
  min-height: 44px;
  padding: 10px 16px;
  border-bottom: 1px solid var(--banner-border);
  background: var(--banner-surface);
  color: var(--banner-ink);
  font-family: var(--font-customer-arabic);
  font-size: 13px;
  line-height: 1.6;
  letter-spacing: 0;
  text-align: center;
}
.gs-info-banner strong { font-weight: 600; }
.gs-info-banner span { font-weight: 400; }
.gs-people-banner {
  --people-banner-surface: var(--landing-primary-soft);
  --people-banner-ink: var(--landing-primary);
  margin: 16px auto;
  width: min(100% - 48px, 760px);
  overflow: hidden;
  border-radius: 8px;
  background: var(--people-banner-surface);
  color: var(--people-banner-ink);
  font-family: var(--font-customer-arabic);
}
.gs-people-banner-copy {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px 24px;
  padding: 10px 16px;
  line-height: 1.7;
}
.gs-people-banner-copy strong { font-size: 17px; font-weight: 600; }
.gs-people-banner-copy span { font-size: 13px; }
.gs-people-banner img { display: block; width: 100%; height: auto; }
@media (max-width: 640px) {
  .gs-people-banner { margin-block: 14px; width: min(100% - 48px, 420px); }
  .gs-people-banner-copy { padding: 8px 12px; gap: 4px; }
  .gs-people-banner-copy strong { font-size: 15px; }
}
@media (max-width: 420px) {
  .gs-info-banner { gap: 2px 10px; font-size: 12px; }
}

/* Landing picture banner under the hero (honest wording, no price claims). */
#gs-first-paint .gs-promo-banner {
  position: relative;
  display: block;
  margin: 20px auto 8px;
  width: min(100% - 48px, 980px);
  overflow: hidden;
  border: 1px solid var(--landing-border);
  border-radius: 18px;
  background: var(--landing-soft);
  box-shadow: var(--landing-glass-shadow);
  color: var(--landing-on-primary);
  text-decoration: none;
  font-family: var(--font-customer-arabic);
  isolation: isolate;
}
#gs-first-paint .gs-promo-picture { display: block; }
#gs-first-paint .gs-promo-banner img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1920 / 800;
  object-fit: cover;
  transition: transform 400ms ease;
}
#gs-first-paint .gs-promo-banner::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, oklch(0.24 0.06 250 / 0.72) 0%, oklch(0.24 0.06 250 / 0.38) 42%, transparent 62%);
  pointer-events: none;
  z-index: 1;
}
#gs-first-paint .gs-promo-copy {
  position: absolute;
  inset-block: 0;
  left: 0;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 8px;
  width: 50%;
  padding: 24px clamp(18px, 4vw, 44px);
  text-align: right;
}
#gs-first-paint .gs-promo-chip {
  padding: 3px 12px;
  border: 1px solid var(--landing-glass-highlight);
  border-radius: 999px;
  background: oklch(1 0 0 / 0.16);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.6;
}
#gs-first-paint .gs-promo-copy strong {
  font-size: clamp(18px, 2.6vw, 30px);
  font-weight: 700;
  line-height: 1.4;
  text-shadow: 0 2px 10px oklch(0.2 0.05 250 / 0.45);
}
#gs-first-paint .gs-promo-sub {
  font-size: clamp(12px, 1.4vw, 15px);
  line-height: 1.6;
  opacity: 0.92;
}
#gs-first-paint .gs-promo-btn {
  margin-top: 6px;
  padding: 9px 22px;
  border: 1px solid var(--landing-glass-border);
  border-radius: 8px;
  background: linear-gradient(135deg, var(--landing-glass-highlight), var(--landing-glass-primary));
  box-shadow: var(--landing-glass-shadow);
  color: var(--landing-primary);
  font-family: var(--landing-cta-font);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.4;
}
#gs-first-paint .gs-promo-banner:hover img { transform: scale(1.025); }
#gs-first-paint .gs-promo-banner:focus-visible { outline: 3px solid var(--landing-ring); outline-offset: 3px; }
@media (max-width: 640px) {
  #gs-first-paint .gs-promo-banner { width: min(100% - 32px, 460px); margin-top: 14px; border-radius: 14px; }
  #gs-first-paint .gs-promo-banner img { aspect-ratio: 4 / 3; object-position: center 30%; }
  #gs-first-paint .gs-promo-banner::after {
    background: linear-gradient(0deg, oklch(0.22 0.06 250 / 0.85) 0%, oklch(0.22 0.06 250 / 0.45) 48%, transparent 72%);
  }
  #gs-first-paint .gs-promo-copy {
    inset-block: auto 0;
    left: 0;
    right: 0;
    width: auto;
    padding: 16px;
    align-items: stretch;
    gap: 6px;
  }
  #gs-first-paint .gs-promo-chip { align-self: flex-start; font-size: 11px; }
  #gs-first-paint .gs-promo-copy strong { font-size: 19px; }
  #gs-first-paint .gs-promo-btn { text-align: center; padding: 10px 16px; }
}
@media (prefers-reduced-motion: reduce) {
  #gs-first-paint .gs-promo-banner img { transition: none; }
}

/* Landing coverage cards: third-party, comprehensive, third-party plus. */
#gs-first-paint .gs-cover {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  gap: 18px;
  width: min(100% - 48px, 1120px);
  margin: clamp(30px, 4vw, 48px) auto;
  color: var(--landing-ink);
  font-family: var(--font-customer-arabic);
  text-align: right;
}
.gs-cover-intro { grid-column: 1 / -1; max-width: 680px; margin: 0 auto 4px; text-align: center; }
.gs-cover-eyebrow { display: inline-block; margin-bottom: 8px; color: var(--landing-primary); font-size: 12px; font-weight: 700; }
.gs-cover-intro h2 { margin: 0; color: var(--landing-ink); font-size: clamp(22px, 3vw, 30px); font-weight: 800; line-height: 1.45; }
#gs-first-paint .gs-cover-intro p { margin: 8px 0 0; color: var(--landing-muted); font-size: 14px; line-height: 1.8; }
.gs-cover-card {
  --coverage-accent: var(--landing-primary);
  position: relative;
  display: flex;
  min-width: 0;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid var(--landing-border);
  border-radius: 20px;
  background: var(--landing-surface);
  box-shadow: 0 12px 30px oklch(0.29 0.025 245 / 0.08), 0 2px 6px oklch(0.29 0.025 245 / 0.04);
  transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}
.gs-cover-card::before { position: absolute; inset: 0 0 auto; height: 4px; background: var(--coverage-accent); content: ""; }
.gs-cover-card:hover { transform: translateY(-3px); border-color: var(--landing-primary); box-shadow: 0 18px 38px oklch(0.29 0.025 245 / 0.13); }
.gs-cover-head { min-height: 145px; padding: 24px 22px 18px; background: linear-gradient(180deg, var(--landing-primary-soft), var(--landing-surface)); }
.gs-cover-tag { display: inline-flex; align-items: center; margin-bottom: 10px; padding: 4px 11px; border: 1px solid var(--landing-border); border-radius: 999px; background: var(--landing-surface); color: var(--landing-primary); font-size: 12px; font-weight: 700; }
.gs-cover-head h2 { margin: 0; color: var(--landing-ink); font-size: 20px; font-weight: 800; line-height: 1.5; }
#gs-first-paint .gs-cover-head p { margin: 5px 0 0; color: var(--landing-muted); font-size: 13px; line-height: 1.75; }
.gs-cover-card-best { --coverage-accent: var(--landing-primary); border-color: var(--landing-primary-soft); box-shadow: 0 16px 36px oklch(0.29 0.025 245 / 0.12); }
.gs-cover-card-best .gs-cover-head { background: linear-gradient(145deg, var(--landing-primary), var(--landing-primary-hover)); }
.gs-cover-card-best .gs-cover-head h2 { color: var(--landing-on-primary); }
#gs-first-paint .gs-cover-card-best .gs-cover-head p { color: oklch(0.97 0.02 250); }
.gs-cover-card-best .gs-cover-tag { border-color: oklch(1 0 0 / 0.36); background: oklch(1 0 0 / 0.95); color: var(--landing-primary); }
.gs-cover-body { display: flex; flex: 1; flex-direction: column; padding: 20px 22px 22px; }
.gs-cover-body ul { display: grid; flex: 1; align-content: start; gap: 12px; margin: 0; padding: 0; list-style: none; }
.gs-cover-body li { display: flex; align-items: flex-start; gap: 9px; color: var(--landing-muted); font-size: 14px; line-height: 1.85; }
.gs-cover-check { flex: none; width: 18px; height: 18px; margin-top: 4px; fill: none; stroke: var(--landing-primary); stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; }
#gs-first-paint .gs-cover-buy { display: flex; min-height: 50px; align-items: center; justify-content: center; width: 100%; margin: 20px 0 0; }
#gs-first-paint .gs-cover-buy:focus-visible { outline: 3px solid var(--landing-ring); outline-offset: 3px; }
@media (max-width: 900px) {
  #gs-first-paint .gs-cover { grid-template-columns: repeat(2, minmax(0, 1fr)); width: min(100% - 40px, 760px); gap: 14px; }
  .gs-cover-card:last-child { grid-column: 1 / -1; width: min(100%, 560px); justify-self: center; }
}
@media (max-width: 640px) {
  #gs-first-paint .gs-cover { grid-template-columns: 1fr; width: min(100% - 32px, 460px); gap: 12px; margin-block: 28px; }
  .gs-cover-intro { margin-bottom: 2px; }
  .gs-cover-intro h2 { font-size: 22px; }
  #gs-first-paint .gs-cover-intro p { font-size: 13px; }
  .gs-cover-card, .gs-cover-card-best { min-height: 0; transform: none; }
  .gs-cover-card:last-child { grid-column: auto; width: 100%; }
  .gs-cover-head { min-height: 0; padding: 20px 18px 16px; }
  .gs-cover-head h2 { font-size: 18px; }
  .gs-cover-body { padding: 18px; }
}
@media (prefers-reduced-motion: reduce) {
  .gs-cover-card { transition: none; }
  .gs-cover-card:hover { transform: none; }
}

/* Original uploaded artwork, kept uncropped and landing-only. */
#gs-first-paint .gs-driver-banner {
  width: 100%;
  margin: 0 0 36px;
  overflow: hidden;
}
#gs-first-paint .gs-driver-banner img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1920 / 645;
  object-fit: contain;
}
@media (max-width: 640px) {
  #gs-first-paint .gs-driver-banner { margin-bottom: 28px; }
}

/* Landing short questions (FAQ). */
.gs-faq {
  margin: 0 auto 28px;
  width: min(100% - 48px, 760px);
  font-family: var(--font-customer-arabic);
  color: var(--landing-ink);
  text-align: right;
}
.gs-faq h2 { margin: 0 0 10px; font-size: 20px; font-weight: 700; line-height: 1.5; color: var(--landing-ink); }
.gs-faq details {
  border: 1px solid var(--landing-border);
  border-radius: 12px;
  background: var(--landing-surface);
  margin-bottom: 8px;
  overflow: hidden;
}
.gs-faq summary {
  list-style: none;
  cursor: pointer;
  padding: 13px 16px;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.6;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
}
.gs-faq summary::-webkit-details-marker { display: none; }
.gs-faq summary::after { content: "+"; color: var(--landing-primary); font-size: 20px; font-weight: 500; line-height: 1; }
.gs-faq details[open] summary::after { content: "−"; }
.gs-faq details[open] summary { background: var(--landing-primary-soft); color: var(--landing-primary); }
.gs-faq summary:focus-visible { outline: 2px solid var(--landing-ring); outline-offset: -2px; }
#gs-first-paint .gs-faq details p { margin: 0; padding: 10px 16px 14px; font-size: 14px; line-height: 1.8; color: var(--landing-muted); }
@media (max-width: 640px) {
  .gs-faq { width: min(100% - 32px, 460px); }
  .gs-faq h2 { font-size: 17px; }
  .gs-faq summary { font-size: 14px; padding: 12px 14px; }
}

.gs-campaign-section {
  padding: clamp(1.25rem, 4vw, 3.75rem) clamp(1rem, 3vw, 2rem);
  background: linear-gradient(180deg, #f1f9ff 0%, #f5faf7 54%, #fff 100%);
}

.gs-campaign-frame {
  width: min(100%, 920px);
  margin-inline: auto;
  padding: clamp(0.4rem, 1.35vw, 0.85rem);
  overflow: hidden;
  border: 1px solid rgba(10, 114, 90, 0.22);
  border-radius: clamp(16px, 2.6vw, 28px);
  background: #0a7b5f;
  box-shadow: 0 20px 48px rgba(12, 57, 61, 0.15);
}

.gs-campaign-image {
  display: block;
  width: 100%;
  height: auto;
  border-radius: clamp(10px, 1.7vw, 18px);
  object-fit: contain;
}

.gs-landing-cta-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.75rem;
  width: 100%;
  max-width: 48rem;
  margin-top: 1.25rem;
}

.gs-landing-cta {
  position: relative;
  min-height: 3.35rem;
  padding: 0.8rem 1rem;
  overflow: hidden;
  border: 1px solid transparent;
  border-radius: 1rem;
  color: #fff;
  font: 800 clamp(0.88rem, 1.25vw, 1rem) / 1.45 var(--landing-cta-font);
  text-align: center;
  cursor: pointer;
  box-shadow: 0 0.75rem 1.5rem rgba(15, 23, 42, 0.12);
  transition: transform 180ms ease, box-shadow 180ms ease, filter 180ms ease;
}

.gs-landing-cta::before {
  position: absolute;
  inset: 0;
  background: linear-gradient(115deg, rgba(255, 255, 255, 0.2), transparent 48%);
  content: "";
  pointer-events: none;
}

.gs-landing-cta:hover {
  filter: saturate(1.08) brightness(1.03);
  transform: translateY(-2px);
  box-shadow: 0 1rem 1.8rem rgba(15, 23, 42, 0.18);
}

.gs-landing-cta:active {
  transform: translateY(0);
}

.gs-landing-cta:focus-visible {
  outline: 3px solid rgba(7, 134, 220, 0.36);
  outline-offset: 3px;
}

.gs-landing-cta-primary {
  border-color: #087a4f;
  background: linear-gradient(135deg, #0f9f68, #087a4f);
}

.gs-landing-cta-compare {
  border-color: #0878c5;
  background: linear-gradient(135deg, #1599e9, #086fbd);
}

.gs-landing-cta-third-party {
  border-color: #b87b16;
  background: linear-gradient(135deg, #d59a2b, #a8680f);
}

@media (max-width: 640px) {
  .gs-campaign-section {
    padding: 1.25rem 0.9rem 1.75rem;
  }
  .gs-campaign-frame {
    box-shadow: 0 12px 28px rgba(12, 57, 61, 0.14);
  }
  .gs-landing-cta-grid {
    grid-template-columns: 1fr;
    gap: 0.65rem;
    margin-top: 1rem;
  }
  .gs-landing-cta {
    min-height: 3.5rem;
    padding-inline: 1.25rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .gs-landing-cta {
    transition: none;
  }
}

/* All landing actions use one clear blue CTA treatment. */
#gs-first-paint .gs-first-cta,
html.gs-home-first-paint #outside-lead button[type="submit"],
.gs-landing-cta,
.gs-landing-cta-primary,
.gs-landing-cta-compare,
.gs-landing-cta-third-party {
  border-color: #075da8 !important;
  background: linear-gradient(135deg, #1683d8, #0b5db7) !important;
  color: #fff !important;
  box-shadow: 0 10px 24px rgba(11, 93, 183, .24), inset 0 1px rgba(255,255,255,.18) !important;
}
#gs-first-paint .gs-first-cta:hover,
html.gs-home-first-paint #outside-lead button[type="submit"]:hover,
.gs-landing-cta:hover {
  background: linear-gradient(135deg, #2793e6, #0b66c7) !important;
}
#gs-first-paint .gs-promo-btn {
  border-color: #075da8 !important;
  background: linear-gradient(135deg, #1683d8, #0b5db7) !important;
  color: #fff !important;
  box-shadow: 0 8px 18px rgba(11, 93, 183, .24) !important;
}

/* Presentation-only landing refinement; preserve all sections and click handlers. */
html.gs-home-first-paint {
  --landing-cta-font: "Cairo", Tahoma, sans-serif;
}
html.gs-home-first-paint #gs-first-paint {
  --font-customer-arabic: "IBM Plex Sans Arabic", Tahoma, sans-serif;
  background: var(--landing-surface);
  letter-spacing: 0;
}
#gs-first-paint .gs-first-nav {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  height: auto;
  min-height: 64px;
  gap: 16px;
}
#gs-first-paint .gs-first-left {
  display: inline-flex;
  align-items: center;
  gap: 12px;
}
#gs-first-paint .gs-first-mark {
  display: inline-flex;
  align-items: center;
  letter-spacing: 0;
}
#gs-first-paint .gs-first-menu { display: inline-flex; align-items: center; line-height: 1; }
#gs-first-paint .gs-first-shield { display: block; width: 22px; height: 22px; flex: none; color: var(--landing-primary); }
html.gs-home-first-paint #gs-first-paint .gs-first-hero {
  background: var(--landing-hero-surface);
  min-height: clamp(430px, calc(100svh - 160px), 720px);
  align-items: stretch;
}
#gs-first-paint .gs-first-hero::after { background: var(--landing-hero-overlay); }
#gs-first-paint .gs-first-art {
  border: 0;
  border-radius: 0;
  box-shadow: none;
  object-position: center 10%;
  /* The original photograph includes a light frame; crop it inside the hero. */
  transform: scale(1.22);
}
#gs-first-paint .gs-first-copy {
  min-width: 0;
  max-width: 1200px;
  margin-inline: auto;
  padding: 32px 40px 40px;
  text-align: right;
}
#gs-first-paint .gs-first-copy > h1,
#gs-first-paint .gs-first-copy > p {
  max-width: 600px;
  margin-inline: 0 auto;
  text-wrap: pretty;
}
#gs-first-paint .gs-first-copy .gs-first-cta-grid {
  max-width: 280px;
  margin-inline: 0 auto;
}
#gs-first-paint .gs-first-eyebrow { border-radius: 4px; font-size: 13px; letter-spacing: 0; }
#gs-first-paint h1 { font-size: 44px; letter-spacing: 0; }
#gs-first-paint .gs-first-copy > p { font-size: 18px; }
#gs-first-paint .gs-hero-top-banner {
  border: 0;
  border-radius: 0;
  box-shadow: none;
  background: var(--landing-secondary-soft);
  color: var(--landing-muted);
}
#gs-first-paint .gs-hero-top-banner strong { color: var(--landing-secondary); font-size: 15px; }
#gs-first-paint .gs-hero-top-banner span { color: var(--landing-muted); font-size: 13px; }
#gs-first-paint .gs-insurer-spinner {
  border-inline: 0;
  border-radius: 0;
  background: var(--landing-soft);
  box-shadow: none;
}
#gs-first-paint .gs-insurer-spinner-title { color: var(--landing-ink); font-size: 20px; }
#gs-first-paint .gs-insurer-spinner-kicker { color: var(--landing-secondary); }
#gs-first-paint .gs-insurer-spinner-card { border-radius: 8px; border-color: var(--landing-border); box-shadow: none; }
#gs-first-paint .gs-cover-card { border-radius: 8px; box-shadow: var(--landing-shadow); }
#gs-first-paint .gs-cover-card:last-child { --coverage-accent: var(--landing-secondary); }
#gs-first-paint .gs-cover-card:last-child .gs-cover-head { background: var(--landing-secondary-soft); }
#gs-first-paint .gs-cover-card:last-child .gs-cover-tag { color: var(--landing-secondary); }
#gs-first-paint .gs-cover-intro h2 { font-size: 28px; }
#gs-first-paint .gs-cover-head h2 { font-size: 20px; }
#gs-first-paint .gs-faq details { border-radius: 8px; }
#gs-first-paint .gs-first-landing-picture { border-radius: 8px; box-shadow: none; }
#gs-first-paint .gs-promo-banner { border-radius: 8px; box-shadow: var(--landing-shadow); }
#gs-first-paint .gs-promo-copy strong { font-size: 28px; }
#gs-first-paint .gs-promo-sub { font-size: 15px; }
#gs-first-paint .gs-first-cta,
html.gs-home-first-paint #outside-lead button[type="submit"],
#gs-first-paint .gs-promo-btn {
  border: 1px solid oklch(0.42 0.13 250) !important;
  background: linear-gradient(180deg, oklch(0.56 0.15 250) 0%, var(--landing-primary) 55%, var(--landing-primary-hover) 100%) !important;
  color: var(--landing-on-primary) !important;
  box-shadow: 0 10px 24px oklch(0.49 0.145 250 / 0.28), inset 0 1px 0 oklch(1 0 0 / 0.28) !important;
  border-radius: 12px;
  font-family: var(--landing-cta-font) !important;
  text-shadow: 0 1px 2px oklch(0.3 0.1 250 / 0.35);
  transition: transform 180ms ease, box-shadow 180ms ease, filter 180ms ease;
}
#gs-first-paint .gs-first-cta:hover,
html.gs-home-first-paint #outside-lead button[type="submit"]:hover,
#gs-first-paint .gs-promo-banner:hover .gs-promo-btn {
  filter: brightness(1.08);
  transform: translateY(-2px);
  box-shadow: 0 14px 30px oklch(0.49 0.145 250 / 0.34), inset 0 1px 0 oklch(1 0 0 / 0.32) !important;
}
#gs-first-paint .gs-first-cta:active,
html.gs-home-first-paint #outside-lead button[type="submit"]:active,
#gs-first-paint .gs-promo-banner:active .gs-promo-btn {
  transform: translateY(0);
  box-shadow: 0 5px 14px oklch(0.49 0.145 250 / 0.3), inset 0 1px 0 oklch(1 0 0 / 0.2) !important;
}
html.gs-home-first-paint #outside-lead .ol-card {
  border: 0 !important;
  border-top: 1px solid var(--landing-border) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: var(--landing-soft) !important;
}
html.gs-home-first-paint #outside-lead input {
  min-width: 0;
  width: 100%;
  font-size: 16px;
  background: var(--landing-surface);
  color: var(--landing-ink);
  border-color: var(--landing-border) !important;
  border-radius: 8px !important;
}
html.gs-home-first-paint #outside-lead input:focus-visible {
  outline: 2px solid var(--landing-primary);
  outline-offset: 2px;
}
@media (max-width: 1023px) {
  #gs-first-paint .gs-first-copy { padding-inline: 20px; }
  #gs-first-paint h1 { font-size: 30px; line-height: 1.5; margin-bottom: 12px; }
  #gs-first-paint .gs-first-copy > p { font-size: 16px; line-height: 1.85; margin-bottom: 16px; }
  #gs-first-paint .gs-first-cta-grid { margin-top: 16px; max-width: 420px; margin-inline: auto; }
}
@media (max-width: 640px) {
  #gs-first-paint .gs-first-nav { min-height: 56px; padding-inline: 20px; }
  #gs-first-paint .gs-first-art { object-position: 58% 22%; }
  html.gs-home-first-paint #gs-first-paint .gs-first-hero { min-height: clamp(520px, calc(100svh - 225px), 620px); }
  #gs-first-paint .gs-first-copy { padding: 24px 20px 28px; }
  #gs-first-paint .gs-hero-top-banner { width: 100%; margin-top: 0; padding: 10px 20px; gap: 2px 10px; }
  #gs-first-paint .gs-hero-top-banner strong { font-size: 13px; }
  #gs-first-paint .gs-hero-top-banner span { font-size: 12px; }
  #gs-first-paint .gs-first-bottom-ctas { width: calc(100% - 32px); margin-block: 24px; }
  #gs-first-paint .gs-cover { margin-block: 36px; gap: 16px; }
  #gs-first-paint .gs-cover-intro { margin-bottom: 4px; }
  #gs-first-paint .gs-cover-intro h2 { font-size: 24px; }
  #gs-first-paint .gs-cover-head { padding: 18px; }
  #gs-first-paint .gs-cover-body li { font-size: 14px; }
  #gs-first-paint .gs-insurer-spinner { width: 100%; margin-block: 28px; padding-block: 20px; }
  #gs-first-paint .gs-insurer-spinner-title { font-size: 18px; }
  #gs-first-paint .gs-insurer-spinner-card { width: 104px; height: 54px; }
  #gs-first-paint .gs-first-landing-art { width: calc(100% - 32px); padding: 0 0 28px; }
  #gs-first-paint .gs-first-landing-picture img { height: auto; aspect-ratio: 16 / 10; }
  #gs-first-paint .gs-promo-banner img { aspect-ratio: 4 / 5; object-position: center top; }
  #gs-first-paint .gs-promo-copy strong { font-size: 22px; }
  #gs-first-paint .gs-promo-sub { font-size: 13px; }
  #gs-first-paint .gs-promo-copy { padding: 20px 18px; gap: 8px; }
  #gs-first-paint .gs-faq { margin-bottom: 32px; }
  #gs-first-paint .gs-faq h2 { font-size: 22px; margin-bottom: 16px; }
  #gs-first-paint .gs-faq summary { min-height: 56px; }
  html.gs-home-first-paint #outside-lead .ol-card { margin: 0 auto 0 !important; padding: 28px 20px !important; }
  html.gs-home-first-paint #outside-lead h2 { font-size: 22px; line-height: 1.6; }
  html.gs-home-first-paint #outside-lead p { font-size: 14px; line-height: 1.9; }
  html.gs-home-first-paint #outside-lead a[href^="tel:"] { display: inline-block; direction: ltr; white-space: nowrap; }
}
@media (max-width: 359px) {
  #gs-first-paint h1 { font-size: 26px; }
  #gs-first-paint .gs-first-hero { min-height: 460px; }
  #gs-first-paint .gs-promo-copy strong { font-size: 19px; }
  #gs-first-paint .gs-promo-copy { padding: 14px; gap: 5px; }
}
@media (prefers-reduced-motion: reduce) {
  /* Keep the insurer strip moving on reduced-motion devices, just slower. */
  #gs-first-paint .gs-insurer-spinner-track { animation-duration: 40s; }
  #gs-first-paint .gs-first-cta { transition: none; }
  #gs-first-paint .gs-first-cta:hover { transform: none; }
}

/* Consistent coverage boxes: balanced headers and bottom-aligned actions. */
#gs-first-paint .gs-cover { gap: 20px; margin-block: 40px 28px; }
#gs-first-paint .gs-cover-card { box-shadow: none; }
#gs-first-paint .gs-cover-card:hover { transform: none; box-shadow: var(--landing-shadow); }
#gs-first-paint .gs-cover-head {
  min-height: 166px;
  padding: 22px 20px 18px;
  border-bottom: 1px solid var(--landing-border);
}
#gs-first-paint .gs-cover-head h2 { font-size: 20px; line-height: 1.5; }
#gs-first-paint .gs-cover-tag { border-radius: 4px; }
#gs-first-paint .gs-cover-body { padding: 20px; gap: 20px; }
#gs-first-paint .gs-cover-body li { color: var(--landing-ink); line-height: 1.8; }
#gs-first-paint .gs-cover-body li span { min-width: 0; }
#gs-first-paint .gs-cover-check { stroke: var(--coverage-accent); }
#gs-first-paint .gs-cover-buy { margin-top: auto; min-height: 48px; }
@media (max-width: 900px) and (min-width: 641px) {
  #gs-first-paint .gs-cover { grid-template-columns: repeat(3, minmax(0, 1fr)); width: calc(100% - 32px); gap: 12px; }
  #gs-first-paint .gs-cover-card:last-child { grid-column: auto; width: 100%; }
  #gs-first-paint .gs-cover-head { padding-inline: 16px; min-height: 186px; }
  #gs-first-paint .gs-cover-head h2 { font-size: 18px; }
  #gs-first-paint .gs-cover-body { padding: 16px; }
}
@media (max-width: 640px) {
  #gs-first-paint .gs-cover { gap: 16px; margin-block: 32px 24px; }
  #gs-first-paint .gs-cover-head { min-height: 0; padding: 20px; }
  #gs-first-paint .gs-cover-body { gap: 18px; }
  #gs-first-paint .gs-cover-intro h2 { font-size: 24px; }
}

/* Insurance-style light, compact banner; keep the existing photograph. */
html.gs-home-first-paint #gs-first-paint .gs-first-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
  align-items: center;
  gap: 48px;
  min-height: 420px;
  padding: 40px max(32px, calc((100% - 1120px) / 2));
  background: var(--landing-soft);
}
#gs-first-paint .gs-first-hero::after { display: none; }
#gs-first-paint .gs-first-art {
  position: static;
  grid-column: 2;
  grid-row: 1;
  z-index: auto;
  width: 100%;
  height: 350px;
  object-fit: contain;
  object-position: center;
  transform: none;
  mix-blend-mode: multiply;
}
#gs-first-paint .gs-first-copy {
  grid-column: 1;
  grid-row: 1;
  padding: 0;
  max-width: 620px;
}
html.gs-home-first-paint #gs-first-paint .gs-first-copy h1 {
  color: var(--landing-ink);
  font-size: 36px;
  line-height: 1.5;
  text-shadow: none;
}
html.gs-home-first-paint #gs-first-paint .gs-first-copy p {
  color: var(--landing-muted);
  font-size: 17px;
  text-shadow: none;
}
html.gs-home-first-paint #gs-first-paint .gs-first-accent { color: var(--landing-primary); }
html.gs-home-first-paint #gs-first-paint .gs-first-eyebrow {
  padding: 0;
  background: none;
  color: var(--landing-secondary);
  backdrop-filter: none;
}
#gs-first-paint .gs-first-copy .gs-first-cta-grid { max-width: 220px; }
@media (max-width: 767px) {
  html.gs-home-first-paint #gs-first-paint .gs-first-hero {
    grid-template-columns: minmax(0, 1fr);
    min-height: 0;
    gap: 24px;
    padding: 16px 16px 32px;
  }
  #gs-first-paint .gs-first-art {
    grid-column: 1;
    grid-row: 1;
    width: 100%;
    height: auto;
    aspect-ratio: 770 / 810;
    max-height: none;
  }
  #gs-first-paint .gs-first-copy { grid-column: 1; grid-row: 2; width: 100%; }
  html.gs-home-first-paint #gs-first-paint .gs-first-copy h1 {
    font-size: 28px;
    line-height: 1.4;
    margin-bottom: 18px;
  }
  html.gs-home-first-paint #gs-first-paint .gs-first-accent { color: var(--landing-ink); }
  html.gs-home-first-paint #gs-first-paint .gs-first-copy p {
    font-size: 17px;
    line-height: 1.65;
    margin-bottom: 28px;
  }
  #gs-first-paint .gs-first-copy .gs-first-cta-grid { max-width: none; width: 100%; margin-top: 0; }
  #gs-first-paint .gs-first-copy .gs-first-cta { min-height: 58px; font-size: 18px; }
}


/* Original three-option comparison palette from the uploaded ZIP. */
#gs-first-paint .gs-cover {
  --landing-primary: #0088eb;
  --landing-primary-hover: #0069d9;
  --landing-primary-soft: #eff6ff;
  --landing-secondary: #1db97d;
  --landing-secondary-soft: #f8fafc;
  --landing-border: #cbd5e1;
  --landing-ink: #0f172a;
  --landing-muted: #475569;
  --landing-on-primary: #fff;
}
#gs-first-paint .gs-cover-intro h2 { color: #0f172a; }
#gs-first-paint .gs-cover-intro p { color: #475569; }
#gs-first-paint .gs-cover-eyebrow { color: #0088eb; }
#gs-first-paint .gs-cover-card { border-color: #cbd5e1; background: #fff; }
#gs-first-paint .gs-cover-card::before { display: none; }
#gs-first-paint .gs-cover-head { background: #f8fafc; }
#gs-first-paint .gs-cover-tag {
  border-color: transparent;
  background: #eff6ff;
  color: #0088eb;
}
#gs-first-paint .gs-cover-head h3 {
  margin: 0 0 4px;
  color: #0f172a;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.5;
}
#gs-first-paint .gs-cover-head p { color: #475569; }
#gs-first-paint .gs-cover-card-best {
  border-color: #0088eb;
  box-shadow: 0 0 0 2px rgba(0, 136, 235, .2), 0 10px 25px rgba(15, 23, 42, .12);
}
#gs-first-paint .gs-cover-card-best .gs-cover-head { background: #0088eb; }
#gs-first-paint .gs-cover-card-best .gs-cover-head h3 { color: #fff; }
#gs-first-paint .gs-cover-card-best .gs-cover-head p { color: rgba(255, 255, 255, .8); }
#gs-first-paint .gs-cover-card-best .gs-cover-tag {
  border-color: transparent;
  background: rgba(255, 255, 255, .2);
  color: #fff;
}
#gs-first-paint .gs-cover-check { stroke: #1db97d; }

/* Match the uploaded table's original card shape and centered headers. */
#gs-first-paint .gs-cover-card { border-radius: 16px; }
#gs-first-paint .gs-cover-head { text-align: center; }
#gs-first-paint .gs-cover-tag { border-radius: 999px; }

