/* Local Paid Search V1 additions. Copy and media remain WordPress-owned. */
.paid-banner { isolation: isolate; }
.paid-banner .maps-banner__inner { z-index: 1; }
.paid-chart-texture { position: absolute; inset: 0; z-index: 0; pointer-events: none; opacity: .55; mask-image: radial-gradient(42% 52% at 50% 46%, transparent 35%, black 85%); }
.paid-chart-texture__grid { position: absolute; inset: 40px 40px 56px; background-image: repeating-linear-gradient(oklch(0.88 0.015 260) 0, oklch(0.88 0.015 260) 1px, transparent 1px, transparent 86px); }
.paid-chart-texture svg { position: absolute; inset: 0; width: 100%; height: 100%; }
.paid-chart-texture__labels { position: absolute; right: 40px; bottom: 22px; left: 40px; display: flex; justify-content: space-between; color: oklch(0.5 0.015 260); font: 11px var(--mono); }
.paid-chart-texture__legend { position: absolute; top: 22px; left: 40px; display: flex; gap: 20px; color: oklch(0.45 0.015 260); font: 11px var(--mono); }
.paid-chart-texture__legend span { display: flex; align-items: center; gap: 6px; }
.paid-chart-texture__legend i { width: 14px; height: 2px; background: oklch(0.55 0.17 252); }
.paid-chart-texture__legend span:last-child i { background: oklch(0.55 0.15 285); }

.paid-problem { padding-top: clamp(56px, 7vw, 100px); padding-bottom: clamp(28px, 4vw, 48px); }
.paid-problem .maps-centered-heading { max-width: 760px; }
.paid-problem-grid,
.paid-how-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 14px; }
.paid-problem-card,
.paid-how-card,
.paid-format-card { min-width: 0; padding: 22px; border: 1px solid var(--service-border); border-radius: 12px; background: var(--service-white); }
.paid-problem-card { padding: 24px; }
.paid-problem-card > span { display: block; margin-bottom: 12px; color: oklch(0.55 0.2 27); font: 11.5px var(--mono); }
.paid-problem-card h3 { margin: 0 0 6px; font-size: 19px; letter-spacing: -.03em; }
.paid-problem-card p { margin: 0; font-size: 15px; line-height: 1.55; }
.paid-problem p.paid-problem__footer { max-width: 50ch; margin: clamp(28px, 3vw, 40px) auto 0; color: var(--service-ink); font: 600 clamp(17px, 1.6vw, 20px)/1.35 var(--display); letter-spacing: -.02em; text-align: center; text-wrap: balance; }

.paid-what { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(32px, 5vw, 72px); align-items: center; padding-top: clamp(40px, 5vw, 72px); padding-bottom: clamp(56px, 7vw, 100px); }
.paid-what__copy .maps-rich { max-width: 58ch; margin-bottom: 16px; font-size: 16.5px; line-height: 1.6; }
.paid-principles { margin-top: 8px; }
.paid-principle { display: flex; gap: 14px; padding-block: 14px; border-top: 1px solid var(--service-border); }
.paid-principle > span { width: 92px; flex: 0 0 auto; padding-top: 4px; color: var(--service-blue); font: 11px var(--mono); }
.paid-principle strong { display: block; font-size: 16px; }
.paid-principle p { margin: 0; font-size: 14.5px; }
.paid-ad-mock { min-width: 0; overflow: hidden; border-radius: 12px; color: #202124; background: #fff; box-shadow: 0 1px 2px rgba(60,64,67,.3), 0 2px 6px 2px rgba(60,64,67,.15); font-family: Roboto, Arial, sans-serif; }
.paid-ad-mock__search { display: flex; align-items: center; gap: 12px; padding: 10px 14px; border-bottom: 1px solid #ebebeb; }
.paid-ad-mock__search img { width: 20px; height: 20px; object-fit: contain; }
.paid-ad-mock__search > div { display: flex; flex: 1; align-items: center; gap: 10px; min-width: 0; padding: 9px 16px; border-radius: 24px; box-shadow: 0 1px 6px rgba(32,33,36,.2); font-size: 15px; }
.paid-ad-mock__search > div > span:first-child { flex: 1; }
.paid-ad-mock__ad { padding: 16px 18px; border-bottom: 1px solid #ebebeb; }
.paid-ad-mock__ad strong,
.paid-ad-mock__ad small { display: block; margin-bottom: 4px; }
.paid-ad-mock__ad strong { font-size: 12px; }
.paid-ad-mock__ad small { color: #4d5156; font-size: 13px; }
.paid-ad-mock__ad h3 { margin: 0 0 4px; color: #1a0dab; font: 400 19px Roboto, Arial, sans-serif; }
.paid-ad-mock__ad p { margin: 0 0 12px; color: #4d5156; font-size: 14px; line-height: 1.5; }
.paid-ad-mock__call { display: inline-flex; align-items: center; gap: 8px; padding: 9px 16px; border-radius: 20px; color: #1a73e8; background: #e8f0fe; font-size: 14px; font-weight: 500; }
.paid-ad-mock__map { position: relative; height: 150px; background: #e8eaed; }
.paid-ad-mock__map iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; pointer-events: none; }
.paid-ad-mock__map-result { display: flex; align-items: center; gap: 12px; padding: 14px 18px; border-bottom: 1px solid #ebebeb; }
.paid-ad-mock__map-result > .material-symbols-rounded { color: #ea4335; font-size: 26px; }
.paid-ad-mock__map-result strong { display: block; font-size: 12px; }
.paid-ad-mock__map-result p { margin: 0; color: #1a0dab; font-size: 15px; }
.paid-ad-mock__map-result p span { color: #70757a; }
.paid-ad-mock__guarantee { display: flex; align-items: center; gap: 10px; padding: 12px 18px; color: #188038; font-size: 14px; }
.paid-formats { grid-column: 1 / -1; margin-top: clamp(8px, 2vw, 24px); }
.paid-formats > h3 { margin: 0 0 20px; font-size: clamp(22px, 2.4vw, 28px); letter-spacing: -.035em; text-align: center; }
.paid-format-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.paid-format-card > div,
.paid-how-card > div { display: flex; justify-content: space-between; margin-bottom: 14px; color: var(--service-blue); font: 11.5px var(--mono); }
.paid-format-card h4 { margin: 0 0 6px; color: var(--service-ink); font: 700 18px/1.2 var(--display); letter-spacing: -.03em; }
.paid-format-card p,
.paid-how-card p { margin: 0; font-size: 14.5px; line-height: 1.55; }
.paid-formats__footer { max-width: 62ch; margin: 22px auto 0; font-size: 15.5px; line-height: 1.6; text-align: center; }

.paid-how { padding-block: var(--service-section); }
.paid-how .maps-centered-heading { max-width: 760px; margin-bottom: clamp(32px, 4vw, 52px); }
.paid-how-card h3 { margin: 0 0 8px; font-size: 18.5px; letter-spacing: -.03em; }
.paid-how-card > div span:last-child { color: var(--service-muted); }
.paid-search-v1 .maps-included > .maps-container { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(32px, 5vw, 72px); align-items: start; }
.paid-search-v1 .maps-included .maps-split-heading { display: block; margin: 0; }
.paid-search-v1 .maps-included-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }

body.page-template-local-paid-search-v1 .site-footer-links,
body.page-template-page-templates-local-paid-search-v1-php .site-footer-links,
body.page-template-local-paid-search-v1 .site-footer-company,
body.page-template-page-templates-local-paid-search-v1-php .site-footer-company,
body.page-template-local-paid-search-v1 .site-footer .pin,
body.page-template-page-templates-local-paid-search-v1-php .site-footer .pin { display: none; }

.paid-search-v1 .maps-contact__form .wpcf7-form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
.paid-search-v1 .maps-contact__form .wpcf7-form select,
.paid-search-v1 .maps-contact__form .wpcf7-form textarea { width: 100%; max-width: 100%; }
.paid-search-v1 .maps-contact__form .wpcf7-form textarea { min-height: 84px; height: 84px; resize: vertical; }
.paid-search-v1 .maps-contact__form .wpcf7-form input:focus-visible,
.paid-search-v1 .maps-contact__form .wpcf7-form select:focus-visible,
.paid-search-v1 .maps-contact__form .wpcf7-form textarea:focus-visible { outline: 3px solid oklch(0.5 0.17 252 / .35); outline-offset: 2px; }

@media (max-width: 899px) {
  body.page-template-local-paid-search-v1 .site-header-inner,
  body.page-template-page-templates-local-paid-search-v1-php .site-header-inner { padding: 16px 18px; }
  body.page-template-local-paid-search-v1 .nav-desktop,
  body.page-template-page-templates-local-paid-search-v1-php .nav-desktop { display: flex; flex: 0 0 auto; }
  body.page-template-local-paid-search-v1 .nav-desktop > :not(.call-btn),
  body.page-template-page-templates-local-paid-search-v1-php .nav-desktop > :not(.call-btn),
  body.page-template-local-paid-search-v1 .header-tools,
  body.page-template-page-templates-local-paid-search-v1-php .header-tools { display: none; }
  body.page-template-local-paid-search-v1 .nav-desktop > a.call-btn,
  body.page-template-page-templates-local-paid-search-v1-php .nav-desktop > a.call-btn { display: inline-flex; margin: 0; padding: 7px 13px; font-size: 14px; }
  .paid-chart-texture { opacity: .22; }
  .paid-chart-texture__legend { top: 14px; left: 18px; gap: 10px; }
  .paid-chart-texture__labels { right: 18px; bottom: 14px; left: 18px; font-size: 9px; }
  .paid-problem-grid,
  .paid-how-grid,
  .paid-what,
  .paid-format-grid,
  .paid-search-v1 .maps-included > .maps-container,
  .paid-search-v1 .maps-included-grid { grid-template-columns: minmax(0, 1fr); }
  .paid-principle > span { width: 82px; }
}

@media (max-width: 480px) {
  .paid-problem,
  .paid-what,
  .paid-how { padding-inline: 18px; }
}
