/* =============================================
   Darlana Marketing — Luxury Brand Website
   Inspired by Bang & Olufsen aesthetic
   ============================================= */

:root {
  --navy: #11223A;
  --navy-light: #162d4a;
  --navy-mid: #1a3558;
  --navy-dark: #0c1828;
  --gold: #C8A872;
  --gold-light: #d9bc8f;
  --gold-dark: #a8894f;
  --cream: #F7F5F2;
  --cream-dim: rgba(247, 245, 242, 0.72);
  --cream-muted: rgba(247, 245, 242, 0.45);
  --gold-rgb: 200, 168, 114;
  --navy-rgb: 17, 34, 58;
  --cream-rgb: 247, 245, 242;

  --font-serif: 'Montserrat', -apple-system, BlinkMacSystemFont, sans-serif;
  --font-sans: 'Montserrat', -apple-system, BlinkMacSystemFont, sans-serif;
  --font-display: 'Cinzel', Georgia, serif;

  --header-height: 4.5rem;
  --content-readable: 42rem;
  --content-readable-wide: 52rem;
  --content-shell: var(--shell-default);

  /* Unified section content-width scale (rem; scales with html font-size) */
  --shell-wide: 87.5rem;   /* was 1400px */
  --shell-default: 75rem;  /* was 1200px */
  --shell-content: 67.5rem; /* was 1080px */
  --shell-reading: 50rem;  /* was 800px */

  --transition: 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  --transition-fast: 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  scroll-behavior: smooth;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body {
  font-family: var(--font-sans);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.6;
  color: var(--cream);
  background: var(--navy);
  overflow-x: hidden;
}

img {
  display: block;
  max-width: 100%;
  height: auto;
}

a {
  color: inherit;
  text-decoration: none;
}

button {
  font: inherit;
  color: inherit;
  background: none;
  border: none;
  cursor: pointer;
}

ul[role="list"] {
  list-style: none;
}

.container {
  width: 100%;
  max-width: var(--shell-wide);
  margin: 0 auto;
  padding: 0 40px;
}

/* ---- Header ---- */
.site-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: var(--header-height);
  padding: 0 40px;
  background-color: transparent;
  border-bottom: 1px solid transparent;
  transition: background-color 0.3s ease, box-shadow var(--transition), border-color var(--transition);
}

.site-header::before {
  content: '';
  position: absolute;
  z-index: -1;
  inset: 0;
  background-image: linear-gradient(rgba(0, 9, 22, 0.75), rgba(0, 9, 22, 0.75)), url('assets/thirdPartBG.webp');
  background-size: cover;
  background-position: center;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
}

/* Scrolled light bar — never while the mobile menu is open */
.site-header--scrolled:not(.site-header--menu-open) {
  background-color: #fff;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.15);
  border-bottom-color: rgba(var(--navy-rgb), 0.08);
}

/* Scrolled navy text must not cascade into the open mobile menu panel */
.site-header--scrolled:not(.site-header--menu-open) .header-nav__link {
  color: var(--navy);
}

.site-header--scrolled:not(.site-header--menu-open) .site-header__logo-image {
  filter: brightness(0) saturate(100%);
}

/* Lock page scroll while the mobile nav panel is open (scrollY restored in script.js) */
html.body--nav-menu-open,
body.body--nav-menu-open {
  overflow: hidden;
  overscroll-behavior: none;
}

body.body--nav-menu-open {
  position: fixed;
  width: 100%;
  left: 0;
  right: 0;
}

/* Non-homepage: navbar rests on thirdPartBG (with navy overlay via ::before)
   instead of transparent, so it never reveals the page's light background.
   Homepage (<main class="home-page">) keeps transparent-at-top. Scrolled (white)
   and hover rules are unchanged.
   bottom: -1px covers the 1px transparent border so cream body can't flash
   through as a hairline under the bar. */
body:not(:has(main.home-page)) .site-header:not(.site-header--scrolled)::before {
  opacity: 1;
  bottom: -1px;
}

@media (min-width: 769px) {
  .site-header:hover::before {
    opacity: 1;
  }

  .site-header:hover {
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.25);
    border-bottom-color: rgba(var(--cream-rgb), 0.15);
  }

  .site-header:hover .header-nav__link {
    color: var(--cream);
  }

  .site-header:hover .site-header__logo-image {
    filter: none;
  }
}

.site-header__logo {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}

.site-header__logo-image {
  display: block;
  height: 54px;
  width: auto;
  transition: filter 0.3s ease;
}

.admin-badge {
  font-family: var(--font-sans);
  font-size: 0.5rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--navy);
  background: var(--gold);
  padding: 4px 10px;
  border-radius: 999px;
  line-height: 1;
}

/* ---- Header navigation ---- */
.header-nav__list {
  display: flex;
  align-items: center;
  gap: 42px;
}

.header-nav__link {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  font-family: var(--font-display);
  font-size: 0.8775rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--cream);
  padding: 12px 0;
  transition: color var(--transition-fast), opacity var(--transition-fast);
}

.header-nav__link:hover {
  color: var(--gold);
}

.header-nav__num {
  display: none;
}

.header-nav__item--dropdown {
  position: relative;
}

.header-nav__chevron {
  width: 12px;
  height: auto;
  transition: transform var(--transition-fast);
}

.header-nav__trigger[aria-expanded="true"] .header-nav__chevron {
  transform: rotate(180deg);
}

.header-nav__dropdown {
  position: absolute;
  top: calc(100% + 15px);
  left: 0;
  width: 230px;
  padding: 0;
  background-image: linear-gradient(rgba(0, 9, 22, 0.75), rgba(0, 9, 22, 0.75)), url('assets/thirdPartBG.webp');
  background-size: cover;
  background-position: center;
  border: none;
  border-radius: 0;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.25);
  opacity: 0;
  visibility: hidden;
  transition: opacity var(--transition-fast), visibility var(--transition-fast);
  z-index: 120;
}

.header-nav__dropdown.is-open {
  opacity: 1;
  visibility: visible;
}

.header-nav__dropdown li {
  border-bottom: 1px solid rgba(var(--gold-rgb), 0.45);
}

.header-nav__dropdown li:last-child {
  border-bottom: none;
}

.header-nav__dropdown-link {
  display: block;
  width: 100%;
  padding: 13px 18px;
  border-radius: 0;
  font-family: var(--font-display);
  font-size: 0.8775rem;
  font-weight: 400;
  letter-spacing: 0.04em;
  color: #fff;
  white-space: nowrap;
  text-align: left;
  background: transparent;
  transition: color var(--transition-fast);
}

button.header-nav__dropdown-link {
  border: none;
  background: transparent;
  cursor: pointer;
  font-family: inherit;
  text-align: left;
}

.header-nav__dropdown-link:hover {
  color: var(--gold);
}

[data-admin-nav] .header-nav__link {
  color: var(--gold);
}

/* ---- Contact page typography (reuses nav-panel class names) ---- */
.nav-panel__content {
  max-width: 640px;
  margin: 0 auto;
  width: 100%;
  text-align: center;
}

.nav-panel__content--wide {
  max-width: 720px;
  text-align: left;
}

.nav-panel__title {
  font-family: var(--font-serif);
  font-size: clamp(2.5rem, 6vw, 4rem);
  font-weight: 400;
  letter-spacing: 0.04em;
  margin-bottom: 16px;
  color: var(--gold);
}

.nav-panel__lead {
  font-family: var(--font-serif);
  font-size: 1.375rem;
  font-style: italic;
  color: var(--cream-dim);
  margin-bottom: 40px;
}

.contact-page .nav-panel__title {
  color: var(--navy);
  font-size: clamp(2rem, 5vw, 3rem);
  margin-bottom: 1rem;
}

.contact-page .nav-panel__lead {
  font-family: var(--font-sans);
  font-size: 1rem;
  font-style: normal;
  line-height: 1.75;
  color: rgba(var(--navy-rgb), 0.65);
  margin-bottom: 1.25rem;
}

/* ---- Service pages (PPC Training, etc.) ---- */
.service-page {
  width: 100%;
}

.service-page__hero {
  display: flex;
  align-items: stretch;
  background: var(--navy);
  min-height: 280px;
}

.service-page__hero-inner {
  flex: 1;
  padding: 3rem 2.5rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.service-page__hero-visual {
  flex: 0 0 min(42%, 360px);
  display: none;
}

.service-page__hero-visual svg {
  width: 100%;
  height: 100%;
  display: block;
}

.service-page__eyebrow {
  font-size: 0.625rem;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 1rem;
  font-weight: 500;
}

.service-page__title {
  font-family: var(--font-display);
  font-size: clamp(1.75rem, 4vw, 1.875rem);
  font-weight: 400;
  color: var(--cream);
  line-height: 1.35;
  letter-spacing: 0.05em;
  margin-bottom: 1rem;
}

.service-page__lead {
  font-size: 0.875rem;
  color: rgba(var(--cream-rgb), 0.65);
  font-weight: 400;
  line-height: 1.85;
  max-width: 460px;
}

.service-page__tagline {
  margin-top: 1rem;
  font-size: 0.875rem;
  color: rgba(var(--gold-rgb), 0.9);
  font-style: italic;
  font-weight: 400;
  line-height: 1.6;
  max-width: 460px;
}

.service-page__label--center {
  justify-content: center;
}

.service-page__label--center::after {
  display: none;
}

.service-page__how-band {
  background: var(--navy);
  padding: 2.5rem;
  text-align: center;
  position: relative;
  overflow: hidden;
}

.service-page__how-steps {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.25rem;
  margin-top: 1rem;
  position: relative;
  z-index: 1;
}

.service-page__how-step {
  font-family: var(--font-display);
  font-size: 1.125rem;
  font-weight: 400;
  color: var(--cream);
  letter-spacing: 0.04em;
  line-height: 1.4;
}

.service-page__how-step span {
  color: var(--gold);
}

.service-page__how-dot {
  width: 4px;
  height: 4px;
  background: rgba(var(--gold-rgb), 0.4);
  border-radius: 50%;
}

.service-page__pricing-light {
  background: var(--cream);
  padding: 2.5rem;
  display: flex;
  flex-direction: column;
  gap: 2rem;
  align-items: flex-start;
}

.service-page__pricing-light-inner p {
  font-size: 0.875rem;
  color: rgba(var(--navy-rgb), 0.78);
  line-height: 1.85;
  font-weight: 400;
}

.service-page__pricing-light-graphic svg {
  width: 100%;
  max-width: 180px;
  height: auto;
  display: block;
}

.service-page__hero--tall {
  min-height: 320px;
}

.service-page__stats {
  display: grid;
  grid-template-columns: 1fr;
  border-top: 0.5px solid rgba(var(--gold-rgb), 0.15);
}

.service-page__stat {
  padding: 2rem 1.5rem;
  background: var(--navy);
  border-bottom: 0.5px solid rgba(var(--gold-rgb), 0.15);
  text-align: center;
}

.service-page__stat-num {
  display: block;
  font-family: var(--font-display);
  font-size: 2rem;
  color: var(--gold);
  font-weight: 400;
  margin-bottom: 0.4rem;
  line-height: 1;
}

.service-page__stat-label {
  font-size: 0.625rem;
  color: rgba(var(--cream-rgb), 0.45);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-weight: 400;
}

.service-page__split--dark {
  background: var(--navy);
  min-height: 320px;
}

.service-page__split--dark .service-page__split-text p:not(.service-page__mark-quote) {
  font-size: 0.875rem;
  color: rgba(var(--cream-rgb), 0.65);
  line-height: 1.85;
  font-weight: 400;
}

.service-page__split--dark .service-page__split-visual--graphic {
  background: var(--navy);
}

.service-page__split--dark .service-page__btn {
  margin-top: 1.75rem;
  align-self: flex-start;
}

.service-page__mark-quote {
  font-family: var(--font-display);
  font-size: 0.9375rem;
  color: var(--gold);
  line-height: 1.6;
  margin-top: 1.5rem;
  letter-spacing: 0.04em;
}

.service-page__split {
  display: flex;
  flex-direction: column;
}

.service-page__split--cream {
  background: var(--cream);
}

.service-page__split-text {
  padding: 2.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.9rem;
}

.service-page__split-text p,
.service-page__section p {
  font-size: 0.875rem;
  color: rgba(var(--navy-rgb), 0.78);
  line-height: 1.85;
  font-weight: 400;
}

.service-page__section p + p {
  margin-top: 0.9rem;
}

.service-page__split-visual {
  min-height: 220px;
  overflow: hidden;
}

.service-page__split-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.service-page__split-visual--graphic {
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--cream);
  padding: 1.5rem;
}

.service-page__split-visual--graphic svg {
  width: 100%;
  max-width: 280px;
  height: auto;
}

.service-page__section {
  padding: 2.5rem;
}

.service-page__section--white {
  background: #fff;
}

.service-page__section--cream {
  background: var(--cream);
}

.service-page__label {
  font-size: 0.625rem;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--gold);
  font-weight: 500;
  margin-bottom: 1rem;
  display: flex;
  align-items: center;
  gap: 10px;
}

.service-page__label::after {
  content: '';
  height: 1px;
  width: 28px;
  background: var(--gold);
  opacity: 0.5;
}

.service-page__label--light {
  color: rgba(var(--gold-rgb), 0.85);
}

.service-page__label--light::after {
  background: rgba(var(--gold-rgb), 0.4);
}

.service-page__who-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1px;
  background: rgba(var(--gold-rgb), 0.15);
  border: 0.5px solid rgba(var(--gold-rgb), 0.15);
  margin-top: 0.5rem;
  list-style: none;
}

.service-page__who-item {
  background: var(--cream);
  padding: 1.5rem;
  display: flex;
  gap: 1rem;
  align-items: flex-start;
}

.service-page__who-icon {
  color: var(--gold);
  flex-shrink: 0;
  margin-top: 2px;
}

.service-page__who-item p {
  font-size: 0.8125rem;
  color: rgba(var(--navy-rgb), 0.78);
  line-height: 1.65;
  font-weight: 400;
}

.service-page__pricing {
  background: var(--navy);
  padding: 2.5rem;
  position: relative;
  overflow: hidden;
}

.service-page__pricing-inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 0.9rem;
}

.service-page__pricing p {
  font-size: 0.875rem;
  color: rgba(var(--cream-rgb), 0.65);
  line-height: 1.85;
  font-weight: 400;
}

.service-page__cta {
  background: var(--cream);
  padding: 2.5rem;
  text-align: center;
  border-top: 0.5px solid rgba(var(--gold-rgb), 0.2);
}

.service-page__cta-btn {
  margin-top: 0;
}

.service-page__cta-note {
  margin-top: 1rem;
  font-size: 0.8125rem;
  color: rgba(var(--navy-rgb), 0.55);
  font-weight: 400;
  line-height: 1.6;
}

.service-page__faq {
  padding-top: 2rem;
  padding-bottom: 3rem;
}

.service-page__faq-item {
  border-bottom: 0.5px solid rgba(var(--gold-rgb), 0.2);
  padding: 1rem 0;
}

.service-page__faq-item summary {
  font-size: 0.8125rem;
  font-weight: 500;
  color: var(--navy);
  cursor: pointer;
  list-style: none;
  line-height: 1.5;
}

.service-page__faq-item summary::-webkit-details-marker {
  display: none;
}

.service-page__faq-item summary::after {
  content: '+';
  float: right;
  color: var(--gold);
  font-weight: 400;
}

.service-page__faq-item[open] summary::after {
  content: '−';
}

.service-page__faq-item p {
  margin-top: 0.75rem;
  padding-right: 1.5rem;
}

.service-page__steps {
  display: flex;
  flex-direction: column;
  gap: 1px;
  background: rgba(var(--gold-rgb), 0.15);
  border: 0.5px solid rgba(var(--gold-rgb), 0.15);
  margin-top: 0.5rem;
  list-style: none;
}

.service-page__step {
  background: #fff;
  padding: 1.75rem 1.5rem;
  position: relative;
}

.service-page__step-num {
  display: block;
  font-family: var(--font-display);
  font-size: 1.75rem;
  color: rgba(var(--gold-rgb), 0.25);
  line-height: 1;
  margin-bottom: 0.75rem;
}

.service-page__step-title {
  font-size: 0.75rem;
  font-weight: 500;
  color: var(--navy);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  margin-bottom: 0.5rem;
}

.service-page__step-tag {
  color: var(--gold);
  font-size: 0.625rem;
  font-weight: 400;
  text-transform: none;
  letter-spacing: 0.02em;
}

.service-page__step p {
  font-size: 0.75rem;
  color: rgba(var(--navy-rgb), 0.62);
  line-height: 1.7;
  font-weight: 400;
}

.service-page__look-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1px;
  background: rgba(var(--gold-rgb), 0.15);
  border: 0.5px solid rgba(var(--gold-rgb), 0.15);
  margin-top: 0.5rem;
  list-style: none;
}

.service-page__look-item {
  background: #fff;
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.service-page__look-icon {
  color: var(--gold);
}

.service-page__look-title {
  font-size: 0.75rem;
  font-weight: 500;
  color: var(--navy);
  letter-spacing: 0.04em;
}

.service-page__look-item p {
  font-size: 0.6875rem;
  color: rgba(var(--navy-rgb), 0.58);
  line-height: 1.6;
  font-weight: 400;
}

.service-page__free-call {
  background: var(--navy);
  padding: 2.5rem;
  display: flex;
  flex-direction: column;
  gap: 2rem;
  position: relative;
  overflow: hidden;
}

.service-page__free-call-inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 0.9rem;
}

.service-page__free-call-title {
  font-family: var(--font-display);
  font-size: 1.375rem;
  font-weight: 400;
  color: var(--cream);
  letter-spacing: 0.04em;
  line-height: 1.4;
}

.service-page__free-call p {
  font-size: 0.875rem;
  color: rgba(var(--cream-rgb), 0.65);
  line-height: 1.85;
  font-weight: 400;
}

.service-page__free-call-graphic svg {
  width: 100%;
  max-width: 200px;
  height: auto;
  display: block;
  margin: 0 auto;
}

.service-page__btn {
  display: inline-block;
  margin-top: 0.5rem;
  padding: 0.75rem 1.75rem;
  border: 1px solid var(--gold);
  color: var(--gold);
  font-size: 0.625rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  font-weight: 500;
  background: transparent;
  cursor: pointer;
  font-family: inherit;
  transition: background-color 0.3s ease, color 0.3s ease;
}

.service-page__btn:hover {
  background-color: var(--navy);
  color: var(--gold);
  border-color: var(--gold);
}

.service-page__btn--dark {
  border-color: var(--navy);
  color: var(--navy);
}

.service-page__btn--dark:hover {
  background: var(--navy);
  color: var(--cream);
}

.service-page__btn-row {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  justify-content: center;
  margin-top: 0.5rem;
}

.service-page__cta--final {
  padding-bottom: 3rem;
}

.service-page__cta-heading {
  font-family: var(--font-display);
  font-size: 1.375rem;
  font-weight: 400;
  color: var(--navy);
  letter-spacing: 0.04em;
  margin-bottom: 0.75rem;
}

.service-page__cta-sub {
  font-size: 0.8125rem;
  color: rgba(var(--navy-rgb), 0.58);
  font-weight: 400;
  line-height: 1.6;
  margin-bottom: 1.25rem;
}

@media (min-width: 768px) {
  .service-page__hero-visual {
    display: block;
  }

  .service-page__split {
    flex-direction: row;
    min-height: 280px;
  }

  .service-page__split--reverse {
    flex-direction: row-reverse;
  }

  .service-page__split-text {
    flex: 1;
    padding: 3rem 2.5rem;
    justify-content: center;
  }

  .service-page__split-visual {
    flex: 0 0 42%;
    min-height: auto;
  }

  .service-page__who-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .service-page__section {
    padding: 3rem 2.5rem;
  }

  .service-page__pricing {
    padding: 3rem 2.5rem;
  }

  .service-page__steps {
    flex-direction: row;
  }

  .service-page__step {
    flex: 1;
    border-right: 0.5px solid rgba(var(--gold-rgb), 0.2);
  }

  .service-page__step:last-child {
    border-right: none;
  }

  .service-page__look-grid {
    grid-template-columns: repeat(4, 1fr);
  }

  .service-page__free-call {
    flex-direction: row;
    align-items: center;
    padding: 3rem 2.5rem;
    gap: 4rem;
  }

  .service-page__free-call-graphic {
    flex: 0 0 200px;
  }

  .service-page__pricing-light {
    flex-direction: row;
    align-items: center;
    padding: 3rem 2.5rem;
    gap: 4rem;
  }

  .service-page__pricing-light-inner {
    flex: 1;
  }

  .service-page__pricing-light-graphic {
    flex: 0 0 180px;
  }

  .service-page__how-band {
    padding: 3rem 2.5rem;
  }

  .service-page__stats {
    grid-template-columns: repeat(3, 1fr);
  }

  .service-page__stat {
    border-bottom: none;
    border-right: 0.5px solid rgba(var(--gold-rgb), 0.15);
    text-align: left;
  }

  .service-page__stat:last-child {
    border-right: none;
  }

  .service-page__hero--tall {
    min-height: 420px;
  }

  .service-page__split--dark .service-page__split-text {
    padding: 3rem 2.5rem;
  }
}

.contact-panel__eyebrow {
  font-size: 0.625rem;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--gold);
  font-weight: 500;
  margin-bottom: 1rem;
}

.contact-panel__lead {
  font-family: var(--font-sans);
  font-size: 1rem;
  font-style: normal;
  line-height: 1.75;
  margin-bottom: 1.25rem;
}

.contact-panel__intro {
  font-size: 0.9375rem;
  color: rgba(var(--navy-rgb), 0.72);
  line-height: 1.75;
  margin-bottom: 2rem;
}

.contact-panel__intro a {
  color: var(--gold-dark);
  text-decoration: none;
  border-bottom: 1px solid rgba(var(--gold-rgb), 0.35);
}

.contact-panel__intro a:hover {
  color: var(--navy);
  border-bottom-color: var(--navy);
}

.contact-form {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-bottom: 1.5rem;
}

.contact-form input,
.contact-form textarea {
  width: 100%;
  padding: 0.875rem 1rem;
  border: 0.5px solid rgba(var(--navy-rgb), 0.15);
  background: #fff;
  color: var(--navy);
  font-family: var(--font-sans);
  font-size: 0.9375rem;
  line-height: 1.5;
}

.contact-form textarea {
  resize: vertical;
  min-height: 120px;
}

.contact-form input::placeholder,
.contact-form textarea::placeholder {
  color: rgba(var(--navy-rgb), 0.4);
}

.contact-form input:focus,
.contact-form textarea:focus {
  outline: none;
  border-color: rgba(var(--gold-rgb), 0.6);
}

.contact-panel__next {
  margin-top: 2.5rem;
  padding-top: 2rem;
  border-top: 0.5px solid rgba(var(--navy-rgb), 0.12);
}

.contact-panel__next-title {
  font-family: var(--font-serif);
  font-size: 1.25rem;
  font-weight: 400;
  color: var(--navy);
  margin-bottom: 1rem;
  letter-spacing: 0.04em;
}

.contact-panel__next p {
  font-size: 0.9375rem;
  color: rgba(var(--navy-rgb), 0.72);
  line-height: 1.75;
}

.contact-panel__next p + p {
  margin-top: 0.75rem;
}

.contact-page .booking-message {
  margin-bottom: 0.5rem;
}

/* ---- Account Audit & PPC Training pages — matches main page patterns ---- */
.service-page--audit,
.service-page--training,
.service-page--consultancy,
.service-page--ad-mgmt {
  --audit-text-max: var(--shell-content);
  background: var(--cream);
}

/* PPC Consultancy — page typography (Cinzel headings, Montserrat body) */
.service-page--consultancy {
  font-family: var(--font-sans);
  --consultancy-section-title-size: clamp(1.43rem, 2.75vw, 1.92rem);
  --consultancy-section-title-line: 1.2;
  --consultancy-section-title-spacing: 0.01em;
  --consultancy-secondary-title-size: clamp(1.1rem, 2vw, 1.45rem);
  --consultancy-body-size: clamp(0.9375rem, 1.4vw, 1rem);
  --consultancy-body-line: 1.75;
}

/* PPC Consultancy — unified section titles */
.service-page--consultancy :is(
  .mentoring-lead__heading--intro,
  .promises.audit-look .audit-section__title,
  .consultancy-how-compare-band .audit-intro__heading,
  .service-after-faq-band .audit-intro__heading
) {
  font-family: var(--font-display);
  font-size: var(--consultancy-section-title-size);
  font-weight: 400;
  line-height: var(--consultancy-section-title-line);
  letter-spacing: var(--consultancy-section-title-spacing);
  color: var(--gold);
  text-transform: none;
}

/* PPC Consultancy — secondary section titles (smaller, consistent set) */
.service-page--consultancy :is(
  .mentoring-lead__heading--sub,
  .promises.audit-look .audit-look__subtitle,
  .consultancy-compare__title,
  .service-after-faq-band .audit-faq__title
) {
  font-family: var(--font-display);
  font-size: var(--consultancy-secondary-title-size);
  font-weight: 400;
  line-height: var(--consultancy-section-title-line);
  letter-spacing: var(--consultancy-section-title-spacing);
  color: var(--gold);
}

.service-page--consultancy .consultancy-compare__title-vs {
  display: inline;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  font-style: normal;
  letter-spacing: inherit;
  text-transform: none;
  vertical-align: baseline;
}

/* PPC Consultancy — unified body text (with deliberate exceptions below) */
.service-page--consultancy :is(
  .mentoring-lead__prose,
  .promises.audit-look .audit-look__intro,
  .consultancy-compare__prose,
  .audit-intro__prose:not(.audit-cta-note),
  .audit-intro.audit-how .audit-intro__step-body
) {
  font-family: var(--font-sans);
  font-size: var(--consultancy-body-size);
  line-height: var(--consultancy-body-line);
}

/* PPC Consultancy — FAQ body text (matches PPC Mentoring sizes) */
.service-page--consultancy .audit-faq .service-page__faq-item summary {
  font-family: var(--font-sans);
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1.5;
}

.service-page--consultancy .audit-faq .service-page__faq-item p {
  font-family: var(--font-sans);
  font-size: 0.8125rem;
  line-height: 1.5;
}

.service-page--consultancy :is(
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  .audit-section__title,
  .audit-intro__heading,
  .audit-faq__title,
  .audit-page-hero__title,
  .mentoring-lead__heading,
  .mentoring-lead__heading--sub,
  .consultancy-compare__title,
  .audit-look__subtitle,
  .audit-intro__step-num,
  .audit-intro__step-lead
) {
  font-family: var(--font-display);
}

.service-page--consultancy :is(
  p,
  li,
  .mentoring-lead__prose,
  .consultancy-compare__prose,
  .audit-intro__prose,
  .audit-intro__step-body,
  .audit-intro__how-note,
  .audit-look__intro,
  .familiar__text,
  .audit-cta-note,
  .hero__tagline,
  .hero__subheadline,
  .hero__cta,
  .service-page__faq-item summary,
  .service-page__faq-item p
) {
  font-family: var(--font-sans);
}

body:has(.service-page--consultancy) .site-footer {
  font-family: var(--font-sans);
}

body:has(.service-page--consultancy) .site-footer :is(.footer__logo, h4) {
  font-family: var(--font-display);
}

body:has(.service-page--consultancy) .site-footer :is(p, a, button, .footer-link-btn) {
  font-family: var(--font-sans);
}

body:has(.service-page--consultancy) :is(.nav-panel__title, .contact-panel__next-title) {
  font-family: var(--font-display);
}

body:has(.service-page--consultancy) .nav-panel__lead {
  font-family: var(--font-sans);
}

.service-page--consultancy .mentoring-lead__heading--intro {
  margin: 0;
  line-height: var(--consultancy-section-title-line, 1.2);
}

.service-page--consultancy .audit-intro--mentoring-lead .mentoring-lead__heading--intro {
  color: var(--navy);
}

.service-page--consultancy .audit-intro--mentoring-lead .mentoring-lead__who-block .mentoring-lead__heading--sub {
  color: var(--navy);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.service-page--consultancy .mentoring-lead__heading--intro .mentoring-lead__heading-br {
  display: block;
}

.service-page--consultancy .audit-intro--mentoring-lead .mentoring-lead__title-rule {
  display: block;
  width: min(100%, 5.5rem);
  height: 1px;
  margin: clamp(1.125rem, 2.5vw, 1.5rem) auto;
  background: rgba(var(--gold-rgb), 0.5);
}

.service-page--consultancy .audit-intro--mentoring-lead .consultancy-lead__vline {
  display: block;
  width: 1px;
  height: clamp(2rem, 4vw, 2.75rem);
  margin-inline: auto;
  background: rgba(var(--gold-rgb), 0.5);
}

.service-page--consultancy .audit-intro--mentoring-lead .mentoring-lead__intro-block + .consultancy-lead__vline {
  margin-top: clamp(2rem, 4vw, 3rem);
  margin-bottom: clamp(1.25rem, 2.75vw, 1.75rem);
}

.service-page--consultancy .mentoring-lead__heading--sub {
  margin: 0;
  text-align: center;
}

.service-page--consultancy .mentoring-lead__who-block .mentoring-lead__heading--sub {
  margin-bottom: 0;
}

.service-page--consultancy .mentoring-lead__who-block {
  margin-top: clamp(3rem, 6vw, 4.5rem);
  max-width: 40rem;
  margin-inline: auto;
  text-align: center;
}

.service-page--consultancy .mentoring-lead__who-block .mentoring-lead__prose {
  text-align: center;
}

.service-page--consultancy .consultancy-intro-quote {
  max-width: 40rem;
  margin: 0 auto;
  padding: 0;
  border: none;
  background: none;
  box-shadow: none;
  text-align: center;
}

.service-page--consultancy .consultancy-intro-quote .consultancy-lead__vline:last-child {
  margin-top: clamp(1.25rem, 2.75vw, 1.75rem);
}

.service-page--consultancy .consultancy-intro-quote__text {
  margin: 0;
  font-family: var(--font-display);
  font-size: clamp(1.25rem, 2.4vw, 1.68rem);
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.04em;
  text-align: center;
  text-transform: uppercase;
  color: var(--gold);
}

.service-page--standalone {
  padding-top: var(--header-height);
}

.contact-page {
  padding-bottom: clamp(2.5rem, 6vw, 4rem);
}

.contact-page .nav-panel__content--wide {
  max-width: 720px;
  margin: 0 auto;
  padding-top: clamp(1.5rem, 4vw, 2.5rem);
}

.service-page--audit {
  --audit-fs-hero-title: clamp(1.625rem, 3.4vw, 2.5rem);
  --audit-fs-section-title: clamp(1.625rem, 4vw, 2.65rem);
  --audit-fs-intro-heading: clamp(1.5rem, 2.9vw, 2rem);
  --audit-fs-body: clamp(0.875rem, 1.25vw, 0.9375rem);
  --audit-fs-body-lg: clamp(0.875rem, 1.3vw, 0.9375rem);
  --audit-fs-lead: clamp(0.9rem, 1.45vw, 1rem);
  --audit-fs-eyebrow: 0.875rem;
  --audit-fs-small: 0.6875rem;
  --audit-fs-feature: 0.875rem;
  --audit-fs-note: 0.625rem;
}

.service-page--audit .audit-page-hero,
.service-page--training .audit-page-hero,
.service-page--consultancy .audit-page-hero {
  position: relative;
  min-height: clamp(18rem, 40vh, 24rem);
  padding: clamp(2.5rem, 5vw, 3.75rem) 0;
  background: var(--navy);
  overflow: hidden;
}

.service-page--audit .audit-page-hero__texture,
.service-page--training .audit-page-hero__texture {
  position: absolute;
  inset: 0;
  background-image: url('assets/thirdPartBG.webp');
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  opacity: 1;
  pointer-events: none;
}

/* Ken Burns: hero background zoom-out on load, plays once, shared across
   Account Audit / PPC Mentoring / PPC Consultancy / Ad Management. */
.audit-page-hero__texture {
  transform: scale(1.08);
  transition: transform 4s ease-out;
}

.audit-page-hero.is-entered .audit-page-hero__texture {
  transform: scale(1);
}

@media (prefers-reduced-motion: reduce) {
  .audit-page-hero__texture {
    transform: scale(1);
    transition: none;
  }
}

.service-page--consultancy .audit-page-hero__texture {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-color: var(--navy);
  opacity: 1;
  z-index: 0;
}

.service-page--audit .audit-page-hero__layout,
.service-page--training .audit-page-hero__layout,
.service-page--consultancy .audit-page-hero__layout {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(240px, 44%);
  gap: clamp(1.25rem, 2.5vw, 2.5rem);
  align-items: center;
  width: 100%;
}

.service-page--audit .audit-page-hero__text,
.service-page--training .audit-page-hero__text,
.service-page--consultancy .audit-page-hero__text {
  text-align: left;
  justify-self: start;
  width: 100%;
  max-width: 40rem;
}

.service-page--audit .audit-page-hero__text .hero__tagline,
.service-page--training .audit-page-hero__text .hero__tagline,
.service-page--consultancy .audit-page-hero__text .hero__tagline {
  margin-bottom: 18px;
}

.service-page--audit .audit-page-hero__title,
.service-page--training .audit-page-hero__title,
.service-page--consultancy .audit-page-hero__title {
  font-family: var(--font-display);
  font-size: clamp(1.875rem, 3.8vw, 2.875rem);
  font-weight: 400;
  line-height: 1.15;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: var(--cream);
  margin: 0;
}

.service-page--audit .audit-page-hero__divider,
.service-page--training .audit-page-hero__divider,
.service-page--consultancy .audit-page-hero__divider {
  width: min(100%, 260px);
  margin: 22px 0 24px;
}

.service-page--audit .audit-page-hero__text .hero__subheadline,
.service-page--training .audit-page-hero__text .hero__subheadline,
.service-page--consultancy .audit-page-hero__text .hero__subheadline {
  max-width: 38ch;
  margin: 0;
  color: var(--cream-dim);
  text-align: left;
}

.service-page--audit .audit-page-hero__visual,
.service-page--training .audit-page-hero__visual,
.service-page--consultancy .audit-page-hero__visual {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  justify-self: end;
  width: 100%;
  min-height: clamp(300px, 39vw, 450px);
}

.service-page--audit .audit-page-hero__motivum,
.service-page--training .audit-page-hero__motivum,
.service-page--consultancy .audit-page-hero__motivum {
  position: relative;
  z-index: 2;
  width: clamp(285px, 45vw, 480px);
  height: auto;
  aspect-ratio: 1 / 1;
  opacity: 1;
  margin-right: clamp(0rem, 2vw, 1.5rem);
}

/* Account Audit hero: custom background + compact height */
.service-page--audit .audit-page-hero {
  min-height: clamp(14.5rem, 30vh, 19rem);
  padding: clamp(1.75rem, 3.5vw, 2.75rem) 0;
}

.service-page--audit .audit-page-hero__texture {
  background-image: url('assets/account_audit_bg.webp');
  background-size: cover;
  background-position: center right;
  background-repeat: no-repeat;
}

.service-page--audit .audit-page-hero__text .hero__subheadline {
  color: var(--cream);
}

.service-page--audit .audit-page-hero__layout {
  grid-template-columns: 1fr;
  align-items: center;
}

.service-page--audit .audit-page-hero__text .hero__cta {
  margin-top: 28px;
  font-size: 0.75rem;
}

@media (min-width: 769px) {
  .service-page--audit .audit-page-hero {
    min-height: clamp(16.5rem, 33vh, 21.5rem);
    padding: clamp(2.25rem, 4vw, 3.25rem) 0 clamp(1.75rem, 3.5vw, 2.75rem);
  }

  .service-page--audit .audit-page-hero__texture {
    background-position: right 38%;
  }
}

/* Ad Management hero: matches Account Audit structure + ad_managementBG */
.service-page--ad-mgmt {
  --audit-fs-hero-title: clamp(1.625rem, 3.4vw, 2.5rem);
  --audit-fs-section-title: clamp(1.625rem, 4vw, 2.65rem);
  --audit-fs-intro-heading: clamp(1.5rem, 2.9vw, 2rem);
  --audit-fs-body: clamp(0.875rem, 1.25vw, 0.9375rem);
  --audit-fs-body-lg: clamp(0.875rem, 1.3vw, 0.9375rem);
  --audit-fs-lead: clamp(0.9rem, 1.45vw, 1rem);
  --audit-fs-eyebrow: 0.875rem;
  --audit-fs-small: 0.6875rem;
  --audit-fs-feature: 0.875rem;
  --audit-fs-note: 0.625rem;
}

.service-page--ad-mgmt .audit-page-hero {
  position: relative;
  min-height: clamp(14.5rem, 30vh, 19rem);
  padding: clamp(1.75rem, 3.5vw, 2.75rem) 0;
  background: var(--navy);
  overflow: hidden;
}

.service-page--ad-mgmt .audit-page-hero__texture {
  position: absolute;
  inset: 0;
  background-image: url('assets/ad_managementBG.webp');
  background-size: cover;
  background-position: right 52%;
  background-repeat: no-repeat;
  opacity: 1;
  pointer-events: none;
}

.service-page--ad-mgmt .audit-page-hero__layout {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(1.25rem, 2.5vw, 2.5rem);
  align-items: center;
  width: 100%;
}

.service-page--ad-mgmt .audit-page-hero__text {
  text-align: left;
  justify-self: start;
  width: 100%;
  max-width: 40rem;
  padding-left: clamp(1.5rem, 4vw, 4rem);
}

.service-page--ad-mgmt .audit-page-hero__text .hero__tagline {
  margin-bottom: 18px;
  font-size: var(--audit-fs-small);
}

.service-page--ad-mgmt .audit-page-hero__title {
  font-family: var(--font-display);
  font-size: var(--audit-fs-hero-title);
  font-weight: 400;
  line-height: 1.15;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: var(--cream);
  margin: 0;
}

.service-page--ad-mgmt .audit-page-hero__divider {
  width: min(100%, 260px);
  margin: 22px 0 24px;
}

.service-page--ad-mgmt .audit-page-hero__text .hero__subheadline {
  max-width: 38ch;
  margin: 0;
  color: var(--cream);
  text-align: left;
  font-size: var(--audit-fs-lead);
}

.service-page--ad-mgmt .audit-page-hero__text .hero__cta {
  margin-top: 28px;
  font-size: var(--audit-fs-small);
}

@media (min-width: 769px) {
  .service-page--ad-mgmt .audit-page-hero {
    min-height: clamp(16.5rem, 33vh, 21.5rem);
    padding: clamp(2.25rem, 4vw, 3.25rem) 0 clamp(1.75rem, 3.5vw, 2.75rem);
  }

  .service-page--ad-mgmt .audit-page-hero__texture {
    background-position: right calc(52% - 19px);
  }
}

/* Ad Management — intro lead section (learnedBG) */
.service-page--ad-mgmt .audit-intro--ad-mgmt-lead {
  position: relative;
  overflow: hidden;
  background-color: var(--cream);
  padding: clamp(2.5rem, 5vw, 3.5rem) 0;
  color: var(--navy);
}

.service-page--ad-mgmt .audit-intro--ad-mgmt-lead::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: url('assets/learnedBG.webp');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  pointer-events: none;
}

.service-page--ad-mgmt .audit-intro--ad-mgmt-lead .audit-intro__layout {
  position: relative;
  z-index: 1;
}

.service-page--ad-mgmt .ad-mgmt-lead {
  max-width: 50rem;
  margin-inline: auto;
  text-align: center;
}

.service-page--ad-mgmt .ad-mgmt-lead__heading {
  margin: 0;
  font-family: var(--font-display);
  font-size: var(--audit-fs-intro-heading);
  font-weight: 400;
  line-height: 1.45;
  letter-spacing: 0.02em;
  text-align: center;
  color: var(--navy);
}

.service-page--ad-mgmt .ad-mgmt-lead__divider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: min(100%, 12.5rem);
  margin: clamp(1.125rem, 2.5vw, 1.5rem) auto;
}

.service-page--ad-mgmt .ad-mgmt-lead__divider-line {
  flex: 1;
  height: 1px;
  background: rgba(var(--gold-rgb), 0.5);
}

.service-page--ad-mgmt .ad-mgmt-lead__divider-diamond {
  flex-shrink: 0;
  width: 6px;
  height: 6px;
  background: var(--gold);
  transform: rotate(45deg);
}

.service-page--ad-mgmt .ad-mgmt-lead__prose {
  margin: 0;
  font-family: var(--font-sans);
  font-size: var(--audit-fs-body);
  font-weight: 400;
  line-height: 1.75;
  color: var(--navy);
  text-align: center;
}

.service-page--ad-mgmt .ad-mgmt-lead__tagline {
  margin: clamp(1rem, 2vw, 1.25rem) 0;
  font-family: var(--font-display);
  font-size: clamp(0.9375rem, 1.35vw, 1.0625rem);
  font-weight: 400;
  line-height: 1.45;
  letter-spacing: 0.02em;
  text-align: center;
  color: var(--gold);
}

.service-page--ad-mgmt .ad-mgmt-lead__prose + .ad-mgmt-lead__prose {
  margin-top: clamp(1rem, 2vw, 1.25rem);
}

@media (min-width: 769px) {
  .service-page--ad-mgmt .ad-mgmt-lead__heading {
    font-size: var(--audit-fs-intro-heading);
  }

  .service-page--ad-mgmt .ad-mgmt-lead__prose {
    font-size: var(--audit-fs-body);
    line-height: 1.75;
  }
}

@media (max-width: 768px) {
  .service-page--ad-mgmt .audit-intro--ad-mgmt-lead {
    padding: clamp(2rem, 5vw, 2.75rem) 0;
  }

  .service-page--ad-mgmt .audit-intro--ad-mgmt-lead::before {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }

  .service-page--ad-mgmt .ad-mgmt-lead {
    max-width: 100%;
    padding-inline: 0;
  }

  .service-page--ad-mgmt .ad-mgmt-lead__heading {
    font-size: clamp(1.1rem, 4.4vw, 1.44rem);
    color: var(--navy);
  }

  .service-page--ad-mgmt .ad-mgmt-lead__prose {
    font-size: clamp(0.8rem, 3.4vw, 0.9rem);
    line-height: 1.65;
  }

  .service-page--ad-mgmt .ad-mgmt-lead__tagline {
    font-size: clamp(0.8rem, 3.4vw, 0.9rem);
    line-height: 1.65;
    color: var(--navy);
  }
}

/* PPC Mentoring hero: custom background, compact layout, CTA */
.service-page--training .audit-page-hero {
  width: 100%;
  max-width: none;
  margin-inline: 0;
  box-sizing: border-box;
  min-height: 0;
  padding: clamp(1.25rem, 2.5vw, 1.75rem) 0;
  background: var(--navy);
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  isolation: isolate;
}

.service-page--training .audit-page-hero__texture {
  background-color: #000;
  background-image:
    linear-gradient(to right,
      #000 0%,
      #000 10%,
      rgba(0, 0, 0, 0.55) 28%,
      rgba(0, 0, 0, 0.15) 40%,
      rgba(0, 0, 0, 0) 52%),
    url('assets/ppc_mentoring_bg.webp');
  background-size: cover, cover;
  background-position: center, center;
  background-repeat: no-repeat, no-repeat;
  opacity: 1;
  z-index: 0;
}

.service-page--training .audit-page-hero__layout {
  grid-template-columns: 1fr;
  align-items: center;
  flex: 1 1 100%;
  width: 100%;
  z-index: 2;
}

.service-page--training .audit-page-hero__text .hero__tagline {
  font-size: 0.65625rem;
}

.service-page--training .audit-page-hero__title {
  font-size: clamp(1.65rem, 3.25vw, 2.5rem);
}

.service-page--training .audit-page-hero__text .hero__subheadline {
  font-size: clamp(0.9375rem, 1.4vw, 1rem);
  line-height: 1.75;
  color: #ffffff;
}

.service-page--training .audit-page-hero__text .hero__cta {
  margin-top: clamp(1.25rem, 2.5vw, 1.875rem);
  font-size: 0.75rem;
}

@media (min-width: 769px) {
  .service-page--training .audit-page-hero {
    min-height: clamp(16.5rem, 33vh, 21.5rem);
    padding: clamp(2.25rem, 4vw, 3.25rem) 0 clamp(1.75rem, 3.5vw, 2.75rem);
    display: flex;
    align-items: center;
  }

  .service-page--training .audit-page-hero__text {
    max-width: 40rem;
    padding-left: clamp(1.5rem, 4vw, 4rem);
  }

  .service-page--training .audit-page-hero__text .hero__tagline {
    font-size: 0.6875rem;
    margin-bottom: 18px;
  }

  .service-page--training .audit-page-hero__title {
    font-size: clamp(1.5rem, 3vw, 2.25rem);
  }

  .service-page--training .audit-page-hero__divider {
    width: min(100%, 260px);
    margin: 22px 0 24px;
  }

  .service-page--training .audit-page-hero__text .hero__subheadline {
    font-size: clamp(0.9rem, 1.45vw, 1rem);
    max-width: 38ch;
  }

  .service-page--training .audit-page-hero__text .hero__cta {
    margin-top: 28px;
    font-size: 0.75rem;
  }
}

/* PPC Consultancy hero: matches Mentoring hero layout, consultancy background */
.service-page--consultancy .audit-page-hero {
  width: 100%;
  max-width: none;
  margin-inline: 0;
  box-sizing: border-box;
  min-height: 0;
  padding: clamp(1.25rem, 2.5vw, 1.75rem) 0;
  background: var(--navy);
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  isolation: isolate;
}

.service-page--consultancy .audit-page-hero__layout {
  grid-template-columns: 1fr;
  align-items: center;
  flex: 1 1 100%;
  width: 100%;
  z-index: 2;
}

.service-page--consultancy .audit-page-hero__text .hero__tagline {
  font-size: 0.65625rem;
}

.service-page--consultancy .audit-page-hero__title {
  font-size: clamp(1.65rem, 3.25vw, 2.5rem);
}

.service-page--consultancy .audit-page-hero__text .hero__subheadline {
  font-size: clamp(0.9375rem, 1.4vw, 1rem);
  line-height: 1.75;
  color: #ffffff;
}

.service-page--consultancy .audit-page-hero__text .hero__cta {
  margin-top: clamp(1.25rem, 2.5vw, 1.875rem);
  font-size: 0.75rem;
}

@media (min-width: 769px) {
  .service-page--consultancy .audit-page-hero {
    min-height: clamp(24.5rem, 47vh, 32rem);
    padding: clamp(2.25rem, 4vw, 3.25rem) 0 clamp(1.75rem, 3.5vw, 2.75rem);
    display: flex;
    align-items: center;
  }

  /* Desktop hero background — authoritative (see also mobile block ~3939) */
  .service-page--consultancy .audit-page-hero > .audit-page-hero__texture {
    --consultancy-hero-mask-left: var(--navy);
    --consultancy-hero-mask-left-rgb: var(--navy-rgb);
    --consultancy-hero-mask-right: #05070a;
    --consultancy-hero-mask-right-rgb: 5, 7, 10;
    background-color: var(--consultancy-hero-mask-right);
    background-image:
      linear-gradient(to right,
        var(--consultancy-hero-mask-left) 0%,
        var(--consultancy-hero-mask-left) 45%,
        rgba(var(--consultancy-hero-mask-left-rgb), 0.94) 62%,
        rgba(var(--consultancy-hero-mask-left-rgb), 0.62) 80%,
        rgba(var(--consultancy-hero-mask-left-rgb), 0.22) 92%,
        rgba(var(--consultancy-hero-mask-left-rgb), 0) 100%),
      linear-gradient(to left,
        var(--consultancy-hero-mask-right) 0%,
        var(--consultancy-hero-mask-right) 50%,
        rgba(var(--consultancy-hero-mask-right-rgb), 0.96) 65%,
        rgba(var(--consultancy-hero-mask-right-rgb), 0.68) 82%,
        rgba(var(--consultancy-hero-mask-right-rgb), 0.28) 92%,
        rgba(var(--consultancy-hero-mask-right-rgb), 0) 100%),
      url('assets/consultancy_heroBG.webp'),
      linear-gradient(to right,
        var(--consultancy-hero-mask-left) 0%,
        var(--consultancy-hero-mask-left) 30%,
        #0e1522 40%,
        #0a0e16 50%,
        #070a10 60%,
        var(--consultancy-hero-mask-right) 72%,
        var(--consultancy-hero-mask-right) 100%);
    background-size:
      22% 100%,
      15% 100%,
      80% auto,
      cover;
    background-position:
      left center,
      right center,
      calc(100% - 100px) calc(26% - 38px),
      center;
    background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
  }
}

/* Consultancy hero — stronger left fade only at ≥1920px (image left edge ~15–17%).
   Widens the left strip and holds solid navy longer so the dissolve completes
   before the bitmap edge. Size/position of the image and the right fade untouched. */
@media (min-width: 1920px) {
  .service-page--consultancy .audit-page-hero > .audit-page-hero__texture {
    background-image:
      linear-gradient(to right,
        var(--consultancy-hero-mask-left) 0%,
        var(--consultancy-hero-mask-left) 52%,
        rgba(var(--consultancy-hero-mask-left-rgb), 0.94) 68%,
        rgba(var(--consultancy-hero-mask-left-rgb), 0.55) 84%,
        rgba(var(--consultancy-hero-mask-left-rgb), 0) 100%),
      linear-gradient(to left,
        var(--consultancy-hero-mask-right) 0%,
        var(--consultancy-hero-mask-right) 50%,
        rgba(var(--consultancy-hero-mask-right-rgb), 0.96) 65%,
        rgba(var(--consultancy-hero-mask-right-rgb), 0.68) 82%,
        rgba(var(--consultancy-hero-mask-right-rgb), 0.28) 92%,
        rgba(var(--consultancy-hero-mask-right-rgb), 0) 100%),
      url('assets/consultancy_heroBG.webp'),
      linear-gradient(to right,
        var(--consultancy-hero-mask-left) 0%,
        var(--consultancy-hero-mask-left) 30%,
        #0e1522 40%,
        #0a0e16 50%,
        #070a10 60%,
        var(--consultancy-hero-mask-right) 72%,
        var(--consultancy-hero-mask-right) 100%);
    background-size:
      36% 100%,
      15% 100%,
      80% auto,
      cover;
  }
}

@media (min-width: 769px) {
  .service-page--consultancy .consultancy-how-compare-band .audit-intro.audit-how:not(.audit-after) {
    padding-bottom: clamp(1.5rem, 2.5vw, 2rem);
  }

  .service-page--consultancy .consultancy-how-compare-band .audit-intro.audit-how:not(.audit-after) .audit-intro__how-note {
    margin-top: clamp(1.25rem, 2vw, 1.625rem);
  }

  .service-page--consultancy .audit-page-hero__text {
    max-width: 40rem;
    padding-left: clamp(1.5rem, 4vw, 4rem);
  }

  .service-page--consultancy .audit-page-hero__text .hero__tagline {
    font-size: 0.6875rem;
    margin-bottom: 18px;
  }

  .service-page--consultancy .audit-page-hero__title {
    font-size: clamp(1.5rem, 3vw, 2.25rem);
  }

  .service-page--consultancy .audit-page-hero__divider {
    width: min(100%, 260px);
    margin: 22px 0 24px;
  }

  .service-page--consultancy .audit-page-hero__text .hero__subheadline {
    font-size: clamp(0.9rem, 1.45vw, 1rem);
    max-width: 38ch;
  }

  .service-page--consultancy .audit-page-hero__text .hero__cta {
    margin-top: 28px;
    font-size: 0.75rem;
  }
}

/* PPC Mentoring — intro lead section (learnedBG) */
.service-page--training .audit-intro--mentoring-lead {
  position: relative;
  overflow: hidden;
  background-color: var(--cream);
  padding: clamp(2.5rem, 5vw, 3.5rem) 0;
  color: var(--navy);
}

.service-page--consultancy .audit-intro--mentoring-lead {
  position: relative;
  overflow: hidden;
  background-color: var(--cream);
  padding: clamp(2.5rem, 5vw, 3.5rem) 0;
  color: var(--navy);
}

.service-page--training .audit-intro--mentoring-lead::before,
.service-page--consultancy .audit-intro--mentoring-lead::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: url('assets/learnedBG.webp');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  pointer-events: none;
}

.service-page--training .audit-intro--mentoring-lead .audit-intro__layout,
.service-page--consultancy .audit-intro--mentoring-lead .audit-intro__layout {
  position: relative;
  z-index: 1;
}

.service-page--training .mentoring-lead,
.service-page--consultancy .mentoring-lead {
  max-width: 50rem;
  margin-inline: auto;
  text-align: center;
}

.service-page--training .mentoring-lead__heading,
.service-page--consultancy .mentoring-lead__heading {
  margin: 0;
  font-family: var(--font-display);
  line-height: 1.45;
  letter-spacing: 0.02em;
  text-align: center;
}

.service-page--training .mentoring-lead__heading {
  color: var(--navy);
}

.service-page--consultancy .mentoring-lead__heading:not(.mentoring-lead__heading--intro):not(.mentoring-lead__heading--sub) {
  font-size: clamp(1.25rem, 2.4vw, 1.68rem);
  font-weight: 400;
}

.service-page--training .mentoring-lead__heading {
  font-size: clamp(1.43rem, 2.75vw, 1.92rem);
  font-weight: 700;
}

.service-page--training .mentoring-lead__highlight,
.service-page--consultancy .mentoring-lead__highlight {
  color: var(--gold);
  font-style: italic;
}

.service-page--consultancy .mentoring-lead__heading-br {
  display: none;
}

.service-page--training .mentoring-lead__heading-br {
  display: none;
}

.service-page--training .mentoring-lead__prose--note,
.service-page--consultancy .mentoring-lead__prose--note {
  line-height: 1.75;
}

.service-page--consultancy .mentoring-lead__prose--note {
  font-size: clamp(0.9375rem, 1.4vw, 1rem);
}

.service-page--training .mentoring-lead__prose--note {
  font-size: clamp(0.8125rem, 1.15vw, 0.875rem);
  line-height: 1.65;
}

.service-page--training .mentoring-lead__prose + .mentoring-lead__prose,
.service-page--consultancy .mentoring-lead__prose + .mentoring-lead__prose {
  margin-top: clamp(1rem, 2vw, 1.25rem);
}

@media (min-width: 769px) {
  .service-page--training .mentoring-lead__heading {
    font-size: clamp(1.43rem, 2.75vw, 1.92rem);
  }

  .service-page--consultancy .mentoring-lead__prose:not(.mentoring-lead__prose--note),
  .service-page--consultancy .mentoring-lead__prose--note {
    font-size: clamp(0.9375rem, 1.4vw, 1rem);
    line-height: 1.75;
  }

  .service-page--training .mentoring-lead__prose:not(.mentoring-lead__prose--note),
  .service-page--training .mentoring-lead__prose--note {
    font-size: clamp(0.8125rem, 1.15vw, 0.875rem);
    line-height: 1.65;
  }
}

.service-page--training .mentoring-lead__divider,
.service-page--consultancy .mentoring-lead__divider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: min(100%, 12.5rem);
  margin: clamp(1.125rem, 2.5vw, 1.5rem) auto;
}

.service-page--training .mentoring-lead__divider-line,
.service-page--consultancy .mentoring-lead__divider-line {
  flex: 1;
  height: 1px;
  background: rgba(var(--gold-rgb), 0.5);
}

.service-page--training .mentoring-lead__divider-diamond,
.service-page--consultancy .mentoring-lead__divider-diamond {
  flex-shrink: 0;
  width: 6px;
  height: 6px;
  background: var(--gold);
  transform: rotate(45deg);
}

.service-page--training .mentoring-lead__prose,
.service-page--consultancy .mentoring-lead__prose {
  margin: 0;
  font-family: var(--font-sans);
  font-weight: 400;
  color: var(--navy);
  text-align: center;
}

.service-page--consultancy .mentoring-lead__prose {
  font-size: clamp(0.9375rem, 1.4vw, 1rem);
  line-height: 1.75;
}

.service-page--training .mentoring-lead__prose {
  font-size: clamp(0.8125rem, 1.15vw, 0.875rem);
  line-height: 1.65;
}

@media (max-width: 768px) {
  .service-page--training .audit-intro--mentoring-lead,
  .service-page--consultancy .audit-intro--mentoring-lead {
    padding: clamp(2rem, 5vw, 2.75rem) 0;
  }

  .service-page--training .mentoring-lead,
  .service-page--consultancy .mentoring-lead {
    max-width: 100%;
    padding-inline: 0;
  }

  .service-page--training .mentoring-lead__heading {
    font-size: clamp(1.1rem, 4.4vw, 1.44rem);
  }

  .service-page--consultancy .mentoring-lead__heading-br {
    display: block;
  }

  .service-page--consultancy .mentoring-lead__prose:not(.mentoring-lead__prose--note),
  .service-page--consultancy .mentoring-lead__prose--note {
    font-size: clamp(0.8rem, 3.4vw, 0.9rem);
    line-height: 1.65;
  }

  .service-page--training .mentoring-lead__prose:not(.mentoring-lead__prose--note),
  .service-page--training .mentoring-lead__prose--note {
    font-size: clamp(0.8rem, 3.4vw, 0.9rem);
    line-height: 1.65;
  }

  .service-page--training .mentoring-lead__divider,
  .service-page--consultancy .mentoring-lead__divider {
    margin: 1rem auto;
    width: min(100%, 10rem);
  }

  .service-page--consultancy .mentoring-lead__who-block {
    margin-top: clamp(2.5rem, 7vw, 3.5rem);
    max-width: 100%;
  }

  .service-page--consultancy .mentoring-lead__heading--intro + .mentoring-lead__title-rule {
    margin-top: 1rem;
    margin-bottom: 1rem;
  }

  /* PPC Mentoring / Consultancy — Who is this for? / What we can help with? */
  .service-page--training .promises.audit-look,
  .service-page--consultancy .promises.audit-look {
    padding: clamp(2.25rem, 6vw, 3rem) 0;
  }

  .service-page--training .promises.audit-look .audit-section__title {
    font-size: clamp(1.25rem, 5vw, 1.65rem);
    margin-bottom: clamp(1.25rem, 4vw, 1.75rem);
  }

  .service-page--training .promises.audit-look .audit-find__grid,
  .service-page--consultancy .promises.audit-look .audit-find__grid {
    grid-template-columns: 1fr;
    gap: 1.375rem;
    row-gap: 1.375rem;
    max-width: 100%;
  }

  .service-page--training .promises.audit-look .audit-find__grid .familiar__item,
  .service-page--consultancy .promises.audit-look .audit-find__grid .familiar__item {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 11px;
    padding: 0;
    border-bottom: none;
  }

  .service-page--training .promises.audit-look .audit-find__grid .familiar__item:nth-last-child(-n+2),
  .service-page--consultancy .promises.audit-look .audit-find__grid .familiar__item:nth-last-child(-n+2) {
    border-bottom: none;
    padding-bottom: 0;
  }

  .service-page--training .promises.audit-look .audit-find__grid .familiar__item:last-child:not(.familiar__item--featured) {
    grid-column: auto;
    justify-self: start;
    width: 100%;
    max-width: none;
    padding-top: 0;
  }

  .service-page--consultancy .promises.audit-look .audit-find__grid .familiar__item:last-child {
    grid-column: auto;
    justify-self: start;
    width: 100%;
    max-width: none;
    padding-top: 0;
  }

  .service-page--training .promises.audit-look .audit-find__grid .familiar__text {
    text-align: left;
    flex: 1;
    font-size: clamp(0.8rem, 3.4vw, 0.9rem);
    line-height: 1.65;
  }

  .service-page--consultancy .promises.audit-look .audit-find__grid .familiar__text {
    text-align: left;
    flex: 1;
    font-size: clamp(0.75rem, 3.1vw, 0.85rem);
    line-height: 1.65;
  }

  .service-page--training .promises.audit-look .audit-find__grid .familiar__icon,
  .service-page--consultancy .promises.audit-look .audit-find__grid .familiar__icon {
    width: 28px;
    height: 28px;
    flex-shrink: 0;
  }

  .service-page--training .promises.audit-look .audit-find__grid .familiar__icon-check,
  .service-page--consultancy .promises.audit-look .audit-find__grid .familiar__icon-check {
    width: 11.2px;
    height: 11.2px;
  }

  .service-page--consultancy .promises.audit-look .audit-look__intro {
    font-size: clamp(0.8rem, 3.4vw, 0.9rem);
    line-height: 1.65;
  }

  .service-page--consultancy .promises.audit-look .audit-look__subtitle {
    margin-bottom: clamp(1.875rem, 5.5vw, 2.5rem);
  }
}

/* PPC Mentoring — How it works */
.service-page--training .audit-intro.audit-how:not(.audit-after) {
  position: relative;
  overflow: hidden;
  background-color: var(--cream);
}

.service-page--training .audit-intro.audit-how:not(.audit-after)::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: url('assets/learnedBG.webp');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  pointer-events: none;
}

.service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__layout,
.service-page--consultancy .audit-intro.audit-how:not(.audit-after) .audit-intro__layout {
  position: relative;
  z-index: 1;
}

.service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__step-num,
.service-page--consultancy .audit-intro.audit-how:not(.audit-after) .audit-intro__step-num {
  font-weight: 400;
}

.service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__heading {
  font-size: clamp(1.43rem, 2.75vw, 1.92rem);
  color: var(--navy);
}

.service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__heading {
  font-size: clamp(1.175rem, 2.25vw, 1.575rem);
}

.service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__step-lead,
.service-page--consultancy .audit-intro.audit-how:not(.audit-after) .audit-intro__step-lead {
  font-family: var(--font-display);
  font-weight: 700;
  color: var(--gold);
}

.service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__step-body {
  font-size: clamp(0.8125rem, 1.15vw, 0.875rem);
}

.service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__step-num,
.service-page--consultancy .audit-intro.audit-how:not(.audit-after) .audit-intro__step-num {
  font-size: clamp(1.75rem, 5vw, 2rem);
}

.service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__step-content .audit-intro__step-body + .audit-intro__step-body,
.service-page--consultancy .audit-intro.audit-how:not(.audit-after) .audit-intro__step-content .audit-intro__step-body + .audit-intro__step-body {
  margin-top: 1rem;
}

@media (min-width: 769px) {
  .service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__main,
.service-page--consultancy .audit-intro.audit-how:not(.audit-after) .audit-intro__main {
    --audit-step-num-width: clamp(3.5rem, 5.5vw, 4.5rem);
    --audit-step-num-gap: 2.25rem;
    --audit-step-line-gap: 1.75rem;
    margin-inline: 0;
    padding-left: calc(clamp(5rem, 8vw, 7.5rem) + 35px);
    text-align: left;
  }

  .service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__main {
    margin-inline: auto;
    padding-left: 0;
  }

  .service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__heading-wrap {
    padding-left: clamp(5rem, 8vw, 7.5rem);
  }

  .service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__heading-wrap,
.service-page--consultancy .audit-intro.audit-how:not(.audit-after) .audit-intro__heading-wrap {
    align-items: flex-start;
  }

  .service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__heading {
    text-align: left;
    font-size: clamp(1.43rem, 2.75vw, 1.92rem);
    color: var(--navy);
  }

  .service-page--consultancy .audit-intro.audit-how:not(.audit-after) .audit-intro__heading {
    text-align: left;
  }

  .service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__heading {
    font-size: clamp(1.175rem, 2.25vw, 1.575rem);
  }

  .service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__step-body,
.service-page--consultancy .audit-intro.audit-how:not(.audit-after) .audit-intro__step-body {
    margin: 0;
    font-family: var(--font-sans);
    font-size: clamp(0.9375rem, 1.4vw, 1rem);
    font-weight: 400;
    line-height: 1.75;
    color: var(--navy);
    text-align: left;
  }

  .service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__step-lead,
.service-page--consultancy .audit-intro.audit-how:not(.audit-after) .audit-intro__step-lead {
    font-family: var(--font-display);
    font-weight: 700;
    color: var(--gold);
  }

  .service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__steps,
.service-page--consultancy .audit-intro.audit-how:not(.audit-after) .audit-intro__steps {
    list-style: none;
    margin: clamp(2.25rem, 3.5vw, 2.75rem) 0 0;
    margin-left: calc(var(--audit-step-num-width) + var(--audit-step-num-gap));
    padding: 0 0 0 var(--audit-step-line-gap);
    border-left: 2px solid var(--gold);
  }

  .service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__steps {
    padding-left: calc(clamp(5rem, 8vw, 7.5rem) + var(--audit-step-line-gap));
  }

  .service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__step,
.service-page--consultancy .audit-intro.audit-how:not(.audit-after) .audit-intro__step {
    position: relative;
    padding: 0 0 clamp(2rem, 3vw, 2.5rem);
  }

  .service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__step:last-child,
.service-page--consultancy .audit-intro.audit-how:not(.audit-after) .audit-intro__step:last-child {
    padding-bottom: 0;
  }

  .service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__step-num,
.service-page--consultancy .audit-intro.audit-how:not(.audit-after) .audit-intro__step-num {
    position: absolute;
    left: calc(-1 * (var(--audit-step-num-width) + var(--audit-step-num-gap) + var(--audit-step-line-gap)));
    width: var(--audit-step-num-width);
    font-family: var(--font-display);
    font-size: clamp(2.125rem, 3vw, 2.5rem);
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0.04em;
    color: var(--gold);
    text-align: right;
  }

  .service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__step-num,
.service-page--consultancy .audit-intro.audit-how:not(.audit-after) .audit-intro__step-num {
    font-size: clamp(1.875rem, 2.7vw, 2.25rem);
  }
}

@media (max-width: 768px) {
  .service-page--training .audit-intro.audit-how:not(.audit-after),
.service-page--consultancy .audit-intro.audit-how:not(.audit-after) {
    overflow-x: hidden;
  }

  .service-page--consultancy .audit-intro.audit-how:not(.audit-after) > .audit-intro__layout.container {
    padding-left: 20px;
    padding-right: 20px;
  }

  .service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__main,
.service-page--consultancy .audit-intro.audit-how:not(.audit-after) .audit-intro__main {
    max-width: none;
    margin-inline: 0;
    padding-left: 0;
    text-align: left;
  }

  .service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__heading-wrap,
.service-page--consultancy .audit-intro.audit-how:not(.audit-after) .audit-intro__heading-wrap {
    align-items: flex-start;
    margin-bottom: 0.85rem;
  }

  .service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__heading {
    text-align: left;
    font-size: clamp(1.25rem, 5vw, 1.65rem);
    color: var(--navy);
  }

  .service-page--consultancy .audit-intro.audit-how:not(.audit-after) .audit-intro__heading {
    text-align: left;
  }

  .service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__heading {
    font-size: clamp(1.175rem, 2.25vw, 1.575rem);
  }

  .service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__steps,
.service-page--consultancy .audit-intro.audit-how:not(.audit-after) .audit-intro__steps {
    list-style: none;
    margin: 1rem 0 0;
    padding: 0 0 0 0.875rem;
    border-left: 2px solid var(--gold);
  }

  .service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__step,
.service-page--consultancy .audit-intro.audit-how:not(.audit-after) .audit-intro__step {
    position: relative;
    padding: 0 0 2.5rem 0.75rem;
    min-width: 0;
  }

  .service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__step:last-child,
.service-page--consultancy .audit-intro.audit-how:not(.audit-after) .audit-intro__step:last-child {
    padding-bottom: 0;
  }

  .service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__step-content,
.service-page--consultancy .audit-intro.audit-how:not(.audit-after) .audit-intro__step-content {
    min-width: 0;
  }

  .service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__step-num,
.service-page--consultancy .audit-intro.audit-how:not(.audit-after) .audit-intro__step-num {
    display: block;
    position: static;
    width: auto;
    margin: 0 0 0.3rem;
    font-family: var(--font-display);
    font-size: clamp(2rem, 8.1vw, 2.25rem);
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.04em;
    color: var(--gold);
    text-align: left;
  }

  .service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__step-lead,
.service-page--consultancy .audit-intro.audit-how:not(.audit-after) .audit-intro__step-lead {
    font-family: var(--font-display);
    font-weight: 700;
    color: var(--gold);
  }

  .service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__step-body {
    margin: 0;
    font-family: var(--font-sans);
    font-size: clamp(0.8rem, 3.4vw, 0.9rem);
    font-weight: 400;
    line-height: 1.65;
    color: var(--navy);
    text-align: left;
  }
}

.service-page--consultancy .audit-intro.audit-how:not(.audit-after) .audit-intro__how-note {
  margin: clamp(1.75rem, 3vw, 2.25rem) 0 0;
  font-family: var(--font-sans);
  font-size: clamp(0.6875rem, 1vw, 0.75rem);
  font-weight: 400;
  line-height: 1.6;
  color: var(--navy);
  text-align: left;
}

@media (max-width: 768px) {
  .service-page--consultancy .audit-intro.audit-how:not(.audit-after) .audit-intro__how-note {
    margin-top: 1.5rem;
    font-size: clamp(0.625rem, 2.8vw, 0.7rem);
    line-height: 1.55;
  }
}

/* PPC Mentoring — How a session works + Pricing (shared thirdPartBG band) */
.service-page--training .mentoring-session-pricing-band {
  position: relative;
  isolation: isolate;
  /* Same image technique as "Who is this for" — center / cover / no-repeat */
  background: var(--navy) url('assets/thirdPartBG.webp') center / cover no-repeat;
}

/* Soft navy wash: hides bright left streak without cropping/zooming the texture */
.service-page--training .mentoring-session-pricing-band::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    linear-gradient(
      to right,
      rgba(var(--navy-rgb), 0.9) 0%,
      rgba(var(--navy-rgb), 0.5) 20%,
      rgba(var(--navy-rgb), 0.15) 38%,
      transparent 52%
    ),
    linear-gradient(
      rgba(var(--navy-rgb), 0.22),
      rgba(var(--navy-rgb), 0.22)
    );
}

.service-page--training .mentoring-session-pricing-band > * {
  position: relative;
  z-index: 1;
}

.service-page--training .mentoring-session.familiar.audit-find {
  background: transparent;
  padding: clamp(3rem, 6vw, 4.5rem) 0;
}

.service-page--training .mentoring-session {
  position: relative;
  background: transparent;
  padding: clamp(3rem, 6vw, 4.5rem) 0;
}

.service-page--training .mentoring-session__inner {
  position: relative;
  z-index: 1;
}

.service-page--training .mentoring-session__heading-wrap {
  align-items: center;
  margin-bottom: 0;
}

.service-page--training .mentoring-session__divider {
  display: block;
  width: min(70%, 48rem);
  height: 1px;
  margin: clamp(1.5625rem, 2.5vw, 1.875rem) auto;
  background: var(--gold);
}

.service-page--training .mentoring-session__heading {
  font-family: var(--font-display);
  font-size: clamp(1.43rem, 2.75vw, 1.92rem);
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: 0.01em;
  color: #ffffff;
  text-align: center;
}

.service-page--training .mentoring-session__cards {
  list-style: none;
  margin: 0 auto;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(1.875rem, 3vw, 2.5rem);
  align-items: start;
  max-width: var(--audit-text-max);
  width: 100%;
}

.service-page--training .mentoring-session__card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  text-align: center;
  background: none;
  border: none;
  border-radius: 0;
  box-shadow: none;
  padding: 0;
}

.service-page--training .mentoring-session__card-title {
  margin: 0 0 1rem;
  font-family: var(--font-display);
  font-size: clamp(1rem, 1.1vw, 1.125rem);
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--gold);
  text-align: center;
}

.service-page--training .mentoring-session__card-body {
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.7875rem, 1.26vw, 0.84375rem); /* ~10% smaller than prior clamp */
  font-weight: 400;
  line-height: 1.75;
  color: #ffffff;
  text-align: center;
}

.service-page--training .mentoring-session__statement {
  margin: 0 auto;
  max-width: var(--audit-text-max);
  font-family: var(--font-display);
  font-size: clamp(0.875rem, 1.35vw, 0.9875rem);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.01em;
  color: var(--gold);
  text-align: center;
}

@media (min-width: 769px) {
  .service-page--training .mentoring-session__layout {
    max-width: var(--audit-text-max);
    margin-inline: auto;
    padding-left: 0;
    text-align: center;
  }

  .service-page--training .mentoring-session__divider {
    display: none;
  }

  .service-page--training .mentoring-session__cards {
    gap: 0;
    align-items: stretch;
    margin: clamp(2rem, 2.5vw, 2.5rem) auto 0;
  }

  .service-page--training .mentoring-session__statement {
    margin: clamp(2rem, 2.5vw, 2.5rem) auto 0;
  }

  .service-page--training .mentoring-session__card {
    align-self: stretch;
    height: 100%;
  }

  .service-page--training .mentoring-session__card + .mentoring-session__card {
    border-left: 1px solid var(--gold);
    padding-left: clamp(1.25rem, 2vw, 1.75rem);
  }

  .service-page--training .mentoring-session__card:not(:last-child) {
    padding-right: clamp(1.25rem, 2vw, 1.75rem);
  }
}

@media (max-width: 768px) {
  .service-page--training .mentoring-session.familiar.audit-find {
    padding: clamp(2.25rem, 6vw, 3rem) 0;
  }

  .service-page--training .mentoring-session {
    padding: clamp(2.25rem, 6vw, 3rem) 0;
  }

  .service-page--training .mentoring-session__heading {
    font-size: clamp(1.25rem, 5vw, 1.65rem);
  }

  .service-page--training .mentoring-session .audit-intro__heading {
    font-size: clamp(1.25rem, 5vw, 1.65rem);
    text-align: center;
    color: #ffffff;
  }

  .service-page--training .mentoring-session__divider {
    margin: clamp(2.1875rem, 5vw, 2.5rem) auto;
  }

  .service-page--training .mentoring-session__cards {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .service-page--training .mentoring-session__card + .mentoring-session__card::before {
    content: '';
    display: block;
    width: min(70%, 48rem);
    height: 1px;
    margin: clamp(2.1875rem, 5vw, 2.5rem) auto;
    background: var(--gold);
  }

  .service-page--training .mentoring-session__card-title {
    font-size: clamp(0.875rem, 3.5vw, 0.9375rem);
  }

  .service-page--training .mentoring-session__card-body {
    font-size: clamp(0.66375rem, 3.06vw, 0.75375rem); /* ~10% smaller than prior mobile clamp */
    line-height: 1.65;
  }

  .service-page--training .mentoring-session__statement {
    margin-top: 0;
    font-size: clamp(0.8rem, 3.35vw, 0.9rem);
  }
}

/* PPC Mentoring — Pricing */
.service-page--training .mentoring-pricing.audit-pricing {
  position: relative;
  background: transparent;
  padding-top: clamp(0.625rem, 2vw, 1.125rem);
  padding-bottom: clamp(2.8125rem, 4vw, 3.3125rem);
}

.service-page--training .mentoring-pricing__inner {
  position: relative;
  z-index: 1;
}

.service-page--training .mentoring-pricing__layout {
  max-width: var(--shell-reading);
  margin-inline: auto;
  padding: clamp(2.5rem, 4vw, 3.125rem);
  text-align: center;
  border: 1px solid var(--gold);
  border-radius: 5px;
  background: transparent;
}

.service-page--training .mentoring-pricing__heading-wrap {
  align-items: center;
  margin-bottom: clamp(1.25rem, 2.5vw, 1.75rem);
}

.service-page--training .mentoring-pricing .audit-intro__rule--heading {
  background: var(--gold);
}

.service-page--training .mentoring-pricing__heading {
  font-weight: 700;
  font-size: clamp(1.43rem, 2.75vw, 1.92rem);
  color: #ffffff;
  text-align: center;
}

.service-page--training .mentoring-pricing .audit-intro__heading {
  font-size: clamp(1.43rem, 2.75vw, 1.92rem);
  color: #ffffff;
}

.service-page--training .mentoring-pricing__prose {
  margin: 0 auto;
  max-width: none;
  font-family: var(--font-sans);
  font-size: clamp(0.890625rem, 1.33vw, 0.95rem); /* ~5% smaller than prior clamp */
  font-weight: 400;
  line-height: 1.75;
  color: #ffffff;
  text-align: center;
}

.service-page--training .mentoring-pricing__highlight {
  font-weight: 700;
  color: var(--gold);
}

.service-page--training .mentoring-pricing__cta {
  margin: clamp(1.5625rem, 2.5vw, 1.875rem) auto 0;
}

@media (max-width: 768px) {
  .service-page--training .mentoring-pricing.audit-pricing {
    padding-top: clamp(0.25rem, 1.5vw, 0.5rem);
    padding-bottom: clamp(2.0625rem, 4vw, 2.3125rem);
  }

  .service-page--training .mentoring-pricing .audit-intro__heading,
  .service-page--training .mentoring-pricing__heading {
    font-size: clamp(1.25rem, 5vw, 1.65rem);
  }

  .service-page--training .mentoring-pricing__prose {
    font-size: clamp(0.76rem, 3.23vw, 0.855rem); /* ~5% smaller than prior mobile clamp */
    line-height: 1.65;
  }

  .service-page--training .mentoring-pricing__cta {
    margin-top: clamp(1.375rem, 4vw, 1.625rem);
    min-height: 44px;
    padding: 12px 24px;
  }

  .service-page--training .audit-intro.audit-after .audit-intro__heading {
    font-size: clamp(1.25rem, 5vw, 1.65rem);
  }

  .service-page--training .audit-faq .audit-section__title,
  .service-page--training .audit-faq__title {
    font-size: clamp(1rem, 3.8vw, 1.2rem);
  }

  .service-page--training .audit-faq .service-page__faq-item p {
    font-size: 0.8125rem;
    line-height: 1.5;
  }

  .service-page--training .audit-faq .service-page__faq-item summary::after,
  .service-page--consultancy .audit-faq .service-page__faq-item summary::after {
    font-size: 1.15rem;
  }
}

.service-page--audit .audit-intro,
.service-page--training .audit-intro,
.service-page--consultancy .audit-intro,
.service-page--ad-mgmt .audit-intro {
  background: #fff;
  color: var(--navy);
  padding: clamp(3.5rem, 7vw, 5.5rem) 0;
}

.service-page--ad-mgmt .audit-intro.audit-intro--ad-mgmt-lead {
  position: relative;
  overflow: hidden;
  background-color: var(--cream);
  padding: clamp(2.5rem, 5vw, 3.5rem) 0;
}

.service-page--audit .audit-intro {
  position: relative;
  overflow: hidden;
  background-color: var(--cream);
}

.service-page--audit .audit-intro::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: url('assets/learnedBG.webp');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  pointer-events: none;
}

.service-page--audit .audit-intro::after {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(var(--cream-rgb), 0.86);
  pointer-events: none;
}

.service-page--audit .audit-intro__layout {
  position: relative;
  z-index: 1;
}

.service-page--audit .audit-intro__prose-gold,
.service-page--audit .audit-intro__step-title {
  font-weight: 700;
}

.service-page--audit .audit-intro__step-num {
  font-weight: 400;
}

.service-page--audit .audit-intro__layout,
.service-page--training .audit-intro__layout,
.service-page--consultancy .audit-intro__layout,
.service-page--ad-mgmt .audit-intro__layout {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.service-page--audit .audit-intro__main,
.service-page--training .audit-intro__main,
.service-page--consultancy .audit-intro__main,
.service-page--ad-mgmt .audit-intro__main {
  max-width: var(--audit-text-max);
  margin-inline: auto;
  min-width: 0;
  text-align: center;
}

.service-page--audit .audit-intro__divider,
.service-page--training .audit-intro__divider,
.service-page--consultancy .audit-intro__divider,
.service-page--ad-mgmt .audit-intro__divider {
  display: block;
  width: 100%;
  max-width: var(--audit-text-max);
  height: 1px;
  margin: clamp(2rem, 4vw, 3rem) auto;
  background: rgba(var(--navy-rgb), 0.12);
}

.service-page--audit .audit-intro__features,
.service-page--training .audit-intro__features,
.service-page--consultancy .audit-intro__features,
.service-page--ad-mgmt .audit-intro__features {
  list-style: none;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(1.5rem, 3vw, 2.5rem);
  padding: 0;
  margin: 0 auto;
  max-width: var(--audit-text-max);
  width: 100%;
}

.service-page--audit .audit-intro__eyebrow,
.service-page--training .audit-intro__eyebrow,
.service-page--consultancy .audit-intro__eyebrow,
.service-page--ad-mgmt .audit-intro__eyebrow {
  margin: 0 0 0.85rem;
  font-family: var(--font-serif);
  font-size: 0.9875rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--gold);
  text-align: center;
}

.service-page--audit .audit-intro__heading-wrap,
.service-page--training .audit-intro__heading-wrap,
.service-page--consultancy .audit-intro__heading-wrap,
.service-page--ad-mgmt .audit-intro__heading-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: clamp(1.25rem, 2.5vw, 1.75rem);
}

.service-page--audit .audit-intro__heading,
.service-page--training .audit-intro__heading,
.service-page--consultancy .audit-intro__heading,
.service-page--ad-mgmt .audit-intro__heading {
  margin: 0 0 0.65rem;
  font-family: var(--font-display);
  font-size: clamp(1.75rem, 3.2vw, 2.375rem);
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: 0.01em;
  text-transform: none;
  color: var(--navy);
  text-align: center;
}

.service-page--training .mentoring-session .audit-intro__heading-wrap {
  align-items: center;
}

.service-page--training .mentoring-session .audit-intro__heading {
  font-size: clamp(1.43rem, 2.75vw, 1.92rem);
  text-align: center;
  color: #ffffff;
}

.service-page--audit .audit-intro__rule--heading,
.service-page--training .audit-intro__rule--heading,
.service-page--consultancy .audit-intro__rule--heading,
.service-page--ad-mgmt .audit-intro__rule--heading {
  display: block;
  width: 3.25rem;
  height: 1px;
  background: var(--gold);
}

.service-page--audit .audit-intro__timeline,
.service-page--training .audit-intro__timeline,
.service-page--consultancy .audit-intro__timeline,
.service-page--ad-mgmt .audit-intro__timeline {
  position: relative;
  margin: clamp(1.5rem, 3vw, 2rem) auto;
  padding: clamp(1.5rem, 3vw, 2rem) 0;
  border-top: 1px solid rgba(var(--navy-rgb), 0.12);
  border-bottom: 1px solid rgba(var(--navy-rgb), 0.12);
}

.service-page--audit .audit-intro__timeline::before,
.service-page--training .audit-intro__timeline::before,
.service-page--consultancy .audit-intro__timeline::before,
.service-page--ad-mgmt .audit-intro__timeline::before {
  display: none;
}

.service-page--audit .audit-intro__timeline-item,
.service-page--training .audit-intro__timeline-item,
.service-page--consultancy .audit-intro__timeline-item,
.service-page--ad-mgmt .audit-intro__timeline-item {
  display: block;
}

.service-page--audit .audit-intro__timeline-item + .audit-intro__timeline-item,
.service-page--training .audit-intro__timeline-item + .audit-intro__timeline-item,
.service-page--consultancy .audit-intro__timeline-item + .audit-intro__timeline-item,
.service-page--ad-mgmt .audit-intro__timeline-item + .audit-intro__timeline-item {
  margin-top: clamp(1.25rem, 2.5vw, 1.75rem);
}

.service-page--audit .audit-intro__timeline-marker,
.service-page--training .audit-intro__timeline-marker,
.service-page--consultancy .audit-intro__timeline-marker,
.service-page--ad-mgmt .audit-intro__timeline-marker {
  display: none;
}

.service-page--audit .audit-intro__highlight,
.service-page--training .audit-intro__highlight,
.service-page--consultancy .audit-intro__highlight,
.service-page--ad-mgmt .audit-intro__highlight {
  font-weight: 600;
  color: var(--gold);
}

@media (min-width: 769px) {
  .service-page--audit .audit-intro__main {
    --audit-step-num-width: clamp(3.5rem, 5.5vw, 4.5rem);
    --audit-step-num-gap: 2.25rem;
    --audit-step-line-gap: 1.75rem;
    margin-inline: 0;
    padding-left: clamp(5rem, 8vw, 7.5rem);
    text-align: left;
  }

  .service-page--audit .audit-intro__eyebrow {
    text-align: left;
  }

  .service-page--audit .audit-intro__heading-wrap {
    align-items: flex-start;
  }

  .service-page--audit .audit-intro__heading {
    text-align: left;
  }

  .service-page--audit .audit-intro__prose--intro,
  .service-page--audit .audit-intro__step-body {
    margin: 0;
    font-family: var(--font-sans);
    font-size: clamp(0.9375rem, 1.4vw, 1rem);
    font-weight: 400;
    line-height: 1.75;
    color: var(--navy);
    text-align: left;
  }

  .service-page--audit .audit-intro__prose--intro {
    margin-bottom: 0;
    max-width: none;
  }

  .service-page--audit .audit-intro__prose-gold {
    font-family: var(--font-display);
    color: var(--gold);
    font-weight: 700;
  }

  .service-page--audit .audit-intro__steps {
    list-style: none;
    margin: clamp(2.25rem, 3.5vw, 2.75rem) 0 0;
    margin-left: calc(var(--audit-step-num-width) + var(--audit-step-num-gap));
    padding: 0 0 0 var(--audit-step-line-gap);
    border-left: 2px solid var(--gold);
  }

  .service-page--audit .audit-intro__step {
    position: relative;
    padding: 0 0 clamp(2rem, 3vw, 2.5rem);
  }

  .service-page--audit .audit-intro__step:last-child {
    padding-bottom: 0;
  }

  .service-page--audit .audit-intro__step-num {
    position: absolute;
    left: calc(-1 * (var(--audit-step-num-width) + var(--audit-step-num-gap) + var(--audit-step-line-gap)));
    width: var(--audit-step-num-width);
    font-family: var(--font-display);
    font-size: clamp(2.125rem, 3vw, 2.5rem);
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0.04em;
    color: var(--gold);
    text-align: right;
  }

  .service-page--audit .audit-intro__step-title {
    margin: 0 0 0.85rem;
    font-family: var(--font-display);
    font-size: clamp(1rem, 1.15vw, 1.125rem);
    font-weight: 700;
    line-height: 1.35;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--gold);
    text-align: left;
  }

  .service-page--audit .audit-intro__step-body .audit-intro__highlight {
    font-weight: 600;
    color: var(--gold);
  }
}

.service-page--audit .audit-intro__feature,
.service-page--training .audit-intro__feature,
.service-page--consultancy .audit-intro__feature,
.service-page--ad-mgmt .audit-intro__feature {
  display: flex;
  gap: 18px;
  align-items: flex-start;
  text-align: left;
}

.service-page--audit .audit-intro__feature-icon,
.service-page--training .audit-intro__feature-icon,
.service-page--consultancy .audit-intro__feature-icon,
.service-page--ad-mgmt .audit-intro__feature-icon {
  flex-shrink: 0;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: rgba(var(--gold-rgb), 0.16);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--navy);
}

.service-page--audit .audit-intro__feature-icon svg,
.service-page--training .audit-intro__feature-icon svg,
.service-page--consultancy .audit-intro__feature-icon svg,
.service-page--ad-mgmt .audit-intro__feature-icon svg {
  width: 26px;
  height: 26px;
}

.service-page--audit .audit-intro__prose,
.service-page--training .audit-intro__prose,
.service-page--consultancy .audit-intro__prose,
.service-page--ad-mgmt .audit-intro__prose {
  font-size: clamp(0.9375rem, 1.4vw, 1rem);
  line-height: 1.75;
  color: rgba(var(--navy-rgb), 0.72);
  text-align: center;
}

.service-page--audit .audit-intro__timeline .audit-intro__prose,
.service-page--training .audit-intro__timeline .audit-intro__prose,
.service-page--consultancy .audit-intro__timeline .audit-intro__prose,
.service-page--ad-mgmt .audit-intro__timeline .audit-intro__prose {
  text-align: center;
}

.service-page--audit .audit-intro__prose + .audit-intro__prose,
.service-page--training .audit-intro__prose + .audit-intro__prose,
.service-page--consultancy .audit-intro__prose + .audit-intro__prose,
.service-page--ad-mgmt .audit-intro__prose + .audit-intro__prose {
  margin-top: 1rem;
}

@media (min-width: 769px) {
  .service-page--audit .audit-intro__prose.audit-intro__prose--intro {
    text-align: left;
    color: var(--navy);
    max-width: none;
  }
}

.service-page--audit .audit-intro__feature-text strong,
.service-page--training .audit-intro__feature-text strong,
.service-page--consultancy .audit-intro__feature-text strong,
.service-page--ad-mgmt .audit-intro__feature-text strong {
  display: block;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--navy);
  margin-bottom: 6px;
}

.service-page--audit .audit-intro__feature-text span,
.service-page--training .audit-intro__feature-text span,
.service-page--consultancy .audit-intro__feature-text span,
.service-page--ad-mgmt .audit-intro__feature-text span {
  display: block;
  font-size: 0.9375rem;
  line-height: 1.65;
  color: rgba(var(--navy-rgb), 0.68);
}

.service-page--audit .hero-section-divider,
.service-page--training .hero-section-divider,
.service-page--consultancy .hero-section-divider,
.service-page--ad-mgmt .hero-section-divider {
  padding: 32px 40px 0;
}

.service-page--audit .hero-section-divider--cream,
.service-page--training .hero-section-divider--cream,
.service-page--consultancy .hero-section-divider--cream,
.service-page--ad-mgmt .hero-section-divider--cream {
  background: var(--cream);
}

.service-page--audit .audit-prose,
.service-page--training .audit-prose,
.service-page--consultancy .audit-prose,
.service-page--ad-mgmt .audit-prose {
  font-size: clamp(0.9375rem, 1.5vw, 1.0625rem);
  line-height: 1.7;
  color: rgba(var(--navy-rgb), 0.78);
  text-align: center;
}

.service-page--audit .audit-prose + .audit-prose,
.service-page--training .audit-prose + .audit-prose,
.service-page--consultancy .audit-prose + .audit-prose,
.service-page--ad-mgmt .audit-prose + .audit-prose {
  margin-top: 12px;
}

.service-page--audit .audit-prose--lead,
.service-page--training .audit-prose--lead,
.service-page--consultancy .audit-prose--lead,
.service-page--ad-mgmt .audit-prose--lead {
  max-width: var(--audit-text-max);
  margin: 0 auto 40px;
  font-size: clamp(1rem, 1.6vw, 1.125rem);
  line-height: 1.7;
  color: rgba(var(--navy-rgb), 0.75);
}

.service-page--audit .audit-section__title,
.service-page--training .audit-section__title,
.service-page--consultancy .audit-section__title,
.service-page--ad-mgmt .audit-section__title {
  font-family: var(--font-display);
  font-size: clamp(1.875rem, 4.5vw, 3rem);
  font-weight: 400;
  letter-spacing: 0.04em;
  line-height: 1.25;
  margin-bottom: 28px;
  text-align: center;
}

.service-page--audit .audit-look .audit-section__title,
.service-page--training .audit-look .audit-section__title,
.service-page--consultancy .audit-look .audit-section__title,
.service-page--ad-mgmt .audit-look .audit-section__title {
  color: var(--navy);
}

.service-page--audit .audit-find .audit-section__title,
.service-page--training .audit-find .audit-section__title,
.service-page--consultancy .audit-find .audit-section__title,
.service-page--ad-mgmt .audit-find .audit-section__title {
  color: var(--cream);
}

.service-page--audit .audit-look__grid,
.service-page--training .audit-look__grid,
.service-page--consultancy .audit-look__grid,
.service-page--ad-mgmt .audit-look__grid {
  margin-bottom: 40px;
}

.service-page--audit .audit-look__grid--four,
.service-page--training .audit-look__grid--four,
.service-page--consultancy .audit-look__grid--four,
.service-page--ad-mgmt .audit-look__grid--four {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.service-page--audit .audit-look__grid--five,
.service-page--training .audit-look__grid--five,
.service-page--consultancy .audit-look__grid--five,
.service-page--ad-mgmt .audit-look__grid--five {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.service-page--audit .audit-look__grid--six,
.service-page--training .audit-look__grid--six,
.service-page--consultancy .audit-look__grid--six,
.service-page--ad-mgmt .audit-look__grid--six {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.service-page--consultancy .audit-situations__title {
  margin-top: 2rem;
  margin-bottom: 1.5rem;
  font-size: inherit;
  font-weight: 600;
  color: var(--navy);
}

.service-page--ad-mgmt .audit-intro__prose--emphasis {
  font-weight: 600;
  font-size: clamp(1.125rem, 2vw, 1.35rem);
  color: var(--navy);
  margin-bottom: 0.5rem;
}

/* PPC Mentoring / Consultancy — Who is this for? / What we can help with? (thirdPartBG) */
.service-page--training .promises.audit-look,
.service-page--consultancy .promises.audit-look {
  background: var(--navy) url('assets/thirdPartBG.webp') center / cover no-repeat;
  color: var(--cream);
  padding: clamp(3rem, 6vw, 4.5rem) 0;
}

.service-page--training .promises.audit-look::before,
.service-page--consultancy .promises.audit-look::before {
  display: none;
}

.service-page--training .promises.audit-look .audit-section__title {
  color: #ffffff;
  font-size: clamp(1.43rem, 2.75vw, 1.92rem);
}

.service-page--consultancy .promises.audit-look .audit-look__intro {
  margin: 0 auto clamp(1.75rem, 3vw, 2.25rem);
  max-width: var(--audit-text-max);
  color: #ffffff;
}

.service-page--consultancy .promises.audit-look .audit-look__subtitle {
  margin: 0 auto clamp(2rem, 3.75vw, 2.75rem);
  max-width: var(--audit-text-max);
  line-height: 1.5;
  text-align: center;
  text-transform: uppercase;
}

.service-page--consultancy .promises.audit-look .audit-look__subtitle::before {
  content: '';
  display: block;
  width: min(100%, 5.5rem);
  height: 1px;
  margin: 0 auto clamp(1.75rem, 3.5vw, 2.375rem);
  background: rgba(var(--gold-rgb), 0.5);
}

.service-page--training .promises.audit-look .audit-find__grid,
.service-page--consultancy .promises.audit-look .audit-find__grid {
  max-width: var(--audit-text-max);
}

.service-page--training .promises.audit-look .audit-find__grid .familiar__item,
.service-page--consultancy .promises.audit-look .audit-find__grid .familiar__item {
  gap: 11px;
  border-bottom-color: rgba(var(--gold-rgb), 0.15);
}

.service-page--training .promises.audit-look .audit-find__grid .familiar__text,
.service-page--consultancy .promises.audit-look .audit-find__grid .familiar__text {
  color: #ffffff;
  font-size: clamp(0.9375rem, 1.4vw, 1rem);
  line-height: 1.75;
}

.service-page--consultancy .promises.audit-look .audit-find__grid .familiar__text {
  font-size: clamp(0.8125rem, 1.25vw, 0.9375rem);
  line-height: 1.7;
}

.service-page--training .promises.audit-look .audit-find__grid .familiar__icon,
.service-page--consultancy .promises.audit-look .audit-find__grid .familiar__icon {
  width: 36.4px;
  height: 36.4px;
  border-color: var(--gold);
  color: var(--gold);
}

.service-page--training .promises.audit-look .audit-find__grid .familiar__icon-check,
.service-page--consultancy .promises.audit-look .audit-find__grid .familiar__icon-check {
  width: 15.4px;
  height: 15.4px;
  color: var(--gold);
}

@media (min-width: 769px) {
  .service-page--training .promises.audit-look .audit-find__grid .familiar__item--featured {
    display: none;
  }

  .service-page--training .promises.audit-look .audit-find__grid .familiar__item:nth-last-child(-n+3) {
    border-bottom: none;
    padding-bottom: 0;
  }
}

.service-page--training .audit-after .audit-find__cta {
  margin-top: clamp(3rem, 6vw, 4.5rem);
}

/* PPC Consultancy — How it works + Consultancy vs Mentoring (shared learnedBG band) */
.service-page--consultancy .consultancy-how-compare-band {
  position: relative;
  background-color: var(--cream);
  background-image: url('assets/learnedBG.webp');
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
}

.service-page--consultancy .consultancy-how-compare-band .audit-intro.audit-how:not(.audit-after) {
  background: transparent;
  overflow: visible;
}

.service-page--consultancy .consultancy-how-compare-band .audit-intro.audit-how:not(.audit-after)::before {
  display: none;
}

.service-page--consultancy .consultancy-how-compare-band .audit-intro.audit-how:not(.audit-after) .audit-intro__heading {
  font-family: var(--font-display);
  color: var(--gold);
  text-align: left;
}

.service-page--consultancy .consultancy-how-compare-band .audit-how {
  background: transparent;
}

.service-page--consultancy .consultancy-how-compare-band .audit-intro {
  background: transparent;
}

.service-page--consultancy .consultancy-how-compare-band .consultancy-compare {
  background: transparent;
}

.service-page--consultancy .promises.audit-look > .container {
  padding-inline: 40px;
}

/* PPC Consultancy — Consultancy vs Mentoring */
.service-page--consultancy .consultancy-compare {
  position: relative;
  padding: clamp(3rem, 6vw, 4.5rem) 0;
}

.service-page--consultancy .consultancy-how-compare-band .consultancy-compare {
  padding-top: 1.25rem;
}

.service-page--consultancy .consultancy-compare__inner {
  max-width: 50rem;
  margin-inline: auto;
  text-align: center;
}

.service-page--consultancy .consultancy-compare__title {
  margin: 0;
  text-align: center;
}

.service-page--consultancy .consultancy-compare__divider {
  width: min(100%, 12.5rem);
  margin: clamp(1.125rem, 2.5vw, 1.5rem) auto;
}

.service-page--consultancy .consultancy-compare__divider--close {
  width: min(100%, 10rem);
  margin-top: clamp(1.75rem, 3vw, 2.25rem);
  margin-bottom: 0;
}

.service-page--consultancy .consultancy-compare__prose {
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.9375rem, 1.4vw, 1rem);
  font-weight: 400;
  line-height: 1.75;
  color: var(--navy);
  text-align: center;
}

.service-page--consultancy .consultancy-compare__prose + .consultancy-compare__prose {
  margin-top: clamp(1rem, 2vw, 1.25rem);
}

.service-page--consultancy .consultancy-compare__prose strong {
  font-family: var(--font-display);
  font-weight: 700;
  color: var(--gold);
}

@media (min-width: 769px) {
  .service-page--consultancy .consultancy-how-compare-band {
    background-size: cover;
    background-position: 52% top;
  }
}

@media (max-width: 768px) {
  .service-page--consultancy .consultancy-compare {
    padding: clamp(2.25rem, 6vw, 3rem) 0;
  }

  .service-page--consultancy .consultancy-how-compare-band .consultancy-compare {
    padding-top: 1.25rem;
  }

  .service-page--consultancy .consultancy-compare__divider {
    margin: 1rem auto;
    width: min(100%, 10rem);
  }

  .service-page--consultancy .consultancy-compare__divider--close {
    margin-top: 1.5rem;
    width: min(100%, 8.5rem);
  }
}

/* PPC Mentoring — pre-FAQ section + FAQ (shared learnedBG band) */
.service-page--training .mentoring-after-faq-band {
  position: relative;
  background-color: var(--cream);
  background-image: url('assets/learnedBG.webp');
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
}

/* PPC Consultancy — Pricing + FAQ (shared thirdPartBG band) */
.service-page--consultancy .service-after-faq-band {
  position: relative;
  background-color: var(--navy);
  background-image: url('assets/thirdPartBG.webp');
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
}

.service-page--consultancy .service-after-faq-band .audit-intro.audit-pricing {
  position: relative;
  background: transparent;
}

.service-page--consultancy .service-after-faq-band .audit-intro.audit-pricing .audit-intro__heading {
  font-family: var(--font-display);
  color: var(--gold);
}

.service-page--consultancy .service-after-faq-band .audit-intro.audit-pricing .audit-intro__prose {
  color: #ffffff;
}

.service-page--consultancy .service-after-faq-band .audit-intro.audit-pricing .audit-find__cta {
  margin: clamp(2.25rem, 4vw, 3rem) auto 0;
  color: var(--gold);
  border-color: var(--gold);
}

.service-page--consultancy .service-after-faq-band .audit-faq .service-page__faq-item summary,
.service-page--consultancy .service-after-faq-band .audit-faq .service-page__faq-item p {
  color: #ffffff;
}

@media (min-width: 769px) {
  .service-page--consultancy .service-after-faq-band {
    background-position: 52% top;
  }
}

.service-page--training .mentoring-after-faq-band {
  --after-prose-font-size: clamp(0.9375rem, 1.4vw, 1rem);
  --after-prose-line-height: 1.75;
}

.service-page--training .mentoring-after-faq-band .audit-intro.audit-after {
  position: relative;
  background: transparent;
  color: var(--navy);
}

.service-page--training .mentoring-after-faq-band .audit-faq,
.service-page--training .mentoring-after-faq-band .service-page__section--white,
.service-page--consultancy .service-after-faq-band .audit-faq,
.service-page--consultancy .service-after-faq-band .service-page__section--white {
  background: transparent;
}

.service-page--training .audit-intro.audit-after .audit-intro__main {
  position: relative;
  z-index: 1;
}

.service-page--training .audit-intro.audit-after .audit-intro__heading {
  color: var(--navy);
}

.service-page--training .audit-intro.audit-after .audit-intro__prose {
  font-size: var(--after-prose-font-size);
  line-height: var(--after-prose-line-height);
  color: var(--navy);
}

.service-page--training .mentoring-after-faq-band__divider-wrap,
.service-page--consultancy .service-after-faq-band__divider-wrap {
  padding-top: 0;
  padding-bottom: 0;
}

.service-page--training .mentoring-after-faq-band__divider,
.service-page--consultancy .service-after-faq-band__divider {
  display: block;
  width: 100%;
  max-width: var(--audit-text-max);
  height: 1px;
  margin: clamp(1.25rem, 2.5vw, 2rem) auto;
  padding: 0;
  border: 0;
  background-color: var(--gold);
}

@media (min-width: 1024px) {
  .service-page--training .mentoring-after-faq-band .audit-intro.audit-after,
  .service-page--consultancy .service-after-faq-band .audit-intro.audit-pricing {
    padding-bottom: clamp(1.75rem, 2.75vw, 2.25rem);
  }

  .service-page--training .mentoring-after-faq-band .audit-faq,
  .service-page--consultancy .service-after-faq-band .audit-faq {
    padding-top: clamp(1.75rem, 2.75vw, 2.25rem);
  }

  .service-page--training .mentoring-after-faq-band__divider,
  .service-page--consultancy .service-after-faq-band__divider {
    margin-block: clamp(1rem, 1.75vw, 1.375rem);
  }
}

.service-page--training .audit-intro.audit-after .audit-find__cta {
  color: var(--gold);
  border-color: var(--gold);
}

@media (max-width: 768px) {
  .service-page--training .mentoring-after-faq-band {
    --after-prose-font-size: clamp(0.8rem, 3.4vw, 0.9rem);
    --after-prose-line-height: 1.65;
    background-size: cover;
    background-position: center top;
  }
}

.service-page--training .audit-how,
.service-page--consultancy .audit-how,
.service-page--ad-mgmt .audit-how {
  background: #fff;
}

.service-page--training .audit-pricing,
.service-page--consultancy .audit-pricing,
.service-page--ad-mgmt .audit-pricing {
  background: var(--cream);
}

.service-page--training .mentoring-session-pricing-band .mentoring-session,
.service-page--training .mentoring-session-pricing-band .mentoring-pricing.audit-pricing {
  background: transparent;
  border: none;
  box-shadow: none;
}

.service-page--training .mentoring-session-pricing-band .mentoring-pricing.audit-pricing {
  background: transparent;
}

.service-page--training .audit-intro__heading-wrap--spaced,
.service-page--consultancy .audit-intro__heading-wrap--spaced,
.service-page--ad-mgmt .audit-intro__heading-wrap--spaced {
  margin-top: clamp(2rem, 4vw, 3rem);
}

.service-page--training .audit-find__closing--top,
.service-page--consultancy .audit-find__closing--top,
.service-page--ad-mgmt .audit-find__closing--top {
  margin-top: 0;
}

.service-page--training .audit-find.familiar,
.service-page--consultancy .audit-find.familiar,
.service-page--ad-mgmt .audit-find.familiar {
  padding-top: clamp(4rem, 8vw, 6rem);
  padding-bottom: clamp(3rem, 6vw, 4.5rem);
}

.service-page--training .audit-find__closing--top .team-section__closing,
.service-page--consultancy .audit-find__closing--top .team-section__closing,
.service-page--ad-mgmt .audit-find__closing--top .team-section__closing {
  text-align: center;
  max-width: var(--audit-text-max);
  margin-inline: auto;
}

.service-page--training .audit-faq,
.service-page--consultancy .audit-faq {
  padding-top: clamp(3rem, 6vw, 4.5rem);
  padding-bottom: clamp(4rem, 8vw, 6rem);
}

.service-page--training .audit-faq__title,
.service-page--consultancy .audit-faq__title {
  color: var(--navy);
  margin-bottom: 2rem;
}

.service-page--training .audit-intro.audit-after .audit-intro__heading {
  font-size: clamp(1.43rem, 2.75vw, 1.92rem);
}

.service-page--training .audit-faq .audit-section__title,
.service-page--training .audit-faq__title {
  font-size: clamp(1.1rem, 2vw, 1.35rem);
}

.service-page--training .audit-faq .service-page__faq-item,
.service-page--consultancy .audit-faq .service-page__faq-item {
  max-width: var(--audit-text-max);
  margin-inline: auto;
}

.service-page--training .audit-faq .audit-section__title,
.service-page--training .audit-faq__title,
.service-page--consultancy .audit-faq .audit-section__title,
.service-page--consultancy .audit-faq__title {
  color: var(--navy);
}

.service-page--training .audit-faq .service-page__faq-item summary,
.service-page--consultancy .audit-faq .service-page__faq-item summary {
  color: var(--navy);
}

.service-page--training .audit-faq .service-page__faq-item p {
  font-family: var(--font-sans);
  font-size: 0.8125rem;
  line-height: 1.5;
  color: var(--navy);
}

.service-page--training .audit-faq .service-page__faq-item summary::after,
.service-page--consultancy .audit-faq .service-page__faq-item summary::after {
  font-size: 1.2rem;
  line-height: 1;
  color: var(--gold);
}

@media (min-width: 900px) {
  .service-page--training .audit-look__grid--five,
  .service-page--consultancy .audit-look__grid--five,
  .service-page--ad-mgmt .audit-look__grid--five {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .service-page--consultancy .audit-look__grid--six {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.service-page--audit .audit-look__grid .promises__item,
.service-page--training .audit-look__grid .promises__item,
.service-page--consultancy .audit-look__grid .promises__item,
.service-page--ad-mgmt .audit-look__grid .promises__item {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  min-height: 7.5rem;
}

.service-page--audit .audit-look__grid .promises__icon,
.service-page--training .audit-look__grid .promises__icon,
.service-page--consultancy .audit-look__grid .promises__icon,
.service-page--ad-mgmt .audit-look__grid .promises__icon {
  margin-top: 0;
}

.service-page--audit .audit-look__grid .promises__text,
.service-page--training .audit-look__grid .promises__text,
.service-page--consultancy .audit-look__grid .promises__text,
.service-page--ad-mgmt .audit-look__grid .promises__text {
  text-align: center;
  align-items: center;
  justify-content: center;
}

.service-page--audit .audit-look__grid .promises__label,
.service-page--training .audit-look__grid .promises__label,
.service-page--consultancy .audit-look__grid .promises__label,
.service-page--ad-mgmt .audit-look__grid .promises__label {
  text-align: center;
}

.service-page--audit .audit-look__goal,
.service-page--training .audit-look__goal,
.service-page--consultancy .audit-look__goal,
.service-page--ad-mgmt .audit-look__goal {
  max-width: var(--audit-text-max);
  margin: 0 auto;
  text-align: center;
}

.service-page--audit .audit-find.familiar,
.service-page--training .audit-find.familiar,
.service-page--consultancy .audit-find.familiar,
.service-page--ad-mgmt .audit-find.familiar {
  padding-top: 100px;
}

.service-page--audit .audit-find__intro,
.service-page--training .audit-find__intro,
.service-page--consultancy .audit-find__intro,
.service-page--ad-mgmt .audit-find__intro {
  max-width: var(--audit-text-max);
  margin: 0 auto 40px;
}

.service-page--audit .audit-find__grid,
.service-page--training .audit-find__grid,
.service-page--consultancy .audit-find__grid,
.service-page--ad-mgmt .audit-find__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: clamp(32px, 5vw, 64px);
  row-gap: 0;
  max-width: var(--audit-text-max);
  margin: 0 auto;
}

.service-page--audit .audit-find__grid .familiar__item,
.service-page--training .audit-find__grid .familiar__item,
.service-page--consultancy .audit-find__grid .familiar__item,
.service-page--ad-mgmt .audit-find__grid .familiar__item {
  padding: 28px 0;
  border-bottom: 1px solid rgba(var(--gold-rgb), 0.15);
}

.service-page--audit .audit-find__grid .familiar__icon,
.service-page--training .audit-find__grid .familiar__icon,
.service-page--consultancy .audit-find__grid .familiar__icon,
.service-page--ad-mgmt .audit-find__grid .familiar__icon {
  width: 96px;
  height: 96px;
}

.service-page--audit .audit-find__grid .familiar__icon-check,
.service-page--training .audit-find__grid .familiar__icon-check,
.service-page--consultancy .audit-find__grid .familiar__icon-check,
.service-page--ad-mgmt .audit-find__grid .familiar__icon-check {
  width: 29px;
  height: 29px;
  color: var(--gold);
}

.service-page--audit .audit-find__grid .familiar__item:nth-last-child(-n+2),
.service-page--training .audit-find__grid .familiar__item:nth-last-child(-n+2),
.service-page--consultancy .audit-find__grid .familiar__item:nth-last-child(-n+2),
.service-page--ad-mgmt .audit-find__grid .familiar__item:nth-last-child(-n+2) {
  border-bottom: none;
  padding-bottom: 0;
}

.service-page--audit .audit-find__grid .familiar__item:nth-child(-n+2),
.service-page--training .audit-find__grid .familiar__item:nth-child(-n+2),
.service-page--consultancy .audit-find__grid .familiar__item:nth-child(-n+2),
.service-page--ad-mgmt .audit-find__grid .familiar__item:nth-child(-n+2) {
  padding-top: 0;
}

.service-page--audit .audit-find__closing,
.service-page--training .audit-find__closing,
.service-page--consultancy .audit-find__closing,
.service-page--ad-mgmt .audit-find__closing {
  max-width: var(--audit-text-max);
  margin: 48px auto 36px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.service-page--audit .audit-find__closing .team-section__closing,
.service-page--training .audit-find__closing .team-section__closing,
.service-page--consultancy .audit-find__closing .team-section__closing,
.service-page--ad-mgmt .audit-find__closing .team-section__closing {
  margin-bottom: 0;
  max-width: none;
}

.service-page--audit .audit-find__cta,
.service-page--training .audit-find__cta,
.service-page--consultancy .audit-find__cta,
.service-page--ad-mgmt .audit-find__cta {
  margin: 0 auto;
}

.service-page--audit .audit-free-call .ad-mgmt__intro,
.service-page--training .audit-free-call .ad-mgmt__intro,
.service-page--consultancy .audit-free-call .ad-mgmt__intro,
.service-page--ad-mgmt .audit-free-call .ad-mgmt__intro {
  max-width: var(--audit-text-max);
}

.service-page--audit .audit-free-call::before,
.service-page--training .audit-free-call::before,
.service-page--consultancy .audit-free-call::before,
.service-page--ad-mgmt .audit-free-call::before {
  background-image: url('assets/lookingForBG.png');
}

.service-page--audit .audit-free-call .hero__cta,
.service-page--training .audit-free-call .hero__cta,
.service-page--consultancy .audit-free-call .hero__cta,
.service-page--ad-mgmt .audit-free-call .hero__cta {
  margin: 0 auto;
}

.service-page--audit .audit-free-call__note,
.service-page--training .audit-free-call__note,
.service-page--consultancy .audit-free-call__note,
.service-page--ad-mgmt .audit-free-call__note {
  display: flex;
  align-items: center;
  gap: clamp(1rem, 2.5vw, 1.75rem);
  margin-top: 2.75rem;
  width: 100%;
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
}

.service-page--audit .audit-free-call__note-line,
.service-page--training .audit-free-call__note-line,
.service-page--consultancy .audit-free-call__note-line,
.service-page--ad-mgmt .audit-free-call__note-line {
  flex: 1;
  height: 1px;
  background: rgba(var(--gold-rgb), 0.45);
  min-width: 1.5rem;
}

.service-page--audit .audit-free-call__note-content,
.service-page--training .audit-free-call__note-content,
.service-page--consultancy .audit-free-call__note-content,
.service-page--ad-mgmt .audit-free-call__note-content {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-shrink: 0;
}

.service-page--audit .audit-free-call__note-icon,
.service-page--training .audit-free-call__note-icon,
.service-page--consultancy .audit-free-call__note-icon,
.service-page--ad-mgmt .audit-free-call__note-icon {
  color: var(--gold);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.service-page--audit .audit-free-call__note-text,
.service-page--training .audit-free-call__note-text,
.service-page--consultancy .audit-free-call__note-text,
.service-page--ad-mgmt .audit-free-call__note-text {
  margin: 0;
  font-size: 0.6875rem;
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--cream);
  white-space: nowrap;
}

@media (max-width: 768px) {
  .service-page--audit .audit-page-hero__layout,
.service-page--consultancy .audit-page-hero__layout {
    grid-template-columns: 1fr;
    gap: 2.5rem;
  }

  .service-page--audit .audit-page-hero__text,
.service-page--consultancy .audit-page-hero__text {
    max-width: none;
  }

  .service-page--audit .audit-page-hero__text .hero__subheadline,
.service-page--consultancy .audit-page-hero__text .hero__subheadline {
    max-width: none;
  }

  .service-page--audit .audit-page-hero__visual,
.service-page--consultancy .audit-page-hero__visual {
    justify-content: center;
    justify-self: center;
    min-height: 330px;
    max-width: 480px;
  }

  .service-page--audit .audit-page-hero__motivum,
.service-page--consultancy .audit-page-hero__motivum {
    width: clamp(270px, 78vw, 360px);
    margin-right: 0;
  }

  .service-page--audit .audit-page-hero {
    position: relative;
    display: flex;
    align-items: center;
    min-height: clamp(17.5rem, 48vh, 20.5rem);
    padding: clamp(1.5rem, 4.5vw, 1.875rem) 0;
    overflow-x: hidden;
  }

  .service-page--audit .audit-page-hero__texture {
    background-image: url('assets/account_audit_bg.webp');
    background-position: calc(100% + 105px) center;
    background-size: cover;
    background-repeat: no-repeat;
  }

  .service-page--audit .audit-page-hero__layout {
    gap: 0;
    align-items: center;
    width: 100%;
  }

  .service-page--audit .audit-page-hero__text {
    max-width: 100%;
    width: 100%;
    padding-right: 0;
    text-align: left;
  }

  .service-page--audit .audit-page-hero__divider {
    width: min(100%, 11rem);
    margin: 16px 0 14px;
  }

  .service-page--audit .audit-page-hero__text .hero__tagline {
    font-size: 0.5625rem;
    margin-bottom: 12px;
  }

  .service-page--audit .audit-page-hero__text .hero__subheadline {
    font-size: clamp(0.78rem, 2.3vw, 0.875rem);
    max-width: clamp(13.75rem, 65%, 15rem);
    line-height: 1.55;
    color: var(--cream);
  }

  .service-page--audit .audit-page-hero__text .hero__cta {
    margin-top: 16px;
    font-size: 0.5625rem;
    padding: 10px 18px;
    min-height: 36px;
    gap: 8px;
    max-width: clamp(13.75rem, 65%, 15rem);
    touch-action: manipulation;
  }

  .service-page--ad-mgmt .audit-page-hero {
    position: relative;
    display: flex;
    align-items: center;
    min-height: clamp(17.5rem, 48vh, 20.5rem);
    padding: clamp(1.5rem, 4.5vw, 1.875rem) 0;
    overflow-x: hidden;
  }

  .service-page--ad-mgmt .audit-page-hero__texture {
    background-image:
      linear-gradient(to bottom,
        var(--navy) 0%,
        var(--navy) 6%,
        rgba(var(--navy-rgb), 0.95) 14%,
        rgba(var(--navy-rgb), 0.78) 22%,
        rgba(var(--navy-rgb), 0.35) 32%,
        rgba(var(--navy-rgb), 0) 42%,
        rgba(var(--navy-rgb), 0) 78%,
        rgba(var(--navy-rgb), 0.35) 85%,
        rgba(var(--navy-rgb), 0.78) 91%,
        rgba(var(--navy-rgb), 0.95) 95%,
        var(--navy) 98%,
        var(--navy) 100%),
      url('assets/ad_managementBG.webp');
    background-position: center, calc(100% + 56px) calc(50% + 8px);
    background-size: cover, auto 88%;
    background-repeat: no-repeat, no-repeat;
  }

  .service-page--ad-mgmt .audit-page-hero__layout {
    grid-template-columns: 1fr;
    gap: 0;
    align-items: center;
    width: 100%;
  }

  .service-page--ad-mgmt .audit-page-hero__text {
    max-width: 100%;
    width: 100%;
    padding-right: 0;
    padding-left: 0;
    text-align: left;
  }

  .service-page--ad-mgmt .audit-page-hero__divider {
    width: min(100%, 11rem);
    margin: 16px 0 14px;
    max-width: clamp(14rem, 72%, 17.5rem);
  }

  .service-page--ad-mgmt .audit-page-hero__text .hero__tagline {
    font-size: 0.5625rem;
    margin-bottom: 12px;
  }

  .service-page--ad-mgmt .audit-page-hero__title {
    font-size: clamp(1.45rem, 5.5vw, 2rem);
    max-width: clamp(14rem, 72%, 17.5rem);
  }

  .service-page--ad-mgmt .audit-page-hero__text .hero__subheadline {
    font-size: clamp(0.8rem, 3.4vw, 0.9rem);
    max-width: clamp(13.75rem, 65%, 15rem);
    line-height: 1.65;
    color: var(--cream);
  }

  .service-page--ad-mgmt .audit-page-hero__text .hero__cta {
    margin-top: 1.25rem;
    font-size: 0.625rem;
    padding: 12px 22px;
    min-height: 44px;
    gap: 10px;
    max-width: 100%;
    touch-action: manipulation;
  }

  .service-page--training .audit-page-hero__texture {
    background-color: #000;
    background-image:
      linear-gradient(to right,
        #000 0%,
        #000 10%,
        rgba(0, 0, 0, 0.55) 28%,
        rgba(0, 0, 0, 0.15) 40%,
        rgba(0, 0, 0, 0) 52%),
      url('assets/ppc_mentoring_bg.webp');
    background-position: center, calc(100% + 188px) center;
    background-size: cover, cover;
    background-repeat: no-repeat, no-repeat;
  }

  .service-page--training .audit-page-hero {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    max-width: none;
    margin-inline: 0;
    min-height: clamp(17.5rem, 48vh, 20.5rem);
    padding: clamp(1.5rem, 4.5vw, 1.875rem) 0;
    overflow: hidden;
    background: var(--navy);
  }

  .service-page--training .audit-page-hero__layout {
    gap: 0;
    align-items: center;
    width: 100%;
    z-index: 2;
  }

  .service-page--training .audit-page-hero__text {
    max-width: 60%;
    width: 100%;
    padding-right: 0;
    text-align: left;
  }

  .service-page--training .audit-page-hero__divider {
    width: min(100%, 11rem);
    margin: 16px 0 14px;
  }

  .service-page--training .audit-page-hero__text .hero__tagline {
    font-size: 0.5625rem;
    margin-bottom: 12px;
  }

  .service-page--training .audit-page-hero__title {
    font-size: clamp(1.45rem, 5.5vw, 2rem);
  }

  .service-page--training .audit-page-hero__text .hero__subheadline {
    font-size: clamp(0.8rem, 3.4vw, 0.9rem);
    line-height: 1.65;
    max-width: 100%;
    color: #ffffff;
  }

  .service-page--training .audit-page-hero__text .hero__cta {
    margin-top: 1.25rem;
    font-size: 0.625rem;
    padding: 12px 22px;
    min-height: 44px;
    gap: 10px;
    max-width: 100%;
    touch-action: manipulation;
  }

  .service-page--consultancy .audit-page-hero__texture {
    background-color: var(--navy);
    background-image:
      linear-gradient(to bottom,
        var(--navy) 0%,
        var(--navy) 5%,
        rgba(var(--navy-rgb), 0.92) 10%,
        rgba(var(--navy-rgb), 0.55) 18%,
        rgba(var(--navy-rgb), 0) 30%),
      linear-gradient(to right,
        var(--navy) 0%,
        var(--navy) 12%,
        rgba(var(--navy-rgb), 0.72) 30%,
        rgba(var(--navy-rgb), 0.25) 48%,
        rgba(var(--navy-rgb), 0) 58%),
      url('assets/consultancy_heroBG.webp');
    background-position: center, center, calc(100% + 142px) calc(61% + 28px);
    background-size: cover, cover, cover;
    background-repeat: no-repeat, no-repeat, no-repeat;
  }

  .service-page--consultancy .audit-page-hero {
    position: relative;
    display: flex;
    align-items: flex-start;
    width: 100%;
    max-width: none;
    margin-inline: 0;
    min-height: clamp(20.5rem, 55vh, 24.5rem);
    padding: clamp(1.75rem, 5.5vw, 2.25rem) 0 clamp(1.25rem, 3.5vw, 1.5rem);
    overflow: hidden;
    background: var(--navy);
  }

  .service-page--consultancy .audit-page-hero__layout {
    gap: 0;
    align-items: flex-start;
    width: 100%;
    z-index: 2;
  }

  .service-page--consultancy .audit-page-hero__text {
    max-width: 60%;
    width: 100%;
    padding-right: 0;
    text-align: left;
  }

  .service-page--consultancy .audit-page-hero__divider {
    width: min(100%, 11rem);
    margin: 16px 0 14px;
  }

  .service-page--consultancy .audit-page-hero__text .hero__tagline {
    font-size: 0.5625rem;
    margin-bottom: 12px;
  }

  .service-page--consultancy .audit-page-hero__title {
    font-size: clamp(1.45rem, 5.5vw, 2rem);
  }

  .service-page--consultancy .audit-page-hero__text .hero__subheadline {
    font-size: clamp(0.8rem, 3.4vw, 0.9rem);
    line-height: 1.65;
    max-width: 100%;
    color: #ffffff;
  }

  .service-page--consultancy .audit-page-hero__text .hero__cta {
    margin-top: 1.25rem;
    font-size: 0.625rem;
    padding: 12px 22px;
    min-height: 44px;
    gap: 10px;
    max-width: 100%;
    touch-action: manipulation;
  }

  .service-page--audit .audit-intro {
    padding-top: clamp(2rem, 5vw, 2.75rem);
    padding-bottom: clamp(2.5rem, 6vw, 3.5rem);
  }

  .service-page--audit .audit-intro__prose,
  .service-page--audit .audit-intro__timeline .audit-intro__prose {
    text-align: left;
  }

  .service-page--audit .audit-intro__timeline {
    text-align: left;
  }

  .service-page--audit .audit-intro__features,
  .service-page--training .audit-intro__features,
.service-page--consultancy .audit-intro__features,
.service-page--ad-mgmt .audit-intro__features {
    grid-template-columns: 1fr;
    gap: 1.75rem;
    max-width: 28rem;
    margin-inline: auto;
  }

  .service-page--audit .audit-find__grid,
  .service-page--training .audit-find__grid,
.service-page--consultancy .audit-find__grid,
.service-page--ad-mgmt .audit-find__grid {
    grid-template-columns: 1fr;
    max-width: 100%;
  }

  .service-page--audit .audit-find__grid .familiar__icon,
  .service-page--training .audit-find__grid .familiar__icon,
.service-page--consultancy .audit-find__grid .familiar__icon,
.service-page--ad-mgmt .audit-find__grid .familiar__icon {
    width: 86px;
    height: 86px;
  }

  .service-page--audit .audit-find__grid .familiar__icon-check,
  .service-page--training .audit-find__grid .familiar__icon-check,
.service-page--consultancy .audit-find__grid .familiar__icon-check,
.service-page--ad-mgmt .audit-find__grid .familiar__icon-check {
    width: 26px;
    height: 26px;
  }

  .service-page--audit .audit-find__grid .familiar__item:nth-last-child(-n+2),
  .service-page--training .audit-find__grid .familiar__item:nth-last-child(-n+2),
.service-page--consultancy .audit-find__grid .familiar__item:nth-last-child(-n+2),
.service-page--ad-mgmt .audit-find__grid .familiar__item:nth-last-child(-n+2) {
    border-bottom: 1px solid rgba(var(--gold-rgb), 0.15);
    padding-bottom: 28px;
  }

  .service-page--audit .audit-find__grid .familiar__item:last-child,
  .service-page--training .audit-find__grid .familiar__item:last-child,
.service-page--consultancy .audit-find__grid .familiar__item:last-child,
.service-page--ad-mgmt .audit-find__grid .familiar__item:last-child {
    border-bottom: none;
    padding-bottom: 0;
  }

  .service-page--audit .audit-free-call__note-text,
  .service-page--training .audit-free-call__note-text,
.service-page--consultancy .audit-free-call__note-text,
.service-page--ad-mgmt .audit-free-call__note-text {
    white-space: normal;
    font-size: 0.625rem;
  }

  .service-page--audit .audit-look__grid--four,
  .service-page--training .audit-look__grid--four,
.service-page--consultancy .audit-look__grid--four,
.service-page--ad-mgmt .audit-look__grid--four {
    grid-template-columns: 1fr;
  }

  .service-page--audit .audit-look__grid--five,
  .service-page--training .audit-look__grid--five,
  .service-page--consultancy .audit-look__grid--five,
  .service-page--ad-mgmt .audit-look__grid--five,
  .service-page--consultancy .audit-look__grid--six {
    grid-template-columns: 1fr;
  }
}

/* ---- Hero ---- */
.hero {
  position: relative;
  min-height: 100vh;
  min-height: 100dvh;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0;
  overflow: hidden;
  background: var(--navy);
  padding: var(--header-height) 40px 0;
  box-sizing: border-box;
}

.hero__bg {
  position: relative;
  pointer-events: none;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex: 0 0 auto;
  order: 2;
  width: fit-content;
  max-width: 38.25rem;
  margin-left: -120px;
}

.hero__bg-image {
  display: block;
  width: auto;
  max-width: 38.25rem;
  height: auto;
  object-fit: contain;
  object-position: right center;
  image-rendering: auto;
  transform: translateX(-48px);
}

.hero__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    90deg,
    rgba(var(--navy-rgb), 0.96) 0%,
    rgba(var(--navy-rgb), 0.96) 32%,
    rgba(var(--navy-rgb), 0.75) 52%,
    rgba(var(--navy-rgb), 0.4) 72%,
    transparent 100%
  );
}

.hero__content {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  flex: 0 0 auto;
  order: 1;
  width: max-content;
  max-width: 38.75rem;
  padding: 48px 0 24px;
  animation: fadeUp 1.2s ease 0.3s both;
}

.hero__tagline {
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 24px;
}

.hero__intro {
  margin-bottom: 36px;
  width: 100%;
}

.hero__headline {
  font-family: var(--font-display);
  font-size: clamp(1.55rem, 3vw, 2.5rem);
  font-weight: 400;
  line-height: 1.15;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.12em;
}

.hero__headline-main {
  color: var(--cream);
}

.hero__headline-accent {
  color: var(--gold);
}

.hero__divider {
  width: min(100%, 300px);
  height: 1px;
  margin: 28px 0;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(var(--gold-rgb), 0.35) 8%,
    var(--gold) 50%,
    rgba(var(--gold-rgb), 0.35) 92%,
    transparent
  );
  position: relative;
}

.hero__divider::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 7px;
  height: 7px;
  background: var(--gold);
  transform: translate(-50%, -50%) rotate(45deg);
}

.hero__subheadline {
  font-family: var(--font-sans);
  font-size: clamp(1rem, 1.6vw, 1.1875rem);
  font-weight: 400;
  line-height: 1.55;
  letter-spacing: 0.01em;
  color: var(--cream-dim);
  max-width: 34ch;
}

.hero__cta {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-family: inherit;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--gold);
  background: transparent;
  border: 1px solid var(--gold);
  border-radius: 999px;
  padding: 14px 28px;
  cursor: pointer;
  text-decoration: none;
  transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}

.hero__cta:hover {
  background-color: var(--navy);
  color: var(--gold);
  border-color: var(--gold);
}

.hero__cta-arrow {
  flex-shrink: 0;
}

.hero__cta.is-calendly-loading {
  cursor: wait;
  opacity: 0.85;
}

.hero__cta.is-calendly-loading .hero__cta-arrow {
  visibility: hidden;
  width: 0;
  margin: 0;
}

.hero__cta-spinner {
  box-sizing: border-box;
  width: 14px;
  height: 14px;
  flex-shrink: 0;
  border: 1.5px solid rgba(var(--gold-rgb), 0.25);
  border-top-color: var(--gold);
  border-radius: 50%;
  animation: hero-cta-spin 0.7s linear infinite;
}

@keyframes hero-cta-spin {
  to { transform: rotate(360deg); }
}

.hero__bottom {
  position: relative;
  z-index: 2;
  width: 100%;
  flex: 0 0 100%;
  order: 3;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 48px 40px 0;
}

.hero-trust-band {
  width: 100%;
  max-width: 620px;
  display: block;
}

.hero-trust-band__content {
  display: block;
  width: 100%;
}

.hero-section-divider--trust-band {
  padding: 20px 0 0;
}

.hero__trust-line {
  width: 100%;
  height: 1px;
  background: rgba(var(--cream-rgb), 0.35);
  margin-bottom: 24px;
}

@media (min-width: 769px) {
  .hero-trust-band {
    max-width: min(calc(100vw - 80px), 900px);
  }

  .hero__bottom {
    padding-top: 28px;
  }

  .hero__trust-line {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 24px;
    position: static;
    left: auto;
    transform: none;
  }

  .hero-section-divider--trust-band {
    padding: 20px 0 0;
  }
}

.hero__trust-title {
  font-size: 0.625rem;
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--gold);
  text-align: center;
  margin-bottom: 28px;
}

.hero__countries {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: flex-start;
  justify-content: center;
  gap: clamp(16px, 4vw, 40px);
  list-style: none;
  width: 100%;
  margin-bottom: 20px;
}

.hero__country {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  flex: 0 1 auto;
  min-width: 0;
  max-width: 112px;
}

.hero__country--hu .hero__country-art {
  margin-top: 16px;
}

.hero__country-name {
  font-size: 0.625rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--cream-dim);
  text-align: center;
}

.hero__country-art {
  width: 80px;
  height: auto;
  opacity: 0.75;
  mix-blend-mode: screen;
}

@keyframes fadeUp {
  from { opacity: 0; transform: translateY(24px); }
  to { opacity: 1; transform: translateY(0); }
}

/* ---- Sections ---- */
.section {
  padding: 7.5rem 0;
  text-align: center;
}

.section__heading {
  font-family: var(--font-serif);
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  font-weight: 400;
  letter-spacing: 0.02em;
  margin-bottom: 64px;
  text-align: center;
}

/* ---- Hero → content divider ---- */
.hero-section-divider {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 20px 40px 0;
  background: var(--navy);
}

.hero-section-divider__line {
  display: block;
  width: min(240px, 50vw);
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(var(--gold-rgb), 0.15) 15%,
    var(--gold) 50%,
    rgba(var(--gold-rgb), 0.15) 85%,
    transparent
  );
  position: relative;
}

.hero-section-divider__line::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  width: 6px;
  height: 6px;
  background: var(--gold);
}

/* ---- Sound familiar ---- */
.familiar {
  background: var(--navy);
  padding-top: 48px;
}

.familiar__heading {
  font-family: var(--font-display);
  color: var(--gold);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin-bottom: 48px;
}

.familiar__list {
  display: flex;
  flex-direction: column;
  gap: 0;
  max-width: 57.5rem;
  margin: 0 auto;
}

#familiar .familiar__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 32px 48px;
  max-width: var(--shell-content);
}

#familiar .familiar__item {
  padding: 0;
  border-bottom: none;
}

#familiar .familiar__item:first-child,
#familiar .familiar__item:last-child {
  padding: 0;
}

.familiar__item {
  display: flex;
  align-items: center;
  gap: clamp(24px, 4vw, 40px);
  padding: 28px 0;
  border-bottom: 1px solid rgba(var(--gold-rgb), 0.15);
}

.familiar__item:first-child {
  padding-top: 0;
}

.familiar__item:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.familiar__icon {
  flex-shrink: 0;
  width: 74px;
  height: 74px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--gold);
  border-radius: 50%;
}

#familiar .familiar__icon {
  width: 56px;
  height: 56px;
}

.familiar__icon-image {
  width: 113px;
  height: auto;
  opacity: 0.9;
  mix-blend-mode: screen;
}

#familiar .familiar__icon-image {
  width: 84px;
}

.familiar__text {
  flex: 1;
  margin: 0;
  font-size: clamp(0.844rem, 1.35vw, 0.956rem);
  line-height: 1.65;
  color: var(--cream);
  text-align: left;
}

.familiar__intro {
  max-width: 720px;
  margin: 48px auto 0;
  font-size: clamp(1rem, 1.6vw, 1.125rem);
  line-height: 1.7;
  color: var(--cream-dim);
  text-align: center;
}

/* ---- Services Grid ---- */
.services {
  background: var(--navy) url('assets/thirdPartBG.webp') center / cover no-repeat;
  color: var(--navy);
}

.services__heading {
  font-family: var(--font-display);
  color: var(--gold);
}

.services__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
  max-width: var(--shell-default);
  margin: 0 auto;
}

.services__cta {
  display: block;
  width: fit-content;
  margin: 48px auto 0;
}

/* Homepage: match section typography below Services */
#ad-management .ad-mgmt__title,
#team .team-section__title,
#promises .promises__title,
#get-in-touch .content-block__title {
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  letter-spacing: 0.02em;
}

#ad-management .ad-mgmt__intro p,
#team .team-section__intro,
#team .team-section__closing,
#promises .promises__pillar-desc,
#promises .promises__subtitle,
#get-in-touch .content-block__body p {
  font-size: clamp(0.9375rem, 1.4vw, 1rem);
  line-height: 1.65;
}

.service-card {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  min-height: 100%;
  padding: 0;
  text-align: center;
  border: 1px solid rgba(var(--gold-rgb), 0.18);
  border-radius: 8px;
  background: var(--navy);
  overflow: hidden;
  transition: transform var(--transition), border-color var(--transition-fast);
}

.service-card:hover {
  transform: translateY(-4px);
  border-color: rgba(var(--gold-rgb), 0.4);
}

.service-card__media {
  width: 100%;
  flex-shrink: 0;
}

.service-card__image {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  background: var(--navy);
}

.service-card__body {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  flex: 1;
  padding: 28px 28px 36px;
}

.service-card__desc {
  font-size: clamp(0.9375rem, 1.4vw, 1rem);
  color: var(--cream-dim);
  line-height: 1.65;
  margin-bottom: 28px;
  max-width: 21.25rem;
}

.service-card__cta {
  display: inline-block;
  font-family: inherit;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--gold);
  background: transparent;
  border: 1px solid var(--gold);
  border-radius: 999px;
  padding: 12px 22px;
  white-space: nowrap;
  cursor: pointer;
  text-decoration: none;
  transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}

.service-card__cta:hover {
  background-color: var(--navy);
  color: var(--gold);
  border-color: var(--gold);
}

/* ---- Promises ---- */
.promises {
  position: relative;
  overflow: hidden;
  background-color: var(--cream);
  color: var(--navy);
  padding: 6.25rem 0;
}

.promises::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  width: min(520px, 50vw);
  height: min(520px, 50vw);
  pointer-events: none;
  transform: translate(0, -50%) scale(1);
  transform-origin: left center;
}

.promises > .container {
  position: relative;
  z-index: 1;
}

.promises__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px 32px;
  max-width: var(--shell-default);
  margin: 0 auto 48px;
  list-style: none;
}

.promises__heading {
  margin-bottom: 48px;
}

/* Homepage — Different kind of agency */
.promises--agency {
  position: relative;
  overflow: hidden;
  background-color: var(--navy);
  color: var(--cream);
  padding: 6.25rem 0 5rem;
  text-align: center;
}

.promises--agency::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: url('assets/lookingForBG.png');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  opacity: 0.5;
  pointer-events: none;
}

.promises--agency::after {
  content: '';
  position: absolute;
  top: -4rem;
  right: -3rem;
  width: min(22rem, 45vw);
  height: min(22rem, 45vw);
  border: 1px solid rgba(var(--gold-rgb), 0.18);
  border-radius: 50%;
  pointer-events: none;
  box-shadow:
    inset 0 0 0 1px rgba(var(--gold-rgb), 0.08),
    0 0 0 3rem transparent,
    0 0 0 3rem rgba(var(--gold-rgb), 0.04);
}

.promises--agency .promises__inner {
  position: relative;
  z-index: 1;
  max-width: var(--shell-content);
  margin: 0 auto;
}

.promises--agency .promises__inner::after {
  content: '';
  position: absolute;
  bottom: -6rem;
  right: 8%;
  width: min(18rem, 38vw);
  height: min(18rem, 38vw);
  border: 1px solid rgba(var(--gold-rgb), 0.14);
  border-radius: 50%;
  pointer-events: none;
}

.promises--agency .promises__title {
  font-family: var(--font-display);
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  font-weight: 400;
  letter-spacing: 0.04em;
  line-height: 1.25;
  color: var(--cream);
  margin-bottom: 24px;
}

.promises--agency .promises__subtitle {
  font-family: var(--font-sans);
  font-size: clamp(0.9375rem, 1.4vw, 1.0625rem);
  line-height: 1.7;
  color: var(--cream-dim);
  max-width: 42rem;
  margin: 0 auto 56px;
}

.promises--agency .promises__pillars {
  display: grid;
  grid-template-columns: 1fr;
  gap: 48px;
  margin: 0;
}

.promises--agency .promises__pillar {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0 24px;
}

.promises--agency .promises__pillar-icon {
  display: block;
  width: 120px;
  height: 120px;
  margin-bottom: 28px;
  background-color: var(--gold);
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
}

.promises--agency .promises__pillar-icon--templates {
  -webkit-mask-image: url('assets/noTemplates.png');
  mask-image: url('assets/noTemplates.png');
}

.promises--agency .promises__pillar-icon--strategy {
  -webkit-mask-image: url('assets/strategy.png');
  mask-image: url('assets/strategy.png');
}

.promises--agency .promises__pillar-icon--chat {
  -webkit-mask-image: url('assets/directChat.png');
  mask-image: url('assets/directChat.png');
}

.promises--agency .promises__pillar-title {
  font-family: var(--font-sans);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--gold);
  margin: 0 0 14px;
  max-width: 18rem;
}

.promises--agency .promises__pillar-desc {
  font-family: var(--font-sans);
  font-size: clamp(0.9375rem, 1.4vw, 1rem);
  line-height: 1.65;
  color: var(--cream-dim);
  margin: 0;
  max-width: 16rem;
}

#promises .promises__pillar--extra {
  display: none;
}

@media (min-width: 768px) {
  .promises--agency .promises__pillars {
    grid-template-columns: repeat(3, 1fr);
    gap: 0;
  }

  .promises--agency .promises__pillar-icon {
    width: 144px;
    height: 144px;
  }

  .promises--agency .promises__pillar + .promises__pillar {
    border-left: 1px solid rgba(var(--gold-rgb), 0.35);
  }
}

@media (max-width: 767px) {
  .promises--agency .promises__pillar + .promises__pillar {
    border-left: none;
    border-top: 1px solid rgba(var(--gold-rgb), 0.35);
    padding-top: 48px;
  }
}

#ad-management .ad-mgmt__pillars {
  display: none;
}

#team .team-section__highlights {
  display: none;
}

#team .team-section__closing {
  max-width: var(--shell-reading);
}

.promises__item {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 24px;
  background: #fff;
  border: 1px solid rgba(var(--navy-rgb), 0.1);
  border-radius: 8px;
}

.promises__icon {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  color: var(--gold);
  margin-top: 2px;
}

.promises__text {
  margin: 0;
  font-size: clamp(0.9375rem, 1.4vw, 1.0625rem);
  line-height: 1.65;
  text-align: left;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.promises__label {
  display: block;
  font-weight: 600;
  color: var(--navy);
}

.promises__desc {
  display: block;
  color: rgba(var(--navy-rgb), 0.65);
}

.promises__cta {
  display: block;
  width: fit-content;
  margin: 0 auto;
  text-transform: none;
  letter-spacing: 0.04em;
  font-size: 0.9375rem;
}

/* ---- Ad Management ---- */
.ad-mgmt {
  position: relative;
  padding: 6.25rem 0 5rem;
  background-color: var(--navy);
  color: var(--cream);
  text-align: center;
}

.ad-mgmt::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: url('assets/lookingForBG.png');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100%;
  opacity: 0.5;
  pointer-events: none;
}

.ad-mgmt__inner {
  position: relative;
  z-index: 1;
  max-width: var(--shell-content);
  margin: 0 auto;
}

.ad-mgmt__title {
  font-family: var(--font-display);
  font-size: clamp(1.875rem, 4.5vw, 3rem);
  font-weight: 400;
  letter-spacing: 0.04em;
  line-height: 1.25;
  margin-bottom: 32px;
  color: var(--cream);
}

.ad-mgmt__intro {
  max-width: 40rem;
  margin: 0 auto 64px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.ad-mgmt__intro p {
  font-size: clamp(0.9375rem, 1.5vw, 1.0625rem);
  line-height: 1.7;
  color: var(--cream-dim);
}

.ad-mgmt__pillars {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0;
  margin-bottom: 56px;
}

.ad-mgmt__pillar {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0 32px;
}

.ad-mgmt__pillar + .ad-mgmt__pillar {
  border-left: 1px solid rgba(var(--gold-rgb), 0.35);
}

.ad-mgmt__icon {
  width: 144px;
  height: 144px;
  margin-bottom: 24px;
  background-color: var(--gold);
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
}

.ad-mgmt__icon--templates {
  -webkit-mask-image: url('assets/noTemplates.png');
  mask-image: url('assets/noTemplates.png');
}

.ad-mgmt__icon--strategy {
  -webkit-mask-image: url('assets/strategy.png');
  mask-image: url('assets/strategy.png');
}

.ad-mgmt__icon--chat {
  -webkit-mask-image: url('assets/directChat.png');
  mask-image: url('assets/directChat.png');
}

.ad-mgmt__pillar-title {
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 14px;
}

.ad-mgmt__pillar-desc {
  font-size: 0.9375rem;
  line-height: 1.65;
  color: var(--cream-dim);
  max-width: 240px;
}

.ad-mgmt__divider {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-top: 72px;
  max-width: 32.5rem;
  margin-left: auto;
  margin-right: auto;
}

.ad-mgmt__divider-line {
  flex: 1;
  height: 1px;
  background: rgba(var(--gold-rgb), 0.5);
}

.ad-mgmt__divider-diamond {
  flex-shrink: 0;
  width: 8px;
  height: 8px;
  background: var(--gold);
  transform: rotate(45deg);
}

/* ---- Team section ---- */
.team-section {
  padding: 6.25rem 0;
  background: var(--navy);
  color: var(--cream);
  text-align: center;
}

#team.team-section {
  position: relative;
  background-color: var(--cream);
  color: var(--navy);
}

#team.team-section::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: url('assets/learnedBG.webp');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  pointer-events: none;
}

.team-section__inner {
  max-width: var(--shell-reading);
  margin: 0 auto;
}

#team .team-section__inner {
  position: relative;
  z-index: 1;
}

#team .team-section__title {
  color: var(--navy);
}

#team .team-section__intro,
#team .team-section__closing,
#team .team-section__highlights {
  color: rgba(var(--navy-rgb), 0.65);
}

.team-section__title {
  font-family: var(--font-display);
  font-size: clamp(1.875rem, 4.5vw, 3rem);
  font-weight: 400;
  letter-spacing: 0.04em;
  line-height: 1.25;
  margin-bottom: 28px;
  color: var(--cream);
}

.team-section__intro {
  font-size: clamp(1rem, 1.6vw, 1.125rem);
  line-height: 1.7;
  color: var(--cream-dim);
  margin-bottom: 24px;
}

.team-section__highlights {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 10px 18px;
  margin-bottom: 28px;
  font-size: clamp(0.9375rem, 1.4vw, 1.0625rem);
  line-height: 1.6;
  color: var(--cream-dim);
}

.team-section__sep {
  color: rgba(var(--gold-rgb), 0.45);
  font-weight: 300;
}

.team-section__closing {
  font-size: clamp(0.9375rem, 1.4vw, 1.0625rem);
  line-height: 1.75;
  color: var(--cream-dim);
  margin-bottom: 40px;
  max-width: 32.5rem;
  margin-left: auto;
  margin-right: auto;
}

/* ---- Content blocks ---- */
.content-block {
  padding: 6.25rem 0;
  text-align: center;
}

.content-block--navy {
  background: var(--navy);
  color: var(--cream);
}

.content-block--end {
  position: relative;
  background-color: var(--navy);
}

.content-block--end::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: url('assets/endBG.webp');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  opacity: 0.5;
  pointer-events: none;
}

.content-block--end .content-block__inner {
  position: relative;
  z-index: 1;
}

.content-block__inner {
  max-width: 720px;
  margin: 0 auto;
}

.content-block__title {
  font-family: var(--font-display);
  font-size: clamp(1.875rem, 4.5vw, 3rem);
  font-weight: 400;
  letter-spacing: 0.04em;
  line-height: 1.25;
  margin-bottom: 0;
  color: var(--cream);
}

.content-block__title::after {
  content: '';
  display: block;
  width: 48px;
  height: 1px;
  background: var(--gold);
  margin: 24px auto 28px;
}

.content-block__lead {
  font-size: clamp(1rem, 1.6vw, 1.125rem);
  line-height: 1.7;
  margin-bottom: 28px;
}

.content-block--navy .content-block__lead {
  color: var(--cream-dim);
}

.content-block__body {
  text-align: left;
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin-bottom: 36px;
}

#get-in-touch .content-block__body {
  text-align: center;
  align-items: center;
}

.content-block--navy .content-block__body p {
  font-size: clamp(0.9375rem, 1.4vw, 1.0625rem);
  line-height: 1.75;
  color: var(--cream-dim);
}

.content-block__link {
  display: inline-block;
  font-family: inherit;
  font-size: 0.8125rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  border: none;
  border-bottom: 1px solid var(--gold);
  padding: 0 0 4px;
  background: transparent;
  color: var(--gold);
  cursor: pointer;
  text-decoration: none;
  transition: opacity var(--transition-fast);
}

.content-block__link:hover {
  opacity: 0.7;
}

.form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

/* ---- Buttons ---- */
.btn {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 16px 40px;
  transition: background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);
  text-align: center;
}

.btn--gold {
  background: var(--gold);
  color: var(--navy);
  border: 1px solid var(--gold);
  border-radius: 999px;
}

.btn--gold:hover {
  background: var(--cream);
  border-color: var(--cream);
  color: var(--navy);
}

.btn--full {
  width: 100%;
}

/* ---- Footer ---- */
.site-footer {
  position: relative;
  padding-top: max(0.75rem, calc(clamp(2.75rem, 5.5vw, 3.75rem) - 76px));
  padding-right: 0;
  padding-bottom: clamp(1.35rem, 2.75vw, 1.85rem);
  padding-left: 0;
  background-color: var(--navy-dark);
  background-image: linear-gradient(rgba(0, 9, 22, 0.78), rgba(0, 9, 22, 0.78)), url('assets/thirdPartBG.webp');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  border-top: 0;
}

/* Subtle top rule + centered gold accent */
.site-footer::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: rgba(var(--gold-rgb), 0.14);
  pointer-events: none;
}

.site-footer::after {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  width: 90px;
  height: 1px;
  background: var(--gold);
  transform: translateX(-50%);
  pointer-events: none;
}

/* Three columns: Services | Brand (true center) | Legal */
.footer__row {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  column-gap: clamp(1.5rem, 4vw, 3rem);
  margin-bottom: 0;
}

.footer__brand {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  justify-self: center;
  text-align: center;
  max-width: 16rem;
}

.footer__logo-image {
  display: block;
  height: 106px;
  width: auto;
  margin-bottom: 0.15rem;
}

.footer__contact-link {
  display: inline-flex;
  align-items: center;
  gap: 0.4em;
  font-family: var(--font-sans);
  font-size: 0.6875rem;
  letter-spacing: 0.04em;
  color: var(--cream-dim);
  text-decoration: none;
  padding: 0.15rem 0;
  transition: color 0.2s ease;
}

.footer__contact-link .footer__link-arrow {
  display: inline-block;
  opacity: 0;
  transform: translateX(-3px);
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.footer__contact-link:hover {
  color: var(--gold);
}

.footer__contact-link:hover .footer__link-arrow {
  opacity: 1;
  transform: translateX(1px);
}

.footer__col {
  display: flex;
  flex-direction: column;
}

.footer__col--services {
  justify-self: start;
  align-items: flex-start;
  text-align: left;
}

.footer__col--legal {
  justify-self: end;
  align-items: flex-end;
  text-align: right;
}

.footer__col h4 {
  font-family: var(--font-sans);
  font-size: 0.5rem;
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(var(--gold-rgb), 0.55);
  margin: 0 0 0.75rem;
}

.footer__col ul {
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.footer__col--legal ul {
  align-items: flex-end;
}

.footer__col a,
.footer-link-btn {
  font-family: var(--font-sans);
  font-size: 0.6875rem;
  color: var(--cream-dim);
  background: none;
  border: none;
  padding: 0.15rem 0;
  cursor: pointer;
  text-decoration: none;
  transition: color 0.2s ease;
}

.footer__col .footer-link-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.4em;
}

.footer__col .footer-link-btn::after {
  content: '→';
  display: inline-block;
  opacity: 0;
  transform: translateX(-4px);
  transition: opacity 0.2s ease-out, transform 0.2s ease-out;
  font-size: 1em;
  font-weight: 500;
  line-height: 1;
  color: var(--gold);
}

.footer__col a:hover,
.footer-link-btn:hover {
  color: var(--gold);
}

.footer__col .footer-link-btn:hover::after {
  opacity: 1;
  transform: translateX(0);
}

.footer__mail {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-top: 0.15rem;
  font-size: 0.75rem;
  letter-spacing: 0.02em;
  color: rgba(var(--cream-rgb), 0.88);
  transition: color 0.2s ease, transform 0.2s ease;
}

.footer__mail svg {
  flex-shrink: 0;
  opacity: 0.75;
  transition: opacity 0.2s ease;
}

.footer__mail:hover {
  color: var(--gold);
  transform: translateY(-1px);
}

.footer__mail:hover svg {
  opacity: 1;
}

.footer__mail::after {
  display: none;
}

/* Desktop: optical footer alignment — invisible hover arrows out of flow
   (same root cause as mobile). Email gets trailing pad = icon+gap so the
   address text, not the icon+text unit, sits on the column centre. */
@media (min-width: 769px) {
  .footer__contact-link {
    position: relative;
  }

  .footer__contact-link .footer__link-arrow {
    position: absolute;
    left: calc(100% + 0.15em);
    top: 50%;
    margin: 0;
    transform: translateY(-50%) translateX(-3px);
  }

  .footer__contact-link:hover .footer__link-arrow {
    transform: translateY(-50%) translateX(1px);
  }

  .footer__col .footer-link-btn {
    position: relative;
  }

  .footer__col .footer-link-btn::after {
    position: absolute;
    left: calc(100% + 0.15em);
    top: 50%;
    margin: 0;
    transform: translateY(-50%) translateX(-4px);
  }

  .footer__col .footer-link-btn:hover::after {
    transform: translateY(-50%) translateX(0);
  }

  .footer__mail {
    padding-right: calc(15px + 0.5rem);
  }
}

.footer__bottom {
  margin-top: clamp(2rem, 4vw, 2.75rem);
  padding-top: clamp(1rem, 2vw, 1.25rem);
  border-top: 1px solid rgba(var(--gold-rgb), 0.08);
  text-align: center;
}

.footer__bottom p {
  margin: 0;
  font-size: 0.5625rem;
  letter-spacing: 0.06em;
  color: rgba(var(--cream-rgb), 0.32);
}

/* ---- Scroll Reveal ---- */
.reveal {
  opacity: 0;
  transform: translateY(32px);
  transition: opacity 0.8s ease, transform 0.8s ease;
}

.reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* ---- Responsive ---- */
@media (max-width: 1024px) {
  .promises__list {
    grid-template-columns: repeat(2, 1fr);
    max-width: 960px;
  }

  .services__grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
  }

  .content-block {
    padding: 80px 0;
  }

  .ad-mgmt__pillars {
    gap: 0;
  }

  .ad-mgmt__pillar {
    padding: 0 20px;
  }
}

@media (max-width: 768px) {
  .container {
    padding: 0 24px;
  }

  .site-header {
    padding: 0 24px;
  }

  .site-header__logo-image {
    height: 38px;
  }

  .site-header__actions {
    gap: 14px;
  }

  .site-header__actions .admin-badge {
    order: 0;
  }

  /* Mobile header: hamburger + slide-down menu */
  .site-header__menu-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-direction: column !important;
    width: 44px;
    height: 44px;
    margin-left: 0;
    border: none;
    border-radius: 0;
    background: transparent;
    color: var(--gold);
    cursor: pointer;
    padding: 0;
    gap: 4px;
    justify-content: center;
    flex-wrap: nowrap;
    order: 2;
  }

  .site-header__menu-toggle-line {
    width: 20px;
    height: 2px;
    background: currentColor;
    border-radius: 999px;
    display: block;
  }

  .header-nav {
    display: none;
    order: 3;
  }

  /*
   * Menu-open header must match the dark panel regardless of scroll position.
   * Approach: full-viewport panel (top: 0) so nothing bleeds through the header
   * strip; logo / lang / hamburger sit above it via z-index.
   * transition:none — otherwise scrolled white/logo filter still fade and content
   * shows through the header strip for ~300ms.
   */
  .site-header--menu-open {
    background-color: transparent;
    background-image: none;
    box-shadow: none;
    border-bottom-color: transparent;
    transition: none;
  }

  .site-header--menu-open::before,
  body:not(:has(main.home-page)) .site-header.site-header--menu-open::before {
    opacity: 0;
    transition: none;
  }

  .site-header--menu-open .site-header__logo,
  .site-header--menu-open #langSwitcher,
  .site-header--menu-open .site-header__menu-toggle {
    position: relative;
    z-index: 2;
  }

  .site-header--menu-open .site-header__logo-image {
    filter: none;
    transition: none;
  }

  .site-header--menu-open .site-header__menu-toggle {
    color: var(--gold);
  }

  .site-header--menu-open .lang-btn {
    color: rgba(var(--cream-rgb), 0.72);
  }

  .site-header--menu-open .lang-btn:hover:not(.is-active) {
    color: var(--cream);
  }

  .site-header--menu-open .lang-btn.is-active {
    color: var(--gold);
  }

  .site-header--menu-open .lang-switcher__sep {
    color: rgba(var(--cream-rgb), 0.5);
  }

  .site-header--menu-open .header-nav {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    background-image: linear-gradient(rgba(0, 9, 22, 0.92), rgba(0, 9, 22, 0.92)), url('assets/thirdPartBG.webp');
    background-size: cover;
    background-position: center;
    padding: calc(var(--header-height) + 20px) 24px 32px;
    overflow-y: auto;
  }

  .site-header--menu-open .header-nav__list {
    flex-direction: column;
    align-items: center;
    gap: 18px;
  }

  .site-header--menu-open .header-nav__item {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  /* Pre-existing admin-only item ([hidden]) — display:flex above was un-hiding it */
  .site-header--menu-open .header-nav__item[hidden] {
    display: none;
  }

  .site-header--menu-open .header-nav__link {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 3px;
    font-family: var(--font-display);
    font-size: 1.05rem;
    font-weight: 400;
    text-transform: none;
    letter-spacing: 0.02em;
    padding: 8px 0;
    min-height: 0;
    color: var(--cream);
  }

  .site-header--menu-open .header-nav__chevron {
    display: none;
  }

  .site-header--menu-open .header-nav__num {
    display: block;
    font-family: var(--font-display);
    font-size: 0.7rem;
    font-weight: 400;
    letter-spacing: 0.08em;
    color: rgba(var(--gold-rgb), 0.65);
    text-align: center;
  }

  /*
   * Collapsed Services submenu must occupy zero height.
   * Do not force display:flex here — that overrode [hidden] and left an invisible
   * (opacity:0 / visibility:hidden) box still taking layout space between items.
   */
  .site-header--menu-open .header-nav__dropdown {
    flex-direction: column;
    align-items: center;
    position: static;
    min-width: 0;
    width: 100%;
    gap: 4px;
    margin-top: 0;
    padding: 0;
    box-shadow: none;
    border-radius: 0;
    background: none;
    border: none;
    color: var(--cream);
  }

  .site-header--menu-open .header-nav__dropdown.is-open {
    display: flex;
    opacity: 1;
    visibility: visible;
    margin-top: 8px;
  }

  .site-header--menu-open .header-nav__dropdown li {
    flex: none;
    border-left: none;
    width: 100%;
  }

  .site-header--menu-open .header-nav__dropdown-link {
    padding: 4px 0;
    min-height: 0;
    line-height: 1.6;
    font-size: 0.9rem;
    color: rgba(var(--gold-rgb), 0.75);
    text-align: center;
    background: transparent;
  }

  .site-header--menu-open .header-nav__dropdown-link:hover {
    color: var(--gold);
    background: transparent;
  }

  /* Language switcher sits in the header bar (left of hamburger), not in the panel */
  #langSwitcher {
    display: flex;
    align-items: center;
    order: 1;
    margin: 0;
    flex-shrink: 0;
  }

  #langSwitcher .lang-btn {
    min-height: 44px;
    min-width: 44px;
    padding: 0 6px;
  }

  .services__grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }

  .content-block {
    padding: 64px 0;
  }

  .team-section {
    padding: 72px 0;
  }

  .ad-mgmt {
    padding: 72px 0 56px;
  }

  .ad-mgmt__pillars {
    grid-template-columns: 1fr;
    gap: 40px;
    margin-bottom: 40px;
  }

  .ad-mgmt__pillar + .ad-mgmt__pillar {
    border-left: none;
    padding-top: 40px;
    border-top: 1px solid rgba(var(--gold-rgb), 0.35);
  }

  .ad-mgmt__pillar {
    padding: 0;
  }

  .promises {
    padding: 72px 0;
  }

  .promises__list {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .promises__item {
    gap: 12px;
    padding: 20px;
  }

  .promises__cta {
    font-size: 0.875rem;
    padding: 14px 28px;
  }

  .form-row {
    grid-template-columns: 1fr;
  }

  .footer__row {
    grid-template-columns: 1fr;
    justify-items: center;
    text-align: center;
    row-gap: 0.1875rem;
    column-gap: 0;
    margin-bottom: 0;
  }

  .footer__brand {
    order: 1;
    gap: 0.75rem;
    width: 100%;
    max-width: none;
  }

  .footer__col--services {
    order: 2;
    justify-self: center;
    align-items: center;
    text-align: center;
    width: 100%;
  }

  .footer__col--legal {
    order: 3;
    justify-self: center;
    align-items: center;
    text-align: center;
    width: 100%;
  }

  .footer__col--legal ul {
    align-items: center;
  }

  .footer__col ul {
    align-items: center;
    width: 100%;
    gap: 0.1875rem;
  }

  .site-footer {
    padding-top: max(0.75rem, calc(clamp(2.25rem, 7vw, 2.75rem) - 76px));
    padding-bottom: 0.1875rem;
  }

  .site-footer::after {
    width: 72px;
  }

  .footer__logo-image {
    height: 90px;
    margin-bottom: 0;
  }

  .footer__col {
    align-items: center;
    text-align: center;
    gap: 0.1875rem;
  }

  .footer__col h4 {
    font-size: 0.46875rem;
    letter-spacing: 0.16em;
    margin-bottom: 0;
  }

  .footer__col a,
  .footer-link-btn,
  .footer__contact-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0;
    text-align: center;
  }

  /* Invisible hover arrows must not consume layout width — otherwise the
     visible label centres as if the arrow were part of the text. */
  .footer__contact-link {
    position: relative;
  }

  .footer__contact-link .footer__link-arrow {
    position: absolute;
    left: calc(100% + 0.15em);
    top: 50%;
    margin: 0;
    transform: translateY(-50%) translateX(-3px);
  }

  .footer__contact-link:hover .footer__link-arrow {
    transform: translateY(-50%) translateX(1px);
  }

  .footer__col .footer-link-btn {
    position: relative;
  }

  .footer__col .footer-link-btn::after {
    position: absolute;
    left: calc(100% + 0.15em);
    top: 50%;
    margin: 0;
    transform: translateY(-50%) translateX(-4px);
  }

  .footer__col .footer-link-btn:hover::after {
    transform: translateY(-50%) translateX(0);
  }

  .footer__mail {
    font-size: 0.6875rem;
  }

  .footer-cookie-standalone .consent-footer-icon-btn {
    margin-left: 0;
  }

  .footer__bottom {
    margin-top: 0.1875rem;
    padding-top: 0.1875rem;
  }

  .hero-section-divider {
    padding: 14px 24px 0;
  }

  .familiar {
    padding-top: 32px;
  }

  #familiar .familiar__list {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .familiar__item {
    gap: 20px;
    padding: 22px 0;
  }

  .familiar__icon {
    width: 66px;
    height: 66px;
  }

  #familiar .familiar__icon {
    width: 50px;
    height: 50px;
  }

  .familiar__icon-image {
    width: 97px;
  }

  #familiar .familiar__icon-image {
    width: 76px;
  }

  .hero__content {
    width: 100%;
    max-width: 100%;
    padding: 0;
  }

  .hero__bottom {
    padding: 0;
  }

  .hero-trust-band {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    max-width: 100%;
    min-height: clamp(200px, 52vw, 260px);
  }

  .hero__trust-line {
    flex: 0 0 auto;
    width: 100%;
    margin: 0;
  }

  .hero-trust-band__content {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
  }

  .hero__trust-title {
    margin-top: 0;
    margin-bottom: 22px;
  }

  .hero__countries {
    margin-top: 0;
    margin-bottom: 0;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: flex-start;
    gap: 12px;
  }

  .hero-section-divider--trust-band {
    flex: 0 0 auto;
    width: 100%;
    padding: 0;
    margin: 0;
  }

  .hero__country {
    flex: 1;
    min-width: 0;
    max-width: none;
    gap: 6px;
  }

  .hero__country--hu .hero__country-art {
    margin-top: 10px;
  }

  .hero__country-name {
    font-size: 0.5625rem;
    letter-spacing: 0.08em;
  }

  .hero__country-art {
    width: 56px;
  }

  .hero__overlay {
    background: linear-gradient(
      180deg,
      rgba(var(--navy-rgb), 0.96) 0%,
      rgba(var(--navy-rgb), 0.96) 45%,
      rgba(var(--navy-rgb), 0.75) 100%
    );
  }

  .service-card__body {
    padding: 24px 20px 32px;
  }

  .service-card__cta {
    white-space: normal;
    text-align: center;
  }

  .hero__headline {
    font-size: clamp(1.2rem, 5.6vw, 1.75rem);
  }
}

@media (max-width: 480px) {
  .nav-link {
    font-size: 1.75rem;
    padding: 8px 16px;
  }

  .nav-link--cta {
    font-size: 1rem;
    padding: 14px 32px;
  }
}

/* Homepage: slightly smaller typography (scoped to main, service/About panels unaffected) */
main .hero__tagline,
main .hero__cta {
  font-size: 0.6875rem;
}

main .hero__subheadline {
  font-size: clamp(0.9rem, 1.45vw, 1.05rem);
}

main .section__heading {
  font-size: clamp(1.5rem, 3.5vw, 2.15rem);
}

main .familiar__intro {
  font-size: clamp(0.78rem, 1.25vw, 0.875rem);
}

main .familiar__cta,
main .content-block__lead,
main .team-section__intro {
  font-size: clamp(0.9rem, 1.45vw, 1rem);
}

main .service-card__desc {
  font-size: clamp(0.875rem, 1.25vw, 0.9375rem);
}

main .service-card__cta,
main .promises__pillar-title,
main .ad-mgmt__pillar-title,
main .content-block__link {
  font-size: 0.6875rem;
}

main .promises__pillar-desc,
main .ad-mgmt__pillar-desc {
  font-size: 0.875rem;
}

main #ad-management .ad-mgmt__title,
main #team .team-section__title,
main #promises .promises__title,
main #get-in-touch .content-block__title {
  font-size: clamp(1.5rem, 3.5vw, 2.15rem);
}

main #ad-management .ad-mgmt__intro p,
main #team .team-section__intro,
main #team .team-section__closing,
main #promises .promises__pillar-desc,
main #promises .promises__subtitle,
main #get-in-touch .content-block__body p {
  font-size: clamp(0.875rem, 1.25vw, 0.9375rem);
}

/* Account Audit page: slightly smaller typography */
.service-page--audit .audit-page-hero__title {
  font-size: var(--audit-fs-hero-title);
}

.service-page--audit .hero__tagline {
  font-size: var(--audit-fs-small);
}

.service-page--audit .hero__subheadline {
  font-size: var(--audit-fs-lead);
}

.service-page--audit .hero__cta {
  font-size: var(--audit-fs-small);
}

.service-page--audit .audit-intro__eyebrow {
  font-size: var(--audit-fs-eyebrow);
}

.service-page--audit .audit-intro__heading {
  font-size: var(--audit-fs-intro-heading);
}

.service-page--audit .audit-intro__prose {
  font-size: var(--audit-fs-body);
}

.service-page--audit .audit-intro__feature-text strong {
  font-size: var(--audit-fs-small);
}

.service-page--audit .audit-intro__feature-text span {
  font-size: var(--audit-fs-feature);
}

.service-page--audit .audit-prose {
  font-size: var(--audit-fs-body-lg);
}

.service-page--audit .audit-prose--lead {
  font-size: var(--audit-fs-lead);
}

.service-page--audit .audit-section__title {
  font-size: var(--audit-fs-section-title);
}

.service-page--audit .audit-look__grid .promises__text {
  font-size: var(--audit-fs-body);
}

.service-page--audit .audit-find__intro,
.service-page--audit .team-section__intro {
  font-size: var(--audit-fs-lead);
}

.service-page--audit .familiar__text {
  font-size: clamp(0.78rem, 1.2vw, 0.875rem);
}

.service-page--audit .audit-find__closing .team-section__closing,
.service-page--audit .team-section__closing {
  font-size: var(--audit-fs-body);
}

.service-page--audit .ad-mgmt__title {
  font-size: var(--audit-fs-section-title);
}

.service-page--audit .ad-mgmt__intro p {
  font-size: var(--audit-fs-body-lg);
}

.service-page--audit .audit-free-call__note-text {
  font-size: var(--audit-fs-note);
}

/* Ad Management page: typography matches Account Audit */
.service-page--ad-mgmt .audit-page-hero__title {
  font-size: var(--audit-fs-hero-title);
}

.service-page--ad-mgmt .hero__tagline {
  font-size: var(--audit-fs-small);
}

.service-page--ad-mgmt .hero__subheadline {
  font-size: var(--audit-fs-lead);
}

.service-page--ad-mgmt .hero__cta {
  font-size: var(--audit-fs-small);
}

.service-page--ad-mgmt .audit-intro__eyebrow {
  font-size: var(--audit-fs-eyebrow);
}

.service-page--ad-mgmt .audit-intro__heading {
  font-size: var(--audit-fs-intro-heading);
}

.service-page--ad-mgmt .audit-intro__prose {
  font-size: var(--audit-fs-body);
}

.service-page--ad-mgmt .audit-intro__feature-text strong {
  font-size: var(--audit-fs-small);
}

.service-page--ad-mgmt .audit-intro__feature-text span {
  font-size: var(--audit-fs-feature);
}

.service-page--ad-mgmt .audit-prose {
  font-size: var(--audit-fs-body-lg);
}

.service-page--ad-mgmt .audit-prose--lead {
  font-size: var(--audit-fs-lead);
}

.service-page--ad-mgmt .audit-section__title {
  font-size: var(--audit-fs-section-title);
}

.service-page--ad-mgmt .audit-look__grid .promises__text {
  font-size: var(--audit-fs-body);
}

/* Ad Management — Who we typically work with (matches PPC Mentoring Who is this for? + thirdPartBG) */
.service-page--ad-mgmt .promises.audit-look--ad-mgmt-who {
  background-color: var(--navy);
  background-image: url('assets/thirdPartBG.webp');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  color: var(--cream);
  padding: clamp(3rem, 6vw, 4.5rem) 0;
}

.service-page--ad-mgmt .promises.audit-look--ad-mgmt-who::before {
  display: none;
}

.service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .audit-section__title {
  color: #ffffff;
  font-size: clamp(1.43rem, 2.75vw, 1.92rem);
}

.service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__intro,
.service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__goal {
  max-width: var(--audit-text-max);
  margin-inline: auto;
  text-align: center;
  color: #ffffff;
  font-family: var(--font-sans);
  font-size: clamp(0.9375rem, 1.4vw, 1rem);
  line-height: 1.75;
}

.service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__intro {
  margin: 0 auto clamp(1.75rem, 3vw, 2.25rem);
}

.service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__goal {
  margin: clamp(2rem, 4vw, 2.75rem) auto 0;
}

/* Bottom-of-section CTA for "Who we typically work with": visually identical
   to the hero CTA (same size via --audit-fs-small), centered like the rest
   of this section, with a navy hover text color (matching the hero CTA's
   existing gold-fill hover). */
.service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__cta {
  display: flex;
  width: fit-content;
  margin: clamp(1.75rem, 3.5vw, 2.5rem) auto 0;
  font-size: var(--audit-fs-small);
}

@media (max-width: 768px) {
  .service-page--ad-mgmt .promises.audit-look--ad-mgmt-who {
    padding: clamp(2.25rem, 6vw, 3rem) 0;
  }

  .service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .audit-section__title {
    font-size: clamp(1.25rem, 5vw, 1.65rem);
    margin-bottom: clamp(1.25rem, 4vw, 1.75rem);
  }

  .service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__intro,
  .service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__goal {
    font-size: clamp(0.8rem, 3.4vw, 0.9rem);
    line-height: 1.65;
  }

  .service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__cta {
    margin-top: 1.25rem;
    font-size: 0.625rem;
    padding: 12px 22px;
    min-height: 44px;
    gap: 10px;
    max-width: 100%;
  }
}

/* Ad Management — What working together actually looks like (whiteBG) */
.service-page--ad-mgmt .audit-intro--ad-mgmt-together {
  position: relative;
  overflow: hidden;
  background-color: var(--cream);
  padding: clamp(3.5rem, 7vw, 5.5rem) 0;
  color: var(--navy);
}

.service-page--ad-mgmt .audit-intro--ad-mgmt-together::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: url('assets/whiteBG.webp');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  pointer-events: none;
}

.service-page--ad-mgmt .ad-mgmt-together__inner {
  position: relative;
  z-index: 1;
  max-width: min(46rem, 88vw);
  margin-inline: auto;
  padding-inline: clamp(0.875rem, 3vw, 1.25rem);
}

.service-page--ad-mgmt .ad-mgmt-together__grid {
  display: grid;
  grid-template-columns: minmax(0, 40%) minmax(0, 55%);
  column-gap: clamp(1.75rem, 4vw, 3rem);
  align-items: start;
}

.service-page--ad-mgmt .ad-mgmt-together__heading-col {
  min-width: 0;
}

.service-page--ad-mgmt .ad-mgmt-together__content-col {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.service-page--ad-mgmt .ad-mgmt-together__heading-wrap {
  align-items: flex-start;
  margin-bottom: 0;
}

.service-page--ad-mgmt .ad-mgmt-together__heading {
  margin: 0;
  font-family: var(--font-display);
  font-size: clamp(1.0625rem, 4vw, 1.3125rem);
  font-weight: 400;
  line-height: 1.35;
  letter-spacing: 0.01em;
  text-align: left;
  color: var(--navy);
}

.service-page--ad-mgmt .audit-intro--ad-mgmt-together .audit-intro__rule--heading {
  margin-inline: 0;
}

.service-page--ad-mgmt .ad-mgmt-together__prose {
  margin: 0;
  font-family: var(--font-sans);
  font-size: var(--audit-fs-body);
  font-weight: 400;
  line-height: 1.8;
  color: var(--navy);
  text-align: left;
}

@media (min-width: 769px) {
  .service-page--ad-mgmt .ad-mgmt-together__inner {
    max-width: min(var(--shell-reading), 94vw);
    margin-inline: auto;
    padding-left: clamp(0.625rem, 1.75vw, 1rem);
    padding-right: clamp(1.25rem, 3.5vw, 2rem);
  }

  .service-page--ad-mgmt .ad-mgmt-together__grid {
    grid-template-columns: minmax(0, 30%) minmax(0, 1fr);
    column-gap: clamp(0.875rem, 1.75vw, 1.375rem);
  }

  .service-page--ad-mgmt .ad-mgmt-together__heading {
    font-size: clamp(1.125rem, 1.75vw, 1.4375rem);
  }

  .service-page--ad-mgmt .ad-mgmt-together__prose {
    line-height: 1.85;
  }
}

.service-page--ad-mgmt .ad-mgmt-together__prose--body {
  margin-top: clamp(1rem, 2vw, 1.25rem);
}

.service-page--ad-mgmt .ad-mgmt-together__quote {
  display: flex;
  align-items: stretch;
  gap: clamp(0.875rem, 1.5vw, 1.125rem);
  margin: clamp(2rem, 4vw, 3rem) 0 0;
  padding: 0;
  border: none;
}

.service-page--ad-mgmt .ad-mgmt-together__quote-accent {
  flex-shrink: 0;
  width: 2px;
  background: var(--gold);
}

.service-page--ad-mgmt .ad-mgmt-together__quote-text {
  margin: 0;
  font-family: var(--font-display);
  font-size: clamp(1.125rem, 2vw, 1.375rem);
  font-weight: 400;
  line-height: 1.45;
  letter-spacing: 0.02em;
  text-align: left;
  color: var(--gold);
}

@media (max-width: 768px) {
  .service-page--ad-mgmt {
    --ad-mgmt-mobile-gutter: clamp(1.75rem, 5.5vw, 2.125rem);
    --ad-mgmt-mobile-quote-gap: clamp(0.75rem, 3vw, 0.875rem);
  }

  .service-page--ad-mgmt .audit-intro--ad-mgmt-together {
    padding: clamp(2.75rem, 7vw, 3.5rem) 0;
  }

  .service-page--ad-mgmt .audit-intro--ad-mgmt-together::before {
    background-image: url('assets/learnedBG.webp');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }

  .service-page--ad-mgmt .audit-intro--ad-mgmt-together::after {
    display: none;
  }

  .service-page--ad-mgmt .ad-mgmt-together__inner {
    max-width: none;
    padding-inline: var(--ad-mgmt-mobile-gutter);
  }

  .service-page--ad-mgmt .ad-mgmt-together__grid {
    grid-template-columns: 1fr;
    row-gap: clamp(2rem, 6vw, 2.75rem);
    column-gap: 0;
  }

  .service-page--ad-mgmt .ad-mgmt-together__heading-wrap {
    margin-bottom: clamp(0.5rem, 2vw, 0.75rem);
  }

  .service-page--ad-mgmt .ad-mgmt-together__heading {
    font-size: clamp(1.25rem, 5vw, 1.65rem);
    line-height: 1.25;
    color: var(--navy);
  }

  .service-page--ad-mgmt .ad-mgmt-together__prose {
    font-size: clamp(0.8rem, 3.4vw, 0.9rem);
    line-height: 1.65;
  }

  .service-page--ad-mgmt .ad-mgmt-together__prose--body {
    margin-top: clamp(2rem, 6vw, 2.75rem);
  }

  .service-page--ad-mgmt .ad-mgmt-together__quote {
    margin-top: clamp(2.75rem, 7vw, 3.5rem);
    margin-left: 0;
    gap: var(--ad-mgmt-mobile-quote-gap);
  }

  .service-page--ad-mgmt .ad-mgmt-together__quote-accent {
    width: 1px;
  }

  .service-page--ad-mgmt .ad-mgmt-together__quote-text {
    font-size: clamp(1rem, 4.2vw, 1.125rem);
    line-height: 1.4;
  }
}

/* Ad Management — How it works (timeline + cards on thirdPartBG) */
.service-page--ad-mgmt .ad-mgmt-how-band {
  position: relative;
  background-color: var(--navy);
  background-image: url('assets/thirdPartBG.webp');
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
}

.service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt {
  position: relative;
  background: transparent;
  padding: clamp(3rem, 6vw, 4.5rem) 0 clamp(2.5rem, 5vw, 3.5rem);
}

.service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt .audit-intro__layout {
  position: relative;
  z-index: 1;
}

.service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt .audit-intro__heading {
  color: #ffffff;
  font-size: clamp(1.43rem, 2.75vw, 1.92rem);
}

.service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt .audit-intro__step-num {
  font-weight: 400;
}

.service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt .audit-intro__step-lead {
  font-family: var(--font-display);
  font-weight: 700;
  color: var(--gold);
}

.service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt .audit-intro__step-body {
  font-size: clamp(0.8125rem, 1.15vw, 0.875rem);
}

.service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt .audit-intro__step-num {
  font-size: clamp(1.75rem, 5vw, 2rem);
}

.service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt .audit-intro__step-content .audit-intro__step-body + .audit-intro__step-body {
  margin-top: 1rem;
}

@media (min-width: 769px) {
  .service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt .audit-intro__main {
    --audit-step-num-width: clamp(3.5rem, 5.5vw, 4.5rem);
    --audit-step-num-gap: 2.25rem;
    --audit-step-line-gap: 1.75rem;
    margin-inline: auto;
    padding-left: 0;
    text-align: left;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt .audit-intro__heading-wrap {
    padding-left: clamp(5rem, 8vw, 7.5rem);
    align-items: flex-start;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt .audit-intro__heading {
    text-align: left;
    font-size: clamp(1.175rem, 2.25vw, 1.575rem);
    color: #ffffff;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt .audit-intro__step-body {
    margin: 0;
    font-family: var(--font-sans);
    font-size: clamp(0.9375rem, 1.4vw, 1rem);
    font-weight: 400;
    line-height: 1.75;
    color: #ffffff;
    text-align: left;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt .audit-intro__step-lead {
    font-family: var(--font-display);
    font-weight: 700;
    color: var(--gold);
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt .audit-intro__steps {
    list-style: none;
    margin: clamp(2.25rem, 3.5vw, 2.75rem) 0 0;
    margin-left: calc(var(--audit-step-num-width) + var(--audit-step-num-gap));
    padding: 0 0 0 calc(clamp(5rem, 8vw, 7.5rem) + var(--audit-step-line-gap));
    border-left: 2px solid var(--gold);
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt .audit-intro__step {
    position: relative;
    padding: 0 0 clamp(2rem, 3vw, 2.5rem);
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt .audit-intro__step:last-child {
    padding-bottom: 0;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt .audit-intro__step-num {
    position: absolute;
    left: calc(-1 * (var(--audit-step-num-width) + var(--audit-step-num-gap) + var(--audit-step-line-gap)));
    width: var(--audit-step-num-width);
    font-family: var(--font-display);
    font-size: clamp(1.875rem, 2.7vw, 2.25rem);
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0.04em;
    color: var(--gold);
    text-align: right;
  }
}

@media (max-width: 768px) {
  .service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt {
    overflow-x: hidden;
    padding: clamp(2.25rem, 6vw, 3rem) 0 clamp(1.25rem, 3vw, 1.5rem);
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt > .audit-intro__layout.container {
    padding-left: var(--ad-mgmt-mobile-gutter, clamp(1.75rem, 5.5vw, 2.125rem));
    padding-right: var(--ad-mgmt-mobile-gutter, clamp(1.75rem, 5.5vw, 2.125rem));
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt .audit-intro__main {
    max-width: none;
    margin-inline: 0;
    padding-left: 0;
    text-align: left;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt .audit-intro__heading-wrap {
    align-items: flex-start;
    margin-bottom: 0.85rem;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt .audit-intro__heading {
    text-align: left;
    font-size: clamp(1.25rem, 5vw, 1.65rem);
    color: #ffffff;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt .audit-intro__steps {
    list-style: none;
    margin: 1rem 0 0;
    padding: 0 0 0 var(--ad-mgmt-mobile-quote-gap, clamp(0.75rem, 3vw, 0.875rem));
    border-left: 1px solid rgba(var(--gold-rgb), 0.42);
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt .audit-intro__step {
    position: relative;
    padding: 0 0 2.5rem;
    min-width: 0;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt .audit-intro__step:last-child {
    padding-bottom: clamp(2.5rem, 6vw, 3.25rem);
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt .audit-intro__step-content {
    min-width: 0;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt .audit-intro__step-num {
    display: block;
    position: static;
    width: auto;
    margin: 0 0 0.3rem;
    font-family: var(--font-display);
    font-size: clamp(2rem, 8.1vw, 2.25rem);
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.04em;
    color: var(--gold);
    text-align: left;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt .audit-intro__step-lead {
    font-family: var(--font-display);
    font-weight: 700;
    color: var(--gold);
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt .audit-intro__step-body {
    margin: 0;
    font-family: var(--font-sans);
    font-size: clamp(0.8rem, 3.4vw, 0.9rem);
    font-weight: 400;
    line-height: 1.65;
    color: #ffffff;
    text-align: left;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards.familiar.audit-find::before {
    content: '';
    display: block;
    width: min(58%, 20rem);
    height: 1px;
    margin: 0 auto clamp(2rem, 5vw, 2.75rem);
    background: rgba(var(--gold-rgb), 0.32);
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards.familiar.audit-find {
    padding-top: clamp(1.5rem, 4vw, 2rem);
  }
}

/* Ad Management — How it works cards block */
.service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards.familiar.audit-find {
  background: transparent;
  padding: clamp(2.5rem, 5vw, 3.5rem) 0 clamp(3rem, 6vw, 4.5rem);
}

.service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards {
  position: relative;
  background: transparent;
}

.service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__inner {
  position: relative;
  z-index: 1;
}

.service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__divider {
  display: block;
  width: min(70%, 48rem);
  height: 1px;
  margin: clamp(1.5625rem, 2.5vw, 1.875rem) auto;
  background: var(--gold);
}

.service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__grid {
  list-style: none;
  margin: 0 auto;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(1.875rem, 3vw, 2.5rem);
  align-items: start;
  max-width: var(--audit-text-max);
  width: 100%;
}

.service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  text-align: center;
  background: none;
  border: none;
  border-radius: 0;
  box-shadow: none;
  padding: 0;
}

.service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__card-title {
  margin: 0 0 1rem;
  font-family: var(--font-display);
  font-size: clamp(1rem, 1.1vw, 1.125rem);
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--gold);
  text-align: center;
}

.service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__card-body {
  margin: 0;
  font-family: var(--font-sans);
  font-size: 0.7875rem;
  font-weight: 400;
  line-height: 1.75;
  color: #ffffff;
  text-align: center;
}

.service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__statement {
  margin: 0 auto;
  max-width: var(--audit-text-max);
  font-family: var(--font-sans);
  font-size: clamp(0.9375rem, 1.4vw, 1rem);
  font-weight: 400;
  line-height: 1.75;
  color: #ffffff;
  text-align: center;
}

@media (min-width: 769px) {
  .service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__layout {
    max-width: var(--audit-text-max);
    margin-inline: auto;
    padding-left: 0;
    text-align: center;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__divider {
    display: none;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__grid {
    gap: 0;
    align-items: stretch;
    margin: 0 auto;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__statement {
    margin: clamp(3.5rem, 5vw, 4.5rem) auto 0;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__card {
    align-self: stretch;
    height: 100%;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__card + .ad-mgmt-how-cards__card {
    border-left: 1px solid var(--gold);
    padding-left: clamp(1.25rem, 2vw, 1.75rem);
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__card:not(:last-child) {
    padding-right: clamp(1.25rem, 2vw, 1.75rem);
  }
}

@media (max-width: 768px) {
  .service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards.familiar.audit-find {
    padding: clamp(2rem, 5vw, 2.75rem) 0 clamp(2.25rem, 6vw, 3rem);
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__inner {
    padding-inline: var(--ad-mgmt-mobile-gutter, clamp(1.75rem, 5.5vw, 2.125rem));
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__grid {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__card + .ad-mgmt-how-cards__card::before {
    content: '';
    display: block;
    width: min(58%, 20rem);
    height: 1px;
    margin: clamp(2.1875rem, 5vw, 2.5rem) auto;
    background: rgba(var(--gold-rgb), 0.32);
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__card-title {
    font-size: clamp(0.875rem, 3.5vw, 0.9375rem);
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__card-body,
  .service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__statement {
    line-height: 1.65;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__statement {
    font-size: clamp(0.8rem, 3.4vw, 0.9rem);
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__card-body {
    font-size: 0.63rem;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__divider {
    margin: clamp(3rem, 6vw, 3.75rem) auto;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__statement {
    margin-top: 0;
  }
}

.service-page--ad-mgmt .audit-find__intro,
.service-page--ad-mgmt .team-section__intro {
  font-size: var(--audit-fs-lead);
}

.service-page--ad-mgmt .familiar__text {
  font-size: clamp(0.78rem, 1.2vw, 0.875rem);
}

.service-page--ad-mgmt .audit-find__closing .team-section__closing,
.service-page--ad-mgmt .team-section__closing {
  font-size: var(--audit-fs-body);
}

.service-page--ad-mgmt .ad-mgmt__title {
  font-size: var(--audit-fs-section-title);
}

.service-page--ad-mgmt .ad-mgmt__intro p {
  font-size: var(--audit-fs-body-lg);
}

.service-page--ad-mgmt .audit-free-call__note-text {
  font-size: var(--audit-fs-note);
}

/* Ad Management — FAQ band (matches PPC Mentoring) */
.service-page--ad-mgmt .ad-mgmt-faq-band {
  position: relative;
  background-color: var(--cream);
  background-image: url('assets/learnedBG.webp');
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
}

/* Ad Management — Pricing (matches PPC Consultancy structure; light learnedBG) */
.service-page--ad-mgmt .ad-mgmt-faq-band .audit-intro.ad-mgmt-pricing.audit-pricing {
  position: relative;
  background: transparent;
}

.service-page--ad-mgmt .ad-mgmt-faq-band .audit-intro.ad-mgmt-pricing.audit-pricing .audit-intro__heading {
  font-family: var(--font-display);
  font-size: clamp(1.43rem, 2.75vw, 1.92rem);
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: 0.01em;
  color: var(--navy);
}

.service-page--ad-mgmt .ad-mgmt-faq-band .audit-intro.ad-mgmt-pricing.audit-pricing .audit-intro__prose {
  font-family: var(--font-sans);
  font-size: clamp(0.9375rem, 1.4vw, 1rem);
  font-weight: 400;
  line-height: 1.75;
  color: var(--navy);
}

.service-page--ad-mgmt .ad-mgmt-faq-band .audit-intro.ad-mgmt-pricing.audit-pricing .audit-find__cta {
  margin: clamp(2.25rem, 4vw, 3rem) auto 0;
  color: var(--gold);
  border-color: var(--gold);
}

.service-page--ad-mgmt .ad-mgmt-faq-band .audit-intro.ad-mgmt-pricing.audit-pricing .audit-cta-note {
  margin-top: clamp(1.25rem, 2.75vw, 1.625rem);
  font-family: var(--font-display);
  font-size: clamp(0.65rem, 0.95vw, 0.75rem);
  font-weight: 400;
  line-height: 1.45;
  letter-spacing: 0.02em;
  color: var(--gold);
  text-align: center;
  opacity: 1;
}

@media (min-width: 1024px) {
  .service-page--ad-mgmt .ad-mgmt-faq-band .audit-intro.ad-mgmt-pricing.audit-pricing {
    padding-bottom: clamp(1.75rem, 2.75vw, 2.25rem);
  }
}

.service-page--ad-mgmt .ad-mgmt-faq-band .audit-faq,
.service-page--ad-mgmt .ad-mgmt-faq-band .service-page__section--white {
  background: transparent;
}

.service-page--ad-mgmt .ad-mgmt-faq-band__divider-wrap {
  padding-top: 0;
  padding-bottom: 0;
}

.service-page--ad-mgmt .ad-mgmt-faq-band__divider {
  display: block;
  width: 100%;
  max-width: var(--audit-text-max);
  height: 1px;
  margin: clamp(1.25rem, 2.5vw, 2rem) auto;
  padding: 0;
  border: 0;
  background-color: var(--gold);
}

.service-page--ad-mgmt .ad-mgmt-faq-band .audit-faq {
  padding-top: clamp(3rem, 6vw, 4.5rem);
  padding-bottom: clamp(4rem, 8vw, 6rem);
}

.service-page--ad-mgmt .ad-mgmt-faq-band .audit-faq__title,
.service-page--ad-mgmt .ad-mgmt-faq-band .audit-faq .audit-section__title {
  color: var(--navy);
  margin-bottom: 2rem;
  font-size: clamp(1.1rem, 2vw, 1.35rem);
}

.service-page--ad-mgmt .ad-mgmt-faq-band .audit-faq .service-page__faq-item {
  max-width: var(--audit-text-max);
  margin-inline: auto;
}

.service-page--ad-mgmt .ad-mgmt-faq-band .audit-faq .service-page__faq-item summary {
  color: var(--navy);
}

.service-page--ad-mgmt .ad-mgmt-faq-band .audit-faq .service-page__faq-item p {
  font-family: var(--font-sans);
  font-size: 0.8125rem;
  line-height: 1.5;
  color: var(--navy);
}

.service-page--ad-mgmt .ad-mgmt-faq-band .audit-faq .service-page__faq-item summary::after {
  font-size: 1.2rem;
  line-height: 1;
  color: var(--gold);
}

@media (min-width: 1024px) {
  .service-page--ad-mgmt .ad-mgmt-faq-band .audit-faq {
    padding-top: clamp(1.75rem, 2.75vw, 2.25rem);
  }

  .service-page--ad-mgmt .ad-mgmt-faq-band__divider {
    margin-block: clamp(1rem, 1.75vw, 1.375rem);
  }
}

@media (max-width: 768px) {
  .service-page--ad-mgmt .ad-mgmt-faq-band {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }

  .service-page--ad-mgmt .ad-mgmt-faq-band .audit-intro.ad-mgmt-pricing.audit-pricing {
    padding: clamp(2.25rem, 6vw, 3rem) 0;
    background: transparent;
  }

  .service-page--ad-mgmt .ad-mgmt-faq-band .audit-intro.ad-mgmt-pricing.audit-pricing .audit-intro__heading {
    font-size: clamp(1.25rem, 5vw, 1.65rem);
    color: var(--navy);
  }

  .service-page--ad-mgmt .ad-mgmt-faq-band .audit-intro.ad-mgmt-pricing.audit-pricing .audit-intro__prose {
    font-size: clamp(0.8rem, 3.4vw, 0.9rem);
    line-height: 1.65;
  }

  .service-page--ad-mgmt .ad-mgmt-faq-band .audit-intro.ad-mgmt-pricing.audit-pricing .audit-cta-note {
    margin-top: clamp(1.25rem, 3.5vw, 1.5rem);
    font-size: clamp(0.6rem, 2.8vw, 0.7rem);
  }

  .service-page--ad-mgmt .ad-mgmt-faq-band .audit-intro.ad-mgmt-pricing.audit-pricing .audit-find__cta {
    margin-top: clamp(1.75rem, 5vw, 2.25rem);
    font-size: 0.625rem;
    padding: 12px 22px;
    min-height: 44px;
    gap: 10px;
    touch-action: manipulation;
  }

  .service-page--ad-mgmt .ad-mgmt-faq-band .audit-intro.ad-mgmt-pricing.audit-pricing .audit-find__cta .hero__cta-arrow {
    width: 14px;
    height: 14px;
  }

  .service-page--ad-mgmt .ad-mgmt-faq-band .audit-intro.ad-mgmt-pricing.audit-pricing .audit-cta-note {
    max-width: 22rem;
    margin-inline: auto;
    padding-inline: 0.25rem;
  }

  .service-page--ad-mgmt .ad-mgmt-faq-band .audit-faq .audit-section__title,
  .service-page--ad-mgmt .ad-mgmt-faq-band .audit-faq__title {
    font-size: clamp(1rem, 3.8vw, 1.2rem);
  }

  .service-page--ad-mgmt .ad-mgmt-faq-band .audit-faq .service-page__faq-item p {
    font-size: 0.8125rem;
    line-height: 1.5;
  }

  .service-page--ad-mgmt .ad-mgmt-faq-band .audit-faq .service-page__faq-item summary::after {
    font-size: 1.15rem;
  }
}

/* Ad Management — mobile background + typography alignment (PPC Mentoring reference) */
@media (max-width: 768px) {
  .service-page--ad-mgmt .promises.audit-look--ad-mgmt-who {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band {
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat;
  }

  .service-page--ad-mgmt .ad-mgmt-faq-band {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }

  .service-page--ad-mgmt .audit-intro--ad-mgmt-together::before,
  .service-page--ad-mgmt .audit-intro--ad-mgmt-lead::before {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }
}

/* Account Audit — Free Audit Call (light learnedBG panel) */
.service-page--audit .audit-free-call {
  background-color: var(--cream);
  color: var(--navy);
}

.service-page--audit .audit-free-call::before {
  background-image: url('assets/learnedBG.webp');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  opacity: 1;
}

.service-page--audit .audit-free-call .ad-mgmt__title {
  color: var(--navy);
}

.service-page--audit .audit-free-call .ad-mgmt__intro p {
  color: var(--navy);
}

.service-page--audit .audit-free-call .ad-mgmt__intro p.audit-free-call__lead {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: clamp(1.0625rem, 1.65vw, 1.1875rem);
  color: var(--gold);
}

.service-page--audit .audit-free-call .audit-free-call__note-text {
  color: var(--navy);
  white-space: normal;
}

.service-page--audit .audit-free-call .hero__cta {
  color: var(--navy);
  border-color: var(--navy);
}

.service-page--audit .audit-free-call .hero__cta:hover {
  background-color: var(--navy);
  color: var(--cream);
  border-color: var(--navy);
}

/* "What we typically look at" — grouped layout */
.service-page--audit .audit-look--groups.promises::before {
  opacity: 0.12;
}

.service-page--audit .audit-look--groups .audit-look__ornament {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin-bottom: 20px;
}

.service-page--audit .audit-look--groups .audit-look__ornament-line {
  width: clamp(32px, 5vw, 52px);
  height: 1px;
  background: rgba(var(--navy-rgb), 0.22);
}

.service-page--audit .audit-look--groups .audit-look__ornament-diamond {
  width: 8px;
  height: 8px;
  transform: rotate(45deg);
  border: 1px solid var(--gold);
}

.service-page--audit .audit-look--groups .audit-look__intro {
  max-width: 640px;
  margin: 0 auto clamp(2.75rem, 5vw, 3.75rem);
  text-align: center;
  font-family: var(--font-serif);
  font-size: clamp(0.9rem, 1.3vw, 1rem);
  line-height: 1.75;
  color: rgba(var(--navy-rgb), 0.72);
}

.service-page--audit .audit-look--groups .audit-look__groups {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(1.5rem, 3vw, 2.25rem);
  max-width: var(--audit-text-max);
  margin: 0 auto;
  align-items: stretch;
}

.service-page--audit .audit-look--groups .audit-look__group {
  min-width: 0;
  text-align: left;
  background: rgba(255, 255, 255, 0.5);
  padding: clamp(1.875rem, 3vw, 2.5rem);
  border-top: 2px solid var(--gold);
  border-radius: 5px;
}

.service-page--audit .audit-look--groups .audit-look__group-title {
  margin: 0 0 1.125rem;
  font-family: var(--font-display);
  font-size: clamp(1rem, 1.15vw, 1.125rem);
  font-weight: 700;
  letter-spacing: 0.14em;
  line-height: 1.35;
  text-transform: uppercase;
  text-align: left;
  color: var(--gold);
}

.service-page--audit .audit-look--groups .audit-look__group-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
}

.service-page--audit .audit-look--groups .audit-look__item {
  display: grid;
  grid-template-columns: 6px 1fr;
  column-gap: 12px;
  align-items: start;
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.875rem, 1.1vw, 1rem);
  font-weight: 400;
  line-height: 1.6;
  color: var(--navy);
  text-align: left;
}

.service-page--audit .audit-look--groups .audit-look__item > span:not(.audit-look__diamond) {
  min-width: 0;
}

.service-page--audit .audit-look--groups .audit-look__diamond {
  width: 6px;
  height: 6px;
  margin-top: 0.45em;
  transform: rotate(45deg);
  background: var(--gold);
}

.service-page--audit .audit-look--groups .audit-look__goal {
  max-width: var(--audit-text-max);
  margin: clamp(2.25rem, 4.5vw, 3rem) auto 0;
  padding-top: clamp(1.75rem, 3.5vw, 2.5rem);
  border-top: 1px solid rgba(var(--navy-rgb), 0.14);
  text-align: center;
  font-family: var(--font-serif);
  font-size: clamp(0.9rem, 1.3vw, 1rem);
  line-height: 1.7;
  color: rgba(var(--navy-rgb), 0.72);
}

@media (max-width: 768px) {
  .service-page--audit .audit-look--groups .audit-look__groups {
    grid-template-columns: 1fr;
    gap: clamp(1.25rem, 5vw, 1.875rem);
  }
}

/* Account Audit — combined look + find layered panels */
.service-page--audit .audit-scope--combined {
  padding: clamp(3rem, 6vw, 5rem) clamp(1.5rem, 3vw, 2.5rem);
  overflow: hidden;
  text-align: left;
  background: url('assets/thirdPartBG.webp') center / cover no-repeat;
}

.service-page--audit .audit-scope__stage {
  width: 100%;
  max-width: var(--shell-wide);
  margin-inline: auto;
}

.service-page--audit .audit-scope__panels {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(1.5rem, 3vw, 2rem);
}

.service-page--audit .audit-scope__panel {
  width: 100%;
  max-width: 28rem;
  padding: clamp(1.75rem, 3vw, 2.5rem);
  border-radius: 7px;
  box-shadow: 0 10px 36px rgba(var(--navy-rgb), 0.14);
  background: url('assets/learnedBG.webp') center / cover no-repeat;
}

.service-page--audit .audit-scope__panel-spacer {
  display: none;
}

.service-page--audit .audit-scope__head {
  margin-bottom: clamp(1.25rem, 2vw, 1.5rem);
}

.service-page--audit .audit-scope__title {
  margin: 0 0 0.75rem;
  font-family: var(--font-display);
  font-size: clamp(0.95rem, 1.78vw, 1.275rem);
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.25;
  text-align: left;
  text-transform: uppercase;
  color: var(--gold);
}

.service-page--audit .audit-scope__intro {
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.64rem, 0.78vw, 0.72rem);
  line-height: 1.65;
  text-align: left;
  color: var(--navy);
}

.service-page--audit .audit-scope__card {
  width: 100%;
  max-width: 22.5rem;
  margin: 0 auto clamp(0.9rem, 1.5vw, 1.125rem);
  padding: clamp(1.125rem, 1.5vw, 1.375rem);
  border-top: 2px solid var(--gold);
  border-radius: 5px;
  background: rgba(255, 255, 255, 0.4);
  box-sizing: border-box;
  text-align: left;
}

.service-page--audit .audit-scope__card:last-of-type {
  margin-bottom: 0;
}

.service-page--audit .audit-scope__card-title {
  margin: 0 0 0.85rem;
  font-family: var(--font-display);
  font-size: clamp(0.68rem, 0.75vw, 0.77rem);
  font-weight: 700;
  letter-spacing: 0.14em;
  line-height: 1.35;
  text-align: left;
  text-transform: uppercase;
  color: var(--gold);
}

.service-page--audit .audit-scope__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
}

.service-page--audit .audit-scope__item {
  display: grid;
  grid-template-columns: 6px 1fr;
  column-gap: 10px;
  align-items: start;
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.64rem, 0.75vw, 0.68rem);
  font-weight: 400;
  line-height: 1.55;
  text-align: left;
  color: var(--navy);
}

.service-page--audit .audit-scope__item > span:not(.audit-scope__diamond) {
  min-width: 0;
}

.service-page--audit .audit-scope__diamond {
  width: 6px;
  height: 6px;
  margin-top: 0.45em;
  transform: rotate(45deg);
  background: var(--gold);
}

.service-page--audit .audit-scope__notes {
  width: 100%;
  max-width: 22.5rem;
  margin: clamp(1rem, 2vw, 1.25rem) auto 0;
}

.service-page--audit .audit-scope__note {
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.64rem, 0.75vw, 0.68rem);
  line-height: 1.65;
  text-align: left;
  color: var(--navy);
}

.service-page--audit .audit-scope__intro-br {
  display: none;
}

.service-page--audit .audit-scope__footer {
  margin-top: clamp(2.5rem, 5vw, 3.5rem);
  padding: 0;
  background: transparent;
}

.service-page--audit .audit-scope__footer-inner {
  max-width: var(--audit-text-max);
  margin: 0 auto;
  text-align: left;
}

.service-page--audit .audit-scope__footer-text {
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.64rem, 0.78vw, 0.72rem);
  line-height: 1.7;
  color: var(--cream);
  text-align: left;
}

@media (min-width: 769px) {
  .service-page--audit .audit-scope__panels {
    display: grid;
    grid-template-columns: repeat(2, minmax(400px, 450px));
    grid-template-rows: repeat(5, auto);
    justify-content: center;
    column-gap: clamp(1.875rem, 3vw, 2.5rem);
    row-gap: clamp(0.9rem, 1.5vw, 1.125rem);
    align-items: stretch;
  }

  .service-page--audit .audit-scope__panel {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 5;
    width: 100%;
    max-width: 450px;
    min-height: 0;
  }

  .service-page--audit .audit-scope__panel--look {
    grid-column: 1;
  }

  .service-page--audit .audit-scope__panel--find {
    grid-column: 2;
  }

  .service-page--audit .audit-scope__head {
    margin-bottom: 0;
  }

  .service-page--audit .audit-scope__panel-spacer {
    display: block;
    width: 100%;
    max-width: 22.5rem;
    margin: 0 auto;
  }

  .service-page--audit .audit-scope__card {
    height: 100%;
    min-height: 100%;
    margin-bottom: 0;
  }

  .service-page--audit .audit-scope__notes {
    margin-top: 0;
    align-self: center;
    text-align: center;
  }

  .service-page--audit .audit-scope--combined {
    text-align: center;
  }

  .service-page--audit .audit-scope__title,
  .service-page--audit .audit-scope__intro,
  .service-page--audit .audit-scope__card-title,
  .service-page--audit .audit-scope__note,
  .service-page--audit .audit-scope__footer-text {
    text-align: center;
  }

  .service-page--audit .audit-scope__card {
    background-image: url('assets/thirdPartBG.webp');
    background-position: 85% center;
    background-size: 220% auto;
    background-repeat: no-repeat;
    border-radius: 18px;
    overflow: hidden;
    text-align: center;
  }

  .service-page--audit .audit-scope__intro {
    font-size: clamp(0.75rem, 0.92vw, 0.85rem);
  }

  .service-page--audit .audit-scope__item {
    display: inline-flex;
    align-items: flex-start;
    justify-content: center;
    gap: 10px;
    max-width: 100%;
    font-size: clamp(0.75rem, 0.88vw, 0.8rem);
    color: var(--cream);
    text-align: left;
  }

  .service-page--audit .audit-scope__note {
    font-size: clamp(0.75rem, 0.88vw, 0.8rem);
  }

  .service-page--audit .audit-scope__footer-text {
    font-size: clamp(0.88rem, 1.08vw, 1rem);
  }

  .service-page--audit .audit-scope__panel--look .audit-scope__intro-br {
    display: block;
  }

  .service-page--audit .audit-scope__list {
    align-items: center;
  }

  .service-page--audit .audit-scope__footer-inner {
    text-align: center;
  }
}

/* Account Audit — combined look + find, mobile */
@media (max-width: 768px) {
  .service-page--audit .audit-scope--combined {
    --audit-scope-mobile-subtitle: clamp(0.65rem, 3.2vw, 0.72rem);
    padding: clamp(2rem, 5vw, 2.75rem) 18px;
    overflow-x: hidden;
    text-align: left;
    background-position: center center;
  }

  .service-page--audit .audit-scope__panels {
    gap: clamp(1.5625rem, 4vw, 1.875rem);
    width: 100%;
  }

  .service-page--audit .audit-scope__panel {
    width: 100%;
    max-width: none;
    padding: clamp(1.5625rem, 5vw, 1.875rem);
    background-position: center 35%;
  }

  .service-page--audit .audit-scope__head {
    margin-bottom: clamp(1.25rem, 5vw, 1.5625rem);
  }

  .service-page--audit .audit-scope__title {
    margin: 0 0 clamp(0.9375rem, 4vw, 1.25rem);
    font-size: clamp(0.875rem, 4vw, 1.1rem);
    text-align: left;
  }

  .service-page--audit .audit-scope__intro {
    margin: 0;
    font-size: var(--audit-scope-mobile-subtitle);
    text-align: left;
  }

  .service-page--audit .audit-scope__card {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0.9375rem 0 1.25rem;
    background: none;
    box-shadow: none;
    border: none;
    border-top: 1px solid var(--gold);
    border-radius: 0;
    text-align: left;
  }

  .service-page--audit .audit-scope__card + .audit-scope__card {
    border-top: none;
    margin-top: 0;
    padding-top: 0.9375rem;
  }

  .service-page--audit .audit-scope__card:has(+ .audit-scope__card) {
    border-bottom: 1px solid var(--gold);
  }

  .service-page--audit .audit-scope__panel--find .audit-scope__card:has(+ .audit-scope__notes) {
    border-bottom: 1px solid var(--gold);
  }

  .service-page--audit .audit-scope__panel--look .audit-scope__card:has(+ .audit-scope__panel-spacer) {
    padding-bottom: 0;
  }

  .service-page--audit .audit-scope__card-title {
    margin: 0 0 0.5rem;
    font-size: clamp(0.56rem, 2.85vw, 0.625rem);
    text-align: left;
  }

  .service-page--audit .audit-scope__list {
    align-items: stretch;
    gap: 0.45rem;
  }

  .service-page--audit .audit-scope__item {
    display: grid;
    grid-template-columns: 6px 1fr;
    column-gap: 10px;
    align-items: start;
    width: 100%;
    max-width: none;
    font-size: var(--audit-scope-mobile-subtitle);
    color: var(--navy);
    text-align: left;
  }

  .service-page--audit .audit-scope__notes {
    width: 100%;
    max-width: none;
    margin-top: clamp(1.5625rem, 5vw, 1.875rem);
    padding-top: 0;
    text-align: left;
  }

  .service-page--audit .audit-scope__note {
    font-size: clamp(0.8125rem, 3.5vw, 0.875rem);
    text-align: left;
    color: var(--navy);
  }

  .service-page--audit .audit-scope__footer {
    margin-top: clamp(1.75rem, 5vw, 2.25rem);
  }

  .service-page--audit .audit-scope__footer-inner {
    text-align: left;
  }

  .service-page--audit .audit-scope__footer-text {
    font-size: clamp(0.8125rem, 3.5vw, 0.875rem);
    text-align: left;
  }
}

/* "What we commonly find" — much smaller icons */
.service-page--audit .audit-find__grid .familiar__icon {
  width: 44px;
  height: 44px;
}

.service-page--audit .audit-find__grid .familiar__icon-check {
  width: 18px;
  height: 18px;
}

/* Slightly smaller section titles across the audit page */
.service-page--audit .audit-section__title,
.service-page--audit .ad-mgmt__title {
  font-size: clamp(1.375rem, 3.2vw, 2.15rem);
}

.service-page--audit .audit-intro__heading {
  font-size: clamp(1.3rem, 2.5vw, 1.75rem);
}

/* Account Audit — Overview section type scale */
.service-page--audit .audit-intro .audit-intro__eyebrow {
  font-size: 0.8125rem;
}

.service-page--audit .audit-intro .audit-intro__heading {
  font-size: clamp(1.175rem, 2.25vw, 1.575rem);
}

.service-page--audit .audit-intro .audit-intro__prose,
.service-page--audit .audit-intro .audit-intro__prose--intro,
.service-page--audit .audit-intro .audit-intro__step-body {
  font-size: clamp(0.8125rem, 1.15vw, 0.875rem);
}

.service-page--audit .audit-intro .audit-intro__step-num {
  font-size: clamp(1.75rem, 5vw, 2rem);
}

.service-page--audit .audit-intro .audit-intro__step-title {
  font-size: clamp(0.875rem, 2.5vw, 0.95rem);
}

.service-page--audit .audit-intro .audit-intro__feature-text strong {
  font-size: 0.625rem;
}

.service-page--audit .audit-intro .audit-intro__feature-text span {
  font-size: 0.8125rem;
}

@media (min-width: 769px) {
  .service-page--audit .audit-intro .audit-intro__step-num {
    font-size: clamp(1.875rem, 2.7vw, 2.25rem);
  }

  .service-page--audit .audit-intro .audit-intro__step-title {
    font-size: clamp(0.9rem, 1.05vw, 1rem);
  }
}

/* Account Audit — Overview section, mobile layout */
@media (max-width: 768px) {
  .service-page--audit .audit-intro {
    overflow-x: hidden;
  }

  .service-page--audit .audit-intro::before {
    background-position: center 15%;
    background-size: cover;
  }

  .service-page--audit .audit-intro > .audit-intro__layout.container {
    padding-left: 20px;
    padding-right: 20px;
  }

  .service-page--audit .audit-intro__main {
    max-width: none;
    margin-inline: 0;
    padding-left: 0;
    text-align: left;
  }

  .service-page--audit .audit-intro__eyebrow {
    text-align: left;
  }

  .service-page--audit .audit-intro__heading-wrap {
    align-items: flex-start;
    margin-bottom: 0.85rem;
  }

  .service-page--audit .audit-intro__heading {
    text-align: left;
  }

  .service-page--audit .audit-intro .audit-intro__prose--intro {
    margin: 0 0 1.15rem;
    max-width: none;
    text-align: left;
    font-family: var(--font-sans);
    font-size: clamp(0.875rem, 3.8vw, 1rem);
    line-height: 1.7;
    color: var(--navy);
  }

  .service-page--audit .audit-intro .audit-intro__prose-gold {
    font-family: var(--font-display);
    color: var(--gold);
    font-weight: 700;
  }

  .service-page--audit .audit-intro__steps {
    list-style: none;
    margin: 1rem 0 0;
    padding: 0 0 0 0.875rem;
    border-left: 2px solid var(--gold);
  }

  .service-page--audit .audit-intro__step {
    position: relative;
    padding: 0 0 2.5rem 0.75rem;
    min-width: 0;
  }

  .service-page--audit .audit-intro__step:last-child {
    padding-bottom: 0;
  }

  .service-page--audit .audit-intro__step-content {
    min-width: 0;
  }

  .service-page--audit .audit-intro .audit-intro__step-num {
    display: block;
    position: static;
    width: auto;
    margin: 0 0 0.3rem;
    font-family: var(--font-display);
    font-size: clamp(2rem, 8.1vw, 2.25rem);
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.04em;
    color: var(--gold);
    text-align: left;
  }

  .service-page--audit .audit-intro .audit-intro__step-title {
    margin: 0 0 0.45rem;
    font-family: var(--font-display);
    font-size: clamp(0.8rem, 3.15vw, 0.85rem);
    font-weight: 700;
    line-height: 1.35;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--gold);
    text-align: left;
  }

  .service-page--audit .audit-intro .audit-intro__step-body {
    margin: 0;
    font-family: var(--font-sans);
    font-size: clamp(0.8rem, 3.4vw, 0.9rem);
    font-weight: 400;
    line-height: 1.65;
    color: var(--navy);
    text-align: left;
  }

  .service-page--audit .audit-intro__step-body .audit-intro__highlight {
    font-weight: 600;
    color: var(--gold);
  }

  .service-page--audit .audit-intro__divider,
  .service-page--audit .audit-intro__features {
    display: none;
  }
}

.service-page--audit .audit-page-hero__title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
}

.service-page--ad-mgmt .audit-page-hero__title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
}

/* Nudge the hero text a bit right (still left-aligned) */
.service-page--audit .audit-page-hero__text {
  padding-left: clamp(1.5rem, 4vw, 4rem);
}

@media (max-width: 768px) {
  .service-page--audit .audit-page-hero__text {
    padding-left: 0;
    max-width: 100%;
  }

  .service-page--audit .audit-page-hero__title {
    font-size: clamp(1.2rem, 4.2vw, 1.8rem);
    max-width: clamp(14rem, 72%, 17.5rem);
  }

  .service-page--audit .audit-page-hero__divider {
    max-width: clamp(14rem, 72%, 17.5rem);
  }
}

@media (max-width: 768px) {
  .service-page--ad-mgmt .audit-page-hero__text {
    padding-left: 0;
    max-width: 100%;
  }

  .service-page--ad-mgmt .audit-page-hero__title {
    font-size: clamp(1.45rem, 5.5vw, 2rem);
    max-width: clamp(14rem, 72%, 17.5rem);
  }

  .service-page--ad-mgmt .audit-page-hero__divider {
    max-width: clamp(14rem, 72%, 17.5rem);
  }

  .service-page--ad-mgmt .audit-page-hero__texture {
    background-image:
      linear-gradient(to bottom,
        var(--navy) 0%,
        var(--navy) 6%,
        rgba(var(--navy-rgb), 0.95) 14%,
        rgba(var(--navy-rgb), 0.78) 22%,
        rgba(var(--navy-rgb), 0.35) 32%,
        rgba(var(--navy-rgb), 0) 42%,
        rgba(var(--navy-rgb), 0) 78%,
        rgba(var(--navy-rgb), 0.35) 85%,
        rgba(var(--navy-rgb), 0.78) 91%,
        rgba(var(--navy-rgb), 0.95) 95%,
        var(--navy) 98%,
        var(--navy) 100%),
      url('assets/ad_managementBG.webp');
    background-position: center, calc(100% + 56px) calc(50% + 8px);
    background-size: cover, auto 88%;
    background-repeat: no-repeat, no-repeat;
  }
}

@media (max-width: 768px) {
  .service-page--audit .audit-free-call {
    padding: clamp(2.5rem, 6vw, 3.25rem) 0;
  }

  .service-page--audit .audit-free-call .ad-mgmt__title {
    font-size: clamp(1.17rem, 2.72vw, 1.83rem);
  }

  .service-page--audit .audit-free-call .ad-mgmt__intro {
    margin-bottom: clamp(2rem, 5vw, 2.5rem);
  }

  .service-page--audit .audit-free-call .ad-mgmt__intro p {
    font-size: clamp(0.8125rem, 3.5vw, 0.875rem);
  }

  .service-page--audit .audit-free-call .ad-mgmt__intro p.audit-free-call__lead {
    font-size: clamp(0.9375rem, 4vw, 1.0625rem);
  }

  .service-page--audit .audit-free-call .hero__cta {
    min-height: 44px;
    padding: 12px 22px;
  }

  .service-page--audit .audit-free-call__note {
    display: none;
  }

  .service-page--audit .audit-find__grid .familiar__icon {
    width: 40px;
    height: 40px;
  }

  .service-page--audit .audit-find__grid .familiar__icon-check {
    width: 16px;
    height: 16px;
  }
}

/* Homepage hero: mobile-specific readability + tap targets */
@media (max-width: 768px) {
  main .hero__content {
    width: 100%;
    max-width: 100%;
    align-items: flex-start;
    text-align: left;
    padding: 0;
  }

  main .hero__headline {
    line-height: 1.2;
  }

  main .hero__subheadline {
    font-size: clamp(0.95rem, 2.8vw, 1.125rem);
    max-width: 40ch;
  }

  main .hero__cta {
    /* Keep it clearly tappable on touch devices */
    font-size: 0.75rem;
    padding: 16px 28px;
    min-height: 44px;
    touch-action: manipulation;
  }

  /* Trusted countries: stay in one row on mobile */
  main .hero__countries {
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: flex-start;
    gap: 12px;
  }

  main .hero__country {
    flex: 1;
    min-width: 0;
  }
}

/* Homepage: Sound familiar section mobile tweaks */
@media (max-width: 768px) {
  #familiar .familiar__heading {
    margin-bottom: 32px;
    line-height: 1.15;
    font-size: clamp(1.35rem, 6.5vw, 1.8rem);
  }

  /* Collapse 2-column grid into 1 column */
  #familiar .familiar__list {
    grid-template-columns: 1fr;
    gap: 20px 0;
    max-width: 680px;
  }

  #familiar .familiar__intro {
    margin-top: 28px;
    font-size: clamp(0.95rem, 4.2vw, 1.05rem);
    line-height: 1.75;
    max-width: 46ch;
    margin-left: auto;
    margin-right: auto;
    padding: 0 16px;
  }

  #familiar .familiar__text {
    font-size: clamp(0.95rem, 3.6vw, 1.05rem);
    line-height: 1.7;
    max-width: 34ch;
  }

  #familiar .familiar__item {
    /* Keep icon next to text on mobile */
    flex-direction: row;
    align-items: flex-start;
    gap: 14px;
    padding: 22px 0;
  }

  /* Keep icons aligned and not oversized */
  #familiar .familiar__icon {
    width: 52px;
    height: 52px;
  }

  /* If the section ever includes a button, ensure it remains tappable */
  #familiar .btn,
  #familiar button {
    min-height: 44px;
    padding: 14px 28px;
    touch-action: manipulation;
  }
}

/* Homepage: Where do you need help? section mobile tweaks */
@media (max-width: 768px) {
  #services .services__grid {
    grid-template-columns: 1fr;
    gap: 28px;
    max-width: none;
    width: 100%;
  }

  #services .service-card {
    width: 100%;
  }

  #services .service-card__image {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 10;
    object-fit: cover;
    object-position: center center;
  }

  #services .service-card__body {
    align-items: center;
    text-align: center;
    padding: 24px 20px 28px;
  }

  #services .service-card__desc {
    max-width: 36ch;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 24px;
    font-size: clamp(0.9375rem, 3.6vw, 1rem);
    line-height: 1.7;
  }

  #services .service-card__cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 14px 24px;
    white-space: normal;
    text-align: center;
    touch-action: manipulation;
  }

  #services .services__cta {
    display: flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    max-width: calc(100% - 32px);
    margin: 36px auto 0;
    padding: 16px 28px;
    min-height: 44px;
    white-space: normal;
    text-align: center;
    touch-action: manipulation;
  }
}

/* Homepage: Ad management section mobile tweaks */
@media (max-width: 768px) {
  #ad-management .ad-mgmt__title {
    /* Prevent the heading from feeling oversized on narrow screens */
    font-size: clamp(1.45rem, 5.2vw, 2.05rem);
    line-height: 1.2;
    padding: 0 16px;
    max-width: 32ch;
    margin-left: auto;
    margin-right: auto;
  }

  #ad-management .ad-mgmt__intro {
    max-width: 56ch;
    margin: 0 auto 48px;
    padding: 0 16px;
  }

  #ad-management .ad-mgmt__intro p {
    font-size: clamp(0.95rem, 3.2vw, 1.05rem);
    line-height: 1.75;
  }

  /* CTA button lives in the ad-management section */
  #ad-management .service-card__cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 16px 24px;
    touch-action: manipulation;
    white-space: normal;
    text-align: center;
  }

  /* Decorative divider line + diamond should fit without overflowing */
  #ad-management .ad-mgmt__divider {
    margin-top: 56px;
    max-width: 360px;
    width: calc(100% - 32px);
    gap: 12px;
  }

  #ad-management .ad-mgmt__divider-diamond {
    width: 6px;
    height: 6px;
  }

  /* Fix background image cover/focus on mobile */
  #ad-management::before {
    background-size: cover !important;
    background-position: center top;
    background-repeat: no-repeat;
  }
}

/* Homepage: What we've learned section mobile tweaks */
@media (max-width: 768px) {
  #team.team-section {
    /* Give the background a bit more breathing room */
    padding: 80px 0;
    min-height: auto;
  }

  #team.team-section::before {
    background-size: cover !important;
    background-position: center top;
    background-repeat: no-repeat;
    background-attachment: scroll;
  }

  #team .team-section__inner {
    max-width: 680px;
    padding: 0 16px;
  }

  #team .team-section__title {
    font-size: clamp(1.6rem, 6vw, 2.2rem);
    line-height: 1.2;
    margin-bottom: 20px;
  }

  #team .team-section__intro {
    max-width: 46ch;
    margin-left: auto;
    margin-right: auto;
    padding: 0 8px;
    font-size: clamp(0.95rem, 3.2vw, 1.05rem);
    line-height: 1.75;
  }

  #team .team-section__closing {
    max-width: 46ch;
    padding: 0 8px;
    margin-bottom: 32px;
    font-size: clamp(0.95rem, 3vw, 1.05rem);
    line-height: 1.75;
  }

  #team .service-card__cta {
    min-height: 44px;
    padding: 16px 24px;
    touch-action: manipulation;
    white-space: normal;
    text-align: center;
  }
}

/* Hero: mobile — text only, illustration hidden */
@media (max-width: 768px) {
  .hero {
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 0;
    min-height: auto;
    overflow: visible;
    padding: calc(var(--header-height) + 32px) 24px 40px;
  }

  .hero__bg {
    display: none;
  }

  .hero__content {
    order: 1;
    flex: 0 0 auto;
    width: 100%;
    max-width: 100%;
    align-items: flex-start;
    text-align: left;
    padding: 0;
    margin-bottom: 0;
  }

  .hero__bottom {
    position: relative;
    left: auto;
    right: auto;
    bottom: auto;
    order: 2;
    padding: 40px 0 0;
  }

  .hero-trust-band {
    max-width: 100%;
  }
}

/* Hero: very narrow phones */
@media (max-width: 400px) {
  .hero {
    padding-left: 20px;
    padding-right: 20px;
  }

  .hero__headline,
  main .hero__headline {
    font-size: clamp(1.05rem, 4.8vw, 1.45rem);
    overflow-wrap: break-word;
  }

  .hero__cta {
    max-width: 100%;
  }
}

/* Homepage: A Different Kind of Agency — keep 3 columns on mobile */
@media (max-width: 768px) {
  /* Slightly more breathing room for the whole section */
  #promises.promises--agency {
    padding: 108px 0 88px;
  }

  /* Keep pillars side-by-side (instead of stacking) */
  #promises.promises--agency .promises__pillars {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0 12px;
    margin: 0;
  }

  #promises.promises--agency .promises__pillar {
    min-width: 0;
    padding: 0 clamp(10px, 2.6vw, 14px);
    /* Ensure icons + content start from the top of each column */
    justify-content: flex-start;
    align-self: flex-start;
  }

  /* Scale icon down to fit narrower columns */
  #promises.promises--agency .promises__pillar-icon {
    width: clamp(64px, 22vw, 84px);
    height: clamp(64px, 22vw, 84px);
    margin-bottom: clamp(14px, 2.4vw, 18px);
  }

  #promises.promises--agency .promises__pillar-title {
    font-size: clamp(0.48rem, 1.55vw, 0.58rem);
    margin: 0 0 12px;
    max-width: 100%;
  }

  #promises.promises--agency .promises__pillar-desc {
    font-size: clamp(0.66rem, 1.75vw, 0.82rem);
    line-height: 1.68;
    max-width: 100%;
  }

  /* Preserve vertical divider lines between columns */
  #promises.promises--agency .promises__pillar + .promises__pillar {
    border-left: 1px solid rgba(var(--gold-rgb), 0.35);
    border-top: none;
    padding-top: 0;
  }

  /* If an extra pillar exists, ensure divider doesn't show on the new row start */
}

/* PPC Consultancy — mobile polish (layout unchanged on desktop) */
@media (max-width: 768px) {
  .service-page--consultancy {
    overflow-x: hidden;
  }

  .service-page--consultancy .audit-intro {
    padding: clamp(2.25rem, 6vw, 3rem) 0;
  }

  .service-page--consultancy .audit-page-hero__text {
    max-width: 62%;
    min-width: 0;
  }

  .service-page--consultancy .audit-page-hero__text .hero__subheadline,
  .service-page--consultancy .audit-page-hero__text .hero__cta {
    max-width: 100%;
  }

  .service-page--consultancy .audit-intro--mentoring-lead .mentoring-lead {
    padding-inline: 0;
  }

  .service-page--consultancy .mentoring-lead__who-block {
    margin-top: clamp(2rem, 6vw, 3rem);
  }

  .service-page--consultancy .promises.audit-look .audit-look__intro {
    margin-bottom: clamp(1.5rem, 4vw, 2rem);
  }

  .service-page--consultancy .promises.audit-look .audit-look__subtitle {
    margin-bottom: clamp(1.5rem, 4.5vw, 2rem);
  }

  .service-page--consultancy .promises.audit-look .audit-look__subtitle::before {
    margin-bottom: clamp(1.625rem, 4vw, 2.125rem);
  }

  /* Mobile backgrounds — full merged-section height, native-scale sharpness */
  .service-page--consultancy .audit-intro--mentoring-lead::before,
  .service-page--consultancy .promises.audit-look,
  .service-page--consultancy .consultancy-how-compare-band,
  .service-page--consultancy .service-after-faq-band {
    background-size: auto 100%;
    background-position: center top;
    background-repeat: no-repeat;
  }

  .service-page--consultancy .promises.audit-look {
    background-color: var(--navy);
    background-image: url('assets/thirdPartBG.webp');
  }

  .service-page--consultancy :is(
    .mentoring-lead__heading--intro,
    .promises.audit-look .audit-section__title,
    .consultancy-how-compare-band .audit-intro__heading,
    .service-after-faq-band .audit-intro__heading
  ) {
    font-size: clamp(1.25rem, 5vw, 1.65rem);
  }

  .service-page--consultancy :is(
    .mentoring-lead__heading--sub,
    .promises.audit-look .audit-look__subtitle,
    .consultancy-compare__title,
    .service-after-faq-band .audit-faq__title
  ) {
    font-size: clamp(0.95rem, 3.8vw, 1.25rem);
  }

  .service-page--consultancy :is(
    .mentoring-lead__prose,
    .promises.audit-look .audit-look__intro,
    .consultancy-compare__prose,
    .audit-intro__prose:not(.audit-cta-note),
    .audit-intro.audit-how .audit-intro__step-body
  ) {
    font-size: clamp(0.8rem, 3.4vw, 0.9rem);
    line-height: 1.65;
  }

  .service-page--consultancy .audit-faq .service-page__faq-item summary,
  .service-page--consultancy .audit-faq .service-page__faq-item p {
    font-size: 0.8125rem;
    line-height: 1.5;
  }

  .service-page--consultancy .promises.audit-look .audit-find__grid .familiar__text {
    min-width: 0;
    overflow-wrap: anywhere;
    font-size: clamp(0.75rem, 3.2vw, 0.85rem);
    line-height: 1.7;
  }

  .service-page--consultancy .consultancy-how-compare-band .audit-intro.audit-how:not(.audit-after) {
    padding-bottom: clamp(2rem, 5vw, 2.75rem);
  }

  .service-page--consultancy .consultancy-how-compare-band .audit-intro.audit-how:not(.audit-after) .audit-intro__step {
    padding-bottom: clamp(1.75rem, 5vw, 2.25rem);
  }

  .service-page--consultancy .consultancy-how-compare-band .audit-intro.audit-how:not(.audit-after) .audit-intro__step-content,
  .service-page--consultancy .consultancy-how-compare-band .audit-intro.audit-how:not(.audit-after) .audit-intro__step-body {
    min-width: 0;
    overflow-wrap: anywhere;
  }

  .service-page--consultancy .consultancy-how-compare-band .consultancy-compare {
    padding-bottom: clamp(2rem, 5vw, 2.75rem);
  }

  .service-page--consultancy .consultancy-compare__inner {
    max-width: 100%;
    min-width: 0;
  }

  .service-page--consultancy .consultancy-compare__prose {
    overflow-wrap: anywhere;
  }

  .service-page--consultancy .service-after-faq-band .audit-intro.audit-pricing {
    padding: clamp(2.25rem, 6vw, 3rem) 0;
  }

  .service-page--consultancy .service-after-faq-band .audit-intro.audit-pricing .audit-find__cta {
    margin-top: clamp(1.75rem, 5vw, 2.25rem);
    font-size: 0.625rem;
    padding: 10px 18px;
    min-height: 40px;
    gap: 8px;
    touch-action: manipulation;
  }

  .service-page--consultancy .service-after-faq-band .audit-intro.audit-pricing .audit-find__cta .hero__cta-arrow {
    width: 14px;
    height: 14px;
  }

  .service-page--consultancy .service-after-faq-band .audit-faq {
    padding: clamp(1.75rem, 5vw, 2.5rem) 0 clamp(2.5rem, 6vw, 3.25rem);
  }

  .service-page--consultancy .service-after-faq-band .audit-faq__title {
    margin-bottom: 1.5rem;
  }

  .service-page--consultancy .service-after-faq-band .service-page__faq-item {
    min-width: 0;
  }

  .service-page--consultancy .service-after-faq-band .service-page__faq-item summary,
  .service-page--consultancy .service-after-faq-band .service-page__faq-item p {
    overflow-wrap: anywhere;
  }
}

/* ==========================================================================
   PPC Mentoring page — enhancements (icons, motion, micro-interactions)
   Scoped to .service-page--training only
   ========================================================================== */

/* --- CTA hover fill --- */
.service-page--training .mentoring-cta--fill {
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.service-page--training .mentoring-cta--fill:hover {
  background-color: var(--gold);
  color: var(--navy);
  border-color: var(--gold);
}

.service-page--training .audit-intro.audit-after .mentoring-cta--fill:hover,
.service-page--training .audit-intro.audit-after .mentoring-cta--fill:focus-visible {
  background-color: var(--gold);
  color: #ffffff;
  border-color: var(--gold);
}

/* --- Hero proof points --- */
.service-page--training .mentoring-hero__proof {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.625rem 0.75rem;
  margin: clamp(1rem, 2vw, 1.25rem) 0 0;
  font-family: var(--font-sans);
  font-size: 0.625rem;
  font-weight: 500;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(var(--gold-rgb), 0.92);
}

.service-page--training .mentoring-hero__proof-sep {
  display: inline-block;
  width: 1px;
  height: 0.75rem;
  background: rgba(var(--gold-rgb), 0.45);
  flex-shrink: 0;
}

.service-page--training .audit-page-hero__text .mentoring-hero__proof + .hero__cta,
.service-page--training .audit-page-hero__text .mentoring-hero__proof + .mentoring-cta--fill {
  margin-top: clamp(1rem, 2vw, 1.375rem);
}

/* --- Hero load entrance: staggered fade-in + translateY, plays once --- */
.service-page--training .mentoring-hero__enter {
  opacity: 0;
  transform: translateY(18px);
}

.service-page--training .mentoring-hero__content.is-entered .mentoring-hero__enter {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.7s ease-out, transform 0.7s ease-out;
}

.service-page--training .mentoring-hero__content.is-entered .hero__tagline.mentoring-hero__enter { transition-delay: 0.1s; }
.service-page--training .mentoring-hero__content.is-entered .audit-page-hero__title.mentoring-hero__enter { transition-delay: 0.28s; }
.service-page--training .mentoring-hero__content.is-entered .hero__divider.mentoring-hero__enter { transition-delay: 0.28s; }
.service-page--training .mentoring-hero__content.is-entered .hero__subheadline.mentoring-hero__enter { transition-delay: 0.46s; }
.service-page--training .mentoring-hero__content.is-entered .mentoring-hero__proof.mentoring-hero__enter { transition-delay: 0.46s; }
.service-page--training .mentoring-hero__content.is-entered .hero__cta.mentoring-hero__enter { transition-delay: 0.64s; }

/* --- Scroll-triggered fade-up (all sections) --- */
.service-page--training .mentoring-reveal__item {
  opacity: 0;
  transform: translateY(22px);
  transition: opacity 0.55s ease, transform 0.55s ease;
}

.service-page--training .mentoring-animate-section.is-visible .mentoring-reveal__item {
  opacity: 1;
  transform: translateY(0);
}

.service-page--training .mentoring-animate-section.is-visible .mentoring-reveal__item:nth-child(1) { transition-delay: 0ms; }
.service-page--training .mentoring-animate-section.is-visible .mentoring-reveal__item:nth-child(2) { transition-delay: 120ms; }
.service-page--training .mentoring-animate-section.is-visible .mentoring-reveal__item:nth-child(3) { transition-delay: 240ms; }
.service-page--training .mentoring-animate-section.is-visible .mentoring-reveal__item:nth-child(4) { transition-delay: 360ms; }
.service-page--training .mentoring-animate-section.is-visible .mentoring-reveal__item:nth-child(5) { transition-delay: 480ms; }
.service-page--training .mentoring-animate-section.is-visible .mentoring-reveal__item:nth-child(6) { transition-delay: 600ms; }

.service-page--training .mentoring-look__grid .mentoring-reveal__item:nth-child(1) { transition-delay: 0ms; }
.service-page--training .mentoring-look__grid .mentoring-reveal__item:nth-child(2) { transition-delay: 120ms; }
.service-page--training .mentoring-look__grid .mentoring-reveal__item:nth-child(3) { transition-delay: 240ms; }
.service-page--training .mentoring-look__grid .mentoring-reveal__item:nth-child(4) { transition-delay: 360ms; }

.service-page--training .mentoring-animate-section.is-visible .mentoring-look__grid .mentoring-reveal__item {
  opacity: 1;
  transform: translateY(0);
}

/* --- Who is this for? (Sound familiar layout on thirdPartBG) --- */
.service-page--training .promises.audit-look.mentoring-look .container {
  max-width: min(var(--shell-reading), 94vw);
}

.service-page--training .promises.audit-look.mentoring-look .mentoring-look__board {
  position: relative;
  max-width: 44rem;
  margin: clamp(1.25rem, 3vw, 1.75rem) auto 0;
}

.service-page--training .promises.audit-look.mentoring-look .mentoring-look__grid {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: clamp(2.5rem, 5vw, 4rem);
  row-gap: clamp(2rem, 4vw, 2.75rem);
  z-index: 1;
}

.service-page--training .promises.audit-look.mentoring-look .mentoring-look__spine {
  position: absolute;
  top: 0.35rem;
  bottom: 0.35rem;
  left: 50%;
  width: 0;
  transform: translateX(-50%);
  pointer-events: none;
  z-index: 0;
}

.service-page--training .promises.audit-look.mentoring-look .mentoring-look__spine-line {
  position: absolute;
  inset: 0;
  width: 1px;
  left: 50%;
  transform: translateX(-50%);
  background: rgba(var(--gold-rgb), 0.55);
}

.service-page--training .promises.audit-look.mentoring-look .mentoring-look__spine-diamond {
  position: absolute;
  left: 50%;
  width: 6px;
  height: 6px;
  background: var(--gold);
  transform: translateX(-50%) rotate(45deg);
}

.service-page--training .promises.audit-look.mentoring-look .mentoring-look__spine-diamond--top {
  top: 0;
}

.service-page--training .promises.audit-look.mentoring-look .mentoring-look__spine-diamond--mid {
  top: 50%;
  margin-top: -3px;
}

.service-page--training .promises.audit-look.mentoring-look .mentoring-look__spine-diamond--bot {
  bottom: 0;
}

.service-page--training .promises.audit-look.mentoring-look .mentoring-look__item {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  margin: 0;
  min-width: 0;
}

.service-page--training .promises.audit-look.mentoring-look .mentoring-look__item:nth-child(odd) {
  text-align: right;
  align-items: flex-end;
  padding-right: clamp(0.5rem, 1.5vw, 1rem);
}

.service-page--training .promises.audit-look.mentoring-look .mentoring-look__item:nth-child(even) {
  text-align: left;
  align-items: flex-start;
  padding-left: clamp(0.5rem, 1.5vw, 1rem);
}

.service-page--training .promises.audit-look.mentoring-look .mentoring-look__num {
  display: block;
  font-family: var(--font-display);
  font-size: clamp(1.75rem, 3.2vw, 2.35rem);
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.04em;
  color: var(--gold);
  margin-bottom: 0.15rem;
}

.service-page--training .promises.audit-look.mentoring-look .mentoring-look__text {
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.75rem, 1.05vw, 0.8125rem);
  font-weight: 400;
  line-height: 1.65;
  color: #ffffff;
  max-width: 28ch;
}

.service-page--training .promises.audit-look.mentoring-look .mentoring-look__lead {
  display: block;
  font-family: var(--font-display);
  font-weight: 400;
  font-size: clamp(0.8125rem, 1.2vw, 0.875rem); /* one step above body */
  color: var(--gold);
  margin-bottom: 0.35rem;
}

.service-page--training .promises.audit-look.mentoring-look .mentoring-look__item--featured .mentoring-look__text {
  font-weight: 500;
}

.service-page--training .promises.audit-look.mentoring-look .mentoring-look__item--featured .mentoring-look__lead {
  font-weight: 400;
}

@media (max-width: 768px) {
  .service-page--training .promises.audit-look.mentoring-look .container {
    max-width: 100%;
  }

  .service-page--training .promises.audit-look.mentoring-look .mentoring-look__board {
    max-width: 100%;
    margin-top: clamp(1rem, 4vw, 1.25rem);
  }

  .service-page--training .promises.audit-look.mentoring-look .mentoring-look__grid {
    grid-template-columns: 1fr;
    row-gap: clamp(2rem, 6vw, 2.5rem);
    column-gap: 0;
    max-width: 100%;
  }

  .service-page--training .promises.audit-look.mentoring-look .mentoring-look__spine {
    display: none;
  }

  .service-page--training .promises.audit-look.mentoring-look .mentoring-look__item {
    gap: 0.4rem;
    width: 100%;
  }

  .service-page--training .promises.audit-look.mentoring-look .mentoring-look__item:nth-child(odd),
  .service-page--training .promises.audit-look.mentoring-look .mentoring-look__item:nth-child(even) {
    text-align: center;
    align-items: center;
    padding-left: 0;
    padding-right: 0;
  }

  .service-page--training .promises.audit-look.mentoring-look .mentoring-look__num {
    font-size: clamp(1.5rem, 6.5vw, 1.875rem);
    margin-bottom: 0.2rem;
  }

  .service-page--training .promises.audit-look.mentoring-look .mentoring-look__text {
    font-size: clamp(0.75rem, 3.3vw, 0.8125rem);
    line-height: 1.7;
    max-width: min(100%, 22rem);
    padding-inline: 0.5rem;
  }

  .service-page--training .promises.audit-look.mentoring-look .mentoring-look__lead {
    font-size: clamp(0.8125rem, 3.5vw, 0.875rem); /* one step above body */
  }

  .service-page--training .promises.audit-look.mentoring-look .mentoring-look__item--featured .mentoring-look__text {
    font-weight: 500;
  }
}

.service-page--training .mentoring-session__cards .mentoring-reveal__item:nth-child(1) { transition-delay: 0ms; }
.service-page--training .mentoring-session__cards .mentoring-reveal__item:nth-child(2) { transition-delay: 130ms; }
.service-page--training .mentoring-session__cards .mentoring-reveal__item:nth-child(3) { transition-delay: 260ms; }

.service-page--training .mentoring-animate-section.is-visible .mentoring-session__cards .mentoring-reveal__item {
  opacity: 1;
  transform: translateY(0);
}

/* --- Lead section divider draw-in --- */
.service-page--training .mentoring-lead__divider-line {
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.6s ease, opacity 0.6s ease;
}

.service-page--training .mentoring-lead__divider-diamond {
  opacity: 0;
  transform: rotate(45deg) scale(0.6);
  transition: opacity 0.45s ease 0.15s, transform 0.45s ease 0.15s;
}

.service-page--training .mentoring-animate-section.is-visible .mentoring-lead__divider-line {
  transform: scaleX(1);
}

.service-page--training .mentoring-animate-section.is-visible .mentoring-lead__divider-diamond {
  opacity: 1;
  transform: rotate(45deg) scale(1);
}

.service-page--training .mentoring-animate-section.is-visible .mentoring-reveal__divider:nth-of-type(2) .mentoring-lead__divider-line {
  transition-delay: 0.18s;
}

.service-page--training .mentoring-animate-section.is-visible .mentoring-reveal__divider:nth-of-type(2) .mentoring-lead__divider-diamond {
  transition-delay: 0.33s;
}

.service-page--training .mentoring-animate-section.is-visible .mentoring-lead__prose:not(.mentoring-lead__prose--note) {
  transition-delay: 140ms;
}

.service-page--training .mentoring-animate-section.is-visible .mentoring-lead__prose--note {
  transition-delay: 380ms;
}

.service-page--training .mentoring-how__timeline .mentoring-reveal__item:nth-child(1) {
  transition-delay: 120ms;
}

.service-page--training .mentoring-how__timeline .mentoring-reveal__item:nth-child(2) {
  transition-delay: 260ms;
}

.service-page--training .mentoring-animate-section.is-visible .mentoring-how__timeline .mentoring-reveal__item {
  opacity: 1;
  transform: translateY(0);
}

/* --- How it works: step numbers + scroll timeline --- */
.service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__step-num {
  font-weight: 700;
  color: var(--gold);
  opacity: 1;
  text-shadow: 0 0 1px rgba(var(--gold-rgb), 0.35);
}

.service-page--training .mentoring-how__timeline {
  --mentoring-timeline-progress: 0;
  position: relative;
  border-left-color: rgba(var(--gold-rgb), 0.22) !important;
}

.service-page--training .mentoring-how__timeline::before {
  content: '';
  position: absolute;
  left: -2px;
  top: 0;
  width: 2px;
  height: calc(var(--mentoring-timeline-progress) * 100%);
  background: var(--gold);
  pointer-events: none;
  z-index: 1;
}

/* --- How a session works: column icons + desktop hover --- */
.service-page--training .mentoring-session__card-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  margin: 0 auto 0.75rem;
  color: var(--gold);
  transition: transform 0.2s ease, color 0.2s ease;
}

.service-page--training .mentoring-session__card-icon svg {
  display: block;
  width: 100%;
  height: 100%;
}

.service-page--training .mentoring-session__card-icon img {
  height: 48px;
  width: auto;
  max-width: none;
}

.service-page--training .mentoring-session__card-title {
  transition: color 0.2s ease;
}

@media (min-width: 769px) {
  .service-page--training .mentoring-session__card-icon {
    width: 64px;
    height: 64px;
  }

  .service-page--training .mentoring-session__card-icon img {
    height: 64px;
    width: auto;
    max-width: none;
  }

  .service-page--training .mentoring-session__card:hover .mentoring-session__card-icon {
    transform: scale(1.08);
  }

  .service-page--training .mentoring-session__card:hover .mentoring-session__card-title {
    color: #d4b04a;
  }
}

/* --- Pricing box border hover --- */
.service-page--training .mentoring-pricing__layout {
  transition: border-color 0.25s ease;
  border-color: rgba(var(--gold-rgb), 0.72);
}

.service-page--training .mentoring-pricing__layout:hover {
  border-color: var(--gold);
}

/* --- FAQ: accordion motion + hover + plus rotate --- */
.service-page--training .mentoring-faq .service-page__faq-item {
  border-radius: 3px;
  transition: background-color 0.2s ease;
}

.service-page--training .mentoring-faq .service-page__faq-item summary {
  padding: 0.35rem 0.5rem;
  margin: -0.35rem -0.5rem;
  border-radius: 3px;
  transition: background-color 0.2s ease;
}

.service-page--training .mentoring-faq .service-page__faq-item summary:hover {
  background-color: rgba(var(--gold-rgb), 0.07);
}

.service-page--training .mentoring-faq .service-page__faq-item summary::after {
  display: inline-block;
  transition: transform 0.25s ease;
}

.service-page--training .mentoring-faq .service-page__faq-item[open] summary::after {
  content: '+';
  transform: rotate(45deg);
}

.service-page--training .mentoring-faq .service-page__faq-item p {
  overflow: hidden;
  max-height: 0;
  opacity: 0;
  margin-top: 0;
  transition: max-height 0.35s ease, opacity 0.3s ease, margin-top 0.35s ease;
}

.service-page--training .mentoring-faq .service-page__faq-item[open] p {
  max-height: 16rem;
  opacity: 1;
  margin-top: 0.75rem;
}

/* --- Reduced motion --- */
@media (prefers-reduced-motion: reduce) {
  .service-page--training .mentoring-hero__enter,
  .service-page--training .mentoring-reveal__item {
    opacity: 1;
    transform: none;
    transition: none;
  }

  .service-page--training .mentoring-lead__divider-line,
  .service-page--training .mentoring-lead__divider-diamond {
    opacity: 1;
    transform: none;
    transition: none;
  }

  .service-page--training .mentoring-how__timeline::before {
    height: 100%;
  }

  .service-page--training .mentoring-faq .service-page__faq-item p {
    max-height: none;
    opacity: 1;
    transition: none;
  }

  .service-page--training .mentoring-faq .service-page__faq-item summary::after {
    transition: none;
  }
}

/* --- PPC Mentoring FAQ heading size override --- */
@media (max-width: 768px) {
  .service-page--training .mentoring-faq .audit-faq__title,
  .service-page--training .mentoring-faq .audit-section__title {
    font-size: 16px;
  }
}

/* --- PPC Mentoring refinements (follow-up) --- */

@media (min-width: 769px) {
  /* Unify section titles to match "Who is this for?" */
  .service-page--training .mentoring-lead__heading,
  .service-page--training .promises.audit-look .audit-section__title,
  .service-page--training .audit-intro.audit-how:not(.audit-after) .audit-intro__heading,
  .service-page--training .mentoring-session__heading,
  .service-page--training .mentoring-session .audit-intro__heading,
  .service-page--training .mentoring-pricing__heading,
  .service-page--training .mentoring-pricing .audit-intro__heading,
  .service-page--training .audit-intro.audit-after .audit-intro__heading,
  .service-page--training .audit-faq .audit-section__title,
  .service-page--training .audit-faq__title {
    font-size: clamp(1.43rem, 2.75vw, 1.92rem);
  }
}

@media (max-width: 768px) {
  .service-page--training .container {
    padding: 0 24px;
  }

  .service-page--training .mentoring-hero__proof {
    font-size: 0.4375rem;
    letter-spacing: 0.1em;
    gap: 0.3rem 0.4375rem;
    margin: 0.5rem 0 0;
    line-height: 1.25;
    max-width: 100%;
  }

  .service-page--training .mentoring-hero__proof-sep {
    height: 0.4375rem;
  }

  .service-page--training .audit-page-hero__text .mentoring-hero__proof + .hero__cta,
  .service-page--training .audit-page-hero__text .mentoring-hero__proof + .mentoring-cta--fill {
    margin-top: 0.75rem;
  }

  .service-page--training .audit-page-hero__text .hero__subheadline + .mentoring-hero__proof {
    margin-top: 0.625rem;
  }
}

/* ==========================================================================
   PPC Consultancy page — enhancements (icons, motion, micro-interactions)
   Scoped to .service-page--consultancy only
   ========================================================================== */

/* --- CTA hover fill --- */
.service-page--consultancy .consultancy-cta--fill {
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.service-page--consultancy .consultancy-cta--fill:hover,
.service-page--consultancy .consultancy-cta--fill:focus-visible {
  background-color: var(--gold);
  color: var(--navy);
  border-color: var(--gold);
}

/* Bottom-of-section CTA for the "When is consultancy the right choice?" block:
   visually identical to the hero CTA, but white text on the gold-fill hover.
   Match the hero CTA's effective font-size (its .audit-page-hero__text override
   raises it above main .hero__cta) so the two buttons render at the same size. */
.service-page--consultancy .consultancy-who__cta {
  margin-top: clamp(1.75rem, 3.5vw, 2.5rem);
  font-size: 0.75rem;
}

.service-page--consultancy .consultancy-cta--fill.consultancy-who__cta:hover,
.service-page--consultancy .consultancy-cta--fill.consultancy-who__cta:focus-visible {
  color: #fff;
}

@media (max-width: 768px) {
  .service-page--consultancy .consultancy-who__cta {
    font-size: 0.625rem;
    padding: 12px 22px;
  }
}

/* --- Hero proof points --- */
.service-page--consultancy .consultancy-hero__proof {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.625rem 0.75rem;
  margin: clamp(1rem, 2vw, 1.25rem) 0 0;
  font-family: var(--font-sans);
  font-size: 0.625rem;
  font-weight: 500;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(var(--gold-rgb), 0.92);
}

.service-page--consultancy .consultancy-hero__proof-sep {
  display: inline-block;
  width: 1px;
  height: 0.75rem;
  background: rgba(var(--gold-rgb), 0.45);
  flex-shrink: 0;
}

.service-page--consultancy .audit-page-hero__text .consultancy-hero__proof + .hero__cta,
.service-page--consultancy .audit-page-hero__text .consultancy-hero__proof + .consultancy-cta--fill {
  margin-top: clamp(1rem, 2vw, 1.375rem);
}

/* --- Hero load entrance: staggered fade-in + translateY, plays once --- */
.service-page--consultancy .consultancy-hero__enter {
  opacity: 0;
  transform: translateY(18px);
}

.service-page--consultancy .consultancy-hero__content.is-entered .consultancy-hero__enter {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.7s ease-out, transform 0.7s ease-out;
}

.service-page--consultancy .consultancy-hero__content.is-entered .hero__tagline.consultancy-hero__enter { transition-delay: 0.1s; }
.service-page--consultancy .consultancy-hero__content.is-entered .audit-page-hero__title.consultancy-hero__enter { transition-delay: 0.28s; }
.service-page--consultancy .consultancy-hero__content.is-entered .hero__divider.consultancy-hero__enter { transition-delay: 0.28s; }
.service-page--consultancy .consultancy-hero__content.is-entered .hero__subheadline.consultancy-hero__enter { transition-delay: 0.46s; }
.service-page--consultancy .consultancy-hero__content.is-entered .consultancy-hero__proof.consultancy-hero__enter { transition-delay: 0.46s; }
.service-page--consultancy .consultancy-hero__content.is-entered .hero__cta.consultancy-hero__enter { transition-delay: 0.64s; }

/* --- Scroll-triggered fade-up --- */
.service-page--consultancy .consultancy-reveal__item {
  opacity: 0;
  transform: translateY(22px);
  transition: opacity 0.55s ease, transform 0.55s ease;
}

.service-page--consultancy .consultancy-animate-section.is-visible .consultancy-reveal__item {
  opacity: 1;
  transform: translateY(0);
}

.service-page--consultancy .consultancy-animate-section.is-visible .consultancy-reveal__item:nth-child(1) { transition-delay: 0ms; }
.service-page--consultancy .consultancy-animate-section.is-visible .consultancy-reveal__item:nth-child(2) { transition-delay: 120ms; }
.service-page--consultancy .consultancy-animate-section.is-visible .consultancy-reveal__item:nth-child(3) { transition-delay: 240ms; }
.service-page--consultancy .consultancy-animate-section.is-visible .consultancy-reveal__item:nth-child(4) { transition-delay: 360ms; }
.service-page--consultancy .consultancy-animate-section.is-visible .consultancy-reveal__item:nth-child(5) { transition-delay: 480ms; }
.service-page--consultancy .consultancy-animate-section.is-visible .consultancy-reveal__item:nth-child(6) { transition-delay: 600ms; }

.service-page--consultancy .consultancy-look__grid .consultancy-reveal__item:nth-child(1) { transition-delay: 0ms; }
.service-page--consultancy .consultancy-look__grid .consultancy-reveal__item:nth-child(2) { transition-delay: 120ms; }
.service-page--consultancy .consultancy-look__grid .consultancy-reveal__item:nth-child(3) { transition-delay: 240ms; }
.service-page--consultancy .consultancy-look__grid .consultancy-reveal__item:nth-child(4) { transition-delay: 360ms; }
.service-page--consultancy .consultancy-look__grid .consultancy-reveal__item:nth-child(5) { transition-delay: 480ms; }
.service-page--consultancy .consultancy-look__grid .consultancy-reveal__item:nth-child(6) { transition-delay: 600ms; }

.service-page--consultancy .consultancy-animate-section.is-visible .consultancy-look__grid .consultancy-reveal__item {
  opacity: 1;
  transform: translateY(0);
}

.service-page--consultancy .consultancy-compare__grid .consultancy-reveal__item:nth-child(1) { transition-delay: 0ms; }
.service-page--consultancy .consultancy-compare__grid .consultancy-reveal__item:nth-child(2) { transition-delay: 140ms; }

.service-page--consultancy .consultancy-animate-section.is-visible .consultancy-compare__grid .consultancy-reveal__item {
  opacity: 1;
  transform: translateY(0);
}

/* --- Lead section divider draw-in --- */
.service-page--consultancy .audit-intro--mentoring-lead.consultancy-animate-section.is-visible .mentoring-lead__title-rule,
.service-page--consultancy .audit-intro--mentoring-lead.consultancy-animate-section.is-visible .consultancy-lead__vline {
  transform: none;
}

/* --- How it works: step numbers + scroll timeline --- */
.service-page--consultancy .audit-intro.audit-how:not(.audit-after) .audit-intro__step-num {
  font-weight: 700;
  color: var(--gold);
  opacity: 1;
  text-shadow: 0 0 1px rgba(var(--gold-rgb), 0.35);
}

.service-page--consultancy .consultancy-how__timeline {
  --consultancy-timeline-progress: 0;
  position: relative;
  border-left-color: rgba(var(--gold-rgb), 0.22) !important;
}

.service-page--consultancy .consultancy-how__timeline::before {
  content: '';
  position: absolute;
  left: -2px;
  top: 0;
  width: 2px;
  height: calc(var(--consultancy-timeline-progress) * 100%);
  background: var(--gold);
  pointer-events: none;
  z-index: 1;
}

.service-page--consultancy .consultancy-how__timeline .consultancy-reveal__item:nth-child(1) { transition-delay: 120ms; }
.service-page--consultancy .consultancy-how__timeline .consultancy-reveal__item:nth-child(2) { transition-delay: 240ms; }
.service-page--consultancy .consultancy-how__timeline .consultancy-reveal__item:nth-child(3) { transition-delay: 360ms; }
.service-page--consultancy .consultancy-how__timeline .consultancy-reveal__item:nth-child(4) { transition-delay: 480ms; }

.service-page--consultancy .consultancy-animate-section.is-visible .consultancy-how__timeline .consultancy-reveal__item {
  opacity: 1;
  transform: translateY(0);
}

/* --- Consultancy vs Mentoring: two-column cards --- */
.service-page--consultancy .consultancy-compare__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: stretch;
  gap: clamp(1rem, 2.5vw, 1.5rem);
  margin-top: clamp(1.75rem, 3.5vw, 2.5rem);
  text-align: center;
}

.service-page--consultancy .consultancy-compare__card {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: clamp(1.5rem, 3vw, 2rem);
  border: 1px solid rgba(var(--gold-rgb), 0.72);
  border-radius: 5px;
  background: rgba(var(--cream-rgb), 0.45);
}

.service-page--consultancy .consultancy-compare__card-head {
  width: 100%;
}

.service-page--consultancy .consultancy-compare__card-body {
  width: 100%;
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.8125rem, 1.1vw, 0.875rem);
  font-weight: 400;
  line-height: 1.65;
  color: var(--navy);
  text-align: center;
}

.service-page--consultancy .consultancy-compare__card-body strong {
  display: block;
  width: 100%;
  margin: 0 0 clamp(0.625rem, 1.5vw, 0.875rem);
  font-family: var(--font-display);
  font-size: clamp(1.125rem, 2vw, 1.35rem);
  font-weight: 700;
  color: var(--gold);
  text-align: center;
}

.service-page--consultancy .consultancy-compare__link {
  display: inline-block;
  margin-top: clamp(1rem, 2vw, 1.25rem);
  font-family: var(--font-sans);
  font-size: clamp(0.75rem, 1.1vw, 0.8125rem);
  font-weight: 500;
  letter-spacing: 0.04em;
  color: var(--gold);
  text-decoration: none;
  transition: color 0.2s ease, opacity 0.2s ease;
}

.service-page--consultancy .consultancy-compare__link:hover,
.service-page--consultancy .consultancy-compare__link:focus-visible {
  color: #d4b04a;
  opacity: 0.92;
}

.service-page--consultancy .consultancy-compare__badge,
.service-page--consultancy .consultancy-compare__badge-spacer {
  display: block;
  width: 100%;
  margin: 0 0 clamp(0.625rem, 1.5vw, 0.875rem);
  font-family: var(--font-sans);
  font-size: 0.625rem;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  text-align: center;
}

.service-page--consultancy .consultancy-compare__badge {
  color: var(--gold);
  opacity: 0.88;
}

.service-page--consultancy .consultancy-compare__badge-spacer {
  visibility: hidden;
  pointer-events: none;
  user-select: none;
  min-height: calc(0.625rem * 1.2);
}

.service-page--consultancy .consultancy-compare__footer {
  margin: clamp(1.75rem, 3.5vw, 2.25rem) 0 0;
  font-family: var(--font-sans);
  font-size: clamp(0.9375rem, 1.4vw, 1rem);
  font-weight: 400;
  line-height: 1.75;
  color: var(--navy);
  text-align: center;
}

@media (max-width: 768px) {
  .service-page--consultancy .consultancy-compare__carousel-wrap {
    margin-top: clamp(1.75rem, 3.5vw, 2.5rem);
    overflow: hidden;
    max-width: 100%;
  }

  .service-page--consultancy .consultancy-compare__grid.consultancy-compare__carousel {
    display: flex;
    grid-template-columns: none;
    align-items: stretch;
    gap: 0.75rem;
    margin-top: 0;
    padding: 0 clamp(0.75rem, 3vw, 1rem);
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    overscroll-behavior-x: contain;
  }

  .service-page--consultancy .consultancy-compare__carousel::-webkit-scrollbar {
    display: none;
  }

  .service-page--consultancy .consultancy-compare__carousel .consultancy-compare__card {
    flex: 0 0 84%;
    max-width: 84%;
    scroll-snap-align: center;
    min-width: 0;
  }

  .service-page--consultancy .consultancy-compare__dots {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.5rem;
    margin-top: clamp(1rem, 2.5vw, 1.25rem);
  }

  .service-page--consultancy .consultancy-compare__dot {
    width: 7px;
    height: 7px;
    padding: 0;
    border: none;
    border-radius: 50%;
    background: rgba(var(--gold-rgb), 0.32);
    cursor: pointer;
    transition: background-color 0.2s ease, transform 0.2s ease;
  }

  .service-page--consultancy .consultancy-compare__dot.is-active {
    background: var(--gold);
    transform: scale(1.08);
  }
}

@media (min-width: 769px) {
  .service-page--consultancy .consultancy-compare__carousel-wrap {
    margin-top: 0;
  }

  .service-page--consultancy .consultancy-compare__dots {
    display: none;
  }
}

/* --- Pricing bordered box --- */
.service-page--consultancy .consultancy-pricing__inner {
  max-width: var(--shell-reading);
  margin-inline: auto;
}

.service-page--consultancy .consultancy-pricing__layout {
  max-width: none;
  width: 100%;
  margin-inline: 0;
  padding: clamp(2.5rem, 4vw, 3.125rem);
  text-align: center;
  border: 1px solid rgba(var(--gold-rgb), 0.72);
  border-radius: 5px;
  background: transparent;
  transition: border-color 0.25s ease;
}

.service-page--consultancy .consultancy-pricing__layout:hover {
  border-color: var(--gold);
}

.service-page--consultancy .consultancy-pricing__heading-wrap {
  align-items: center;
  margin-bottom: clamp(1.25rem, 2.5vw, 1.75rem);
}

.service-page--consultancy .consultancy-pricing .audit-intro__rule--heading {
  background: var(--gold);
}

.service-page--consultancy .consultancy-pricing__heading {
  font-weight: 700;
  font-size: clamp(1.43rem, 2.75vw, 1.92rem);
  color: var(--gold);
  text-align: center;
}

.service-page--consultancy .consultancy-pricing__prose {
  color: #ffffff;
}

.service-page--consultancy .consultancy-pricing__prose--secondary {
  font-size: clamp(0.75rem, 1.12vw, 0.8rem); /* ~20% smaller than pricing prose */
}

/* The secondary pricing paragraph otherwise inherits the shared consultancy body
   prose size via a higher-specificity :is() rule, so target it specifically enough
   to win and render it 30% smaller than that current body-prose size (both langs). */
.service-page--consultancy .consultancy-pricing .audit-intro__prose.consultancy-pricing__prose.consultancy-pricing__prose--secondary {
  font-size: clamp(0.65625rem, 0.98vw, 0.7rem); /* 70% of clamp(0.9375rem, 1.4vw, 1rem) */
}

@media (max-width: 768px) {
  .service-page--consultancy .consultancy-pricing .audit-intro__prose.consultancy-pricing__prose.consultancy-pricing__prose--secondary {
    font-size: clamp(0.56rem, 2.38vw, 0.63rem); /* 70% of clamp(0.8rem, 3.4vw, 0.9rem) */
  }
}

.service-page--consultancy .consultancy-pricing__cta {
  margin: clamp(2.25rem, 4vw, 3rem) auto 0;
  color: var(--gold);
  border-color: var(--gold);
}

.service-page--consultancy .service-after-faq-band .audit-intro.audit-pricing .consultancy-pricing__cta.consultancy-cta--fill:hover,
.service-page--consultancy .service-after-faq-band .audit-intro.audit-pricing .consultancy-pricing__cta.consultancy-cta--fill:focus-visible {
  background-color: var(--gold);
  color: var(--navy);
  border-color: var(--gold);
}

/* --- FAQ: accordion motion + hover + plus rotate --- */
.service-page--consultancy .consultancy-faq .service-page__faq-item {
  border-radius: 3px;
  transition: background-color 0.2s ease;
}

.service-page--consultancy .consultancy-faq .service-page__faq-item summary {
  padding: 0.35rem 0.5rem;
  margin: -0.35rem -0.5rem;
  border-radius: 3px;
  transition: background-color 0.2s ease;
}

.service-page--consultancy .consultancy-faq .service-page__faq-item summary:hover {
  background-color: rgba(var(--gold-rgb), 0.07);
}

.service-page--consultancy .consultancy-faq .service-page__faq-item summary::after {
  display: inline-block;
  transition: transform 0.25s ease;
}

.service-page--consultancy .consultancy-faq .service-page__faq-item[open] summary::after {
  content: '+';
  transform: rotate(45deg);
}

.service-page--consultancy .consultancy-faq .service-page__faq-item p {
  overflow: hidden;
  max-height: 0;
  opacity: 0;
  margin-top: 0;
  transition: max-height 0.35s ease, opacity 0.3s ease, margin-top 0.35s ease;
}

.service-page--consultancy .consultancy-faq .service-page__faq-item[open] p {
  max-height: 48rem;
  opacity: 1;
  margin-top: 0.75rem;
}

/* --- Reduced motion --- */
@media (prefers-reduced-motion: reduce) {
  .service-page--consultancy .consultancy-hero__enter,
  .service-page--consultancy .consultancy-reveal__item {
    opacity: 1;
    transform: none;
    transition: none;
  }

  .service-page--consultancy .audit-intro--mentoring-lead .mentoring-lead__title-rule,
  .service-page--consultancy .audit-intro--mentoring-lead .consultancy-lead__vline {
    transform: none;
    transition: none;
  }

  .service-page--consultancy .consultancy-how__timeline::before {
    height: 100%;
  }

  .service-page--consultancy .consultancy-faq .service-page__faq-item p {
    max-height: none;
    opacity: 1;
    transition: none;
  }

  .service-page--consultancy .consultancy-faq .service-page__faq-item summary::after {
    transition: none;
  }
}

/* --- PPC Consultancy refinements (follow-up) --- */

@media (max-width: 768px) {
  /* Mobile hero: full-bleed background, laptop on right, text safe zone left */
  .service-page--consultancy .audit-page-hero {
    align-items: stretch;
    min-height: clamp(20.8125rem, calc(58vh - 19px), 25.3125rem);
    padding: clamp(1.75rem, 5.5vw, 2.25rem) 0 clamp(1.5rem, 4vw, 2rem);
    overflow: hidden;
  }

  .service-page--consultancy .audit-page-hero__layout {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    align-self: stretch;
    flex: 1 1 auto;
    gap: 0;
    width: 100%;
  }

  .service-page--consultancy .audit-page-hero > .audit-page-hero__texture {
    background-color: var(--navy);
    background-image:
      linear-gradient(to bottom,
        var(--navy) 0%,
        var(--navy) 5%,
        rgba(var(--navy-rgb), 0.92) 10%,
        rgba(var(--navy-rgb), 0.55) 18%,
        rgba(var(--navy-rgb), 0) 30%),
      linear-gradient(to right,
        var(--navy) 0%,
        var(--navy) 12%,
        rgba(var(--navy-rgb), 0.72) 30%,
        rgba(var(--navy-rgb), 0.25) 48%,
        rgba(var(--navy-rgb), 0) 58%),
      url('assets/consultancy_mobilBG.png');
    background-size: cover, cover, cover;
    background-position: center, center, calc(96% + 137px) center;
    background-repeat: no-repeat, no-repeat, no-repeat;
  }

  .service-page--consultancy .audit-page-hero__text {
    position: relative;
    z-index: 2;
    max-width: min(16rem, 58vw);
    width: 100%;
    min-width: 0;
    padding-left: clamp(0.125rem, 1.5vw, 0.375rem);
    padding-right: 0.25rem;
    text-align: left;
  }

  .service-page--consultancy .audit-page-hero__text .hero__subheadline {
    max-width: 100%;
  }

  .service-page--consultancy .audit-page-hero__text .hero__cta,
  .service-page--consultancy .audit-page-hero__text .consultancy-cta--fill {
    max-width: 100%;
  }

  /* Proof points: single horizontal row with separators */
  .service-page--consultancy .consultancy-hero__proof {
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: flex-start;
    gap: 0.3125rem 0.4375rem;
    margin: 0.625rem 0 0;
    font-size: clamp(0.3125rem, 2.65vw, 0.375rem);
    letter-spacing: 0.05em;
    line-height: 1.2;
    max-width: 100%;
  }

  .service-page--consultancy .consultancy-hero__proof-sep {
    display: inline-block;
    width: 1px;
    height: 0.4375rem;
    background: rgba(var(--gold-rgb), 0.45);
    flex-shrink: 0;
  }

  .service-page--consultancy .audit-page-hero__text .consultancy-hero__proof + .hero__cta,
  .service-page--consultancy .audit-page-hero__text .consultancy-hero__proof + .consultancy-cta--fill {
    margin-top: 0.875rem;
  }

  .service-page--consultancy .audit-page-hero__text .hero__subheadline + .consultancy-hero__proof {
    margin-top: 0.625rem;
  }
}

@media (max-width: 360px) {
  .service-page--consultancy .consultancy-hero__proof {
    flex-wrap: wrap;
    row-gap: 0.25rem;
    column-gap: 0.375rem;
    max-width: 100%;
  }
}

/* ==========================================================================
   Account Audit page — enhancements (motion, icons, accordions, CTAs)
   Scoped to .service-page--audit only
   ========================================================================== */

/* --- CTA hover fill --- */
.service-page--audit .audit-cta--fill {
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.service-page--audit .audit-cta--fill:hover,
.service-page--audit .audit-cta--fill:focus-visible {
  background-color: var(--gold);
  color: var(--navy);
  border-color: var(--gold);
}

.service-page--audit .audit-free-call .hero__cta.audit-cta--fill {
  color: var(--gold);
  border-color: var(--gold);
}

.service-page--audit .audit-free-call .hero__cta.audit-cta--fill:hover,
.service-page--audit .audit-free-call .hero__cta.audit-cta--fill:focus-visible {
  background-color: var(--gold);
  color: #fff;
  border-color: var(--gold);
}

/* --- Hero load entrance: staggered fade-in + translateY, plays once --- */
.service-page--audit .audit-hero__enter {
  opacity: 0;
  transform: translateY(18px);
}

.service-page--audit .audit-hero__content.is-entered .audit-hero__enter {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.7s ease-out, transform 0.7s ease-out;
}

.service-page--audit .audit-hero__content.is-entered .hero__tagline.audit-hero__enter { transition-delay: 0.1s; }
.service-page--audit .audit-hero__content.is-entered .audit-page-hero__title.audit-hero__enter { transition-delay: 0.28s; }
.service-page--audit .audit-hero__content.is-entered .hero__divider.audit-hero__enter { transition-delay: 0.28s; }
.service-page--audit .audit-hero__content.is-entered .hero__subheadline.audit-hero__enter { transition-delay: 0.46s; }
.service-page--audit .audit-hero__content.is-entered .audit-hero__proof.audit-hero__enter { transition-delay: 0.46s; }
.service-page--audit .audit-hero__content.is-entered .hero__cta.audit-hero__enter { transition-delay: 0.64s; }

/* Account Audit — hero proof points (match mentoring / consultancy style) */
.service-page--audit .audit-hero__proof {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.625rem 0.75rem;
  margin: clamp(1rem, 2vw, 1.25rem) 0 0;
  font-family: var(--font-sans);
  font-size: 0.625rem;
  font-weight: 500;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(var(--gold-rgb), 0.92);
}

.service-page--audit .audit-hero__proof-sep {
  display: inline-block;
  width: 1px;
  height: 0.75rem;
  background: rgba(var(--gold-rgb), 0.45);
  flex-shrink: 0;
}

.service-page--audit .audit-page-hero__text .audit-hero__proof + .hero__cta,
.service-page--audit .audit-page-hero__text .audit-hero__proof + .audit-cta--fill {
  margin-top: clamp(1rem, 2vw, 1.375rem);
}

/* --- Scroll-triggered fade-up --- */
.service-page--audit .audit-reveal__item {
  opacity: 0;
  transform: translateY(22px);
  transition: opacity 0.55s ease, transform 0.55s ease;
}

.service-page--audit .audit-animate-section.is-visible .audit-reveal__item {
  opacity: 1;
  transform: translateY(0);
}

.service-page--audit .audit-animate-section.is-visible .audit-reveal__item:nth-child(1) { transition-delay: 0ms; }
.service-page--audit .audit-animate-section.is-visible .audit-reveal__item:nth-child(2) { transition-delay: 120ms; }
.service-page--audit .audit-animate-section.is-visible .audit-reveal__item:nth-child(3) { transition-delay: 240ms; }
.service-page--audit .audit-animate-section.is-visible .audit-reveal__item:nth-child(4) { transition-delay: 360ms; }
.service-page--audit .audit-animate-section.is-visible .audit-reveal__item:nth-child(5) { transition-delay: 480ms; }
.service-page--audit .audit-animate-section.is-visible .audit-reveal__item:nth-child(6) { transition-delay: 600ms; }

.service-page--audit .audit-features__list .audit-reveal__item:nth-child(1) { transition-delay: 0ms; }
.service-page--audit .audit-features__list .audit-reveal__item:nth-child(2) { transition-delay: 130ms; }
.service-page--audit .audit-features__list .audit-reveal__item:nth-child(3) { transition-delay: 260ms; }

.service-page--audit .audit-animate-section.is-visible .audit-features__list .audit-reveal__item {
  opacity: 1;
  transform: translateY(0);
}

.service-page--audit .audit-overview__timeline .audit-reveal__item:nth-child(1) { transition-delay: 120ms; }
.service-page--audit .audit-overview__timeline .audit-reveal__item:nth-child(2) { transition-delay: 260ms; }
.service-page--audit .audit-overview__timeline .audit-reveal__item:nth-child(3) { transition-delay: 400ms; }

.service-page--audit .audit-animate-section.is-visible .audit-overview__timeline .audit-reveal__item {
  opacity: 1;
  transform: translateY(0);
}

.service-page--audit .audit-scope--accordion .audit-scope__panel--look > .audit-scope__accordion.audit-reveal__item:nth-child(2) { transition-delay: 180ms; }
.service-page--audit .audit-scope--accordion .audit-scope__panel--look > .audit-scope__accordion.audit-reveal__item:nth-child(3) { transition-delay: 300ms; }
.service-page--audit .audit-scope--accordion .audit-scope__panel--look > .audit-scope__accordion.audit-reveal__item:nth-child(4) { transition-delay: 420ms; }
.service-page--audit .audit-scope--accordion .audit-scope__panel--find > .audit-scope__accordion.audit-reveal__item:nth-child(2) { transition-delay: 180ms; }
.service-page--audit .audit-scope--accordion .audit-scope__panel--find > .audit-scope__accordion.audit-reveal__item:nth-child(3) { transition-delay: 300ms; }
.service-page--audit .audit-scope--accordion .audit-scope__panel--find > .audit-scope__accordion.audit-reveal__item:nth-child(4) { transition-delay: 420ms; }
.service-page--audit .audit-scope--accordion .audit-scope__panel--find > .audit-scope__notes.audit-reveal__item { transition-delay: 540ms; }

.service-page--audit .audit-scope__footer-inner .audit-reveal__item:nth-child(1) { transition-delay: 120ms; }
.service-page--audit .audit-scope__footer-inner .audit-reveal__item:nth-child(2) { transition-delay: 260ms; }

.service-page--audit .audit-free-call .ad-mgmt__intro .audit-reveal__item:nth-child(1) { transition-delay: 120ms; }
.service-page--audit .audit-free-call .ad-mgmt__intro .audit-reveal__item:nth-child(2) { transition-delay: 240ms; }
.service-page--audit .audit-free-call .ad-mgmt__intro .audit-reveal__item:nth-child(3) { transition-delay: 360ms; }
.service-page--audit .audit-free-call .hero__cta.audit-reveal__item { transition-delay: 480ms; }
.service-page--audit .audit-free-call .audit-free-call__note.audit-reveal__item { transition-delay: 600ms; }

/* --- Overview: step numbers + scroll timeline --- */
.service-page--audit .audit-overview-section .audit-intro__step-num {
  font-weight: 700;
  color: var(--gold);
  opacity: 1;
  text-shadow: 0 0 1px rgba(var(--gold-rgb), 0.35);
}

.service-page--audit .audit-overview__timeline {
  --audit-timeline-progress: 0;
  position: relative;
  border-left-color: rgba(var(--gold-rgb), 0.22) !important;
}

.service-page--audit .audit-overview__timeline::before {
  content: '';
  position: absolute;
  left: -2px;
  top: 0;
  width: 2px;
  height: calc(var(--audit-timeline-progress) * 100%);
  background: var(--gold);
  pointer-events: none;
  z-index: 1;
}

/* --- Three-icon row: gold icons + hairline circles --- */
.service-page--audit .audit-intro__feature-icon {
  background: transparent;
  border: 1px solid var(--gold);
  color: var(--gold);
}

.service-page--audit .audit-intro__feature-icon svg {
  color: var(--gold);
  transition: transform 0.2s ease;
}

.service-page--audit .audit-intro__feature-text strong {
  transition: color 0.2s ease;
}

@media (min-width: 769px) {
  .service-page--audit .audit-intro__feature:hover .audit-intro__feature-icon svg {
    transform: scale(1.08);
  }

  .service-page--audit .audit-intro__feature:hover .audit-intro__feature-text strong {
    color: #d4b04a;
  }
}

/* --- Look / find: accordion layout (dark navy section) --- */
.service-page--audit .audit-scope--accordion .audit-scope__panel {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  background: transparent;
  background-image: none;
  box-shadow: none;
  padding: 0;
  border-radius: 0;
  max-width: none;
}

.service-page--audit .audit-scope--accordion .audit-scope__head {
  margin-bottom: 0.125rem;
}

.service-page--audit .audit-scope--accordion .audit-scope__intro {
  color: rgba(var(--cream-rgb), 0.88);
}

.service-page--audit .audit-scope--accordion .audit-scope__accordion {
  margin: 0;
  border: 1px solid rgba(var(--gold-rgb), 0.72);
  border-radius: 4px;
  background: rgba(var(--navy-rgb), 0.28);
  overflow: hidden;
}

.service-page--audit .audit-scope--accordion .audit-scope__accordion-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 2.75rem;
  padding: clamp(0.875rem, 1.5vw, 1rem) clamp(1rem, 1.75vw, 1.125rem);
  cursor: pointer;
  list-style: none;
  transition: background-color 0.2s ease;
}

.service-page--audit .audit-scope--accordion .audit-scope__accordion-summary::-webkit-details-marker {
  display: none;
}

.service-page--audit .audit-scope--accordion .audit-scope__accordion-summary:hover {
  background-color: rgba(var(--gold-rgb), 0.08);
}

.service-page--audit .audit-scope--accordion .audit-scope__accordion-title {
  margin: 0;
  font-family: var(--font-display);
  font-size: clamp(0.68rem, 0.75vw, 0.77rem);
  font-weight: 700;
  letter-spacing: 0.14em;
  line-height: 1.35;
  text-transform: uppercase;
  color: var(--gold);
  text-align: left;
}

.service-page--audit .audit-scope--accordion .audit-scope__accordion-summary::after {
  content: '+';
  flex-shrink: 0;
  font-size: 1.125rem;
  line-height: 1;
  color: var(--gold);
  transition: transform 0.25s ease;
}

.service-page--audit .audit-scope--accordion .audit-scope__accordion[open] .audit-scope__accordion-summary::after {
  transform: rotate(45deg);
}

.service-page--audit .audit-scope--accordion .audit-scope__accordion-body {
  display: grid;
  grid-template-rows: 0fr;
  padding: 0 clamp(1rem, 1.75vw, 1.125rem);
  transition: grid-template-rows 0.35s ease, padding 0.35s ease;
}

.service-page--audit .audit-scope--accordion .audit-scope__accordion[open] .audit-scope__accordion-body {
  grid-template-rows: 1fr;
  padding-bottom: clamp(0.875rem, 1.5vw, 1rem);
}

.service-page--audit .audit-scope--accordion .audit-scope__accordion-inner {
  overflow: hidden;
  min-height: 0;
}

.service-page--audit .audit-scope--accordion .audit-scope__accordion .audit-scope__list {
  margin: 0;
  padding-top: 0.15rem;
}

.service-page--audit .audit-scope--accordion .audit-scope__item {
  color: rgba(var(--cream-rgb), 0.92);
  text-align: left;
}

.service-page--audit .audit-scope--accordion .audit-scope__notes {
  display: none;
}

.service-page--audit .audit-scope--accordion .audit-scope__note {
  color: rgba(var(--cream-rgb), 0.88);
  text-align: left;
}

@media (min-width: 769px) {
  /* Unify Account Audit section titles to match "What Is The Account Audit?" */
  .service-page--audit .audit-section__title,
  .service-page--audit .ad-mgmt__title,
  .service-page--audit .audit-scope__title,
  .service-page--audit .audit-free-call .ad-mgmt__title {
    font-size: clamp(1.175rem, 2.25vw, 1.575rem);
  }

  .service-page--audit .audit-scope--accordion .audit-scope__panels {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: auto auto;
    justify-content: center;
    align-items: stretch;
    column-gap: clamp(1.875rem, 3vw, 2.5rem);
    row-gap: 0.625rem;
    max-width: 56rem;
    margin-inline: auto;
  }

  /* Flatten panels so both heads share row 1 (equal track height) and both card grids share row 2 */
  .service-page--audit .audit-scope--accordion .audit-scope__panel {
    display: contents;
    width: 100%;
    min-height: 0;
  }

  .service-page--audit .audit-scope--accordion .audit-scope__panel--look .audit-scope__head {
    grid-column: 1;
    grid-row: 1;
  }

  .service-page--audit .audit-scope--accordion .audit-scope__panel--look .audit-scope__accordion-grid {
    grid-column: 1;
    grid-row: 2;
  }

  .service-page--audit .audit-scope--accordion .audit-scope__panel--find .audit-scope__head {
    grid-column: 2;
    grid-row: 1;
  }

  .service-page--audit .audit-scope--accordion .audit-scope__panel--find .audit-scope__accordion-grid {
    grid-column: 2;
    grid-row: 2;
  }

  .service-page--audit .audit-scope--accordion .audit-scope__head {
    margin-bottom: 0;
  }

  .service-page--audit .audit-scope--accordion .audit-scope__title,
  .service-page--audit .audit-scope--accordion .audit-scope__intro,
  .service-page--audit .audit-scope--accordion .audit-scope__note {
    text-align: left;
  }

  .service-page--audit .audit-scope--accordion .audit-scope__intro {
    font-size: clamp(0.75rem, 0.92vw, 0.85rem);
    color: rgba(var(--cream-rgb), 0.88);
  }

  .service-page--audit .audit-scope--accordion .audit-scope__item {
    display: grid;
    grid-template-columns: 6px 1fr;
    justify-content: start;
    max-width: none;
    font-size: clamp(0.75rem, 0.88vw, 0.8rem);
    color: rgba(var(--cream-rgb), 0.92);
  }

  .service-page--audit .audit-scope--accordion .audit-scope__list {
    align-items: stretch;
  }

  .service-page--audit .audit-scope--accordion .audit-scope__note {
    font-size: clamp(0.75rem, 0.88vw, 0.8rem);
  }

  .service-page--audit .audit-scope--accordion .audit-scope__dots {
    display: none;
  }

  .service-page--audit .audit-scope--accordion .audit-scope__accordion-grid {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
    width: 100%;
  }

  /* Gap between card columns and "The audit..." footer */
  .service-page--audit .audit-scope__footer {
    margin-top: clamp(calc(1rem + 10px), calc(2vw + 10px), calc(1.5rem + 10px));
  }
}

@media (max-width: 768px) {
  .service-page--audit .audit-scope--accordion .audit-scope__stage {
    overflow: hidden;
    max-width: 100%;
  }

  .service-page--audit .audit-scope--accordion .audit-scope__carousel-wrap {
    overflow: hidden;
    max-width: 100%;
    transition: min-height 0.35s ease;
  }

  .service-page--audit .audit-scope--accordion .audit-scope__panels.audit-scope__carousel {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 0.75rem;
    width: 100%;
    margin: 0;
    padding: 0 clamp(0.75rem, 3vw, 1rem);
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    overscroll-behavior-x: contain;
  }

  .service-page--audit .audit-scope--accordion .audit-scope__carousel::-webkit-scrollbar {
    display: none;
  }

  .service-page--audit .audit-scope--accordion .audit-scope__carousel .audit-scope__panel {
    flex: 0 0 84%;
    max-width: 84%;
    scroll-snap-align: center;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    padding: clamp(1rem, 4vw, 1.25rem);
    border: 1px solid rgba(var(--gold-rgb), 0.72);
    border-radius: 6px;
    background: rgba(var(--navy-rgb), 0.22);
    box-sizing: border-box;
  }

  .service-page--audit .audit-scope--accordion .audit-scope__carousel .audit-scope__panel--find .audit-scope__notes {
    display: none;
  }

  .service-page--audit .audit-scope--accordion .audit-scope__carousel .audit-scope__head {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    flex-shrink: 0;
    min-height: clamp(8.75rem, 33vw, 10.25rem);
    margin-bottom: 0;
  }

  .service-page--audit .audit-scope--accordion .audit-scope__accordion-grid {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
    width: 100%;
  }

  .service-page--audit .audit-scope--accordion .audit-scope__carousel .audit-scope__accordion-grid {
    margin-top: clamp(0.875rem, 3.5vw, 1.125rem);
  }

  .service-page--audit .audit-scope--accordion .audit-scope__dots {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.5rem;
    margin-top: clamp(1rem, 2.5vw, 1.25rem);
  }

  .service-page--audit .audit-scope--accordion .audit-scope__dot {
    width: 7px;
    height: 7px;
    padding: 0;
    border: none;
    border-radius: 50%;
    background: rgba(var(--gold-rgb), 0.32);
    cursor: pointer;
    transition: background-color 0.2s ease, transform 0.2s ease;
  }

  .service-page--audit .audit-scope--accordion .audit-scope__dot.is-active {
    background: var(--gold);
    transform: scale(1.08);
  }

  .service-page--audit .audit-scope--accordion .audit-scope__panel {
    background: transparent;
    background-image: none;
    box-shadow: none;
    width: 100%;
    max-width: none;
  }

  .service-page--audit .audit-scope--accordion .audit-scope__panels {
    gap: 0;
    width: 100%;
  }

  .service-page--audit .audit-scope--accordion .audit-scope__head {
    margin-bottom: clamp(1rem, 4vw, 1.25rem);
  }

  .service-page--audit .audit-scope--accordion .audit-scope__accordion-summary {
    touch-action: manipulation;
    min-height: 44px;
    padding: 0.875rem 1rem;
  }

  .service-page--audit .audit-scope--accordion .audit-scope__accordion {
    width: 100%;
    border-radius: 4px;
  }

  .service-page--audit .audit-scope--accordion .audit-scope__intro {
    color: rgba(var(--cream-rgb), 0.88);
  }

  .service-page--audit .audit-scope--accordion .audit-scope__accordion-title {
    font-size: clamp(0.56rem, 2.85vw, 0.625rem);
    letter-spacing: 0.14em;
    line-height: 1.35;
    text-align: left;
  }

  .service-page--audit .audit-scope--accordion .audit-scope__item {
    font-size: clamp(0.8125rem, 3.5vw, 0.875rem);
    color: rgba(var(--cream-rgb), 0.92);
  }

  .service-page--audit .audit-scope--accordion .audit-scope__accordion-body {
    padding-inline: 1rem;
  }
}

/* Account Audit — hero proof mobile (match mentoring) */
@media (max-width: 768px) {
  .service-page--audit .audit-hero__proof {
    font-size: 0.4375rem;
    letter-spacing: 0.1em;
    gap: 0.3rem 0.4375rem;
    margin: 0.5rem 0 0;
    line-height: 1.25;
    max-width: 100%;
  }

  .service-page--audit .audit-hero__proof-sep {
    height: 0.4375rem;
  }

  .service-page--audit .audit-page-hero__text .audit-hero__proof + .hero__cta,
  .service-page--audit .audit-page-hero__text .audit-hero__proof + .audit-cta--fill {
    margin-top: 0.75rem;
  }

  .service-page--audit .audit-page-hero__text .hero__subheadline + .audit-hero__proof {
    margin-top: 0.625rem;
  }
}

/* --- Reduced motion --- */
@media (prefers-reduced-motion: reduce) {
  .service-page--audit .audit-hero__enter,
  .service-page--audit .audit-reveal__item {
    opacity: 1;
    transform: none;
    transition: none;
  }

  .service-page--audit .audit-overview__timeline::before {
    height: 100%;
  }

  .service-page--audit .audit-scope--accordion .audit-scope__accordion-body {
    transition: none;
  }

  .service-page--audit .audit-scope--accordion .audit-scope__accordion-summary::after {
    transition: none;
  }
}

/* ==========================================================================
   Ad Management page — enhancements (icons, motion, micro-interactions)
   Scoped to .service-page--ad-mgmt only
   ========================================================================== */

/* --- CTA hover fill --- */
.service-page--ad-mgmt .ad-mgmt-cta--fill {
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.service-page--ad-mgmt .ad-mgmt-cta--fill:hover,
.service-page--ad-mgmt .ad-mgmt-cta--fill:focus-visible {
  background-color: var(--gold);
  color: var(--navy);
  border-color: var(--gold);
}

/* "Who we typically work with" bottom CTA: explicit navy hover text (matches
   the hero CTA's existing gold-fill hover behavior). */
.service-page--ad-mgmt .ad-mgmt-cta--fill.ad-mgmt-who__cta:hover,
.service-page--ad-mgmt .ad-mgmt-cta--fill.ad-mgmt-who__cta:focus-visible {
  color: var(--navy);
}

/* Pricing box CTA: white hover text instead of the default navy hover text. */
.service-page--ad-mgmt .ad-mgmt-cta--fill.ad-mgmt-pricing__cta:hover,
.service-page--ad-mgmt .ad-mgmt-cta--fill.ad-mgmt-pricing__cta:focus-visible {
  color: #fff;
}

/* --- Hero proof points --- */
.service-page--ad-mgmt .ad-mgmt-hero__proof {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.625rem 0.75rem;
  margin: clamp(1rem, 2vw, 1.25rem) 0 0;
  font-family: var(--font-sans);
  font-size: 0.625rem;
  font-weight: 500;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(var(--gold-rgb), 0.92);
}

.service-page--ad-mgmt .ad-mgmt-hero__proof-sep {
  display: inline-block;
  width: 1px;
  height: 0.75rem;
  background: rgba(var(--gold-rgb), 0.45);
  flex-shrink: 0;
}

.service-page--ad-mgmt .audit-page-hero__text .ad-mgmt-hero__proof + .hero__cta,
.service-page--ad-mgmt .audit-page-hero__text .ad-mgmt-hero__proof + .ad-mgmt-cta--fill {
  margin-top: clamp(1rem, 2vw, 1.375rem);
}

/* --- Hero load entrance: staggered fade-in + translateY, plays once --- */
.service-page--ad-mgmt .ad-mgmt-hero__enter {
  opacity: 0;
  transform: translateY(18px);
}

.service-page--ad-mgmt .ad-mgmt-hero__content.is-entered .ad-mgmt-hero__enter {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.7s ease-out, transform 0.7s ease-out;
}

.service-page--ad-mgmt .ad-mgmt-hero__content.is-entered .hero__tagline.ad-mgmt-hero__enter { transition-delay: 0.1s; }
.service-page--ad-mgmt .ad-mgmt-hero__content.is-entered .audit-page-hero__title.ad-mgmt-hero__enter { transition-delay: 0.28s; }
.service-page--ad-mgmt .ad-mgmt-hero__content.is-entered .hero__divider.ad-mgmt-hero__enter { transition-delay: 0.28s; }
.service-page--ad-mgmt .ad-mgmt-hero__content.is-entered .hero__subheadline.ad-mgmt-hero__enter { transition-delay: 0.46s; }
.service-page--ad-mgmt .ad-mgmt-hero__content.is-entered .ad-mgmt-hero__proof.ad-mgmt-hero__enter { transition-delay: 0.46s; }
.service-page--ad-mgmt .ad-mgmt-hero__content.is-entered .hero__cta.ad-mgmt-hero__enter { transition-delay: 0.64s; }

/* --- Scroll-triggered fade-up --- */
.service-page--ad-mgmt .ad-mgmt-reveal__item {
  opacity: 0;
  transform: translateY(22px);
  transition: opacity 0.55s ease, transform 0.55s ease;
}

.service-page--ad-mgmt .ad-mgmt-animate-section.is-visible .ad-mgmt-reveal__item {
  opacity: 1;
  transform: translateY(0);
}

.service-page--ad-mgmt .ad-mgmt-animate-section.is-visible .ad-mgmt-reveal__item:nth-child(1) { transition-delay: 0ms; }
.service-page--ad-mgmt .ad-mgmt-animate-section.is-visible .ad-mgmt-reveal__item:nth-child(2) { transition-delay: 120ms; }
.service-page--ad-mgmt .ad-mgmt-animate-section.is-visible .ad-mgmt-reveal__item:nth-child(3) { transition-delay: 240ms; }
.service-page--ad-mgmt .ad-mgmt-animate-section.is-visible .ad-mgmt-reveal__item:nth-child(4) { transition-delay: 360ms; }
.service-page--ad-mgmt .ad-mgmt-animate-section.is-visible .ad-mgmt-reveal__item:nth-child(5) { transition-delay: 480ms; }
.service-page--ad-mgmt .ad-mgmt-animate-section.is-visible .ad-mgmt-reveal__item:nth-child(6) { transition-delay: 600ms; }
.service-page--ad-mgmt .ad-mgmt-animate-section.is-visible .ad-mgmt-reveal__item:nth-child(7) { transition-delay: 720ms; }
.service-page--ad-mgmt .ad-mgmt-animate-section.is-visible .ad-mgmt-reveal__item:nth-child(8) { transition-delay: 840ms; }

.service-page--ad-mgmt .ad-mgmt-look__grid .ad-mgmt-reveal__item:nth-child(1) { transition-delay: 0ms; }
.service-page--ad-mgmt .ad-mgmt-look__grid .ad-mgmt-reveal__item:nth-child(2) { transition-delay: 120ms; }
.service-page--ad-mgmt .ad-mgmt-look__grid .ad-mgmt-reveal__item:nth-child(3) { transition-delay: 240ms; }
.service-page--ad-mgmt .ad-mgmt-look__grid .ad-mgmt-reveal__item:nth-child(4) { transition-delay: 360ms; }
.service-page--ad-mgmt .ad-mgmt-look__grid .ad-mgmt-reveal__item:nth-child(5) { transition-delay: 480ms; }

.service-page--ad-mgmt .ad-mgmt-animate-section.is-visible .ad-mgmt-look__grid .ad-mgmt-reveal__item {
  opacity: 1;
  transform: translateY(0);
}

.service-page--ad-mgmt .ad-mgmt-how-cards__grid .ad-mgmt-reveal__item:nth-child(1) { transition-delay: 0ms; }
.service-page--ad-mgmt .ad-mgmt-how-cards__grid .ad-mgmt-reveal__item:nth-child(2) { transition-delay: 130ms; }
.service-page--ad-mgmt .ad-mgmt-how-cards__grid .ad-mgmt-reveal__item:nth-child(3) { transition-delay: 260ms; }

.service-page--ad-mgmt .ad-mgmt-animate-section.is-visible .ad-mgmt-how-cards__grid .ad-mgmt-reveal__item {
  opacity: 1;
  transform: translateY(0);
}

.service-page--ad-mgmt .audit-intro__steps .ad-mgmt-reveal__item:nth-child(1) { transition-delay: 120ms; }
.service-page--ad-mgmt .audit-intro__steps .ad-mgmt-reveal__item:nth-child(2) { transition-delay: 240ms; }
.service-page--ad-mgmt .audit-intro__steps .ad-mgmt-reveal__item:nth-child(3) { transition-delay: 360ms; }
.service-page--ad-mgmt .audit-intro__steps .ad-mgmt-reveal__item:nth-child(4) { transition-delay: 480ms; }

.service-page--ad-mgmt .ad-mgmt-animate-section.is-visible .audit-intro__steps .ad-mgmt-reveal__item {
  opacity: 1;
  transform: translateY(0);
}

.service-page--ad-mgmt .ad-mgmt-together__content-col .ad-mgmt-reveal__item:nth-child(1) { transition-delay: 140ms; }
.service-page--ad-mgmt .ad-mgmt-together__content-col .ad-mgmt-reveal__item:nth-child(2) { transition-delay: 280ms; }
.service-page--ad-mgmt .ad-mgmt-together__content-col .ad-mgmt-reveal__item:nth-child(3) { transition-delay: 420ms; }

.service-page--ad-mgmt .ad-mgmt-animate-section.is-visible .ad-mgmt-together__content-col .ad-mgmt-reveal__item {
  opacity: 1;
  transform: translateY(0);
}

/* --- Lead section divider draw-in --- */
.service-page--ad-mgmt .ad-mgmt-lead__divider-line {
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.6s ease, opacity 0.6s ease;
}

.service-page--ad-mgmt .ad-mgmt-lead__divider-diamond {
  opacity: 0;
  transform: rotate(45deg) scale(0.6);
  transition: opacity 0.45s ease 0.15s, transform 0.45s ease 0.15s;
}

.service-page--ad-mgmt .ad-mgmt-animate-section.is-visible .ad-mgmt-lead__divider-line {
  transform: scaleX(1);
}

.service-page--ad-mgmt .ad-mgmt-animate-section.is-visible .ad-mgmt-lead__divider-diamond {
  opacity: 1;
  transform: rotate(45deg) scale(1);
}

.service-page--ad-mgmt .ad-mgmt-animate-section.is-visible .ad-mgmt-lead__prose:not(.ad-mgmt-lead__tagline) {
  transition-delay: 140ms;
}

.service-page--ad-mgmt .ad-mgmt-animate-section.is-visible .ad-mgmt-lead__tagline {
  transition-delay: 280ms;
}

/* --- How cards: centered gold icons --- */
.service-page--ad-mgmt .ad-mgmt-how-cards__card-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 0.875rem;
  color: var(--gold);
}

.service-page--ad-mgmt .ad-mgmt-how-cards__card-icon svg {
  display: block;
  width: 22px;
  height: 22px;
}

.service-page--ad-mgmt .ad-mgmt-how-cards__card-icon img {
  display: block;
  height: 44px;
  width: auto;
  max-width: none;
}

/* --- Pricing bordered box --- */
.service-page--ad-mgmt .ad-mgmt-pricing__inner {
  max-width: var(--shell-reading);
  margin-inline: auto;
}

.service-page--ad-mgmt .ad-mgmt-pricing__layout {
  max-width: var(--shell-reading);
  margin-inline: auto;
  padding: clamp(2.5rem, 4vw, 3.125rem);
  text-align: center;
  border: 1px solid rgba(var(--gold-rgb), 0.72);
  border-radius: 5px;
  background: transparent;
  transition: border-color 0.25s ease;
}

.service-page--ad-mgmt .ad-mgmt-pricing__layout:hover {
  border-color: var(--gold);
}

.service-page--ad-mgmt .ad-mgmt-pricing__heading-wrap {
  align-items: center;
  margin-bottom: clamp(1.25rem, 2.5vw, 1.75rem);
}

.service-page--ad-mgmt .ad-mgmt-pricing .audit-intro__rule--heading {
  background: var(--gold);
}

.service-page--ad-mgmt .ad-mgmt-pricing__prose {
  margin: 0 auto;
  max-width: none;
}

.service-page--ad-mgmt .ad-mgmt-pricing__cta {
  margin: clamp(2.25rem, 4vw, 3rem) auto 0;
  color: var(--gold);
  border-color: var(--gold);
}

.service-page--ad-mgmt .ad-mgmt-pricing__note {
  margin: clamp(0.75rem, 1.5vw, 1rem) auto 0;
  max-width: 42ch;
  font-family: var(--font-sans);
  font-size: clamp(0.625rem, 0.85vw, 0.6875rem);
  font-weight: 400;
  line-height: 1.55;
  color: rgba(255, 255, 255, 0.52);
  text-align: center;
}

/* --- FAQ: accordion motion + hover + plus rotate --- */
.service-page--ad-mgmt .ad-mgmt-faq .service-page__faq-item {
  border-radius: 3px;
  transition: background-color 0.2s ease;
}

.service-page--ad-mgmt .ad-mgmt-faq .service-page__faq-item summary {
  padding: 0.35rem 0.5rem;
  margin: -0.35rem -0.5rem;
  border-radius: 3px;
  transition: background-color 0.2s ease;
}

.service-page--ad-mgmt .ad-mgmt-faq .service-page__faq-item summary:hover {
  background-color: rgba(var(--gold-rgb), 0.07);
}

.service-page--ad-mgmt .ad-mgmt-faq .service-page__faq-item summary::after {
  display: inline-block;
  transition: transform 0.25s ease;
}

.service-page--ad-mgmt .ad-mgmt-faq .service-page__faq-item[open] summary::after {
  content: '+';
  transform: rotate(45deg);
}

.service-page--ad-mgmt .ad-mgmt-faq .service-page__faq-item p {
  overflow: hidden;
  max-height: 0;
  opacity: 0;
  margin-top: 0;
  transition: max-height 0.35s ease, opacity 0.3s ease, margin-top 0.35s ease;
}

.service-page--ad-mgmt .ad-mgmt-faq .service-page__faq-item[open] p {
  max-height: 16rem;
  opacity: 1;
  margin-top: 0.75rem;
}

/* --- Mobile refinements --- */
@media (max-width: 768px) {
  .service-page--ad-mgmt .ad-mgmt-hero__proof {
    font-size: 0.4375rem;
    letter-spacing: 0.1em;
    gap: 0.3rem 0.4375rem;
    margin: 0.5rem 0 0;
    line-height: 1.25;
    max-width: 100%;
  }

  .service-page--ad-mgmt .ad-mgmt-hero__proof-sep {
    height: 0.4375rem;
  }

  .service-page--ad-mgmt .audit-page-hero__text .ad-mgmt-hero__proof + .hero__cta,
  .service-page--ad-mgmt .audit-page-hero__text .ad-mgmt-hero__proof + .ad-mgmt-cta--fill {
    margin-top: 0.75rem;
  }

  .service-page--ad-mgmt .audit-page-hero__text .hero__subheadline + .ad-mgmt-hero__proof {
    margin-top: 0.625rem;
  }
}

/* --- Reduced motion --- */
@media (prefers-reduced-motion: reduce) {
  .service-page--ad-mgmt .ad-mgmt-hero__enter,
  .service-page--ad-mgmt .ad-mgmt-reveal__item {
    opacity: 1;
    transform: none;
    transition: none;
  }

  .service-page--ad-mgmt .ad-mgmt-lead__divider-line,
  .service-page--ad-mgmt .ad-mgmt-lead__divider-diamond {
    opacity: 1;
    transform: none;
    transition: none;
  }

  .service-page--ad-mgmt .ad-mgmt-faq .service-page__faq-item p {
    max-height: none;
    opacity: 1;
    transition: none;
  }

  .service-page--ad-mgmt .ad-mgmt-faq .service-page__faq-item summary::after {
    transition: none;
  }
}

@media (min-width: 769px) {
  .service-page--training .mentoring-faq .audit-faq__title,
  .service-page--training .mentoring-faq .audit-section__title {
    font-size: 20px;
  }

  .service-page--consultancy .mentoring-lead__who-block .mentoring-lead__heading--sub {
    font-family: var(--font-display);
    font-size: var(--consultancy-section-title-size);
    color: var(--navy);
  }

  .service-page--consultancy .consultancy-intro-quote__text {
    font-family: var(--font-display);
    font-weight: 400;
    font-size: 0.945rem;
  }

  .service-page--consultancy .mentoring-lead__who-block .mentoring-lead__prose {
    font-size: clamp(0.8125rem, 1.15vw, 0.875rem);
  }
}

@media (max-width: 768px) {
  .service-page--consultancy .mentoring-lead__who-block .mentoring-lead__heading--sub {
    font-family: var(--font-display);
    font-size: clamp(1.25rem, 5vw, 1.65rem);
    color: var(--navy);
  }

  .service-page--consultancy .consultancy-intro-quote__text {
    font-size: clamp(1rem, 4vw, 1.2rem);
  }

  .service-page--consultancy .mentoring-lead__who-block .mentoring-lead__prose {
    font-size: clamp(0.75rem, 3vw, 0.8125rem);
  }
}

/* PPC Consultancy — lead section dividers: explicit dimensions, always visible */
.service-page--consultancy .audit-intro--mentoring-lead .mentoring-lead__title-rule {
  display: block;
  width: min(100%, 5.5rem);
  height: 1px;
  margin: clamp(1.125rem, 2.5vw, 1.5rem) auto;
  background-color: rgba(var(--gold-rgb), 0.5);
  border: 0;
  transform: none;
}

.service-page--consultancy .audit-intro--mentoring-lead .consultancy-lead__vline {
  display: block;
  width: 1px;
  height: clamp(2rem, 4vw, 2.75rem);
  margin-inline: auto;
  background-color: rgba(var(--gold-rgb), 0.5);
  border: 0;
  transform: none;
}

/* PPC Consultancy — introHeading & introQuote typography (lead section) */
.service-page--consultancy .audit-intro--mentoring-lead .mentoring-lead__heading.mentoring-lead__heading--intro {
  color: var(--navy);
}

.service-page--consultancy .audit-intro--mentoring-lead .consultancy-intro-quote .consultancy-intro-quote__text {
  font-family: var(--font-display);
  font-weight: 700;
}

@media (max-width: 768px) {
  .service-page--consultancy .audit-intro--mentoring-lead .consultancy-intro-quote .consultancy-intro-quote__text {
    font-family: var(--font-display);
    font-size: 0.75rem;
  }
}

/* PPC Consultancy — Typical situations (Sound familiar layout, no numbers) */
.service-page--consultancy .promises.audit-look .consultancy-look__board {
  position: relative;
  max-width: 44rem;
  margin: 0 auto;
}

.service-page--consultancy .promises.audit-look .consultancy-look__grid {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: clamp(2.5rem, 5vw, 4rem);
  row-gap: clamp(2rem, 4vw, 2.75rem);
  z-index: 1;
  list-style: none;
  margin: 0;
  padding: 0;
}

.service-page--consultancy .promises.audit-look .consultancy-look__spine {
  position: absolute;
  top: 0.35rem;
  bottom: 0.35rem;
  left: 50%;
  width: 0;
  transform: translateX(-50%);
  pointer-events: none;
  z-index: 0;
}

.service-page--consultancy .promises.audit-look .consultancy-look__spine-line {
  position: absolute;
  inset: 0;
  width: 1px;
  left: 50%;
  transform: translateX(-50%);
  background: rgba(var(--gold-rgb), 0.55);
}

.service-page--consultancy .promises.audit-look .consultancy-look__spine-diamond {
  position: absolute;
  left: 50%;
  width: 6px;
  height: 6px;
  background: var(--gold);
  transform: translateX(-50%) rotate(45deg);
}

.service-page--consultancy .promises.audit-look .consultancy-look__spine-diamond--top {
  top: 0;
}

.service-page--consultancy .promises.audit-look .consultancy-look__spine-diamond--mid {
  top: 50%;
  margin-top: -3px;
}

.service-page--consultancy .promises.audit-look .consultancy-look__spine-diamond--bot {
  bottom: 0;
}

.service-page--consultancy .promises.audit-look .consultancy-look__item {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  margin: 0;
  min-width: 0;
  padding: 0;
  border: 0;
  list-style: none;
}

.service-page--consultancy .promises.audit-look .consultancy-look__item:nth-child(odd) {
  text-align: right;
  align-items: flex-end;
  padding-right: clamp(0.5rem, 1.5vw, 1rem);
}

.service-page--consultancy .promises.audit-look .consultancy-look__item:nth-child(even) {
  text-align: left;
  align-items: flex-start;
  padding-left: clamp(0.5rem, 1.5vw, 1rem);
}

.service-page--consultancy .promises.audit-look .consultancy-look__text {
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.75rem, 1.05vw, 0.8125rem);
  font-weight: 400;
  line-height: 1.65;
  color: #ffffff;
  max-width: 28ch;
}

.service-page--consultancy .promises.audit-look .consultancy-look__lead {
  display: block;
  font-family: var(--font-display);
  font-weight: 400;
  font-size: clamp(0.8125rem, 1.2vw, 0.875rem); /* one step above body */
  color: var(--gold);
  margin-bottom: 0.35rem;
}

@media (max-width: 768px) {
  .service-page--consultancy .promises.audit-look .consultancy-look__board {
    max-width: 100%;
  }
}

/* PPC Consultancy — Typical situations: mobile centre-spine layout (late-win) */
@media (max-width: 768px) {
  .service-page--consultancy .promises.audit-look .consultancy-look__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: clamp(1.25rem, 4.5vw, 1.75rem);
    row-gap: clamp(1.125rem, 3.5vw, 1.5rem);
    max-width: 100%;
  }

  .service-page--consultancy .promises.audit-look .consultancy-look__item {
    gap: 0.25rem;
    width: auto;
    max-width: 90%;
  }

  .service-page--consultancy .promises.audit-look .consultancy-look__item:nth-child(odd) {
    justify-self: end;
    text-align: right;
    align-items: flex-end;
    padding-right: clamp(0.35rem, 1.2vw, 0.5rem);
    padding-left: 0;
  }

  .service-page--consultancy .promises.audit-look .consultancy-look__item:nth-child(even) {
    justify-self: start;
    text-align: left;
    align-items: flex-start;
    padding-left: clamp(0.35rem, 1.2vw, 0.5rem);
    padding-right: 0;
  }

  .service-page--consultancy .promises.audit-look .consultancy-look__text {
    font-size: 7px;
    line-height: 1.65;
    max-width: 100%;
    padding-inline: 0;
  }
}

/* PPC Consultancy — Typical situations: mobile font + spine height (late-win) */
@media (max-width: 768px) {
  .service-page--consultancy .promises.audit-look .consultancy-look__board {
    overflow: visible;
  }

  .service-page--consultancy .promises.audit-look .consultancy-look__spine {
    top: -0.4rem;
    bottom: -1.25rem;
  }

  .service-page--consultancy .promises.audit-look .consultancy-look__text {
    font-size: 9.1px;
  }
}

/* PPC Consultancy — Typical situations: mobile font + spine height bump (late-win) */
@media (max-width: 768px) {
  .service-page--consultancy .promises.audit-look .consultancy-look__spine {
    top: -0.75rem;
    bottom: -2rem;
  }

  .service-page--consultancy .promises.audit-look .consultancy-look__text {
    font-size: 11.83px;
  }

  .service-page--consultancy .promises.audit-look .consultancy-look__lead {
    font-size: 13.6px; /* one step above body */
  }
}

/* PPC Consultancy — Typical situations: mobile row-gap bump (late-win) */
@media (max-width: 768px) {
  .service-page--consultancy .promises.audit-look .consultancy-look__grid {
    row-gap: 27px;
  }
}

/* PPC Consultancy — How it works step 04 lead gold */
.service-page--consultancy .consultancy-how__lead-gold {
  font-family: var(--font-display);
  color: var(--gold);
}

/* Ad Management — Who we typically work with: Sound familiar list (late-win)
   Structure/spacing mirrored from homepage #familiar / mentoring-look.
   Text colour adapted from homepage navy to white for contrast on navy/thirdPartBG. */
.service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__board {
  position: relative;
  max-width: 44rem;
  margin: clamp(1.25rem, 3vw, 1.75rem) auto 0;
}

.service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__grid {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: clamp(2.5rem, 5vw, 4rem);
  row-gap: clamp(2rem, 4vw, 2.75rem);
  z-index: 1;
}

.service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__spine {
  position: absolute;
  top: 0.35rem;
  bottom: 0.35rem;
  left: 50%;
  width: 0;
  transform: translateX(-50%);
  pointer-events: none;
  z-index: 0;
}

.service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__spine-line {
  position: absolute;
  inset: 0;
  width: 1px;
  left: 50%;
  transform: translateX(-50%);
  background: rgba(var(--gold-rgb), 0.55);
}

.service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__spine-diamond {
  position: absolute;
  left: 50%;
  width: 6px;
  height: 6px;
  background: var(--gold);
  transform: translateX(-50%) rotate(45deg);
}

.service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__spine-diamond--top {
  top: 0;
}

.service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__spine-diamond--mid {
  top: 50%;
  margin-top: -3px;
}

.service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__spine-diamond--bot {
  bottom: 0;
}

.service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__item {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  margin: 0;
  min-width: 0;
}

.service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__item:nth-child(odd) {
  text-align: right;
  align-items: flex-end;
  padding-right: clamp(0.5rem, 1.5vw, 1rem);
}

.service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__item:nth-child(even) {
  text-align: left;
  align-items: flex-start;
  padding-left: clamp(0.5rem, 1.5vw, 1rem);
}

.service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__num {
  display: block;
  font-family: var(--font-display);
  font-size: clamp(1.75rem, 3.2vw, 2.35rem);
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.04em;
  color: var(--gold);
  margin-bottom: 0.15rem;
}

.service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__text {
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(0.75rem, 1.05vw, 0.8125rem);
  font-weight: 400;
  line-height: 1.65;
  color: #ffffff;
  max-width: 28ch;
}

.service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__lead {
  font-family: var(--font-display);
  font-size: clamp(0.8125rem, 1.2vw, 0.9375rem);
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0.06em;
  color: var(--gold);
}

.service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__item--featured .ad-mgmt-who__text {
  font-weight: 500;
}

@media (max-width: 768px) {
  .service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__board {
    max-width: 100%;
    margin-top: clamp(1rem, 4vw, 1.25rem);
    overflow: visible;
  }

  /* Reuse desktop 2-col + centre-spine pattern (mirrors consultancy mobile spine) */
  .service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: clamp(1.25rem, 4.5vw, 1.75rem);
    row-gap: clamp(1.125rem, 3.5vw, 1.5rem);
    max-width: 100%;
  }

  .service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__spine {
    display: block;
    top: -0.4rem;
    bottom: -1.25rem;
  }

  .service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__item {
    gap: 0.25rem;
    width: auto;
    max-width: 90%;
  }

  .service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__item:nth-child(odd) {
    justify-self: end;
    text-align: right;
    align-items: flex-end;
    padding-right: clamp(0.35rem, 1.2vw, 0.5rem);
    padding-left: 0;
  }

  .service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__item:nth-child(even) {
    justify-self: start;
    text-align: left;
    align-items: flex-start;
    padding-left: clamp(0.35rem, 1.2vw, 0.5rem);
    padding-right: 0;
  }

  .service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__num {
    font-size: 1.35rem;
    margin-bottom: 0.15rem;
  }

  /* Was ~12.375px / ~13.125px when stacked; reduced to fit each side of the line */
  .service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__text {
    font-size: 0.625rem;
    line-height: 1.65;
    max-width: 100%;
    padding-inline: 0;
  }

  .service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__lead {
    font-size: 0.6875rem;
    letter-spacing: 0.05em;
    line-height: 1.4;
  }
}

/* Ad Management — How cards icon + body size (late cascade lock) */
.service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__card-icon img {
  display: block;
  height: 44px;
  width: auto;
  max-width: none;
}

.service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__card-body {
  font-size: 0.7875rem;
}

@media (max-width: 768px) {
  .service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__card-body {
    font-size: 0.63rem;
  }
}

/* Ad Management — How it works: mobile heading→steps gap (late cascade lock) */
@media (max-width: 768px) {
  .service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt .audit-intro__steps {
    margin-top: 1.5rem;
  }
}

/* Ad Management — Hero mobile text −10% (late cascade lock) */
@media (max-width: 768px) {
  .service-page--ad-mgmt .audit-page-hero__text .hero__tagline {
    font-size: 0.50625rem;
  }

  .service-page--ad-mgmt .audit-page-hero__title {
    font-size: 1.305rem;
  }

  .service-page--ad-mgmt .audit-page-hero__text .hero__subheadline {
    font-size: 0.72rem;
  }

  .service-page--ad-mgmt .ad-mgmt-hero__proof {
    font-size: 0.39375rem;
  }
}

/* Ad Management — Hero mobile: hide first proof chip + tighten subheadline width */
@media (max-width: 768px) {
  .service-page--ad-mgmt .ad-mgmt-hero__proof [data-i18n="adManagementPage.heroProof1"],
  .service-page--ad-mgmt .ad-mgmt-hero__proof [data-i18n="adManagementPage.heroProof1"] + .ad-mgmt-hero__proof-sep {
    display: none;
  }

  /* Was 9.625rem (~70% of prior); widened ~15% → 11.07rem */
  .service-page--ad-mgmt .audit-page-hero__text .hero__subheadline {
    max-width: 11.07rem;
  }
}

/* Ad Management — Who list: mobile centre-spine (late cascade lock) */
@media (max-width: 768px) {
  .service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: clamp(1.25rem, 4.5vw, 1.75rem);
    row-gap: clamp(1.125rem, 3.5vw, 1.5rem);
  }

  .service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__spine {
    display: block;
    top: -0.4rem;
    bottom: -1.25rem;
  }

  .service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__item {
    max-width: 90%;
  }

  .service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__item:nth-child(odd) {
    justify-self: end;
    text-align: right;
    align-items: flex-end;
    padding-right: clamp(0.35rem, 1.2vw, 0.5rem);
    padding-left: 0;
  }

  .service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__item:nth-child(even) {
    justify-self: start;
    text-align: left;
    align-items: flex-start;
    padding-left: clamp(0.35rem, 1.2vw, 0.5rem);
    padding-right: 0;
  }

  .service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__num {
    font-size: 1.35rem;
  }

  .service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__text {
    font-size: 0.625rem;
    max-width: 100%;
  }

  .service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__lead {
    font-size: 0.6875rem;
  }
}

/* Ad Management — How cards: mobile scroll-snap carousel (mirrors consultancy-compare) */
@media (max-width: 768px) {
  .service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__carousel-wrap {
    margin-top: 0;
    overflow: hidden;
    max-width: 100%;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__grid.ad-mgmt-how-cards__carousel {
    display: flex;
    grid-template-columns: none;
    align-items: stretch;
    gap: 0;
    margin: 0;
    max-width: none;
    width: 100%;
    padding: 0;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    overscroll-behavior-x: contain;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__carousel::-webkit-scrollbar {
    display: none;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__carousel .ad-mgmt-how-cards__card {
    flex: 0 0 100%;
    max-width: 100%;
    width: 100%;
    scroll-snap-align: center;
    min-width: 0;
    box-sizing: border-box;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__carousel .ad-mgmt-how-cards__card + .ad-mgmt-how-cards__card::before {
    content: none;
    display: none;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__dots {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.5rem;
    margin-top: clamp(1rem, 2.5vw, 1.25rem);
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__dot {
    width: 7px;
    height: 7px;
    padding: 0;
    border: none;
    border-radius: 50%;
    background: rgba(var(--gold-rgb), 0.32);
    cursor: pointer;
    transition: background-color 0.2s ease, transform 0.2s ease;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__dot.is-active {
    background: var(--gold);
    transform: scale(1.08);
  }
}

@media (min-width: 769px) {
  .service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__carousel-wrap {
    margin-top: 0;
    overflow: visible;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards__dots {
    display: none;
  }
}

/* Ad Management — Who list: mobile breathing room above/below board only */
@media (max-width: 768px) {
  .service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__board {
    /* +40px vs prior collapsed gaps (~28px above / ~32px below) */
    margin-top: 4.25rem;
    margin-bottom: 4.5rem;
  }
}

/* Ad Management — How steps: number size, desktop line thickness, step spacing (late cascade lock) */
@media (min-width: 769px) {
  .service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt .audit-intro__step-num {
    /* was 36px at 1400 → 90% */
    font-size: 2.025rem;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt .audit-intro__steps {
    /* was 2px → ~60% */
    border-left-width: 1.2px;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt .audit-intro__step:not(:last-child) {
    /* was 40px → ~140% */
    padding-bottom: 3.5rem;
  }
}

@media (max-width: 768px) {
  .service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt .audit-intro__step-num {
    /* was 32px at 375 → 90% */
    font-size: 1.8rem;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt .audit-intro__step:not(:last-child) {
    /* was 40px / 2.5rem → ~140% */
    padding-bottom: 3.5rem;
  }
}

/* ==========================================================================
   Service pages — shared scroll reveal (Audit / Mentoring / Consultancy / Ad Mgmt)
   Spec: fade+slide 24px / 0.6s ease-out; diamond draw-in; pricing scale-in
   Late cascade so one shared block wins over per-page duplicates.
   ========================================================================== */

.service-page--audit .audit-reveal__item,
.service-page--training .mentoring-reveal__item,
.service-page--consultancy .consultancy-reveal__item,
.service-page--ad-mgmt .ad-mgmt-reveal__item {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.service-page--audit .audit-animate-section.is-visible .audit-reveal__item,
.service-page--training .mentoring-animate-section.is-visible .mentoring-reveal__item,
.service-page--consultancy .consultancy-animate-section.is-visible .consultancy-reveal__item,
.service-page--ad-mgmt .ad-mgmt-animate-section.is-visible .ad-mgmt-reveal__item {
  opacity: 1;
  transform: translateY(0);
}

/* Part C — Pricing box scale-in (pages that have a bordered pricing layout) */
.service-page--training .mentoring-pricing__layout.mentoring-reveal__item,
.service-page--consultancy .consultancy-pricing__layout.consultancy-reveal__item,
.service-page--ad-mgmt .ad-mgmt-pricing__layout.ad-mgmt-reveal__item {
  opacity: 0;
  transform: scale(0.96);
  transition: opacity 0.6s ease-out, transform 0.6s ease-out, border-color 0.25s ease;
}

.service-page--training .mentoring-animate-section.is-visible .mentoring-pricing__layout.mentoring-reveal__item,
.service-page--consultancy .consultancy-animate-section.is-visible .consultancy-pricing__layout.consultancy-reveal__item,
.service-page--ad-mgmt .ad-mgmt-animate-section.is-visible .ad-mgmt-pricing__layout.ad-mgmt-reveal__item {
  opacity: 1;
  transform: scale(1);
}

/* Part B — Gold diamond divider draw-in (Mentoring + Ad Management lead dividers)
   Resting diamond shape is rotate(45deg); flourish starts ~15deg shy of that. */
.service-page--training .mentoring-lead__divider-diamond,
.service-page--ad-mgmt .ad-mgmt-lead__divider-diamond {
  opacity: 0;
  transform: rotate(30deg) scale(0);
  transition: opacity 0.5s ease-out 150ms, transform 0.5s ease-out 150ms;
}

.service-page--training .mentoring-animate-section.is-visible .mentoring-lead__divider-diamond,
.service-page--ad-mgmt .ad-mgmt-animate-section.is-visible .ad-mgmt-lead__divider-diamond {
  opacity: 1;
  transform: rotate(45deg) scale(1);
}

.service-page--training .mentoring-animate-section.is-visible .mentoring-reveal__divider:nth-of-type(2) .mentoring-lead__divider-diamond {
  transition-delay: 0.33s;
}

/* Part D — Reduced motion: show final states immediately */
@media (prefers-reduced-motion: reduce) {
  .service-page--audit .audit-reveal__item,
  .service-page--training .mentoring-reveal__item,
  .service-page--consultancy .consultancy-reveal__item,
  .service-page--ad-mgmt .ad-mgmt-reveal__item,
  .service-page--training .mentoring-pricing__layout.mentoring-reveal__item,
  .service-page--consultancy .consultancy-pricing__layout.consultancy-reveal__item,
  .service-page--ad-mgmt .ad-mgmt-pricing__layout.ad-mgmt-reveal__item {
    opacity: 1;
    transform: none;
    transition: none;
  }

  .service-page--training .mentoring-lead__divider-diamond,
  .service-page--ad-mgmt .ad-mgmt-lead__divider-diamond {
    opacity: 1;
    transform: rotate(45deg);
    transition: none;
  }

  .service-page--training .mentoring-lead__divider-line,
  .service-page--ad-mgmt .ad-mgmt-lead__divider-line {
    transform: none;
    transition: none;
  }
}

/* ==========================================================================
   Sound familiar (#familiar) only — late-win overrides
   1) 4-item list font-size × 0.95 at every breakpoint (explicit values)
   2) 0.3cm air above/below the gold vertical spine between board and intro
   Specificity beats home-page.css; placed after all @media (min-width: 769px).
   ========================================================================== */

/* Base / desktop — was clamp(1.75rem, 3.2vw, 2.35rem) × 0.95 */
.home-page #familiar.home-familiar .home-familiar__num {
  font-size: clamp(1.6625rem, 3.04vw, 2.2325rem);
}

/* Base / desktop — was clamp(0.8125rem, 1.2vw, 0.9375rem) × 0.95 */
.home-page #familiar.home-familiar .home-familiar__lead {
  font-size: clamp(0.771875rem, 1.14vw, 0.890625rem);
}

/* Base / desktop — was clamp(0.75rem, 1.05vw, 0.8125rem) × 0.95 */
.home-page #familiar.home-familiar .home-familiar__body {
  font-size: clamp(0.7125rem, 0.9975vw, 0.771875rem);
}

/*
  Gold vertical line between the 4-item list and “We recognise…” is
  .home-familiar__spine (absolute inside .home-familiar__board). There is no
  flow-level divider sibling between board and .familiar__intro, so
  margin-top/bottom on the spine cannot open document-flow gaps.

  Existing .familiar__intro { margin-top: clamp(...) } would collapse with any
  margin-bottom on the board, so the 0.3cm gaps are applied as padding instead:
  padding-bottom on the board (below the list) and padding-top on the intro
  (above the paragraph). No list/item margins changed.
*/
.home-page #familiar.home-familiar .home-familiar__board {
  padding-bottom: 0.3cm;
}

.home-page #familiar.home-familiar .familiar__intro {
  padding-top: 0.3cm;
}

/* Mobile — was 1.539rem / 0.78375rem / 0.7125rem × 0.95 */
@media (max-width: 768px) {
  .home-page #familiar.home-familiar .home-familiar__num {
    font-size: 1.46205rem;
  }

  .home-page #familiar.home-familiar .home-familiar__lead {
    font-size: 0.7445625rem;
  }

  .home-page #familiar.home-familiar .home-familiar__body {
    font-size: 0.676875rem;
  }
}

/* ==========================================================================
   Account Audit (.service-page--audit) — mobile-only (max-width: 768px)
   EN /account-audit + HU /fiokaudit share this markup. Desktop ≥769px untouched.
   Late-win: appended after all earlier @media (min-width: 769px) blocks.
   ========================================================================== */
@media (max-width: 768px) {
  /* 1) Hero CTA — push further down.
     Current mobile winner (proof + CTA): margin-top: 0.75rem.
     +14px → calc(0.75rem + 14px). Also bump the general mobile CTA rule. */
  .service-page--audit .audit-page-hero__text .hero__cta {
    margin-top: 30px; /* was 16px + 14px */
  }

  .service-page--audit .audit-page-hero__text .audit-hero__proof + .hero__cta,
  .service-page--audit .audit-page-hero__text .audit-hero__proof + .audit-cta--fill {
    margin-top: calc(0.75rem + 14px); /* was 0.75rem; +14px */
  }

  /* 2) Scope carousel — one full-width panel at a time (no neighbour peek) */
  .service-page--audit .audit-scope--accordion .audit-scope__panels.audit-scope__carousel {
    padding-left: 0;
    padding-right: 0;
    scroll-snap-type: x mandatory;
    /* gap: 0.75rem kept from existing rule for swipe transition */
  }

  .service-page--audit .audit-scope--accordion .audit-scope__carousel .audit-scope__panel {
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    scroll-snap-align: start;
  }

  /* 3) Centre all text + markers inside carousel panels (the “cards”) */
  .service-page--audit .audit-scope--accordion .audit-scope__carousel .audit-scope__panel,
  .service-page--audit .audit-scope--accordion .audit-scope__carousel .audit-scope__title,
  .service-page--audit .audit-scope--accordion .audit-scope__carousel .audit-scope__intro,
  .service-page--audit .audit-scope--accordion .audit-scope__carousel .audit-scope__accordion-title,
  .service-page--audit .audit-scope--accordion .audit-scope__carousel .audit-scope__item,
  .service-page--audit .audit-scope--accordion .audit-scope__carousel .audit-scope__item > span,
  .service-page--audit .audit-scope--accordion .audit-scope__carousel .audit-scope__note {
    text-align: center;
  }

  .service-page--audit .audit-scope--accordion .audit-scope__carousel .audit-scope__head {
    align-items: center;
    text-align: center;
  }

  .service-page--audit .audit-scope--accordion .audit-scope__carousel .audit-scope__accordion-summary {
    justify-content: center;
  }

  .service-page--audit .audit-scope--accordion .audit-scope__carousel .audit-scope__accordion-title {
    text-align: center;
  }

  .service-page--audit .audit-scope--accordion .audit-scope__carousel .audit-scope__list {
    align-items: center;
  }

  .service-page--audit .audit-scope--accordion .audit-scope__carousel .audit-scope__item {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 10px;
    width: auto;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
  }

  .service-page--audit .audit-scope--accordion .audit-scope__carousel .audit-scope__diamond {
    margin-left: 0;
    margin-right: 0;
    flex-shrink: 0;
  }

  /* Below cards: footer body + CTA centred */
  .service-page--audit .audit-scope--accordion .audit-scope__footer-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .service-page--audit .audit-scope--accordion .audit-scope__footer-text {
    text-align: center;
  }
}

/* ==========================================================================
   PPC Mentoring (.service-page--training) — mobile-only (max-width: 768px)
   EN /ppc-mentoring + HU /ppc-mentoralas share this markup.
   Desktop ≥769px untouched. Late-win after earlier min-width: 769px blocks.
   ========================================================================== */
@media (max-width: 768px) {
  /* 1) Hero body — was clamp(0.8rem, 3.4vw, 0.9rem) × 0.9
     (only mobile font-size declaration for this paragraph; no 480px override) */
  .service-page--training .audit-page-hero__text .hero__subheadline {
    font-size: clamp(0.72rem, 3.06vw, 0.81rem);
  }

  /* 2) “Who is this for?” — restore desktop-like 2-col + centre spine on mobile
     (same layout pattern as Ad Management .audit-look--ad-mgmt-who mobile).
     Overrides the prior mobile stack (1fr, spine hidden, centred items). */
  .service-page--training .promises.audit-look.mentoring-look .mentoring-look__board {
    max-width: 100%;
    margin-top: clamp(1rem, 4vw, 1.25rem);
    overflow: visible;
  }

  .service-page--training .promises.audit-look.mentoring-look .mentoring-look__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: clamp(1.25rem, 4.5vw, 1.75rem);
    row-gap: clamp(1.125rem, 3.5vw, 1.5rem);
    max-width: 100%;
  }

  .service-page--training .promises.audit-look.mentoring-look .mentoring-look__spine {
    display: block;
    top: -0.4rem;
    bottom: -1.25rem;
  }

  .service-page--training .promises.audit-look.mentoring-look .mentoring-look__item {
    gap: 0.25rem;
    width: auto;
    max-width: 90%;
  }

  .service-page--training .promises.audit-look.mentoring-look .mentoring-look__item:nth-child(odd) {
    justify-self: end;
    text-align: right;
    align-items: flex-end;
    padding-right: clamp(0.35rem, 1.2vw, 0.5rem);
    padding-left: 0;
  }

  .service-page--training .promises.audit-look.mentoring-look .mentoring-look__item:nth-child(even) {
    justify-self: start;
    text-align: left;
    align-items: flex-start;
    padding-left: clamp(0.35rem, 1.2vw, 0.5rem);
    padding-right: 0;
  }

  .service-page--training .promises.audit-look.mentoring-look .mentoring-look__text {
    max-width: 100%;
    padding-inline: 0;
  }

  /* 3) Pricing box — CTA −10%; prose gap handled below via two <p>s */
  .service-page--training .mentoring-pricing__cta.hero__cta,
  .service-page--training .mentoring-pricing__cta.mentoring-cta--fill {
    /* was font-size 0.75rem; padding 12px 24px */
    font-size: 0.675rem;
    padding-top: 10.8px;
    padding-bottom: 10.8px;
    padding-left: 21.6px;
    padding-right: 21.6px;
  }

  /* Pricing prose: 0.5cm between the two paragraphs (replaces ineffective br margin) */
  .service-page--training .mentoring-pricing__prose-wrap > .mentoring-pricing__prose:first-child {
    margin-bottom: 0.5cm;
  }

  .service-page--training .mentoring-pricing__prose-wrap > .mentoring-pricing__prose:last-child {
    margin-top: 0;
  }
}

/* ==========================================================================
   PPC Mentoring — “Who is this for?” body type −15% (mobile only)
   Title (.audit-section__title) intentionally untouched.
   Current mobile sizes from @media (max-width: 768px) ~9113–9127 × 0.85.
   No separate 480px font-size declarations for these elements.
   ========================================================================== */
@media (max-width: 768px) {
  /* was clamp(1.5rem, 6.5vw, 1.875rem) × 0.85 */
  .service-page--training .promises.audit-look.mentoring-look .mentoring-look__num {
    font-size: clamp(1.275rem, 5.525vw, 1.59375rem);
  }

  /* was clamp(0.75rem, 3.3vw, 0.8125rem) × 0.85; line-height stays unitless 1.7 */
  .service-page--training .promises.audit-look.mentoring-look .mentoring-look__text {
    font-size: clamp(0.6375rem, 2.805vw, 0.690625rem);
  }

  /* was clamp(0.8125rem, 3.5vw, 0.875rem) × 0.85 */
  .service-page--training .promises.audit-look.mentoring-look .mentoring-look__lead {
    font-size: clamp(0.690625rem, 2.975vw, 0.74375rem);
  }
}

/* ==========================================================================
   PPC Mentoring — “Who is this for?” +0.25cm between the two numbered rows
   Mobile only. Grid already uses separate row-gap / column-gap; add to row-gap
   only so horizontal spacing between 01–02 and 03–04 is unchanged.
   ========================================================================== */
@media (max-width: 768px) {
  .service-page--training .promises.audit-look.mentoring-look .mentoring-look__grid {
    /* was clamp(1.125rem, 3.5vw, 1.5rem); +0.5cm between row 1 (01/02) and row 2 (03/04) */
    row-gap: calc(clamp(1.125rem, 3.5vw, 1.5rem) + 0.5cm);
  }
}

/* ==========================================================================
   PPC Consultancy (.service-page--consultancy) — late-win overrides
   ========================================================================== */

/* 1) EN only: hide separator before the third proof label (label itself hidden
   via empty ppcConsultancy.heroProof3 + i18n [hidden]). HU/SV keep all three. */
html[lang="en"] .service-page--consultancy .consultancy-hero__proof > .consultancy-hero__proof-sep:nth-child(4) {
  display: none;
}

@media (max-width: 768px) {
  /* 2) HU only: push hero CTA down by +0.25cm
     Current mobile (proof + CTA): margin-top: 0.875rem → calc(0.875rem + 0.25cm) */
  html[lang="hu"] .service-page--consultancy .audit-page-hero__text .consultancy-hero__proof + .hero__cta,
  html[lang="hu"] .service-page--consultancy .audit-page-hero__text .consultancy-hero__proof + .consultancy-cta--fill {
    margin-top: calc(0.875rem + 0.25cm);
  }

  /* 3) Consultancy vs Mentoring carousel — one full-width card (same approach as
     Account Audit .audit-scope__carousel late-win) */
  .service-page--consultancy .consultancy-compare__grid.consultancy-compare__carousel {
    padding-left: 0;
    padding-right: 0;
    scroll-snap-type: x mandatory;
    /* gap: 0.75rem kept from existing mobile rule for swipe transition */
  }

  .service-page--consultancy .consultancy-compare__carousel .consultancy-compare__card {
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    scroll-snap-align: start;
  }
}

/* ==========================================================================
   Ad Management — "Who we typically work with" +1cm between the two
   numbered rows (mirrors PPC Mentoring "Who is this for?" fix above).
   Mobile only. Grid already uses separate row-gap / column-gap; add to
   row-gap only so horizontal spacing between 01–02 and 03–04 is unchanged.
   ========================================================================== */
@media (max-width: 768px) {
  .service-page--ad-mgmt .promises.audit-look--ad-mgmt-who .ad-mgmt-who__grid {
    /* was clamp(1.125rem, 3.5vw, 1.5rem); +1cm between row 1 (01/02) and row 2 (03/04) */
    row-gap: calc(clamp(1.125rem, 3.5vw, 1.5rem) + 1cm);
  }
}

/* ==========================================================================
   Contact page (.contact-page) — mobile-only (max-width: 768px)
   contact.html / kapcsolat. Desktop >=769px untouched.

   1) Inputs/textarea/select used clamp(0.6875rem, 0.8vw, 0.75rem), which
      resolves to 11px on mobile — below the 16px iOS Safari needs to
      avoid auto-zooming a field on focus. Bumping to 16px also pushes
      the auto height comfortably past the 44px tap-target minimum
      (measured 42.5px at 11px), so no separate height rule is needed.

   Selectors repeat `.contact-page` to out-specificity contact-page.css's
   equal-specificity rules (loaded after styles.css) — same late-win
   pattern as the #familiar.home-familiar block above.
   ========================================================================== */
@media (max-width: 768px) {
  .contact-page.contact-page {
    padding-bottom: clamp(2.5rem, 6vw, 4rem);
  }

  .contact-page.contact-page .contact-form__input,
  .contact-page.contact-page .contact-form__textarea,
  .contact-page.contact-page .contact-form__select {
    /* was clamp(0.6875rem, 0.8vw, 0.75rem) ≈ 11px; 16px avoids iOS auto-zoom */
    font-size: 1rem;
  }
}

/* ==========================================================================
   Contact page (.contact-page) — mobile-only (max-width: 768px)
   Change 1: non-form text −15% (×0.85 of the current mobile value).
   Form text (labels, inputs/select/textarea, submit label, trust note,
   validation message) is font-size-EXCLUDED per spec and untouched here.
   No form heading/intro sits directly above the <form> element — the
   eyebrow/title/lead/intro/steps live in the separate content column,
   which only stacks above the form column once mobile collapses it to
   one column; they are not "the form's own heading" so they ARE resized.
   clamp() values are scaled on all three arguments (min / preferred / max)
   to preserve fluid sizing, matching the existing ×0.85 pattern used for
   PPC Mentoring's mobile-look sizes above (search "× 0.85" in this file).
   None of these line-heights are in px (all unitless ratios), so none
   needed proportional scaling.
   ========================================================================== */
@media (max-width: 768px) {
  /* was clamp(1.5rem, 2.75vw, 2rem) */
  .contact-page.contact-page .contact-section__title {
    font-size: clamp(1.275rem, 2.3375vw, 1.7rem);
  }

  /* was 0.9375rem (also covers the "Prefer email?" contact-details line) */
  .contact-page.contact-page .contact-section__lead,
  .contact-page.contact-page .contact-section__intro {
    font-size: 0.796875rem;
  }

  /* was 0.9375rem */
  .contact-page.contact-page .contact-section__next-title {
    font-size: 0.796875rem;
  }

  /* was clamp(1.125rem, 1.6vw, 1.3125rem) */
  .contact-page.contact-page .contact-section__step-num {
    font-size: clamp(0.95625rem, 1.36vw, 1.115625rem);
  }

  /* was 0.875rem */
  .contact-page.contact-page .contact-section__step-text {
    font-size: 0.74375rem;
  }
}

/* ==========================================================================
   Contact page (.contact-page) — mobile-only (max-width: 768px)
   Change 2: page background is a flat navy color set once in contact-page.css
   (no per-breakpoint override needed anymore); non-form text stays white to
   read against it. Form-card text (labels/trust/booking-message) is navy
   since the form itself reads navy-on-light — see the desktop rules in
   contact-page.css for the matching change.

   Selectors repeat `.contact-page` to out-specificity contact-page.css's
   equal-specificity rules (loaded after styles.css) — same late-win
   pattern as the #familiar.home-familiar block above.
   ========================================================================== */
@media (max-width: 768px) {
  /* Non-form text: navy -> white */
  .contact-page.contact-page .contact-section__title,
  .contact-page.contact-page .contact-section__lead,
  .contact-page.contact-page .contact-section__intro,
  .contact-page.contact-page .contact-section__step-text {
    color: #fff;
  }

  .contact-page.contact-page .contact-section__intro a:hover {
    color: #fff;
    border-bottom-color: rgba(255, 255, 255, 0.5);
  }

  /* Step-number bullet halo (box-shadow ring) matched the old navy page
     bg to "knock out" the timeline line behind each dot; re-matched to
     the new cream bg so the knockout still reads correctly. */
  .contact-page.contact-page .contact-section__step-num::after {
    box-shadow: 0 0 0 3px var(--cream);
  }

  /* Form text colour (size is excluded above, colour is not) */
  .contact-page.contact-page .contact-form__input,
  .contact-page.contact-page .contact-form__textarea,
  .contact-page.contact-page .contact-form__select {
    color: var(--navy);
    /* was rgba(8, 16, 28, 0.55) — dark fill relied on the dark page bg;
       lightened so the new navy input text stays legible on the new
       light page bg. Kept the existing gold border unchanged. */
    background: rgba(var(--cream-rgb), 0.85);
  }

  .contact-page.contact-page .contact-form__input::placeholder,
  .contact-page.contact-page .contact-form__textarea::placeholder {
    /* was rgba(255, 255, 255, 0.32) */
    color: rgba(var(--navy-rgb), 0.35);
  }

  .contact-page.contact-page .contact-form__select option {
    /* was background #08101c / color var(--cream) — flipped to match the
       lightened field above so the native dropdown list stays legible */
    background: var(--cream);
    color: var(--navy);
  }

  .contact-page.contact-page .contact-form__trust {
    color: rgba(var(--navy-rgb), 0.5);
  }

  .contact-page.contact-page .contact-form__trust-icon {
    /* svg strokes use currentColor */
    color: rgba(var(--navy-rgb), 0.45);
  }

  /* #contactMessage submit feedback: size stays (validation-message
     exclusion), colour does not per spec */
  .contact-page.contact-page .booking-message {
    color: var(--navy);
  }
}

/* ==========================================================================
   Site footer — mobile-only refinements (max-width: 768px)
   Appended at end of file so these win over the earlier mobile footer
   block (~6152–6231) at equal specificity. Typography, colors and the
   dark navy + gold design system are unchanged; this only touches
   spacing, padding and tap target sizing.
   ========================================================================== */
@media (max-width: 768px) {
  .site-footer .container {
    padding-left: 20px;
    padding-right: 20px;
  }

  .footer__row {
    row-gap: 0.1875rem;
  }

  .footer__col ul {
    gap: 0.1875rem;
  }

  .footer__col a,
  .footer-link-btn,
  .footer__contact-link {
    min-height: 44px;
    line-height: 1.4;
  }

  .footer__bottom {
    margin-top: 0.1875rem;
    padding-top: 0.1875rem;
  }
}

/* ==========================================================================
   Contact page — "What happens next" logo (desktop only)
   Target ~444px (1.5× prior 296px), left-aligned to the 01/02/03 numbers.
   padding-left: 1.85rem matches .contact-section__step; translateX(-1.61%)
   cancels whiteLogo.webp's transparent left margin (66/4096 px). The logo
   slot uses flex-basis 0 so size does not inflate the left column past the
   form; max-height shrinks only when leftover space is tighter than 444px.
   Selectors repeat `.contact-page` to out-specificity contact-page.css.
   ========================================================================== */
@media (min-width: 769px) {
  .contact-page.contact-page .contact-section__content {
    display: flex;
    flex-direction: column;
    align-self: stretch;
    min-height: 0;
  }

  .contact-page.contact-page .contact-section__next {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
  }

  .contact-page.contact-page .contact-section__next-logo {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex: 1 1 0;
    align-self: stretch;
    min-height: 0;
    min-width: 0;
    width: auto;
    max-width: 100%;
    margin: 0;
    padding-left: 1.85rem;
  }

  .contact-page.contact-page .contact-section__next-logo-img {
    width: auto;
    height: auto;
    max-width: min(444px, 100%);
    max-height: min(444px, 100%);
    aspect-ratio: 1 / 1;
    object-fit: contain;
    transform: translateX(-1.61%);
  }
}

/* ==========================================================================
   Footer — Services / Legal collapsible accordion (mobile only)
   Collapsed by default below 768px. Desktop is unaffected because the
   collapsed state (max-height: 0 / overflow: hidden) and the flex/chevron
   styling on the trigger only exist inside this media query — the trigger's
   aria-expanded attribute has no effect outside it, so resizing back to
   desktop can never leave a column hidden.
   ========================================================================== */
@media (max-width: 768px) {
  .footer__col-toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    width: 100%;
    min-height: 44px;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
  }

  .footer__col-toggle::after {
    content: '';
    flex-shrink: 0;
    width: 6px;
    height: 6px;
    border-right: 1.5px solid rgba(var(--gold-rgb), 0.65);
    border-bottom: 1.5px solid rgba(var(--gold-rgb), 0.65);
    transform: rotate(45deg);
    transition: transform 0.25s ease;
  }

  .footer__col-toggle[aria-expanded="true"]::after {
    transform: rotate(225deg);
  }

  .footer__col-toggle:focus-visible {
    outline: 1px solid rgba(var(--gold-rgb), 0.6);
    outline-offset: 3px;
  }

  .footer__col-panel {
    flex-shrink: 0;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
  }

  .footer__col-panel.is-open {
    max-height: 220px;
  }

  .footer-cookie-standalone {
    margin-top: 0.1875rem;
  }
}

/* ==========================================================================
   Contact page — center title + gold dividers (mobile only)
   Selectors repeat `.contact-page` to out-specificity contact-page.css's
   own rules for these elements (that file loads after this one, so equal
   specificity there would otherwise win). Line widths/thickness/color are
   untouched — only horizontal centering via margin-inline: auto.
   ========================================================================== */
@media (max-width: 768px) {
  .contact-page.contact-page .contact-section__title {
    text-align: center;
  }

  .contact-page.contact-page .contact-section__eyebrow-divider,
  .contact-page.contact-page .contact-section__divider {
    margin-inline: auto;
  }
}

/* ==========================================================================
   Wide screens (1600px+) — hero columns, section rhythm
   (shell tokens now rem-based in :root; grow via html font-size)
   ========================================================================== */
@media (min-width: 1600px) {
  /* Hero content columns (~15% wider; rem so they scale with root) */
  .hero__content {
    max-width: 44.7rem;
  }

  .hero__bg {
    max-width: 44.06rem;
  }

  .hero__bg-image {
    max-width: 44.06rem;
  }

  /* home-page.css loads after styles.css — raise specificity so this wins */
  html .home-page .hero__content {
    max-width: min(72rem, 90%);
  }

  /* Service-page heroes — content-height bands read as strips on ultrawide;
     give them section presence. Keep headline vertically centred. */
  .service-page--audit .audit-page-hero,
  .service-page--training .audit-page-hero,
  .service-page--consultancy .audit-page-hero,
  .service-page--ad-mgmt .audit-page-hero {
    min-height: clamp(34rem, 32vw, 56rem);
    display: flex;
    align-items: center;
  }

  .service-page--audit .audit-page-hero__layout,
  .service-page--ad-mgmt .audit-page-hero__layout {
    width: 100%;
  }

  /* Section vertical padding — clamp MAX matches base (root scaling handles growth) */
  .service-page--audit .audit-intro,
  .service-page--training .audit-intro,
  .service-page--consultancy .audit-intro,
  .service-page--ad-mgmt .audit-intro {
    padding: clamp(3.5rem, 7vw, 5.5rem) 0;
  }

  .service-page--ad-mgmt .audit-intro.audit-intro--ad-mgmt-lead {
    padding: clamp(2.5rem, 5vw, 3.5rem) 0;
  }

  .service-page--training .audit-intro--mentoring-lead,
  .service-page--consultancy .audit-intro--mentoring-lead {
    padding: clamp(2.5rem, 5vw, 3.5rem) 0;
  }

  .service-page--training .promises.audit-look,
  .service-page--consultancy .promises.audit-look {
    padding: clamp(3rem, 6vw, 4.5rem) 0;
  }

  .service-page--training .mentoring-session.familiar.audit-find,
  .service-page--training .mentoring-session {
    padding: clamp(3rem, 6vw, 4.5rem) 0;
  }

  .service-page--consultancy .consultancy-compare {
    padding: clamp(3rem, 6vw, 4.5rem) 0;
  }

  .service-page--training .audit-find.familiar,
  .service-page--consultancy .audit-find.familiar,
  .service-page--ad-mgmt .audit-find.familiar {
    padding-top: clamp(4rem, 8vw, 6rem);
    padding-bottom: clamp(3rem, 6vw, 4.5rem);
  }

  .service-page--ad-mgmt .promises.audit-look--ad-mgmt-who {
    padding: clamp(3rem, 6vw, 4.5rem) 0;
  }

  .service-page--ad-mgmt .audit-intro--ad-mgmt-together {
    padding: clamp(3.5rem, 7vw, 5.5rem) 0;
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .audit-how--ad-mgmt {
    padding: clamp(3rem, 6vw, 4.5rem) 0 clamp(2.5rem, 5vw, 3.5rem);
  }

  .service-page--ad-mgmt .ad-mgmt-how-band .ad-mgmt-how-cards.familiar.audit-find {
    padding: clamp(2.5rem, 5vw, 3.5rem) 0 clamp(3rem, 6vw, 4.5rem);
  }

  .service-page--ad-mgmt .ad-mgmt-faq-band .audit-faq {
    padding-top: clamp(3rem, 6vw, 4.5rem);
    padding-bottom: clamp(4rem, 8vw, 6rem);
  }

  .service-page--audit .audit-scope--combined {
    padding: clamp(3rem, 6vw, 5rem) clamp(1.5rem, 3vw, 2.5rem);
  }
}

/* Proportional root font-size scaling on wide screens */
@media (min-width: 1600px) { html { font-size: 18px; } }
@media (min-width: 2000px) { html { font-size: 20px; } }
@media (min-width: 2600px) { html { font-size: 22px; } }
@media (min-width: 3200px) { html { font-size: 24px; } }

/* Service-page heroes + cream lead bands — extra type/column scale above 2000px.
   Builds on (does not edit) the 1600px block; clamp MAX only; no ch max-width changes. */
@media (min-width: 2000px) {
  /* Task 2: wider text column */
  .service-page--audit .audit-page-hero__text,
  .service-page--training .audit-page-hero__text,
  .service-page--consultancy .audit-page-hero__text,
  .service-page--ad-mgmt .audit-page-hero__text {
    max-width: 48rem;
  }

  /* Task 1: hero title +18% on clamp MAX (2.25 → 2.655) */
  .service-page--audit .audit-page-hero__title,
  .service-page--training .audit-page-hero__title,
  .service-page--consultancy .audit-page-hero__title,
  .service-page--ad-mgmt .audit-page-hero__title {
    font-size: clamp(1.5rem, 3vw, 2.655rem);
  }

  /* Eyebrow / tagline +15% (0.6875 → 0.790625) */
  .service-page--audit .audit-page-hero__text .hero__tagline,
  .service-page--training .audit-page-hero__text .hero__tagline,
  .service-page--consultancy .audit-page-hero__text .hero__tagline,
  .service-page--ad-mgmt .audit-page-hero__text .hero__tagline {
    font-size: clamp(0.6875rem, 0.85vw, 0.790625rem);
  }

  /* Subtitle / lead +15% (1 → 1.15) */
  .service-page--audit .audit-page-hero__text .hero__subheadline,
  .service-page--training .audit-page-hero__text .hero__subheadline,
  .service-page--consultancy .audit-page-hero__text .hero__subheadline,
  .service-page--ad-mgmt .audit-page-hero__text .hero__subheadline {
    font-size: clamp(0.9rem, 1.45vw, 1.15rem);
  }

  /* Meta / proof labels +15% (0.625 → 0.71875) */
  .service-page--audit .audit-hero__proof,
  .service-page--training .mentoring-hero__proof,
  .service-page--consultancy .consultancy-hero__proof,
  .service-page--ad-mgmt .ad-mgmt-hero__proof {
    font-size: clamp(0.625rem, 0.75vw, 0.71875rem);
  }

  /* CTA +12% font (0.75 → 0.84); padding raised proportionally from 14px 28px */
  .service-page--audit .audit-page-hero__text .hero__cta,
  .service-page--training .audit-page-hero__text .hero__cta,
  .service-page--consultancy .audit-page-hero__text .hero__cta,
  .service-page--ad-mgmt .audit-page-hero__text .hero__cta {
    font-size: clamp(0.75rem, 0.9vw, 0.84rem);
    padding: 15.68px 31.36px;
  }

  /* Task 3: cream intro / lead bands — headings + body +15% on clamp MAX */
  .service-page--training .audit-intro--mentoring-lead .mentoring-lead__heading {
    font-size: clamp(1.43rem, 2.75vw, 2.208rem);
  }

  .service-page--training .audit-intro--mentoring-lead .mentoring-lead__prose,
  .service-page--training .audit-intro--mentoring-lead .mentoring-lead__prose--note {
    font-size: clamp(0.8125rem, 1.15vw, 1.00625rem);
  }

  .service-page--consultancy {
    --consultancy-section-title-size: clamp(1.43rem, 2.75vw, 2.208rem);
  }

  .service-page--consultancy .audit-intro--mentoring-lead .mentoring-lead__prose,
  .service-page--consultancy .audit-intro--mentoring-lead .mentoring-lead__prose--note {
    font-size: clamp(0.9375rem, 1.4vw, 1.15rem);
  }

  .service-page--ad-mgmt {
    --audit-fs-intro-heading: clamp(1.5rem, 2.9vw, 2.3rem);
    --audit-fs-body: clamp(0.875rem, 1.25vw, 1.078125rem);
  }

  .service-page--ad-mgmt .ad-mgmt-lead__tagline {
    font-size: clamp(0.9375rem, 1.35vw, 1.221875rem);
  }

  .service-page--audit .audit-intro .audit-intro__eyebrow {
    font-size: clamp(0.8125rem, 1vw, 0.934375rem);
  }

  .service-page--audit .audit-intro .audit-intro__heading {
    font-size: clamp(1.175rem, 2.25vw, 1.81125rem);
  }

  .service-page--audit .audit-intro .audit-intro__prose,
  .service-page--audit .audit-intro .audit-intro__prose--intro,
  .service-page--audit .audit-intro .audit-intro__step-body {
    font-size: clamp(0.8125rem, 1.15vw, 1.00625rem);
  }
}

@media (min-width: 2600px) {
  /* Task 2: further column widen */
  .service-page--audit .audit-page-hero__text,
  .service-page--training .audit-page-hero__text,
  .service-page--consultancy .audit-page-hero__text,
  .service-page--ad-mgmt .audit-page-hero__text {
    max-width: 52rem;
  }

  /* Task 1: further +12% on 2000px maxima */
  .service-page--audit .audit-page-hero__title,
  .service-page--training .audit-page-hero__title,
  .service-page--consultancy .audit-page-hero__title,
  .service-page--ad-mgmt .audit-page-hero__title {
    font-size: clamp(1.5rem, 3vw, 2.9736rem);
  }

  .service-page--audit .audit-page-hero__text .hero__tagline,
  .service-page--training .audit-page-hero__text .hero__tagline,
  .service-page--consultancy .audit-page-hero__text .hero__tagline,
  .service-page--ad-mgmt .audit-page-hero__text .hero__tagline {
    font-size: clamp(0.6875rem, 0.85vw, 0.8855rem);
  }

  .service-page--audit .audit-page-hero__text .hero__subheadline,
  .service-page--training .audit-page-hero__text .hero__subheadline,
  .service-page--consultancy .audit-page-hero__text .hero__subheadline,
  .service-page--ad-mgmt .audit-page-hero__text .hero__subheadline {
    font-size: clamp(0.9rem, 1.45vw, 1.288rem);
  }

  .service-page--audit .audit-hero__proof,
  .service-page--training .mentoring-hero__proof,
  .service-page--consultancy .consultancy-hero__proof,
  .service-page--ad-mgmt .ad-mgmt-hero__proof {
    font-size: clamp(0.625rem, 0.75vw, 0.805rem);
  }

  .service-page--audit .audit-page-hero__text .hero__cta,
  .service-page--training .audit-page-hero__text .hero__cta,
  .service-page--consultancy .audit-page-hero__text .hero__cta,
  .service-page--ad-mgmt .audit-page-hero__text .hero__cta {
    font-size: clamp(0.75rem, 0.9vw, 0.9408rem);
    padding: 17.56px 35.12px;
  }

  /* Task 3: cream bands +12% on 2000px maxima */
  .service-page--training .audit-intro--mentoring-lead .mentoring-lead__heading {
    font-size: clamp(1.43rem, 2.75vw, 2.47296rem);
  }

  .service-page--training .audit-intro--mentoring-lead .mentoring-lead__prose,
  .service-page--training .audit-intro--mentoring-lead .mentoring-lead__prose--note {
    font-size: clamp(0.8125rem, 1.15vw, 1.127rem);
  }

  .service-page--consultancy {
    --consultancy-section-title-size: clamp(1.43rem, 2.75vw, 2.47296rem);
  }

  .service-page--consultancy .audit-intro--mentoring-lead .mentoring-lead__prose,
  .service-page--consultancy .audit-intro--mentoring-lead .mentoring-lead__prose--note {
    font-size: clamp(0.9375rem, 1.4vw, 1.288rem);
  }

  .service-page--ad-mgmt {
    --audit-fs-intro-heading: clamp(1.5rem, 2.9vw, 2.576rem);
    --audit-fs-body: clamp(0.875rem, 1.25vw, 1.2075rem);
  }

  .service-page--ad-mgmt .ad-mgmt-lead__tagline {
    font-size: clamp(0.9375rem, 1.35vw, 1.3685rem);
  }

  .service-page--audit .audit-intro .audit-intro__eyebrow {
    font-size: clamp(0.8125rem, 1vw, 1.0465rem);
  }

  .service-page--audit .audit-intro .audit-intro__heading {
    font-size: clamp(1.175rem, 2.25vw, 2.0286rem);
  }

  .service-page--audit .audit-intro .audit-intro__prose,
  .service-page--audit .audit-intro .audit-intro__prose--intro,
  .service-page--audit .audit-intro .audit-intro__step-body {
    font-size: clamp(0.8125rem, 1.15vw, 1.127rem);
  }
}
