/* Scope to the four service Pages; keep the resolved Header gap at 16px. */
.gsc-service-hero-page .wp-site-blocks > main { margin-block-start: 1rem; }
.gsc-page-hero { display: grid; grid-template-columns: minmax(0, .55fr) minmax(0, 1fr); align-items: center; background: #f4f7fc; border: 1px solid #dbe3ef; border-radius: .75rem; overflow: hidden; }
.gsc-page-hero__text { min-width: 0; padding: 1.5rem; }
.gsc-page-hero .wp-block-post-title { margin: 0; padding: 0; font-size: clamp(1.6rem, 2.4vw, 2.1rem); line-height: 1.45; color: #002060; overflow-wrap: anywhere; }
.gsc-page-hero__intro p { margin: .85rem 0 0; font-size: 1rem; line-height: 1.85; color: #14253d; overflow-wrap: anywhere; }
.gsc-page-hero__photo { min-width: 0; margin: 0; background: #fff; }
.gsc-page-hero__photo a, .gsc-page-hero__photo picture { display: block; }
.gsc-page-hero__photo img { display: block; width: 100%; height: auto; aspect-ratio: 1400 / 788; }
.gsc-page-hero__photo a:focus-visible { outline: 3px solid #0066cc; outline-offset: -4px; }
@media (max-width: 781px) {
    .gsc-page-hero { grid-template-columns: minmax(0, 1fr); }
    .gsc-page-hero__text { padding: 1rem; }
    .gsc-page-hero .wp-block-post-title { font-size: 1.65rem; }
}

/* Illustrative pricing promotion; Hero uses the shared service layout. */
.gsc-pricing-promotion { margin-block: 1rem 1.5rem; }
.gsc-pricing-promotion h2 { color: #002060; }
.gsc-pricing-promotion figure { margin: 1rem auto; max-width: 552px; }
.gsc-pricing-promotion img { display: block; width: 100%; height: auto; aspect-ratio: 552 / 520; }
.gsc-pricing-promotion figcaption { margin-top: .75rem; line-height: 1.8; color: #334155; }

/* Confirmed termite promotions, scoped to the pricing section. */
.gsc-pricing-promotion { margin-block: 1.5rem 2rem; }
.gsc-pricing-promotion h2 { margin: 0 0 1rem; line-height: 1.5; }
.gsc-promotion-prices { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin: 0; }
.gsc-promotion-prices > div { padding: 1.25rem; border: 1px solid #dbe3ef; border-radius: .75rem; background: #f4f7fc; text-align: center; }
.gsc-promotion-prices dt { font-size: 1.15rem; font-weight: 600; color: #14253d; }
.gsc-promotion-prices dd { margin: .35rem 0 0; font-size: 2rem; font-weight: 700; line-height: 1.4; color: #002060; }
.gsc-promotion-prices dd span { font-size: 1rem; font-weight: 400; }
.gsc-pricing-promotion figure { margin-block: 1.25rem; }
.gsc-pricing-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: .75rem; }
.gsc-pricing-actions a { display: inline-flex; justify-content: center; align-items: center; padding: .75rem 1rem; border: 1px solid #002060; border-radius: .4rem; background: #002060; color: #fff; text-decoration: none; line-height: 1.5; }
.gsc-pricing-actions a:focus-visible { outline: 3px solid #0066cc; outline-offset: 3px; }
.gsc-pricing-actions a:hover { background: #123b78; }
@media (max-width: 599px) {
    .gsc-promotion-prices { grid-template-columns: minmax(0, 1fr); gap: .65rem; }
    .gsc-promotion-prices > div { display: flex; align-items: center; justify-content: space-between; gap: .75rem; padding: .85rem 1rem; }
    .gsc-promotion-prices dd { margin: 0; font-size: 1.75rem; white-space: nowrap; }
    .gsc-pricing-actions { flex-direction: column; }
}
