/* =========================================================================
   Eggleston Office — Component layer
   ----------------------------------------------------------------------------
   theme.json owns design tokens (colors, type scale, spacing scale, element
   defaults). This file owns custom component CSS that theme.json can't express:
   skip-link, focus-visible, reduced-motion, .btn variants, header chrome,
   footer chrome, wordmark, location-card, comparison-table.

   Token usage rule: only `var(--wp--preset--*)` references — never hex.
   That keeps theme.json the canonical source.
   ========================================================================= */

/* -------------------------------------------------------------------------
 * 0. Reset-adjacent + accessibility primitives
 * ------------------------------------------------------------------------- */

:root {
  --header-height: 80px;
}
@media (max-width: 1023px) {
  :root { --header-height: 60px; }
}

/* Skip-to-content link — visually hidden until focused */
.skip-to-content {
  position: absolute;
  top: -64px;
  left: var(--wp--preset--spacing--sm);
  z-index: 1000;
  background: var(--wp--preset--color--paper);
  color: var(--wp--preset--color--ink);
  padding: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--sm);
  border: 2px solid var(--wp--preset--color--ink);
  border-radius: 2px;
  font-family: var(--wp--preset--font-family--sans-body);
  font-weight: 600;
  text-decoration: none;
  transition: top 150ms ease;
}
.skip-to-content:focus,
.skip-to-content:focus-visible {
  top: var(--wp--preset--spacing--xs);
  outline: 2px solid var(--wp--preset--color--ink-soft);
  outline-offset: 2px;
}

/* Global focus ring — design-system Part 2 §7.2 */
*:focus-visible {
  outline: 2px solid var(--wp--preset--color--ink-soft);
  outline-offset: 2px;
  border-radius: 2px;
}

/* Reduced motion — design-system Part 2 §7.4 */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

.sr-only {
  position: absolute;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* -------------------------------------------------------------------------
 * 1. Buttons — design-system Part 2 §5a
 * ------------------------------------------------------------------------- */

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--wp--preset--spacing--2xs);
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: var(--wp--preset--font-size--body-md);
  font-weight: 600;
  letter-spacing: 0.01em;
  line-height: 1;
  padding: 0.875rem 1.5rem;
  min-height: 44px;
  min-width: 44px;
  border: 0;
  border-radius: 2px;
  text-decoration: none;
  cursor: pointer;
  transition: background-color 150ms ease, border-color 150ms ease, color 150ms ease;
}
.btn--lg {
  padding: 1.125rem 2rem;
  font-size: var(--wp--preset--font-size--body-lg);
}
.btn--primary {
  background: var(--wp--preset--color--ink);
  color: var(--wp--preset--color--paper);
}
.btn--primary:hover,
.btn--primary:focus {
  background: var(--wp--preset--color--ink-deep);
  color: var(--wp--preset--color--paper);
}
.btn--secondary {
  background: var(--wp--preset--color--clay);
  color: var(--wp--preset--color--paper);
}
.btn--secondary:hover,
.btn--secondary:focus {
  background: #9E5A3F; /* clay-darkened, design-system §7.1 — only literal hex */
  color: var(--wp--preset--color--paper);
}
.btn--ghost {
  background: transparent;
  color: var(--wp--preset--color--ink);
  border: 1.5px solid var(--wp--preset--color--ink);
  padding: calc(0.875rem - 1.5px) calc(1.5rem - 1.5px);
}
.btn--ghost:hover,
.btn--ghost:focus {
  background: var(--wp--preset--color--ink);
  color: var(--wp--preset--color--paper);
}
.btn:focus-visible {
  outline: 2px solid var(--wp--preset--color--ink-soft);
  outline-offset: 2px;
}
.btn:disabled,
.btn[aria-disabled="true"] {
  background: var(--wp--preset--color--stone);
  color: var(--wp--preset--color--stone-mid);
  cursor: not-allowed;
}

/* -------------------------------------------------------------------------
 * 2. Wordmark — locked typeset wordmark, design-system Part 1 §6
 *
 * "Eggleston Office" set in Source Serif 4 Semibold, Eggleston Ink,
 * equal-size words, no descriptor.
 * ------------------------------------------------------------------------- */

.eggleston-wordmark {
  display: inline-block;
  font-family: var(--wp--preset--font-family--serif-display);
  font-weight: 600;
  font-size: clamp(1.375rem, 1rem + 1.25vw, 1.75rem);
  line-height: 1;
  letter-spacing: -0.005em;
  color: var(--wp--preset--color--ink);
  text-decoration: none;
}
.eggleston-wordmark:hover,
.eggleston-wordmark:focus {
  color: var(--wp--preset--color--ink-deep);
  text-decoration: none;
}

/* Footer wordmark on Carbon background uses Paper */
.site-footer .eggleston-wordmark {
  color: var(--wp--preset--color--paper);
}
.site-footer .eggleston-wordmark:hover,
.site-footer .eggleston-wordmark:focus {
  color: var(--wp--preset--color--brass);
}

/* -------------------------------------------------------------------------
 * 3. Header — design-system Part 2 §5f
 * ------------------------------------------------------------------------- */

.site-header {
  background: var(--wp--preset--color--paper);
  border-bottom: 1px solid var(--wp--preset--color--stone);
}

.site-header__utility {
  background: var(--wp--preset--color--paper-shade);
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: var(--wp--preset--font-size--meta);
  color: var(--wp--preset--color--slate);
  padding: 0.5rem var(--wp--preset--spacing--sm);
}
.site-header__utility-inner {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--wp--preset--spacing--md);
}
.site-header__phone {
  font-weight: 600;
  color: var(--wp--preset--color--ink);
  text-decoration: none;
}
.site-header__phone:hover,
.site-header__phone:focus {
  color: var(--wp--preset--color--ink-deep);
  text-decoration: underline;
}

.site-header__main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--wp--preset--spacing--md);
  padding: var(--wp--preset--spacing--sm) var(--wp--preset--spacing--sm);
  max-width: 1200px;
  margin: 0 auto;
  min-height: var(--header-height);
  position: sticky;
  top: 0;
  z-index: 100;
  background: var(--wp--preset--color--paper);
}

.site-header__nav {
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: var(--wp--preset--font-size--body-md);
  font-weight: 600;
}
.site-header__nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  gap: var(--wp--preset--spacing--md);
}
.site-header__nav a {
  color: var(--wp--preset--color--graphite);
  text-decoration: none;
  padding: var(--wp--preset--spacing--2xs) 0;
  border-bottom: 1.5px solid transparent;
  transition: color 150ms ease, border-color 150ms ease;
}
.site-header__nav a:hover,
.site-header__nav a:focus,
.site-header__nav a[aria-current="page"] {
  color: var(--wp--preset--color--ink);
  border-bottom-color: var(--wp--preset--color--brass);
}

/* -------------------------------------------------------------------------
 * 4. Footer — design-system Part 2 §5g
 * ------------------------------------------------------------------------- */

.site-footer {
  background: var(--wp--preset--color--carbon);
  color: var(--wp--preset--color--paper-shade);
  padding: var(--wp--preset--spacing--3xl) var(--wp--preset--spacing--xl);
  font-family: var(--wp--preset--font-family--sans-body);
}
@media (max-width: 767px) {
  .site-footer {
    padding: var(--wp--preset--spacing--2xl) var(--wp--preset--spacing--md);
  }
}

.site-footer__inner {
  max-width: 1200px;
  margin: 0 auto;
}

.site-footer__cols {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--wp--preset--spacing--2xl);
}
@media (max-width: 1023px) {
  .site-footer__cols { grid-template-columns: repeat(2, 1fr); gap: var(--wp--preset--spacing--xl); }
}
@media (max-width: 599px) {
  .site-footer__cols { grid-template-columns: 1fr; }
}

.site-footer__heading {
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: var(--wp--preset--font-size--caption);
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--wp--preset--color--brass);
  margin: 0 0 var(--wp--preset--spacing--md) 0;
}

.site-footer__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: var(--wp--preset--spacing--2xs);
}
.site-footer__list a {
  color: var(--wp--preset--color--paper-shade);
  text-decoration: none;
  font-size: var(--wp--preset--font-size--body-sm);
  transition: color 150ms ease;
}
.site-footer__list a:hover,
.site-footer__list a:focus {
  color: var(--wp--preset--color--brass);
}

.site-footer__divider {
  border: 0;
  border-top: 1px solid var(--wp--preset--color--brass);
  margin: var(--wp--preset--spacing--xl) 0;
}

.site-footer__copyright {
  font-size: var(--wp--preset--font-size--meta);
  color: var(--wp--preset--color--stone-mid);
}
.site-footer__legal {
  display: flex;
  gap: var(--wp--preset--spacing--sm);
  list-style: none;
  margin: var(--wp--preset--spacing--xs) 0 0;
  padding: 0;
}
.site-footer__legal a {
  color: var(--wp--preset--color--stone-mid);
  text-decoration: none;
  font-size: var(--wp--preset--font-size--meta);
}
.site-footer__legal a:hover,
.site-footer__legal a:focus {
  color: var(--wp--preset--color--paper);
}

/* Footer focus rings on dark bg use Brass — design-system Part 2 §7.2 */
.site-footer :focus-visible {
  outline-color: var(--wp--preset--color--brass);
}

/* -------------------------------------------------------------------------
 * 5. Location card — design-system Part 2 §5c
 * ------------------------------------------------------------------------- */

.location-card {
  background: var(--wp--preset--color--paper-shade);
  padding: var(--wp--preset--spacing--md);
  border: 1px solid var(--wp--preset--color--stone);
  border-radius: 2px;
}
.location-card__eyebrow {
  font-size: var(--wp--preset--font-size--caption);
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--wp--preset--color--clay);
  margin: 0 0 var(--wp--preset--spacing--3xs) 0;
}
.location-card__title {
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--heading-3);
  font-weight: 600;
  color: var(--wp--preset--color--graphite);
  margin: 0 0 var(--wp--preset--spacing--2xs) 0;
}
.location-card__address {
  font-size: var(--wp--preset--font-size--body-sm);
  color: var(--wp--preset--color--slate);
  margin: 0 0 var(--wp--preset--spacing--xs) 0;
}
.location-card__phone {
  display: inline-block;
  font-weight: 600;
  color: var(--wp--preset--color--ink);
  text-decoration: underline;
}
.location-card__qualifier {
  font-size: var(--wp--preset--font-size--meta);
  color: var(--wp--preset--color--stone-mid);
}
.location-card__ctas {
  display: flex;
  gap: var(--wp--preset--spacing--xs);
  margin-top: var(--wp--preset--spacing--md);
  flex-wrap: wrap;
}

/* -------------------------------------------------------------------------
 * 6. Comparison table — design-system Part 2 §5d
 *    Shipped here so the comparison-table.php pattern just emits the markup.
 * ------------------------------------------------------------------------- */

.cmp-table {
  width: 100%;
  border-collapse: collapse;
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: var(--wp--preset--font-size--body-sm);
}
.cmp-table thead th {
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--heading-3);
  font-weight: 600;
  color: var(--wp--preset--color--graphite);
  text-align: left;
  padding: var(--wp--preset--spacing--md);
  border-bottom: 1.5px solid var(--wp--preset--color--ink);
  background: var(--wp--preset--color--paper);
  position: sticky;
  top: 0;
}
.cmp-table tbody th {
  font-family: var(--wp--preset--font-family--sans-body);
  font-weight: 600;
  color: var(--wp--preset--color--graphite);
  text-align: left;
  padding: var(--wp--preset--spacing--sm) var(--wp--preset--spacing--md);
  border-bottom: 1px solid var(--wp--preset--color--stone);
  background: var(--wp--preset--color--paper-shade);
}
.cmp-table tbody td {
  padding: var(--wp--preset--spacing--sm) var(--wp--preset--spacing--md);
  border-bottom: 1px solid var(--wp--preset--color--stone);
  color: var(--wp--preset--color--slate);
  vertical-align: top;
}
.cmp-table tbody tr:nth-child(even) td {
  background: var(--wp--preset--color--paper-shade);
}
.cmp-table .num,
.cmp-table .spec {
  font-family: var(--wp--preset--font-family--mono-spec);
  font-variant-numeric: tabular-nums;
  font-size: var(--wp--preset--font-size--body-sm);
  color: var(--wp--preset--color--graphite);
}
.cmp-table .verdict {
  background: var(--wp--preset--color--ink);
  color: var(--wp--preset--color--paper);
  font-weight: 600;
}
@media (max-width: 767px) {
  .cmp-table thead { display: none; }
  .cmp-table tr {
    display: block;
    padding: var(--wp--preset--spacing--md);
    border: 1px solid var(--wp--preset--color--stone);
    margin-bottom: var(--wp--preset--spacing--sm);
    background: var(--wp--preset--color--paper);
  }
  .cmp-table td {
    display: flex;
    justify-content: space-between;
    padding: var(--wp--preset--spacing--2xs) 0;
    border: 0;
  }
  .cmp-table td::before {
    content: attr(data-label);
    font-weight: 600;
    color: var(--wp--preset--color--graphite);
    margin-right: var(--wp--preset--spacing--sm);
  }
}

/* -------------------------------------------------------------------------
 * 7. Spec sheet (services) — same base, no verdict
 * ------------------------------------------------------------------------- */

.spec-table { /* alias for spec sheet uses */
  width: 100%;
  border-collapse: collapse;
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: var(--wp--preset--font-size--body-sm);
}
.spec-table th {
  text-align: left;
  font-weight: 600;
  background: var(--wp--preset--color--paper-shade);
  padding: var(--wp--preset--spacing--sm) var(--wp--preset--spacing--md);
  border-bottom: 1px solid var(--wp--preset--color--stone);
  color: var(--wp--preset--color--graphite);
}
.spec-table td {
  padding: var(--wp--preset--spacing--sm) var(--wp--preset--spacing--md);
  border-bottom: 1px solid var(--wp--preset--color--stone);
  color: var(--wp--preset--color--slate);
}
.spec-table .num {
  font-family: var(--wp--preset--font-family--mono-spec);
  font-variant-numeric: tabular-nums;
}

/* -------------------------------------------------------------------------
 * 8. Page hero — design-system Part 2 §5h
 * ------------------------------------------------------------------------- */

.page-hero {
  padding: var(--wp--preset--spacing--3xl) var(--wp--preset--spacing--sm);
  background: var(--wp--preset--color--paper);
}
.page-hero__inner {
  max-width: 720px;
  margin: 0 auto;
  text-align: left;
}
.page-hero__eyebrow {
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: var(--wp--preset--font-size--caption);
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--wp--preset--color--clay);
  margin: 0 0 var(--wp--preset--spacing--md) 0;
}
.page-hero__title {
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--display-lg);
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: -0.02em;
  color: var(--wp--preset--color--graphite);
  margin: 0 0 var(--wp--preset--spacing--md) 0;
}
.page-hero__lede {
  font-size: var(--wp--preset--font-size--body-lg);
  line-height: 1.55;
  color: var(--wp--preset--color--slate);
  margin: 0 0 var(--wp--preset--spacing--lg) 0;
}
.page-hero__ctas {
  display: flex;
  gap: var(--wp--preset--spacing--sm);
  flex-wrap: wrap;
}

/* -------------------------------------------------------------------------
 * 9. FAQ accordion — design-system Part 2 §5e adjacent
 *    Schema-friendly markup: <h3> question, <div> answer; FAQPage generator
 *    in mu-plugins/eggleston-schema.php detects <details class="faq-item">
 * ------------------------------------------------------------------------- */

.faq-list {
  display: flex;
  flex-direction: column;
  gap: var(--wp--preset--spacing--xs);
  list-style: none;
  margin: 0;
  padding: 0;
}
.faq-item {
  background: var(--wp--preset--color--paper);
  border: 1px solid var(--wp--preset--color--stone);
  border-radius: 2px;
}
.faq-item summary,
.faq-item__question {
  cursor: pointer;
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: var(--wp--preset--font-size--heading-4);
  font-weight: 600;
  color: var(--wp--preset--color--graphite);
  padding: var(--wp--preset--spacing--md);
  list-style: none;
}
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item[open] summary {
  border-bottom: 1px solid var(--wp--preset--color--stone);
}
.faq-item__answer {
  padding: var(--wp--preset--spacing--md);
  color: var(--wp--preset--color--slate);
  line-height: 1.65;
}

/* -------------------------------------------------------------------------- *
 * 10. Phase B2a — conversion-path page components
 *    Differentiator strip · three-track tiles · location info block ·
 *    quote/contact form wrappers · thank-you page
 * ------------------------------------------------------------------------- */

/* Differentiator strip (home + landing pages) */
.differentiator {
  display: flex;
  flex-direction: column;
  gap: var(--wp--preset--spacing--2xs);
}
.differentiator__title {
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--heading-4);
  font-weight: 600;
  color: var(--wp--preset--color--graphite);
  margin: 0;
}
.differentiator__body {
  font-size: var(--wp--preset--font-size--body-sm);
  color: var(--wp--preset--color--slate);
  line-height: 1.55;
  margin: 0;
}

/* Three-track tiles (home) */
.track-tile {
  display: flex;
  flex-direction: column;
  gap: var(--wp--preset--spacing--2xs);
  padding: var(--wp--preset--spacing--lg);
  background: var(--wp--preset--color--paper);
  border: 1px solid var(--wp--preset--color--stone);
  border-radius: 2px;
}
.track-tile__eyebrow {
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: var(--wp--preset--font-size--meta);
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--wp--preset--color--clay);
  margin: 0;
}
.track-tile__title {
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--heading-3);
  font-weight: 600;
  color: var(--wp--preset--color--graphite);
  margin: 0;
}
.track-tile__body {
  font-size: var(--wp--preset--font-size--body-md);
  color: var(--wp--preset--color--slate);
  line-height: 1.6;
  margin: 0;
}
.track-tile__cta {
  margin-top: auto;
  padding-top: var(--wp--preset--spacing--xs);
}
.track-tile__cta a {
  font-weight: 600;
  color: var(--wp--preset--color--ink);
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* Location page — info block (address + hours + contact) */
.location-info {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--wp--preset--spacing--lg);
  padding: var(--wp--preset--spacing--lg);
  background: var(--wp--preset--color--paper-shade);
  border: 1px solid var(--wp--preset--color--stone);
  border-radius: 2px;
}
@media (min-width: 768px) {
  .location-info { grid-template-columns: 1fr 1fr; }
}
.location-info__heading {
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: var(--wp--preset--font-size--meta);
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--wp--preset--color--stone-mid);
  margin: 0 0 var(--wp--preset--spacing--2xs) 0;
}
.location-info__address {
  font-size: var(--wp--preset--font-size--body-md);
  color: var(--wp--preset--color--graphite);
  line-height: 1.55;
  margin: 0 0 var(--wp--preset--spacing--xs) 0;
}
.location-info__hours-list {
  list-style: none;
  padding: 0;
  margin: 0;
  font-size: var(--wp--preset--font-size--body-sm);
  color: var(--wp--preset--color--slate);
  line-height: 1.7;
}
.location-info__contact-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: var(--wp--preset--spacing--2xs);
  font-size: var(--wp--preset--font-size--body-md);
}
.location-info__contact-list a {
  color: var(--wp--preset--color--ink);
  text-decoration: underline;
  text-underline-offset: 3px;
  font-weight: 600;
}
.location-info__placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--wp--preset--color--stone);
  color: var(--wp--preset--color--slate);
  border: 1px dashed var(--wp--preset--color--stone-mid);
  aspect-ratio: 4 / 3;
  font-style: italic;
  font-size: var(--wp--preset--font-size--body-sm);
  text-align: center;
  padding: var(--wp--preset--spacing--md);
}

/* Quote / Contact form wrappers */
.eo-form-section {
  padding-top: var(--wp--preset--spacing--3xl);
  padding-bottom: var(--wp--preset--spacing--3xl);
  background: var(--wp--preset--color--paper);
}
.eo-form-section--contained {
  max-width: 720px;
  margin: 0 auto;
}
.eo-form-section__intro {
  font-size: var(--wp--preset--font-size--body-lg);
  color: var(--wp--preset--color--slate);
  line-height: 1.6;
  margin: 0 0 var(--wp--preset--spacing--lg) 0;
}

/* Trust signals row above form on /get-a-quote/ */
.eo-trust-strip {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: var(--wp--preset--spacing--md);
  padding: var(--wp--preset--spacing--md) 0;
  margin-bottom: var(--wp--preset--spacing--lg);
  border-top: 1px solid var(--wp--preset--color--stone);
  border-bottom: 1px solid var(--wp--preset--color--stone);
}
.eo-trust-strip__item {
  font-size: var(--wp--preset--font-size--body-sm);
  color: var(--wp--preset--color--slate);
  line-height: 1.5;
}
.eo-trust-strip__item strong {
  color: var(--wp--preset--color--graphite);
  display: block;
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--body-md);
  margin-bottom: 2px;
}

/* Thank You page */
.thank-you-section {
  padding: var(--wp--preset--spacing--4xl) 0;
  text-align: left;
}
.thank-you-section h1 {
  font-size: var(--wp--preset--font-size--display-md);
  margin-bottom: var(--wp--preset--spacing--md);
}
.thank-you-section .thank-you-next-steps {
  margin-top: var(--wp--preset--spacing--xl);
  padding: var(--wp--preset--spacing--lg);
  background: var(--wp--preset--color--paper-shade);
  border-left: 3px solid var(--wp--preset--color--brass);
  border-radius: 2px;
}
.thank-you-section .thank-you-next-steps h2 {
  font-size: var(--wp--preset--font-size--heading-3);
  margin: 0 0 var(--wp--preset--spacing--xs) 0;
}
.thank-you-section .thank-you-next-steps ul {
  margin: var(--wp--preset--spacing--sm) 0 0 1.25rem;
  padding: 0;
}
.thank-you-section .thank-you-next-steps li {
  margin-bottom: var(--wp--preset--spacing--2xs);
  color: var(--wp--preset--color--slate);
}

/* Page heros for non-home pages */
.page-hero--location {
  padding: var(--wp--preset--spacing--3xl) var(--wp--preset--spacing--md);
  background: var(--wp--preset--color--paper);
  border-bottom: 1px solid var(--wp--preset--color--stone);
}
.page-hero--location .page-hero__inner {
  max-width: 1200px;
  margin: 0 auto;
}
.page-hero--location h1 {
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--display-md);
  font-weight: 600;
  color: var(--wp--preset--color--graphite);
  line-height: 1.15;
  margin: 0 0 var(--wp--preset--spacing--xs) 0;
}
.page-hero--location p {
  font-size: var(--wp--preset--font-size--body-lg);
  color: var(--wp--preset--color--slate);
  line-height: 1.55;
  max-width: 720px;
}

/* =========================================================================
 * Section 16 — Page-hero variants (added 2026-04-30)
 *
 * Each variant is a subtle dressing on top of the base .page-hero.
 * The base .page-hero__inner is 720px max-width; content-rich heroes
 * (home, comparison, services hub) widen it.
 * ========================================================================= */

.page-hero {
  padding: var(--wp--preset--spacing--3xl) var(--wp--preset--spacing--md);
  border-bottom: 1px solid var(--wp--preset--color--stone);
}

.page-hero--home,
.page-hero--services,
.page-hero--compare,
.page-hero--service-area {
  background: var(--wp--preset--color--paper);
}

.page-hero--home .page-hero__inner,
.page-hero--services .page-hero__inner,
.page-hero--compare .page-hero__inner,
.page-hero--service-area .page-hero__inner,
.page-hero--category .page-hero__inner,
.page-hero--industry .page-hero__inner,
.page-hero--resource .page-hero__inner,
.page-hero--service .page-hero__inner,
.page-hero--about .page-hero__inner,
.page-hero--faq .page-hero__inner {
  max-width: 1100px;
  margin: 0 auto;
}

/* Differentiator hero (CAD page, sample-delivery, LP CAD page) — extra emphasis */
.page-hero--differentiator {
  background: var(--wp--preset--color--paper-shade);
  border-bottom: 3px solid var(--wp--preset--color--clay);
}
.page-hero--differentiator .page-hero__eyebrow {
  color: var(--wp--preset--color--ink);
}

/* LP heros — slightly tighter padding, paper-shade bg for subtle distinction */
.page-hero--lp {
  background: var(--wp--preset--color--paper);
  padding: var(--wp--preset--spacing--2xl) var(--wp--preset--spacing--md);
}
.page-hero--lp .page-hero__inner {
  max-width: 900px;
  margin: 0 auto;
}

/* About + FAQ + service-area: slightly more relaxed lede */
.page-hero--about,
.page-hero--faq,
.page-hero--service-area {
  background: var(--wp--preset--color--paper);
}

/* Comparison: hero gets a subtle brass underline for editorial weight */
.page-hero--compare {
  border-bottom: 2px solid var(--wp--preset--color--brass);
}

/* Industry: gets clay accent */
.page-hero--industry {
  border-bottom: 2px solid var(--wp--preset--color--clay-wash);
}


/* =========================================================================
 * Section 17 — Home page sections (home pillars, visit-us, trust, cta)
 * ========================================================================= */

/* Pillars row — the 4 service-step cards */
.home-pillars {
  background: var(--wp--preset--color--paper);
}
.home-pillars h2 {
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--heading-2);
  font-weight: 600;
  color: var(--wp--preset--color--graphite);
  margin: 0 auto var(--wp--preset--spacing--lg) auto;
  text-align: center;
  max-width: 720px;
}

.home-pillars__grid {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 var(--wp--preset--spacing--md);
}

.home-pillar {
  padding: var(--wp--preset--spacing--lg);
  background: var(--wp--preset--color--paper);
  border: 1px solid var(--wp--preset--color--stone);
  border-radius: 2px;
  display: flex;
  flex-direction: column;
  position: relative;
  transition: border-color 150ms ease, transform 150ms ease;
}
.home-pillar:hover {
  border-color: var(--wp--preset--color--ink);
}
.home-pillar__step {
  display: inline-block;
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: var(--wp--preset--font-size--caption);
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--wp--preset--color--paper);
  background: var(--wp--preset--color--ink);
  padding: 0.25rem 0.625rem;
  border-radius: 2px;
  margin: 0 0 var(--wp--preset--spacing--sm) 0;
  align-self: flex-start;
}
.home-pillar__title {
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--heading-4);
  font-weight: 600;
  color: var(--wp--preset--color--graphite);
  margin: 0 0 var(--wp--preset--spacing--xs) 0;
  line-height: 1.25;
}
.home-pillar__body {
  font-size: var(--wp--preset--font-size--body-md);
  color: var(--wp--preset--color--slate);
  line-height: 1.55;
  margin: 0 0 var(--wp--preset--spacing--md) 0;
  flex: 1;
}
.home-pillar__link {
  display: inline-block;
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: var(--wp--preset--font-size--body-sm);
  font-weight: 600;
  color: var(--wp--preset--color--ink);
  text-decoration: none;
  border-bottom: 1px solid var(--wp--preset--color--clay);
  padding-bottom: 0.125rem;
  transition: border-color 150ms ease;
  align-self: flex-start;
}
.home-pillar__link:hover,
.home-pillar__link:focus {
  border-bottom-color: var(--wp--preset--color--ink);
}

/* Trust section */
.home-trust h2 {
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--heading-2);
  font-weight: 600;
  color: var(--wp--preset--color--graphite);
  max-width: 900px;
  margin: 0 auto var(--wp--preset--spacing--md) auto;
}
.home-trust p {
  max-width: 720px;
  font-size: var(--wp--preset--font-size--body-lg);
  line-height: 1.6;
  color: var(--wp--preset--color--slate);
  margin: 0 auto var(--wp--preset--spacing--md) auto;
}

/* Visit-us section */
.home-visit-us {
  background: var(--wp--preset--color--paper);
}
.home-visit-us h2 {
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--heading-2);
  font-weight: 600;
  color: var(--wp--preset--color--graphite);
  max-width: 900px;
  margin: 0 auto var(--wp--preset--spacing--md) auto;
}
.home-visit-us p {
  max-width: 800px;
  font-size: var(--wp--preset--font-size--body-md);
  color: var(--wp--preset--color--slate);
  line-height: 1.6;
  margin: 0 auto var(--wp--preset--spacing--lg) auto;
}

.visit-us-grid {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 var(--wp--preset--spacing--md);
}

.visit-us-card {
  padding: var(--wp--preset--spacing--lg);
  background: var(--wp--preset--color--paper-shade);
  border-left: 4px solid var(--wp--preset--color--ink);
  border-radius: 2px;
  display: flex;
  flex-direction: column;
}
.visit-us-card__eyebrow {
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: var(--wp--preset--font-size--caption);
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--wp--preset--color--clay);
  margin: 0 0 var(--wp--preset--spacing--xs) 0;
}
.visit-us-card__title {
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--heading-3);
  font-weight: 600;
  color: var(--wp--preset--color--graphite);
  margin: 0 0 var(--wp--preset--spacing--xs) 0;
}
.visit-us-card__address {
  font-size: var(--wp--preset--font-size--body-md);
  color: var(--wp--preset--color--slate);
  line-height: 1.5;
  margin: 0 0 var(--wp--preset--spacing--sm) 0;
}
.visit-us-card__body {
  font-size: var(--wp--preset--font-size--body-md);
  color: var(--wp--preset--color--slate);
  line-height: 1.55;
  margin: 0 0 var(--wp--preset--spacing--md) 0;
  flex: 1;
}
.visit-us-card__link {
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: var(--wp--preset--font-size--body-sm);
  font-weight: 600;
  color: var(--wp--preset--color--ink);
  text-decoration: none;
  border-bottom: 1px solid var(--wp--preset--color--clay);
  padding-bottom: 0.125rem;
  align-self: flex-start;
}

/* Home CTA + LP CTA section */
.home-cta,
.lp-cta,
.compare-cta,
.faq-cta {
  background: var(--wp--preset--color--paper-shade);
}
.home-cta h2,
.lp-cta h2,
.compare-cta h2,
.faq-cta h2 {
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--heading-2);
  font-weight: 600;
  color: var(--wp--preset--color--graphite);
  margin: 0 auto var(--wp--preset--spacing--md) auto;
  max-width: 720px;
}
.home-cta p,
.lp-cta p,
.compare-cta p {
  font-size: var(--wp--preset--font-size--body-md);
  color: var(--wp--preset--color--slate);
  line-height: 1.6;
  max-width: 720px;
  margin: 0 auto var(--wp--preset--spacing--lg) auto;
}

/* Locations-grid (home page) */
.locations-grid-section {
  background: var(--wp--preset--color--paper);
}
.locations-grid {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 var(--wp--preset--spacing--md);
}

/* Differentiator strip (home page strip) */
.differentiator-strip {
  background: var(--wp--preset--color--paper-shade);
}
.differentiator-strip__grid {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 var(--wp--preset--spacing--md);
}


/* =========================================================================
 * Section 18 — CTA buttons row (used on most pages)
 * ========================================================================= */

.cta-buttons {
  display: flex;
  gap: var(--wp--preset--spacing--sm);
  flex-wrap: wrap;
  margin-top: var(--wp--preset--spacing--md);
}


/* =========================================================================
 * Section 19 — TBD-tony block + photo placeholder
 * ========================================================================= */

.tbd-tony-block {
  background: var(--wp--preset--color--paper-shade);
  border-left: 4px solid var(--wp--preset--color--clay);
  padding: var(--wp--preset--spacing--lg);
  border-radius: 0 2px 2px 0;
  margin: var(--wp--preset--spacing--md) 0;
}
.tbd-tony-block p,
.tbd-tony-block li {
  font-size: var(--wp--preset--font-size--body-sm);
  line-height: 1.55;
  color: var(--wp--preset--color--slate);
}
.tbd-tony-block strong {
  color: var(--wp--preset--color--graphite);
}
.tbd-tony-block code {
  font-family: var(--wp--preset--font-family--mono-spec);
  font-size: 0.85em;
  background: var(--wp--preset--color--paper);
  padding: 0.0625rem 0.25rem;
  border: 1px solid var(--wp--preset--color--stone);
  border-radius: 2px;
}

.photo-placeholder {
  background: var(--wp--preset--color--paper-shade);
  border-left: 4px solid var(--wp--preset--color--clay);
  padding: var(--wp--preset--spacing--lg);
  margin: var(--wp--preset--spacing--md) 0;
  border-radius: 0 2px 2px 0;
}
.photo-placeholder p {
  font-size: var(--wp--preset--font-size--body-sm);
  color: var(--wp--preset--color--slate);
  margin: 0;
}


/* =========================================================================
 * Section 20 — Service cards (services hub)
 * ========================================================================= */

.services-grid-section {
  background: var(--wp--preset--color--paper);
}
.services-grid {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 var(--wp--preset--spacing--md);
}

.service-card {
  padding: var(--wp--preset--spacing--lg);
  background: var(--wp--preset--color--paper);
  border: 1px solid var(--wp--preset--color--stone);
  border-radius: 2px;
  display: flex;
  flex-direction: column;
  transition: border-color 150ms ease, transform 150ms ease;
}
.service-card:hover {
  border-color: var(--wp--preset--color--ink);
}
.service-card__eyebrow {
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: var(--wp--preset--font-size--caption);
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--wp--preset--color--clay);
  margin: 0 0 var(--wp--preset--spacing--xs) 0;
}
.service-card__title {
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--heading-4);
  font-weight: 600;
  line-height: 1.25;
  margin: 0 0 var(--wp--preset--spacing--sm) 0;
}
.service-card__title a {
  color: var(--wp--preset--color--graphite);
  text-decoration: none;
}
.service-card__title a:hover,
.service-card__title a:focus {
  color: var(--wp--preset--color--ink);
}
.service-card__body {
  font-size: var(--wp--preset--font-size--body-md);
  color: var(--wp--preset--color--slate);
  line-height: 1.55;
  margin: 0 0 var(--wp--preset--spacing--md) 0;
  flex: 1;
}
.service-card__link {
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: var(--wp--preset--font-size--body-sm);
  font-weight: 600;
  color: var(--wp--preset--color--ink);
  text-decoration: none;
  border-bottom: 1px solid var(--wp--preset--color--clay);
  padding-bottom: 0.125rem;
  align-self: flex-start;
}

/* Services philosophy section */
.services-philosophy {
  background: var(--wp--preset--color--paper-shade);
}
.services-philosophy h2 {
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--heading-2);
  font-weight: 600;
  color: var(--wp--preset--color--graphite);
  max-width: 900px;
  margin: 0 auto var(--wp--preset--spacing--md) auto;
}
.services-philosophy p {
  max-width: 800px;
  font-size: var(--wp--preset--font-size--body-md);
  color: var(--wp--preset--color--slate);
  line-height: 1.6;
  margin: 0 auto var(--wp--preset--spacing--md) auto;
}


/* =========================================================================
 * Section 21 — Resource cards (resources hub)
 * ========================================================================= */

.resources-grid-section {
  background: var(--wp--preset--color--paper);
}
.resources-grid {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 var(--wp--preset--spacing--md);
}
.resource-card {
  padding: var(--wp--preset--spacing--lg);
  background: var(--wp--preset--color--paper);
  border: 1px solid var(--wp--preset--color--stone);
  border-top: 3px solid var(--wp--preset--color--clay);
  border-radius: 2px;
  display: flex;
  flex-direction: column;
  transition: border-color 150ms ease;
}
.resource-card:hover {
  border-color: var(--wp--preset--color--ink);
  border-top-color: var(--wp--preset--color--clay);
}
.resource-card__eyebrow {
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: var(--wp--preset--font-size--caption);
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--wp--preset--color--clay);
  margin: 0 0 var(--wp--preset--spacing--xs) 0;
}
.resource-card__title {
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--heading-4);
  font-weight: 600;
  line-height: 1.25;
  margin: 0 0 var(--wp--preset--spacing--sm) 0;
}
.resource-card__title a {
  color: var(--wp--preset--color--graphite);
  text-decoration: none;
}
.resource-card__title a:hover {
  color: var(--wp--preset--color--ink);
}
.resource-card__body {
  font-size: var(--wp--preset--font-size--body-md);
  color: var(--wp--preset--color--slate);
  line-height: 1.55;
  margin: 0 0 var(--wp--preset--spacing--md) 0;
  flex: 1;
}
.resource-card__link {
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: var(--wp--preset--font-size--body-sm);
  font-weight: 600;
  color: var(--wp--preset--color--ink);
  text-decoration: none;
  border-bottom: 1px solid var(--wp--preset--color--clay);
  padding-bottom: 0.125rem;
  align-self: flex-start;
}

.resources-related {
  background: var(--wp--preset--color--paper-shade);
}
.resources-related h2 {
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--heading-2);
  font-weight: 600;
  color: var(--wp--preset--color--graphite);
  max-width: 900px;
  margin: 0 0 var(--wp--preset--spacing--md) 0;
}


/* =========================================================================
 * Section 22 — Compare-table + comparison page sections
 * ========================================================================= */

.compare-tldr {
  background: var(--wp--preset--color--paper);
}
.compare-tldr h2,
.compare-paths h2,
.compare-cta h2 {
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--heading-2);
  font-weight: 600;
  color: var(--wp--preset--color--graphite);
}
.compare-tldr p,
.compare-paths p,
.compare-cta p {
  font-size: var(--wp--preset--font-size--body-md);
  color: var(--wp--preset--color--slate);
  line-height: 1.65;
}
.compare-tldr ol,
.compare-paths ol,
.compare-cta ol {
  font-size: var(--wp--preset--font-size--body-md);
  color: var(--wp--preset--color--slate);
  line-height: 1.65;
}

.compare-paths {
  background: var(--wp--preset--color--paper);
}
.compare-paths h2 {
  border-bottom: 2px solid var(--wp--preset--color--clay-wash);
  padding-bottom: var(--wp--preset--spacing--xs);
  margin-top: var(--wp--preset--spacing--xl);
  margin-bottom: var(--wp--preset--spacing--md);
}
.compare-paths h3 {
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--heading-3);
  font-weight: 600;
  color: var(--wp--preset--color--ink);
  margin-top: var(--wp--preset--spacing--lg);
  margin-bottom: var(--wp--preset--spacing--xs);
}
.compare-paths ul,
.compare-paths ol {
  font-size: var(--wp--preset--font-size--body-md);
  color: var(--wp--preset--color--slate);
  line-height: 1.65;
  padding-left: 1.25rem;
}
.compare-paths li {
  margin-bottom: var(--wp--preset--spacing--xs);
}
.compare-paths strong {
  color: var(--wp--preset--color--graphite);
}

.compare-table-section {
  background: var(--wp--preset--color--paper-shade);
}
.compare-table-section h2 {
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--heading-2);
  font-weight: 600;
  color: var(--wp--preset--color--graphite);
  margin: 0 0 var(--wp--preset--spacing--md) 0;
}
.compare-table-section p {
  max-width: 900px;
  font-size: var(--wp--preset--font-size--body-md);
  color: var(--wp--preset--color--slate);
  line-height: 1.6;
  margin: 0 0 var(--wp--preset--spacing--lg) 0;
}

.compare-table-wrap {
  overflow-x: auto;
  background: var(--wp--preset--color--paper);
  border: 1px solid var(--wp--preset--color--stone);
  border-radius: 2px;
}

.compare-table {
  width: 100%;
  border-collapse: collapse;
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: var(--wp--preset--font-size--body-sm);
  line-height: 1.5;
}
.compare-table thead th {
  background: var(--wp--preset--color--ink-deep);
  color: var(--wp--preset--color--paper);
  font-weight: 600;
  text-align: left;
  padding: var(--wp--preset--spacing--sm) var(--wp--preset--spacing--md);
  border-right: 1px solid var(--wp--preset--color--ink);
  vertical-align: top;
}
.compare-table thead th:last-child { border-right: 0; }
.compare-table tbody th {
  background: var(--wp--preset--color--paper-shade);
  color: var(--wp--preset--color--graphite);
  font-weight: 600;
  text-align: left;
  padding: var(--wp--preset--spacing--sm) var(--wp--preset--spacing--md);
  vertical-align: top;
  border-right: 1px solid var(--wp--preset--color--stone);
  border-top: 1px solid var(--wp--preset--color--stone);
  width: 16%;
}
.compare-table tbody td {
  padding: var(--wp--preset--spacing--sm) var(--wp--preset--spacing--md);
  vertical-align: top;
  color: var(--wp--preset--color--slate);
  border-top: 1px solid var(--wp--preset--color--stone);
  border-right: 1px solid var(--wp--preset--color--stone);
}
.compare-table tbody td:last-child { border-right: 0; }
.compare-table tbody tr:nth-child(even) td {
  background: var(--wp--preset--color--paper-shade);
}

.compare-faq {
  background: var(--wp--preset--color--paper-shade);
}
.compare-faq h2 {
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--heading-2);
  font-weight: 600;
  color: var(--wp--preset--color--graphite);
  margin: 0 0 var(--wp--preset--spacing--md) 0;
}


/* =========================================================================
 * Section 23 — LP pillars
 * ========================================================================= */

.lp-pillars {
  background: var(--wp--preset--color--paper);
}
.lp-pillars__grid {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 var(--wp--preset--spacing--md);
}
.lp-pillar {
  padding: var(--wp--preset--spacing--md);
  background: var(--wp--preset--color--paper);
  border-top: 3px solid var(--wp--preset--color--ink);
  display: flex;
  flex-direction: column;
}
.lp-pillar__title {
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--heading-4);
  font-weight: 600;
  color: var(--wp--preset--color--graphite);
  line-height: 1.25;
  margin: 0 0 var(--wp--preset--spacing--xs) 0;
}
.lp-pillar__body {
  font-size: var(--wp--preset--font-size--body-sm);
  color: var(--wp--preset--color--slate);
  line-height: 1.5;
  margin: 0;
}

.lp-trust {
  background: var(--wp--preset--color--paper-shade);
}
.lp-trust p {
  font-size: var(--wp--preset--font-size--body-md);
  color: var(--wp--preset--color--slate);
  line-height: 1.6;
  margin: 0 auto;
  max-width: 800px;
}


/* =========================================================================
 * Section 24 — Location-info-block (location pages info grid)
 * ========================================================================= */

.location-summary {
  background: var(--wp--preset--color--paper);
}
.location-info-grid {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 var(--wp--preset--spacing--md);
}
.location-info-block {
  padding: var(--wp--preset--spacing--md);
  background: var(--wp--preset--color--paper-shade);
  border-radius: 2px;
}
.location-info-block__heading {
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: var(--wp--preset--font-size--caption);
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--wp--preset--color--clay);
  margin: 0 0 var(--wp--preset--spacing--xs) 0;
}
.location-info-block__body {
  font-size: var(--wp--preset--font-size--body-md);
  color: var(--wp--preset--color--graphite);
  line-height: 1.55;
  margin: 0 0 var(--wp--preset--spacing--xs) 0;
}
.location-info-block__body a {
  color: var(--wp--preset--color--ink);
  text-decoration: underline;
  text-decoration-color: var(--wp--preset--color--clay);
}
.location-info-block__body a:hover,
.location-info-block__body a:focus {
  text-decoration-color: var(--wp--preset--color--ink);
}

/* Other section dressings on location pages */
.location-purpose,
.location-photo-tbd,
.location-faq,
.location-related {
  background: var(--wp--preset--color--paper);
}
.location-faq {
  background: var(--wp--preset--color--paper-shade);
}
.location-purpose h2,
.location-faq h2,
.location-related h2 {
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--heading-2);
  font-weight: 600;
  color: var(--wp--preset--color--graphite);
  margin: 0 0 var(--wp--preset--spacing--md) 0;
}
.location-purpose p,
.location-purpose li,
.location-faq p,
.location-faq li,
.location-related li {
  font-size: var(--wp--preset--font-size--body-md);
  color: var(--wp--preset--color--slate);
  line-height: 1.65;
}


/* =========================================================================
 * Section 25 — Generic content typography on Group blocks (post body)
 * ========================================================================= */

.wp-block-group h2 {
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--heading-2);
  font-weight: 600;
  color: var(--wp--preset--color--graphite);
  line-height: 1.2;
  margin-top: var(--wp--preset--spacing--xl);
  margin-bottom: var(--wp--preset--spacing--md);
}
.wp-block-group h3 {
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--heading-3);
  font-weight: 600;
  color: var(--wp--preset--color--graphite);
  line-height: 1.25;
  margin-top: var(--wp--preset--spacing--lg);
  margin-bottom: var(--wp--preset--spacing--xs);
}
.wp-block-group p {
  font-size: var(--wp--preset--font-size--body-md);
  color: var(--wp--preset--color--slate);
  line-height: 1.65;
  margin: 0 0 var(--wp--preset--spacing--sm) 0;
  max-width: 720px;
}
.wp-block-group ul,
.wp-block-group ol {
  font-size: var(--wp--preset--font-size--body-md);
  color: var(--wp--preset--color--slate);
  line-height: 1.65;
  padding-left: 1.25rem;
  max-width: 720px;
}
.wp-block-group li {
  margin-bottom: var(--wp--preset--spacing--2xs);
}
.wp-block-group strong {
  color: var(--wp--preset--color--graphite);
}
.wp-block-group a {
  color: var(--wp--preset--color--ink);
  text-decoration: underline;
  text-decoration-color: var(--wp--preset--color--clay);
  text-underline-offset: 2px;
}
.wp-block-group a:hover,
.wp-block-group a:focus {
  text-decoration-color: var(--wp--preset--color--ink);
}


/* =========================================================================
 * Section 26 — Kadence accordion (FAQ blocks across the site)
 *
 * Kadence's default accordion CSS works but doesn't carry the brand. Override
 * the panes to read with the rest of the design system.
 * ========================================================================= */

.kadence-accordion-wrap,
.wp-block-kadence-accordion {
  max-width: 900px;
  margin: var(--wp--preset--spacing--md) auto 0 auto;
}
.wp-block-kadence-accordion .kt-accordion-pane,
.wp-block-kadence-pane {
  border: 1px solid var(--wp--preset--color--stone) !important;
  border-radius: 2px !important;
  background: var(--wp--preset--color--paper) !important;
  margin-bottom: var(--wp--preset--spacing--xs) !important;
}
.wp-block-kadence-accordion .kt-accordion-header-wrap button,
.wp-block-kadence-pane .kt-blocks-accordion-header {
  font-family: var(--wp--preset--font-family--serif-display) !important;
  font-size: var(--wp--preset--font-size--heading-5) !important;
  font-weight: 600 !important;
  color: var(--wp--preset--color--graphite) !important;
  padding: var(--wp--preset--spacing--md) !important;
  text-align: left !important;
  background: transparent !important;
}
.wp-block-kadence-accordion .kt-accordion-pane p,
.wp-block-kadence-pane p {
  font-size: var(--wp--preset--font-size--body-md) !important;
  color: var(--wp--preset--color--slate) !important;
  line-height: 1.65 !important;
  padding: 0 var(--wp--preset--spacing--md) var(--wp--preset--spacing--md) var(--wp--preset--spacing--md) !important;
  margin: 0 !important;
}


/* =========================================================================
 * Section 27 — Site header polish
 * (Existing .site-header rules cover layout; this adds the brand-color
 * accents and nav hover states the spec calls for.)
 * ========================================================================= */

.site-header__main {
  border-bottom: 1px solid var(--wp--preset--color--stone);
  background: var(--wp--preset--color--paper);
}
.site-header__utility {
  background: var(--wp--preset--color--ink-deep);
  color: var(--wp--preset--color--paper);
  font-size: var(--wp--preset--font-size--body-sm);
}
.site-header__utility a {
  color: var(--wp--preset--color--paper);
}
.site-header__utility a:hover,
.site-header__utility a:focus {
  color: var(--wp--preset--color--clay-wash);
}

.eggleston-wordmark {
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--heading-3);
  font-weight: 600;
  color: var(--wp--preset--color--ink);
  text-decoration: none;
  letter-spacing: -0.01em;
}
.eggleston-wordmark:hover,
.eggleston-wordmark:focus {
  color: var(--wp--preset--color--ink-deep);
}

.site-header__nav a {
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: var(--wp--preset--font-size--body-sm);
  font-weight: 600;
  color: var(--wp--preset--color--graphite);
  text-decoration: none;
  padding: 0.5rem 0;
  border-bottom: 2px solid transparent;
}
.site-header__nav a:hover,
.site-header__nav a:focus,
.site-header__nav a[aria-current="page"] {
  color: var(--wp--preset--color--ink);
  border-bottom-color: var(--wp--preset--color--clay);
}


/* =========================================================================
 * Section 28 — Site footer polish
 * ========================================================================= */

.site-footer {
  background: var(--wp--preset--color--carbon);
  color: var(--wp--preset--color--stone);
  padding: var(--wp--preset--spacing--3xl) var(--wp--preset--spacing--md) var(--wp--preset--spacing--xl) var(--wp--preset--spacing--md);
}
.site-footer__heading {
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: var(--wp--preset--font-size--caption);
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--wp--preset--color--brass);
  margin: 0 0 var(--wp--preset--spacing--sm) 0;
}
.site-footer__list a {
  color: var(--wp--preset--color--stone);
  text-decoration: none;
}
.site-footer__list a:hover,
.site-footer__list a:focus {
  color: var(--wp--preset--color--paper);
}
.site-footer__divider {
  border: 0;
  height: 1px;
  background: var(--wp--preset--color--slate);
  margin: var(--wp--preset--spacing--xl) 0;
}
.site-footer__copyright {
  color: var(--wp--preset--color--stone-mid);
  font-size: var(--wp--preset--font-size--body-sm);
}
.site-footer__legal a {
  color: var(--wp--preset--color--stone);
}
.site-footer__legal a:hover,
.site-footer__legal a:focus {
  color: var(--wp--preset--color--paper);
}

/* =========================================================================
 * Section 29 — Palette pivot overrides (2026-04-30 PM)
 *
 * The theme.json palette flipped tokens to match the existing brand:
 *   --ink (was deep green #1F3A34) -> Eggleston Gold #FDC708
 *   --paper (was cream) -> true white
 *   --graphite (was warm dark) -> near-black #111
 *   --carbon (was warm darker) -> pure black
 *
 * Existing CSS that combined "bg: ink; color: paper" was readable when
 * --ink was deep green. With --ink now bright yellow + --paper white,
 * those combos fail contrast. Override here to use --graphite (near-
 * black) for text on yellow surfaces. Yellow + black is the actual brand
 * pairing on the existing Wix site.
 * ========================================================================= */

/* Primary CTA: yellow bg with near-black text */
.btn--primary {
  color: var(--wp--preset--color--graphite);
  font-weight: 700;
}
.btn--primary:hover,
.btn--primary:focus {
  background: var(--wp--preset--color--ink-deep);
  color: var(--wp--preset--color--graphite);
}

/* Home pillar step badges */
.home-pillar__step {
  color: var(--wp--preset--color--graphite);
}

/* Header utility bar — black bg with white text + gold hover */
.site-header__utility {
  background: var(--wp--preset--color--carbon);
  color: #ffffff;
}
.site-header__utility a {
  color: #ffffff;
}
.site-header__utility a:hover,
.site-header__utility a:focus {
  color: var(--wp--preset--color--ink);
}
.site-header__phone {
  font-weight: 600;
}

/* Header main: white bg with black text */
.site-header__main {
  background: var(--wp--preset--color--paper);
  border-bottom: 2px solid var(--wp--preset--color--ink);
}
.eggleston-wordmark {
  color: var(--wp--preset--color--graphite);
}
.eggleston-wordmark:hover,
.eggleston-wordmark:focus {
  color: var(--wp--preset--color--ink-deep);
}
.site-header__nav a {
  color: var(--wp--preset--color--graphite);
}
.site-header__nav a:hover,
.site-header__nav a:focus,
.site-header__nav a[aria-current="page"] {
  color: var(--wp--preset--color--ink-deep);
  border-bottom-color: var(--wp--preset--color--ink);
}

/* Compare table headers: black bg with white text (high contrast) */
.compare-table thead th {
  background: var(--wp--preset--color--carbon);
  color: #ffffff;
  border-right-color: var(--wp--preset--color--graphite);
}

/* Visit-us cards — gold left-border, white bg */
.visit-us-card {
  background: var(--wp--preset--color--paper);
  border: 1px solid var(--wp--preset--color--stone);
  border-left: 4px solid var(--wp--preset--color--ink);
}

/* LP pillars — gold top-border (already set; reaffirm) */
.lp-pillar {
  border-top: 3px solid var(--wp--preset--color--ink);
}

/* Eyebrow: gold-deep instead of warm-cream (which would be invisible on white) */
.page-hero__eyebrow,
.service-card__eyebrow,
.resource-card__eyebrow,
.location-card__eyebrow,
.location-info-block__heading,
.visit-us-card__eyebrow,
.home-pillar__step {
  color: var(--wp--preset--color--ink-deep);
}

/* Body links: black underline by default, gold on hover */
.wp-block-group a,
.location-info-block__body a {
  color: var(--wp--preset--color--graphite);
  text-decoration: underline;
  text-decoration-color: var(--wp--preset--color--ink);
  text-decoration-thickness: 2px;
  text-underline-offset: 2px;
}
.wp-block-group a:hover,
.wp-block-group a:focus,
.location-info-block__body a:hover,
.location-info-block__body a:focus {
  color: var(--wp--preset--color--ink-deep);
  text-decoration-color: var(--wp--preset--color--ink-deep);
}

/* Card-link styling (the small "How X works" links inside cards) */
.home-pillar__link,
.service-card__link,
.resource-card__link,
.visit-us-card__link {
  color: var(--wp--preset--color--graphite);
  border-bottom: 2px solid var(--wp--preset--color--ink);
  font-weight: 700;
}
.home-pillar__link:hover,
.home-pillar__link:focus,
.service-card__link:hover,
.service-card__link:focus,
.resource-card__link:hover,
.resource-card__link:focus,
.visit-us-card__link:hover,
.visit-us-card__link:focus {
  border-bottom-color: var(--wp--preset--color--ink-deep);
  color: var(--wp--preset--color--ink-deep);
}

/* Card hover — gold border instead of just darker line */
.home-pillar:hover,
.service-card:hover,
.resource-card:hover {
  border-color: var(--wp--preset--color--ink);
}

/* Resource card top accent in gold */
.resource-card {
  border-top: 3px solid var(--wp--preset--color--ink);
}

/* Footer: pure black bg, gold column headings, white links */
.site-footer {
  background: var(--wp--preset--color--carbon);
  color: #ffffff;
}
.site-footer__heading {
  color: var(--wp--preset--color--ink);
}
.site-footer__list a {
  color: #ffffff;
}
.site-footer__list a:hover,
.site-footer__list a:focus {
  color: var(--wp--preset--color--ink);
}
.site-footer__divider {
  background: var(--wp--preset--color--ink-deep);
}
.site-footer__copyright,
.site-footer__legal a {
  color: var(--wp--preset--color--stone);
}
.site-footer__legal a:hover,
.site-footer__legal a:focus {
  color: var(--wp--preset--color--ink);
}

/* Differentiator hero — gold border-bottom (was clay) */
.page-hero--differentiator {
  border-bottom: 3px solid var(--wp--preset--color--ink);
  background: var(--wp--preset--color--paper-shade);
}

/* Compare hero — gold border instead of brass */
.page-hero--compare {
  border-bottom: 2px solid var(--wp--preset--color--ink);
}

/* TBD-tony block — gold left border (instead of clay/warm-cream which would be invisible) */
.tbd-tony-block,
.photo-placeholder {
  border-left: 4px solid var(--wp--preset--color--ink);
  background: var(--wp--preset--color--paper-shade);
}

/* Page-hero title: ensure near-black for high contrast */
.page-hero__title {
  color: var(--wp--preset--color--graphite);
}
.page-hero__lede {
  color: var(--wp--preset--color--slate);
}

/* Card titles — near-black */
.home-pillar__title,
.service-card__title a,
.resource-card__title a,
.visit-us-card__title {
  color: var(--wp--preset--color--graphite);
}

/* Body copy on group blocks — ensure dark gray text */
.wp-block-group p,
.wp-block-group li {
  color: var(--wp--preset--color--slate);
}
.wp-block-group h2,
.wp-block-group h3,
.wp-block-group strong {
  color: var(--wp--preset--color--graphite);
}

/* Section bg overrides — many sections used --paper-shade; that's now off-white tint, still OK */
.home-trust,
.compare-table-section,
.compare-faq,
.faq-cta,
.lp-cta,
.compare-cta,
.home-cta,
.services-philosophy,
.resources-related,
.location-faq {
  background: var(--wp--preset--color--paper-shade);
}

/* Kadence accordion: ensure dark text on white panels */
.wp-block-kadence-pane {
  border-color: var(--wp--preset--color--stone) !important;
  background: var(--wp--preset--color--paper) !important;
}
.wp-block-kadence-pane .kt-blocks-accordion-header,
.wp-block-kadence-accordion .kt-accordion-header-wrap button {
  color: var(--wp--preset--color--graphite) !important;
}


/* =========================================================================
 * Section 30 — Brand-specific patterns from existing Wix site
 *
 * Components matching the Wix site's visual layouts so the new pages
 * carry the same brand presence.
 * ========================================================================= */

/* Client logos row (home page) */
.client-logos-row {
  background: var(--wp--preset--color--paper);
  padding: var(--wp--preset--spacing--xl) var(--wp--preset--spacing--md);
  border-top: 1px solid var(--wp--preset--color--stone);
  border-bottom: 1px solid var(--wp--preset--color--stone);
}
.client-logos-row__heading {
  text-align: center;
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: var(--wp--preset--font-size--caption);
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--wp--preset--color--slate);
  margin: 0 0 var(--wp--preset--spacing--lg) 0;
}
.client-logos-row__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  gap: var(--wp--preset--spacing--lg);
  align-items: center;
  justify-items: center;
  max-width: 1200px;
  margin: 0 auto;
}
.client-logos-row__logo {
  max-width: 140px;
  max-height: 80px;
  width: auto;
  height: auto;
  filter: grayscale(100%);
  opacity: 0.7;
  transition: filter 200ms ease, opacity 200ms ease;
}
.client-logos-row__logo:hover {
  filter: grayscale(0%);
  opacity: 1;
}

/* Hero image overlay (home page) */
.hero-image {
  position: relative;
  width: 100%;
  max-height: 600px;
  overflow: hidden;
  background: var(--wp--preset--color--carbon);
}
.hero-image img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}
.hero-image__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,0.20) 0%, rgba(0,0,0,0.50) 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: #ffffff;
  padding: var(--wp--preset--spacing--xl) var(--wp--preset--spacing--md);
}
.hero-image__inner {
  max-width: 900px;
}
.hero-image__title {
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--display-xl);
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.05;
  color: #ffffff;
  margin: 0 0 var(--wp--preset--spacing--md) 0;
  text-shadow: 0 2px 16px rgba(0,0,0,0.5);
}
.hero-image__title em {
  color: var(--wp--preset--color--ink);
  font-style: normal;
}
.hero-image__lede {
  font-size: var(--wp--preset--font-size--body-lg);
  color: #ffffff;
  line-height: 1.5;
  max-width: 720px;
  margin: 0 auto var(--wp--preset--spacing--lg) auto;
  text-shadow: 0 1px 8px rgba(0,0,0,0.5);
}

/* Category carousel (home page — 5 cards: Desk, Cubicles, Storage, Break Room, Reception Area) */
.category-carousel {
  background: var(--wp--preset--color--paper);
  padding: var(--wp--preset--spacing--2xl) var(--wp--preset--spacing--md);
}
.category-carousel__heading {
  text-align: center;
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--heading-2);
  font-weight: 700;
  color: var(--wp--preset--color--graphite);
  margin: 0 0 var(--wp--preset--spacing--lg) 0;
}
.category-carousel__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: var(--wp--preset--spacing--md);
  max-width: 1200px;
  margin: 0 auto;
}
.category-carousel__card {
  display: block;
  position: relative;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  text-decoration: none;
  color: #ffffff;
  background: var(--wp--preset--color--graphite);
  border-radius: 2px;
  transition: transform 200ms ease;
}
.category-carousel__card:hover,
.category-carousel__card:focus {
  transform: translateY(-4px);
}
.category-carousel__card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 300ms ease;
}
.category-carousel__card:hover img {
  transform: scale(1.05);
}
.category-carousel__label {
  position: absolute;
  inset: auto 0 0 0;
  padding: var(--wp--preset--spacing--md);
  background: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.85) 100%);
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--heading-4);
  font-weight: 700;
  color: #ffffff;
  text-align: left;
}

/* Product gallery (per-category page hero + thumbnail strip) */
.product-gallery {
  background: var(--wp--preset--color--paper);
  padding: var(--wp--preset--spacing--xl) var(--wp--preset--spacing--md);
}
.product-gallery__hero {
  width: 100%;
  max-height: 540px;
  overflow: hidden;
  margin: 0 auto var(--wp--preset--spacing--lg) auto;
  border-radius: 2px;
  max-width: 1200px;
}
.product-gallery__hero img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}
.product-gallery__thumbs {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
  gap: var(--wp--preset--spacing--xs);
  max-width: 1200px;
  margin: 0 auto;
}
.product-gallery__thumb {
  aspect-ratio: 1 / 1;
  overflow: hidden;
  border-radius: 2px;
  background: var(--wp--preset--color--paper-shade);
}
.product-gallery__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 200ms ease;
}
.product-gallery__thumb:hover img {
  transform: scale(1.05);
}

/* Our Work — case study card grid */
.our-work-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: var(--wp--preset--spacing--lg);
  max-width: 1200px;
  margin: 0 auto;
}
.our-work-card {
  background: var(--wp--preset--color--paper);
  border: 1px solid var(--wp--preset--color--stone);
  border-radius: 2px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: border-color 150ms ease, transform 150ms ease;
}
.our-work-card:hover {
  border-color: var(--wp--preset--color--ink);
  transform: translateY(-2px);
}
.our-work-card__image {
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: var(--wp--preset--color--paper-shade);
}
.our-work-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.our-work-card__body {
  padding: var(--wp--preset--spacing--md);
  flex: 1;
  display: flex;
  flex-direction: column;
}
.our-work-card__title {
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--heading-4);
  font-weight: 700;
  color: var(--wp--preset--color--graphite);
  line-height: 1.25;
  margin: 0 0 var(--wp--preset--spacing--xs) 0;
}
.our-work-card__summary {
  font-size: var(--wp--preset--font-size--body-sm);
  color: var(--wp--preset--color--slate);
  line-height: 1.55;
  margin: 0;
}

/* Family photo on About page */
.family-photo {
  width: 100%;
  max-width: 720px;
  margin: var(--wp--preset--spacing--lg) auto;
  border-radius: 2px;
  overflow: hidden;
}
.family-photo img {
  width: 100%;
  height: auto;
  display: block;
}

/* =========================================================================
 * Section 31 — Editorial trade-catalog refinement (2026-04-30 evening)
 *
 * Aesthetic direction: a 1968 printed furniture catalog brought online.
 * Heavy Source Serif 4 display weight (600-700), Eggleston Gold as
 * confident punctuation, sharp corners (1-2px), thin gold horizontal
 * rules between sections, editorial number badges, subtle film-grain
 * overlay on the hero. Established voice; not startup-whisper.
 *
 * Lifted from Stripe DESIGN.md (recolored): layered shadow system,
 * tight display letter-spacing, two-weight simplicity, light/dark
 * section alternation.
 *
 * Per frontend-design skill guidance: refined-minimal direction with
 * restraint, precision, attention to typography and subtle details.
 * Distinctive serif (Source Serif 4) avoids generic-AI fonts. Gold
 * accent dominates over neutral palette — sharp punctuation, not
 * timid distribution.
 * ========================================================================= */

/* --- Subtle film-grain overlay on hero (SVG data URI, no extra request) --- */
.hero-image::after {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 0.4 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)' opacity='0.6'/></svg>");
  opacity: 0.08;
  pointer-events: none;
  mix-blend-mode: overlay;
  z-index: 1;
}
.hero-image__overlay {
  position: relative;
  z-index: 2;
  background: linear-gradient(180deg, rgba(0,0,0,0.30) 0%, rgba(0,0,0,0.65) 100%);
}

/* Hero typography — heavy serif establishment voice */
.hero-image__title {
  font-family: var(--wp--preset--font-family--serif-display);
  font-weight: 700;
  font-size: clamp(2.5rem, 1.8rem + 3.5vw, 5rem);
  letter-spacing: -0.035em;
  line-height: 1.02;
  text-shadow: 0 2px 24px rgba(0,0,0,0.6);
}
.hero-image__title em {
  color: var(--wp--preset--color--ink);
  font-style: italic;
  font-weight: 700;
  /* Subtle text-shadow with gold tint for the emphasis word */
  text-shadow: 0 0 30px rgba(253, 199, 8, 0.4), 0 2px 16px rgba(0,0,0,0.6);
}
.hero-image__lede {
  font-size: clamp(1rem, 0.95rem + 0.4vw, 1.25rem);
  font-weight: 400;
  letter-spacing: 0.005em;
  line-height: 1.55;
  max-width: 640px;
}

/* --- Buttons: sharper, heavier — catalog-print discipline --- */
.btn {
  border-radius: 1px;
  font-weight: 700;
  letter-spacing: 0.02em;
  transition: background 180ms ease, color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
  position: relative;
}
.btn--primary {
  box-shadow: 0 1px 0 rgba(182, 143, 2, 0.5), 0 4px 12px -2px rgba(253, 199, 8, 0.4);
}
.btn--primary:hover,
.btn--primary:focus {
  transform: translateY(-1px);
  box-shadow: 0 2px 0 rgba(182, 143, 2, 0.6), 0 8px 18px -2px rgba(253, 199, 8, 0.5);
}
.btn--ghost {
  border-width: 2px;
  color: var(--wp--preset--color--graphite);
  border-color: var(--wp--preset--color--graphite);
}
.btn--ghost:hover,
.btn--ghost:focus {
  background: var(--wp--preset--color--graphite);
  color: #ffffff;
}
.btn--lg {
  padding: 1rem 2.25rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  font-size: var(--wp--preset--font-size--body-md);
}

/* --- Cards: sharper corners, gold-line hover travel --- */
.home-pillar,
.service-card,
.resource-card,
.our-work-card,
.visit-us-card,
.location-info-block {
  border-radius: 1px;
  position: relative;
  overflow: hidden;
}
.home-pillar::before,
.service-card::before,
.resource-card::before,
.our-work-card::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 3px;
  background: var(--wp--preset--color--ink);
  transition: width 280ms cubic-bezier(0.2, 0.7, 0.2, 1);
}
.home-pillar:hover::before,
.service-card:hover::before,
.resource-card:hover::before,
.our-work-card:hover::before {
  width: 100%;
}

/* Compare-table sharper corners */
.compare-table-wrap {
  border-radius: 1px;
}

/* --- Editorial pillar numbering (01 / 02 / 03 / 04) --- */
.home-pillar__step {
  background: transparent;
  color: var(--wp--preset--color--graphite);
  padding: 0;
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--display-md);
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1;
  margin-bottom: var(--wp--preset--spacing--sm);
  position: relative;
  display: inline-block;
}
.home-pillar__step::after {
  content: "";
  position: absolute;
  bottom: -8px;
  left: 0;
  width: 32px;
  height: 3px;
  background: var(--wp--preset--color--ink);
}
/* Convert "Step 1" -> "01" via CSS counter-style — but content is already "Step 1" so we restyle as the catalog number */
.home-pillar__step {
  text-transform: uppercase;
}

/* Editorial section dividers — thin gold rules */
.home-pillars,
.client-logos-row,
.home-trust,
.home-visit-us,
.our-work-section,
.compare-paths,
.compare-table-section {
  position: relative;
}
.client-logos-row {
  border-top: 0;
  border-bottom: 0;
  position: relative;
}
.client-logos-row::before {
  content: "";
  display: block;
  width: 64px;
  height: 4px;
  background: var(--wp--preset--color--ink);
  margin: 0 auto var(--wp--preset--spacing--md) auto;
}

/* Client logos — refined treatment, less faded */
.client-logos-row {
  background: #FFFFFF;
}
.client-logos-row__heading {
  font-family: var(--wp--preset--font-family--serif-display);
  font-style: italic;
  font-weight: 400;
  font-size: var(--wp--preset--font-size--body-md);
  text-transform: none;
  letter-spacing: 0;
  color: var(--wp--preset--color--slate);
}
.client-logos-row__logo {
  filter: grayscale(100%) contrast(1.1);
  opacity: 0.55;
  max-height: 60px;
}
.client-logos-row__logo:hover {
  filter: grayscale(0%);
  opacity: 1;
}

/* --- Category carousel — editorial card treatment --- */
.category-carousel {
  background: var(--wp--preset--color--paper);
  position: relative;
}
.category-carousel::before {
  content: "";
  display: block;
  width: 64px;
  height: 4px;
  background: var(--wp--preset--color--ink);
  margin: 0 auto var(--wp--preset--spacing--md) auto;
}
.category-carousel__heading {
  font-weight: 700;
  letter-spacing: -0.02em;
  font-style: italic;
  font-size: clamp(1.75rem, 1.4rem + 1.5vw, 2.5rem);
}
.category-carousel__card {
  border-radius: 1px;
  background: var(--wp--preset--color--carbon);
}
.category-carousel__card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 40%, rgba(0,0,0,0.6) 100%);
  z-index: 1;
  pointer-events: none;
}
.category-carousel__label {
  z-index: 2;
  background: transparent;
  font-weight: 700;
  letter-spacing: -0.01em;
  border-bottom: 3px solid var(--wp--preset--color--ink);
  padding-bottom: var(--wp--preset--spacing--xs);
  display: inline-block;
  width: fit-content;
}

/* --- Our Work cards: figure numbering --- */
.our-work-grid {
  counter-reset: figure-counter;
}
.our-work-card {
  counter-increment: figure-counter;
  position: relative;
}
.our-work-card__image {
  position: relative;
}
.our-work-card__image::before {
  content: "Fig. " counter(figure-counter, decimal-leading-zero);
  position: absolute;
  top: var(--wp--preset--spacing--sm);
  left: var(--wp--preset--spacing--sm);
  z-index: 2;
  font-family: var(--wp--preset--font-family--mono-spec);
  font-size: var(--wp--preset--font-size--caption);
  font-weight: 500;
  letter-spacing: 0.08em;
  color: #ffffff;
  background: rgba(0,0,0,0.7);
  padding: 0.2rem 0.5rem;
  border-radius: 1px;
  border-left: 2px solid var(--wp--preset--color--ink);
}
.our-work-card__title {
  font-weight: 700;
  letter-spacing: -0.015em;
}

/* --- Site header: thin gold accent rule above utility bar --- */
.site-header__utility {
  position: relative;
}
.site-header__utility::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 3px;
  background: var(--wp--preset--color--ink);
}

.eggleston-wordmark {
  font-weight: 700;
  letter-spacing: -0.025em;
  font-style: italic;
}

.site-header__nav a {
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: var(--wp--preset--font-size--caption);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

/* --- Page hero refinement: heavier weight, tighter tracking --- */
.page-hero__title {
  font-weight: 700;
  font-size: clamp(2rem, 1.6rem + 2vw, 3.25rem);
  letter-spacing: -0.025em;
  line-height: 1.05;
}
.page-hero__eyebrow {
  font-family: var(--wp--preset--font-family--mono-spec);
  font-size: var(--wp--preset--font-size--caption);
  font-weight: 500;
  letter-spacing: 0.12em;
  color: var(--wp--preset--color--ink-deep);
  text-transform: uppercase;
  position: relative;
  padding-left: 32px;
}
.page-hero__eyebrow::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 24px;
  height: 2px;
  background: var(--wp--preset--color--ink);
}

/* --- Headings on body content: more typographic rhythm --- */
.wp-block-group h2 {
  font-weight: 700;
  letter-spacing: -0.02em;
  font-size: clamp(1.5rem, 1.25rem + 1vw, 2rem);
  position: relative;
  padding-top: var(--wp--preset--spacing--sm);
}
.wp-block-group h2::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 32px;
  height: 3px;
  background: var(--wp--preset--color--ink);
}
.wp-block-group h3 {
  font-weight: 700;
  font-style: italic;
  letter-spacing: -0.01em;
}

/* --- Tables: editorial spacing --- */
.compare-table thead th {
  font-family: var(--wp--preset--font-family--mono-spec);
  font-size: var(--wp--preset--font-size--caption);
  font-weight: 500;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.compare-table tbody th {
  font-family: var(--wp--preset--font-family--serif-display);
  font-style: italic;
  font-weight: 600;
  font-size: var(--wp--preset--font-size--body-sm);
}

/* --- Footer refinement --- */
.site-footer {
  position: relative;
}
.site-footer::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 4px;
  background: var(--wp--preset--color--ink);
}
.site-footer__heading {
  font-family: var(--wp--preset--font-family--mono-spec);
  font-size: var(--wp--preset--font-size--caption);
  font-weight: 500;
  letter-spacing: 0.12em;
}

/* --- Page-load reveal — staggered for hero only, restrained --- */
@keyframes eo-rise {
  from { opacity: 0; transform: translateY(16px); }
  to { opacity: 1; transform: translateY(0); }
}
.hero-image__inner > * {
  animation: eo-rise 700ms cubic-bezier(0.2, 0.7, 0.2, 1) backwards;
}
.hero-image__inner > *:nth-child(1) { animation-delay: 100ms; }
.hero-image__inner > *:nth-child(2) { animation-delay: 240ms; }
.hero-image__inner > *:nth-child(3) { animation-delay: 380ms; }
.hero-image__inner > *:nth-child(4) { animation-delay: 520ms; }

@media (prefers-reduced-motion: reduce) {
  .hero-image__inner > * {
    animation: none;
  }
}

/* --- Subtle hover on category-carousel labels --- */
.category-carousel__card:hover .category-carousel__label {
  border-bottom-color: var(--wp--preset--color--ink-soft);
}

/* =========================================================================
 * Section 32 — Animation choreography (2026-04-30 evening)
 *
 * Per frontend-design skill guidance: one well-orchestrated page-load with
 * staggered reveals beats scattered micro-interactions. Plus: ken-burns
 * hero zoom (mimics video-loop hero feel without source video), scroll-
 * triggered reveals on home sections via scroll-driven animations
 * (modern CSS — gracefully degrades on older browsers), and hover-travel
 * effects on category labels.
 *
 * All effects are CSS-only — no JS, no Motion library. prefers-reduced-
 * motion respected at the bottom.
 *
 * Font note: theme.json switched serif-display from Source Serif 4 -> Fraunces
 * (variable font with optical-size + italic axes — characterful editorial-
 * catalog feel) and sans-body from Source Sans 3 -> DM Sans (variable). Both
 * load via Google Fonts <link> in functions.php. The font-family CSS variable
 * names didn't change, so the existing 600+ rules using
 * var(--wp--preset--font-family--serif-display) etc. resolve cleanly.
 * ========================================================================= */

/* Fraunces optical-size + variation: enable opsz for natural scaling */
.page-hero__title,
.hero-image__title,
.wp-block-group h2,
.home-pillar__title,
.service-card__title,
.resource-card__title,
.our-work-card__title,
.visit-us-card__title {
  font-variation-settings: "opsz" 96, "SOFT" 50;
}
.page-hero__eyebrow {
  font-variation-settings: normal;
}

/* --- Hero ken-burns: slow zoom + pan on the hero image --- */
@keyframes eo-ken-burns {
  0%   { transform: scale(1.05) translate(0, 0); }
  100% { transform: scale(1.18) translate(-1.5%, -1%); }
}
.hero-image img {
  animation: eo-ken-burns 22s ease-out infinite alternate;
  will-change: transform;
}

/* --- Scroll-driven reveal staggers (modern browsers) --- */
@supports (animation-timeline: view()) {
  @keyframes eo-fade-rise {
    from { opacity: 0; transform: translateY(28px); }
    to   { opacity: 1; transform: translateY(0); }
  }
  /* Category carousel cards reveal as they enter viewport */
  .category-carousel__card {
    animation: eo-fade-rise linear both;
    animation-timeline: view();
    animation-range: entry 0% cover 30%;
  }
  /* Home pillars reveal in sequence */
  .home-pillar {
    animation: eo-fade-rise linear both;
    animation-timeline: view();
    animation-range: entry 0% cover 25%;
  }
  /* Our-work cards reveal in sequence (more dramatic for hero gallery) */
  .our-work-card {
    animation: eo-fade-rise linear both;
    animation-timeline: view();
    animation-range: entry 0% cover 35%;
  }
  /* Service cards on hub */
  .service-card,
  .resource-card,
  .visit-us-card {
    animation: eo-fade-rise linear both;
    animation-timeline: view();
    animation-range: entry 0% cover 30%;
  }
  /* Client logos cascade in */
  .client-logos-row__logo {
    animation: eo-fade-rise linear both;
    animation-timeline: view();
    animation-range: entry 0% cover 50%;
  }
}

/* Fallback for browsers without scroll-driven animations: no reveal,
 * elements are visible by default. The hero stagger (Section 31's @keyframes
 * eo-rise) still works since it runs on page load not scroll. */

/* --- Category carousel: gold underline travels right on hover --- */
.category-carousel__label {
  border-bottom-width: 2px;
  position: relative;
  padding-right: 32px;
}
.category-carousel__label::after {
  content: "→";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  font-family: var(--wp--preset--font-family--serif-display);
  font-style: normal;
  font-weight: 400;
  color: var(--wp--preset--color--ink);
  transition: transform 280ms cubic-bezier(0.2, 0.7, 0.2, 1);
}
.category-carousel__card:hover .category-carousel__label::after {
  transform: translateY(-50%) translateX(6px);
}
.category-carousel__card img {
  transition: transform 600ms cubic-bezier(0.2, 0.7, 0.2, 1);
}
.category-carousel__card:hover img {
  transform: scale(1.06);
}

/* --- Home pillar links: gold underline travels right on hover --- */
.home-pillar__link,
.service-card__link,
.resource-card__link,
.visit-us-card__link {
  position: relative;
  padding-right: 24px;
}
.home-pillar__link::after,
.service-card__link::after,
.resource-card__link::after,
.visit-us-card__link::after {
  content: "→";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%) translateX(0);
  transition: transform 220ms cubic-bezier(0.2, 0.7, 0.2, 1);
  color: var(--wp--preset--color--ink-deep);
  font-weight: 600;
}
.home-pillar__link:hover::after,
.home-pillar__link:focus::after,
.service-card__link:hover::after,
.service-card__link:focus::after,
.resource-card__link:hover::after,
.resource-card__link:focus::after,
.visit-us-card__link:hover::after,
.visit-us-card__link:focus::after {
  transform: translateY(-50%) translateX(6px);
}

/* --- Subtle parallax-like hover on our-work card images --- */
.our-work-card__image img {
  transition: transform 800ms cubic-bezier(0.2, 0.7, 0.2, 1);
}
.our-work-card:hover .our-work-card__image img {
  transform: scale(1.06);
}

/* --- Site header: slight slide-down on page load (subtle, not distracting) --- */
@keyframes eo-header-slide {
  from { transform: translateY(-100%); opacity: 0; }
  to   { transform: translateY(0); opacity: 1; }
}
.site-header__main {
  animation: eo-header-slide 600ms cubic-bezier(0.2, 0.7, 0.2, 1) backwards;
  animation-delay: 80ms;
}

/* --- Page-hero on non-home pages: subtle entrance --- */
.page-hero__inner > * {
  animation: eo-rise 600ms cubic-bezier(0.2, 0.7, 0.2, 1) backwards;
}
.page-hero__inner > *:nth-child(1) { animation-delay: 80ms; }
.page-hero__inner > *:nth-child(2) { animation-delay: 200ms; }
.page-hero__inner > *:nth-child(3) { animation-delay: 320ms; }
.page-hero__inner > *:nth-child(4) { animation-delay: 440ms; }

/* --- Buttons: gentle scale on hover for tactility --- */
.btn--primary,
.btn--ghost {
  transition: background 180ms ease, color 180ms ease, box-shadow 180ms ease,
              transform 180ms cubic-bezier(0.2, 0.7, 0.2, 1);
}
.btn--primary:hover,
.btn--ghost:hover {
  transform: translateY(-2px);
}

/* --- Compare table: row hover highlight (subtle warm tint) --- */
.compare-table tbody tr {
  transition: background 200ms ease;
}
.compare-table tbody tr:hover td,
.compare-table tbody tr:hover th {
  background: rgba(253, 199, 8, 0.06);
}

/* --- Reduced motion: kill all the animation flourishes --- */
@media (prefers-reduced-motion: reduce) {
  .hero-image img,
  .site-header__main,
  .page-hero__inner > *,
  .hero-image__inner > * {
    animation: none !important;
  }
  .home-pillar,
  .category-carousel__card,
  .our-work-card,
  .service-card,
  .resource-card,
  .visit-us-card,
  .client-logos-row__logo {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
  .btn--primary:hover,
  .btn--ghost:hover,
  .category-carousel__card:hover img,
  .our-work-card:hover .our-work-card__image img,
  .home-pillar__link:hover::after,
  .category-carousel__card:hover .category-carousel__label::after {
    transform: none !important;
  }
}

/* =========================================================================
 * Section 33 — Business-professional refinement (2026-04-30 evening)
 *
 * Tony's feedback: the editorial-trade-catalog direction read as too
 * literary/magazine-y for B2B office furniture buyers. Reverting fonts
 * to Source Serif 4 + Source Sans 3 (already self-hosted, distinctive,
 * appropriate for B2B). Dialing back the editorial flourishes from
 * Section 31:
 *   - Drop italic emphasis on hero "to you"
 *   - Drop Fig. 01 figure numbering on our-work cards
 *   - Drop italic on category-carousel heading + wordmark
 *   - Drop italic on h3 elements in body content
 *
 * Keep: sharp 1px corners, mono eyebrows, gold accent rules between
 * sections, gold-line card hover, right-arrow link travel, scroll-
 * reveal staggers, ken-burns hero, compare-table styling. Those read
 * as confident-corporate, not literary.
 *
 * Audience direction: SMB office furniture buyers (facilities managers,
 * admins, dental practice owners, law firm partners). They want:
 * credibility, professional restraint, easy contact, clean hierarchy.
 * Not editorial design statement.
 * ========================================================================= */

/* Hero title: drop italic on emphasis word; keep gold color but solid */
.hero-image__title em {
  font-style: normal;
  font-weight: 700;
  color: var(--wp--preset--color--ink);
  /* Subtle gold tint for emphasis; remove the dramatic glow */
  text-shadow: 0 2px 16px rgba(0, 0, 0, 0.6);
}

/* Hero overlay: slightly more even — readable, less cinematic */
.hero-image__overlay {
  background: linear-gradient(180deg, rgba(0,0,0,0.38) 0%, rgba(0,0,0,0.55) 60%, rgba(0,0,0,0.65) 100%);
}

/* Hero grain: dial down further */
.hero-image::after {
  opacity: 0.04;
}

/* Ken-burns: slower + smaller range so it feels professional, not movie-trailer */
@keyframes eo-ken-burns {
  0%   { transform: scale(1.04) translate(0, 0); }
  100% { transform: scale(1.10) translate(-1%, -0.5%); }
}
.hero-image img {
  animation-duration: 30s;
}

/* Wordmark: solid (no italic) */
.eggleston-wordmark {
  font-style: normal;
  font-weight: 700;
  letter-spacing: -0.02em;
}

/* Category carousel heading: solid, not italic */
.category-carousel__heading {
  font-style: normal;
  font-weight: 700;
  letter-spacing: -0.015em;
}

/* Body h3 in group blocks: solid, not italic */
.wp-block-group h3 {
  font-style: normal;
  font-weight: 700;
}

/* Compare table tbody th: solid, not italic */
.compare-table tbody th {
  font-family: var(--wp--preset--font-family--sans-body);
  font-style: normal;
  font-weight: 700;
  font-size: var(--wp--preset--font-size--body-sm);
}

/* Drop the Fig. 01 figure numbering on our-work cards — too magazine-y */
.our-work-card__image::before {
  display: none;
}

/* Our-work card title: heavier, less italic-feel typography */
.our-work-card__title {
  font-weight: 700;
  letter-spacing: -0.012em;
}

/* Home pillar numerals: keep 01/02/03/04 but slightly more restrained — feels structured rather than editorial */
.home-pillar__step {
  font-size: var(--wp--preset--font-size--display-md);
  letter-spacing: -0.015em;
  margin-bottom: var(--wp--preset--spacing--md);
}
.home-pillar__step::after {
  width: 28px;
  height: 2px;
  bottom: -6px;
}

/* Trust strip below hero — short factual signals for B2B credibility */
.trust-strip {
  background: var(--wp--preset--color--carbon);
  color: #ffffff;
  padding: var(--wp--preset--spacing--md) var(--wp--preset--spacing--md);
  border-top: 3px solid var(--wp--preset--color--ink);
}
.trust-strip__inner {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: var(--wp--preset--spacing--md);
  text-align: center;
}
.trust-strip__item {
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: var(--wp--preset--font-size--body-sm);
  font-weight: 500;
  letter-spacing: 0.02em;
  color: rgba(255, 255, 255, 0.92);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
}
.trust-strip__item strong {
  font-family: var(--wp--preset--font-family--serif-display);
  font-weight: 700;
  font-size: var(--wp--preset--font-size--heading-3);
  color: var(--wp--preset--color--ink);
  letter-spacing: -0.01em;
}
.trust-strip__divider {
  display: none;
}
@media (min-width: 768px) {
  .trust-strip__divider {
    display: block;
    width: 1px;
    height: 100%;
    background: rgba(255, 255, 255, 0.15);
  }
}

/* Headings: ensure they read as confident-corporate, not editorial */
.page-hero__title {
  font-weight: 700;
  letter-spacing: -0.022em;
}
.hero-image__title {
  font-weight: 700;
  letter-spacing: -0.028em;
}
.hero-image__lede {
  font-weight: 400;
  font-size: clamp(1.0625rem, 1rem + 0.4vw, 1.25rem);
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.92);
}

/* Buttons: keep sharp + heavy, no uppercase forcing on btn-lg (felt too "campaign") */
.btn--lg {
  text-transform: none;
  letter-spacing: 0.01em;
  font-size: var(--wp--preset--font-size--body-md);
  padding: 1rem 2rem;
}
.btn--primary {
  font-weight: 700;
  letter-spacing: 0.005em;
}

/* Page-hero eyebrow: keep mono + dash, but tighter spacing */
.page-hero__eyebrow {
  letter-spacing: 0.10em;
  font-size: 0.75rem;
}

/* Card hover lift — 2px not 4px (less dramatic) */
.our-work-card:hover {
  transform: translateY(-2px);
}

/* Service card hover — dial back hover lift */
.home-pillar:hover,
.service-card:hover,
.resource-card:hover {
  transform: translateY(-2px);
}

/* Body link underline thickness: 1px not 2px (more refined) */
.wp-block-group a,
.location-info-block__body a {
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

/* Section dividers — make them more present & purposeful, less flag-like */
.client-logos-row::before,
.category-carousel::before {
  width: 48px;
  height: 3px;
}

/* =========================================================================
 * Section 34 — Wix-mirror layout (2026-04-30 evening)
 *
 * Tony's directive: "Just make a copy of egglestonoffice.com and put that
 * up on our wordpress site." Rebuilding the home page to match the actual
 * Wix layout 1:1 (sections + copy + structure), using our extracted assets.
 * Brand-string fix only ("The Eggleston Group" -> "Eggleston Office" per
 * memory rule) — everything else preserved verbatim from the existing site.
 *
 * Wix home structure (5 sections):
 *   1. Hero — sit-stand desk image + tagline + intro
 *   2. Three-pillars — DESIGN / SALES / SERVICE
 *   3. WHO WE ARE — family image + 40-year story
 *   4. LET'S GET STARTED — CTA section
 *   5. CLIENTS — 8 logos
 *
 * Aesthetic discipline: clean, professional, B2B-credible. White bg, near-
 * black text, gold accent. No editorial flourishes; no italic emphasis.
 * Match the visual presence of the existing site that's been working for
 * Tony's customers for years.
 * ========================================================================= */

/* Hero refinements: section overlay text — eyebrow line + lighter overlay */
.hero-image__eyebrow {
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: var(--wp--preset--font-size--caption);
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--wp--preset--color--ink);
  margin: 0 auto var(--wp--preset--spacing--md) auto;
  text-shadow: 0 1px 8px rgba(0, 0, 0, 0.5);
}
.hero-image__overlay {
  background: linear-gradient(180deg, rgba(0,0,0,0.45) 0%, rgba(0,0,0,0.58) 100%);
}
.hero-image__inner {
  max-width: 820px;
  text-align: center;
}
.hero-image__title {
  font-family: var(--wp--preset--font-family--serif-display);
  font-weight: 700;
  font-size: clamp(2.25rem, 1.8rem + 2.5vw, 4rem);
  letter-spacing: -0.02em;
  line-height: 1.06;
  margin: 0 auto var(--wp--preset--spacing--md) auto;
}

/* --- Section 2: three-pillars (DESIGN / SALES / SERVICE) --- */
.three-pillars {
  background: var(--wp--preset--color--paper);
  padding: var(--wp--preset--spacing--3xl) var(--wp--preset--spacing--md);
}
.three-pillars__inner {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: var(--wp--preset--spacing--xl);
  align-items: start;
}
.three-pillars__item {
  text-align: center;
  padding: var(--wp--preset--spacing--md);
  position: relative;
}
.three-pillars__item::before {
  content: "";
  display: block;
  width: 48px;
  height: 4px;
  background: var(--wp--preset--color--ink);
  margin: 0 auto var(--wp--preset--spacing--md) auto;
}
.three-pillars__title {
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--heading-2);
  font-weight: 700;
  letter-spacing: 0.02em;
  color: var(--wp--preset--color--graphite);
  margin: 0 0 var(--wp--preset--spacing--md) 0;
  text-transform: uppercase;
}
.three-pillars__body {
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: var(--wp--preset--font-size--body-md);
  line-height: 1.6;
  color: var(--wp--preset--color--slate);
  margin: 0 auto var(--wp--preset--spacing--md) auto;
  max-width: 360px;
}
.three-pillars__link {
  display: inline-block;
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: var(--wp--preset--font-size--body-sm);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--wp--preset--color--graphite);
  text-decoration: none;
  border-bottom: 2px solid var(--wp--preset--color--ink);
  padding-bottom: 0.25rem;
  position: relative;
  padding-right: 22px;
}
.three-pillars__link::after {
  content: "→";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  color: var(--wp--preset--color--ink-deep);
  transition: transform 220ms cubic-bezier(0.2, 0.7, 0.2, 1);
}
.three-pillars__link:hover::after,
.three-pillars__link:focus::after {
  transform: translateY(-50%) translateX(6px);
}

/* --- Section 3: WHO WE ARE --- */
.who-we-are {
  background: var(--wp--preset--color--paper-shade);
  padding: var(--wp--preset--spacing--3xl) var(--wp--preset--spacing--md);
}
.who-we-are__inner {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--wp--preset--spacing--xl);
  align-items: center;
}
@media (min-width: 900px) {
  .who-we-are__inner {
    grid-template-columns: 5fr 6fr;
    gap: var(--wp--preset--spacing--2xl);
  }
}
.who-we-are__image {
  width: 100%;
  border-radius: 1px;
  overflow: hidden;
  position: relative;
  aspect-ratio: 4 / 3;
  background: var(--wp--preset--color--carbon);
}
.who-we-are__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.who-we-are__eyebrow {
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: var(--wp--preset--font-size--caption);
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--wp--preset--color--ink-deep);
  margin: 0 0 var(--wp--preset--spacing--sm) 0;
  position: relative;
  padding-left: 32px;
}
.who-we-are__eyebrow::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 24px;
  height: 2px;
  background: var(--wp--preset--color--ink);
}
.who-we-are__title {
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: clamp(1.625rem, 1.4rem + 1vw, 2.25rem);
  font-weight: 700;
  letter-spacing: -0.018em;
  color: var(--wp--preset--color--graphite);
  line-height: 1.15;
  margin: 0 0 var(--wp--preset--spacing--md) 0;
}
.who-we-are__body {
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: var(--wp--preset--font-size--body-md);
  line-height: 1.65;
  color: var(--wp--preset--color--slate);
  margin: 0 0 var(--wp--preset--spacing--sm) 0;
  max-width: 600px;
}
.who-we-are__copy .btn {
  margin-top: var(--wp--preset--spacing--md);
}

/* --- Section 4: LET'S GET STARTED --- */
.lets-get-started {
  background: var(--wp--preset--color--carbon);
  color: #ffffff;
  padding: var(--wp--preset--spacing--3xl) var(--wp--preset--spacing--md);
  border-top: 4px solid var(--wp--preset--color--ink);
  text-align: center;
}
.lets-get-started__inner {
  max-width: 800px;
  margin: 0 auto;
}
.lets-get-started__title {
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: clamp(1.875rem, 1.5rem + 1.5vw, 3rem);
  font-weight: 700;
  color: #ffffff;
  letter-spacing: 0.04em;
  margin: 0 0 var(--wp--preset--spacing--md) 0;
}
.lets-get-started__body {
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: var(--wp--preset--font-size--body-lg);
  color: rgba(255, 255, 255, 0.88);
  line-height: 1.5;
  margin: 0 auto var(--wp--preset--spacing--lg) auto;
  max-width: 540px;
}
.lets-get-started__ctas {
  display: flex;
  gap: var(--wp--preset--spacing--sm);
  flex-wrap: wrap;
  justify-content: center;
}
.lets-get-started__ctas .btn--ghost {
  color: #ffffff;
  border-color: #ffffff;
}
.lets-get-started__ctas .btn--ghost:hover,
.lets-get-started__ctas .btn--ghost:focus {
  background: var(--wp--preset--color--ink);
  color: var(--wp--preset--color--graphite);
  border-color: var(--wp--preset--color--ink);
}

/* --- Section 5: CLIENTS --- */
.clients-row {
  background: var(--wp--preset--color--paper);
  padding: var(--wp--preset--spacing--3xl) var(--wp--preset--spacing--md);
}
.clients-row__heading {
  text-align: center;
  font-family: var(--wp--preset--font-family--serif-display);
  font-size: var(--wp--preset--font-size--heading-2);
  font-weight: 700;
  color: var(--wp--preset--color--graphite);
  letter-spacing: 0.04em;
  text-transform: uppercase;
  margin: 0 0 var(--wp--preset--spacing--xl) 0;
  position: relative;
}
.clients-row__heading::before {
  content: "";
  display: block;
  width: 48px;
  height: 4px;
  background: var(--wp--preset--color--ink);
  margin: 0 auto var(--wp--preset--spacing--md) auto;
}
.clients-row__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--wp--preset--spacing--xl);
  max-width: 1200px;
  margin: 0 auto;
  align-items: center;
  justify-items: center;
}
@media (min-width: 600px) {
  .clients-row__grid {
    grid-template-columns: repeat(4, 1fr);
  }
}
.clients-row__logo {
  max-width: 160px;
  max-height: 90px;
  width: auto;
  height: auto;
  filter: grayscale(100%) contrast(1.05);
  opacity: 0.7;
  transition: filter 200ms ease, opacity 200ms ease;
}
.clients-row__logo:hover {
  filter: grayscale(0%);
  opacity: 1;
}

/* Hide the now-unused home page sections so they don't show below the
 * Wix-mirror layout when the home content is replaced. (Kept the CSS for
 * possible reuse on other pages.)
 *   .home-pillars / .home-pillars__grid / .home-pillar
 *   .home-trust
 *   .home-visit-us / .visit-us-grid / .visit-us-card
 *   .home-cta
 *   .category-carousel
 *   .client-logos-row (the older one — replaced by .clients-row)
 *   .trust-strip (Wix doesn't have one)
 *
 * These are DOM-conditional — present only if the page references them.
 * Replacing home content removes the markup; CSS rules don't fire without
 * markup. No CSS hide-rules needed.
 */

/* === NAV REFINEMENT 2026-05-01 === */
.site-header__nav,
.site-header__nav a,
.site-header__nav ul,
.site-header__nav ul li {
  text-transform: none !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  font-size: 0.8125rem !important;
  white-space: nowrap !important;
  align-items: center !important;
  white-space: nowrap !important;
  align-items: center !important;
}
.site-header__nav a {
  color: #1F3A34 !important;
}
.site-header__nav a:hover,
.site-header__nav a:focus {
  color: #000 !important;
  border-bottom-color: #FFCC00 !important;
}
/* end nav refinement */


/* === HOMEPAGE REFINEMENTS 2026-05-01 === */

/* Three-pillars: align links to bottom of each card (regardless of body length) */
.three-pillars__inner {
  align-items: stretch !important;
}
.three-pillars__item {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}
.three-pillars__body {
  flex: 1 1 auto !important;
}
.three-pillars__link {
  margin-top: auto !important;
  align-self: center !important;
  white-space: nowrap !important;
}

/* Who-We-Are: tighten title + add gap between photo and text */
.who-we-are__title {
  font-size: clamp(1.5rem, 2.4vw, 2rem) !important;
  line-height: 1.25 !important;
  margin-bottom: 1.25rem !important;
}
.who-we-are__inner {
  gap: 3rem !important;
  align-items: center !important;
}
.who-we-are__image {
  flex: 0 0 auto !important;
}
.who-we-are__image img {
  border-radius: 8px !important;
}

/* end homepage refinements */

/* === WHO-WE-ARE HIERARCHY 2026-05-01 === */

/* Breathing room from the pillars section above */
.who-we-are {
  padding-top: 5rem !important;
  padding-bottom: 4rem !important;
}

/* Make WHO WE ARE the prominent section title */
.who-we-are__eyebrow {
  font-family: var(--wp--preset--font-family--serif-display, var(--wp--preset--font-family--serif-body)) !important;
  font-size: clamp(1.5rem, 2.4vw, 1.875rem) !important;
  font-weight: 600 !important;
  letter-spacing: 0.18em !important;
  color: var(--wp--preset--color--ink, #1F3A34) !important;
  margin-bottom: 1.25rem !important;
  text-transform: uppercase !important;
}

/* Demote "A 40-year..." to descriptive subtitle */
.who-we-are__title {
  font-size: clamp(1.125rem, 1.6vw, 1.375rem) !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
  margin-bottom: 1.5rem !important;
  color: var(--wp--preset--color--graphite, #444) !important;
}

/* end who-we-are hierarchy */

/* === WHO-WE-ARE HEADER 2026-05-01 === */
.who-we-are__header {
  text-align: center !important;
  max-width: 720px !important;
  margin: 0 auto 3rem !important;
  padding: 0 1rem !important;
}
.who-we-are__header .who-we-are__eyebrow,
.who-we-are__header .who-we-are__title {
  text-align: center !important;
}
.who-we-are__header .who-we-are__title {
  margin-top: 0 !important;
}
/* end who-we-are header */

/* === WHO-WE-ARE FINAL TWEAKS 2026-05-01 === */
/* Force photo + copy columns to center vertically against each other */
.who-we-are__inner {
  display: flex !important;
  align-items: center !important;
  gap: 3rem !important;
}
.who-we-are__image,
.who-we-are__copy {
  align-self: center !important;
}

/* Center the "More about" button under the paragraphs */
.who-we-are__copy .btn {
  display: block !important;
  width: max-content !important;
  margin: 1.5rem auto 0 !important;
}
/* end wwa final tweaks */


/* === WWA SIZING 2026-05-01 === */
.who-we-are {
  padding-left: 1.5rem !important;
  padding-right: 1.5rem !important;
}
.who-we-are__inner {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 3rem !important;
  align-items: center !important;
  justify-items: center !important;
  max-width: 1100px !important;
  margin: 0 auto !important;
}
.who-we-are__image {
  width: 100% !important;
  max-width: 480px !important;
  align-self: center !important;
}
.who-we-are__image img {
  width: 100% !important;
  height: auto !important;
  display: block !important;
  border-radius: 8px !important;
}
.who-we-are__copy {
  width: 100% !important;
  max-width: 540px !important;
  align-self: center !important;
}
/* end wwa sizing */

/* === WWA CTA ROW 2026-05-01 === */
.who-we-are__cta {
  text-align: center !important;
  margin: 2.5rem auto 0 !important;
  max-width: 1100px !important;
}
.who-we-are__cta .btn {
  display: inline-block !important;
  margin: 0 !important;
}
/* end wwa cta row */

/* === LGS + CLIENTS COLOR 2026-05-01 === */

/* Let's Get Started — text was rendering near-invisible on light bg */
.lets-get-started__title {
  color: #1F3A34 !important;
  font-weight: 600 !important;
  letter-spacing: 0.1em !important;
}
.lets-get-started__body {
  color: #444 !important;
}

/* Clients row — drop the grayscale filter, give logos full color with hover lift */
.clients-row__heading {
  color: #1F3A34 !important;
}
.clients-row__logo {
  filter: none !important;
  opacity: 1 !important;
  transition: transform 200ms ease, filter 200ms ease !important;
}
.clients-row__logo:hover,
.clients-row__logo:focus {
  transform: translateY(-3px) scale(1.04) !important;
  filter: drop-shadow(0 6px 14px rgba(31, 58, 52, 0.18)) !important;
}

/* end lgs+clients color */

/* === FOOTER + LGS CONTRAST 2026-05-01 === */

/* Force LGS body to dark Ink (high specificity) */
section.lets-get-started .lets-get-started__body,
.lets-get-started p.lets-get-started__body {
  color: #1F3A34 !important;
  font-weight: 500 !important;
}

/* Footer — dark background, gold headings, light links, gold hover */
.site-footer,
footer.site-footer,
.wp-site-blocks footer {
  background: #1F3A34 !important;
  color: #FFFFFF !important;
  padding: 3rem 1.5rem 2rem !important;
}
.site-footer__inner {
  max-width: 1200px !important;
  margin: 0 auto !important;
}
.site-footer__cols {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 2.5rem !important;
}
@media (max-width: 768px) {
  .site-footer__cols { grid-template-columns: repeat(2, 1fr) !important; }
}
.site-footer__heading {
  color: #FFCC00 !important;
  font-size: 0.9375rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  margin: 0 0 0.875rem !important;
}
.site-footer__list {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
.site-footer__list li {
  margin: 0 0 0.5rem !important;
}
.site-footer__list a {
  color: rgba(255, 255, 255, 0.88) !important;
  text-decoration: none !important;
  transition: color 150ms ease !important;
  font-size: 0.9375rem !important;
}
.site-footer__list a:hover,
.site-footer__list a:focus {
  color: #FFCC00 !important;
}
.site-footer__divider {
  border: 0 !important;
  border-top: 1px solid rgba(255, 255, 255, 0.18) !important;
  margin: 2.5rem 0 1.25rem !important;
}
/* end footer+lgs contrast */

/* === LGS BUTTONS + SPACING 2026-05-01 === */

/* LGS buttons were styled for a dark bg — restyle for the light cream bg */
.lets-get-started__ctas .btn--primary,
section.lets-get-started .btn--primary {
  background: #1F3A34 !important;
  color: #FFFFFF !important;
  border: 2px solid #1F3A34 !important;
  text-decoration: none !important;
}
.lets-get-started__ctas .btn--primary:hover,
.lets-get-started__ctas .btn--primary:focus {
  background: #FFCC00 !important;
  color: #1F3A34 !important;
  border-color: #FFCC00 !important;
}

.lets-get-started__ctas .btn--ghost,
section.lets-get-started .btn--ghost {
  background: transparent !important;
  color: #1F3A34 !important;
  border: 2px solid #1F3A34 !important;
  text-decoration: none !important;
}
.lets-get-started__ctas .btn--ghost:hover,
.lets-get-started__ctas .btn--ghost:focus {
  background: #1F3A34 !important;
  color: #FFFFFF !important;
}

/* Space between client logos and the footer */
.clients-row {
  padding-bottom: 4rem !important;
}
.site-footer,
footer.site-footer,
.wp-site-blocks footer {
  margin-top: 2rem !important;
}

/* end lgs buttons + spacing */

/* === FOOTER TIGHTEN 2026-05-01 === */
.site-footer__list li {
  margin: 0 0 0.3125rem !important;
}
.site-footer__list a {
  font-size: 0.875rem !important;
  line-height: 1.55 !important;
}
.site-footer__heading {
  margin-bottom: 0.625rem !important;
}
.site-footer__col {
  /* let the column with 11 items breathe vertically without pushing others */
  align-self: start !important;
}
/* end footer tighten */

/* === PRODUCT-PAGE 2026-05-01 === */
.product-page-hero {
  background: var(--wp--preset--color--paper, #FFFFFF);
  padding: 4rem 1.5rem 2rem;
  text-align: center;
}
.product-page-hero__inner {
  max-width: 800px;
  margin: 0 auto;
}
.product-page-hero__eyebrow {
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: 0.875rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #6B6B6B;
  margin: 0 0 0.75rem;
  font-weight: 600;
}
.product-page-hero__title {
  font-family: var(--wp--preset--font-family--serif-display, var(--wp--preset--font-family--serif-body));
  font-size: clamp(2rem, 4vw, 3rem);
  font-weight: 600;
  color: #1F3A34;
  margin: 0 0 1rem;
  line-height: 1.1;
}
.product-page-hero__lede {
  font-size: 1.125rem;
  line-height: 1.6;
  color: #444;
  margin: 0;
}

.product-gallery {
  max-width: 1100px;
  margin: 3rem auto 0;
  padding: 0 1.5rem;
}
.product-gallery .splide__slide {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  min-height: 400px;
}
.product-gallery .splide__slide img {
  max-width: 100%;
  max-height: 600px;
  height: auto;
  display: block;
  object-fit: contain;
}
.product-gallery .splide__arrow {
  background: #1F3A34 !important;
  opacity: 1 !important;
  height: 3rem !important;
  width: 3rem !important;
}
.product-gallery .splide__arrow svg {
  fill: #FFCC00 !important;
}
.product-gallery .splide__arrow:hover:not(:disabled) {
  background: #FFCC00 !important;
}
.product-gallery .splide__arrow:hover:not(:disabled) svg {
  fill: #1F3A34 !important;
}
.product-gallery .splide__pagination__page {
  background: #C0C0C0 !important;
  width: 10px !important;
  height: 10px !important;
}
.product-gallery .splide__pagination__page.is-active {
  background: #FFCC00 !important;
  transform: scale(1.3) !important;
}

.product-page-cta {
  padding: 4rem 1.5rem;
  text-align: center;
  margin-top: 2rem;
  background: #FFFFFF;
}
.product-page-cta__inner {
  max-width: 700px;
  margin: 0 auto;
}
.product-page-cta__title {
  font-size: clamp(1.5rem, 2.4vw, 2rem);
  color: #1F3A34;
  margin: 0 0 1rem;
  font-weight: 600;
}
.product-page-cta__body {
  font-size: 1.0625rem;
  color: #444;
  margin: 0 0 2rem;
  line-height: 1.6;
}
.product-page-cta__buttons {
  display: flex;
  gap: 1rem;
  justify-content: center;
  flex-wrap: wrap;
}
.product-page-cta__buttons .btn--primary {
  background: #1F3A34 !important;
  color: #fff !important;
  border: 2px solid #1F3A34 !important;
}
.product-page-cta__buttons .btn--primary:hover {
  background: #FFCC00 !important;
  color: #1F3A34 !important;
  border-color: #FFCC00 !important;
}
.product-page-cta__buttons .btn--ghost {
  background: transparent !important;
  color: #1F3A34 !important;
  border: 2px solid #1F3A34 !important;
}
.product-page-cta__buttons .btn--ghost:hover {
  background: #1F3A34 !important;
  color: #fff !important;
}
/* end product-page */

/* === OUR-WORK GALLERY 2026-05-01 === */
/* Install photos are larger and more horizontal — give the slide area more height */
.our-work-gallery .splide__slide {
  min-height: 560px !important;
  background: #FFFFFF !important;
}
.our-work-gallery .splide__slide img {
  max-height: 720px !important;
}
@media (max-width: 768px) {
  .our-work-gallery .splide__slide { min-height: 320px !important; }
  .our-work-gallery .splide__slide img { max-height: 380px !important; }
}
/* end our-work gallery */

/* === WHAT-WE-DO PAGES 2026-05-01 === */
.wwd-page {
  padding: 4rem 1.5rem;
  background: #FFFFFF;
}
.wwd-page__hero {
  text-align: center;
  max-width: 800px;
  margin: 0 auto 3rem;
}
.wwd-page__eyebrow {
  font-family: var(--wp--preset--font-family--sans-body);
  font-size: 0.875rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #6B6B6B;
  margin: 0 0 0.75rem;
  font-weight: 600;
}
.wwd-page__title {
  font-family: var(--wp--preset--font-family--serif-display, var(--wp--preset--font-family--serif-body));
  font-size: clamp(1.875rem, 3.5vw, 2.5rem);
  font-weight: 600;
  color: #1F3A34;
  line-height: 1.15;
  margin: 0;
}
.wwd-page__inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3rem;
  align-items: center;
  max-width: 1100px;
  margin: 0 auto;
}
.wwd-page__image {
  width: 100%;
}
.wwd-page__image img {
  width: 100%;
  height: auto;
  border-radius: 8px;
  display: block;
}
.wwd-page__copy {
  width: 100%;
}
.wwd-page__lede {
  font-size: 1.0625rem;
  line-height: 1.7;
  color: #333;
  margin: 0 0 2rem;
}
.wwd-page__ctas {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
}
.wwd-page__ctas .btn--primary {
  background: #1F3A34 !important;
  color: #fff !important;
  border: 2px solid #1F3A34 !important;
}
.wwd-page__ctas .btn--primary:hover {
  background: #FFCC00 !important;
  color: #1F3A34 !important;
  border-color: #FFCC00 !important;
}
.wwd-page__ctas .btn--ghost {
  background: transparent !important;
  color: #1F3A34 !important;
  border: 2px solid #1F3A34 !important;
}
.wwd-page__ctas .btn--ghost:hover {
  background: #1F3A34 !important;
  color: #fff !important;
}
@media (max-width: 768px) {
  .wwd-page__inner { grid-template-columns: 1fr; }
}
/* end what-we-do */

/* === GENERIC PAGE BASELINE 2026-05-01 === */
/* Apply consistent typography to ALL pages so older content from previous build inherits the look */
.site-main h1 {
  font-family: var(--wp--preset--font-family--serif-display, var(--wp--preset--font-family--serif-body));
  color: #1F3A34;
}
.site-main h2 {
  color: #1F3A34;
}
.site-main h3 {
  color: #1F3A34;
}
.site-main a:not(.btn) {
  color: #1F3A34;
}
.site-main a:not(.btn):hover {
  color: #000;
}
/* Make any free-floating .btn--primary use brand colors universally */
.site-main .btn--primary {
  background: #1F3A34;
  color: #fff;
  border: 2px solid #1F3A34;
}
.site-main .btn--primary:hover {
  background: #FFCC00;
  color: #1F3A34;
  border-color: #FFCC00;
}
.site-main .btn--ghost {
  background: transparent;
  color: #1F3A34;
  border: 2px solid #1F3A34;
}
.site-main .btn--ghost:hover {
  background: #1F3A34;
  color: #fff;
}
/* end generic page baseline */

/* === WP-BLOCK BUTTON FIX 2026-05-01 === */
/* Gutenberg/Kadence native button blocks (used on 404, etc.) need brand colors with visible text */
.wp-block-button .wp-block-button__link,
.wp-block-button .wp-element-button,
.site-main a.wp-block-button__link,
.site-main a.wp-element-button {
  color: #FFFFFF !important;
  text-decoration: none !important;
}
.wp-block-button.is-style-fill .wp-block-button__link,
.wp-block-button:not(.is-style-outline) .wp-block-button__link {
  background: #1F3A34 !important;
  color: #FFFFFF !important;
  border: 2px solid #1F3A34 !important;
  padding: 0.75rem 1.5rem !important;
}
.wp-block-button.is-style-fill .wp-block-button__link:hover,
.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover {
  background: #FFCC00 !important;
  color: #1F3A34 !important;
  border-color: #FFCC00 !important;
}
.wp-block-button.is-style-outline .wp-block-button__link {
  background: transparent !important;
  color: #1F3A34 !important;
  border: 2px solid #1F3A34 !important;
  padding: 0.75rem 1.5rem !important;
}
.wp-block-button.is-style-outline .wp-block-button__link:hover {
  background: #1F3A34 !important;
  color: #FFFFFF !important;
}
/* end wp-block button fix */

/* === BRAND BODY 2026-05-01 === */
.brand-body {
  padding: 4rem 1.5rem 2rem;
  background: #fff;
}
.brand-body__inner {
  max-width: 800px;
  margin: 0 auto;
}
.brand-body__inner h2 {
  font-family: var(--wp--preset--font-family--serif-display, var(--wp--preset--font-family--serif-body));
  font-size: 1.5rem;
  color: #1F3A34;
  margin: 2.5rem 0 0.875rem;
}
.brand-body__inner h2:first-child { margin-top: 0; }
.brand-body__inner p {
  font-size: 1.0625rem;
  line-height: 1.7;
  color: #333;
  margin: 0 0 1rem;
}
.brand-body__models,
.brand-body__process {
  margin: 0 0 1.5rem 1.5rem;
  padding: 0;
  font-size: 1.0625rem;
  line-height: 1.7;
}
.brand-body__models li,
.brand-body__process li {
  margin-bottom: 0.625rem;
  color: #333;
}
.brand-body__note {
  font-size: 0.9375rem;
  color: #555;
  border-left: 3px solid #FFCC00;
  padding-left: 1rem;
  margin-top: 2rem;
}
/* end brand body */

/* === LINES-GRID 2026-05-01 === */
.lines-grid {
  padding: 2rem 1.5rem 4rem;
  background: #fff;
}
.lines-grid__inner {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.75rem;
}
@media (max-width: 980px) {
  .lines-grid__inner { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
  .lines-grid__inner { grid-template-columns: 1fr; }
}
.line-card {
  background: #FFFFFF;
  border-radius: 10px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  box-shadow: 0 2px 6px rgba(31, 58, 52, 0.05);
  transition: transform 200ms ease, box-shadow 200ms ease;
}
.line-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 18px rgba(31, 58, 52, 0.10);
}
.line-card img {
  width: 100%;
  height: 220px;
  object-fit: cover;
  display: block;
}
.line-card__name {
  font-family: var(--wp--preset--font-family--serif-display, var(--wp--preset--font-family--serif-body));
  font-size: 1.375rem;
  color: #1F3A34;
  margin: 1.25rem 1.25rem 0.5rem;
  font-weight: 600;
}
.line-card__desc {
  font-size: 0.9375rem;
  color: #444;
  line-height: 1.55;
  margin: 0 1.25rem 1.25rem;
}
/* end lines-grid */

/* === NAV DROPDOWN 2026-05-01 === */
.site-header__nav ul li {
  position: relative;
}
.site-header__nav .has-submenu > a {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
}
.submenu-caret {
  font-size: 0.7rem;
  line-height: 1;
  transition: transform 200ms ease;
}
.has-submenu:hover .submenu-caret,
.has-submenu:focus-within .submenu-caret {
  transform: rotate(180deg);
}
.site-header__nav .submenu {
  position: absolute !important;
  top: 100% !important;
  left: 0 !important;
  background: #FFFFFF !important;
  border: 1px solid rgba(31, 58, 52, 0.08) !important;
  border-radius: 6px !important;
  box-shadow: 0 12px 32px rgba(31, 58, 52, 0.12) !important;
  padding: 0.5rem 0 !important;
  margin: 0.5rem 0 0 !important;
  min-width: 240px !important;
  list-style: none !important;
  display: none !important;
  flex-direction: column !important;
  gap: 0 !important;
  z-index: 1000 !important;
}
.has-submenu:hover > .submenu,
.has-submenu:focus-within > .submenu {
  display: flex !important;
}
.site-header__nav .submenu li {
  margin: 0 !important;
  width: 100% !important;
}
.site-header__nav .submenu a {
  display: block !important;
  padding: 0.5rem 1.125rem !important;
  font-size: 0.875rem !important;
  color: #1F3A34 !important;
  white-space: nowrap !important;
  border-bottom: none !important;
  text-decoration: none !important;
}
.site-header__nav .submenu a:hover,
.site-header__nav .submenu a:focus {
  background: #FFFFFF !important;
  color: #1F3A34 !important;
  border-bottom: none !important;
}
/* Bridge gap so cursor moving down doesn't close menu prematurely */
.has-submenu::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  height: 0.75rem;
  display: none;
}
.has-submenu:hover::after,
.has-submenu:focus-within::after {
  display: block;
}
/* end nav dropdown */
/* === EO INVENTORY GRID + DETAIL 2026-05-01 === */

/* Grid section (used on /used-furniture/{cat}/ pages) */
.eo-inv-grid {
  padding: 3rem 1.5rem 4rem;
  background: #fff;
}
.eo-inv-grid__inner {
  max-width: 1200px;
  margin: 0 auto;
}
.eo-inv-grid__head {
  text-align: center;
  margin-bottom: 2rem;
}
.eo-inv-grid__title {
  font-family: var(--wp--preset--font-family--serif-display, Georgia, serif);
  font-size: 2rem;
  color: #1F3A34;
  margin: 0 0 0.5rem;
  font-weight: 600;
}
.eo-inv-grid__sub {
  color: #555;
  font-size: 1rem;
  margin: 0;
}

.eo-inv-cards {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.5rem;
}
@media (max-width: 1100px) { .eo-inv-cards { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 820px)  { .eo-inv-cards { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 520px)  { .eo-inv-cards { grid-template-columns: 1fr; } }

.eo-inv-card {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid rgba(31, 58, 52, 0.10);
  border-radius: 10px;
  overflow: hidden;
  text-decoration: none !important;
  color: inherit !important;
  transition: transform 200ms ease, box-shadow 200ms ease, border-color 200ms ease;
}
.eo-inv-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 10px 24px rgba(31, 58, 52, 0.10);
  border-color: rgba(31, 58, 52, 0.25);
}
.eo-inv-card__media {
  aspect-ratio: 4 / 3;
  background: #FFFFFF;
  overflow: hidden;
}
.eo-inv-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.eo-inv-card__body {
  padding: 1rem 1.125rem 1.25rem;
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  flex: 1;
}
.eo-inv-card__title {
  font-family: var(--wp--preset--font-family--serif-display, Georgia, serif);
  font-size: 1.075rem;
  color: #1F3A34;
  font-weight: 600;
  margin: 0;
  line-height: 1.3;
}
.eo-inv-card__brand {
  font-size: 0.8125rem;
  color: #666;
  margin: 0;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.eo-inv-card__stock {
  font-size: 0.8125rem;
  color: #1F3A34;
  margin: 0;
  font-weight: 500;
}
.eo-inv-card__cta {
  margin-top: auto;
  padding-top: 0.5rem;
  font-size: 0.875rem;
  color: #C4922D;
  font-weight: 600;
}

.eo-inv-empty {
  padding: 4rem 1.5rem;
  text-align: center;
  color: #666;
}

/* === Single inventory item detail page === */
.eo-inv-single {
  padding: 2rem 1.5rem 4rem;
  background: #fff;
}
.eo-inv-single__inner {
  max-width: 1200px;
  margin: 0 auto;
}
.eo-inv-single__crumbs {
  font-size: 0.875rem;
  color: #666;
  margin-bottom: 1.5rem;
}
.eo-inv-single__crumbs a {
  color: #1F3A34;
  text-decoration: none;
}
.eo-inv-single__crumbs a:hover {
  color: #C4922D;
}
.eo-inv-single__crumbs span {
  margin: 0 0.5rem;
  color: #aaa;
}
.eo-inv-single__grid {
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 3rem;
  align-items: start;
}
@media (max-width: 880px) {
  .eo-inv-single__grid { grid-template-columns: 1fr; gap: 2rem; }
}
.eo-inv-single__media {
  background: #FFFFFF;
  border-radius: 10px;
  overflow: hidden;
  min-height: 320px;
}
.eo-inv-gallery .splide__slide img {
  width: 100%;
  height: 100%;
  max-height: 560px;
  object-fit: contain;
  display: block;
  background: #fff;
}
.eo-inv-single__nomedia {
  padding: 4rem;
  text-align: center;
  color: #888;
}
.eo-inv-single__copy {
  padding: 0.5rem 0;
}
.eo-inv-single__eyebrow {
  font-size: 0.8125rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #C4922D;
  margin: 0 0 0.5rem;
  font-weight: 600;
}
.eo-inv-single__title {
  font-family: var(--wp--preset--font-family--serif-display, Georgia, serif);
  font-size: 2.25rem;
  color: #1F3A34;
  font-weight: 600;
  line-height: 1.15;
  margin: 0 0 1.25rem;
}
.eo-inv-single__facts {
  list-style: none;
  padding: 0;
  margin: 0 0 1.75rem;
  border-top: 1px solid rgba(31, 58, 52, 0.12);
}
.eo-inv-single__facts li {
  padding: 0.625rem 0;
  border-bottom: 1px solid rgba(31, 58, 52, 0.12);
  font-size: 0.9375rem;
  color: #444;
}
.eo-inv-single__facts strong {
  color: #1F3A34;
  display: inline-block;
  min-width: 6rem;
}
.eo-inv-single__cta-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-bottom: 1rem;
}
.eo-inv-single__desc {
  margin-top: 3rem;
  padding-top: 2rem;
  border-top: 1px solid rgba(31, 58, 52, 0.12);
  max-width: 820px;
}
.eo-inv-single__desc h2 {
  font-family: var(--wp--preset--font-family--serif-display, Georgia, serif);
  font-size: 1.5rem;
  color: #1F3A34;
  margin: 0 0 1rem;
  font-weight: 600;
}
.eo-inv-single__desc p {
  font-size: 1rem;
  line-height: 1.65;
  color: #333;
  margin: 0 0 1rem;
}
.eo-inv-single__more {
  margin-top: 3rem;
  text-align: center;
}
/* end eo inventory */

/* === EO INVENTORY CATEGORY CARDS 2026-05-01 === */
.eo-inv-cats {
  padding: 2.5rem 1.5rem 3rem;
  background: #fff;
}
.eo-inv-cats__inner {
  max-width: 1200px;
  margin: 0 auto;
}
.eo-inv-cats__title {
  font-family: var(--wp--preset--font-family--serif-display, Georgia, serif);
  font-size: 2rem;
  color: #1F3A34;
  margin: 0 0 0.5rem;
  font-weight: 600;
  text-align: center;
}
.eo-inv-cats__sub {
  text-align: center;
  color: #555;
  margin: 0 0 2rem;
  font-size: 1rem;
}
.eo-inv-cats__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.5rem;
}
@media (max-width: 1100px) { .eo-inv-cats__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px)  { .eo-inv-cats__grid { grid-template-columns: 1fr; } }

.eo-inv-cat-card {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid rgba(31, 58, 52, 0.10);
  border-radius: 12px;
  overflow: hidden;
  text-decoration: none !important;
  color: inherit !important;
  transition: transform 200ms ease, box-shadow 200ms ease, border-color 200ms ease;
}
.eo-inv-cat-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 12px 28px rgba(31, 58, 52, 0.12);
  border-color: rgba(196, 146, 45, 0.4);
}
.eo-inv-cat-card__media {
  aspect-ratio: 4 / 3;
  background: #FFFFFF;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.eo-inv-cat-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.eo-inv-cat-card__media.is-empty {
  background: linear-gradient(135deg, #1F3A34 0%, #2E5249 100%);
}
.eo-inv-cat-card__placeholder {
  color: #C4922D;
  font-family: var(--wp--preset--font-family--serif-display, Georgia, serif);
  font-size: 1.75rem;
  font-weight: 600;
  letter-spacing: 0.06em;
}
.eo-inv-cat-card__body {
  padding: 1.125rem 1.25rem 1.25rem;
}
.eo-inv-cat-card__label {
  font-family: var(--wp--preset--font-family--serif-display, Georgia, serif);
  font-size: 1.25rem;
  color: #1F3A34;
  font-weight: 600;
  margin: 0 0 0.375rem;
  line-height: 1.25;
}
.eo-inv-cat-card__sub {
  font-size: 0.875rem;
  color: #555;
  margin: 0 0 0.625rem;
  line-height: 1.45;
}
.eo-inv-cat-card__count {
  margin: 0;
  color: #C4922D;
  font-weight: 600;
  font-size: 0.9375rem;
}
/* end eo inventory categories */

/* === EO INVENTORY CATEGORY CARDS 2026-05-01 === */
.eo-inv-cats {
  padding: 2.5rem 1.5rem 3rem;
  background: #fff;
}
.eo-inv-cats__inner {
  max-width: 1200px;
  margin: 0 auto;
}
.eo-inv-cats__title {
  font-family: var(--wp--preset--font-family--serif-display, Georgia, serif);
  font-size: 2rem;
  color: #1F3A34;
  margin: 0 0 0.5rem;
  font-weight: 600;
  text-align: center;
}
.eo-inv-cats__sub {
  text-align: center;
  color: #555;
  margin: 0 0 2rem;
  font-size: 1rem;
}
.eo-inv-cats__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.5rem;
}
@media (max-width: 1100px) { .eo-inv-cats__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px)  { .eo-inv-cats__grid { grid-template-columns: 1fr; } }

.eo-inv-cat-card {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid rgba(31, 58, 52, 0.10);
  border-radius: 12px;
  overflow: hidden;
  text-decoration: none !important;
  color: inherit !important;
  transition: transform 200ms ease, box-shadow 200ms ease, border-color 200ms ease;
}
.eo-inv-cat-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 12px 28px rgba(31, 58, 52, 0.12);
  border-color: rgba(196, 146, 45, 0.4);
}
.eo-inv-cat-card__media {
  aspect-ratio: 4 / 3;
  background: #FFFFFF;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.eo-inv-cat-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.eo-inv-cat-card__media.is-empty {
  background: linear-gradient(135deg, #1F3A34 0%, #2E5249 100%);
}
.eo-inv-cat-card__placeholder {
  color: #C4922D;
  font-family: var(--wp--preset--font-family--serif-display, Georgia, serif);
  font-size: 1.75rem;
  font-weight: 600;
  letter-spacing: 0.06em;
}
.eo-inv-cat-card__body {
  padding: 1.125rem 1.25rem 1.25rem;
}
.eo-inv-cat-card__label {
  font-family: var(--wp--preset--font-family--serif-display, Georgia, serif);
  font-size: 1.25rem;
  color: #1F3A34;
  font-weight: 600;
  margin: 0 0 0.375rem;
  line-height: 1.25;
}
.eo-inv-cat-card__sub {
  font-size: 0.875rem;
  color: #555;
  margin: 0 0 0.625rem;
  line-height: 1.45;
}
.eo-inv-cat-card__count {
  margin: 0;
  color: #C4922D;
  font-weight: 600;
  font-size: 0.9375rem;
}
/* end eo inventory categories */

/* === EO INVENTORY SUB-CATEGORY TILES 2026-05-01 === */
.eo-inv-subcats {
  padding: 2rem 1.5rem 4rem;
  background: #fff;
}
.eo-inv-subcats__inner {
  max-width: 1200px;
  margin: 0 auto;
}
.eo-inv-subcats__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.5rem;
}
@media (max-width: 1100px) { .eo-inv-subcats__grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 820px)  { .eo-inv-subcats__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 520px)  { .eo-inv-subcats__grid { grid-template-columns: 1fr; } }

.eo-inv-subcat-tile {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid rgba(31, 58, 52, 0.10);
  border-radius: 10px;
  overflow: hidden;
  text-decoration: none !important;
  color: inherit !important;
  transition: transform 200ms ease, box-shadow 200ms ease, border-color 200ms ease;
}
.eo-inv-subcat-tile:hover {
  transform: translateY(-3px);
  box-shadow: 0 10px 24px rgba(31, 58, 52, 0.10);
  border-color: rgba(196, 146, 45, 0.4);
}
.eo-inv-subcat-tile__media {
  aspect-ratio: 1 / 1;
  background: #FFFFFF;
  overflow: hidden;
}
.eo-inv-subcat-tile__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.eo-inv-subcat-tile__media.is-empty {
  background: linear-gradient(135deg, #1F3A34 0%, #2E5249 100%);
}
.eo-inv-subcat-tile__label {
  font-family: var(--wp--preset--font-family--serif-display, Georgia, serif);
  font-size: 1.0625rem;
  color: #1F3A34;
  font-weight: 600;
  margin: 0;
  padding: 0.875rem 1rem 1rem;
  line-height: 1.3;
  text-align: center;
}
.eo-inv-subcat-tile__count {
  color: #888;
  font-weight: 500;
  font-size: 0.9rem;
}
/* end eo inventory sub-category tiles */

/* === HEADER UTILITY BAR + MOBILE LOGO + FOOTER ADDRESSES + SKU 2026-05-01 === */

/* Utility bar — explicit dark green bg, white text, gold hover */
.site-header__utility {
  background: #1F3A34 !important;
  color: #ffffff !important;
  padding: 0.4rem 1.5rem !important;
  font-size: 0.875rem !important;
}
.site-header__utility-inner {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 1.5rem;
}
.site-header__utility a,
.site-header__utility a:visited,
.site-header__utility .site-header__phone {
  color: #ffffff !important;
  text-decoration: none !important;
  border-bottom: none !important;
}
.site-header__utility a:hover,
.site-header__utility .site-header__phone:hover {
  color: #C4922D !important;
}

/* Mobile logo — defensive visibility rules */
.eggleston-wordmark {
  display: inline-block !important;
  visibility: visible !important;
}
.eggleston-wordmark img {
  display: block !important;
  visibility: visible !important;
  max-width: 240px;
  height: auto;
}
@media (max-width: 768px) {
  .site-header__main {
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
  }
  .eggleston-wordmark {
    display: inline-block !important;
    flex: 0 0 auto;
  }
  .eggleston-wordmark img {
    max-width: 180px !important;
    height: auto !important;
    display: block !important;
  }
}
@media (max-width: 480px) {
  .eggleston-wordmark img {
    max-width: 150px !important;
  }
}

/* Footer addresses — text-style display, with the warehouse highlighted as the visit-OK location */
.site-footer__addresses li {
  margin-bottom: 1rem !important;
  line-height: 1.55;
  list-style: none;
  font-size: 0.875rem;
}
.site-footer__addresses strong {
  color: #C4922D;
  display: block;
  margin-bottom: 0.25rem;
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-weight: 600;
}
.site-footer__addresses a {
  color: rgba(255, 255, 255, 0.88) !important;
  text-decoration: none !important;
  border-bottom: none !important;
}
.site-footer__addresses a:hover {
  color: #C4922D !important;
}
.site-footer__address--warehouse {
  padding-bottom: 0.75rem;
  border-bottom: 1px solid rgba(196, 146, 45, 0.25);
  margin-bottom: 1rem !important;
}

/* SKU display on inventory cards */
.eo-inv-card__sku {
  font-size: 0.75rem;
  color: #888;
  margin: 0;
  font-family: ui-monospace, "SF Mono", Menlo, monospace;
  letter-spacing: 0.04em;
}
/* end header-fixes */

/* === FOOTER BRAND ROW + TAGLINE 2026-05-01 === */
.site-footer__brand {
  text-align: center;
  padding: 0 0 2rem;
  margin-bottom: 2rem;
  border-bottom: 1px solid rgba(196, 146, 45, 0.2);
}
.site-footer__wordmark {
  display: inline-block;
  margin-bottom: 0.875rem;
}
.site-footer__wordmark img {
  filter: brightness(0) invert(1);
  max-width: 220px;
  height: auto;
  opacity: 0.9;
}
.site-footer__tagline {
  font-family: var(--wp--preset--font-family--serif-display, Georgia, serif);
  font-style: italic;
  font-size: 1.125rem;
  color: #C4922D;
  margin: 0;
  letter-spacing: 0.02em;
  font-weight: 500;
}
@media (max-width: 600px) {
  .site-footer__tagline {
    font-size: 1rem;
  }
}
/* end footer brand */

/* === HEADER UTILITY BAR + MOBILE LOGO + FOOTER ADDRESSES + SKU 2026-05-01 === */

/* Utility bar — explicit dark green bg, white text, gold hover */
.site-header__utility {
  background: #1F3A34 !important;
  color: #ffffff !important;
  padding: 0.4rem 1.5rem !important;
  font-size: 0.875rem !important;
}
.site-header__utility-inner {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1.5rem;
}
.site-header__tagline {
  color: #C4922D !important;
  font-family: var(--wp--preset--font-family--serif-display, Georgia, serif);
  font-style: italic;
  letter-spacing: 0.02em;
  font-size: 0.9rem;
  font-weight: 500;
}
@media (max-width: 600px) {
  .site-header__tagline {
    display: none; /* tight space on mobile — keep phone only */
  }
  .site-header__utility-inner {
    justify-content: flex-end;
  }
}
.site-header__utility a,
.site-header__utility a:visited,
.site-header__utility .site-header__phone {
  color: #ffffff !important;
  text-decoration: none !important;
  border-bottom: none !important;
}
.site-header__utility a:hover,
.site-header__utility .site-header__phone:hover {
  color: #C4922D !important;
}

/* Mobile logo — defensive visibility rules */
.eggleston-wordmark {
  display: inline-block !important;
  visibility: visible !important;
}
.eggleston-wordmark img {
  display: block !important;
  visibility: visible !important;
  max-width: 240px;
  height: auto;
}
@media (max-width: 768px) {
  .site-header__main {
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
  }
  .eggleston-wordmark {
    display: inline-block !important;
    flex: 0 0 auto;
  }
  .eggleston-wordmark img {
    max-width: 180px !important;
    height: auto !important;
    display: block !important;
  }
}
@media (max-width: 480px) {
  .eggleston-wordmark img {
    max-width: 150px !important;
  }
}

/* Footer addresses — text-style display, with the warehouse highlighted as the visit-OK location */
.site-footer__addresses li {
  margin-bottom: 1rem !important;
  line-height: 1.55;
  list-style: none;
  font-size: 0.875rem;
}
.site-footer__addresses strong {
  color: #C4922D;
  display: block;
  margin-bottom: 0.25rem;
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-weight: 600;
}
.site-footer__addresses a {
  color: rgba(255, 255, 255, 0.88) !important;
  text-decoration: none !important;
  border-bottom: none !important;
}
.site-footer__addresses a:hover {
  color: #C4922D !important;
}
.site-footer__address--warehouse {
  padding-bottom: 0.75rem;
  border-bottom: 1px solid rgba(196, 146, 45, 0.25);
  margin-bottom: 1rem !important;
}

/* SKU display on inventory cards */
.eo-inv-card__sku {
  font-size: 0.75rem;
  color: #888;
  margin: 0;
  font-family: ui-monospace, "SF Mono", Menlo, monospace;
  letter-spacing: 0.04em;
}
/* end header-fixes */

/* === MOBILE OVERHAUL 2026-05-02 === */

/* Default: hide hamburger button + checkbox */
.mobile-nav-checkbox,
.mobile-nav-btn {
  display: none !important;
}

/* ============================================
   TABLET + MOBILE (≤ 1023px): hamburger nav
   ============================================ */
@media (max-width: 1023px) {
  /* Header layout: logo on left, hamburger on right */
  .site-header__main {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1.25rem;
    flex-wrap: nowrap !important;
    position: relative;
  }

  /* Hide the desktop "Request a Quote" button on mobile (in nav drawer instead) */
  .site-header__main > .btn--primary {
    display: none !important;
  }

  /* Hamburger button — 44x44 touch target */
  .mobile-nav-btn {
    display: flex !important;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 44px;
    height: 44px;
    padding: 10px;
    cursor: pointer;
    gap: 5px;
    z-index: 1100;
    position: relative;
    background: transparent;
    border: none;
  }
  .mobile-nav-btn span {
    display: block;
    width: 24px;
    height: 2px;
    background: #1F3A34;
    border-radius: 1px;
    transition: transform 200ms ease, opacity 200ms ease;
  }

  /* Slide-in drawer */
  .site-header__nav {
    position: fixed !important;
    top: 0 !important;
    right: -100% !important;
    width: 85% !important;
    max-width: 360px !important;
    height: 100dvh !important;
    background: #fff !important;
    box-shadow: -8px 0 24px rgba(31, 58, 52, 0.15);
    transition: right 280ms ease;
    z-index: 1050;
    padding: 5rem 1.5rem 2rem !important;
    overflow-y: auto;
    margin: 0 !important;
  }

  .mobile-nav-checkbox:checked ~ .site-header__nav {
    right: 0 !important;
  }

  /* Burger morphs into X when open */
  .mobile-nav-checkbox:checked ~ .mobile-nav-btn span:nth-child(1) {
    transform: translateY(7px) rotate(45deg);
  }
  .mobile-nav-checkbox:checked ~ .mobile-nav-btn span:nth-child(2) {
    opacity: 0;
  }
  .mobile-nav-checkbox:checked ~ .mobile-nav-btn span:nth-child(3) {
    transform: translateY(-7px) rotate(-45deg);
  }

  /* Lock body scroll when menu open */
  .mobile-nav-checkbox:checked ~ * { /* limited scope, see body fallback below */ }

  /* Nav list — stack vertically */
  .site-header__nav ul {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    list-style: none;
    padding: 0;
    margin: 0;
    align-items: stretch !important;
  }
  .site-header__nav ul li {
    width: 100% !important;
    border-bottom: 1px solid rgba(31, 58, 52, 0.08);
  }
  .site-header__nav ul li a {
    display: block !important;
    padding: 0.875rem 0 !important;
    font-size: 1rem !important;
    color: #1F3A34 !important;
    font-weight: 500 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
  }
  .site-header__nav ul li a:hover {
    color: #C4922D !important;
  }

  /* Submenu inline-expanded on mobile (no hover-reveal) */
  .site-header__nav .submenu {
    position: static !important;
    box-shadow: none !important;
    border: none !important;
    padding: 0 0 0.5rem 1rem !important;
    margin: 0 !important;
    background: transparent !important;
    display: flex !important;
    flex-direction: column !important;
  }
  .site-header__nav .submenu li {
    border-bottom: none;
  }
  .site-header__nav .submenu a {
    padding: 0.5rem 0 !important;
    font-size: 0.9rem !important;
    color: #444 !important;
  }
  .site-header__nav .has-submenu > a .submenu-caret {
    display: none;
  }
  .has-submenu::after { display: none !important; }

  /* Add a "Request a Quote" item at top of mobile drawer */
  .site-header__nav::before {
    content: 'Request a Quote';
    display: block;
    background: #C4922D;
    color: #fff;
    padding: 0.875rem 1rem;
    border-radius: 6px;
    margin-bottom: 1.25rem;
    text-align: center;
    font-weight: 600;
    cursor: pointer;
  }
  /* Wire up the ::before pseudo to a real link via JS would be cleaner; for now, the user taps the actual nav items */
}

/* ============================================
   PHONE (≤ 767px): tighter typography, stacked sections
   ============================================ */
@media (max-width: 767px) {
  /* HERO */
  .hero-image__inner {
    padding: 1.5rem 1.25rem !important;
  }
  .hero-image__title {
    font-size: 1.875rem !important;
    line-height: 1.15 !important;
  }
  .hero-image__lede {
    font-size: 1rem !important;
    line-height: 1.5 !important;
  }
  .hero-image__eyebrow {
    font-size: 0.75rem !important;
    letter-spacing: 0.06em !important;
  }
  .page-hero__ctas {
    flex-direction: column !important;
    gap: 0.75rem !important;
    width: 100% !important;
  }
  .page-hero__ctas .btn {
    width: 100% !important;
    text-align: center !important;
    box-sizing: border-box;
  }

  /* THREE PILLARS — stack on mobile */
  .three-pillars {
    padding: 2rem 1rem !important;
  }
  .three-pillars__inner {
    grid-template-columns: 1fr !important;
    flex-direction: column !important;
    display: flex !important;
    gap: 1.75rem !important;
  }
  .three-pillars__title {
    font-size: 1.125rem !important;
  }
  .three-pillars__body {
    font-size: 0.9375rem !important;
  }

  /* WHO WE ARE — stack image and copy */
  .who-we-are {
    padding: 2rem 1rem !important;
  }
  .who-we-are__inner {
    grid-template-columns: 1fr !important;
    gap: 1.5rem !important;
  }
  .who-we-are__image,
  .who-we-are__copy {
    max-width: 100% !important;
    width: 100% !important;
  }
  .who-we-are__title {
    font-size: 1.625rem !important;
    line-height: 1.2 !important;
  }
  .who-we-are__body {
    font-size: 1rem !important;
  }

  /* LETS GET STARTED — stack CTA buttons + tighter logos */
  .lets-get-started {
    padding: 2rem 1rem !important;
  }
  .lets-get-started__title {
    font-size: 1.625rem !important;
    line-height: 1.2 !important;
  }
  .lets-get-started__ctas {
    flex-direction: column !important;
    gap: 0.75rem !important;
  }
  .lets-get-started__ctas .btn {
    width: 100% !important;
    text-align: center !important;
    box-sizing: border-box;
  }

  /* PRODUCT-PAGE-HERO + CTA — full-width buttons, tighter typography */
  .product-page-hero {
    padding: 1.75rem 1rem !important;
  }
  .product-page-hero__title {
    font-size: 1.75rem !important;
    line-height: 1.2 !important;
  }
  .product-page-hero__lede {
    font-size: 1rem !important;
  }
  .product-page-cta {
    padding: 2rem 1rem !important;
  }
  .product-page-cta__title {
    font-size: 1.5rem !important;
    line-height: 1.2 !important;
  }
  .product-page-cta__buttons {
    flex-direction: column !important;
    gap: 0.75rem !important;
  }
  .product-page-cta__buttons .btn {
    width: 100% !important;
    box-sizing: border-box;
  }

  /* BRAND BODY — comfortable padding */
  .brand-body {
    padding: 2rem 1rem !important;
  }
  .brand-body__inner {
    padding: 0 !important;
  }
  .brand-body h2 {
    font-size: 1.5rem !important;
    line-height: 1.2 !important;
  }
  .brand-body p {
    font-size: 1rem !important;
  }

  /* WWD-PAGE (services / what-we-do pages) */
  .wwd-page {
    padding: 1.75rem 1rem !important;
  }
  .wwd-page__title {
    font-size: 1.875rem !important;
  }

  /* SITE FOOTER — single column, comfortable spacing */
  .site-footer__cols {
    grid-template-columns: 1fr !important;
    gap: 2rem !important;
  }
  .site-footer__brand {
    padding: 0.5rem 0 1.5rem !important;
  }
  .site-footer__heading {
    font-size: 1rem !important;
  }
  .site-footer__list,
  .site-footer__addresses {
    font-size: 0.9375rem !important;
  }

  /* INVENTORY SINGLE — stack media + copy */
  .eo-inv-single {
    padding: 1.5rem 1rem 3rem !important;
  }
  .eo-inv-single__title {
    font-size: 1.625rem !important;
    line-height: 1.2 !important;
  }
  .eo-inv-single__cta-row {
    flex-direction: column !important;
  }
  .eo-inv-single__cta-row .btn {
    width: 100% !important;
    box-sizing: border-box;
  }

  /* INVENTORY GRID HEADER */
  .eo-inv-grid {
    padding: 2rem 1rem 3rem !important;
  }
  .eo-inv-grid__title {
    font-size: 1.625rem !important;
  }

  /* INVENTORY CATEGORY CARDS — already responsive but title smaller */
  .eo-inv-cats {
    padding: 1.75rem 1rem 2.5rem !important;
  }
  .eo-inv-cats__title {
    font-size: 1.625rem !important;
  }

  /* SUB-CATEGORY TILES */
  .eo-inv-subcats {
    padding: 1.5rem 1rem 3rem !important;
  }

  /* LINES GRID (new furniture line cards) */
  .lines-grid {
    padding: 1.5rem 1rem 3rem !important;
  }
}

/* ============================================
   SMALL PHONE (≤ 480px): even more compact
   ============================================ */
@media (max-width: 480px) {
  .site-header__main {
    padding: 0.5rem 1rem !important;
  }
  .eggleston-wordmark img {
    max-width: 150px !important;
  }
  .hero-image__title {
    font-size: 1.625rem !important;
  }
  .product-page-hero__title,
  .eo-inv-single__title {
    font-size: 1.5rem !important;
  }
  .site-footer__inner {
    padding: 1.5rem 1rem !important;
  }
}
/* end mobile overhaul */

/* === MOBILE PASS 2 FIXES 2026-05-02 === */

/* TAGLINE — restore on mobile; only hide on very narrow screens */
.site-header__tagline {
  display: inline-block !important;
}
@media (max-width: 480px) {
  .site-header__utility {
    padding: 0.4rem 1rem !important;
    font-size: 0.8125rem !important;
  }
  .site-header__utility-inner {
    flex-wrap: wrap !important;
    gap: 0.5rem 1rem !important;
    justify-content: center !important;
  }
  .site-header__tagline {
    font-size: 0.8125rem !important;
    text-align: center !important;
  }
}
@media (max-width: 320px) {
  .site-header__tagline {
    display: none !important;
  }
}

@media (max-width: 767px) {
  /* HERO — image fills section, overlay sits on top correctly */
  .hero-image {
    position: relative !important;
    min-height: 460px !important;
    overflow: hidden !important;
    display: block !important;
  }
  .hero-image > img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    z-index: 0 !important;
  }
  .hero-image__overlay {
    position: absolute !important;
    inset: 0 !important;
    z-index: 2 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: linear-gradient(rgba(0, 0, 0, 0.45) 0%, rgba(0, 0, 0, 0.65) 100%) !important;
  }
  .hero-image__inner {
    padding: 2rem 1.25rem !important;
    width: 100% !important;
    max-width: 100% !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }
  .hero-image__eyebrow {
    color: #ffffff !important;
    margin-bottom: 0.75rem !important;
  }
  .hero-image__title {
    color: #ffffff !important;
    margin-bottom: 1rem !important;
  }
  .hero-image__lede {
    color: #ffffff !important;
    margin-bottom: 1.25rem !important;
    -webkit-line-clamp: unset !important;
    overflow: visible !important;
  }

  /* THREE PILLARS — tighten internal spacing (was wasting ~70px per pillar at top) */
  .three-pillars__item {
    padding: 1.25rem 1rem !important;
  }
  .three-pillars__title {
    margin-top: 0 !important;
    margin-bottom: 0.625rem !important;
  }
  .three-pillars__body {
    margin-top: 0 !important;
    margin-bottom: 1rem !important;
  }

  /* WHO WE ARE — eyebrow letter-spacing too wide for "WHO WE ARE" to fit at narrow widths */
  .who-we-are__eyebrow {
    letter-spacing: 0.05em !important;
    font-size: 0.75rem !important;
    margin-bottom: 0.5rem !important;
  }
  .who-we-are__header {
    text-align: center !important;
    padding: 0 1rem !important;
  }
}
/* end mobile pass 2 */

/* === OUR WORK GALLERY 2026-05-02 === */
.our-work-gallery {
  padding: 1rem 1.5rem 4rem;
  background: #fff;
}
.our-work-gallery__inner {
  max-width: 1400px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-auto-rows: 220px;
  gap: 0.875rem;
}
@media (max-width: 1100px) {
  .our-work-gallery__inner { grid-template-columns: repeat(3, 1fr); grid-auto-rows: 200px; }
}
@media (max-width: 820px) {
  .our-work-gallery__inner { grid-template-columns: repeat(2, 1fr); grid-auto-rows: 180px; gap: 0.5rem; }
}
@media (max-width: 480px) {
  .our-work-gallery__inner { grid-template-columns: 1fr; grid-auto-rows: 240px; }
}

.our-work-tile {
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: 6px;
  background: #FFFFFF;
  cursor: pointer;
  transition: transform 200ms ease, box-shadow 200ms ease;
}
.our-work-tile:hover {
  transform: scale(1.015);
  box-shadow: 0 8px 20px rgba(31, 58, 52, 0.12);
  z-index: 2;
}
.our-work-tile img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 250ms ease;
}
.our-work-tile:hover img {
  transform: scale(1.04);
}

/* Mixed-size tiles: every 7th = wide, every 11th = tall (creates visual rhythm) */
.our-work-tile:nth-child(7n+1) { grid-column: span 2; }
.our-work-tile:nth-child(11n) { grid-row: span 2; }
@media (max-width: 820px) {
  .our-work-tile:nth-child(7n+1),
  .our-work-tile:nth-child(11n) { grid-column: auto; grid-row: auto; }
}
/* end our-work gallery */


/* ==============================================================
   Iconic services grid — Dallas DESK-style centered icon cards
   Scoped to .services-grid-section so other .service-card uses
   (homepage, etc.) are unaffected. Added 2026-05-04.
   ============================================================== */
.services-grid-section .services-grid {
  grid-template-columns: repeat(3, 1fr);
  gap: var(--wp--preset--spacing--xl);
}
@media (max-width: 1023px) {
  .services-grid-section .services-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 639px) {
  .services-grid-section .services-grid {
    grid-template-columns: 1fr;
  }
}
.services-grid-section .service-card {
  align-items: center;
  text-align: center;
  padding: var(--wp--preset--spacing--xl) var(--wp--preset--spacing--lg);
  border: none;
  background: transparent;
}
.services-grid-section .service-card:hover {
  border-color: transparent;
  transform: translateY(-2px);
}
.services-grid-section .service-card__icon {
  width: 96px;
  height: 96px;
  margin: 0 0 var(--wp--preset--spacing--md) 0;
  color: var(--wp--preset--color--ink);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.services-grid-section .service-card__icon svg {
  width: 100%;
  height: 100%;
  stroke: currentColor;
  fill: none;
  stroke-width: 1.5;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: transform 200ms ease;
}
.services-grid-section .service-card:hover .service-card__icon svg {
  transform: scale(1.05);
}
.services-grid-section .service-card__title {
  font-size: var(--wp--preset--font-size--heading-4);
  margin: 0 0 var(--wp--preset--spacing--sm) 0;
}
.services-grid-section .service-card__body {
  margin-bottom: var(--wp--preset--spacing--md);
  max-width: 32ch;
}
.services-grid-section .service-card__link {
  align-self: center;
}


/* ==============================================================
   Services hero — scoped tightening
   Shortened H1 + smaller, centered CTAs. Added 2026-05-04.
   ============================================================== */
.page-hero--services .page-hero__title {
  font-size: clamp(2rem, 4.5vw + 1rem, 3.75rem);
  line-height: 1.1;
  max-width: 22ch;
}
.page-hero--services .page-hero__ctas {
  justify-content: center;
}
@media (max-width: 639px) {
  .page-hero--services .page-hero__ctas {
    flex-direction: column;
    align-items: center;
  }
}


/* ==============================================================
   Services hero — hide redundant post-title + center alignment
   Added 2026-05-04 (round 2: redundancy + centering)
   ============================================================== */

/* WP template renders post_title as h1.wp-block-post-title above
   our content; on page 17 we have our own page-hero h1, so hide it. */
body.page-id-17 .wp-block-post-title {
  display: none;
}

/* Center the entire services hero block */
.page-hero--services {
  text-align: center;
}
.page-hero--services .page-hero__inner {
  margin-left: auto;
  margin-right: auto;
}
.page-hero--services .page-hero__title {
  margin-left: auto;
  margin-right: auto;
  max-width: 22ch;
}
.page-hero--services .page-hero__lede {
  margin-left: auto;
  margin-right: auto;
  max-width: 65ch;
}
.page-hero--services .page-hero__eyebrow {
  text-align: center;
}


/* ==============================================================
   White background site-wide + title centering fix
   Added 2026-05-04 (round 3)
   ============================================================== */

/* 1. Redefine paper-shade token to pure white site-wide */
:root,
body,
.wp-site-blocks,
.editor-styles-wrapper {
  --wp--preset--color--paper-shade: #FFFFFF;
}

/* 2. Hard-coded off-white in client logos row */
.client-logos-row {
  background: #FFFFFF;
}

/* 3. Override inline #FFFFFF backgrounds (case insensitive) */
.wp-block-group.has-background[style*="#FFFFFF" i],
.wp-block-group.has-background[style*="#FFFFFF" i] {
  background-color: #FFFFFF !important;
}

/* 4. Fix services hero title centering (remove max-width that
   was causing 22ch box + overflowing text to look offset) */
.page-hero--services .page-hero__title {
  max-width: none;
  width: 100%;
  margin: 0 auto var(--wp--preset--spacing--md) auto;
}


/* ==============================================================
   White background — actual nuke. Kadence parent theme uses
   --global-palette8 / --global-palette9 for body background,
   loading AFTER theme.json. Override at body level + redefine
   the Kadence palette tokens. Added 2026-05-04 (round 4).
   ============================================================== */
:root,
body,
body.wp-singular,
body.content-style-unboxed,
body.content-style-boxed {
  --global-palette8: #FFFFFF !important;
  --global-palette9: #FFFFFF !important;
}

html,
body,
body.content-style-unboxed .site,
body.content-style-boxed .site,
.content-bg,
.site,
.site-content,
#wrapper,
.wp-site-blocks {
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
}

/* Also override clay-wash if used as a soft background */
.has-clay-wash-background-color {
  background-color: #FFFFFF !important;
}


/* ==============================================================
   Page hero title — visual centering fix
   Was: width:100%, text-align:center → mathematically centered
   but visually off because the H1 box was wider than the
   paragraph below it. Now H1 box shrinks to text width, then
   centered with margin auto. Aligns visually with paragraph + CTAs.
   Added 2026-05-04 (round 5).
   ============================================================== */
.page-hero .page-hero__title,
.page-hero--services .page-hero__title {
  width: fit-content;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}

/* ==============================================================
   City-page navigation grid (Service Area page)
   Added 2026-05-04 with the 15-city Tier 2 build-out.
   ============================================================== */
.city-page-card {
  display: flex;
  flex-direction: column;
  padding: var(--wp--preset--spacing--md);
  background: #FFFFFF;
  border: 1px solid var(--wp--preset--color--clay-wash, #EFEAD9);
  border-radius: 8px;
  text-decoration: none;
  color: var(--wp--preset--color--graphite, #111111);
  transition: border-color 120ms ease, transform 120ms ease;
}
.city-page-card strong {
  display: block;
  font-size: 1.1rem;
  margin-bottom: 0.25rem;
}
.city-page-card span {
  font-size: 0.875rem;
  color: var(--wp--preset--color--slate, #444444);
  line-height: 1.4;
}
.city-page-card:hover,
.city-page-card:focus-visible {
  border-color: var(--wp--preset--color--ink, #FDC708);
  transform: translateY(-2px);
}

/* ==============================================================
   Footer service-area coverage callout (under Locations heading)
   Added 2026-05-04 with the Tier 2 city build-out.
   ============================================================== */
.site-footer__coverage {
  font-size: 0.875rem;
  color: var(--wp--preset--color--slate, #444444);
  margin: 0 0 var(--wp--preset--spacing--md);
  line-height: 1.5;
}
.site-footer__coverage a {
  color: inherit;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}
.site-footer__coverage a:hover {
  color: var(--wp--preset--color--ink, #FDC708);
}
