@media (max-width: 782px) {
  .elevate-expect-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }

  .elevate-expect-grid > * {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    min-width: 0 !important;
  }
}

/* READABILITY: service pages*/
.page-id-1647 .wp-block-columns.alignwide,
.page-id-1646 .wp-block-columns.alignwide,
.page-id-1912 .wp-block-columns.alignwide,
.page-id-1916 .wp-block-columns.alignwide,
.page-id-1919 .wp-block-columns.alignwide,
.page-id-1922 .wp-block-columns.alignwide,
.page-id-1925 .wp-block-columns.alignwide,
.page-id-2846 .wp-block-columns.alignwide,
.page-id-1901 .wp-block-columns.alignwide,
.page-id-1984 .wp-block-columns.alignwide,
.page-id-1987 .wp-block-columns.alignwide,
.page-id-1991 .wp-block-columns.alignwide,
.page-id-1994 .wp-block-columns.alignwide,
.page-id-1997 .wp-block-columns.alignwide,
.page-id-2000 .wp-block-columns.alignwide,
.page-id-3098 .wp-block-columns.alignwide,
.page-id-3100 .wp-block-columns.alignwide { max-width: 1200px; }
.page-id-1647 .wp-block-group .wp-block-column > p,
.page-id-1646 .wp-block-group .wp-block-column > p,
.page-id-1912 .wp-block-group .wp-block-column > p,
.page-id-1916 .wp-block-group .wp-block-column > p,
.page-id-1919 .wp-block-group .wp-block-column > p,
.page-id-1922 .wp-block-group .wp-block-column > p,
.page-id-1925 .wp-block-group .wp-block-column > p,
.page-id-2846 .wp-block-group .wp-block-column > p,
.page-id-1901 .wp-block-group .wp-block-column > p,
.page-id-1984 .wp-block-group .wp-block-column > p,
.page-id-1987 .wp-block-group .wp-block-column > p,
.page-id-1991 .wp-block-group .wp-block-column > p,
.page-id-1994 .wp-block-group .wp-block-column > p,
.page-id-1997 .wp-block-group .wp-block-column > p,
.page-id-2000 .wp-block-group .wp-block-column > p,
.page-id-3100 .wp-block-group .wp-block-column > p,
.page-id-1647 .wp-block-group .wp-block-column > ul,
.page-id-1646 .wp-block-group .wp-block-column > ul,
.page-id-1912 .wp-block-group .wp-block-column > ul,
.page-id-1916 .wp-block-group .wp-block-column > ul,
.page-id-1919 .wp-block-group .wp-block-column > ul,
.page-id-1922 .wp-block-group .wp-block-column > ul,
.page-id-1925 .wp-block-group .wp-block-column > ul,
.page-id-2846 .wp-block-group .wp-block-column > ul,
.page-id-1901 .wp-block-group .wp-block-column > ul,
.page-id-1984 .wp-block-group .wp-block-column > ul,
.page-id-1987 .wp-block-group .wp-block-column > ul,
.page-id-1991 .wp-block-group .wp-block-column > ul,
.page-id-1994 .wp-block-group .wp-block-column > ul,
.page-id-1997 .wp-block-group .wp-block-column > ul,
.page-id-2000 .wp-block-group .wp-block-column > ul,
.page-id-3100 .wp-block-group .wp-block-column > ul { max-width: 65ch; margin-left: auto; margin-right: auto; }
/* Hero sub-heading: keep the 65ch cap but left-align it under the H1*/
.wp-block-group .wp-block-cover .wp-block-column > p { margin-left: 0; margin-right: auto; }

/* Teal alt button (.alt-teal-button) hover: darker teal */
/* !important needed: the block's preset color class (.has-custom-accent-background-color) is !important */
.alt-teal-button .wp-block-button__link:hover,
.alt-teal-button .wp-block-button__link:focus-visible {
	background-color: color-mix(in srgb, var(--wp--preset--color--custom-accent) 85%, #000) !important;
}

/* Headings: text-wrap pretty (also outranks the theme's .with-text-wrap-balance)*/
h1, h2, h3, h4, h5, h6,
.with-text-wrap-balance:is(h1, h2, h3, h4, h5, h6) {
	text-wrap: pretty;
}

/* HEADER: one-row layout, right-aligned menu, compact call button, hamburger below 1190px */
.site-header > .alignwide { flex-wrap: nowrap; align-items: center; gap: 24px; }
.site-header > .alignwide > .wp-block-group:last-child { align-items: center; gap: 20px; }
.site-header .wp-block-navigation,
.site-header .wp-block-navigation__container { justify-content: flex-end; }
.site-header .wp-block-navigation__container { gap: 18px; }
/* Nav text: own clamp, 16px at ≤1250px → 18px at ≥1440px. !important beats the block's .has-small-font-size (on nav + ul) */
.site-header .wp-block-navigation,
.site-header .wp-block-navigation__container { font-size: clamp(16px, 2.84px + 1.053vw, 18px) !important; }
.site-header .wp-block-button__link {
    white-space: nowrap;
    padding: 10px 12px;
    font-size: 15px;
}
/* Tablet: collapse the menu into the overlay earlier than core's 600px */
@media (max-width: 1189px) {
	.site-header .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex; }
	.site-header .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: none; }
}
/* Phone: short "Call Now" label (link text stays "Call 910-548-7115" for screen readers), smaller logo */
@media (max-width: 599px) {
	.site-header .wp-block-button__link { font-size: 0; padding: 10px 16px; }
	.site-header .wp-block-button__link::before { content: "Call Now"; font-size: 16px; }
	.site-header .wp-block-site-logo img { width: 120px; height: auto; }
}
/* Mobile menu panel: left-aligned links, 70vw panel from the right, card shadow*/
.site-header .wp-block-navigation__responsive-container.is-menu-open {
	--navigation-layout-justification-setting: flex-start;
	--navigation-layout-justify: flex-start;
	left: auto;
	right: 0;
	width: 70vw;
	box-sizing: border-box;
	box-shadow: var(--wp--preset--shadow--shadow-1);
}
.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content,
.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container,
.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item,
.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
	align-items: flex-start;
	text-align: left;
}

/* WS FORM: primary button matches theme buttons*/
.wsf-form {
  --wsf-field-button-primary-color-background: var(--wp--preset--color--custom-primary);
  --wsf-field-button-primary-border-color: var(--wp--preset--color--custom-primary);
  --wsf-field-button-primary-color: var(--wp--preset--color--custom-charcoal);
  --wsf-field-button-primary-color-background-hover: color-mix(in oklab, var(--wp--preset--color--custom-primary), var(--wp--preset--color--black) 12%);
  --wsf-field-button-primary-border-color-hover: color-mix(in oklab, var(--wp--preset--color--custom-primary), var(--wp--preset--color--black) 12%);
  --wsf-field-button-primary-color-hover: var(--wp--preset--color--custom-charcoal);
  --wsf-field-button-primary-color-background-focus: color-mix(in oklab, var(--wp--preset--color--custom-primary), var(--wp--preset--color--black) 12%);
  --wsf-field-button-primary-border-color-focus: color-mix(in oklab, var(--wp--preset--color--custom-primary), var(--wp--preset--color--black) 12%);
  --wsf-field-button-primary-color-focus: var(--wp--preset--color--custom-charcoal);
  --wsf-field-button-font-size: var(--wp--preset--font-size--small);
  --wsf-field-button-font-weight: 700;
  --wsf-field-button-border-radius: 6px;
  --wsf-field-button-padding: 14px 32px;
}
/* Dropdowns match the theme's text inputs (19px text, 12.8/16px padding, 6px corners); extra right padding for the arrow */
.wsf-form select.wsf-field {
  height: auto;
  font-size: var(--wp--preset--font-size--small);
  line-height: 1.5;
  padding: 12.8px 40px 12.8px 16px;
  border-radius: 6px;
}

/* TYPOGRAPHY: better line breaks in paragraphs, fewer orphan words*/
p { text-wrap: pretty; }
/* Highlighted words in headings: orange/teal failed contrast (2.0–2.9:1); Primary Dark passes AA (7.0–7.7:1) on white/Muted/BG*/
:is(h1, h2, h3, h4, h5, h6) mark.has-inline-color { color: var(--wp--preset--color--custom-primary-dark) !important; }

/* FOOTER: short decorative orange bar under each column heading*/
.site-footer .wp-block-column > h3.wp-block-heading::after {
  content: "";
  display: block;
  width: 40px;
  height: 2px;
  margin-top: 10px;
  background: var(--wp--preset--color--custom-primary);
}