/* ==========================================================================
   LOCAL PREVIEW ONLY — Albyn MOT sitewide corporate chrome
   Audi / Range Rover language across homepage body + key pages.
   Cinematic/editorial sections · calm grid · thin detail lines ·
   premium typography · soft shadows · quiet corporate.
   Soft blue accents from Albyn logo (#1E6FFF / #3AA0FF) — hairlines only.
   Keep hero D on homepage polish. NO tartan. NO Habitation site edits.
   NOT for IONOS / live.
   ========================================================================== */

:root {
  --ac-ink: #071628;
  --ac-ink-soft: #1a2f46;
  --ac-muted: #3f536a;
  --ac-ground: #eef0f3;
  --ac-panel: #ffffff;
  --ac-cine: #05080e;
  --ac-line: rgba(11, 31, 58, 0.11);
  --ac-line-strong: rgba(11, 31, 58, 0.18);
  --ac-gold: #C9A227;
  --ac-blue: #1E6FFF;
  --ac-blue-bright: #3AA0FF;
  --ac-blue-soft: rgba(30, 111, 255, 0.28);
  --ac-blue-hair: rgba(58, 160, 255, 0.55);
  --ac-blue-whisper: rgba(30, 111, 255, 0.14);
  --ac-shadow-xs: 0 1px 1px rgba(11, 31, 58, 0.045);
  --ac-shadow: 0 1px 2px rgba(11, 31, 58, 0.045), 0 10px 28px rgba(11, 31, 58, 0.07), 0 24px 48px rgba(11, 31, 58, 0.035);
  --ac-shadow-md: 0 2px 4px rgba(11, 31, 58, 0.05), 0 14px 32px rgba(11, 31, 58, 0.09), 0 32px 64px rgba(11, 31, 58, 0.045);
  --ac-shadow-elev: 0 4px 10px rgba(11, 31, 58, 0.07), 0 18px 44px rgba(11, 31, 58, 0.11);
  --ac-shadow-header: 0 1px 0 rgba(255,255,255,0.06), 0 8px 20px rgba(0, 0, 0, 0.22), 0 24px 56px rgba(0, 0, 0, 0.28);
  --ac-inset-panel: inset 0 1px 0 rgba(255,255,255,0.78), inset 0 -1px 0 rgba(11, 31, 58, 0.035);
  --ac-inset-media: inset 0 1px 2px rgba(11, 31, 58, 0.10), inset 0 10px 28px rgba(11, 31, 58, 0.06), inset 0 0 0 1px rgba(0, 176, 253, 0.10);
  --ac-radius: 0.15rem;
}


/* ---- Kill Habitation / festive chrome sitewide ---- */
.saltire-ribbon,
.hero-saltire-corner,
.coming-soon-banner,
.cs-marquee {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  max-height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}
.tartan-strip,
hr.tartan-strip,
.main-wrapper .tartan-strip {
  display: block !important;
  height: 1px !important;
  border: none !important;
  background: var(--ac-line) !important;
  background-image: none !important;
  opacity: 1 !important;
  margin: 0 !important;
}
.main-wrapper .tartan-rule,
.section-title-wrap .tartan-rule {
  background-image: none !important;
  background: linear-gradient(
    90deg,
    transparent 0%,
    var(--ac-blue-hair) 20%,
    var(--ac-blue) 50%,
    var(--ac-blue-hair) 80%,
    transparent 100%
  ) !important;
  height: 1px !important;
  width: 3.5rem !important;
  max-width: 3.5rem !important;
  border-radius: 0 !important;
  opacity: 1 !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* ---- Page ground / typography ---- */
body {
  background: var(--ac-ground) !important;
  color: var(--ac-ink) !important;
  font-family: 'Montserrat', 'Segoe UI', Roboto, Arial, sans-serif !important;
  -webkit-font-smoothing: antialiased;
}
.main-wrapper {
  background: var(--ac-ground) !important;
}
.main-wrapper h1,
.main-wrapper h2,
.main-wrapper h3,
.page-header h1,
.section-title-wrap h2 {
  letter-spacing: -0.01em;
  font-weight: 650 !important;
  color: var(--ac-ink) !important;
}
.main-wrapper .lead,
.main-wrapper .lead-soft,
.section-title-wrap .lead-soft,
.page-header .lead {
  color: var(--ac-muted) !important;
  font-weight: 400 !important;
  letter-spacing: 0.01em;
  line-height: 1.65 !important;
}
.main-wrapper .text-muted { color: var(--ac-muted) !important; }

/* Eyebrow / badge — corporate tracked caps */
.saltire-badge,
.main-wrapper .saltire-badge,
.page-kicker,
.section-kicker {
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid var(--ac-blue-soft) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: var(--ac-ink-soft) !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  font-size: 0.68rem !important;
  font-weight: 600 !important;
  padding: 0 0 0.45rem 0 !important;
  display: inline-block !important;
}
.saltire-badge img { display: none !important; }

/* ---- Page headers (inner pages) — quieter Audi/RR charcoal ---- */
.page-header {
  position: relative !important;
  background: #14181f !important;
  background-image: none !important;
  color: #f5f7fa !important;
  padding: clamp(2.75rem, 6vh, 4.25rem) 0 !important;
  border-bottom: 1px solid rgba(210, 214, 220, 0.18) !important;
  box-shadow: var(--ac-shadow-header) !important;
  overflow: hidden !important;
}
.page-header::before {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.04) 0%, transparent 42%),
    linear-gradient(90deg, rgba(255,255,255,0.03) 0%, transparent 48%);
}
.page-header .container { position: relative; z-index: 1; }
.page-header h1 {
  color: #ffffff !important;
  font-size: clamp(1.85rem, 3.6vw, 2.75rem) !important;
  font-weight: 650 !important;
  letter-spacing: -0.015em !important;
  margin-bottom: 0.65rem !important;
}
.page-header .lead,
.page-header p {
  color: rgba(245, 247, 250, 0.72) !important;
  max-width: 38rem;
  font-size: 0.98rem !important;
}
.page-header .breadcrumb,
.page-header .breadcrumb-item,
.page-header .breadcrumb-item a {
  color: rgba(245, 247, 250, 0.5) !important;
  font-size: 0.72rem !important;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.page-header .breadcrumb-item.active { color: rgba(245, 247, 250, 0.78) !important; }
.page-header .breadcrumb-item + .breadcrumb-item::before {
  color: rgba(58, 160, 255, 0.45) !important;
}

/* ---- Sections — calm editorial rhythm ---- */
.main-wrapper > section {
  padding-top: clamp(2.75rem, 5.5vw, 4.5rem) !important;
  padding-bottom: clamp(2.75rem, 5.5vw, 4.5rem) !important;
}
.main-wrapper > section.trust-strip,
.main-wrapper > section.trust-strip--carousel {
  padding-top: 1.15rem !important;
  padding-bottom: 1.15rem !important;
}
.main-wrapper section.scenic-wash {
  background-image: none !important;
  background-color: var(--ac-ground) !important;
}
.main-wrapper section.scenic-wash::before,
.main-wrapper section.scenic-wash::after {
  display: none !important;
  content: none !important;
}
.main-wrapper .section-cream,
.main-wrapper .section-cream-deep,
.main-wrapper #mot-prices,
.main-wrapper #repairs {
  background: #eef0f3 !important;
}
.main-wrapper .section-white,
.main-wrapper #what-is {
  background: #f7f8fa !important;
}
.main-wrapper section.section-navy {
  background: var(--ac-cine) !important;
  color: rgba(245, 247, 250, 0.88) !important;
  border-top: 1px solid rgba(58, 160, 255, 0.18) !important;
  border-bottom: 1px solid rgba(58, 160, 255, 0.12) !important;
}
.main-wrapper section.section-navy h2,
.main-wrapper section.section-navy h3 {
  color: #ffffff !important;
}
.main-wrapper section.section-navy .text-muted,
.main-wrapper section.section-navy .lead-soft {
  color: rgba(245, 247, 250, 0.62) !important;
}

.section-title-wrap {
  margin-bottom: clamp(1.75rem, 3vw, 2.75rem) !important;
  text-align: center;
}
.section-title-wrap h2 {
  font-size: clamp(1.55rem, 2.6vw, 2.15rem) !important;
  margin-top: 0.85rem !important;
}
.section-title-wrap .lead-soft {
  margin-top: 1rem !important;
  max-width: 36rem;
  margin-left: auto;
  margin-right: auto;
}

@media (min-width: 992px) {
  .main-wrapper > section > .container,
  .main-wrapper > .cta-band > .container,
  .page-header > .container,
  footer.site-footer > .container {
    max-width: 70rem;
    padding-left: 2.5rem !important;
    padding-right: 2.5rem !important;
  }
}

/* ---- Cards / panels — soft shadow, thin rules ---- */
.card-hc,
.main-wrapper .card-hc,
.main-wrapper .why-card,
.main-wrapper .define-panel,
.main-wrapper .pkg-card,
.main-wrapper .form-card,
.main-wrapper .trip-card,
.main-wrapper .mosaic-card,
.faq-item,
.accordion-item {
  background: var(--ac-panel) !important;
  border: 1px solid var(--ac-line) !important;
  border-radius: var(--ac-radius) !important;
  box-shadow: var(--ac-shadow) !important;
  transition: border-color 0.18s ease, box-shadow 0.18s ease;
}
.card-hc:hover,
.main-wrapper .card-hc:hover,
.main-wrapper .why-card:hover,
.main-wrapper .pkg-card:hover {
  transform: none !important;
  border-color: var(--ac-blue-soft) !important;
  box-shadow: 0 1px 2px rgba(11, 31, 58, 0.04), 0 14px 32px rgba(11, 31, 58, 0.08) !important;
}
.main-wrapper .icon-circle {
  background: transparent !important;
  color: var(--ac-blue) !important;
  border: 1px solid var(--ac-blue-soft) !important;
  box-shadow: none !important;
  border-radius: 50% !important;
}
.main-wrapper .price-tag {
  color: var(--ac-ink) !important;
  letter-spacing: 0.02em;
  font-weight: 650 !important;
}
.main-wrapper section.section-navy .card-hc {
  background: rgba(255, 255, 255, 0.03) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
  box-shadow: none !important;
  color: rgba(245, 247, 250, 0.9) !important;
}
.main-wrapper section.section-navy .card-hc h3 { color: #fff !important; }
.main-wrapper section.section-navy .card-hc .text-muted {
  color: rgba(245, 247, 250, 0.55) !important;
}

/* FAQ accordion quiet */
.accordion-button {
  background: var(--ac-panel) !important;
  color: var(--ac-ink) !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em;
  box-shadow: none !important;
  border-radius: 0 !important;
}
.accordion-button:not(.collapsed) {
  background: #f7f8fa !important;
  color: var(--ac-ink) !important;
  box-shadow: inset 0 -1px 0 var(--ac-blue-whisper) !important;
}
.accordion-button:focus {
  box-shadow: inset 0 0 0 1px var(--ac-blue-soft) !important;
  border-color: var(--ac-blue-soft) !important;
}
.accordion-body { color: var(--ac-ink-soft) !important; }

/* Forms */
.main-wrapper .form-control,
.main-wrapper .form-select,
.form-card .form-control,
.form-card .form-select {
  border: 1px solid var(--ac-line-strong) !important;
  border-radius: var(--ac-radius) !important;
  box-shadow: none !important;
  padding: 0.7rem 0.85rem !important;
  background: #fff !important;
}
.main-wrapper .form-control:focus,
.main-wrapper .form-select:focus {
  border-color: var(--ac-blue-hair) !important;
  box-shadow: 0 0 0 3px var(--ac-blue-whisper) !important;
}
.main-wrapper .form-label {
  font-size: 0.72rem !important;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-weight: 600 !important;
  color: var(--ac-ink-soft) !important;
}

/* ---- Buttons — quiet corporate (not Habitation pills) ---- */
/* Body/CTA-band books only — NEVER override sidebar quiet CTAs */
.main-wrapper .btn-book:not(.hero-cta),
.cta-band .btn-book,
.sticky-book-bar .btn-book {
  background: var(--ac-blue) !important;
  border: 1px solid var(--ac-blue) !important;
  color: #fff !important;
  border-radius: var(--ac-radius) !important;
  box-shadow: none !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  font-weight: 600 !important;
  font-size: 0.78rem !important;
}
.main-wrapper .btn-book:not(.hero-cta):hover,
.main-wrapper .btn-book:not(.hero-cta):focus,
.cta-band .btn-book:hover,
.sticky-book-bar .btn-book:hover {
  background: var(--ac-blue-bright) !important;
  border-color: var(--ac-blue-bright) !important;
  color: #fff !important;
  filter: none !important;
}
.main-wrapper .btn-book-service,
.sticky-book-bar .btn-book-service {
  background: transparent !important;
  border: 1px solid var(--ac-line-strong) !important;
  color: var(--ac-ink) !important;
  border-radius: var(--ac-radius) !important;
  box-shadow: none !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  font-weight: 550 !important;
  font-size: 0.74rem !important;
}
.main-wrapper .btn-book-service:hover,
.sticky-book-bar .btn-book-service:hover {
  border-color: var(--ac-blue-hair) !important;
  color: var(--ac-blue) !important;
  background: rgba(30, 111, 255, 0.04) !important;
}
/* mcl5r: former quiet CTA shield REMOVED — polished lift/gold CTAs win (see end block) */
/* (sidebar Call / Coming Soon / Enquire are cards, not typography links) */
.main-wrapper .btn-outline-primary,
.main-wrapper .btn-outline-light,
.main-wrapper .btn-outline-gold {
  border-radius: var(--ac-radius) !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  font-weight: 550 !important;
  font-size: 0.74rem !important;
  box-shadow: none !important;
}
.main-wrapper .btn-outline-primary {
  border-color: var(--ac-blue-soft) !important;
  color: var(--ac-blue) !important;
}
.main-wrapper .btn-outline-primary:hover {
  background: var(--ac-blue) !important;
  border-color: var(--ac-blue) !important;
  color: #fff !important;
}

/* Keep hero D CTAs as designed in homepage polish — lightly ensure radius */
.hero-cta-row .hero-cta { border-radius: var(--ac-radius) !important; }

/* ---- CTA band ---- */
.cta-band {
  background: var(--ac-cine) !important;
  border-top: 1px solid rgba(58, 160, 255, 0.2) !important;
  box-shadow: none !important;
  padding-top: clamp(2.5rem, 5vw, 3.75rem) !important;
  padding-bottom: clamp(2.5rem, 5vw, 3.75rem) !important;
}
.cta-band h2 {
  color: #fff !important;
  letter-spacing: -0.01em;
  font-weight: 650 !important;
}
.cta-band p { color: rgba(245, 247, 250, 0.68) !important; }
.cta-band .btn-light {
  background: transparent !important;
  border: 1px solid rgba(255, 255, 255, 0.55) !important;
  color: #fff !important;
  border-radius: var(--ac-radius) !important;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-weight: 600 !important;
  font-size: 0.78rem !important;
  box-shadow: none !important;
}
.cta-band .btn-light:hover {
  background: rgba(255, 255, 255, 0.08) !important;
  border-color: #fff !important;
  color: #fff !important;
}
.cta-band .btn-outline-light {
  border-radius: var(--ac-radius) !important;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-size: 0.78rem !important;
}

/* ---- Footer — Habitation Checks Scotland match (cards + gradient + phoenix wm)
   LOCAL PREVIEW ONLY. Albyn phone/links/branding. Do not edit Habitation. ---- */
footer.site-footer,
.site-footer {
  position: relative !important;
  overflow: hidden !important;
  padding: 2.6rem 0 1.4rem !important;
  color: rgba(245, 247, 250, 0.78) !important;
  border-top: none !important;
  background:
    radial-gradient(90% 70% at 12% 0%, rgba(201, 162, 39, 0.14) 0%, transparent 50%),
    radial-gradient(80% 60% at 88% 100%, rgba(22, 58, 102, 0.55) 0%, transparent 55%),
    linear-gradient(165deg, #102a4a 0%, #0A1F3D 42%, #071526 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.08),
    0 -12px 40px rgba(0, 0, 0, 0.18) !important;
}
footer.site-footer::before,
.site-footer::before {
  content: "" !important;
  display: block !important;
  height: 2px !important;
  margin: -2.6rem 0 1.7rem !important;
  opacity: 1 !important;
  background-image: none !important;
  background: #C9A227 !important;
  box-shadow: none !important;
}
/* Phoenix bird watermark — Habitation phoenixWmLive1 size/bleed match (Chelsea)
   READ-ONLY ref: habitation-preview/prod-push-phoenixWmLive1/css/site-polish.css
   Footer overflow:hidden clips the bleed; no Habitation edits. */
footer.site-footer::after,
.site-footer::after {
  content: "" !important;
  position: absolute !important;
  right: -8% !important;
  bottom: -4% !important;
  width: min(460px, 52vw) !important;
  height: min(400px, 58vw) !important;
  background: url("../img/phoenix-bird-watermark.png") center / contain no-repeat !important;
  opacity: 0.16 !important;
  pointer-events: none !important;
  z-index: 0 !important;
  transform: rotate(-8deg) translate(2%, 10%) !important;
  filter: drop-shadow(0 0 1px rgba(201, 168, 76, 0.15)) !important;
}
footer.site-footer > .container,
.site-footer > .container {
  position: relative !important;
  z-index: 1 !important;
  max-width: 1100px !important;
  padding-top: 0 !important;
}
footer.site-footer .hc-coos-footer-row.row.g-4 {
  --bs-gutter-x: 1rem !important;
  --bs-gutter-y: 0 !important;
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  justify-content: space-between !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
footer.site-footer .hc-coos-footer-row > [class*="col-"] {
  float: none !important;
  padding-left: 0.5rem !important;
  padding-right: 0.5rem !important;
}
footer.site-footer .hc-coos-footer-brand {
  flex: 1 1 40% !important;
  max-width: 40% !important;
  width: 40% !important;
}
footer.site-footer .hc-coos-footer-links {
  flex: 0 0 22% !important;
  max-width: 22% !important;
  width: 22% !important;
}
footer.site-footer .hc-coos-footer-contact {
  flex: 1 1 36% !important;
  max-width: 36% !important;
  width: 36% !important;
  position: relative !important;
  z-index: 2 !important;
}
@media (max-width: 991.98px) {
  footer.site-footer .hc-coos-footer-row.row.g-4 { flex-wrap: wrap !important; }
  footer.site-footer .hc-coos-footer-brand,
  footer.site-footer .hc-coos-footer-links,
  footer.site-footer .hc-coos-footer-contact {
    flex: 1 1 100% !important;
    max-width: 100% !important;
    width: 100% !important;
    margin-bottom: 0.75rem !important;
  }
}
footer.site-footer .hc-coos-footer-brand,
footer.site-footer .hc-coos-footer-links,
footer.site-footer .hc-coos-footer-contact {
  display: flex !important;
  flex-direction: column !important;
  height: 100%;
  min-height: 100%;
  padding: 1.1rem 1.15rem 1.15rem !important;
  background: linear-gradient(165deg, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0.03) 100%);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 14px;
  box-shadow:
    0 10px 28px rgba(0, 0, 0, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.12);
}
footer.site-footer .hc-coos-footer-extra {
  font-size: 0.84rem !important;
  line-height: 1.45 !important;
  margin: 0 0 1rem !important;
  color: #b8c6d4 !important;
  font-style: italic;
}
footer.site-footer .hc-coos-footer-phoenix.phoenix-footer-brand,
footer.site-footer .phoenix-footer-brand.hc-coos-footer-phoenix {
  display: inline-flex !important;
  width: max-content !important;
  max-width: 100% !important;
  align-self: flex-start !important;
  align-items: center !important;
  gap: 0.55rem !important;
  margin: auto 0 0 !important;
  font-size: 0.8rem !important;
  padding: 0.4rem 0.85rem 0.4rem 0.4rem !important;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.05)) !important;
  border: 2px solid #9B111E !important;
  outline: 1px solid rgba(155, 17, 30, 0.55);
  border-radius: 0.35rem;
  box-shadow:
    0 6px 16px rgba(0, 0, 0, 0.3),
    inset 0 1px 0 rgba(255, 255, 255, 0.14) !important;
  color: rgba(245, 247, 250, 0.88) !important;
}
footer.site-footer .hc-coos-footer-phoenix .phoenix-icon {
  width: 34px !important;
  height: 34px !important;
  max-height: 34px !important;
  object-fit: contain !important;
}
footer.site-footer .hc-coos-footer-phoenix strong {
  color: #C9A227 !important;
  font-weight: 700 !important;
}
footer.site-footer h5,
.site-footer h5,
.site-footer .h5 {
  color: #fff !important;
  font-size: 1.05rem !important;
  margin-bottom: 0.85rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em !important;
  text-transform: none !important;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
}
footer.site-footer img[alt*="logo"],
.site-footer img[alt="Albyn MOT logo"] {
  height: 40px !important;
  width: auto !important;
  max-width: 140px !important;
  filter: drop-shadow(0 2px 6px rgba(0, 0, 0, 0.35)) !important;
  background: transparent !important;
}
footer.site-footer p {
  font-size: 0.88rem !important;
  line-height: 1.5 !important;
  margin-bottom: 0.85rem !important;
  color: #cfd9e2 !important;
}
footer.site-footer a { color: #cfd9e2 !important; text-decoration: none; }
footer.site-footer a:hover { color: #e3c56a !important; }
footer.site-footer .list-unstyled { margin-bottom: 0 !important; }
footer.site-footer .list-unstyled li {
  margin-bottom: 0.4rem !important;
  font-size: 0.9rem !important;
  line-height: 1.45 !important;
}
footer.site-footer .footer-facts li {
  display: flex;
  align-items: flex-start;
  gap: 0.55rem;
  margin-bottom: 0.55rem !important;
}
footer.site-footer .footer-facts li i {
  flex: 0 0 auto;
  width: 1.55rem;
  height: 1.55rem;
  margin-top: 0.05em;
  margin-right: 0 !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.78rem !important;
  color: #dce6ef !important;
  background: linear-gradient(160deg, rgba(255, 255, 255, 0.14), rgba(255, 255, 255, 0.04));
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 0.4rem;
  box-shadow:
    0 2px 6px rgba(0, 0, 0, 0.25),
    inset 0 1px 0 rgba(255, 255, 255, 0.18);
}
footer.site-footer .footer-facts .me-2 { margin-right: 0 !important; }
footer.site-footer .footer-bottom {
  margin-top: 1.35rem !important;
  padding-top: 1rem !important;
  border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
}
footer.site-footer .footer-copy {
  font-size: 0.82rem !important;
  line-height: 1.4 !important;
  margin: 0 !important;
  color: #9aadb8 !important;
}
.site-footer .phoenix-badge { display: none !important; }

/* ---- Sticky mobile bar — quieter ---- */
.sticky-book-bar {
  background: rgba(20, 24, 31, 0.96) !important;
  border-top: 1px solid rgba(210, 214, 220, 0.18) !important;
  box-shadow: none !important;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}
.sticky-book-bar .btn {
  border-radius: var(--ac-radius) !important;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-size: 0.65rem !important;
  box-shadow: none !important;
}
.sticky-book-bar .tel-link {
  color: rgba(245, 247, 250, 0.88) !important;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-size: 0.68rem !important;
}

/* ---- Partners / class testing pages inherit calm ---- */
.partners-hero,
.partners-split,
.class-hero,
.class-explain {
  border-radius: 0 !important;
}
.main-wrapper .scenic-photo {
  border-radius: var(--ac-radius) !important;
  overflow: hidden;
  box-shadow: var(--ac-shadow) !important;
  border: 1px solid var(--ac-line) !important;
}
.main-wrapper .scenic-photo img:not(.mosaic-saltire) {
  filter: saturate(0.92) contrast(1.02);
}

/* Soft blue hairline accents under key titles on dark */
.main-wrapper section.section-navy .section-title-wrap .tartan-rule,
.cta-band .tartan-rule {
  background: linear-gradient(
    90deg,
    transparent,
    var(--ac-blue-hair),
    var(--ac-blue-bright),
    var(--ac-blue-hair),
    transparent
  ) !important;
}

/* Login pages */
.login-panel,
.portal-card,
.main-wrapper .card.shadow,
.main-wrapper .card.shadow-sm {
  border: 1px solid var(--ac-line) !important;
  border-radius: var(--ac-radius) !important;
  box-shadow: var(--ac-shadow) !important;
  background: #fff !important;
}

/* Trust carousel soft-blue active dot (when site CSS loads with polish) */
.trust-dot.is-active {
  background: var(--ac-blue-hair) !important;
}
.trust-strip .bi-check-circle-fill {
  color: var(--ac-blue-bright) !important;
}


/* ---- Extra quiet: kill leftover festive / Habitation noise ---- */
.main-wrapper .mosaic-saltire,
.saltire-corner,
.page-header .saltire,
img[src*="saltire"] {
  display: none !important;
}
/* About / depot fact icons — soft blue, not Habitation gold */
.main-wrapper .bi-geo-alt-fill,
.main-wrapper .bi-telephone-fill,
.main-wrapper .bi-clock-fill,
.main-wrapper .bi-envelope-fill,
.main-wrapper .text-warning,
.main-wrapper i.text-warning {
  color: rgba(30, 111, 255, 0.75) !important;
}
/* Faint saltire / X wash backgrounds */
.main-wrapper [style*="saltire"],
.main-wrapper .section-cream::before,
.main-wrapper .section-cream-deep::before,
.main-wrapper .section-white::before {
  background-image: none !important;
  opacity: 0 !important;
}
body::before,
.main-wrapper::before {
  content: none !important;
  background: none !important;
}

/* ---- LAPTOP FIT + overflow (Chelsea 1280–1440) · corp10 ----
   ROOT CAUSE (corp9 insufficient): body/portal max-width used 100vw.
   100vw INCLUDES the vertical scrollbar gutter (~12–17px), so
   margin-left(210) + width(100vw-210) = 100vw > clientWidth → content
   runs off the RIGHT (or overflow-x:hidden merely CLIPPED it — Chelsea
   still saw cutoff). Fix: structural widths use 100% ONLY, never 100vw.
   Also: solid 210px sidebar (no 15vw), contain phoenix ::after, portal,
   hero logo, carousel track, footer cards.
*/
html {
  max-width: 100% !important;
  overflow-x: clip !important;
}
body {
  max-width: 100% !important;
  overflow-x: clip !important;
}
@media (min-width: 992px) {
  :root {
    /* Solid px — never vw for sidebar (vw fought min-width + 100vw body) */
    --hc-sidebar-width: 210px;
    --hc-sidebar-min-width: 210px;
    --hc-sidebar-actual: 210px;
  }
  /* Homepage (top nav) stays full width — do NOT offset body */
  body.mcl-landing {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow-x: clip !important;
    box-sizing: border-box !important;
  }
  body:not(.mcl-landing) {
    width: auto !important;
    max-width: none !important;
    margin-left: 210px !important;
    margin-right: 0 !important;
    overflow-x: clip !important;
    box-sizing: border-box !important;
  }
  /* Inner pages with fixed sidebar column only */
  body:has(.navbar-hc.sticky-top) .main-wrapper,
  body:not(.mcl-home) .main-wrapper {
    /* keep existing main-wrapper rules elsewhere */
  }
  .navbar-hc {
    width: var(--hc-sidebar-actual) !important;
    min-width: var(--hc-sidebar-actual) !important;
    max-width: var(--hc-sidebar-actual) !important;
  }
  .main-wrapper,
  .main-wrapper > *,
  footer.site-footer,
  .site-footer {
    max-width: 100% !important;
    box-sizing: border-box !important;
    min-width: 0 !important;
  }
  .main-wrapper {
    overflow-x: clip !important;
    width: 100% !important;
    min-width: 0 !important;
  }
  /* Containers fit remaining column — not Bootstrap xl 1140 on a 1070 main */
  .main-wrapper > section > .container,
  .main-wrapper > .cta-band > .container,
  .main-wrapper > footer.site-footer > .container,
  .page-header > .container,
  footer.site-footer > .container,
  .trust-strip > .container,
  .hero .container {
    max-width: min(70rem, 100%) !important;
    width: 100% !important;
    box-sizing: border-box !important;
    padding-left: clamp(1rem, 1.6vw, 1.75rem) !important;
    padding-right: clamp(1rem, 1.6vw, 1.75rem) !important;
  }
  /* Hero copy / logo / CTAs wrap inside remaining width (no vw logo sizes) */
  .hero,
  .hero.hero--cinematic,
  .hero.hero--option-d,
  .hero-media {
    overflow: hidden !important;
    max-width: 100% !important;
  }
  .hero-media img,
  .hero-media video {
    transform: none !important; /* scale(1.02) spilled past hero edge */
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }
  .hero-copy {
    max-width: min(44rem, 100%) !important;
    padding-left: clamp(1.1rem, 2.5%, 2.5rem) !important;
    padding-right: clamp(1rem, 2%, 1.5rem) !important;
    box-sizing: border-box !important;
  }
  .hero-logo {
    width: min(240px, 36%) !important;
    max-width: min(240px, 90%) !important;
  }
  .hero-cta-row {
    flex-wrap: wrap !important;
    max-width: 100% !important;
  }
  .hero-cta-row .hero-cta {
    max-width: 100% !important;
  }
  /* Portal cluster: fixed top-right of VIEWPORT — inset from edge, no 100vw max */
  .portal-login-cluster--desktop {
    top: 0.85rem !important;
    right: 0.85rem !important;
    left: auto !important;
    max-width: calc(100% - var(--hc-sidebar-actual) - 1.5rem) !important;
    flex-wrap: wrap !important;
    justify-content: flex-end !important;
    box-sizing: border-box !important;
  }
  /* Trust marquee track is intentionally wide — must never expand document */
  .trust-strip.trust-strip--carousel,
  .trust-carousel,
  .trust-carousel-viewport {
    overflow-x: clip !important;
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }
  .trust-carousel-track {
    /* max-content width OK inside clipped viewport; do not affect ancestors */
    max-width: none !important;
  }
  /* Footer cards + phoenix watermark must stay inside footer box */
  footer.site-footer,
  .site-footer {
    overflow: hidden !important;
    overflow-x: clip !important;
    max-width: 100% !important;
  }
  footer.site-footer::after,
  .site-footer::after {
    /* Habitation match — same size/bleed; overflow:hidden clips at footer edge */
    right: -8% !important;
    bottom: -4% !important;
    width: min(460px, 52vw) !important;
    height: min(400px, 58vw) !important;
    transform: rotate(-8deg) translate(2%, 10%) !important;
  }
  footer.site-footer .hc-coos-footer-row.row.g-4 {
    max-width: 100% !important;
    min-width: 0 !important;
  }
  footer.site-footer .hc-coos-footer-row > [class*="col-"],
  footer.site-footer .hc-coos-footer-brand,
  footer.site-footer .hc-coos-footer-links,
  footer.site-footer .hc-coos-footer-contact {
    min-width: 0 !important;
    box-sizing: border-box !important;
  }
  footer.site-footer .hc-coos-footer-phoenix.phoenix-footer-brand,
  footer.site-footer .phoenix-footer-brand.hc-coos-footer-phoenix {
    width: auto !important;
    max-width: 100% !important;
  }
}

@media (min-width: 992px) and (max-width: 1440px) {
  :root {
    --hc-sidebar-width: 210px;
    --hc-sidebar-min-width: 210px;
  }
  .hero,
  .hero.hero--cinematic,
  .hero.hero--option-d {
    min-height: clamp(480px, 72vh, 720px) !important;
  }
  .hero-copy {
    padding-bottom: clamp(2rem, 5vh, 3.5rem) !important;
  }
  .hero-logo {
    width: min(220px, 34%) !important;
    max-width: 220px !important;
  }
  .main-wrapper > section > .container,
  .main-wrapper > .cta-band > .container,
  .page-header > .container,
  footer.site-footer > .container,
  .trust-strip > .container {
    padding-left: 1.15rem !important;
    padding-right: 1.15rem !important;
  }
}

/* ---- Under-hero marquee — unmistakable motion at laptop widths ---- */
.trust-strip.trust-strip--carousel {
  overflow: hidden !important;
  width: 100% !important;
  max-width: 100% !important;
}
.trust-strip.trust-strip--carousel > .container {
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  width: 100% !important;
}
.trust-carousel,
.trust-carousel-viewport {
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden !important;
}
.trust-carousel-viewport {
  min-height: 2.75rem !important;
}
.trust-carousel--marquee .trust-carousel-track {
  animation: trust-marquee 14s linear infinite !important;
  will-change: transform;
}
.trust-carousel-slide {
  padding: 0 2.1rem !important;
  font-size: 0.78rem !important;
}
.trust-carousel-slide span {
  font-size: 0.74rem !important;
  letter-spacing: 0.14em !important;
}
@media (min-width: 992px) and (max-width: 1440px) {
  .trust-carousel--marquee .trust-carousel-track {
    animation-duration: 12s !important;
  }
  .trust-carousel-slide {
    padding: 0 1.65rem !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  .trust-carousel--marquee .trust-carousel-track {
    animation: none !important;
  }
}

/* mcl5r: quiet CTA reinforcement REMOVED — was stripping polished cards + leaving Coming Soon ::after hairline */

/* ==========================================================================
   mcl5i — Inner pages × McLaren.com language (LOCAL PREVIEW ONLY)
   Fix: double Saltire by Customer Login = .page-header::after (style.css)
   decorative flag at top-right overlapping the portal cluster.
   Soften cream Habitation content → cool corporate grid + Albyn palette
   (navy / gold / soft cyan #00B0FD). Sidebar kept. No Habitation package edits.
   ========================================================================== */

:root {
  --ac-cyan: #00B0FD;
  --ac-cyan-bright: #3AA0FF;
  --ac-cyan-hair: rgba(0, 176, 253, 0.45);
  --ac-cyan-soft: rgba(0, 176, 253, 0.22);
  --ac-cyan-whisper: rgba(0, 176, 253, 0.10);
  --ac-ground: #eef0f3;
  --ac-ground-soft: #e6e9ee;
  --ac-panel: #ffffff;
  --ac-ink: #071628;
  --ac-ink-soft: #1a2f46;
  --ac-muted: #3f536a;
  --ac-cine: #0a0e14;
  --ac-gold: #C9A227;
  --ac-line: rgba(11, 31, 58, 0.11);
  --ac-line-strong: rgba(11, 31, 58, 0.18);
  --ac-shadow-xs: 0 1px 1px rgba(11, 31, 58, 0.045);
  --ac-shadow: 0 1px 2px rgba(11, 31, 58, 0.045), 0 10px 28px rgba(11, 31, 58, 0.07), 0 24px 48px rgba(11, 31, 58, 0.035);
  --ac-shadow-md: 0 2px 4px rgba(11, 31, 58, 0.05), 0 14px 32px rgba(11, 31, 58, 0.09), 0 32px 64px rgba(11, 31, 58, 0.045);
  --ac-shadow-elev: 0 4px 10px rgba(11, 31, 58, 0.07), 0 18px 44px rgba(11, 31, 58, 0.11);
  --ac-shadow-header: 0 1px 0 rgba(255,255,255,0.06), 0 8px 20px rgba(0, 0, 0, 0.22), 0 24px 56px rgba(0, 0, 0, 0.28);
  --ac-inset-panel: inset 0 1px 0 rgba(255,255,255,0.78), inset 0 -1px 0 rgba(11, 31, 58, 0.035);
  --ac-inset-media: inset 0 1px 2px rgba(11, 31, 58, 0.10), inset 0 10px 28px rgba(11, 31, 58, 0.06), inset 0 0 0 1px rgba(0, 176, 253, 0.10);
  --ac-radius: 0.1rem;
  --ac-grid-max: 70rem;
  --ac-gutter: clamp(1.15rem, 2.2vw, 2.75rem);
}

/* ---- ROOT CAUSE FIX: decorative Saltire on page headers ----
   style.css .page-header::after placed saltire.svg at top-right —
   same zone as Book Now / Staff / Customer portal cluster → double-flag look.
   Replaced below with a 1px cyan hairline (no flag asset). */

/* Kill ALL Saltire watermarks / festive chrome on inner content */
.main-wrapper section::after,
.main-wrapper section.section-white::after,
.main-wrapper section.section-light::after,
.main-wrapper section.section-cream-deep::after,
.main-wrapper section.bg-light-hc::after,
.main-wrapper .bg-light-hc::after,
.main-wrapper section:not(.section-navy):not(.cta-band):not(.hero):not(.trust-strip)::after,
.main-wrapper section.scenic-wash::before,
.main-wrapper section.scenic-wash::after {
  display: none !important;
  content: none !important;
  background: none !important;
  background-image: none !important;
  opacity: 0 !important;
}
.saltire-ribbon,
.hero-saltire-corner,
.main-wrapper .mosaic-saltire,
.saltire-corner,
.page-header .saltire,
.define-panel .saltire-float,
img[src*="saltire"],
.saltire-badge img,
.ribbon-flag-chips,
.scotland-flag-chips,
.flag-chip-pill,
.mosaic-flag-chip {
  display: none !important;
  visibility: hidden !important;
}

/* Quiet eyebrow — no flag glyph */
.saltire-badge,
.main-wrapper .saltire-badge,
.page-kicker,
.section-kicker {
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid var(--ac-cyan-soft) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: rgba(245, 247, 250, 0.72) !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  font-size: 0.64rem !important;
  font-weight: 600 !important;
  padding: 0 0 0.5rem 0 !important;
  display: inline-block !important;
}
.page-header .saltire-badge,
.page-header .page-kicker {
  color: rgba(245, 247, 250, 0.72) !important;
  border-bottom-color: var(--ac-cyan-hair) !important;
}
.main-wrapper section .saltire-badge,
.main-wrapper section .page-kicker,
.main-wrapper section .section-kicker {
  color: var(--ac-ink-soft) !important;
  border-bottom-color: var(--ac-cyan-soft) !important;
}

/* ---- Page header — McLaren-quiet charcoal, more air ---- */
.page-header,
.page-header.scenic-wash {
  position: relative !important;
  background: var(--ac-cine) !important;
  background-image: none !important;
  color: #f5f7fa !important;
  padding: clamp(3.25rem, 7vh, 5rem) 0 clamp(2.75rem, 5.5vh, 4rem) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
  box-shadow: var(--ac-shadow-header) !important;
  overflow: hidden !important;
  min-height: 0 !important;
}
.page-header::before,
.page-header.scenic-wash::before {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.035) 0%, transparent 48%),
    linear-gradient(90deg, rgba(0,176,253,0.06) 0%, transparent 42%) !important;
  opacity: 1 !important;
  height: auto !important;
  z-index: 0 !important;
}
/* Cyan hairline under header — replaces saltire.svg decoration (McLaren depth) */
.page-header::after,
.main-wrapper .page-header::after,
.page-header.scenic-wash::after {
  display: block !important;
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: auto !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 1px !important;
  max-height: 1px !important;
  background: linear-gradient(90deg,
    transparent 0%,
    var(--ac-cyan-hair) 18%,
    rgba(255,255,255,0.22) 50%,
    var(--ac-cyan-hair) 82%,
    transparent 100%) !important;
  background-image: linear-gradient(90deg,
    transparent 0%,
    var(--ac-cyan-hair) 18%,
    rgba(255,255,255,0.22) 50%,
    var(--ac-cyan-hair) 82%,
    transparent 100%) !important;
  opacity: 1 !important;
  visibility: visible !important;
  filter: none !important;
  box-shadow: none !important;
  z-index: 2 !important;
  pointer-events: none !important;
}
.page-header .container { position: relative; z-index: 1; max-width: var(--ac-grid-max) !important; }
.page-header h1 {
  color: #ffffff !important;
  font-size: clamp(1.95rem, 3.8vw, 2.85rem) !important;
  font-weight: 650 !important;
  letter-spacing: -0.02em !important;
  margin-bottom: 0.85rem !important;
  text-transform: none !important;
  line-height: 1.15 !important;
}
.page-header .lead,
.page-header p {
  color: rgba(245, 247, 250, 0.68) !important;
  max-width: 40rem;
  font-size: 1rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.01em;
  line-height: 1.65 !important;
}

/* ---- Content ground — cool corporate, not Habitation cream ---- */
body:not(.mcl-landing) {
  background: var(--ac-ground) !important;
}
.main-wrapper {
  background: var(--ac-ground) !important;
}
.main-wrapper > section,
.main-wrapper > section.bg-light-hc,
.main-wrapper .bg-light-hc,
.main-wrapper section.section-cream,
.main-wrapper section.section-cream-deep,
.main-wrapper section.section-light,
.main-wrapper section.scenic-wash {
  background: var(--ac-ground) !important;
  background-image: none !important;
  color: var(--ac-ink) !important;
}
.main-wrapper > section:nth-of-type(even),
.main-wrapper section.section-white,
.main-wrapper > section.bg-light-hc {
  background: #fafbfc !important;
}
.main-wrapper > section {
  padding-top: clamp(3rem, 6vw, 5rem) !important;
  padding-bottom: clamp(3rem, 6vw, 5rem) !important;
}

/* Invisible grid gutters */
@media (min-width: 992px) {
  .main-wrapper > section > .container,
  .main-wrapper > .cta-band > .container,
  .main-wrapper > footer.site-footer > .container,
  .page-header > .container,
  footer.site-footer > .container {
    max-width: var(--ac-grid-max) !important;
    padding-left: var(--ac-gutter) !important;
    padding-right: var(--ac-gutter) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* ---- Cards — flatter McLaren panels, less Habitation gold chrome ---- */
.main-wrapper .card-hc,
.main-wrapper .why-card,
.main-wrapper .define-panel,
.main-wrapper .pkg-card,
.main-wrapper .form-card,
.main-wrapper .trip-card,
.main-wrapper .class-card,
.main-wrapper .partners-step-card,
.faq-item,
.accordion-item {
  background: var(--ac-panel) !important;
  border: 1px solid var(--ac-line) !important;
  border-top: 1px solid var(--ac-line) !important;
  border-radius: var(--ac-radius) !important;
  box-shadow: var(--ac-shadow) !important;
  transition: border-color 0.18s ease, box-shadow 0.18s ease;
}
.main-wrapper .card-hc.border-warning,
.main-wrapper .card.border-warning {
  border-color: var(--ac-line) !important;
  border-left: 2px solid var(--ac-cyan-hair) !important;
}
.main-wrapper .card-hc:hover,
.main-wrapper .why-card:hover,
.main-wrapper .pkg-card:hover,
.main-wrapper .class-card:hover {
  transform: none !important;
  border-color: var(--ac-cyan-soft) !important;
  box-shadow: 0 1px 2px rgba(11, 31, 58, 0.03), 0 16px 36px rgba(11, 31, 58, 0.07) !important;
}
.main-wrapper .card-hc h2,
.main-wrapper .card-hc h3,
.main-wrapper .card-hc .h4,
.main-wrapper .card-hc .h5,
.main-wrapper .card-hc .h6 {
  letter-spacing: -0.01em;
  font-weight: 650 !important;
  color: var(--ac-ink) !important;
}
.main-wrapper .card-hc p,
.main-wrapper .card-hc li {
  color: var(--ac-ink-soft) !important;
  line-height: 1.65;
}

/* Section titles — spacious hierarchy */
.section-title-wrap {
  margin-bottom: clamp(2rem, 3.5vw, 3rem) !important;
}
.section-title-wrap h2 {
  font-size: clamp(1.45rem, 2.4vw, 2rem) !important;
  font-weight: 650 !important;
  letter-spacing: -0.015em !important;
  color: var(--ac-ink) !important;
}
.section-title-wrap .tartan-rule,
.main-wrapper .tartan-rule {
  background-image: none !important;
  background: linear-gradient(
    90deg,
    transparent 0%,
    var(--ac-cyan-hair) 20%,
    var(--ac-cyan) 50%,
    var(--ac-cyan-hair) 80%,
    transparent 100%
  ) !important;
  height: 1px !important;
  width: 3.25rem !important;
  max-width: 3.25rem !important;
  box-shadow: none !important;
}

/* Soft blue icons (not Habitation gold) */
.main-wrapper .bi-geo-alt-fill,
.main-wrapper .bi-telephone-fill,
.main-wrapper .bi-clock-fill,
.main-wrapper .bi-envelope-fill,
.main-wrapper i.text-warning,
.main-wrapper .text-warning {
  color: var(--ac-cyan) !important;
}

/* ---- Portal cluster — quieter McLaren chrome (no flags, no heavy fills) ---- */
.portal-login-cluster--desktop {
  top: 0.85rem !important;
  right: 0.85rem !important;
  gap: 0.45rem !important;
  z-index: 1050 !important;
}
.portal-login-cluster--desktop .btn-book,
.portal-login-cluster--desktop .btn-portal-login {
  position: relative !important;
  background: rgba(8, 12, 18, 0.55) !important;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.18) !important;
  color: rgba(245, 247, 250, 0.88) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  font-size: 0.62rem !important;
  font-weight: 550 !important;
  padding: 0.48rem 0.85rem !important;
}
.portal-login-cluster--desktop .btn-book {
  border-color: var(--ac-cyan-hair) !important;
  color: #fff !important;
}
.portal-login-cluster--desktop .btn-book:hover,
.portal-login-cluster--desktop .btn-portal-login:hover {
  background: rgba(0, 176, 253, 0.12) !important;
  border-color: var(--ac-cyan) !important;
  color: #fff !important;
}
/* Ensure no pseudo flag art on portal buttons */
.portal-login-cluster .btn-book::before,
.portal-login-cluster .btn-book::after,
.portal-login-cluster .btn-portal-login::before,
.portal-login-cluster .btn-portal-login::after,
.portal-login-cluster--desktop .btn-book::before,
.portal-login-cluster--desktop .btn-book::after,
.portal-login-cluster--desktop .btn-portal-login::before,
.portal-login-cluster--desktop .btn-portal-login::after {
  content: none !important;
  display: none !important;
  background: none !important;
}

/* CTA band — cinematic + cyan hairline */
.cta-band {
  background: var(--ac-cine) !important;
  border-top: 1px solid var(--ac-cyan-soft) !important;
}

/* Accordion quiet */
.accordion-item {
  border-radius: 0 !important;
  overflow: hidden;
}
.accordion-button {
  letter-spacing: 0.04em !important;
  font-size: 0.92rem !important;
}

/* Laptop 1280–1440: no right overflow */
@media (min-width: 992px) and (max-width: 1440px) {
  .portal-login-cluster--desktop {
    max-width: calc(100% - var(--hc-sidebar-actual, 210px) - 1.25rem) !important;
  }
  .main-wrapper > section > .container,
  .page-header > .container,
  footer.site-footer > .container {
    padding-left: 1.25rem !important;
    padding-right: 1.25rem !important;
  }
}



/* Safety: sidebar MUST stay fixed on desktop (mcl5i layout fix) */
@media (min-width: 992px) {
  .navbar-hc {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    bottom: 0 !important;
    width: var(--hc-sidebar-actual, 210px) !important;
    min-width: var(--hc-sidebar-actual, 210px) !important;
    max-width: var(--hc-sidebar-actual, 210px) !important;
    height: 100vh !important;
    height: 100dvh !important;
    z-index: 1030 !important;
  }
}

/* Media placeholders — Chelsea fills later (exact labels VIDEO / IMAGE) */
.mcl-media-slot {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  width: 100%;
  min-height: 12rem;
  padding: 1.5rem 1rem;
  border: 1px dashed rgba(0, 176, 253, 0.35);
  background:
    linear-gradient(180deg, rgba(0, 176, 253, 0.04) 0%, rgba(11, 31, 58, 0.02) 100%);
  color: var(--ac-ink-soft, #2c3e55);
  text-align: center;
  box-sizing: border-box;
}
.mcl-media-slot__label {
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--ac-ink, #0B1F3A);
}
.mcl-media-slot__hint {
  font-size: 0.7rem;
  letter-spacing: 0.06em;
  color: var(--ac-muted, #5a6d82);
  max-width: 22rem;
  line-height: 1.45;
}
.mcl-media-slot--video { min-height: 16rem; aspect-ratio: 16 / 9; }
.mcl-media-slot--image { min-height: 14rem; aspect-ratio: 4 / 3; }
.mcl-media-slot--wide { aspect-ratio: 21 / 9; min-height: 10rem; }
.page-header .mcl-media-slot,
.section-navy .mcl-media-slot {
  border-color: rgba(0, 176, 253, 0.4);
  background: rgba(255, 255, 255, 0.04);
  color: rgba(245, 247, 250, 0.7);
}
.page-header .mcl-media-slot__label,
.section-navy .mcl-media-slot__label { color: #fff; }
.page-header .mcl-media-slot__hint,
.section-navy .mcl-media-slot__hint { color: rgba(245, 247, 250, 0.55); }

/* About / editorial content — more air between dual panels */
.main-wrapper > section.section-editorial {
  background: var(--ac-ground) !important;
}
.main-wrapper .card-hc--aside {
  border-left: 2px solid var(--ac-cyan-hair) !important;
}
.main-wrapper .card-hc.p-4 {
  padding: clamp(1.5rem, 2.5vw, 2.15rem) !important;
}

/* ==========================================================================
   mcl5k — Professional depth tokens (LOCAL PREVIEW ONLY)
   Soft layered shadows · hairline grid · elevated header/panels ·
   inset media frames · richer type contrast. Not Habitation-heavy.
   About + Phoenix are showpieces; shared tokens lift all inner pages.
   ========================================================================== */

/* Header sits above the content plane */
.page-header,
.page-header.scenic-wash {
  box-shadow: var(--ac-shadow-header) !important;
  border-bottom-color: rgba(255, 255, 255, 0.10) !important;
}
.page-header::before,
.page-header.scenic-wash::before {
  background:
    linear-gradient(180deg, rgba(255,255,255,0.055) 0%, transparent 46%),
    linear-gradient(90deg, rgba(0,176,253,0.085) 0%, transparent 44%),
    linear-gradient(135deg, rgba(201,162,39,0.045) 0%, transparent 38%) !important;
}
.page-header .lead,
.page-header p {
  color: rgba(245, 247, 250, 0.78) !important;
}

/* Content plane — soft elevation band under header */
.main-wrapper > section {
  position: relative;
}
.main-wrapper > section::before {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: var(--ac-gutter, 1.25rem) !important;
  right: var(--ac-gutter, 1.25rem) !important;
  top: 0 !important;
  height: 1px !important;
  max-height: 1px !important;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(11, 31, 58, 0.07) 12%,
    rgba(0, 176, 253, 0.14) 50%,
    rgba(11, 31, 58, 0.07) 88%,
    transparent 100%) !important;
  background-image: linear-gradient(90deg,
    transparent 0%,
    rgba(11, 31, 58, 0.07) 12%,
    rgba(0, 176, 253, 0.14) 50%,
    rgba(11, 31, 58, 0.07) 88%,
    transparent 100%) !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  z-index: 1 !important;
}
/* Keep saltire/watermark kills: do not resurrect decorative after on sections */
.main-wrapper > section.cta-band::before,
.main-wrapper > section.section-navy::before,
.main-wrapper > .cta-band::before {
  display: none !important;
  content: none !important;
}

/* Alternating grounds with slight depth separation */
.main-wrapper > section,
.main-wrapper > section.bg-light-hc,
.main-wrapper section.section-cream,
.main-wrapper section.section-cream-deep,
.main-wrapper section.section-light,
.main-wrapper section.scenic-wash,
.main-wrapper > section.section-editorial {
  background: #e8ebf0 !important;
}
.main-wrapper > section:nth-of-type(even),
.main-wrapper section.section-white,
.main-wrapper > section.bg-light-hc {
  background:
    linear-gradient(180deg, rgba(255,255,255,0.72) 0%, rgba(247,248,250,0.95) 100%),
    #f3f5f8 !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.85),
    0 1px 0 rgba(11, 31, 58, 0.04) !important;
}

/* Cards / panels — layered soft shadow + top hairline lift */
.main-wrapper .card-hc,
.main-wrapper .why-card,
.main-wrapper .define-panel,
.main-wrapper .pkg-card,
.main-wrapper .form-card,
.main-wrapper .trip-card,
.main-wrapper .class-card,
.main-wrapper .partners-step-card,
.faq-item,
.accordion-item {
  border: 1px solid var(--ac-line) !important;
  border-top-color: rgba(0, 176, 253, 0.18) !important;
  box-shadow:
    0 1px 2px rgba(11, 31, 58, 0.05),
    0 10px 28px rgba(11, 31, 58, 0.08),
    0 28px 56px rgba(11, 31, 58, 0.05),
    var(--ac-inset-panel) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(252,253,254,0.98) 100%) !important;
}
.main-wrapper .card-hc--aside {
  border-left: 2px solid var(--ac-cyan-hair) !important;
  box-shadow:
    0 2px 4px rgba(11, 31, 58, 0.06),
    0 14px 36px rgba(11, 31, 58, 0.10),
    0 36px 72px rgba(11, 31, 58, 0.05),
    var(--ac-inset-panel) !important;
}
.main-wrapper .card-hc:hover,
.main-wrapper .why-card:hover,
.main-wrapper .pkg-card:hover,
.main-wrapper .class-card:hover {
  border-color: var(--ac-cyan-soft) !important;
  box-shadow: var(--ac-shadow-elev), var(--ac-inset-panel) !important;
}

/* Richer typography — navy ink on light planes (never paint dark header white type) */
.main-wrapper > section h1,
.main-wrapper > section h2,
.main-wrapper > section h3,
.main-wrapper > section h4,
.section-title-wrap h2,
.main-wrapper .card-hc h2,
.main-wrapper .card-hc h3,
.main-wrapper .card-hc .h4,
.main-wrapper .card-hc .h5,
.main-wrapper .card-hc .h6 {
  color: var(--ac-ink) !important;
}
.main-wrapper > section p,
.main-wrapper > section li,
.main-wrapper .card-hc p,
.main-wrapper .card-hc li {
  color: var(--ac-ink-soft) !important;
}
.main-wrapper > section .lead,
.main-wrapper > section .lead-soft,
.section-title-wrap .lead-soft {
  color: var(--ac-muted) !important;
}
.main-wrapper > section .text-muted,
.main-wrapper > section .small.text-muted,
.main-wrapper .card-hc .text-muted {
  color: var(--ac-muted) !important;
}
.main-wrapper > section strong,
.main-wrapper > section b,
.main-wrapper .card-hc strong,
.main-wrapper .card-hc b {
  color: var(--ac-ink) !important;
  font-weight: 650 !important;
}
.section-title-wrap .section-kicker,
.main-wrapper section .section-kicker {
  color: var(--ac-ink-soft) !important;
  border-bottom-color: var(--ac-cyan-hair) !important;
}

/* Page header — force luminous type back (depth pass must not darken it) */
.page-header h1,
.main-wrapper > .page-header h1,
.page-header.scenic-wash h1 {
  color: #ffffff !important;
}
.page-header .lead,
.page-header p,
.main-wrapper > .page-header .lead,
.main-wrapper > .page-header p {
  color: rgba(245, 247, 250, 0.82) !important;
}
.page-header .page-kicker,
.page-header .saltire-badge {
  color: rgba(245, 247, 250, 0.78) !important;
  border-bottom-color: var(--ac-cyan-hair) !important;
}

/* Fine hairline detail under editorial titles */
.main-wrapper .section-title-wrap {
  position: relative;
}
.main-wrapper .section-title-wrap::after {
  content: '';
  display: block;
  width: 100%;
  max-width: 12rem;
  height: 1px;
  margin: 1.15rem auto 0;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(11, 31, 58, 0.10) 20%,
    rgba(0, 176, 253, 0.22) 50%,
    rgba(11, 31, 58, 0.10) 80%,
    transparent 100%);
  opacity: 0.85;
}
.main-wrapper .section-title-wrap .tartan-rule + .lead-soft,
.main-wrapper .section-title-wrap .tartan-rule ~ .lead-soft {
  margin-top: 0.85rem !important;
}

/* Media placeholders — inset frame depth (not flat dashed boxes) */
.mcl-media-slot {
  position: relative;
  isolation: isolate;
  border: 1px solid rgba(0, 176, 253, 0.28) !important;
  background:
    linear-gradient(180deg, rgba(8, 16, 28, 0.045) 0%, transparent 42%),
    linear-gradient(180deg, rgba(0, 176, 253, 0.06) 0%, rgba(11, 31, 58, 0.035) 100%),
    repeating-linear-gradient(
      135deg,
      transparent 0,
      transparent 7px,
      rgba(11, 31, 58, 0.018) 7px,
      rgba(11, 31, 58, 0.018) 8px
    ) !important;
  box-shadow:
    inset 0 2px 6px rgba(11, 31, 58, 0.14),
    inset 0 14px 36px rgba(11, 31, 58, 0.08),
    inset 0 0 0 1px rgba(0, 176, 253, 0.14),
    0 1px 2px rgba(11, 31, 58, 0.05),
    0 10px 24px rgba(11, 31, 58, 0.07) !important;
  color: var(--ac-ink-soft) !important;
}
.mcl-media-slot::before {
  content: '';
  position: absolute;
  inset: 8px;
  border: 1px solid rgba(0, 176, 253, 0.20);
  pointer-events: none;
  z-index: 0;
  box-shadow:
    inset 0 0 0 1px rgba(255, 255, 255, 0.35),
    0 0 0 1px rgba(11, 31, 58, 0.03);
}
.mcl-media-slot::after {
  content: '';
  position: absolute;
  left: 18%;
  right: 18%;
  top: 0;
  height: 1px;
  background: linear-gradient(90deg,
    transparent,
    rgba(0, 176, 253, 0.45),
    rgba(201, 162, 39, 0.35),
    rgba(0, 176, 253, 0.45),
    transparent);
  pointer-events: none;
  z-index: 1;
}
.mcl-media-slot__label,
.mcl-media-slot__hint {
  position: relative;
  z-index: 2;
}
.mcl-media-slot__label {
  color: var(--ac-ink) !important;
  letter-spacing: 0.3em !important;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.55);
}
.mcl-media-slot__hint {
  color: var(--ac-muted) !important;
}
.page-header .mcl-media-slot,
.section-navy .mcl-media-slot {
  border-color: rgba(0, 176, 253, 0.35) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.06) 0%, rgba(0,0,0,0.18) 100%),
    rgba(255, 255, 255, 0.03) !important;
  box-shadow:
    inset 0 1px 2px rgba(0, 0, 0, 0.35),
    inset 0 12px 32px rgba(0, 0, 0, 0.22),
    inset 0 0 0 1px rgba(0, 176, 253, 0.18),
    0 8px 24px rgba(0, 0, 0, 0.2) !important;
}
.page-header .mcl-media-slot::before,
.section-navy .mcl-media-slot::before {
  border-color: rgba(255, 255, 255, 0.12);
  box-shadow: none;
}
.page-header .mcl-media-slot__label,
.section-navy .mcl-media-slot__label {
  color: #fff !important;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
}
.page-header .mcl-media-slot__hint,
.section-navy .mcl-media-slot__hint {
  color: rgba(245, 247, 250, 0.62) !important;
}

/* Soft lift for wide media blocks sitting on the ground */
.main-wrapper > section .mcl-media-slot--video,
.main-wrapper > section .mcl-media-slot--wide {
  box-shadow:
    var(--ac-inset-media),
    var(--ac-shadow-md) !important;
}

/* Portal cluster — slight glass elevation */
.portal-login-cluster--desktop .btn-book,
.portal-login-cluster--desktop .btn-portal-login {
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.08) inset,
    0 6px 18px rgba(0, 0, 0, 0.22) !important;
}

/* CTA band — elevated cinematic slab */
.cta-band {
  box-shadow:
    0 -1px 0 rgba(0, 176, 253, 0.2),
    0 -18px 48px rgba(0, 0, 0, 0.12) !important;
}

/* Invisible grid feel — column gutters via faint vertical hairlines on wide editorial */
@media (min-width: 1200px) {
  .main-wrapper > section > .container {
    background-image:
      linear-gradient(90deg,
        rgba(11, 31, 58, 0.035) 0,
        rgba(11, 31, 58, 0.035) 1px,
        transparent 1px),
      linear-gradient(90deg,
        transparent calc(100% - 1px),
        rgba(11, 31, 58, 0.035) calc(100% - 1px),
        rgba(11, 31, 58, 0.035) 100%);
    background-repeat: no-repeat;
    background-size: 100% 100%;
  }
}

/* ==========================================================================
   mcl5k-b — depth reinforcement (About/Phoenix showpiece readability)
   ========================================================================== */

/* Header clearly floats above the content plane */
.page-header,
.main-wrapper > .page-header,
.page-header.scenic-wash {
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.06),
    0 10px 28px rgba(0, 0, 0, 0.26),
    0 28px 64px rgba(0, 0, 0, 0.22) !important;
  z-index: 2 !important;
}

/* Cooler, slightly deeper ground so white panels lift */
.main-wrapper > section.section-editorial,
.main-wrapper > section:not(.section-navy):not(.cta-band) {
  background-color: #e4e8ee !important;
}
.main-wrapper > section.bg-light-hc,
.main-wrapper > section:nth-of-type(even) {
  background:
    linear-gradient(180deg, #f6f7f9 0%, #eef1f5 100%) !important;
}

/* Aside + cards: unmistakable soft layered lift */
.main-wrapper .card-hc,
.main-wrapper .why-card,
.main-wrapper .define-panel,
.main-wrapper .pkg-card,
.main-wrapper .form-card,
.main-wrapper .class-card,
.main-wrapper .partners-step-card,
.faq-item,
.accordion-item {
  border: 1px solid rgba(11, 31, 58, 0.10) !important;
  border-top: 1px solid rgba(0, 176, 253, 0.22) !important;
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.9) inset,
    0 1px 2px rgba(11, 31, 58, 0.06),
    0 12px 28px rgba(11, 31, 58, 0.10),
    0 32px 64px rgba(11, 31, 58, 0.06) !important;
}
.main-wrapper .card-hc--aside {
  border-left: 2px solid rgba(0, 176, 253, 0.55) !important;
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.92) inset,
    0 2px 4px rgba(11, 31, 58, 0.07),
    0 16px 40px rgba(11, 31, 58, 0.12),
    0 40px 80px rgba(11, 31, 58, 0.07) !important;
}

/* Media frames: recessed well */
.mcl-media-slot {
  border: 1px solid rgba(0, 176, 253, 0.32) !important;
  background:
    linear-gradient(180deg, rgba(8, 16, 28, 0.07) 0%, rgba(0, 176, 253, 0.04) 45%, rgba(11, 31, 58, 0.05) 100%),
    repeating-linear-gradient(
      135deg,
      transparent 0,
      transparent 6px,
      rgba(11, 31, 58, 0.03) 6px,
      rgba(11, 31, 58, 0.03) 7px
    ) !important;
  box-shadow:
    inset 0 3px 10px rgba(11, 31, 58, 0.16),
    inset 0 18px 40px rgba(11, 31, 58, 0.10),
    inset 0 0 0 1px rgba(0, 176, 253, 0.16),
    0 1px 0 rgba(255, 255, 255, 0.55),
    0 10px 28px rgba(11, 31, 58, 0.08) !important;
}
.mcl-media-slot::before {
  inset: 9px !important;
  border-color: rgba(0, 176, 253, 0.24) !important;
}

/* Section top hairline — quieter grid cue */
.main-wrapper > section.section-editorial::before,
.main-wrapper > section.bg-light-hc::before {
  opacity: 1 !important;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(11, 31, 58, 0.08) 10%,
    rgba(0, 176, 253, 0.22) 50%,
    rgba(201, 162, 39, 0.18) 62%,
    rgba(11, 31, 58, 0.08) 90%,
    transparent 100%) !important;
  background-image: linear-gradient(90deg,
    transparent 0%,
    rgba(11, 31, 58, 0.08) 10%,
    rgba(0, 176, 253, 0.22) 50%,
    rgba(201, 162, 39, 0.18) 62%,
    rgba(11, 31, 58, 0.08) 90%,
    transparent 100%) !important;
}

/* ==========================================================================
   mcl5m — About page-header compact + deeper band (LOCAL PREVIEW ONLY)
   Chelsea: keep the quiet kicker, omit the long tagline; shorter band; smaller H1;
   layered shadow + hairlines so the header lifts (not flat).
   ========================================================================== */

.page-header.page-header--compact,
.main-wrapper > .page-header.page-header--compact {
  padding: clamp(1.35rem, 2.8vh, 2rem) 0 clamp(1.25rem, 2.4vh, 1.75rem) !important;
  min-height: 0 !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.10) inset,
    0 -1px 0 rgba(0, 0, 0, 0.35) inset,
    0 1px 0 rgba(255, 255, 255, 0.05),
    0 6px 14px rgba(0, 0, 0, 0.20),
    0 16px 36px rgba(0, 0, 0, 0.26),
    0 36px 72px rgba(0, 0, 0, 0.18) !important;
  z-index: 3 !important;
  transform: translateZ(0);
}

.page-header.page-header--compact::before,
.page-header.page-header--compact.scenic-wash::before {
  background:
    linear-gradient(180deg, rgba(255,255,255,0.085) 0%, rgba(255,255,255,0.02) 38%, transparent 72%),
    linear-gradient(90deg, rgba(0,176,253,0.12) 0%, transparent 40%),
    linear-gradient(135deg, rgba(201,162,39,0.06) 0%, transparent 36%) !important;
}

/* Top hairline lift + reinforced bottom cyan edge */
.page-header.page-header--compact::after,
.main-wrapper .page-header.page-header--compact::after {
  height: 2px !important;
  max-height: 2px !important;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(0,176,253,0.55) 16%,
    rgba(255,255,255,0.38) 50%,
    rgba(0,176,253,0.55) 84%,
    transparent 100%) !important;
  background-image: linear-gradient(90deg,
    transparent 0%,
    rgba(0,176,253,0.55) 16%,
    rgba(255,255,255,0.38) 50%,
    rgba(0,176,253,0.55) 84%,
    transparent 100%) !important;
  box-shadow:
    0 -1px 0 rgba(255, 255, 255, 0.08),
    0 1px 0 rgba(0, 0, 0, 0.35),
    0 4px 12px rgba(0, 176, 253, 0.18) !important;
}

.page-header.page-header--compact h1,
.main-wrapper > .page-header.page-header--compact h1 {
  font-size: clamp(1.45rem, 2.6vw, 1.95rem) !important;
  font-weight: 650 !important;
  letter-spacing: -0.018em !important;
  line-height: 1.2 !important;
  margin-bottom: 0 !important;
  color: #ffffff !important;
  text-shadow:
    0 1px 0 rgba(0, 0, 0, 0.35),
    0 2px 8px rgba(0, 0, 0, 0.25);
}

/* mcl5m follow-up — About header proportion + depth (LOCAL PREVIEW ONLY) */
.page-header.page-header--compact,
.main-wrapper > .page-header.page-header--compact {
  padding: clamp(1.55rem, 3.2vh, 2.15rem) 0 clamp(1.45rem, 2.8vh, 1.95rem) !important;
  background:
    radial-gradient(120% 150% at 9% 0%, rgba(0, 176, 253, 0.16) 0%, transparent 43%),
    linear-gradient(112deg, #102630 0%, #0b1720 45%, #080d14 100%) !important;
  border-top: 1px solid rgba(255, 255, 255, 0.07) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.16) !important;
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.10) inset,
    0 -1px 0 rgba(0, 0, 0, 0.38) inset,
    0 8px 18px rgba(0, 0, 0, 0.24),
    0 22px 42px rgba(0, 0, 0, 0.27),
    0 38px 70px rgba(0, 0, 0, 0.14) !important;
}
.page-header.page-header--compact::before,
.page-header.page-header--compact.scenic-wash::before {
  background:
    linear-gradient(180deg, rgba(255,255,255,0.11) 0%, rgba(255,255,255,0.025) 30%, transparent 70%),
    linear-gradient(90deg, rgba(0,176,253,0.08) 0%, transparent 38%, rgba(255,255,255,0.025) 100%) !important;
  opacity: 1 !important;
}
.page-header.page-header--compact .container {
  padding-top: 0.1rem !important;
  padding-bottom: 0.05rem !important;
}
.page-header.page-header--compact .page-kicker {
  margin-bottom: 0.58rem !important;
  color: rgba(245, 247, 250, 0.8) !important;
  border-bottom-color: rgba(0, 176, 253, 0.56) !important;
  text-shadow: 0 1px 5px rgba(0, 0, 0, 0.25);
}
.page-header.page-header--compact h1,
.main-wrapper > .page-header.page-header--compact h1 {
  font-size: clamp(1.62rem, 2.9vw, 2.15rem) !important;
  letter-spacing: -0.022em !important;
  line-height: 1.16 !important;
  text-shadow:
    0 1px 0 rgba(0, 0, 0, 0.35),
    0 3px 10px rgba(0, 0, 0, 0.28) !important;
}
.page-header.page-header--compact::after,
.main-wrapper .page-header.page-header--compact::after {
  height: 2px !important;
  max-height: 2px !important;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(0,176,253,0.65) 15%,
    rgba(255,255,255,0.42) 50%,
    rgba(201,162,39,0.3) 62%,
    rgba(0,176,253,0.65) 85%,
    transparent 100%) !important;
  box-shadow: 0 -1px 0 rgba(255,255,255,0.1), 0 4px 14px rgba(0,176,253,0.2) !important;
}

/* mcl5m final CTA block REMOVED (mcl5s) — chunky solid cards rejected.
   Subtle quiet-stack CTAs live in the mcl5s block near end of this sheet
   (+ preview-sidebar-hab-chrome.css). */


/* ==========================================================================
   mcl5n — About Who We Are spacious + soften cards / CTA / footer
   LOCAL PREVIEW ONLY. McLaren corporate: air, invisible grid, finer lines,
   less chunky panels. Keep Albyn palette + phoenix watermark spirit.
   ========================================================================== */

/* ---- Who We Are — editorial mast + measured columns + soft sheet ---- */
.about-who {
  padding-top: clamp(3.75rem, 7.5vw, 6.25rem) !important;
  padding-bottom: clamp(3.75rem, 7.5vw, 6.25rem) !important;
}
.about-who__mast {
  max-width: 42rem;
  margin: 0 0 clamp(2.25rem, 4.5vw, 3.5rem);
}
.about-who__mast .section-kicker {
  margin-bottom: 1.15rem !important;
  color: var(--ac-muted) !important;
  border-bottom-color: rgba(0, 176, 253, 0.42) !important;
}
.about-who__title {
  margin: 0 !important;
  font-size: clamp(1.55rem, 2.8vw, 2.15rem) !important;
  font-weight: 650 !important;
  letter-spacing: -0.022em !important;
  line-height: 1.22 !important;
  color: var(--ac-ink) !important;
  max-width: 22ch;
}
.about-who__grid {
  display: grid;
  gap: clamp(2rem, 4vw, 3.5rem);
  align-items: start;
}
@media (min-width: 1100px) {
  .about-who__grid {
    grid-template-columns: minmax(0, 1fr) minmax(17.5rem, 20.5rem);
    column-gap: clamp(2.5rem, 4.5vw, 4.25rem);
  }
}
.about-who__sheet {
  position: relative;
  padding: clamp(1.75rem, 3.2vw, 2.75rem) clamp(1.5rem, 3vw, 2.5rem);
  background:
    linear-gradient(180deg, rgba(255,255,255,0.97) 0%, rgba(250,251,253,0.94) 100%);
  border: 1px solid rgba(11, 31, 58, 0.07);
  border-top: 1px solid rgba(0, 176, 253, 0.18);
  border-radius: 0.08rem;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.9) inset,
    0 1px 2px rgba(11, 31, 58, 0.035),
    0 18px 48px rgba(11, 31, 58, 0.055);
}
.about-who__sheet::before {
  content: '';
  position: absolute;
  left: clamp(1.5rem, 3vw, 2.5rem);
  right: clamp(1.5rem, 3vw, 2.5rem);
  top: 0;
  height: 1px;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(0,176,253,0.35) 20%,
    rgba(201,162,39,0.22) 55%,
    rgba(0,176,253,0.35) 80%,
    transparent 100%);
  pointer-events: none;
}
.about-who__columns {
  display: grid;
  gap: 1.35rem 0;
}
@media (min-width: 768px) {
  .about-who__columns {
    grid-template-columns: 1fr 1fr;
    column-gap: clamp(2rem, 3.5vw, 3.25rem);
    row-gap: 0;
  }
  .about-who__col + .about-who__col {
    border-left: 1px solid rgba(11, 31, 58, 0.07);
    padding-left: clamp(1.75rem, 3vw, 2.75rem);
  }
}
.about-who__col p {
  margin-bottom: 1.35rem !important;
  font-size: 0.975rem !important;
  line-height: 1.78 !important;
  letter-spacing: 0.005em;
  color: var(--ac-ink-soft) !important;
  max-width: 38rem;
}
.about-who__col p:last-child,
.about-who__col p.mb-0 {
  margin-bottom: 0 !important;
}
.about-who__rail {
  position: relative;
}
@media (min-width: 1100px) {
  .about-who__rail {
    position: sticky;
    top: 1.5rem;
  }
}
.about-who__facts.card-hc--aside,
.main-wrapper .about-who__facts.card-hc--aside {
  padding: clamp(1.35rem, 2.2vw, 1.75rem) !important;
  border-radius: 0.08rem !important;
  border: 1px solid rgba(11, 31, 58, 0.08) !important;
  border-left: 1px solid rgba(0, 176, 253, 0.45) !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.92) inset,
    0 1px 2px rgba(11, 31, 58, 0.04),
    0 14px 36px rgba(11, 31, 58, 0.07) !important;
  background:
    linear-gradient(180deg, #fff 0%, #fafbfd 100%) !important;
}
.about-who__facts .mcl-media-slot--image {
  min-height: 9.5rem;
  margin-top: 0.25rem;
}

/* ---- Soft cards sitewide on About (less chunky, finer lines) ---- */
.main-wrapper .card-hc--soft,
.about-clarity .card-hc,
.main-wrapper .about-clarity .card-hc {
  border: 1px solid rgba(11, 31, 58, 0.075) !important;
  border-top: 1px solid rgba(0, 176, 253, 0.16) !important;
  border-radius: 0.08rem !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.88) inset,
    0 1px 2px rgba(11, 31, 58, 0.03),
    0 12px 32px rgba(11, 31, 58, 0.055) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.98) 0%, rgba(252,253,254,0.96) 100%) !important;
  padding: clamp(1.5rem, 2.8vw, 2rem) !important;
}
.about-clarity {
  padding-top: clamp(3.5rem, 6.5vw, 5.5rem) !important;
  padding-bottom: clamp(3.5rem, 6.5vw, 5.5rem) !important;
}
.about-clarity__row {
  --bs-gutter-x: clamp(1.5rem, 3vw, 2.75rem) !important;
  --bs-gutter-y: clamp(1.25rem, 2.5vw, 2rem) !important;
}

/* ---- Talk to us / CTA — sleek spacious, not a heavy slab ---- */
.cta-band.cta-band--mcl,
.main-wrapper > .cta-band.cta-band--mcl {
  position: relative !important;
  padding: clamp(3.5rem, 7vw, 5.75rem) 0 !important;
  background:
    radial-gradient(90% 120% at 50% 0%, rgba(0, 176, 253, 0.10) 0%, transparent 55%),
    linear-gradient(180deg, #0c121a 0%, #080d14 55%, #06090f 100%) !important;
  border-top: 1px solid rgba(255, 255, 255, 0.06) !important;
  box-shadow:
    0 -1px 0 rgba(0, 176, 253, 0.18),
    0 -12px 40px rgba(0, 0, 0, 0.10) !important;
  overflow: hidden !important;
}
.cta-band.cta-band--mcl::before {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: 12% !important;
  right: 12% !important;
  top: 0 !important;
  height: 1px !important;
  max-height: 1px !important;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(0,176,253,0.45) 22%,
    rgba(255,255,255,0.28) 50%,
    rgba(201,162,39,0.28) 62%,
    rgba(0,176,253,0.45) 78%,
    transparent 100%) !important;
  opacity: 1 !important;
  pointer-events: none !important;
  z-index: 1 !important;
}
.cta-band.cta-band--mcl .container {
  position: relative;
  z-index: 2;
  max-width: 40rem !important;
}
.cta-band__kicker {
  display: inline-block !important;
  margin-bottom: 1rem !important;
  padding: 0 0 0.45rem !important;
  font-size: 0.62rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: rgba(245, 247, 250, 0.62) !important;
  border-bottom: 1px solid rgba(0, 176, 253, 0.4) !important;
  background: transparent !important;
}
.cta-band.cta-band--mcl h2 {
  margin: 0 0 0.85rem !important;
  font-size: clamp(1.55rem, 2.6vw, 2.05rem) !important;
  font-weight: 650 !important;
  letter-spacing: -0.02em !important;
  line-height: 1.2 !important;
  color: #fff !important;
  text-shadow: 0 1px 0 rgba(0,0,0,0.25);
}
.cta-band__lede {
  margin: 0 auto 1.85rem !important;
  max-width: 26rem !important;
  font-size: 0.95rem !important;
  line-height: 1.65 !important;
  font-weight: 400 !important;
  color: rgba(245, 247, 250, 0.62) !important;
}
.cta-band__actions {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0.85rem;
  justify-content: center;
  align-items: center;
}
.cta-band.cta-band--mcl .btn-light,
.cta-band.cta-band--mcl .btn-outline-light {
  min-height: 2.55rem !important;
  padding: 0.55rem 1.35rem !important;
  font-size: 0.72rem !important;
  font-weight: 650 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  border-radius: 0.08rem !important;
  box-shadow: none !important;
}
.cta-band.cta-band--mcl .btn-light {
  background: rgba(255, 255, 255, 0.96) !important;
  border: 1px solid rgba(255, 255, 255, 0.96) !important;
  color: #071628 !important;
}
.cta-band.cta-band--mcl .btn-light:hover,
.cta-band.cta-band--mcl .btn-light:focus-visible {
  background: #fff !important;
  border-color: #C9A227 !important;
  color: #071628 !important;
  box-shadow: 0 0 0 1px rgba(201,162,39,0.35) !important;
}
.cta-band.cta-band--mcl .btn-outline-light {
  background: transparent !important;
  border: 1px solid rgba(245, 247, 250, 0.42) !important;
  color: rgba(245, 247, 250, 0.92) !important;
}
.cta-band.cta-band--mcl .btn-outline-light:hover,
.cta-band.cta-band--mcl .btn-outline-light:focus-visible {
  background: rgba(0, 176, 253, 0.08) !important;
  border-color: rgba(0, 176, 253, 0.55) !important;
  color: #fff !important;
}

/* ---- Footer — open editorial columns, not Habitation chunky cards ---- */
footer.site-footer.site-footer--mcl,
.site-footer.site-footer--mcl {
  padding: clamp(3.25rem, 6vw, 4.75rem) 0 clamp(1.75rem, 3vw, 2.35rem) !important;
  background:
    radial-gradient(70% 55% at 8% 0%, rgba(0, 176, 253, 0.08) 0%, transparent 48%),
    radial-gradient(75% 50% at 92% 100%, rgba(201, 162, 39, 0.08) 0%, transparent 52%),
    linear-gradient(168deg, #0e1a28 0%, #0a1420 48%, #070e16 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.06),
    0 -8px 28px rgba(0, 0, 0, 0.12) !important;
  border-top: 1px solid rgba(255, 255, 255, 0.05) !important;
}
/* Fine top hairline instead of thick gold bar */
footer.site-footer.site-footer--mcl::before,
.site-footer.site-footer--mcl::before {
  content: "" !important;
  display: block !important;
  height: 1px !important;
  margin: 0 0 clamp(2rem, 4vw, 2.75rem) !important;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(0,176,253,0.35) 18%,
    rgba(201,162,39,0.45) 50%,
    rgba(0,176,253,0.35) 82%,
    transparent 100%) !important;
  background-image: linear-gradient(90deg,
    transparent 0%,
    rgba(0,176,253,0.35) 18%,
    rgba(201,162,39,0.45) 50%,
    rgba(0,176,253,0.35) 82%,
    transparent 100%) !important;
  box-shadow: none !important;
  opacity: 1 !important;
}
/* Keep phoenix watermark spirit — quieter */
footer.site-footer.site-footer--mcl::after,
.site-footer.site-footer--mcl::after {
  content: "" !important;
  position: absolute !important;
  right: -6% !important;
  bottom: -2% !important;
  width: min(420px, 48vw) !important;
  height: min(360px, 52vw) !important;
  background: url("../img/phoenix-bird-watermark.png") center / contain no-repeat !important;
  opacity: 0.12 !important;
  pointer-events: none !important;
  z-index: 0 !important;
  transform: rotate(-8deg) translate(2%, 8%) !important;
  filter: drop-shadow(0 0 1px rgba(201, 168, 76, 0.12)) !important;
}
footer.site-footer.site-footer--mcl > .container {
  max-width: var(--ac-grid-max, 70rem) !important;
  padding-left: var(--ac-gutter, 1.5rem) !important;
  padding-right: var(--ac-gutter, 1.5rem) !important;
}
footer.site-footer.site-footer--mcl .hc-coos-footer-row.row.g-4 {
  --bs-gutter-x: clamp(2rem, 4vw, 3.5rem) !important;
  --bs-gutter-y: 2rem !important;
  gap: 0 !important;
  flex-wrap: nowrap !important;
  align-items: flex-start !important;
}
footer.site-footer.site-footer--mcl .hc-coos-footer-row > [class*="col-"] {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
footer.site-footer.site-footer--mcl .hc-coos-footer-brand {
  flex: 1 1 42% !important;
  max-width: 42% !important;
  width: 42% !important;
}
footer.site-footer.site-footer--mcl .hc-coos-footer-links {
  flex: 0 0 24% !important;
  max-width: 24% !important;
  width: 24% !important;
}
footer.site-footer.site-footer--mcl .hc-coos-footer-contact {
  flex: 1 1 30% !important;
  max-width: 30% !important;
  width: 30% !important;
}
/* Flatten the chunky card boxes into open columns with fine dividers */
footer.site-footer.site-footer--mcl .hc-coos-footer-brand,
footer.site-footer.site-footer--mcl .hc-coos-footer-links,
footer.site-footer.site-footer--mcl .hc-coos-footer-contact {
  height: auto !important;
  min-height: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
@media (min-width: 992px) {
  footer.site-footer.site-footer--mcl .hc-coos-footer-links,
  footer.site-footer.site-footer--mcl .hc-coos-footer-contact {
    border-left: 1px solid rgba(255, 255, 255, 0.08) !important;
    padding-left: clamp(1.75rem, 3vw, 2.75rem) !important;
  }
}
@media (max-width: 991.98px) {
  footer.site-footer.site-footer--mcl .hc-coos-footer-row.row.g-4 {
    flex-wrap: wrap !important;
  }
  footer.site-footer.site-footer--mcl .hc-coos-footer-brand,
  footer.site-footer.site-footer--mcl .hc-coos-footer-links,
  footer.site-footer.site-footer--mcl .hc-coos-footer-contact {
    flex: 1 1 100% !important;
    max-width: 100% !important;
    width: 100% !important;
    border-left: none !important;
    padding-left: 0 !important;
    padding-top: 0.35rem !important;
    margin-bottom: 0.5rem !important;
  }
}
footer.site-footer.site-footer--mcl h5,
.site-footer.site-footer--mcl h5 {
  font-size: 0.72rem !important;
  font-weight: 650 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  margin-bottom: 1.15rem !important;
  color: rgba(245, 247, 250, 0.88) !important;
  text-shadow: none !important;
}
footer.site-footer.site-footer--mcl .hc-coos-footer-brand h5 {
  font-size: 1.05rem !important;
  letter-spacing: -0.01em !important;
  text-transform: none !important;
  margin-bottom: 0 !important;
}
footer.site-footer.site-footer--mcl p {
  font-size: 0.88rem !important;
  line-height: 1.65 !important;
  margin-bottom: 1rem !important;
  color: rgba(207, 217, 226, 0.82) !important;
  max-width: 28rem;
}
footer.site-footer.site-footer--mcl .hc-coos-footer-extra {
  font-size: 0.82rem !important;
  line-height: 1.55 !important;
  margin: 0 0 1.35rem !important;
  color: rgba(184, 198, 212, 0.72) !important;
  font-style: italic;
}
footer.site-footer.site-footer--mcl .list-unstyled li {
  margin-bottom: 0.55rem !important;
  font-size: 0.86rem !important;
  line-height: 1.5 !important;
}
footer.site-footer.site-footer--mcl .footer-facts li {
  margin-bottom: 0.7rem !important;
  gap: 0.65rem;
}
footer.site-footer.site-footer--mcl a {
  color: rgba(207, 217, 226, 0.88) !important;
  transition: color 0.15s ease;
}
footer.site-footer.site-footer--mcl a:hover {
  color: #00B0FD !important;
}
/* Quiet phoenix chip — finer, not chunky red box */
footer.site-footer.site-footer--mcl .hc-coos-footer-phoenix.phoenix-footer-brand,
footer.site-footer.site-footer--mcl .phoenix-footer-brand.hc-coos-footer-phoenix {
  margin-top: 0.35rem !important;
  padding: 0.35rem 0.75rem 0.35rem 0.35rem !important;
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid rgba(201, 162, 39, 0.35) !important;
  outline: none !important;
  border-radius: 0.08rem !important;
  box-shadow: none !important;
  font-size: 0.76rem !important;
  gap: 0.5rem !important;
}
footer.site-footer.site-footer--mcl .hc-coos-footer-phoenix .phoenix-icon {
  width: 28px !important;
  height: 28px !important;
  max-height: 28px !important;
}
footer.site-footer.site-footer--mcl .hc-coos-footer-phoenix strong {
  color: #C9A227 !important;
}
footer.site-footer.site-footer--mcl img[alt*="logo"],
.site-footer.site-footer--mcl img[alt="Albyn MOT logo"] {
  height: 34px !important;
  filter: drop-shadow(0 1px 4px rgba(0, 0, 0, 0.28)) !important;
}
footer.site-footer.site-footer--mcl .footer-bottom {
  margin-top: clamp(2rem, 4vw, 2.75rem) !important;
  padding-top: 1.25rem !important;
  border-top: 1px solid rgba(255, 255, 255, 0.07) !important;
}
footer.site-footer.site-footer--mcl .footer-copy {
  font-size: 0.72rem !important;
  letter-spacing: 0.06em !important;
  color: rgba(184, 198, 212, 0.55) !important;
}

/* mcl5n polish — CTA↔footer one cinematic zone; more Who We Are air */
.about-who__mast {
  margin-bottom: clamp(2.75rem, 5vw, 4rem) !important;
}
.about-who__title {
  max-width: 24ch !important;
}
@media (min-width: 1100px) {
  .about-who__grid {
    column-gap: clamp(3rem, 5vw, 4.75rem) !important;
  }
}
.about-who__sheet {
  padding: clamp(2rem, 3.6vw, 3.15rem) clamp(1.75rem, 3.4vw, 2.85rem) !important;
}
.about-who__col p {
  margin-bottom: 1.55rem !important;
  line-height: 1.82 !important;
}

/* CTA: more air; soft fade into footer so not two stacked slabs */
.cta-band.cta-band--mcl,
.main-wrapper > .cta-band.cta-band--mcl {
  padding: clamp(4.25rem, 8vw, 6.5rem) 0 clamp(3.75rem, 7vw, 5.5rem) !important;
  margin-bottom: 0 !important;
  border-bottom: none !important;
  box-shadow: 0 -1px 0 rgba(0, 176, 253, 0.16) !important;
  background:
    radial-gradient(85% 110% at 50% 18%, rgba(0, 176, 253, 0.09) 0%, transparent 58%),
    linear-gradient(180deg, #0d131c 0%, #090e15 70%, #080d14 100%) !important;
}
.cta-band__lede {
  margin-bottom: 2.15rem !important;
}
.cta-band__actions {
  gap: 1rem !important;
}

footer.site-footer.site-footer--mcl,
.site-footer.site-footer--mcl {
  margin-top: 0 !important;
  padding-top: clamp(2.75rem, 5vw, 3.75rem) !important;
  background:
    radial-gradient(70% 55% at 8% 0%, rgba(0, 176, 253, 0.06) 0%, transparent 48%),
    radial-gradient(75% 50% at 92% 100%, rgba(201, 162, 39, 0.07) 0%, transparent 52%),
    linear-gradient(180deg, #080d14 0%, #0a1420 42%, #070e16 100%) !important;
  box-shadow: none !important;
  border-top: none !important;
}
footer.site-footer.site-footer--mcl::before,
.site-footer.site-footer--mcl::before {
  margin: 0 auto clamp(2.25rem, 4vw, 3rem) !important;
  max-width: min(52rem, 88%) !important;
  width: 100% !important;
}
footer.site-footer.site-footer--mcl .hc-coos-footer-row.row.g-4 {
  --bs-gutter-x: clamp(2.5rem, 4.5vw, 4rem) !important;
}
footer.site-footer.site-footer--mcl .footer-bottom {
  margin-top: clamp(2.35rem, 4.5vw, 3.25rem) !important;
}

/* Soften At the depot media frame on About — less chunky well */
.main-wrapper > section.section-editorial:not(.about-who) .mcl-media-slot--video {
  border-radius: 0.08rem !important;
  border-color: rgba(0, 176, 253, 0.22) !important;
  box-shadow:
    inset 0 1px 4px rgba(11, 31, 58, 0.08),
    inset 0 10px 28px rgba(11, 31, 58, 0.05),
    0 8px 24px rgba(11, 31, 58, 0.05) !important;
}


/* mcl5p fix — Talk band meets the footer detail line with zero gap */
footer.site-footer.site-footer--mcl::before,
.site-footer.site-footer--mcl::before {
  position: absolute !important;
  top: 0 !important;
  left: 50% !important;
  right: auto !important;
  width: min(52rem, 88%) !important;
  max-width: min(52rem, 88%) !important;
  margin: 0 !important;
  transform: translateX(-50%) !important;
  z-index: 2 !important;
}

/* ==========================================================================
   mcl5p — Honest framing depth + shared page finish (LOCAL PREVIEW ONLY)
   McLaren corporate: layered lift, quiet inset edge, cyan/gold hairlines.
   Keep the plane light and the detail fine — never chunky Habitation chrome.
   ========================================================================== */

/* Shared card language: recessed edge, restrained elevation, hairline detail. */
.main-wrapper .card-hc,
.main-wrapper .why-card,
.main-wrapper .define-panel,
.main-wrapper .pkg-card,
.main-wrapper .form-card,
.main-wrapper .trip-card,
.main-wrapper .class-card,
.main-wrapper .partners-step-card,
.main-wrapper .partners-intro-card,
.main-wrapper .partners-audience-card,
.faq-item,
.accordion-item {
  position: relative !important;
  border: 1px solid rgba(11, 31, 58, 0.085) !important;
  border-top-color: transparent !important;
  border-radius: 0.08rem !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.99) 0%, rgba(249,251,253,0.97) 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.92),
    inset 0 -1px 0 rgba(11,31,58,0.025),
    0 1px 2px rgba(11,31,58,0.035),
    0 10px 26px rgba(11,31,58,0.065),
    0 26px 52px rgba(11,31,58,0.035) !important;
  transition: border-color 0.18s ease, box-shadow 0.18s ease;
}
.main-wrapper .card-hc::before,
.main-wrapper .why-card::before,
.main-wrapper .define-panel::before,
.main-wrapper .pkg-card::before,
.main-wrapper .form-card::before,
.main-wrapper .trip-card::before,
.main-wrapper .class-card::before,
.main-wrapper .partners-step-card::before,
.main-wrapper .partners-intro-card::before,
.main-wrapper .partners-audience-card::before,
.faq-item::before,
.accordion-item::before {
  content: '';
  position: absolute;
  z-index: 1;
  top: 0;
  left: clamp(0.8rem, 4%, 1.75rem);
  right: clamp(0.8rem, 4%, 1.75rem);
  height: 1px;
  pointer-events: none;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(0,176,253,0.34) 20%,
    rgba(0,176,253,0.22) 42%,
    rgba(201,162,39,0.30) 58%,
    rgba(0,176,253,0.22) 78%,
    transparent 100%);
}
.main-wrapper .card-hc:hover,
.main-wrapper .why-card:hover,
.main-wrapper .pkg-card:hover,
.main-wrapper .class-card:hover,
.main-wrapper .partners-step-card:hover {
  border-color: rgba(0,176,253,0.24) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.94),
    inset 0 -1px 0 rgba(11,31,58,0.025),
    0 2px 4px rgba(11,31,58,0.04),
    0 14px 32px rgba(11,31,58,0.08),
    0 30px 58px rgba(11,31,58,0.045) !important;
}
.main-wrapper .card-hc--aside,
.main-wrapper .card-hc.border-warning {
  border-left: 1px solid rgba(0,176,253,0.46) !important;
}

/* Honest framing: a little more authored than the shared panels, still quiet. */
.about-clarity .card-hc--soft,
.main-wrapper .about-clarity .card-hc--soft {
  border-left: 1px solid rgba(0,176,253,0.22) !important;
  border-right: 1px solid rgba(201,162,39,0.18) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(248,250,252,0.98) 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.96),
    inset 0 -1px 0 rgba(11,31,58,0.035),
    inset 8px 0 18px rgba(0,176,253,0.018),
    0 1px 2px rgba(11,31,58,0.04),
    0 12px 30px rgba(11,31,58,0.075),
    0 30px 58px rgba(11,31,58,0.04) !important;
}
.about-clarity .card-hc--soft::before,
.main-wrapper .about-clarity .card-hc--soft::before {
  left: 1rem;
  right: 1rem;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(0,176,253,0.48) 18%,
    rgba(0,176,253,0.22) 39%,
    rgba(201,162,39,0.52) 60%,
    rgba(0,176,253,0.22) 82%,
    transparent 100%);
}
.about-clarity .card-hc--soft:hover,
.main-wrapper .about-clarity .card-hc--soft:hover {
  border-left-color: rgba(0,176,253,0.34) !important;
  border-right-color: rgba(201,162,39,0.28) !important;
}

/* Shared CTA/footer finish now used on every non-homepage inner page. */
.main-wrapper > .cta-band.cta-band--mcl {
  border-top-color: rgba(0,176,253,0.20) !important;
}
footer.site-footer.site-footer--mcl,
.site-footer.site-footer--mcl {
  position: relative !important;
}

/* Compact page headers: preserve the About rhythm on every inner page. */
.page-header.page-header--compact h1 {
  max-width: 28ch;
}
.page-header.page-header--compact p {
  max-width: 52rem;
  line-height: 1.58 !important;
}

/* Quiet callouts and booking surfaces: clear planes, not rounded widgets. */
.main-wrapper .alert {
  border-radius: 0.08rem !important;
  border: 1px solid rgba(0,176,253,0.14) !important;
  border-left: 1px solid rgba(201,162,39,0.42) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.78),
    0 8px 22px rgba(11,31,58,0.04) !important;
}

@media (max-width: 767.98px) {
  .about-clarity .card-hc--soft,
  .main-wrapper .about-clarity .card-hc--soft {
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,0.96),
      inset 0 -1px 0 rgba(11,31,58,0.035),
      0 1px 2px rgba(11,31,58,0.04),
      0 10px 24px rgba(11,31,58,0.06) !important;
  }
}

/* ==========================================================================
   mcl5q — Servicing offer: open McLaren editorial (LOCAL PREVIEW ONLY)
   Mirror About Who We Are air / hierarchy / Albyn palette. No chunky cards.
   ========================================================================== */

.svc-offer {
  padding-top: clamp(3.75rem, 7.5vw, 6.25rem) !important;
  padding-bottom: clamp(3.75rem, 7.5vw, 6.25rem) !important;
}
.svc-offer__mast {
  max-width: 42rem;
  margin: 0 0 clamp(2.25rem, 4.5vw, 3.5rem);
}
.svc-offer__mast .section-kicker {
  margin-bottom: 1.15rem !important;
  color: var(--ac-muted) !important;
  border-bottom-color: rgba(0, 176, 253, 0.42) !important;
}
.svc-offer__title {
  margin: 0 !important;
  font-size: clamp(1.55rem, 2.8vw, 2.15rem) !important;
  font-weight: 650 !important;
  letter-spacing: -0.022em !important;
  line-height: 1.22 !important;
  color: var(--ac-ink) !important;
  max-width: 24ch;
}
.svc-offer__grid {
  display: grid;
  gap: clamp(2rem, 4vw, 3.5rem);
  align-items: start;
}
@media (min-width: 1100px) {
  .svc-offer__grid {
    grid-template-columns: minmax(0, 1fr) minmax(17.5rem, 20.5rem);
    column-gap: clamp(2.5rem, 4.5vw, 4.25rem);
  }
}
.svc-offer__sheet {
  position: relative;
  padding: clamp(1.75rem, 3.2vw, 2.75rem) clamp(1.5rem, 3vw, 2.5rem);
  background:
    linear-gradient(180deg, rgba(255,255,255,0.97) 0%, rgba(250,251,253,0.94) 100%);
  border: 1px solid rgba(11, 31, 58, 0.07);
  border-top: 1px solid rgba(0, 176, 253, 0.18);
  border-radius: 0.08rem;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.9) inset,
    0 1px 2px rgba(11, 31, 58, 0.035),
    0 18px 48px rgba(11, 31, 58, 0.055);
}
.svc-offer__sheet::before {
  content: '';
  position: absolute;
  left: clamp(1.5rem, 3vw, 2.5rem);
  right: clamp(1.5rem, 3vw, 2.5rem);
  top: 0;
  height: 1px;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(0,176,253,0.35) 20%,
    rgba(201,162,39,0.22) 55%,
    rgba(0,176,253,0.35) 80%,
    transparent 100%);
  pointer-events: none;
}
.svc-offer__columns {
  display: grid;
  gap: 1.35rem 0;
}
@media (min-width: 768px) {
  .svc-offer__columns {
    grid-template-columns: 1fr 1fr;
    column-gap: clamp(2rem, 3.5vw, 3.25rem);
    row-gap: 0;
  }
  .svc-offer__col + .svc-offer__col {
    border-left: 1px solid rgba(11, 31, 58, 0.07);
    padding-left: clamp(1.75rem, 3vw, 2.75rem);
  }
}
.svc-offer__col p {
  margin-bottom: 1.35rem !important;
  font-size: 0.975rem !important;
  line-height: 1.78 !important;
  letter-spacing: 0.005em;
  color: var(--ac-ink-soft) !important;
  max-width: 38rem;
}
.svc-offer__col p:last-child,
.svc-offer__col p.mb-0 {
  margin-bottom: 0 !important;
}
.svc-offer__col a {
  color: var(--ac-blue, #00B0FD);
  text-decoration: none;
  border-bottom: 1px solid rgba(0, 176, 253, 0.35);
}
.svc-offer__col a:hover {
  border-bottom-color: rgba(0, 176, 253, 0.7);
}
.svc-offer__rail {
  position: relative;
}
@media (min-width: 1100px) {
  .svc-offer__rail {
    position: sticky;
    top: 1.5rem;
  }
}
.svc-offer__rules {
  position: relative;
  padding: clamp(1.35rem, 2.2vw, 1.85rem) clamp(1.25rem, 2vw, 1.65rem);
  border: 1px solid rgba(11, 31, 58, 0.08);
  border-left: 1px solid rgba(0, 176, 253, 0.45);
  border-radius: 0.08rem;
  background:
    linear-gradient(180deg, #fff 0%, #fafbfd 100%);
  box-shadow:
    0 1px 0 rgba(255,255,255,0.92) inset,
    0 1px 2px rgba(11, 31, 58, 0.04),
    0 14px 36px rgba(11, 31, 58, 0.07);
}
.svc-offer__rules-title {
  margin: 0 0 1.1rem !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: #3f536a !important;
}
.svc-offer__rules-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.svc-offer__rules-list li {
  position: relative;
  margin: 0 0 1rem;
  padding-left: 0.95rem;
  font-size: 0.9rem;
  line-height: 1.55;
  color: var(--ac-ink-soft);
}
.svc-offer__rules-list li:last-child {
  margin-bottom: 0;
}
.svc-offer__rules-list li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.55em;
  width: 0.35rem;
  height: 0.35rem;
  border-radius: 50%;
  background: rgba(0, 176, 253, 0.7);
}
.svc-offer__rules-list strong {
  color: var(--ac-ink);
  font-weight: 650;
}

/* Give the image slot above a little breathing room into the offer mast */
.main-wrapper > section.section-editorial.py-0 + .svc-offer {
  padding-top: clamp(2.5rem, 5vw, 4rem) !important;
}

/* ==========================================================================
   mcl5s — subtle sidebar CTAs + Film/Vehicle overlap + service builder air
   LOCAL PREVIEW ONLY
   1) Kill mcl5r chunky solid CTA cards — quiet stack + gold-edge lift hover
   2) service-builder: height:auto cards + overflow visible (Film no longer
      stacks over overflowing Vehicle Registration)
   3) Tighten Configure Your Service Request title air
   ========================================================================== */

@media (min-width: 992px) {
  .navbar-hc .sidebar-footer,
  .sidebar-footer {
    position: relative !important;
    z-index: 1060 !important;
    flex: 0 0 auto !important;
    flex-shrink: 0 !important;
    margin-top: auto !important;
    overflow: visible !important;
    pointer-events: auto !important;
    padding: 0 0 0.85rem !important;
    background: #14181f !important;
    border-top: none !important;
    box-shadow: none !important;
  }

  .navbar-hc .sidebar-dual-book,
  .sidebar-footer .sidebar-dual-book {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    padding-top: 0 !important;
    border-top: 1px solid rgba(255, 255, 255, 0.14) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.14) !important;
    position: relative !important;
    z-index: 1 !important;
  }

  .navbar-hc .sidebar-dual-book > a + a {
    border-top: 1px solid rgba(255, 255, 255, 0.14) !important;
  }

  .navbar-hc .sidebar-footer .btn-sidebar-phone,
  .navbar-hc .sidebar-footer .btn-book,
  .navbar-hc .sidebar-footer .btn-book-service,
  .navbar-hc .sidebar-dual-book .btn-sidebar-phone,
  .navbar-hc .sidebar-dual-book .btn-book,
  .navbar-hc .sidebar-dual-book .btn-book-service {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0.88rem 0.2rem !important;
    border-radius: 0 !important;
    border: none !important;
    box-sizing: border-box !important;
    font-size: 0.66rem !important;
    font-weight: 550 !important;
    letter-spacing: 0.18em !important;
    line-height: 1.2 !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    position: relative !important;
    z-index: 2 !important;
    overflow: visible !important;
    color: rgba(245, 247, 250, 0.9) !important;
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
    transition: color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease !important;
  }

  .navbar-hc .sidebar-footer .btn-book::after,
  .navbar-hc .sidebar-dual-book .btn-book::after,
  .sidebar-footer .btn-book::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    left: 2.05rem !important;
    bottom: 0.42rem !important;
    width: 2.6rem !important;
    height: 1px !important;
    background: rgba(58, 126, 200, 0.85) !important;
    border: none !important;
    box-shadow: none !important;
  }

  .navbar-hc .sidebar-footer .btn-sidebar-phone:hover,
  .navbar-hc .sidebar-footer .btn-sidebar-phone:focus,
  .navbar-hc .sidebar-footer .btn-sidebar-phone:focus-visible,
  .navbar-hc .sidebar-footer .btn-sidebar-phone:active,
  .navbar-hc .sidebar-footer .btn-book:hover,
  .navbar-hc .sidebar-footer .btn-book:focus,
  .navbar-hc .sidebar-footer .btn-book:focus-visible,
  .navbar-hc .sidebar-footer .btn-book:active,
  .navbar-hc .sidebar-footer .btn-book-service:hover,
  .navbar-hc .sidebar-footer .btn-book-service:focus,
  .navbar-hc .sidebar-footer .btn-book-service:focus-visible,
  .navbar-hc .sidebar-footer .btn-book-service:active,
  .navbar-hc .sidebar-dual-book .btn-sidebar-phone:hover,
  .navbar-hc .sidebar-dual-book .btn-sidebar-phone:focus,
  .navbar-hc .sidebar-dual-book .btn-sidebar-phone:focus-visible,
  .navbar-hc .sidebar-dual-book .btn-sidebar-phone:active,
  .navbar-hc .sidebar-dual-book .btn-book:hover,
  .navbar-hc .sidebar-dual-book .btn-book:focus,
  .navbar-hc .sidebar-dual-book .btn-book:focus-visible,
  .navbar-hc .sidebar-dual-book .btn-book:active,
  .navbar-hc .sidebar-dual-book .btn-book-service:hover,
  .navbar-hc .sidebar-dual-book .btn-book-service:focus,
  .navbar-hc .sidebar-dual-book .btn-book-service:focus-visible,
  .navbar-hc .sidebar-dual-book .btn-book-service:active {
    color: #ffffff !important;
    background: rgba(201, 162, 39, 0.08) !important;
    background-image: none !important;
    border: none !important;
    box-shadow: inset 0 0 0 1px rgba(201, 162, 39, 0.55) !important;
    transform: translateY(-1px) !important;
    filter: none !important;
  }

  .navbar-hc .sidebar-footer .btn-sidebar-phone i,
  .navbar-hc .sidebar-dual-book .btn-sidebar-phone i,
  .navbar-hc .sidebar-footer .btn-book i,
  .navbar-hc .sidebar-dual-book .btn-book i,
  .navbar-hc .sidebar-footer .btn-book-service i,
  .navbar-hc .sidebar-dual-book .btn-book-service i {
    margin-right: 0 !important;
    color: #3A7EC8 !important;
    font-size: 0.95rem !important;
    opacity: 0.95 !important;
  }
  .navbar-hc .sidebar-footer .btn-sidebar-phone:hover i,
  .navbar-hc .sidebar-footer .btn-sidebar-phone:focus i,
  .navbar-hc .sidebar-footer .btn-sidebar-phone:active i,
  .navbar-hc .sidebar-footer .btn-book:hover i,
  .navbar-hc .sidebar-footer .btn-book:focus i,
  .navbar-hc .sidebar-footer .btn-book:active i,
  .navbar-hc .sidebar-footer .btn-book-service:hover i,
  .navbar-hc .sidebar-footer .btn-book-service:focus i,
  .navbar-hc .sidebar-footer .btn-book-service:active i,
  .navbar-hc .sidebar-dual-book > a:hover i,
  .navbar-hc .sidebar-dual-book > a:focus i,
  .navbar-hc .sidebar-dual-book > a:active i {
    color: #e2bd47 !important;
  }

  .sidebar-scenic,
  .sidebar-scenic__veil,
  .sidebar-scenic__edge,
  .navbar-hc::before,
  .navbar-hc::after {
    pointer-events: none !important;
  }
}

/* ---- Inner pages: McLaren card panels (match About depth, less Habitation chrome) ---- */
.main-wrapper .card.card-hc,
.main-wrapper .card-hc {
  position: relative !important;
  border-radius: 0.08rem !important;
  border: 1px solid rgba(11, 31, 58, 0.08) !important;
  border-top-color: rgba(0, 176, 253, 0.22) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.98) 0%, rgba(250,251,253,0.96) 100%) !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.92) inset,
    0 1px 2px rgba(11, 31, 58, 0.035),
    0 14px 36px rgba(11, 31, 58, 0.06) !important;
  overflow: hidden;
}
.main-wrapper .card.card-hc::before,
.main-wrapper .card-hc::before {
  content: '' !important;
  position: absolute !important;
  left: 12% !important;
  right: 12% !important;
  top: 0 !important;
  height: 1px !important;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(0,176,253,0.4) 22%,
    rgba(201,162,39,0.28) 55%,
    rgba(0,176,253,0.4) 78%,
    transparent 100%) !important;
  pointer-events: none !important;
  z-index: 1 !important;
}
.main-wrapper .card.card-hc .icon-circle,
.main-wrapper .card-hc .icon-circle {
  background: rgba(0, 176, 253, 0.08) !important;
  border: 1px solid rgba(0, 176, 253, 0.22) !important;
  color: #00B0FD !important;
  box-shadow: none !important;
}
.main-wrapper .card.card-hc .price-tag,
.main-wrapper .card-hc .price-tag {
  color: var(--ac-ink, #071628) !important;
  letter-spacing: -0.02em;
}
.main-wrapper .section-title-wrap {
  margin-bottom: clamp(1.75rem, 3.5vw, 2.75rem) !important;
}
.main-wrapper .section-title-wrap h2 {
  letter-spacing: -0.02em !important;
}
.main-wrapper .table-hc {
  border: 1px solid rgba(11, 31, 58, 0.08) !important;
  border-radius: 0.08rem !important;
  overflow: hidden;
  background: #fff !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.9) inset,
    0 10px 28px rgba(11, 31, 58, 0.045) !important;
}
.main-wrapper .table-hc thead th {
  background: #f4f6f9 !important;
  border-bottom: 1px solid rgba(0, 176, 253, 0.18) !important;
  font-size: 0.72rem !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: var(--ac-muted, #3f536a) !important;
  font-weight: 650 !important;
}

/* Spacious editorial rhythm on generic inner sections (About-parity air) */
.main-wrapper > section:not(.cta-band):not(.trust-strip):not(.trust-strip--carousel):not(.page-header) {
  padding-top: clamp(2.85rem, 5.8vw, 4.75rem) !important;
  padding-bottom: clamp(2.85rem, 5.8vw, 4.75rem) !important;
}
.main-wrapper > section.section-editorial.py-0 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Laptop widths: no right overflow; portal stays inside main */
@media (min-width: 992px) and (max-width: 1600px) {
  html, body {
    overflow-x: hidden !important;
  }
  .main-wrapper {
    max-width: calc(100vw - var(--hc-sidebar-actual, 210px)) !important;
    overflow-x: clip !important;
  }
  .portal-login-cluster--desktop {
    max-width: calc(100vw - var(--hc-sidebar-actual, 210px) - 1.7rem) !important;
    top: 0.85rem !important;
    right: 0.85rem !important;
    z-index: 1040 !important;
  }
  .navbar-hc .sidebar-footer {
    z-index: 1060 !important;
  }
}

/* ---- mcl5s overlap + Configure spacing (wins last) ---- */

/* style.css .card-hc { height:100% } inflated stacked builder cards so
   Vehicle Registration overflowed the clipped service-builder and Film
   In Focus painted on top. Force natural height + visible overflow. */
.main-wrapper .service-builder,
.main-wrapper > section.service-builder,
.main-wrapper > section.bg-light-hc.service-builder {
  overflow: visible !important;
  overflow-x: visible !important;
  overflow-y: visible !important;
  position: relative !important;
  z-index: 1 !important;
}
.main-wrapper .service-builder .card.card-hc,
.main-wrapper .service-builder .card-hc,
.main-wrapper #service-builder .card-hc,
.main-wrapper #svcPlateBlock.card-hc {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  flex: 0 0 auto !important;
  align-self: flex-start !important;
}
.main-wrapper .service-builder .row,
.main-wrapper #service-builder .row.g-4 {
  align-items: flex-start !important;
  overflow: visible !important;
}
.main-wrapper .service-builder .svc-builder-steps,
.main-wrapper .service-builder .col-lg-8,
.main-wrapper .service-builder [class*="col-"] {
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
}

/* Film / editorial sections: clean stacking, never pull up over prior content */
.main-wrapper > section.section-editorial {
  position: relative !important;
  z-index: 1 !important;
  margin-top: 0 !important;
  transform: none !important;
  clear: both !important;
}
.main-wrapper > section.section-editorial + section,
.main-wrapper > section.service-builder + section.section-editorial {
  margin-top: 0 !important;
}

/* Generic card overflow:hidden from mcl5r — keep hairline clip only where
   height is natural; never force 100% height sitewide on stacked cards */
.main-wrapper .card.card-hc,
.main-wrapper .card-hc {
  height: auto !important;
}

/* Equal-height only for intentional grid card rows (not service builder stacks) */
.main-wrapper .row > [class*="col-"] > .card-hc:only-child,
.main-wrapper .pkg-card,
.main-wrapper .why-card {
  height: 100%;
}

/* Configure Your Service Request intro — wider column, air under, quiet lift.
   LOCAL PREVIEW ONLY. Soft McLaren plane, not a chunky Habitation card. */
.main-wrapper #service-builder > .container > .section-title-wrap,
.main-wrapper .service-builder > .container > .section-title-wrap {
  position: relative !important;
  margin-bottom: clamp(2.75rem, 5vw, 3.75rem) !important;
  padding: clamp(1.35rem, 2.2vw, 1.75rem) clamp(0.85rem, 1.6vw, 1.35rem) clamp(1.65rem, 2.8vw, 2.15rem) !important;
  border: 1px solid rgba(11, 31, 58, 0.07) !important;
  border-radius: 0.08rem !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.96) 0%, rgba(248, 250, 252, 0.92) 100%) !important;
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.92) inset,
    0 1px 2px rgba(11, 31, 58, 0.03),
    0 16px 36px rgba(11, 31, 58, 0.055) !important;
  overflow: visible !important;
}
.main-wrapper #service-builder > .container > .section-title-wrap::before,
.main-wrapper .service-builder > .container > .section-title-wrap::before {
  content: '' !important;
  position: absolute !important;
  left: 10% !important;
  right: 10% !important;
  top: 0 !important;
  height: 1px !important;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(0, 176, 253, 0.48) 22%,
    rgba(201, 162, 39, 0.34) 55%,
    rgba(0, 176, 253, 0.48) 78%,
    transparent 100%) !important;
  pointer-events: none !important;
  z-index: 1 !important;
}
.main-wrapper #service-builder > .container > .section-title-wrap .lead-soft,
.main-wrapper .service-builder > .container > .section-title-wrap .lead-soft {
  margin-top: 0.65rem !important;
  margin-bottom: 0.7rem !important;
  max-width: 100% !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.main-wrapper #service-builder > .container > .section-title-wrap .lead-soft:last-child,
.main-wrapper .service-builder > .container > .section-title-wrap p:last-child {
  margin-bottom: 0 !important;
}
.main-wrapper #service-builder > .container > .section-title-wrap strong,
.main-wrapper .service-builder > .container > .section-title-wrap strong {
  color: var(--ac-ink, #071628) !important;
  font-weight: 700 !important;
}
.main-wrapper #service-builder .svc-mot-add {
  margin-top: 0.95rem;
}
.main-wrapper #service-builder .svc-mot-add .pkg-card,
.main-wrapper #service-builder .svc-mot-add .svc-mot-class-card {
  height: auto !important;
  min-height: 0 !important;
}
.main-wrapper #service-builder {
  padding-top: clamp(2rem, 4vw, 3rem) !important;
  padding-bottom: clamp(2.25rem, 4.5vw, 3.5rem) !important;
}

@media (min-width: 992px) and (max-width: 1600px) {
  .navbar-hc .sidebar-footer {
    z-index: 1060 !important;
  }
}

/* ==========================================================================
   mcl5v / mcl6g — Extra notes panel (was package checklist; LOCAL PREVIEW ONLY)
   Quiet full-width panel across the content column; McLaren subtle depth.
   Chelsea mcl6g: checklist removed; customer notes textarea instead.
   ========================================================================== */
.main-wrapper #service-builder .svc-builder-steps,
.main-wrapper #service-builder .col-lg-8 {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
}
.main-wrapper #service-builder .svc-notes-panel,
.main-wrapper .service-builder .svc-notes-panel,
.main-wrapper #svcNotesPanel {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  align-self: stretch !important;
  flex: 0 0 auto !important;
  box-sizing: border-box !important;
  margin: 0 0 0.85rem !important;
  padding: 0.85rem 0.95rem 0.95rem !important;
  border: 1px solid rgba(11, 31, 58, 0.07) !important;
  border-radius: 0.08rem !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.94) 0%, rgba(248, 250, 252, 0.9) 100%) !important;
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.9) inset,
    0 1px 2px rgba(11, 31, 58, 0.02),
    0 6px 16px rgba(11, 31, 58, 0.03) !important;
  overflow: visible !important;
  position: relative !important;
  height: auto !important;
  min-height: 0 !important;
}
.main-wrapper #service-builder .svc-notes-panel > h3,
.main-wrapper #svcNotesPanel > h3 {
  letter-spacing: -0.01em !important;
  color: var(--ac-ink, #071628) !important;
  margin-bottom: 0.25rem !important;
}
.main-wrapper #service-builder .svc-notes-textarea,
.main-wrapper #svcNotes {
  width: 100% !important;
  min-height: 6.5rem !important;
  resize: vertical !important;
  border: 1px solid rgba(11, 31, 58, 0.12) !important;
  border-radius: 0.08rem !important;
  background: rgba(255, 255, 255, 0.96) !important;
  color: var(--ac-ink, #071628) !important;
  font-size: 0.92rem !important;
  line-height: 1.45 !important;
  padding: 0.65rem 0.75rem !important;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.85) inset !important;
}
.main-wrapper #service-builder .svc-notes-textarea:focus,
.main-wrapper #svcNotes:focus {
  border-color: rgba(201, 162, 39, 0.55) !important;
  box-shadow: 0 0 0 0.2rem rgba(201, 162, 39, 0.12) !important;
  outline: 0 !important;
}
.main-wrapper #service-builder .service-builder-summary #sumNotes {
  white-space: pre-wrap;
  word-break: break-word;
}

/* mcl5v follow-up — builder cards stretch full content column (flex col from above) */
.main-wrapper #service-builder .svc-builder-steps > .card.card-hc,
.main-wrapper #service-builder .svc-builder-steps > .card-hc,
.main-wrapper #service-builder .svc-builder-steps > #svcPlateBlock,
.main-wrapper #service-builder .svc-builder-steps > .vehicle-confirm-panel,
.main-wrapper #service-builder .svc-builder-steps > .svc-notes-panel,
.main-wrapper #service-builder .col-lg-8 > .card.card-hc,
.main-wrapper #service-builder .col-lg-8 > .card-hc,
.main-wrapper #service-builder .col-lg-8 > #svcPlateBlock,
.main-wrapper #service-builder .col-lg-8 > .vehicle-confirm-panel,
.main-wrapper #service-builder .col-lg-8 > .svc-notes-panel {
  width: 100% !important;
  max-width: 100% !important;
  align-self: stretch !important;
}

/* ==========================================================================
   mcl5w / mcl6b — Servicing builder UX (LOCAL PREVIEW ONLY)
   - MOT Class 4 / 5 (5L) / 7 as package-style selectable boxes (not pills)
   - Selecting a class adds MOT; re-click clears — no checkbox gate
   - Is this your vehicle? Correct / Not correct + get-in-touch box
   - Customise flatten kept (mcl5v)
   - Book Now greyd out → Coming Soon (explore builder, no book)
   ========================================================================== */

.main-wrapper #service-builder .svc-mot-panel {
  width: 100%;
  padding: 0.95rem 1rem 1.05rem;
  border: 1px solid rgba(11, 31, 58, 0.08);
  border-radius: 0.08rem;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.94) 0%, rgba(248, 250, 252, 0.88) 100%);
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.92) inset,
    0 1px 2px rgba(11, 31, 58, 0.025),
    0 8px 20px rgba(11, 31, 58, 0.035);
}
.main-wrapper #service-builder .svc-mot-class-wrap {
  /* Bootstrap row handles layout; keep gap via g-3 */
  margin-top: 0;
}
.main-wrapper #service-builder .svc-mot-class-card {
  position: relative !important;
  display: block;
  height: 100%;
  margin: 0;
  padding: 1rem 1.05rem !important;
  cursor: pointer;
  border: 1px solid rgba(11, 31, 58, 0.085) !important;
  border-top-color: transparent !important;
  border-radius: 0.08rem !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.99) 0%, rgba(249,251,253,0.97) 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.92),
    inset 0 -1px 0 rgba(11,31,58,0.025),
    0 1px 2px rgba(11,31,58,0.035),
    0 10px 26px rgba(11,31,58,0.065),
    0 26px 52px rgba(11,31,58,0.035) !important;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}
.main-wrapper #service-builder .svc-mot-class-card::before {
  content: '';
  position: absolute;
  z-index: 1;
  top: 0;
  left: clamp(0.8rem, 4%, 1.75rem);
  right: clamp(0.8rem, 4%, 1.75rem);
  height: 1px;
  pointer-events: none;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(0,176,253,0.34) 20%,
    rgba(0,176,253,0.22) 42%,
    rgba(201,162,39,0.30) 58%,
    rgba(0,176,253,0.22) 78%,
    transparent 100%);
}
.main-wrapper #service-builder .svc-mot-class-card .form-check {
  padding-left: 1.65rem;
  margin-bottom: 0;
  min-height: 0;
}
.main-wrapper #service-builder .svc-mot-class-card .form-check-input {
  margin-top: 0.2rem;
}
.main-wrapper #service-builder .svc-mot-class-card .fw-bold {
  color: var(--ac-ink, #071628);
  letter-spacing: -0.01em;
}
.main-wrapper #service-builder .svc-mot-class-card:hover {
  border-color: rgba(0,176,253,0.24) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.94),
    inset 0 -1px 0 rgba(11,31,58,0.025),
    0 2px 4px rgba(11,31,58,0.04),
    0 14px 32px rgba(11,31,58,0.08),
    0 30px 58px rgba(11,31,58,0.045) !important;
}
.main-wrapper #service-builder .svc-mot-class-card.is-selected {
  border-color: rgba(0, 176, 253, 0.48) !important;
  border-top-color: rgba(0, 176, 253, 0.2) !important;
  background:
    linear-gradient(180deg, rgba(0,176,253,0.06) 0%, rgba(255,255,255,0.98) 55%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.95),
    inset 0 0 0 1px rgba(0,176,253,0.18),
    0 2px 4px rgba(11,31,58,0.04),
    0 12px 28px rgba(0,176,253,0.12),
    0 24px 48px rgba(11,31,58,0.04) !important;
}

.main-wrapper #service-builder .svc-vehicle-match {
  padding: 0.85rem 0.95rem;
  border: 1px solid rgba(11, 31, 58, 0.08);
  border-radius: 0.08rem;
  background: rgba(248, 250, 252, 0.9);
}
.main-wrapper #service-builder .svc-vehicle-match-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
}
.main-wrapper #service-builder .svc-match-btn {
  border-radius: 0.08rem !important;
  font-weight: 650 !important;
  letter-spacing: 0.02em;
  padding: 0.45rem 0.9rem !important;
  border: 1px solid rgba(11, 31, 58, 0.14) !important;
  background: #fff !important;
  color: var(--ac-ink, #071628) !important;
}
.main-wrapper #service-builder .svc-match-btn--yes.is-active,
.main-wrapper #service-builder .svc-match-btn--yes:hover {
  border-color: rgba(25, 135, 84, 0.55) !important;
  background: rgba(25, 135, 84, 0.08) !important;
  color: #146c43 !important;
}
.main-wrapper #service-builder .svc-match-btn--no.is-active,
.main-wrapper #service-builder .svc-match-btn--no:hover {
  border-color: rgba(180, 50, 50, 0.45) !important;
  background: rgba(180, 50, 50, 0.07) !important;
  color: #842029 !important;
}
.main-wrapper #service-builder .svc-vehicle-wrong-box {
  padding: 0.95rem 1rem;
  border: 1px solid rgba(201, 162, 39, 0.4);
  border-radius: 0.08rem;
  background:
    linear-gradient(180deg, rgba(255, 252, 245, 0.96) 0%, rgba(255, 255, 255, 0.94) 100%);
  box-shadow: 0 1px 0 rgba(255,255,255,0.9) inset, 0 6px 16px rgba(11, 31, 58, 0.04);
}
.main-wrapper #service-builder .svc-vehicle-wrong-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

/* Builder Book Now → Coming Soon (disabled / greyed) */
.main-wrapper #service-builder #svcBookNow.svc-book-coming-soon,
.main-wrapper #service-builder button.svc-book-coming-soon {
  opacity: 0.62 !important;
  filter: grayscale(0.35);
  cursor: not-allowed !important;
  pointer-events: none !important;
  box-shadow: none !important;
  background: #8a93a0 !important;
  background-image: none !important;
  border: 1px solid rgba(11, 31, 58, 0.18) !important;
  color: #f4f6f8 !important;
  text-shadow: none !important;
  transform: none !important;
}
.main-wrapper #service-builder #svcBookNow.svc-book-coming-soon:hover,
.main-wrapper #service-builder #svcBookNow.svc-book-coming-soon:focus,
.main-wrapper #service-builder #svcBookNow.svc-book-coming-soon:active {
  opacity: 0.62 !important;
  background: #8a93a0 !important;
  transform: none !important;
  box-shadow: none !important;
}

/* ==========================================================================
   mcl5x — Servicing builder: MOT-only + Pre MOT / Tyre Change TBC
   Packages optional; add-on cards; keep Coming Soon + customise flatten.
   ========================================================================== */
.main-wrapper #service-builder .svc-addon-row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.55rem;
  margin-top: 0.75rem;
}
@media (min-width: 768px) {
  .main-wrapper #service-builder .svc-addon-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.main-wrapper #service-builder .svc-addon-card {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 0.55rem;
  margin: 0;
  padding: 0.75rem 0.8rem 0.75rem 2.1rem;
  border: 1px solid rgba(11, 31, 58, 0.1);
  border-radius: 0.08rem;
  background: rgba(255, 255, 255, 0.78);
  cursor: pointer;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
  box-shadow: 0 1px 0 rgba(255,255,255,0.9) inset;
}
.main-wrapper #service-builder .svc-addon-card .form-check-input {
  position: absolute;
  left: 0.7rem;
  top: 0.9rem;
  margin: 0;
}

.main-wrapper #service-builder .svc-addon-title-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.65rem;
  min-width: 0;
}
.main-wrapper #service-builder .svc-addon-expand-cue {
  display: inline-flex;
  align-items: center;
  gap: 0.28rem;
  flex: 0 0 auto;
  color: var(--ac-muted, #3f536a);
  font-size: 0.68rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  white-space: nowrap;
}
.main-wrapper #service-builder .svc-addon-chevron {
  width: 0.42rem;
  height: 0.42rem;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: translateY(-0.12rem) rotate(45deg);
  transition: transform 0.15s ease;
}
.main-wrapper #service-builder .svc-addon-expand.is-open .svc-addon-chevron {
  transform: translateY(0.12rem) rotate(225deg);
}

.main-wrapper #service-builder .svc-addon-card-body {
  display: flex;
  flex-direction: column;
  gap: 0.18rem;
  min-width: 0;
}
.main-wrapper #service-builder .svc-addon-title {
  font-weight: 700;
  font-size: 0.92rem;
  color: var(--ac-ink, #071628);
  line-height: 1.2;
}
.main-wrapper #service-builder .svc-addon-sub {
  font-size: 0.75rem;
  color: var(--ac-muted, #3f536a);
  line-height: 1.35;
}
.main-wrapper #service-builder .svc-addon-price {
  font-size: 0.78rem;
  font-weight: 650;
  color: #9a7b1a;
  letter-spacing: 0.01em;
  margin-top: 0.1rem;
}
.main-wrapper #service-builder .svc-addon-card:hover {
  border-color: rgba(0, 176, 253, 0.35);
}
.main-wrapper #service-builder .svc-addon-card.is-selected {
  border-color: rgba(0, 176, 253, 0.55);
  background: rgba(0, 176, 253, 0.05);
  box-shadow: inset 0 0 0 1px rgba(0, 176, 253, 0.2);
}


/* ==========================================================================
   mcl5y — Albyn servicing: package-area extras + MOT/service builder (POA)
   Extras as addon cards; no Habitation caravan framing; Coming Soon kept.
   ========================================================================== */
.main-wrapper #service-builder .svc-addon-row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.55rem;
  margin-top: 0.75rem;
}
@media (min-width: 768px) {
  .main-wrapper #service-builder .svc-addon-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 1200px) {
  .main-wrapper #service-builder .svc-addon-row {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}


/* ==========================================================================
   mcl6e — Addon expand cues + plain-English sub-options (Albyn MOT only)
   LOCAL PREVIEW ONLY — Albyn MOT. Sensible UK garage tick lists · POA.
   ========================================================================== */
.main-wrapper #service-builder .svc-addon-expand {
  display: flex;
  flex-direction: column;
  gap: 0;
  min-width: 0;
}
.main-wrapper #service-builder .svc-addon-expand.is-open .svc-addon-card {
  border-bottom-left-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}
.main-wrapper #service-builder .svc-addon-subs {
  margin: 0;
  padding: 0.65rem 0.75rem 0.75rem;
  border: 1px solid rgba(11, 31, 58, 0.1);
  border-top: none;
  border-radius: 0 0 0.08rem 0.08rem;
  background:
    linear-gradient(180deg, rgba(248, 250, 252, 0.96) 0%, rgba(255, 255, 255, 0.92) 100%);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.85),
    0 8px 18px rgba(11, 31, 58, 0.04);
}
.main-wrapper #service-builder .svc-addon-subs-hint {
  margin: 0 0 0.45rem;
  font-size: 0.78rem;
  font-weight: 650;
  color: var(--ac-ink, #071628);
  letter-spacing: 0.01em;
}
.main-wrapper #service-builder .svc-addon-subs-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.28rem 0.55rem;
}
@media (min-width: 576px) {
  .main-wrapper #service-builder .svc-addon-subs-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.main-wrapper #service-builder .svc-addon-sub-opt {
  display: flex;
  align-items: flex-start;
  gap: 0.45rem;
  margin: 0;
  padding: 0.28rem 0.35rem;
  border-radius: 0.06rem;
  font-size: 0.78rem;
  line-height: 1.3;
  color: var(--ac-ink-soft, #1a2f46);
  cursor: pointer;
  transition: background 0.12s ease;
}
.main-wrapper #service-builder .svc-addon-sub-opt:hover {
  background: rgba(0, 176, 253, 0.05);
}
.main-wrapper #service-builder .svc-addon-sub-opt .form-check-input {
  margin-top: 0.12rem;
  flex: 0 0 auto;
}
.main-wrapper #service-builder .svc-addon-sub-opt span {
  min-width: 0;
}


/* ==========================================================================
   mcl6g — Extra notes replaces package checklist (Albyn MOT only)
   Summary #sumNotes + payload.notes from #svcNotes. Packages / MOT / addons /
   Book Coming Soon unchanged.
   ========================================================================== */

/* mcl6h — service booking policy + compact selection summary */
.main-wrapper #service-builder .svc-book-disclaimer {
  padding: 0.65rem 0.75rem;
  border-left: 2px solid rgba(201, 162, 39, 0.65);
  background: rgba(10, 31, 61, 0.035);
  color: #5a6d80;
  font-size: 0.78rem;
  line-height: 1.45;
}
.main-wrapper #service-builder .svc-book-disclaimer strong {
  color: #273d55;
}
.main-wrapper #service-builder > .container > .row {
  align-items: flex-start !important;
}
.main-wrapper #service-builder > .container > .row > .col-lg-4 {
  align-self: flex-start !important;
  height: auto !important;
}
.main-wrapper #service-builder .service-builder-summary {
  align-self: flex-start !important;
  height: auto !important;
  min-height: 0 !important;
}

/* ==========================================================================
   mcl6i — Your selection at BOTTOM of builder (not tall right column)
   Full-width end-of-flow summary + Coming Soon + disclaimer. Albyn only.
   ========================================================================== */
.main-wrapper #service-builder .svc-builder-summary-wrap {
  margin-top: 0.5rem !important;
}
.main-wrapper #service-builder .service-builder-summary,
.main-wrapper #service-builder .service-builder-summary--bottom {
  position: static !important;
  top: auto !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 1.35rem 2.25rem 1.55rem !important; /* mcl6m: more L/R air inside Your selection */
  box-sizing: border-box !important;
}
.main-wrapper #service-builder .svc-summary-body {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 1rem 1.75rem !important;
  margin-bottom: 0.35rem !important;
}
@media (min-width: 768px) {
  .main-wrapper #service-builder .svc-summary-body {
    grid-template-columns: minmax(0, 1.4fr) minmax(14rem, 0.85fr) !important;
    align-items: start !important;
  }
}
.main-wrapper #service-builder .service-builder-book-sticky {
  position: static !important;
  bottom: auto !important;
  z-index: auto !important;
  background: transparent !important;
  padding-top: 0.95rem !important;
  margin-top: 0.55rem !important;
  border-top: 1px solid rgba(11, 31, 58, 0.08) !important;
}
.main-wrapper #service-builder .service-builder-book-sticky .btn-book {
  max-width: 28rem !important;
}

/* ==========================================================================
   mcl6k — ONE shared service-card chrome for ALL selectable builder boxes
   Packages · MOT Class 4/5/7 · Pre MOT · Brake Pads/Discs · Lights · Tyres ·
   Wipers · Battery · AdBlue · MH chassis grease.
   Same border / top accent / shadow / typography / POA line / selected state.
   Keep expand chevrons + tick subs. Albyn MOT only — no Habitation.
   ========================================================================== */

/* Shared chrome token for every selectable service box */
.main-wrapper #service-builder .svc-service-card,
.main-wrapper #service-builder .pkg-card,
.main-wrapper #service-builder .svc-mot-class-card,
.main-wrapper #service-builder .svc-addon-card {
  position: relative !important;
  display: block;
  height: 100%;
  margin: 0;
  padding: 1rem 1.05rem !important;
  cursor: pointer;
  border: 1px solid rgba(11, 31, 58, 0.085) !important;
  border-top-color: transparent !important;
  border-radius: 0.08rem !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.99) 0%, rgba(249,251,253,0.97) 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.92),
    inset 0 -1px 0 rgba(11,31,58,0.025),
    0 1px 2px rgba(11,31,58,0.035),
    0 10px 26px rgba(11,31,58,0.065),
    0 26px 52px rgba(11,31,58,0.035) !important;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
  box-sizing: border-box;
}

/* Top accent hairline — packages already have via .pkg-card::before; ensure all */
.main-wrapper #service-builder .svc-service-card::before,
.main-wrapper #service-builder .pkg-card::before,
.main-wrapper #service-builder .svc-mot-class-card::before,
.main-wrapper #service-builder .svc-addon-card::before {
  content: '';
  position: absolute;
  z-index: 1;
  top: 0;
  left: clamp(0.8rem, 4%, 1.75rem);
  right: clamp(0.8rem, 4%, 1.75rem);
  height: 1px;
  pointer-events: none;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(0,176,253,0.34) 20%,
    rgba(0,176,253,0.22) 42%,
    rgba(201,162,39,0.30) 58%,
    rgba(0,176,253,0.22) 78%,
    transparent 100%);
}

.main-wrapper #service-builder .svc-service-card:hover,
.main-wrapper #service-builder .pkg-card:hover,
.main-wrapper #service-builder .svc-mot-class-card:hover,
.main-wrapper #service-builder .svc-addon-card:hover {
  border-color: rgba(0,176,253,0.24) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.94),
    inset 0 -1px 0 rgba(11,31,58,0.025),
    0 2px 4px rgba(11,31,58,0.04),
    0 14px 32px rgba(11,31,58,0.08),
    0 30px 58px rgba(11,31,58,0.045) !important;
}

.main-wrapper #service-builder .svc-service-card.is-selected,
.main-wrapper #service-builder .pkg-card.is-selected,
.main-wrapper #service-builder .svc-mot-class-card.is-selected,
.main-wrapper #service-builder .svc-addon-card.is-selected {
  border-color: rgba(0, 176, 253, 0.48) !important;
  border-top-color: rgba(0, 176, 253, 0.2) !important;
  background:
    linear-gradient(180deg, rgba(0,176,253,0.06) 0%, rgba(255,255,255,0.98) 55%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.95),
    inset 0 0 0 1px rgba(0,176,253,0.18),
    0 2px 4px rgba(11,31,58,0.04),
    0 12px 28px rgba(0,176,253,0.12),
    0 24px 48px rgba(11,31,58,0.04) !important;
}

/* Addon cards: keep flex checkbox layout but match package chrome padding */
.main-wrapper #service-builder .svc-addon-card {
  display: flex !important;
  align-items: flex-start;
  gap: 0.55rem;
  padding: 1rem 1.05rem 1rem 2.35rem !important;
}
.main-wrapper #service-builder .svc-addon-card .form-check-input {
  position: absolute;
  left: 0.95rem;
  top: 1.15rem;
  margin: 0;
  z-index: 2;
}

/* Shared typography — title / blurb / POA */
.main-wrapper #service-builder .pkg-card .fw-bold,
.main-wrapper #service-builder .svc-mot-class-card .fw-bold,
.main-wrapper #service-builder .svc-addon-title {
  color: var(--ac-ink, #071628) !important;
  font-weight: 700 !important;
  font-size: 0.98rem !important;
  letter-spacing: -0.01em;
  line-height: 1.25;
}
.main-wrapper #service-builder .pkg-card .small.text-muted,
.main-wrapper #service-builder .svc-mot-class-card .small.text-muted,
.main-wrapper #service-builder .svc-addon-sub {
  font-size: 0.8rem !important;
  color: var(--ac-muted, #3f536a) !important;
  line-height: 1.4 !important;
  margin-top: 0.35rem;
}
.main-wrapper #service-builder .pkg-card .small.fw-semibold.text-warning,
.main-wrapper #service-builder .svc-mot-class-card .small.fw-semibold.text-warning,
.main-wrapper #service-builder .svc-addon-price {
  display: block;
  font-size: 0.8rem !important;
  font-weight: 650 !important;
  color: #9a7b1a !important;
  letter-spacing: 0.01em;
  margin-top: 0.45rem !important;
  line-height: 1.3;
}

/* Title row + chevron stay tidy inside shared chrome */
.main-wrapper #service-builder .svc-addon-title-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.65rem;
  min-width: 0;
}
.main-wrapper #service-builder .svc-addon-expand-cue {
  color: var(--ac-muted, #3f536a);
}
.main-wrapper #service-builder .svc-addon-expand.is-open .svc-addon-card {
  border-bottom-left-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}
.main-wrapper #service-builder .svc-addon-expand.is-open .svc-addon-card::before {
  /* keep accent on open parent card */
  opacity: 1;
}

/* Flatten MOT panel chrome so Class 4/5/7 sit like packages (not a nested box) */
.main-wrapper #service-builder .svc-mot-panel {
  padding: 0 !important;
  border: none !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.main-wrapper #service-builder .svc-mot-add {
  margin-top: 1.15rem;
}
.main-wrapper #service-builder .svc-addon-row {
  margin-top: 1rem;
  gap: 0.75rem;
}

/* Equal visual weight for package + MOT grids */
.main-wrapper #service-builder .svc-mot-add .pkg-card,
.main-wrapper #service-builder .svc-mot-add .svc-mot-class-card,
.main-wrapper #service-builder #svcPackagesMotor .pkg-card {
  min-height: 100%;
}


/* ==========================================================================
   mcl6l — Book band sticky logins + cyan page-kicker + blue POA detail
   + Habitation Checks Scotland cross-pill under Your selection
   ========================================================================== */

/* Soft cyan blue page-header kicker (not muted grey) */
.page-header .page-kicker,
.page-header .saltire-badge,
.page-header.page-header--compact .page-kicker,
.main-wrapper > .page-header .page-kicker,
.main-wrapper > .page-header.page-header--compact .page-kicker {
  color: var(--ac-cyan-bright, #3AA0FF) !important;
  border-bottom-color: rgba(0, 176, 253, 0.55) !important;
  text-shadow: 0 1px 10px rgba(0, 176, 253, 0.28);
}

/* Blue detail writing on POA / price-to-confirm lines (over gold) */
.main-wrapper #service-builder .svc-addon-price,
.main-wrapper #service-builder .pkg-card .small.fw-semibold.text-warning,
.main-wrapper #service-builder .svc-mot-class-card .small.fw-semibold.text-warning,
.main-wrapper #service-builder #sumPriceNote,
.main-wrapper #service-builder .svc-mot-add .small.fw-semibold {
  color: var(--ac-cyan, #00B0FD) !important;
}

/* Book page only: header band sticky with Staff/Customer logins pinned in-band */
@media (min-width: 992px) {
  body.page-book .page-header--book-band {
    position: sticky !important;
    top: 0 !important;
    z-index: 1045 !important;
  }
  body.page-book .page-header--book-band .container {
    position: relative !important;
    padding-right: 12.5rem !important; /* room for login cluster */
  }
  body.page-book .portal-login-cluster--book-band {
    position: absolute !important;
    top: 0.05rem !important;
    right: 0 !important;
    left: auto !important;
    margin: 0 !important;
    max-width: none !important;
    z-index: 2 !important;
  }
  /* No floating viewport portal on Book — logins live in the sticky band */
  body.page-book > .portal-login-cluster--desktop:not(.portal-login-cluster--book-band) {
    display: none !important;
  }
}

/* Habitation Checks Scotland cross-sell pill under Your selection */
.main-wrapper #service-builder .svc-hab-crosspill {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem 1rem;
  margin: 1rem 0 1.15rem;
  padding: 0.7rem 0.95rem;
  border-radius: 999px;
  border: 1px solid rgba(0, 176, 253, 0.28);
  background:
    linear-gradient(180deg, rgba(255,255,255,0.92) 0%, rgba(244,248,252,0.96) 100%);
  box-shadow:
    0 1px 0 rgba(255,255,255,0.8) inset,
    0 6px 18px rgba(7, 22, 40, 0.06);
}
.main-wrapper #service-builder .svc-hab-crosspill__text {
  flex: 1 1 14rem;
  font-size: 0.78rem;
  line-height: 1.4;
  font-weight: 550;
  color: var(--ac-ink-soft, #1a2f46);
  letter-spacing: 0.01em;
}
.main-wrapper #service-builder .svc-hab-crosspill__btn {
  flex: 0 0 auto;
  border-radius: 999px !important;
  border: 1px solid rgba(0, 176, 253, 0.45) !important;
  background: rgba(0, 176, 253, 0.08) !important;
  color: var(--ac-ink, #071628) !important;
  font-size: 0.68rem !important;
  font-weight: 650 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  padding: 0.42rem 0.85rem !important;
  text-decoration: none !important;
  white-space: nowrap;
}
.main-wrapper #service-builder .svc-hab-crosspill__btn:hover,
.main-wrapper #service-builder .svc-hab-crosspill__btn:focus {
  background: rgba(0, 176, 253, 0.16) !important;
  border-color: var(--ac-cyan, #00B0FD) !important;
  color: var(--ac-ink, #071628) !important;
}
@media (max-width: 575.98px) {
  .main-wrapper #service-builder .svc-hab-crosspill {
    border-radius: 1rem;
  }
  .main-wrapper #service-builder .svc-hab-crosspill__btn {
    width: 100%;
    text-align: center;
  }
}


/* ==========================================================================
   mcl6m — Your selection: more horizontal padding (keep Hab cross-pill)
   ========================================================================== */
.main-wrapper #service-builder .service-builder-summary,
.main-wrapper #service-builder .service-builder-summary--bottom {
  padding-left: 2.25rem !important;
  padding-right: 2.25rem !important;
}
@media (max-width: 575.98px) {
  .main-wrapper #service-builder .service-builder-summary,
  .main-wrapper #service-builder .service-builder-summary--bottom {
    padding-left: 1.25rem !important;
    padding-right: 1.25rem !important;
  }
}

/* mcl6p — Albyn booking notes air + sidebar/header navy + Book login spacing (LOCAL PREVIEW ONLY) */

:root {
  --ac-sidebar-navy: #0c1018;
}

/* Keep the header band flush with the sidebar instead of shifting teal to near-black. */
.page-header,
.page-header.scenic-wash,
.page-header.page-header--compact,
.main-wrapper > .page-header.page-header--compact {
  background: var(--ac-sidebar-navy) !important;
  background-image: none !important;
}
.page-header::before,
.page-header.scenic-wash::before,
.page-header.page-header--compact::before,
.page-header.page-header--compact.scenic-wash::before {
  background: linear-gradient(180deg, rgba(255,255,255,0.055) 0%, transparent 46%) !important;
}

/* More breathing room between Booking notes and its bullets. */
.main-wrapper #service-builder .service-builder-rules > strong {
  display: block;
  margin-bottom: 0.85rem !important;
}

@media (max-width: 991.98px) {
  .page-header,
  .page-header.scenic-wash,
  .page-header.page-header--compact,
  .main-wrapper > .page-header.page-header--compact {
    background: #14181f !important;
  }
}


/* mcl6p — final header/login placement reinforcement */
.page-header,
.page-header.scenic-wash,
.page-header.page-header--compact,
.main-wrapper > .page-header.page-header--compact {
  background-color: #0c1018 !important;
  background-image: none !important;
}

@media (min-width: 992px) {
  body.page-book .page-header--book-band .container {
    padding-right: 12.5rem !important;
  }
  body.page-book .portal-login-cluster--book-band {
    top: 0.85rem !important;
    right: 0.85rem !important;
    margin: 0 !important;
  }
}

@media (max-width: 991.98px) {
  .page-header,
  .page-header.scenic-wash,
  .page-header.page-header--compact,
  .main-wrapper > .page-header.page-header--compact {
    background-color: #14181f !important;
  }
}


/* mcl6q — narrower Your selection card, with more air outside (Albyn only) */
.main-wrapper #service-builder .svc-builder-summary-wrap {
  width: calc(100% - clamp(2rem, 6vw, 5rem)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
@media (max-width: 575.98px) {
  .main-wrapper #service-builder .svc-builder-summary-wrap {
    width: calc(100% - 1rem) !important;
  }
}

/* ==========================================================================
   mcl6r/mcl6t — Book login equal air + solid navy header + centred Coming Soon
   LOCAL PREVIEW ONLY · Albyn MOT · no Habitation
   mcl6t: Chelsea REJECTS lightening the header vs sidebar. Solid navy match only.
   Depth on login buttons only (subtle). No lighter band gradient.
   ========================================================================== */

/* 1) Book in-band logins: air from TOP equals air from RIGHT */
@media (min-width: 992px) {
  body.page-book .portal-login-cluster--book-band {
    top: 1.15rem !important;
    right: 1.15rem !important;
    margin: 0 !important;
  }
  body.page-book .page-header--book-band .container {
    padding-right: 12.75rem !important;
  }
}

/* 2) Header band — SOLID sidebar navy match. No lighter wash / gradient / inset glow. */
.page-header,
.page-header.scenic-wash,
.page-header.page-header--compact,
.main-wrapper > .page-header.page-header--compact {
  background: #0c1018 !important;
  background-color: #0c1018 !important;
  background-image: none !important;
  border-top: none !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.10) !important;
  box-shadow: none !important;
}
.page-header::before,
.page-header.scenic-wash::before,
.page-header.page-header--compact::before,
.page-header.page-header--compact.scenic-wash::before {
  background: none !important;
  background-image: none !important;
  opacity: 0 !important;
  content: none !important;
}
/* Keep a quiet cyan hairline under compact headers — does not lighten the face */
.page-header.page-header--compact::after,
.main-wrapper .page-header.page-header--compact::after {
  height: 1px !important;
  max-height: 1px !important;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(0,176,253,0.35) 20%,
    rgba(0,176,253,0.35) 80%,
    transparent 100%) !important;
  background-image: linear-gradient(90deg,
    transparent 0%,
    rgba(0,176,253,0.35) 20%,
    rgba(0,176,253,0.35) 80%,
    transparent 100%) !important;
  box-shadow: none !important;
}
@media (max-width: 991.98px) {
  .page-header,
  .page-header.scenic-wash,
  .page-header.page-header--compact,
  .main-wrapper > .page-header.page-header--compact {
    background: #14181f !important;
    background-color: #14181f !important;
    background-image: none !important;
    box-shadow: none !important;
  }
}

/* Login buttons ONLY — subtle soft shadow + hairline lift (not chunky; band stays flat navy) */
.portal-login-cluster--desktop .btn-book,
.portal-login-cluster--desktop .btn-portal-login,
body.page-book .portal-login-cluster--book-band .btn-portal-login {
  background: rgba(8, 12, 18, 0.72) !important;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.16) !important;
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.08) inset,
    0 3px 10px rgba(0, 0, 0, 0.22) !important;
  transform: none !important;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease !important;
}
.portal-login-cluster--desktop .btn-book:hover,
.portal-login-cluster--desktop .btn-portal-login:hover,
body.page-book .portal-login-cluster--book-band .btn-portal-login:hover {
  background: rgba(0, 176, 253, 0.12) !important;
  border-color: rgba(0, 176, 253, 0.50) !important;
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.10) inset,
    0 4px 12px rgba(0, 0, 0, 0.26) !important;
  transform: none !important;
}

/* 3) Centre Coming Soon in Your selection (Book + Servicing) */
.main-wrapper #service-builder .service-builder-book-sticky {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
}
.main-wrapper #service-builder .service-builder-book-sticky .btn-book,
.main-wrapper #service-builder .service-builder-book-sticky #svcBookNow {
  max-width: 22rem !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.main-wrapper #service-builder .service-builder-book-sticky .svc-book-disclaimer {
  text-align: left !important;
  max-width: 42rem !important;
  width: 100% !important;
}

/* mcl6s — Book: Start your package intro card removed in pages/book.html (builder kept). Albyn only. */

/* mcl6t — reinforce SOLID sidebar navy on header (Chelsea: no lightening vs sidebar) */
.page-header,
.page-header.scenic-wash,
.page-header.page-header--compact,
.main-wrapper > .page-header.page-header--compact {
  background: var(--ac-sidebar-navy, #0c1018) !important;
  background-color: var(--ac-sidebar-navy, #0c1018) !important;
  background-image: none !important;
}

/* ==========================================================================
   mcl6u — Book logins: equal TOP=RIGHT air + more button depth (Albyn only)
   Chelsea: move login boxes up; more depth; no header lightening.
   Kill sidebar bottom ghost CTA overflow (shadow clipping).
   ========================================================================== */
@media (min-width: 992px) {
  body.page-book .page-header--book-band {
    position: sticky !important;
    top: 0 !important;
    overflow: visible !important;
    /* logins positioned against the band itself, not the padded container */
  }
  body.page-book .page-header--book-band .container {
    position: static !important;
    padding-top: 0.85rem !important;
    padding-right: 13.5rem !important;
  }
  /* Fixed to the sticky band box: identical inset from top edge and right edge of the page header */
  body.page-book .portal-login-cluster--book-band {
    position: absolute !important;
    top: 0.85rem !important;
    right: 0.85rem !important;
    bottom: auto !important;
    left: auto !important;
    margin: 0 !important;
    gap: 0.45rem !important;
    z-index: 5 !important;
    transform: none !important;
  }
  /* Ensure band is the positioning context (not main-wrapper offset) */
  body.page-book .page-header.page-header--book-band {
    position: sticky !important;
  }
}

/* More McLaren depth on login buttons only — band stays solid navy */
body.page-book .portal-login-cluster--book-band .btn-portal-login,
.portal-login-cluster--desktop .btn-portal-login {
  background: linear-gradient(180deg, rgba(28,36,48,0.95) 0%, rgba(8,12,18,0.88) 100%) !important;
  border: 1px solid rgba(255,255,255,0.20) !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.12) inset,
    0 0 0 1px rgba(0,0,0,0.35),
    0 8px 18px rgba(0,0,0,0.38),
    0 2px 4px rgba(0,0,0,0.28) !important;
  transform: none !important;
}
body.page-book .portal-login-cluster--book-band .btn-portal-login:hover,
.portal-login-cluster--desktop .btn-portal-login:hover {
  background: linear-gradient(180deg, rgba(0,176,253,0.18) 0%, rgba(8,12,18,0.92) 100%) !important;
  border-color: rgba(0,176,253,0.55) !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.14) inset,
    0 0 0 1px rgba(0,0,0,0.35),
    0 10px 22px rgba(0,0,0,0.42),
    0 2px 6px rgba(0,176,253,0.15) !important;
  transform: none !important;
}

/* Clip ghost CTA / shadow hanging under sidebar bottom */
@media (min-width: 992px) {
  .navbar-hc,
  aside.navbar-hc,
  .sidebar {
    overflow-x: hidden !important;
  }
  .navbar-hc .sidebar-footer,
  .sidebar-footer {
    overflow: hidden !important;
    padding-bottom: 0.85rem !important;
  }
  .sidebar-footer .btn-sidebar-phone,
  .sidebar-footer .btn-book,
  .sidebar-footer .btn-book-service {
    box-shadow:
      0 1px 0 rgba(255,255,255,0.06) inset,
      0 2px 8px rgba(0,0,0,0.18) !important;
  }
}

/* mcl6v-final — last word: TOP inset === RIGHT inset on Book logins */
@media (min-width: 992px) {
  body.page-book .page-header.page-header--book-band {
    position: sticky !important;
    top: 0 !important;
  }
  body.page-book .page-header--book-band > .container {
    position: static !important;
  }
  body.page-book .portal-login-cluster.portal-login-cluster--book-band {
    position: absolute !important;
    top: 0.85rem !important;
    right: 0.85rem !important;
    bottom: auto !important;
    left: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
  }
}

/* mcl6w — logins are direct children of header band; TOP gap === RIGHT gap from band edges */
@media (min-width: 992px) {
  body.page-book .page-header.page-header--book-band {
    position: sticky !important;
    top: 0 !important;
    overflow: visible !important;
  }
  body.page-book .page-header--book-band > .portal-login-cluster--book-band {
    position: absolute !important;
    top: 1rem !important;
    right: 1rem !important;
    bottom: auto !important;
    left: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    z-index: 6 !important;
  }
  body.page-book .page-header--book-band > .container {
    position: relative !important;
    padding-right: 13.5rem !important;
  }
}

/* mcl6x — Book header band compact again; keep equal login inset */
@media (min-width: 992px) {
  body.page-book .page-header.page-header--book-band.page-header--compact {
    padding: 1rem 0 1rem !important;
    min-height: 0 !important;
  }
  body.page-book .page-header--book-band > .portal-login-cluster--book-band {
    top: 0.85rem !important;
    right: 0.85rem !important;
  }
  body.page-book .page-header--book-band > .container {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    padding-right: 13.5rem !important;
  }
  body.page-book .page-header--book-band h1 {
    margin-bottom: 0.35rem !important;
  }
  body.page-book .page-header--book-band .page-kicker {
    margin-bottom: 0.35rem !important;
  }
  body.page-book .page-header--book-band p {
    margin-bottom: 0 !important;
  }
}

/* ==========================================================================
   mcl6y — Services / inner CTA band: McLaren sleek (Albyn only)
   Quieter depth · softer radius · hairline accents · less chunky buttons ·
   less heavy vertical padding. Matches About cta-band--mcl corporate feel.
   ========================================================================== */
.cta-band.cta-band--mcl,
.main-wrapper > .cta-band.cta-band--mcl {
  padding: clamp(2.35rem, 4.2vw, 3.35rem) 0 clamp(2.1rem, 3.8vw, 3rem) !important;
  background:
    radial-gradient(70% 90% at 50% 0%, rgba(0, 176, 253, 0.055) 0%, transparent 52%),
    linear-gradient(180deg, #0b1118 0%, #080d14 72%, #070b12 100%) !important;
  border-top: 1px solid rgba(255, 255, 255, 0.045) !important;
  box-shadow:
    0 -1px 0 rgba(0, 176, 253, 0.14),
    0 -6px 22px rgba(0, 0, 0, 0.06) !important;
}
.cta-band.cta-band--mcl::before {
  left: 18% !important;
  right: 18% !important;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(0,176,253,0.32) 28%,
    rgba(255,255,255,0.18) 50%,
    rgba(201,162,39,0.18) 58%,
    rgba(0,176,253,0.32) 72%,
    transparent 100%) !important;
  opacity: 0.85 !important;
}
.cta-band.cta-band--mcl .container {
  max-width: 36rem !important;
}
.cta-band__kicker {
  margin-bottom: 0.7rem !important;
  padding-bottom: 0.35rem !important;
  font-size: 0.58rem !important;
  letter-spacing: 0.2em !important;
  color: rgba(245, 247, 250, 0.55) !important;
  border-bottom-color: rgba(0, 176, 253, 0.28) !important;
}
.cta-band.cta-band--mcl h2 {
  margin: 0 0 0.55rem !important;
  font-size: clamp(1.28rem, 2.1vw, 1.65rem) !important;
  font-weight: 600 !important;
  letter-spacing: -0.018em !important;
  text-shadow: none !important;
}
.cta-band__lede,
.cta-band.cta-band--mcl p.cta-band__lede {
  margin: 0 auto 1.25rem !important;
  max-width: 28rem !important;
  font-size: 0.88rem !important;
  line-height: 1.55 !important;
  color: rgba(245, 247, 250, 0.58) !important;
}
.cta-band__actions {
  gap: 0.65rem !important;
}
.cta-band.cta-band--mcl .btn-light,
.cta-band.cta-band--mcl .btn-outline-light {
  min-height: 2.2rem !important;
  padding: 0.42rem 1.1rem !important;
  font-size: 0.66rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.11em !important;
  border-radius: 0.14rem !important;
  box-shadow: none !important;
}
.cta-band.cta-band--mcl .btn-light {
  background: rgba(255, 255, 255, 0.92) !important;
  border: 1px solid rgba(255, 255, 255, 0.78) !important;
  color: #0a1524 !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.55),
    0 1px 0 rgba(0,0,0,0.12) !important;
}
.cta-band.cta-band--mcl .btn-light:hover,
.cta-band.cta-band--mcl .btn-light:focus-visible {
  background: #fff !important;
  border-color: rgba(0, 176, 253, 0.45) !important;
  color: #0a1524 !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.7),
    0 0 0 1px rgba(0,176,253,0.22) !important;
}
.cta-band.cta-band--mcl .btn-outline-light {
  background: transparent !important;
  border: 1px solid rgba(245, 247, 250, 0.28) !important;
  color: rgba(245, 247, 250, 0.88) !important;
}
.cta-band.cta-band--mcl .btn-outline-light:hover,
.cta-band.cta-band--mcl .btn-outline-light:focus-visible {
  background: rgba(0, 176, 253, 0.06) !important;
  border-color: rgba(0, 176, 253, 0.42) !important;
  color: #fff !important;
}
/* Defeat Bootstrap btn-lg / fw-bold if any leftover on CTA band */
.cta-band.cta-band--mcl .btn-lg {
  min-height: 2.2rem !important;
  padding: 0.42rem 1.1rem !important;
  font-size: 0.66rem !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  border-radius: 0.14rem !important;
}
.cta-band.cta-band--mcl .fw-bold {
  font-weight: 600 !important;
}


/* ===== mcl6z — Talk to us 3 CTAs + footer cyan→gold hairline (Albyn) ===== */
/* Restore / lock cyan→gold detail separation hairline above footer */
footer.site-footer.site-footer--mcl::before,
.site-footer.site-footer--mcl::before {
  content: "" !important;
  display: block !important;
  height: 1px !important;
  opacity: 1 !important;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(0,176,253,0.38) 16%,
    rgba(0,176,253,0.28) 36%,
    rgba(201,162,39,0.48) 50%,
    rgba(0,176,253,0.28) 64%,
    rgba(0,176,253,0.38) 84%,
    transparent 100%) !important;
  background-image: linear-gradient(90deg,
    transparent 0%,
    rgba(0,176,253,0.38) 16%,
    rgba(0,176,253,0.28) 36%,
    rgba(201,162,39,0.48) 50%,
    rgba(0,176,253,0.28) 64%,
    rgba(0,176,253,0.38) 84%,
    transparent 100%) !important;
  box-shadow: none !important;
}
/* Also cover non--mcl Albyn footers (solid gold base → cyan→gold hairline) */
footer.site-footer::before,
.site-footer::before {
  height: 1px !important;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(0,176,253,0.38) 16%,
    rgba(0,176,253,0.28) 36%,
    rgba(201,162,39,0.48) 50%,
    rgba(0,176,253,0.28) 64%,
    rgba(0,176,253,0.38) 84%,
    transparent 100%) !important;
  background-image: linear-gradient(90deg,
    transparent 0%,
    rgba(0,176,253,0.38) 16%,
    rgba(0,176,253,0.28) 36%,
    rgba(201,162,39,0.48) 50%,
    rgba(0,176,253,0.28) 64%,
    rgba(0,176,253,0.38) 84%,
    transparent 100%) !important;
  box-shadow: none !important;
}
/* Three quiet CTAs — keep McLaren sleek, not blocky */
.cta-band.cta-band--mcl .cta-band__actions {
  gap: 0.55rem !important;
}
.cta-band.cta-band--mcl .btn-light,
.cta-band.cta-band--mcl .btn-outline-light {
  min-width: 5.75rem !important;
  border-radius: 0.12rem !important;
}

/* ==========================================================================
   mcl7b — Albyn CTA depth lock (LOCAL PREVIEW ONLY)
   Book / Enquire / Call share the McLaren login-button plane: a quiet
   charcoal surface, one-pixel hairline and soft layered lift.  In particular,
   the Talk to us Book button must never fall back to Bootstrap's white fill.
   ========================================================================== */

/* One shared CTA plane across header, sidebar, sticky bars, content and bands. */
.btn-book,
.btn-book-service,
.btn-sidebar-phone,
.btn-portal-login {
  background: linear-gradient(180deg, rgba(28,36,48,0.95) 0%, rgba(8,12,18,0.88) 100%) !important;
  background-image: linear-gradient(180deg, rgba(28,36,48,0.95) 0%, rgba(8,12,18,0.88) 100%) !important;
  border: 1px solid rgba(255,255,255,0.20) !important;
  color: rgba(245,247,250,0.94) !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.12) inset,
    0 0 0 1px rgba(0,0,0,0.35),
    0 8px 18px rgba(0,0,0,0.30),
    0 2px 4px rgba(0,0,0,0.22) !important;
  text-decoration: none !important;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease !important;
}

/* Book is the primary action: cyan hairline, never a solid white block. */
.btn-book,
.portal-login-cluster .btn-book {
  border-color: rgba(0,176,253,0.48) !important;
  color: #fff !important;
}

/* Talk to us / other dark-band outline buttons use the same lifted plane. */
.cta-band.cta-band--mcl .btn-light,
.cta-band.cta-band--mcl .btn-outline-light,
.main-wrapper .cta-band .btn-light,
.main-wrapper .cta-band .btn-outline-light {
  background: linear-gradient(180deg, rgba(28,36,48,0.95) 0%, rgba(8,12,18,0.88) 100%) !important;
  background-image: linear-gradient(180deg, rgba(28,36,48,0.95) 0%, rgba(8,12,18,0.88) 100%) !important;
  border: 1px solid rgba(255,255,255,0.20) !important;
  color: rgba(245,247,250,0.94) !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.12) inset,
    0 0 0 1px rgba(0,0,0,0.35),
    0 8px 18px rgba(0,0,0,0.30),
    0 2px 4px rgba(0,0,0,0.22) !important;
}
.cta-band.cta-band--mcl .btn-light,
.main-wrapper .cta-band .btn-light {
  border-color: rgba(0,176,253,0.48) !important;
  color: #fff !important;
}

/* Shared hover/focus state: slightly brighter cyan lift, never a white flash. */
.btn-book:hover,
.btn-book:focus-visible,
.btn-book-service:hover,
.btn-book-service:focus-visible,
.btn-sidebar-phone:hover,
.btn-sidebar-phone:focus-visible,
.btn-portal-login:hover,
.btn-portal-login:focus-visible,
.cta-band.cta-band--mcl .btn-light:hover,
.cta-band.cta-band--mcl .btn-light:focus-visible,
.cta-band.cta-band--mcl .btn-outline-light:hover,
.cta-band.cta-band--mcl .btn-outline-light:focus-visible,
.main-wrapper .cta-band .btn-light:hover,
.main-wrapper .cta-band .btn-light:focus-visible,
.main-wrapper .cta-band .btn-outline-light:hover,
.main-wrapper .cta-band .btn-outline-light:focus-visible {
  background: linear-gradient(180deg, rgba(0,176,253,0.18) 0%, rgba(8,12,18,0.92) 100%) !important;
  background-image: linear-gradient(180deg, rgba(0,176,253,0.18) 0%, rgba(8,12,18,0.92) 100%) !important;
  border-color: rgba(0,176,253,0.62) !important;
  color: #fff !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.14) inset,
    0 0 0 1px rgba(0,0,0,0.35),
    0 10px 22px rgba(0,0,0,0.36),
    0 2px 6px rgba(0,176,253,0.14) !important;
  transform: none !important;
}

/* Cyan → gold authored divider above Talk to us, matching the footer detail line. */
.cta-band.cta-band--mcl::before,
.main-wrapper > .cta-band.cta-band--mcl::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  top: 0 !important;
  left: 12% !important;
  right: 12% !important;
  width: auto !important;
  height: 1px !important;
  max-height: 1px !important;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(0,176,253,0.42) 16%,
    rgba(0,176,253,0.30) 36%,
    rgba(201,162,39,0.52) 50%,
    rgba(0,176,253,0.30) 64%,
    rgba(0,176,253,0.42) 84%,
    transparent 100%) !important;
  background-image: linear-gradient(90deg,
    transparent 0%,
    rgba(0,176,253,0.42) 16%,
    rgba(0,176,253,0.30) 36%,
    rgba(201,162,39,0.52) 50%,
    rgba(0,176,253,0.30) 64%,
    rgba(0,176,253,0.42) 84%,
    transparent 100%) !important;
  box-shadow: 0 0 10px rgba(0,176,253,0.10) !important;
  opacity: 1 !important;
  pointer-events: none !important;
  z-index: 3 !important;
}

/* mcl7b follow-up — the other Albyn CTA bands use the same login-depth plane. */
.main-wrapper #classes-cta .btn-outline-light,
.main-wrapper .partners-cta-actions .btn-outline-light {
  background: linear-gradient(180deg, rgba(28,36,48,0.95) 0%, rgba(8,12,18,0.88) 100%) !important;
  background-image: linear-gradient(180deg, rgba(28,36,48,0.95) 0%, rgba(8,12,18,0.88) 100%) !important;
  border: 1px solid rgba(255,255,255,0.20) !important;
  color: rgba(245,247,250,0.94) !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.12) inset,
    0 0 0 1px rgba(0,0,0,0.35),
    0 8px 18px rgba(0,0,0,0.30),
    0 2px 4px rgba(0,0,0,0.22) !important;
}
.main-wrapper #classes-cta .btn-outline-light:hover,
.main-wrapper #classes-cta .btn-outline-light:focus-visible,
.main-wrapper .partners-cta-actions .btn-outline-light:hover,
.main-wrapper .partners-cta-actions .btn-outline-light:focus-visible {
  background: linear-gradient(180deg, rgba(0,176,253,0.18) 0%, rgba(8,12,18,0.92) 100%) !important;
  background-image: linear-gradient(180deg, rgba(0,176,253,0.18) 0%, rgba(8,12,18,0.92) 100%) !important;
  border-color: rgba(0,176,253,0.62) !important;
  color: #fff !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.14) inset,
    0 0 0 1px rgba(0,0,0,0.35),
    0 10px 22px rgba(0,0,0,0.36),
    0 2px 6px rgba(0,176,253,0.14) !important;
  transform: none !important;
}

/* Disabled Coming Soon is not an actionable CTA: retain its greyed state. */
.main-wrapper #service-builder #svcBookNow.svc-book-coming-soon,
.main-wrapper #service-builder button.svc-book-coming-soon {
  background: #8a93a0 !important;
  background-image: none !important;
  border-color: rgba(11,31,58,0.18) !important;
  box-shadow: none !important;
  color: #f4f6f8 !important;
  cursor: not-allowed !important;
  opacity: 0.62 !important;
  pointer-events: none !important;
  transform: none !important;
}

/* ==========================================================================
   mcl7c — equal portal Book Now size + cyan outline on Talk to us trio
   ========================================================================== */
.portal-login-cluster--desktop .btn-book,
.portal-login-cluster--desktop .btn-portal-login,
.portal-login-cluster--bar .btn-book,
.portal-login-cluster--bar .btn-portal-login {
  font-size: 0.62rem !important;
  font-weight: 550 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  line-height: 1.2 !important;
  padding: 0.52rem 0.9rem !important;
  min-height: 2.15rem !important;
  height: auto !important;
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Talk to us: subtle blue outline on Book, Enquire AND Call */
.cta-band.cta-band--mcl .cta-band__actions .btn,
.cta-band.cta-band--mcl .btn-light,
.cta-band.cta-band--mcl .btn-outline-light,
.cta-band.cta-band--mcl .btn-book,
.cta-band.cta-band--mcl .btn-book-service,
.cta-band.cta-band--mcl .btn-sidebar-phone,
.main-wrapper .cta-band.cta-band--mcl .btn {
  border-color: rgba(0,176,253,0.48) !important;
}

/* ==========================================================================
   mcl7d — Book Now + all CTAs match LOGIN button look/hover EXACTLY
   Do NOT restyle .btn-portal-login resting/hover — logins are the source of truth.
   ========================================================================== */

/* Portal Book Now: same metrics + surface as portal login (login styles unchanged) */
.portal-login-cluster--desktop .btn-book,
.portal-login-cluster--bar .btn-book {
  font-size: inherit !important;
  font-weight: inherit !important;
  letter-spacing: inherit !important;
  text-transform: inherit !important;
  line-height: inherit !important;
  padding: inherit !important;
  min-height: unset !important;
  height: auto !important;
  /* Match login plane from mcl6u/login depth — copy login values, not invent */
  background: linear-gradient(180deg, rgba(28,36,48,0.95) 0%, rgba(8,12,18,0.88) 100%) !important;
  background-image: linear-gradient(180deg, rgba(28,36,48,0.95) 0%, rgba(8,12,18,0.88) 100%) !important;
  border: 1px solid rgba(255,255,255,0.20) !important;
  color: rgba(245,247,250,0.94) !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.12) inset,
    0 0 0 1px rgba(0,0,0,0.35),
    0 8px 18px rgba(0,0,0,0.38),
    0 2px 4px rgba(0,0,0,0.28) !important;
  transform: none !important;
}
.portal-login-cluster--desktop .btn-book:hover,
.portal-login-cluster--desktop .btn-book:focus-visible,
.portal-login-cluster--bar .btn-book:hover,
.portal-login-cluster--bar .btn-book:focus-visible {
  background: linear-gradient(180deg, rgba(0,176,253,0.18) 0%, rgba(8,12,18,0.92) 100%) !important;
  background-image: linear-gradient(180deg, rgba(0,176,253,0.18) 0%, rgba(8,12,18,0.92) 100%) !important;
  border-color: rgba(0,176,253,0.55) !important;
  color: #fff !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.14) inset,
    0 0 0 1px rgba(0,0,0,0.35),
    0 10px 22px rgba(0,0,0,0.42),
    0 2px 6px rgba(0,176,253,0.15) !important;
  transform: none !important;
}

/* Explicit equal padding/size to login — read from login rule pair */
.portal-login-cluster--desktop .btn-book,
.portal-login-cluster--desktop .btn-portal-login,
.portal-login-cluster--bar .btn-book,
.portal-login-cluster--bar .btn-portal-login {
  font-size: 0.62rem !important;
  font-weight: 550 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  line-height: 1.2 !important;
  padding: 0.52rem 0.9rem !important;
  min-height: 2.15rem !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
}

/* Sitewide CTA hover = login hover (Book/Enquire/Call/sidebar/phone) — not login resting override */
.btn-book:hover,
.btn-book:focus-visible,
.btn-book-service:hover,
.btn-book-service:focus-visible,
.btn-sidebar-phone:hover,
.btn-sidebar-phone:focus-visible,
.cta-band.cta-band--mcl .btn:hover,
.cta-band.cta-band--mcl .btn:focus-visible,
.cta-band.cta-band--mcl .btn-light:hover,
.cta-band.cta-band--mcl .btn-outline-light:hover,
.main-wrapper .cta-band .btn:hover,
.main-wrapper .cta-band .btn-light:hover,
.main-wrapper .cta-band .btn-outline-light:hover {
  background: linear-gradient(180deg, rgba(0,176,253,0.18) 0%, rgba(8,12,18,0.92) 100%) !important;
  background-image: linear-gradient(180deg, rgba(0,176,253,0.18) 0%, rgba(8,12,18,0.92) 100%) !important;
  border-color: rgba(0,176,253,0.55) !important;
  color: #fff !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.14) inset,
    0 0 0 1px rgba(0,0,0,0.35),
    0 10px 22px rgba(0,0,0,0.42),
    0 2px 6px rgba(0,176,253,0.15) !important;
  transform: none !important;
}

/* mcl7e — sitewide CTA hover = loved login hover (Albyn) */
a.btn:hover, a.btn:focus-visible,
.btn:hover, .btn:focus-visible,
.btn-book:hover, .btn-book:focus-visible,
.btn-book-service:hover, .btn-book-service:focus-visible,
.btn-sidebar-phone:hover, .btn-sidebar-phone:focus-visible,
.cta-band .btn:hover, .cta-band .btn:focus-visible,
.sticky-hab:hover, .sticky-svc:hover,
.svc-hab-crosspill__btn:hover {
  background: linear-gradient(180deg, rgba(0,176,253,0.18) 0%, rgba(8,12,18,0.92) 100%) !important;
  background-image: linear-gradient(180deg, rgba(0,176,253,0.18) 0%, rgba(8,12,18,0.92) 100%) !important;
  border-color: rgba(0,176,253,0.55) !important;
  color: #fff !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.14) inset,
    0 0 0 1px rgba(0,0,0,0.35),
    0 10px 22px rgba(0,0,0,0.42),
    0 2px 6px rgba(0,176,253,0.15) !important;
  transform: none !important;
}
/* keep Coming Soon disabled flat */
#svcBookNow[disabled]:hover,
.btn[disabled]:hover,
.btn.disabled:hover {
  background: rgba(80,88,98,0.45) !important;
  border-color: rgba(255,255,255,0.12) !important;
  box-shadow: none !important;
  color: rgba(255,255,255,0.55) !important;
}

/* mcl7f — Talk to us CTAs MUST use login hover (defeat Bootstrap btn-light) */
.cta-band.cta-band--mcl .cta-band__actions .btn,
.cta-band.cta-band--mcl .cta-band__actions a.btn,
.main-wrapper .cta-band.cta-band--mcl .cta-band__actions .btn,
.main-wrapper .cta-band.cta-band--mcl .cta-band__actions a.btn,
.cta-band.cta-band--mcl .btn-light,
.cta-band.cta-band--mcl .btn-outline-light,
.cta-band.cta-band--mcl a.btn-light,
.cta-band.cta-band--mcl a.btn-outline-light {
  background: linear-gradient(180deg, rgba(28,36,48,0.95) 0%, rgba(8,12,18,0.88) 100%) !important;
  background-image: linear-gradient(180deg, rgba(28,36,48,0.95) 0%, rgba(8,12,18,0.88) 100%) !important;
  border: 1px solid rgba(0,176,253,0.48) !important;
  color: #fff !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.12) inset,
    0 0 0 1px rgba(0,0,0,0.35),
    0 8px 18px rgba(0,0,0,0.38),
    0 2px 4px rgba(0,0,0,0.28) !important;
}
.cta-band.cta-band--mcl .cta-band__actions .btn:hover,
.cta-band.cta-band--mcl .cta-band__actions .btn:focus-visible,
.cta-band.cta-band--mcl .cta-band__actions a.btn:hover,
.cta-band.cta-band--mcl .cta-band__actions a.btn:focus-visible,
.main-wrapper .cta-band.cta-band--mcl .cta-band__actions .btn:hover,
.main-wrapper .cta-band.cta-band--mcl .cta-band__actions a.btn:hover,
.cta-band.cta-band--mcl .btn-light:hover,
.cta-band.cta-band--mcl .btn-outline-light:hover,
.cta-band.cta-band--mcl a.btn-light:hover,
.cta-band.cta-band--mcl a.btn-outline-light:hover,
.cta-band.cta-band--mcl .btn-light:focus-visible,
.cta-band.cta-band--mcl .btn-outline-light:focus-visible {
  background: linear-gradient(180deg, rgba(0,176,253,0.18) 0%, rgba(8,12,18,0.92) 100%) !important;
  background-image: linear-gradient(180deg, rgba(0,176,253,0.18) 0%, rgba(8,12,18,0.92) 100%) !important;
  border-color: rgba(0,176,253,0.55) !important;
  color: #fff !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.14) inset,
    0 0 0 1px rgba(0,0,0,0.35),
    0 10px 22px rgba(0,0,0,0.42),
    0 2px 6px rgba(0,176,253,0.15) !important;
  transform: none !important;
}

/* mcl7g — Talk to us: centred row + EXACT login resting/hover (Albyn) */
.cta-band.cta-band--mcl .cta-band__actions {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 0.55rem !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.cta-band.cta-band--mcl .cta-band__actions .btn-book,
.cta-band.cta-band--mcl .cta-band__actions .btn-book-service,
.cta-band.cta-band--mcl .cta-band__actions .btn-sidebar-phone {

  background: linear-gradient(180deg, rgba(28,36,48,0.95) 0%, rgba(8,12,18,0.88) 100%) !important;
  background-image: linear-gradient(180deg, rgba(28,36,48,0.95) 0%, rgba(8,12,18,0.88) 100%) !important;
  border: 1px solid rgba(255,255,255,0.20) !important;
  color: rgba(245,247,250,0.94) !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.12) inset,
    0 0 0 1px rgba(0,0,0,0.35),
    0 8px 18px rgba(0,0,0,0.38),
    0 2px 4px rgba(0,0,0,0.28) !important;
  transform: none !important;
  font-size: 0.62rem !important;
  font-weight: 550 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  line-height: 1.2 !important;
  padding: 0.52rem 0.9rem !important;
  min-height: 2.15rem !important;
  border-radius: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  border-color: rgba(0,176,253,0.48) !important;
  width: auto !important;
  max-width: none !important;
}
.cta-band.cta-band--mcl .cta-band__actions .btn-book:hover,
.cta-band.cta-band--mcl .cta-band__actions .btn-book:focus-visible,
.cta-band.cta-band--mcl .cta-band__actions .btn-book-service:hover,
.cta-band.cta-band--mcl .cta-band__actions .btn-book-service:focus-visible,
.cta-band.cta-band--mcl .cta-band__actions .btn-sidebar-phone:hover,
.cta-band.cta-band--mcl .cta-band__actions .btn-sidebar-phone:focus-visible {

  background: linear-gradient(180deg, rgba(0,176,253,0.18) 0%, rgba(8,12,18,0.92) 100%) !important;
  background-image: linear-gradient(180deg, rgba(0,176,253,0.18) 0%, rgba(8,12,18,0.92) 100%) !important;
  border-color: rgba(0,176,253,0.55) !important;
  color: #fff !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.14) inset,
    0 0 0 1px rgba(0,0,0,0.35),
    0 10px 22px rgba(0,0,0,0.42),
    0 2px 6px rgba(0,176,253,0.15) !important;
  transform: none !important;

}

/* mcl7h — Talk to us uses .btn-portal-login (identical hover to header logins) */
.cta-band.cta-band--mcl .cta-band__actions {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 0.55rem !important;
}
.cta-band.cta-band--mcl .cta-band__actions .btn-portal-login {
  /* inherit all portal-login-cluster desktop login styles via duplicate selectors below */
  width: auto !important;
  margin: 0 !important;
}
/* Apply the SAME rules that style header logins, scoped to Talk to us */
.cta-band.cta-band--mcl .cta-band__actions .btn-portal-login,
.portal-login-cluster--desktop .btn-portal-login {
  background: linear-gradient(180deg, rgba(28,36,48,0.95) 0%, rgba(8,12,18,0.88) 100%) !important;
  background-image: linear-gradient(180deg, rgba(28,36,48,0.95) 0%, rgba(8,12,18,0.88) 100%) !important;
  border: 1px solid rgba(255,255,255,0.20) !important;
  color: rgba(245,247,250,0.94) !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.12) inset,
    0 0 0 1px rgba(0,0,0,0.35),
    0 8px 18px rgba(0,0,0,0.38),
    0 2px 4px rgba(0,0,0,0.28) !important;
  font-size: 0.62rem !important;
  font-weight: 550 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  line-height: 1.2 !important;
  padding: 0.52rem 0.9rem !important;
  min-height: 2.15rem !important;
  border-radius: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  transform: none !important;
}
.cta-band.cta-band--mcl .cta-band__actions .btn-portal-login {
  border-color: rgba(0,176,253,0.48) !important;
}
.cta-band.cta-band--mcl .cta-band__actions .btn-portal-login:hover,
.cta-band.cta-band--mcl .cta-band__actions .btn-portal-login:focus-visible,
.portal-login-cluster--desktop .btn-portal-login:hover,
.portal-login-cluster--desktop .btn-portal-login:focus-visible {
  background: linear-gradient(180deg, rgba(0,176,253,0.18) 0%, rgba(8,12,18,0.92) 100%) !important;
  background-image: linear-gradient(180deg, rgba(0,176,253,0.18) 0%, rgba(8,12,18,0.92) 100%) !important;
  border-color: rgba(0,176,253,0.55) !important;
  color: #fff !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.14) inset,
    0 0 0 1px rgba(0,0,0,0.35),
    0 10px 22px rgba(0,0,0,0.42),
    0 2px 6px rgba(0,176,253,0.15) !important;
  transform: none !important;
}

/* mcl7k — Sign in card: light again, more depth + full outline (no dark panel) */
.main-wrapper .form-card {
  position: relative !important;
  border: 1px solid rgba(11, 31, 58, 0.12) !important;
  border-top-color: rgba(11, 31, 58, 0.12) !important;
  border-radius: 0.1rem !important;
  padding: 1.65rem 1.55rem 1.7rem !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(248,250,252,0.98) 55%, rgba(244,247,250,0.96) 100%) !important;
  color: inherit !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,1),
    inset 0 -1px 0 rgba(11,31,58,0.04),
    0 1px 2px rgba(11,31,58,0.06),
    0 10px 24px rgba(11,31,58,0.10),
    0 28px 56px rgba(11,31,58,0.08) !important;
}
.main-wrapper .form-card::before {
  display: none !important;
}
.main-wrapper .form-card::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  z-index: 1;
  box-shadow:
    inset 0 0 0 1px rgba(0,176,253,0.38),
    inset 0 0 0 1px rgba(201,162,39,0.18);
}
.main-wrapper .form-card h2,
.main-wrapper .form-card .h5 {
  color: inherit !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  font-size: inherit !important;
  font-weight: 700 !important;
}
.main-wrapper .form-card .form-label {
  color: inherit !important;
}
.main-wrapper .form-card .form-control {
  background: #fff !important;
  border: 1px solid rgba(11,31,58,0.16) !important;
  color: inherit !important;
  border-radius: 0.08rem !important;
  box-shadow: none !important;
}
.main-wrapper .form-card .form-control:focus {
  border-color: rgba(0,176,253,0.55) !important;
  box-shadow: 0 0 0 3px rgba(0,176,253,0.15) !important;
  background: #fff !important;
}
.main-wrapper .form-card .portal-beta-note,
.main-wrapper .form-card .alert-warning.portal-beta-note {
  background: rgba(201, 162, 39, 0.10) !important;
  color: #5c4a12 !important;
  border: 1px solid rgba(201, 162, 39, 0.55) !important;
  border-radius: 0.08rem !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.65) !important;
  padding: 0.7rem 0.85rem !important;
  font-size: 0.88rem !important;
  font-weight: 500 !important;
}

/* ==========================================================================
   mcl7l — ALL CTA buttons: McLaren depth matching portal login (Albyn)
   Resting = login navy gradient + inset highlight + drop shadow, sharp corners.
   Hover = loved cyan wash (Chelsea login hover). transform: none always.
   Coming Soon / disabled stays grey. Do NOT touch .form-card (mcl7k light).
   ========================================================================== */

/* Shared McLaren CTA plane — body / sticky / outline CTAs */
.main-wrapper .btn-book:not([disabled]):not(.disabled):not(.svc-book-coming-soon),
.main-wrapper .btn-book-service:not([disabled]):not(.disabled),
.main-wrapper a.btn-book:not(.svc-book-coming-soon),
.main-wrapper a.btn-book-service,
.main-wrapper .btn-outline-primary,
.main-wrapper a.btn-outline-primary,
.sticky-book-bar .btn-book,
.sticky-book-bar .btn-book-service,
.sticky-book-bar .btn-portal-login,
a.sticky-hab.btn-book,
a.sticky-svc.btn-book-service,
.cta-band .btn-book,
.cta-band .btn-book-service,
.cta-band .btn-light,
.cta-band .btn-outline-light,
.hero-cta-row .btn-book.hero-cta,
.hero .btn-book:not([disabled]):not(.disabled) {
  background: linear-gradient(180deg, rgba(28,36,48,0.95) 0%, rgba(8,12,18,0.88) 100%) !important;
  background-image: linear-gradient(180deg, rgba(28,36,48,0.95) 0%, rgba(8,12,18,0.88) 100%) !important;
  border: 1px solid rgba(0,176,253,0.48) !important;
  color: rgba(245,247,250,0.94) !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.12) inset,
    0 0 0 1px rgba(0,0,0,0.35),
    0 8px 18px rgba(0,0,0,0.38),
    0 2px 4px rgba(0,0,0,0.28) !important;
  border-radius: 0 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  font-weight: 550 !important;
  transform: none !important;
  filter: none !important;
  text-shadow: none !important;
}

.main-wrapper .btn-book:not([disabled]):not(.disabled):not(.svc-book-coming-soon):hover,
.main-wrapper .btn-book:not([disabled]):not(.disabled):not(.svc-book-coming-soon):focus-visible,
.main-wrapper .btn-book-service:not([disabled]):not(.disabled):hover,
.main-wrapper .btn-book-service:not([disabled]):not(.disabled):focus-visible,
.main-wrapper a.btn-book:not(.svc-book-coming-soon):hover,
.main-wrapper a.btn-book:not(.svc-book-coming-soon):focus-visible,
.main-wrapper a.btn-book-service:hover,
.main-wrapper a.btn-book-service:focus-visible,
.main-wrapper .btn-outline-primary:hover,
.main-wrapper .btn-outline-primary:focus-visible,
.main-wrapper a.btn-outline-primary:hover,
.main-wrapper a.btn-outline-primary:focus-visible,
.sticky-book-bar .btn-book:hover,
.sticky-book-bar .btn-book:focus-visible,
.sticky-book-bar .btn-book-service:hover,
.sticky-book-bar .btn-book-service:focus-visible,
.sticky-book-bar .btn-portal-login:hover,
.sticky-book-bar .btn-portal-login:focus-visible,
a.sticky-hab.btn-book:hover,
a.sticky-hab.btn-book:focus-visible,
a.sticky-svc.btn-book-service:hover,
a.sticky-svc.btn-book-service:focus-visible,
.cta-band .btn-book:hover,
.cta-band .btn-book:focus-visible,
.cta-band .btn-book-service:hover,
.cta-band .btn-book-service:focus-visible,
.cta-band .btn-light:hover,
.cta-band .btn-light:focus-visible,
.cta-band .btn-outline-light:hover,
.cta-band .btn-outline-light:focus-visible,
.hero-cta-row .btn-book.hero-cta:hover,
.hero-cta-row .btn-book.hero-cta:focus-visible,
.hero .btn-book:not([disabled]):not(.disabled):hover,
.hero .btn-book:not([disabled]):not(.disabled):focus-visible {
  background: linear-gradient(180deg, rgba(0,176,253,0.18) 0%, rgba(8,12,18,0.92) 100%) !important;
  background-image: linear-gradient(180deg, rgba(0,176,253,0.18) 0%, rgba(8,12,18,0.92) 100%) !important;
  border-color: rgba(0,176,253,0.55) !important;
  color: #fff !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.14) inset,
    0 0 0 1px rgba(0,0,0,0.35),
    0 10px 22px rgba(0,0,0,0.42),
    0 2px 6px rgba(0,176,253,0.15) !important;
  transform: none !important;
  filter: none !important;
}

/* Header portal Book Now — reinforce login twin (white resting border) */
.portal-login-cluster--desktop .btn-book,
.portal-login-cluster--bar .btn-book {
  background: linear-gradient(180deg, rgba(28,36,48,0.95) 0%, rgba(8,12,18,0.88) 100%) !important;
  background-image: linear-gradient(180deg, rgba(28,36,48,0.95) 0%, rgba(8,12,18,0.88) 100%) !important;
  border: 1px solid rgba(255,255,255,0.20) !important;
  color: rgba(245,247,250,0.94) !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.12) inset,
    0 0 0 1px rgba(0,0,0,0.35),
    0 8px 18px rgba(0,0,0,0.38),
    0 2px 4px rgba(0,0,0,0.28) !important;
  border-radius: 0 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  transform: none !important;
}
.portal-login-cluster--desktop .btn-book:hover,
.portal-login-cluster--desktop .btn-book:focus-visible,
.portal-login-cluster--bar .btn-book:hover,
.portal-login-cluster--bar .btn-book:focus-visible {
  background: linear-gradient(180deg, rgba(0,176,253,0.18) 0%, rgba(8,12,18,0.92) 100%) !important;
  background-image: linear-gradient(180deg, rgba(0,176,253,0.18) 0%, rgba(8,12,18,0.92) 100%) !important;
  border-color: rgba(0,176,253,0.55) !important;
  color: #fff !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.14) inset,
    0 0 0 1px rgba(0,0,0,0.35),
    0 10px 22px rgba(0,0,0,0.42),
    0 2px 6px rgba(0,176,253,0.15) !important;
  transform: none !important;
}

/* Sidebar CTAs — McLaren login depth (override quiet transparent stack) */
.btn-sidebar-phone,
.sidebar-dual-book .btn-sidebar-phone,
.sidebar-footer .btn-sidebar-phone,
.sidebar-dual-book .btn-book,
.sidebar-footer .btn-book,
.sidebar-dual-book .btn-book-service,
.sidebar-footer .btn-book-service,
.navbar-hc .sidebar-footer .btn-sidebar-phone,
.navbar-hc .sidebar-footer .btn-book,
.navbar-hc .sidebar-footer .btn-book-service,
.navbar-hc .sidebar-dual-book .btn-sidebar-phone,
.navbar-hc .sidebar-dual-book .btn-book,
.navbar-hc .sidebar-dual-book .btn-book-service {
  background: linear-gradient(180deg, rgba(28,36,48,0.95) 0%, rgba(8,12,18,0.88) 100%) !important;
  background-image: linear-gradient(180deg, rgba(28,36,48,0.95) 0%, rgba(8,12,18,0.88) 100%) !important;
  border: 1px solid rgba(0,176,253,0.48) !important;
  color: rgba(245,247,250,0.94) !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.12) inset,
    0 0 0 1px rgba(0,0,0,0.35),
    0 8px 18px rgba(0,0,0,0.38),
    0 2px 4px rgba(0,0,0,0.28) !important;
  border-radius: 0 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  font-weight: 550 !important;
  font-size: 0.62rem !important;
  padding: 0.55rem 0.65rem !important;
  min-height: 2.15rem !important;
  margin: 0.2rem 0 !important;
  justify-content: flex-start !important;
  gap: 0.55rem !important;
  transform: none !important;
  text-shadow: none !important;
  filter: none !important;
}

.btn-sidebar-phone:hover,
.btn-sidebar-phone:focus,
.btn-sidebar-phone:focus-visible,
.btn-sidebar-phone:active,
.sidebar-dual-book .btn-sidebar-phone:hover,
.sidebar-dual-book .btn-sidebar-phone:focus,
.sidebar-dual-book .btn-sidebar-phone:focus-visible,
.sidebar-dual-book .btn-sidebar-phone:active,
.sidebar-footer .btn-sidebar-phone:hover,
.sidebar-footer .btn-sidebar-phone:focus,
.sidebar-footer .btn-sidebar-phone:focus-visible,
.sidebar-footer .btn-sidebar-phone:active,
.sidebar-dual-book .btn-book:hover,
.sidebar-dual-book .btn-book:focus,
.sidebar-dual-book .btn-book:focus-visible,
.sidebar-dual-book .btn-book:active,
.sidebar-footer .btn-book:hover,
.sidebar-footer .btn-book:focus,
.sidebar-footer .btn-book:focus-visible,
.sidebar-footer .btn-book:active,
.sidebar-dual-book .btn-book-service:hover,
.sidebar-dual-book .btn-book-service:focus,
.sidebar-dual-book .btn-book-service:focus-visible,
.sidebar-dual-book .btn-book-service:active,
.sidebar-footer .btn-book-service:hover,
.sidebar-footer .btn-book-service:focus,
.sidebar-footer .btn-book-service:focus-visible,
.sidebar-footer .btn-book-service:active,
.navbar-hc .sidebar-footer .btn-sidebar-phone:hover,
.navbar-hc .sidebar-footer .btn-sidebar-phone:focus,
.navbar-hc .sidebar-footer .btn-sidebar-phone:focus-visible,
.navbar-hc .sidebar-footer .btn-sidebar-phone:active,
.navbar-hc .sidebar-footer .btn-book:hover,
.navbar-hc .sidebar-footer .btn-book:focus,
.navbar-hc .sidebar-footer .btn-book:focus-visible,
.navbar-hc .sidebar-footer .btn-book:active,
.navbar-hc .sidebar-footer .btn-book-service:hover,
.navbar-hc .sidebar-footer .btn-book-service:focus,
.navbar-hc .sidebar-footer .btn-book-service:focus-visible,
.navbar-hc .sidebar-footer .btn-book-service:active,
.navbar-hc .sidebar-dual-book .btn-sidebar-phone:hover,
.navbar-hc .sidebar-dual-book .btn-sidebar-phone:focus,
.navbar-hc .sidebar-dual-book .btn-sidebar-phone:focus-visible,
.navbar-hc .sidebar-dual-book .btn-sidebar-phone:active,
.navbar-hc .sidebar-dual-book .btn-book:hover,
.navbar-hc .sidebar-dual-book .btn-book:focus,
.navbar-hc .sidebar-dual-book .btn-book:focus-visible,
.navbar-hc .sidebar-dual-book .btn-book:active,
.navbar-hc .sidebar-dual-book .btn-book-service:hover,
.navbar-hc .sidebar-dual-book .btn-book-service:focus,
.navbar-hc .sidebar-dual-book .btn-book-service:focus-visible,
.navbar-hc .sidebar-dual-book .btn-book-service:active {
  background: linear-gradient(180deg, rgba(0,176,253,0.18) 0%, rgba(8,12,18,0.92) 100%) !important;
  background-image: linear-gradient(180deg, rgba(0,176,253,0.18) 0%, rgba(8,12,18,0.92) 100%) !important;
  border: 1px solid rgba(0,176,253,0.55) !important;
  color: #fff !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.14) inset,
    0 0 0 1px rgba(0,0,0,0.35),
    0 10px 22px rgba(0,0,0,0.42),
    0 2px 6px rgba(0,176,253,0.15) !important;
  transform: none !important;
  filter: none !important;
}

/* Kill quiet underline marker on sidebar Book */
.navbar-hc .sidebar-footer .btn-book::after,
.navbar-hc .sidebar-dual-book .btn-book::after,
.sidebar-footer .btn-book::after,
.sidebar-dual-book .btn-book::after {
  display: none !important;
  content: none !important;
}

/* Sidebar icons stay readable on McLaren plane */
.btn-sidebar-phone i,
.sidebar-dual-book .btn-sidebar-phone i,
.sidebar-footer .btn-sidebar-phone i,
.sidebar-dual-book .btn-book i,
.sidebar-footer .btn-book i,
.sidebar-dual-book .btn-book-service i,
.sidebar-footer .btn-book-service i,
.navbar-hc .sidebar-footer .btn-sidebar-phone i,
.navbar-hc .sidebar-dual-book .btn-sidebar-phone i,
.navbar-hc .sidebar-footer .btn-book i,
.navbar-hc .sidebar-dual-book .btn-book i,
.navbar-hc .sidebar-footer .btn-book-service i,
.navbar-hc .sidebar-dual-book .btn-book-service i {
  color: rgba(0,176,253,0.9) !important;
}
.btn-sidebar-phone:hover i,
.sidebar-footer .btn-sidebar-phone:hover i,
.sidebar-footer .btn-book:hover i,
.sidebar-footer .btn-book-service:hover i,
.navbar-hc .sidebar-footer .btn-sidebar-phone:hover i,
.navbar-hc .sidebar-footer .btn-book:hover i,
.navbar-hc .sidebar-footer .btn-book-service:hover i,
.navbar-hc .sidebar-dual-book > a:hover i {
  color: #fff !important;
}

/* Soften hairline separators between McLaren sidebar buttons */
@media (min-width: 992px) {
  .navbar-hc .sidebar-dual-book > a + a,
  .sidebar-dual-book > a + a {
    border-top: none !important;
  }
  .navbar-hc .sidebar-dual-book,
  .sidebar-footer .sidebar-dual-book {
    gap: 0.35rem !important;
    border-top: 1px solid rgba(255,255,255,0.10) !important;
    border-bottom: 1px solid rgba(255,255,255,0.10) !important;
    padding-top: 0.45rem !important;
    padding-bottom: 0.45rem !important;
  }
}

/* Coming Soon / disabled — stay grey flat (defeat McLaren CTA) */
.main-wrapper #service-builder #svcBookNow.svc-book-coming-soon,
.main-wrapper #service-builder button.svc-book-coming-soon,
.main-wrapper #service-builder #svcBookNow[disabled],
.main-wrapper .btn[disabled],
.main-wrapper .btn.disabled,
#svcBookNow[disabled],
.btn[disabled],
.btn.disabled {
  background: rgba(80,88,98,0.55) !important;
  background-image: none !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
  color: rgba(255,255,255,0.55) !important;
  box-shadow: none !important;
  transform: none !important;
  filter: grayscale(0.25) !important;
  cursor: not-allowed !important;
  opacity: 0.7 !important;
}
.main-wrapper #service-builder #svcBookNow.svc-book-coming-soon:hover,
.main-wrapper #service-builder #svcBookNow.svc-book-coming-soon:focus,
.main-wrapper #service-builder #svcBookNow.svc-book-coming-soon:focus-visible,
.main-wrapper #service-builder #svcBookNow[disabled]:hover,
.main-wrapper .btn[disabled]:hover,
.main-wrapper .btn.disabled:hover,
#svcBookNow[disabled]:hover,
.btn[disabled]:hover,
.btn.disabled:hover {
  background: rgba(80,88,98,0.55) !important;
  background-image: none !important;
  border-color: rgba(255,255,255,0.12) !important;
  color: rgba(255,255,255,0.55) !important;
  box-shadow: none !important;
  transform: none !important;
}

/* Explicit: leave mcl7k light .form-card alone — no dark panel restyle here */

/* mcl7l — Customer login: Sign in beside image (McLaren split band) */
.portal-signin-band .portal-signin-row {
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
}
.portal-signin-band .portal-signin-media {
  min-height: 22rem;
}
@media (min-width: 992px) {
  .portal-signin-band .portal-signin-media {
    min-height: 100%;
  }
  .portal-signin-band .portal-signin-card {
    display: flex;
    flex-direction: column;
  }
}
@media (max-width: 991.98px) {
  .portal-signin-band .portal-signin-media {
    min-height: 14rem;
  }
}

/* mcl7o — SITEWIDE: cyan→gold detail line above every footer (Albyn) */
footer.site-footer::before,
.site-footer::before,
footer.site-footer.site-footer--mcl::before,
.site-footer.site-footer--mcl::before {
  content: "" !important;
  display: block !important;
  height: 1px !important;
  width: 100% !important;
  max-width: min(52rem, 88%) !important;
  margin: 0 auto clamp(2rem, 4vw, 2.75rem) !important;
  opacity: 1 !important;
  background-image: none !important;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(0,176,253,0.42) 14%,
    rgba(0,176,253,0.28) 34%,
    rgba(201,162,39,0.55) 50%,
    rgba(0,176,253,0.28) 66%,
    rgba(0,176,253,0.42) 86%,
    transparent 100%) !important;
  box-shadow: none !important;
  border: none !important;
}

/* mcl7r — Contact Habitation card fills leftover column + link pill */
.contact-aside {
  min-height: 100%;
}
.contact-aside > .contact-hab-card {
  flex: 1 1 auto !important;
  margin-top: 1rem !important;
  justify-content: flex-start !important;
  border: 1px solid rgba(11,31,58,0.10) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.9),
    0 8px 22px rgba(11,31,58,0.07) !important;
}
.contact-hab-card__logo {
  width: 56px !important;
  height: 56px !important;
  object-fit: contain !important;
}
.contact-hab-card__copy {
  line-height: 1.4 !important;
  color: rgba(11,31,58,0.82) !important;
}
.contact-hab-card__link {
  display: inline-flex !important;
  align-items: center !important;
  padding: 0.35rem 0.85rem !important;
  border-radius: 999px !important;
  font-size: 0.72rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em !important;
  text-decoration: none !important;
  color: rgba(245,247,250,0.95) !important;
  background: linear-gradient(180deg, rgba(28,36,48,0.95) 0%, rgba(8,12,18,0.88) 100%) !important;
  border: 1px solid rgba(0,176,253,0.48) !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.12) inset,
    0 4px 12px rgba(0,0,0,0.22) !important;
}
.contact-hab-card__link:hover {
  background: linear-gradient(180deg, rgba(0,176,253,0.18) 0%, rgba(8,12,18,0.92) 100%) !important;
  border-color: rgba(0,176,253,0.55) !important;
  color: #fff !important;
}

/* mcl7s — Habitation card: fill air + depot disclaimer */
.contact-hab-card__logo {
  width: 64px !important;
  height: 64px !important;
}
.contact-hab-card__note {
  padding-top: 0.85rem !important;
  border-top: 1px solid rgba(11,31,58,0.08) !important;
  color: rgba(11,31,58,0.62) !important;
  line-height: 1.45 !important;
  font-size: 0.78rem !important;
}

/* mcl7t — Habitation link: Saltire pill like Habitation contact header */
.main-wrapper .contact-hab-card a.contact-hab-card__link.saltire-badge,
.contact-hab-card a.contact-hab-card__link.saltire-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.45rem !important;
  margin: 0 !important;
  padding: 0.55rem 1.15rem !important;
  border-radius: 999px !important;
  font-size: 0.92rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.01em !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
  text-transform: none !important;
  min-height: 0 !important;
  color: #0B3D63 !important;
  background: rgba(0, 94, 184, 0.10) !important;
  background-image: none !important;
  border: 1px solid #5B8DB8 !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.85) inset,
    0 3px 10px rgba(10, 31, 61, 0.14) !important;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  white-space: nowrap !important;
}
.main-wrapper .contact-hab-card a.contact-hab-card__link.saltire-badge img,
.contact-hab-card a.contact-hab-card__link.saltire-badge img {
  display: block !important;
  width: 1.15rem !important;
  height: 1.15rem !important;
  object-fit: contain !important;
  flex-shrink: 0 !important;
  border-radius: 0 !important;
}
.main-wrapper .contact-hab-card a.contact-hab-card__link.saltire-badge:hover,
.contact-hab-card a.contact-hab-card__link.saltire-badge:hover {
  background: rgba(0, 94, 184, 0.16) !important;
  background-image: none !important;
  border-color: #005EB8 !important;
  color: #0A1F3D !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.9) inset,
    0 4px 14px rgba(10, 31, 61, 0.18) !important;
}

/* mcl7t lock — beat corporate saltire-hide for this Habitation link only */
.main-wrapper .contact-hab-card a.contact-hab-card__link.saltire-badge {
  display: inline-flex !important;
  background: rgba(0, 94, 184, 0.10) !important;
  border: 1px solid #5B8DB8 !important;
  border-bottom: 1px solid #5B8DB8 !important;
  border-radius: 999px !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.85) inset,
    0 3px 10px rgba(10, 31, 61, 0.14) !important;
  color: #0B3D63 !important;
  letter-spacing: 0.01em !important;
  text-transform: none !important;
  font-size: 0.92rem !important;
  font-weight: 700 !important;
  padding: 0.55rem 1.15rem !important;
}
.main-wrapper .contact-hab-card a.contact-hab-card__link.saltire-badge img,
.main-wrapper .contact-hab-card img[src*="saltire"] {
  display: block !important;
  width: 1.15rem !important;
  height: 1.15rem !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* mcl7v — Habitation card note tighter after shorter disclaimer */
.contact-hab-card__note {
  padding-top: 0.7rem !important;
  font-size: 0.76rem !important;
}


/* mcl7x — Habitation logo larger; centred in left band before copy */
.contact-hab-card .d-flex.align-items-start.gap-3 {
  display: flex !important;
  align-items: center !important;
  gap: 1rem !important;
}
.contact-hab-card__logo {
  width: 92px !important;
  height: 92px !important;
  flex: 0 0 92px !important;
  margin: 0 auto 0 0 !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block !important;
  align-self: center !important;
}
.contact-hab-card .d-flex.align-items-start.gap-3 > div {
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

/* mcl7y — Habitation card gap matches Depot → Quick fees (mb-4) */
.contact-aside > .contact-hab-card {
  margin-top: 1.5rem !important;
}

/* mcl7z — Habitation logo: keep size, shift left toward band edge */
.contact-hab-card .d-flex.align-items-start.gap-3 {
  gap: 0.65rem !important;
}
.contact-hab-card {
  padding-left: 1rem !important;
}
.contact-hab-card__logo {
  margin-left: -0.15rem !important;
  margin-right: 0 !important;
}

/* mcl80 — Contact aside: tighter equal gaps so column aligns with Enquire */
.contact-aside > .card-hc.mb-3 {
  margin-bottom: 0.85rem !important;
}
.contact-aside > .card-hc:not(.contact-hab-card) + .card-hc {
  margin-top: 0 !important;
}
.contact-aside > .contact-hab-card {
  margin-top: 0.85rem !important;
}
.contact-aside {
  justify-content: flex-start !important;
}
.contact-aside > .contact-hab-card {
  flex: 1 1 auto !important;
}

/* mcl81 — revert mcl80 gaps; centre logo in equal left band */
.contact-aside > .card-hc.mb-3,
.contact-aside > .card-hc.mb-4 {
  margin-bottom: 1.5rem !important;
}
.contact-aside > .contact-hab-card {
  margin-top: 1.5rem !important;
  padding-left: 1.25rem !important;
  padding-right: 1.25rem !important;
}
.contact-hab-card__top {
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
}
.contact-hab-card__logo-band {
  flex: 0 0 6.75rem !important;
  width: 6.75rem !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important; /* centre logo in band edge → info edge */
  margin: 0 !important;
  padding: 0 !important;
}
.contact-hab-card__logo {
  width: 88px !important;
  height: 88px !important;
  max-width: 88px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  display: block !important;
  object-fit: contain !important;
  object-position: center center !important;
}
.contact-hab-card__info {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  padding-left: 0.85rem !important;
}

/* mcl82 — equal Depot↔fees / Hab↔fees gaps + vehicle fields on one grid */
.contact-aside > .card-hc.mb-4 { margin-bottom: 1.5rem !important; }
.contact-aside > .contact-hab-card { margin-top: 1.5rem !important; }
#bookForm .enquire-vehicle-field {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-end !important;
}
#bookForm .enquire-vehicle-field .form-label {
  min-height: 1.35rem !important;
  margin-bottom: 0.4rem !important;
  display: block !important;
  line-height: 1.25 !important;
}
#bookForm .enquire-vehicle-field .form-control {
  width: 100% !important;
  height: 2.5rem !important;
  margin: 0 !important;
}

/* mcl83 — Contact aside: FORCE equal air Depot↔fees and fees↔Hab */
.contact-aside {
  display: flex !important;
  flex-direction: column !important;
  gap: 1.5rem !important;
}
.contact-aside > .contact-aside-card {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.contact-aside > .contact-aside-card--hab {
  flex: 1 1 auto !important;
}

/* mcl84 — SITEWIDE footer cyan→gold detail line (visible, above content) */
footer.site-footer,
.site-footer,
footer.site-footer.site-footer--mcl,
.site-footer.site-footer--mcl {
  position: relative !important;
  overflow-x: clip !important;
  overflow-y: visible !important;
  border-top: none !important;
  padding-top: clamp(2.75rem, 5vw, 3.75rem) !important;
}
footer.site-footer::before,
.site-footer::before,
footer.site-footer.site-footer--mcl::before,
.site-footer.site-footer--mcl::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 50% !important;
  right: auto !important;
  bottom: auto !important;
  display: block !important;
  width: min(52rem, 88%) !important;
  max-width: min(52rem, 88%) !important;
  height: 1.5px !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: translateX(-50%) !important;
  opacity: 1 !important;
  visibility: visible !important;
  z-index: 6 !important;
  pointer-events: none !important;
  background-image: none !important;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(0,176,253,0.55) 12%,
    rgba(0,176,253,0.35) 32%,
    rgba(201,162,39,0.75) 50%,
    rgba(0,176,253,0.35) 68%,
    rgba(0,176,253,0.55) 88%,
    transparent 100%) !important;
  box-shadow: 0 0 0 0 transparent !important;
  border: 0 !important;
}

/* mcl85 — visible cyan→gold line ABOVE footer (real element, not clipped) */
.footer-detail-line {
  display: block !important;
  width: min(52rem, 88%) !important;
  max-width: min(52rem, 88%) !important;
  height: 2px !important;
  margin: 0 auto 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: linear-gradient(90deg,
    transparent 0%,
    #00B0FD 14%,
    rgba(0,176,253,0.7) 34%,
    #C9A227 50%,
    rgba(0,176,253,0.7) 66%,
    #00B0FD 86%,
    transparent 100%) !important;
  opacity: 1 !important;
  position: relative !important;
  z-index: 5 !important;
}
footer.site-footer,
.site-footer {
  margin-top: 0 !important;
  border-top: none !important;
}
/* keep ::before off so it does not double */
footer.site-footer::before,
.site-footer::before,
footer.site-footer.site-footer--mcl::before,
.site-footer.site-footer--mcl::before {
  display: none !important;
  content: none !important;
  height: 0 !important;
  opacity: 0 !important;
}

/* mcl86 — RESTORE subtle sidebar CTAs (Chelsea liked — NOT solid McLaren blocks) */
.btn-sidebar-phone,
.sidebar-dual-book .btn-sidebar-phone,
.sidebar-footer .btn-sidebar-phone,
.sidebar-dual-book .btn-book,
.sidebar-footer .btn-book,
.sidebar-dual-book .btn-book-service,
.sidebar-footer .btn-book-service,
.navbar-hc .sidebar-footer .btn-sidebar-phone,
.navbar-hc .sidebar-footer .btn-book,
.navbar-hc .sidebar-footer .btn-book-service,
.navbar-hc .sidebar-dual-book .btn-sidebar-phone,
.navbar-hc .sidebar-dual-book .btn-book,
.navbar-hc .sidebar-dual-book .btn-book-service {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 0.7rem !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0.88rem 0.2rem !important;
  min-height: 0 !important;
  font-size: 0.66rem !important;
  font-weight: 550 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  line-height: 1.2 !important;
  color: rgba(245, 247, 250, 0.9) !important;
  background: transparent !important;
  background-image: none !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-decoration: none !important;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35) !important;
  transform: none !important;
  filter: none !important;
}
.btn-sidebar-phone i,
.sidebar-dual-book .btn-sidebar-phone i,
.sidebar-footer .btn-sidebar-phone i,
.sidebar-dual-book .btn-book i,
.sidebar-footer .btn-book i,
.sidebar-dual-book .btn-book-service i,
.sidebar-footer .btn-book-service i,
.navbar-hc .sidebar-footer .btn-sidebar-phone i,
.navbar-hc .sidebar-footer .btn-book i,
.navbar-hc .sidebar-footer .btn-book-service i,
.navbar-hc .sidebar-dual-book .btn-sidebar-phone i,
.navbar-hc .sidebar-dual-book .btn-book i,
.navbar-hc .sidebar-dual-book .btn-book-service i {
  color: #3A7EC8 !important;
  font-size: 0.95rem !important;
  font-weight: 300 !important;
  opacity: 0.95 !important;
}
.btn-sidebar-phone:hover,
.btn-sidebar-phone:focus,
.btn-sidebar-phone:focus-visible,
.btn-sidebar-phone:active,
.sidebar-dual-book .btn-sidebar-phone:hover,
.sidebar-dual-book .btn-sidebar-phone:focus-visible,
.sidebar-footer .btn-sidebar-phone:hover,
.sidebar-footer .btn-sidebar-phone:focus-visible,
.sidebar-dual-book .btn-book:hover,
.sidebar-dual-book .btn-book:focus-visible,
.sidebar-footer .btn-book:hover,
.sidebar-footer .btn-book:focus-visible,
.sidebar-dual-book .btn-book-service:hover,
.sidebar-dual-book .btn-book-service:focus-visible,
.sidebar-footer .btn-book-service:hover,
.sidebar-footer .btn-book-service:focus-visible,
.navbar-hc .sidebar-footer .btn-sidebar-phone:hover,
.navbar-hc .sidebar-footer .btn-book:hover,
.navbar-hc .sidebar-footer .btn-book-service:hover,
.navbar-hc .sidebar-dual-book .btn-sidebar-phone:hover,
.navbar-hc .sidebar-dual-book .btn-book:hover,
.navbar-hc .sidebar-dual-book .btn-book-service:hover,
.navbar-hc .sidebar-footer .btn-sidebar-phone:focus-visible,
.navbar-hc .sidebar-footer .btn-book:focus-visible,
.navbar-hc .sidebar-footer .btn-book-service:focus-visible,
.navbar-hc .sidebar-dual-book .btn-sidebar-phone:focus-visible,
.navbar-hc .sidebar-dual-book .btn-book:focus-visible,
.navbar-hc .sidebar-dual-book .btn-book-service:focus-visible {
  color: #ffffff !important;
  background: rgba(201, 162, 39, 0.08) !important;
  background-image: none !important;
  border: none !important;
  border-color: transparent !important;
  box-shadow: inset 0 0 0 1px rgba(201, 162, 39, 0.55) !important;
  transform: translateY(-1px) !important;
  filter: none !important;
}
.btn-sidebar-phone:hover i,
.sidebar-footer .btn-sidebar-phone:hover i,
.sidebar-footer .btn-book:hover i,
.sidebar-footer .btn-book-service:hover i,
.navbar-hc .sidebar-footer .btn-sidebar-phone:hover i,
.navbar-hc .sidebar-footer .btn-book:hover i,
.navbar-hc .sidebar-footer .btn-book-service:hover i {
  color: #e2bd47 !important;
}
.navbar-hc .sidebar-footer .btn-book::after,
.navbar-hc .sidebar-dual-book .btn-book::after,
.sidebar-footer .btn-book::after,
.sidebar-dual-book .btn-book::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  left: 2.05rem !important;
  bottom: 0.42rem !important;
  width: 2.6rem !important;
  height: 1px !important;
  background: rgba(58, 126, 200, 0.85) !important;
}

/* mcl87 — kill ghost 4th sidebar CTA peeking under footer */
.navbar-hc .sidebar-footer,
.sidebar-footer {
  overflow: hidden !important;
  max-height: none !important;
}
.navbar-hc .sidebar-dual-book,
.sidebar-dual-book {
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
}
.navbar-hc .sidebar-dual-book > a:nth-child(n+4),
.sidebar-dual-book > a:nth-child(n+4),
.navbar-hc .sidebar-footer > a:nth-child(n+4),
.sidebar-footer > .btn:nth-child(n+4) {
  display: none !important;
}
.navbar-hc .sidebar-footer .btn-book::after,
.navbar-hc .sidebar-dual-book .btn-book::after,
.sidebar-footer .btn-book::after,
.sidebar-dual-book .btn-book::after {
  display: none !important;
  content: none !important;
  height: 0 !important;
}

/* mcl87b — harder clip on sidebar CTA stack bottom ghost */
.navbar-hc {
  overflow-x: hidden !important;
}
.navbar-hc .sidebar-footer {
  overflow: hidden !important;
  padding-bottom: 0.35rem !important;
  margin-bottom: 0 !important;
  border-bottom: none !important;
}
.navbar-hc .sidebar-dual-book > a {
  position: relative !important;
  overflow: hidden !important;
}
.navbar-hc .sidebar-dual-book > a::before,
.navbar-hc .sidebar-dual-book > a::after,
.navbar-hc .sidebar-footer .btn::before,
.navbar-hc .sidebar-footer .btn::after {
  display: none !important;
  content: none !important;
}

/* mcl87c — sidebar: only 3 CTAs, no ghost strip under stack */
.navbar-hc .sidebar-footer,
.sidebar-footer {
  overflow: hidden !important;
}
.navbar-hc .sidebar-dual-book > a::after,
.sidebar-dual-book > a::after,
.navbar-hc .sidebar-footer .btn::after,
.sidebar-footer .btn::after,
.sidebar-footer .btn-book::after {
  content: none !important;
  display: none !important;
}

/* mcl88 — flush sidebar bottom: no ghost strip under Enquire */
.navbar-hc .sidebar-footer,
.sidebar-footer {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
  overflow: hidden !important;
  border-bottom: none !important;
  box-shadow: none !important;
}
.navbar-hc .sidebar-dual-book,
.sidebar-dual-book {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}
.navbar-hc .sidebar-dual-book > a:last-child,
.sidebar-dual-book > a:last-child {
  border-bottom: none !important;
  margin-bottom: 0 !important;
  padding-bottom: 0.7rem !important;
}
.navbar-hc .sidebar-footer .sidebar-refund,
.sidebar-footer .sidebar-refund,
.navbar-hc .sidebar-footer .sidebar-book-micro,
.sidebar-footer .sidebar-book-micro {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
.navbar-hc .sidebar-footer .btn-book::after,
.navbar-hc .sidebar-dual-book .btn-book::after,
.sidebar-footer .btn-book::after,
.sidebar-dual-book .btn-book::after {
  content: none !important;
  display: none !important;
}

/* mcl89 — restore soft sidebar CTAs + air under stack (not flush / not blocky) */
.navbar-hc .sidebar-footer,
.sidebar-footer {
  padding: 0 0.85rem 1rem !important;
  margin-top: auto !important;
  margin-bottom: 0 !important;
  overflow: visible !important;
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
}
.navbar-hc .sidebar-dual-book,
.sidebar-dual-book {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  overflow: visible !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0 0 0.35rem !important;
}
.navbar-hc .sidebar-dual-book > a,
.sidebar-dual-book > a,
.navbar-hc .sidebar-footer .btn-sidebar-phone,
.navbar-hc .sidebar-footer .btn-book,
.navbar-hc .sidebar-footer .btn-book-service {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 0.7rem !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0.78rem 0.35rem !important;
  min-height: 0 !important;
  font-size: 0.66rem !important;
  font-weight: 550 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  line-height: 1.2 !important;
  color: rgba(245, 247, 250, 0.92) !important;
  background: transparent !important;
  background-image: none !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35) !important;
  transform: none !important;
  filter: none !important;
}
.navbar-hc .sidebar-dual-book > a + a,
.sidebar-dual-book > a + a {
  border-top: 1px solid rgba(255, 255, 255, 0.12) !important;
}
.navbar-hc .sidebar-dual-book > a i,
.sidebar-dual-book > a i {
  color: #3A7EC8 !important;
  font-size: 0.95rem !important;
  font-weight: 300 !important;
  opacity: 0.95 !important;
}
.navbar-hc .sidebar-dual-book > a:hover,
.navbar-hc .sidebar-dual-book > a:focus-visible,
.sidebar-dual-book > a:hover,
.sidebar-dual-book > a:focus-visible {
  color: #fff !important;
  background: rgba(201, 162, 39, 0.08) !important;
  background-image: none !important;
  box-shadow: inset 0 0 0 1px rgba(201, 162, 39, 0.5) !important;
  transform: translateY(-1px) !important;
}
.navbar-hc .sidebar-dual-book > a:hover i,
.sidebar-dual-book > a:hover i {
  color: #e2bd47 !important;
}
.navbar-hc .sidebar-dual-book > a::after,
.sidebar-dual-book > a::after,
.navbar-hc .sidebar-footer .btn::after,
.sidebar-footer .btn-book::after {
  content: none !important;
  display: none !important;
}
.navbar-hc .sidebar-footer .sidebar-refund,
.sidebar-footer .sidebar-refund {
  display: none !important;
}

/* mcl89b — lift CTA stack off page bottom */
@media (min-width: 992px) {
  .navbar-hc {
    padding-bottom: 0.75rem !important;
  }
  .navbar-hc .sidebar-footer {
    background: transparent !important;
    padding-bottom: 0.85rem !important;
  }
}

/* mcl90 — soft hairline dividers + light depth on sidebar CTAs */
.navbar-hc .sidebar-dual-book,
.sidebar-dual-book {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 0 0.35rem !important;
  overflow: visible !important;
}
.navbar-hc .sidebar-dual-book > a,
.sidebar-dual-book > a {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 0.7rem !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0.82rem 0.4rem !important;
  font-size: 0.66rem !important;
  font-weight: 550 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  line-height: 1.2 !important;
  color: rgba(245, 247, 250, 0.94) !important;
  background: transparent !important;
  background-image: none !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-shadow:
    0 1px 2px rgba(0, 0, 0, 0.45),
    0 0 12px rgba(0, 0, 0, 0.2) !important;
  transform: none !important;
}
/* hairline between rows */
.navbar-hc .sidebar-dual-book > a + a,
.sidebar-dual-book > a + a {
  border-top: 1px solid rgba(255, 255, 255, 0.14) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04) !important;
}
.navbar-hc .sidebar-dual-book > a i,
.sidebar-dual-book > a i {
  color: #3A7EC8 !important;
  font-size: 0.95rem !important;
  font-weight: 300 !important;
  opacity: 0.95 !important;
  filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 0.35)) !important;
}
.navbar-hc .sidebar-dual-book > a:hover,
.navbar-hc .sidebar-dual-book > a:focus-visible,
.sidebar-dual-book > a:hover,
.sidebar-dual-book > a:focus-visible {
  color: #fff !important;
  background: rgba(201, 162, 39, 0.1) !important;
  background-image: none !important;
  box-shadow:
    inset 0 0 0 1px rgba(201, 162, 39, 0.55),
    0 2px 10px rgba(0, 0, 0, 0.22) !important;
  transform: translateY(-1px) !important;
}
.navbar-hc .sidebar-dual-book > a:hover i,
.sidebar-dual-book > a:hover i {
  color: #e2bd47 !important;
}
.navbar-hc .sidebar-dual-book > a::after,
.sidebar-dual-book > a::after,
.navbar-hc .sidebar-footer .btn::after,
.sidebar-footer .btn-book::after {
  content: none !important;
  display: none !important;
}
.navbar-hc .sidebar-footer,
.sidebar-footer {
  padding: 0 0.85rem 1rem !important;
  background: transparent !important;
}

/* mcl91 — hairline dividers that survive btn border:none (higher specificity + inset line) */
.navbar-hc .sidebar-dual-book > a.btn + a.btn,
.navbar-hc .sidebar-footer .sidebar-dual-book > a.btn + a.btn,
.sidebar-dual-book > a.btn + a.btn {
  border-top: 1px solid rgba(255, 255, 255, 0.18) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.06),
    0 -1px 0 rgba(0, 0, 0, 0.25) !important;
}
.navbar-hc .sidebar-dual-book > a.btn,
.navbar-hc .sidebar-footer .sidebar-dual-book > a.btn,
.sidebar-dual-book > a.btn {
  text-shadow:
    0 1px 2px rgba(0, 0, 0, 0.5),
    0 0 14px rgba(0, 0, 0, 0.25) !important;
}
.navbar-hc .sidebar-dual-book > a.btn i,
.sidebar-dual-book > a.btn i {
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.4)) !important;
}

/* mcl114 — homepage full bleed; body offset only (no second main margin) */
@media (min-width: 992px) {
  body.mcl-landing {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  body:not(.mcl-landing) .navbar-hc.sticky-top ~ .main-wrapper,
  body:not(.mcl-landing) .navbar-hc.sticky-top ~ .portal-login-cluster--desktop ~ .main-wrapper {
    margin-left: 0 !important;
    width: auto !important;
    max-width: none !important;
  }
}


/* mcl118 — Services fees: soft cyan/gold hints only (subtle) */
body.page-services .mot-fee-card h3,
body.page-services .card-hc.text-center h3 {
  color: #0c2c4a !important;
}
body.page-services .mot-fee-card .price-tag,
body.page-services .card-hc.text-center .display-6,
body.page-services .card-hc.text-center strong {
  color: #0a3a5c !important;
}
body.page-services .table-hc thead th {
  color: #1a3a55 !important;
  border-bottom: 1px solid rgba(0, 176, 253, 0.28) !important;
}
body.page-services .table-hc td strong {
  color: #0d3558 !important;
}
body.page-services .table-hc .text-muted,
body.page-services .small.text-muted {
  color: #5a6b7c !important;
}
body.page-services .card-hc.text-center {
  box-shadow:
    0 10px 24px rgba(8, 20, 40, 0.08),
    inset 0 1px 0 rgba(255,255,255,0.85),
    inset 0 0 0 1px rgba(0, 176, 253, 0.1) !important;
  border-color: rgba(0, 176, 253, 0.14) !important;
}
/* mcl117 — Services fees Book Now: logo cyan, restrained */
body.page-services .btn-book.btn-book--logo-cyan,
.btn-book.btn-book--logo-cyan {
  color: #fff !important;
  background:
    linear-gradient(180deg, #1ab8f5 0%, #00A3e8 50%, #008fcc 100%) !important;
  border: 1px solid rgba(0, 150, 210, 0.9) !important;
  box-shadow:
    0 8px 18px rgba(0, 140, 200, 0.28),
    0 2px 6px rgba(0, 20, 40, 0.2),
    inset 0 1px 0 rgba(255, 255, 255, 0.28) !important;
  text-shadow: 0 1px 1px rgba(0, 40, 70, 0.3) !important;
}
body.page-services .btn-book.btn-book--logo-cyan:hover,
body.page-services .btn-book.btn-book--logo-cyan:focus-visible,
.btn-book.btn-book--logo-cyan:hover,
.btn-book.btn-book--logo-cyan:focus-visible {
  color: #fff !important;
  background:
    linear-gradient(180deg, #33c2f8 0%, #00B0FD 55%, #0096d6 100%) !important;
  border-color: #00B0FD !important;
  box-shadow:
    0 10px 22px rgba(0, 160, 220, 0.35),
    inset 0 1px 0 rgba(255, 255, 255, 0.35) !important;
  transform: translateY(-1px) !important;
}
/* mcl119 — Book Now / micro: tight (was oversized air) */
body.page-services .btn-book.btn-book--logo-cyan {
  margin-bottom: 0.35rem !important;
}
body.page-services .book-micro {
  margin-top: 0.35rem !important;
  margin-bottom: 0 !important;
}

/* mcl120 — Services addon cards: quiet depth + thin cyan hairline */
body.page-services .svc-addon-card {
  position: relative !important;
  background: #fafbfc !important;
  border: 1px solid rgba(15, 40, 70, 0.1) !important;
  border-radius: 0.75rem !important;
  box-shadow:
    0 10px 22px rgba(8, 20, 40, 0.07),
    inset 0 1px 0 rgba(255, 255, 255, 0.9) !important;
  overflow: hidden !important;
  transform: none !important;
}
body.page-services .svc-addon-card::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: 0 !important;
  height: 1px !important;
  background: linear-gradient(90deg, rgba(0,176,253,0.55), rgba(201,162,39,0.35), transparent 85%) !important;
  pointer-events: none !important;
}
body.page-services .svc-addon-card h3 {
  color: #132a42 !important;
}
body.page-services .svc-addon-card .price-tag {
  color: #1a5f8a !important;
  font-weight: 650 !important;
}
body.page-services .svc-addon-card:hover {
  border-color: rgba(0, 176, 253, 0.22) !important;
  box-shadow:
    0 12px 26px rgba(8, 20, 40, 0.09),
    inset 0 1px 0 rgba(255, 255, 255, 0.95) !important;
  transform: translateY(-1px) !important;
}

/* mcl121 — dial Services colour back to subtle (wins last) */
body.page-services .mot-fee-card,
body.page-services section .card-hc.text-center {
  background: #fff !important;
  border: 1px solid rgba(15, 40, 70, 0.08) !important;
  box-shadow: 0 8px 20px rgba(8, 20, 40, 0.06) !important;
}
body.page-services .mot-fee-card::before,
body.page-services section .card-hc.text-center::before {
  height: 1px !important;
  opacity: 0.65 !important;
  background: linear-gradient(90deg, rgba(0,176,253,0.4), transparent) !important;
}
body.page-services .price-tag,
body.page-services .card-hc .h3,
body.page-services .card-hc .display-6 {
  color: #12324f !important;
}
body.page-services .table-hc thead {
  background: rgba(0, 176, 253, 0.04) !important;
}

/* mcl123 — Minor repairs: equal card height + tyre outline icon */
body.page-services section.bg-light-hc .row.g-4 > [class*="col-"] {
  display: flex !important;
}
body.page-services section.bg-light-hc .svc-addon-card {
  width: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  min-height: 100% !important;
}
body.page-services section.bg-light-hc .svc-addon-card .small.text-muted {
  flex: 1 1 auto !important;
}
body.page-services .svc-tyre-icon {
  display: block !important;
  margin: 0 auto !important;
  color: inherit !important;
}
body.page-services .icon-circle .svc-tyre-icon {
  vertical-align: middle !important;
}

/* mcl128 — tighten under Book Now / Stripe + under Open builder */
body.page-services .services-fees {
  padding-bottom: 1.1rem !important;
}
body.page-services .services-fees .book-micro {
  margin-top: 0.45rem !important;
  margin-bottom: 0 !important;
}
body.page-services .services-fees .text-center {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}
body.page-services section.bg-light-hc {
  padding-bottom: 0.85rem !important;
}
body.page-services section.bg-light-hc .book-micro {
  margin-top: 0.45rem !important;
  margin-bottom: 0 !important;
}
body.page-services section.bg-light-hc .text-center {
  margin-bottom: 0 !important;
}
body.page-services section.bg-light-hc + section {
  padding-top: 0.45rem !important;
  padding-bottom: 0.65rem !important;
}
body.page-services section.bg-light-hc + section .alert {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* mcl129 — MOT fee cards: air under coverage copy */
body.page-services .services-fees .card-hc.text-center {
  padding-bottom: 1.35rem !important;
}
body.page-services .services-fees .card-hc.text-center .small.text-muted {
  margin-bottom: 0.15rem !important;
  padding: 0 0.35rem 0.25rem !important;
}

/* mcl131 — Servicing offer cards: breathe + subtle depth/colour */
body.page-servicing .svc-offer,
.svc-offer {
  padding-top: 2.25rem !important;
  padding-bottom: 2.25rem !important;
}
body.page-servicing .svc-offer__list,
.svc-offer__list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: grid !important;
  gap: 1.15rem !important;
}
body.page-servicing .svc-offer__list > li,
.svc-offer__list > li {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0.4rem !important;
  padding: 1.15rem 1.25rem 1.2rem !important;
  background: linear-gradient(180deg, #ffffff 0%, #f7fafc 100%) !important;
  border: 1px solid rgba(0, 176, 253, 0.14) !important;
  border-radius: 0.8rem !important;
  box-shadow:
    0 12px 26px rgba(8, 20, 40, 0.08),
    0 2px 6px rgba(8, 20, 40, 0.04),
    inset 0 1px 0 rgba(255, 255, 255, 0.95) !important;
  line-height: 1.55 !important;
  overflow: hidden !important;
}
body.page-servicing .svc-offer__list > li::before,
.svc-offer__list > li::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: 0 !important;
  height: 1px !important;
  opacity: 0.55 !important;
  background: linear-gradient(90deg, rgba(0,176,253,0.35), rgba(201,162,39,0.22), transparent 80%) !important;
  pointer-events: none !important;
}
body.page-servicing .svc-offer__list > li strong,
.svc-offer__list > li strong {
  color: #0a3558 !important;
  font-size: 1.04rem !important;
  letter-spacing: 0.01em !important;
}
body.page-servicing .svc-offer__detail,
.svc-offer__detail {
  display: block !important;
  color: #5a6b7c !important;
  font-size: 0.95rem !important;
  line-height: 1.55 !important;
  max-width: 42rem !important;
}

/* mcl133 — more air above MOT Testing header in Servicing builder */
.main-wrapper #service-builder .svc-mot-add {
  margin-top: 1.35rem !important;
  padding-top: 0.35rem !important;
}
.main-wrapper #service-builder .svc-mot-panel {
  padding-top: 1.45rem !important;
}
.main-wrapper #service-builder .svc-mot-panel > h3.h5 {
  margin-top: 0.15rem !important;
  margin-bottom: 0.65rem !important;
}

/* ==========================================================================
   mcl134 — Servicing builder depth, less blocky
   Soft McLaren-style depth (navy / cyan #00B0FD / soft gold) — quiet, not loud.
   LOCAL PREVIEW ONLY — Albyn MOT. Does not touch Habitation.
   ========================================================================== */

/* MOT panel: refined shell instead of flat slab / empty flatten */
.main-wrapper #service-builder .svc-mot-panel {
  padding: 1.35rem 1.15rem 1.25rem !important;
  border: 1px solid rgba(11, 31, 58, 0.06) !important;
  border-radius: 0.55rem !important;
  background:
    linear-gradient(165deg, rgba(255, 255, 255, 0.97) 0%, rgba(246, 249, 252, 0.9) 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.95),
    inset 0 -1px 0 rgba(11, 31, 58, 0.02),
    0 1px 2px rgba(11, 31, 58, 0.03),
    0 10px 28px rgba(11, 31, 58, 0.045),
    0 22px 44px rgba(11, 31, 58, 0.028) !important;
  position: relative;
}
.main-wrapper #service-builder .svc-mot-panel::after {
  content: '';
  position: absolute;
  z-index: 1;
  top: 0;
  left: clamp(1rem, 6%, 2.5rem);
  right: clamp(1rem, 6%, 2.5rem);
  height: 1px;
  pointer-events: none;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(0, 176, 253, 0.42) 22%,
    rgba(201, 162, 39, 0.38) 50%,
    rgba(0, 176, 253, 0.4) 78%,
    transparent 100%);
  opacity: 0.5;
}
.main-wrapper #service-builder .svc-mot-panel > h3.h5 {
  margin-top: 0.1rem !important;
  margin-bottom: 0.85rem !important;
}

/* Shared selectable cards: softer radius, hairline, layered depth */
.main-wrapper #service-builder .svc-service-card,
.main-wrapper #service-builder .pkg-card,
.main-wrapper #service-builder .svc-mot-class-card,
.main-wrapper #service-builder .svc-addon-card {
  border: 1px solid rgba(11, 31, 58, 0.07) !important;
  border-top-color: rgba(11, 31, 58, 0.04) !important;
  border-radius: 0.5rem !important;
  padding: 1.15rem 1.2rem !important;
  background:
    linear-gradient(168deg, rgba(255, 255, 255, 0.995) 0%, rgba(248, 251, 253, 0.96) 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.96),
    inset 0 -1px 0 rgba(11, 31, 58, 0.018),
    0 1px 2px rgba(11, 31, 58, 0.028),
    0 8px 20px rgba(11, 31, 58, 0.05),
    0 20px 40px rgba(11, 31, 58, 0.028) !important;
}

/* Quiet cyan/gold top hairline (opacity ~0.45–0.55) */
.main-wrapper #service-builder .svc-service-card::before,
.main-wrapper #service-builder .pkg-card::before,
.main-wrapper #service-builder .svc-mot-class-card::before,
.main-wrapper #service-builder .svc-addon-card::before {
  left: clamp(0.9rem, 5%, 1.6rem);
  right: clamp(0.9rem, 5%, 1.6rem);
  height: 1px;
  opacity: 0.5;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(0, 176, 253, 0.48) 18%,
    rgba(0, 176, 253, 0.28) 40%,
    rgba(201, 162, 39, 0.42) 55%,
    rgba(0, 176, 253, 0.3) 78%,
    transparent 100%);
}

/* Hover: lift slightly, still quiet colour */
.main-wrapper #service-builder .svc-service-card:hover,
.main-wrapper #service-builder .pkg-card:hover,
.main-wrapper #service-builder .svc-mot-class-card:hover,
.main-wrapper #service-builder .svc-addon-card:hover {
  border-color: rgba(0, 176, 253, 0.18) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.98),
    inset 0 -1px 0 rgba(11, 31, 58, 0.018),
    0 2px 4px rgba(11, 31, 58, 0.035),
    0 12px 28px rgba(11, 31, 58, 0.065),
    0 28px 52px rgba(11, 31, 58, 0.035) !important;
}

/* Selected: soft wash + hairline ring — not solid block fills */
.main-wrapper #service-builder .svc-service-card.is-selected,
.main-wrapper #service-builder .pkg-card.is-selected,
.main-wrapper #service-builder .svc-mot-class-card.is-selected,
.main-wrapper #service-builder .svc-addon-card.is-selected {
  border-color: rgba(0, 176, 253, 0.28) !important;
  border-top-color: rgba(0, 176, 253, 0.14) !important;
  background:
    linear-gradient(168deg,
      rgba(0, 176, 253, 0.035) 0%,
      rgba(255, 255, 255, 0.99) 42%,
      rgba(252, 250, 244, 0.97) 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.97),
    inset 0 0 0 1px rgba(0, 176, 253, 0.1),
    0 2px 4px rgba(11, 31, 58, 0.03),
    0 10px 26px rgba(0, 176, 253, 0.07),
    0 22px 44px rgba(11, 31, 58, 0.03) !important;
}

/* Addon cards keep checkbox indent + padding rhythm */
.main-wrapper #service-builder .svc-addon-card {
  padding: 1.15rem 1.2rem 1.15rem 2.45rem !important;
}
.main-wrapper #service-builder .svc-addon-card .form-check-input {
  left: 1rem;
  top: 1.3rem;
}

/* Open expand parent: keep refined radius on top corners */
.main-wrapper #service-builder .svc-addon-expand.is-open .svc-addon-card {
  border-bottom-left-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}

/* Grid rhythm — less stacked-slab feel */
.main-wrapper #service-builder .svc-addon-row {
  gap: 0.9rem !important;
  margin-top: 1.1rem !important;
}
.main-wrapper #service-builder .svc-mot-add {
  margin-top: 1.45rem !important;
  padding-top: 0.45rem !important;
}
.main-wrapper #service-builder .svc-mot-class-wrap.row,
.main-wrapper #service-builder .svc-mot-add .row.g-3 {
  --bs-gutter-y: 0.9rem;
}

/* mcl135 — Servicing deposit disclaimer breathing room */
.main-wrapper #service-builder .svc-book-disclaimer {
  line-height: 1.55 !important;
  color: #4a5d70 !important;
  max-width: 40rem !important;
}

/* mcl137 — Deposit + Cancellation as two side-by-side cards */
.main-wrapper .svc-book-disclaimer-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 0.75rem !important;
  margin-top: 0.85rem !important;
  align-items: stretch !important;
}
.main-wrapper .svc-book-disclaimer-grid .svc-book-disclaimer {
  margin: 0 !important;
  padding: 0.85rem 0.95rem !important;
  background: #f7f9fb !important;
  border: 1px solid rgba(15, 40, 70, 0.08) !important;
  border-left: 3px solid rgba(201, 162, 39, 0.75) !important;
  border-radius: 0.55rem !important;
  box-shadow: 0 6px 14px rgba(8, 20, 40, 0.05) !important;
  line-height: 1.5 !important;
  color: #4a5d70 !important;
  height: 100% !important;
}
@media (max-width: 767.98px) {
  .main-wrapper .svc-book-disclaimer-grid {
    grid-template-columns: 1fr !important;
  }
}

/* mcl138 — air under Coming Soon helper line before disclaimers */
.main-wrapper .service-builder-book-sticky > .small.text-muted {
  margin-bottom: 1.15rem !important;
}

/* mcl139 — air under Coming Soon button */
.main-wrapper .service-builder-book-sticky > #svcBookNow,
.main-wrapper .service-builder-book-sticky > .btn.svc-book-coming-soon {
  margin-bottom: 0.85rem !important;
}

/* mcl141 — Habitation crosspill: sleeker, slightly bluer */
.main-wrapper .svc-hab-crosspill {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 0.65rem !important;
  padding: 0.42rem 0.65rem 0.42rem 0.85rem !important;
  border-radius: 999px !important;
  background: linear-gradient(180deg, #eef7fc 0%, #e4f1fa 100%) !important;
  border: 1px solid rgba(0, 176, 253, 0.28) !important;
  box-shadow:
    0 6px 14px rgba(0, 90, 140, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.85) !important;
}
.main-wrapper .svc-hab-crosspill__text {
  margin: 0 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  line-height: 1.3 !important;
  font-size: 0.88rem !important;
  color: #1a4a6e !important;
}
.main-wrapper .svc-hab-crosspill__btn {
  flex: 0 0 auto !important;
  white-space: nowrap !important;
  border-radius: 999px !important;
  padding: 0.28rem 0.75rem !important;
  background: linear-gradient(180deg, #1ab8f5 0%, #00A3e8 100%) !important;
  border: 1px solid rgba(0, 150, 210, 0.85) !important;
  color: #fff !important;
  box-shadow: 0 4px 10px rgba(0, 140, 200, 0.25) !important;
  font-size: 0.8rem !important;
}
.main-wrapper .svc-hab-crosspill__btn:hover,
.main-wrapper .svc-hab-crosspill__btn:focus-visible {
  background: linear-gradient(180deg, #33c2f8 0%, #00B0FD 100%) !important;
  color: #fff !important;
}
@media (max-width: 575.98px) {
  .main-wrapper .svc-hab-crosspill {
    flex-wrap: wrap !important;
    border-radius: 0.85rem !important;
  }
  .main-wrapper .svc-hab-crosspill__text {
    white-space: normal !important;
  }
}

/* mcl142 — LOCK equal login air: TOP === RIGHT */
.portal-login-cluster--desktop,
body > .portal-login-cluster--desktop,
.main-wrapper ~ .portal-login-cluster--desktop {
  position: fixed !important;
  top: 0.85rem !important;
  right: 0.85rem !important;
  left: auto !important;
  bottom: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  box-sizing: border-box !important;
}
@media (min-width: 992px) {
  body.page-book .page-header--book-band > .portal-login-cluster--book-band,
  body.page-book .portal-login-cluster.portal-login-cluster--book-band {
    top: 0.85rem !important;
    right: 0.85rem !important;
    left: auto !important;
    bottom: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
  }
}
body.page-about > .portal-login-cluster--desktop {
  top: 0.85rem !important;
  right: 0.85rem !important;
}


/* mcl143 — FAQ McLaren depth */
#faqAcc {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  max-width: 52rem;
  margin-inline: auto;
}
#faqAcc .accordion-item {
  margin: 0 !important;
  overflow: hidden !important;
  border-radius: 0.2rem !important;
  border: 1px solid rgba(11, 31, 58, 0.08) !important;
  border-top-color: transparent !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.99) 0%, rgba(248, 250, 252, 0.97) 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.9),
    0 1px 2px rgba(11, 31, 58, 0.03),
    0 8px 22px rgba(11, 31, 58, 0.05) !important;
  transition: border-color 0.18s ease, box-shadow 0.18s ease;
}
#faqAcc .accordion-item::before {
  content: '';
  position: absolute;
  z-index: 2;
  top: 0;
  left: 1rem;
  right: 1rem;
  height: 1px;
  pointer-events: none;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(0, 176, 253, 0.28) 18%,
    rgba(0, 176, 253, 0.16) 40%,
    rgba(201, 162, 39, 0.26) 58%,
    rgba(0, 176, 253, 0.16) 78%,
    transparent 100%);
}
#faqAcc .accordion-item:hover {
  border-color: rgba(0, 176, 253, 0.18) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.94),
    0 2px 4px rgba(11, 31, 58, 0.035),
    0 12px 28px rgba(11, 31, 58, 0.065) !important;
}
#faqAcc .accordion-button {
  position: relative;
  z-index: 1;
  padding: 0.95rem 1.15rem !important;
  background: transparent !important;
  color: #071628 !important;
  font-weight: 600 !important;
  font-size: 0.94rem !important;
  letter-spacing: 0.015em !important;
  box-shadow: none !important;
}
#faqAcc .accordion-button::after {
  filter: none;
  opacity: 0.55;
  transition: opacity 0.18s ease, transform 0.18s ease;
}
#faqAcc .accordion-button:hover {
  color: #0a2540 !important;
  background: linear-gradient(180deg, rgba(0, 176, 253, 0.035) 0%, rgba(255, 255, 255, 0) 100%) !important;
}
#faqAcc .accordion-button:hover::after {
  opacity: 0.8;
}
#faqAcc .accordion-button:focus {
  border-color: transparent !important;
  box-shadow: inset 0 0 0 1px rgba(0, 176, 253, 0.22) !important;
}
#faqAcc .accordion-button:not(.collapsed) {
  color: #071628 !important;
  background:
    linear-gradient(180deg, rgba(0, 176, 253, 0.05) 0%, rgba(248, 250, 252, 0.92) 100%) !important;
  box-shadow:
    inset 0 -1px 0 rgba(0, 176, 253, 0.14),
    inset 0 0 0 1px rgba(201, 162, 39, 0.08) !important;
}
#faqAcc .accordion-button:not(.collapsed)::after {
  opacity: 0.85;
}
#faqAcc .accordion-body {
  padding: 0.15rem 1.15rem 1.05rem !important;
  color: #1a2f46 !important;
  font-size: 0.92rem !important;
  line-height: 1.55 !important;
  border-top: 1px solid rgba(0, 176, 253, 0.08);
}
#faqAcc .accordion-body a {
  color: #00B0FD;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.15em;
}
#faqAcc .accordion-body a:hover {
  color: #0a2540;
}
@media (min-width: 1280px) and (max-width: 1440px) {
  #faqAcc {
    max-width: 48rem;
  }
  #faqAcc .accordion-button {
    font-size: 0.93rem !important;
  }
}

/* mcl144 — FAQ Still unsure CTA: sitewide login-depth buttons */
body.page-faq .cta-band.cta-band--mcl .cta-band__actions,
.cta-band.cta-band--mcl .cta-band__actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0.65rem !important;
  justify-content: center !important;
  align-items: center !important;
  margin-top: 1rem !important;
}
body.page-faq .cta-band.cta-band--mcl .cta-band__actions .btn-portal-login {
  min-width: 9.5rem !important;
}

/* mcl145 — FAQ CTA hover LOCK = header login hover (same as Talk to us / portal) */
body.page-faq .cta-band.cta-band--mcl .cta-band__actions .btn-portal-login,
.cta-band.cta-band--mcl .cta-band__actions .btn-portal-login {
  background: linear-gradient(180deg, rgba(28,36,48,0.95) 0%, rgba(8,12,18,0.88) 100%) !important;
  background-image: linear-gradient(180deg, rgba(28,36,48,0.95) 0%, rgba(8,12,18,0.88) 100%) !important;
  border: 1px solid rgba(0,176,253,0.48) !important;
  color: rgba(245,247,250,0.94) !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.12) inset,
    0 0 0 1px rgba(0,0,0,0.35),
    0 8px 18px rgba(0,0,0,0.38),
    0 2px 4px rgba(0,0,0,0.28) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.14em !important;
  font-size: 0.62rem !important;
  font-weight: 550 !important;
  border-radius: 0 !important;
}
body.page-faq .cta-band.cta-band--mcl .cta-band__actions .btn-portal-login:hover,
body.page-faq .cta-band.cta-band--mcl .cta-band__actions .btn-portal-login:focus-visible,
.cta-band.cta-band--mcl .cta-band__actions .btn-portal-login:hover,
.cta-band.cta-band--mcl .cta-band__actions .btn-portal-login:focus-visible {
  background: linear-gradient(180deg, rgba(0,176,253,0.18) 0%, rgba(8,12,18,0.92) 100%) !important;
  background-image: linear-gradient(180deg, rgba(0,176,253,0.18) 0%, rgba(8,12,18,0.92) 100%) !important;
  border-color: rgba(0,176,253,0.62) !important;
  color: #fff !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.14) inset,
    0 0 0 1px rgba(0,0,0,0.35),
    0 10px 22px rgba(0,0,0,0.36),
    0 0 18px rgba(0,176,253,0.12) !important;
  transform: none !important;
}

/* mcl146 — FAQ Still unsure CTAs: more McLaren depth */
body.page-faq .cta-band.cta-band--mcl .cta-band__actions .btn-portal-login {
  background: linear-gradient(180deg, rgba(42,52,68,0.98) 0%, rgba(10,14,22,0.94) 55%, rgba(4,8,14,0.98) 100%) !important;
  background-image: linear-gradient(180deg, rgba(42,52,68,0.98) 0%, rgba(10,14,22,0.94) 55%, rgba(4,8,14,0.98) 100%) !important;
  border: 1px solid rgba(0,176,253,0.55) !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.18) inset,
    0 -1px 0 rgba(0,0,0,0.45) inset,
    0 0 0 1px rgba(0,0,0,0.4),
    0 10px 22px rgba(0,0,0,0.45),
    0 3px 8px rgba(0,0,0,0.35),
    0 0 14px rgba(0,176,253,0.08) !important;
  min-height: 2.35rem !important;
  padding: 0.58rem 1.05rem !important;
}
body.page-faq .cta-band.cta-band--mcl .cta-band__actions .btn-portal-login:hover,
body.page-faq .cta-band.cta-band--mcl .cta-band__actions .btn-portal-login:focus-visible {
  background: linear-gradient(180deg, rgba(0,176,253,0.28) 0%, rgba(12,18,28,0.95) 100%) !important;
  background-image: linear-gradient(180deg, rgba(0,176,253,0.28) 0%, rgba(12,18,28,0.95) 100%) !important;
  border-color: #00B0FD !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.22) inset,
    0 0 0 1px rgba(0,0,0,0.4),
    0 12px 26px rgba(0,0,0,0.48),
    0 0 22px rgba(0,176,253,0.2) !important;
}

/* mcl149 — footer detail line: centred cyan→gold hairline, no white gap */
.main-wrapper > .cta-band.cta-band--mcl,
.cta-band.cta-band--mcl {
  margin-bottom: 0 !important;
}
.main-wrapper > .footer-detail-line,
.footer-detail-line {
  display: block !important;
  width: min(52rem, 88%) !important;
  max-width: min(52rem, 88%) !important;
  height: 2px !important;
  margin: 0.55rem auto 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background-color: transparent !important;
  background-image: linear-gradient(90deg,
    transparent 0%,
    #00B0FD 14%,
    rgba(0,176,253,0.7) 34%,
    #C9A227 50%,
    rgba(0,176,253,0.7) 66%,
    #00B0FD 86%,
    transparent 100%) !important;
  background-size: 100% 2px !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  box-sizing: border-box !important;
}
.main-wrapper > footer.site-footer,
footer.site-footer {
  margin-top: 0 !important;
}
/* FAQ: dark seam under CTA so cream never shows */
body.page-faq .cta-band.cta-band--mcl + .footer-detail-line {
  width: 100% !important;
  max-width: none !important;
  height: 0.7rem !important;
  margin: 0 !important;
  background-color: #06090f !important;
  background-size: min(52rem, 88%) 2px !important;
  background-position: center center !important;
}

/* mcl148 — footer less air (tighter padding + columns) */
footer.site-footer.site-footer--mcl,
.site-footer.site-footer--mcl {
  padding: 2rem 0 1.15rem !important;
}
footer.site-footer.site-footer--mcl > .container,
.site-footer.site-footer--mcl > .container {
  padding-top: 0 !important;
}
footer.site-footer .hc-coos-footer-row.row.g-4 {
  --bs-gutter-y: 1rem !important;
  margin-bottom: 0.75rem !important;
}
footer.site-footer .hc-coos-footer-brand p,
footer.site-footer .hc-coos-footer-extra {
  margin-bottom: 0.55rem !important;
}
footer.site-footer .list-unstyled {
  margin-bottom: 0 !important;
}
footer.site-footer .list-unstyled li {
  margin-bottom: 0.28rem !important;
}
footer.site-footer .footer-bottom {
  margin-top: 0.85rem !important;
  padding-top: 0.75rem !important;
}
footer.site-footer.site-footer--mcl::before,
.site-footer.site-footer--mcl::before {
  margin: 0 0 1.15rem !important;
}
.footer-detail-line {
  /* height set in mcl149 */
}

/* mcl151 — Talk to us / CTA bands: dark–light–dark (lighter centre) */
.cta-band.cta-band--mcl,
.main-wrapper > .cta-band.cta-band--mcl {
  background-color: #050e1a !important;
  background-image:
    radial-gradient(70% 80% at 50% 45%, rgba(28, 58, 98, 0.95) 0%, transparent 70%),
    linear-gradient(90deg, #040a12 0%, #0a1628 22%, #163456 50%, #0a1628 78%, #040a12 100%) !important;
}

/* mcl154 — Habitation crosspill logo */
.main-wrapper .svc-hab-crosspill__logo {
  flex: 0 0 auto !important;
  width: 1.75rem !important;
  height: 1.75rem !important;
  object-fit: contain !important;
  border-radius: 0.25rem !important;
}

/* mcl161 — Habitation pill: centred, one light ground, tight air */
body.page-habitation .hab-pill-band {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  background: #f7f8fa !important;
  border: 0 !important;
  box-shadow: none !important;
}
body.page-habitation .hab-pill-band > .container {
  display: flex !important;
  justify-content: center !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
body.page-habitation .hab-pill-band .svc-hab-crosspill {
  margin: 0 !important;
  width: auto !important;
  max-width: 100% !important;
  display: inline-flex !important;
  flex: 0 1 auto !important;
  justify-content: flex-start !important;
  gap: 0.5rem !important;
}
body.page-habitation .hab-pill-band .svc-hab-crosspill__text {
  flex: 0 1 auto !important;
  white-space: nowrap !important;
}
body.page-habitation > .main-wrapper > section.section-editorial {
  background: #f7f8fa !important;
}
body.page-habitation > .main-wrapper > .hab-pill-band + section.section-editorial.py-0 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
body.page-habitation > .main-wrapper > .hab-pill-band + section.section-editorial.py-0 > .container {
  padding-top: 0.08rem !important;
}

/* mcl162 — pill air zero */
body.page-habitation .hab-pill-band {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin: 0 !important;
}
body.page-habitation .page-header {
  margin-bottom: 0 !important;
  padding-bottom: clamp(1.15rem, 2.4vh, 1.65rem) !important;
}
body.page-habitation > .main-wrapper > .hab-pill-band + section.section-editorial.py-0 > .container {
  padding-top: 0.08rem !important;
}

/* mcl165 — Habitation crosspill logo (booking + habitation page) */
.main-wrapper #service-builder .svc-hab-crosspill__logo,
body.page-habitation .hab-pill-band .svc-hab-crosspill__logo {
  flex: 0 0 auto !important;
  width: 1.55rem !important;
  height: 1.55rem !important;
  object-fit: contain !important;
  border-radius: 0.25rem !important;
}
.main-wrapper #service-builder .svc-hab-crosspill {
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 0.65rem 0.85rem !important;
}
body.page-habitation .hab-pill-band .svc-hab-crosspill {
  display: inline-flex !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 0.75rem 1rem !important;
  margin: 0 !important;
  width: auto !important;
  max-width: 100% !important;
  padding: 0.7rem 0.95rem !important;
  border-radius: 999px !important;
  border: 1px solid rgba(0, 176, 253, 0.28) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.92) 0%, rgba(244,248,252,0.96) 100%) !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.8) inset,
    0 6px 18px rgba(7, 22, 40, 0.06) !important;
}
body.page-habitation .hab-pill-band .svc-hab-crosspill__text {
  flex: 0 1 auto !important;
  margin: 0 !important;
  font-size: 0.78rem !important;
  line-height: 1.4 !important;
  font-weight: 550 !important;
  color: var(--ac-ink-soft, #1a2f46) !important;
  letter-spacing: 0.01em !important;
  white-space: nowrap !important;
}
body.page-habitation .hab-pill-band .svc-hab-crosspill__btn {
  flex: 0 0 auto !important;
  border-radius: 999px !important;
  border: 1px solid rgba(0, 176, 253, 0.45) !important;
  background: rgba(0, 176, 253, 0.08) !important;
  color: var(--ac-ink, #071628) !important;
  font-size: 0.68rem !important;
  font-weight: 650 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  padding: 0.42rem 0.85rem !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  box-shadow: none !important;
}
body.page-habitation .hab-pill-band .svc-hab-crosspill__btn:hover,
body.page-habitation .hab-pill-band .svc-hab-crosspill__btn:focus-visible {
  background: rgba(0, 176, 253, 0.16) !important;
  border-color: var(--ac-cyan, #00B0FD) !important;
  color: var(--ac-ink, #071628) !important;
}

/* mcl166 — Habitation pill band: zero air (hard) */
body.page-habitation .page-header.page-header--compact {
  padding-bottom: 0.85rem !important;
  margin-bottom: 0 !important;
}
body.page-habitation .hab-pill-band,
body.page-habitation > .main-wrapper > section.hab-pill-band.section-editorial.py-0 {
  padding: 0 !important;
  margin: 0 !important;
  min-height: 0 !important;
}
body.page-habitation .hab-pill-band > .container {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin: 0 !important;
}
body.page-habitation .hab-pill-band .svc-hab-crosspill {
  margin: 0 !important;
  padding: 0.38rem 0.7rem !important;
}
body.page-habitation > .main-wrapper > .hab-pill-band + section.section-editorial.py-0 {
  padding: 0 !important;
  margin: 0 !important;
}
body.page-habitation > .main-wrapper > .hab-pill-band + section.section-editorial.py-0 > .container {
  padding-top: 0.15rem !important;
  padding-bottom: 0 !important;
}
body.page-habitation > .main-wrapper > .hab-pill-band + section.section-editorial.py-0 .mcl-media-slot {
  margin-top: 0.15rem !important;
}

/* mcl167 — Habitation page pill: small sleek (not booking uppercase/large) */
body.page-habitation .hab-pill-band .svc-hab-crosspill {
  padding: 0.32rem 0.55rem 0.32rem 0.55rem !important;
  gap: 0.45rem !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.8) inset,
    0 3px 10px rgba(7, 22, 40, 0.05) !important;
}
body.page-habitation .hab-pill-band .svc-hab-crosspill__logo {
  width: 1.2rem !important;
  height: 1.2rem !important;
}
body.page-habitation .hab-pill-band .svc-hab-crosspill__text {
  font-size: 0.72rem !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}
body.page-habitation .hab-pill-band .svc-hab-crosspill__btn {
  font-size: 0.68rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.01em !important;
  text-transform: none !important;
  padding: 0.2rem 0.55rem !important;
  background: rgba(0, 176, 253, 0.07) !important;
  border: 1px solid rgba(0, 176, 253, 0.35) !important;
  color: #1a2f46 !important;
  box-shadow: none !important;
}

/* mcl168 — equal modest air above/below Habitation pill */
body.page-habitation .hab-pill-band,
body.page-habitation > .main-wrapper > section.hab-pill-band.section-editorial.py-0 {
  padding-top: 1.1rem !important;
  padding-bottom: 1.1rem !important;
  margin: 0 !important;
}
body.page-habitation > .main-wrapper > .hab-pill-band + section.section-editorial.py-0 > .container {
  padding-top: 0 !important;
}
body.page-habitation > .main-wrapper > .hab-pill-band + section.section-editorial.py-0 .mcl-media-slot {
  margin-top: 0 !important;
}

/* mcl169 — more equal air */
body.page-habitation .hab-pill-band,
body.page-habitation > .main-wrapper > section.hab-pill-band.section-editorial.py-0 {
  padding-top: 1.1rem !important;
  padding-bottom: 1.1rem !important;
}

/* mcl170 — more equal air again */
body.page-habitation .hab-pill-band,
body.page-habitation > .main-wrapper > section.hab-pill-band.section-editorial.py-0 {
  padding-top: 1.1rem !important;
  padding-bottom: 1.1rem !important;
}

/* mcl172 — more equal pill air */
body.page-habitation .hab-pill-band,
body.page-habitation > .main-wrapper > section.hab-pill-band.section-editorial.py-0 {
  padding-top: 1.45rem !important;
  padding-bottom: 1.45rem !important;
}

/* mcl183 — more right inset so gap matches top */
html body > .portal-login-cluster.portal-login-cluster--desktop,
html body > .portal-login-cluster--desktop {
  position: fixed !important;
  top: 16px !important;
  right: 32px !important;
  left: auto !important;
  bottom: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
}

/* mcl186 — login depth (stronger, wins last; position untouched) */
html body > .portal-login-cluster--desktop .btn.btn-book,
html body > .portal-login-cluster--desktop .btn.btn-portal-login,
html body > .portal-login-cluster.portal-login-cluster--desktop .btn-book,
html body > .portal-login-cluster.portal-login-cluster--desktop .btn-portal-login {
  background: linear-gradient(180deg, #243041 0%, #121820 55%, #0a0e14 100%) !important;
  border: 1px solid rgba(255, 255, 255, 0.28) !important;
  color: #fff !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.2),
    inset 0 -2px 0 rgba(0, 0, 0, 0.55),
    0 8px 18px rgba(0, 0, 0, 0.45),
    0 3px 6px rgba(0, 0, 0, 0.35) !important;
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.35) !important;
}
html body > .portal-login-cluster--desktop .btn.btn-book:hover,
html body > .portal-login-cluster--desktop .btn.btn-portal-login:hover,
html body > .portal-login-cluster.portal-login-cluster--desktop .btn-book:hover,
html body > .portal-login-cluster.portal-login-cluster--desktop .btn-portal-login:hover {
  background: linear-gradient(180deg, #2a4a5e 0%, #153040 55%, #0d1a24 100%) !important;
  border-color: #00B0FD !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.22),
    inset 0 -2px 0 rgba(0, 0, 0, 0.45),
    0 10px 22px rgba(0, 100, 160, 0.35),
    0 3px 6px rgba(0, 0, 0, 0.35) !important;
}

/* mcl187 — Habitation pill a bit bolder */
body.page-habitation .hab-pill-band .svc-hab-crosspill {
  border-color: rgba(0, 176, 253, 0.42) !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.9) inset,
    0 8px 20px rgba(7, 22, 40, 0.1) !important;
}
body.page-habitation .hab-pill-band .svc-hab-crosspill__text {
  font-weight: 650 !important;
  color: #142838 !important;
}
body.page-habitation .hab-pill-band .svc-hab-crosspill__btn {
  font-weight: 700 !important;
  border-color: rgba(0, 176, 253, 0.55) !important;
  background: rgba(0, 176, 253, 0.12) !important;
}

/* mcl188 — Book Habitation card: depth, less blocky */
body.page-habitation .hab-book-card {
  border: 1px solid rgba(0, 176, 253, 0.22) !important;
  border-radius: 0.85rem !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.99) 0%, rgba(244,248,252,0.97) 100%) !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.9) inset,
    0 12px 28px rgba(7, 22, 40, 0.1),
    0 4px 10px rgba(7, 22, 40, 0.06) !important;
}
body.page-habitation .hab-book-card__btn,
body.page-habitation .hab-book-card__call {
  border-radius: 0.55rem !important;
  font-weight: 650 !important;
  letter-spacing: 0.04em !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.15),
    0 6px 14px rgba(7, 22, 40, 0.12) !important;
}
body.page-habitation .hab-book-card__call {
  background: linear-gradient(180deg, #e8f4fb 0%, #d5eaf6 100%) !important;
  border: 1px solid rgba(0, 176, 253, 0.4) !important;
  color: #0a3a5c !important;
}
body.page-habitation .hab-book-card__call:hover {
  background: linear-gradient(180deg, #f0f8fc 0%, #dff0fa 100%) !important;
  border-color: #00B0FD !important;
  color: #072838 !important;
}

/* mcl189 — Book Habitation logo + equal card height */
body.page-habitation .hab-book-card {
  display: flex !important;
  flex-direction: column !important;
  min-height: 100% !important;
}
body.page-habitation .hab-book-card__head {
  display: flex !important;
  align-items: center !important;
  gap: 0.65rem !important;
  margin-bottom: 0.75rem !important;
}
body.page-habitation .hab-book-card__logo {
  width: 2.5rem !important;
  height: 2.5rem !important;
  object-fit: contain !important;
  flex: 0 0 auto !important;
}
body.page-habitation .row.g-4 > [class*="col-"] > .card-hc {
  height: 100% !important;
}

/* mcl190 — Hab book card Trips tip */
body.page-habitation .hab-book-card__tip {
  color: #3a4a5a !important;
  line-height: 1.45 !important;
}
body.page-habitation .hab-book-card__trips {
  border-radius: 0.55rem !important;
  font-weight: 650 !important;
  letter-spacing: 0.04em !important;
  background: linear-gradient(180deg, #f4fafc 0%, #e5f3fa 100%) !important;
  border: 1px solid rgba(0, 176, 253, 0.35) !important;
  color: #0a3a5c !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.85),
    0 5px 12px rgba(7, 22, 40, 0.08) !important;
}
body.page-habitation .hab-book-card__trips:hover {
  border-color: #00B0FD !important;
  color: #072838 !important;
}

/* mcl191 — Hab book card fuller copy + air above CTAs */
body.page-habitation .hab-book-card__lead {
  color: #2a3a4a !important;
  font-size: 0.95rem !important;
  line-height: 1.55 !important;
  margin-bottom: 0.85rem !important;
}
body.page-habitation .hab-book-card__tip {
  color: #3a4a5a !important;
  font-size: 0.9rem !important;
  line-height: 1.5 !important;
  margin-bottom: 0 !important;
  flex: 1 1 auto !important;
}
body.page-habitation .hab-book-card__ctas {
  margin-top: 1.65rem !important;
}

/* mcl192 — Hab book site CTA: saltire blue */
body.page-habitation .hab-book-card__btn {
  background: linear-gradient(180deg, #1a6bb5 0%, #0b4f8c 55%, #083a6a 100%) !important;
  border: 1px solid rgba(255, 255, 255, 0.28) !important;
  color: #fff !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.22),
    inset 0 -2px 0 rgba(0, 20, 50, 0.35),
    0 8px 18px rgba(8, 60, 120, 0.28) !important;
}
body.page-habitation .hab-book-card__btn:hover,
body.page-habitation .hab-book-card__btn:focus-visible {
  background: linear-gradient(180deg, #2a7bc8 0%, #0e5a9e 55%, #0a4578 100%) !important;
  border-color: rgba(255, 255, 255, 0.4) !important;
  color: #fff !important;
}

/* mcl195 — family card title air + cyan detail underline */
body.page-habitation .hab-family-title {
  margin-bottom: 1.15rem !important;
  padding-bottom: 0.65rem !important;
  border-bottom: none !important;
  position: relative !important;
  display: inline-block !important;
}
body.page-habitation .hab-family-title::after {
  content: '' !important;
  display: block !important;
  width: 3.25rem !important;
  height: 1px !important;
  margin-top: 0.55rem !important;
  border-radius: 0 !important;
  background: linear-gradient(90deg, transparent 0%, #00B0FD 28%, #c9a227 72%, transparent 100%) !important;
}

/* mcl196 — softer family underline */
body.page-habitation .hab-family-title::after {
  width: 3.25rem !important;
  height: 1px !important;
  border-radius: 0 !important;
  background: linear-gradient(90deg, transparent 0%, rgba(0,176,253,0.85) 30%, rgba(201,162,39,0.75) 70%, transparent 100%) !important;
}

/* mcl197 — larger hab book logo (layout unchanged) */
body.page-habitation .hab-book-card__logo {
  width: 3.35rem !important;
  height: 3.35rem !important;
}

/* mcl207 — single body offset for sidebar */
@media (min-width: 992px) {
  :root {
    --hc-sidebar-actual: 210px !important;
    --hc-sidebar-width: 210px !important;
    --hc-sidebar-min-width: 210px !important;
  }
  body:not(.mcl-landing) {
    margin-left: 210px !important;
  }
  body:not(.mcl-landing) .main-wrapper {
    margin-left: 0 !important;
  }
}

/* mcl209 — footer white chunk only */
.main-wrapper > section:has(+ .footer-detail-line),
.main-wrapper > section:has(+ footer.site-footer) {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}
.main-wrapper > section:has(+ .footer-detail-line) > .container,
.main-wrapper > section:has(+ footer.site-footer) > .container {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}
.main-wrapper > section:has(+ .footer-detail-line) .mcl-media-slot,
.main-wrapper > section:has(+ footer.site-footer) .mcl-media-slot {
  margin-bottom: 0 !important;
}
.main-wrapper > .footer-detail-line {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* mcl212 — clip phoenix under footer */
footer.site-footer,
footer.site-footer.site-footer--mcl,
.site-footer.site-footer--mcl {
  overflow: hidden !important;
  margin-bottom: 0 !important;
}
footer.site-footer::after,
.site-footer::after,
footer.site-footer.site-footer--mcl::after,
.site-footer.site-footer--mcl::after {
  bottom: 0 !important;
}
html, body, .main-wrapper {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}
body > .sticky-book-bar,
.sticky-book-bar {
  display: none !important;
}

/* mcl213 — Talk to us centred + CTA depth */
.main-wrapper > .cta-band.cta-band--mcl,
.cta-band.cta-band--mcl {
  padding-top: clamp(3.25rem, 6vw, 4.75rem) !important;
  padding-bottom: clamp(3.25rem, 6vw, 4.75rem) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.cta-band.cta-band--mcl .cta-band__actions .btn,
.main-wrapper .cta-band.cta-band--mcl .cta-band__actions .btn {
  min-height: 2.85rem !important;
  padding: 0.72rem 1.55rem !important;
  font-size: 0.78rem !important;
  font-weight: 650 !important;
  letter-spacing: 0.12em !important;
  background: linear-gradient(180deg, #2c3a4d 0%, #161d28 48%, #0a0e14 100%) !important;
  border: 1px solid rgba(0, 176, 253, 0.65) !important;
  color: #fff !important;
  border-radius: 0.08rem !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.28),
    inset 0 -3px 0 rgba(0,0,0,0.65),
    0 10px 22px rgba(0,0,0,0.5),
    0 4px 8px rgba(0,0,0,0.4) !important;
}
.cta-band.cta-band--mcl .cta-band__actions .btn:hover,
.main-wrapper .cta-band.cta-band--mcl .cta-band__actions .btn:hover {
  border-color: #00B0FD !important;
  background: linear-gradient(180deg, #354557 0%, #1a2432 48%, #0c121a 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.32),
    inset 0 -3px 0 rgba(0,0,0,0.65),
    0 12px 26px rgba(0,120,180,0.4),
    0 4px 8px rgba(0,0,0,0.4) !important;
}

/* mcl215 — restore CTA detail line */
.cta-band.cta-band--mcl,
.main-wrapper > .cta-band.cta-band--mcl {
  border-top: none !important;
  box-shadow: none !important;
  position: relative !important;
}
.cta-band.cta-band--mcl::before,
.main-wrapper > .cta-band.cta-band--mcl::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  top: 0 !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: min(52rem, 88%) !important;
  height: 2px !important;
  margin: 0 !important;
  padding: 0 !important;
  z-index: 5 !important;
  pointer-events: none !important;
  background: linear-gradient(90deg,
    transparent 0%,
    #00B0FD 14%,
    rgba(0,176,253,0.7) 34%,
    #C9A227 50%,
    rgba(0,176,253,0.7) 66%,
    #00B0FD 86%,
    transparent 100%) !important;
}

/* mcl216 — Talk to us air + header underline */
.cta-band.cta-band--mcl,
.main-wrapper > .cta-band.cta-band--mcl {
  padding-bottom: clamp(4rem, 7.5vw, 5.75rem) !important;
}
.cta-band.cta-band--mcl h2,
.cta-band.cta-band--mcl .cta-band__title,
.main-wrapper .cta-band.cta-band--mcl h2 {
  position: relative !important;
  display: inline-block !important;
  padding-bottom: 0.7rem !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.cta-band.cta-band--mcl h2::after,
.cta-band.cta-band--mcl .cta-band__title::after,
.main-wrapper .cta-band.cta-band--mcl h2::after {
  content: "" !important;
  display: block !important;
  width: 2.75rem !important;
  height: 1px !important;
  margin: 0.55rem auto 0 !important;
  background: linear-gradient(90deg, transparent 0%, rgba(0,176,253,0.85) 30%, rgba(201,162,39,0.75) 70%, transparent 100%) !important;
}
.cta-band.cta-band--mcl .section-title-wrap,
.cta-band.cta-band--mcl .cta-band__inner,
.main-wrapper .cta-band.cta-band--mcl .text-center {
  text-align: center !important;
}

/* mcl217 — centre Talk underline */
.cta-band.cta-band--mcl .section-title-wrap,
.main-wrapper .cta-band.cta-band--mcl .section-title-wrap {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
}
.cta-band.cta-band--mcl h2,
.cta-band.cta-band--mcl .cta-band__title,
.main-wrapper .cta-band.cta-band--mcl h2 {
  display: block !important;
  width: fit-content !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}
.cta-band.cta-band--mcl h2::after,
.cta-band.cta-band--mcl .cta-band__title::after,
.main-wrapper .cta-band.cta-band--mcl h2::after {
  margin-left: auto !important;
  margin-right: auto !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
}

/* mcl218 — fleet CTA match Talk to us */
body.albyn-page-partners .partners-section-sep.albyn-dual-gold:has(+ #partners-cta),
body.albyn-page-partners #partners-cta + .partners-section-sep {
  display: none !important;
}
body.albyn-page-partners #partners-cta.cta-band--mcl::before,
body.albyn-page-partners #partners-cta.partners-cta::before {
  left: 50% !important;
  right: auto !important;
  width: min(52rem, 88%) !important;
  transform: translateX(-50%) !important;
  height: 2px !important;
  background: linear-gradient(90deg,
    transparent 0%,
    #00B0FD 14%,
    rgba(0,176,253,0.7) 34%,
    #C9A227 50%,
    rgba(0,176,253,0.7) 66%,
    #00B0FD 86%,
    transparent 100%) !important;
}
body.albyn-page-partners #partners-cta .partners-cta-gold,
body.albyn-page-partners #partners-cta .tartan-rule,
body.albyn-page-partners #partners-cta .albyn-rule--cta {
  display: none !important;
}
body.albyn-page-partners #partners-cta #partners-cta-heading {
  display: block !important;
  width: fit-content !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-bottom: 0 !important;
  position: relative !important;
}
body.albyn-page-partners #partners-cta #partners-cta-heading::after {
  content: "" !important;
  display: block !important;
  width: 2.75rem !important;
  height: 1px !important;
  margin: 0.55rem auto 0.85rem !important;
  background: linear-gradient(90deg, transparent 0%, rgba(0,176,253,0.85) 30%, rgba(201,162,39,0.75) 70%, transparent 100%) !important;
}
body.albyn-page-partners #partners-cta .partners-cta-kicker {
  display: inline-block !important;
  margin-bottom: 0.65rem !important;
}
body.albyn-page-partners #partners-cta .partners-cta-actions .btn {
  min-height: 2.85rem !important;
  padding: 0.72rem 1.55rem !important;
  font-size: 0.78rem !important;
  font-weight: 650 !important;
  letter-spacing: 0.12em !important;
  background: linear-gradient(180deg, #2c3a4d 0%, #161d28 48%, #0a0e14 100%) !important;
  border: 1px solid rgba(0, 176, 253, 0.65) !important;
  color: #fff !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.28),
    inset 0 -3px 0 rgba(0,0,0,0.65),
    0 10px 22px rgba(0,0,0,0.5),
    0 4px 8px rgba(0,0,0,0.4) !important;
}

/* mcl219 — fleet CTA clean match */
body.albyn-page-partners .partners-section-sep.albyn-dual-gold {
  display: none !important;
}
body.albyn-page-partners #partners-cta.partners-cta,
body.albyn-page-partners #partners-cta.cta-band--mcl {
  background-color: #050e1a !important;
  background-image:
    radial-gradient(70% 80% at 50% 45%, rgba(28, 58, 98, 0.95) 0%, transparent 70%),
    linear-gradient(90deg, #040a12 0%, #0a1628 22%, #163456 50%, #0a1628 78%, #040a12 100%) !important;
  border-top: none !important;
  box-shadow: none !important;
}
body.albyn-page-partners #partners-cta.partners-cta::before,
body.albyn-page-partners #partners-cta.cta-band--mcl::before {
  display: none !important;
  content: none !important;
}
body.albyn-page-partners #partners-cta .partners-cta-gold,
body.albyn-page-partners #partners-cta .tartan-rule,
body.albyn-page-partners #partners-cta .albyn-rule--cta {
  display: none !important;
}

/* mcl221 — fleet kicker match Contact */
body.albyn-page-partners #partners-cta .partners-cta-kicker,
body.albyn-page-partners #partners-cta .cta-band__kicker {
  color: rgba(220, 228, 238, 0.72) !important;
  border-bottom: none !important;
  padding-bottom: 0.15rem !important;
  margin-bottom: 0.55rem !important;
  font-size: 0.68rem !important;
  letter-spacing: 0.16em !important;
  position: relative !important;
  display: inline-block !important;
}
body.albyn-page-partners #partners-cta .partners-cta-kicker::after,
body.albyn-page-partners #partners-cta .cta-band__kicker::after {
  content: "" !important;
  display: block !important;
  width: 2.75rem !important;
  height: 1px !important;
  margin: 0.35rem auto 0 !important;
  background: linear-gradient(90deg, #00B0FD 0%, #C9A227 100%) !important;
}

/* mcl222 — fleet navy edge lines */
body.albyn-page-partners #partners-cta.partners-cta,
body.albyn-page-partners #partners-cta.cta-band--mcl {
  position: relative !important;
  border-top: none !important;
  border-bottom: none !important;
}
body.albyn-page-partners #partners-cta.partners-cta::before,
body.albyn-page-partners #partners-cta.cta-band--mcl::before,
body.albyn-page-partners #partners-cta.partners-cta::after,
body.albyn-page-partners #partners-cta.cta-band--mcl::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: min(52rem, 88%) !important;
  height: 2px !important;
  z-index: 5 !important;
  pointer-events: none !important;
  background: linear-gradient(90deg,
    transparent 0%,
    #00B0FD 14%,
    rgba(0,176,253,0.7) 34%,
    #C9A227 50%,
    rgba(0,176,253,0.7) 66%,
    #00B0FD 86%,
    transparent 100%) !important;
}
body.albyn-page-partners #partners-cta.partners-cta::before,
body.albyn-page-partners #partners-cta.cta-band--mcl::before {
  top: 0 !important;
  bottom: auto !important;
}
body.albyn-page-partners #partners-cta.partners-cta::after,
body.albyn-page-partners #partners-cta.cta-band--mcl::after {
  bottom: 0 !important;
  top: auto !important;
}

/* mcl230 — Still unsure CTAs = Talk fleet size + depth */
body.page-faq .cta-band.cta-band--mcl .cta-band__actions {
  display: flex !important;
  flex-wrap: nowrap !important;
  justify-content: center !important;
  align-items: stretch !important;
  gap: 0.75rem !important;
  width: 100% !important;
  max-width: 36rem !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-top: 1.25rem !important;
}
body.page-faq .cta-band.cta-band--mcl .cta-band__actions .btn,
body.page-faq .cta-band.cta-band--mcl .cta-band__actions a.btn,
body.page-faq .cta-band.cta-band--mcl .cta-band__actions .btn-portal-login {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  width: auto !important;
  min-height: 2.85rem !important;
  padding: 0.72rem 1.1rem !important;
  font-size: 0.78rem !important;
  font-weight: 650 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  border-radius: 0 !important;
  color: #fff !important;
  border: 1px solid rgba(0, 176, 253, 0.65) !important;
  background: linear-gradient(180deg, #2c3a4d 0%, #161d28 48%, #0a0e14 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.28),
    inset 0 -3px 0 rgba(0,0,0,0.65),
    0 10px 22px rgba(0,0,0,0.5),
    0 4px 8px rgba(0,0,0,0.4) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
}
body.page-faq .cta-band.cta-band--mcl .cta-band__actions .btn:hover,
body.page-faq .cta-band.cta-band--mcl .cta-band__actions a.btn:hover,
body.page-faq .cta-band.cta-band--mcl .cta-band__actions .btn-portal-login:hover,
body.page-faq .cta-band.cta-band--mcl .cta-band__actions .btn:focus-visible,
body.page-faq .cta-band.cta-band--mcl .cta-band__actions .btn-portal-login:focus-visible {
  border-color: #00B0FD !important;
  background: linear-gradient(180deg, #354557 0%, #1a2432 48%, #0c121a 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.32),
    inset 0 -3px 0 rgba(0,0,0,0.65),
    0 12px 26px rgba(0,120,180,0.4),
    0 4px 8px rgba(0,0,0,0.4) !important;
}
@media (max-width: 575.98px) {
  body.page-faq .cta-band.cta-band--mcl .cta-band__actions {
    flex-wrap: wrap !important;
    max-width: 100% !important;
  }
}

/* mcl231 — footer detail line: gold dead-centre, symmetric fade */
.main-wrapper > .footer-detail-line,
.footer-detail-line,
body.page-faq .cta-band.cta-band--mcl + .footer-detail-line {
  display: block !important;
  width: min(52rem, 88%) !important;
  max-width: min(52rem, 88%) !important;
  height: 2px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background-color: transparent !important;
  background-image: linear-gradient(90deg,
    transparent 0%,
    rgba(0,176,253,0.35) 12%,
    #00B0FD 28%,
    #C9A227 50%,
    #00B0FD 72%,
    rgba(0,176,253,0.35) 88%,
    transparent 100%) !important;
  background-size: 100% 100% !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  opacity: 1 !important;
}

/* mcl232 — detail line fades to navy, not transparent/white */
.main-wrapper > .footer-detail-line,
.footer-detail-line,
body.page-faq .cta-band.cta-band--mcl + .footer-detail-line {
  background-image: linear-gradient(90deg,
    #06090f 0%,
    rgba(0,176,253,0.45) 18%,
    #00B0FD 32%,
    #C9A227 50%,
    #00B0FD 68%,
    rgba(0,176,253,0.45) 82%,
    #06090f 100%) !important;
}

/* mcl233 — filled Habitation soft hand-off image slot */
.mcl-media-slot--filled {
  position: relative !important;
  overflow: hidden !important;
  padding: 0 !important;
  background: #0a1628 !important;
}
.mcl-media-slot--filled .mcl-media-slot__label,
.mcl-media-slot--filled .mcl-media-slot__hint {
  display: none !important;
}
.mcl-media-slot--filled .mcl-media-slot__img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}

/* mcl234 — Habitation slot: smaller logo, more sky */
body[data-site="albyn"] .mcl-media-slot--filled.mcl-media-slot--image,
.main-wrapper .mcl-media-slot--filled.mcl-media-slot--image {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: linear-gradient(180deg, #7eb8e8 0%, #a8d4f5 45%, #c5e4fa 100%) !important;
  border: 1px solid rgba(0, 176, 253, 0.28) !important;
}
.main-wrapper .mcl-media-slot--filled .mcl-media-slot__img {
  width: auto !important;
  height: auto !important;
  max-width: 42% !important;
  max-height: 58% !important;
  object-fit: contain !important;
  object-position: center !important;
}

/* mcl235 — Habitation image slot: depth + cyan/gold edge lines */
body.page-habitation .mcl-media-slot--filled.mcl-media-slot--image {
  position: relative !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.35) inset,
    0 -2px 0 rgba(0,0,0,0.12) inset,
    0 14px 28px rgba(8,40,80,0.22),
    0 4px 10px rgba(0,0,0,0.12) !important;
  border: 1px solid rgba(0,176,253,0.35) !important;
}
body.page-habitation .mcl-media-slot--filled.mcl-media-slot--image::before,
body.page-habitation .mcl-media-slot--filled.mcl-media-slot--image::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: min(52rem, 92%) !important;
  height: 2px !important;
  z-index: 3 !important;
  pointer-events: none !important;
  background: linear-gradient(90deg,
    transparent 0%,
    #00B0FD 14%,
    rgba(0,176,253,0.7) 34%,
    #C9A227 50%,
    rgba(0,176,253,0.7) 66%,
    #00B0FD 86%,
    transparent 100%) !important;
}
body.page-habitation .mcl-media-slot--filled.mcl-media-slot--image::before {
  top: 0 !important;
  bottom: auto !important;
}
body.page-habitation .mcl-media-slot--filled.mcl-media-slot--image::after {
  bottom: 0 !important;
  top: auto !important;
}

/* mcl236 — Habitation footer seam level (no cream step) */
body.page-habitation .main-wrapper > section:has(+ .footer-detail-line) {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
  background: transparent !important;
}
body.page-habitation .main-wrapper > section:has(+ .footer-detail-line) .mcl-media-slot {
  margin-bottom: 0 !important;
}
body.page-habitation .footer-detail-line {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: 2px !important;
  margin: 0 !important;
  background-color: #06090f !important;
  background-image: linear-gradient(90deg,
    #06090f 0%,
    rgba(0,176,253,0.45) 18%,
    #00B0FD 32%,
    #C9A227 50%,
    #00B0FD 68%,
    rgba(0,176,253,0.45) 82%,
    #06090f 100%) !important;
  background-size: min(52rem, 88%) 2px !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  box-shadow: none !important;
  position: relative !important;
  z-index: 6 !important;
}
body.page-habitation footer.site-footer,
body.page-habitation footer.site-footer.site-footer--mcl {
  margin-top: 0 !important;
  border-top: none !important;
  position: relative !important;
  z-index: 5 !important;
}

/* mcl237 — customer-login footer seam level (same as Habitation) */
body.page-customer-login .main-wrapper > section:has(+ .footer-detail-line),
body[class*="customer"] .main-wrapper > section:has(+ .footer-detail-line) {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
  background: transparent !important;
}
body.page-customer-login .main-wrapper > section:has(+ .footer-detail-line) .mcl-media-slot,
body[class*="customer"] .main-wrapper > section:has(+ .footer-detail-line) .mcl-media-slot {
  margin-bottom: 0 !important;
}
body.page-customer-login .footer-detail-line,
body[class*="customer"] .footer-detail-line {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: 2px !important;
  margin: 0 !important;
  background-color: #06090f !important;
  background-image: linear-gradient(90deg,
    #06090f 0%,
    rgba(0,176,253,0.45) 18%,
    #00B0FD 32%,
    #C9A227 50%,
    #00B0FD 68%,
    rgba(0,176,253,0.45) 82%,
    #06090f 100%) !important;
  background-size: min(52rem, 88%) 2px !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  position: relative !important;
  z-index: 6 !important;
}
body.page-customer-login footer.site-footer,
body[class*="customer"] footer.site-footer {
  margin-top: 0 !important;
  border-top: none !important;
  position: relative !important;
  z-index: 5 !important;
}

/* mcl238 — sitewide footer seam level (cream step kill) */
.main-wrapper > section:has(+ .footer-detail-line) {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}
.main-wrapper > section:has(+ .footer-detail-line) > .container {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}
.main-wrapper > .footer-detail-line,
.footer-detail-line {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: 2px !important;
  margin: 0 !important;
  background-color: #06090f !important;
  background-image: linear-gradient(90deg,
    #06090f 0%,
    rgba(0,176,253,0.45) 18%,
    #00B0FD 32%,
    #C9A227 50%,
    #00B0FD 68%,
    rgba(0,176,253,0.45) 82%,
    #06090f 100%) !important;
  background-size: min(52rem, 88%) 2px !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  position: relative !important;
  z-index: 6 !important;
}
.main-wrapper > footer.site-footer,
footer.site-footer {
  margin-top: 0 !important;
  border-top: none !important;
}

/* mcl239 — last section container pb before footer (customer login etc) */
.main-wrapper > section:has(+ .footer-detail-line) > .container.pb-5,
.main-wrapper > section:has(+ .footer-detail-line) > .container {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}
body.page-customer-login .main-wrapper > section:has(+ .footer-detail-line) {
  overflow: hidden !important;
}

/* mcl240 — customer login “Book Now” gold CTA */
body.page-customer-login .portal-signin-card > a.btn.btn-outline-primary,
body.page-customer-login .portal-signin-card > a.btn.btn-book {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: fit-content !important;
  min-height: 2.85rem !important;
  padding: 0.72rem 1.2rem !important;
  font-size: 0.78rem !important;
  font-weight: 650 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: #1a1408 !important;
  border: 1px solid rgba(201,162,39,0.85) !important;
  border-radius: 0 !important;
  background: linear-gradient(180deg, #e8d48a 0%, #c9a227 48%, #8f7014 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.45),
    inset 0 -2px 0 rgba(80,55,5,0.35),
    0 10px 22px rgba(0,0,0,0.22),
    0 2px 6px rgba(201,162,39,0.35) !important;
  text-decoration: none !important;
}
body.page-customer-login .portal-signin-card > a.btn.btn-outline-primary:hover,
body.page-customer-login .portal-signin-card > a.btn.btn-book:hover,
body.page-customer-login .portal-signin-card > a.btn.btn-outline-primary:focus-visible,
body.page-customer-login .portal-signin-card > a.btn.btn-book:focus-visible {
  color: #120e05 !important;
  border-color: #C9A227 !important;
  background: linear-gradient(180deg, #f0dfa0 0%, #d4ae35 48%, #a07e18 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.55),
    inset 0 -2px 0 rgba(80,55,5,0.4),
    0 12px 26px rgba(0,0,0,0.26),
    0 0 18px rgba(201,162,39,0.35) !important;
}
body.page-customer-login a.portal-signin-book-gold {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 2.85rem !important;
  padding: 0.72rem 1.2rem !important;
  font-size: 0.78rem !important;
  font-weight: 650 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: #1a1408 !important;
  border: 1px solid rgba(201,162,39,0.85) !important;
  border-radius: 0 !important;
  background: linear-gradient(180deg, #e8d48a 0%, #c9a227 48%, #8f7014 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.45),
    inset 0 -2px 0 rgba(80,55,5,0.35),
    0 10px 22px rgba(0,0,0,0.22),
    0 2px 6px rgba(201,162,39,0.35) !important;
}
body.page-customer-login a.portal-signin-book-gold:hover,
body.page-customer-login a.portal-signin-book-gold:focus-visible {
  color: #120e05 !important;
  border-color: #C9A227 !important;
  background: linear-gradient(180deg, #f0dfa0 0%, #d4ae35 48%, #a07e18 100%) !important;
}

/* mcl241 — customer login card buttons: content-width, not full card */
body.page-customer-login .portal-signin-card .btn.btn-book,
body.page-customer-login .portal-signin-card a.portal-signin-book-gold,
body.page-customer-login .portal-signin-card > a.btn {
  width: auto !important;
  max-width: 100% !important;
  min-width: 11rem !important;
  display: inline-flex !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
body.page-customer-login .portal-signin-card #customerLoginForm .col-12:has(> .btn),
body.page-customer-login .portal-signin-card {
  text-align: center !important;
}
body.page-customer-login .portal-signin-card .form-label,
body.page-customer-login .portal-signin-card .form-control,
body.page-customer-login .portal-signin-card .alert,
body.page-customer-login .portal-signin-card h2,
body.page-customer-login .portal-signin-card > p.small {
  text-align: left !important;
}

/* mcl242 — customer login: left labels; compact gold Book Now white text */
body.page-customer-login .portal-signin-card {
  text-align: left !important;
}
body.page-customer-login .portal-signin-card .form-label,
body.page-customer-login .portal-signin-card .form-control,
body.page-customer-login .portal-signin-card h2,
body.page-customer-login .portal-signin-card > p.small,
body.page-customer-login .portal-signin-card .portal-signin-hint {
  text-align: left !important;
}
body.page-customer-login .portal-signin-card .btn.btn-book,
body.page-customer-login .portal-signin-card a.portal-signin-book-gold {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  width: auto !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
body.page-customer-login a.portal-signin-book-gold {
  min-width: 0 !important;
  min-height: 2.35rem !important;
  padding: 0.5rem 1.15rem !important;
  font-size: 0.7rem !important;
  color: #fff !important;
  background: linear-gradient(180deg, #d4b44a 0%, #C9A227 48%, #8f7014 100%) !important;
  border: 1px solid rgba(201,162,39,0.95) !important;
}
body.page-customer-login a.portal-signin-book-gold:hover,
body.page-customer-login a.portal-signin-book-gold:focus-visible {
  color: #fff !important;
  background: linear-gradient(180deg, #e0c25a 0%, #d4ae35 48%, #a07e18 100%) !important;
}

/* mcl243 — Book Now MUST NOT stretch (beat Bootstrap .btn / .w-100) */
body.page-customer-login .portal-signin-card .portal-signin-book-wrap {
  display: block !important;
  width: fit-content !important;
  max-width: 100% !important;
  margin: 0 !important;
}
body.page-customer-login .portal-signin-card a.portal-signin-book-gold.btn,
body.page-customer-login .portal-signin-card a.portal-signin-book-gold {
  display: inline-flex !important;
  width: fit-content !important;
  max-width: 100% !important;
  min-width: 0 !important;
  flex: 0 0 auto !important;
  align-self: flex-start !important;
  padding: 0.5rem 1.15rem !important;
  min-height: 2.35rem !important;
  font-size: 0.7rem !important;
  color: #fff !important;
  text-align: center !important;
  justify-content: center !important;
  background: linear-gradient(180deg, #d4b44a 0%, #C9A227 48%, #8f7014 100%) !important;
  border: 1px solid rgba(201,162,39,0.95) !important;
  box-sizing: border-box !important;
}

/* mcl244 — centre No account + Book Now block */
body.page-customer-login .portal-signin-card > hr,
body.page-customer-login .portal-signin-card > p.small.mb-2,
body.page-customer-login .portal-signin-card .portal-signin-book-wrap {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
body.page-customer-login .portal-signin-card > p.small.mb-2 {
  width: 100% !important;
}
body.page-customer-login .portal-signin-card .portal-signin-book-wrap {
  display: flex !important;
  justify-content: center !important;
  width: 100% !important;
}

/* mcl245 — customer login card depth + field lift */
body.page-customer-login .portal-signin-card.form-card {
  background: linear-gradient(180deg, #ffffff 0%, #f4f7fb 100%) !important;
  border: 1px solid rgba(0,176,253,0.28) !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.9) inset,
    0 -1px 0 rgba(11,31,58,0.06) inset,
    0 18px 36px rgba(8,28,55,0.16),
    0 6px 14px rgba(0,0,0,0.08) !important;
  padding: 1.55rem 1.45rem !important;
}
body.page-customer-login .portal-signin-card .form-control {
  background: #fff !important;
  border: 1px solid rgba(11,31,58,0.18) !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.8) inset,
    0 2px 6px rgba(8,28,55,0.06) !important;
}
body.page-customer-login .portal-signin-card .form-control:focus {
  border-color: rgba(0,176,253,0.55) !important;
  box-shadow:
    0 0 0 3px rgba(0,176,253,0.15),
    0 2px 8px rgba(8,28,55,0.08) !important;
}

/* mcl246 — Sign in button: compact, not long/thin/blocky */
body.page-customer-login .portal-signin-card button.btn.btn-book,
body.page-customer-login .portal-signin-card #customerLoginForm .btn.btn-book {
  display: inline-flex !important;
  width: fit-content !important;
  min-width: 0 !important;
  min-height: 2.35rem !important;
  height: auto !important;
  padding: 0.5rem 1.35rem !important;
  font-size: 0.72rem !important;
  font-weight: 650 !important;
  letter-spacing: 0.12em !important;
  border-radius: 0.2rem !important;
  justify-content: center !important;
  align-items: center !important;
}

/* mcl247 — restore cyan→gold detail line under Sign in form */
body.page-customer-login .portal-signin-card > hr {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: min(14rem, 70%) !important;
  height: 2px !important;
  margin: 1.35rem auto 1.1rem !important;
  border: 0 !important;
  background: linear-gradient(90deg,
    transparent 0%,
    #00B0FD 18%,
    #C9A227 50%,
    #00B0FD 82%,
    transparent 100%) !important;
}

/* mcl248 — Sign in button bevel depth + keep sep visible */
body.page-customer-login .portal-signin-card button.btn.btn-book,
body.page-customer-login .portal-signin-card #customerLoginForm .btn.btn-book {
  border: 1px solid rgba(0,176,253,0.65) !important;
  background: linear-gradient(180deg, #2c3a4d 0%, #161d28 48%, #0a0e14 100%) !important;
  color: #fff !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.28),
    inset 0 -3px 0 rgba(0,0,0,0.65),
    0 10px 22px rgba(0,0,0,0.28),
    0 4px 8px rgba(0,0,0,0.18) !important;
}
body.page-customer-login .portal-signin-card button.btn.btn-book:hover,
body.page-customer-login .portal-signin-card #customerLoginForm .btn.btn-book:hover {
  border-color: #00B0FD !important;
  background: linear-gradient(180deg, #354557 0%, #1a2432 48%, #0c121a 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.32),
    inset 0 -3px 0 rgba(0,0,0,0.65),
    0 12px 26px rgba(0,120,180,0.28),
    0 4px 8px rgba(0,0,0,0.2) !important;
}
body.page-customer-login .portal-signin-card > hr.my-4,
body.page-customer-login .portal-signin-card > hr {
  display: block !important;
  height: 2px !important;
  border: 0 !important;
  opacity: 1 !important;
  width: min(14rem, 70%) !important;
  margin: 1.35rem auto 1.1rem !important;
  background: linear-gradient(90deg, transparent 0%, #00B0FD 18%, #C9A227 50%, #00B0FD 82%, transparent 100%) !important;
}

/* mcl249 — thinner elegant divider under Sign in */
body.page-customer-login .portal-signin-card > hr.my-4,
body.page-customer-login .portal-signin-card > hr {
  display: block !important;
  height: 1px !important;
  border: 0 !important;
  opacity: 1 !important;
  width: min(10.5rem, 55%) !important;
  margin: 1.25rem auto 1rem !important;
  background: linear-gradient(90deg, transparent 0%, rgba(0,176,253,0.85) 30%, rgba(201,162,39,0.75) 70%, transparent 100%) !important;
  box-shadow: none !important;
}

/* mcl249b — Sign in bevel (from prior ask) */
body.page-customer-login .portal-signin-card button.btn.btn-book,
body.page-customer-login .portal-signin-card #customerLoginForm .btn.btn-book {
  border: 1px solid rgba(0,176,253,0.65) !important;
  background: linear-gradient(180deg, #2c3a4d 0%, #161d28 48%, #0a0e14 100%) !important;
  color: #fff !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.28),
    inset 0 -3px 0 rgba(0,0,0,0.65),
    0 10px 22px rgba(0,0,0,0.28),
    0 4px 8px rgba(0,0,0,0.18) !important;
}

/* mcl250 — more air above Sign in button */
body.page-customer-login .portal-signin-card #customerLoginForm .col-12:has(> .btn.btn-book) {
  margin-top: 0.85rem !important;
  padding-top: 0.35rem !important;
}
