/*
 * Design changes required by the owner's standing rules, layered over the
 * unchanged theme stylesheet (style.css). Eyebrow labels and arrow icons are
 * removed from the markup itself; see BUILD-REPORT.md for every place.
 */

/* Rule 3: no fully round "pill" buttons. WordPress core button blocks default to
   border-radius:9999px; give them the theme's own modest button radius. */
.wp-block-button__link,
:where(.wp-block-button__link) { border-radius: 4px !important; }

/* Rebuild additions: comparison table and the state links list sit at the
   same reading width as the page intro. */
.page-body .state-table { margin-top: 2rem; margin-bottom: 2rem; }
.page-body .state-table figure { margin: 0; overflow-x: auto; }
.page-body .state-table table { width: 100%; border-collapse: collapse; }
.page-body .state-table th,
.page-body .state-table td { text-align: left; padding: .6rem .75rem; border: 1px solid #d6d8cf; vertical-align: top; }
.page-body .state-links { margin-top: 2.5rem; margin-bottom: 3rem; }
.page-body .state-links ul { columns: 3 12rem; padding-left: 1.2rem; }

/* Placeholder that holds the place of the old WordPress form on /contact/. */
.form-placeholder { min-height: 4rem; }

/* Striped tables on the dark theme: WordPress sets a light stripe that hides the light text. */
.wp-block-table.is-style-stripes tbody tr:nth-child(odd),
.wp-block-table.is-style-stripes tbody tr:nth-child(even) { background-color: transparent; }
.wp-block-table.is-style-stripes tbody tr:nth-child(odd) { background-color: rgba(255, 255, 255, 0.05); }
.wp-block-table.is-style-stripes td, .wp-block-table.is-style-stripes th { color: inherit; }

/* Directory and policy pages: the WordPress theme never styled plain block content on the dark page
   background (headings rendered at body size, no side padding). Give generic blocks a container and type scale. */
.page-body > p, .page-body > h2, .page-body > h3, .page-body > h4, .page-body > ul, .page-body > ol,
.page-body > figure, .page-body > .wp-block-group, .page-body > .wp-block-columns,
.page-body > .wp-block-uagb-container, .page-body > .wp-block-table, .page-body > .wp-block-image {
  box-sizing: border-box; width: 100%; max-width: 1280px; margin-inline: auto; padding-inline: 1.25rem;
}
@media (min-width: 768px) {
  .page-body > p, .page-body > h2, .page-body > h3, .page-body > h4, .page-body > ul, .page-body > ol,
  .page-body > figure, .page-body > .wp-block-group, .page-body > .wp-block-columns,
  .page-body > .wp-block-uagb-container, .page-body > .wp-block-table, .page-body > .wp-block-image { padding-inline: 2.5rem; }
}
.page-body > .wp-block-uagb-container { padding-block: 0 !important; }
.page-body > .wp-block-uagb-container:first-child, .page-body > p:first-child, .page-body > .state-table:first-child { margin-top: 3rem; }
.page-body .wp-block-paragraph, .page-body > p, .page-body .wp-block-group p, .page-body .wp-block-uagb-container p {
  max-width: 78ch; margin-top: 0; margin-bottom: 1.1rem; line-height: 1.7;
}
.page-body h2.wp-block-heading {
  font-family: "Space Grotesk", sans-serif; font-size: clamp(1.6rem, 3vw, 2.1rem); font-weight: 600;
  letter-spacing: -0.04em; line-height: 1.14; margin-top: 3.25rem; margin-bottom: 0.9rem;
}
.page-body h3.wp-block-heading {
  font-family: "Space Grotesk", sans-serif; font-size: clamp(1.22rem, 2.2vw, 1.45rem); font-weight: 600;
  letter-spacing: -0.025em; line-height: 1.2; margin-top: 0; margin-bottom: 0.7rem;
}
.page-body > ul.wp-block-list, .page-body > ol.wp-block-list { list-style: disc; padding-left: 3.75rem; margin-bottom: 1.35rem; }
.page-body > ul.wp-block-list li { margin-bottom: 0.5rem; max-width: 74ch; }
.page-body .wp-block-group a, .page-body > p a, .page-body .wp-block-columns a, .page-body .wp-block-table a, .page-body .wp-block-uagb-container a {
  color: var(--lime, #d8ff65); text-decoration: underline; text-underline-offset: 3px;
}
.page-body .wp-block-table { margin-top: 1.5rem; margin-bottom: 3rem; overflow-x: auto; }
.page-body .wp-block-table table { width: 100%; border-collapse: collapse; font-size: 0.95rem; }
.page-body .wp-block-table th, .page-body .wp-block-table td {
  text-align: left; vertical-align: top; padding: 0.8rem 1rem; border: 1px solid rgba(255, 255, 255, 0.14);
}
.page-body .wp-block-table thead th { border-bottom-width: 2px; }
.page-body .wp-block-table caption, .page-body .wp-block-table figcaption {
  caption-side: top; text-align: left; font-size: 0.85rem; opacity: 0.7; padding-bottom: 0.6rem;
}
.page-body > .wp-block-columns { display: flex; gap: 2rem; align-items: flex-start; margin-top: 2.5rem; padding-top: 2.5rem; border-top: 1px solid rgba(255, 255, 255, 0.1); }
.page-body > .wp-block-columns .wp-block-image img { background: #fff; border-radius: 4px; padding: 6px; }
.page-body > .wp-block-group.seobo-agency-profile { margin-top: 2.25rem; padding-top: 2.25rem; border-top: 1px solid rgba(255, 255, 255, 0.1); }
.page-body > .wp-block-group.seobo-agency-profile > *, .page-body > .wp-block-group.seobo-editorial-policy > * { padding-inline: 0; }
@media (max-width: 767px) { .page-body > .wp-block-columns { flex-direction: column; gap: 1rem; } }
.page-body > :last-child { margin-bottom: 4rem; }
.page-body > p, .page-body > p.wp-block-paragraph { max-width: 1280px; }
.page-body > .wp-block-uagb-container p { max-width: none; }
