/* Where To Go SA — Fiesta Premium design system (single source) */
:root {
  /* Locked palette for copy on global dark canvas + .section-dark bands */
  --on-dark-heading: #fff6e6;
  --on-dark-body: rgba(255, 246, 230, 0.84);
  --on-dark-body-soft: rgba(255, 246, 230, 0.78);
  --on-dark-eyebrow: var(--coral);
  --navy: #0b1d3a;
  --navy-deep: #060f1f;
  --turquoise: #14b8a6;
  --coral: #ff6a4d;
  --pink: #ff5ca8;
  --orange: #ff8b1f;
  --gold: #f2b21a;
  --slate: #59606b;
  --cream: #fff6e6;
  --cream-peach: #fff1e4;
  --cream-blush: #fff0f5;
  --cream-turq: #edf9f7;
  --white: #ffffff;
  --plum: #3d1a4a;
  --line: rgba(11, 29, 58, 0.14);
  --line-soft: rgba(11, 29, 58, 0.1);
  --shadow-sm: 0 12px 24px rgba(11, 29, 58, 0.1);
  --shadow: 0 24px 46px rgba(11, 29, 58, 0.16);
  --shadow-glow: 0 18px 40px rgba(255, 139, 31, 0.28);
  --radius: 22px;
  --radius-hero-visual: 28px;
  --btn-radius: 14px;
  --header-h: 64px;
  /* Premium public header (dashboard-inspired) */
  --wtg-header-bg: #050b16;
  --wtg-header-border: rgba(63, 211, 198, 0.25);
  --wtg-header-text: #f8f3e8;
  --wtg-header-muted: rgba(248, 243, 232, 0.72);
  --wtg-header-gold: #f2b632;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

html {
  scroll-behavior: smooth;
  scroll-padding-top: calc(var(--header-h, 64px) + 12px);
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  margin: 0;
  color: var(--on-dark-body-soft);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background:
    radial-gradient(ellipse 90% 40% at 50% -10%, rgba(97, 45, 120, 0.22), transparent 50%),
    radial-gradient(ellipse 55% 45% at 100% 30%, rgba(255, 106, 77, 0.1), transparent 45%),
    radial-gradient(circle at 8% 70%, rgba(20, 184, 166, 0.1), transparent 42%),
    linear-gradient(180deg, #040812 0%, #071326 42%, #0b1d3a 72%, #050a14 100%);
}

a {
  color: inherit;
  text-decoration: none;
}

h1,
h2,
h3,
p {
  margin-top: 0;
}

h1 {
  margin-bottom: 16px;
  font-size: clamp(2.25rem, 8vw, 4.6rem);
  line-height: 1.02;
  letter-spacing: -0.04em;
}

.hero-fiesta-dark .hero-title {
  font-size: clamp(2rem, 3.85vw, 2.92rem);
  line-height: 1.14;
  letter-spacing: -0.032em;
  max-width: 22ch;
  margin-bottom: 0;
}

h2 {
  margin-bottom: 14px;
  font-size: clamp(1.85rem, 6.8vw, 3.2rem);
  line-height: 1.05;
  letter-spacing: -0.03em;
}

h3 {
  margin-bottom: 10px;
  font-size: 1.15rem;
}

main {
  min-height: 70vh;
}

.hero-text,
.section-text,
.card p,
.note-card p {
  color: var(--slate);
  line-height: 1.66;
}

/*
  EXCLUSION-LIST RULE (read before adding a section class to the :not(...) lists below):

  Any new section class added to the negation chain MUST also ship its own
  text-color rules, or it will silently inherit body's cream and become invisible
  on a light background (T1-class bug).

    1) If the new section has a DARK background, add:
         .<new-class> { color: var(--on-dark-body-soft); }
         .<new-class> :is(h2, h3) { color: var(--on-dark-heading); }
         .<new-class> .section-text { color: var(--on-dark-body); }
    2) If the new section has a LIGHT background, add:
         .<new-class> :is(h2, h3) { color: var(--navy); }
         .<new-class> .section-text { color: var(--slate); }
         .<new-class> .eyebrow { color: #bf2a76; }

  Inner subpages: default sections sit on the global dark canvas — lock readable
  fiesta-on-dark type below.
*/
main > .section:not(.section-dark):not(.section-fiesta):not(.section-cream):not(.section-blush):not(.section-turquoise-wash):not(.section-navy-routes):not(.section-ask):not(.section-ask-premium):not(.section-after-inner-hero):not(.section-fiesta-featured):not(.section-explore-dark):not(.section-cta):not(.dark-showcase):not(.band):not(.ai-proof-section):not(.home-ai-plug-section):not(.transport-section):not(.fam-quick-match):not(.fam-pick-section):not(.fam-stacks-section) {
  color: var(--on-dark-body-soft);
}

main > .section:not(.section-dark):not(.section-fiesta):not(.section-cream):not(.section-blush):not(.section-turquoise-wash):not(.section-navy-routes):not(.section-ask):not(.section-ask-premium):not(.section-after-inner-hero):not(.section-fiesta-featured):not(.section-explore-dark):not(.section-cta):not(.dark-showcase):not(.band):not(.ai-proof-section):not(.home-ai-plug-section):not(.transport-section):not(.fam-quick-match):not(.fam-pick-section):not(.fam-stacks-section) :is(h2, h3) {
  color: var(--on-dark-heading);
}

main > .section:not(.section-dark):not(.section-fiesta):not(.section-cream):not(.section-blush):not(.section-turquoise-wash):not(.section-navy-routes):not(.section-ask):not(.section-ask-premium):not(.section-after-inner-hero):not(.section-fiesta-featured):not(.section-explore-dark):not(.section-cta):not(.dark-showcase):not(.band):not(.ai-proof-section):not(.home-ai-plug-section):not(.transport-section):not(.fam-quick-match):not(.fam-pick-section):not(.fam-stacks-section) .section-text {
  color: var(--on-dark-body);
}

main > .section:not(.section-dark):not(.section-fiesta):not(.section-cream):not(.section-blush):not(.section-turquoise-wash):not(.section-navy-routes):not(.section-ask):not(.section-ask-premium):not(.section-after-inner-hero):not(.section-fiesta-featured):not(.section-explore-dark):not(.section-cta):not(.dark-showcase):not(.band):not(.ai-proof-section):not(.home-ai-plug-section):not(.transport-section):not(.fam-quick-match):not(.fam-pick-section):not(.fam-stacks-section) .section-text a {
  color: var(--turquoise);
  text-decoration: underline;
  text-underline-offset: 0.14em;
}

main > .section:not(.section-dark):not(.section-fiesta):not(.section-cream):not(.section-blush):not(.section-turquoise-wash):not(.section-navy-routes):not(.section-ask):not(.section-ask-premium):not(.section-after-inner-hero):not(.section-fiesta-featured):not(.section-explore-dark):not(.section-cta):not(.dark-showcase):not(.band):not(.ai-proof-section):not(.home-ai-plug-section):not(.transport-section):not(.fam-quick-match):not(.fam-pick-section):not(.fam-stacks-section) .section-text a:hover {
  color: var(--gold);
}

main > .section:not(.section-dark):not(.section-fiesta):not(.section-cream):not(.section-blush):not(.section-turquoise-wash):not(.section-navy-routes):not(.section-ask):not(.section-ask-premium):not(.section-after-inner-hero):not(.section-fiesta-featured):not(.section-explore-dark):not(.section-cta):not(.dark-showcase):not(.band):not(.ai-proof-section):not(.home-ai-plug-section):not(.transport-section):not(.fam-quick-match):not(.fam-pick-section):not(.fam-stacks-section) > .eyebrow,
main > .section:not(.section-dark):not(.section-fiesta):not(.section-cream):not(.section-blush):not(.section-turquoise-wash):not(.section-navy-routes):not(.section-ask):not(.section-ask-premium):not(.section-after-inner-hero):not(.section-fiesta-featured):not(.section-explore-dark):not(.section-cta):not(.dark-showcase):not(.band):not(.ai-proof-section):not(.home-ai-plug-section):not(.transport-section):not(.fam-quick-match):not(.fam-pick-section):not(.fam-stacks-section) > div > .eyebrow:first-child,
main > .section:not(.section-dark):not(.section-fiesta):not(.section-cream):not(.section-blush):not(.section-turquoise-wash):not(.section-navy-routes):not(.section-ask):not(.section-ask-premium):not(.section-after-inner-hero):not(.section-fiesta-featured):not(.section-explore-dark):not(.section-cta):not(.dark-showcase):not(.band):not(.ai-proof-section):not(.home-ai-plug-section):not(.transport-section):not(.fam-quick-match):not(.fam-pick-section):not(.fam-stacks-section) :is(.eat-section-head, .sh-section-head, .tc-section-head) .eyebrow:not(.eyebrow-on-dark) {
  color: var(--on-dark-eyebrow);
}

main > .section:not(.section-dark):not(.section-fiesta):not(.section-cream):not(.section-blush):not(.section-turquoise-wash):not(.section-navy-routes):not(.section-ask):not(.section-ask-premium):not(.section-after-inner-hero):not(.section-fiesta-featured):not(.section-explore-dark):not(.section-cta):not(.dark-showcase):not(.band):not(.ai-proof-section):not(.home-ai-plug-section):not(.transport-section):not(.fam-quick-match):not(.fam-pick-section):not(.fam-stacks-section) .card,
main > .section:not(.section-dark):not(.section-fiesta):not(.section-cream):not(.section-blush):not(.section-turquoise-wash):not(.section-navy-routes):not(.section-ask):not(.section-ask-premium):not(.section-after-inner-hero):not(.section-fiesta-featured):not(.section-explore-dark):not(.section-cta):not(.dark-showcase):not(.band):not(.ai-proof-section):not(.home-ai-plug-section):not(.transport-section):not(.fam-quick-match):not(.fam-pick-section):not(.fam-stacks-section) .card h3 {
  color: var(--navy);
}

main > .section:not(.section-dark):not(.section-fiesta):not(.section-cream):not(.section-blush):not(.section-turquoise-wash):not(.section-navy-routes):not(.section-ask):not(.section-ask-premium):not(.section-after-inner-hero):not(.section-fiesta-featured):not(.section-explore-dark):not(.section-cta):not(.dark-showcase):not(.band):not(.ai-proof-section):not(.home-ai-plug-section):not(.transport-section):not(.fam-quick-match):not(.fam-pick-section):not(.fam-stacks-section) .card p,
main > .section:not(.section-dark):not(.section-fiesta):not(.section-cream):not(.section-blush):not(.section-turquoise-wash):not(.section-navy-routes):not(.section-ask):not(.section-ask-premium):not(.section-after-inner-hero):not(.section-fiesta-featured):not(.section-explore-dark):not(.section-cta):not(.dark-showcase):not(.band):not(.ai-proof-section):not(.home-ai-plug-section):not(.transport-section):not(.fam-quick-match):not(.fam-pick-section):not(.fam-stacks-section) .card small {
  color: var(--slate);
}

main > .section:not(.section-dark):not(.section-fiesta):not(.section-cream):not(.section-blush):not(.section-turquoise-wash):not(.section-navy-routes):not(.section-ask):not(.section-ask-premium):not(.section-after-inner-hero):not(.section-fiesta-featured):not(.section-explore-dark):not(.section-cta):not(.dark-showcase):not(.band):not(.ai-proof-section):not(.home-ai-plug-section):not(.transport-section):not(.fam-quick-match):not(.fam-pick-section):not(.fam-stacks-section) .required-note {
  color: rgba(255, 246, 230, 0.94);
  background: rgba(255, 106, 77, 0.16);
  border-color: rgba(255, 106, 77, 0.4);
}

main > .section:not(.section-dark):not(.section-fiesta):not(.section-cream):not(.section-blush):not(.section-turquoise-wash):not(.section-navy-routes):not(.section-ask):not(.section-ask-premium):not(.section-after-inner-hero):not(.section-fiesta-featured):not(.section-explore-dark):not(.section-cta):not(.dark-showcase):not(.band):not(.ai-proof-section):not(.home-ai-plug-section):not(.transport-section):not(.fam-quick-match):not(.fam-pick-section).split {
  align-items: stretch;
}

@media (min-width: 830px) {
  main > .section:not(.section-dark):not(.section-fiesta):not(.section-cream):not(.section-blush):not(.section-turquoise-wash):not(.section-navy-routes):not(.section-ask):not(.section-ask-premium):not(.section-after-inner-hero):not(.section-fiesta-featured):not(.section-explore-dark):not(.section-cta):not(.dark-showcase):not(.band):not(.ai-proof-section):not(.home-ai-plug-section):not(.transport-section):not(.fam-quick-match):not(.fam-pick-section).split {
    gap: clamp(24px, 3.2vw, 36px);
  }
}

main > .section:not(.section-dark):not(.section-fiesta):not(.section-cream):not(.section-blush):not(.section-turquoise-wash):not(.section-navy-routes):not(.section-ask):not(.section-ask-premium):not(.section-after-inner-hero):not(.section-fiesta-featured):not(.section-explore-dark):not(.section-cta):not(.dark-showcase):not(.band):not(.ai-proof-section):not(.home-ai-plug-section):not(.transport-section):not(.fam-quick-match):not(.fam-pick-section):not(.fam-stacks-section) .grid-3,
main > .section:not(.section-dark):not(.section-fiesta):not(.section-cream):not(.section-blush):not(.section-turquoise-wash):not(.section-navy-routes):not(.section-ask):not(.section-ask-premium):not(.section-after-inner-hero):not(.section-fiesta-featured):not(.section-explore-dark):not(.section-cta):not(.dark-showcase):not(.band):not(.ai-proof-section):not(.home-ai-plug-section):not(.transport-section):not(.fam-quick-match):not(.fam-pick-section):not(.fam-stacks-section) .grid-4,
main > .section:not(.section-dark):not(.section-fiesta):not(.section-cream):not(.section-blush):not(.section-turquoise-wash):not(.section-navy-routes):not(.section-ask):not(.section-ask-premium):not(.section-after-inner-hero):not(.section-fiesta-featured):not(.section-explore-dark):not(.section-cta):not(.dark-showcase):not(.band):not(.ai-proof-section):not(.home-ai-plug-section):not(.transport-section):not(.fam-quick-match):not(.fam-pick-section):not(.fam-stacks-section) .feature-grid {
  margin-top: clamp(18px, 2.2vw, 24px);
}

main > .section:not(.section-dark):not(.section-fiesta):not(.section-cream):not(.section-blush):not(.section-turquoise-wash):not(.section-navy-routes):not(.section-ask):not(.section-ask-premium):not(.section-after-inner-hero):not(.section-fiesta-featured):not(.section-explore-dark):not(.section-cta):not(.dark-showcase):not(.band):not(.ai-proof-section):not(.home-ai-plug-section):not(.transport-section):not(.fam-quick-match):not(.fam-pick-section):not(.fam-stacks-section) .grid-4-split {
  margin-top: clamp(8px, 1.35vw, 13px);
}

/* ----- Section surface utilities ----- */
.section-dark {
  max-width: none;
  color: var(--on-dark-body-soft);
  border-top: 1px solid rgba(255, 246, 230, 0.2);
  border-bottom: 1px solid rgba(255, 246, 230, 0.18);
  background:
    radial-gradient(circle at 18% 8%, rgba(20, 184, 166, 0.2), transparent 36%),
    radial-gradient(circle at 88% 88%, rgba(255, 92, 168, 0.16), transparent 38%),
    linear-gradient(165deg, #08162c, #0b1d3a 55%, #102a50);
}

.section-dark h2,
.section-dark h3 {
  color: var(--on-dark-heading);
}

.section-dark .section-text {
  color: var(--on-dark-body);
}

.section-dark .eyebrow {
  color: var(--on-dark-eyebrow);
}

.section-fiesta {
  color: var(--navy);
  background:
    radial-gradient(ellipse 90% 70% at 100% 0%, rgba(255, 106, 77, 0.2), transparent 45%),
    radial-gradient(circle at 0% 100%, rgba(20, 184, 166, 0.15), transparent 40%),
    linear-gradient(160deg, #fff8ef 0%, #ffe8f4 50%, #e8f9f5 100%);
}

.section-cream {
  color: var(--navy);
  background:
    radial-gradient(circle at 20% 20%, rgba(242, 178, 26, 0.12), transparent 42%),
    linear-gradient(180deg, var(--cream) 0%, var(--cream-peach) 100%);
}

.section-blush {
  color: var(--navy);
  background:
    radial-gradient(circle at 85% 15%, rgba(255, 92, 168, 0.18), transparent 35%),
    radial-gradient(circle at 10% 90%, rgba(255, 139, 31, 0.1), transparent 40%),
    linear-gradient(180deg, var(--cream-blush), #fff5fa);
}

.section-turquoise-wash {
  color: var(--navy);
  background:
    radial-gradient(circle at 80% 80%, rgba(20, 184, 166, 0.14), transparent 45%),
    linear-gradient(180deg, var(--cream-turq), #f0fcfa);
}

.section-fiesta :is(h2, h3),
.section-cream :is(h2, h3),
.section-blush :is(h2, h3),
.section-turquoise-wash :is(h2, h3) {
  color: var(--navy);
}

.section-fiesta .section-text,
.section-cream .section-text,
.section-blush .section-text,
.section-turquoise-wash .section-text,
.section-fiesta .hero-text,
.section-cream .hero-text,
.section-blush .hero-text,
.section-turquoise-wash .hero-text {
  color: var(--slate);
}

/* Eyebrow contrast fix: base pink (#ff5ca8) on cream backgrounds
   fails WCAG AA (~3.5:1). Use a deeper magenta on light sections. */
.section-fiesta .eyebrow,
.section-cream .eyebrow,
.section-blush .eyebrow,
.section-turquoise-wash .eyebrow {
  color: #bf2a76;
}

.hero-fiesta-dark {
  max-width: none;
  margin: 0;
  padding: 0;
  overflow: hidden;
  position: relative;
  background:
    radial-gradient(ellipse 80% 65% at 90% 18%, rgba(255, 106, 77, 0.32), transparent 55%),
    radial-gradient(ellipse 55% 45% at 12% 72%, rgba(20, 184, 166, 0.18), transparent 50%),
    radial-gradient(circle at 30% 92%, rgba(61, 26, 74, 0.5), transparent 45%),
    radial-gradient(circle at 70% 8%, rgba(255, 92, 168, 0.16), transparent 40%),
    radial-gradient(circle at 48% 42%, rgba(242, 178, 26, 0.1), transparent 38%),
    linear-gradient(138deg, #04060d 0%, #0b1730 36%, #16122a 68%, #071a32 100%);
}

.hero-fiesta-dark::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 50% 120%, rgba(20, 184, 166, 0.1), transparent 55%),
    linear-gradient(180deg, transparent 68%, rgba(6, 15, 31, 0.26) 100%);
}

/* Secondary heroes: keep photography bright — no section vignette over the art */
.secondary-hero.hero-fiesta-dark::after {
  background: transparent;
}

.hero-fiesta-dark::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 5px;
  background: linear-gradient(90deg, var(--turquoise), var(--coral), var(--pink), var(--orange), var(--gold));
  opacity: 0.95;
  box-shadow: 0 0 24px rgba(255, 106, 77, 0.35);
}

/* ----- Header (premium dark — public visitor chrome) ----- */
.site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: nowrap;
  gap: 10px 14px;
  min-height: var(--header-h);
  padding: max(8px, env(safe-area-inset-top, 0px)) clamp(16px, 4.5vw, 70px) 8px;
  color: var(--wtg-header-text);
  background:
    linear-gradient(180deg, rgba(8, 16, 30, 0.98) 0%, var(--wtg-header-bg) 100%);
  border-bottom: 1px solid var(--wtg-header-border);
  box-shadow:
    0 1px 0 rgba(242, 182, 50, 0.14),
    0 12px 40px rgba(0, 0, 0, 0.28);
  backdrop-filter: blur(14px);
}

.site-header .brand {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  flex: 0 1 auto;
}

.site-header .brand-text {
  min-width: 0;
}

.site-header .brand strong {
  display: block;
  font-size: 1.03rem;
  letter-spacing: 0.01em;
  word-spacing: normal;
  white-space: normal;
  color: var(--wtg-header-text);
}

.site-header .brand small {
  display: block;
  font-size: 0.75rem;
  line-height: 1.25;
  color: var(--wtg-header-muted);
}

.site-header-proof {
  display: none;
  margin: 0;
  flex-shrink: 0;
  font-size: 0.78rem;
  line-height: 1.3;
  color: var(--wtg-header-muted);
  white-space: nowrap;
}

.site-header-proof strong {
  color: rgba(248, 243, 232, 0.94);
  font-weight: 700;
}

.site-header .nav {
  color: var(--wtg-header-muted);
}

.site-header .nav a {
  color: rgba(248, 243, 232, 0.86);
}

.site-header .nav a:hover {
  color: var(--wtg-header-text);
  border-color: rgba(20, 184, 166, 0.75);
}

.site-header .nav a[aria-current="page"] {
  color: var(--wtg-header-text);
  border-color: rgba(242, 182, 50, 0.55);
}

.brand {
  display: flex;
  align-items: center;
  gap: 12px;
}

.brand-text {
  min-width: 0;
}

.brand strong {
  display: block;
  font-size: 1.03rem;
  letter-spacing: 0.01em;
  word-spacing: normal;
  white-space: normal;
  color: var(--navy);
}

.brand small {
  display: block;
  font-size: 0.75rem;
  color: var(--slate);
}

.brand-icon {
  width: 48px;
  height: 48px;
  flex-shrink: 0;
  border-radius: 50%;
  overflow: hidden;
  box-shadow: 0 8px 20px rgba(11, 29, 58, 0.18), 0 0 0 1px rgba(242, 178, 26, 0.22);
  border: 1px solid rgba(11, 29, 58, 0.12);
}

/* Text mark fallback when logo asset is not in repo (replaces broken img paths) */
.brand-icon.brand-icon--textmark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  overflow: hidden;
  background: linear-gradient(135deg, #f2b21a 0%, #ff6a4d 42%, #14b8a6 100%);
  border: 1px solid rgba(255, 246, 230, 0.35);
  box-shadow:
    0 8px 22px rgba(11, 29, 58, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.22);
}

.brand-icon--textmark .brand-textmark {
  font-size: 0.7rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  line-height: 1;
  color: #071022;
  text-indent: 0.06em;
}

.site-logo-img,
.brand-icon-img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

/* Round emblem asset: circle drawn on a square canvas (margin outside the art) */
.brand-icon.brand-icon--logo {
  border-radius: 50%;
  overflow: hidden;
  background: rgba(255, 251, 246, 0.98);
  border: 1px solid rgba(242, 178, 26, 0.35);
  box-shadow:
    0 8px 20px rgba(11, 29, 58, 0.18),
    0 0 0 1px rgba(242, 178, 26, 0.22);
}

.site-header .brand-icon.brand-icon--logo {
  background: rgba(255, 251, 246, 0.96);
  border: 1px solid rgba(63, 211, 198, 0.32);
  box-shadow:
    0 8px 22px rgba(0, 0, 0, 0.38),
    0 0 0 1px rgba(242, 182, 50, 0.22);
}

/* Slight zoom so the ink reaches the circular clip (avoids square-canvas margin showing as a ring) */
.brand-icon:not(.brand-icon--textmark) > .brand-icon-img {
  object-fit: cover;
  object-position: center;
  transform: scale(1.09);
  transform-origin: center center;
}

.nav {
  display: flex;
  align-items: center;
  gap: 14px;
  font-size: 0.9rem;
  font-weight: 780;
  color: var(--slate);
}

.nav a {
  padding: 7px 6px;
  border-bottom: 2px solid transparent;
}

.nav a:hover {
  color: var(--navy);
  border-color: var(--coral);
}

.nav-cta {
  border: none !important;
  color: var(--white) !important;
  border-radius: 999px;
  padding: 10px 14px !important;
  background: linear-gradient(135deg, var(--orange), var(--gold));
  box-shadow: 0 8px 20px rgba(255, 139, 31, 0.35);
}

.menu-btn {
  display: none;
  border: 0;
  background: none;
  color: var(--navy);
  font-size: 1.7rem;
  cursor: pointer;
}

.site-header .menu-btn {
  flex-shrink: 0;
  margin-left: auto;
  color: var(--wtg-header-text);
  border-radius: 10px;
}

.site-header .menu-btn:hover {
  color: var(--wtg-header-gold);
  background: rgba(248, 243, 232, 0.06);
}

.site-header .menu-btn:focus-visible {
  outline: 2px solid rgba(20, 184, 166, 0.65);
  outline-offset: 2px;
}

/* ----- Hero (inner pages) — light-on-dark on site chrome ----- */
.hero:not(.hero-fiesta-dark) {
  max-width: 1300px;
  margin: 0 auto;
  padding: clamp(44px, 5vw, 64px) clamp(16px, 4.5vw, 74px) clamp(30px, 3.5vw, 42px);
  display: grid;
  gap: clamp(20px, 2.5vw, 28px);
  position: relative;
}

.hero:not(.hero-fiesta-dark) h1 {
  color: var(--on-dark-heading);
  text-shadow: 0 2px 28px rgba(0, 0, 0, 0.28);
}

.hero:not(.hero-fiesta-dark) .eyebrow {
  color: var(--on-dark-eyebrow);
}

.hero:not(.hero-fiesta-dark) .hero-text {
  color: var(--on-dark-body);
  max-width: 38rem;
}

.hero-fiesta-inner {
  position: relative;
  z-index: 1;
  max-width: 1320px;
  margin: 0 auto;
  padding: clamp(28px, 4.2vw, 56px) clamp(16px, 4.5vw, 74px) calc(42px + 5px);
}

.hero-shell {
  display: grid;
  gap: clamp(20px, 4vw, 36px);
  align-items: start;
}

.hero-title {
  color: var(--on-dark-heading);
  text-shadow: 0 2px 28px rgba(0, 0, 0, 0.25);
}

.hero-text-on-dark {
  color: var(--on-dark-body);
  max-width: 36rem;
  font-size: clamp(1rem, 1.1vw + 0.78rem, 1.14rem);
  line-height: 1.6;
}

.hero-proof-row {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px 14px;
}

@media (min-width: 520px) {
  .hero-proof-row {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.hero-proof-item {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin: 0;
  padding: 11px 13px;
  border-radius: 14px;
  font-size: 0.78rem;
  font-weight: 750;
  letter-spacing: 0.02em;
  line-height: 1.35;
  color: rgba(255, 246, 230, 0.9);
  background: rgba(255, 246, 230, 0.06);
  border: 1px solid rgba(255, 246, 230, 0.14);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.hero-proof-icon {
  flex-shrink: 0;
  width: 6px;
  height: 6px;
  margin-top: 5px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--turquoise), var(--coral));
  box-shadow: 0 0 0 3px rgba(20, 184, 166, 0.2);
}

.hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 12px;
  margin: 0;
}

.hero-actions .btn {
  min-height: 48px;
}

.eyebrow {
  margin: 0 0 12px;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  font-size: 0.73rem;
  font-weight: 900;
  color: var(--pink);
}

.hero:not(.hero-fiesta-dark) .eyebrow {
  margin-bottom: clamp(12px, 1.5vw, 16px);
}

.eyebrow-on-dark {
  color: var(--gold);
}

.eyebrow-light {
  color: rgba(255, 246, 230, 0.92);
}

.section-text-light {
  color: rgba(255, 246, 230, 0.86);
  max-width: 42rem;
}

.label-gold {
  color: var(--gold) !important;
}


.hero-content {
  padding-top: 0;
  max-width: 32rem;
}

.eyebrow-hero {
  letter-spacing: 0.12em;
}

.hero-fiesta-dark .hero-content .eyebrow-hero {
  margin: 0;
}

.hero-fiesta-dark .hero-content {
  display: flex;
  flex-direction: column;
  gap: clamp(16px, 2.2vw, 22px);
  max-width: min(36rem, 100%);
}

.hero-fiesta-dark .hero-content .hero-title {
  margin-bottom: 0;
}

.hero-fiesta-dark .hero-content .hero-text-on-dark {
  margin-bottom: 0;
}

.hero-fiesta-dark .hero-content .hero-proof-row {
  margin-bottom: 0;
}

.route-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.route-chip-row-hero {
  margin-top: 0;
  padding-top: clamp(16px, 2.5vw, 20px);
  border-top: 1px solid rgba(255, 246, 230, 0.12);
  column-gap: 10px;
  row-gap: 9px;
}

.route-chip {
  display: inline-flex;
  align-items: center;
  padding: 8px 14px;
  border-radius: 999px;
  font-size: 0.8rem;
  font-weight: 750;
  color: var(--cream);
  background: rgba(255, 246, 230, 0.1);
  border: 1px solid rgba(255, 246, 230, 0.35);
  transition: background 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

.route-chip-row-hero .route-chip {
  padding: 6px 11px;
  font-size: 0.73rem;
  font-weight: 680;
  letter-spacing: 0.02em;
  color: rgba(255, 246, 230, 0.78);
  background: rgba(255, 246, 230, 0.05);
  border-color: rgba(255, 246, 230, 0.18);
}

.route-chip:hover {
  background: rgba(255, 246, 230, 0.2);
  border-color: rgba(242, 178, 26, 0.55);
  transform: translateY(-1px);
}

.route-chip-row-hero .route-chip:hover {
  background: rgba(255, 246, 230, 0.1);
  border-color: rgba(242, 178, 26, 0.38);
  color: rgba(255, 246, 230, 0.92);
}

.hero-visual-frame {
  position: relative;
  padding: 0 0 8px;
  width: 100%;
  max-width: min(540px, 100%);
  margin-left: auto;
  margin-right: 0;
  align-self: start;
}

.hero-visual-frame::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: calc(var(--radius-hero-visual) + 6px);
  background: linear-gradient(140deg, rgba(242, 178, 26, 0.82), rgba(255, 106, 77, 0.7), rgba(20, 184, 166, 0.65));
  box-shadow:
    0 30px 60px rgba(6, 15, 31, 0.45),
    0 0 54px rgba(255, 106, 77, 0.32);
  opacity: 0.48;
  z-index: 0;
}

.hero-visual-frame::after {
  content: "";
  position: absolute;
  width: 180px;
  height: 180px;
  right: -26px;
  top: -24px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 92, 168, 0.34), rgba(255, 92, 168, 0) 70%);
  pointer-events: none;
  z-index: 0;
}

.hero-visual-panel {
  position: relative;
  border-radius: var(--radius-hero-visual);
  overflow: hidden;
  box-shadow:
    0 24px 48px rgba(0, 0, 0, 0.32),
    0 0 0 1px rgba(242, 178, 26, 0.5),
    0 0 0 5px rgba(255, 106, 77, 0.08),
    0 0 72px rgba(255, 106, 77, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);
  min-height: min(40vw, 340px);
  aspect-ratio: 4 / 5;
  max-height: min(74vh, 580px);
  background: var(--navy-deep);
  z-index: 1;
  border: 2px solid rgba(20, 184, 166, 0.4);
}

.hero-visual-panel::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 2;
  box-shadow:
    inset 0 0 0 1px rgba(242, 178, 26, 0.28),
    inset 0 0 48px rgba(11, 29, 58, 0.06);
}

.hero-visual-img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 0;
  object-fit: cover;
  object-position: center 62%;
  position: relative;
  z-index: 1;
  transform: scale(1.02);
  filter: brightness(1.06) saturate(1.02);
}

.hero-fiesta-dark.hero-inner .hero-fiesta-inner.hero-inner-band {
  padding: clamp(20px, 3.2vw, 42px) clamp(16px, 4.5vw, 74px) calc(28px + 5px);
}

.hero-inner-grid.hero-shell {
  gap: clamp(18px, 3.2vw, 34px);
}

.hero-inner .hero-content {
  gap: clamp(14px, 1.9vw, 20px);
}

.hero-inner .hero-inner-visual {
  width: 100%;
  max-width: none;
  margin-inline: 0;
  padding: 0;
  align-self: start;
}

.hero-inner .hero-inner-panel {
  aspect-ratio: 3 / 4;
  min-height: min(44vw, 400px);
  max-height: min(74vh, 580px);
  border-width: 2px;
  box-shadow:
    0 28px 52px rgba(0, 0, 0, 0.32),
    0 0 0 1px rgba(242, 178, 26, 0.55),
    0 0 0 5px rgba(255, 106, 77, 0.1),
    0 0 72px rgba(255, 106, 77, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

/* Inner guide heroes: keep hero photography bright (no scrim overlay on the image) */
.hero-inner .hero-inner-panel::before {
  content: none;
}

.hero-inner .hero-inner-panel::after {
  z-index: 3;
}

/* Showcase hero images cleanly: no edge darkening, light borders only */
.secondary-hero.hero-inner .hero-inner-panel::after {
  box-shadow: inset 0 0 0 1px rgba(242, 178, 26, 0.28);
}

.hero-inner-img.img-pos-riverwalk {
  object-position: center 58%;
}

.hero-inner-img.img-pos-resort {
  object-position: center 52%;
}

.hero-inner-img.img-pos-arrival {
  object-position: center 48%;
}

.hero-inner-img.img-pos-business {
  object-position: 52% 38%;
}

.hero-inner-img.img-pos-food {
  object-position: center 55%;
}

.hero-inner-img.img-pos-family {
  object-position: center 50%;
}

.note-card-hero-inner {
  margin-top: 2px;
  padding: 14px 16px;
  border-radius: calc(var(--radius) - 2px);
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid rgba(11, 29, 58, 0.1);
  border-left-width: 4px;
  border-left-color: var(--turquoise);
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.22);
}

.note-card-hero-inner p {
  margin: 0;
  color: var(--slate);
  font-size: 0.95rem;
  line-height: 1.58;
}

.note-card-post-hero {
  margin: 0 0 clamp(14px, 2.2vw, 22px);
}

.section.section-after-inner-hero {
  padding-top: clamp(32px, 3.8vw, 46px);
  border-top: 1px solid rgba(255, 246, 230, 0.08);
  color: var(--on-dark-body-soft);
}

.section-after-inner-hero :is(h2, h3) {
  color: var(--on-dark-heading);
}

.section-after-inner-hero > .section-text:first-child,
.section-after-inner-hero > .eyebrow + .section-text {
  margin-bottom: clamp(14px, 2vw, 20px);
  max-width: 44rem;
  color: var(--on-dark-body);
}

.section-after-inner-hero > .eyebrow {
  color: var(--on-dark-eyebrow);
}

.section-after-inner-hero .feature-grid {
  margin-top: 0;
}

@media (min-width: 830px) {
  .hero-inner-grid.hero-shell {
    grid-template-columns: minmax(0, 0.97fr) minmax(320px, 1.08fr);
    gap: clamp(22px, 3.4vw, 42px);
    align-items: start;
  }

  .hero-inner-grid.hero-shell.secondary-hero-grid {
    grid-template-columns: minmax(0, 48fr) minmax(300px, 46fr);
    align-items: center;
    gap: clamp(40px, 4.2vw, 56px);
  }

  .hero-inner .hero-inner-visual {
    justify-self: stretch;
  }

  .hero-inner .hero-inner-visual.secondary-hero-visual {
    justify-self: end;
    max-width: min(660px, 100%);
    width: 100%;
  }
}

/* ----- Secondary pages: compact hero cues + CTA row (fiesta dark) ----- */
.secondary-hero .hero-fiesta-inner.hero-inner-band {
  padding-top: clamp(24px, 3.2vw, 42px);
  padding-bottom: calc(clamp(24px, 3.2vw, 40px) + 5px);
}

.secondary-hero.hero-inner .hero-inner-panel {
  aspect-ratio: 5 / 4;
  min-height: 0;
  width: 100%;
  max-height: min(520px, 72vh);
  height: auto;
}

.secondary-hero .hero-inner-visual.hero-visual-frame,
.secondary-hero.hero-inner .hero-inner-visual.secondary-hero-visual {
  align-self: center;
}

.secondary-hero .hero-inner-img.hero-visual-img {
  transform: none;
  width: 100%;
  height: 100%;
  min-height: 0;
  object-fit: cover;
  object-position: center;
  filter: brightness(1.06) saturate(1.02);
}

/* Preserve scene-aware crops on secondary heroes (wins over object-position: center above). */
.secondary-hero.hero-inner .hero-inner-img.img-pos-riverwalk {
  object-position: center 58%;
}

.secondary-hero.hero-inner .hero-inner-img.img-pos-resort {
  object-position: center 52%;
}

.secondary-hero.hero-inner .hero-inner-img.img-pos-arrival {
  object-position: center 48%;
}

.secondary-hero.hero-inner .hero-inner-img.img-pos-business {
  object-position: 52% 38%;
}

.secondary-hero.hero-inner .hero-inner-img.img-pos-food {
  object-position: center 55%;
}

.secondary-hero.hero-inner .hero-inner-img.img-pos-family {
  object-position: center 50%;
}

.secondary-hero .secondary-hero-copy.hero-content {
  max-width: min(560px, 100%);
}

.hero-cue-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  margin-top: clamp(2px, 0.8vw, 6px);
  width: 100%;
}

@media (min-width: 440px) {
  .hero-cue-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 720px) {
  .hero-cue-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.hero-cue {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin: 0;
  padding: 11px 12px;
  border-radius: 14px;
  font-size: 0.8rem;
  font-weight: 780;
  letter-spacing: 0.015em;
  line-height: 1.35;
  color: rgba(255, 246, 230, 0.94);
  background: rgba(6, 15, 31, 0.42);
  border: 1px solid rgba(242, 178, 26, 0.22);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.04),
    0 10px 28px rgba(0, 0, 0, 0.18);
}

.hero-cue span[aria-hidden="true"],
.hero-cue > span:first-child {
  flex-shrink: 0;
  width: 8px;
  height: 8px;
  margin-top: 4px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--turquoise), var(--coral));
  box-shadow: 0 0 0 3px rgba(20, 184, 166, 0.18);
}

.hero-cue strong {
  font-weight: 850;
  letter-spacing: -0.02em;
  color: var(--cream);
}

.hero-cta-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  gap: 10px 12px;
  margin-top: clamp(12px, 1.8vw, 18px);
}

.hero-cta-row .btn {
  flex: 1 1 auto;
  min-width: min(100%, 11rem);
  min-height: 48px;
}

@media (max-width: 419px) {
  .hero-cta-row .btn {
    width: 100%;
    justify-content: center;
  }
}

.secondary-hero .hero-secondary-btn {
  color: var(--navy);
  background: rgba(255, 251, 242, 0.96);
  border: 1px solid rgba(242, 178, 26, 0.5);
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.22);
}

.secondary-hero .hero-secondary-btn:hover {
  border-color: rgba(255, 246, 230, 0.55);
  background: var(--white);
}

.secondary-hero .note-card-hero-inner {
  margin-top: clamp(14px, 2vw, 20px);
}

@media (max-width: 899px) {
  .secondary-hero .hero-inner-panel {
    aspect-ratio: 4 / 3;
    min-height: min(34vw, 220px);
    max-height: min(500px, 58vh);
  }

  .secondary-hero-grid.hero-inner-grid .secondary-hero-copy {
    order: -1;
  }

  .secondary-hero-grid.hero-inner-grid .secondary-hero-visual.hero-visual-frame {
    order: 1;
  }
}

.hero-mini {
  position: absolute;
  padding: 12px 14px;
  border-radius: 18px;
  background: linear-gradient(152deg, rgba(8, 12, 26, 0.92) 0%, rgba(32, 18, 48, 0.9) 100%);
  box-shadow:
    0 20px 48px rgba(0, 0, 0, 0.52),
    0 0 0 1px rgba(242, 178, 26, 0.35),
    0 0 40px rgba(20, 184, 166, 0.12);
  backdrop-filter: blur(12px);
  z-index: 3;
}

.hero-mini-a {
  right: -4px;
  top: 14px;
  max-width: min(236px, 88%);
  padding: 11px 13px 12px;
  border: 1px solid rgba(255, 106, 77, 0.32);
  border-top: 2px solid var(--gold);
}

.hero-mini-eyebrow {
  display: block;
  margin-bottom: 5px;
  font-size: 0.61rem;
  font-weight: 900;
  letter-spacing: 0.13em;
  text-transform: uppercase;
  color: var(--gold);
}

.hero-mini-title {
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 3px;
  font-size: 0.97rem;
  font-weight: 800;
  color: var(--cream);
  line-height: 1.22;
  letter-spacing: -0.02em;
}

.hero-mini-title-line {
  display: block;
}

/* ----- Buttons ----- */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 20px;
  border-radius: var(--btn-radius);
  border: 1px solid transparent;
  font-weight: 850;
  font-size: 0.94rem;
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease,
    background 0.2s ease,
    border-color 0.2s ease;
  cursor: pointer;
}

.btn:hover {
  transform: translateY(-2px);
}

.btn-primary {
  color: var(--navy);
  background: linear-gradient(135deg, var(--orange) 0%, var(--gold) 100%);
  box-shadow: var(--shadow-glow);
}

.btn-primary:hover {
  box-shadow: 0 22px 44px rgba(255, 139, 31, 0.38);
}

.btn-secondary {
  color: var(--navy);
  background: rgba(255, 251, 242, 0.98);
  border: 1px solid rgba(242, 178, 26, 0.45);
  box-shadow: 0 6px 16px rgba(11, 29, 58, 0.08);
}

.btn-secondary:hover {
  border-color: rgba(11, 29, 58, 0.32);
  box-shadow: 0 8px 20px rgba(11, 29, 58, 0.1);
}

.btn-secondary-hero {
  color: var(--cream);
  background: rgba(255, 246, 230, 0.08);
  border: 1px solid rgba(242, 178, 26, 0.55);
  box-shadow: 0 0 28px rgba(255, 106, 77, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.btn-secondary-hero:hover {
  background: rgba(255, 246, 230, 0.14);
  border-color: rgba(255, 246, 230, 0.45);
  box-shadow: 0 0 36px rgba(242, 178, 26, 0.2);
}

.btn-outline-light {
  color: var(--cream);
  background: rgba(11, 29, 58, 0.35);
  border: 1px solid rgba(242, 178, 26, 0.45);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25);
  flex-shrink: 0;
  align-self: flex-start;
}

.btn-outline-light:hover {
  background: rgba(255, 246, 230, 0.12);
  border-color: rgba(255, 246, 230, 0.55);
  color: var(--white);
}

.btn-secondary-ghost {
  background: rgba(255, 246, 230, 0.12);
  color: var(--cream);
  border-color: rgba(242, 178, 26, 0.6);
  box-shadow: none;
}

.btn-secondary-ghost:hover {
  background: rgba(255, 246, 230, 0.16);
  border-color: rgba(242, 178, 26, 0.55);
}

.btn-block {
  width: 100%;
}

.btn-on-dark {
  color: var(--cream);
  background: rgba(255, 246, 230, 0.12);
  border-color: rgba(242, 178, 26, 0.56);
}

.btn-on-dark:hover {
  background: rgba(255, 246, 230, 0.16);
  border-color: var(--gold);
}

.dark-showcase .btn-primary {
  color: var(--navy);
  background: linear-gradient(135deg, var(--orange), var(--gold));
}

.btn-on-image {
  margin-top: 4px;
  display: inline-flex;
  align-self: flex-start;
  padding: 10px 18px;
  border-radius: var(--btn-radius);
  font-weight: 850;
  font-size: 0.88rem;
  color: var(--navy);
  background: rgba(255, 246, 230, 0.96);
  border: 1px solid rgba(255, 255, 255, 0.5);
  box-shadow: 0 10px 24px rgba(11, 29, 58, 0.25);
}

.btn-on-image:hover {
  background: var(--white);
}

/* ----- Sections ----- */
.section {
  max-width: 1300px;
  margin: 0 auto;
  padding: clamp(40px, 4.6vw, 52px) clamp(16px, 4.5vw, 74px);
  position: relative;
}

.section-navy-routes {
  max-width: none;
  margin: 0;
  padding: 52px clamp(16px, 4.5vw, 74px) 56px;
  background:
    radial-gradient(circle at 12% 12%, rgba(20, 184, 166, 0.2), transparent 32%),
    radial-gradient(circle at 90% 86%, rgba(255, 92, 168, 0.18), transparent 36%),
    radial-gradient(circle at 80% 12%, rgba(255, 139, 31, 0.18), transparent 34%),
    linear-gradient(160deg, #091a34 0%, #0b1d3a 44%, #10274a 100%);
  border-top: 1px solid rgba(255, 246, 230, 0.16);
  border-bottom: 1px solid rgba(255, 246, 230, 0.16);
  position: relative;
}

.section-navy-routes::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 8% 88%, rgba(242, 178, 26, 0.14), transparent 28%),
    radial-gradient(circle at 92% 20%, rgba(255, 106, 77, 0.14), transparent 24%);
}

.section-navy-routes h2,
.section-navy-routes .section-text,
.section-navy-routes .eyebrow {
  position: relative;
  z-index: 1;
}

.routes-band-inner {
  position: relative;
  z-index: 1;
  max-width: 1300px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: clamp(24px, 3.2vw, 40px);
}

.routes-intro {
  margin: 0;
  max-width: 40rem;
}

.section-navy-routes h2 {
  color: var(--cream);
}

.band {
  max-width: none;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.band.section-explore-dark {
  border-top-color: rgba(255, 246, 230, 0.12);
  border-bottom-color: rgba(255, 246, 230, 0.1);
}

.band > * {
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto;
}

.section-cta {
  margin-top: 26px;
}

.note-card,
.card,
.quick-card {
  border-radius: var(--radius);
  border: 1px solid var(--line-soft);
  box-shadow: var(--shadow-sm);
}

.note-card {
  padding: 18px;
  background: rgba(255, 255, 255, 0.88);
  border-left: 4px solid var(--turquoise);
}

.grid-3,
.grid-4,
.feature-grid,
.quick-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
  margin-top: 18px;
}

.card {
  padding: 20px;
  display: flex;
  flex-direction: column;
  min-height: 100%;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(255, 255, 255, 0.78));
}

.card-link {
  display: inline-flex;
  margin-top: auto;
  padding: 10px 14px;
  border-radius: 999px;
  border: 1px solid rgba(11, 29, 58, 0.18);
  background: rgba(255, 255, 255, 0.95);
  font-weight: 820;
}

.card-link:hover {
  border-color: rgba(11, 29, 58, 0.32);
}

.quick-grid-strong .quick-card {
  padding: 20px;
  background: linear-gradient(180deg, #fffdf9, #fff9ef);
  box-shadow: var(--shadow);
}

.quick-card p {
  margin-bottom: 14px;
}

.quick-card:hover,
.card:hover {
  transform: translateY(-2px);
  transition: transform 0.2s ease;
}

/* Route selector (homepage) */
.route-selector-grid {
  display: grid;
  gap: clamp(16px, 2vw, 22px);
  margin-top: 0;
  grid-template-columns: 1fr;
  position: relative;
  z-index: 1;
  align-items: stretch;
  grid-auto-rows: minmax(0, 1fr);
}

.route-selector-card {
  position: relative;
  border-radius: calc(var(--radius) - 2px);
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 11px;
  min-height: 100%;
  height: 100%;
  background: linear-gradient(178deg, rgba(255, 248, 237, 1), rgba(255, 235, 218, 0.97));
  border: 1px solid rgba(11, 29, 58, 0.12);
  box-shadow:
    0 26px 52px rgba(4, 12, 26, 0.16),
    0 0 0 1px rgba(255, 255, 255, 0.24) inset;
  overflow: hidden;
}

.route-selector-card::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 5px;
  background: linear-gradient(90deg, var(--coral), var(--pink), var(--turquoise), var(--gold));
  opacity: 0.85;
}

.route-card-head {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: auto auto;
  column-gap: 11px;
  row-gap: 5px;
  align-items: start;
  flex-shrink: 0;
  min-height: 3.25rem;
}

.route-card-head h3 {
  grid-column: 2;
  grid-row: 1;
  margin: 0;
  color: var(--navy);
  min-width: 0;
}

.route-selector-card p {
  color: var(--slate);
  margin: 0;
  flex: 1;
  line-height: 1.53;
}

.route-selector-card .btn-block {
  margin-top: 0;
  flex-shrink: 0;
}

.route-selector-dot {
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  flex-shrink: 0;
  box-shadow: 0 0 0 4px rgba(11, 29, 58, 0.08);
  grid-column: 1;
  grid-row: 1 / span 2;
  align-self: start;
  margin-top: 4px;
}

.route-selector-chip {
  grid-column: 2;
  grid-row: 2;
  justify-self: start;
  margin-left: 0;
  display: inline-flex;
  align-items: center;
  padding: 4px 9px;
  border-radius: 999px;
  font-size: 0.665rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  font-weight: 800;
  color: var(--navy);
  background: rgba(11, 29, 58, 0.07);
  border: 1px solid rgba(11, 29, 58, 0.12);
  white-space: normal;
  line-height: 1.25;
  max-width: 100%;
}

.route-sel-coral::before {
  background: linear-gradient(90deg, var(--coral), var(--orange));
}
.route-sel-coral .route-selector-dot {
  background: var(--coral);
}

.route-sel-gold::before {
  background: linear-gradient(90deg, var(--gold), var(--orange));
}
.route-sel-gold .route-selector-dot {
  background: var(--gold);
}

.route-sel-turq::before {
  background: linear-gradient(90deg, var(--turquoise), #0d9488);
}
.route-sel-turq .route-selector-dot {
  background: var(--turquoise);
}

.route-sel-orange::before {
  background: linear-gradient(90deg, var(--orange), var(--coral));
}
.route-sel-orange .route-selector-dot {
  background: var(--orange);
}

.route-sel-pink::before {
  background: linear-gradient(90deg, var(--pink), var(--coral));
}
.route-sel-pink .route-selector-dot {
  background: var(--pink);
}

.route-sel-plum::before {
  background: linear-gradient(90deg, var(--navy), var(--plum));
}
.route-sel-plum .route-selector-dot {
  background: var(--plum);
}

/* Featured / image cards */
.image-card,
.image-cta,
.hero-image,
.page-image {
  position: relative;
  overflow: hidden;
  border-radius: var(--radius);
  border: 1px solid var(--line-soft);
  min-height: 270px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  background-color: #1b3558;
  background-size: cover;
  background-position: center;
  box-shadow: var(--shadow);
  isolation: isolate;
}

/* Hero and inner-page lead art: lighter scrim so photography reads more true */
.hero-image::before,
.page-image::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(186deg, rgba(11, 29, 58, 0.06) 12%, rgba(11, 29, 58, 0.32) 55%, rgba(11, 29, 58, 0.52) 92%);
  pointer-events: none;
}

.image-card::before,
.image-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(
    186deg,
    rgba(11, 29, 58, 0.1) 10%,
    rgba(11, 29, 58, 0.42) 48%,
    rgba(5, 10, 22, 0.88) 78%,
    rgba(5, 10, 22, 0.94) 100%
  );
  pointer-events: none;
}

.image-card::after,
.image-cta::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  border-radius: inherit;
  border: 1px solid rgba(242, 178, 26, 0.36);
  box-shadow: inset 0 0 0 2px rgba(255, 106, 77, 0.16), inset 0 0 0 4px rgba(20, 184, 166, 0.12);
  pointer-events: none;
}

.image-card-media,
.image-cta-media {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  z-index: 0;
}

.image-card:has(.image-card-media),
.image-cta:has(.image-cta-media) {
  background-image: none !important;
}

.image-card-content,
.image-cta-content {
  position: relative;
  z-index: 2;
  color: var(--white);
  padding: 22px;
}

.image-card-content h3,
.image-cta-content h3 {
  color: var(--white);
  text-shadow: 0 2px 18px rgba(2, 6, 14, 0.55);
}

.image-card-content p,
.image-cta-content p {
  color: rgba(255, 255, 255, 0.92);
  text-shadow: 0 1px 14px rgba(2, 6, 14, 0.45);
}

.image-card {
  min-height: 320px;
}

.image-card:hover,
.image-cta:hover {
  transform: translateY(-3px);
  transition: transform 0.25s ease;
}

.hero-image {
  min-height: 420px;
}

.page-image {
  min-height: 320px;
}

.image-cta-tall {
  min-height: 340px;
}

.explore-head-row {
  display: flex;
  flex-wrap: wrap;
  gap: 18px 24px;
  justify-content: space-between;
  align-items: flex-start;
}

.explore-view-all {
  margin-top: 4px;
}

.section-explore-dark .explore-view-all.btn-outline-light {
  color: var(--cream);
  border-color: rgba(242, 178, 26, 0.55);
  background: rgba(8, 12, 24, 0.35);
  box-shadow:
    0 10px 32px rgba(0, 0, 0, 0.32),
    0 0 24px rgba(242, 178, 26, 0.08);
  font-weight: 820;
  white-space: nowrap;
}

.section-explore-dark .explore-view-all.btn-outline-light:hover {
  border-color: rgba(255, 246, 230, 0.45);
  background: rgba(255, 246, 230, 0.1);
  color: var(--white);
}

@media (min-width: 720px) {
  .explore-view-all {
    align-self: center;
    margin-top: 28px;
  }
}

.explore-head {
  margin-bottom: 8px;
}

.explore-head.explore-head-row {
  margin-bottom: 22px;
}

.feature-grid-tight {
  margin-top: 22px;
  gap: 20px;
}

.split {
  display: grid;
  grid-template-columns: 1fr;
  gap: 18px;
}

/* Driver + Business: split CTA aligns to a single grid rhythm */
.split.split-sub-cta {
  align-items: stretch;
}

.split-sub-copy {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: clamp(12px, 1.6vw, 16px);
}

.split-sub-copy h2 {
  margin-bottom: 0;
}

.split-sub-copy > .section-text {
  margin-bottom: 0;
  max-width: 40rem;
}

.pill-row-split {
  margin-top: 0;
  margin-bottom: 0;
}

.required-note-split {
  margin-top: 2px;
  margin-bottom: 0;
}

.split-sub-cta .image-cta-split {
  min-height: clamp(320px, 52vw, 400px);
}

.split-sub-cta .image-cta-split .image-cta-content {
  padding: 22px 22px 24px;
}

@media (min-width: 830px) {
  .split.split-sub-cta {
    grid-template-columns: minmax(0, 1.08fr) minmax(292px, 0.88fr);
    gap: clamp(22px, 3vw, 34px);
  }

  .split-sub-cta .image-cta-split {
    align-self: stretch;
    min-height: max(380px, 100%);
  }

  .split-driver-services .image-cta-split {
    min-height: max(360px, 100%);
  }
}

.split .note-card {
  height: 100%;
  display: flex;
  flex-direction: column;
}

.split .note-card .btn {
  margin-top: auto;
}

.pill-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 18px;
}

.pill-row span {
  display: inline-flex;
  padding: 7px 12px;
  border-radius: 999px;
  border: 1px solid rgba(11, 29, 58, 0.16);
  background: rgba(255, 255, 255, 0.82);
  font-size: 0.84rem;
  font-weight: 740;
}

.pill-row.pill-row-split {
  margin-top: 4px;
}

/* Driver concierge: service chips — dark plate, cream type, fiesta edge */
.split-driver-services .pill-row span {
  color: rgba(255, 246, 230, 0.94);
  background: linear-gradient(152deg, rgba(8, 18, 40, 0.94) 0%, rgba(45, 22, 62, 0.92) 100%);
  border: 1px solid rgba(242, 178, 26, 0.38);
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.06) inset,
    0 10px 22px rgba(0, 0, 0, 0.28);
  font-weight: 780;
  letter-spacing: 0.02em;
}

.split-driver-services .pill-row span:hover {
  border-color: rgba(20, 184, 166, 0.55);
  background: linear-gradient(152deg, rgba(12, 26, 52, 0.96) 0%, rgba(52, 28, 72, 0.94) 100%);
}

.split-driver-services .required-note-split {
  margin-top: clamp(12px, 1.6vw, 16px);
  color: rgba(255, 246, 230, 0.82) !important;
  background: rgba(6, 12, 22, 0.55) !important;
  border-color: rgba(255, 246, 230, 0.18) !important;
  border-style: solid !important;
  backdrop-filter: blur(10px);
}

.split-driver-services .image-cta-split .btn-primary {
  padding: 14px 22px;
  font-size: 0.96rem;
}

/* Driver split CTA card: readable type at bottom; keep the photo brighter toward the top */
.split-driver-services .image-cta::before {
  background: linear-gradient(
    165deg,
    rgba(6, 10, 20, 0.02) 0%,
    rgba(11, 29, 58, 0.08) 30%,
    rgba(11, 29, 58, 0.42) 62%,
    rgba(11, 29, 58, 0.9) 100%
  );
}

.split-driver-services .image-cta-content .btn-primary {
  color: var(--navy);
}

.split-driver-services .image-cta-content h3 {
  text-shadow: 0 2px 22px rgba(0, 0, 0, 0.55), 0 1px 2px rgba(0, 0, 0, 0.35);
}

.split-driver-services .image-cta-content p {
  color: rgba(255, 255, 255, 0.96);
  text-shadow: 0 2px 18px rgba(0, 0, 0, 0.5);
}

.proof-note,
.required-note {
  margin-bottom: 0;
  padding: 12px 14px;
  border-radius: 14px;
  font-size: 0.95rem;
}

.proof-note {
  background: rgba(20, 184, 166, 0.12);
  border: 1px solid rgba(20, 184, 166, 0.35);
}

.proof-note-subtle {
  margin-top: 24px;
  margin-bottom: 0;
  font-size: 0.82rem;
  color: var(--slate);
  text-align: center;
  max-width: 52rem;
  margin-left: auto;
  margin-right: auto;
  padding: 10px 12px;
  background: rgba(11, 29, 58, 0.04);
  border: 1px dashed rgba(11, 29, 58, 0.12);
  border-radius: 12px;
}

.required-note {
  background: rgba(255, 106, 77, 0.12);
  border: 1px solid rgba(255, 106, 77, 0.36);
}

/* Ask / concierge — homepage premium */
.section-ask {
  position: relative;
}

.section-ask-premium {
  max-width: none;
  margin: 0;
  padding: 56px clamp(16px, 4.5vw, 74px) 48px;
  overflow: hidden;
  border-radius: 0;
  border-top: 1px solid rgba(255, 246, 230, 0.14);
  border-bottom: 1px solid rgba(255, 246, 230, 0.12);
  background:
    radial-gradient(ellipse 90% 60% at 15% 0%, rgba(255, 106, 77, 0.22), transparent 50%),
    radial-gradient(circle at 92% 72%, rgba(20, 184, 166, 0.2), transparent 42%),
    radial-gradient(circle at 48% 40%, rgba(97, 45, 120, 0.35), transparent 55%),
    radial-gradient(circle at 72% 12%, rgba(242, 178, 26, 0.12), transparent 38%),
    linear-gradient(158deg, #050910 0%, #0b1d3a 46%, #1f1530 100%);
  box-shadow: none;
}

.section-ask-premium::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 5px;
  background: linear-gradient(90deg, var(--turquoise), var(--coral), var(--pink), var(--orange), var(--gold));
  z-index: 1;
}

.section-ask-premium::after {
  content: "";
  position: absolute;
  width: 420px;
  height: 420px;
  right: -160px;
  top: 50%;
  transform: translateY(-50%);
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 92, 168, 0.14), transparent 68%);
  pointer-events: none;
}

.section-text-ask {
  max-width: 36rem;
  text-align: left;
  hyphens: none;
  -webkit-hyphens: none;
  word-break: normal;
}

.section-ask-premium .section-text-ask {
  color: rgba(255, 246, 230, 0.86);
}

.eyebrow-ask {
  color: var(--gold) !important;
}

.ask-headline {
  color: var(--cream);
  text-shadow: 0 2px 32px rgba(0, 0, 0, 0.35);
  text-wrap: balance;
}

.ask-concierge {
  display: grid;
  gap: clamp(22px, 3vw, 32px);
  align-items: start;
  position: relative;
  z-index: 2;
  max-width: 1120px;
  margin-left: auto;
  margin-right: auto;
}

.ask-intro {
  display: flex;
  flex-direction: column;
  gap: clamp(12px, 1.6vw, 16px);
  min-width: 0;
}

.ask-intro .eyebrow-ask,
.ask-intro .ask-headline,
.ask-intro .section-text-ask {
  margin: 0 !important;
}

.ask-launcher {
  min-width: 0;
}

.ask-prompt-shell {
  position: relative;
  border-radius: calc(var(--radius) + 10px);
  padding: 1px;
  background: linear-gradient(
    145deg,
    rgba(255, 246, 230, 0.16) 0%,
    rgba(20, 184, 166, 0.12) 42%,
    rgba(255, 246, 230, 0.08) 100%
  );
  box-shadow:
    0 28px 64px rgba(0, 0, 0, 0.48),
    inset 0 1px 0 rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 246, 230, 0.2);
}

.ask-intake-card {
  background: linear-gradient(168deg, #081426 0%, #0f2748 48%, #15182a 100%);
  color: var(--cream);
  border-radius: calc(var(--radius) + 6px);
  padding: 22px 22px 24px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 246, 230, 0.2);
  position: relative;
  overflow: hidden;
}

.ask-intake-card::before {
  content: "";
  position: absolute;
  top: -42%;
  right: -18%;
  width: 200px;
  height: 200px;
  background: radial-gradient(circle, rgba(255, 92, 168, 0.3), transparent 68%);
  pointer-events: none;
}

.ask-intake-card::after {
  content: "";
  position: absolute;
  bottom: -30%;
  left: -10%;
  width: 160px;
  height: 160px;
  background: radial-gradient(circle, rgba(20, 184, 166, 0.18), transparent 70%);
  pointer-events: none;
}

.ask-intake-label {
  margin: 0 0 6px;
  font-size: 1.02rem;
  font-weight: 850;
  letter-spacing: -0.02em;
  color: var(--cream);
  position: relative;
  z-index: 1;
}

.ask-intake-sub {
  position: relative;
  z-index: 1;
  margin: 0;
  font-size: 0.86rem;
  line-height: 1.52;
  color: rgba(255, 246, 230, 0.74);
}

.ask-intake-head {
  position: relative;
  z-index: 1;
  margin-bottom: 14px;
}

.ask-composer-teaser {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
  padding: 13px 14px 13px 16px;
  border-radius: calc(var(--btn-radius) + 4px);
  background: rgba(4, 10, 20, 0.55);
  border: 1px solid rgba(255, 246, 230, 0.22);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.05),
    0 10px 28px rgba(0, 0, 0, 0.28);
  text-decoration: none;
  transition: border-color 0.2s ease, background 0.2s ease, transform 0.2s ease;
}

.ask-composer-teaser:hover {
  border-color: rgba(20, 184, 166, 0.55);
  background: rgba(6, 14, 28, 0.72);
  transform: translateY(-1px);
}

.ask-composer-teaser:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 2px;
}

.ask-composer-teaser-text {
  flex: 1 1 auto;
  min-width: 0;
  font-size: 0.88rem;
  line-height: 1.45;
  font-weight: 650;
  color: rgba(255, 246, 230, 0.62);
}

.ask-composer-teaser-action {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 3.1rem;
  padding: 7px 12px;
  border-radius: var(--btn-radius);
  font-size: 0.78rem;
  font-weight: 850;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--navy);
  background: linear-gradient(135deg, var(--gold), var(--orange));
  box-shadow: 0 6px 16px rgba(255, 139, 31, 0.28);
}

.prompt-chip-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px 10px;
  margin-bottom: 16px;
  position: relative;
  z-index: 1;
}

.prompt-chip {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  min-height: 2.65rem;
  padding: 9px 13px;
  border-radius: var(--btn-radius);
  font-size: 0.8rem;
  font-weight: 750;
  line-height: 1.35;
  text-align: left;
  hyphens: none;
  -webkit-hyphens: none;
  word-break: normal;
  color: rgba(255, 246, 230, 0.96);
  background: rgba(255, 246, 230, 0.08);
  border: 1px solid rgba(255, 246, 230, 0.24);
  transition: background 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

.prompt-chip-turq {
  border-color: rgba(20, 184, 166, 0.55);
  background: rgba(20, 184, 166, 0.12);
}

.prompt-chip-coral {
  border-color: rgba(255, 106, 77, 0.55);
  background: rgba(255, 106, 77, 0.1);
}

.prompt-chip-gold {
  border-color: rgba(242, 178, 26, 0.55);
  background: rgba(242, 178, 26, 0.12);
}

.prompt-chip-pink {
  border-color: rgba(255, 92, 168, 0.5);
  background: rgba(255, 92, 168, 0.1);
}

.prompt-chip-orange {
  border-color: rgba(255, 139, 31, 0.55);
  background: rgba(255, 139, 31, 0.11);
}

.prompt-chip-teal {
  border-color: rgba(45, 212, 191, 0.45);
  background: rgba(13, 148, 136, 0.14);
}

.prompt-chip:hover {
  transform: translateY(-1px);
  border-color: rgba(242, 178, 26, 0.55);
  background: rgba(255, 246, 230, 0.14);
}

.prompt-chip-turq:hover {
  background: rgba(20, 184, 166, 0.2);
  border-color: rgba(20, 184, 166, 0.75);
}

.prompt-chip-coral:hover {
  background: rgba(255, 106, 77, 0.22);
  border-color: rgba(255, 106, 77, 0.75);
}

.prompt-chip-gold:hover {
  background: rgba(242, 178, 26, 0.22);
  border-color: rgba(242, 178, 26, 0.8);
}

.prompt-chip-pink:hover {
  background: rgba(255, 92, 168, 0.22);
  border-color: rgba(255, 92, 168, 0.75);
}

.prompt-chip-orange:hover {
  background: rgba(255, 139, 31, 0.22);
  border-color: rgba(255, 139, 31, 0.78);
}

.prompt-chip-teal:hover {
  background: rgba(13, 148, 136, 0.24);
  border-color: rgba(45, 212, 191, 0.65);
}

.ask-sample-preview {
  margin: 0;
  padding: 20px 20px 22px;
  border-radius: calc(var(--radius) + 6px);
  background: linear-gradient(168deg, rgba(255, 246, 230, 0.07) 0%, rgba(8, 14, 26, 0.88) 65%, rgba(6, 12, 22, 0.95) 100%);
  border: 1px solid rgba(255, 246, 230, 0.2);
  box-shadow:
    0 20px 48px rgba(0, 0, 0, 0.45),
    inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

.ask-sample-preview--nested {
  position: relative;
  z-index: 1;
  margin-top: 18px;
  padding: 16px 16px 18px;
  border-radius: 14px;
  background: rgba(255, 246, 230, 0.04);
  border: 1px solid rgba(255, 246, 230, 0.14);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.ask-sample-preview-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 14px;
  margin-bottom: 9px;
}

.ask-sample-badge {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 0.62rem;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(255, 246, 230, 0.88);
  background: rgba(255, 246, 230, 0.1);
  border: 1px solid rgba(255, 246, 230, 0.22);
}

.ask-sample-preview--nested .ask-sample-badge {
  color: var(--navy);
  background: linear-gradient(135deg, rgba(242, 178, 26, 0.95), rgba(255, 139, 31, 0.88));
  border: 1px solid rgba(255, 255, 255, 0.45);
}

.ask-sample-context {
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(255, 246, 230, 0.55);
}

.ask-sample-lede {
  margin: 0 0 10px;
  font-size: 0.86rem;
  line-height: 1.52;
  font-weight: 650;
  color: rgba(255, 246, 230, 0.92);
  text-align: left;
  hyphens: none;
  -webkit-hyphens: none;
  word-break: normal;
}

.ask-sample-list {
  margin: 0;
  padding: 0 0 0 1.15rem;
  display: grid;
  gap: 5px;
  font-size: 0.78rem;
  line-height: 1.42;
  color: rgba(255, 246, 230, 0.68);
  text-align: left;
}

.proof-note-on-dark {
  position: relative;
  z-index: 2;
  margin-top: 28px;
  margin-bottom: 0;
  font-size: 0.82rem;
  text-align: center;
  max-width: 52rem;
  margin-left: auto;
  margin-right: auto;
  padding: 12px 14px;
  color: rgba(255, 246, 230, 0.72) !important;
  background: rgba(255, 246, 230, 0.06);
  border: 1px dashed rgba(255, 246, 230, 0.22);
  border-radius: 12px;
}

.proof-note-on-dark.proof-note-business {
  display: flex;
  flex-direction: column;
  gap: 7px;
  align-items: flex-start;
  text-align: left;
  max-width: 40rem;
  margin-inline: auto;
  margin-top: clamp(22px, 3.5vw, 32px);
  padding: 15px 18px;
  border: 1px solid rgba(255, 246, 230, 0.2);
  border-left-width: 3px;
  border-left-color: var(--gold);
  border-radius: 14px;
  border-style: solid;
  background: rgba(6, 12, 22, 0.62);
  backdrop-filter: blur(10px);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.section-ask-premium .ask-split > .proof-note-business {
  grid-column: 1 / -1;
  margin-top: 0;
  margin-inline: 0;
  max-width: none;
  width: 100%;
}

.section-ask-premium .ask-concierge > .proof-note-business {
  grid-column: 1 / -1;
  margin-top: 0;
  margin-inline: 0;
  max-width: none;
  width: 100%;
}

.proof-note-kicker {
  font-size: 0.7rem;
  font-weight: 900;
  letter-spacing: 0.13em;
  text-transform: uppercase;
  color: var(--gold);
}

.proof-note-body {
  margin: 0;
  font-size: 0.84rem;
  line-height: 1.55;
  font-weight: 600;
  color: rgba(255, 246, 230, 0.76) !important;
}

.ask-cta {
  position: relative;
  z-index: 1;
  margin-top: 2px;
  min-height: 3rem;
  font-size: 0.95rem;
  font-weight: 850;
  letter-spacing: 0.01em;
  box-shadow:
    0 14px 32px rgba(255, 139, 31, 0.34),
    inset 0 1px 0 rgba(255, 255, 255, 0.22);
}

@media (max-width: 599px) {
  .prompt-chip-grid {
    grid-template-columns: 1fr;
  }

  .ask-intake-card {
    padding: 18px 16px 20px;
  }

  .ask-composer-teaser {
    flex-wrap: wrap;
    padding: 12px 12px 12px 14px;
  }

  .ask-composer-teaser-action {
    margin-left: auto;
  }
}

.fiesta-divider {
  height: 7px;
  width: 100%;
  background: linear-gradient(90deg, var(--turquoise), var(--coral), var(--pink), var(--orange), var(--gold));
  opacity: 0.92;
}

.section-fiesta-featured {
  background:
    radial-gradient(circle at 84% 14%, rgba(20, 184, 166, 0.2), transparent 34%),
    radial-gradient(circle at 12% 88%, rgba(255, 106, 77, 0.14), transparent 40%),
    radial-gradient(circle at 52% 0%, rgba(242, 178, 26, 0.12), transparent 28%),
    linear-gradient(180deg, #fff2eb 0%, #ffeef6 62%, #eef8f6 100%);
}

/* Homepage: Explore the guide — rich dark fiesta band */
.section-explore-dark.section-fiesta-featured {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(ellipse 100% 75% at 100% 0%, rgba(255, 106, 77, 0.26), transparent 52%),
    radial-gradient(circle at 4% 92%, rgba(20, 184, 166, 0.22), transparent 44%),
    radial-gradient(circle at 58% 42%, rgba(61, 26, 74, 0.55), transparent 58%),
    radial-gradient(circle at 80% 88%, rgba(242, 178, 26, 0.14), transparent 40%),
    linear-gradient(168deg, #040810 0%, #0b1d3a 38%, #1a0f28 72%, #0c2438 100%);
  border-top: 1px solid rgba(255, 246, 230, 0.14);
  border-bottom: 1px solid rgba(255, 246, 230, 0.12);
}

.section-explore-dark.section-fiesta-featured > * {
  position: relative;
  z-index: 1;
}

.section-explore-dark.section-fiesta-featured::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0.035;
  background-image: radial-gradient(rgba(255, 246, 230, 0.85) 1px, transparent 1px);
  background-size: 18px 18px;
  mix-blend-mode: screen;
}

.section-explore-dark .explore-title {
  color: var(--cream);
  text-shadow: 0 2px 28px rgba(0, 0, 0, 0.35);
}

.section-explore-dark .section-text-explore {
  color: rgba(255, 246, 230, 0.88);
  max-width: 42rem;
}

.section-explore-dark .feature-grid-tight {
  position: relative;
  z-index: 1;
}

.explore-editorial {
  position: relative;
  z-index: 1;
  display: grid;
  gap: clamp(14px, 2vw, 22px);
  margin-top: 8px;
}

.explore-card-badge {
  display: inline-flex;
  align-self: flex-start;
  padding: 4px 10px;
  margin-bottom: 8px;
  border-radius: 999px;
  font-size: 0.62rem;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--navy);
  background: linear-gradient(135deg, rgba(242, 178, 26, 0.95), rgba(255, 139, 31, 0.88));
  border: 1px solid rgba(255, 255, 255, 0.45);
}

.section-explore-dark .explore-editorial .image-card {
  border-radius: calc(var(--radius) - 2px);
  aspect-ratio: auto;
  min-height: unset;
}

.section-explore-dark .explore-card-featured {
  min-height: clamp(340px, 48vw, 520px);
  aspect-ratio: 3 / 4;
}

.section-explore-dark .explore-card-medium {
  min-height: clamp(200px, 22vw, 260px);
  aspect-ratio: 16 / 11;
}

.section-explore-dark .explore-card-wide {
  min-height: clamp(240px, 28vw, 320px);
  aspect-ratio: 16 / 7;
}

.section-explore-dark .explore-card-wide .image-card-content-wide {
  max-width: min(420px, 92%);
}

@media (min-width: 720px) and (max-width: 979px) {
  .section-explore-dark .explore-card-featured {
    min-height: 380px;
  }
}

@media (min-width: 980px) {
  .explore-editorial {
    grid-template-columns: 1.18fr minmax(280px, 0.74fr);
    grid-template-rows: minmax(0, 1fr) minmax(0, 1fr);
    gap: 20px 22px;
    align-items: stretch;
  }

  .explore-editorial > article:nth-child(1) {
    grid-column: 1;
    grid-row: 1 / span 2;
  }

  .explore-editorial > article:nth-child(2) {
    grid-column: 2;
    grid-row: 1;
  }

  .explore-editorial > article:nth-child(3) {
    grid-column: 2;
    grid-row: 2;
  }

  .explore-editorial > article:nth-child(4) {
    grid-column: 1 / -1;
    grid-row: 3;
  }

  .section-explore-dark .explore-card-medium {
    min-height: 0;
    height: 100%;
  }
}

.section-explore-dark .image-card {
  border-radius: var(--radius);
  overflow: hidden;
  min-height: 280px;
  box-shadow:
    0 32px 60px rgba(0, 0, 0, 0.55),
    0 0 0 1px rgba(242, 178, 26, 0.42),
    0 0 48px rgba(255, 106, 77, 0.12);
  border-color: rgba(242, 178, 26, 0.28);
}

.section-explore-dark .image-card::before {
  background: linear-gradient(186deg, rgba(11, 29, 58, 0.08) 12%, rgba(11, 29, 58, 0.95) 88%);
}

.section-explore-dark .image-card::after {
  box-shadow:
    inset 0 0 0 1px rgba(242, 178, 26, 0.28),
    inset 0 0 0 3px rgba(255, 106, 77, 0.1),
    inset 0 0 0 5px rgba(20, 184, 166, 0.08);
}

.section-explore-dark .image-card .btn-on-image {
  background: linear-gradient(135deg, var(--orange) 0%, var(--gold) 100%);
  color: var(--navy);
  border: 1px solid rgba(255, 255, 255, 0.45);
  box-shadow: 0 12px 30px rgba(255, 139, 31, 0.36);
  font-weight: 850;
}

.section-explore-dark .image-card .btn-on-image:hover {
  background: linear-gradient(135deg, #ff9428, #ffd44a);
  color: var(--navy);
}

.section-explore-dark .explore-editorial .image-card {
  min-height: unset;
}

/* Homepage guide directory — editorial bento + Family-style immersive cards */
.page-home .home-directory-shell {
  width: 100%;
  gap: clamp(18px, 2.6vw, 28px);
}

.page-home .home-directory-head.explore-head.explore-head-row {
  margin-bottom: 0;
}

.page-home .home-directory-editorial {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: clamp(14px, 2vw, 22px);
  grid-template-columns: 1fr;
}

@media (min-width: 900px) {
  .page-home .home-directory-editorial {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    grid-auto-rows: minmax(120px, auto);
    align-items: stretch;
  }

  .page-home .home-dir-slot--hero {
    grid-column: 1 / span 7;
    grid-row: 1 / span 2;
  }

  .page-home .home-dir-slot--wide {
    grid-column: 8 / span 5;
    grid-row: 1;
  }

  .page-home .home-dir-slot--tall {
    grid-column: 8 / span 5;
    grid-row: 2;
  }

  .page-home .home-dir-slot:not(.home-dir-slot--hero):not(.home-dir-slot--wide):not(.home-dir-slot--tall) {
    grid-column: span 4;
  }
}

@media (min-width: 900px) and (max-width: 1099px) {
  .page-home .home-dir-slot--hero {
    grid-column: 1 / -1;
    grid-row: auto;
  }

  .page-home .home-dir-slot--wide {
    grid-column: 1 / span 6;
    grid-row: auto;
  }

  .page-home .home-dir-slot--tall {
    grid-column: 7 / span 6;
    grid-row: auto;
  }

  .page-home .home-dir-slot:not(.home-dir-slot--hero):not(.home-dir-slot--wide):not(.home-dir-slot--tall) {
    grid-column: span 6;
  }
}

.page-home .home-dir-slot {
  margin: 0;
  padding: 0;
  display: flex;
  min-height: 0;
}

.page-home .home-dir-card {
  flex: 1;
  display: block;
  min-width: 0;
  border-radius: clamp(18px, 2.4vw, 24px);
  overflow: hidden;
  text-decoration: none;
  color: #fff;
  background: #0a1428;
  border: 1px solid rgba(255, 246, 230, 0.22);
  box-shadow:
    0 22px 52px rgba(2, 6, 14, 0.42),
    0 0 0 1px rgba(20, 184, 166, 0.16),
    inset 0 1px 0 rgba(255, 255, 255, 0.1);
  transition:
    transform 0.22s cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 0.22s ease,
    border-color 0.22s ease;
}

.page-home .home-dir-card:hover {
  transform: translateY(-4px);
  border-color: rgba(255, 246, 230, 0.38);
  box-shadow:
    0 30px 64px rgba(2, 6, 14, 0.5),
    0 0 0 1px rgba(242, 178, 26, 0.38),
    0 0 48px rgba(20, 184, 166, 0.12),
    inset 0 1px 0 rgba(255, 255, 255, 0.16);
}

.page-home .home-dir-card:focus-visible {
  outline: 3px solid rgba(242, 178, 26, 0.95);
  outline-offset: 3px;
}

.page-home .home-dir-card--gold {
  box-shadow:
    0 22px 52px rgba(2, 6, 14, 0.42),
    0 0 0 1px rgba(255, 139, 31, 0.32),
    0 0 40px rgba(242, 178, 26, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

.page-home .home-dir-card--coral {
  box-shadow:
    0 22px 52px rgba(2, 6, 14, 0.42),
    0 0 0 1px rgba(255, 106, 77, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

.page-home .home-dir-card--teal {
  box-shadow:
    0 22px 52px rgba(2, 6, 14, 0.42),
    0 0 0 1px rgba(14, 165, 233, 0.3),
    inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

.page-home .home-dir-card--pink {
  box-shadow:
    0 22px 52px rgba(2, 6, 14, 0.42),
    0 0 0 1px rgba(255, 92, 168, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

.page-home .home-dir-card--sunset {
  box-shadow:
    0 22px 52px rgba(2, 6, 14, 0.42),
    0 0 0 1px rgba(242, 178, 26, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

.page-home .home-dir-card--lime {
  box-shadow:
    0 22px 52px rgba(2, 6, 14, 0.42),
    0 0 0 1px rgba(20, 184, 166, 0.35),
    inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

.page-home .home-dir-card-media-wrap {
  position: relative;
  width: 100%;
  min-height: clamp(220px, 46vw, 300px);
  overflow: hidden;
  background: rgba(11, 29, 58, 0.2);
}

.page-home .home-dir-slot--hero .home-dir-card-media-wrap {
  min-height: clamp(300px, 48vw, 460px);
}

@media (min-width: 900px) {
  .page-home .home-dir-slot--tall .home-dir-card-media-wrap {
    min-height: 100%;
  }
}

.page-home .home-dir-card-media {
  display: block;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.02);
  transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}

.page-home .home-dir-media--dt {
  object-position: 48% 38%;
}

.page-home .home-dir-media--ride {
  object-position: 52% 42%;
}

.page-home .home-dir-card:hover .home-dir-card-media {
  transform: scale(1.06);
}

.page-home .home-dir-card-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(
    to top,
    rgba(5, 10, 24, 0.54) 0%,
    rgba(5, 10, 24, 0.24) 48%,
    rgba(5, 10, 24, 0.04) 76%,
    transparent 100%
  );
}

.page-home .home-dir-card-body {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  box-sizing: border-box;
  width: 100%;
  max-width: min(34rem, 94%);
  padding: clamp(14px, 2.4vw, 22px) clamp(16px, 2.6vw, 24px) clamp(16px, 2.6vw, 24px);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: clamp(5px, 1vw, 9px);
  text-align: left;
}

.page-home .home-dir-chip {
  align-self: flex-start;
  font-size: 0.58rem;
  font-weight: 850;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.98);
  background: rgba(255, 255, 255, 0.14);
  border: 1px solid rgba(255, 255, 255, 0.32);
  border-radius: 999px;
  padding: 5px 10px;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  box-shadow: 0 4px 14px rgba(5, 10, 24, 0.22);
}

.page-home .home-dir-chip--hub {
  border-color: rgba(255, 200, 120, 0.45);
  background: rgba(255, 139, 31, 0.2);
}

.page-home .home-dir-title {
  margin: 0;
  font-size: clamp(1.08rem, 0.4vw + 0.96rem, 1.34rem);
  font-weight: 870;
  letter-spacing: -0.026em;
  line-height: 1.12;
  color: #fff;
  text-wrap: balance;
  text-shadow: 0 2px 18px rgba(5, 10, 24, 0.45);
}

.page-home .home-dir-copy {
  margin: 0;
  font-size: clamp(0.84rem, 0.2vw + 0.78rem, 0.94rem);
  line-height: 1.52;
  color: rgba(255, 255, 255, 0.92);
  max-width: 36rem;
  text-shadow: 0 1px 12px rgba(5, 10, 24, 0.38);
}

.page-home .home-dir-cta {
  margin-top: 4px;
  font-size: 0.7rem;
  font-weight: 820;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #fff;
  border-bottom: 2px solid rgba(242, 178, 26, 0.75);
  padding-bottom: 2px;
  pointer-events: none;
  transition: color 0.15s ease, border-color 0.15s ease;
}

.page-home .home-dir-card:hover .home-dir-cta {
  color: #fffef5;
  border-bottom-color: rgba(45, 212, 191, 0.9);
}

@media (prefers-reduced-motion: reduce) {
  .page-home .home-dir-card:hover {
    transform: none;
  }

  .page-home .home-dir-card:hover .home-dir-card-media {
    transform: scale(1.02);
  }
}

.dark-showcase {
  max-width: none;
  color: var(--cream);
  border-top: 1px solid rgba(255, 246, 230, 0.2);
  border-bottom: 1px solid rgba(255, 246, 230, 0.18);
  background:
    radial-gradient(circle at 20% 4%, rgba(20, 184, 166, 0.18), transparent 34%),
    radial-gradient(circle at 86% 90%, rgba(242, 178, 26, 0.15), transparent 35%),
    linear-gradient(165deg, #08162c, #0b1d3a 58%, #102a50);
}

.dark-showcase-alt {
  background:
    radial-gradient(circle at 12% 20%, rgba(255, 92, 168, 0.15), transparent 32%),
    radial-gradient(circle at 88% 8%, rgba(255, 106, 77, 0.14), transparent 34%),
    radial-gradient(circle at 50% 100%, rgba(20, 184, 166, 0.12), transparent 40%),
    linear-gradient(165deg, #070c18, #0b1d3a 50%, #1a1f3a);
}

.dark-showcase .eyebrow {
  color: var(--gold);
}

.dark-showcase h2,
.dark-showcase h3 {
  color: var(--cream);
}

.dark-showcase p {
  color: rgba(255, 246, 230, 0.92);
}

.dark-showcase .section-text {
  color: rgba(255, 246, 230, 0.84);
}

.dark-showcase .card {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.05));
  border-color: rgba(255, 246, 230, 0.22);
  color: var(--cream);
}

.dark-showcase .card p {
  color: rgba(255, 246, 230, 0.84);
}

.dark-showcase .required-note {
  color: rgba(255, 246, 230, 0.95);
  border-color: rgba(255, 139, 31, 0.46);
  background: rgba(255, 139, 31, 0.16);
}

.dark-card::before {
  background: linear-gradient(190deg, rgba(11, 29, 58, 0.12), rgba(11, 29, 58, 0.88) 86%) !important;
}

.split-transport.transport-grid {
  align-items: stretch;
}

.transport-copy {
  display: flex;
  flex-direction: column;
  gap: 14px;
  align-self: start;
}

@media (min-width: 830px) {
  .transport-copy {
    align-self: stretch;
    height: 100%;
    min-height: 100%;
    justify-content: flex-start;
  }
}

.transport-lead {
  margin-bottom: 0;
}

.split-transport .image-cta-balanced,
.page-home .transport-section .split-transport .transport-visual-card {
  min-height: clamp(280px, 42vw, 360px);
}

.split-transport .image-cta,
.page-home .transport-section .split-transport .transport-visual-card {
  min-height: 100%;
  align-self: stretch;
  height: 100%;
}

@media (min-width: 830px) {
  .split-transport .image-cta-balanced,
  .page-home .transport-section .split-transport .transport-visual-card {
    min-height: 100%;
  }
}

.split-transport .image-cta-content {
  background: linear-gradient(180deg, rgba(6, 10, 20, 0.05), rgba(6, 10, 20, 0.82));
}

.split-transport .image-cta-content .btn-primary {
  width: fit-content;
  max-width: 100%;
}

/* Homepage transport: clean photo panel + copy below (no glass overlay on the image) */
.page-home .transport-section .split-transport .transport-visual-card {
  display: flex;
  flex-direction: column;
  border-radius: var(--radius);
  overflow: hidden;
  border: 1px solid rgba(255, 246, 230, 0.22);
  box-shadow: 0 20px 48px rgba(2, 6, 14, 0.35);
  background: #0a1428;
}

.page-home .transport-section .transport-visual-frame {
  position: relative;
  width: 100%;
  flex: 1 1 auto;
  min-height: clamp(200px, 34vw, 300px);
  overflow: hidden;
  background: #0a1428;
}

.page-home .transport-section .transport-visual-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

.page-home .transport-section .transport-visual-footer {
  flex: 0 0 auto;
  padding: clamp(14px, 2vw, 20px) clamp(16px, 2.2vw, 22px) clamp(16px, 2.2vw, 22px);
  display: flex;
  flex-direction: column;
  gap: 8px;
  border-top: 1px solid rgba(255, 246, 230, 0.12);
  background: linear-gradient(180deg, rgba(6, 12, 22, 0.88) 0%, rgba(4, 8, 16, 0.95) 100%);
}

.page-home .transport-section .transport-visual-title {
  margin: 0;
  font-size: clamp(1.02rem, 0.35vw + 0.92rem, 1.15rem);
  font-weight: 800;
  color: var(--cream);
  letter-spacing: -0.02em;
  line-height: 1.25;
}

.page-home .transport-section .transport-visual-lede {
  margin: 0;
  font-size: clamp(0.88rem, 0.2vw + 0.82rem, 0.95rem);
  line-height: 1.55;
  color: rgba(255, 246, 230, 0.88);
}

.page-home .transport-section .transport-visual-footer .btn-transport-cta {
  align-self: flex-start;
  margin-top: 4px;
}

.required-note-dark.required-note-transport {
  margin-top: 10px !important;
  margin-bottom: 0 !important;
  border-radius: 14px !important;
  padding: 10px 14px !important;
  font-size: 0.78rem !important;
  font-weight: 550 !important;
  letter-spacing: 0.015em !important;
  line-height: 1.54 !important;
  color: rgba(255, 246, 230, 0.66) !important;
  border: 1px solid rgba(255, 246, 230, 0.16) !important;
  border-style: solid !important;
  background: rgba(255, 246, 230, 0.04) !important;
  backdrop-filter: blur(10px);
}

.transport-mobile-cta.btn-secondary.btn-on-dark {
  border-color: rgba(242, 178, 26, 0.45);
  width: fit-content;
  max-width: 100%;
}

.required-note-dark {
  margin-top: 4px;
  border-radius: 16px;
  border: 1px solid rgba(242, 178, 26, 0.35) !important;
  background: rgba(11, 29, 58, 0.45) !important;
  backdrop-filter: blur(8px);
  color: rgba(255, 246, 230, 0.94) !important;
  line-height: 1.55;
}

.hide-on-desktop {
  margin-top: 8px;
}

/* AI proof upgrade */
.ai-proof-section {
  margin-top: 0;
}

/* AI Business Services page: capability grid matches homepage rhythm; hero is .secondary-hero */
.section.ai-business-page {
  padding-top: clamp(28px, 3.8vw, 44px);
  padding-bottom: clamp(52px, 7vw, 80px);
}

.ai-business-page .ai-proof-shell {
  max-width: 1300px;
  margin-inline: auto;
  width: 100%;
}

.ai-proof-shell.ai-proof-case-study.ai-business-body {
  grid-template-columns: 1fr;
  gap: clamp(20px, 3vw, 32px);
}

@media (min-width: 900px) {
  .ai-proof-shell.ai-proof-case-study.ai-business-body {
    grid-template-columns: 1fr;
  }
}

.ai-business-page .ai-proof-shell.ai-business-body .ai-proof-cap-grid {
  align-content: stretch;
  padding-inline-end: 0;
  box-sizing: border-box;
}

.ai-proof-shell.ai-proof-case-study .business-services-cta-band {
  grid-column: 1 / -1;
  box-sizing: border-box;
  width: 100%;
  max-width: none;
  margin-top: clamp(36px, 5vw, 52px);
  padding-top: clamp(28px, 3.6vw, 40px);
  padding-inline-end: min(24px, 2.5vw);
  border-top: 1px solid rgba(255, 246, 230, 0.14);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.ai-proof-shell.ai-proof-case-study.ai-business-body .business-services-cta-band {
  margin-top: clamp(24px, 4vw, 40px);
  padding-inline-end: 0;
  display: grid;
  grid-template-columns: 1fr;
  align-items: center;
  justify-content: initial;
  gap: 18px;
  text-align: left;
}

@media (min-width: 900px) {
  .ai-proof-shell.ai-proof-case-study .business-services-cta-band {
    padding-inline-end: min(28px, 3vw);
  }

  .ai-proof-shell.ai-proof-case-study.ai-business-body .business-services-cta-band {
    padding-inline-end: 0;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(11px, 1.9vw, 14px);
    align-items: center;
  }
}

.business-services-cta-copy {
  margin: 0;
  flex: 1 1 220px;
  min-width: 0;
  max-width: 36rem;
  font-size: clamp(0.98rem, 0.95vw + 0.74rem, 1.06rem);
  line-height: 1.58;
  color: rgba(255, 246, 230, 0.84);
}

.ai-proof-shell.ai-proof-case-study.ai-business-body .business-services-cta-copy {
  max-width: none;
}

.business-services-cta-btn {
  flex-shrink: 0;
}

.ai-proof-shell.ai-proof-case-study.ai-business-body .business-services-cta-btn {
  justify-self: start;
  max-width: 100%;
}

@media (max-width: 639px) {
  .ai-proof-shell.ai-proof-case-study .business-services-cta-band {
    flex-direction: column;
    align-items: stretch;
    padding-inline-end: 0;
  }

  .business-services-cta-btn {
    width: 100%;
    justify-content: center;
  }

  .ai-proof-shell.ai-proof-case-study.ai-business-body .business-services-cta-btn {
    width: auto;
    align-self: start;
    justify-self: start;
    justify-content: center;
  }
}

.ai-proof-header {
  text-align: center;
  max-width: 760px;
  margin: 0 auto 32px;
}

.ai-proof-header-left {
  text-align: left;
  margin: 0 0 14px;
  max-width: 38rem;
}

.ai-proof-headline {
  font-size: clamp(1.55rem, 3.8vw, 2.05rem);
  line-height: 1.14;
  letter-spacing: -0.03em;
  color: var(--cream);
  margin-bottom: 12px !important;
}

.ai-proof-badge-row .ai-badge:nth-child(1) {
  border-color: rgba(20, 184, 166, 0.45);
}

.ai-proof-badge-row .ai-badge:nth-child(2) {
  border-color: rgba(255, 106, 77, 0.42);
}

.ai-proof-badge-row .ai-badge:nth-child(3) {
  border-color: rgba(242, 178, 26, 0.45);
}

.ai-proof-eyebrow {
  text-transform: uppercase;
  letter-spacing: 0.13em !important;
  font-weight: 900 !important;
}

.ai-proof-eyebrow.label-gold {
  color: var(--gold) !important;
}

.ai-proof-lead {
  font-size: clamp(0.98rem, 1.05vw + 0.74rem, 1.06rem);
  line-height: 1.6;
}

.ai-proof-shell {
  display: grid;
  gap: clamp(22px, 3vw, 34px);
  align-items: start;
}

.ai-proof-shell.ai-proof-case-study {
  gap: clamp(24px, 3.8vw, 40px);
}

.ai-proof-shell.ai-proof-case-study .ai-proof-left {
  gap: clamp(14px, 2.2vw, 18px);
}

.ai-proof-shell.ai-proof-case-study .ai-proof-headline {
  margin-bottom: 0 !important;
}

.ai-proof-shell.ai-proof-case-study .ai-proof-lead {
  margin-bottom: 0 !important;
}

.ai-proof-shell.ai-proof-case-study .ai-proof-badge-row {
  margin-top: 0;
}

.ai-proof-shell.ai-proof-case-study .ai-proof-eyebrow {
  margin-bottom: 0;
}

.ai-proof-shell.ai-proof-case-study .ai-proof-cta {
  width: fit-content;
  max-width: 100%;
  margin-top: 2px;
}

@media (min-width: 900px) {
  .ai-proof-shell {
    align-items: stretch;
  }

  .ai-proof-shell.ai-proof-case-study {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
}

.ai-proof-left {
  display: flex;
  flex-direction: column;
  gap: 18px;
  min-width: 0;
}

.ai-proof-badge-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 4px;
}

.ai-badge {
  display: inline-flex;
  align-items: center;
  padding: 6px 12px;
  border-radius: 999px;
  font-size: 0.71rem;
  font-weight: 850;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(255, 246, 230, 0.92);
  background: rgba(255, 246, 230, 0.07);
  border: 1px solid rgba(242, 178, 26, 0.38);
  box-shadow: 0 0 20px rgba(255, 106, 77, 0.08);
}

.ai-proof-visual-wrap {
  position: relative;
  border-radius: 26px;
  padding: 3px;
  background: linear-gradient(135deg, rgba(242, 178, 26, 0.45), rgba(255, 106, 77, 0.35), rgba(20, 184, 166, 0.35));
  box-shadow:
    0 28px 60px rgba(0, 0, 0, 0.4),
    0 0 48px rgba(255, 92, 168, 0.1);
  width: 100%;
  align-self: stretch;
}

.ai-proof-shell.ai-proof-case-study .ai-proof-visual-wrap {
  margin-top: 2px;
  flex: 0 1 auto;
}

.ai-proof-visual {
  display: block;
  width: 100%;
  max-height: none;
  object-fit: contain;
  object-position: center bottom;
  aspect-ratio: 16 / 11;
  min-height: 200px;
  max-height: 380px;
  border-radius: 23px;
  border: 1px solid rgba(255, 246, 230, 0.2);
  background:
    radial-gradient(ellipse at 50% 0%, rgba(20, 184, 166, 0.12), transparent 55%),
    linear-gradient(180deg, rgba(11, 29, 58, 0.5), rgba(6, 10, 20, 0.95));
}

.ai-proof-shell.ai-proof-case-study .ai-proof-visual {
  aspect-ratio: 5 / 4;
  max-height: min(360px, 48vw);
  min-height: 220px;
  object-fit: cover;
  object-position: 52% 32%;
}

.ai-proof-cap-grid {
  display: grid;
  gap: clamp(11px, 1.9vw, 14px);
  grid-template-columns: 1fr;
  align-items: stretch;
  min-width: 0;
}

@media (min-width: 900px) {
  .ai-proof-cap-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(4, minmax(0, 1fr));
  }
}

.ai-cap-cell h3 {
  font-size: 0.92rem !important;
  letter-spacing: -0.015em;
  margin-bottom: 6px !important;
  line-height: 1.25;
}

.ai-cap-cell p {
  font-size: 0.81rem !important;
  line-height: 1.48 !important;
  margin-bottom: 0 !important;
}

.dark-showcase .ai-proof-cap-grid .card.dark-variant.glass-cap.ai-cap-cell {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 108px;
  padding: 14px 16px;
  border-radius: calc(var(--radius) - 4px);
}

.dark-showcase .card.dark-variant.glass-cap {
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.13), rgba(255, 255, 255, 0.04));
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 246, 230, 0.24);
  transition: transform 0.2s ease, border-color 0.2s ease;
  padding: 16px 18px;
  min-height: 0;
}

.dark-showcase .card.dark-variant.glass-cap h3 {
  font-size: 1.06rem;
  margin-bottom: 8px;
  letter-spacing: -0.02em;
}

.dark-showcase .card.dark-variant.glass-cap p {
  font-size: 0.92rem;
  line-height: 1.58;
}

.dark-showcase .glass-cap.gold h3 {
  color: var(--gold);
}

.dark-showcase .glass-cap.turq h3 {
  color: var(--turquoise);
}

.dark-showcase .glass-cap.pink h3 {
  color: var(--pink);
}

.dark-showcase .glass-cap.orange h3 {
  color: var(--orange);
}

.dark-showcase .glass-cap.coral h3 {
  color: var(--coral);
}

.dark-showcase .glass-cap.green h3 {
  color: var(--turquoise);
}

.dark-showcase .glass-cap.purple h3 {
  color: #c4b5fd;
}

.dark-showcase .glass-cap.navy h3 {
  color: rgba(255, 246, 230, 0.94);
}

.dark-showcase .card.dark-variant.glass-cap:hover {
  transform: translateY(-3px);
  border-color: rgba(242, 178, 26, 0.35);
}

.dark-showcase .ai-proof-cap-grid .card.dark-variant.glass-cap h3 {
  font-size: 0.92rem !important;
  margin-bottom: 6px !important;
  letter-spacing: -0.015em;
  line-height: 1.25;
}

.dark-showcase .ai-proof-cap-grid .card.dark-variant.glass-cap p {
  font-size: 0.81rem !important;
  line-height: 1.48 !important;
  margin-bottom: 0 !important;
}

.pink {
  border-top: 5px solid var(--pink);
}
.gold {
  border-top: 5px solid var(--gold);
}
.turq {
  border-top: 5px solid var(--turquoise);
}
.orange {
  border-top: 5px solid var(--orange);
}
.purple {
  border-top: 5px solid #9b63ff;
}
.green {
  border-top: 5px solid var(--turquoise);
}
.coral {
  border-top: 5px solid var(--coral);
}
.navy {
  border-top: 5px solid rgba(255, 246, 230, 0.35);
}
.accent-pink {
  border-top: 4px solid var(--pink);
}
.accent-gold {
  border-top: 4px solid var(--gold);
}
.accent-turq {
  border-top: 4px solid var(--turquoise);
}
.accent-orange {
  border-top: 4px solid var(--orange);
}

.hero-image-main {
  background-image: url("assets/hero-golden-hour-riverwalk.png");
}
.img-downtown {
  background-image: url("assets/downtown-river-promenade-twilight.png");
}
.img-food {
  background-image: url("assets/dining-riverside-warm-string-lights.png");
}
.img-resort {
  background-image: url("assets/resort-dining-tropical-sunset.png");
}
.img-family {
  background-image: url("assets/family-river-stroll-sunset.png");
}
.img-business {
  background-image: url("assets/hero-elegant-urban-arrival-sunset.png");
}
.img-transport {
  background-image: url("assets/transport-luxury-city-arrival-night.png");
}

/* Business bridge */
.section-business-bridge {
  border-radius: 0;
  margin-top: 0;
  background:
    radial-gradient(circle at 78% 88%, rgba(20, 184, 166, 0.16), transparent 42%),
    radial-gradient(circle at 14% 18%, rgba(255, 92, 168, 0.1), transparent 38%),
    radial-gradient(circle at 92% 8%, rgba(242, 178, 26, 0.1), transparent 32%),
    linear-gradient(180deg, var(--cream) 0%, var(--cream-turq) 55%, #fff8ee 100%);
}

.use-case-grid {
  display: grid;
  gap: 14px;
  margin-top: 22px;
  grid-template-columns: 1fr;
}

.use-case-card {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 18px 18px 18px 20px;
  border-radius: var(--radius);
  border: 1px solid var(--line-soft);
  background: rgba(255, 255, 255, 0.82);
  box-shadow: var(--shadow-sm);
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease;
  position: relative;
  overflow: hidden;
}

.use-case-card::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 4px;
  background: linear-gradient(180deg, var(--coral), var(--gold));
}

.use-case-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--shadow);
}

.use-case-card strong {
  color: var(--navy);
  font-size: 1rem;
}

.use-case-card span:last-child {
  font-size: 0.9rem;
  color: var(--slate);
  line-height: 1.5;
}

.use-case-icon {
  display: block;
  width: 28px;
  height: 4px;
  border-radius: 4px;
  background: linear-gradient(90deg, var(--orange), var(--gold));
}

.use-case-turq {
  background: linear-gradient(90deg, var(--turquoise), #0d9488);
}

.use-case-gold {
  background: linear-gradient(90deg, var(--gold), var(--orange));
}

.use-case-pink {
  background: linear-gradient(90deg, var(--pink), var(--coral));
}

/* Footer */
.footer {
  padding: 28px clamp(16px, 4.5vw, 74px) 36px;
  display: grid;
  gap: 12px;
}

.footer strong {
  display: block;
  font-size: 1rem;
}

.footer span {
  display: block;
  font-size: 0.9rem;
}

.footer-brand .footer-tagline {
  margin-top: 4px;
  color: rgba(255, 246, 230, 0.88);
}

.footer-lead,
.footer-mission {
  margin: 10px 0 0;
  max-width: 36rem;
  font-size: 0.88rem;
  line-height: 1.55;
  color: rgba(255, 246, 230, 0.78);
}

.footer:not(.dark-showcase) .footer-tagline,
.footer:not(.dark-showcase) .footer-lead,
.footer:not(.dark-showcase) .footer-mission {
  color: var(--slate);
}

.footer-links {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.footer.dark-showcase .footer-links a {
  padding: 8px 11px;
  border-radius: 999px;
  border: 1px solid rgba(255, 246, 230, 0.28);
  background: rgba(255, 246, 230, 0.08);
  color: var(--cream);
  font-size: 0.86rem;
  font-weight: 760;
}

.footer.dark-showcase .footer-links a:hover {
  border-color: rgba(242, 178, 26, 0.5);
  background: rgba(255, 246, 230, 0.12);
}

.footer-note {
  margin: 0;
  font-size: 0.8rem;
  font-weight: 650;
  letter-spacing: normal;
  line-height: 1.45;
  color: rgba(255, 246, 230, 0.58);
}

.footer-cta {
  margin-top: 6px;
  font-weight: 700;
  color: var(--gold);
}

.footer:not(.dark-showcase) {
  border-top: 1px solid var(--line);
  background:
    radial-gradient(circle at 90% 100%, rgba(255, 92, 168, 0.14), transparent 28%),
    var(--cream);
  color: var(--slate);
}

.footer:not(.dark-showcase) strong {
  color: var(--navy);
}

.footer:not(.dark-showcase) span {
  color: var(--slate);
}

.footer:not(.dark-showcase) .footer-links a {
  padding: 8px 11px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.82);
  border: 1px solid rgba(11, 29, 58, 0.12);
  color: var(--navy);
  font-size: 0.86rem;
  font-weight: 760;
}

.footer:not(.dark-showcase) .footer-note {
  color: var(--slate);
}

/* Where To Go SA — official social links (footer + connect rows) */
.wtgsa-social {
  display: grid;
  gap: 8px;
}

.wtgsa-social--footer {
  margin-top: 2px;
}

.wtgsa-social__title {
  margin: 0;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  line-height: 1.35;
  color: var(--gold);
}

.footer.dark-showcase .wtgsa-social__title {
  color: rgba(242, 178, 26, 0.94);
}

.footer:not(.dark-showcase) .wtgsa-social__title {
  color: var(--navy);
}

.wtgsa-social__links {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0;
  padding: 0;
}

.wtgsa-social__link {
  display: inline-flex;
  align-items: center;
  padding: 7px 10px;
  border-radius: 999px;
  border: 1px solid rgba(11, 29, 58, 0.14);
  background: rgba(255, 255, 255, 0.88);
  color: var(--navy);
  font-size: 0.82rem;
  font-weight: 760;
  line-height: 1.2;
  text-decoration: none;
  transition:
    border-color 0.15s ease,
    background 0.15s ease,
    color 0.15s ease;
}

.wtgsa-social__link:hover {
  border-color: rgba(242, 178, 26, 0.55);
  color: var(--navy);
}

.footer.dark-showcase .wtgsa-social__link {
  border: 1px solid rgba(255, 246, 230, 0.26);
  background: rgba(255, 246, 230, 0.07);
  color: var(--cream);
}

.footer.dark-showcase .wtgsa-social__link:hover {
  border-color: rgba(242, 178, 26, 0.5);
  background: rgba(255, 246, 230, 0.12);
}

.wtgsa-social--inline {
  margin-top: 1rem;
  max-width: 34rem;
}

.wtgsa-social--inline .wtgsa-social__title {
  font-size: 0.72rem;
}

.section-ask-premium .wtgsa-social--inline .wtgsa-social__title,
.ask-final-cta-card .wtgsa-social--inline .wtgsa-social__title,
.sh-final-cta .wtgsa-social--inline .wtgsa-social__title {
  color: rgba(242, 178, 26, 0.94);
}

.section-ask-premium .wtgsa-social--inline .wtgsa-social__link,
.ask-final-cta-card .wtgsa-social--inline .wtgsa-social__link,
.sh-final-cta .wtgsa-social--inline .wtgsa-social__link {
  border-color: rgba(255, 246, 230, 0.28);
  background: rgba(255, 246, 230, 0.08);
  color: var(--cream);
}

.section-ask-premium .wtgsa-social--inline .wtgsa-social__link:hover,
.ask-final-cta-card .wtgsa-social--inline .wtgsa-social__link:hover,
.sh-final-cta .wtgsa-social--inline .wtgsa-social__link:hover {
  border-color: rgba(242, 178, 26, 0.5);
  background: rgba(255, 246, 230, 0.12);
}

.page-legal .wtgsa-social--inline {
  margin-top: 1.25rem;
}

.page-legal .wtgsa-social--inline .wtgsa-social__title {
  color: var(--navy);
}

/* ----- Responsive ----- */
@media (min-width: 640px) {
  .route-selector-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}


@media (min-width: 830px) {
  .hero:not(.hero-fiesta-dark) {
    grid-template-columns: minmax(0, 1.08fr) minmax(290px, 0.72fr);
    gap: clamp(26px, 3vw, 36px);
    align-items: start;
    padding-top: clamp(52px, 5.5vw, 72px);
  }

  .split {
    grid-template-columns: 1fr 0.92fr;
    gap: 22px;
  }

  .split-transport {
    align-items: stretch;
  }

  .grid-3 {
    grid-template-columns: repeat(3, 1fr);
  }

  .grid-4 {
    grid-template-columns: repeat(4, 1fr);
  }

  .feature-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .quick-grid {
    grid-template-columns: repeat(4, 1fr);
  }

  .hide-on-desktop {
    display: none !important;
  }
}

@media (min-width: 900px) {
  .hero-shell {
    grid-template-columns: minmax(0, 1.06fr) minmax(0, 0.94fr);
    gap: clamp(28px, 4vw, 48px);
    align-items: start;
  }

  .hero-visual-frame {
    max-width: none;
    padding-bottom: 12px;
  }

  .route-selector-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .ask-concierge {
    grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
    column-gap: clamp(28px, 3.5vw, 44px);
    row-gap: clamp(22px, 2.8vw, 28px);
    align-items: start;
  }

  .ask-intro {
    padding-top: 6px;
  }
}

@media (max-width: 899px) {
  .hero-visual-frame {
    order: -1;
    max-width: min(520px, 100%);
    margin-inline: auto;
    padding-inline: 4px;
  }

  .hero-mini-a {
    right: max(8px, 2vw);
    top: max(12px, 3vw);
    max-width: min(228px, 88%);
    padding: 10px 12px;
  }

  .route-selector-chip {
    margin-left: 0;
  }
}

@media (min-width: 1051px) {
  .site-header .nav {
    display: flex;
    flex: 1 1 auto;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 6px 10px;
    font-size: 0.84rem;
    min-width: 0;
  }

  .site-header .menu-btn {
    display: none;
    margin-left: 0;
  }
}

@media (min-width: 1280px) {
  .site-header-proof {
    display: block;
    padding-left: 14px;
    border-left: 1px solid rgba(63, 211, 198, 0.2);
  }
}

@media (max-width: 1050px) {
  .menu-btn {
    display: block;
  }

  .site-header-proof {
    display: none !important;
  }

  .nav {
    display: none;
    position: absolute;
    top: calc(var(--header-h) + 10px);
    left: 16px;
    right: 16px;
    flex-direction: column;
    align-items: stretch;
    gap: 7px;
    padding: 18px 14px 16px;
    border-radius: 22px;
    border: 1px solid rgba(242, 178, 26, 0.32);
    background:
      linear-gradient(168deg, rgba(6, 10, 22, 0.97) 0%, rgba(11, 29, 58, 0.95) 54%, rgba(18, 12, 36, 0.92) 100%);
    box-shadow:
      0 28px 56px rgba(0, 0, 0, 0.55),
      0 0 0 1px rgba(255, 106, 77, 0.12),
      0 0 40px rgba(20, 184, 166, 0.1);
    backdrop-filter: blur(18px);
    z-index: 100;
    overflow: hidden;
  }

  .nav::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--turquoise), var(--coral), var(--pink), var(--orange), var(--gold));
    opacity: 0.95;
    pointer-events: none;
  }

  .nav.nav-open {
    display: flex;
  }

  .nav a {
    border: 1px solid rgba(255, 246, 230, 0.12);
    padding: 12px 14px;
    border-radius: 14px;
    background: rgba(255, 246, 230, 0.05);
    color: rgba(255, 246, 230, 0.94);
    font-weight: 760;
  }

  .nav a:hover {
    color: var(--cream);
    border-color: rgba(242, 178, 26, 0.42);
    background: rgba(255, 246, 230, 0.1);
  }

  .nav a.nav-cta {
    margin-top: 4px;
    border: none;
    background: linear-gradient(135deg, var(--orange), var(--gold)) !important;
    color: var(--navy) !important;
    box-shadow: 0 10px 26px rgba(255, 139, 31, 0.38);
    font-weight: 850;
  }

  .nav a.nav-cta:hover {
    transform: translateY(-1px);
    box-shadow: 0 12px 30px rgba(255, 139, 31, 0.45);
  }
}

@media (max-width: 580px) {
  .site-header {
    padding: max(8px, env(safe-area-inset-top, 0px)) 12px 8px;
    gap: 8px;
  }

  .site-header .brand strong {
    font-size: 0.95rem;
  }

  .site-header .brand small {
    font-size: 0.69rem;
  }

  .site-header .brand-icon {
    width: 42px;
    height: 42px;
  }

  .brand strong {
    font-size: 0.95rem;
  }

  .brand small {
    font-size: 0.69rem;
  }

  .brand-icon {
    width: 46px;
    height: 46px;
  }

  .hero-image {
    min-height: 320px;
  }

  .page-image,
  .image-card {
    min-height: 260px;
  }

  .quick-card,
  .card {
    padding: 17px;
  }

  .section-ask-premium {
    padding: 42px 18px 40px;
  }
}

/* ----- Page scoped: AI business services (/business-services.html) -----
   Scoped under .page-business-services (.ai-services-page on body mirrors intent; all rules use .page-business-services.)
*/

.page-business-services {
  overflow-x: clip;
}

.page-business-services main > .section {
  padding-left: clamp(16px, 4vw, 24px);
  padding-right: clamp(16px, 4vw, 24px);
}

.page-business-services main > .section > .routes-band-inner,
.page-business-services .ai-bs-final-shell {
  max-width: 1160px;
}

.page-business-services main > .section.ai-bs-sec-major {
  padding-top: var(--biz-sec-pad, clamp(56px, 7vw, 72px));
  padding-bottom: var(--biz-sec-pad, clamp(56px, 7vw, 72px));
}

.page-business-services main > .section.ai-bs-sec-compact {
  padding-top: var(--biz-sec-pad-compact, clamp(40px, 5vw, 48px));
  padding-bottom: var(--biz-sec-pad-compact, clamp(40px, 5vw, 48px));
}

.page-business-services main > .section.ai-bs-section--capabilities {
  background:
    radial-gradient(ellipse 70% 55% at 18% 22%, rgba(20, 184, 166, 0.14), transparent 52%),
    radial-gradient(circle at 88% 12%, rgba(255, 92, 168, 0.09), transparent 40%),
    radial-gradient(circle at 50% 100%, rgba(242, 178, 26, 0.06), transparent 45%),
    linear-gradient(168deg, #050d1a 0%, #0a1830 48%, #060c18 100%);
  border-block: 1px solid rgba(255, 246, 230, 0.07);
}


.page-business-services main > .section.ai-bs-owner-dark {
  border-block: 1px solid rgba(255, 246, 230, 0.08);
  background:
    linear-gradient(168deg, rgba(5, 8, 18, 0.82) 0%, rgba(5, 10, 22, 0.72) 50%, rgba(5, 10, 22, 0.85) 100%),
    radial-gradient(ellipse 85% 55% at 20% 0%, rgba(242, 178, 26, 0.08), transparent 48%),
    radial-gradient(circle at 96% 92%, rgba(20, 184, 166, 0.09), transparent 40%),
    url("assets/futuristic_command_room_with_city_view.png");
  background-size: cover;
  background-position: center;
}

/* --- Business services hero: full-width banner (scoped) --- */
.page-business-services .ai-bs-hero.hero-fiesta-dark {
  isolation: isolate;
  position: relative;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  overflow-x: clip;
  overflow-y: visible;
  background-color: #071022;
  background-image:
    linear-gradient(90deg, rgba(5, 10, 24, 0.62) 0%, rgba(5, 10, 24, 0.38) 42%, rgba(5, 10, 24, 0.14) 68%, rgba(5, 10, 24, 0.04) 86%, transparent 100%),
    url("assets/the-ai-plug-hero-background-v2.png");
  background-repeat: no-repeat;
  background-position: 0 0, center;
  background-size: cover, cover;
}

.page-business-services .ai-bs-hero-routing {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  opacity: 0.55;
  background:
    repeating-linear-gradient(
      105deg,
      transparent 0,
      transparent 38px,
      rgba(20, 184, 166, 0.07) 38px,
      rgba(20, 184, 166, 0.07) 39px
    ),
    repeating-linear-gradient(
      -18deg,
      transparent 0,
      transparent 120px,
      rgba(242, 178, 26, 0.06) 120px,
      rgba(242, 178, 26, 0.07) 121px
    ),
    radial-gradient(ellipse 90% 70% at 78% 45%, rgba(255, 92, 168, 0.08), transparent 55%);
  mix-blend-mode: screen;
}

@media (max-width: 767px) {
  .page-business-services .ai-bs-hero.hero-fiesta-dark {
    min-height: 620px;
    max-height: none;
  }
}

@media (min-width: 768px) {
  .page-business-services .ai-bs-hero.hero-fiesta-dark {
    min-height: 620px;
    max-height: 820px;
  }
}

@media (min-width: 1024px) {
  .page-business-services .ai-bs-hero.hero-fiesta-dark {
    min-height: 680px;
    max-height: 820px;
  }
}

/* Omit default fiesta rainbow footer bar — custom accent handles finish */
.page-business-services .ai-bs-hero.hero-fiesta-dark::before {
  display: none;
}

.page-business-services .secondary-hero.hero-fiesta-dark.ai-bs-hero::after {
  pointer-events: none;
  z-index: 1;
  background: linear-gradient(180deg, transparent 64%, rgba(2, 6, 14, 0.2) 100%);
}

.page-business-services .ai-bs-hero .hero-fiesta-inner.hero-inner-band.ai-bs-hero-band {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  z-index: 3;
  min-height: 0;
  width: 100%;
  max-width: min(1320px, 100%);
  margin-inline: auto;
  box-sizing: border-box;
  padding: clamp(20px, 4vw, 44px) clamp(16px, 4vw, 48px);
}

.page-business-services .ai-bs-hero-shell {
  width: 100%;
}

.page-business-services .ai-bs-hero-shell.hero-inner-grid {
  align-items: center;
}

/* Keep hero copy full-width when the side visual is hidden (830–899px gap) */
@media (max-width: 899px) {
  .page-business-services .ai-bs-hero-shell.hero-inner-grid,
  .page-business-services .ai-bs-hero-shell.hero-inner-grid.secondary-hero-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .page-business-services .ai-bs-hero-body {
    max-width: none;
    width: 100%;
  }
}

.page-business-services .ai-bs-hero-visual {
  display: none;
}

@media (min-width: 900px) {
  .page-business-services .ai-bs-hero-shell.hero-inner-grid.secondary-hero-grid {
    grid-template-columns: minmax(0, 1.08fr) minmax(280px, 0.92fr);
    gap: clamp(20px, 3.5vw, 44px);
  }

  .page-business-services .ai-bs-hero-visual {
    display: block;
    align-self: stretch;
    min-height: 0;
  }

  .page-business-services .ai-bs-hero-visual .hero-visual-panel {
    min-height: clamp(280px, 36vw, 420px);
  }
}

.page-business-services .ai-bs-hero-body {
  position: relative;
  z-index: 3;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  max-width: 720px;
  gap: clamp(14px, 2vw, 18px);
}

@media (min-width: 900px) {
  .page-business-services .ai-bs-hero-body {
    max-width: none;
  }
}

.page-business-services .ai-bs-hero-accent {
  width: 100%;
  max-width: 100%;
  height: 3px;
  flex-shrink: 0;
  margin: 0 0 clamp(12px, 2vw, 18px);
  border: none;
  border-radius: 2px;
  transform: none;
  left: auto;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(242, 178, 26, 0.85) 12%,
    rgba(255, 139, 31, 0.9) 30%,
    rgba(255, 106, 77, 0.88) 48%,
    rgba(255, 92, 168, 0.55) 58%,
    rgba(20, 184, 166, 0.92) 78%,
    rgba(242, 178, 26, 0.35) 92%,
    transparent 100%
  );
  box-shadow:
    0 0 18px rgba(242, 178, 26, 0.2),
    0 0 28px rgba(20, 184, 166, 0.1),
    0 0 1px rgba(255, 246, 230, 0.35);
}

.page-business-services .ai-bs-hero .hero-title {
  max-width: none;
  width: 100%;
  font-size: clamp(2rem, 3.85vw + 0.85rem, 3.55rem);
  line-height: 1.06;
  letter-spacing: -0.038em;
  font-weight: 860;
  color: #fff8eb;
  text-shadow: 0 2px 36px rgba(0, 0, 0, 0.35);
}

.page-business-services .ai-hero-eyebrow {
  letter-spacing: 0.14em;
  text-transform: uppercase;
  font-weight: 800;
  font-size: clamp(0.68rem, 0.35vw + 0.62rem, 0.76rem);
  color: rgba(255, 230, 200, 0.95);
}

.page-business-services .ai-hero-lead {
  margin: 0;
  max-width: 100%;
  font-size: clamp(0.98rem, 0.35vw + 0.88rem, 1.08rem);
  line-height: 1.67;
  color: rgba(255, 246, 230, 0.9);
}

.page-business-services .ai-hero-proof-line {
  margin: 0;
  max-width: 100%;
  font-size: clamp(0.94rem, 0.3vw + 0.85rem, 1.03rem);
  line-height: 1.63;
  color: rgba(255, 246, 230, 0.82);
}

.page-business-services .ai-hero-chips.route-chip-row-hero {
  align-self: stretch;
  margin-top: 0;
  padding-top: clamp(12px, 2vw, 18px);
  border-top: none;
  column-gap: 10px;
  row-gap: 9px;
}

@media (max-width: 520px) {
  .page-business-services .ai-hero-chips--tight.route-chip-row-hero {
    column-gap: 8px;
    row-gap: 7px;
  }

  .page-business-services .ai-hero-chips--tight .route-chip {
    padding: 6px 10px;
    font-size: 0.72rem;
    letter-spacing: 0.04em;
  }
}

.page-business-services .ai-bs-hero-cta.hero-cta-row {
  margin-top: clamp(8px, 1.8vw, 14px);
  margin-bottom: 0;
  flex-wrap: wrap;
  gap: 12px 14px;
  align-items: center;
}

.page-business-services .ai-bs-hero-cta .btn {
  min-height: 48px;
}

.page-business-services .ai-bs-hero-cta .btn-primary,
.page-business-services .ai-bs-final-actions .btn-primary {
  background: linear-gradient(135deg, #f2b21a 0%, #ff8b1f 55%, #ff6f31 100%);
  border: 1px solid rgba(255, 210, 130, 0.7);
  color: #1a2338;
  box-shadow: 0 12px 26px rgba(255, 139, 31, 0.34);
}

.page-business-services .ai-bs-hero-cta .btn-secondary {
  background: rgba(4, 12, 26, 0.45);
  color: rgba(255, 248, 235, 0.96);
  border: 1px solid rgba(255, 246, 230, 0.28);
  box-shadow:
    0 10px 28px rgba(0, 0, 0, 0.32),
    inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

.page-business-services .ai-bs-hero-cta .btn-secondary:hover {
  border-color: rgba(20, 184, 166, 0.45);
  color: rgba(255, 250, 240, 0.99);
  background: rgba(255, 246, 230, 0.08);
}

.page-business-services .ai-bs-final-actions .btn-secondary,
.page-business-services .ai-bs-final-actions .hero-secondary-btn {
  background: rgba(4, 12, 26, 0.45);
  color: rgba(255, 248, 235, 0.96);
  border: 1px solid rgba(255, 246, 230, 0.28);
  box-shadow:
    0 10px 28px rgba(0, 0, 0, 0.32),
    inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

.page-business-services .ai-bs-final-actions .btn-secondary:hover,
.page-business-services .ai-bs-final-actions .hero-secondary-btn:hover {
  border-color: rgba(20, 184, 166, 0.45);
  color: rgba(255, 250, 240, 0.99);
  background: rgba(255, 246, 230, 0.08);
}

@media (max-width: 520px) {
  .page-business-services .ai-bs-hero-cta.hero-cta-row .btn {
    width: 100%;
    justify-content: center;
  }
}

/* ----- Home: cinematic hero (Business Services benchmark) ----- */
.page-home .home-hero--cinematic.hero-fiesta-dark {
  isolation: isolate;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  overflow-x: clip;
  overflow-y: visible;
  background-color: #071022;
  background-image:
    linear-gradient(90deg, rgba(5, 10, 24, 0.52) 0%, rgba(5, 10, 24, 0.26) 36%, rgba(5, 10, 24, 0.1) 58%, rgba(5, 10, 24, 0.03) 78%, transparent 100%),
    url("assets/twilight_riverwalk_with_city_skyline.png");
  background-repeat: no-repeat;
  background-position: 0 0, center;
  background-size: cover, cover;
}

.page-home .home-hero--cinematic.hero-fiesta-dark::before {
  display: none;
}

.page-home .secondary-hero.hero-fiesta-dark.home-hero--cinematic::after {
  pointer-events: none;
  z-index: 1;
  background: linear-gradient(180deg, transparent 64%, rgba(2, 6, 14, 0.22) 100%);
}

.page-home .home-hero--cinematic .hero-fiesta-inner.hero-inner-band {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: min(1320px, 100%);
  margin-inline: auto;
  box-sizing: border-box;
  padding: clamp(20px, 4vw, 44px) clamp(16px, 4vw, 48px);
}

.page-home .home-hero-shell {
  width: 100%;
}

.page-home .home-hero-body {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  max-width: 720px;
  gap: clamp(14px, 2vw, 18px);
}

.page-home .home-hero-accent {
  width: 100%;
  max-width: 100%;
  height: 3px;
  flex-shrink: 0;
  margin: 0 0 clamp(12px, 2vw, 18px);
  border: none;
  border-radius: 2px;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(242, 178, 26, 0.85) 12%,
    rgba(255, 139, 31, 0.9) 30%,
    rgba(255, 106, 77, 0.88) 48%,
    rgba(255, 92, 168, 0.55) 58%,
    rgba(20, 184, 166, 0.92) 78%,
    rgba(242, 178, 26, 0.35) 92%,
    transparent 100%
  );
  box-shadow:
    0 0 18px rgba(242, 178, 26, 0.2),
    0 0 28px rgba(20, 184, 166, 0.1),
    0 0 1px rgba(255, 246, 230, 0.35);
}

.page-home .home-hero--cinematic .hero-title {
  max-width: none;
  width: 100%;
  font-size: clamp(2rem, 3.85vw + 0.85rem, 3.55rem);
  line-height: 1.06;
  letter-spacing: -0.038em;
  font-weight: 860;
  color: #fff8eb;
  text-shadow: 0 2px 36px rgba(0, 0, 0, 0.35);
}

.page-home .home-hero--cinematic .hero-text-on-dark {
  font-size: clamp(0.98rem, 0.35vw + 0.88rem, 1.08rem);
  line-height: 1.67;
  color: rgba(255, 246, 230, 0.9);
}

.page-home .home-hero-lede {
  max-width: 34rem;
  letter-spacing: normal;
  word-spacing: normal;
  text-align: left;
  text-wrap: pretty;
}

.page-home .home-hero-chips.route-chip-row-hero {
  align-self: stretch;
  padding-top: clamp(12px, 2vw, 18px);
  border-top: none;
  column-gap: 10px;
  row-gap: 9px;
}

.page-home .home-hero-chips .route-chip {
  border-color: rgba(255, 246, 230, 0.22);
}

.page-home .home-hero-cta.hero-cta-row {
  margin-top: clamp(8px, 1.8vw, 14px);
  flex-wrap: wrap;
  gap: 12px 14px;
}

.page-home .home-hero--cinematic .btn-primary {
  background: linear-gradient(135deg, #f2b21a 0%, #ff8b1f 55%, #ff6f31 100%);
  border: 1px solid rgba(255, 210, 130, 0.7);
  color: #1a2338;
  box-shadow: 0 12px 26px rgba(255, 139, 31, 0.34);
}

.page-home .home-hero--cinematic .btn-secondary-hero,
.page-home .home-hero--cinematic .hero-secondary-btn {
  background: rgba(4, 12, 26, 0.45);
  color: rgba(255, 248, 235, 0.96);
  border: 1px solid rgba(255, 246, 230, 0.28);
}

@media (max-width: 767px) {
  .page-home .home-hero--cinematic.hero-fiesta-dark {
    min-height: 640px;
    max-height: none;
  }
}

@media (min-width: 768px) {
  .page-home .home-hero--cinematic.hero-fiesta-dark {
    min-height: 560px;
    max-height: 780px;
  }
}

@media (min-width: 1024px) {
  .page-home .home-hero--cinematic.hero-fiesta-dark {
    min-height: 600px;
    max-height: 820px;
  }
}

@media (max-width: 520px) {
  .page-home .home-hero-cta.hero-cta-row .btn {
    width: 100%;
    justify-content: center;
  }

  .page-home .home-hero--cinematic .hero-text-on-dark.home-hero-lede {
    font-size: clamp(0.92rem, 0.28vw + 0.86rem, 1rem);
    line-height: 1.58;
  }

  .page-home .home-hero-body {
    gap: clamp(10px, 1.6vw, 14px);
  }

  .page-home .home-hero--cinematic .hero-proof-row {
    gap: 8px 12px;
  }
}

/* Business services: thesis band + system pillar sections */
.page-business-services .ai-bs-thesis-band {
  margin-top: 0;
  background:
    radial-gradient(ellipse 90% 80% at 20% 0%, rgba(20, 184, 166, 0.14), transparent 45%),
    linear-gradient(180deg, #040a14 0%, #071222 100%);
  border-block: 1px solid rgba(255, 246, 230, 0.08);
}

.page-business-services .ai-bs-thesis-lede {
  margin: 0 auto;
  max-width: 52rem;
  text-align: center;
  font-size: clamp(1.02rem, 0.45vw + 0.92rem, 1.16rem);
  line-height: 1.65;
  font-weight: 600;
  color: rgba(255, 246, 230, 0.92);
}

.page-business-services .ai-bs-pillar-section {
  border-block: 1px solid rgba(255, 246, 230, 0.06);
}

.page-business-services .ai-bs-pillar-section--operating {
  background:
    linear-gradient(120deg, rgba(5, 10, 22, 0.92) 0%, rgba(5, 10, 22, 0.78) 45%, rgba(6, 14, 28, 0.55) 100%),
    url("assets/futuristic_tech_workspace_with_glowing_ui.png");
  background-size: cover;
  background-position: center;
}

.page-business-services .ai-bs-pillar-grid {
  display: grid;
  gap: clamp(14px, 2vw, 18px);
  grid-template-columns: 1fr;
  margin-top: clamp(18px, 2.5vw, 26px);
}

@media (min-width: 640px) {
  .page-business-services .ai-bs-pillar-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) {
  .page-business-services .ai-bs-pillar-grid--3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .page-business-services .ai-bs-pillar-grid--4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1200px) {
  .page-business-services .ai-bs-pillar-grid--4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.page-business-services .ai-bs-pillar-card {
  border-radius: calc(var(--radius) + 4px);
  padding: clamp(16px, 2vw, 20px);
  background: rgba(255, 251, 242, 0.96);
  border: 1px solid rgba(11, 29, 58, 0.1);
  box-shadow: 0 14px 36px rgba(2, 6, 14, 0.28);
  color: var(--navy);
}

.page-business-services .ai-bs-pillar-card h3 {
  margin: 0 0 8px;
  font-size: 1.05rem;
  letter-spacing: -0.02em;
  font-weight: 900;
  color: rgba(11, 29, 58, 0.98);
}

.page-business-services .ai-bs-pillar-card p {
  margin: 0;
  font-size: 0.92rem;
  line-height: 1.58;
  color: var(--slate);
}

.page-business-services .ai-bs-campaign-connect-card {
  margin-top: clamp(20px, 3vw, 28px);
}

.page-business-services .ai-bs-campaign-connect-card p + p {
  margin-top: 12px;
}

.page-business-services .ai-bs-adaptation-card {
  margin-top: clamp(20px, 3vw, 28px);
  border-color: rgba(242, 178, 26, 0.28);
  background:
    linear-gradient(145deg, rgba(255, 251, 242, 0.08) 0%, rgba(5, 13, 26, 0.42) 100%),
    rgba(255, 251, 242, 0.04);
}

.page-business-services .dark-showcase .ai-bs-adaptation-card,
.page-business-services .ai-bs-adaptation-card--on-dark {
  border-color: rgba(242, 178, 26, 0.32);
  background:
    linear-gradient(145deg, rgba(242, 178, 26, 0.1) 0%, rgba(5, 13, 26, 0.55) 100%),
    rgba(255, 251, 242, 0.05);
  box-shadow: 0 16px 40px rgba(2, 6, 14, 0.35);
}

.page-business-services .ai-bs-adaptation-card h3 {
  color: rgba(255, 251, 242, 0.98);
}

.page-business-services .dark-showcase .ai-bs-adaptation-card p,
.page-business-services .ai-bs-adaptation-card--on-dark p {
  color: rgba(255, 246, 230, 0.88);
}

.page-business-services .section-cream .ai-bs-adaptation-card {
  background: rgba(255, 251, 242, 0.98);
  border-color: rgba(11, 29, 58, 0.12);
}

.page-business-services .section-cream .ai-bs-adaptation-card h3 {
  color: rgba(11, 29, 58, 0.98);
}

.page-business-services .section-cream .ai-bs-adaptation-card p {
  color: var(--slate);
}

.page-business-services .ai-bs-adaptation-card p + p {
  margin-top: 12px;
}

.page-ask .ask-proof-adaptation-note {
  margin-top: 0.75rem;
  font-size: 0.95rem;
  opacity: 0.92;
}

.page-business-services .ai-bs-path-card {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.page-business-services .ai-bs-path-card .ai-bs-path-cta {
  margin-top: auto;
  align-self: flex-start;
  width: 100%;
  text-align: center;
}

.page-business-services .business-operator-diagnostic-note {
  margin: 0;
  padding: 0;
  font-size: clamp(0.72rem, 2.15vw, 0.82rem);
  line-height: 1.45;
  font-weight: 600;
  color: rgba(255, 246, 230, 0.78);
}

.page-business-services .business-operator-request-helper {
  margin: 0;
  font-size: clamp(0.82rem, 0.2vw + 0.78rem, 0.92rem);
  line-height: 1.5;
  color: rgba(255, 246, 230, 0.82);
  max-width: 42rem;
}

.page-business-services .ai-bs-pillar-lede {
  max-width: 48rem;
}

/* System flow strip (under hero) */
.page-business-services .ai-bs-system-flow-strip {
  margin-top: 0;
  background:
    radial-gradient(ellipse 100% 120% at 50% 0%, rgba(242, 178, 26, 0.12), transparent 42%),
    linear-gradient(180deg, #040a18 0%, #0a1a32 48%, #071018 100%);
  border-block: 1px solid rgba(255, 246, 230, 0.08);
}

.page-business-services .ai-bs-flow-strip-inner {
  width: 100%;
  max-width: min(1180px, 100%);
  margin-inline: auto;
  overflow-x: visible;
  padding-inline: clamp(8px, 2.5vw, 16px);
  padding-bottom: 2px;
  box-sizing: border-box;
}

.page-business-services .ai-bs-flow-ribbon {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 124px), 1fr));
  gap: 10px 12px;
  width: 100%;
  max-width: 100%;
  align-items: stretch;
  justify-items: stretch;
}

.page-business-services .ai-bs-flow-ribbon-item {
  min-width: 0;
  display: flex;
}

.page-business-services .ai-bs-fr-i {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 100%;
  padding: 12px 14px;
  border-radius: 14px;
  font-size: clamp(0.8rem, 0.18vw + 0.74rem, 0.9rem);
  font-weight: 800;
  line-height: 1.32;
  text-align: center;
  hyphens: none;
  word-break: normal;
  color: rgba(255, 246, 230, 0.96);
  background: rgba(4, 14, 30, 0.45);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(20, 184, 166, 0.32);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.08),
    0 14px 34px rgba(0, 0, 0, 0.28);
}

@media (max-width: 420px) {
  .page-business-services .ai-bs-flow-strip-inner {
    overflow-x: auto;
    overflow-y: visible;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    scrollbar-color: rgba(242, 178, 26, 0.55) transparent;
    padding-inline: clamp(14px, 5vw, 20px);
  }

  .page-business-services .ai-bs-flow-ribbon {
    display: flex;
    flex-wrap: nowrap;
    gap: 8px;
    width: max-content;
    max-width: none;
    padding-bottom: 2px;
  }

  .page-business-services .ai-bs-flow-ribbon-item {
    flex: 0 0 auto;
  }

  .page-business-services .ai-bs-fr-i {
    min-width: 124px;
    max-width: 180px;
  }
}

/* Nav active (this page only) */
.page-business-services .nav a.nav-cta[aria-current="page"] {
  background: linear-gradient(135deg, rgba(242, 178, 26, 0.42), rgba(20, 184, 166, 0.28)) !important;
  border: 1px solid rgba(242, 178, 26, 0.55) !important;
  box-shadow:
    0 0 0 1px rgba(255, 246, 230, 0.2),
    0 8px 22px rgba(0, 0, 0, 0.22) !important;
  color: var(--navy) !important;
}

/* --- Section heads --- */
.page-business-services .ai-band-head {
  max-width: 48rem;
  margin-bottom: 0;
}

.page-business-services .ai-band-head--cream {
  text-align: left;
}

.page-business-services .ai-band-head .eyebrow {
  margin-bottom: var(--biz-space-xs, clamp(6px, 1.2vw, 8px));
}

.page-business-services .ai-strategic-title {
  font-size: clamp(1.72rem, 2.8vw + 0.8rem, 2.5rem);
  line-height: 1.12;
  letter-spacing: -0.03em;
  margin-bottom: var(--biz-space-sm, clamp(10px, 1.6vw, 14px));
}

.page-business-services .ai-band-head .section-text {
  margin-bottom: 0;
  max-width: 44rem;
}

.page-business-services .section-cream .ai-strategic-title {
  color: var(--navy);
}

.page-business-services .ai-band-head--dark .ai-strategic-title,
.page-business-services .dark-showcase .ai-band-head--dark .ai-strategic-title {
  color: var(--cream);
}

.page-business-services .section-navy-routes .section-text.section-text-light,
.page-business-services .dark-showcase .section-text.section-text-light {
  color: rgba(255, 246, 230, 0.88);
}

.page-business-services .ai-bs-section--navy {
  background:
    radial-gradient(ellipse 80% 50% at 10% 0%, rgba(255, 92, 168, 0.07), transparent 50%),
    radial-gradient(circle at 90% 80%, rgba(20, 184, 166, 0.08), transparent 45%),
    linear-gradient(168deg, #050c1a 0%, #0b1d3a 46%, #070f1f 100%);
  border-block: 1px solid rgba(255, 246, 230, 0.06);
}

/* --- Business Operator prep (coming next) --- */
.page-business-services .ai-bs-operator-prep .ai-bs-operator-qualify {
  margin-top: clamp(10px, 1.8vw, 18px);
}

.page-business-services .ai-bs-operator-qualify-label {
  font-weight: 760;
  color: var(--navy);
  margin: 0 0 0.65rem;
  font-size: clamp(0.98rem, 0.35vw + 0.88rem, 1.05rem);
}

.page-business-services .ai-bs-operator-list {
  margin: 0 0 clamp(18px, 2.5vw, 26px);
  padding-left: 1.28rem;
  max-width: 44rem;
  color: rgba(18, 28, 52, 0.92);
  line-height: 1.58;
  font-size: clamp(0.94rem, 0.25vw + 0.88rem, 1.02rem);
}

.page-business-services .ai-bs-operator-list li {
  margin-bottom: 0.4rem;
}

.page-business-services .ai-bs-operator-list li:last-child {
  margin-bottom: 0;
}

.page-business-services .ai-bs-operator-ctas {
  flex-wrap: wrap;
  gap: 12px;
}

/* --- Business Operator v1 (live module; reuses transport concierge chrome) --- */
.page-business-services #business-operator,
.page-business-services #proof-band,
.page-business-services #offers-heading,
.page-business-services #project-request {
  scroll-margin-top: 96px;
}

.page-business-services .transport-concierge-main .business-operator-project-intro {
  margin-top: 14px;
}

.page-business-services .transport-concierge-main .business-operator-form-note {
  margin: 8px 0 0;
  font-size: 0.85rem;
  line-height: 1.45;
  color: rgba(11, 29, 58, 0.62);
}

.page-business-services .transport-concierge-main .business-operator-check-fieldset {
  border: 0;
  padding: 0;
  margin: 0;
}

.page-business-services .transport-concierge-main .business-operator-check-legend {
  font-size: 0.78rem;
  font-weight: 750;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  margin-bottom: 10px;
  color: rgba(11, 29, 58, 0.82);
}

.page-business-services .transport-concierge-main .business-operator-check {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 0.9rem;
  font-weight: 650;
  margin-bottom: 8px;
  color: rgba(11, 29, 58, 0.92);
}

.page-business-services .transport-concierge-main .business-operator-check:last-of-type {
  margin-bottom: 0;
}

.page-business-services .transport-concierge-main .business-operator-check input {
  width: 1.05rem;
  height: 1.05rem;
  accent-color: #14b8a6;
}

.page-business-services .transport-concierge-main .business-operator-context-block {
  padding: clamp(14px, 2.5vw, 18px) clamp(16px, 3vw, 20px);
  border-radius: 14px;
  border: 1px solid rgba(11, 29, 58, 0.12);
  background: linear-gradient(165deg, rgba(255, 255, 255, 0.94), rgba(248, 252, 251, 0.98));
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.65) inset;
}

.page-business-services .transport-concierge-main .business-operator-context-title {
  margin: 0 0 12px;
  font-size: 0.78rem;
  font-weight: 750;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(11, 29, 58, 0.82);
}

.page-business-services .transport-concierge-main .business-operator-context-row {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin: 0;
  cursor: pointer;
}

.page-business-services .transport-concierge-main .business-operator-context-row input[type="checkbox"] {
  width: 1.12rem;
  height: 1.12rem;
  margin-top: 3px;
  flex-shrink: 0;
  accent-color: #14b8a6;
}

.page-business-services .transport-concierge-main .business-operator-context-row__text {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}

.page-business-services .transport-concierge-main .business-operator-context-row__label {
  font-size: 0.94rem;
  font-weight: 680;
  line-height: 1.35;
  color: rgba(11, 29, 58, 0.94);
}

.page-business-services .transport-concierge-main .business-operator-context-row__helper {
  font-size: 0.84rem;
  line-height: 1.5;
  font-weight: 520;
  color: rgba(11, 29, 58, 0.58);
}

@media (max-width: 520px) {
  .page-business-services .transport-concierge-main .business-operator-context-block {
    padding: 14px 14px 16px;
  }
}

/* --- Problem / friction --- */
.page-business-services .ai-friction-sub {
  max-width: 46rem !important;
  margin-bottom: 0 !important;
  font-size: clamp(0.97rem, 0.4vw + 0.85rem, 1.05rem);
  line-height: 1.62;
}

.page-business-services .ai-friction-section .routes-band-inner {
  gap: clamp(18px, 2.8vw, 30px);
}

.page-business-services .ai-problem-grid {
  display: grid;
  gap: clamp(12px, 1.75vw, 16px);
  grid-template-columns: 1fr;
  align-items: stretch;
}

@media (min-width: 720px) {
  .page-business-services .ai-problem-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: 1fr;
  }
}

@media (min-width: 960px) {
  .page-business-services .ai-problem-grid--pain-six {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .page-business-services .ai-bs-sec-compact-mobile.ai-bs-sec-major {
    padding-top: clamp(26px, 7vw, 38px) !important;
    padding-bottom: clamp(26px, 7vw, 38px) !important;
  }

  .page-business-services .ai-bs-sec-compact-mobile .ai-friction-sub {
    margin-bottom: 0.35rem !important;
  }

  .page-business-services .ai-friction-section.ai-bs-sec-compact-mobile .ai-bs-leak-step {
    padding: clamp(14px, 3.5vw, 18px);
  }

  .page-business-services .ai-friction-section.ai-bs-sec-compact-mobile .ai-bs-reality-punch {
    padding: clamp(14px, 3.5vw, 18px);
  }

  .page-business-services .ai-offers--compact-mobile .ai-offer-card {
    padding: clamp(18px, 4vw, 22px);
  }

  .page-business-services .ai-offers--compact-mobile .ai-offer-list li {
    font-size: 0.92rem;
    line-height: 1.45;
  }

  .page-business-services .ai-offer-head {
    gap: 6px;
  }

  .page-business-services .ai-offer-num {
    width: 1.95rem;
    height: 1.95rem;
    font-size: 0.92rem;
    margin-top: 0;
  }

  .page-business-services .ai-offer-best {
    font-size: 0.86rem;
    line-height: 1.48;
  }

  .page-business-services .ai-bs-flagship-card {
    gap: 8px;
    padding: clamp(16px, 3.5vw, 18px);
    padding-top: clamp(18px, 3.8vw, 20px);
  }

  .page-business-services .ai-bs-flagship-thumb {
    margin-bottom: 8px;
  }

  .page-business-services .ai-bs-flagship-num {
    min-width: 2.25rem;
    height: 1.75rem;
    padding: 0 8px;
    font-size: 0.72rem;
  }

  .page-business-services .ai-bs-flagship-head {
    gap: 8px;
  }

  .page-business-services .ai-bs-flagship-title {
    font-size: 1rem;
    line-height: 1.22;
  }

  .page-business-services .business-operator-backup-details summary {
    font-size: 0.74rem;
    padding: 0.4rem 0.55rem;
  }
}

.page-business-services .ai-bs-proof-points--tight {
  gap: 0.35rem 0.75rem;
}

.page-business-services .ai-bs-proof-points--tight li {
  line-height: 1.45;
  font-size: clamp(0.9rem, 0.25vw + 0.82rem, 0.97rem);
}

.page-business-services .transport-concierge-main .transport-route-operator .transport-human-intro,
.page-business-services .transport-concierge-main .transport-route-operator .business-operator-backup-details,
.page-business-services .transport-concierge-main .transport-route-operator .business-operator-intake {
  margin-left: clamp(16px, 2.8vw, 22px);
  margin-right: clamp(16px, 2.8vw, 22px);
}

.page-business-services .transport-concierge-main .transport-route-operator .business-operator-backup-details {
  margin-bottom: clamp(14px, 2.4vw, 18px);
}

.page-business-services .business-operator-backup-details {
  margin-top: 0.5rem;
  padding: 0;
  border: 0;
  background: transparent;
  font-size: 0.78rem;
  line-height: 1.45;
  color: rgba(255, 246, 230, 0.62);
}

.page-business-services .business-operator-backup-details summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 0.45rem 0.6rem;
  border-radius: 8px;
  border: 1px solid rgba(255, 246, 230, 0.1);
  background: rgba(4, 12, 28, 0.22);
  cursor: pointer;
  list-style: none;
  font-weight: 550;
  font-size: 0.76rem;
  letter-spacing: 0.01em;
  color: rgba(255, 248, 235, 0.58);
  transition: border-color 0.18s ease, color 0.18s ease;
}

.page-business-services .business-operator-backup-details summary::-webkit-details-marker {
  display: none;
}

.page-business-services .business-operator-backup-details summary::after {
  content: "";
  flex-shrink: 0;
  width: 0.4rem;
  height: 0.4rem;
  margin-top: -0.15rem;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg);
  opacity: 0.65;
  transition: transform 0.18s ease;
}

.page-business-services .business-operator-backup-details[open] summary {
  border-color: rgba(255, 246, 230, 0.14);
  color: rgba(255, 248, 235, 0.68);
}

.page-business-services .business-operator-backup-details[open] summary::after {
  transform: rotate(-135deg);
  margin-top: 0.1rem;
}

.page-business-services .business-operator-backup-details summary:focus-visible {
  outline: 2px solid rgba(20, 184, 166, 0.55);
  outline-offset: 2px;
}

.page-business-services .business-operator-backup-body {
  padding: 0.45rem 0.1rem 0;
}

.page-business-services .business-operator-backup-note {
  margin: 0 0 0.35rem;
  font-size: 0.74rem;
  line-height: 1.45;
  color: rgba(255, 248, 235, 0.5);
}

.page-business-services .business-operator-backup-link {
  margin: 0;
  font-size: 0.76rem;
}

.page-business-services .business-operator-backup-details a {
  color: rgba(20, 184, 166, 0.78);
  font-weight: 600;
  text-underline-offset: 2px;
}

.page-business-services .business-operator-backup-details a:hover {
  color: rgba(20, 184, 166, 0.95);
}

.page-business-services .ai-friction-section .card.ai-bs-problem-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow-wrap: break-word;
  border-radius: var(--radius);
  overflow: hidden;
  isolation: isolate;
  background:
    radial-gradient(circle at 12% -20%, rgba(20, 184, 166, 0.18), transparent 42%),
    linear-gradient(168deg, rgba(255, 246, 230, 0.09) 0%, rgba(4, 12, 28, 0.62) 100%) !important;
  backdrop-filter: blur(12px);
  border: 1px solid rgba(20, 184, 166, 0.26) !important;
  color: rgba(255, 246, 230, 0.92) !important;
  padding: clamp(20px, 2.5vw, 26px);
  padding-top: clamp(22px, 2.6vw, 28px);
  box-shadow:
    0 22px 50px rgba(0, 0, 0, 0.35),
    inset 0 1px 0 rgba(255, 246, 230, 0.08) !important;
  gap: 11px;
  min-height: 100%;
}

.page-business-services .ai-friction-section.dark-showcase .card.ai-bs-problem-card h3.ai-bs-problem-h,
.page-business-services .ai-friction-section.dark-showcase .card.ai-bs-problem-card p.ai-problem-body {
  color: inherit;
}

.page-business-services .ai-friction-section.dark-showcase .card.ai-bs-problem-card h3.ai-bs-problem-h {
  color: #fff8eb !important;
}

.page-business-services .ai-friction-section.dark-showcase .card.ai-bs-problem-card p.ai-problem-body {
  color: rgba(255, 235, 210, 0.86) !important;
}

.page-business-services .ai-friction-section .card.ai-bs-problem-card::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  right: 0;
  height: 5px;
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
  pointer-events: none;
}

.page-business-services .ai-bs-problem-card--a::before {
  background: linear-gradient(90deg, var(--turquoise), rgba(20, 184, 166, 0.5));
}

.page-business-services .ai-bs-problem-card--b::before {
  background: linear-gradient(90deg, var(--orange), var(--gold));
}

.page-business-services .ai-bs-problem-card--c::before {
  background: linear-gradient(90deg, var(--pink), rgba(255, 92, 168, 0.45));
}

.page-business-services .ai-bs-problem-card--d::before {
  background: linear-gradient(90deg, var(--gold), var(--turquoise));
}

.page-business-services .ai-bs-problem-h {
  position: relative;
  z-index: 2;
  margin: 0 0 10px;
  font-size: clamp(1.02rem, 0.35vw + 0.92rem, 1.12rem);
  font-weight: 880;
  line-height: 1.28;
  color: #fff8eb;
}

.page-business-services .ai-problem-body {
  position: relative;
  z-index: 2;
  margin: 0;
  font-size: 0.93rem;
  line-height: 1.58;
  color: rgba(255, 235, 210, 0.86);
}

.page-business-services .ai-problem-body:last-child {
  margin-top: auto;
}

.page-business-services .ai-problem-term {
  font-weight: 800;
  color: rgba(20, 184, 166, 0.95);
}

/* --- Reality: punch card + leak path --- */
.page-business-services .ai-friction-section .ai-bs-reality-inner {
  display: flex;
  flex-direction: column;
  gap: clamp(16px, 2.4vw, 24px);
}

.page-business-services .ai-friction-section .ai-bs-reality-punch {
  margin: 0;
  padding: clamp(16px, 2vw, 20px) clamp(18px, 2.2vw, 24px);
  border-radius: calc(var(--radius) - 2px);
  border: 1px solid rgba(242, 178, 26, 0.34);
  background:
    radial-gradient(ellipse 80% 120% at 0% 0%, rgba(20, 184, 166, 0.14), transparent 48%),
    linear-gradient(168deg, rgba(4, 12, 28, 0.72) 0%, rgba(4, 12, 28, 0.48) 100%);
  box-shadow:
    0 18px 44px rgba(0, 0, 0, 0.34),
    inset 0 1px 0 rgba(255, 246, 230, 0.08);
}

.page-business-services .ai-friction-section .ai-bs-reality-punch p {
  margin: 0;
  font-size: clamp(0.94rem, 0.22vw + 0.87rem, 1.02rem);
  line-height: 1.58;
  color: rgba(255, 237, 215, 0.92);
}

.page-business-services .ai-friction-section .ai-bs-reality-punch strong {
  color: rgba(255, 246, 230, 0.98);
  font-weight: 900;
}

.page-business-services .ai-bs-reality-layout {
  display: grid;
  gap: clamp(14px, 2vw, 20px);
  align-items: start;
  min-width: 0;
}

@media (min-width: 900px) {
  .page-business-services .ai-bs-reality-layout {
    grid-template-columns: minmax(220px, 0.82fr) minmax(0, 1.18fr);
    gap: clamp(16px, 2.2vw, 22px);
    align-items: stretch;
  }
}

.page-business-services .ai-bs-lead-flow-accent {
  position: relative;
  min-width: 0;
  padding: clamp(16px, 2vw, 20px);
  border-radius: var(--radius);
  border: 1px solid rgba(20, 184, 166, 0.32);
  background:
    radial-gradient(circle at 88% 8%, rgba(242, 178, 26, 0.14), transparent 42%),
    radial-gradient(circle at 8% 92%, rgba(20, 184, 166, 0.16), transparent 44%),
    linear-gradient(168deg, rgba(255, 246, 230, 0.07) 0%, rgba(4, 12, 28, 0.62) 100%);
  box-shadow:
    0 20px 48px rgba(0, 0, 0, 0.32),
    inset 0 1px 0 rgba(255, 246, 230, 0.07);
  overflow: hidden;
}

.page-business-services .ai-bs-lead-flow-accent::before {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 3px;
  background: linear-gradient(
    90deg,
    rgba(20, 184, 166, 0.85) 0%,
    rgba(242, 178, 26, 0.75) 50%,
    rgba(255, 92, 168, 0.55) 100%
  );
  opacity: 0.9;
}

.page-business-services .ai-bs-lead-flow-label {
  margin: 0 0 10px;
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(242, 178, 26, 0.9);
}

.page-business-services .ai-bs-lead-flow-channels {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0 0 12px;
}

.page-business-services .ai-bs-lead-flow-channel {
  display: inline-flex;
  align-items: center;
  padding: 5px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255, 246, 230, 0.14);
  background: rgba(4, 12, 28, 0.38);
  font-size: 0.68rem;
  font-weight: 780;
  letter-spacing: 0.04em;
  color: rgba(255, 235, 210, 0.86);
}

.page-business-services .ai-bs-leak-wrap {
  min-width: 0;
  padding: clamp(12px, 1.8vw, 16px);
  border-radius: var(--radius);
  border: 1px solid rgba(255, 92, 168, 0.24);
  background:
    radial-gradient(ellipse 90% 80% at 0% 0%, rgba(255, 92, 168, 0.1), transparent 50%),
    radial-gradient(ellipse 70% 60% at 100% 100%, rgba(20, 184, 166, 0.08), transparent 45%),
    linear-gradient(168deg, rgba(4, 12, 28, 0.5) 0%, rgba(4, 12, 28, 0.35) 100%);
  box-shadow:
    0 16px 40px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 246, 230, 0.06);
}

.page-business-services .ai-bs-lead-flow-nodes {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
  position: relative;
}

@media (min-width: 520px) {
  .page-business-services .ai-bs-lead-flow-nodes {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 6px 4px;
    align-items: stretch;
  }
}

.page-business-services .ai-bs-lead-flow-node {
  position: relative;
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 9px 10px;
  border-radius: 12px;
  border: 1px solid rgba(255, 246, 230, 0.12);
  background: rgba(4, 12, 28, 0.42);
}

@media (min-width: 520px) {
  .page-business-services .ai-bs-lead-flow-node {
    flex: 1 1 calc(50% - 4px);
  }

  .page-business-services .ai-bs-lead-flow-node:not(:last-child)::after {
    content: "";
    position: absolute;
    right: -6px;
    top: 50%;
    width: 6px;
    height: 2px;
    background: linear-gradient(90deg, rgba(20, 184, 166, 0.5), rgba(242, 178, 26, 0.35));
    transform: translateY(-50%);
    z-index: 1;
  }
}

@media (min-width: 900px) {
  .page-business-services .ai-bs-lead-flow-nodes {
    flex-direction: column;
    gap: 8px;
  }

  .page-business-services .ai-bs-lead-flow-node {
    flex: none;
    width: 100%;
  }

  .page-business-services .ai-bs-lead-flow-node:not(:last-child)::after {
    right: auto;
    left: 0.82rem;
    top: auto;
    bottom: -8px;
    width: 2px;
    height: 8px;
    transform: none;
    background: linear-gradient(180deg, rgba(20, 184, 166, 0.55), rgba(242, 178, 26, 0.3));
    z-index: 0;
  }

  .page-business-services .ai-bs-lead-flow-icon {
    position: relative;
    z-index: 1;
  }
}

.page-business-services .ai-bs-lead-flow-icon {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.65rem;
  height: 1.65rem;
  border-radius: 50%;
  font-size: 0.78rem;
  font-weight: 900;
  color: rgba(11, 29, 58, 0.96);
  background: linear-gradient(135deg, rgba(255, 246, 230, 0.96), rgba(255, 228, 195, 0.9));
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.28);
}

.page-business-services .ai-bs-lead-flow-node--a .ai-bs-lead-flow-icon {
  background: linear-gradient(135deg, rgba(20, 184, 166, 0.9), rgba(20, 184, 166, 0.5));
  color: #03121a;
}

.page-business-services .ai-bs-lead-flow-node--r .ai-bs-lead-flow-icon {
  background: linear-gradient(135deg, rgba(242, 178, 26, 0.95), rgba(255, 139, 31, 0.55));
}

.page-business-services .ai-bs-lead-flow-node--o .ai-bs-lead-flow-icon {
  background: linear-gradient(135deg, rgba(255, 92, 168, 0.82), rgba(255, 92, 168, 0.42));
  color: #fff8eb;
}

.page-business-services .ai-bs-lead-flow-text {
  font-size: clamp(0.78rem, 0.16vw + 0.72rem, 0.86rem);
  font-weight: 780;
  line-height: 1.3;
  color: rgba(255, 246, 230, 0.94);
}

.page-business-services .ai-bs-lead-flow-foot {
  margin: 12px 0 0;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(255, 235, 210, 0.72);
}

.page-business-services .ai-bs-leak-path {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 10px;
  position: relative;
  min-width: 0;
  align-items: stretch;
}

@media (min-width: 480px) {
  .page-business-services .ai-bs-leak-path {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px 12px;
  }
}

@media (min-width: 640px) {
  .page-business-services .ai-bs-leak-path {
    gap: 12px 14px;
  }
}

.page-business-services .ai-bs-leak-step {
  position: relative;
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: auto auto;
  gap: 6px 12px;
  align-items: start;
  height: 100%;
  min-width: 0;
  padding: clamp(14px, 2vw, 18px);
  border-radius: calc(var(--radius) - 2px);
  border: 1px solid rgba(255, 246, 230, 0.12);
  background:
    radial-gradient(circle at 100% 0%, rgba(255, 92, 168, 0.08), transparent 40%),
    linear-gradient(168deg, rgba(255, 246, 230, 0.06) 0%, rgba(4, 12, 28, 0.55) 100%);
  box-shadow:
    0 14px 32px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 246, 230, 0.06);
  overflow-wrap: break-word;
}

.page-business-services .ai-bs-leak-step--a {
  border-color: rgba(20, 184, 166, 0.28);
}

.page-business-services .ai-bs-leak-step--b {
  border-color: rgba(242, 178, 26, 0.3);
}

.page-business-services .ai-bs-leak-step--c {
  border-color: rgba(255, 139, 31, 0.28);
}

.page-business-services .ai-bs-leak-step--d {
  border-color: rgba(255, 92, 168, 0.28);
}

.page-business-services .ai-bs-leak-num {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  font-size: 0.82rem;
  font-weight: 900;
  color: rgba(11, 29, 58, 0.96);
  background: linear-gradient(135deg, rgba(255, 246, 230, 0.96), rgba(255, 228, 195, 0.88));
  box-shadow: 0 6px 14px rgba(0, 0, 0, 0.28);
  position: relative;
  z-index: 1;
}

.page-business-services .ai-bs-leak-step--a .ai-bs-leak-num {
  background: linear-gradient(135deg, rgba(20, 184, 166, 0.88), rgba(20, 184, 166, 0.45));
  color: #03121a;
}

.page-business-services .ai-bs-leak-step--b .ai-bs-leak-num {
  background: linear-gradient(135deg, rgba(242, 178, 26, 0.95), rgba(255, 139, 31, 0.5));
}

.page-business-services .ai-bs-leak-step--c .ai-bs-leak-num {
  background: linear-gradient(135deg, rgba(255, 139, 31, 0.9), rgba(255, 106, 77, 0.5));
}

.page-business-services .ai-bs-leak-step--d .ai-bs-leak-num {
  background: linear-gradient(135deg, rgba(255, 92, 168, 0.82), rgba(255, 92, 168, 0.42));
  color: #fff8eb;
}

.page-business-services .ai-bs-leak-body {
  display: contents;
  min-width: 0;
}

.page-business-services .ai-bs-leak-num {
  grid-row: 1;
  grid-column: 1;
  align-self: center;
}

.page-business-services .ai-bs-leak-h {
  grid-row: 1;
  grid-column: 2;
  align-self: center;
  margin: 0;
  font-size: clamp(0.96rem, 0.2vw + 0.88rem, 1.04rem);
  font-weight: 880;
  line-height: 1.28;
  color: #fff8eb;
}

.page-business-services .ai-bs-leak-p {
  grid-row: 2;
  grid-column: 2;
  margin: 0;
  font-size: clamp(0.88rem, 0.16vw + 0.82rem, 0.93rem);
  line-height: 1.52;
  color: rgba(255, 235, 210, 0.86);
}

@media (max-width: 639px) {
  .page-business-services .ai-friction-section.ai-bs-sec-compact-mobile .ai-bs-leak-step {
    padding-left: clamp(14px, 3.5vw, 18px);
  }
}

/* --- Operating layer workflow --- */
.page-business-services .ai-live-cap-strip {
  padding: clamp(14px, 2vw, 18px) clamp(16px, 2.2vw, 22px);
  border-radius: calc(var(--radius) - 2px);
  background:
    linear-gradient(90deg, rgba(6, 16, 34, 0.94), rgba(22, 10, 36, 0.9));
  border: 1px solid rgba(242, 178, 26, 0.24);
  box-shadow:
    0 16px 44px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 246, 230, 0.06);
}

.page-business-services .ai-live-cap-label {
  margin: 0 0 12px;
  font-size: 0.64rem;
  font-weight: 900;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(242, 178, 26, 0.95);
}

.page-business-services .ai-live-cap-track {
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 8px 6px;
}

.page-business-services .ai-live-cap-step {
  flex: 1 1 auto;
  min-width: min(100%, 120px);
  text-align: center;
}

.page-business-services .ai-live-cap-i {
  display: inline-block;
  padding: 10px 14px;
  border-radius: 12px;
  font-size: 0.86rem;
  font-weight: 820;
  color: rgba(255, 246, 230, 0.98);
  background: rgba(255, 246, 230, 0.07);
  border: 1px solid rgba(20, 184, 166, 0.3);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.page-business-services .ai-live-cap-arrow {
  width: 22px;
  height: 22px;
  flex-shrink: 0;
  background: linear-gradient(135deg, rgba(255, 92, 168, 0.55), rgba(242, 178, 26, 0.6));
  clip-path: polygon(0 35%, 45% 35%, 45% 0, 100% 50%, 45% 100%, 45% 65%, 0 65%);
  opacity: 0.8;
}

@media (max-width: 639px) {
  .page-business-services .ai-live-cap-arrow {
    width: 100%;
    height: 3px;
    clip-path: none;
    border-radius: 99px;
    opacity: 0.45;
    max-width: 48px;
    margin: 4px auto;
  }
}

/* --- Offers --- */
.page-business-services .ai-bs-section--offers {
  background:
    radial-gradient(circle at 30% 10%, rgba(20, 184, 166, 0.08), transparent 48%),
    linear-gradient(175deg, #0a1528 0%, #0b1d3a 40%, #080f1d 100%);
}

.page-business-services .ai-offers-wrap .routes-band-inner {
  gap: clamp(18px, 2.8vw, 30px);
}

.page-business-services .ai-offers-sub {
  max-width: 44rem !important;
  margin-bottom: 0 !important;
}

.page-business-services .ai-offer-lanes {
  display: grid;
  gap: clamp(16px, 2.2vw, 22px);
  grid-template-columns: 1fr;
  align-items: stretch;
}

@media (min-width: 720px) {
  .page-business-services .ai-offer-lanes {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1100px) {
  .page-business-services .ai-offer-lanes {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.page-business-services .ai-offer-card.ai-bs-offer-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow-wrap: normal;
  min-height: 0;
  height: auto;
  padding: clamp(20px, 2.4vw, 26px);
  padding-top: clamp(22px, 2.5vw, 28px);
  border-radius: var(--radius);
  background:
    radial-gradient(circle at 12% -10%, rgba(20, 184, 166, 0.2), transparent 46%),
    linear-gradient(176deg, rgba(255, 246, 230, 0.08) 0%, rgba(4, 12, 28, 0.68) 100%);
  backdrop-filter: blur(14px);
  border: 1px solid rgba(255, 246, 230, 0.12);
  box-shadow:
    0 26px 56px rgba(0, 0, 0, 0.38),
    inset 0 1px 0 rgba(255, 246, 230, 0.08);
  overflow: hidden;
  gap: 0;
}

.page-business-services .ai-offer-card::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  right: 0;
  height: 5px;
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
  opacity: 0.98;
  pointer-events: none;
}

.page-business-services .ai-offer-lane--foundation::before {
  background: linear-gradient(90deg, var(--turquoise), var(--gold));
}

.page-business-services .ai-offer-lane--capture::before {
  background: linear-gradient(90deg, var(--orange), var(--pink));
}

.page-business-services .ai-offer-lane--media::before {
  background: linear-gradient(90deg, var(--turquoise), rgba(255, 107, 74, 0.92));
}

.page-business-services .ai-offer-lane--operations::before {
  background: linear-gradient(90deg, var(--pink), rgba(242, 178, 26, 0.95));
}

.page-business-services .ai-offer-lane--command::before {
  background: linear-gradient(90deg, var(--gold), var(--turquoise));
}

.page-business-services .ai-offer-head {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 4px;
  min-width: 0;
}

.page-business-services .ai-offer-head-top {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.page-business-services .ai-offer-head-top .ai-offer-cat {
  margin: 0;
}

.page-business-services .ai-offer-num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.15rem;
  height: 2.15rem;
  border-radius: 14px;
  flex-shrink: 0;
  margin-top: 2px;
  font-size: 1rem;
  font-weight: 900;
  color: rgba(11, 29, 58, 0.95);
  background: linear-gradient(145deg, rgba(255, 246, 230, 0.98), rgba(255, 228, 195, 0.92));
  border: 1px solid rgba(255, 246, 230, 0.35);
  box-shadow:
    0 8px 22px rgba(0, 0, 0, 0.35),
    inset 0 1px 0 rgba(255, 255, 255, 0.75);
}

.page-business-services .ai-offer-lane--foundation .ai-offer-num {
  background: linear-gradient(135deg, rgba(20, 184, 166, 0.45), rgba(20, 184, 166, 0.15));
  border-color: rgba(20, 184, 166, 0.45);
  color: rgba(11, 29, 58, 0.95);
}

.page-business-services .ai-offer-lane--capture .ai-offer-num {
  background: linear-gradient(135deg, rgba(255, 139, 31, 0.55), rgba(255, 139, 31, 0.2));
  border-color: rgba(255, 139, 31, 0.45);
}

.page-business-services .ai-offer-lane--media .ai-offer-num {
  background: linear-gradient(135deg, rgba(20, 184, 166, 0.42), rgba(255, 107, 74, 0.28));
  border-color: rgba(20, 184, 166, 0.5);
}

.page-business-services .ai-offer-lane--operations .ai-offer-num {
  background: linear-gradient(135deg, rgba(255, 92, 168, 0.42), rgba(255, 92, 168, 0.14));
  border-color: rgba(255, 92, 168, 0.4);
}

.page-business-services .ai-offer-lane--command .ai-offer-num {
  background: linear-gradient(135deg, rgba(242, 178, 26, 0.52), rgba(20, 184, 166, 0.22));
  border-color: rgba(242, 178, 26, 0.55);
}

.page-business-services .ai-offer-lane--media.ai-bs-offer-card {
  border-color: rgba(20, 184, 166, 0.28);
  box-shadow:
    0 26px 56px rgba(0, 0, 0, 0.38),
    inset 0 1px 0 rgba(255, 246, 230, 0.08),
    0 0 0 1px rgba(255, 107, 74, 0.12);
}

.page-business-services .ai-offer-cat {
  margin: 0 0 6px;
  font-size: 0.62rem;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(242, 178, 26, 0.88);
}

.page-business-services .ai-offer-title {
  margin: 0;
  font-size: clamp(1.08rem, 0.42vw + 0.94rem, 1.22rem);
  color: #fff8eb;
  line-height: 1.22;
}

.page-business-services .ai-offer-best-block {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}

.page-business-services .ai-offer-best-label {
  margin: 0;
  align-self: flex-start;
  display: inline-block;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 0.61rem;
  font-weight: 900;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(11, 29, 58, 0.96);
  background: rgba(242, 178, 26, 0.85);
  border: 1px solid rgba(255, 246, 230, 0.35);
}

.page-business-services .ai-offer-best {
  margin: 0;
  font-size: 0.88rem;
  line-height: 1.5;
  color: rgba(255, 235, 210, 0.86);
}

.page-business-services .ai-bs-includes-label {
  margin: 12px 0 8px;
  font-size: 0.6rem;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(255, 246, 230, 0.48);
}

.page-business-services .ai-offer-list {
  margin: 0 0 auto;
  padding: 0 0 0 1.15rem;
  display: grid;
  gap: 7px;
  font-size: 0.88rem;
  line-height: 1.46;
  color: rgba(255, 246, 230, 0.94);
  flex: 0 1 auto;
}

.page-business-services .ai-offer-outcome {
  margin: 14px 0 0;
  padding-top: 12px;
  border-top: 1px solid rgba(255, 246, 230, 0.14);
  font-size: 0.87rem;
  line-height: 1.48;
  color: rgba(255, 235, 210, 0.88);
}

.page-business-services .ai-offer-outcome-label {
  font-weight: 860;
  color: rgba(255, 246, 230, 0.98);
}

.page-business-services .ai-offer-pricing {
  margin: 10px 0 0;
  font-size: 0.78rem;
  line-height: 1.45;
  font-weight: 720;
  letter-spacing: 0.02em;
  color: rgba(255, 235, 210, 0.62);
}

.page-business-services .ai-offer-proof-note {
  margin: 10px 0 0;
  padding: 10px 12px;
  border-radius: calc(var(--radius) - 4px);
  border-left: 3px solid rgba(20, 184, 166, 0.65);
  background: rgba(4, 12, 28, 0.45);
  font-size: 0.78rem;
  line-height: 1.48;
  color: rgba(255, 235, 210, 0.82);
}

.page-business-services .ai-offer-list--compact {
  gap: 5px;
}

.page-business-services .ai-offer-list--compact li {
  font-size: 0.86rem;
  line-height: 1.42;
}

.page-business-services .ai-bs-attconv-lede {
  max-width: 46rem !important;
}

.page-business-services .ai-bs-attconv-grid {
  display: grid;
  gap: clamp(14px, 2vw, 18px);
  grid-template-columns: 1fr;
  align-items: stretch;
}

@media (min-width: 880px) {
  .page-business-services .ai-bs-attconv-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(16px, 2.2vw, 22px);
  }
}

.page-business-services .ai-bs-attconv-card {
  position: relative;
  overflow: hidden;
  padding: clamp(20px, 2.4vw, 26px);
  border-radius: var(--radius);
  border: 1px solid rgba(255, 246, 230, 0.12);
  background:
    radial-gradient(circle at 14% 0%, rgba(20, 184, 166, 0.14), transparent 42%),
    linear-gradient(168deg, rgba(255, 246, 230, 0.06) 0%, rgba(4, 12, 28, 0.58) 100%);
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.28);
  min-width: 0;
}

.page-business-services .ai-bs-attconv-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  margin: 0;
  border-radius: var(--radius) var(--radius) 0 0;
  pointer-events: none;
}

.page-business-services .ai-bs-attconv-card--attention::before {
  background: linear-gradient(90deg, var(--pink), var(--gold));
}

.page-business-services .ai-bs-attconv-card--conversion::before {
  background: linear-gradient(90deg, var(--turquoise), var(--orange));
}

.page-business-services .ai-bs-attconv-card-title {
  margin: 0 0 10px;
  font-size: clamp(1.05rem, 0.38vw + 0.94rem, 1.18rem);
  font-weight: 880;
  color: #fff8eb;
}

.page-business-services .ai-bs-attconv-card-copy {
  margin: 0;
  font-size: 0.9rem;
  line-height: 1.55;
  color: rgba(255, 235, 210, 0.88);
}

.page-business-services .ai-bs-proof-built-inner {
  max-width: 52rem;
  margin-inline: auto;
}

.page-business-services .ai-bs-proof-built-copy {
  margin-top: 12px;
  display: grid;
  gap: 12px;
}

.page-business-services .ai-bs-proof-built-copy p {
  margin: 0;
  font-size: clamp(0.92rem, 0.22vw + 0.86rem, 0.98rem);
  line-height: 1.58;
  color: rgba(255, 235, 210, 0.88);
}

.page-business-services .ai-bs-proof-built-actions {
  margin-top: clamp(18px, 2.5vw, 26px);
  justify-content: flex-start;
  flex-wrap: wrap;
}

.page-business-services .ai-bs-proof-built--compact .ai-band-head {
  gap: 12px;
}

@media (max-width: 640px) {
  .page-business-services .ai-bs-attconv--compact-mobile.ai-bs-sec-major {
    padding-top: clamp(26px, 7vw, 38px) !important;
    padding-bottom: clamp(26px, 7vw, 38px) !important;
  }

  .page-business-services .ai-offers--compact-mobile .ai-offer-proof-note {
    font-size: 0.74rem;
    padding: 9px 10px;
  }

  .page-business-services .ai-offer-cta.btn-block {
    width: 100%;
    max-width: 100%;
    padding-left: 14px;
    padding-right: 14px;
    box-sizing: border-box;
  }

  .page-business-services main {
    padding-bottom: max(12px, env(safe-area-inset-bottom, 0px));
  }
}

.page-business-services .ai-offer-action-line {
  margin: 12px 0 0;
  font-size: 0.84rem;
  line-height: 1.5;
  font-weight: 780;
  letter-spacing: 0.01em;
  color: rgba(255, 235, 210, 0.82);
}

.page-business-services .ai-offer-list li::marker {
  color: var(--orange);
}

.page-business-services .ai-offer-cta.btn-block {
  margin-top: clamp(16px, 2.4vw, 22px);
  font-weight: 880;
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* --- Capabilities --- */
.page-business-services .ai-capabilities-inner {
  max-width: 1100px;
  margin-inline: auto;
  padding-inline: clamp(16px, 4vw, 24px);
}

.page-business-services .ai-capabilities-lede {
  max-width: 44rem;
}

.page-business-services .ai-section-kicker--dark {
  color: rgba(11, 29, 58, 0.55);
}

.page-business-services .ai-capability-grid {
  display: grid;
  gap: clamp(12px, 1.75vw, 15px);
  grid-template-columns: 1fr;
  align-items: stretch;
}

@media (min-width: 720px) {
  .page-business-services .ai-capability-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: 1fr;
    gap: clamp(12px, 1.65vw, 15px);
  }
}

@media (min-width: 1040px) {
  .page-business-services .ai-capability-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.page-business-services .ai-capability-card h3 {
  margin: 0 0 6px;
  font-size: clamp(1.02rem, 0.32vw + 0.92rem, 1.1rem);
  color: #fff8eb;
}

.page-business-services .ai-capability-card p {
  margin: 0 0 8px;
  font-size: 0.88rem;
  line-height: 1.53;
  color: rgba(255, 235, 210, 0.87);
}

.page-business-services .ai-capability-card p:last-child {
  margin-bottom: 0;
}

/* Capability grid: image + body (explicit <img>, object-fit cover) */
.page-business-services .ai-bs-section--capabilities .ai-capability-card.ai-bs-cap-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid rgba(255, 246, 230, 0.12);
  border-radius: var(--radius);
  background: rgba(4, 12, 26, 0.55);
  backdrop-filter: blur(14px);
  box-shadow:
    0 22px 48px rgba(0, 0, 0, 0.36),
    inset 0 1px 0 rgba(255, 246, 230, 0.08);
}

.page-business-services .ai-bs-cap-media {
  position: relative;
  flex-shrink: 0;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: #050c18;
}

.page-business-services .ai-bs-cap-media::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(4, 12, 26, 0) 0%, rgba(4, 12, 26, 0.15) 45%, rgba(4, 12, 26, 0.55) 100%);
}

.page-business-services .ai-bs-cap-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transform: scale(1.001);
}

.page-business-services .ai-bs-cap-body {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: clamp(16px, 2.1vw, 20px);
  border-top: 1px solid rgba(255, 246, 230, 0.1);
  background: linear-gradient(180deg, rgba(4, 12, 26, 0.75) 0%, rgba(4, 12, 26, 0.94) 100%);
}

.page-business-services .ai-bs-cap-body h3 {
  margin: 0 0 4px;
}

.page-business-services .ai-bs-section--capabilities .ai-capability-card.ai-bs-cap-card:nth-child(3n + 1) {
  border-left: 4px solid rgba(20, 184, 166, 0.85);
}

.page-business-services .ai-bs-section--capabilities .ai-capability-card.ai-bs-cap-card:nth-child(3n + 2) {
  border-color: rgba(242, 178, 26, 0.22);
  border-left: 4px solid rgba(242, 178, 26, 0.88);
}

.page-business-services .ai-bs-section--capabilities .ai-capability-card.ai-bs-cap-card:nth-child(3n) {
  border-color: rgba(255, 92, 168, 0.2);
  border-left: 4px solid rgba(255, 92, 168, 0.82);
}

.page-business-services .ai-bs-additional-layers {
  margin: clamp(18px, 2.5vw, 26px) 0 0;
  padding: clamp(14px, 2vw, 18px) clamp(16px, 2.2vw, 22px);
  border-radius: var(--radius);
  border: 1px solid rgba(255, 246, 230, 0.12);
  background: rgba(4, 12, 28, 0.45);
  font-size: clamp(0.86rem, 0.22vw + 0.8rem, 0.93rem);
  line-height: 1.55;
  color: rgba(255, 235, 210, 0.88);
  text-align: center;
}

.page-business-services .ai-bs-additional-layers-label {
  display: block;
  margin-bottom: 6px;
  font-size: 0.62rem;
  font-weight: 900;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(20, 184, 166, 0.95);
}

.page-business-services .ai-cap-label {
  font-weight: 800;
  color: rgba(20, 184, 166, 0.95);
}

/* --- Built for real local businesses (dark band) --- */
.page-business-services .ai-bs-local-business-band {
  position: relative;
  overflow: hidden;
  border-top: 1px solid rgba(255, 246, 230, 0.08);
  border-bottom: 1px solid rgba(8, 14, 30, 0.65);
  background:
    radial-gradient(ellipse 90% 70% at 12% 0%, rgba(20, 184, 166, 0.14), transparent 52%),
    radial-gradient(circle at 92% 88%, rgba(255, 92, 168, 0.1), transparent 42%),
    linear-gradient(168deg, #030814 0%, #0b1a35 42%, #060c18 100%);
}

.page-business-services .ai-bs-local-business-band::before {
  content: "";
  position: absolute;
  inset: -20% -10%;
  pointer-events: none;
  opacity: 0.35;
  background: repeating-linear-gradient(
    -14deg,
    transparent 0,
    transparent 28px,
    rgba(255, 246, 230, 0.025) 28px,
    rgba(255, 246, 230, 0.025) 29px
  );
}

.page-business-services .ai-bs-local-business-band .ai-industry-inner {
  position: relative;
  z-index: 1;
}

.page-business-services .ai-industry-inner {
  max-width: 1020px;
  margin-inline: auto;
  padding-inline: clamp(16px, 4vw, 24px);
}

.page-business-services .ai-bs-local-band-head .ai-strategic-title {
  position: relative;
  padding-top: 12px;
  color: rgba(255, 250, 240, 0.98) !important;
}

.page-business-services .ai-bs-local-band-head .ai-strategic-title::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 56px;
  height: 4px;
  border-radius: 99px;
  background: linear-gradient(90deg, var(--turquoise), var(--gold), var(--pink));
}

.page-business-services .ai-bs-local-business-band .ai-bs-industry-sub,
.page-business-services .ai-bs-local-business-band .section-text {
  max-width: 46rem;
  font-size: clamp(0.97rem, 0.28vw + 0.88rem, 1.04rem);
  line-height: 1.62;
  color: rgba(255, 235, 210, 0.84) !important;
}

.page-business-services .ai-bs-local-business-band .ai-industry-cloud {
  list-style: none;
  margin: 6px 0 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 9px 10px;
  justify-content: center;
}

@media (min-width: 720px) {
  .page-business-services .ai-bs-local-business-band .ai-industry-cloud {
    justify-content: flex-start;
  }
}

.page-business-services .ai-bs-local-business-band .ai-industry-pill {
  display: inline-flex;
  align-items: center;
  padding: 10px 15px;
  border-radius: 999px;
  border: 1px solid rgba(255, 246, 230, 0.16);
  background: rgba(255, 246, 230, 0.07);
  font-size: 0.87rem;
  font-weight: 780;
  line-height: 1.35;
  color: rgba(255, 247, 235, 0.95);
  box-shadow:
    0 8px 22px rgba(0, 0, 0, 0.25),
    inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

.page-business-services .ai-bs-local-business-band .ai-bs-reality-callout {
  margin-top: clamp(18px, 2.5vw, 26px);
  padding: clamp(16px, 2vw, 20px) clamp(18px, 2.2vw, 24px);
  border-radius: calc(var(--radius) - 2px);
  border: 1px solid rgba(242, 178, 26, 0.32);
  background: rgba(4, 12, 28, 0.45);
  box-shadow:
    0 16px 40px rgba(0, 0, 0, 0.35),
    inset 0 1px 0 rgba(255, 246, 230, 0.07);
}

.page-business-services .ai-bs-local-business-band .ai-bs-reality-callout p {
  margin: 0;
  font-size: clamp(0.93rem, 0.22vw + 0.86rem, 1rem);
  line-height: 1.58;
  color: rgba(255, 237, 215, 0.9);
}

.page-business-services .ai-bs-local-business-band .ai-bs-reality-callout strong {
  color: rgba(255, 246, 230, 0.98);
  font-weight: 900;
}

/* --- Owner trust (cream band + dark glass cards) --- */
.page-business-services .ai-bs-owner-trust .ai-owner-inner {
  max-width: 1120px;
  margin-inline: auto;
  padding: 0;
  border: none;
  background: transparent;
  box-shadow: none;
}

.page-business-services .ai-bs-owner-dark .ai-bs-owner-band-head .ai-strategic-title {
  color: var(--cream);
}

.page-business-services .ai-bs-owner-dark .ai-owner-lede {
  max-width: 46rem;
  font-size: clamp(0.98rem, 0.32vw + 0.88rem, 1.06rem);
  color: rgba(255, 246, 230, 0.86);
}

.page-business-services .ai-bs-owner-dark .ai-bs-owner-cards {
  list-style: none;
  margin: 8px 0 0;
  padding: clamp(16px, 2.2vw, 24px);
  display: grid;
  gap: clamp(13px, 1.9vw, 17px);
  grid-template-columns: 1fr;
  border-radius: var(--radius);
  background:
    radial-gradient(circle at 35% -10%, rgba(20, 184, 166, 0.14), transparent 40%),
    rgba(4, 14, 32, 0.48);
  border: 1px solid rgba(255, 246, 230, 0.11);
  box-shadow:
    0 20px 48px rgba(0, 0, 0, 0.32),
    inset 0 1px 0 rgba(255, 246, 230, 0.06);
}

@media (min-width: 640px) {
  .page-business-services .ai-bs-owner-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: 1fr;
  }
}

@media (min-width: 1000px) {
  .page-business-services .ai-bs-owner-cards {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .page-business-services .ai-bs-owner-card--wide {
    grid-column: 1 / -1;
  }

  .page-business-services .ai-bs-owner-cards.ai-bs-owner-cards--compact {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.page-business-services .ai-bs-owner-dark .ai-bs-owner-card {
  min-width: 0;
  overflow-wrap: normal;
  padding: clamp(17px, 2.1vw, 21px);
  border-radius: 16px;
  background:
    linear-gradient(150deg, rgba(255, 246, 230, 0.08) 0%, transparent 52%),
    linear-gradient(186deg, rgba(11, 29, 58, 0.55) 0%, rgba(4, 10, 22, 0.92) 100%);
  border: 1px solid rgba(20, 184, 166, 0.26);
  box-shadow:
    0 14px 36px rgba(0, 0, 0, 0.32),
    inset 0 1px 0 rgba(255, 246, 230, 0.08);
  min-height: 100%;
}

.page-business-services .ai-bs-owner-dark .ai-bs-owner-card-title {
  margin: 0 0 8px;
  font-size: clamp(1rem, 0.2vw + 0.92rem, 1.06rem);
  font-weight: 880;
  line-height: 1.28;
  color: rgba(255, 246, 230, 0.97);
}

.page-business-services .ai-bs-owner-dark .ai-bs-owner-card p {
  margin: 0;
  font-size: 0.9rem;
  line-height: 1.55;
  color: rgba(255, 235, 210, 0.9);
}

/* --- Process timeline --- */
.page-business-services .ai-bs-process.dark-showcase {
  background:
    radial-gradient(circle at 0% 50%, rgba(20, 184, 166, 0.1), transparent 45%),
    linear-gradient(180deg, #071326 0%, #0b1d3a 50%, #050a12 100%);
  border-block: 1px solid rgba(255, 246, 230, 0.06);
}

.page-business-services .ai-process-section .routes-band-inner {
  gap: clamp(14px, 2.2vw, 22px);
}

.page-business-services .ai-process-head {
  margin-bottom: clamp(12px, 2vw, 18px);
  max-width: 46rem;
}

.page-business-services .ai-process-head .ai-strategic-title {
  margin-bottom: 10px;
}

.page-business-services .ai-process-sub {
  margin: 0 !important;
  max-width: 42rem !important;
  font-size: clamp(0.96rem, 0.3vw + 0.87rem, 1.04rem);
  line-height: 1.62;
}

.page-business-services .ai-bs-process-rail {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: clamp(14px, 2vw, 18px);
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 272px), 1fr));
  align-items: stretch;
}

@media (min-width: 880px) {
  .page-business-services .ai-bs-process-rail {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));
  }
}

@media (min-width: 1180px) {
  .page-business-services .ai-bs-process-rail {
    gap: clamp(16px, 1.9vw, 20px);
  }
}

.page-business-services .ai-bs-process-card {
  position: relative;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 12px 14px;
  padding: clamp(18px, 2.2vw, 22px);
  border-radius: var(--radius);
  background:
    radial-gradient(circle at 92% -10%, rgba(242, 178, 26, 0.14), transparent 42%),
    linear-gradient(172deg, rgba(255, 246, 230, 0.09) 0%, rgba(4, 12, 28, 0.68) 100%);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 246, 230, 0.12);
  box-shadow:
    0 20px 48px rgba(0, 0, 0, 0.34),
    inset 0 1px 0 rgba(255, 246, 230, 0.07);
  min-width: 0;
  min-height: 100%;
}

.page-business-services .ai-bs-process-card .ai-process-body {
  flex: 1 1 min(100%, 12rem);
  width: auto;
  min-width: 0;
}

.page-business-services .ai-bs-process-card .ai-process-num {
  margin-top: 0;
  flex-shrink: 0;
}

.page-business-services .ai-process-num {
  display: inline-flex;
  min-width: 2.45rem;
  height: 2.45rem;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  font-weight: 900;
  font-size: 1.06rem;
  color: rgba(11, 29, 58, 0.96);
  background: linear-gradient(135deg, var(--orange), var(--gold));
  box-shadow:
    0 8px 20px rgba(255, 139, 31, 0.32),
    0 0 0 1px rgba(255, 246, 230, 0.35);
}

.page-business-services .ai-process-body p {
  margin: 6px 0 0;
  font-size: clamp(0.88rem, 0.18vw + 0.81rem, 0.93rem);
  line-height: 1.55;
  color: rgba(255, 235, 210, 0.87);
}

.page-business-services .ai-process-title {
  font-size: clamp(0.98rem, 0.24vw + 0.88rem, 1.06rem);
  color: #fff8eb;
  font-weight: 880;
  display: block;
  line-height: 1.3;
}

/* --- Proof band --- */
.page-business-services .ai-bs-proof .ai-proof-inner {
  display: flex;
  flex-direction: column;
  gap: clamp(14px, 2.2vw, 22px);
  padding-bottom: clamp(6px, 1.2vw, 12px);
}

.page-business-services .ai-proof-band-lede {
  max-width: 46rem !important;
  font-size: clamp(0.98rem, 0.35vw + 0.88rem, 1.06rem);
  line-height: 1.62;
}

.page-business-services .ai-proof-band-inner .ai-proof-case-eyebrow {
  margin-bottom: clamp(10px, 1.5vw, 14px);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  font-weight: 800;
}

/* --- Section visuals (business services images) --- */
.page-business-services .ai-bs-section-split {
  display: grid;
  gap: clamp(20px, 3vw, 32px);
  align-items: center;
  margin-bottom: clamp(20px, 3vw, 28px);
}

@media (min-width: 900px) {
  .page-business-services .ai-bs-section-split {
    grid-template-columns: 1fr 1fr;
  }

  .page-business-services .ai-bs-section-split--visual-right .ai-bs-section-visual {
    order: 2;
  }

  .page-business-services .ai-bs-section-split--visual-left .ai-bs-section-visual {
    order: 0;
  }
}

.page-business-services .ai-bs-section-split-copy {
  margin-bottom: 0;
  max-width: none;
}

.page-business-services .ai-bs-section-visual {
  margin: 0;
  border-radius: calc(var(--radius) + 2px);
  overflow: hidden;
  border: 1px solid rgba(255, 246, 230, 0.12);
  box-shadow:
    0 18px 42px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 246, 230, 0.06);
}

.page-business-services .ai-bs-section-visual--wide {
  margin-bottom: clamp(24px, 3.5vw, 36px);
}

.page-business-services .ai-bs-section-visual img {
  display: block;
  width: 100%;
  height: auto;
  max-height: clamp(220px, 42vw, 480px);
  object-fit: cover;
  object-position: center;
}

@media (max-width: 899px) {
  .page-business-services .ai-bs-section-split .ai-bs-section-visual {
    order: 1;
  }

  .page-business-services .ai-bs-section-split .ai-bs-section-split-copy {
    order: 0;
  }
}

.page-business-services .ai-bs-business-operator .live-concierge__image-band-media img {
  width: 100%;
  height: auto;
  max-height: clamp(200px, 36vw, 360px);
  object-fit: cover;
  object-position: center top;
}

.page-business-services .ai-bs-proof-flow {
  margin-top: clamp(2px, 0.8vw, 6px);
}

.page-business-services .ai-bs-proof-flow-steps {
  list-style: none;
  margin: 0;
  padding: clamp(12px, 1.8vw, 16px);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 8px 10px;
  border-radius: calc(var(--radius) - 2px);
  border: 1px solid rgba(20, 184, 166, 0.22);
  background:
    radial-gradient(circle at 0% 50%, rgba(20, 184, 166, 0.12), transparent 48%),
    rgba(4, 12, 28, 0.38);
  box-shadow: inset 0 1px 0 rgba(255, 246, 230, 0.06);
}

.page-business-services .ai-bs-proof-flow-step {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: clamp(0.78rem, 0.16vw + 0.72rem, 0.86rem);
  font-weight: 780;
  color: rgba(255, 246, 230, 0.92);
}

.page-business-services .ai-bs-proof-flow-step:not(:last-child)::after {
  content: "\2192";
  margin-left: 2px;
  font-size: 0.82rem;
  font-weight: 900;
  color: rgba(242, 178, 26, 0.75);
}

@media (max-width: 479px) {
  .page-business-services .ai-bs-proof-flow-step {
    flex: 1 1 calc(50% - 8px);
    justify-content: center;
  }

  .page-business-services .ai-bs-proof-flow-step:nth-child(2)::after {
    display: none;
  }

  .page-business-services .ai-bs-proof-flow-step:last-child {
    flex-basis: 100%;
    justify-content: center;
  }
}

.page-business-services .ai-bs-proof-flow-dot {
  flex-shrink: 0;
  width: 0.55rem;
  height: 0.55rem;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--turquoise), var(--gold));
  box-shadow: 0 0 0 3px rgba(20, 184, 166, 0.18);
}

.page-business-services .ai-bs-proof-flow-step:nth-child(2) .ai-bs-proof-flow-dot {
  background: linear-gradient(135deg, var(--gold), var(--orange));
  box-shadow: 0 0 0 3px rgba(242, 178, 26, 0.16);
}

.page-business-services .ai-bs-proof-flow-step:nth-child(3) .ai-bs-proof-flow-dot {
  background: linear-gradient(135deg, var(--pink), rgba(255, 92, 168, 0.45));
  box-shadow: 0 0 0 3px rgba(255, 92, 168, 0.14);
}

.page-business-services .ai-bs-proof-cards {
  display: grid;
  gap: clamp(12px, 1.8vw, 16px);
  grid-template-columns: 1fr;
  margin-top: clamp(4px, 1vw, 8px);
}

@media (min-width: 720px) {
  .page-business-services .ai-bs-proof-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
  }
}

@media (min-width: 1024px) {
  .page-business-services .ai-bs-proof-cards {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .page-business-services .ai-bs-proof-cards--six {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.page-business-services .ai-bs-hero-proof-line {
  margin: 0 0 clamp(14px, 2vw, 18px);
  max-width: 42rem;
  font-size: clamp(0.92rem, 0.24vw + 0.86rem, 1rem);
  line-height: 1.55;
  color: rgba(255, 235, 210, 0.88);
}

.page-business-services .ai-bs-leak-support {
  max-width: 44rem;
  margin-top: 8px;
}

.page-business-services .ai-bs-path-examples {
  margin: 10px 0 0;
  font-size: 0.88rem;
  line-height: 1.5;
  color: rgba(11, 29, 58, 0.72);
}

.page-business-services .ai-bs-category-grid {
  display: grid;
  gap: clamp(14px, 2vw, 18px);
  grid-template-columns: 1fr;
}

@media (min-width: 640px) {
  .page-business-services .ai-bs-category-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1100px) {
  .page-business-services .ai-bs-category-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .page-business-services .ai-bs-category-grid--four {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.page-business-services .ai-bs-category-includes {
  margin: 0;
  font-size: 0.82rem;
  line-height: 1.45;
  color: rgba(255, 235, 210, 0.72);
}

.page-business-services .ai-bs-category-actions {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 6px;
  width: 100%;
}

.page-business-services .ai-bs-category-actions .btn {
  width: 100%;
  justify-content: center;
  text-align: center;
  white-space: normal;
  min-height: 46px;
}

.page-business-services .ai-bs-category-cta--soft {
  border-color: rgba(255, 246, 230, 0.28);
}

@media (min-width: 520px) {
  .page-business-services .ai-bs-category-actions {
    flex-direction: row;
    flex-wrap: wrap;
  }

  .page-business-services .ai-bs-category-actions .btn {
    width: auto;
    flex: 1 1 12rem;
  }
}

.page-business-services .ai-bs-category-card {
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-width: 0;
  padding: clamp(18px, 2.2vw, 22px);
  border-radius: var(--radius);
  border: 1px solid rgba(255, 246, 230, 0.12);
  background:
    radial-gradient(circle at 12% 0%, rgba(20, 184, 166, 0.12), transparent 42%),
    linear-gradient(168deg, rgba(255, 246, 230, 0.06) 0%, rgba(4, 12, 28, 0.52) 100%);
  box-shadow: 0 16px 38px rgba(0, 0, 0, 0.26);
}

.page-business-services .ai-bs-category-card--featured {
  border-color: rgba(242, 178, 26, 0.34);
  background:
    radial-gradient(circle at 12% 0%, rgba(242, 178, 26, 0.16), transparent 42%),
    linear-gradient(168deg, rgba(255, 246, 230, 0.08) 0%, rgba(4, 12, 28, 0.58) 100%);
}

.page-business-services .ai-bs-category-thumb {
  margin: calc(clamp(18px, 2.2vw, 22px) * -1) calc(clamp(18px, 2.2vw, 22px) * -1) 0;
  border-radius: calc(var(--radius) - 1px) calc(var(--radius) - 1px) 0 0;
  overflow: hidden;
  height: clamp(140px, 32vw, 180px);
}

.page-business-services .ai-bs-category-thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

@media (min-width: 640px) {
  .page-business-services .ai-bs-category-thumb {
    height: auto;
    aspect-ratio: 16 / 10;
  }

  .page-business-services .ai-bs-category-thumb img {
    aspect-ratio: 16 / 10;
    height: auto;
  }
}

.page-business-services .ai-bs-category-lane {
  margin: 0;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--gold);
}

.page-business-services .ai-bs-category-title {
  margin: 0;
  font-size: clamp(1.02rem, 0.34vw + 0.92rem, 1.14rem);
  font-weight: 880;
  color: #fff8eb;
}

.page-business-services .ai-bs-category-copy {
  margin: 0;
  flex: 1;
  font-size: 0.9rem;
  line-height: 1.55;
  color: rgba(255, 235, 210, 0.88);
}

.page-business-services .ai-bs-category-cta {
  align-self: flex-start;
  margin-top: 4px;
}

.page-business-services .ai-bs-flagship-grid--compact {
  grid-template-columns: 1fr;
}

@media (min-width: 640px) {
  .page-business-services .ai-bs-flagship-grid--compact {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) {
  .page-business-services .ai-bs-flagship-grid--compact {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.page-business-services .ai-bs-proof-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
  min-height: 100%;
  padding: clamp(18px, 2.2vw, 22px);
  border-radius: var(--radius);
  border: 1px solid rgba(255, 246, 230, 0.14);
  background:
    radial-gradient(circle at 12% -20%, rgba(20, 184, 166, 0.16), transparent 42%),
    linear-gradient(168deg, rgba(255, 246, 230, 0.08) 0%, rgba(4, 12, 28, 0.58) 100%);
  box-shadow:
    0 18px 42px rgba(0, 0, 0, 0.3),
    inset 0 1px 0 rgba(255, 246, 230, 0.07);
  overflow: hidden;
  isolation: isolate;
}

.page-business-services .ai-bs-proof-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  pointer-events: none;
}

.page-business-services .ai-bs-proof-card--ask::before {
  background: linear-gradient(90deg, var(--turquoise), rgba(20, 184, 166, 0.45));
}

.page-business-services .ai-bs-proof-card--route::before {
  background: linear-gradient(90deg, var(--gold), var(--orange));
}

.page-business-services .ai-bs-proof-card--alert::before {
  background: linear-gradient(90deg, var(--pink), rgba(255, 92, 168, 0.45));
}

.page-business-services .ai-bs-proof-card--restaurant::before {
  background: linear-gradient(90deg, var(--orange), var(--gold));
}

.page-business-services .ai-bs-proof-card-num {
  margin: 0;
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0.14em;
  color: rgba(242, 178, 26, 0.88);
}

.page-business-services .ai-bs-proof-card-h {
  margin: 0;
  font-size: clamp(1rem, 0.28vw + 0.9rem, 1.1rem);
  font-weight: 880;
  line-height: 1.28;
  color: #fff8eb;
}

.page-business-services .ai-bs-proof-card-p {
  margin: 0;
  font-size: clamp(0.88rem, 0.18vw + 0.82rem, 0.94rem);
  line-height: 1.55;
  color: rgba(255, 235, 210, 0.86);
}

.page-business-services .ai-bs-proof-closer {
  margin: clamp(16px, 2.2vw, 22px) 0 0;
  padding: clamp(14px, 1.8vw, 18px) clamp(16px, 2vw, 22px);
  border-radius: calc(var(--radius) - 2px);
  border: 1px solid rgba(20, 184, 166, 0.28);
  background: rgba(4, 12, 28, 0.4);
  font-size: clamp(0.94rem, 0.22vw + 0.86rem, 1.02rem);
  font-weight: 720;
  line-height: 1.55;
  text-align: center;
  color: rgba(255, 246, 230, 0.94);
  box-shadow: inset 0 1px 0 rgba(255, 246, 230, 0.06);
}

.page-business-services .ai-bs-case-metrics {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 176px), 1fr));
  gap: clamp(12px, 1.8vw, 16px);
  align-items: stretch;
  padding: clamp(14px, 2vw, 18px);
  margin: clamp(8px, 1.6vw, 14px) 0 0;
  border-radius: var(--radius);
  background:
    radial-gradient(circle at 8% -20%, rgba(20, 184, 166, 0.2), transparent 45%),
    linear-gradient(168deg, rgba(4, 12, 28, 0.55), rgba(4, 12, 28, 0.38));
  border: 1px solid rgba(255, 246, 230, 0.13);
  box-shadow:
    0 16px 40px rgba(0, 0, 0, 0.3),
    inset 0 1px 0 rgba(255, 246, 230, 0.06);
}

.page-business-services .ai-bs-case-metric {
  min-width: 0;
  padding: 14px 16px;
  border-radius: 16px;
  background: rgba(255, 246, 230, 0.05);
  border: 1px solid rgba(255, 246, 230, 0.1);
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.page-business-services .ai-bs-case-metric-val {
  font-size: clamp(1.45rem, 2.2vw + 0.8rem, 1.95rem);
  font-weight: 900;
  letter-spacing: -0.035em;
  line-height: 1.08;
  color: #fff8eb;
}

.page-business-services .ai-bs-case-metric-label {
  font-size: 0.8rem;
  font-weight: 680;
  line-height: 1.45;
  color: rgba(255, 235, 210, 0.8);
}

.page-business-services .ai-bs-proof-layout {
  display: grid;
  gap: clamp(14px, 2vw, 20px);
  align-items: stretch;
  min-width: 0;
}

@media (min-width: 900px) {
  .page-business-services .ai-bs-proof-layout {
    grid-template-columns: minmax(260px, 0.95fr) minmax(280px, 1.05fr);
    align-items: stretch;
  }
}

.page-business-services .ai-bs-proof-layout--compact .ai-bs-proof-device-frame {
  min-height: min(320px, 48vw);
}

.page-business-services .ai-bs-proof-points {
  list-style: none;
  margin: 0;
  padding: clamp(16px, 2vw, 22px);
  border-radius: var(--radius);
  border: 1px solid rgba(255, 246, 230, 0.14);
  background:
    radial-gradient(circle at 88% 12%, rgba(20, 184, 166, 0.12), transparent 42%),
    linear-gradient(168deg, rgba(4, 12, 28, 0.55), rgba(4, 12, 28, 0.38));
  box-shadow:
    0 16px 40px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 246, 230, 0.06);
  display: grid;
  gap: 10px 14px;
  align-content: start;
}

.page-business-services .ai-bs-proof-points li {
  position: relative;
  padding-left: 1.15rem;
  font-size: clamp(0.9rem, 0.2vw + 0.84rem, 0.97rem);
  line-height: 1.45;
  font-weight: 650;
  color: rgba(255, 246, 230, 0.94);
}

.page-business-services .ai-bs-proof-points li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.55em;
  width: 6px;
  height: 6px;
  border-radius: 99px;
  background: linear-gradient(135deg, var(--turquoise), var(--gold));
  box-shadow: 0 0 0 2px rgba(11, 29, 58, 0.35);
}

.page-business-services .ai-bs-proof-device {
  min-width: 0;
}

.page-business-services .ai-bs-proof-device-frame {
  border-radius: var(--radius);
  overflow: hidden;
  border: 1px solid rgba(242, 178, 26, 0.38);
  box-shadow:
    0 32px 70px rgba(0, 0, 0, 0.45),
    inset 0 1px 0 rgba(255, 246, 230, 0.1),
    0 0 0 1px rgba(20, 184, 166, 0.12);
  background: linear-gradient(165deg, #0a1830 0%, #1a0f28 100%);
  height: 100%;
  min-height: min(360px, 52vw);
  display: flex;
  flex-direction: column;
}

@media (min-width: 900px) {
  .page-business-services .ai-bs-proof-device-frame {
    min-height: 100%;
  }
}

.page-business-services .ai-bs-proof-flow-mini {
  display: flex;
  gap: 5px;
  margin: 0 0 10px;
}

.page-business-services .ai-bs-proof-flow-mini span {
  flex: 1;
  height: 5px;
  border-radius: 99px;
  background: linear-gradient(90deg, rgba(20, 184, 166, 0.8), rgba(242, 178, 26, 0.55));
  opacity: 0.9;
}

.page-business-services .ai-bs-proof-flow-mini span:nth-child(2) {
  background: linear-gradient(90deg, rgba(255, 92, 168, 0.65), rgba(255, 139, 31, 0.55));
}

.page-business-services .ai-bs-proof-flow-mini span:nth-child(3) {
  background: linear-gradient(90deg, rgba(242, 178, 26, 0.75), rgba(20, 184, 166, 0.45));
}

.page-business-services .ai-bs-proof-system-example {
  margin: 12px 0 0;
  font-size: 0.6rem;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(242, 178, 26, 0.88);
}

.page-business-services .ai-bs-proof-device-foot {
  flex-shrink: 0;
  margin: 0;
  padding: 10px 14px 14px;
  font-size: clamp(0.76rem, 0.2vw + 0.7rem, 0.82rem);
  font-weight: 680;
  line-height: 1.5;
  text-align: center;
  color: rgba(255, 232, 200, 0.82);
  border-top: 1px solid rgba(255, 246, 230, 0.12);
  background: linear-gradient(180deg, rgba(4, 12, 28, 0.55) 0%, rgba(4, 12, 28, 0.75) 100%);
}

.page-business-services .ai-bs-proof-device-top {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 10px 12px;
  background: rgba(4, 12, 28, 0.85);
  border-bottom: 1px solid rgba(255, 246, 230, 0.1);
}

.page-business-services .ai-bs-proof-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.15);
}

.page-business-services .ai-bs-proof-dot:nth-child(1) {
  background: #ff5f57;
}
.page-business-services .ai-bs-proof-dot:nth-child(2) {
  background: #febc2e;
}
.page-business-services .ai-bs-proof-dot:nth-child(3) {
  background: #28c840;
}

.page-business-services .ai-bs-proof-url {
  margin-left: auto;
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  color: rgba(255, 246, 230, 0.45);
}

.page-business-services .ai-bs-proof-device-body {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.2fr) minmax(0, 0.9fr);
  gap: 10px;
  padding: clamp(12px, 1.8vw, 16px);
  flex: 1 1 auto;
  min-height: 0;
}

@media (max-width: 520px) {
  .page-business-services .ai-bs-proof-device-body {
    grid-template-columns: 1fr;
  }
}

.page-business-services .ai-bs-proof-label {
  margin: 0 0 8px;
  font-size: 0.62rem;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(242, 178, 26, 0.9);
}

.page-business-services .ai-bs-proof-pill {
  padding: 8px 10px;
  margin-bottom: 6px;
  border-radius: 10px;
  font-size: 0.8rem;
  font-weight: 800;
  color: rgba(255, 246, 230, 0.95);
  background: rgba(20, 184, 166, 0.2);
  border: 1px solid rgba(20, 184, 166, 0.35);
}

.page-business-services .ai-bs-proof-pill--alt {
  background: rgba(255, 92, 168, 0.15);
  border-color: rgba(255, 92, 168, 0.35);
}

.page-business-services .ai-bs-proof-col--main {
  padding: 12px;
  border-radius: 12px;
  background: rgba(4, 12, 30, 0.55);
  border: 1px solid rgba(255, 246, 230, 0.12);
}

.page-business-services .ai-bs-proof-screen-title {
  margin: 0 0 10px;
  font-size: clamp(0.85rem, 0.2vw + 0.78rem, 0.95rem);
  font-weight: 900;
  letter-spacing: 0.04em;
  text-transform: none;
  color: rgba(255, 246, 230, 0.92);
}

.page-business-services .ai-bs-proof-bar {
  height: 8px;
  border-radius: 99px;
  margin-bottom: 8px;
  background: linear-gradient(90deg, rgba(20, 184, 166, 0.7), rgba(242, 178, 26, 0.5));
  opacity: 0.9;
}

.page-business-services .ai-bs-proof-bar--short {
  width: 65%;
  background: linear-gradient(90deg, rgba(255, 92, 168, 0.55), rgba(255, 139, 31, 0.55));
}

.page-business-services .ai-bs-proof-card-faux {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 9px 10px;
  margin-bottom: 6px;
  border-radius: 10px;
  font-size: 0.8rem;
  font-weight: 820;
  color: rgba(255, 246, 230, 0.94);
  background: rgba(255, 246, 230, 0.06);
  border: 1px solid rgba(255, 246, 230, 0.12);
}

.page-business-services .ai-bs-proof-card-faux span {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--turquoise);
  flex-shrink: 0;
}

.page-business-services .ai-bs-proof-card-faux--2 span {
  background: var(--gold);
}

.page-business-services .ai-proof-grid {
  display: grid;
  gap: clamp(12px, 1.7vw, 15px);
  grid-template-columns: 1fr;
  align-items: stretch;
  min-width: 0;
}

@media (min-width: 640px) {
  .page-business-services .ai-proof-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: 1fr;
  }
}

.page-business-services .ai-proof-card {
  position: relative;
  min-width: 0;
  overflow-wrap: break-word;
  border-radius: var(--radius);
  padding: clamp(18px, 2.4vw, 22px);
  padding-top: clamp(20px, 2.5vw, 24px);
  background:
    radial-gradient(circle at 100% -10%, rgba(242, 178, 26, 0.12), transparent 40%),
    linear-gradient(182deg, #fffefb 0%, #fff4e9 100%) !important;
  border: 1px solid rgba(11, 29, 58, 0.1) !important;
  box-shadow:
    0 22px 50px rgba(4, 12, 26, 0.2),
    0 0 0 1px rgba(255, 246, 230, 0.52) inset !important;
  color: var(--navy);
  overflow: hidden;
  min-height: 100%;
}

.page-business-services .ai-proof-card.ai-proof-card-accent::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
  pointer-events: none;
}

.page-business-services .ai-proof-card--turq.ai-proof-card-accent::before {
  background: linear-gradient(90deg, var(--turquoise), rgba(20, 184, 166, 0.45));
}

.page-business-services .ai-proof-card--gold.ai-proof-card-accent::before {
  background: linear-gradient(90deg, var(--gold), rgba(242, 178, 26, 0.45));
}

.page-business-services .ai-proof-card--pink.ai-proof-card-accent::before {
  background: linear-gradient(90deg, var(--pink), rgba(255, 92, 168, 0.42));
}

.page-business-services .ai-proof-card--orange.ai-proof-card-accent::before {
  background: linear-gradient(90deg, var(--orange), rgba(255, 139, 31, 0.5));
}

.page-business-services .ai-proof-card h3 {
  position: relative;
  z-index: 2;
  color: var(--navy);
  margin-top: 0;
  margin-bottom: 9px;
  font-size: clamp(1.04rem, 0.35vw + 0.92rem, 1.12rem);
}

.page-business-services .ai-proof-card p {
  position: relative;
  z-index: 2;
  color: #3d4550;
  font-size: 0.92rem;
  line-height: 1.6;
  margin: 0;
}

.page-business-services .ai-proof-glyph {
  position: absolute;
  z-index: 2;
  top: 14px;
  right: 14px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: rgba(11, 29, 58, 0.16);
}

.page-business-services .ai-proof-card--turq .ai-proof-glyph {
  background: var(--turquoise);
  box-shadow: 0 0 0 3px rgba(20, 184, 166, 0.2);
}

.page-business-services .ai-proof-card--gold .ai-proof-glyph {
  background: var(--gold);
}

.page-business-services .ai-proof-card--pink .ai-proof-glyph {
  background: var(--pink);
}

.page-business-services .ai-proof-card--orange .ai-proof-glyph {
  background: var(--orange);
}

.page-business-services .ai-bs-proof-strip {
  margin-top: clamp(4px, 1vw, 8px);
}

/* --- Final CTA --- */
.page-business-services .ai-bs-final {
  padding-top: clamp(26px, 3.5vw, 38px);
  padding-bottom: max(clamp(30px, 4vw, 46px), calc(18px + env(safe-area-inset-bottom, 0px)));
  border-top: 1px solid rgba(255, 246, 230, 0.14);
  background:
    radial-gradient(circle at 50% 0%, rgba(255, 139, 31, 0.14), transparent 42%),
    linear-gradient(168deg, #0b1d3a 0%, #071222 100%);
}

.page-business-services .ai-bs-final-shell {
  position: relative;
  max-width: 54rem;
  margin-inline: auto;
  padding: clamp(28px, 3.4vw, 40px) clamp(22px, 3vw, 34px);
  border-radius: var(--radius);
  background:
    linear-gradient(160deg, rgba(255, 246, 230, 0.07) 0%, transparent 48%),
    rgba(4, 14, 32, 0.48);
  border: 1px solid rgba(242, 178, 26, 0.26);
  box-shadow:
    0 28px 64px rgba(0, 0, 0, 0.42),
    inset 0 1px 0 rgba(255, 246, 230, 0.07),
    0 0 0 1px rgba(20, 184, 166, 0.08);
}

.page-business-services .ai-bs-final-shell::before {
  content: "";
  display: block;
  position: absolute;
  left: clamp(14px, 3vw, 28px);
  right: clamp(14px, 3vw, 28px);
  top: 0;
  height: 3px;
  border-radius: 0 0 2px 2px;
  pointer-events: none;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(242, 178, 26, 0.85) 12%,
    rgba(255, 139, 31, 0.9) 30%,
    rgba(255, 106, 77, 0.88) 48%,
    rgba(255, 92, 168, 0.55) 58%,
    rgba(20, 184, 166, 0.92) 78%,
    rgba(242, 178, 26, 0.35) 92%,
    transparent 100%
  );
  box-shadow:
    0 0 14px rgba(242, 178, 26, 0.18),
    0 0 22px rgba(20, 184, 166, 0.1);
}

.page-business-services .ai-bs-final-actions .btn-outline-light {
  background: rgba(4, 12, 26, 0.5);
  color: rgba(255, 248, 235, 0.96);
  border: 1px solid rgba(255, 246, 230, 0.28);
  box-shadow:
    0 10px 26px rgba(0, 0, 0, 0.32),
    inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

.page-business-services .ai-bs-final-actions .btn-outline-light:hover {
  border-color: rgba(20, 184, 166, 0.45);
  color: rgba(255, 250, 240, 0.99);
  background: rgba(255, 246, 230, 0.1);
}

@media (max-width: 900px) and (min-width: 820px) {
  .page-business-services .ai-bs-proof-layout {
    gap: 14px;
  }
}

.page-business-services .ai-final-cta-inner {
  max-width: 50rem !important;
  margin-inline: auto;
  margin-bottom: 0;
  text-align: center;
}

.page-business-services .ai-final-cta-inner .ai-strategic-title {
  margin-bottom: 12px;
  max-width: min(36rem, 100%);
  margin-inline: auto;
}

.page-business-services .ai-bs-final-copy {
  margin-inline: auto !important;
  max-width: 40rem !important;
  font-size: clamp(0.98rem, 0.32vw + 0.88rem, 1.06rem);
  line-height: 1.62;
}

.page-business-services .ai-bs-final-actions {
  margin-top: clamp(16px, 2.4vw, 24px);
  justify-content: center;
  flex-wrap: wrap;
  gap: 12px 14px;
}

.page-business-services .ai-bs-final-actions .btn {
  min-height: 48px;
  align-items: center;
}

.page-business-services .ai-bs-final-proof {
  margin: clamp(18px, 2.8vw, 26px) auto 0;
  max-width: 40rem;
  text-align: center;
  font-size: 0.9rem;
  line-height: 1.58;
  color: rgba(255, 246, 230, 0.82);
}

@media (max-width: 479px) {
  .page-business-services .ai-bs-final-actions .btn {
    width: 100%;
    justify-content: center;
  }
}

/* ----- A++ shared system: route cards, cinematic hub, CTA bands ----- */
.route-card-grid {
  display: grid;
  gap: clamp(14px, 1.8vw, 18px);
  grid-template-columns: 1fr;
  align-items: stretch;
  list-style: none;
  margin: 0;
  padding: 0;
}

@media (min-width: 560px) {
  .route-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1100px) {
  .route-card-grid.route-card-grid--dense {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (min-width: 900px) {
  .route-card-grid:not(.route-card-grid--dense) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.image-route-card {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: clamp(220px, 42vw, 300px);
  border-radius: var(--radius);
  overflow: hidden;
  border: 1px solid rgba(255, 246, 230, 0.18);
  box-shadow: 0 18px 40px rgba(5, 10, 24, 0.35);
  text-decoration: none;
  color: inherit;
  isolation: isolate;
  transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}

.image-route-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 24px 52px rgba(5, 10, 24, 0.42);
  border-color: rgba(242, 178, 26, 0.45);
}

.image-route-card:focus-visible {
  outline: 3px solid rgba(242, 178, 26, 0.85);
  outline-offset: 3px;
}

.image-route-card__media {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  z-index: 0;
}

.image-route-card__shade {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(
    to top,
    rgba(2, 8, 18, 0.92) 0%,
    rgba(2, 8, 18, 0.52) 40%,
    rgba(2, 8, 18, 0.14) 68%,
    transparent 100%
  );
}

.image-route-card__body {
  position: relative;
  z-index: 2;
  padding: clamp(16px, 2.4vw, 22px);
  color: #fff8eb;
}

.image-route-card__body .eyebrow {
  margin: 0 0 6px;
  color: rgba(255, 200, 150, 0.95);
  font-size: 0.68rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  font-weight: 800;
}

.image-route-card__body h3 {
  margin: 0 0 8px;
  font-size: clamp(1.05rem, 1.2vw + 0.85rem, 1.22rem);
  font-weight: 850;
  letter-spacing: -0.02em;
  line-height: 1.18;
  color: #fff8eb;
  text-shadow: 0 2px 20px rgba(2, 6, 14, 0.55);
}

.image-route-card__body .h3-like {
  display: block;
  margin: 0 0 8px;
  font-size: clamp(1.05rem, 1.2vw + 0.85rem, 1.22rem);
  font-weight: 850;
  letter-spacing: -0.02em;
  line-height: 1.18;
  color: #fff8eb;
}

.image-route-card__body p {
  margin: 0;
  font-size: 0.88rem;
  line-height: 1.5;
  color: rgba(255, 246, 230, 0.92);
  max-width: 36ch;
  text-shadow: 0 1px 14px rgba(2, 6, 14, 0.48);
}

.image-route-card__cta {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 12px;
  font-size: 0.82rem;
  font-weight: 820;
  color: var(--gold);
  letter-spacing: 0.02em;
}

.image-route-card:hover .image-route-card__cta {
  color: #ffe7a8;
}

.section.path-hub-section {
  max-width: none;
  margin: 0;
  padding: clamp(36px, 5vw, 56px) clamp(16px, 4.5vw, 70px);
  background:
    radial-gradient(ellipse 80% 50% at 10% 0%, rgba(20, 184, 166, 0.12), transparent 50%),
    linear-gradient(168deg, #050a14 0%, #0a162c 45%, #071018 100%);
  border-block: 1px solid rgba(255, 246, 230, 0.08);
}

.path-hub-section .path-hub-head {
  max-width: 48rem;
  /* Space to the card grid lives on .routes-band-inner gap alone (avoid flex gap + head margin stacking). */
  margin-bottom: 0;
}

/* Start Here / choose-path: editorial rhythm headline → cards (scoped: path-hub appears only here). */
.path-hub-section > .routes-band-inner {
  gap: clamp(28px, 5vw + 10px, 40px);
}

@media (min-width: 720px) {
  .path-hub-section > .routes-band-inner {
    gap: clamp(36px, 4.5vw + 8px, 52px);
  }
}

/* Beats Start Here scoped .start-here-main .sh-section-head margin so stacked gap does not return. */
.start-here-main .path-hub-section .path-hub-head.sh-section-head {
  margin-bottom: 0;
}

.path-hub-section .path-hub-head h2 {
  color: var(--on-dark-heading);
}

.path-hub-section .path-hub-head .section-text {
  color: var(--on-dark-body);
}

/* .premium-dark-section / .proof-section: use .dark-showcase + section headings */

.concierge-cta-band {
  border-radius: calc(var(--radius) + 6px);
  border: 1px solid rgba(255, 246, 230, 0.14);
  background:
    radial-gradient(ellipse 70% 50% at 12% 0%, rgba(20, 184, 166, 0.15), transparent 50%),
    linear-gradient(158deg, #050910 0%, #0b1d3a 48%, #1a1530 100%);
  box-shadow: 0 28px 56px rgba(0, 0, 0, 0.32);
}

.image-detail-section {
  position: relative;
  overflow: hidden;
}

.glass-info-card {
  border-radius: calc(var(--radius) - 2px);
  background: rgba(255, 251, 242, 0.94);
  border: 1px solid rgba(11, 29, 58, 0.1);
  box-shadow: 0 14px 36px rgba(2, 6, 14, 0.18);
}

/* ----- Premium page atmosphere (Start Here + Ask) ----- */
.page-ask {
  --premium-atmosphere-photo: url("/assets/downtown-river-promenade-twilight.png");
  --premium-ink: #060e1a;
}

.page-start-here {
  --premium-atmosphere-photo: url("assets/evening_riverwalk_with_vibrant_ambiance.png");
  --premium-ink: #060e1a;
}

:is(.page-ask, .page-start-here) .premium-atmosphere,
:is(.page-ask, .page-start-here) .ask-product-atmosphere {
  position: relative;
  isolation: isolate;
  max-width: none;
  margin-inline: 0;
  padding-inline: 0;
  color: rgba(255, 248, 235, 0.95);
  border: none;
  background-color: var(--premium-ink);
  background-image:
    linear-gradient(180deg, rgba(5, 12, 24, 0.9) 0%, rgba(7, 16, 30, 0.86) 50%, rgba(5, 12, 24, 0.92) 100%),
    var(--premium-atmosphere-photo);
  background-repeat: no-repeat;
  background-size: cover;
}

:is(.page-ask, .page-start-here) .premium-atmosphere::after,
:is(.page-ask, .page-start-here) .ask-product-atmosphere::after {
  display: none;
}

:is(.page-ask, .page-start-here) .premium-atmosphere > .routes-band-inner,
:is(.page-ask, .page-start-here) .premium-atmosphere .ask-product-prompts,
:is(.page-ask, .page-start-here) .premium-atmosphere .ask-product-section-head {
  position: relative;
  z-index: 1;
}

/* Start Here — band positions (subtle scroll parallax on one photo) */
.page-start-here .sh-ask-band.premium-atmosphere {
  margin-top: -1px;
  background-image:
    linear-gradient(180deg, rgba(6, 14, 26, 0.72) 0%, rgba(7, 16, 30, 0.88) 42%, rgba(5, 12, 24, 0.93) 100%),
    var(--premium-atmosphere-photo);
  background-position: center 28%;
}

.page-start-here .path-hub-section.premium-atmosphere.sh-lanes-hub {
  border-block: none;
  background-color: var(--premium-ink);
  background-image:
    linear-gradient(180deg, rgba(5, 12, 24, 0.9) 0%, rgba(7, 16, 30, 0.86) 50%, rgba(5, 12, 24, 0.92) 100%),
    var(--premium-atmosphere-photo);
  background-position: center 38%;
}

.page-start-here .sh-lanes-hub.premium-atmosphere {
  background-position: center 38%;
}

.page-start-here .sh-final-section.premium-atmosphere {
  max-width: none;
  margin-inline: 0;
  padding-inline: clamp(16px, 4.5vw, 74px);
  background-position: center 48%;
}

.page-start-here .sh-final-section.premium-atmosphere .sh-final-cta {
  position: relative;
  z-index: 1;
}

:is(.page-ask, .page-start-here) .footer.premium-atmosphere-footer.dark-showcase {
  position: relative;
  isolation: isolate;
  margin-top: 0;
  border-top: none;
  border-bottom: none;
  background-color: var(--premium-ink);
  background-image:
    linear-gradient(180deg, rgba(5, 12, 24, 0.82) 0%, rgba(6, 14, 26, 0.94) 55%, rgba(4, 10, 22, 0.98) 100%),
    var(--premium-atmosphere-photo);
  background-repeat: no-repeat;
  background-size: cover;
}

.page-start-here .footer.premium-atmosphere-footer.dark-showcase {
  background-position: center 58%;
}

.page-ask .footer.premium-atmosphere-footer.dark-showcase {
  background-position: center 64%;
}

:is(.page-ask, .page-start-here) .footer.premium-atmosphere-footer.dark-showcase > * {
  position: relative;
  z-index: 1;
}

:is(.page-ask, .page-start-here) .footer.premium-atmosphere-footer .footer-links a {
  border-color: rgba(255, 246, 230, 0.22);
  background: rgba(8, 18, 34, 0.55);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}

:is(.page-ask, .page-start-here) .footer.premium-atmosphere-footer .footer-links a:hover {
  border-color: rgba(242, 178, 26, 0.42);
  background: rgba(12, 24, 44, 0.72);
}

/* Start Here hub: cinematic hero (full-bleed photography) */
.page-start-here .cinematic-hero.hero-fiesta-dark.secondary-hero {
  isolation: isolate;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  overflow-x: clip;
  background-color: #071022;
  background-image:
    linear-gradient(90deg, rgba(5, 10, 24, 0.52) 0%, rgba(5, 10, 24, 0.28) 36%, rgba(5, 10, 24, 0.1) 58%, rgba(5, 10, 24, 0.03) 78%, transparent 100%),
    url("assets/evening_riverwalk_with_vibrant_ambiance.png");
  background-repeat: no-repeat;
  background-position: 0 0, center;
  background-size: cover, cover;
}

.page-start-here .cinematic-hero.hero-fiesta-dark::before {
  display: none;
}

.page-start-here .secondary-hero.hero-fiesta-dark.cinematic-hero::after {
  pointer-events: none;
  z-index: 1;
  background: linear-gradient(180deg, transparent 55%, rgba(6, 14, 26, 0.5) 82%, rgba(6, 14, 26, 0.88) 100%);
}

.page-start-here .cinematic-hero .hero-fiesta-inner.hero-inner-band {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: min(1320px, 100%);
  margin-inline: auto;
  box-sizing: border-box;
  padding: clamp(20px, 4vw, 44px) clamp(16px, 4vw, 48px);
}

.page-start-here .sh-cinematic-shell {
  width: 100%;
  max-width: 720px;
}

.page-start-here .sh-cinematic-accent {
  width: 100%;
  max-width: 100%;
  height: 3px;
  flex-shrink: 0;
  margin: 0 0 clamp(12px, 2vw, 18px);
  border: none;
  border-radius: 2px;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(242, 178, 26, 0.85) 12%,
    rgba(255, 139, 31, 0.9) 30%,
    rgba(255, 106, 77, 0.88) 48%,
    rgba(255, 92, 168, 0.55) 58%,
    rgba(20, 184, 166, 0.92) 78%,
    rgba(242, 178, 26, 0.35) 92%,
    transparent 100%
  );
}

.page-start-here .cinematic-hero .hero-title {
  max-width: none;
  font-size: clamp(2rem, 3.85vw + 0.85rem, 3.45rem);
  line-height: 1.06;
  letter-spacing: -0.038em;
  font-weight: 860;
  color: #fff8eb;
  text-shadow: 0 2px 36px rgba(0, 0, 0, 0.35);
}

.page-start-here .cinematic-hero .hero-text-on-dark,
.page-start-here .cinematic-hero .sh-hero-helper {
  font-size: clamp(0.98rem, 0.35vw + 0.88rem, 1.06rem);
  line-height: 1.65;
  color: rgba(255, 246, 230, 0.9);
  max-width: 40rem;
}

.page-start-here .cinematic-hero .sh-hero-chips.route-chip-row-hero {
  align-self: stretch;
  padding-top: clamp(12px, 2vw, 16px);
  border-top: none;
}

.page-start-here .cinematic-hero .sh-hero-chips .route-chip {
  border-color: rgba(255, 246, 230, 0.22);
}

.page-start-here .cinematic-hero .sh-hero-actions {
  margin-top: clamp(8px, 1.6vw, 14px);
}

@media (max-width: 767px) {
  .page-start-here .cinematic-hero.hero-fiesta-dark {
    min-height: clamp(560px, 88vh, 720px);
    max-height: none;
  }
}

@media (min-width: 768px) {
  .page-start-here .cinematic-hero.hero-fiesta-dark {
    min-height: clamp(520px, 68vh, 760px);
    max-height: 820px;
  }
}

@media (max-width: 520px) {
  .page-start-here .cinematic-hero .sh-hero-actions .btn {
    width: 100%;
    justify-content: center;
  }
}

/* Trust strip (home + shared) */
.trust-strip {
  padding: clamp(40px, 5vw, 56px) clamp(16px, 4.5vw, 70px);
  background:
    radial-gradient(circle at 18% 12%, rgba(20, 184, 166, 0.14), transparent 40%),
    radial-gradient(circle at 92% 80%, rgba(255, 106, 77, 0.1), transparent 42%),
    linear-gradient(165deg, #060d1c 0%, #0b1d3a 55%, #0a1428 100%);
  border-block: 1px solid rgba(255, 246, 230, 0.08);
}

.trust-strip-inner {
  max-width: 1180px;
  margin: 0 auto;
}

.trust-strip-head {
  max-width: 44rem;
  margin-bottom: clamp(22px, 3vw, 28px);
}

.trust-strip-eyebrow {
  margin-bottom: 10px;
}

.trust-strip-head h2 {
  color: var(--on-dark-heading);
}

.trust-strip-head .section-text {
  color: var(--on-dark-body);
}

.trust-grid {
  display: grid;
  gap: clamp(14px, 2vw, 18px);
  grid-template-columns: 1fr;
}

@media (min-width: 720px) {
  .trust-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.trust-card {
  padding: clamp(18px, 2.2vw, 22px);
  border-radius: var(--radius);
  background: rgba(255, 251, 242, 0.96);
  border: 1px solid rgba(11, 29, 58, 0.1);
  box-shadow: 0 14px 32px rgba(2, 6, 14, 0.22);
}

.trust-card h3 {
  margin: 0 0 8px;
  font-size: 1.05rem;
  color: var(--navy);
}

.trust-card p {
  margin: 0;
  font-size: 0.92rem;
  line-height: 1.58;
  color: var(--slate);
}

/* Downtown: image spot grid */
.dt-spots-section {
  padding: clamp(36px, 4.5vw, 52px) clamp(16px, 4vw, 48px);
  background:
    linear-gradient(180deg, rgba(6, 12, 24, 0.38), rgba(6, 12, 24, 0.82)),
    url("assets/sa-plug-family-downtown-riverwalk.png") center / cover no-repeat;
  border-block: 1px solid rgba(255, 246, 230, 0.1);
}

.dt-spots-inner {
  max-width: 1180px;
  margin: 0 auto;
}

.dt-spots-head h2 {
  color: #fff8eb;
  margin: 0 0 10px;
}

.dt-spots-head .section-text {
  color: rgba(255, 246, 230, 0.86);
  max-width: 48rem;
}

/* Where to eat: category image grid */
.eat-cat-band {
  padding: clamp(32px, 4vw, 48px) clamp(16px, 4vw, 40px);
  background:
    radial-gradient(ellipse 80% 60% at 50% 0%, rgba(242, 178, 26, 0.08), transparent 45%),
    linear-gradient(180deg, #070f1c 0%, #050a12 100%);
  border-block: 1px solid rgba(255, 246, 230, 0.06);
}

.eat-cat-inner {
  max-width: 1180px;
  margin: 0 auto;
}

.eat-cat-head {
  margin-bottom: clamp(20px, 2.5vw, 26px);
}

.eat-cat-head h2 {
  margin: 0 0 8px;
  color: #fff8eb;
  font-size: clamp(1.35rem, 2.5vw + 0.5rem, 1.85rem);
}

.eat-cat-head .section-text {
  margin: 0;
  color: rgba(255, 246, 230, 0.82);
  max-width: 52ch;
}

/* Transport: image situation row */
.tc-situation-band {
  padding: clamp(32px, 4vw, 48px) clamp(16px, 4vw, 40px);
  background:
    linear-gradient(105deg, rgba(5, 10, 22, 0.92) 0%, rgba(5, 10, 22, 0.75) 45%, rgba(5, 10, 22, 0.55) 100%),
    url("assets/hero-elegant-urban-arrival-sunset.png") center / cover no-repeat;
  border-block: 1px solid rgba(255, 246, 230, 0.08);
}

.tc-situation-inner {
  max-width: 1180px;
  margin: 0 auto;
}

.tc-situation-head h2 {
  color: #fff8eb;
  margin: 0 0 8px;
}

.tc-situation-head .section-text {
  color: rgba(255, 246, 230, 0.85);
  max-width: 52ch;
  margin: 0 0 clamp(18px, 2.5vw, 24px);
}

/* ============================================================== */
/* HOME PAGE — Fast Routing image-supported cards                  */
/* ============================================================== */
.route-selector-card.route-card-with-media {
  padding: 0;
  gap: 0;
}

.route-card-media-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: #0b1d3a;
  flex: 0 0 auto;
}

.route-card-media-wrap::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(11, 29, 58, 0) 55%, rgba(11, 29, 58, 0.42) 100%);
  pointer-events: none;
}

.route-card-media {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.35s ease;
}

.route-card-with-media:hover .route-card-media {
  transform: scale(1.03);
}

.route-card-with-media .route-card-body {
  display: flex;
  flex-direction: column;
  gap: 11px;
  padding: 16px 20px 20px;
  flex: 1 1 auto;
  min-height: 0;
}

.route-card-with-media .route-card-head {
  min-height: 0;
}

.route-card-with-media p {
  color: var(--slate);
  margin: 0;
  flex: 1 1 auto;
  line-height: 1.55;
}

.route-card-with-media .btn-block {
  margin-top: 0;
  flex-shrink: 0;
}

/* Keep the colored accent bar visually pleasing above the image */
.route-selector-card.route-card-with-media::before {
  z-index: 2;
}

/* ============================================================== */
/* HOME PAGE — Why Trust image-supported cards                     */
/* ============================================================== */
.trust-card.trust-card-media {
  padding: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.trust-card-media-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: #0b1d3a;
  flex: 0 0 auto;
}

.trust-card-media-wrap::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(11, 29, 58, 0) 50%, rgba(11, 29, 58, 0.5) 100%);
  pointer-events: none;
}

.trust-card-media-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform 0.35s ease;
}

.trust-card-media:hover .trust-card-media-img {
  transform: scale(1.03);
}

.trust-card-media-tag {
  position: absolute;
  bottom: 10px;
  left: 12px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  padding: 5px 10px;
  font-size: 0.66rem;
  font-weight: 850;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-radius: 999px;
  color: var(--cream);
  background: rgba(8, 14, 28, 0.72);
  border: 1px solid rgba(242, 178, 26, 0.5);
  backdrop-filter: blur(6px);
  white-space: nowrap;
  max-width: calc(100% - 24px);
}

.trust-card-body {
  padding: clamp(16px, 2vw, 20px);
  display: flex;
  flex-direction: column;
  gap: 6px;
  flex: 1 1 auto;
}

.trust-card-body h3 {
  margin: 0;
  font-size: 1.05rem;
  color: var(--navy);
}

.trust-card-body p {
  margin: 0;
  font-size: 0.92rem;
  line-height: 1.58;
  color: var(--slate);
}

/* ============================================================== */
/* HOME PAGE — Built by The AI Plug (systems layout)               */
/* ============================================================== */
.ai-proof-shell.ai-proof-systems {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(22px, 3vw, 34px);
  max-width: 1300px;
  margin-inline: auto;
  width: 100%;
}

.ai-proof-shell.ai-proof-systems .ai-proof-header-band {
  display: flex;
  flex-direction: column;
  gap: 12px;
  max-width: 60rem;
  margin: 0;
}

.ai-proof-shell.ai-proof-systems .ai-proof-eyebrow {
  margin: 0;
}

.ai-proof-shell.ai-proof-systems .ai-proof-headline {
  margin-bottom: 0 !important;
  max-width: 32ch;
}

.ai-proof-shell.ai-proof-systems .ai-proof-lead {
  margin-bottom: 0;
  max-width: 64ch;
}

.ai-proof-shell.ai-proof-systems .ai-proof-body {
  display: grid;
  gap: clamp(10px, 1.4vw, 14px);
}

.ai-proof-shell.ai-proof-systems .ai-proof-support {
  margin: 0;
  max-width: 64ch;
  color: rgba(255, 246, 230, 0.82);
}

.ai-proof-pillar-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(8px, 1.2vw, 10px);
  margin: clamp(4px, 0.8vw, 8px) 0 0;
  padding: 0;
  list-style: none;
}

.ai-proof-pillar {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 2.75rem;
  padding: 10px 12px;
  margin: 0;
  border-radius: calc(var(--radius) - 2px);
  font-size: clamp(0.78rem, 0.12vw + 0.74rem, 0.86rem);
  font-weight: 750;
  letter-spacing: 0.02em;
  line-height: 1.25;
  text-align: center;
  color: rgba(255, 248, 235, 0.96);
  background: rgba(255, 246, 230, 0.05);
  border: 1px solid rgba(255, 246, 230, 0.18);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.ai-proof-pillar:nth-child(1) {
  border-color: rgba(242, 178, 26, 0.38);
}

.ai-proof-pillar:nth-child(2) {
  border-color: rgba(20, 184, 166, 0.38);
}

.ai-proof-pillar:nth-child(3) {
  border-color: rgba(255, 139, 31, 0.36);
}

.ai-proof-pillar:nth-child(4) {
  border-color: rgba(255, 92, 168, 0.32);
}

.ai-proof-pillar:nth-child(5) {
  border-color: rgba(20, 184, 166, 0.34);
}

.ai-proof-pillar:nth-child(6) {
  border-color: rgba(255, 139, 31, 0.34);
}

.ai-proof-pillar:nth-child(7) {
  border-color: rgba(242, 178, 26, 0.36);
}

.ai-proof-pillar:nth-child(8) {
  border-color: rgba(120, 160, 255, 0.32);
}

.ai-proof-pillar-row--capabilities {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(8px, 1.4vw, 10px);
  margin-top: clamp(6px, 1.2vw, 10px);
}

@media (min-width: 640px) {
  .ai-proof-pillar-row--capabilities {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width: 960px) {
  .ai-proof-pillar-row--capabilities {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.ai-proof-pillar-row--capabilities .ai-proof-pillar {
  min-height: 2.5rem;
  padding: 9px 11px;
  font-size: clamp(0.72rem, 0.1vw + 0.7rem, 0.82rem);
  font-weight: 720;
  letter-spacing: 0.01em;
  line-height: 1.3;
  text-wrap: balance;
}

@media (min-width: 720px) {
  .ai-proof-pillar-row:not(.ai-proof-pillar-row--capabilities) {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.ai-proof-pillar-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(12px, 2vw, 16px);
  margin: 0;
  padding: 0;
  list-style: none;
}

@media (min-width: 640px) {
  .ai-proof-pillar-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(14px, 2vw, 18px);
  }
}

.ai-proof-pillar-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
  min-height: 100%;
  margin: 0;
  padding: clamp(16px, 2.2vw, 20px);
  border-radius: var(--radius);
  border: 1px solid rgba(255, 246, 230, 0.14);
  background:
    radial-gradient(circle at 12% -20%, rgba(20, 184, 166, 0.12), transparent 42%),
    linear-gradient(168deg, rgba(255, 246, 230, 0.08) 0%, rgba(4, 12, 28, 0.58) 100%);
  box-shadow:
    0 14px 32px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 246, 230, 0.07);
  overflow: hidden;
  isolation: isolate;
}

.ai-proof-pillar-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  pointer-events: none;
}

.ai-proof-pillar-card--advantage::before {
  background: linear-gradient(90deg, var(--gold), rgba(242, 178, 26, 0.45));
}

.ai-proof-pillar-card--marketing::before {
  background: linear-gradient(90deg, var(--turquoise), rgba(20, 184, 166, 0.45));
}

.ai-proof-pillar-card--operators::before {
  background: linear-gradient(90deg, var(--orange), rgba(255, 139, 31, 0.45));
}

.ai-proof-pillar-card--adaptation::before {
  background: linear-gradient(90deg, var(--pink), rgba(255, 92, 168, 0.45));
}

.ai-proof-pillar-card h3 {
  position: relative;
  z-index: 1;
  margin: 0;
  font-size: clamp(0.96rem, 0.2vw + 0.9rem, 1.04rem);
  font-weight: 850;
  letter-spacing: -0.015em;
  line-height: 1.25;
  color: var(--cream);
}

.ai-proof-pillar-card p {
  position: relative;
  z-index: 1;
  margin: 0;
  flex: 1 1 auto;
  font-size: clamp(0.84rem, 0.12vw + 0.8rem, 0.9rem);
  line-height: 1.55;
  color: rgba(255, 246, 230, 0.84);
}

.ai-systems-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 4px;
}

.ai-systems-chip {
  display: inline-flex;
  align-items: center;
  padding: 6px 12px;
  border-radius: 999px;
  font-size: 0.74rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  color: rgba(255, 246, 230, 0.94);
  background: rgba(255, 246, 230, 0.06);
  border: 1px solid rgba(255, 246, 230, 0.22);
  white-space: nowrap;
  transition: border-color 0.2s ease, background 0.2s ease;
}

.ai-systems-chip:nth-child(4n + 1) {
  border-color: rgba(242, 178, 26, 0.5);
}

.ai-systems-chip:nth-child(4n + 2) {
  border-color: rgba(20, 184, 166, 0.5);
}

.ai-systems-chip:nth-child(4n + 3) {
  border-color: rgba(255, 92, 168, 0.45);
}

.ai-systems-chip:nth-child(4n) {
  border-color: rgba(255, 139, 31, 0.5);
}

.ai-proof-shell.ai-proof-systems .ai-proof-cta {
  align-self: flex-start;
  width: fit-content;
  max-width: 100%;
  margin-top: 0;
}

.ai-proof-shell.ai-proof-systems .ai-proof-proofline {
  margin: 0;
  max-width: 52ch;
  font-size: clamp(0.9rem, 0.2vw + 0.84rem, 0.98rem);
  line-height: 1.55;
  font-weight: 650;
  color: rgba(255, 235, 210, 0.88);
}

.ai-proof-shell.ai-proof-systems .ai-proof-cta-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 12px;
  margin-top: clamp(4px, 1vw, 8px);
}

.ai-proof-shell.ai-proof-systems .ai-proof-cta-row .btn {
  flex: 1 1 auto;
  min-width: min(100%, 11rem);
  min-height: 48px;
}

.ai-proof-shell.ai-proof-systems .restaurant-owner-soft-link:not(.restaurant-owner-cta-strip) {
  margin: clamp(10px, 1.6vw, 14px) 0 0;
}

.ai-proof-shell.ai-proof-systems .ai-proof-systems-intro {
  display: grid;
  gap: clamp(20px, 3vw, 32px);
  align-items: center;
}

@media (min-width: 960px) {
  .ai-proof-shell.ai-proof-systems .ai-proof-systems-intro {
    grid-template-columns: 1.05fr 0.95fr;
  }
}

.ai-proof-systems-visual {
  margin: 0;
  border-radius: var(--radius);
  overflow: hidden;
  border: 1px solid rgba(255, 246, 230, 0.14);
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.3);
}

.ai-proof-systems-visual img {
  display: block;
  width: 100%;
  height: auto;
  max-height: clamp(220px, 38vw, 420px);
  object-fit: cover;
  object-position: center;
}

@media (max-width: 959px) {
  .ai-proof-systems-visual {
    order: 1;
  }

  .ai-proof-shell.ai-proof-systems .ai-proof-header-band {
    order: 0;
  }
}

.ai-systems-card--proof {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
  min-height: 100%;
  padding: clamp(18px, 2.2vw, 22px);
  border-radius: var(--radius);
  border: 1px solid rgba(255, 246, 230, 0.14);
  background:
    radial-gradient(circle at 12% -20%, rgba(20, 184, 166, 0.16), transparent 42%),
    linear-gradient(168deg, rgba(255, 246, 230, 0.08) 0%, rgba(4, 12, 28, 0.58) 100%);
  box-shadow:
    0 18px 42px rgba(0, 0, 0, 0.3),
    inset 0 1px 0 rgba(255, 246, 230, 0.07);
  overflow: hidden;
  isolation: isolate;
}

.ai-systems-card--proof::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  pointer-events: none;
}

.ai-systems-card--proof-ask::before {
  background: linear-gradient(90deg, var(--turquoise), rgba(20, 184, 166, 0.45));
}

.ai-systems-card--proof-route::before,
.ai-systems-card--proof-business::before {
  background: linear-gradient(90deg, var(--gold), var(--orange));
}

.ai-systems-card--proof-alert::before,
.ai-systems-card--proof-adapt::before,
.ai-systems-card--proof-live::before {
  background: linear-gradient(90deg, var(--pink), rgba(255, 92, 168, 0.45));
}

.ai-systems-card--proof .ai-systems-tag {
  position: relative;
  z-index: 1;
}

.ai-systems-card--proof h3 {
  position: relative;
  z-index: 1;
  font-size: 1.02rem;
  margin: 0;
  color: var(--cream);
  letter-spacing: -0.015em;
  line-height: 1.25;
}

.ai-systems-card--proof p {
  position: relative;
  z-index: 1;
  font-size: 0.88rem;
  line-height: 1.55;
  margin: 0;
  color: rgba(255, 246, 230, 0.84);
}

.ai-systems-grid--proof {
  gap: clamp(14px, 2vw, 18px);
}

.ai-systems-hero-frame {
  position: relative;
  margin: 0;
  border-radius: 24px;
  overflow: hidden;
  background: #060d1c;
  border: 1px solid rgba(255, 246, 230, 0.18);
  box-shadow:
    0 28px 60px rgba(0, 0, 0, 0.42),
    0 0 36px rgba(20, 184, 166, 0.08);
  aspect-ratio: 21 / 9;
  isolation: isolate;
}

.ai-systems-hero-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.ai-systems-hero-frame::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(6, 13, 28, 0) 45%, rgba(6, 13, 28, 0.78) 100%);
  pointer-events: none;
}

.ai-systems-hero-caption {
  position: absolute;
  left: clamp(16px, 3vw, 28px);
  right: clamp(16px, 3vw, 28px);
  bottom: clamp(14px, 2.4vw, 22px);
  z-index: 2;
  margin: 0;
  color: var(--cream);
  font-size: clamp(0.92rem, 0.6vw + 0.78rem, 1.06rem);
  font-weight: 760;
  letter-spacing: -0.005em;
  text-shadow: 0 2px 14px rgba(6, 13, 28, 0.7);
}

.ai-systems-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(14px, 2vw, 20px);
}

@media (min-width: 640px) {
  .ai-systems-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1080px) {
  .ai-systems-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.ai-systems-card {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: 20px;
  overflow: hidden;
  background: linear-gradient(160deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.03));
  border: 1px solid rgba(255, 246, 230, 0.2);
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.32);
  transition: transform 0.2s ease, border-color 0.2s ease;
  min-height: 0;
}

.ai-systems-card:hover {
  transform: translateY(-3px);
  border-color: rgba(242, 178, 26, 0.4);
}

.ai-systems-card-media-wrap {
  position: relative;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: #060d1c;
}

.ai-systems-card-media {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.35s ease;
}

.ai-systems-card:hover .ai-systems-card-media {
  transform: scale(1.04);
}

.ai-systems-card-media-wrap::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(6, 13, 28, 0) 55%, rgba(6, 13, 28, 0.7) 100%);
  pointer-events: none;
}

.ai-systems-card-body {
  padding: clamp(14px, 1.8vw, 18px);
  display: flex;
  flex-direction: column;
  gap: 6px;
  flex: 1 1 auto;
}

.ai-systems-tag {
  display: inline-flex;
  align-self: flex-start;
  padding: 3px 9px;
  font-size: 0.66rem;
  font-weight: 850;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-radius: 999px;
  color: var(--gold);
  background: rgba(242, 178, 26, 0.1);
  border: 1px solid rgba(242, 178, 26, 0.42);
  white-space: nowrap;
  max-width: 100%;
}

.ai-systems-card h3 {
  font-size: 1rem;
  margin: 0;
  color: var(--cream);
  letter-spacing: -0.015em;
  line-height: 1.25;
}

.ai-systems-card p {
  font-size: 0.86rem;
  line-height: 1.55;
  margin: 0;
  color: rgba(255, 246, 230, 0.84);
}

/* Mobile QA: prevent horizontal scroll & cramp at 390px / 430px */
@media (max-width: 480px) {
  .ai-systems-hero-frame {
    aspect-ratio: 16 / 10;
    border-radius: 18px;
  }

  .ai-systems-card {
    border-radius: 16px;
  }

  .route-card-with-media .route-card-body {
    padding: 14px 16px 16px;
  }

  .trust-card-body {
    padding: 14px 16px 16px;
  }
}

/* ============================================================== */
/* HOME PAGE — immersive lane grid (Family-style, bottom scrim only) */
/* ============================================================== */
.page-home .home-immersive-routes {
  overflow-x: clip;
}

.page-home .home-immersive-routes.section {
  padding-top: clamp(26px, 3.2vw, 40px);
  padding-bottom: clamp(34px, 4vw, 52px);
}

.page-home .home-immersive-routes .routes-band-inner {
  gap: clamp(10px, 1.4vw, 16px);
}

.page-home .home-lanes-intro {
  max-width: 42rem;
  margin-bottom: clamp(6px, 1vw, 14px);
}

.page-home .home-lanes-intro .eyebrow {
  margin-bottom: 6px;
}

.page-home .home-lanes-intro h2 {
  text-wrap: balance;
  margin-top: 0;
  margin-bottom: clamp(6px, 1vw, 10px);
}

.page-home .home-lanes-lead {
  margin: 0;
  max-width: 38rem;
}

.page-home .home-lanes-intro::after {
  content: "";
  display: block;
  width: clamp(140px, 18vw, 220px);
  height: 2px;
  margin-top: clamp(8px, 1.4vw, 12px);
  border-radius: 999px;
  background: linear-gradient(
    90deg,
    rgba(20, 184, 166, 0.95),
    rgba(242, 178, 26, 0.95),
    rgba(255, 106, 77, 0.88)
  );
  opacity: 0.9;
}

/* Route “board”: asymmetrical editorial layout — not a uniform card grid */
.page-home .home-route-board {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: clamp(10px, 1.45vw, 15px);
  grid-template-columns: 1fr;
}

@media (min-width: 640px) and (max-width: 899px) {
  .page-home .home-route-board {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .page-home .home-route-board > li:first-child {
    grid-column: 1 / -1;
  }

  .page-home .home-route-board > li:nth-child(4) {
    grid-column: 1 / -1;
  }
}

@media (min-width: 900px) {
  .page-home .home-route-board {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    align-items: stretch;
  }

  .page-home .home-route-board > li:nth-child(1) {
    grid-column: 1 / -1;
  }

  .page-home .home-route-board > li:nth-child(2) {
    grid-column: 1 / span 3;
  }

  .page-home .home-route-board > li:nth-child(3) {
    grid-column: 4 / span 3;
  }

  .page-home .home-route-board > li:nth-child(4) {
    grid-column: 1 / span 2;
  }

  .page-home .home-route-board > li:nth-child(5) {
    grid-column: 3 / span 2;
  }

  .page-home .home-route-board > li:nth-child(6) {
    grid-column: 5 / span 2;
  }
}

.page-home .home-route-board > li {
  margin: 0;
  padding: 0;
  display: flex;
  min-height: 0;
}

.page-home .home-lane-card {
  flex: 1;
  box-sizing: border-box;
  display: block;
  min-width: 0;
  border-radius: clamp(18px, 2.4vw, 24px);
  overflow: hidden;
  text-decoration: none;
  color: #fff;
  background: #0a1428;
  border: 1px solid rgba(255, 255, 255, 0.2);
  box-shadow:
    0 20px 50px rgba(5, 10, 24, 0.22),
    0 0 0 1px rgba(20, 184, 166, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.12);
  transition:
    transform 0.22s cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 0.22s ease,
    border-color 0.22s ease;
}

.page-home .home-lane-card:hover {
  transform: translateY(-4px);
  border-color: rgba(255, 246, 230, 0.38);
  box-shadow:
    0 28px 60px rgba(5, 10, 24, 0.35),
    0 0 0 1px rgba(242, 178, 26, 0.45),
    0 0 40px rgba(20, 184, 166, 0.12),
    inset 0 1px 0 rgba(255, 255, 255, 0.18);
}

.page-home .home-lane-card:focus-visible {
  outline: 3px solid rgba(242, 178, 26, 0.95);
  outline-offset: 3px;
}

.page-home .home-lane-card--landed {
  box-shadow:
    0 20px 50px rgba(5, 10, 24, 0.22),
    0 0 0 1px rgba(255, 139, 31, 0.32),
    inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

.page-home .home-lane-card--dinner {
  box-shadow:
    0 20px 50px rgba(5, 10, 24, 0.22),
    0 0 0 1px rgba(242, 178, 26, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

.page-home .home-lane-card--dt {
  box-shadow:
    0 20px 50px rgba(5, 10, 24, 0.22),
    0 0 0 1px rgba(14, 165, 233, 0.26),
    inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

.page-home .home-lane-card--resort {
  box-shadow:
    0 20px 50px rgba(5, 10, 24, 0.22),
    0 0 0 1px rgba(255, 106, 77, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

.page-home .home-lane-card--family {
  box-shadow:
    0 20px 50px rgba(5, 10, 24, 0.22),
    0 0 0 1px rgba(255, 92, 168, 0.26),
    inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

.page-home .home-lane-card--transport {
  box-shadow:
    0 20px 50px rgba(5, 10, 24, 0.22),
    0 0 0 1px rgba(20, 184, 166, 0.35),
    inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

/* Size tiers for the route board */
.page-home .home-lane-card--featured .home-lane-card-media-wrap {
  min-height: clamp(280px, 54vw, 420px);
}

@media (min-width: 640px) {
  .page-home .home-lane-card--featured .home-lane-card-media-wrap {
    min-height: clamp(320px, 36vw, 440px);
  }
}

@media (min-width: 900px) {
  .page-home .home-lane-card--featured .home-lane-card-media-wrap {
    min-height: clamp(380px, 28vw, 500px);
  }
}

.page-home .home-lane-card--medium .home-lane-card-media-wrap {
  min-height: clamp(240px, 58vw, 320px);
}

@media (min-width: 900px) {
  .page-home .home-lane-card--medium .home-lane-card-media-wrap {
    min-height: clamp(300px, 22vw, 380px);
  }
}

.page-home .home-lane-card--compact .home-lane-card-media-wrap {
  min-height: clamp(272px, 54vw, 368px);
}

@media (min-width: 900px) {
  .page-home .home-lane-card--compact .home-lane-card-media-wrap {
    min-height: clamp(312px, 19vw, 412px);
  }
}

.page-home .home-lane-card-media-wrap {
  position: relative;
  width: 100%;
  overflow: hidden;
  background: rgba(11, 29, 58, 0.16);
}

.page-home .home-lane-card-media {
  display: block;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.02);
  transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}

.page-home .home-lane-card:hover .home-lane-card-media {
  transform: scale(1.06);
}

.page-home .home-lane-media--dinner {
  object-position: 50% 54%;
}

.page-home .home-lane-media--dt {
  object-position: 48% 40%;
}

.page-home .home-lane-media--resort {
  object-position: 50% 42%;
}

.page-home .home-lane-media--family {
  object-position: 50% 48%;
}

.page-home .home-lane-media--transport {
  object-position: 50% 38%;
}

/* Bottom-weighted scrim — Family benchmark: strong read zone, photo stays vivid */
.page-home .home-lane-card-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(
    to top,
    rgba(5, 10, 24, 0.52) 0%,
    rgba(5, 10, 24, 0.28) 44%,
    rgba(5, 10, 24, 0.05) 74%,
    transparent 100%
  );
}

.page-home .home-lane-card--landed .home-lane-card-overlay {
  background: linear-gradient(
    to top,
    rgba(5, 10, 24, 0.44) 0%,
    rgba(5, 10, 24, 0.18) 46%,
    rgba(5, 10, 24, 0.03) 72%,
    transparent 100%
  );
}

.page-home .home-lane-card--landed .home-lane-media--landed {
  object-position: 50% 28%;
  filter: brightness(1.08) saturate(1.05);
}

.page-home .home-lane-card--transport .home-lane-card-overlay {
  background: linear-gradient(
    to top,
    rgba(5, 10, 24, 0.36) 0%,
    rgba(5, 10, 24, 0.14) 42%,
    rgba(5, 10, 24, 0.03) 70%,
    transparent 100%
  );
}

.page-home .home-lane-card-body {
  position: absolute;
  inset: 0;
  z-index: 2;
  box-sizing: border-box;
  width: 100%;
  max-width: min(36rem, 94%);
  padding: clamp(14px, 2.6vw, 22px) clamp(16px, 2.8vw, 24px) clamp(16px, 2.8vw, 22px);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-end;
  gap: clamp(6px, 1.2vw, 10px);
  text-align: left;
}

.page-home .home-lane-chip {
  align-self: flex-start;
  font-size: 0.58rem;
  font-weight: 850;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.98);
  background: rgba(255, 255, 255, 0.16);
  border: 1px solid rgba(255, 255, 255, 0.35);
  border-radius: 999px;
  padding: 5px 10px;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  box-shadow: 0 4px 14px rgba(5, 10, 24, 0.2);
  white-space: nowrap;
  max-width: 100%;
  box-sizing: border-box;
  overflow: hidden;
  text-overflow: ellipsis;
}

.page-home .home-lane-card--landed .home-lane-chip {
  border-color: rgba(255, 200, 120, 0.42);
  background: rgba(255, 139, 31, 0.2);
}

.page-home .home-lane-card--dinner .home-lane-chip {
  border-color: rgba(253, 224, 150, 0.45);
  background: rgba(242, 178, 26, 0.18);
}

.page-home .home-lane-card--dt .home-lane-chip {
  border-color: rgba(125, 211, 252, 0.45);
  background: rgba(14, 165, 233, 0.16);
}

.page-home .home-lane-card--resort .home-lane-chip {
  border-color: rgba(255, 170, 140, 0.45);
  background: rgba(255, 106, 77, 0.16);
}

.page-home .home-lane-card--family .home-lane-chip {
  border-color: rgba(251, 182, 206, 0.45);
  background: rgba(255, 92, 168, 0.16);
}

.page-home .home-lane-card--transport .home-lane-chip {
  border-color: rgba(45, 212, 191, 0.55);
  background: rgba(6, 78, 73, 0.35);
}

.page-home .home-lane-title {
  margin: 0;
  font-size: clamp(1.1rem, 0.42vw + 1rem, 1.38rem);
  font-weight: 870;
  letter-spacing: -0.028em;
  line-height: 1.14;
  color: #fff;
  text-wrap: balance;
  text-shadow: 0 2px 18px rgba(5, 10, 24, 0.45);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  align-self: stretch;
}

.page-home .home-lane-copy {
  margin: 0;
  font-size: clamp(0.84rem, 0.2vw + 0.78rem, 0.94rem);
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.92);
  max-width: 90%;
  text-shadow: 0 1px 12px rgba(5, 10, 24, 0.4);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  min-height: 0;
  align-self: stretch;
}

.page-home .home-lane-best {
  margin: 0;
  font-size: clamp(0.76rem, 0.14vw + 0.72rem, 0.84rem);
  line-height: 1.42;
  font-weight: 650;
  color: rgba(255, 255, 255, 0.9);
  text-shadow: 0 1px 10px rgba(5, 10, 24, 0.38);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  min-height: 0;
  align-self: stretch;
}

.page-home .home-lane-best-label {
  display: inline-block;
  margin-right: 0.35em;
  font-weight: 850;
  font-size: 0.65rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(253, 224, 150, 0.96);
}

.page-home .home-lane-cta {
  margin-top: 2px;
  align-self: flex-start;
  font-size: 0.7rem;
  font-weight: 820;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #fff;
  border-bottom: 2px solid rgba(242, 178, 26, 0.78);
  padding-bottom: 2px;
  pointer-events: none;
  transition: color 0.15s ease, border-color 0.15s ease;
}

.page-home .home-lane-card:hover .home-lane-cta {
  color: #fffef5;
  border-bottom-color: rgba(45, 212, 191, 0.92);
}

@media (prefers-reduced-motion: reduce) {
  .page-home .home-lane-card:hover {
    transform: none;
  }

  .page-home .home-lane-card:hover .home-lane-card-media {
    transform: scale(1.02);
  }
}

/* Homepage visitor journey — hero through trust (rhythm + type) */
.page-home .home-situation-band.home-immersive-routes.section {
  padding-top: clamp(22px, 2.8vw, 36px);
  padding-bottom: clamp(22px, 3vw, 36px);
}

.page-home .home-lanes-lead,
.page-home .home-trust-lede,
.page-home .home-directory-lede,
.page-home .section-text-explore.home-directory-lede,
.page-home .home-hero-lede,
.page-home .hero-proof-item,
.page-home .home-lane-copy,
.page-home .home-lane-best,
.page-home .home-dir-copy {
  letter-spacing: normal;
  word-spacing: normal;
  text-align: left;
  text-wrap: pretty;
}

.page-home .home-lane-card-overlay {
  background: linear-gradient(
    to top,
    rgba(5, 10, 24, 0.68) 0%,
    rgba(5, 10, 24, 0.34) 42%,
    rgba(5, 10, 24, 0.08) 72%,
    transparent 100%
  );
}

.page-home .home-lane-card-body {
  padding-bottom: max(clamp(18px, 2.8vw, 24px), calc(env(safe-area-inset-bottom, 0px) + 10px));
}

.page-home .home-lane-cta {
  font-size: 0.72rem;
  padding-bottom: 3px;
  border-bottom-width: 2px;
}

.page-home .home-lane-card--transport .home-lane-chip {
  white-space: nowrap;
  line-height: 1.2;
  max-width: 100%;
}

.page-home .home-lane-card--transport .home-lane-title {
  font-size: clamp(1rem, 0.32vw + 0.94rem, 1.2rem);
  -webkit-line-clamp: 2;
}

.page-home .home-lane-card--transport .home-lane-copy {
  max-width: 100%;
  -webkit-line-clamp: 2;
  line-height: 1.45;
}

.page-home .home-lane-card--transport .home-lane-card-body {
  gap: clamp(4px, 0.7vw, 7px);
}

.page-home .home-ask-bridge.home-ask-entry {
  padding-top: clamp(6px, 1vw, 12px);
  padding-bottom: clamp(12px, 1.8vw, 20px);
}

.page-home .home-ask-bridge .home-ask-entry-inner {
  border-left: 4px solid rgba(20, 184, 166, 0.82);
  padding: clamp(12px, 1.6vw, 16px) clamp(14px, 2vw, 20px);
  padding-left: clamp(14px, 2vw, 20px);
}

@media (min-width: 720px) {
  .page-home .home-ask-bridge .home-ask-entry-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: clamp(16px, 2.4vw, 28px);
  }

  .page-home .home-ask-bridge .home-ask-entry-copy {
    gap: 6px;
    max-width: none;
  }

  .page-home .home-ask-bridge .home-ask-entry-cta {
    margin-top: 0;
    flex-shrink: 0;
  }
}

.page-home .home-ask-entry-body {
  letter-spacing: normal;
  word-spacing: normal;
  text-align: left;
  text-wrap: pretty;
}

.page-home .home-ask-entry-copy h2 {
  text-wrap: balance;
}

.page-home .home-ask-entry-cta {
  align-self: flex-start;
  min-width: min(100%, 11.5rem);
}

@media (max-width: 520px) {
  .page-home .home-ask-entry-cta {
    width: 100%;
    justify-content: center;
  }
}

/* Guide directory — compact, distinct from situation cards */
.page-home .home-guide-directory.section-explore-dark {
  padding-top: clamp(26px, 3.2vw, 40px);
  padding-bottom: clamp(28px, 3.5vw, 44px);
  border-block: 1px solid rgba(255, 246, 230, 0.1);
  background:
    radial-gradient(ellipse 90% 55% at 12% 0%, rgba(20, 184, 166, 0.14), transparent 52%),
    radial-gradient(circle at 88% 18%, rgba(242, 178, 26, 0.1), transparent 40%),
    linear-gradient(180deg, #050b16 0%, #0a1528 52%, #0d1c36 100%);
}

.page-home .home-guide-directory .home-directory-head-copy {
  max-width: 40rem;
}

.page-home .home-guide-directory .home-directory-head .eyebrow {
  margin-bottom: 8px;
}

.page-home .home-guide-directory .home-directory-editorial {
  gap: clamp(10px, 1.35vw, 14px);
}

.page-home .home-guide-directory .home-dir-card {
  border-radius: clamp(14px, 1.8vw, 20px);
}

.page-home .home-guide-directory .home-dir-card-media-wrap {
  min-height: clamp(148px, 24vw, 188px);
}

.page-home .home-guide-directory .home-dir-slot--hero .home-dir-card-media-wrap {
  min-height: clamp(148px, 24vw, 188px);
}

.page-home .home-guide-directory .home-dir-card {
  box-shadow:
    0 14px 32px rgba(2, 6, 14, 0.34),
    0 0 0 1px rgba(20, 184, 166, 0.12),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.page-home .home-guide-directory .home-dir-card:hover {
  transform: translateY(-2px);
}

.page-home .home-guide-directory .home-dir-card-body {
  padding-bottom: max(clamp(14px, 2.2vw, 20px), calc(env(safe-area-inset-bottom, 0px) + 8px));
  gap: clamp(4px, 0.8vw, 7px);
}

.page-home .home-guide-directory .home-dir-title {
  font-size: clamp(1rem, 0.32vw + 0.92rem, 1.2rem);
}

.page-home .home-guide-directory .home-dir-copy {
  font-size: clamp(0.8rem, 0.16vw + 0.76rem, 0.88rem);
  line-height: 1.48;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  letter-spacing: normal;
  word-spacing: normal;
}

.page-home .home-guide-directory .home-dir-cta {
  margin-top: 2px;
  font-size: 0.66rem;
}

@media (min-width: 520px) and (max-width: 899px) {
  .page-home .home-guide-directory .home-directory-editorial {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .page-home .home-guide-directory .home-dir-slot--hero {
    grid-column: 1 / -1;
  }
}

@media (min-width: 900px) {
  .page-home .home-guide-directory .home-directory-editorial {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-auto-rows: 1fr;
    align-items: stretch;
  }

  .page-home .home-guide-directory .home-dir-slot--hero,
  .page-home .home-guide-directory .home-dir-slot--wide,
  .page-home .home-guide-directory .home-dir-slot--tall,
  .page-home .home-guide-directory .home-dir-slot {
    grid-column: auto;
    grid-row: auto;
  }

  .page-home .home-guide-directory .home-dir-slot--tall .home-dir-card-media-wrap,
  .page-home .home-guide-directory .home-dir-card-media-wrap,
  .page-home .home-guide-directory .home-dir-slot--hero .home-dir-card-media-wrap {
    min-height: clamp(160px, 12vw, 200px);
  }
}

.page-home .home-trust-band.trust-strip--home-proof {
  padding-top: clamp(18px, 2.4vw, 28px);
  padding-bottom: clamp(18px, 2.4vw, 28px);
}

.page-home .home-trust-compact.trust-strip--home-proof {
  padding: clamp(20px, 2.6vw, 32px) clamp(16px, 4.5vw, 70px);
}

.page-home .home-trust-compact.trust-strip--home-proof .trust-strip-inner {
  display: flex;
  flex-direction: column;
  gap: clamp(12px, 1.8vw, 18px);
  max-width: min(920px, 100%);
  margin-inline: auto;
}

.page-home .home-trust-lede {
  max-width: 44rem;
}

.page-home .home-trust-compact-head.trust-strip-head {
  margin-bottom: 0;
}

.page-home .home-trust-compact-head h2 {
  font-size: clamp(1.2rem, 1.8vw + 0.7rem, 1.65rem);
  line-height: 1.18;
  text-wrap: balance;
}

.page-home .home-trust-proof-row {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
}

@media (min-width: 600px) {
  .page-home .home-trust-proof-row {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px 14px;
  }
}

.page-home .home-trust-proof-item {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin: 0;
  padding: 12px 14px;
  border-radius: 14px;
  font-size: clamp(0.8rem, 0.2vw + 0.76rem, 0.88rem);
  font-weight: 750;
  line-height: 1.38;
  letter-spacing: 0.01em;
  color: rgba(255, 246, 230, 0.92);
  background: rgba(255, 246, 230, 0.06);
  border: 1px solid rgba(255, 246, 230, 0.14);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.page-home .home-trust-proof-icon {
  flex-shrink: 0;
  width: 6px;
  height: 6px;
  margin-top: 5px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--turquoise), var(--gold));
  box-shadow: 0 0 0 3px rgba(20, 184, 166, 0.18);
}

.page-home .trust-card-story-body p {
  letter-spacing: normal;
  word-spacing: normal;
  text-align: left;
  text-wrap: pretty;
}

/* Homepage trust strip — golden-hour navy + immersive story cards */
.trust-strip.trust-strip--home-proof {
  padding: clamp(48px, 6vw, 72px) clamp(16px, 4.5vw, 70px);
  background:
    radial-gradient(circle at 18% 18%, rgba(242, 178, 26, 0.15), transparent 44%),
    radial-gradient(circle at 92% 30%, rgba(255, 106, 77, 0.12), transparent 40%),
    radial-gradient(circle at 72% 88%, rgba(20, 184, 166, 0.12), transparent 42%),
    linear-gradient(168deg, #050910 0%, #0c1830 48%, #121c38 100%);
  border-block: 1px solid rgba(255, 246, 230, 0.09);
}

.trust-strip-head--editorial.trust-strip-head {
  max-width: 46rem;
  margin-bottom: clamp(26px, 3.5vw, 36px);
}

.trust-grid.trust-grid--immersive {
  gap: clamp(18px, 2.4vw, 24px);
}

.trust-card.trust-card--immersive-home {
  padding: 0;
  background: transparent;
  border: none;
  box-shadow: none;
  overflow: visible;
}

.trust-card.trust-card--immersive-home .trust-card-media-wrap--story {
  position: relative;
  width: 100%;
  aspect-ratio: auto;
  min-height: clamp(280px, 46vw, 400px);
  border-radius: clamp(18px, 2.4vw, 26px);
  overflow: hidden;
  border: 1px solid rgba(255, 246, 230, 0.2);
  box-shadow:
    0 28px 58px rgba(2, 6, 14, 0.48),
    0 0 0 1px rgba(242, 178, 26, 0.22);
  background: #0b1530;
  flex: 1 1 auto;
}

.trust-card.trust-card--immersive-home .trust-card-media-wrap--story::after {
  display: none;
}

.trust-card--route-logic .trust-card-media-wrap--story {
  border-color: rgba(242, 178, 26, 0.32);
  box-shadow:
    0 28px 58px rgba(2, 6, 14, 0.48),
    0 0 0 1px rgba(20, 184, 166, 0.2);
}

.trust-card--hospitality .trust-card-media-wrap--story {
  border-color: rgba(255, 106, 77, 0.28);
}

.trust-card--mobile .trust-card-media-wrap--story {
  border-color: rgba(20, 184, 166, 0.38);
}

.trust-card-story-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(
    to top,
    rgba(5, 10, 24, 0.62) 0%,
    rgba(5, 10, 24, 0.28) 50%,
    rgba(5, 10, 24, 0.05) 78%,
    transparent 100%
  );
}

.trust-card-story-body {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  box-sizing: border-box;
  padding: clamp(16px, 2.8vw, 26px);
  max-width: min(38rem, 94%);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: clamp(6px, 1.2vw, 10px);
}

.trust-card-story-chip {
  display: inline-flex;
  align-items: center;
  padding: 5px 10px;
  font-size: 0.58rem;
  font-weight: 850;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  border-radius: 999px;
  color: rgba(255, 255, 255, 0.98);
  background: rgba(255, 255, 255, 0.12);
  border: 1px solid rgba(255, 246, 230, 0.32);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  box-shadow: 0 4px 16px rgba(5, 10, 24, 0.25);
}

.trust-card-story-body h3 {
  margin: 0;
  font-size: clamp(1.08rem, 0.42vw + 0.96rem, 1.34rem);
  font-weight: 870;
  letter-spacing: -0.026em;
  line-height: 1.12;
  color: #fff;
  text-wrap: balance;
  text-shadow: 0 2px 22px rgba(5, 10, 24, 0.5);
}

.trust-card-story-body p {
  margin: 0;
  font-size: clamp(0.86rem, 0.2vw + 0.8rem, 0.96rem);
  line-height: 1.56;
  color: rgba(255, 246, 230, 0.92);
  text-shadow: 0 1px 14px rgba(5, 10, 24, 0.42);
}

.trust-card.trust-card--immersive-home .trust-card-media-img {
  transition: transform 0.42s cubic-bezier(0.22, 1, 0.36, 1);
}

.trust-card.trust-card--immersive-home:hover .trust-card-media-img {
  transform: scale(1.05);
}

.trust-card--route-logic .trust-card-media-img--route-logic {
  object-fit: cover;
  object-position: center;
}

.trust-card--hospitality .trust-card-media-img--concierge {
  object-fit: cover;
  object-position: 50% 38%;
}

.trust-card--mobile .trust-card-media-img--mobile {
  object-fit: cover;
  object-position: 50% 42%;
}

@media (prefers-reduced-motion: reduce) {
  .trust-card.trust-card--immersive-home:hover .trust-card-media-img {
    transform: none;
  }
}

/* Homepage transport — route-planning feature block (intro + image card + trust note) */
.transport-section.transport-section--story {
  overflow-x: clip;
}

.page-home .transport-story-shell {
  max-width: 1300px;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  gap: clamp(16px, 2.2vw, 22px);
  width: 100%;
}

.page-home .transport-story-body {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: clamp(20px, 2.8vw, 32px);
  align-items: stretch;
  padding: clamp(18px, 2.6vw, 28px);
  border-radius: clamp(18px, 2.6vw, 26px);
  border: 1px solid rgba(255, 246, 230, 0.16);
  background:
    linear-gradient(155deg, rgba(255, 246, 230, 0.05) 0%, rgba(7, 16, 34, 0.42) 52%),
    rgba(4, 10, 22, 0.55);
  box-shadow:
    inset 0 1px 0 rgba(255, 246, 230, 0.1),
    0 28px 56px rgba(2, 6, 14, 0.38);
}

@media (min-width: 960px) {
  .page-home .transport-story-body {
    grid-template-columns: minmax(0, 0.92fr) minmax(280px, 1.08fr);
    gap: clamp(24px, 3.2vw, 40px);
    align-items: stretch;
  }

  .page-home .transport-story-intro {
    align-self: center;
  }
}

.transport-story-intro {
  display: flex;
  flex-direction: column;
  gap: clamp(12px, 1.6vw, 16px);
  max-width: 40rem;
}

.transport-story-eyebrow {
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-weight: 820;
  margin: 0;
}

.transport-story-heading {
  margin: 0;
  font-size: clamp(1.6rem, 2.4vw + 1rem, 2.45rem);
  line-height: 1.06;
  letter-spacing: -0.032em;
  font-weight: 860;
  text-wrap: balance;
}

.transport-story-lede {
  margin: 0;
  text-align: left;
  text-wrap: pretty;
  word-break: normal;
  overflow-wrap: normal;
  hyphens: manual;
  letter-spacing: normal;
  line-height: 1.58;
  max-width: 38rem;
}

.transport-story-trust {
  margin: 0;
  padding: 0 clamp(4px, 1vw, 8px);
  max-width: 52rem;
  font-size: clamp(0.72rem, 0.12vw + 0.68rem, 0.8rem);
  font-weight: 520;
  line-height: 1.5;
  letter-spacing: normal;
  text-align: left;
  text-wrap: pretty;
  word-break: normal;
  color: rgba(255, 246, 230, 0.58);
}

.page-home .transport-story-card {
  display: block;
  text-decoration: none;
  color: inherit;
  border-radius: clamp(14px, 2vw, 20px);
  overflow: hidden;
  border: 1px solid rgba(255, 246, 230, 0.2);
  box-shadow:
    0 20px 44px rgba(2, 6, 14, 0.42),
    0 0 0 1px rgba(242, 178, 26, 0.16);
  background: #071022;
  align-self: stretch;
  min-height: 100%;
  transition:
    transform 0.22s cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 0.22s ease,
    border-color 0.22s ease;
}

.page-home .transport-story-card:hover {
  transform: translateY(-5px);
  border-color: rgba(255, 246, 230, 0.38);
  box-shadow:
    0 40px 74px rgba(2, 6, 14, 0.58),
    0 0 0 1px rgba(45, 212, 191, 0.32),
    0 0 48px rgba(255, 139, 31, 0.1);
}

.page-home .transport-story-card:focus-visible {
  outline: 3px solid rgba(242, 178, 26, 0.95);
  outline-offset: 4px;
}

.page-home .transport-story-card-media-wrap {
  position: relative;
  width: 100%;
  min-height: clamp(300px, 52vw, 480px);
  height: 100%;
  overflow: hidden;
  background: #0a1628;
}

@media (min-width: 960px) {
  .page-home .transport-story-card-media-wrap {
    min-height: 100%;
  }
}

.page-home .transport-story-card-media {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 42%;
  display: block;
  transform: scale(1.02);
  transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}

.page-home .transport-story-card:hover .transport-story-card-media {
  transform: scale(1.06);
}

.page-home .transport-story-card-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    radial-gradient(ellipse 90% 60% at 70% 18%, rgba(255, 139, 31, 0.12), transparent 55%),
    linear-gradient(
      to top,
      rgba(5, 10, 24, 0.72) 0%,
      rgba(5, 10, 24, 0.32) 45%,
      rgba(5, 10, 24, 0.06) 72%,
      transparent 100%
    );
}

.page-home .transport-story-card-stack {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  padding: clamp(18px, 3vw, 28px);
  max-width: min(34rem, 96%);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: clamp(8px, 1.2vw, 10px);
}

.page-home .transport-story-card-kicker {
  font-size: 0.62rem;
  font-weight: 850;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(253, 224, 150, 0.98);
}

.page-home .transport-story-card-title {
  margin: 0;
  font-size: clamp(1.05rem, 0.35vw + 0.96rem, 1.28rem);
  font-weight: 860;
  letter-spacing: -0.022em;
  line-height: 1.22;
  color: #fff8eb;
  text-shadow: 0 2px 24px rgba(5, 10, 24, 0.45);
  text-align: left;
  text-wrap: pretty;
  word-break: normal;
}

.page-home .transport-story-card-pitch {
  margin: 0;
  font-size: clamp(0.88rem, 0.2vw + 0.82rem, 0.98rem);
  line-height: 1.5;
  font-weight: 620;
  color: rgba(255, 246, 230, 0.9);
  text-align: left;
  text-wrap: pretty;
  word-break: normal;
  letter-spacing: normal;
}

.page-home .transport-story-card-stack .transport-story-card-btn {
  align-self: flex-start;
  margin-top: clamp(6px, 1vw, 10px);
  pointer-events: none;
  box-shadow: 0 12px 34px rgba(255, 139, 31, 0.35);
  letter-spacing: 0.01em;
}

@media (prefers-reduced-motion: reduce) {
  .page-home .transport-story-card:hover {
    transform: none;
  }

  .page-home .transport-story-card:hover .transport-story-card-media {
    transform: scale(1.02);
  }
}

/* AI Plug section — three-up capability grid on homepage */
.page-home .ai-systems-grid--three {
  grid-template-columns: 1fr;
}

@media (min-width: 640px) {
  .page-home .ai-systems-grid--three {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 960px) {
  .page-home .ai-systems-grid--three {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.page-home .ai-systems-grid--immersive.ai-systems-grid--three {
  gap: clamp(18px, 2.6vw, 26px);
}

/* AI Plug section — six-up capability grid + magazine hero on homepage */
.page-home .ai-systems-grid--six {
  grid-template-columns: 1fr;
}

@media (min-width: 640px) {
  .page-home .ai-systems-grid--six {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1060px) {
  .page-home .ai-systems-grid--six {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.page-home .ai-systems-grid--immersive.ai-systems-grid--six {
  gap: clamp(18px, 2.6vw, 26px);
}

.page-home .ai-proof-header-band--magazine {
  gap: clamp(14px, 2vw, 18px);
}

.page-home .ai-proof-header-band--magazine .ai-proof-headline {
  max-width: 22ch;
  font-weight: 860;
}

.page-home .ai-proof-shell.ai-proof-systems .ai-proof-cta--shine.btn-primary {
  box-shadow:
    0 14px 36px rgba(255, 139, 31, 0.4),
    0 0 24px rgba(242, 178, 26, 0.15);
}

.page-home .ai-proof-cta-row .ai-proof-cta-secondary.btn-secondary {
  background: rgba(4, 12, 26, 0.45);
  color: rgba(255, 248, 235, 0.96);
  border: 1px solid rgba(255, 246, 230, 0.28);
  box-shadow:
    0 10px 28px rgba(0, 0, 0, 0.32),
    inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

.page-home .ai-proof-cta-row .ai-proof-cta-secondary.btn-secondary:hover {
  border-color: rgba(20, 184, 166, 0.45);
  color: rgba(255, 250, 240, 0.99);
  background: rgba(255, 246, 230, 0.08);
}

@media (max-width: 419px) {
  .page-home .ai-proof-cta-row .btn {
    width: 100%;
    justify-content: center;
  }
}

.page-home .ai-systems-card--proof:hover {
  transform: translateY(-3px);
  border-color: rgba(242, 178, 26, 0.34);
}

@media (prefers-reduced-motion: reduce) {
  .page-home .ai-systems-card--proof:hover {
    transform: none;
  }
}

/* Homepage AI Plug — premium proof media card */
.page-home .ai-proof-media-card.biz-editorial-band__visual {
  overflow: visible;
  border: none;
  box-shadow: none;
  background: transparent;
}

.page-home .ai-proof-media-card__wrap {
  position: relative;
  width: 100%;
  min-height: clamp(260px, 44vw, 380px);
  overflow: hidden;
  border-radius: clamp(18px, 2.6vw, 26px);
  border: 1px solid rgba(255, 246, 230, 0.24);
  background: #071022;
  box-shadow:
    0 32px 62px rgba(2, 6, 14, 0.55),
    0 0 0 1px rgba(242, 178, 26, 0.2),
    0 0 48px rgba(20, 184, 166, 0.08);
  isolation: isolate;
}

.page-home .ai-proof-media-card__img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-height: none;
  aspect-ratio: auto;
  object-fit: cover;
  object-position: 50% 38%;
  display: block;
}

.page-home .ai-proof-media-card__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    radial-gradient(ellipse 85% 55% at 72% 12%, rgba(20, 184, 166, 0.14), transparent 52%),
    linear-gradient(
      to top,
      rgba(5, 10, 24, 0.88) 0%,
      rgba(5, 10, 24, 0.52) 42%,
      rgba(5, 10, 24, 0.12) 68%,
      rgba(5, 10, 24, 0.04) 100%
    );
}

.page-home .ai-proof-media-card__stack {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: clamp(6px, 1.2vw, 10px);
  padding: clamp(16px, 2.6vw, 24px);
  max-width: min(36rem, 100%);
}

.page-home .ai-proof-media-card__tag {
  display: inline-flex;
  align-items: center;
  padding: 5px 10px;
  border-radius: 999px;
  font-size: 0.62rem;
  font-weight: 850;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(253, 224, 150, 0.98);
  background: rgba(8, 12, 24, 0.52);
  border: 1px solid rgba(242, 178, 26, 0.45);
}

.page-home .ai-proof-media-card__headline {
  margin: 0;
  font-size: clamp(1.02rem, 0.42vw + 0.92rem, 1.28rem);
  font-weight: 860;
  letter-spacing: -0.02em;
  word-spacing: normal;
  line-height: 1.2;
  color: #fff8eb;
  text-shadow: 0 2px 20px rgba(5, 10, 24, 0.55);
  max-width: 28ch;
  text-transform: none;
}

.page-home .ai-proof-media-card__support {
  margin: 0;
  font-size: clamp(0.84rem, 0.16vw + 0.78rem, 0.92rem);
  line-height: 1.5;
  font-weight: 620;
  letter-spacing: normal;
  word-spacing: normal;
  color: rgba(255, 246, 230, 0.9);
  max-width: 42ch;
  text-transform: none;
}

.page-home .ai-proof-media-card__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 2px;
}

.page-home .ai-proof-media-card__chips .ai-systems-chip {
  font-size: 0.68rem;
  padding: 5px 10px;
  background: rgba(8, 12, 24, 0.42);
  border-color: rgba(255, 246, 230, 0.24);
  white-space: normal;
  text-align: start;
  line-height: 1.25;
}

@media (max-width: 639px) {
  .page-home .ai-proof-media-card__wrap {
    min-height: clamp(220px, 58vw, 300px);
  }

  .page-home .ai-proof-media-card__stack {
    padding: 14px 16px 16px;
    gap: 6px;
  }

  .page-home .ai-proof-media-card__headline {
    max-width: none;
    font-size: clamp(0.98rem, 0.3vw + 0.9rem, 1.08rem);
  }

  .page-home .ai-proof-media-card__chips {
    gap: 5px;
  }

  .page-home .ai-proof-media-card__chips .ai-systems-chip {
    font-size: 0.64rem;
    padding: 4px 8px;
  }
}

.page-home .ai-systems-hero-frame--magazine {
  aspect-ratio: 16 / 9;
  border-radius: clamp(18px, 2.4vw, 26px);
  box-shadow:
    0 36px 70px rgba(0, 0, 0, 0.5),
    0 0 0 1px rgba(242, 178, 26, 0.28),
    0 0 56px rgba(20, 184, 166, 0.1);
}

.page-home .ai-systems-hero-frame--magazine::after {
  background: linear-gradient(
    180deg,
    rgba(6, 13, 28, 0) 42%,
    rgba(15, 8, 30, 0.55) 78%,
    rgba(5, 10, 22, 0.88) 100%
  );
}

.page-home .ai-systems-hero-caption--wide.ai-systems-hero-caption {
  max-width: min(52ch, 94%);
}

.page-home .ai-systems-card--immersive.ai-systems-card {
  padding: 0;
  background: transparent;
  border: none;
  box-shadow: none;
  min-height: 0;
}

.page-home .ai-systems-card--immersive.ai-systems-card:hover {
  transform: translateY(-4px);
  border-color: transparent;
}

.page-home .ai-systems-card--immersive .ai-systems-card-media-wrap--stacked {
  position: relative;
  display: block;
  aspect-ratio: unset;
  min-height: clamp(248px, 30vw, 312px);
  border-radius: clamp(17px, 2.1vw, 22px);
  overflow: hidden;
  border: 1px solid rgba(255, 246, 230, 0.22);
  box-shadow:
    0 24px 52px rgba(2, 6, 14, 0.48),
    0 0 0 1px rgba(242, 178, 26, 0.15);
}

.page-home .ai-systems-card--immersive .ai-systems-card-media-wrap--stacked::after {
  display: none;
}

.page-home .ai-systems-card--immersive .ai-systems-card-hotwash {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(
    to top,
    rgba(5, 10, 24, 0.74) 0%,
    rgba(5, 10, 24, 0.28) 55%,
    rgba(8, 12, 24, 0.05) 80%,
    transparent 100%
  );
}

.page-home .ai-systems-card--immersive .ai-systems-card-overlay-stack {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  padding: clamp(14px, 2.2vw, 20px);
  max-width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
}

.page-home .ai-systems-card--immersive .ai-systems-tag--on-photo.ai-systems-tag {
  color: rgba(255, 246, 230, 0.96);
  background: rgba(8, 12, 24, 0.45);
  border-color: rgba(242, 178, 26, 0.45);
}

.page-home .ai-systems-card--immersive h3 {
  font-size: clamp(1rem, 0.3vw + 0.92rem, 1.12rem);
  color: #fff8eb;
  text-shadow: 0 2px 16px rgba(5, 10, 24, 0.45);
}

.page-home .ai-systems-card--immersive p {
  font-size: clamp(0.82rem, 0.14vw + 0.76rem, 0.9rem);
  line-height: 1.54;
  color: rgba(255, 246, 230, 0.88);
}

.page-home .ai-systems-card--immersive.ai-systems-card:hover .ai-systems-card-media {
  transform: scale(1.05);
}

@media (prefers-reduced-motion: reduce) {
  .page-home .ai-systems-card--immersive.ai-systems-card:hover {
    transform: none;
  }

  .page-home .ai-systems-card--immersive.ai-systems-card:hover .ai-systems-card-media {
    transform: none;
  }
}

/* ============================================================== */
/* Business services: A++ capability page upgrade (2026-05-11)    */
/* ============================================================== */

/* --- 2. Flagship "What AI can do for your business" section --- */
.page-business-services main > .section.ai-bs-flagship {
  background:
    radial-gradient(ellipse 90% 60% at 12% 0%, rgba(20, 184, 166, 0.16), transparent 48%),
    radial-gradient(circle at 92% 8%, rgba(242, 178, 26, 0.1), transparent 38%),
    radial-gradient(circle at 88% 92%, rgba(255, 92, 168, 0.08), transparent 40%),
    linear-gradient(168deg, #04101f 0%, #0a1c36 48%, #060f1d 100%);
  border-block: 1px solid rgba(255, 246, 230, 0.08);
}

.page-business-services .ai-bs-flagship-eyebrow {
  margin-bottom: 10px;
  letter-spacing: 0.14em;
  color: rgba(255, 230, 200, 0.95);
}

.page-business-services .ai-bs-flagship-sub {
  max-width: 50rem !important;
  font-size: clamp(0.98rem, 0.32vw + 0.88rem, 1.06rem);
  line-height: 1.62;
}

.page-business-services .ai-bs-flagship-grid {
  list-style: none;
  margin: clamp(20px, 2.6vw, 28px) 0 0;
  padding: 0;
  display: grid;
  gap: clamp(12px, 1.75vw, 16px);
  grid-template-columns: 1fr;
  align-items: stretch;
}

@media (min-width: 560px) {
  .page-business-services .ai-bs-flagship-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: 1fr;
  }
}

@media (min-width: 920px) {
  .page-business-services .ai-bs-flagship-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.page-business-services .ai-bs-flagship-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
  padding: clamp(18px, 2.2vw, 22px);
  padding-top: clamp(20px, 2.4vw, 24px);
  border-radius: var(--radius);
  background:
    radial-gradient(circle at 0% 0%, rgba(20, 184, 166, 0.16), transparent 42%),
    linear-gradient(168deg, rgba(255, 246, 230, 0.08) 0%, rgba(4, 12, 28, 0.62) 100%);
  backdrop-filter: blur(14px);
  border: 1px solid rgba(255, 246, 230, 0.12);
  box-shadow:
    0 22px 50px rgba(0, 0, 0, 0.35),
    inset 0 1px 0 rgba(255, 246, 230, 0.08);
  overflow: hidden;
  isolation: isolate;
  min-height: 100%;
  transition: transform 0.22s cubic-bezier(0.22, 1, 0.36, 1), border-color 0.22s ease;
}

.page-business-services .ai-bs-flagship-card:hover {
  transform: translateY(-3px);
  border-color: rgba(242, 178, 26, 0.42);
}

.page-business-services .ai-bs-flagship-card::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
  pointer-events: none;
  background: linear-gradient(90deg, var(--turquoise), rgba(20, 184, 166, 0.45));
}

.page-business-services .ai-bs-flagship-card--gold::before {
  background: linear-gradient(90deg, var(--gold), var(--orange));
}

.page-business-services .ai-bs-flagship-card--pink::before {
  background: linear-gradient(90deg, var(--pink), rgba(255, 92, 168, 0.5));
}

.page-business-services .ai-bs-flagship-card--orange::before {
  background: linear-gradient(90deg, var(--orange), rgba(255, 139, 31, 0.5));
}

.page-business-services .ai-bs-flagship-thumb {
  position: relative;
  z-index: 2;
  margin: 0 0 12px;
  border-radius: 12px;
  overflow: hidden;
  aspect-ratio: 16 / 9;
  box-shadow:
    0 14px 32px rgba(0, 0, 0, 0.38),
    inset 0 0 0 1px rgba(255, 246, 230, 0.1);
}

.page-business-services .ai-bs-flagship-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transform: scale(1.002);
}

.page-business-services .ai-bs-flagship-head {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.page-business-services .ai-bs-flagship-head .ai-bs-flagship-num {
  flex-shrink: 0;
  margin-top: 0;
}

.page-business-services .ai-bs-flagship-head .ai-bs-flagship-title {
  margin: 0;
  flex: 1;
  min-width: 0;
  align-self: center;
  padding-top: 0;
}

.page-business-services .ai-bs-flagship-num {
  position: relative;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.6rem;
  height: 2rem;
  padding: 0 10px;
  border-radius: 12px;
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0.1em;
  color: rgba(11, 29, 58, 0.96);
  background: linear-gradient(145deg, rgba(255, 246, 230, 0.98), rgba(255, 228, 195, 0.92));
  border: 1px solid rgba(255, 246, 230, 0.4);
  box-shadow:
    0 8px 22px rgba(0, 0, 0, 0.32),
    inset 0 1px 0 rgba(255, 255, 255, 0.75);
}

.page-business-services .ai-bs-flagship-card--turq .ai-bs-flagship-num {
  background: linear-gradient(135deg, rgba(20, 184, 166, 0.55), rgba(20, 184, 166, 0.18));
  border-color: rgba(20, 184, 166, 0.5);
  color: rgba(11, 29, 58, 0.96);
}

.page-business-services .ai-bs-flagship-card--gold .ai-bs-flagship-num {
  background: linear-gradient(135deg, rgba(242, 178, 26, 0.62), rgba(242, 178, 26, 0.2));
  border-color: rgba(242, 178, 26, 0.55);
  color: rgba(11, 29, 58, 0.96);
}

.page-business-services .ai-bs-flagship-card--pink .ai-bs-flagship-num {
  background: linear-gradient(135deg, rgba(255, 92, 168, 0.48), rgba(255, 92, 168, 0.14));
  border-color: rgba(255, 92, 168, 0.45);
  color: rgba(11, 29, 58, 0.96);
}

.page-business-services .ai-bs-flagship-card--orange .ai-bs-flagship-num {
  background: linear-gradient(135deg, rgba(255, 139, 31, 0.55), rgba(255, 139, 31, 0.2));
  border-color: rgba(255, 139, 31, 0.5);
  color: rgba(11, 29, 58, 0.96);
}

.page-business-services .ai-bs-flagship-title {
  position: relative;
  z-index: 2;
  font-size: clamp(1.04rem, 0.32vw + 0.94rem, 1.14rem);
  font-weight: 880;
  letter-spacing: -0.015em;
  line-height: 1.24;
  color: #fff8eb;
}

.page-business-services .ai-bs-flagship-copy {
  position: relative;
  z-index: 2;
  margin: 0;
  padding-left: 0;
  font-size: clamp(0.86rem, 0.18vw + 0.8rem, 0.93rem);
  line-height: 1.52;
  color: rgba(255, 235, 210, 0.88);
}

@media (prefers-reduced-motion: reduce) {
  .page-business-services .ai-bs-flagship-card:hover {
    transform: none;
  }
}

/* --- 4. "How the AI business flow works" visual flow --- */
.page-business-services main > .section.ai-bs-flow-section {
  background:
    radial-gradient(ellipse 100% 90% at 50% 0%, rgba(242, 178, 26, 0.12), transparent 44%),
    radial-gradient(circle at 12% 90%, rgba(20, 184, 166, 0.1), transparent 40%),
    linear-gradient(180deg, #050d1c 0%, #0b1d3a 48%, #060c18 100%);
  border-block: 1px solid rgba(255, 246, 230, 0.08);
}

.page-business-services .ai-bs-flow-eyebrow {
  margin-bottom: 10px;
  color: rgba(255, 230, 200, 0.95);
}

.page-business-services .ai-bs-flow-sub {
  max-width: 46rem !important;
  font-size: clamp(0.98rem, 0.32vw + 0.88rem, 1.06rem);
  line-height: 1.62;
}

.page-business-services .ai-bs-flow-rail {
  list-style: none;
  margin: clamp(22px, 3vw, 32px) 0 0;
  padding: 0;
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  counter-reset: flowstep;
  position: relative;
}

@media (min-width: 640px) {
  .page-business-services .ai-bs-flow-rail {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px 12px;
  }
}

@media (min-width: 900px) {
  .page-business-services .ai-bs-flow-rail {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px 14px;
  }
}

.page-business-services .ai-bs-flow-step {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 14px 16px;
  border-radius: 14px;
  background:
    radial-gradient(circle at 0% 0%, rgba(20, 184, 166, 0.14), transparent 38%),
    linear-gradient(160deg, rgba(255, 246, 230, 0.08) 0%, rgba(4, 12, 28, 0.68) 100%);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 246, 230, 0.14);
  box-shadow:
    0 14px 36px rgba(0, 0, 0, 0.32),
    inset 0 1px 0 rgba(255, 246, 230, 0.07);
  min-height: 68px;
  overflow: hidden;
  isolation: isolate;
}

.page-business-services .ai-bs-flow-step--a {
  border-color: rgba(20, 184, 166, 0.35);
}

.page-business-services .ai-bs-flow-step--b {
  border-color: rgba(242, 178, 26, 0.4);
}

.page-business-services .ai-bs-flow-step--c {
  border-color: rgba(255, 92, 168, 0.38);
}

.page-business-services .ai-bs-flow-step--d {
  border-color: rgba(255, 139, 31, 0.4);
}

.page-business-services .ai-bs-flow-step-num {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  font-size: 0.82rem;
  font-weight: 900;
  color: rgba(11, 29, 58, 0.96);
  background: linear-gradient(135deg, rgba(255, 246, 230, 0.98), rgba(255, 228, 195, 0.92));
  box-shadow:
    0 6px 16px rgba(0, 0, 0, 0.32),
    inset 0 1px 0 rgba(255, 255, 255, 0.7);
}

.page-business-services .ai-bs-flow-step--a .ai-bs-flow-step-num {
  background: linear-gradient(135deg, rgba(20, 184, 166, 0.85), rgba(20, 184, 166, 0.45));
  color: #03121a;
}

.page-business-services .ai-bs-flow-step--b .ai-bs-flow-step-num {
  background: linear-gradient(135deg, rgba(242, 178, 26, 0.95), rgba(255, 139, 31, 0.55));
}

.page-business-services .ai-bs-flow-step--c .ai-bs-flow-step-num {
  background: linear-gradient(135deg, rgba(255, 92, 168, 0.8), rgba(255, 92, 168, 0.4));
}

.page-business-services .ai-bs-flow-step--d .ai-bs-flow-step-num {
  background: linear-gradient(135deg, rgba(255, 139, 31, 0.9), rgba(255, 106, 77, 0.5));
}

.page-business-services .ai-bs-flow-step-label {
  font-size: clamp(0.86rem, 0.2vw + 0.8rem, 0.95rem);
  font-weight: 820;
  letter-spacing: -0.005em;
  line-height: 1.28;
  color: rgba(255, 246, 230, 0.96);
}

.page-business-services .ai-bs-flow-step-body {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}

.page-business-services .ai-bs-flow-step-desc {
  margin: 0;
  font-size: clamp(0.78rem, 0.18vw + 0.72rem, 0.86rem);
  line-height: 1.5;
  font-weight: 500;
  color: rgba(255, 235, 210, 0.82);
}

.page-business-services .ai-bs-owner-footnote {
  margin: clamp(18px, 2.4vw, 24px) auto 0;
  max-width: 46rem;
  text-align: center;
}

/* Arrow connectors between steps (horizontal at desktop, vertical on mobile) */
.page-business-services .ai-bs-flow-step + .ai-bs-flow-step::after {
  content: "";
  position: absolute;
  pointer-events: none;
  left: -10px;
  top: 50%;
  width: 10px;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(255, 246, 230, 0.32));
  display: none;
}

@media (min-width: 900px) {
  .page-business-services .ai-bs-flow-step + .ai-bs-flow-step::after {
    display: block;
  }
}

.page-business-services .ai-bs-flow-foot {
  margin: clamp(18px, 2.4vw, 24px) auto 0;
  max-width: 46rem;
  text-align: center;
  font-size: clamp(0.86rem, 0.2vw + 0.8rem, 0.93rem);
  line-height: 1.6;
  color: rgba(255, 235, 210, 0.78);
}

.page-business-services .ai-bs-flow-shell {
  position: relative;
}

.page-business-services .ai-bs-flow-diagram {
  display: none;
}

@media (min-width: 900px) {
  .page-business-services .ai-bs-flow-diagram {
    display: block;
    height: 10px;
    margin: 4px 0 6px;
    border-radius: 99px;
    background: linear-gradient(
      90deg,
      transparent 0%,
      rgba(20, 184, 166, 0.35) 18%,
      rgba(242, 178, 26, 0.45) 50%,
      rgba(255, 92, 168, 0.35) 82%,
      transparent 100%
    );
    opacity: 0.65;
    box-shadow: 0 0 24px rgba(20, 184, 166, 0.15);
  }

  .page-business-services .ai-bs-flow-rail--diagram {
    position: relative;
    padding: clamp(12px, 1.8vw, 16px);
    border-radius: 18px;
    background:
      linear-gradient(145deg, rgba(255, 246, 230, 0.06) 0%, transparent 42%),
      rgba(4, 12, 28, 0.42);
    border: 1px solid rgba(255, 246, 230, 0.12);
    box-shadow:
      inset 0 0 0 1px rgba(20, 184, 166, 0.07),
      0 20px 48px rgba(0, 0, 0, 0.28);
  }
}

/* --- 6. Compact add-on layers strip --- */
.page-business-services main > .section.ai-bs-addons-section {
  background:
    radial-gradient(ellipse 90% 70% at 88% 0%, rgba(20, 184, 166, 0.12), transparent 44%),
    radial-gradient(circle at 8% 92%, rgba(255, 92, 168, 0.08), transparent 38%),
    linear-gradient(170deg, #06101f 0%, #0a1a32 50%, #050b16 100%);
  border-block: 1px solid rgba(255, 246, 230, 0.08);
}

.page-business-services .ai-bs-addons-sub {
  max-width: 44rem !important;
  font-size: clamp(0.97rem, 0.3vw + 0.88rem, 1.04rem);
  line-height: 1.62;
}

.page-business-services .ai-bs-addon-grid {
  list-style: none;
  margin: clamp(20px, 2.6vw, 28px) 0 0;
  padding: 0;
  display: grid;
  gap: clamp(12px, 1.7vw, 16px);
  grid-template-columns: 1fr;
  align-items: stretch;
}

@media (min-width: 480px) and (max-width: 879px) {
  .page-business-services .ai-bs-addon-grid {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr));
    grid-auto-rows: 1fr;
  }
}

@media (min-width: 880px) {
  .page-business-services .ai-bs-addon-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}

.page-business-services .ai-bs-addon-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
  padding: clamp(15px, 2vw, 18px);
  padding-top: clamp(18px, 2.2vw, 22px);
  border-radius: 14px;
  background:
    linear-gradient(166deg, rgba(255, 246, 230, 0.07) 0%, rgba(4, 12, 28, 0.62) 100%);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 246, 230, 0.14);
  box-shadow:
    0 16px 36px rgba(0, 0, 0, 0.32),
    inset 0 1px 0 rgba(255, 246, 230, 0.07);
  min-height: 100%;
  overflow: hidden;
  isolation: isolate;
}

.page-business-services .ai-bs-addon-card::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
  pointer-events: none;
}

.page-business-services .ai-bs-addon-card:nth-child(5n + 1)::before {
  background: linear-gradient(90deg, var(--turquoise), rgba(20, 184, 166, 0.45));
}

.page-business-services .ai-bs-addon-card:nth-child(5n + 2)::before {
  background: linear-gradient(90deg, var(--gold), var(--orange));
}

.page-business-services .ai-bs-addon-card:nth-child(5n + 3)::before {
  background: linear-gradient(90deg, var(--pink), rgba(255, 92, 168, 0.45));
}

.page-business-services .ai-bs-addon-card:nth-child(5n + 4)::before {
  background: linear-gradient(90deg, var(--orange), rgba(255, 139, 31, 0.5));
}

.page-business-services .ai-bs-addon-card:nth-child(5n)::before {
  background: linear-gradient(90deg, rgba(20, 184, 166, 0.9), rgba(242, 178, 26, 0.75));
}

.page-business-services .ai-bs-addon-card:nth-child(5n + 1) {
  border-color: rgba(20, 184, 166, 0.34);
}

.page-business-services .ai-bs-addon-card:nth-child(5n + 2) {
  border-color: rgba(242, 178, 26, 0.38);
}

.page-business-services .ai-bs-addon-card:nth-child(5n + 3) {
  border-color: rgba(255, 92, 168, 0.34);
}

.page-business-services .ai-bs-addon-card:nth-child(5n + 4) {
  border-color: rgba(255, 139, 31, 0.38);
}

.page-business-services .ai-bs-addon-card:nth-child(5n) {
  border-color: rgba(20, 184, 166, 0.4);
}

.page-business-services .ai-bs-addon-tag {
  position: relative;
  z-index: 2;
  display: inline-flex;
  align-self: flex-start;
  padding: 3px 9px;
  font-size: 0.6rem;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  border-radius: 999px;
  color: rgba(242, 178, 26, 0.95);
  background: rgba(242, 178, 26, 0.1);
  border: 1px solid rgba(242, 178, 26, 0.4);
  white-space: nowrap;
}

.page-business-services .ai-bs-addon-title {
  position: relative;
  z-index: 2;
  margin: 0;
  font-size: clamp(0.96rem, 0.26vw + 0.88rem, 1.04rem);
  font-weight: 880;
  letter-spacing: -0.012em;
  line-height: 1.26;
  color: #fff8eb;
}

.page-business-services .ai-bs-addon-copy {
  position: relative;
  z-index: 2;
  margin: 0;
  font-size: clamp(0.82rem, 0.16vw + 0.78rem, 0.88rem);
  line-height: 1.54;
  color: rgba(255, 235, 210, 0.84);
}

/* --- 9. Owner cards: 7-card layout (3 + 3 + 1 with last spanning bottom row gracefully) --- */
@media (min-width: 1000px) {
  .page-business-services .ai-bs-owner-cards.ai-bs-owner-cards--seven {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width: 1180px) {
  .page-business-services .ai-bs-owner-cards.ai-bs-owner-cards--seven {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

/* --- 1. Hero polish: slightly tighten proof line so it does not compete with lead --- */
.page-business-services .ai-hero-proof-line {
  color: rgba(255, 246, 230, 0.78);
  font-size: clamp(0.9rem, 0.28vw + 0.82rem, 0.98rem);
}

/* ----- Ask page (Ask A Local concierge router) ----- */
.page-ask .ask-page-hero.hero-fiesta-dark.secondary-hero {
  isolation: isolate;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  overflow-x: clip;
  background-color: #0a1a2e;
  background-image:
    linear-gradient(118deg, rgba(5, 10, 24, 0.32) 0%, rgba(5, 10, 24, 0.16) 45%, rgba(5, 10, 24, 0.05) 100%),
    var(--ask-hero-photo);
  background-repeat: no-repeat;
  background-position: 0 0, center 40%;
  background-size: cover, cover;
  min-height: clamp(480px, 72vh, 720px);
}

.page-ask .ask-page-hero.hero-fiesta-dark::before {
  display: none;
}

.page-ask .ask-page-hero.secondary-hero.hero-fiesta-dark::after {
  pointer-events: none;
  z-index: 1;
  background: linear-gradient(180deg, transparent 64%, rgba(2, 6, 14, 0.22) 100%);
}

@media (max-width: 640px) {
  .page-ask .ask-page-hero.hero-fiesta-dark.secondary-hero {
    background-image:
      linear-gradient(185deg, rgba(5, 10, 24, 0.12) 0%, rgba(5, 10, 24, 0.28) 42%, rgba(5, 10, 24, 0.44) 100%),
      var(--ask-hero-photo);
    background-position: 0 0, center 36%;
    min-height: clamp(440px, 78vh, 620px);
  }

  .page-ask .ask-page-hero .hero-title {
    text-shadow: 0 2px 28px rgba(2, 6, 14, 0.55), 0 1px 0 rgba(2, 6, 14, 0.25);
  }

  .page-ask .ask-page-hero .hero-text-on-dark {
    text-shadow: 0 1px 18px rgba(2, 6, 14, 0.45);
  }
}

.page-ask .ask-page-hero .hero-fiesta-inner.hero-inner-band {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: min(1180px, 100%);
  margin-inline: auto;
  box-sizing: border-box;
  padding: clamp(18px, 4vw, 40px) clamp(16px, 4vw, 44px);
}

.page-ask .ask-page-hero-shell {
  max-width: 40rem;
}

.page-ask .ask-page-hero .eyebrow-on-dark.eyebrow-hero {
  text-transform: uppercase;
  letter-spacing: 0.14em;
}

.page-ask .ask-page-hero-actions {
  margin-top: clamp(4px, 0.8vw, 8px);
}

.page-ask .ask-page-hero-actions .btn {
  min-height: 48px;
}

.page-ask .ask-popular-backup .ask-section-head .eyebrow {
  text-transform: uppercase;
  letter-spacing: 0.12em;
}

.page-ask .ask-popular-moves-grid {
  list-style: none;
  margin: clamp(6px, 1.2vw, 10px) 0 0;
  padding: 0;
  display: grid;
  gap: clamp(14px, 2.2vw, 20px);
  grid-template-columns: 1fr;
}

@media (min-width: 560px) {
  .page-ask .ask-popular-moves-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.page-ask .ask-popular-move-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 100%;
  text-decoration: none;
  color: inherit;
  border-radius: calc(var(--radius) + 8px);
  overflow: hidden;
  border: 1px solid rgba(11, 29, 58, 0.09);
  background: linear-gradient(180deg, #fffdfb 0%, #fff8ef 100%);
  box-shadow:
    0 14px 36px rgba(2, 6, 14, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.75);
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.page-ask .ask-popular-move-card:hover,
.page-ask .ask-popular-move-card:active {
  transform: translateY(-3px);
  box-shadow:
    0 22px 50px rgba(2, 6, 14, 0.12),
    inset 0 1px 0 rgba(255, 255, 255, 0.85);
  border-color: rgba(242, 178, 26, 0.32);
}

.page-ask .ask-popular-move-card:focus-visible {
  outline: 3px solid rgba(242, 178, 26, 0.88);
  outline-offset: 3px;
}

.page-ask .ask-popular-move-card__media {
  position: relative;
  aspect-ratio: 3 / 2;
  overflow: hidden;
  background: #0a1424;
}

.page-ask .ask-popular-move-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.page-ask .ask-popular-move-card__shade {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 40%, rgba(11, 29, 58, 0.42) 100%);
  pointer-events: none;
}

.page-ask .ask-popular-move-card__body {
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex: 1;
  padding: clamp(16px, 2.2vw, 20px);
}

.page-ask .ask-popular-move-card__body h3 {
  margin: 0;
  font-size: clamp(1.05rem, 0.4vw + 0.95rem, 1.22rem);
  line-height: 1.18;
  letter-spacing: -0.022em;
  color: var(--navy);
}

.page-ask .ask-popular-move-card__body p {
  margin: 0;
  flex: 1;
  font-size: clamp(0.88rem, 0.22vw + 0.82rem, 0.96rem);
  line-height: 1.5;
  color: rgba(11, 29, 58, 0.64);
}

.page-ask .ask-popular-move-card__cta {
  display: inline-flex;
  align-self: stretch;
  align-items: center;
  justify-content: center;
  margin-top: 6px;
  padding: 11px 18px;
  border-radius: 999px;
  font-weight: 850;
  font-size: clamp(0.86rem, 0.2vw + 0.8rem, 0.94rem);
  letter-spacing: 0.03em;
  color: var(--navy-deep);
  background: linear-gradient(135deg, var(--gold) 0%, #ff8b1f 45%, var(--orange) 100%);
  border: 1px solid rgba(255, 255, 255, 0.38);
  box-shadow:
    0 10px 26px rgba(255, 139, 31, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.42);
}

.page-ask .ask-human-help-fallback .ask-section-head .eyebrow {
  text-transform: uppercase;
  letter-spacing: 0.12em;
}

:is(.page-ask, .page-start-here) #live-concierge,
.page-ask #live-concierge-tool,
.page-ask #ask-prompts,
.page-ask #ask-value,
.page-ask #example-questions,
.page-ask #human-help,
.page-ask #popular-routes,
.page-ask #more-moves,
.page-ask #ai-proof,
.page-ask #final-cta,
.page-ask [id^="route-"] {
  scroll-margin-top: calc(var(--header-h, 64px) + 14px);
}

:is(.page-ask, .page-start-here) #live-concierge-thread {
  scroll-margin-top: calc(var(--header-h, 64px) + 20px);
}

/* Legacy Ask guide layout only — product page uses .ask-product-main (no extra main pad) */
body.page-ask main:not(.ask-product-main) {
  padding-bottom: max(72px, calc(env(safe-area-inset-bottom, 0px) + 56px));
}

.page-ask .live-concierge-section {
  padding-bottom: max(clamp(32px, 5vw, 48px), calc(env(safe-area-inset-bottom, 0px) + 24px));
}

.page-ask .ask-section-head {
  max-width: 44rem;
  margin-bottom: clamp(20px, 2.8vw, 28px);
}

.page-ask .ask-section-head .eyebrow {
  margin-bottom: 10px;
}

.page-ask .ask-section-head h2 {
  margin: 0 0 10px;
  font-size: clamp(1.55rem, 3vw + 0.5rem, 2.15rem);
  line-height: 1.12;
  letter-spacing: -0.025em;
}

.page-ask .ask-section-head .section-text {
  margin: 0;
}

.page-ask .ask-starter-grid {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: clamp(12px, 2vw, 16px);
  grid-template-columns: 1fr;
}

@media (min-width: 520px) {
  .page-ask .ask-starter-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 900px) {
  .page-ask .ask-starter-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.page-ask .ask-starter-card {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  min-height: clamp(112px, 1fr, 140px);
  padding: clamp(16px, 2.4vw, 22px) clamp(16px, 2.2vw, 22px) clamp(16px, 2.4vw, 22px)
    clamp(18px, 2.2vw, 22px);
  border-radius: calc(var(--radius) + 6px);
  text-decoration: none;
  color: inherit;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.97) 0%, rgba(255, 250, 240, 0.99) 100%);
  border: 1px solid rgba(11, 29, 58, 0.09);
  box-shadow:
    0 12px 28px rgba(2, 6, 14, 0.08),
    inset 0 0 0 1px rgba(255, 255, 255, 0.65);
  overflow: hidden;
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.page-ask .ask-starter-card::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 4px;
  border-radius: 4px 0 0 4px;
  background: linear-gradient(180deg, var(--turquoise), var(--coral), var(--gold));
  opacity: 0.85;
}

.page-ask .ask-starter-card:hover,
.page-ask .ask-starter-card:active {
  transform: translateY(-2px);
  box-shadow:
    0 20px 44px rgba(2, 6, 14, 0.12),
    inset 0 0 0 1px rgba(255, 255, 255, 0.75);
  border-color: rgba(20, 184, 166, 0.32);
}

.page-ask .ask-starter-card:focus-visible {
  outline: 3px solid rgba(242, 178, 26, 0.85);
  outline-offset: 3px;
}

.page-ask .ask-starter-card__row {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  margin-bottom: 2px;
}

.page-ask .ask-starter-mark {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  flex-shrink: 0;
  box-shadow: 0 0 0 2px rgba(255, 251, 242, 0.95), 0 4px 10px rgba(2, 6, 14, 0.18);
}

.page-ask .ask-starter-mark--turq {
  background: linear-gradient(145deg, #2dd4bf, #0d9488);
}

.page-ask .ask-starter-mark--coral {
  background: linear-gradient(145deg, #fb7185, #f97316);
}

.page-ask .ask-starter-mark--gold {
  background: linear-gradient(145deg, #fbbf24, #d97706);
}

.page-ask .ask-starter-mark--orange {
  background: linear-gradient(145deg, #fb923c, #ea580c);
}

.page-ask .ask-starter-mark--pink {
  background: linear-gradient(145deg, #f472b6, #e11d48);
}

.page-ask .ask-starter-mark--teal {
  background: linear-gradient(145deg, #5eead4, #14b8a6);
}

.page-ask .ask-starter-mark--plum {
  background: linear-gradient(145deg, #c084fc, #7c3aed);
}

.page-ask .ask-starter-route-line {
  flex: 1;
  height: 2px;
  border-radius: 2px;
  background: linear-gradient(90deg, rgba(11, 29, 58, 0.18), rgba(20, 184, 166, 0.35), rgba(242, 178, 26, 0.25), transparent);
  min-width: 24px;
}

.page-ask .ask-starter-title {
  font-size: clamp(0.98rem, 0.5vw + 0.88rem, 1.08rem);
  font-weight: 820;
  letter-spacing: -0.02em;
  line-height: 1.25;
  color: var(--navy);
}

.page-ask .ask-starter-best {
  font-size: clamp(0.78rem, 0.2vw + 0.74rem, 0.86rem);
  font-weight: 620;
  line-height: 1.45;
  color: rgba(11, 29, 58, 0.62);
}

.page-ask .ask-situation-band {
  padding-top: clamp(36px, 4.5vw, 48px);
  border-top: none;
  background:
    radial-gradient(circle at 50% 0%, rgba(255, 106, 77, 0.12), transparent 38%),
    radial-gradient(circle at 12% 12%, rgba(20, 184, 166, 0.2), transparent 32%),
    radial-gradient(circle at 90% 86%, rgba(255, 92, 168, 0.18), transparent 36%),
    linear-gradient(165deg, #071326 0%, #0b1d3a 48%, #0e2444 100%);
}

.page-ask .ask-situation-band::before {
  content: "";
  display: block;
  height: 4px;
  width: min(920px, calc(100% - clamp(32px, 9vw, 148px)));
  margin: 0 auto clamp(8px, 1.5vw, 14px);
  border-radius: 4px;
  background: linear-gradient(90deg, var(--turquoise), var(--coral), var(--pink), var(--orange), var(--gold));
  box-shadow: 0 0 20px rgba(255, 106, 77, 0.25);
}

.page-ask .ask-situation-head {
  max-width: 46rem;
}

.page-ask .ask-situation-grid {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: clamp(12px, 2vw, 16px);
  grid-template-columns: 1fr;
}

@media (min-width: 640px) {
  .page-ask .ask-situation-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.page-ask .ask-situation-card {
  position: relative;
  margin: 0;
  padding: clamp(16px, 2.2vw, 22px) clamp(16px, 2.2vw, 22px) clamp(22px, 2.6vw, 26px)
    clamp(18px, 2.2vw, 24px);
  border-radius: calc(var(--radius) + 4px);
  background: linear-gradient(155deg, rgba(255, 246, 230, 0.07) 0%, rgba(6, 14, 28, 0.55) 100%);
  border: 1px solid rgba(255, 246, 230, 0.16);
  box-shadow:
    0 14px 36px rgba(2, 6, 14, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
  overflow: hidden;
}

.page-ask .ask-situation-card__accent {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background: linear-gradient(180deg, var(--turquoise), rgba(255, 106, 77, 0.85), var(--gold));
  border-radius: 3px 0 0 3px;
}

.page-ask .ask-situation-card::after {
  content: "";
  position: absolute;
  left: 18px;
  right: 18px;
  bottom: 12px;
  height: 1px;
  opacity: 0.32;
  background: repeating-linear-gradient(
    90deg,
    rgba(255, 246, 230, 0.45) 0 6px,
    transparent 6px 12px
  );
  pointer-events: none;
}

.page-ask .ask-situation-card__title {
  margin: 0 0 8px;
  font-size: clamp(1rem, 0.4vw + 0.9rem, 1.12rem);
  font-weight: 850;
  letter-spacing: -0.02em;
  color: #fff8eb;
  position: relative;
  z-index: 1;
}

.page-ask .ask-situation-card__copy {
  margin: 0;
  font-size: 0.86rem;
  line-height: 1.52;
  font-weight: 600;
  color: rgba(255, 246, 230, 0.78);
  position: relative;
  z-index: 1;
}

.page-ask .ask-micro-steps {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: clamp(14px, 2vw, 18px);
  max-width: 52rem;
}

@media (min-width: 720px) {
  .page-ask .ask-micro-steps {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(16px, 2.2vw, 22px);
  }
}

.page-ask .ask-micro-steps li {
  margin: 0;
  padding: clamp(16px, 2vw, 20px);
  border-radius: var(--radius);
  background: rgba(255, 246, 230, 0.06);
  border: 1px solid rgba(255, 246, 230, 0.14);
}

.page-ask .ask-micro-steps strong {
  display: block;
  font-size: 0.92rem;
  font-weight: 820;
  color: #fff8eb;
  margin-bottom: 6px;
  letter-spacing: -0.015em;
}

.page-ask .ask-micro-steps span {
  display: block;
  font-size: 0.84rem;
  line-height: 1.5;
  color: rgba(255, 246, 230, 0.76);
  font-weight: 600;
}

.page-ask .ask-routes-stack {
  display: flex;
  flex-direction: column;
  gap: clamp(22px, 3.5vw, 32px);
}

.page-ask .ask-route-block {
  display: grid;
  gap: 0;
  border-radius: calc(var(--radius) + 8px);
  overflow: hidden;
  border: 1px solid rgba(11, 29, 58, 0.08);
  box-shadow: 0 18px 44px rgba(2, 6, 14, 0.12);
  background: rgba(255, 251, 242, 0.5);
}

.page-ask .ask-route-block--backup {
  box-shadow: 0 10px 24px rgba(2, 6, 14, 0.07);
  border-color: rgba(11, 29, 58, 0.055);
  background: rgba(255, 251, 242, 0.42);
}

.page-ask .ask-route-block--backup .ask-route-block__body {
  padding: clamp(16px, 2.4vw, 22px);
  gap: 8px;
}

.page-ask .ask-route-block--backup .ask-route-block__body h3 {
  font-size: clamp(1.05rem, 1.1vw + 0.78rem, 1.25rem);
}

.page-ask .ask-route-block--backup .ask-route-block__body p {
  font-size: clamp(0.86rem, 0.28vw + 0.8rem, 0.94rem);
  line-height: 1.52;
}

.page-ask .ask-route-block--backup .ask-route-bullets {
  font-size: 0.78rem;
}

.page-ask .ask-route-actions__quiet.btn-secondary {
  box-shadow: none;
  border: 1px solid rgba(11, 29, 58, 0.12);
  background: rgba(255, 255, 255, 0.65);
  font-weight: 650;
}

@media (min-width: 768px) {
  .page-ask .ask-route-block {
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
    align-items: stretch;
  }

  .page-ask .ask-route-block--reverse .ask-route-block__media {
    order: 2;
  }

  .page-ask .ask-route-block--reverse .ask-route-block__body {
    order: 1;
  }
}

.page-ask .ask-route-block__media {
  position: relative;
  min-height: 0;
}

@media (max-width: 767px) {
  .page-ask .ask-route-block__media {
    aspect-ratio: 3 / 2;
    max-height: 280px;
  }

  .page-ask .ask-route-block__media img {
    min-height: 100%;
    height: 100%;
    max-height: 280px;
  }
}

@media (min-width: 768px) {
  .page-ask .ask-route-block__media {
    min-height: 100%;
  }

  .page-ask .ask-route-block__media img {
    min-height: clamp(220px, 36vw, 360px);
  }
}

.page-ask .ask-route-block__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

.page-ask .ask-route-block__body {
  margin: 0;
  border-radius: 0;
  border: none;
  box-shadow: none;
  padding: clamp(18px, 2.8vw, 26px);
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.page-ask .ask-route-block__body h3 {
  margin: 0;
  font-size: clamp(1.2rem, 1.5vw + 0.85rem, 1.45rem);
  line-height: 1.18;
  letter-spacing: -0.02em;
  color: var(--navy);
}

.page-ask .ask-route-block__body p {
  margin: 0;
  font-size: clamp(0.9rem, 0.35vw + 0.84rem, 0.98rem);
  line-height: 1.58;
  color: rgba(11, 29, 58, 0.82);
}

.page-ask .ask-route-bullets {
  margin: 0;
  padding: 0 0 0 1.05rem;
  display: grid;
  gap: 4px;
  font-size: 0.82rem;
  line-height: 1.38;
  color: rgba(11, 29, 58, 0.78);
  font-weight: 600;
}

.page-ask .ask-route-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px 12px;
  margin-top: 8px;
}

.page-ask .ask-route-actions .btn {
  min-height: 46px;
  width: 100%;
  justify-content: center;
  box-sizing: border-box;
}

@media (max-width: 520px) {
  .page-ask .ask-route-actions {
    grid-template-columns: 1fr;
  }
}

.page-ask .ask-more-grid {
  grid-template-columns: 1fr;
}

@media (min-width: 900px) {
  .page-ask .ask-more-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.page-ask .ask-more-route-card .image-route-card__shade {
  background: linear-gradient(
    to top,
    rgba(5, 10, 22, 0.68) 0%,
    rgba(5, 10, 22, 0.26) 42%,
    rgba(5, 10, 22, 0.06) 64%,
    transparent 100%
  );
}

.page-ask .ask-more-route-card .image-route-card__body p {
  color: rgba(255, 246, 230, 0.9);
}

.page-ask .ask-guided-shell {
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
}

.page-ask .ask-guided-form .ask-intake-label,
.page-ask .ask-guided-form .ask-intake-sub {
  position: relative;
  z-index: 1;
}

.page-ask #human-help.section-cream:not(.ask-product-human) {
  padding-bottom: max(clamp(44px, 5vw, 56px), calc(env(safe-area-inset-bottom, 0px) + 36px));
}

.page-ask .ask-human-priority-note {
  margin-top: 0.35rem;
  font-size: clamp(0.88rem, 0.22vw + 0.82rem, 0.95rem);
  line-height: 1.5;
  color: rgba(11, 29, 58, 0.72);
  font-weight: 600;
}

.page-ask .ask-guided-wrap {
  margin-bottom: 4px;
}

.page-ask .ask-guided-grid {
  display: grid;
  gap: 12px 14px;
  position: relative;
  z-index: 1;
  grid-template-columns: 1fr;
}

@media (min-width: 600px) {
  .page-ask .ask-guided-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.page-ask .ask-guided-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.page-ask .ask-guided-field--full {
  grid-column: 1 / -1;
}

.page-ask .ask-guided-form .ask-intake-sub {
  margin-bottom: 14px;
}

.page-ask .ask-guided-field span {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(255, 246, 230, 0.72);
}

.page-ask .ask-guided-field input,
.page-ask .ask-guided-field textarea {
  width: 100%;
  box-sizing: border-box;
  border-radius: 12px;
  border: 1px solid rgba(255, 246, 230, 0.26);
  background:
    linear-gradient(180deg, rgba(12, 22, 38, 0.75) 0%, rgba(6, 12, 22, 0.65) 100%);
  color: var(--cream);
  font: inherit;
  font-size: 0.92rem;
  font-weight: 600;
  padding: 11px 14px;
  min-height: 46px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.page-ask .ask-guided-field select {
  width: 100%;
  box-sizing: border-box;
  border-radius: 12px;
  border: 1px solid rgba(255, 246, 230, 0.26);
  color: var(--cream);
  font: inherit;
  font-size: 0.92rem;
  font-weight: 600;
  padding: 11px 36px 11px 14px;
  min-height: 46px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  appearance: none;
  background-color: rgba(6, 12, 22, 0.65);
  background-image: linear-gradient(45deg, transparent 50%, rgba(255, 246, 230, 0.5) 50%),
    linear-gradient(135deg, rgba(255, 246, 230, 0.5) 50%, transparent 50%),
    linear-gradient(180deg, rgba(12, 22, 38, 0.75) 0%, rgba(6, 12, 22, 0.65) 100%);
  background-position: calc(100% - 18px) 50%, calc(100% - 13px) 50%, 0 0;
  background-size: 5px 5px, 5px 5px, 100% 100%;
  background-repeat: no-repeat;
}

.page-ask .ask-guided-field select:focus,
.page-ask .ask-guided-field input:focus,
.page-ask .ask-guided-field textarea:focus {
  outline: none;
  border-color: rgba(20, 184, 166, 0.55);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.06),
    0 0 0 2px rgba(20, 184, 166, 0.2);
}

.page-ask .ask-guided-field textarea {
  min-height: 88px;
  resize: vertical;
}

.page-ask .ask-guided-field option {
  color: #0a162c;
  background: #fff8eb;
}

.page-ask .ask-guided-footnote {
  position: relative;
  z-index: 1;
  margin: 14px 0 0;
  font-size: 0.78rem;
  line-height: 1.5;
  color: rgba(255, 246, 230, 0.62);
  font-weight: 600;
}

.page-ask .ask-proof-block {
  max-width: 56rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-direction: column;
  gap: clamp(20px, 3vw, 28px);
  position: relative;
  z-index: 2;
}

.page-ask .ask-proof-lead {
  max-width: 40rem;
}

.page-ask .ask-proof-lead .ask-headline {
  text-align: left;
  margin: 0 0 12px;
}

.page-ask .ask-proof-lead .section-text-ask {
  margin: 0;
}

.page-ask .ask-proof-cards {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 12px;
  grid-template-columns: 1fr;
}

@media (min-width: 640px) {
  .page-ask .ask-proof-cards {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
  }
}

.page-ask .ask-proof-tile {
  margin: 0;
  height: 100%;
  padding: 16px 16px 18px;
  border-radius: calc(var(--radius) + 2px);
  background: rgba(255, 246, 230, 0.06);
  border: 1px solid rgba(255, 246, 230, 0.16);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

.page-ask .ask-proof-tile__title {
  margin: 0 0 8px;
  font-size: 0.92rem;
  font-weight: 850;
  letter-spacing: -0.02em;
  color: #fff8eb;
}

.page-ask .ask-proof-tile__copy {
  margin: 0;
  font-size: 0.8rem;
  line-height: 1.48;
  font-weight: 600;
  color: rgba(255, 246, 230, 0.76);
}

.page-ask .ask-proof-cta {
  display: flex;
  flex-wrap: wrap;
}

.page-ask .ask-proof-cta__btn {
  font-size: clamp(0.82rem, 0.2vw + 0.78rem, 0.9rem);
  font-weight: 750;
  padding: 10px 18px;
  opacity: 0.95;
}

.page-ask .ask-proof-cta .btn {
  margin-top: 0;
}

.page-ask .ask-guided-form .ask-cta {
  margin-top: 8px;
}

.page-ask .ask-final-cta-section {
  padding-top: clamp(36px, 4.5vw, 48px);
  padding-bottom: clamp(40px, 5vw, 56px);
}

.page-ask .ask-final-cta-outer {
  display: flex;
  justify-content: center;
  width: 100%;
}

.page-ask .ask-final-cta-card {
  width: 100%;
  max-width: 38rem;
  margin: 0 auto;
  padding: clamp(22px, 3.2vw, 32px) clamp(20px, 3vw, 32px);
  text-align: center;
  border-radius: calc(var(--radius) + 10px);
  background: linear-gradient(165deg, rgba(8, 18, 36, 0.92) 0%, rgba(10, 28, 52, 0.88) 100%);
  border: 1px solid rgba(255, 246, 230, 0.18);
  box-shadow:
    0 22px 48px rgba(2, 6, 14, 0.35),
    inset 0 1px 0 rgba(255, 255, 255, 0.05);
  position: relative;
  overflow: hidden;
}

.page-ask .ask-final-cta-card::before {
  content: "";
  position: absolute;
  left: 12px;
  right: 12px;
  top: 0;
  height: 3px;
  border-radius: 0 0 4px 4px;
  background: linear-gradient(90deg, var(--turquoise), var(--coral), var(--pink), var(--orange), var(--gold));
}

.page-ask .ask-final-cta-card h2 {
  color: var(--cream);
  margin: 10px 0 12px;
  position: relative;
  z-index: 1;
}

.page-ask .ask-final-cta-card .section-text-light {
  margin: 0 auto;
  max-width: 32rem;
  position: relative;
  z-index: 1;
}

.page-ask .ask-final-actions {
  justify-content: center;
  margin-top: 18px;
  position: relative;
  z-index: 1;
  flex-wrap: wrap;
}

.page-ask .ask-final-actions .btn {
  min-height: 48px;
}

/* ----- Ask + Start Here: live concierge (instant visitor hub) ----- */
:is(.page-ask, .page-start-here) .live-concierge-section {
  scroll-margin-top: calc(var(--header-h, 64px) + 14px);
  border-bottom: 1px solid rgba(242, 178, 26, 0.12);
}

:is(.page-ask, .page-start-here) .live-concierge-inner {
  max-width: min(860px, 100%);
  margin-inline: auto;
}

:is(.page-ask, .page-start-here) .live-concierge__head {
  text-align: center;
  margin-bottom: clamp(18px, 3vw, 26px);
}

:is(.page-ask, .page-start-here) .live-concierge__eyebrow {
  text-transform: uppercase;
  letter-spacing: 0.16em;
  color: var(--gold);
  margin-bottom: 8px;
}

:is(.page-ask, .page-start-here) .live-concierge__title {
  margin: 0 0 10px;
  font-size: clamp(1.45rem, 2.6vw + 0.55rem, 2rem);
  line-height: 1.15;
  letter-spacing: -0.028em;
  color: var(--cream);
}

:is(.page-ask, .page-start-here) .live-concierge__lead {
  margin: 0 auto;
  max-width: 38rem;
  font-size: clamp(0.94rem, 0.35vw + 0.86rem, 1.02rem);
  line-height: 1.55;
}

@media (max-width: 520px) {
  :is(.page-ask, .page-start-here) .live-concierge__lead {
    font-size: clamp(0.88rem, 0.28vw + 0.82rem, 0.96rem);
    line-height: 1.5;
    max-width: 100%;
  }
}

:is(.page-ask, .page-start-here) .live-concierge__status {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 14px auto 0;
  padding: 6px 14px;
  border-radius: 999px;
  font-size: clamp(0.78rem, 0.2vw + 0.74rem, 0.84rem);
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(255, 248, 235, 0.72);
  border: 1px solid rgba(20, 184, 166, 0.35);
  background: rgba(5, 10, 20, 0.45);
}

:is(.page-ask, .page-start-here) .live-concierge__status--live {
  color: rgba(255, 248, 235, 0.92);
  border-color: rgba(242, 178, 26, 0.45);
  box-shadow: 0 0 0 1px rgba(20, 184, 166, 0.12);
}

:is(.page-ask, .page-start-here) .live-concierge__status--live::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: radial-gradient(circle at 36% 30%, #dcfce7 0%, #4ade80 38%, #22c55e 100%);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.5),
    inset 0 -1px 1px rgba(0, 0, 0, 0.22),
    0 0 0 1px rgba(21, 128, 61, 0.65);
}

/* Local Concierge Studio — clean SA image header + interaction panel */
:is(.page-ask, .page-start-here) .live-concierge-studio {
  max-width: min(860px, 100%);
  margin-inline: auto;
}

:is(.page-ask, .page-start-here) .live-concierge-card {
  display: flex;
  flex-direction: column;
  border-radius: calc(var(--radius) + 8px);
  overflow: hidden;
  border: 1px solid rgba(242, 178, 26, 0.22);
  box-shadow:
    0 24px 56px rgba(2, 6, 14, 0.48),
    0 0 0 1px rgba(255, 246, 230, 0.06) inset;
  background: #0a1628;
}

:is(.page-ask, .page-start-here) .live-concierge__image-band {
  margin: 0;
  padding: 0;
  flex-shrink: 0;
  border: none;
  border-radius: 0;
  box-shadow: none;
  background: #0a1628;
}

:is(.page-ask, .page-start-here) .live-concierge__image-band-media {
  position: relative;
  height: clamp(210px, 34vw, 300px);
  overflow: hidden;
  background: #0a1628;
}

:is(.page-ask, .page-start-here) .live-concierge__image-band-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 42%;
  display: block;
  filter: none;
  opacity: 1;
}

:is(.page-ask, .page-start-here) .live-concierge__glass-panel {
  position: relative;
  z-index: 1;
  margin-top: 0;
  display: flex;
  flex-direction: column;
  min-width: 0;
  border-radius: 0;
  overflow: hidden;
  border: none;
  border-top: 1px solid rgba(255, 246, 230, 0.1);
  background:
    radial-gradient(ellipse 90% 70% at 0% 0%, rgba(20, 184, 166, 0.14), transparent 52%),
    radial-gradient(ellipse 70% 55% at 100% 100%, rgba(255, 139, 31, 0.12), transparent 48%),
    linear-gradient(168deg, rgba(8, 18, 36, 0.96) 0%, rgba(6, 14, 28, 0.98) 48%, rgba(5, 12, 24, 0.99) 100%);
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

:is(.page-ask, .page-start-here) .live-concierge__panel-copy {
  padding: clamp(16px, 2.6vw, 22px) clamp(16px, 2.8vw, 22px) 0;
}

:is(.page-ask, .page-start-here) .live-concierge__panel-intro {
  margin: 0 0 8px;
  font-size: clamp(1rem, 0.35vw + 0.92rem, 1.12rem);
  font-weight: 750;
  line-height: 1.35;
  letter-spacing: -0.02em;
  color: rgba(255, 248, 235, 0.96);
}

:is(.page-ask, .page-start-here) .live-concierge__panel-support {
  margin: 0;
  max-width: 40rem;
  font-size: clamp(0.88rem, 0.28vw + 0.82rem, 0.96rem);
  line-height: 1.55;
  color: rgba(255, 248, 235, 0.84);
}

:is(.page-ask, .page-start-here) .live-concierge__chip-board {
  padding: clamp(14px, 2.4vw, 18px) clamp(16px, 2.8vw, 22px) clamp(12px, 2vw, 16px);
  border-bottom: 1px solid rgba(255, 246, 230, 0.08);
}

:is(.page-ask, .page-start-here) .live-concierge__chip-cluster + .live-concierge__chip-cluster {
  margin-top: clamp(12px, 2vw, 16px);
  padding-top: clamp(12px, 2vw, 16px);
  border-top: 1px solid rgba(255, 246, 230, 0.08);
}

:is(.page-ask, .page-start-here) .live-concierge__lane-label {
  margin: 0 0 10px;
  font-size: clamp(0.64rem, 0.12vw + 0.6rem, 0.72rem);
  font-weight: 850;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--gold);
}

:is(.page-ask, .page-start-here) .live-concierge__chips--lane {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 10px;
  margin: 0;
  padding: 0;
  align-items: flex-start;
}

:is(.page-ask, .page-start-here) .live-concierge__chip--lane {
  appearance: none;
  cursor: pointer;
  font: inherit;
  border-radius: 999px;
  border-width: 1px;
  border-style: solid;
  font-size: clamp(0.76rem, 0.14vw + 0.72rem, 0.86rem);
  font-weight: 600;
  padding: 9px 14px 10px;
  color: rgba(255, 248, 235, 0.94);
  border-color: rgba(255, 246, 230, 0.14);
  background: rgba(5, 10, 20, 0.42);
  box-shadow: inset 0 1px 0 rgba(255, 246, 230, 0.06);
  transition:
    border-color 0.15s ease,
    background 0.15s ease,
    box-shadow 0.15s ease,
    transform 0.12s ease;
}

:is(.page-ask, .page-start-here) .live-concierge__chip--lane:hover {
  border-color: rgba(242, 178, 26, 0.5);
  background: rgba(20, 184, 166, 0.12);
  box-shadow:
    0 0 0 1px rgba(242, 178, 26, 0.12),
    inset 0 1px 0 rgba(255, 246, 230, 0.1);
}

:is(.page-ask, .page-start-here) .live-concierge__chip--lane:active {
  transform: scale(0.98);
}

:is(.page-ask, .page-start-here) .live-concierge__chip--lane:focus-visible {
  outline: 3px solid rgba(242, 178, 26, 0.85);
  outline-offset: 2px;
}

:is(.page-ask, .page-start-here) .live-concierge__main-card {
  position: relative;
  padding: clamp(12px, 2vw, 16px);
  background: transparent;
}

:is(.page-ask, .page-start-here) .live-concierge__conversation:not(.live-concierge__conversation--started) {
  border-color: rgba(255, 246, 230, 0.08);
  box-shadow: inset 0 1px 0 rgba(255, 246, 230, 0.04);
}

:is(.page-ask, .page-start-here) .live-concierge__conversation:not(.live-concierge__conversation--started) .live-concierge__composer-stack {
  padding-top: clamp(10px, 1.6vw, 14px);
}

:is(.page-ask, .page-start-here) .live-concierge__thread {
  margin: 0;
  padding: 0;
  border: none;
  background: none;
  box-shadow: none;
}

:is(.page-ask, .page-start-here) .live-concierge__conversation {
  display: flex;
  flex-direction: column;
  gap: 0;
  border-radius: calc(var(--radius) + 4px);
  overflow: hidden;
  border: 1px solid rgba(255, 246, 230, 0.1);
  background: rgba(3, 8, 18, 0.55);
  box-shadow: inset 0 1px 0 rgba(255, 246, 230, 0.06);
}

:is(.page-ask, .page-start-here) .live-concierge__conversation--started {
  border-color: rgba(242, 178, 26, 0.22);
  box-shadow:
    0 0 0 1px rgba(20, 184, 166, 0.08),
    inset 0 1px 0 rgba(255, 246, 230, 0.08);
}

:is(.page-ask, .page-start-here) .live-concierge__answer-surface {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  min-height: 0;
  border-bottom: 1px solid rgba(255, 246, 230, 0.08);
  background: rgba(4, 10, 22, 0.35);
}

:is(.page-ask, .page-start-here) .live-concierge__preview:not(.live-concierge__preview--placeholder) {
  padding: clamp(14px, 2.2vw, 18px) clamp(14px, 2.2vw, 18px) clamp(12px, 1.8vw, 16px);
}

:is(.page-ask, .page-start-here) .live-concierge__answer-surface:has(.live-concierge__preview--placeholder) {
  padding: clamp(12px, 2vw, 16px);
}

:is(.page-ask, .page-start-here) .live-concierge__preview[hidden] {
  display: none !important;
}

:is(.page-ask, .page-start-here) .live-concierge__preview-text {
  margin: 0;
  font-size: clamp(0.92rem, 0.28vw + 0.86rem, 1rem);
  line-height: 1.5;
  color: rgba(255, 248, 235, 0.82);
}

:is(.page-ask, .page-start-here) .live-concierge__preview--placeholder {
  min-height: clamp(100px, 22vw, 136px);
  margin: 0;
  padding: clamp(16px, 2.4vw, 22px);
  border-radius: calc(var(--radius) + 2px);
  border: none;
  background: rgba(5, 11, 22, 0.52);
  box-shadow: none;
}

:is(.page-ask, .page-start-here) .live-concierge__preview-label {
  margin: 0 0 10px;
  font-size: clamp(0.64rem, 0.12vw + 0.6rem, 0.72rem);
  font-weight: 850;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(20, 184, 166, 0.92);
}

:is(.page-ask, .page-start-here) .live-concierge__preview-heading {
  margin: 0 0 8px;
  font-size: clamp(1rem, 0.35vw + 0.92rem, 1.12rem);
  font-weight: 800;
  line-height: 1.3;
  letter-spacing: -0.02em;
  color: rgba(255, 248, 235, 0.96);
}

:is(.page-ask, .page-start-here) .live-concierge__preview--placeholder .live-concierge__preview-text {
  font-size: clamp(0.88rem, 0.24vw + 0.82rem, 0.96rem);
  color: rgba(255, 248, 235, 0.78);
}

:is(.page-ask, .page-start-here) .live-concierge__glass-panel--tool-first {
  border-top: none;
}

:is(.page-ask, .page-start-here) .live-concierge__starter-chips {
  padding: clamp(12px, 2vw, 16px) clamp(16px, 2.8vw, 22px)
    max(clamp(12px, 2vw, 16px), calc(env(safe-area-inset-bottom, 0px) + 4px));
  border-bottom: 1px solid rgba(255, 246, 230, 0.08);
}

:is(.page-ask, .page-start-here) .live-concierge__starter-label {
  margin: 0 0 10px;
  font-size: clamp(0.64rem, 0.12vw + 0.6rem, 0.72rem);
  font-weight: 850;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(242, 178, 26, 0.88);
}

:is(.page-ask, .page-start-here) .live-concierge__chips--starter {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 10px;
}

:is(.page-ask, .page-start-here) .live-concierge__chip--starter {
  min-height: 40px;
}

:is(.page-ask, .page-start-here) .live-concierge__chip-board--categories {
  padding: clamp(14px, 2.4vw, 18px) clamp(16px, 2.8vw, 22px)
    max(clamp(20px, 3vw, 28px), calc(env(safe-area-inset-bottom, 0px) + 12px));
  border-bottom: none;
}

:is(.page-ask, .page-start-here) .live-concierge__categories-intro {
  margin: 0 0 12px;
  font-size: clamp(0.88rem, 0.24vw + 0.82rem, 0.96rem);
  font-weight: 650;
  color: rgba(255, 248, 235, 0.88);
}

:is(.page-ask, .page-start-here) .live-concierge__category {
  margin: 0 0 8px;
  border-radius: calc(var(--radius) - 2px);
  border: 1px solid rgba(255, 246, 230, 0.1);
  background: rgba(5, 10, 20, 0.35);
  overflow: hidden;
}

:is(.page-ask, .page-start-here) .live-concierge__category-summary {
  cursor: pointer;
  list-style: none;
  padding: 12px 14px;
  font-size: clamp(0.9rem, 0.22vw + 0.84rem, 0.98rem);
  font-weight: 750;
  color: rgba(255, 248, 235, 0.94);
  background: rgba(8, 18, 36, 0.55);
}

:is(.page-ask, .page-start-here) .live-concierge__category-summary::-webkit-details-marker {
  display: none;
}

:is(.page-ask, .page-start-here) .live-concierge__category-summary::after {
  content: "+";
  float: right;
  font-weight: 800;
  color: var(--gold);
}

:is(.page-ask, .page-start-here) .live-concierge__category[open] .live-concierge__category-summary::after {
  content: "−";
}

:is(.page-ask, .page-start-here) .live-concierge__category[open] .live-concierge__category-summary {
  border-bottom: 1px solid rgba(255, 246, 230, 0.08);
}

:is(.page-ask, .page-start-here) .live-concierge__category .live-concierge__chips--lane {
  padding: 12px 14px 14px;
}

:is(.page-ask, .page-start-here) .live-concierge__category-summary:focus-visible {
  outline: 3px solid rgba(242, 178, 26, 0.85);
  outline-offset: -2px;
}

:is(.page-ask, .page-start-here) .live-concierge__trust-note {
  margin: 14px 0 0;
  font-size: clamp(0.78rem, 0.18vw + 0.72rem, 0.86rem);
  line-height: 1.5;
  color: rgba(255, 248, 235, 0.78);
}

:is(.page-ask, .page-start-here) .live-concierge__trust-note a {
  color: rgba(20, 184, 166, 0.95);
  font-weight: 700;
  text-underline-offset: 3px;
}

:is(.page-ask, .page-start-here) .live-concierge__trust-note a:hover {
  color: rgba(255, 246, 230, 0.95);
}

:is(.page-ask, .page-start-here) .live-concierge__transcript {
  flex: 1 1 auto;
  min-height: 0;
  padding: clamp(12px, 2vw, 16px);
  display: block;
}

:is(.page-ask, .page-start-here) .live-concierge__transcript[hidden] {
  display: none !important;
}

:is(.page-ask, .page-start-here) .live-concierge__composer-stack {
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
  min-width: 0;
  padding: clamp(12px, 2vw, 16px);
  background: rgba(3, 8, 18, 0.42);
}

:is(.page-ask, .page-start-here) .live-concierge__composer-kicker {
  margin: 0 0 10px;
  padding: 0;
  font-size: clamp(0.68rem, 0.12vw + 0.64rem, 0.74rem);
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(242, 178, 26, 0.72);
  background: none;
  border: none;
}

:is(.page-ask, .page-start-here) .live-concierge__conversation:not(.live-concierge__conversation--started) .live-concierge__composer-kicker {
  display: none;
}

:is(.page-ask, .page-start-here) .live-concierge__error {
  margin-bottom: 12px;
  padding: 12px 14px;
  border-radius: var(--btn-radius);
  font-size: clamp(0.88rem, 0.25vw + 0.82rem, 0.95rem);
  line-height: 1.45;
  color: rgba(255, 248, 235, 0.94);
  background: rgba(80, 24, 16, 0.45);
  border: 1px solid rgba(255, 106, 77, 0.5);
}

:is(.page-ask, .page-start-here) .live-concierge__chips:not(.live-concierge__chips--lane) {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 8px;
  margin-bottom: 12px;
}

:is(.page-ask, .page-start-here) .live-concierge__chip:not(.live-concierge__chip--lane) {
  appearance: none;
  cursor: pointer;
  font: inherit;
  font-size: clamp(0.8rem, 0.18vw + 0.76rem, 0.88rem);
  font-weight: 600;
  color: rgba(255, 248, 235, 0.92);
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid rgba(242, 178, 26, 0.35);
  background: rgba(5, 10, 20, 0.35);
  transition:
    border-color 0.15s ease,
    background 0.15s ease,
    transform 0.12s ease;
}

:is(.page-ask, .page-start-here) .live-concierge__chip:not(.live-concierge__chip--lane):hover {
  border-color: rgba(20, 184, 166, 0.55);
  background: rgba(20, 184, 166, 0.12);
}

:is(.page-ask, .page-start-here) .live-concierge__chip:not(.live-concierge__chip--lane):active {
  transform: scale(0.98);
}

@media (max-width: 380px) {
  :is(.page-ask, .page-start-here) .live-concierge__chip--lane {
    font-size: 0.72rem;
    padding: 8px 11px 9px;
  }
}

:is(.page-ask, .page-start-here) .live-concierge__log {
  min-height: 0;
  max-height: none;
  overflow-x: hidden;
  overflow-y: visible;
  padding: 4px 4px 6px 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

@media (min-width: 640px) {
  :is(.page-ask, .page-start-here) .live-concierge__log {
    max-height: min(420px, 50vh);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
}

:is(.page-ask, .page-start-here) .live-concierge__msg {
  display: flex;
  max-width: 100%;
}

:is(.page-ask, .page-start-here) .live-concierge__msg--assistant {
  justify-content: flex-start;
}

:is(.page-ask, .page-start-here) .live-concierge__msg--user {
  justify-content: flex-end;
}

:is(.page-ask, .page-start-here) .live-concierge__bubble {
  max-width: min(100%, 34rem);
  padding: 12px 14px;
  border-radius: 16px;
  font-size: clamp(0.9rem, 0.28vw + 0.84rem, 0.98rem);
  line-height: 1.5;
  white-space: pre-wrap;
  word-break: break-word;
}

:is(.page-ask, .page-start-here) .live-concierge__msg--assistant .live-concierge__bubble {
  max-width: 100%;
  color: rgba(255, 248, 235, 0.94);
  background: linear-gradient(155deg, rgba(18, 36, 62, 0.92) 0%, rgba(12, 26, 48, 0.96) 100%);
  border: 1px solid rgba(255, 246, 230, 0.12);
  box-shadow:
    0 10px 28px rgba(2, 6, 14, 0.28),
    inset 0 1px 0 rgba(255, 246, 230, 0.08);
}

:is(.page-ask, .page-start-here) .live-concierge__msg--user .live-concierge__bubble {
  color: #081426;
  background: linear-gradient(135deg, rgba(244, 194, 74, 0.95) 0%, rgba(255, 154, 60, 0.92) 100%);
  border: 1px solid rgba(255, 246, 230, 0.35);
  box-shadow: 0 8px 22px rgba(255, 139, 31, 0.22);
}

:is(.page-ask, .page-start-here) .live-concierge__bubble--thinking {
  color: rgba(255, 248, 235, 0.62);
  font-style: italic;
  background: rgba(8, 18, 36, 0.65);
  border-color: rgba(255, 246, 230, 0.08);
}

:is(.page-ask, .page-start-here) .live-concierge__bubble--rich {
  white-space: normal;
}

:is(.page-ask, .page-start-here) .live-concierge__rich {
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
}

:is(.page-ask, .page-start-here) .live-concierge__rich-lead {
  margin: 0;
  font-size: clamp(0.92rem, 0.24vw + 0.86rem, 0.98rem);
  line-height: 1.48;
  font-weight: 650;
  color: rgba(255, 248, 235, 0.96);
}

:is(.page-ask, .page-start-here) .live-concierge__rich-block {
  margin: 0;
  padding: 0;
}

:is(.page-ask, .page-start-here) .live-concierge__rich-label {
  display: block;
  margin: 0 0 0.28rem;
  font-size: clamp(0.64rem, 0.1vw + 0.6rem, 0.7rem);
  font-weight: 850;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--gold);
}

:is(.page-ask, .page-start-here) .live-concierge__rich-body {
  margin: 0;
  font-size: clamp(0.88rem, 0.2vw + 0.84rem, 0.94rem);
  line-height: 1.45;
  color: rgba(255, 248, 235, 0.9);
}

:is(.page-ask, .page-start-here) .live-concierge__rich p {
  margin: 0 0 0.5em;
}

:is(.page-ask, .page-start-here) .live-concierge__rich p:last-child {
  margin-bottom: 0;
}

:is(.page-ask, .page-start-here) .live-concierge__rich strong {
  font-weight: 800;
  color: var(--gold);
}

:is(.page-ask, .page-start-here) .live-concierge__rich ul,
:is(.page-ask, .page-start-here) .live-concierge__rich ol {
  margin: 0.2em 0 0;
  padding: 0 0 0 1.1em;
}

:is(.page-ask, .page-start-here) .live-concierge__rich li {
  margin-bottom: 0.28em;
  color: rgba(255, 248, 235, 0.9);
}

:is(.page-ask, .page-start-here) .live-concierge__rich li:last-child {
  margin-bottom: 0;
}

:is(.page-ask, .page-start-here) .live-concierge__rich-list {
  margin: 0.15em 0 0;
  padding: 0 0 0 1.1em;
}

@media (max-width: 520px) {
  :is(.page-ask, .page-start-here) .live-concierge__image-band-media {
    height: clamp(190px, 44vw, 250px);
  }

  :is(.page-ask, .page-start-here) .live-concierge__panel-intro {
    font-size: clamp(0.96rem, 0.3vw + 0.9rem, 1.06rem);
  }

  :is(.page-ask, .page-start-here) .live-concierge__panel-support {
    font-size: clamp(0.84rem, 0.24vw + 0.8rem, 0.92rem);
    line-height: 1.5;
  }
}

:is(.page-ask, .page-start-here) .live-concierge__composer-stack .live-concierge__input-label:not(.visually-hidden) {
  display: block;
  margin: 0 0 8px 2px;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(242, 178, 26, 0.82);
}

:is(.page-ask, .page-start-here) .live-concierge__panel-support a {
  color: rgba(20, 184, 166, 0.95);
  font-weight: 700;
  text-underline-offset: 3px;
}

:is(.page-ask, .page-start-here) .live-concierge__panel-support a:hover {
  color: rgba(255, 246, 230, 0.95);
}

/* Ask page — optional human help (collapsed by default) */
:is(.page-ask, .page-start-here) .ask-human-fallback {
  padding: 0 clamp(16px, 4vw, 44px) clamp(28px, 4vw, 40px);
  background: linear-gradient(180deg, #ebe8e4 0%, #e5e2dc 100%);
  border: 0;
}

:is(.page-ask, .page-start-here) .ask-human-fallback > summary {
  cursor: pointer;
  list-style: none;
  max-width: min(520px, 100%);
  margin: 0 auto;
  padding: clamp(16px, 2vw, 18px) clamp(16px, 2.2vw, 20px);
  border-radius: calc(var(--radius) + 8px);
  font-weight: 600;
  font-size: 0.9rem;
  color: var(--slate);
  background: linear-gradient(165deg, rgba(255, 255, 255, 0.98) 0%, rgba(255, 252, 248, 0.94) 100%);
  border: 1px solid rgba(11, 29, 58, 0.1);
  box-shadow:
    0 0 0 1px rgba(255, 255, 255, 0.85) inset,
    0 12px 28px rgba(11, 29, 58, 0.07);
  box-sizing: border-box;
}

:is(.page-ask, .page-start-here) .ask-human-fallback > summary::-webkit-details-marker {
  display: none;
}

:is(.page-ask, .page-start-here) .ask-human-fallback > summary:focus-visible {
  outline: 2px solid rgba(20, 184, 166, 0.85);
  outline-offset: 3px;
}

:is(.page-ask, .page-start-here) .ask-human-fallback[open] > summary {
  margin-bottom: 16px;
}

:is(.page-ask, .page-start-here) .ask-human-fallback__summary-main {
  display: block;
  font-weight: 800;
  font-size: clamp(1rem, 0.35vw + 0.92rem, 1.08rem);
  color: var(--navy);
  letter-spacing: -0.02em;
}

:is(.page-ask, .page-start-here) .ask-human-fallback__summary-sub {
  display: block;
  margin-top: 8px;
  font-size: clamp(0.84rem, 0.12vw + 0.8rem, 0.9rem);
  font-weight: 550;
  line-height: 1.5;
  color: var(--slate);
}

:is(.page-ask, .page-start-here) .ask-human-fallback__body {
  max-width: min(40rem, 100%);
  margin: 0 auto;
}

:is(.page-ask, .page-start-here) .ask-human-fallback .ask-section-head {
  margin-bottom: 18px;
}

:is(.page-ask, .page-start-here) .ask-human-fallback__form-title {
  margin: 0 0 10px;
  font-size: clamp(1.35rem, 0.6vw + 1.12rem, 1.55rem);
  color: var(--navy);
  letter-spacing: -0.02em;
}

:is(.page-ask, .page-start-here) .live-concierge__input-label.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

:is(.page-ask, .page-start-here) .live-concierge__composer-stack .live-concierge__form {
  display: block;
  margin: 0;
}

:is(.page-ask, .page-start-here) .live-concierge__composer-stack .live-concierge__composer-unit {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 10px;
  padding: clamp(10px, 1.8vw, 14px);
  padding-bottom: max(clamp(10px, 1.8vw, 14px), calc(env(safe-area-inset-bottom, 0px) + 8px));
  border-radius: calc(var(--radius) + 2px);
  border: 1px solid rgba(255, 246, 230, 0.14);
  background: rgba(5, 12, 26, 0.72);
  box-shadow:
    0 0 0 1px rgba(242, 178, 26, 0.08),
    inset 0 1px 0 rgba(255, 246, 230, 0.06);
  overflow: hidden;
  transition:
    border-color 0.2s ease,
    box-shadow 0.2s ease;
  -webkit-tap-highlight-color: rgba(20, 184, 166, 0.12);
}

:is(.page-ask, .page-start-here) .live-concierge__composer-stack .live-concierge__composer-unit:focus-within {
  border-color: rgba(242, 178, 26, 0.45);
  box-shadow:
    0 0 0 1px rgba(255, 139, 31, 0.2),
    0 0 0 4px rgba(242, 178, 26, 0.12),
    inset 0 1px 0 rgba(255, 246, 230, 0.1);
}

:is(.page-ask, .page-start-here) .live-concierge__composer-stack .live-concierge__input {
  flex: 1;
  min-width: 0;
  width: 100%;
  box-sizing: border-box;
  resize: vertical;
  min-height: clamp(52px, 12vw, 68px);
  max-height: 180px;
  margin: 0;
  padding: 2px 4px;
  border: none;
  border-radius: 0;
  background: transparent;
  color: rgba(255, 248, 235, 0.96);
  font: inherit;
  font-size: clamp(0.96rem, 0.28vw + 0.88rem, 1.05rem);
  line-height: 1.45;
  outline: none;
  box-shadow: none;
  caret-color: var(--turquoise);
}

:is(.page-ask, .page-start-here) .live-concierge__composer-stack .live-concierge__input::placeholder {
  color: rgba(255, 248, 235, 0.64);
  opacity: 1;
  transition: opacity 0.2s ease;
}

:is(.page-ask, .page-start-here) .live-concierge__composer-unit .live-concierge__engage-hint {
  flex: 1 1 100%;
  width: 100%;
  margin: 0;
  padding: 0 2px;
  font-size: clamp(0.78rem, 0.2vw + 0.72rem, 0.86rem);
  line-height: 1.45;
  font-weight: 550;
  color: rgba(255, 248, 235, 0.74);
}

:is(.page-ask, .page-start-here) .live-concierge__composer-stack .live-concierge__composer-unit:focus-within .live-concierge__input::placeholder {
  opacity: 0.5;
}

:is(.page-ask, .page-start-here) .live-concierge__composer-stack .live-concierge__send {
  width: 100%;
  flex-shrink: 0;
  min-height: 50px;
  margin: 0;
  padding: 14px 22px 15px;
  border: 1px solid rgba(255, 255, 255, 0.55);
  border-radius: calc(var(--radius) - 4px);
  font-weight: 850;
  font-size: clamp(0.98rem, 0.28vw + 0.9rem, 1.06rem);
  letter-spacing: 0.01em;
  text-transform: none;
  color: #081426;
  background: linear-gradient(145deg, #f4c24a 0%, #f2b21a 28%, #ff9a3c 58%, #ff8b1f 100%);
  box-shadow:
    0 16px 36px rgba(255, 139, 31, 0.32),
    0 8px 18px rgba(242, 178, 26, 0.24),
    0 3px 0 rgba(255, 255, 255, 0.45) inset,
    0 -2px 0 rgba(180, 83, 9, 0.16) inset;
  cursor: pointer;
  transition:
    filter 0.18s ease,
    transform 0.18s ease,
    box-shadow 0.18s ease;
}

:is(.page-ask, .page-start-here) .live-concierge__composer-stack .live-concierge__send:hover:not(:disabled) {
  filter: brightness(1.05) saturate(1.08);
  transform: translateY(-2px);
  box-shadow:
    0 26px 54px rgba(255, 139, 31, 0.45),
    0 14px 28px rgba(242, 178, 26, 0.34),
    0 4px 0 rgba(255, 255, 255, 0.55) inset,
    0 -3px 0 rgba(180, 83, 9, 0.14) inset;
}

:is(.page-ask, .page-start-here) .live-concierge__composer-stack .live-concierge__send:active:not(:disabled) {
  transform: translateY(1px);
  filter: brightness(0.97) saturate(1.05);
  box-shadow:
    0 10px 24px rgba(255, 139, 31, 0.32),
    0 3px 0 rgba(255, 255, 255, 0.38) inset,
    0 -2px 0 rgba(180, 83, 9, 0.22) inset;
}

:is(.page-ask, .page-start-here) .live-concierge__composer-stack .live-concierge__send:disabled {
  opacity: 0.55;
  cursor: not-allowed;
  transform: none;
  box-shadow: 0 6px 16px rgba(2, 6, 14, 0.28);
}

/* Ask + Start Here — Ask A Local tool layout (image → answer → chat input) */
:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__image-band-media {
  border-radius: calc(var(--radius) + 8px) calc(var(--radius) + 8px) 0 0;
}

:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__glass-panel--tool-first {
  border-top: none;
}

:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__thread {
  display: flex;
  flex-direction: column;
  gap: clamp(10px, 1.8vw, 14px);
}

:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__conversation {
  border: none;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}

:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__conversation:not(.live-concierge__conversation--started) {
  border: none;
  box-shadow: none;
}

:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__conversation--started {
  border: none;
  box-shadow: none;
}

:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__answer-surface {
  border: none;
  border-bottom: none;
  background: transparent;
  padding: 0;
}

:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__answer-surface:has(.live-concierge__preview--placeholder) {
  padding: 0;
}

:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__preview--placeholder {
  min-height: clamp(108px, 24vw, 140px);
  margin: 0;
  padding: clamp(16px, 2.4vw, 22px);
  border-radius: calc(var(--radius) + 2px);
  border: none;
  background: rgba(5, 11, 22, 0.52);
  box-shadow: none;
}

.page-ask .live-concierge__preview-label {
  color: rgba(20, 184, 166, 0.95);
}

:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__preview--placeholder .live-concierge__preview-text {
  color: rgba(255, 248, 235, 0.86);
}

:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__transcript {
  padding: 0;
}

:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__log {
  border-radius: calc(var(--radius) + 2px);
  border: 1px solid rgba(255, 246, 230, 0.14);
  background: linear-gradient(
    168deg,
    rgba(10, 22, 40, 0.98) 0%,
    rgba(6, 14, 28, 0.96) 100%
  );
  box-shadow:
    0 14px 32px rgba(2, 6, 14, 0.38),
    inset 0 1px 0 rgba(255, 246, 230, 0.08);
}

:is(.page-ask, .page-start-here) .live-concierge__composer-stack {
  padding: 0;
  background: transparent;
}

:is(.page-ask, .page-start-here) .live-concierge__composer-stack .live-concierge__form {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

:is(.page-ask, .page-start-here) .live-concierge__composer-stack > .live-concierge__engage-hint {
  margin: 14px 0 28px;
  padding: 0 2px;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  min-width: 0;
  font-size: clamp(0.72rem, 0.18vw + 0.68rem, 0.79rem);
  font-weight: 500;
  line-height: 1.45;
  color: rgba(228, 212, 188, 0.58);
  text-wrap: pretty;
}

:is(.page-ask, .page-start-here) .live-concierge__composer-stack .live-concierge__composer-unit {
  padding: clamp(12px, 2vw, 14px);
  padding-bottom: clamp(12px, 2vw, 14px);
  border-radius: calc(var(--radius) + 2px);
  border: 1px solid rgba(255, 246, 230, 0.18);
  background: rgba(5, 12, 26, 0.82);
  box-shadow: inset 0 1px 0 rgba(255, 246, 230, 0.06);
}

:is(.page-ask, .page-start-here) .live-concierge__composer-stack .live-concierge__composer-unit:focus-within {
  border-color: rgba(242, 178, 26, 0.42);
  box-shadow:
    0 0 0 1px rgba(255, 139, 31, 0.16),
    0 0 0 4px rgba(242, 178, 26, 0.1),
    inset 0 1px 0 rgba(255, 246, 230, 0.08);
}

:is(.page-ask, .page-start-here) .live-concierge__composer-stack .live-concierge__input::placeholder {
  color: rgba(255, 248, 235, 0.7);
}

:is(.page-ask, .page-start-here) .live-concierge__composer-stack .live-concierge__send {
  margin-top: 2px;
  min-height: 52px;
  border-radius: calc(var(--radius) + 2px);
}

:is(.page-ask, .page-start-here) .live-concierge__starter-chips {
  border-bottom: 1px solid rgba(255, 246, 230, 0.08);
}

:is(.page-ask, .page-start-here) .live-concierge__chip-board--categories {
  padding-bottom: max(clamp(24px, 3.5vw, 32px), calc(env(safe-area-inset-bottom, 0px) + 16px));
}

:is(.page-ask, .page-start-here) .live-concierge__trust-note {
  color: rgba(255, 248, 235, 0.84);
}

@media (max-width: 520px) {
  :is(.page-ask, .page-start-here) .live-concierge__title {
    font-size: clamp(1.32rem, 5.2vw, 1.55rem);
    line-height: 1.18;
  }

  :is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__image-band-media {
    height: clamp(168px, 40vw, 220px);
  }

  :is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__preview--placeholder {
    min-height: clamp(96px, 28vw, 120px);
    padding: 14px 16px;
  }

  :is(.page-ask, .page-start-here) .live-concierge__composer-stack .live-concierge__send {
    min-height: 54px;
    margin-bottom: 0;
  }
}

/* Ask page — unified Ask A Local module alignment */
.page-ask .ask-local-shell.section-navy-routes {
  padding-left: 0;
  padding-right: 0;
}

:is(.page-ask, .page-start-here) .ask-local-inner {
  --ask-local-gutter: clamp(14px, 3.2vw, 18px);
  --ask-local-max: min(720px, 100%);
  width: 100%;
  max-width: var(--ask-local-max);
  margin-inline: auto;
  padding-inline: clamp(24px, 6vw, 30px);
  gap: clamp(18px, 4vw, 26px);
}

:is(.page-ask, .page-start-here) .ask-local-inner.live-concierge-inner {
  max-width: var(--ask-local-max);
}

:is(.page-ask, .page-start-here) .ask-local-tool.live-concierge-studio {
  width: 100%;
  max-width: none;
  margin-inline: 0;
}

.page-ask .ask-local-copy {
  width: 100%;
  text-align: left;
}

.page-ask .ask-local-copy .live-concierge__head {
  text-align: inherit;
  margin-bottom: 0;
}

.page-ask .ask-local-copy .live-concierge__lead {
  margin-left: 0;
  margin-right: 0;
  max-width: none;
}

.page-ask .ask-local-copy .live-concierge__status {
  margin: clamp(12px, 2.8vw, 16px) 0 0;
}

:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge-card {
  width: 100%;
}

:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__main-card,
:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__starter-chips,
:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__chip-board--categories {
  width: 100%;
  box-sizing: border-box;
  padding-left: var(--ask-local-gutter);
  padding-right: var(--ask-local-gutter);
}

:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__main-card {
  padding-top: clamp(14px, 2.8vw, 18px);
  padding-bottom: clamp(10px, 2vw, 14px);
}

:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__starter-chips {
  padding-top: clamp(16px, 3vw, 20px);
  padding-bottom: clamp(12px, 2.4vw, 16px);
}

:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__chip-board--categories {
  padding-top: clamp(12px, 2.4vw, 16px);
  padding-bottom: max(clamp(24px, 3.5vw, 32px), calc(env(safe-area-inset-bottom, 0px) + 16px));
}

:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__thread {
  gap: clamp(14px, 3vw, 18px);
}

:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__preview--placeholder,
:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__composer-stack,
:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__composer-stack .live-concierge__form,
:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__composer-stack .live-concierge__composer-unit,
:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__composer-stack .live-concierge__send,
:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__composer-stack > .live-concierge__engage-hint,
:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__chips--starter,
:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__category,
:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__trust-note {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__composer-stack > .live-concierge__engage-hint {
  margin-left: 0;
  margin-right: 0;
  padding-left: 0;
  padding-right: 0;
}

:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__composer-stack .live-concierge__form {
  display: flex;
  flex-direction: column;
  gap: clamp(10px, 2.5vw, 14px);
}

:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__composer-stack .live-concierge__composer-unit,
:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__composer-stack .live-concierge__send {
  margin-left: 0;
  margin-right: 0;
}

:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__chips--starter {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
  padding: 0;
}

:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__chip--starter {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  text-align: center;
  min-height: 44px;
}

:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__starter-label,
:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__categories-intro {
  margin-left: 0;
  margin-right: 0;
  text-align: left;
}

:is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__trust-note {
  margin-top: clamp(14px, 2.8vw, 18px);
  text-align: left;
  text-wrap: pretty;
}

@media (max-width: 380px) {
  :is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__chips--starter {
    grid-template-columns: 1fr;
  }
}

@media (min-width: 768px) {
  .page-ask .ask-local-copy {
    text-align: center;
  }

  .page-ask .ask-local-copy .live-concierge__lead {
    margin-inline: auto;
    max-width: 38rem;
  }

  .page-ask .ask-local-copy .live-concierge__status {
    margin-left: auto;
    margin-right: auto;
  }

  :is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__starter-label,
  :is(.page-ask, .page-start-here) .ask-local-tool .live-concierge__categories-intro {
    text-align: left;
  }
}

/* ----- Ask product page (tool-first rebuild) ----- */
.page-ask {
  --ask-hero-photo: url("/assets/downtown-river-promenade-twilight.png");
}

/*
 * Layout model (standard product-page pattern):
 * 1. .ask-product-shell — centered column + page gutter (all sections share this)
 * 2. .ask-product-tool-card — full width of shell; inner padding clears rounded corners
 * 3. --ask-text-inset matches chip label padding — copy aligns to words inside pills, not pill edges
 */
.page-ask .ask-product-main {
  --ask-shell-max: 45rem;
  --ask-shell-pad: clamp(20px, 5vw, 32px);
  --ask-card-pad-block: clamp(18px, 4.2vw, 24px);
  --ask-section-pad: clamp(40px, 6vw, 56px);
  padding-bottom: 0;
  /* Vertical rhythm — shared gaps for copy, controls, and section blocks */
  --ask-stack-xs: 8px;
  --ask-stack-sm: 12px;
  --ask-stack-md: 16px;
  --ask-stack-lg: 24px;
  --ask-stack-xl: 32px;
  /* Match prompt-chip padding-inline — body copy aligns to label text, not pill border */
  --ask-text-inset: 14px;
  letter-spacing: normal;
  word-spacing: normal;
}

.page-ask .ask-product-shell {
  width: 100%;
  max-width: var(--ask-shell-max);
  margin-inline: auto;
  padding-inline: var(--ask-shell-pad);
  box-sizing: border-box;
}

/* Hero: cinematic background photo with copy on top (matches Downtown / Where To Eat) */
.page-ask .ask-hero--cinematic.hero-fiesta-dark.secondary-hero {
  isolation: isolate;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  overflow-x: clip;
  max-width: none;
  margin: 0;
  padding: 0;
  min-height: clamp(420px, 62vh, 640px);
  /* Override .hero-fiesta-dark gradients — photo must win */
  background-color: #0a1a2e;
  background-image:
    linear-gradient(180deg, transparent 70%, rgba(9, 26, 52, 0.28) 100%),
    url("/assets/downtown-river-promenade-twilight.png");
  background-repeat: no-repeat;
  background-position: center 42%;
  background-size: cover;
}

.page-ask .ask-hero--cinematic.hero-fiesta-dark::before {
  display: none;
}

.page-ask .ask-hero--cinematic.secondary-hero.hero-fiesta-dark::after {
  pointer-events: none;
  z-index: 1;
  background: linear-gradient(180deg, transparent 70%, rgba(9, 26, 52, 0.28) 100%);
}

.page-ask .ask-product-hero .hero-title {
  font-size: clamp(1.85rem, 4.2vw + 0.5rem, 2.65rem);
  line-height: 1.08;
  letter-spacing: -0.03em;
  text-shadow:
    0 2px 24px rgba(2, 6, 14, 0.55),
    0 1px 3px rgba(2, 6, 14, 0.4);
}

.page-ask .ask-product-hero .hero-text-on-dark {
  text-shadow: 0 1px 14px rgba(2, 6, 14, 0.5);
}

.page-ask .ask-product-hero .hero-content .eyebrow-hero {
  margin-bottom: 0;
  color: rgba(242, 178, 26, 0.95);
  text-shadow: 0 1px 12px rgba(2, 6, 14, 0.35);
}

.page-ask .ask-product-hero.hero-fiesta-dark .hero-content.secondary-hero-copy {
  gap: clamp(14px, 2.2vw, 18px);
}

.page-ask .ask-product-hero-actions.hero-cta-row,
.page-ask .ask-product-hero-actions {
  margin-top: 0;
}

.page-ask .ask-product-hero-actions.hero-cta-row {
  gap: var(--ask-stack-sm) 14px;
}

.page-ask .ask-product-hero-actions .btn-primary {
  min-height: 50px;
  box-shadow:
    0 18px 40px rgba(255, 139, 31, 0.34),
    0 3px 0 rgba(255, 255, 255, 0.45) inset;
}

.page-ask .ask-product-hero-actions .btn-secondary-hero {
  min-height: 50px;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

.page-ask .ask-hero--cinematic .hero-fiesta-inner.hero-inner-band.ask-product-shell {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: var(--ask-shell-max);
  margin-inline: auto;
  box-sizing: border-box;
  padding-inline: var(--ask-shell-pad);
  padding-block: clamp(24px, 4vw, 40px) calc(clamp(24px, 4vw, 40px) + 5px);
}

.page-ask .ask-hero--cinematic .hero-shell.ask-product-hero-shell {
  display: block;
  width: 100%;
  max-width: none;
}

.page-ask .ask-product-hero-eyebrow {
  text-transform: uppercase;
  letter-spacing: 0.14em;
}

.page-ask .ask-product-hero .hero-title,
.page-ask .ask-product-hero .hero-text-on-dark,
.page-ask .ask-product-section-head h2,
.page-ask .ask-product-section-head .section-text,
.page-ask .ask-product-prompts-title,
.page-ask .ask-product-prompts-lead,
.page-ask .ask-product-example-card,
.page-ask .ask-product-human-inner .section-text,
.page-ask .ask-product-human-note {
  letter-spacing: normal;
  word-spacing: normal;
  text-align: left;
  hyphens: none;
  -webkit-hyphens: none;
}

.page-ask .ask-product-hero .hero-text-on-dark {
  max-width: none;
}

.page-ask .ask-product-hero-support {
  font-size: clamp(0.92rem, 0.22vw + 0.86rem, 1.02rem);
  line-height: 1.55;
  max-width: none;
}

.page-ask .ask-product-tool-section {
  position: relative;
  padding-top: clamp(8px, 1.5vw, 14px);
  padding-bottom: clamp(36px, 5vw, 52px);
}

.page-ask .ask-product-tool-section.section-navy-routes {
  background:
    radial-gradient(circle at 14% 0%, rgba(20, 184, 166, 0.22), transparent 34%),
    radial-gradient(circle at 92% 88%, rgba(255, 92, 168, 0.16), transparent 36%),
    radial-gradient(circle at 78% 14%, rgba(255, 139, 31, 0.14), transparent 32%),
    linear-gradient(160deg, #091a34 0%, #0b1d3a 44%, #10274a 100%);
}

.page-ask .ask-product-tool-section.section-navy-routes,
.page-ask .ask-product-tool-section.section {
  padding-inline: 0;
}

.page-ask .routes-band-inner.ask-product-inner.ask-product-shell {
  display: flex;
  flex-direction: column;
  gap: clamp(28px, 4vw, 36px);
}

/* Cream / navy bands: section-head margin supplies rhythm (not routes-band-inner flex gap) */
.page-ask .ask-product-value-inner.routes-band-inner,
.page-ask .ask-product-examples-inner.routes-band-inner,
.page-ask .ask-product-human-inner.routes-band-inner {
  gap: 0;
}

.page-ask .ask-product-tool.ask-local-tool.live-concierge-studio {
  width: 100%;
  max-width: none;
  margin-inline: 0;
}

/*
 * Shared copy column (shell gutter + text inset) — headings, hero, prompts, and
 * cream-section notes align with example-card text and words inside prompt chips.
 */
.page-ask .ask-product-hero .hero-content,
.page-ask .ask-product-section-head,
.page-ask .ask-product-prompts-head,
.page-ask .ask-product-prompt-group-label,
.page-ask .ask-product-human-note,
.page-ask .ask-product-human-actions {
  padding-left: var(--ask-text-inset);
  box-sizing: border-box;
}

/* Tool card: one horizontal inset on the card — no nested copy padding */
.page-ask .ask-product-tool.ask-local-tool .live-concierge__main-card,
.page-ask .ask-product-tool.ask-local-tool .live-concierge__glass-panel,
.page-ask .ask-product-tool.ask-local-tool .live-concierge__answer-surface,
.page-ask .ask-product-tool.ask-local-tool .live-concierge__answer-surface:has(.live-concierge__preview--placeholder) {
  padding: 0;
  padding-inline: 0;
}

.page-ask .ask-product-tool-wrap {
  position: relative;
  isolation: isolate;
}

@media (min-width: 720px) {
  .page-ask .ask-product-tool-wrap::before {
    content: "";
    position: absolute;
    inset: -20px -12px -28px;
    z-index: -1;
    pointer-events: none;
    background:
      radial-gradient(ellipse 70% 55% at 50% 18%, rgba(20, 184, 166, 0.2), transparent 68%),
      radial-gradient(ellipse 55% 45% at 88% 72%, rgba(242, 178, 26, 0.14), transparent 62%);
    filter: blur(28px);
    opacity: 0.9;
  }
}

/* Premium Ask A Local studio card (hero product surface) */
.page-ask .ask-product-tool-card.live-concierge-card {
  /* In-card chat copy + typed text share one column (composer field padding) */
  --ask-chat-field-pad: clamp(14px, 2.4vw, 18px);
  position: relative;
  isolation: isolate;
  box-sizing: border-box;
  width: 100%;
  padding:
    clamp(26px, 5vw, 32px)
    var(--ask-text-inset)
    clamp(24px, 4.8vw, 30px);
  border-radius: calc(var(--radius) + 14px);
  overflow: hidden;
  border: 1px solid rgba(255, 246, 230, 0.2);
  background:
    radial-gradient(ellipse 120% 85% at 0% 0%, rgba(20, 184, 166, 0.14), transparent 52%),
    radial-gradient(ellipse 90% 70% at 100% 100%, rgba(242, 178, 26, 0.11), transparent 48%),
    radial-gradient(ellipse 55% 45% at 92% 8%, rgba(255, 92, 168, 0.09), transparent 42%),
    linear-gradient(165deg, rgba(11, 24, 44, 0.99) 0%, rgba(7, 16, 32, 0.98) 46%, rgba(4, 10, 22, 1) 100%);
  box-shadow:
    0 1px 0 rgba(255, 246, 230, 0.1) inset,
    0 0 0 1px rgba(20, 184, 166, 0.08) inset,
    0 36px 80px rgba(2, 6, 14, 0.58),
    0 14px 32px rgba(2, 6, 14, 0.38);
}

.page-ask .ask-product-tool-card.live-concierge-card::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 1px;
  background: linear-gradient(
    148deg,
    rgba(20, 184, 166, 0.55) 0%,
    rgba(255, 246, 230, 0.14) 38%,
    rgba(242, 178, 26, 0.35) 72%,
    rgba(255, 139, 31, 0.28) 100%
  );
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events: none;
  z-index: 2;
}

.page-ask .ask-product-tool-card.live-concierge-card::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 4px;
  background: linear-gradient(
    90deg,
    var(--turquoise) 0%,
    rgba(20, 184, 166, 0.65) 22%,
    var(--gold) 52%,
    var(--orange) 78%,
    var(--coral) 100%
  );
  opacity: 0.92;
  pointer-events: none;
  z-index: 3;
}

.page-ask .ask-product-tool-card .live-concierge__glass-panel,
.page-ask .ask-product-tool-card .live-concierge__main-card,
.page-ask .ask-product-tool.ask-local-tool .live-concierge__main-card {
  position: relative;
  z-index: 1;
  padding: 0;
  border: none;
  background: transparent;
  box-shadow: none;
}

.page-ask .ask-product-tool-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: var(--ask-stack-sm) var(--ask-stack-md);
  margin: 0 0 var(--ask-stack-lg);
  padding: 0 var(--ask-chat-field-pad);
}

.page-ask .ask-product-tool-kicker {
  margin: 0;
  font-size: clamp(0.64rem, 0.12vw + 0.6rem, 0.7rem);
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(255, 246, 230, 0.46);
}

.page-ask .ask-product-tool-head .ask-product-tool-status.live-concierge__status {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: auto;
  max-width: 100%;
  margin: 0;
  padding: 8px 15px 8px 12px;
  border-radius: 999px;
  border: 1px solid rgba(20, 184, 166, 0.44);
  background:
    linear-gradient(
      152deg,
      rgba(20, 184, 166, 0.24) 0%,
      rgba(8, 18, 34, 0.9) 52%,
      rgba(4, 10, 22, 0.96) 100%
    );
  box-shadow:
    0 1px 0 rgba(255, 246, 230, 0.14) inset,
    0 10px 26px rgba(2, 6, 14, 0.3);
  font-size: clamp(0.64rem, 0.1vw + 0.6rem, 0.7rem);
  font-weight: 800;
  letter-spacing: 0.11em;
  text-transform: uppercase;
  color: rgba(255, 248, 235, 0.94);
  text-align: left;
}

.page-ask .ask-product-tool-head .ask-product-tool-status.live-concierge__status::before {
  content: "";
  display: block;
  flex: 0 0 auto;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--turquoise);
  box-shadow:
    0 0 0 3px rgba(20, 184, 166, 0.22),
    0 0 10px rgba(20, 184, 166, 0.7);
}

.page-ask .ask-product-tool-head .ask-product-tool-status.live-concierge__status--live {
  border-color: rgba(242, 178, 26, 0.52);
  color: rgba(255, 248, 235, 0.98);
  background:
    linear-gradient(
      152deg,
      rgba(242, 178, 26, 0.22) 0%,
      rgba(8, 18, 34, 0.92) 52%,
      rgba(4, 10, 22, 0.98) 100%
    );
  box-shadow:
    0 1px 0 rgba(255, 246, 230, 0.12) inset,
    0 0 24px rgba(242, 178, 26, 0.14),
    0 10px 26px rgba(2, 6, 14, 0.3);
}

.page-ask .ask-product-tool-head .ask-product-tool-status.live-concierge__status--live::before {
  display: block;
  background: var(--gold);
  box-shadow:
    0 0 0 3px rgba(242, 178, 26, 0.24),
    0 0 12px rgba(242, 178, 26, 0.65);
  animation: ask-product-status-pulse 1.8s ease-in-out infinite;
}

@keyframes ask-product-status-pulse {
  0%,
  100% {
    opacity: 1;
    transform: scale(1);
  }
  50% {
    opacity: 0.72;
    transform: scale(0.92);
  }
}

@media (prefers-reduced-motion: reduce) {
  .page-ask .ask-product-tool-head .ask-product-tool-status.live-concierge__status--live::before {
    animation: none;
  }

  .page-ask .ask-product-tool .live-concierge__composer-stack .live-concierge__send:hover:not(:disabled),
  .page-ask .ask-product-value-list li:hover,
  .page-ask .ask-product-example-card:hover {
    transform: none;
  }
}

/*
 * Single studio surface — no nested cards. One copy column (--ask-chat-field-pad)
 * shared by preview, label, textarea, and hint; only the input has a field outline.
 */
.page-ask .ask-product-tool.ask-local-tool .live-concierge__conversation,
.page-ask .ask-product-tool.ask-local-tool .live-concierge__conversation:not(.live-concierge__conversation--started) {
  border: none;
  background: transparent;
  box-shadow: none;
}

.page-ask .ask-product-tool.ask-local-tool .live-concierge__preview--placeholder,
.page-ask .ask-product-tool .live-concierge__preview:not(.live-concierge__preview--placeholder) {
  box-sizing: border-box;
  width: 100%;
  min-height: clamp(100px, 22vw, 128px);
  margin: 0 0 var(--ask-stack-md);
  padding-block: clamp(4px, 1vw, 8px) var(--ask-stack-md);
  padding-inline: var(--ask-chat-field-pad);
  border: none;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.page-ask .ask-product-tool .live-concierge__log {
  padding: clamp(4px, 1vw, 8px) var(--ask-chat-field-pad) clamp(16px, 2.6vw, 20px);
  border: none;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.page-ask .ask-product-tool.ask-local-tool .live-concierge__composer-stack .live-concierge__form {
  display: flex;
  flex-direction: column;
  gap: var(--ask-stack-sm);
}

.page-ask .ask-product-tool .live-concierge__composer-stack {
  box-sizing: border-box;
  margin: 0;
  padding: var(--ask-stack-md) 0 0;
  border: none;
  border-top: 1px solid rgba(255, 246, 230, 0.1);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.page-ask .ask-product-tool .live-concierge__composer-stack .live-concierge__composer-unit {
  padding: var(--ask-chat-field-pad);
  border-radius: calc(var(--radius) + 2px);
  border: 1px solid rgba(255, 246, 230, 0.18);
  background: rgba(2, 6, 14, 0.55);
  box-shadow: inset 0 1px 0 rgba(255, 246, 230, 0.06);
  transition:
    border-color 0.22s ease,
    box-shadow 0.22s ease,
    background 0.22s ease;
}

.page-ask .ask-product-tool .live-concierge__composer-stack .live-concierge__composer-unit:focus-within {
  border-color: rgba(242, 178, 26, 0.5);
  background: rgba(3, 8, 18, 0.72);
  box-shadow:
    0 0 0 1px rgba(242, 178, 26, 0.16),
    0 0 0 4px rgba(20, 184, 166, 0.1),
    inset 0 1px 0 rgba(255, 246, 230, 0.08);
}

.page-ask .ask-product-tool .live-concierge__composer-stack .live-concierge__input {
  padding: 0;
  font-size: clamp(0.98rem, 0.24vw + 0.92rem, 1.06rem);
  line-height: 1.5;
}

.page-ask .ask-product-tool .live-concierge__composer-stack .live-concierge__input::placeholder {
  color: rgba(255, 248, 235, 0.52);
}

.page-ask .ask-product-tool .live-concierge__composer-stack > .live-concierge__engage-hint {
  margin: var(--ask-stack-sm) 0 0;
  padding: 0 0 0 var(--ask-chat-field-pad);
  max-width: none;
  color: rgba(255, 248, 235, 0.55);
  font-size: clamp(0.74rem, 0.16vw + 0.7rem, 0.8rem);
  line-height: 1.5;
}

.page-ask .ask-product-tool .live-concierge__preview-heading {
  margin: 0 0 var(--ask-stack-xs);
  font-size: clamp(1.1rem, 0.4vw + 1rem, 1.28rem);
  font-weight: 800;
  letter-spacing: -0.025em;
  line-height: 1.22;
  color: rgba(255, 248, 235, 0.98);
  text-shadow: 0 1px 18px rgba(2, 6, 14, 0.35);
}

.page-ask .ask-product-tool .live-concierge__preview--placeholder .live-concierge__preview-text {
  margin: 0;
  font-size: clamp(0.9rem, 0.2vw + 0.86rem, 0.98rem);
  line-height: 1.55;
  font-weight: 500;
  color: rgba(255, 248, 235, 0.8);
}

.page-ask .ask-product-tool .live-concierge__input-label {
  display: block;
  margin: 0 0 var(--ask-stack-xs);
  padding-left: var(--ask-chat-field-pad);
  font-size: 0.74rem;
  font-weight: 850;
  letter-spacing: 0.11em;
  text-transform: uppercase;
  color: rgba(242, 178, 26, 0.94);
}

.page-ask .ask-product-tool .live-concierge__composer-stack .live-concierge__send {
  min-height: 54px;
  margin-top: 0;
  border-radius: calc(var(--radius) + 2px);
  border: 1px solid rgba(255, 255, 255, 0.62);
  font-size: clamp(1rem, 0.28vw + 0.94rem, 1.08rem);
  font-weight: 850;
  letter-spacing: 0.02em;
  box-shadow:
    0 20px 44px rgba(255, 139, 31, 0.36),
    0 8px 20px rgba(242, 178, 26, 0.26),
    0 3px 0 rgba(255, 255, 255, 0.48) inset,
    0 -2px 0 rgba(180, 83, 9, 0.14) inset;
}

.page-ask .ask-product-tool .live-concierge__composer-stack .live-concierge__send:hover:not(:disabled) {
  transform: translateY(-2px);
  filter: brightness(1.06) saturate(1.06);
  box-shadow:
    0 28px 56px rgba(255, 139, 31, 0.48),
    0 12px 26px rgba(242, 178, 26, 0.34),
    0 4px 0 rgba(255, 255, 255, 0.55) inset,
    0 -3px 0 rgba(180, 83, 9, 0.12) inset;
}

.page-ask .ask-product-prompts {
  padding-top: var(--ask-stack-md);
  border-top: 1px solid rgba(255, 246, 230, 0.12);
}

.page-ask .ask-product-prompts-head {
  margin-bottom: var(--ask-stack-lg);
}

.page-ask .ask-product-prompts-eyebrow {
  margin-bottom: var(--ask-stack-xs);
  font-size: clamp(0.64rem, 0.1vw + 0.6rem, 0.7rem);
  letter-spacing: 0.16em;
  color: rgba(20, 184, 166, 0.92);
}

.page-ask .ask-product-prompts-title {
  margin: 0 0 var(--ask-stack-xs);
  font-size: clamp(1.15rem, 0.45vw + 1rem, 1.35rem);
  font-weight: 800;
  color: rgba(255, 248, 235, 0.98);
  letter-spacing: -0.025em;
  line-height: 1.18;
}

.page-ask .ask-product-prompts-lead {
  margin: 0;
  font-size: clamp(0.86rem, 0.18vw + 0.82rem, 0.94rem);
  line-height: 1.48;
  color: rgba(255, 248, 235, 0.68);
}

.page-ask .ask-product-prompt-group + .ask-product-prompt-group {
  margin-top: var(--ask-stack-md);
}

.page-ask .ask-product-prompt-group-label {
  margin: 0 0 var(--ask-stack-xs);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(20, 184, 166, 0.88);
}

.page-ask .ask-product-prompt-chips {
  display: flex;
  flex-wrap: wrap;
  gap: var(--ask-stack-xs) var(--ask-stack-sm);
}

.page-ask .ask-product-prompt-chips .live-concierge__chip--lane {
  min-height: 2.5rem;
  padding: 8px var(--ask-text-inset);
  border-color: rgba(255, 246, 230, 0.2);
  background:
    linear-gradient(155deg, rgba(12, 24, 44, 0.92) 0%, rgba(5, 12, 26, 0.88) 100%);
  box-shadow:
    0 1px 0 rgba(255, 246, 230, 0.08) inset,
    0 6px 16px rgba(2, 6, 14, 0.2);
  font-size: clamp(0.8rem, 0.16vw + 0.76rem, 0.86rem);
  font-weight: 700;
  letter-spacing: normal;
  word-spacing: normal;
  text-align: left;
  line-height: 1.35;
  transition:
    border-color 0.18s ease,
    background 0.18s ease,
    box-shadow 0.18s ease,
    transform 0.14s ease;
}

.page-ask .ask-product-prompt-chips .live-concierge__chip--lane:hover {
  border-color: rgba(242, 178, 26, 0.45);
  background:
    linear-gradient(155deg, rgba(20, 184, 166, 0.16) 0%, rgba(8, 18, 34, 0.92) 100%);
  box-shadow:
    0 1px 0 rgba(255, 246, 230, 0.1) inset,
    0 10px 22px rgba(2, 6, 14, 0.28);
}

.page-ask .ask-product-value.section-cream {
  padding-block: var(--ask-section-pad);
  background:
    radial-gradient(circle at 10% 18%, rgba(242, 178, 26, 0.14), transparent 42%),
    radial-gradient(circle at 90% 82%, rgba(20, 184, 166, 0.12), transparent 40%),
    radial-gradient(circle at 50% 50%, rgba(255, 92, 168, 0.06), transparent 55%),
    linear-gradient(180deg, var(--cream) 0%, var(--cream-peach) 100%);
}

.page-ask .ask-product-value.section,
.page-ask .ask-product-human.section,
.page-ask .ask-product-examples.section {
  max-width: none;
  margin-inline: 0;
  padding-inline: 0;
}

.page-ask .ask-product-section-head {
  max-width: none;
  margin-bottom: var(--ask-stack-lg);
}

.page-ask .ask-product-eyebrow {
  margin-bottom: var(--ask-stack-xs);
  font-size: clamp(0.66rem, 0.1vw + 0.62rem, 0.72rem);
  font-weight: 900;
  letter-spacing: 0.16em;
  color: var(--coral);
}

.page-ask .ask-product-section-head h2 {
  margin: 0 0 var(--ask-stack-sm);
  font-size: clamp(1.45rem, 2.8vw + 0.45rem, 1.95rem);
  line-height: 1.12;
  letter-spacing: -0.028em;
  color: var(--navy);
}

.page-ask .ask-product-section-head--on-dark .eyebrow.eyebrow-on-dark {
  margin-bottom: var(--ask-stack-xs);
  letter-spacing: 0.16em;
  color: rgba(20, 184, 166, 0.92);
}

.page-ask .ask-product-section-head--on-dark h2 {
  color: rgba(255, 248, 235, 0.98);
  text-shadow: 0 1px 20px rgba(2, 6, 14, 0.25);
}

.page-ask .ask-product-section-head .section-text {
  margin: 0;
  line-height: 1.52;
  color: var(--slate);
}

.page-ask .ask-product-section-head--on-dark .section-text {
  color: rgba(255, 248, 235, 0.82);
}

.page-ask .ask-product-value-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: var(--ask-stack-sm);
  grid-template-columns: 1fr;
}

@media (min-width: 520px) {
  .page-ask .ask-product-value-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.page-ask .ask-product-value-list li {
  display: block;
  padding: 14px var(--ask-text-inset) 14px calc(var(--ask-text-inset) - 3px);
  border-left: 3px solid var(--gold);
  border-radius: calc(var(--radius) + 2px);
  font-size: clamp(0.9rem, 0.18vw + 0.86rem, 0.97rem);
  font-weight: 700;
  line-height: 1.42;
  color: var(--navy);
  background: linear-gradient(165deg, rgba(255, 255, 255, 0.94) 0%, rgba(255, 248, 238, 0.86) 100%);
  border-top: 1px solid rgba(255, 255, 255, 0.85);
  border-right: 1px solid rgba(11, 29, 58, 0.07);
  border-bottom: 1px solid rgba(11, 29, 58, 0.09);
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.9) inset,
    0 12px 28px rgba(11, 29, 58, 0.08);
  box-sizing: border-box;
  transition:
    transform 0.18s ease,
    box-shadow 0.18s ease;
}

@media (hover: hover) {
  .page-ask .ask-product-value-list li:hover {
    transform: translateY(-2px);
    box-shadow:
      0 1px 0 rgba(255, 255, 255, 0.9) inset,
      0 18px 36px rgba(11, 29, 58, 0.12);
  }
}

.page-ask .ask-product-examples.section-navy-routes {
  position: relative;
  padding-inline: 0;
  padding-block: var(--ask-section-pad);
  background:
    radial-gradient(circle at 8% 92%, rgba(242, 178, 26, 0.16), transparent 30%),
    radial-gradient(circle at 12% 12%, rgba(20, 184, 166, 0.2), transparent 32%),
    radial-gradient(circle at 90% 86%, rgba(255, 92, 168, 0.18), transparent 36%),
    radial-gradient(circle at 80% 12%, rgba(255, 139, 31, 0.18), transparent 34%),
    linear-gradient(160deg, #091a34 0%, #0b1d3a 44%, #10274a 100%);
}

.page-ask .ask-product-examples.section-navy-routes::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 3px;
  background: linear-gradient(
    90deg,
    var(--turquoise) 0%,
    var(--gold) 50%,
    var(--coral) 100%
  );
  opacity: 0.85;
  pointer-events: none;
}

.page-ask .ask-product-example-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: var(--ask-stack-md);
}

.page-ask .ask-product-example-card {
  height: 100%;
  padding: clamp(18px, 2.4vw, 22px) var(--ask-text-inset);
  border-radius: calc(var(--radius) + 6px);
  border: 1px solid rgba(255, 246, 230, 0.18);
  background:
    radial-gradient(ellipse 100% 80% at 0% 0%, rgba(20, 184, 166, 0.1), transparent 55%),
    linear-gradient(168deg, rgba(10, 22, 42, 0.96) 0%, rgba(5, 12, 26, 0.92) 100%);
  box-shadow:
    0 1px 0 rgba(255, 246, 230, 0.08) inset,
    0 16px 40px rgba(2, 6, 14, 0.32);
  transition:
    transform 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}

@media (hover: hover) {
  .page-ask .ask-product-example-card:hover {
    transform: translateY(-3px);
    border-color: rgba(242, 178, 26, 0.28);
    box-shadow:
      0 1px 0 rgba(255, 246, 230, 0.1) inset,
      0 22px 48px rgba(2, 6, 14, 0.4);
  }
}

.page-ask .ask-product-example-q,
.page-ask .ask-product-example-a {
  margin: 0;
  font-size: clamp(0.88rem, 0.18vw + 0.84rem, 0.95rem);
  line-height: 1.52;
  color: rgba(255, 248, 235, 0.88);
}

.page-ask .ask-product-example-q {
  margin-bottom: var(--ask-stack-sm);
  padding-bottom: var(--ask-stack-sm);
  border-bottom: 1px solid rgba(255, 246, 230, 0.1);
  font-weight: 600;
}

.page-ask .ask-product-example-label {
  display: block;
  margin-bottom: var(--ask-stack-xs);
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(20, 184, 166, 0.9);
}

.page-ask .ask-product-example-a .ask-product-example-label {
  color: rgba(242, 178, 26, 0.88);
}

.page-ask .ask-product-human.section-cream {
  padding-block: var(--ask-section-pad);
  /* Last band before footer — single bottom pad (no stacked #human-help / main gutter) */
  margin-bottom: 0;
  background:
    radial-gradient(circle at 88% 20%, rgba(255, 92, 168, 0.1), transparent 38%),
    radial-gradient(circle at 12% 88%, rgba(20, 184, 166, 0.11), transparent 40%),
    linear-gradient(180deg, var(--cream) 0%, var(--cream-turq) 100%);
}

.page-ask .ask-product-human .ask-product-section-head h2 {
  color: var(--navy);
}

.page-ask .ask-product-human-inner .section-text {
  color: var(--slate);
}

.page-ask .ask-product-human-note {
  margin: 0 0 var(--ask-stack-lg);
  max-width: none;
  font-size: clamp(0.9rem, 0.2vw + 0.86rem, 0.98rem);
  line-height: 1.55;
  font-weight: 600;
  color: rgba(11, 29, 58, 0.88);
}

.page-ask .ask-product-human-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--ask-stack-sm) 14px;
  align-items: center;
  padding-right: var(--ask-text-inset);
}

.page-ask .ask-product-human-actions .btn {
  min-height: 48px;
  font-weight: 800;
}

.page-ask .ask-product-human-actions .btn-primary {
  box-shadow:
    0 14px 32px rgba(255, 139, 31, 0.28),
    0 3px 0 rgba(255, 255, 255, 0.35) inset;
}

.page-ask .ask-product-human-actions .btn-secondary {
  border-color: rgba(11, 29, 58, 0.18);
  background: rgba(255, 255, 255, 0.72);
  box-shadow: 0 8px 20px rgba(11, 29, 58, 0.08);
}

.page-ask .ask-product-human-back {
  min-height: 48px;
}

.page-ask .footer.dark-showcase {
  border-top: 1px solid rgba(255, 246, 230, 0.12);
}

.page-ask .footer-note--compact {
  font-size: 0.84rem;
  line-height: 1.5;
  max-width: 36rem;
}

@media (min-width: 900px) {
  .page-ask .ask-hero--cinematic.hero-fiesta-dark.secondary-hero {
    min-height: clamp(400px, 52vh, 580px);
    background-position: center 38%;
  }

  .page-ask .ask-product-tool-section {
    margin-top: 0;
  }

  .page-ask .ask-product-example-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: stretch;
  }

  .page-ask .ask-product-example-card {
    height: 100%;
  }
}

@media (max-width: 380px) {
  .page-ask .ask-product-main {
    --ask-text-inset: 11px;
  }
}

@media (max-width: 768px) {
  .page-ask .ask-product-main {
    --ask-shell-pad: max(20px, env(safe-area-inset-left, 0px));
    --ask-card-pad-block: 18px;
  }

  .page-ask .ask-product-shell {
    max-width: none;
    padding-inline: max(20px, env(safe-area-inset-left, 0px)) max(20px, env(safe-area-inset-right, 0px));
  }

  .page-ask .ask-hero--cinematic.hero-fiesta-dark.secondary-hero {
    min-height: clamp(380px, 68vh, 560px);
    background-position: center 36%;
  }

  .page-ask .ask-product-hero .hero-title {
    text-shadow: 0 2px 24px rgba(2, 6, 14, 0.5);
  }

  .page-ask .ask-product-hero .hero-text-on-dark {
    text-shadow: 0 1px 16px rgba(2, 6, 14, 0.4);
  }

  .page-ask .ask-product-tool-section.section-navy-routes,
  .page-ask .ask-product-examples.section-navy-routes,
  .page-ask .ask-product-value.section,
  .page-ask .ask-product-human.section {
    padding-inline: 0;
  }

  .page-ask .ask-product-example-list {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .page-ask .ask-product-human-actions .btn {
    width: 100%;
    justify-content: center;
  }
}

/* Start Here — Ask A Local: full-width mobile card (avoid stacked section + inner gutters) */
.page-start-here .ask-local-shell.section-navy-routes {
  padding-left: 0;
  padding-right: 0;
}

@media (max-width: 768px) {
  .page-start-here .ask-local-shell.section-navy-routes {
    padding-left: clamp(18px, 5.2vw, 22px);
    padding-right: clamp(18px, 5.2vw, 22px);
  }

  .page-start-here .ask-local-inner,
  .page-start-here .ask-local-inner.live-concierge-inner,
  .page-start-here .ask-local-inner.routes-band-inner {
    --ask-local-max: none;
    max-width: none;
    width: 100%;
    padding-inline: 0;
    box-sizing: border-box;
  }

  .page-start-here .ask-local-tool.live-concierge-studio,
  .page-start-here .ask-local-tool .live-concierge-card {
    width: 100%;
    max-width: none;
    margin-inline: auto;
    box-sizing: border-box;
  }

  .page-start-here .ask-local-tool .live-concierge__image-band,
  .page-start-here .ask-local-tool .live-concierge__image-band-media,
  .page-start-here .ask-local-tool .live-concierge__image-band-media img,
  .page-start-here .ask-local-tool .live-concierge__glass-panel,
  .page-start-here .ask-local-tool .live-concierge__preview--placeholder,
  .page-start-here .ask-local-tool .live-concierge__composer-stack,
  .page-start-here .ask-local-tool .live-concierge__composer-stack .live-concierge__form,
  .page-start-here .ask-local-tool .live-concierge__composer-stack .live-concierge__composer-unit,
  .page-start-here .ask-local-tool .live-concierge__composer-stack .live-concierge__send,
  .page-start-here .ask-local-tool .live-concierge__chips--starter,
  .page-start-here .ask-local-tool .live-concierge__category {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }
}

/* Homepage: Ask entry band */
.home-ask-entry {
  padding-top: clamp(12px, 1.8vw, 18px);
  padding-bottom: clamp(16px, 2.4vw, 22px);
}

.home-ask-entry-inner {
  padding: clamp(14px, 2.2vw, 20px);
  border-radius: calc(var(--radius) + 6px);
  border: 1px solid rgba(11, 29, 58, 0.08);
  background:
    radial-gradient(ellipse 80% 80% at 0% 0%, rgba(20, 184, 166, 0.12), transparent 55%),
    radial-gradient(circle at 100% 100%, rgba(255, 106, 77, 0.1), transparent 45%),
    linear-gradient(168deg, #fffdfb 0%, #f4fbf9 100%);
  box-shadow: 0 12px 32px rgba(2, 6, 14, 0.07);
}

.home-ask-entry-copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: clamp(6px, 1vw, 10px);
  min-width: 0;
  max-width: 40rem;
}

.home-ask-entry-copy h2 {
  margin: 0;
  font-size: clamp(1.15rem, 1.6vw + 0.62rem, 1.45rem);
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: var(--navy);
}

.home-ask-entry-copy p,
.home-ask-entry-body {
  margin: 0;
  font-size: clamp(0.88rem, 0.35vw + 0.8rem, 0.96rem);
  line-height: 1.5;
  color: rgba(11, 29, 58, 0.78);
  font-weight: 500;
  max-width: 36rem;
  letter-spacing: normal;
  word-spacing: normal;
  text-align: left;
}

.home-ask-entry-cta {
  margin-top: clamp(2px, 0.4vw, 4px);
  min-height: 46px;
  flex-shrink: 0;
}



/* Transport: Route + Transportation Help — studio skin (matches Ask A Local) */
.transport-concierge-main .transport-route-operator .live-concierge-section {
  scroll-margin-top: calc(var(--header-h, 64px) + 14px);
  border-bottom: 1px solid rgba(242, 178, 26, 0.12);
}

.transport-concierge-main .transport-route-operator .live-concierge-inner {
  max-width: min(860px, 100%);
  margin-inline: auto;
}

.transport-concierge-main .transport-route-operator .live-concierge__head {
  text-align: center;
  margin-bottom: clamp(18px, 3vw, 26px);
}

.transport-concierge-main .transport-route-operator .live-concierge__eyebrow {
  text-transform: uppercase;
  letter-spacing: 0.16em;
  color: var(--gold);
  margin-bottom: 8px;
}

.transport-concierge-main .transport-route-operator .live-concierge__title {
  margin: 0 0 10px;
  font-size: clamp(1.45rem, 2.6vw + 0.55rem, 2rem);
  line-height: 1.15;
  letter-spacing: -0.028em;
  color: var(--cream);
}

.transport-concierge-main .transport-route-operator .live-concierge__lead {
  margin: 0 auto;
  max-width: 38rem;
  font-size: clamp(0.94rem, 0.35vw + 0.86rem, 1.02rem);
  line-height: 1.55;
}

@media (max-width: 520px) {
  .transport-concierge-main .transport-route-operator .live-concierge__lead {
    font-size: clamp(0.88rem, 0.28vw + 0.82rem, 0.96rem);
    line-height: 1.5;
    max-width: 100%;
  }
}

.transport-concierge-main .transport-route-operator .live-concierge__status {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 14px auto 0;
  padding: 6px 14px;
  border-radius: 999px;
  font-size: clamp(0.78rem, 0.2vw + 0.74rem, 0.84rem);
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(255, 248, 235, 0.72);
  border: 1px solid rgba(20, 184, 166, 0.35);
  background: rgba(5, 10, 20, 0.45);
}

.transport-concierge-main .transport-route-operator .live-concierge__status--live {
  color: rgba(255, 248, 235, 0.92);
  border-color: rgba(242, 178, 26, 0.45);
  box-shadow: 0 0 0 1px rgba(20, 184, 166, 0.12);
}

.transport-concierge-main .transport-route-operator .live-concierge__status--live::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: radial-gradient(circle at 36% 30%, #dcfce7 0%, #4ade80 38%, #22c55e 100%);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.5),
    inset 0 -1px 1px rgba(0, 0, 0, 0.22),
    0 0 0 1px rgba(21, 128, 61, 0.65);
}

/* Local Concierge Studio — clean SA image header + interaction panel */
.transport-concierge-main .transport-route-operator .live-concierge-studio {
  max-width: min(860px, 100%);
  margin-inline: auto;
}

.transport-concierge-main .transport-route-operator .live-concierge-card {
  display: flex;
  flex-direction: column;
  border-radius: calc(var(--radius) + 8px);
  overflow: hidden;
  border: 1px solid rgba(242, 178, 26, 0.22);
  box-shadow:
    0 24px 56px rgba(2, 6, 14, 0.48),
    0 0 0 1px rgba(255, 246, 230, 0.06) inset;
  background: #0a1628;
}

.transport-concierge-main .transport-route-operator .live-concierge__image-band {
  margin: 0;
  padding: 0;
  flex-shrink: 0;
  border: none;
  border-radius: 0;
  box-shadow: none;
  background: #0a1628;
}

.transport-concierge-main .transport-route-operator .live-concierge__image-band-media {
  position: relative;
  height: clamp(210px, 34vw, 300px);
  overflow: hidden;
  background: #0a1628;
}

.transport-concierge-main .transport-route-operator .live-concierge__image-band-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 42%;
  display: block;
  filter: none;
  opacity: 1;
}

.transport-concierge-main .transport-route-operator .live-concierge__glass-panel {
  position: relative;
  z-index: 1;
  margin-top: 0;
  display: flex;
  flex-direction: column;
  min-width: 0;
  border-radius: 0;
  overflow: hidden;
  border: none;
  border-top: 1px solid rgba(255, 246, 230, 0.1);
  background:
    radial-gradient(ellipse 90% 70% at 0% 0%, rgba(20, 184, 166, 0.14), transparent 52%),
    radial-gradient(ellipse 70% 55% at 100% 100%, rgba(255, 139, 31, 0.12), transparent 48%),
    linear-gradient(168deg, rgba(8, 18, 36, 0.96) 0%, rgba(6, 14, 28, 0.98) 48%, rgba(5, 12, 24, 0.99) 100%);
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.transport-concierge-main .transport-route-operator .live-concierge__panel-copy {
  padding: clamp(16px, 2.6vw, 22px) clamp(16px, 2.8vw, 22px) 0;
}

.transport-concierge-main .transport-route-operator .live-concierge__panel-intro {
  margin: 0 0 8px;
  font-size: clamp(1rem, 0.35vw + 0.92rem, 1.12rem);
  font-weight: 750;
  line-height: 1.35;
  letter-spacing: -0.02em;
  color: rgba(255, 248, 235, 0.96);
}

.transport-concierge-main .transport-route-operator .live-concierge__panel-support {
  margin: 0;
  max-width: 40rem;
  font-size: clamp(0.88rem, 0.28vw + 0.82rem, 0.96rem);
  line-height: 1.55;
  color: rgba(255, 248, 235, 0.84);
}

.transport-concierge-main .transport-route-operator .live-concierge__chip-board {
  padding: clamp(14px, 2.4vw, 18px) clamp(16px, 2.8vw, 22px) clamp(12px, 2vw, 16px);
  border-bottom: 1px solid rgba(255, 246, 230, 0.08);
}

.transport-concierge-main .transport-route-operator .live-concierge__chip-cluster + .live-concierge__chip-cluster {
  margin-top: clamp(12px, 2vw, 16px);
  padding-top: clamp(12px, 2vw, 16px);
  border-top: 1px solid rgba(255, 246, 230, 0.08);
}

.transport-concierge-main .transport-route-operator .live-concierge__lane-label {
  margin: 0 0 10px;
  font-size: clamp(0.64rem, 0.12vw + 0.6rem, 0.72rem);
  font-weight: 850;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--gold);
}

.transport-concierge-main .transport-route-operator .live-concierge__chips--lane {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 10px;
  margin: 0;
  padding: 0;
  align-items: flex-start;
}

.transport-concierge-main .transport-route-operator .live-concierge__chip--lane {
  appearance: none;
  cursor: pointer;
  font: inherit;
  border-radius: 999px;
  border-width: 1px;
  border-style: solid;
  font-size: clamp(0.76rem, 0.14vw + 0.72rem, 0.86rem);
  font-weight: 600;
  padding: 9px 14px 10px;
  color: rgba(255, 248, 235, 0.94);
  border-color: rgba(255, 246, 230, 0.14);
  background: rgba(5, 10, 20, 0.42);
  box-shadow: inset 0 1px 0 rgba(255, 246, 230, 0.06);
  transition:
    border-color 0.15s ease,
    background 0.15s ease,
    box-shadow 0.15s ease,
    transform 0.12s ease;
}

.transport-concierge-main .transport-route-operator .live-concierge__chip--lane:hover {
  border-color: rgba(242, 178, 26, 0.5);
  background: rgba(20, 184, 166, 0.12);
  box-shadow:
    0 0 0 1px rgba(242, 178, 26, 0.12),
    inset 0 1px 0 rgba(255, 246, 230, 0.1);
}

.transport-concierge-main .transport-route-operator .live-concierge__chip--lane:active {
  transform: scale(0.98);
}

.transport-concierge-main .transport-route-operator .live-concierge__chip--lane:focus-visible {
  outline: 3px solid rgba(242, 178, 26, 0.85);
  outline-offset: 2px;
}

.transport-concierge-main .transport-route-operator .live-concierge__main-card {
  position: relative;
  padding: clamp(12px, 2vw, 16px);
  background: transparent;
}

.transport-concierge-main .transport-route-operator .live-concierge__conversation:not(.live-concierge__conversation--started) {
  border-color: rgba(255, 246, 230, 0.08);
  box-shadow: inset 0 1px 0 rgba(255, 246, 230, 0.04);
}

.transport-concierge-main .transport-route-operator .live-concierge__conversation:not(.live-concierge__conversation--started) .live-concierge__composer-stack {
  padding-top: clamp(10px, 1.6vw, 14px);
}

.transport-concierge-main .transport-route-operator .live-concierge__thread {
  margin: 0;
  padding: 0;
  border: none;
  background: none;
  box-shadow: none;
}

.transport-concierge-main .transport-route-operator .live-concierge__conversation {
  display: flex;
  flex-direction: column;
  gap: 0;
  border-radius: calc(var(--radius) + 4px);
  overflow: hidden;
  border: 1px solid rgba(255, 246, 230, 0.1);
  background: rgba(3, 8, 18, 0.55);
  box-shadow: inset 0 1px 0 rgba(255, 246, 230, 0.06);
}

.transport-concierge-main .transport-route-operator .live-concierge__conversation--started {
  border-color: rgba(242, 178, 26, 0.22);
  box-shadow:
    0 0 0 1px rgba(20, 184, 166, 0.08),
    inset 0 1px 0 rgba(255, 246, 230, 0.08);
}

.transport-concierge-main .transport-route-operator .live-concierge__answer-surface {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  min-height: 0;
  border-bottom: 1px solid rgba(255, 246, 230, 0.08);
  background: rgba(4, 10, 22, 0.35);
}

.transport-concierge-main .transport-route-operator .live-concierge__preview {
  padding: clamp(14px, 2.2vw, 18px) clamp(14px, 2.2vw, 18px) clamp(12px, 1.8vw, 16px);
}

.transport-concierge-main .transport-route-operator .live-concierge__preview[hidden] {
  display: none !important;
}

.transport-concierge-main .transport-route-operator .live-concierge__preview-text {
  margin: 0;
  font-size: clamp(0.92rem, 0.28vw + 0.86rem, 1rem);
  line-height: 1.5;
  color: rgba(255, 248, 235, 0.82);
}

.transport-concierge-main .transport-route-operator .live-concierge__transcript {
  flex: 1 1 auto;
  min-height: 0;
  padding: clamp(12px, 2vw, 16px);
  display: block;
}

.transport-concierge-main .transport-route-operator .live-concierge__transcript[hidden] {
  display: none !important;
}

.transport-concierge-main .transport-route-operator .live-concierge__composer-stack {
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
  min-width: 0;
  padding: clamp(12px, 2vw, 16px);
  background: rgba(3, 8, 18, 0.42);
}

.transport-concierge-main .transport-route-operator .live-concierge__composer-kicker {
  margin: 0 0 10px;
  padding: 0;
  font-size: clamp(0.68rem, 0.12vw + 0.64rem, 0.74rem);
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(242, 178, 26, 0.72);
  background: none;
  border: none;
}

.transport-concierge-main .transport-route-operator .live-concierge__conversation:not(.live-concierge__conversation--started) .live-concierge__composer-kicker {
  display: none;
}

.transport-concierge-main .transport-route-operator .live-concierge__error {
  margin-bottom: 12px;
  padding: 12px 14px;
  border-radius: var(--btn-radius);
  font-size: clamp(0.88rem, 0.25vw + 0.82rem, 0.95rem);
  line-height: 1.45;
  color: rgba(255, 248, 235, 0.94);
  background: rgba(80, 24, 16, 0.45);
  border: 1px solid rgba(255, 106, 77, 0.5);
}

.transport-concierge-main .transport-route-operator .live-concierge__chips:not(.live-concierge__chips--lane) {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 8px;
  margin-bottom: 12px;
}

.transport-concierge-main .transport-route-operator .live-concierge__chip:not(.live-concierge__chip--lane) {
  appearance: none;
  cursor: pointer;
  font: inherit;
  font-size: clamp(0.8rem, 0.18vw + 0.76rem, 0.88rem);
  font-weight: 600;
  color: rgba(255, 248, 235, 0.92);
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid rgba(242, 178, 26, 0.35);
  background: rgba(5, 10, 20, 0.35);
  transition:
    border-color 0.15s ease,
    background 0.15s ease,
    transform 0.12s ease;
}

.transport-concierge-main .transport-route-operator .live-concierge__chip:not(.live-concierge__chip--lane):hover {
  border-color: rgba(20, 184, 166, 0.55);
  background: rgba(20, 184, 166, 0.12);
}

.transport-concierge-main .transport-route-operator .live-concierge__chip:not(.live-concierge__chip--lane):active {
  transform: scale(0.98);
}

@media (max-width: 380px) {
  .transport-concierge-main .transport-route-operator .live-concierge__chip--lane {
    font-size: 0.72rem;
    padding: 8px 11px 9px;
  }
}

.transport-concierge-main .transport-route-operator .live-concierge__log {
  min-height: 0;
  max-height: none;
  overflow-x: hidden;
  overflow-y: visible;
  padding: 4px 4px 6px 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

@media (min-width: 640px) {
  .transport-concierge-main .transport-route-operator .live-concierge__log {
    max-height: min(420px, 50vh);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
}

.transport-concierge-main .transport-route-operator .live-concierge__msg {
  display: flex;
  max-width: 100%;
}

.transport-concierge-main .transport-route-operator .live-concierge__msg--assistant {
  justify-content: flex-start;
}

.transport-concierge-main .transport-route-operator .live-concierge__msg--user {
  justify-content: flex-end;
}

.transport-concierge-main .transport-route-operator .live-concierge__bubble {
  max-width: min(100%, 34rem);
  padding: 12px 14px;
  border-radius: 16px;
  font-size: clamp(0.9rem, 0.28vw + 0.84rem, 0.98rem);
  line-height: 1.5;
  white-space: pre-wrap;
  word-break: break-word;
}

.transport-concierge-main .transport-route-operator .live-concierge__msg--assistant .live-concierge__bubble {
  max-width: 100%;
  color: rgba(255, 248, 235, 0.94);
  background: linear-gradient(155deg, rgba(18, 36, 62, 0.92) 0%, rgba(12, 26, 48, 0.96) 100%);
  border: 1px solid rgba(255, 246, 230, 0.12);
  box-shadow:
    0 10px 28px rgba(2, 6, 14, 0.28),
    inset 0 1px 0 rgba(255, 246, 230, 0.08);
}

.transport-concierge-main .transport-route-operator .live-concierge__msg--user .live-concierge__bubble {
  color: #081426;
  background: linear-gradient(135deg, rgba(244, 194, 74, 0.95) 0%, rgba(255, 154, 60, 0.92) 100%);
  border: 1px solid rgba(255, 246, 230, 0.35);
  box-shadow: 0 8px 22px rgba(255, 139, 31, 0.22);
}

.transport-concierge-main .transport-route-operator .live-concierge__bubble--thinking {
  color: rgba(255, 248, 235, 0.62);
  font-style: italic;
  background: rgba(8, 18, 36, 0.65);
  border-color: rgba(255, 246, 230, 0.08);
}

.transport-concierge-main .transport-route-operator .live-concierge__bubble--rich {
  white-space: normal;
}

.transport-concierge-main .transport-route-operator .live-concierge__rich {
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
}

.transport-concierge-main .transport-route-operator .live-concierge__rich-lead {
  margin: 0;
  font-size: clamp(0.92rem, 0.24vw + 0.86rem, 0.98rem);
  line-height: 1.48;
  font-weight: 650;
  color: rgba(255, 248, 235, 0.96);
}

.transport-concierge-main .transport-route-operator .live-concierge__rich-block {
  margin: 0;
  padding: 0;
}

.transport-concierge-main .transport-route-operator .live-concierge__rich-label {
  display: block;
  margin: 0 0 0.28rem;
  font-size: clamp(0.64rem, 0.1vw + 0.6rem, 0.7rem);
  font-weight: 850;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--gold);
}

.transport-concierge-main .transport-route-operator .live-concierge__rich-body {
  margin: 0;
  font-size: clamp(0.88rem, 0.2vw + 0.84rem, 0.94rem);
  line-height: 1.45;
  color: rgba(255, 248, 235, 0.9);
}

.transport-concierge-main .transport-route-operator .live-concierge__rich p {
  margin: 0 0 0.5em;
}

.transport-concierge-main .transport-route-operator .live-concierge__rich p:last-child {
  margin-bottom: 0;
}

.transport-concierge-main .transport-route-operator .live-concierge__rich strong {
  font-weight: 800;
  color: var(--gold);
}

.transport-concierge-main .transport-route-operator .live-concierge__rich ul,
.transport-concierge-main .transport-route-operator .live-concierge__rich ol {
  margin: 0.2em 0 0;
  padding: 0 0 0 1.1em;
}

.transport-concierge-main .transport-route-operator .live-concierge__rich li {
  margin-bottom: 0.28em;
  color: rgba(255, 248, 235, 0.9);
}

.transport-concierge-main .transport-route-operator .live-concierge__rich li:last-child {
  margin-bottom: 0;
}

.transport-concierge-main .transport-route-operator .live-concierge__rich-list {
  margin: 0.15em 0 0;
  padding: 0 0 0 1.1em;
}

@media (max-width: 520px) {
  .transport-concierge-main .transport-route-operator .live-concierge__image-band-media {
    height: clamp(190px, 44vw, 250px);
  }

  .transport-concierge-main .transport-route-operator .live-concierge__panel-intro {
    font-size: clamp(0.96rem, 0.3vw + 0.9rem, 1.06rem);
  }

  .transport-concierge-main .transport-route-operator .live-concierge__panel-support {
    font-size: clamp(0.84rem, 0.24vw + 0.8rem, 0.92rem);
    line-height: 1.5;
  }
}

.transport-concierge-main .transport-route-operator .live-concierge__composer-stack .live-concierge__form {
  display: block;
  margin: 0;
}

.transport-concierge-main .transport-route-operator .live-concierge__input-label.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

.transport-concierge-main .transport-route-operator .live-concierge__composer-stack .live-concierge__composer-unit {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 10px;
  padding: clamp(10px, 1.8vw, 14px);
  border-radius: calc(var(--radius) + 2px);
  border: 1px solid rgba(255, 246, 230, 0.14);
  background: rgba(5, 12, 26, 0.72);
  box-shadow:
    0 0 0 1px rgba(242, 178, 26, 0.08),
    inset 0 1px 0 rgba(255, 246, 230, 0.06);
  overflow: hidden;
  transition:
    border-color 0.2s ease,
    box-shadow 0.2s ease;
  -webkit-tap-highlight-color: rgba(20, 184, 166, 0.12);
}

.transport-concierge-main .transport-route-operator .live-concierge__composer-stack .live-concierge__composer-unit:focus-within {
  border-color: rgba(242, 178, 26, 0.45);
  box-shadow:
    0 0 0 1px rgba(255, 139, 31, 0.2),
    0 0 0 4px rgba(242, 178, 26, 0.12),
    inset 0 1px 0 rgba(255, 246, 230, 0.1);
}

.transport-concierge-main .transport-route-operator .live-concierge__composer-stack .live-concierge__input {
  flex: 1;
  min-width: 0;
  width: 100%;
  box-sizing: border-box;
  resize: vertical;
  min-height: clamp(52px, 12vw, 68px);
  max-height: 180px;
  margin: 0;
  padding: 2px 4px;
  border: none;
  border-radius: 0;
  background: transparent;
  color: rgba(255, 248, 235, 0.96);
  font: inherit;
  font-size: clamp(0.96rem, 0.28vw + 0.88rem, 1.05rem);
  line-height: 1.45;
  outline: none;
  box-shadow: none;
  caret-color: var(--turquoise);
}

.transport-concierge-main .transport-route-operator .live-concierge__composer-stack .live-concierge__input::placeholder {
  color: rgba(255, 248, 235, 0.42);
  opacity: 1;
  transition: opacity 0.2s ease;
}

.transport-concierge-main .transport-route-operator .live-concierge__composer-stack .live-concierge__composer-unit:focus-within .live-concierge__input::placeholder {
  opacity: 0.5;
}

.transport-concierge-main .transport-route-operator .live-concierge__composer-stack .live-concierge__send {
  width: 100%;
  flex-shrink: 0;
  min-height: 50px;
  margin: 0;
  padding: 14px 22px 15px;
  border: 1px solid rgba(255, 255, 255, 0.55);
  border-radius: calc(var(--radius) - 4px);
  font-weight: 850;
  font-size: clamp(0.98rem, 0.28vw + 0.9rem, 1.06rem);
  letter-spacing: 0.01em;
  text-transform: none;
  color: #081426;
  background: linear-gradient(145deg, #f4c24a 0%, #f2b21a 28%, #ff9a3c 58%, #ff8b1f 100%);
  box-shadow:
    0 16px 36px rgba(255, 139, 31, 0.32),
    0 8px 18px rgba(242, 178, 26, 0.24),
    0 3px 0 rgba(255, 255, 255, 0.45) inset,
    0 -2px 0 rgba(180, 83, 9, 0.16) inset;
  cursor: pointer;
  transition:
    filter 0.18s ease,
    transform 0.18s ease,
    box-shadow 0.18s ease;
}

.transport-concierge-main .transport-route-operator .live-concierge__composer-stack .live-concierge__send:hover:not(:disabled) {
  filter: brightness(1.05) saturate(1.08);
  transform: translateY(-2px);
  box-shadow:
    0 26px 54px rgba(255, 139, 31, 0.45),
    0 14px 28px rgba(242, 178, 26, 0.34),
    0 4px 0 rgba(255, 255, 255, 0.55) inset,
    0 -3px 0 rgba(180, 83, 9, 0.14) inset;
}

.transport-concierge-main .transport-route-operator .live-concierge__composer-stack .live-concierge__send:active:not(:disabled) {
  transform: translateY(1px);
  filter: brightness(0.97) saturate(1.05);
  box-shadow:
    0 10px 24px rgba(255, 139, 31, 0.32),
    0 3px 0 rgba(255, 255, 255, 0.38) inset,
    0 -2px 0 rgba(180, 83, 9, 0.22) inset;
}

.transport-concierge-main .transport-route-operator .live-concierge__composer-stack .live-concierge__send:disabled {
  opacity: 0.55;
  cursor: not-allowed;
  transform: none;
  box-shadow: 0 6px 16px rgba(2, 6, 14, 0.28);
}

/* Transport operator: disclaimers + optional human intake */
.transport-concierge-main .transport-route-disclaimer {
  margin: 12px auto 0;
  max-width: 38rem;
  font-size: clamp(0.84rem, 0.22vw + 0.78rem, 0.92rem);
  line-height: 1.55;
  color: rgba(255, 248, 235, 0.78);
}

.transport-concierge-main .transport-route-confirmation {
  margin: 0 0 12px;
  padding: 12px 14px;
  border-radius: var(--btn-radius);
  font-size: clamp(0.88rem, 0.22vw + 0.82rem, 0.95rem);
  line-height: 1.5;
  color: rgba(255, 248, 235, 0.96);
  background: rgba(20, 90, 70, 0.35);
  border: 1px solid rgba(20, 184, 166, 0.45);
}

.transport-concierge-main .transport-human-intro {
  margin-top: clamp(12px, 2vw, 16px);
  padding-top: clamp(12px, 2vw, 16px);
  border-top: 1px solid rgba(255, 246, 230, 0.08);
}

.transport-concierge-main .transport-human-intro__text {
  margin: 0 0 12px;
  font-size: clamp(0.84rem, 0.2vw + 0.8rem, 0.92rem);
  line-height: 1.52;
  color: rgba(255, 248, 235, 0.72);
}

.transport-concierge-main .transport-human-intro__text strong {
  color: rgba(255, 248, 235, 0.92);
  font-weight: 800;
}

.transport-concierge-main .transport-show-intake {
  width: 100%;
  justify-content: center;
}

.transport-concierge-main .transport-human-intake {
  margin-top: 16px;
  padding: 16px 14px 18px;
  border-radius: calc(var(--radius) - 4px);
  background: rgba(255, 253, 248, 0.85);
  border: 1px solid rgba(11, 29, 58, 0.1);
}

.transport-concierge-main .transport-intake-title {
  margin: 0 0 10px;
  font-size: clamp(1rem, 0.2vw + 0.94rem, 1.06rem);
  font-weight: 800;
  letter-spacing: -0.02em;
  color: var(--navy);
}

.transport-concierge-main .transport-intake-form .transport-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.transport-concierge-main .transport-intake-form .transport-field span {
  font-size: 0.78rem;
  font-weight: 750;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(11, 29, 58, 0.82);
}

.transport-concierge-main .transport-intake-form input,
.transport-concierge-main .transport-intake-form select,
.transport-concierge-main .transport-intake-form textarea {
  font: inherit;
  padding: 12px 14px;
  min-height: 48px;
  border-radius: 10px;
  border: 1px solid rgba(11, 29, 58, 0.18);
  background: #fffefb;
  color: var(--navy);
}

.transport-concierge-main .transport-intake-form textarea {
  resize: vertical;
  min-height: 4.5rem;
}

.transport-concierge-main .transport-intake-grid {
  display: grid;
  gap: 12px 14px;
  grid-template-columns: 1fr 1fr;
}

.transport-concierge-main .transport-intake-section {
  margin-top: clamp(16px, 2.2vw, 20px);
  padding: clamp(14px, 1.8vw, 18px) clamp(14px, 1.8vw, 16px) clamp(16px, 2vw, 18px);
  border-radius: calc(var(--radius) + 2px);
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid rgba(11, 29, 58, 0.08);
  box-shadow: 0 10px 26px rgba(11, 29, 58, 0.05);
}

.transport-concierge-main .transport-intake-section:first-child {
  margin-top: 0;
}

.transport-concierge-main .transport-intake-section__heading {
  margin: 0 0 12px;
  padding-bottom: 8px;
  border-bottom: 1px solid rgba(11, 29, 58, 0.08);
  font-size: 0.74rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(11, 29, 58, 0.78);
}

.transport-concierge-main .transport-field--full {
  grid-column: 1 / -1;
}

.transport-concierge-main .transport-check {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  font-size: clamp(0.9rem, 0.15vw + 0.85rem, 0.96rem);
  line-height: 1.55;
  font-weight: 550;
  color: var(--navy);
}

.transport-concierge-main .transport-check input {
  margin-top: 5px;
  flex-shrink: 0;
  width: 1.15rem;
  height: 1.15rem;
  accent-color: var(--gold);
}

.transport-concierge-main .transport-check--backup {
  align-items: flex-start;
  gap: 14px;
  margin-top: 4px;
  padding: 14px 14px 14px 12px;
  min-height: 48px;
  font-size: clamp(0.92rem, 0.2vw + 0.86rem, 0.98rem);
  font-weight: 650;
  line-height: 1.5;
  color: var(--navy);
  background: rgba(255, 253, 248, 0.95);
  border: 2px solid rgba(11, 29, 58, 0.16);
  border-radius: calc(var(--radius) + 2px);
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.8) inset;
  cursor: pointer;
  box-sizing: border-box;
}

.transport-concierge-main .transport-check--backup input {
  margin-top: 3px;
  width: 1.35rem;
  height: 1.35rem;
  min-width: 1.35rem;
  cursor: pointer;
}

.transport-concierge-main .transport-check--backup span {
  flex: 1;
}

.transport-concierge-main .transport-intake-submit {
  margin-top: 16px;
  width: 100%;
  justify-content: center;
  min-height: 48px;
  font-weight: 800;
}

.transport-concierge-main .transport-intake-error {
  margin: 0 0 10px;
  padding: 10px 12px;
  border-radius: 10px;
  font-size: 0.88rem;
  line-height: 1.45;
  color: #5a2218;
  background: rgba(255, 106, 77, 0.12);
  border: 1px solid rgba(255, 106, 77, 0.42);
}

.transport-concierge-main .transport-intake-error--ok {
  color: #0f3d32;
  background: rgba(20, 184, 166, 0.14);
  border-color: rgba(20, 184, 166, 0.45);
}

/* Transportation request form — containment + mobile-safe checkbox rows */
.transport-concierge-main .transport-request-card,
.transport-concierge-main .transport-intake-form,
.transport-concierge-main .transport-intake-section,
.transport-concierge-main .transport-intake-fieldset {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

.transport-concierge-main .transport-intake-form input:not([type="checkbox"]):not([type="hidden"]),
.transport-concierge-main .transport-intake-form select,
.transport-concierge-main .transport-intake-form textarea {
  width: 100%;
  max-width: 100%;
}

.transport-concierge-main .transport-check-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.transport-concierge-main .transport-check-option {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  align-items: start;
  gap: 14px;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  min-height: 46px;
  padding: 12px 14px;
  border-radius: 12px;
  background: #fffefb;
  border: 1px solid rgba(11, 29, 58, 0.13);
  color: var(--navy);
  font-size: 0.9rem;
  font-weight: 650;
  line-height: 1.35;
  cursor: pointer;
  box-sizing: border-box;
}

.transport-concierge-main .transport-check-option input {
  width: 22px;
  height: 22px;
  min-width: 22px;
  min-height: 22px;
  margin: 2px 0 0;
  flex: 0 0 auto;
  accent-color: var(--gold);
}

.transport-concierge-main .transport-check-option span {
  min-width: 0;
  max-width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: normal;
  line-height: 1.35;
  letter-spacing: normal;
  text-transform: none;
}

.transport-concierge-main .transport-intake-form .sms-consent-block {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

.transport-concierge-main .transport-intake-form .sms-consent-checkbox {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  align-items: start;
  gap: 14px;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin: 0;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: normal;
  text-transform: none;
}

.transport-concierge-main .transport-intake-form .sms-consent-checkbox input[type="checkbox"] {
  width: 22px;
  height: 22px;
  min-width: 22px;
  min-height: 22px;
  margin: 2px 0 0;
  flex: 0 0 auto;
  accent-color: var(--gold);
}

.transport-concierge-main .transport-intake-form .sms-consent-checkbox span {
  min-width: 0;
  max-width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: normal;
  line-height: 1.35;
}

.transport-concierge-main .transport-intake-form .sms-consent-help {
  max-width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: normal;
  letter-spacing: normal;
}

html:has(.transport-concierge-main),
body:has(.transport-concierge-main) {
  max-width: 100%;
  overflow-x: hidden;
}

.transport-concierge-main {
  max-width: 100%;
  overflow-x: clip;
}

@media (max-width: 760px) {
  .transport-concierge-main .transport-intake-grid {
    grid-template-columns: 1fr;
  }

  .transport-concierge-main .tc-request-shell {
    grid-template-columns: 1fr;
  }
}

/* ----- Page jump navigation (mobile scanability) ----- */
.page-jump-band {
  padding: clamp(18px, 3vw, 28px) clamp(16px, 4.5vw, 70px);
  border-bottom: 1px solid rgba(255, 246, 230, 0.1);
  background:
    radial-gradient(circle at 12% 0%, rgba(20, 184, 166, 0.12), transparent 42%),
    linear-gradient(180deg, rgba(8, 18, 36, 0.96), rgba(6, 14, 28, 0.98));
}

.page-jump-band--cream {
  background:
    radial-gradient(circle at 88% 0%, rgba(255, 106, 77, 0.1), transparent 40%),
    linear-gradient(180deg, #fff8ef, #fff1e4);
  border-bottom-color: rgba(11, 29, 58, 0.1);
}

.page-jump-band-inner {
  max-width: 1180px;
  margin-inline: auto;
}

.page-jump-band .eyebrow {
  margin-bottom: 6px;
}

.page-jump-title {
  margin: 0 0 12px;
  font-size: clamp(1.2rem, 2.4vw + 0.6rem, 1.55rem);
  line-height: 1.2;
  letter-spacing: -0.02em;
}

.page-jump-band--dark .page-jump-title {
  color: var(--on-dark-heading);
}

.page-jump-band--cream .page-jump-title {
  color: var(--navy);
}

.page-jump-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 10px;
}

.page-jump-chip {
  display: inline-flex;
  align-items: center;
  padding: 8px 13px;
  border-radius: 999px;
  font-size: 0.82rem;
  font-weight: 760;
  letter-spacing: 0.01em;
  line-height: 1.25;
  text-decoration: none;
  transition:
    background 0.18s ease,
    border-color 0.18s ease,
    transform 0.18s ease;
}

.page-jump-band--dark .page-jump-chip {
  color: rgba(255, 248, 235, 0.96);
  border: 1px solid rgba(255, 246, 230, 0.24);
  background: rgba(255, 255, 255, 0.06);
}

.page-jump-band--dark .page-jump-chip:hover {
  border-color: rgba(20, 184, 166, 0.55);
  background: rgba(255, 255, 255, 0.1);
  transform: translateY(-1px);
}

.page-jump-band--cream .page-jump-chip {
  color: var(--navy);
  border: 1px solid rgba(11, 29, 58, 0.16);
  background: rgba(255, 255, 255, 0.88);
  box-shadow: 0 6px 16px rgba(11, 29, 58, 0.06);
}

.page-jump-band--cream .page-jump-chip:hover {
  border-color: rgba(242, 178, 26, 0.55);
  background: #fff;
}

.page-jump-chip-row a,
[id^="tc-route-"],
[id^="rf-zone-"],
#theme-parks,
#downtown-with-kids,
#zoo-museum-corridor,
#hill-country,
#resort-family,
#before-flight-plan,
#dt-river-timing {
  scroll-margin-top: calc(var(--header-h, 64px) + 14px);
}

/* ----- Mobile typography safeguard (Safari broken word spacing) ----- */
@media (max-width: 899px) {
  :where(
    body:not(.page-business-services):not(.page-restaurants),
    body:not(.page-business-services):not(.page-restaurants) p,
    body:not(.page-business-services):not(.page-restaurants) li,
    body:not(.page-business-services):not(.page-restaurants) dd,
    body:not(.page-business-services):not(.page-restaurants) blockquote,
    body:not(.page-business-services):not(.page-restaurants) figcaption,
    body:not(.page-business-services):not(.page-restaurants) .hero-text,
    body:not(.page-business-services):not(.page-restaurants) .hero-cue,
    body:not(.page-business-services):not(.page-restaurants) .hero-proof-item,
    body:not(.page-business-services):not(.page-restaurants) .section-text,
    body:not(.page-business-services):not(.page-restaurants) .card p,
    body:not(.page-business-services):not(.page-restaurants) .card li,
    body:not(.page-business-services):not(.page-restaurants) .note-card p,
    body:not(.page-business-services):not(.page-restaurants) .footer-lead,
    body:not(.page-business-services):not(.page-restaurants) .footer-mission,
    body:not(.page-business-services):not(.page-restaurants) .footer-note,
    body:not(.page-business-services):not(.page-restaurants) .footer-tagline,
    body:not(.page-business-services):not(.page-restaurants) .brand strong,
    body:not(.page-business-services):not(.page-restaurants) .brand small,
    body:not(.page-business-services):not(.page-restaurants) .live-concierge__input,
    body:not(.page-business-services):not(.page-restaurants) .live-concierge__preview-text,
    body:not(.page-business-services):not(.page-restaurants) .live-concierge__rich-body,
    body:not(.page-business-services):not(.page-restaurants) .live-concierge__panel-support,
    body:not(.page-business-services):not(.page-restaurants) .tc-hero-lead,
    body:not(.page-business-services):not(.page-restaurants) .meta,
    body:not(.page-business-services):not(.page-restaurants) .image-route-card__body p,
    body:not(.page-business-services):not(.page-restaurants) .image-card-content p,
    body:not(.page-business-services):not(.page-restaurants) .fam-section-sub,
    body:not(.page-business-services):not(.page-restaurants) .fam-pick-lead,
    body:not(.page-business-services):not(.page-restaurants) .dt-choose-lead,
    body:not(.page-business-services):not(.page-restaurants) .dt-concierge-lead,
    body:not(.page-business-services):not(.page-restaurants) .rf-concierge-inner li span
  ) {
    letter-spacing: normal;
    word-spacing: normal;
    hyphens: manual;
    -webkit-hyphens: manual;
    text-align: start;
    overflow-wrap: break-word;
    word-break: normal;
    text-wrap: auto;
  }

  body:not(.page-business-services):not(.page-restaurants) :where(
    p,
    .hero-text,
    .section-text,
    .hero-cue,
    .hero-proof-item,
    .card p,
    .live-concierge__preview-text,
    .live-concierge__rich-body,
    .tc-hero-lead,
    .home-dir-copy,
    .home-lane-copy,
    .home-lane-best,
    .home-lanes-lead,
    .home-hero-lede,
    .home-ask-entry-body,
    .home-trust-lede,
    .home-trust-proof-item,
    .home-directory-lede,
    .trust-card-story-body p,
    .transport-story-lede,
    .transport-story-trust,
    .transport-story-card-title,
    .transport-story-card-pitch
  ) {
    text-wrap: auto !important;
  }

  body:not(.page-business-services):not(.page-restaurants) h1 {
    letter-spacing: -0.02em;
    text-wrap: auto;
  }

  body:not(.page-business-services):not(.page-restaurants) h2 {
    letter-spacing: -0.015em;
    text-wrap: auto;
  }

  body:not(.page-business-services):not(.page-restaurants) h3,
  body:not(.page-business-services):not(.page-restaurants) h4 {
    letter-spacing: normal;
    text-wrap: auto;
  }

  body:not(.page-business-services):not(.page-restaurants) :where(
    .eyebrow,
    .eyebrow-hero,
    .eyebrow-on-dark,
    .hero-mini-eyebrow,
    .live-concierge__lane-label,
    .image-route-card__body .eyebrow,
    .page-home .home-dir-chip,
    .page-home .home-lane-chip,
    .page-home .home-lane-best-label,
    .trust-card-story-chip,
    .page-jump-band .eyebrow
  ) {
    letter-spacing: 0.12em;
    max-width: 100%;
  }

  body:not(.page-business-services):not(.page-restaurants) :where(
    .btn,
    .live-concierge__send,
    .fam-route-cta-btn
  ) {
    letter-spacing: 0.01em;
    text-transform: none;
  }

  .page-home .home-dir-title,
  .page-home .home-lanes-intro h2 {
    text-wrap: auto;
  }

  .transport-concierge-main .tc-hero--cinematic .hero-title,
  .transport-concierge-main .tc-final h2 {
    text-wrap: auto !important;
  }

  .transport-concierge-main .tc-final .section-text {
    text-wrap: auto !important;
  }

  .eat-rec-card__inner,
  .page-business-services:not(.page-home-services) .ai-offer-card.ai-bs-offer-card,
  .page-business-services:not(.page-home-services) .ai-bs-owner-dark .ai-bs-owner-card {
    overflow-wrap: break-word;
    word-break: normal;
  }

  .menu-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    min-height: 44px;
    padding: 4px 8px;
    line-height: 1;
  }
}

/* Ask page: tighter connected concierge module on mobile */
@media (max-width: 767px) {
  .page-ask .live-concierge__glass-panel {
    padding-bottom: clamp(10px, 2vw, 14px);
    border-bottom: 1px solid rgba(255, 246, 230, 0.08);
  }

  .page-ask .ask-product-tool-card .live-concierge__glass-panel {
    padding-bottom: 0;
    border-bottom: none;
  }

  .page-ask .live-concierge__main-card {
    margin-top: 0;
    border-top: none;
    border-radius: 0 0 calc(var(--radius) + 2px) calc(var(--radius) + 2px);
  }

  .page-ask .live-concierge__composer-stack {
    margin-top: 0;
    padding-top: 4px;
  }

  .page-ask .live-concierge__chip {
    letter-spacing: 0.01em;
    text-transform: none;
  }
}

/* SMS / request consent (Twilio A2P) */
.consent-note {
  margin: 0;
  padding: 0;
  font-size: clamp(0.7rem, 2.15vw, 0.8rem);
  line-height: 1.45;
  font-weight: 650;
  color: rgba(8, 22, 48, 0.9);
}

.consent-note--on-dark {
  color: rgba(255, 246, 230, 0.92);
}

.live-concierge__composer-unit .consent-note {
  flex: 1 1 100%;
  width: 100%;
  margin-top: 0.35rem;
}

.transport-human-intake .consent-note,
.business-operator-intake .consent-note {
  margin-top: 0.65rem;
  margin-bottom: 0.15rem;
  max-width: 42rem;
}

/* Legal pages (privacy / terms) */
.page-legal .legal-main {
  padding-bottom: 0;
}

.page-legal .legal-hero {
  padding-bottom: 0.5rem;
}

.page-legal .legal-inner {
  max-width: 46rem;
}

.page-legal .legal-updated {
  margin: 0.35rem 0 0.75rem;
  font-size: 0.88rem;
  color: var(--slate);
  opacity: 0.85;
}

.page-legal .legal-intro {
  margin-top: 0.5rem;
}

.page-legal .legal-body-section {
  padding-top: 0.25rem;
  padding-bottom: clamp(2.5rem, 6vw, 4rem);
}

.page-legal .legal-prose h2 {
  margin: 1.75rem 0 0.5rem;
  font-size: 1.15rem;
  color: var(--navy);
}

.page-legal .legal-prose h2:first-child {
  margin-top: 0;
}

.page-legal .legal-prose p,
.page-legal .legal-prose li {
  margin: 0.5rem 0 0;
  font-size: 0.95rem;
  line-height: 1.6;
  color: var(--slate);
}

.page-legal .legal-prose ul {
  margin: 0.5rem 0 0;
  padding-left: 1.25rem;
}

.page-legal .legal-prose a {
  color: var(--navy);
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 2px;
}

/* --- Owner Command Dashboard (private, direct URL only) --- */
.page-owner-dashboard {
  color: var(--on-dark-body-soft);
  overflow-x: hidden;
}

.page-owner-dashboard .owner-dash-header {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px 20px;
  padding-top: 14px;
  padding-bottom: 14px;
  padding-left: max(16px, env(safe-area-inset-left, 0px));
  padding-right: max(16px, env(safe-area-inset-right, 0px));
  border-bottom: 1px solid rgba(20, 184, 166, 0.22);
  background: rgba(4, 10, 22, 0.72);
  backdrop-filter: blur(10px);
}

.page-owner-dashboard .owner-dash-header .brand strong {
  color: #fff6e6;
}

.page-owner-dashboard .owner-dash-header .brand small {
  color: rgba(255, 246, 230, 0.68);
}

.page-owner-dashboard .owner-dash-header-proof {
  margin: 0;
  font-size: 0.82rem;
  color: rgba(255, 246, 230, 0.78);
}

.page-owner-dashboard .owner-dash-header-proof strong {
  color: rgba(255, 246, 230, 0.94);
  font-weight: 700;
}

.page-owner-dashboard .owner-dash-main {
  width: 100%;
  max-width: 1120px;
  margin: 0 auto;
  padding: clamp(20px, 4vw, 36px) max(18px, env(safe-area-inset-right, 0px)) 48px max(18px, env(safe-area-inset-left, 0px));
  min-width: 0;
}

.page-owner-dashboard .owner-dash-hero {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}

.page-owner-dashboard .owner-dash-hero h1 {
  color: var(--on-dark-heading);
  font-size: clamp(1.75rem, 5vw, 2.65rem);
  max-width: 22ch;
  overflow-wrap: normal;
}

.page-owner-dashboard .owner-dash-utility {
  margin-top: 14px;
  padding-top: 0;
  padding-bottom: 10px;
  margin-bottom: 0;
  border-bottom: 1px solid rgba(255, 246, 230, 0.08);
  min-width: 0;
  max-width: 100%;
}

.page-owner-dashboard .owner-dash-utility-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
  min-width: 0;
}

.page-owner-dashboard .owner-dash-refresh-btn {
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  width: max-content;
  max-width: 100%;
  min-height: 24px;
  padding: 3px 9px;
  font: inherit;
  font-size: 0.72rem;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0.01em;
  border-radius: 5px;
  border: 1px solid rgba(255, 246, 230, 0.2);
  background: rgba(4, 10, 22, 0.4);
  color: rgba(255, 246, 230, 0.78);
  cursor: pointer;
  flex-shrink: 0;
  transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}

.page-owner-dashboard .owner-dash-refresh-btn:hover:not(:disabled) {
  border-color: rgba(20, 184, 166, 0.4);
  background: rgba(20, 184, 166, 0.1);
}

.page-owner-dashboard .owner-dash-refresh-btn:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.page-owner-dashboard .owner-dash-refresh-btn:focus-visible {
  outline: 2px solid rgba(255, 139, 31, 0.65);
  outline-offset: 2px;
}

.page-owner-dashboard .owner-dash-last-loaded {
  margin: 0;
  font-size: 0.72rem;
  line-height: 1.35;
  color: rgba(255, 246, 230, 0.5);
  min-width: 0;
  overflow-wrap: normal;
}

.page-owner-dashboard .owner-dash-refresh-error {
  margin: 8px 0 0;
  width: 100%;
  font-size: 0.8rem;
  color: #fca5a5;
}

.page-owner-dashboard .owner-dash-lede {
  margin: 0 0 10px;
  max-width: 42rem;
  font-size: clamp(0.98rem, 0.3vw + 0.9rem, 1.06rem);
  line-height: 1.62;
  color: var(--on-dark-body);
}

.page-owner-dashboard .owner-dash-note {
  margin: 0 0 16px;
  font-size: 0.88rem;
  color: rgba(255, 139, 31, 0.92);
}

.page-owner-dashboard .owner-dash-pills {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.page-owner-dashboard .owner-dash-pill {
  padding: 6px 12px;
  border-radius: 999px;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  background: rgba(20, 184, 166, 0.14);
  border: 1px solid rgba(20, 184, 166, 0.35);
  color: rgba(255, 246, 230, 0.92);
}

.page-owner-dashboard .owner-dash-pill--warn {
  background: rgba(255, 139, 31, 0.12);
  border-color: rgba(255, 139, 31, 0.45);
  color: rgba(255, 220, 180, 0.95);
}

.page-owner-dashboard .owner-dash-glass {
  background:
    linear-gradient(150deg, rgba(255, 246, 230, 0.07) 0%, transparent 52%),
    linear-gradient(186deg, rgba(11, 29, 58, 0.55) 0%, rgba(4, 10, 22, 0.92) 100%);
  border: 1px solid rgba(20, 184, 166, 0.26);
  border-radius: 16px;
  box-shadow:
    0 14px 36px rgba(0, 0, 0, 0.32),
    inset 0 1px 0 rgba(255, 246, 230, 0.08);
}


.page-owner-dashboard .owner-dash-today {
  margin: 12px 0 16px;
  padding: clamp(12px, 1.8vw, 16px);
  overflow: hidden;
}

.page-owner-dashboard .owner-dash-today-head {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px 14px;
  margin-bottom: 12px;
}

.page-owner-dashboard .owner-dash-today-head .eyebrow {
  margin-bottom: 4px;
  font-size: 0.68rem;
}

.page-owner-dashboard .owner-dash-today-head h2 {
  margin: 0 0 4px;
  font-size: clamp(1.18rem, 2.8vw, 1.55rem);
  color: var(--on-dark-heading);
}

.page-owner-dashboard .owner-dash-today-head p {
  margin: 0;
  max-width: 34rem;
  font-size: 0.88rem;
  line-height: 1.45;
  color: rgba(255, 246, 230, 0.72);
}

.page-owner-dashboard .owner-dash-today-copy {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  min-width: 0;
}

.page-owner-dashboard .owner-dash-active-queue {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 10px;
  padding: 8px 10px;
  border-radius: 12px;
  background: rgba(255, 139, 31, 0.1);
  border: 1px solid rgba(255, 139, 31, 0.3);
  color: rgba(255, 246, 230, 0.88);
  font-size: 0.82rem;
}

.page-owner-dashboard .owner-dash-active-queue[hidden] {
  display: none !important;
}

.page-owner-dashboard .owner-dash-clear-queue,
.page-owner-dashboard .owner-dash-today-open-first {
  appearance: none;
  border-radius: 999px;
  border: 1px solid rgba(20, 184, 166, 0.42);
  background: rgba(4, 10, 22, 0.45);
  color: rgba(255, 246, 230, 0.88);
  font: inherit;
  font-size: 0.74rem;
  font-weight: 800;
  padding: 6px 10px;
  cursor: pointer;
}

.page-owner-dashboard .owner-dash-today-buckets {
  display: grid;
  gap: 8px;
  grid-template-columns: 1fr;
}

.page-owner-dashboard .owner-dash-today-bucket {
  min-width: 0;
  border-radius: 14px;
  border: 1px solid rgba(20, 184, 166, 0.2);
  background: rgba(4, 10, 22, 0.42);
  overflow: hidden;
  cursor: pointer;
}

.page-owner-dashboard .owner-dash-today-bucket.is-active {
  border-color: rgba(255, 139, 31, 0.62);
  box-shadow: inset 0 0 0 1px rgba(255, 139, 31, 0.16);
}

.page-owner-dashboard .owner-dash-today-bucket-main {
  appearance: none;
  width: 100%;
  border: 0;
  background: transparent;
  color: inherit;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  padding: 10px;
  text-align: left;
  cursor: pointer;
}

.page-owner-dashboard .owner-dash-today-bucket-main:hover,
.page-owner-dashboard .owner-dash-today-bucket:hover .owner-dash-today-bucket-main {
  background: rgba(20, 184, 166, 0.06);
}

.page-owner-dashboard .owner-dash-today-bucket-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.35rem;
  height: 2.35rem;
  padding: 0 8px;
  border-radius: 12px;
  background: linear-gradient(135deg, rgba(255, 139, 31, 0.24), rgba(20, 184, 166, 0.14));
  border: 1px solid rgba(255, 180, 80, 0.34);
  color: #ffe4c4;
  font-size: 1.12rem;
  font-weight: 900;
}

.page-owner-dashboard .owner-dash-today-bucket-copy {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.page-owner-dashboard .owner-dash-today-bucket-copy strong {
  font-size: 0.84rem;
  line-height: 1.25;
  color: var(--on-dark-heading);
  overflow-wrap: normal;
}

.page-owner-dashboard .owner-dash-today-bucket-copy small {
  font-size: 0.72rem;
  line-height: 1.35;
  color: rgba(255, 246, 230, 0.6);
  overflow-wrap: normal;
}

.page-owner-dashboard .owner-dash-today-bucket-actions {
  display: flex;
  justify-content: flex-start;
  padding: 0 10px 10px 58px;
}

.page-owner-dashboard .owner-dash-today-open-first {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  width: auto;
  background: rgba(20, 184, 166, 0.12);
}

.page-owner-dashboard .owner-dash-today-bucket-main:focus-visible,
.page-owner-dashboard .owner-dash-today-open-first:focus-visible,
.page-owner-dashboard .owner-dash-clear-queue:focus-visible {
  outline: 2px solid rgba(255, 246, 230, 0.65);
  outline-offset: 2px;
}

.page-owner-dashboard .owner-dash-today-footer {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px 14px;
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid rgba(255, 246, 230, 0.08);
}

.page-owner-dashboard .owner-dash-today-order {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.page-owner-dashboard .owner-dash-today-order p {
  margin: 0;
  font-size: 0.74rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: rgba(20, 184, 166, 0.92);
}

.page-owner-dashboard .owner-dash-today-order ol {
  display: grid;
  gap: 3px;
  margin: 0;
  padding-left: 18px;
  color: rgba(255, 246, 230, 0.74);
  font-size: 0.76rem;
  line-height: 1.35;
}

.page-owner-dashboard .owner-dash-today-order li {
  padding-left: 2px;
}

.page-owner-dashboard .owner-dash-today-safe-note {
  margin: 0;
  font-size: 0.76rem;
  color: rgba(255, 246, 230, 0.55);
}

.page-owner-dashboard .owner-dash-today-manual-copy {
  margin-top: 10px;
}

@media (min-width: 480px) {
  .page-owner-dashboard .owner-dash-today-buckets {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 960px) {
  .page-owner-dashboard .owner-dash-today-buckets {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.page-owner-dashboard .owner-dash-summary {
  margin-top: 10px;
  margin-bottom: 18px;
}

.page-owner-dashboard .owner-dash-summary-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr));
}

.page-owner-dashboard .owner-dash-stat {
  padding: clamp(16px, 2vw, 20px);
}

.page-owner-dashboard .owner-dash-stat-label {
  margin: 0 0 6px;
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: rgba(255, 246, 230, 0.7);
}

.page-owner-dashboard .owner-dash-stat-value {
  margin: 0;
  font-size: clamp(1.85rem, 4vw, 2.35rem);
  font-weight: 900;
  line-height: 1;
  color: var(--gold);
}

.page-owner-dashboard .owner-dash-stat-meta {
  margin: 8px 0 0;
  font-size: 0.85rem;
  color: rgba(255, 246, 230, 0.65);
}

.page-owner-dashboard .owner-dash-placeholder {
  margin: 0 0 18px;
  padding: 10px 14px;
  border-radius: 10px;
  font-size: 0.86rem;
  color: rgba(255, 246, 230, 0.75);
  background: rgba(255, 139, 31, 0.08);
  border: 1px dashed rgba(255, 139, 31, 0.35);
}

.page-owner-dashboard .owner-dash-stat-value--teal {
  color: #5eead4;
}

.page-owner-dashboard .owner-dash-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 16px;
}

.page-owner-dashboard .owner-dash-filter {
  appearance: none;
  border: 1px solid rgba(20, 184, 166, 0.35);
  background: rgba(4, 10, 22, 0.55);
  color: rgba(255, 246, 230, 0.82);
  border-radius: 999px;
  padding: 8px 14px;
  font: inherit;
  font-size: 0.82rem;
  font-weight: 700;
  cursor: pointer;
  transition: border-color 0.15s, background 0.15s;
}

.page-owner-dashboard .owner-dash-filter.is-active {
  border-color: rgba(20, 184, 166, 0.75);
  background: rgba(20, 184, 166, 0.2);
  color: var(--on-dark-heading);
}

.page-owner-dashboard .owner-dash-filter:focus-visible {
  outline: 2px solid rgba(255, 139, 31, 0.75);
  outline-offset: 2px;
}

.page-owner-dashboard .owner-dash-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 16px;
}

.page-owner-dashboard .owner-dash-tab {
  appearance: none;
  border: 1px solid rgba(255, 246, 230, 0.2);
  background: rgba(4, 10, 22, 0.5);
  color: rgba(255, 246, 230, 0.85);
  border-radius: 999px;
  padding: 10px 18px;
  font: inherit;
  font-size: 0.9rem;
  font-weight: 700;
  cursor: pointer;
}

.page-owner-dashboard .owner-dash-tab.is-active {
  border-color: rgba(255, 139, 31, 0.65);
  background: linear-gradient(135deg, rgba(255, 139, 31, 0.28), rgba(242, 178, 26, 0.18));
  color: var(--on-dark-heading);
}

.page-owner-dashboard .owner-dash-panel {
  display: none;
}

.page-owner-dashboard .owner-dash-panel.is-active {
  display: block;
}

.page-owner-dashboard .owner-dash-panel-head {
  margin-bottom: 14px;
}

.page-owner-dashboard .owner-dash-panel-head h2 {
  color: var(--on-dark-heading);
  font-size: clamp(1.35rem, 3vw, 1.75rem);
  margin-bottom: 6px;
}

.page-owner-dashboard .owner-dash-panel-head p {
  margin: 0;
  color: var(--on-dark-body);
  font-size: 0.94rem;
}

.page-owner-dashboard .owner-dash-card-list {
  display: grid;
  gap: 14px;
}

.page-owner-dashboard .owner-dash-lead-card {
  padding: clamp(16px, 2.2vw, 20px);
  min-width: 0;
}

.page-owner-dashboard .owner-dash-card-top {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
}

.page-owner-dashboard .owner-dash-time {
  margin-left: auto;
  font-size: 0.8rem;
  color: rgba(255, 246, 230, 0.62);
}

.page-owner-dashboard .owner-dash-card-title {
  margin: 0 0 12px;
  font-size: 1.12rem;
  font-weight: 880;
  color: var(--on-dark-heading);
  line-height: 1.3;
}

.page-owner-dashboard .owner-dash-fields {
  margin: 0;
  display: grid;
  gap: 10px;
  grid-template-columns: 1fr;
}

@media (min-width: 640px) {
  .page-owner-dashboard .owner-dash-fields {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .page-owner-dashboard .owner-dash-field--wide {
    grid-column: 1 / -1;
  }
}

.page-owner-dashboard .owner-dash-field dt {
  margin: 0 0 2px;
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: rgba(20, 184, 166, 0.95);
}

.page-owner-dashboard .owner-dash-field dd {
  margin: 0;
  font-size: 0.92rem;
  line-height: 1.5;
  color: rgba(255, 246, 230, 0.9);
  overflow-wrap: break-word;
}

.page-owner-dashboard .owner-dash-excerpt {
  white-space: pre-wrap;
}

.page-owner-dashboard .owner-dash-card-foot {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid rgba(255, 246, 230, 0.08);
}

.page-owner-dashboard .owner-dash-badge {
  display: inline-block;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 0.74rem;
  font-weight: 800;
  letter-spacing: 0.02em;
}

.page-owner-dashboard .owner-dash-badge--hot {
  background: rgba(255, 106, 77, 0.2);
  border: 1px solid rgba(255, 106, 77, 0.5);
  color: #ffd4c8;
}

.page-owner-dashboard .owner-dash-badge--new {
  background: rgba(20, 184, 166, 0.18);
  border: 1px solid rgba(20, 184, 166, 0.45);
  color: #c8fff5;
}

.page-owner-dashboard .owner-dash-badge--ok {
  background: rgba(34, 197, 94, 0.15);
  border: 1px solid rgba(34, 197, 94, 0.4);
  color: #bbf7d0;
}

.page-owner-dashboard .owner-dash-badge--pending {
  background: rgba(255, 139, 31, 0.12);
  border: 1px solid rgba(255, 139, 31, 0.4);
  color: rgba(255, 220, 180, 0.95);
}

.page-owner-dashboard .owner-dash-badge--muted {
  background: rgba(89, 96, 107, 0.35);
  border: 1px solid rgba(255, 246, 230, 0.15);
  color: rgba(255, 246, 230, 0.65);
}

.page-owner-dashboard .owner-dash-badge--neutral {
  background: rgba(255, 246, 230, 0.08);
  border: 1px solid rgba(255, 246, 230, 0.18);
  color: rgba(255, 246, 230, 0.88);
}

.page-owner-dashboard .owner-dash-badge--teal {
  background: rgba(20, 184, 166, 0.2);
  border: 1px solid rgba(20, 184, 166, 0.55);
  color: #c8fff5;
}

.page-owner-dashboard .owner-dash-workflow {
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid rgba(20, 184, 166, 0.28);
}

.page-owner-dashboard .owner-dash-workflow-title {
  margin: 0 0 12px;
  font-size: 0.78rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.07em;
  color: rgba(20, 184, 166, 0.95);
}

.page-owner-dashboard .owner-dash-workflow-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: 1fr;
}

@media (min-width: 640px) {
  .page-owner-dashboard .owner-dash-workflow-grid {
    grid-template-columns: minmax(160px, 220px) 1fr;
  }

  .page-owner-dashboard .owner-dash-workflow-field--wide {
    grid-column: 1 / -1;
  }
}

.page-owner-dashboard .owner-dash-workflow-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}

.page-owner-dashboard .owner-dash-workflow-label {
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: rgba(255, 246, 230, 0.7);
}

.page-owner-dashboard .owner-dash-select,
.page-owner-dashboard .owner-dash-textarea {
  width: 100%;
  border-radius: 10px;
  border: 1px solid rgba(255, 246, 230, 0.18);
  background: rgba(4, 10, 22, 0.65);
  color: rgba(255, 246, 230, 0.95);
  font: inherit;
  font-size: 0.92rem;
  padding: 10px 12px;
}

.page-owner-dashboard .owner-dash-select:focus-visible,
.page-owner-dashboard .owner-dash-textarea:focus-visible {
  outline: 2px solid rgba(255, 139, 31, 0.65);
  outline-offset: 1px;
  border-color: rgba(255, 139, 31, 0.45);
}

.page-owner-dashboard .owner-dash-textarea {
  resize: vertical;
  min-height: 4.5rem;
  line-height: 1.5;
}

.page-owner-dashboard .owner-dash-workflow-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
  margin-top: 10px;
  font-size: 0.8rem;
  color: rgba(255, 246, 230, 0.62);
}

.page-owner-dashboard .owner-dash-workflow-feedback {
  font-weight: 700;
}

.page-owner-dashboard .owner-dash-workflow-feedback--success {
  color: #86efac;
}

.page-owner-dashboard .owner-dash-workflow-feedback--error {
  color: #fca5a5;
}

.page-owner-dashboard .owner-dash-workflow-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 12px;
}

.page-owner-dashboard .owner-dash-btn {
  appearance: none;
  border-radius: 999px;
  padding: 10px 18px;
  font: inherit;
  font-size: 0.88rem;
  font-weight: 800;
  cursor: pointer;
  border: 1px solid transparent;
  transition: opacity 0.15s, transform 0.1s;
}

.page-owner-dashboard .owner-dash-btn:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.page-owner-dashboard .owner-dash-btn--primary {
  background: linear-gradient(135deg, rgba(255, 139, 31, 0.95), rgba(242, 178, 26, 0.88));
  color: #1a1208;
  border-color: rgba(255, 180, 80, 0.5);
}

.page-owner-dashboard .owner-dash-btn--secondary {
  background: rgba(20, 184, 166, 0.14);
  color: rgba(255, 246, 230, 0.92);
  border-color: rgba(20, 184, 166, 0.45);
}

.page-owner-dashboard .owner-dash-btn:focus-visible {
  outline: 2px solid rgba(255, 246, 230, 0.65);
  outline-offset: 2px;
}

.page-owner-dashboard .owner-dash-page-path {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 8px;
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid rgba(255, 246, 230, 0.06);
  min-width: 0;
  max-width: 100%;
}

.page-owner-dashboard .owner-dash-page-path-label {
  display: inline-flex;
  align-items: center;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(255, 246, 230, 0.62);
  background: rgba(4, 10, 22, 0.45);
  border: 1px solid rgba(255, 246, 230, 0.12);
  flex-shrink: 0;
}

.page-owner-dashboard .owner-dash-page-path-value {
  font-size: 0.78rem;
  line-height: 1.4;
  color: rgba(255, 246, 230, 0.55);
  overflow-wrap: break-word;
  word-break: normal;
  min-width: 0;
}

.page-owner-dashboard .owner-dash-empty,
.page-owner-dashboard .owner-dash-state-card,
.page-owner-dashboard .owner-dash-loading {
  padding: 20px;
  text-align: center;
}

.page-owner-dashboard .owner-dash-state-card h2 {
  color: var(--on-dark-heading);
  margin-bottom: 8px;
}

.page-owner-dashboard .owner-dash-state-card p {
  margin: 0;
  color: var(--on-dark-body);
}

.page-owner-dashboard .owner-dash-loading p {
  margin: 24px 0;
  color: rgba(255, 246, 230, 0.7);
}

.page-owner-dashboard .owner-dash-summary-grid,
.page-owner-dashboard .owner-dash-filters,
.page-owner-dashboard .owner-dash-tabs,
.page-owner-dashboard .owner-dash-today,
.page-owner-dashboard .owner-dash-today-buckets,
.page-owner-dashboard .owner-dash-card-list,
.page-owner-dashboard #owner-dash-content {
  min-width: 0;
  max-width: 100%;
}

@media (min-width: 768px) {
  .page-owner-dashboard .owner-dash-utility-row {
    justify-content: flex-end;
    width: 100%;
  }
}

@media (max-width: 639px) {
  .page-owner-dashboard .owner-dash-today {
    margin: 8px 0 12px;
    padding: 10px;
  }

  .page-owner-dashboard .owner-dash-today-head {
    gap: 8px;
    margin-bottom: 8px;
  }

  .page-owner-dashboard .owner-dash-today-head h2 {
    font-size: clamp(1.08rem, 5vw, 1.28rem);
  }

  .page-owner-dashboard .owner-dash-today-head p {
    font-size: 0.82rem;
    line-height: 1.35;
  }

  .page-owner-dashboard .owner-dash-active-queue {
    margin-bottom: 8px;
    padding: 7px 8px;
    font-size: 0.78rem;
  }

  .page-owner-dashboard .owner-dash-today-buckets {
    gap: 7px;
  }

  .page-owner-dashboard .owner-dash-today-bucket {
    border-radius: 12px;
  }

  .page-owner-dashboard .owner-dash-today-bucket-main {
    gap: 8px;
    padding: 8px;
  }

  .page-owner-dashboard .owner-dash-today-bucket-count {
    min-width: 2rem;
    height: 2rem;
    padding: 0 6px;
    border-radius: 10px;
    font-size: 1rem;
  }

  .page-owner-dashboard .owner-dash-today-bucket-copy {
    gap: 1px;
  }

  .page-owner-dashboard .owner-dash-today-bucket-copy strong {
    font-size: 0.8rem;
    line-height: 1.18;
  }

  .page-owner-dashboard .owner-dash-today-bucket-copy small {
    font-size: 0.68rem;
    line-height: 1.25;
  }

  .page-owner-dashboard .owner-dash-today-bucket-actions {
    padding: 0 8px 8px 48px;
  }

  .page-owner-dashboard .owner-dash-today-open-first,
  .page-owner-dashboard .owner-dash-clear-queue {
    padding: 4px 8px;
    font-size: 0.68rem;
  }

  .page-owner-dashboard .owner-dash-today-footer {
    gap: 7px;
    margin-top: 8px;
    padding-top: 8px;
  }

  .page-owner-dashboard .owner-dash-today-order p,
  .page-owner-dashboard .owner-dash-today-order ol,
  .page-owner-dashboard .owner-dash-today-safe-note {
    font-size: 0.7rem;
  }

  .page-owner-dashboard .owner-dash-today-order ol {
    gap: 2px;
    padding-left: 16px;
    line-height: 1.3;
  }

  .page-owner-dashboard .owner-dash-utility {
    margin-top: 14px;
    padding-bottom: 10px;
  }

  .page-owner-dashboard .owner-dash-utility-row {
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
  }

  .page-owner-dashboard .owner-dash-summary {
    margin-top: 6px;
    margin-bottom: 12px;
  }

  .page-owner-dashboard .owner-dash-main {
    padding-left: max(18px, env(safe-area-inset-left, 0px));
    padding-right: max(18px, env(safe-area-inset-right, 0px));
  }

  .page-owner-dashboard .owner-dash-hero h1 {
    max-width: none;
    font-size: clamp(1.55rem, 7.5vw, 2rem);
  }

  .page-owner-dashboard .owner-dash-stat {
    padding: 9px 10px;
  }

  .page-owner-dashboard .owner-dash-stat-label {
    margin-bottom: 3px;
    font-size: 0.7rem;
  }

  .page-owner-dashboard .owner-dash-stat-value {
    font-size: clamp(1.35rem, 5.4vw, 1.65rem);
  }

  .page-owner-dashboard .owner-dash-stat-meta {
    margin-top: 3px;
    font-size: 0.72rem;
    line-height: 1.25;
  }

  .page-owner-dashboard .owner-dash-summary-grid {
    gap: 8px;
  }
}

/* Owner Command Dashboard v3 — lead detail panel */
body.owner-dash-detail-open {
  overflow: hidden;
}

.page-owner-dashboard .owner-dash-card-actions {
  margin: -4px 0 12px;
}

.page-owner-dashboard .owner-dash-btn--compact {
  padding: 7px 14px;
  font-size: 0.8rem;
}

.page-owner-dashboard .owner-dash-detail-overlay {
  position: fixed;
  inset: 0;
  z-index: 1200;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding: 0;
}

.page-owner-dashboard .owner-dash-detail-overlay[hidden] {
  display: none !important;
}

.page-owner-dashboard .owner-dash-detail-backdrop {
  position: absolute;
  inset: 0;
  margin: 0;
  padding: 0;
  border: 0;
  background: rgba(2, 6, 16, 0.72);
  backdrop-filter: blur(4px);
  cursor: pointer;
}

.page-owner-dashboard .owner-dash-detail-panel {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 640px;
  max-height: min(92vh, 920px);
  margin: 0;
  border-radius: 18px 18px 0 0;
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow: hidden;
}

@media (min-width: 640px) {
  .page-owner-dashboard .owner-dash-detail-overlay {
    align-items: center;
    padding: 20px;
  }

  .page-owner-dashboard .owner-dash-detail-panel {
    border-radius: 18px;
    max-height: min(88vh, 900px);
  }
}

.page-owner-dashboard .owner-dash-detail-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px 12px;
  border-bottom: 1px solid rgba(20, 184, 166, 0.28);
  background: rgba(4, 10, 22, 0.55);
  position: sticky;
  top: 0;
  z-index: 2;
  flex-shrink: 0;
}

.page-owner-dashboard .owner-dash-detail-eyebrow {
  margin: 0 0 4px;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(20, 184, 166, 0.95);
}

.page-owner-dashboard .owner-dash-detail-title {
  margin: 0;
  font-size: 1.05rem;
  font-weight: 880;
  line-height: 1.3;
  color: var(--on-dark-heading);
  overflow-wrap: normal;
}

.page-owner-dashboard .owner-dash-detail-close {
  appearance: none;
  flex-shrink: 0;
  border-radius: 999px;
  border: 1px solid rgba(255, 246, 230, 0.22);
  background: rgba(4, 10, 22, 0.65);
  color: rgba(255, 246, 230, 0.92);
  font: inherit;
  font-size: 0.78rem;
  font-weight: 800;
  padding: 8px 14px;
  cursor: pointer;
}

.page-owner-dashboard .owner-dash-detail-close:focus-visible {
  outline: 2px solid rgba(255, 139, 31, 0.65);
  outline-offset: 2px;
}

.page-owner-dashboard .owner-dash-detail-body {
  overflow-y: auto;
  overflow-x: hidden;
  padding: 14px 16px 24px;
  -webkit-overflow-scrolling: touch;
}

.page-owner-dashboard .owner-dash-detail-badges {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-bottom: 14px;
}

.page-owner-dashboard .owner-dash-detail-badges .owner-dash-time {
  margin-left: auto;
}

.page-owner-dashboard .owner-dash-detail-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: 1fr;
  margin-bottom: 14px;
}

.page-owner-dashboard .owner-dash-detail-row {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.page-owner-dashboard .owner-dash-detail-row--wide {
  grid-column: 1 / -1;
}

.page-owner-dashboard .owner-dash-detail-label {
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: rgba(20, 184, 166, 0.95);
}

.page-owner-dashboard .owner-dash-detail-value {
  font-size: 0.94rem;
  line-height: 1.55;
  color: rgba(255, 246, 230, 0.92);
  overflow-wrap: break-word;
  white-space: pre-wrap;
}

.page-owner-dashboard .owner-dash-detail-value--empty {
  color: rgba(255, 246, 230, 0.45);
}

.page-owner-dashboard .owner-dash-detail-link {
  color: #5eead4;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.page-owner-dashboard .owner-dash-detail-alerts {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 16px;
}

.page-owner-dashboard .owner-dash-detail-section {
  margin-bottom: 18px;
  padding-top: 14px;
  border-top: 1px solid rgba(255, 246, 230, 0.08);
}

.page-owner-dashboard .owner-dash-detail-section-title {
  margin: 0 0 10px;
  font-size: 0.76rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.07em;
  color: rgba(255, 246, 230, 0.72);
}

.page-owner-dashboard .owner-dash-detail-copy-actions,
.page-owner-dashboard .owner-dash-detail-followup-actions,
.page-owner-dashboard .owner-dash-detail-quick-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin-bottom: 10px;
  min-width: 0;
}

.page-owner-dashboard .owner-dash-detail-section-note {
  margin: 0 0 10px;
  font-size: 0.78rem;
  line-height: 1.4;
  color: rgba(255, 246, 230, 0.58);
}

.page-owner-dashboard .owner-dash-detail-section--followup .owner-dash-btn {
  flex: 1 1 calc(50% - 4px);
  min-width: 0;
  max-width: 100%;
  white-space: normal;
  text-align: center;
  line-height: 1.25;
  padding-top: 8px;
  padding-bottom: 8px;
}

@media (min-width: 520px) {
  .page-owner-dashboard .owner-dash-detail-section--followup .owner-dash-btn {
    flex: 1 1 auto;
    white-space: nowrap;
  }
}

.page-owner-dashboard .owner-dash-detail-manual-copy-text.owner-dash-textarea {
  min-height: 6rem;
  width: 100%;
  max-width: 100%;
  resize: vertical;
  user-select: all;
  font-family: inherit;
  font-size: 0.82rem;
  line-height: 1.45;
  color: rgba(255, 246, 230, 0.92);
}

.page-owner-dashboard .owner-dash-detail-copy-feedback,
.page-owner-dashboard .owner-dash-detail-quick-feedback {
  width: 100%;
  margin: 0;
  font-size: 0.8rem;
  font-weight: 700;
  color: #86efac;
}

.page-owner-dashboard .owner-dash-detail-copy-feedback--error,
.page-owner-dashboard .owner-dash-detail-quick-feedback--error {
  color: #fca5a5;
}

.page-owner-dashboard .owner-dash-detail-followup-label {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin: 0;
  font-size: 0.78rem;
  color: rgba(255, 246, 230, 0.65);
}

.page-owner-dashboard .owner-dash-detail-followup {
  min-height: 6.5rem;
}

.page-owner-dashboard .owner-dash-detail-manual-copy {
  margin-top: 10px;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px dashed rgba(255, 139, 31, 0.45);
  background: rgba(4, 10, 22, 0.55);
}

.page-owner-dashboard .owner-dash-detail-manual-copy-label {
  margin: 0 0 6px;
  font-size: 0.78rem;
  color: rgba(255, 246, 230, 0.7);
}

.page-owner-dashboard .owner-dash-detail-manual-copy-text {
  margin: 0;
  font-family: inherit;
  font-size: 0.82rem;
  line-height: 1.45;
  white-space: pre-wrap;
  overflow-wrap: normal;
  color: rgba(255, 246, 230, 0.92);
  user-select: all;
}

.page-owner-dashboard .owner-dash-detail-sheet .owner-dash-workflow {
  margin-top: 0;
  padding-top: 14px;
  border-top: 1px solid rgba(20, 184, 166, 0.28);
}

/* Owner Command Dashboard v3 — compact summary cards */
.page-owner-dashboard .owner-dash-lead-card--compact {
  padding: clamp(14px, 2vw, 18px);
  min-width: 0;
  max-width: 100%;
  overflow-x: clip;
}

.page-owner-dashboard .owner-dash-lead-card--compact .owner-dash-card-title {
  margin-bottom: 8px;
  font-size: 1.05rem;
}

.page-owner-dashboard .owner-dash-fields--compact {
  grid-template-columns: 1fr;
  gap: 8px;
}

.page-owner-dashboard .owner-dash-preview-clamp {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  white-space: normal;
  overflow-wrap: normal;
  max-height: 3.2em;
}

.page-owner-dashboard .owner-dash-lead-card--compact .owner-dash-card-actions {
  margin: 4px 0 10px;
}

.page-owner-dashboard .owner-dash-lead-card--compact .owner-dash-workflow {
  margin-top: 12px;
  padding-top: 12px;
}

.page-owner-dashboard .owner-dash-card-alerts {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid rgba(255, 246, 230, 0.08);
  min-width: 0;
  max-width: 100%;
}

@media (max-width: 639px) {
  .page-owner-dashboard .owner-dash-lead-card--compact .owner-dash-workflow-actions,
  .page-owner-dashboard .owner-dash-lead-card--compact .owner-dash-card-actions {
    max-width: 100%;
  }

  .page-owner-dashboard .owner-dash-lead-card--compact .owner-dash-btn {
    max-width: 100%;
  }
}

/* Owner Command Dashboard v5 — priority, pipeline, grouped tools */
.page-owner-dashboard .owner-dash-summary-grid--v5 {
  grid-template-columns: 1fr;
}

@media (min-width: 640px) {
  .page-owner-dashboard .owner-dash-summary-grid--v5 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) {
  .page-owner-dashboard .owner-dash-summary-grid--v5 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.page-owner-dashboard .owner-dash-stat--compact {
  padding: clamp(12px, 1.8vw, 16px);
}

.page-owner-dashboard .owner-dash-stat--compact .owner-dash-stat-value {
  font-size: clamp(1.55rem, 3.5vw, 2rem);
}

.page-owner-dashboard .owner-dash-stat-value--hot {
  color: #ff8a6b;
}

@media (max-width: 639px) {
  .page-owner-dashboard .owner-dash-stat--mobile-optional {
    display: none;
  }

  .page-owner-dashboard .owner-dash-stat--compact {
    padding: 9px 10px;
  }

  .page-owner-dashboard .owner-dash-stat--compact .owner-dash-stat-value {
    font-size: clamp(1.35rem, 5.4vw, 1.65rem);
  }
}

.page-owner-dashboard .owner-dash-badge--warm {
  background: rgba(255, 180, 80, 0.16);
  border: 1px solid rgba(255, 180, 80, 0.45);
  color: #ffe4c4;
}

.page-owner-dashboard .owner-dash-badge--low {
  background: rgba(148, 163, 184, 0.18);
  border: 1px solid rgba(148, 163, 184, 0.35);
  color: rgba(226, 232, 240, 0.88);
}

.page-owner-dashboard .owner-dash-priority-filters {
  margin-top: -8px;
  margin-bottom: 16px;
}

.page-owner-dashboard .owner-dash-next-action {
  margin: 0 0 10px;
  padding: 8px 10px;
  border-radius: 10px;
  font-size: 0.82rem;
  line-height: 1.4;
  color: rgba(255, 246, 230, 0.88);
  background: rgba(255, 139, 31, 0.1);
  border: 1px solid rgba(255, 139, 31, 0.28);
  overflow-wrap: normal;
}

.page-owner-dashboard .owner-dash-next-action-label {
  display: inline-block;
  margin-right: 6px;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(255, 180, 80, 0.95);
}


.page-owner-dashboard .owner-dash-queue-reason {
  margin: -2px 0 10px;
  padding: 6px 9px;
  border-radius: 10px;
  background: rgba(20, 184, 166, 0.09);
  border: 1px solid rgba(20, 184, 166, 0.24);
  color: rgba(255, 246, 230, 0.84);
  font-size: 0.78rem;
  line-height: 1.4;
}

.page-owner-dashboard .owner-dash-queue-reason span {
  display: inline-block;
  margin-right: 5px;
  font-size: 0.66rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(20, 184, 166, 0.95);
}

.page-owner-dashboard .owner-dash-lead-card.is-queue-focus {
  border-color: rgba(255, 139, 31, 0.72);
  box-shadow:
    0 18px 42px rgba(0, 0, 0, 0.34),
    0 0 0 3px rgba(255, 139, 31, 0.16),
    inset 0 1px 0 rgba(255, 246, 230, 0.08);
}

.page-owner-dashboard .owner-dash-pipeline {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  min-width: 0;
}

.page-owner-dashboard .owner-dash-pipeline-step {
  padding: 5px 10px;
  border-radius: 999px;
  font-size: 0.72rem;
  font-weight: 700;
  color: rgba(255, 246, 230, 0.62);
  background: rgba(4, 10, 22, 0.45);
  border: 1px solid rgba(255, 246, 230, 0.12);
}

.page-owner-dashboard .owner-dash-pipeline-step.is-current {
  color: #c8fff5;
  background: rgba(20, 184, 166, 0.2);
  border-color: rgba(20, 184, 166, 0.55);
}

.page-owner-dashboard .owner-dash-pipeline-arrow {
  font-size: 0.72rem;
  color: rgba(255, 246, 230, 0.35);
}

.page-owner-dashboard .owner-dash-pipeline--quick {
  margin: 0 0 10px;
}

.page-owner-dashboard .owner-dash-detail-section--pipeline {
  margin-bottom: 14px;
  padding-top: 0;
  border-top: 0;
}

.page-owner-dashboard .owner-dash-tool-groups {
  display: grid;
  gap: 12px;
  min-width: 0;
}

.page-owner-dashboard .owner-dash-tool-group {
  padding: 10px 12px;
  border-radius: 12px;
  background: rgba(4, 10, 22, 0.42);
  border: 1px solid rgba(255, 246, 230, 0.08);
  min-width: 0;
}

.page-owner-dashboard .owner-dash-tool-group-label {
  margin: 0 0 8px;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(20, 184, 166, 0.9);
}

.page-owner-dashboard .owner-dash-tool-group-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  min-width: 0;
}

.page-owner-dashboard .owner-dash-detail-section--tools .owner-dash-btn {
  flex: 1 1 calc(50% - 4px);
  min-width: 0;
  max-width: 100%;
  white-space: normal;
  text-align: center;
  line-height: 1.25;
  padding-top: 8px;
  padding-bottom: 8px;
}

@media (min-width: 520px) {
  .page-owner-dashboard .owner-dash-detail-section--tools .owner-dash-btn {
    flex: 1 1 auto;
    white-space: nowrap;
  }
}

.page-owner-dashboard .owner-dash-detail-section--tools .owner-dash-detail-copy-feedback {
  margin-top: 10px;
}

.page-owner-dashboard .owner-dash-lead-card--compact .owner-dash-next-action {
  margin-bottom: 8px;
  padding: 6px 9px;
  font-size: 0.78rem;
}

/* Owner Command Dashboard v6 — opportunity value + offer builder */
.page-owner-dashboard .owner-dash-opportunity-row {
  margin: 0 0 10px;
  padding: 7px 10px;
  border-radius: 10px;
  font-size: 0.78rem;
  line-height: 1.4;
  color: rgba(255, 246, 230, 0.9);
  background: rgba(20, 184, 166, 0.08);
  border: 1px solid rgba(20, 184, 166, 0.28);
  overflow-wrap: normal;
}

.page-owner-dashboard .owner-dash-opportunity-label {
  font-size: 0.66rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(20, 184, 166, 0.95);
}

.page-owner-dashboard .owner-dash-opportunity-sep {
  opacity: 0.55;
}

.page-owner-dashboard .owner-dash-opportunity-tier {
  font-weight: 700;
  color: #c8fff5;
}

.page-owner-dashboard .owner-dash-detail-section--opportunity {
  margin-bottom: 16px;
  padding: 12px 14px;
  border-radius: 14px;
  background: rgba(4, 10, 22, 0.5);
  border: 1px solid rgba(20, 184, 166, 0.22);
  min-width: 0;
}

.page-owner-dashboard .owner-dash-detail-section--opportunity .owner-dash-detail-section-title {
  margin-bottom: 10px;
  color: #c8fff5;
}

.page-owner-dashboard .owner-dash-opportunity-head {
  display: grid;
  gap: 6px;
  margin-bottom: 10px;
}

.page-owner-dashboard .owner-dash-opportunity-offer-line {
  margin: 0;
  font-size: 0.86rem;
  line-height: 1.45;
  color: rgba(255, 246, 230, 0.92);
  overflow-wrap: normal;
}

.page-owner-dashboard .owner-dash-opportunity-k {
  display: block;
  margin-bottom: 3px;
  font-size: 0.66rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(20, 184, 166, 0.9);
}

.page-owner-dashboard .owner-dash-opportunity-blurb .owner-dash-opportunity-k {
  display: inline;
  margin: 0 6px 0 0;
}

.page-owner-dashboard .owner-dash-opportunity-tier-badge {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 0.72rem;
  font-weight: 800;
  color: #ffe4c4;
  background: rgba(255, 139, 31, 0.14);
  border: 1px solid rgba(255, 139, 31, 0.35);
}

.page-owner-dashboard .owner-dash-opportunity-blurb {
  margin: 0 0 10px;
  font-size: 0.82rem;
  line-height: 1.5;
  color: rgba(255, 246, 230, 0.86);
  overflow-wrap: normal;
}

.page-owner-dashboard .owner-dash-opportunity-preview-grid {
  display: grid;
  gap: 10px;
  margin: 12px 0;
  min-width: 0;
}

.page-owner-dashboard .owner-dash-opportunity-preview-card {
  padding: 10px 12px;
  border-radius: 12px;
  background: rgba(255, 246, 230, 0.055);
  border: 1px solid rgba(255, 246, 230, 0.1);
  min-width: 0;
}

.page-owner-dashboard .owner-dash-opportunity-preview-text {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  -webkit-box-orient: vertical;
  margin: 0;
  overflow: hidden;
  white-space: normal;
  overflow-wrap: normal;
  font-size: 0.82rem;
  line-height: 1.45;
  color: rgba(255, 246, 230, 0.82);
}

.page-owner-dashboard .owner-dash-opportunity-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  min-width: 0;
}

.page-owner-dashboard .owner-dash-detail-section--opportunity .owner-dash-btn {
  flex: 1 1 calc(50% - 4px);
  min-width: 0;
  max-width: 100%;
  white-space: normal;
  text-align: center;
  line-height: 1.25;
}

.page-owner-dashboard .owner-dash-detail-section--opportunity .owner-dash-btn--primary {
  flex: 1 1 100%;
}

@media (min-width: 520px) {
  .page-owner-dashboard .owner-dash-detail-section--opportunity .owner-dash-btn {
    flex: 1 1 auto;
    white-space: nowrap;
  }

  .page-owner-dashboard .owner-dash-detail-section--opportunity .owner-dash-btn--primary {
    flex: 1 1 auto;
  }
}

.page-owner-dashboard .owner-dash-detail-section--opportunity .owner-dash-detail-copy-feedback {
  display: block;
  margin-top: 8px;
}

/* Owner Command Dashboard v9 - proposal / deal builder */
.page-owner-dashboard .owner-dash-deal-row {
  background:
    linear-gradient(135deg, rgba(255, 139, 31, 0.12), rgba(20, 184, 166, 0.07));
  border-color: rgba(255, 139, 31, 0.28);
}

.page-owner-dashboard .owner-dash-detail-section--deal {
  margin-bottom: 16px;
  padding: 12px 14px;
  border-radius: 14px;
  background:
    linear-gradient(150deg, rgba(255, 139, 31, 0.1), transparent 58%),
    rgba(4, 10, 22, 0.54);
  border: 1px solid rgba(255, 139, 31, 0.24);
  min-width: 0;
}

.page-owner-dashboard .owner-dash-deal-head {
  display: grid;
  gap: 10px;
  margin-bottom: 12px;
  min-width: 0;
}

.page-owner-dashboard .owner-dash-detail-section--deal .owner-dash-detail-section-title {
  margin-bottom: 5px;
  color: #ffe4c4;
}

.page-owner-dashboard .owner-dash-deal-ready-btn {
  width: 100%;
  white-space: normal;
}

.page-owner-dashboard .owner-dash-deal-summary-grid {
  display: grid;
  gap: 8px;
  margin-bottom: 12px;
  min-width: 0;
}

.page-owner-dashboard .owner-dash-deal-metric {
  padding: 9px 10px;
  border-radius: 12px;
  background: rgba(255, 246, 230, 0.055);
  border: 1px solid rgba(255, 246, 230, 0.1);
  min-width: 0;
}

.page-owner-dashboard .owner-dash-deal-metric span,
.page-owner-dashboard .owner-dash-deal-k {
  display: block;
  margin: 0 0 4px;
  font-size: 0.66rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(255, 196, 120, 0.92);
}

.page-owner-dashboard .owner-dash-deal-metric strong {
  display: block;
  font-size: 0.86rem;
  line-height: 1.35;
  color: rgba(255, 246, 230, 0.94);
  overflow-wrap: normal;
}

.page-owner-dashboard .owner-dash-deal-scope,
.page-owner-dashboard .owner-dash-deal-preview {
  margin: 0 0 12px;
  min-width: 0;
}

.page-owner-dashboard .owner-dash-deal-lists {
  display: grid;
  gap: 10px;
  margin: 0 0 12px;
  min-width: 0;
}

.page-owner-dashboard .owner-dash-deal-list {
  margin: 0;
  padding-left: 18px;
  display: grid;
  gap: 4px;
  font-size: 0.81rem;
  line-height: 1.42;
  color: rgba(255, 246, 230, 0.84);
  overflow-wrap: normal;
}

.page-owner-dashboard .owner-dash-deal-preview {
  padding: 10px 11px;
  border-radius: 12px;
  background: rgba(20, 184, 166, 0.07);
  border: 1px solid rgba(20, 184, 166, 0.15);
}

.page-owner-dashboard .owner-dash-deal-preview-text {
  display: -webkit-box;
  -webkit-line-clamp: 4;
  line-clamp: 4;
  -webkit-box-orient: vertical;
  margin: 0;
  overflow: hidden;
  white-space: normal;
  overflow-wrap: normal;
  font-size: 0.82rem;
  line-height: 1.45;
  color: rgba(255, 246, 230, 0.84);
}

.page-owner-dashboard .owner-dash-deal-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  min-width: 0;
}

.page-owner-dashboard .owner-dash-detail-section--deal .owner-dash-btn {
  flex: 1 1 calc(50% - 4px);
  min-width: 0;
  max-width: 100%;
  white-space: normal;
  text-align: center;
  line-height: 1.25;
}

.page-owner-dashboard .owner-dash-detail-section--deal .owner-dash-btn--primary {
  flex: 1 1 100%;
}

.page-owner-dashboard .owner-dash-detail-section--deal .owner-dash-detail-copy-feedback,
.page-owner-dashboard .owner-dash-deal-feedback {
  display: block;
  margin-top: 8px;
}

.page-owner-dashboard .owner-dash-deal-feedback {
  font-size: 0.78rem;
  color: rgba(94, 234, 212, 0.95);
}

.page-owner-dashboard .owner-dash-deal-feedback--error {
  color: #fca5a5;
}

@media (min-width: 560px) {
  .page-owner-dashboard .owner-dash-deal-head {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
  }

  .page-owner-dashboard .owner-dash-deal-ready-btn {
    width: auto;
  }

  .page-owner-dashboard .owner-dash-deal-summary-grid,
  .page-owner-dashboard .owner-dash-deal-lists {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .page-owner-dashboard .owner-dash-deal-metric--wide {
    grid-column: 1 / -1;
  }

  .page-owner-dashboard .owner-dash-detail-section--deal .owner-dash-btn {
    flex: 1 1 auto;
    white-space: nowrap;
  }

  .page-owner-dashboard .owner-dash-detail-section--deal .owner-dash-btn--primary {
    flex: 1 1 auto;
  }
}

/* Owner Command Dashboard v10 - proposal sent / deal stage tracker */
.page-owner-dashboard .owner-dash-deal-stage-card-row {
  margin: -2px 0 10px;
  font-size: 0.78rem;
  line-height: 1.35;
  color: rgba(255, 246, 230, 0.78);
  overflow-wrap: normal;
}

.page-owner-dashboard .owner-dash-deal-stage-card-row span {
  font-size: 0.66rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(255, 196, 120, 0.9);
}

.page-owner-dashboard .owner-dash-detail-section--deal-stage {
  margin-bottom: 16px;
  padding: 12px 14px;
  border-radius: 14px;
  background:
    linear-gradient(150deg, rgba(20, 184, 166, 0.1), transparent 58%),
    rgba(4, 10, 22, 0.54);
  border: 1px solid rgba(20, 184, 166, 0.24);
  min-width: 0;
}

.page-owner-dashboard .owner-dash-stage-head {
  display: grid;
  gap: 10px;
  margin-bottom: 10px;
  min-width: 0;
}

.page-owner-dashboard .owner-dash-detail-section--deal-stage .owner-dash-detail-section-title {
  margin-bottom: 5px;
  color: #c8fff5;
}

.page-owner-dashboard .owner-dash-stage-current {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
  min-width: 0;
}

.page-owner-dashboard .owner-dash-stage-current span {
  font-size: 0.66rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(20, 184, 166, 0.9);
}

.page-owner-dashboard .owner-dash-stage-pill {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  padding: 5px 10px;
  border-radius: 999px;
  font-size: 0.74rem;
  line-height: 1.2;
  color: #c8fff5;
  background: rgba(20, 184, 166, 0.18);
  border: 1px solid rgba(20, 184, 166, 0.48);
  overflow-wrap: normal;
}

.page-owner-dashboard .owner-dash-stage-pill--won {
  color: #dcfff8;
  background: rgba(20, 184, 166, 0.24);
}

.page-owner-dashboard .owner-dash-stage-pill--lost,
.page-owner-dashboard .owner-dash-stage-pill--archived,
.page-owner-dashboard .owner-dash-stage-pill--not-a-fit {
  color: rgba(226, 232, 240, 0.9);
  background: rgba(148, 163, 184, 0.18);
  border-color: rgba(148, 163, 184, 0.35);
}

.page-owner-dashboard .owner-dash-stage-pill--follow-up-due {
  color: #ffe4c4;
  background: rgba(255, 139, 31, 0.16);
  border-color: rgba(255, 139, 31, 0.42);
}

.page-owner-dashboard .owner-dash-stage-explanation,
.page-owner-dashboard .owner-dash-stage-safe-note {
  margin: 0 0 10px;
  font-size: 0.8rem;
  line-height: 1.45;
  color: rgba(255, 246, 230, 0.78);
  overflow-wrap: normal;
}

.page-owner-dashboard .owner-dash-stage-actions,
.page-owner-dashboard .owner-dash-stage-copy-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  min-width: 0;
}

.page-owner-dashboard .owner-dash-stage-actions {
  margin-bottom: 12px;
}

.page-owner-dashboard .owner-dash-stage-copy {
  padding: 10px 11px;
  border-radius: 12px;
  background: rgba(255, 246, 230, 0.055);
  border: 1px solid rgba(255, 246, 230, 0.1);
  min-width: 0;
}

.page-owner-dashboard .owner-dash-stage-safe-note {
  margin: 8px 0 0;
  font-size: 0.76rem;
  color: rgba(255, 246, 230, 0.58);
}

.page-owner-dashboard .owner-dash-detail-section--deal-stage .owner-dash-btn {
  flex: 1 1 calc(50% - 4px);
  min-width: 0;
  max-width: 100%;
  white-space: normal;
  text-align: center;
  line-height: 1.25;
}

.page-owner-dashboard .owner-dash-detail-section--deal-stage .owner-dash-btn--primary {
  flex: 1 1 100%;
}

.page-owner-dashboard .owner-dash-detail-section--deal-stage .owner-dash-detail-copy-feedback,
.page-owner-dashboard .owner-dash-deal-stage-feedback {
  display: block;
  margin-top: 8px;
}

.page-owner-dashboard .owner-dash-deal-stage-feedback {
  font-size: 0.78rem;
  color: rgba(94, 234, 212, 0.95);
}

.page-owner-dashboard .owner-dash-deal-stage-feedback--error {
  color: #fca5a5;
}

@media (min-width: 560px) {
  .page-owner-dashboard .owner-dash-stage-head {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
  }

  .page-owner-dashboard .owner-dash-detail-section--deal-stage .owner-dash-btn {
    flex: 1 1 auto;
    white-space: nowrap;
  }

  .page-owner-dashboard .owner-dash-detail-section--deal-stage .owner-dash-btn--primary {
    flex: 1 1 auto;
  }
}

/* Owner Command Dashboard v11 - proposal / estimate generator */
.page-owner-dashboard .owner-dash-detail-section--proposal {
  margin-bottom: 16px;
  padding: 11px 12px;
  border-radius: 14px;
  background:
    linear-gradient(150deg, rgba(255, 139, 31, 0.16), rgba(255, 178, 56, 0.05) 46%, transparent 72%),
    rgba(4, 10, 22, 0.58);
  border: 1px solid rgba(255, 139, 31, 0.34);
  box-shadow: inset 0 1px 0 rgba(255, 246, 230, 0.06);
  min-width: 0;
}

.page-owner-dashboard .owner-dash-proposal-head {
  display: grid;
  gap: 9px;
  margin-bottom: 10px;
  min-width: 0;
}

.page-owner-dashboard .owner-dash-detail-section--proposal .owner-dash-detail-section-title {
  margin-bottom: 5px;
  color: #ffe4c4;
}

.page-owner-dashboard .owner-dash-proposal-ready-btn {
  width: 100%;
  white-space: normal;
}

.page-owner-dashboard .owner-dash-proposal-types,
.page-owner-dashboard .owner-dash-proposal-actions {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
  margin-bottom: 10px;
  min-width: 0;
}

.page-owner-dashboard .owner-dash-detail-section--proposal .owner-dash-btn {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  white-space: normal;
  text-align: center;
  line-height: 1.25;
}

.page-owner-dashboard .owner-dash-detail-section--proposal .owner-dash-btn.is-active {
  box-shadow:
    0 0 0 1px rgba(255, 246, 230, 0.12),
    0 10px 20px rgba(255, 139, 31, 0.16);
}

.page-owner-dashboard .owner-dash-proposal-preview-card {
  display: grid;
  gap: 9px;
  margin-bottom: 10px;
  padding: 10px;
  border-radius: 12px;
  background: rgba(255, 246, 230, 0.055);
  border: 1px solid rgba(255, 196, 120, 0.14);
  min-width: 0;
}

.page-owner-dashboard .owner-dash-proposal-metrics,
.page-owner-dashboard .owner-dash-proposal-lists {
  display: grid;
  gap: 8px;
  min-width: 0;
}

.page-owner-dashboard .owner-dash-proposal-outcome,
.page-owner-dashboard .owner-dash-proposal-next {
  min-width: 0;
}

.page-owner-dashboard .owner-dash-proposal-outcome-text {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  -webkit-box-orient: vertical;
  margin: 0;
  overflow: hidden;
  font-size: 0.81rem;
  line-height: 1.43;
  color: rgba(255, 246, 230, 0.84);
  overflow-wrap: normal;
}

.page-owner-dashboard .owner-dash-detail-section--proposal .owner-dash-deal-list {
  gap: 3px;
  font-size: 0.78rem;
  line-height: 1.36;
}

.page-owner-dashboard .owner-dash-proposal-next {
  margin: 0;
  font-size: 0.81rem;
  line-height: 1.43;
  color: rgba(255, 246, 230, 0.84);
  overflow-wrap: normal;
}

.page-owner-dashboard .owner-dash-proposal-safe-note {
  margin: 0;
  font-size: 0.76rem;
  line-height: 1.4;
  color: rgba(255, 246, 230, 0.58);
}

.page-owner-dashboard .owner-dash-detail-section--proposal .owner-dash-detail-copy-feedback,
.page-owner-dashboard .owner-dash-detail-section--proposal .owner-dash-deal-feedback {
  display: block;
  margin-top: 8px;
}

.page-owner-dashboard .owner-dash-detail-section--proposal .owner-dash-deal-feedback {
  font-size: 0.78rem;
  color: rgba(94, 234, 212, 0.95);
}

.page-owner-dashboard .owner-dash-detail-section--proposal .owner-dash-deal-feedback--error {
  color: #fca5a5;
}

@media (min-width: 560px) {
  .page-owner-dashboard .owner-dash-proposal-head {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
  }

  .page-owner-dashboard .owner-dash-proposal-ready-btn {
    width: auto;
  }

  .page-owner-dashboard .owner-dash-proposal-types,
  .page-owner-dashboard .owner-dash-proposal-actions,
  .page-owner-dashboard .owner-dash-proposal-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .page-owner-dashboard .owner-dash-proposal-actions .owner-dash-btn:first-child,
  .page-owner-dashboard .owner-dash-proposal-actions .owner-dash-btn:last-child {
    grid-column: 1 / -1;
  }
}

@media (min-width: 760px) {
  .page-owner-dashboard .owner-dash-proposal-lists {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.page-owner-dashboard .owner-dash-collapsible {
  margin: 0 0 14px;
  min-width: 0;
}

.page-owner-dashboard .owner-dash-collapsible-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  width: 100%;
  padding: 11px 13px;
  border-radius: 12px;
  border: 1px solid rgba(20, 184, 166, 0.3);
  background: rgba(20, 184, 166, 0.1);
  color: rgba(255, 246, 230, 0.94);
  font-size: 0.82rem;
  font-weight: 800;
  cursor: pointer;
  list-style: none;
  min-width: 0;
}

.page-owner-dashboard .owner-dash-collapsible-summary::-webkit-details-marker {
  display: none;
}

.page-owner-dashboard .owner-dash-collapsible-summary::after {
  content: "+";
  flex-shrink: 0;
  color: rgba(20, 184, 166, 0.95);
  font-size: 1rem;
  line-height: 1;
}

.page-owner-dashboard .owner-dash-collapsible[open] .owner-dash-collapsible-summary::after {
  content: "-";
}

.page-owner-dashboard .owner-dash-collapsible-summary:focus-visible {
  outline: 2px solid rgba(255, 139, 31, 0.65);
  outline-offset: 2px;
}

.page-owner-dashboard .owner-dash-collapsible-body {
  margin-top: 10px;
  padding: 12px;
  border-radius: 12px;
  border: 1px solid rgba(255, 246, 230, 0.08);
  background: rgba(4, 10, 22, 0.38);
  overflow-x: hidden;
  min-width: 0;
}

.page-owner-dashboard .owner-dash-collapsible-body .owner-dash-detail-grid {
  margin-bottom: 0;
}

.page-owner-dashboard .owner-dash-collapsible-body .owner-dash-detail-alerts {
  margin: 12px 0 0;
  padding-top: 12px;
  border-top: 1px solid rgba(255, 246, 230, 0.08);
}

/* Owner Command Dashboard v14 - Pricing Builder */
.page-owner-dashboard .owner-dash-detail-section--pricing {
  margin-bottom: 16px;
  padding: 12px;
  border-radius: 16px;
  background:
    radial-gradient(circle at top right, rgba(255, 196, 120, 0.2), transparent 34%),
    linear-gradient(150deg, rgba(255, 139, 31, 0.18), rgba(255, 178, 56, 0.07) 48%, rgba(4, 10, 22, 0.68));
  border: 1px solid rgba(255, 180, 80, 0.36);
  box-shadow:
    inset 0 1px 0 rgba(255, 246, 230, 0.08),
    0 12px 28px rgba(0, 0, 0, 0.18);
  min-width: 0;
}

.page-owner-dashboard .owner-dash-pricing-head {
  display: grid;
  gap: 9px;
  margin-bottom: 10px;
  min-width: 0;
}

.page-owner-dashboard .owner-dash-detail-section--pricing .owner-dash-detail-section-title {
  margin-bottom: 5px;
  color: #ffe4c4;
}

.page-owner-dashboard .owner-dash-pricing-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: max-content;
  max-width: 100%;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(255, 196, 120, 0.16);
  border: 1px solid rgba(255, 196, 120, 0.42);
  color: #ffe4c4;
  font-size: 0.7rem;
  font-weight: 900;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.page-owner-dashboard .owner-dash-pricing-card-label {
  display: block;
  margin: 0 0 8px;
  font-size: 0.66rem;
  font-weight: 900;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: rgba(255, 210, 140, 0.95);
}

.page-owner-dashboard .owner-dash-pricing-card-label--full {
  grid-column: 1 / -1;
  margin-bottom: 0;
}

.page-owner-dashboard .owner-dash-pricing-money-card,
.page-owner-dashboard .owner-dash-pricing-caution article,
.page-owner-dashboard .owner-dash-pricing-copy {
  padding: 10px;
  border-radius: 13px;
  background: rgba(4, 10, 22, 0.5);
  border: 1px solid rgba(255, 220, 160, 0.14);
  min-width: 0;
}

.page-owner-dashboard .owner-dash-pricing-money-card {
  margin-bottom: 10px;
}

.page-owner-dashboard .owner-dash-pricing-logic {
  margin-bottom: 10px;
  padding: 9px 10px;
  border-radius: 12px;
  background: rgba(255, 196, 120, 0.09);
  border: 1px solid rgba(255, 196, 120, 0.22);
  min-width: 0;
}

.page-owner-dashboard .owner-dash-pricing-logic p:last-child {
  margin: 0;
  font-size: 0.8rem;
  line-height: 1.42;
  color: rgba(255, 246, 230, 0.8);
  overflow-wrap: normal;
}

.page-owner-dashboard .owner-dash-pricing-snapshot,
.page-owner-dashboard .owner-dash-pricing-caution,
.page-owner-dashboard .owner-dash-pricing-options {
  display: grid;
  gap: 8px;
  min-width: 0;
}

.page-owner-dashboard .owner-dash-pricing-snapshot-item {
  padding: 9px 10px;
  border-radius: 11px;
  background: rgba(255, 246, 230, 0.06);
  border: 1px solid rgba(255, 220, 160, 0.12);
  min-width: 0;
}

.page-owner-dashboard .owner-dash-pricing-snapshot-item span {
  display: block;
  margin: 0 0 4px;
  font-size: 0.65rem;
  font-weight: 900;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(255, 196, 120, 0.88);
}

.page-owner-dashboard .owner-dash-pricing-snapshot-item strong {
  display: block;
  font-size: 0.84rem;
  line-height: 1.35;
  color: rgba(255, 246, 230, 0.95);
  overflow-wrap: normal;
}

.page-owner-dashboard .owner-dash-pricing-caution {
  margin-bottom: 10px;
}

.page-owner-dashboard .owner-dash-pricing-caution strong {
  display: block;
  margin: 0 0 6px;
  font-size: 0.82rem;
  color: rgba(255, 246, 230, 0.92);
}

.page-owner-dashboard .owner-dash-pricing-list {
  margin: 0;
  padding-left: 17px;
  display: grid;
  gap: 3px;
  font-size: 0.78rem;
  line-height: 1.35;
  color: rgba(255, 246, 230, 0.8);
  overflow-wrap: normal;
}

.page-owner-dashboard .owner-dash-pricing-options {
  margin-bottom: 10px;
}

.page-owner-dashboard .owner-dash-pricing-option-card {
  padding: 10px;
  border-radius: 13px;
  background: rgba(255, 246, 230, 0.06);
  border: 1px solid rgba(255, 220, 160, 0.13);
  min-width: 0;
}

.page-owner-dashboard .owner-dash-pricing-option-card h4 {
  margin: 0 0 5px;
  color: #fff6e6;
  font-size: 0.88rem;
  line-height: 1.25;
}

.page-owner-dashboard .owner-dash-pricing-option-card p {
  margin: 0 0 7px;
  font-size: 0.78rem;
  line-height: 1.4;
  color: rgba(255, 246, 230, 0.78);
  overflow-wrap: normal;
}

.page-owner-dashboard .owner-dash-pricing-option-card strong {
  display: block;
  color: #ffe4c4;
  font-size: 0.8rem;
  line-height: 1.3;
}

.page-owner-dashboard .owner-dash-pricing-copy {
  margin-bottom: 10px;
}

.page-owner-dashboard .owner-dash-pricing-copy-actions,
.page-owner-dashboard .owner-dash-pricing-actions {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
  min-width: 0;
}

.page-owner-dashboard .owner-dash-pricing-actions {
  margin-bottom: 8px;
}

.page-owner-dashboard .owner-dash-detail-section--pricing .owner-dash-btn {
  width: 100%;
  min-height: 42px;
  min-width: 0;
  max-width: 100%;
  white-space: normal;
  text-align: center;
  line-height: 1.25;
}

.page-owner-dashboard .owner-dash-pricing-safe-note {
  margin: 0;
  font-size: 0.76rem;
  line-height: 1.4;
  color: rgba(255, 246, 230, 0.62);
}

.page-owner-dashboard .owner-dash-detail-section--pricing .owner-dash-detail-copy-feedback,
.page-owner-dashboard .owner-dash-pricing-feedback {
  display: block;
  margin-top: 8px;
}

.page-owner-dashboard .owner-dash-pricing-feedback {
  font-size: 0.78rem;
  font-weight: 800;
  color: rgba(94, 234, 212, 0.95);
}

.page-owner-dashboard .owner-dash-pricing-feedback--error {
  color: #fca5a5;
}

@media (min-width: 560px) {
  .page-owner-dashboard .owner-dash-pricing-head {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
  }

  .page-owner-dashboard .owner-dash-pricing-snapshot,
  .page-owner-dashboard .owner-dash-pricing-caution,
  .page-owner-dashboard .owner-dash-pricing-copy-actions,
  .page-owner-dashboard .owner-dash-pricing-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .page-owner-dashboard .owner-dash-pricing-snapshot-item--wide,
  .page-owner-dashboard .owner-dash-pricing-copy-actions .owner-dash-btn:first-child {
    grid-column: 1 / -1;
  }
}

@media (min-width: 760px) {
  .page-owner-dashboard .owner-dash-pricing-options {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* Owner Command Dashboard v19 - mobile word-break QA */
.page-owner-dashboard,
.page-owner-dashboard :is(
  h1,
  h2,
  h3,
  h4,
  p,
  li,
  span,
  strong,
  small,
  button,
  label,
  dt,
  dd,
  textarea,
  .owner-dash-btn,
  .owner-dash-filter,
  .owner-dash-tab,
  .owner-dash-pill,
  .owner-dash-badge,
  .owner-dash-detail-section-title
) {
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
}

.page-owner-dashboard :is(.owner-dash-btn, .owner-dash-filter, .owner-dash-tab) {
  white-space: normal;
  text-align: center;
  line-height: 1.25;
}

.page-owner-dashboard :is(
  .owner-dash-filter,
  .owner-dash-tab,
  .owner-dash-pill,
  .owner-dash-badge,
  .owner-dash-stage-pill,
  .owner-dash-pipeline-step
) {
  white-space: nowrap;
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
}

.page-owner-dashboard :is(
  .owner-dash-detail-link,
  .owner-dash-detail-value,
  .owner-dash-field dd,
  .owner-dash-page-path-value
) {
  overflow-wrap: break-word !important;
  word-break: normal !important;
  hyphens: none !important;
}

@media (max-width: 420px) {
  .page-owner-dashboard .owner-dash-detail-section-title {
    font-size: 0.72rem;
    letter-spacing: 0.035em;
    line-height: 1.28;
  }

  .page-owner-dashboard :is(
    .owner-dash-detail-eyebrow,
    .owner-dash-workflow-title,
    .owner-dash-workflow-label,
    .owner-dash-detail-label,
    .owner-dash-tool-group-label,
    .owner-dash-next-action-label,
    .owner-dash-queue-reason span,
    .owner-dash-opportunity-label,
    .owner-dash-opportunity-k,
    .owner-dash-deal-k,
    .owner-dash-deal-stage-card-row span,
    .owner-dash-stage-current span,
    .owner-dash-pricing-card-label
  ) {
    letter-spacing: 0.035em;
  }

  .page-owner-dashboard :is(
    .owner-dash-detail-section,
    .owner-dash-detail-section--followup,
    .owner-dash-detail-section--tools,
    .owner-dash-detail-section--opportunity,
    .owner-dash-detail-section--deal,
    .owner-dash-detail-section--deal-stage,
    .owner-dash-detail-section--proposal,
    .owner-dash-detail-section--pricing
  ) {
    margin-bottom: 12px;
  }

  .page-owner-dashboard .owner-dash-detail-body {
    padding: 12px 14px 22px;
  }

  .page-owner-dashboard .owner-dash-detail-head {
    padding: 12px 14px 10px;
  }
}

/* ==========================================================================
   Restaurants owner funnel — /restaurants/
   ========================================================================== */

.page-restaurants {
  --rest-gold-glow: rgba(242, 178, 26, 0.35);
  --rest-turq-glow: rgba(20, 184, 166, 0.28);
  overflow-x: clip;
}

.page-restaurants .restaurants-main,
.page-restaurants .rest-hero-shell,
.page-restaurants .routes-band-inner {
  min-width: 0;
  max-width: 100%;
}

.page-restaurants :where(
  h1,
  h2,
  h3,
  p,
  li,
  a,
  button,
  label,
  legend,
  span,
  strong,
  .btn,
  .hero-cue,
  .section-text,
  .rest-path-copy,
  .rest-benefit-list li,
  .rest-proof-card p,
  .rest-interest-check,
  .sms-consent-block,
  .sms-consent-checkbox,
  .sms-consent-help
) {
  word-break: normal;
  overflow-wrap: normal;
  hyphens: none;
  -webkit-hyphens: none;
}

.page-restaurants :where(
  p,
  li,
  .hero-text,
  .section-text,
  .rest-path-copy,
  .rest-benefit-list li,
  .rest-proof-card p,
  .rest-question-list li,
  .rest-interest-check,
  .rest-consent-note
) {
  letter-spacing: normal;
}

.page-restaurants :where(
  .eyebrow,
  .eyebrow-hero,
  .rest-path-label,
  .transport-intake-section__heading,
  .business-operator-check-legend,
  .rest-guardrail-title
) {
  overflow-wrap: normal;
  hyphens: none;
  -webkit-hyphens: none;
}

.page-restaurants .restaurants-main > .section {
  padding-top: clamp(34px, 4vw, 48px);
  padding-bottom: clamp(34px, 4vw, 48px);
}

.page-restaurants .restaurants-main > .section + .section.section-cream {
  border-top: 1px solid rgba(11, 29, 58, 0.06);
}

.page-restaurants .restaurants-main > .section.section-cream + .section.dark-showcase,
.page-restaurants .restaurants-main > .section.dark-showcase + .section.section-cream {
  box-shadow: inset 0 1px 0 rgba(255, 246, 230, 0.06);
}

.page-restaurants .rest-hero.hero-fiesta-dark {
  background:
    radial-gradient(ellipse 80% 60% at 20% 0%, rgba(20, 184, 166, 0.14), transparent 55%),
    radial-gradient(ellipse 70% 50% at 90% 20%, rgba(255, 106, 77, 0.12), transparent 50%),
    linear-gradient(165deg, var(--navy-deep) 0%, var(--navy) 48%, #0a1628 100%);
}

.page-restaurants .rest-hero-band {
  padding-top: clamp(22px, 3vw, 38px);
  padding-bottom: clamp(24px, 3.2vw, 40px);
}

.page-restaurants .rest-hero-shell {
  max-width: none;
}

.page-restaurants .rest-hero-body {
  position: relative;
  padding-left: clamp(14px, 2vw, 20px);
}

.page-restaurants .rest-hero-accent {
  position: absolute;
  left: 0;
  top: 0.35rem;
  bottom: 0.35rem;
  width: 3px;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--gold), var(--turquoise), var(--coral));
  box-shadow: 0 0 18px var(--rest-gold-glow);
}

.page-restaurants .rest-hero-lead {
  max-width: 36rem;
}

.page-restaurants .rest-hero-cues {
  margin-top: clamp(4px, 0.8vw, 8px);
  align-items: stretch;
}

.page-restaurants .rest-hero-cues .hero-cue {
  align-items: center;
  min-width: 0;
  min-height: 3.25rem;
  padding: 12px 14px;
}

.page-restaurants .rest-hero-cues .hero-cue strong {
  min-width: 0;
  line-height: 1.25;
  letter-spacing: normal;
}

.page-restaurants .rest-hero-cue span {
  background: linear-gradient(135deg, var(--gold), var(--coral));
}

.page-restaurants .rest-hero-cta {
  margin-top: clamp(10px, 1.6vw, 16px);
  gap: clamp(10px, 1.4vw, 14px);
}

.page-restaurants .rest-hero-cta .btn {
  min-height: 48px;
  white-space: normal;
  text-align: center;
  justify-content: center;
}

.page-restaurants .rest-hero-cta .btn-primary {
  box-shadow: 0 10px 28px rgba(255, 106, 77, 0.28);
}

.page-restaurants .rest-hero-visual {
  margin-top: clamp(4px, 1vw, 0);
}

.page-restaurants .rest-hero-visual .hero-inner-panel {
  border-color: rgba(242, 178, 26, 0.42);
  box-shadow:
    0 28px 52px rgba(0, 0, 0, 0.34),
    0 0 0 1px rgba(242, 178, 26, 0.45),
    0 0 64px rgba(20, 184, 166, 0.16);
}

.page-restaurants .rest-band-head {
  max-width: 40rem;
  margin-bottom: 0;
}

.page-restaurants .rest-sec--proof .rest-band-head {
  margin-bottom: 0;
}

.page-restaurants .rest-band-head--dark {
  max-width: 42rem;
}

.page-restaurants .rest-why-inner {
  max-width: 52rem;
}

.page-restaurants .rest-question-list {
  display: grid;
  gap: clamp(12px, 2vw, 16px);
  margin: 0;
  padding: 0;
  list-style: none;
}

@media (min-width: 640px) {
  .page-restaurants .rest-question-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(14px, 2vw, 18px);
  }
}

@media (min-width: 960px) {
  .page-restaurants .rest-question-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.page-restaurants .rest-question-list li {
  position: relative;
  margin: 0;
  padding: 14px 38px 14px 20px;
  min-height: 3.9rem;
  min-width: 0;
  border-radius: calc(var(--radius) - 4px);
  font-size: clamp(0.9rem, 0.2vw + 0.86rem, 0.96rem);
  font-weight: 650;
  line-height: 1.45;
  color: var(--navy);
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid rgba(11, 29, 58, 0.09);
  box-shadow: 0 10px 26px rgba(11, 29, 58, 0.06);
  overflow: hidden;
  display: flex;
  align-items: center;
  cursor: default;
}

.page-restaurants .rest-question-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 10px;
  bottom: 10px;
  width: 3px;
  border-radius: 0 999px 999px 0;
  background: linear-gradient(180deg, var(--gold), var(--turquoise));
  box-shadow: 0 0 12px var(--rest-gold-glow);
}

.page-restaurants .rest-question-card--downtown::before {
  background: linear-gradient(180deg, var(--coral), var(--gold));
}

.page-restaurants .rest-question-card--business::before {
  background: linear-gradient(180deg, var(--navy), var(--turquoise));
}

.page-restaurants .rest-question-card--family::before {
  background: linear-gradient(180deg, var(--turquoise), var(--gold));
}

.page-restaurants .rest-question-card--airport::before {
  background: linear-gradient(180deg, var(--gold), var(--navy));
}

.page-restaurants .rest-question-card--special::before {
  background: linear-gradient(180deg, var(--coral), var(--turquoise));
}

.page-restaurants .rest-question-list li::after {
  content: "?";
  position: absolute;
  right: 14px;
  top: 50%;
  width: 1.35rem;
  text-align: center;
  transform: translateY(-50%);
  font-size: 1.15rem;
  font-weight: 800;
  line-height: 1;
  color: rgba(11, 29, 58, 0.1);
  pointer-events: none;
}

.page-restaurants .rest-sec--paths {
  padding-top: clamp(36px, 4.5vw, 52px);
  padding-bottom: clamp(36px, 4.5vw, 52px);
}

.page-restaurants .rest-path-grid {
  display: grid;
  gap: clamp(16px, 2.4vw, 20px);
  margin-top: clamp(10px, 1.6vw, 16px);
  align-items: stretch;
}

@media (min-width: 768px) {
  .page-restaurants .rest-path-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(18px, 2.6vw, 24px);
  }
}

.page-restaurants .rest-path-card {
  display: flex;
  flex-direction: column;
  gap: clamp(8px, 1.2vw, 12px);
  min-width: 0;
  padding: clamp(18px, 2.2vw, 24px);
  border-radius: calc(var(--radius) - 2px);
  background: rgba(255, 246, 230, 0.07);
  border: 1px solid rgba(255, 246, 230, 0.16);
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.18);
  min-height: 100%;
}

.page-restaurants .rest-path-card-head {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
}

.page-restaurants .rest-path-icon {
  flex-shrink: 0;
  width: 2.5rem;
  height: 2.5rem;
  margin-top: 2px;
  border-radius: 12px;
  border: 1px solid rgba(255, 246, 230, 0.2);
  background: rgba(255, 246, 230, 0.08);
  position: relative;
}

.page-restaurants .rest-path-icon::before,
.page-restaurants .rest-path-icon::after {
  content: "";
  position: absolute;
  border-radius: 999px;
}

.page-restaurants .rest-path-icon--visibility::before {
  inset: 9px 9px 9px 9px;
  border: 2px solid var(--gold);
  background: transparent;
  border-radius: 50%;
}

.page-restaurants .rest-path-icon--visibility::after {
  width: 6px;
  height: 6px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: var(--gold);
}

.page-restaurants .rest-path-icon--systems::before {
  left: 8px;
  right: 8px;
  top: 10px;
  height: 4px;
  background: var(--turquoise);
  box-shadow: 0 7px 0 var(--turquoise), 0 14px 0 rgba(20, 184, 166, 0.55);
}

.page-restaurants .rest-path-card--partner {
  border-color: rgba(242, 178, 26, 0.34);
  background:
    linear-gradient(165deg, rgba(242, 178, 26, 0.08) 0%, transparent 42%),
    rgba(255, 246, 230, 0.06);
}

.page-restaurants .rest-path-card--ai {
  border-color: rgba(20, 184, 166, 0.34);
  background:
    linear-gradient(165deg, rgba(20, 184, 166, 0.1) 0%, transparent 42%),
    rgba(255, 246, 230, 0.06);
}

.page-restaurants .rest-path-label {
  margin: 0 0 4px;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  line-height: 1.25;
  text-transform: uppercase;
  color: var(--gold);
}

.page-restaurants .rest-path-card--ai .rest-path-label {
  color: var(--turquoise);
}

.page-restaurants .rest-path-title {
  margin: 0;
  font-size: clamp(1.08rem, 0.5vw + 1rem, 1.22rem);
  letter-spacing: -0.02em;
  line-height: 1.25;
  color: var(--on-dark-heading);
}

.page-restaurants .rest-path-copy {
  margin: 0;
  flex: 1 1 auto;
  font-size: clamp(0.9rem, 0.15vw + 0.86rem, 0.94rem);
  line-height: 1.55;
  color: var(--on-dark-body);
}

.page-restaurants .rest-path-cta {
  align-self: stretch;
  margin-top: auto;
  min-height: 48px;
  padding: 12px 16px;
  text-align: center;
  white-space: normal;
  align-items: center;
  justify-content: center;
}

.page-restaurants .rest-path-cta--partner {
  border-color: rgba(242, 178, 26, 0.45);
}

.page-restaurants .rest-path-cta--partner:hover {
  border-color: rgba(242, 178, 26, 0.65);
  background: rgba(242, 178, 26, 0.1);
}

.page-restaurants .rest-path-cta--ai {
  border-color: rgba(20, 184, 166, 0.45);
}

.page-restaurants .rest-path-cta--ai:hover {
  border-color: rgba(20, 184, 166, 0.65);
  background: rgba(20, 184, 166, 0.1);
}

.page-restaurants .rest-detail-grid {
  display: grid;
  gap: clamp(20px, 3vw, 28px);
  align-items: center;
}

@media (min-width: 900px) {
  .page-restaurants .rest-detail-grid {
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
  }

  .page-restaurants .rest-detail-grid--reverse {
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
  }

  .page-restaurants .rest-detail-grid--reverse .rest-detail-visual {
    order: -1;
  }
}

.page-restaurants .rest-detail-copy h2 {
  margin: 0 0 12px;
  font-size: clamp(1.35rem, 1.2vw + 1.1rem, 1.85rem);
  letter-spacing: -0.025em;
  line-height: 1.18;
  color: var(--navy);
}

.page-restaurants .rest-detail-copy--dark h2 {
  color: var(--on-dark-heading);
}

.page-restaurants .rest-benefit-list {
  margin: clamp(14px, 2vw, 18px) 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 10px;
}

.page-restaurants .rest-benefit-list li {
  position: relative;
  margin: 0;
  padding-left: 1.35rem;
  min-width: 0;
  font-size: 0.92rem;
  line-height: 1.5;
  color: rgba(11, 29, 58, 0.88);
}

.page-restaurants .rest-benefit-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.55em;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--gold), var(--turquoise));
}

.page-restaurants .rest-benefit-list--dark li {
  color: var(--on-dark-body);
}

.page-restaurants .rest-detail-visual {
  margin: 0;
  border-radius: calc(var(--radius) + 2px);
  overflow: hidden;
  box-shadow: 0 18px 40px rgba(11, 29, 58, 0.14);
  border: 1px solid rgba(11, 29, 58, 0.1);
}

.page-restaurants .rest-sec--ai .rest-detail-visual {
  border-color: rgba(20, 184, 166, 0.22);
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.28);
}

.page-restaurants .rest-detail-visual img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

.page-restaurants .rest-ai-plug-note {
  margin: clamp(14px, 2vw, 18px) 0 0;
  font-size: 0.88rem;
  color: var(--on-dark-body-soft);
}

.page-restaurants .rest-soft-cta {
  margin: clamp(16px, 2.2vw, 22px) 0 0;
}

.page-restaurants .rest-soft-cta-link {
  display: inline-flex;
  align-items: center;
  gap: 0.35em;
  font-size: clamp(0.92rem, 0.2vw + 0.88rem, 0.96rem);
  font-weight: 700;
  line-height: 1.4;
  text-decoration: none;
  color: var(--navy);
  padding: 0.15em 0;
  border-bottom: 2px solid rgba(242, 178, 26, 0.55);
  transition: color 0.15s ease, border-color 0.15s ease, gap 0.15s ease;
}

.page-restaurants .rest-soft-cta-link::after {
  content: "\2192";
  font-size: 1.05em;
  line-height: 1;
  opacity: 0.72;
  transition: transform 0.15s ease, opacity 0.15s ease;
}

.page-restaurants .rest-soft-cta-link:hover {
  color: #081528;
  border-color: var(--gold);
}

.page-restaurants .rest-soft-cta-link:hover::after {
  opacity: 1;
  transform: translateX(3px);
}

.page-restaurants .rest-soft-cta-link--partner {
  border-bottom-color: rgba(242, 178, 26, 0.55);
}

.page-restaurants .rest-soft-cta--dark .rest-soft-cta-link,
.page-restaurants .rest-soft-cta-link--ai {
  color: rgba(255, 246, 230, 0.94);
  border-bottom-color: rgba(20, 184, 166, 0.55);
}

.page-restaurants .rest-soft-cta--dark .rest-soft-cta-link:hover,
.page-restaurants .rest-soft-cta-link--ai:hover {
  color: #fff;
  border-bottom-color: var(--turquoise);
}

.page-restaurants .rest-proof-lead {
  max-width: 40rem;
}

.page-restaurants .rest-proof-grid {
  display: grid;
  gap: clamp(12px, 1.8vw, 16px);
  margin: 0;
  padding: 0;
  list-style: none;
}

@media (min-width: 640px) {
  .page-restaurants .rest-proof-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 960px) {
  .page-restaurants .rest-proof-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.page-restaurants .rest-proof-card {
  position: relative;
  min-width: 0;
  padding: clamp(16px, 2vw, 20px) clamp(16px, 2vw, 20px) clamp(16px, 2vw, 20px) clamp(18px, 2.2vw, 22px);
  border-radius: calc(var(--radius) - 4px);
  background: rgba(255, 255, 255, 0.88);
  border: 1px solid rgba(11, 29, 58, 0.08);
  box-shadow: 0 10px 24px rgba(11, 29, 58, 0.05);
  overflow: hidden;
}

.page-restaurants .rest-proof-accent {
  position: absolute;
  left: 0;
  top: 12px;
  bottom: 12px;
  width: 3px;
  border-radius: 0 999px 999px 0;
  background: linear-gradient(180deg, var(--gold), var(--turquoise));
}

.page-restaurants .rest-proof-card:nth-child(2) .rest-proof-accent {
  background: linear-gradient(180deg, var(--coral), var(--gold));
}

.page-restaurants .rest-proof-card:nth-child(3) .rest-proof-accent {
  background: linear-gradient(180deg, var(--turquoise), var(--navy));
}

.page-restaurants .rest-proof-card:nth-child(4) .rest-proof-accent {
  background: linear-gradient(180deg, var(--gold), var(--navy));
}

.page-restaurants .rest-proof-card:nth-child(5) .rest-proof-accent {
  background: linear-gradient(180deg, var(--coral), var(--turquoise));
}

.page-restaurants .rest-proof-card h3 {
  margin: 0 0 6px;
  font-size: 1rem;
  color: var(--navy);
}

.page-restaurants .rest-proof-card p {
  margin: 0;
  font-size: 0.88rem;
  line-height: 1.5;
  color: rgba(11, 29, 58, 0.82);
}

.page-restaurants .rest-form-inner {
  max-width: 44rem;
  gap: clamp(12px, 1.8vw, 18px);
}

.page-restaurants .rest-form-lead {
  max-width: 36rem;
}

.page-restaurants .rest-form-shell {
  width: 100%;
  margin-top: 0;
  padding: clamp(18px, 2.4vw, 24px) clamp(18px, 2.4vw, 24px) clamp(20px, 2.8vw, 26px);
  border-radius: calc(var(--radius) + 2px);
  background: rgba(255, 253, 248, 0.96);
  border: 1px solid rgba(11, 29, 58, 0.11);
  box-shadow: 0 20px 44px rgba(0, 0, 0, 0.24);
  overflow-x: hidden;
}

.page-restaurants .rest-intake-form .transport-field {
  display: flex;
  flex-direction: column;
  gap: 7px;
  min-width: 0;
}

.page-restaurants .rest-intake-form .transport-field span {
  font-size: 0.78rem;
  font-weight: 750;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(11, 29, 58, 0.82);
}

.page-restaurants .rest-intake-form input,
.page-restaurants .rest-intake-form select,
.page-restaurants .rest-intake-form textarea {
  font: inherit;
  width: 100%;
  max-width: 100%;
  padding: 11px 13px;
  min-height: 46px;
  line-height: 1.35;
  border-radius: 10px;
  border: 1px solid rgba(11, 29, 58, 0.18);
  background: #fffefb;
  color: var(--navy);
}

.page-restaurants .rest-intake-form textarea {
  resize: vertical;
  min-height: 4.9rem;
  line-height: 1.5;
}

.page-restaurants .rest-intake-form .transport-intake-grid {
  display: grid;
  gap: clamp(14px, 1.8vw, 16px) clamp(14px, 2vw, 18px);
  grid-template-columns: 1fr 1fr;
  min-width: 0;
}

.page-restaurants .rest-intake-form .transport-intake-section {
  margin-top: clamp(18px, 2.4vw, 22px);
  padding: clamp(16px, 2vw, 20px) clamp(16px, 2vw, 18px) clamp(18px, 2.2vw, 20px);
  border-radius: calc(var(--radius) + 2px);
  background: rgba(255, 255, 255, 0.82);
  border: 1px solid rgba(11, 29, 58, 0.09);
  box-shadow: 0 10px 26px rgba(11, 29, 58, 0.05);
}

.page-restaurants .rest-intake-form .transport-intake-section:first-child {
  margin-top: 0;
}

.page-restaurants .rest-intake-form .transport-field--full {
  grid-column: 1 / -1;
}

.page-restaurants .rest-intake-form .transport-intake-error {
  margin: 0 0 12px;
  padding: 10px 12px;
  border-radius: 10px;
  font-size: 0.88rem;
  background: rgba(255, 106, 77, 0.12);
  border: 1px solid rgba(255, 106, 77, 0.28);
  color: var(--navy);
}

.page-restaurants .rest-intake-form .transport-intake-error--ok {
  background: rgba(20, 184, 166, 0.12);
  border-color: rgba(20, 184, 166, 0.32);
}

@media (max-width: 640px) {
  .page-restaurants .rest-intake-form .transport-intake-grid {
    grid-template-columns: 1fr;
  }
}

.page-restaurants .rest-intake-form .transport-intake-section__heading {
  margin: 0 0 14px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(11, 29, 58, 0.1);
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.11em;
  text-transform: uppercase;
  color: rgba(11, 29, 58, 0.78);
}

.page-restaurants .rest-form-note {
  margin: 12px 0 0;
  font-size: 0.84rem;
  line-height: 1.45;
  color: rgba(11, 29, 58, 0.74);
}

.page-restaurants .rest-interest-fieldset {
  margin: 2px 0 0;
  padding: clamp(14px, 1.8vw, 16px) clamp(14px, 1.8vw, 16px) clamp(12px, 1.6vw, 14px);
  border: 1px solid rgba(11, 29, 58, 0.08);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.9);
}

.page-restaurants .rest-interest-fieldset .business-operator-check-legend {
  margin: 0 0 12px;
  padding: 0;
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(11, 29, 58, 0.82);
}

.page-restaurants .rest-interest-check {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 12px;
  padding: 5px 0;
  min-width: 0;
  font-size: 0.92rem;
  line-height: 1.48;
  color: rgba(11, 29, 58, 0.9);
}

.page-restaurants .rest-interest-check:last-child {
  margin-bottom: 0;
}

.page-restaurants .rest-interest-check input {
  margin-top: 0.2em;
  flex-shrink: 0;
  width: 1.125rem;
  height: 1.125rem;
  min-width: 1.125rem;
  min-height: 1.125rem;
}

.page-restaurants .rest-intake-form .sms-consent-block {
  box-shadow: none;
}

.page-restaurants .rest-form-submit {
  width: 100%;
  margin-top: 2px;
  margin-bottom: max(6px, env(safe-area-inset-bottom, 0px));
  min-height: 50px;
  padding-top: 14px;
  padding-bottom: 14px;
}

.page-restaurants .rest-sec--form {
  padding-bottom: max(clamp(40px, 5vw, 52px), calc(16px + env(safe-area-inset-bottom, 0px)));
}

.page-restaurants .rest-sec--guardrail {
  padding-top: var(--biz-sec-pad-compact, clamp(40px, 5vw, 48px));
  padding-bottom: var(--biz-sec-pad-compact, clamp(40px, 5vw, 48px));
}

@media (max-width: 829px) {
  .page-restaurants .rest-hero-visual {
    margin-top: clamp(14px, 3vw, 20px);
    max-width: min(520px, 100%);
    margin-inline: auto;
  }

  .page-restaurants .rest-hero-visual .hero-inner-panel {
    max-height: min(340px, 58vw);
  }
}

@media (max-width: 640px) {
  .page-restaurants .rest-form-shell {
    padding: 16px 14px 24px;
  }

  .page-restaurants .rest-intake-form .transport-intake-section {
    padding: 15px 13px 17px;
  }

  .page-restaurants .rest-intake-form input,
  .page-restaurants .rest-intake-form select,
  .page-restaurants .rest-intake-form textarea {
    min-height: 44px;
    padding: 10px 12px;
  }

  .page-restaurants .rest-intake-form .transport-field span,
  .page-restaurants .rest-interest-fieldset .business-operator-check-legend {
    font-size: 0.8rem;
  }

  .page-restaurants .rest-interest-check {
    font-size: 0.93rem;
    padding: 5px 0;
    gap: 12px;
  }

  .page-restaurants .rest-intake-form .sms-consent-block {
    padding: 10px 12px;
  }

  .page-restaurants .rest-intake-form .sms-consent-checkbox {
    font-size: 0.86rem;
    gap: 12px;
  }

  .page-restaurants .rest-intake-form .sms-consent-help {
    font-size: 0.84rem;
  }

  .page-restaurants .rest-question-list li {
    padding-right: 34px;
  }
}

.page-restaurants .rest-guardrail-inner {
  max-width: 40rem;
}

.page-restaurants .rest-guardrail-card {
  padding: clamp(16px, 2.2vw, 20px);
  border-radius: calc(var(--radius) - 4px);
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid rgba(242, 178, 26, 0.28);
  border-left: 4px solid var(--gold);
}

.page-restaurants .rest-guardrail-title {
  margin: 0 0 8px;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(11, 29, 58, 0.78);
}

.page-restaurants .rest-guardrail-copy {
  margin: 0;
  font-size: 0.88rem;
  line-height: 1.55;
  color: rgba(11, 29, 58, 0.82);
}

@media (max-width: 480px) {
  .page-restaurants .rest-hero-cta .btn {
    width: 100%;
    justify-content: center;
  }

  .page-restaurants .rest-hero-cues .hero-cue {
    min-height: 3rem;
    font-size: 0.9rem;
  }

  .page-restaurants .rest-path-cta {
    width: 100%;
    justify-content: center;
  }

  .page-restaurants .rest-path-grid {
    gap: 14px;
  }
}

@media (max-width: 520px) {
  .page-restaurants .rest-hero-cues {
    grid-template-columns: 1fr;
    gap: 9px;
  }

  .page-restaurants .rest-hero-cues .hero-cue:last-child {
    grid-column: auto;
  }
}

@media (max-width: 390px) {
  .page-restaurants .rest-hero-cues {
    gap: 8px;
  }

  .page-restaurants .rest-hero-cues .hero-cue {
    padding: 10px 12px;
  }

  .page-restaurants .rest-intake-form .sms-consent-block {
    font-size: 0.84rem;
  }

  .page-restaurants .rest-question-list li::after {
    right: 12px;
    font-size: 1rem;
  }

  .page-restaurants .rest-path-card {
    padding: 18px 16px;
  }
}

/* ==========================================================================
   Home Services vertical — /business-services/home-services/
   ========================================================================== */

.page-home-services {
  --hs-gold-glow: rgba(242, 178, 26, 0.35);
  --hs-turq-glow: rgba(20, 184, 166, 0.28);
  --hs-card-radius: calc(var(--radius) - 2px);
  --hs-card-pad: clamp(14px, 2vw, 18px);
  --hs-card-stack-gap: clamp(10px, 1.6vw, 14px);
  --hs-body-lh: 1.52;
  overflow-x: clip;
}

.page-home-services .hs-main,
.page-home-services .hs-hero-shell,
.page-home-services .routes-band-inner,
.page-business-services.page-home-services .routes-band-inner {
  min-width: 0;
  max-width: 100%;
}

.page-home-services .hs-main > .section {
  padding-top: clamp(34px, 4vw, 48px);
  padding-bottom: clamp(34px, 4vw, 48px);
}

.page-home-services .hs-main > .section + .section.section-cream {
  border-top: 1px solid rgba(11, 29, 58, 0.06);
}

.page-home-services .hs-hero-band {
  padding-top: clamp(22px, 3vw, 38px);
  padding-bottom: clamp(24px, 3.2vw, 40px);
}

.page-home-services .hs-hero-body {
  position: relative;
}

.page-home-services .hs-hero-lead {
  max-width: 36rem;
}

.page-home-services .hs-hero-chips {
  margin-top: clamp(10px, 1.6vw, 16px);
  flex-wrap: wrap;
}

.page-home-services .hs-hero-cta {
  margin-top: clamp(12px, 1.8vw, 18px);
  gap: clamp(10px, 1.4vw, 14px);
}

.page-home-services .hs-hero-cta .btn {
  min-height: 48px;
  white-space: normal;
  text-align: center;
}

.page-home-services .hs-band-head {
  max-width: 40rem;
  margin-bottom: 0;
}

.page-home-services .hs-band-head .eyebrow {
  margin-bottom: var(--biz-space-xs, clamp(6px, 1.2vw, 8px));
}

.page-home-services .hs-band-head .ai-strategic-title {
  margin-bottom: var(--biz-space-sm, clamp(10px, 1.6vw, 14px));
}

.page-home-services .hs-band-lede {
  max-width: 38rem;
  margin-top: 0;
  line-height: var(--hs-body-lh);
}

.page-home-services .hs-band-lede--dark {
  max-width: 44rem;
}

.page-home-services .hs-compare-grid {
  display: grid;
  gap: clamp(14px, 2vw, 18px);
  margin-top: clamp(4px, 1vw, 8px);
}

@media (min-width: 768px) {
  .page-home-services .hs-compare-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.page-home-services .hs-compare-card {
  padding: clamp(16px, 2vw, 22px);
  border-radius: calc(var(--radius) - 2px);
  border: 1px solid rgba(255, 246, 230, 0.16);
}

.page-home-services .hs-compare-card--today {
  background: rgba(255, 246, 230, 0.05);
  border-left: 3px solid rgba(255, 106, 77, 0.65);
}

.page-home-services .hs-compare-card--ai {
  background: rgba(20, 184, 166, 0.1);
  border-left: 3px solid var(--turquoise);
  box-shadow: 0 0 28px rgba(20, 184, 166, 0.12);
}

.page-home-services .hs-compare-title {
  margin: 0 0 12px;
  font-size: clamp(1rem, 0.25vw + 0.94rem, 1.08rem);
  font-weight: 780;
  color: #fff8eb;
}

.page-home-services .hs-compare-list {
  margin: 0;
  padding: 0 0 0 1.1rem;
  font-size: 0.9rem;
  line-height: 1.55;
  color: rgba(255, 246, 230, 0.84);
}

.page-home-services .hs-compare-list li + li {
  margin-top: 6px;
}

.page-home-services .hs-office-pains {
  margin-top: clamp(18px, 2.5vw, 28px);
}

.page-home-services .hs-office-story-kicker {
  margin: 0 0 8px;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(20, 184, 166, 0.95);
}

.page-home-services .hs-office-story-bridge {
  max-width: 40rem;
  margin: 0 0 clamp(14px, 2vw, 18px);
  font-size: clamp(0.92rem, 0.2vw + 0.88rem, 1rem);
  opacity: 0.9;
}

.page-home-services .hs-problem-num {
  position: absolute;
  top: clamp(10px, 1.4vw, 12px);
  right: clamp(12px, 1.6vw, 14px);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  color: rgba(20, 184, 166, 0.55);
}

.page-home-services .hs-detail-grid {
  display: grid;
  gap: clamp(20px, 3vw, 28px);
  align-items: center;
  margin-bottom: clamp(16px, 2.2vw, 24px);
}

@media (min-width: 900px) {
  .page-home-services .hs-detail-grid {
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
  }

  .page-home-services .hs-detail-grid--reverse {
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
  }

  .page-home-services .hs-detail-grid--reverse .hs-section-visual {
    order: -1;
  }
}

.page-home-services .hs-band-head--inline {
  margin-bottom: 0;
  max-width: none;
}

.page-home-services .hs-section-visual {
  margin: 0;
  border-radius: calc(var(--radius) + 2px);
  overflow: hidden;
  box-shadow: 0 18px 40px rgba(11, 29, 58, 0.14);
  border: 1px solid rgba(11, 29, 58, 0.1);
}

.page-home-services .hs-section-visual--dark {
  border-color: rgba(20, 184, 166, 0.22);
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.28);
}

.page-home-services .hs-section-visual img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  object-position: center center;
}

.page-home-services .hs-workflow-grid {
  display: grid;
  gap: clamp(14px, 2vw, 18px);
  margin-top: clamp(18px, 2.4vw, 26px);
}

@media (min-width: 768px) {
  .page-home-services .hs-workflow-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.page-home-services .hs-vertical-thumb {
  margin: calc(clamp(16px, 2vw, 20px) * -1) calc(clamp(16px, 2vw, 20px) * -1) 0;
  border-radius: calc(var(--radius) - 2px) calc(var(--radius) - 2px) 0 0;
  overflow: hidden;
  height: clamp(168px, 40vw, 200px);
}

.page-home-services .hs-vertical-thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

@media (min-width: 640px) {
  .page-home-services .hs-vertical-thumb {
    height: auto;
    aspect-ratio: 4 / 3;
  }

  .page-home-services .hs-vertical-thumb img {
    aspect-ratio: 4 / 3;
    height: auto;
    object-position: center center;
  }
}

.page-home-services .hs-problem-grid {
  display: grid;
  gap: clamp(12px, 2vw, 16px);
  margin: 0;
  padding: 0;
  list-style: none;
}

@media (min-width: 640px) {
  .page-home-services .hs-problem-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) {
  .page-home-services .hs-problem-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.page-home-services .hs-problem-card {
  position: relative;
  margin: 0;
  padding: clamp(18px, 2.2vw, 22px) clamp(14px, 2vw, 18px) clamp(14px, 2vw, 18px);
  border-radius: calc(var(--radius) - 4px);
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid rgba(11, 29, 58, 0.09);
  box-shadow: 0 10px 26px rgba(11, 29, 58, 0.06);
  border-left: 3px solid var(--turquoise);
}

.page-home-services .hs-problem-card h3 {
  margin: 0 0 8px;
  font-size: clamp(0.95rem, 0.2vw + 0.9rem, 1.02rem);
  font-weight: 780;
  color: var(--navy);
}

.page-home-services .hs-problem-card p {
  margin: 0;
  font-size: 0.88rem;
  line-height: 1.5;
  color: rgba(11, 29, 58, 0.82);
}

.page-home-services .hs-build-grid {
  display: grid;
  gap: clamp(14px, 2vw, 18px);
  margin-top: clamp(8px, 1.2vw, 12px);
}

@media (min-width: 640px) {
  .page-home-services .hs-build-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) {
  .page-home-services .hs-build-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.page-home-services .hs-build-card {
  padding: clamp(16px, 2vw, 20px);
  border-radius: calc(var(--radius) - 2px);
  background: rgba(255, 246, 230, 0.07);
  border: 1px solid rgba(255, 246, 230, 0.16);
  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.16);
}

.page-home-services .hs-build-num {
  margin: 0 0 8px;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  color: var(--gold);
}

.page-home-services .hs-build-card h3 {
  margin: 0 0 8px;
  font-size: clamp(1rem, 0.25vw + 0.94rem, 1.08rem);
  font-weight: 780;
  color: #fff8eb;
}

.page-home-services .hs-build-card p {
  margin: 0;
  font-size: 0.9rem;
  line-height: 1.52;
  color: rgba(255, 246, 230, 0.82);
}

.page-home-services .hs-vertical-grid {
  display: grid;
  gap: clamp(14px, 2vw, 18px);
}

@media (min-width: 640px) {
  .page-home-services .hs-vertical-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1100px) {
  .page-home-services .hs-vertical-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.page-home-services .hs-vertical-card {
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-height: 100%;
  padding: clamp(16px, 2vw, 20px);
  border-radius: calc(var(--radius) - 2px);
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid rgba(11, 29, 58, 0.09);
  box-shadow: 0 12px 28px rgba(11, 29, 58, 0.06);
}

.page-home-services .hs-vertical-card h3 {
  margin: 0;
  font-size: clamp(1rem, 0.2vw + 0.94rem, 1.06rem);
  font-weight: 780;
  color: var(--navy);
}

.page-home-services .hs-vertical-card p {
  margin: 0;
  flex: 1;
  font-size: 0.9rem;
  line-height: 1.5;
  color: rgba(11, 29, 58, 0.82);
}

.page-home-services .hs-vertical-cta {
  margin-top: auto;
  align-self: flex-start;
  width: 100%;
  min-height: 44px;
  white-space: normal;
  text-align: center;
  justify-content: center;
}

.page-home-services .hs-final-inner {
  max-width: 40rem;
  text-align: center;
}

.page-home-services .hs-final-cta {
  justify-content: center;
  margin-top: clamp(14px, 2vw, 18px);
}

.page-home-services .hs-final-cta .btn {
  min-height: 48px;
  white-space: normal;
}

.page-home-services .hs-offer-grid {
  display: grid;
  gap: clamp(10px, 1.6vw, 14px);
  margin: clamp(8px, 1.2vw, 12px) 0 0;
  padding: 0;
  list-style: none;
}

@media (min-width: 640px) {
  .page-home-services .hs-offer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.page-home-services .hs-offer-card {
  margin: 0;
  padding: 14px 16px;
  border-radius: calc(var(--radius) - 4px);
  font-size: 0.92rem;
  font-weight: 700;
  line-height: 1.4;
  color: #fff8eb;
  background: rgba(255, 246, 230, 0.08);
  border: 1px solid rgba(255, 246, 230, 0.14);
}

.page-home-services .hs-offer-card--featured {
  border-color: rgba(242, 178, 26, 0.45);
  background: rgba(242, 178, 26, 0.12);
  box-shadow: 0 0 24px var(--hs-gold-glow);
}

.page-home-services .hs-proof-inner {
  max-width: 44rem;
}

.page-home-services .hs-proof-link {
  margin: 12px 0 0;
  font-size: 0.92rem;
}

.page-home-services .hs-proof-link a {
  color: var(--navy);
  font-weight: 700;
  text-decoration-color: rgba(20, 184, 166, 0.5);
}

.page-home-services .hs-form-shell {
  margin-top: clamp(12px, 2vw, 16px);
  padding: clamp(18px, 2.4vw, 24px);
  border-radius: calc(var(--radius) + 2px);
  background: rgba(255, 253, 248, 0.96);
  border: 1px solid rgba(11, 29, 58, 0.11);
  box-shadow: 0 20px 44px rgba(11, 29, 58, 0.08);
}

.page-home-services .hs-intake-form .transport-field {
  display: flex;
  flex-direction: column;
  gap: 7px;
  min-width: 0;
}

.page-home-services .hs-intake-form .transport-field span {
  font-size: 0.78rem;
  font-weight: 750;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(11, 29, 58, 0.82);
}

.page-home-services .hs-intake-form input,
.page-home-services .hs-intake-form select,
.page-home-services .hs-intake-form textarea {
  font: inherit;
  width: 100%;
  max-width: 100%;
  padding: 11px 13px;
  min-height: 46px;
  border-radius: 10px;
  border: 1px solid rgba(11, 29, 58, 0.18);
  background: #fffefb;
  color: var(--navy);
  box-sizing: border-box;
}

.page-home-services .hs-intake-form textarea {
  resize: vertical;
  min-height: 5rem;
  line-height: 1.5;
}

.page-home-services .hs-intake-form .transport-intake-grid {
  display: grid;
  gap: clamp(14px, 1.8vw, 16px) clamp(14px, 2vw, 18px);
  grid-template-columns: 1fr 1fr;
}

.page-home-services .hs-intake-form .transport-field--full {
  grid-column: 1 / -1;
}

.page-home-services .hs-intake-form .transport-intake-section {
  margin-top: clamp(18px, 2.4vw, 22px);
  padding: clamp(16px, 2vw, 20px);
  border-radius: calc(var(--radius) + 2px);
  background: rgba(255, 255, 255, 0.82);
  border: 1px solid rgba(11, 29, 58, 0.09);
}

.page-home-services .hs-intake-form .transport-intake-section:first-child {
  margin-top: 0;
}

.page-home-services .hs-form-note {
  margin: 12px 0 0;
  font-size: 0.84rem;
  color: rgba(11, 29, 58, 0.74);
}

.page-home-services .hs-consent-note {
  margin: clamp(14px, 2vw, 18px) 0 12px;
  font-size: 0.86rem;
  line-height: 1.55;
  color: rgba(11, 29, 58, 0.82);
}

.page-business-services .hs-intake-form .transport-intake-section__heading {
  margin: 0 0 14px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(11, 29, 58, 0.1);
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.11em;
  text-transform: uppercase;
  color: rgba(11, 29, 58, 0.88);
}

.page-business-services .hs-form-shell {
  color: var(--navy);
}

.page-business-services .hs-form-shell :is(h2, h3, h4, p, label, span, legend) {
  color: inherit;
}

.page-business-services .hs-form-shell .transport-intake-section__heading {
  color: rgba(11, 29, 58, 0.88);
}

.page-business-services .section-navy-routes .hs-form-shell .transport-intake-section__heading {
  color: rgba(11, 29, 58, 0.88);
}

.page-home-services .hs-form-submit {
  width: 100%;
  min-height: 50px;
}

.page-home-services .hs-problem-band {
  display: grid;
  gap: clamp(18px, 2.5vw, 26px);
  margin-top: clamp(12px, 2vw, 18px);
}

@media (min-width: 900px) {
  .page-home-services .hs-problem-band {
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
    align-items: start;
  }

  .page-home-services .hs-problem-visual {
    margin-top: 0;
  }
}

.page-home-services .hs-problem-visual {
  margin: 0;
  border-radius: calc(var(--radius) + 2px);
  overflow: hidden;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.28);
  border: 1px solid rgba(255, 246, 230, 0.12);
}

.page-home-services .hs-problem-visual img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

.page-home-services .hs-journey-visual {
  margin-top: clamp(18px, 2.5vw, 28px);
  align-items: center;
}

.page-home-services .hs-journey-visual .hs-support-note {
  margin: 0;
  max-width: 36rem;
}

.page-business-services #starting-points .ai-bs-category-grid {
  margin-top: clamp(16px, 2.4vw, 24px);
}

.page-business-services .section-cream .hs-problem-visual {
  box-shadow: 0 18px 40px rgba(11, 29, 58, 0.12);
  border: 1px solid rgba(11, 29, 58, 0.1);
}

.page-business-services .hosp-guest-band {
  margin-top: clamp(12px, 2vw, 18px);
}

/* Shared problem / guest band (home, hospitality, professional verticals) */
.page-business-services .hs-problem-band {
  display: grid;
  gap: clamp(18px, 2.5vw, 26px);
  margin-top: clamp(12px, 2vw, 18px);
}

@media (min-width: 900px) {
  .page-business-services .hs-problem-band {
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
    align-items: start;
  }

  .page-business-services .hs-problem-band .hs-problem-visual {
    margin-top: 0;
  }
}

.page-business-services .hs-problem-visual {
  margin: 0;
  border-radius: calc(var(--radius) + 2px);
  overflow: hidden;
}

.page-business-services .hs-problem-visual img {
  display: block;
  width: 100%;
  height: auto;
  max-height: clamp(220px, 42vw, 480px);
  aspect-ratio: 16 / 10;
  object-fit: cover;
  object-position: center;
}

/* Section figures in vertical pages (not hero) — hospitality, professional, home */
.page-business-services .hs-section-visual {
  margin: 0;
  border-radius: calc(var(--radius) + 2px);
  overflow: hidden;
  box-shadow: 0 18px 40px rgba(11, 29, 58, 0.12);
  border: 1px solid rgba(11, 29, 58, 0.1);
}

.page-business-services .dark-showcase .hs-section-visual,
.page-business-services .hs-section-visual--dark {
  border-color: rgba(20, 184, 166, 0.22);
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.28);
}

.page-business-services .hs-section-visual img {
  display: block;
  width: 100%;
  height: auto;
  max-height: clamp(220px, 42vw, 480px);
  aspect-ratio: 16 / 10;
  object-fit: cover;
  object-position: center;
}

.page-business-services .hs-detail-grid {
  display: grid;
  gap: clamp(20px, 3vw, 28px);
  align-items: center;
  margin-bottom: clamp(16px, 2.2vw, 24px);
}

@media (min-width: 900px) {
  .page-business-services .hs-detail-grid {
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
  }

  .page-business-services .hs-detail-grid--reverse {
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
  }

  .page-business-services .hs-detail-grid--reverse .hs-section-visual {
    order: -1;
  }
}

.page-business-services .hs-band-head--inline {
  margin-bottom: 0;
  max-width: none;
}

.page-business-services .ps-trust-band .ps-trust-list {
  margin: 0;
}

.page-business-services .dark-showcase .hs-journey-visual .hs-support-note {
  color: rgba(255, 246, 230, 0.88);
  max-width: 36rem;
}

.page-home-services .hs-faq-list {
  margin: 0;
  display: grid;
  gap: clamp(12px, 2vw, 16px);
}

.page-home-services .hs-faq-item {
  margin: 0;
  padding: clamp(14px, 2vw, 18px);
  border-radius: calc(var(--radius) - 4px);
  background: rgba(255, 255, 255, 0.9);
  border: 1px solid rgba(11, 29, 58, 0.08);
  border-left: 3px solid var(--gold);
}

.page-home-services .hs-faq-item dt {
  margin: 0 0 8px;
  font-size: clamp(0.98rem, 0.2vw + 0.92rem, 1.04rem);
  font-weight: 780;
  color: var(--navy);
}

.page-home-services .hs-faq-item dd {
  margin: 0;
  font-size: 0.9rem;
  line-height: 1.55;
  color: rgba(11, 29, 58, 0.82);
}

.page-home-services .hs-faq-cta {
  margin-top: clamp(18px, 2.4vw, 24px);
  text-align: center;
}

@media (max-width: 640px) {
  .page-home-services .hs-intake-form .transport-intake-grid {
    grid-template-columns: 1fr;
  }

  .page-home-services .hs-hero-cta .btn {
    width: 100%;
  }
}

/* ==========================================================================
   Professional Services vertical — /business-services/professional-services/
   ========================================================================== */

.page-professional-services .hs-hero-hook {
  margin-top: clamp(10px, 1.4vw, 14px);
  max-width: 34rem;
  font-weight: 650;
  font-size: clamp(0.9rem, 0.18vw + 0.86rem, 1rem);
  line-height: 1.45;
  border-left: 3px solid var(--gold);
  padding-left: clamp(10px, 1.2vw, 14px);
  color: rgba(255, 246, 230, 0.95);
}

@media (max-width: 640px) {
  .page-professional-services .hs-hero-hook {
    margin-top: 8px;
    font-size: 0.88rem;
    line-height: 1.4;
  }
}

.page-professional-services .hs-hero-lead--sub {
  margin-top: 10px;
  font-size: clamp(0.92rem, 0.2vw + 0.88rem, 1rem);
  opacity: 0.92;
}

.page-professional-services .ps-compare-grid {
  display: grid;
  gap: clamp(14px, 2vw, 18px);
  margin-top: clamp(12px, 2vw, 18px);
}

@media (min-width: 768px) {
  .page-professional-services .ps-compare-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.page-professional-services .ps-compare-card {
  padding: clamp(16px, 2vw, 22px);
  border-radius: calc(var(--radius) - 2px);
  border: 1px solid rgba(255, 246, 230, 0.16);
}

.page-professional-services .ps-compare-card--basic {
  background: rgba(255, 246, 230, 0.05);
  border-left: 3px solid rgba(255, 106, 77, 0.65);
}

.page-professional-services .ps-compare-card--clean {
  background: rgba(20, 184, 166, 0.1);
  border-left: 3px solid var(--turquoise);
  box-shadow: 0 0 28px rgba(20, 184, 166, 0.12);
}

.page-professional-services .ps-compare-title {
  margin: 0 0 12px;
  font-size: clamp(1rem, 0.25vw + 0.94rem, 1.08rem);
  font-weight: 780;
  color: #fff8eb;
}

.page-professional-services .ps-compare-list {
  margin: 0;
  padding: 0 0 0 1.1rem;
  font-size: 0.9rem;
  line-height: 1.55;
  color: rgba(255, 246, 230, 0.84);
}

.page-professional-services .ps-compare-list li + li {
  margin-top: 6px;
}

.page-professional-services .hs-build-grid--cream {
  margin-top: clamp(8px, 1.2vw, 12px);
}

.page-professional-services .hs-build-card--cream {
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid rgba(11, 29, 58, 0.09);
  box-shadow: 0 12px 28px rgba(11, 29, 58, 0.06);
  border-top: 3px solid var(--gold);
}

.page-professional-services .hs-build-card--cream h3 {
  margin: 0 0 8px;
  font-size: clamp(1rem, 0.25vw + 0.94rem, 1.06rem);
  font-weight: 780;
  color: var(--navy);
}

.page-professional-services .hs-build-card--cream p {
  margin: 0;
  font-size: 0.9rem;
  line-height: 1.52;
  color: rgba(11, 29, 58, 0.82);
}

.page-professional-services .ps-thumb-placeholder {
  background:
    linear-gradient(135deg, rgba(11, 29, 58, 0.06) 0%, rgba(20, 184, 166, 0.14) 48%, rgba(242, 178, 26, 0.12) 100%);
  min-height: clamp(168px, 40vw, 200px);
}

.page-professional-services .ps-vertical-pains {
  margin: 0;
  padding: 0 0 0 1rem;
  font-size: 0.84rem;
  line-height: 1.45;
  color: rgba(11, 29, 58, 0.78);
}

.page-professional-services .ps-vertical-pains li + li {
  margin-top: 4px;
}

.page-professional-services .ps-secondary-block {
  margin-top: clamp(22px, 3vw, 32px);
  padding-top: clamp(18px, 2.4vw, 24px);
  border-top: 1px solid rgba(255, 246, 230, 0.14);
}

.page-professional-services .ps-secondary-title {
  margin: 0 0 clamp(14px, 2vw, 18px);
  font-size: clamp(1.02rem, 0.3vw + 0.96rem, 1.12rem);
  font-weight: 780;
  color: #fff8eb;
  text-align: center;
}

.page-professional-services .ps-secondary-grid {
  display: grid;
  gap: clamp(12px, 2vw, 16px);
}

@media (min-width: 640px) {
  .page-professional-services .ps-secondary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.page-professional-services .ps-secondary-card {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: clamp(14px, 2vw, 18px);
  border-radius: calc(var(--radius) - 4px);
  background: rgba(255, 246, 230, 0.07);
  border: 1px solid rgba(255, 246, 230, 0.14);
}

.page-professional-services .ps-secondary-card h4 {
  margin: 0;
  font-size: 0.98rem;
  font-weight: 780;
  color: #fff8eb;
}

.page-professional-services .ps-secondary-card p {
  margin: 0;
  flex: 1;
  font-size: 0.88rem;
  line-height: 1.5;
  color: rgba(255, 246, 230, 0.82);
}

.page-professional-services .ps-secondary-cta {
  margin-top: auto;
  align-self: flex-start;
  width: 100%;
  min-height: 42px;
  white-space: normal;
  text-align: center;
  justify-content: center;
}

.page-professional-services .ps-trust-list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 10px;
}

@media (min-width: 640px) {
  .page-professional-services .ps-trust-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.page-professional-services .ps-trust-list li {
  margin: 0;
  padding: 12px 14px;
  border-radius: calc(var(--radius) - 4px);
  font-size: 0.9rem;
  line-height: 1.45;
  color: rgba(11, 29, 58, 0.86);
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid rgba(11, 29, 58, 0.08);
  border-left: 3px solid var(--turquoise);
}

.page-professional-services .ps-offer-detail-grid {
  display: grid;
  gap: clamp(12px, 2vw, 16px);
}

@media (min-width: 640px) {
  .page-professional-services .ps-offer-detail-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1100px) {
  .page-professional-services .ps-offer-detail-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.page-professional-services .ps-offer-detail-card {
  padding: clamp(16px, 2vw, 20px);
  border-radius: calc(var(--radius) - 2px);
  background: rgba(255, 246, 230, 0.07);
  border: 1px solid rgba(255, 246, 230, 0.14);
}

.page-professional-services .ps-offer-detail-card h3 {
  margin: 0 0 8px;
  font-size: clamp(0.98rem, 0.2vw + 0.92rem, 1.04rem);
  font-weight: 780;
  color: #fff8eb;
}

.page-professional-services .ps-offer-detail-card p {
  margin: 0;
  font-size: 0.88rem;
  line-height: 1.52;
  color: rgba(255, 246, 230, 0.82);
}

.page-professional-services .ps-offer-detail-card p + p {
  margin-top: 10px;
}

.page-professional-services .ps-offer-best {
  font-size: 0.84rem;
  color: rgba(255, 246, 230, 0.74);
}

.page-professional-services .ps-offer-best strong {
  color: var(--gold);
  font-weight: 750;
}

/* ==========================================================================
   Hospitality + Local Experience — /business-services/hospitality-local-experience/
   ========================================================================== */

.page-hospitality-local-experience .hosp-proof-list {
  margin: clamp(14px, 2vw, 20px) 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 10px;
}

@media (min-width: 640px) {
  .page-hospitality-local-experience .hosp-proof-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.page-hospitality-local-experience .hosp-proof-list li {
  margin: 0;
  padding: 12px 14px;
  border-radius: calc(var(--radius) - 4px);
  font-size: 0.9rem;
  line-height: 1.45;
  color: rgba(11, 29, 58, 0.86);
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid rgba(11, 29, 58, 0.08);
  border-left: 3px solid var(--gold);
}

.page-hospitality-local-experience .hs-vertical-card .btn.hs-vertical-cta[href="/restaurants/"] {
  border-color: rgba(242, 178, 26, 0.45);
}

@media (max-width: 640px) {
  .page-hospitality-local-experience .hs-hero-lead--sub {
    margin-top: 8px;
    font-size: 0.88rem;
    line-height: 1.42;
  }
}

/* Hospitality + professional verticals — mobile section layout, contrast */
@media (max-width: 899px) {
  .page-hospitality-local-experience .hs-section-visual img,
  .page-hospitality-local-experience .hs-problem-visual img,
  .page-hospitality-local-experience .hosp-adaptation-visual img,
  .page-hospitality-local-experience .hosp-campaign-visual img,
  .page-hospitality-local-experience .hosp-ops-visual img,
  .page-professional-services .hs-section-visual img,
  .page-professional-services .hs-problem-visual img,
  .page-professional-services .ps-adaptation-visual img {
    max-height: min(40vh, 300px);
  }
}

@media (max-width: 640px) {
  .page-hospitality-local-experience main > .section,
  .page-professional-services main > .section {
    padding-left: 16px;
    padding-right: 16px;
  }

  .page-hospitality-local-experience .routes-band-inner,
  .page-professional-services .routes-band-inner {
    gap: clamp(18px, 4vw, 26px);
  }

  .page-hospitality-local-experience .ai-band-head,
  .page-professional-services .ai-band-head {
    max-width: none;
    margin-bottom: 0;
  }

  .page-hospitality-local-experience .hosp-guest-band {
    gap: clamp(14px, 3vw, 20px);
  }

  .page-hospitality-local-experience .hosp-guest-moments {
    margin-top: 0;
  }
}

.page-hospitality-local-experience .section-cream .section-text,
.page-hospitality-local-experience .section-cream .ai-bs-pillar-lede,
.page-professional-services .section-cream .section-text,
.page-professional-services .section-cream .ai-bs-pillar-lede {
  color: rgba(11, 29, 58, 0.88);
}

.page-hospitality-local-experience .dark-showcase .hosp-ops-panel .hosp-proof-list li {
  color: rgba(11, 29, 58, 0.9);
}

.page-business-services .ai-bs-restaurant-bridge {
  padding-top: clamp(22px, 2.8vw, 30px);
  padding-bottom: clamp(22px, 2.8vw, 30px);
}

.page-business-services .ai-bs-restaurant-bridge-inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px 18px;
  padding: clamp(14px, 2vw, 18px) clamp(16px, 2.2vw, 22px);
  border-radius: calc(var(--radius) - 2px);
  background: rgba(255, 255, 255, 0.78);
  border: 1px solid rgba(11, 29, 58, 0.08);
}

.page-business-services .ai-bs-restaurant-bridge-copy {
  margin: 0;
  font-size: 0.94rem;
  font-weight: 650;
  color: var(--navy);
}

.restaurant-owner-soft-link,
.eat-owner-cta {
  margin: clamp(14px, 2vw, 18px) auto 0;
  font-size: 0.9rem;
  line-height: 1.5;
}

.restaurant-owner-soft-link a,
.eat-owner-cta a {
  color: inherit;
  font-weight: 800;
  text-decoration-thickness: 2px;
  text-underline-offset: 0.22em;
}

.restaurant-owner-soft-link {
  max-width: 42rem;
  color: rgba(255, 246, 230, 0.82);
}

.restaurant-owner-soft-link a {
  color: #fff8eb;
  text-decoration-color: rgba(242, 178, 26, 0.7);
}

.eat-owner-cta {
  max-width: 44rem;
  color: rgba(255, 246, 230, 0.78);
}

.eat-owner-cta a {
  color: #fff8eb;
  text-decoration-color: rgba(20, 184, 166, 0.7);
}

.page-business-services .ai-bs-leak-wrap--solo {
  max-width: 52rem;
  margin-inline: auto;
}

.page-business-services .ai-bs-project-request-inner {
  max-width: 44rem;
  margin-inline: auto;
}

.page-business-services .ai-bs-project-request-shell {
  width: 100%;
  margin-top: var(--biz-space-md, clamp(18px, 2.4vw, 24px));
  padding: clamp(18px, 2.4vw, 24px) clamp(18px, 2.4vw, 24px) clamp(20px, 2.8vw, 26px);
  border-radius: calc(var(--radius) + 2px);
  background: rgba(255, 253, 248, 0.96);
  border: 1px solid rgba(11, 29, 58, 0.11);
  box-shadow: 0 20px 44px rgba(11, 29, 58, 0.08);
  overflow-x: hidden;
}

.page-business-services .ai-bs-project-request-lede {
  max-width: 38rem;
}

/* Early anchor CTA — after leak diagnosis */
.page-business-services .ai-bs-early-cta {
  margin-top: clamp(22px, 3vw, 32px);
  padding: clamp(18px, 2.4vw, 22px) clamp(18px, 2.4vw, 24px);
  border-radius: calc(var(--radius) + 2px);
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 246, 230, 0.14);
  text-align: center;
}

.page-business-services .ai-bs-early-cta__eyebrow {
  margin: 0 0 6px;
  font-size: clamp(0.98rem, 0.3vw + 0.9rem, 1.06rem);
  font-weight: 780;
  color: #fff8eb;
}

.page-business-services .ai-bs-early-cta__copy {
  margin: 0 0 clamp(14px, 2vw, 18px);
  font-size: clamp(0.9rem, 0.25vw + 0.84rem, 0.96rem);
  line-height: 1.5;
  color: rgba(255, 246, 230, 0.82);
}

.page-business-services .ai-bs-early-cta__actions {
  justify-content: center;
  flex-wrap: wrap;
  gap: 12px;
}

.page-business-services .ai-bs-early-cta__actions .btn {
  min-width: min(100%, 14rem);
}

/* Business Services project request form — mirrors restaurant inquiry layout */
.page-business-services .ai-bs-intake-form .transport-field {
  display: flex;
  flex-direction: column;
  gap: 7px;
  min-width: 0;
}

.page-business-services .ai-bs-intake-form .transport-field span {
  font-size: 0.78rem;
  font-weight: 750;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(11, 29, 58, 0.82);
}

.page-business-services .ai-bs-intake-form input,
.page-business-services .ai-bs-intake-form select,
.page-business-services .ai-bs-intake-form textarea {
  font: inherit;
  width: 100%;
  max-width: 100%;
  padding: 11px 13px;
  min-height: 46px;
  line-height: 1.35;
  border-radius: 10px;
  border: 1px solid rgba(11, 29, 58, 0.18);
  background: #fffefb;
  color: var(--navy);
  box-sizing: border-box;
}

.page-business-services .ai-bs-intake-form textarea {
  resize: vertical;
  min-height: 4.9rem;
  line-height: 1.5;
}

.page-business-services .ai-bs-intake-form .transport-intake-grid {
  display: grid;
  gap: clamp(14px, 1.8vw, 16px) clamp(14px, 2vw, 18px);
  grid-template-columns: 1fr 1fr;
  min-width: 0;
}

.page-business-services .ai-bs-intake-form .transport-intake-section {
  margin-top: clamp(18px, 2.4vw, 22px);
  padding: clamp(16px, 2vw, 20px) clamp(16px, 2vw, 18px) clamp(18px, 2.2vw, 20px);
  border-radius: calc(var(--radius) + 2px);
  background: rgba(255, 255, 255, 0.82);
  border: 1px solid rgba(11, 29, 58, 0.09);
  box-shadow: 0 10px 26px rgba(11, 29, 58, 0.05);
}

.page-business-services .ai-bs-intake-form .transport-intake-section:first-child {
  margin-top: 0;
}

.page-business-services .ai-bs-intake-form .transport-field--full {
  grid-column: 1 / -1;
}

.page-business-services .ai-bs-intake-form .transport-intake-section__heading {
  margin: 0 0 14px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(11, 29, 58, 0.1);
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.11em;
  text-transform: uppercase;
  color: rgba(11, 29, 58, 0.78);
}

.page-business-services .ai-bs-form-note {
  margin: 12px 0 0;
  font-size: 0.84rem;
  line-height: 1.45;
  color: rgba(11, 29, 58, 0.74);
}

.page-business-services .ai-bs-intake-form .transport-intake-error {
  margin: 0 0 12px;
  padding: 10px 12px;
  border-radius: 10px;
  font-size: 0.88rem;
  background: rgba(255, 106, 77, 0.12);
  border: 1px solid rgba(255, 106, 77, 0.28);
  color: var(--navy);
}

.page-business-services .ai-bs-intake-form .transport-intake-error--ok {
  background: rgba(20, 184, 166, 0.12);
  border-color: rgba(20, 184, 166, 0.32);
}

.page-business-services .ai-bs-interest-fieldset {
  margin: 0;
  padding: clamp(14px, 1.8vw, 16px) clamp(14px, 1.8vw, 16px) clamp(12px, 1.6vw, 14px);
  border: 1px solid rgba(11, 29, 58, 0.08);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.9);
  min-width: 0;
}

.page-business-services .ai-bs-intake-form .business-operator-check {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 12px;
  padding: 6px 0;
  min-width: 0;
  font-size: 0.92rem;
  line-height: 1.48;
  font-weight: 650;
  color: rgba(11, 29, 58, 0.9);
  cursor: pointer;
}

.page-business-services .ai-bs-intake-form .business-operator-check:last-child {
  margin-bottom: 0;
}

.page-business-services .ai-bs-intake-form .business-operator-check input {
  margin-top: 0.2em;
  flex-shrink: 0;
  width: 1.125rem;
  height: 1.125rem;
  min-width: 1.125rem;
  min-height: 1.125rem;
  accent-color: #14b8a6;
}

.page-business-services .ai-bs-intake-form .business-operator-context-block {
  padding: clamp(14px, 2.5vw, 18px) clamp(16px, 3vw, 20px);
  border-radius: 14px;
  border: 1px solid rgba(11, 29, 58, 0.12);
  background: linear-gradient(165deg, rgba(255, 255, 255, 0.94), rgba(248, 252, 251, 0.98));
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.65) inset;
}

.page-business-services .ai-bs-intake-form .business-operator-context-row {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin: 0;
  cursor: pointer;
}

.page-business-services .ai-bs-intake-form .business-operator-context-row input[type="checkbox"] {
  width: 1.12rem;
  height: 1.12rem;
  margin-top: 3px;
  flex-shrink: 0;
  accent-color: #14b8a6;
}

.page-business-services .ai-bs-intake-form .business-operator-context-row__text {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}

.page-business-services .ai-bs-intake-form .business-operator-context-row__label {
  font-size: 0.94rem;
  font-weight: 680;
  line-height: 1.35;
  color: rgba(11, 29, 58, 0.94);
}

.page-business-services .ai-bs-intake-form .business-operator-context-row__helper {
  font-size: 0.84rem;
  line-height: 1.5;
  font-weight: 520;
  color: rgba(11, 29, 58, 0.58);
}

/* Optional SMS consent (A2P 10DLC) — public intake forms */
.sms-consent-block {
  margin: clamp(14px, 2vw, 18px) 0 clamp(12px, 1.6vw, 14px);
  padding: 12px 14px;
  max-width: 100%;
  font-size: clamp(0.84rem, 2.35vw, 0.9rem);
  line-height: 1.45;
  color: #0b1d3a;
  background: rgba(11, 29, 58, 0.04);
  border-radius: 10px;
  border: 1px solid rgba(11, 29, 58, 0.16);
  border-left: 3px solid rgba(20, 184, 166, 0.58);
}

.sms-consent-checkbox {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin: 0;
  font-weight: 600;
  line-height: 1.5;
  cursor: pointer;
}

.sms-consent-checkbox input[type="checkbox"] {
  margin-top: 0.2em;
  flex-shrink: 0;
  width: 1.125rem;
  height: 1.125rem;
  min-width: 1.125rem;
  min-height: 1.125rem;
  accent-color: #14b8a6;
}

.sms-consent-help {
  margin: 10px 0 0;
  padding: 0;
  font-size: clamp(0.8rem, 2.2vw, 0.86rem);
  line-height: 1.5;
  font-weight: 520;
  color: rgba(11, 29, 58, 0.82);
}

.sms-consent-help a {
  color: #0b1d3a;
  font-weight: 650;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.page-business-services .ai-bs-form-submit {
  width: 100%;
  margin-top: 2px;
  margin-bottom: max(6px, env(safe-area-inset-bottom, 0px));
  min-height: 50px;
  padding-top: 14px;
  padding-bottom: 14px;
  justify-content: center;
  font-weight: 800;
}

@media (max-width: 768px) {
  .page-business-services .ai-bs-intake-form .transport-intake-grid,
  .page-business-services .hs-intake-form .transport-intake-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .page-business-services .ai-bs-project-request-shell {
    padding: 16px 14px 24px;
  }

  .page-business-services .ai-bs-intake-form .transport-intake-section {
    padding: 15px 13px 17px;
  }

  .page-business-services .ai-bs-intake-form input,
  .page-business-services .ai-bs-intake-form select,
  .page-business-services .ai-bs-intake-form textarea {
    min-height: 44px;
    padding: 10px 12px;
  }

  .page-business-services .ai-bs-intake-form .transport-field span {
    font-size: 0.8rem;
  }

  .page-business-services .ai-bs-intake-form .business-operator-check {
    font-size: 0.93rem;
    padding: 6px 0;
    gap: 12px;
  }

  .page-business-services .ai-bs-intake-form .sms-consent-block {
    padding: 10px 12px;
  }

  .page-business-services .ai-bs-intake-form .sms-consent-checkbox {
    font-size: 0.86rem;
  }

  .page-business-services .ai-bs-intake-form .sms-consent-help {
    font-size: 0.84rem;
  }

  .page-business-services .ai-bs-early-cta__actions .btn {
    width: 100%;
    justify-content: center;
  }
}

/* ==========================================================================
   Website strategy polish — mobile word-break QA (homepage + business services)
   ========================================================================== */

.page-home .ai-proof-section,
.page-business-services {
  overflow-x: clip;
}

.page-home .ai-proof-section :where(
  h1, h2, h3, p, li, a, button, span, strong, .btn, .section-text, .ai-proof-lead,
  .ai-proof-proofline, .ai-systems-chip, .ai-systems-card h3, .ai-systems-card p, .restaurant-owner-soft-link,
  .ai-systems-hero-caption, .consent-note, .footer-links a, .ai-offer-card, .ai-bs-owner-card
),
.page-home-services :where(
  h1, h2, h3, h4, p, li, a, button, label, legend, span, strong, .btn, .hero-text,
  .section-text, .hs-compare-list, .hs-adapt-chip, .hs-first-path, .hs-help-card,
  .hs-trade-compact, .hs-trust-item, .ai-bs-category-copy, .ai-owner-lede, .hs-consent-note
),
.page-business-services :where(
  h1, h2, h3, h4, p, li, a, button, label, legend, span, strong, .btn, .hero-text,
  .section-text, .ai-bs-leak-p, .ai-bs-leak-h, .ai-bs-proof-card-p, .ai-bs-proof-card-h,
  .ai-bs-pillar-card, .ai-bs-pillar-card p, .ai-bs-flagship-copy, .ai-bs-flagship-title,
  .ai-bs-category-copy, .ai-bs-category-title, .ai-bs-path-examples, .ai-bs-hero-proof-line,
  .ai-bs-flow-step-desc, .ai-bs-flow-step-label, .ai-bs-owner-footnote,
  .ai-offer-list li, .ai-offer-best, .ai-bs-owner-card, .ai-bs-owner-card p, .ai-bs-attconv-card-copy,
  .live-concierge__chip, .live-concierge__preview-text, .live-concierge__panel-support,
  .business-operator-diagnostic-note, .business-operator-request-helper, .consent-note,
  .ai-bs-project-request-lede, .business-operator-check, .business-operator-check-legend,
  .footer-links a, .ai-bs-lead-flow-text, .ai-bs-lead-flow-foot, .ai-offer-card, .ai-offer-title
) {
  word-break: normal;
  overflow-wrap: normal;
  hyphens: none;
  -webkit-hyphens: none;
}

.page-home .ai-proof-section :where(
  p, li, .section-text, .ai-proof-lead, .ai-proof-proofline, .ai-systems-card p, .ai-systems-hero-caption,
  .restaurant-owner-soft-link, .consent-note
),
.page-home-services :where(
  p, li, .hero-text, .section-text, .ai-bs-hero-support, .hs-compare-list,
  .hs-band-lede, .hs-adapt-chip span, .hs-first-path p, .hs-help-card p,
  .hs-trade-compact span, .hs-trust-item p, .ai-bs-category-copy, .ai-owner-lede, .hs-consent-note
),
.page-business-services :where(
  p, li, .hero-text, .section-text, .ai-bs-leak-p, .ai-bs-proof-card-p, .ai-bs-pillar-card p,
  .ai-bs-flagship-copy, .ai-offer-list li, .ai-offer-best, .ai-bs-owner-card p,
  .ai-bs-attconv-card-copy, .ai-bs-flow-step-desc, .live-concierge__preview-text, .live-concierge__panel-support,
  .business-operator-diagnostic-note, .business-operator-request-helper, .consent-note,
  .ai-bs-project-request-lede
) {
  letter-spacing: normal;
}

.page-home .ai-proof-section :where(.eyebrow, .ai-proof-eyebrow, .ai-systems-tag),
.page-business-services :where(
  .eyebrow, .eyebrow-on-dark, .ai-bs-lead-flow-label, .ai-bs-includes-label,
  .ai-offer-best-label, .ai-offer-outcome-label, .ai-bs-proof-card-num
) {
  letter-spacing: 0.12em;
}

@media (max-width: 420px) {
  .page-home .ai-proof-section .ai-proof-headline,
  .page-business-services .ai-strategic-title,
  .page-business-services .hero-title {
    font-size: clamp(1.45rem, 6.2vw, 1.85rem);
    line-height: 1.18;
  }

  .page-home .ai-proof-section .ai-systems-chip-row,
  .page-business-services .live-concierge__chips--lane {
    gap: 8px;
  }

  .page-home .ai-proof-section .ai-systems-chip,
  .page-business-services .live-concierge__chip {
    font-size: 0.82rem;
    letter-spacing: normal;
  }
}

/* --- Business services rebuild: AI era layout helpers --- */
.page-business-services .ai-bs-advantage-grid {
  list-style: none;
  margin: 0 0 clamp(18px, 2.5vw, 26px);
  padding: 0;
  display: grid;
  gap: clamp(12px, 2vw, 16px);
  grid-template-columns: 1fr;
}

@media (min-width: 720px) {
  .page-business-services .ai-bs-advantage-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.page-business-services .ai-bs-advantage-card {
  padding: clamp(16px, 2vw, 20px);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid rgba(11, 29, 58, 0.08);
  box-shadow: 0 12px 32px rgba(11, 29, 58, 0.06);
}

.page-business-services .ai-bs-advantage-title {
  margin: 0 0 8px;
  font-size: clamp(0.98rem, 0.2vw + 0.9rem, 1.05rem);
  font-weight: 880;
  color: var(--navy, #0b1d3a);
}

.page-business-services .ai-bs-advantage-card p {
  margin: 0;
  font-size: 0.9rem;
  line-height: 1.55;
  color: rgba(11, 29, 58, 0.78);
}

.page-business-services .ai-bs-advantage-foot {
  margin-top: 0;
}

.page-business-services .ai-bs-market-pain {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 10px;
  max-width: 44rem;
}

.page-business-services .ai-bs-market-pain li {
  position: relative;
  padding-left: 1.35rem;
  font-size: clamp(0.92rem, 0.2vw + 0.86rem, 0.98rem);
  line-height: 1.55;
  color: rgba(255, 235, 210, 0.9);
}

.page-business-services .ai-bs-market-pain li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.55em;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--gold), var(--orange));
  box-shadow: 0 0 10px rgba(242, 178, 26, 0.45);
}

.page-business-services .ai-bs-model-lanes {
  grid-template-columns: 1fr;
}

@media (min-width: 900px) {
  .page-business-services .ai-bs-model-lanes {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.page-business-services .ai-bs-model-card .ai-offer-list {
  margin-bottom: 12px;
}

.page-business-services .ai-bs-category-grid--six {
  grid-template-columns: 1fr;
}

@media (min-width: 640px) {
  .page-business-services .ai-bs-category-grid--six {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1100px) {
  .page-business-services .ai-bs-category-grid--six {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.page-business-services .ai-bs-starting-grid {
  display: grid;
  gap: clamp(14px, 2vw, 18px);
  grid-template-columns: 1fr;
}

@media (min-width: 640px) {
  .page-business-services .ai-bs-starting-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) {
  .page-business-services .ai-bs-starting-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.page-business-services .ai-bs-path-card--featured {
  border: 1px solid rgba(242, 178, 26, 0.45);
  box-shadow:
    0 18px 40px rgba(11, 29, 58, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.65);
}

.page-business-services .ai-bs-proof-cta {
  margin-top: clamp(16px, 2.5vw, 24px);
}

/* --- AI adoption rebuild: hero, practical grid, lanes, process light --- */
.page-business-services .ai-bs-hero-tagline {
  font-weight: 820;
  font-size: clamp(1.05rem, 0.45vw + 0.95rem, 1.22rem);
  color: rgba(242, 178, 26, 0.95);
  margin-bottom: clamp(10px, 1.5vw, 14px);
}

.page-business-services .ai-bs-hero-support {
  margin-bottom: clamp(14px, 2vw, 18px);
}

.page-business-services .ai-bs-why-signals {
  list-style: none;
  margin: 0 0 clamp(18px, 2.5vw, 24px);
  padding: 0;
  display: grid;
  gap: clamp(12px, 2vw, 16px);
  grid-template-columns: 1fr;
}

@media (min-width: 640px) {
  .page-business-services .ai-bs-why-signals {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) {
  .page-business-services .ai-bs-why-signals {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.page-business-services .ai-bs-why-signal {
  padding: clamp(16px, 2vw, 20px);
  border-radius: var(--radius);
  border: 1px solid rgba(255, 246, 230, 0.12);
  background:
    radial-gradient(circle at 0% 0%, rgba(20, 184, 166, 0.12), transparent 48%),
    linear-gradient(168deg, rgba(255, 246, 230, 0.06) 0%, rgba(4, 12, 28, 0.52) 100%);
  box-shadow: 0 14px 36px rgba(0, 0, 0, 0.28);
}

.page-business-services .ai-bs-why-signal-label {
  display: block;
  margin: 0 0 8px;
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(242, 178, 26, 0.9);
}

.page-business-services .ai-bs-why-signal p {
  margin: 0;
  font-size: 0.9rem;
  line-height: 1.55;
  color: rgba(255, 235, 210, 0.9);
}

.page-business-services .ai-bs-practical-grid {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: clamp(12px, 2vw, 16px);
  grid-template-columns: 1fr;
}

@media (min-width: 520px) {
  .page-business-services .ai-bs-practical-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 900px) {
  .page-business-services .ai-bs-practical-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width: 1200px) {
  .page-business-services .ai-bs-practical-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}

.page-business-services .ai-bs-practical-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-height: 100%;
  padding: clamp(16px, 2vw, 20px);
  padding-top: clamp(18px, 2.2vw, 22px);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.78);
  border: 1px solid rgba(11, 29, 58, 0.08);
  box-shadow: 0 12px 32px rgba(11, 29, 58, 0.07);
  overflow: hidden;
}

.page-business-services .ai-bs-practical-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  pointer-events: none;
}

.page-business-services .ai-bs-practical-card--a::before { background: linear-gradient(90deg, var(--turquoise), rgba(20, 184, 166, 0.45)); }
.page-business-services .ai-bs-practical-card--b::before { background: linear-gradient(90deg, var(--gold), var(--orange)); }
.page-business-services .ai-bs-practical-card--c::before { background: linear-gradient(90deg, var(--pink), rgba(255, 92, 168, 0.45)); }
.page-business-services .ai-bs-practical-card--d::before { background: linear-gradient(90deg, var(--orange), var(--gold)); }
.page-business-services .ai-bs-practical-card--e::before { background: linear-gradient(90deg, var(--turquoise), var(--gold)); }
.page-business-services .ai-bs-practical-card--f::before { background: linear-gradient(90deg, var(--pink), var(--orange)); }
.page-business-services .ai-bs-practical-card--g::before { background: linear-gradient(90deg, var(--gold), var(--turquoise)); }
.page-business-services .ai-bs-practical-card--h::before { background: linear-gradient(90deg, var(--orange), var(--pink)); }
.page-business-services .ai-bs-practical-card--i::before { background: linear-gradient(90deg, var(--turquoise), var(--pink)); }
.page-business-services .ai-bs-practical-card--j::before { background: linear-gradient(90deg, var(--gold), var(--pink)); }

.page-business-services .ai-bs-practical-icon {
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0.12em;
  color: rgba(11, 29, 58, 0.45);
}

.page-business-services .ai-bs-practical-card h3 {
  margin: 0;
  font-size: clamp(0.96rem, 0.2vw + 0.88rem, 1.04rem);
  font-weight: 880;
  line-height: 1.3;
  color: var(--navy, #0b1d3a);
}

.page-business-services .ai-bs-practical-card p {
  margin: 0;
  font-size: 0.88rem;
  line-height: 1.55;
  color: rgba(11, 29, 58, 0.74);
}

.page-business-services .ai-bs-service-lanes {
  grid-template-columns: 1fr;
}

@media (min-width: 720px) {
  .page-business-services .ai-bs-service-lanes {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1100px) {
  .page-business-services .ai-bs-service-lanes {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .page-business-services .ai-bs-service-lanes .ai-offer-card:nth-child(1),
  .page-business-services .ai-bs-service-lanes .ai-offer-card:nth-child(2),
  .page-business-services .ai-bs-service-lanes .ai-offer-card:nth-child(3) {
    grid-column: span 2;
  }

  .page-business-services .ai-bs-service-lanes .ai-offer-card:nth-child(4) {
    grid-column: 2 / span 2;
  }

  .page-business-services .ai-bs-service-lanes .ai-offer-card:nth-child(5) {
    grid-column: 4 / span 2;
  }
}

.page-business-services .ai-bs-lane-desc {
  margin: 0 0 12px;
  font-size: 0.9rem;
  line-height: 1.58;
  color: rgba(255, 235, 210, 0.88);
  flex: 1 1 auto;
}

.page-business-services .ai-bs-service-lanes .ai-offer-card {
  display: flex;
  flex-direction: column;
}

.page-business-services .ai-bs-process-rail--light .ai-bs-process-card--light {
  background: rgba(255, 255, 255, 0.82);
  border: 1px solid rgba(11, 29, 58, 0.08);
  box-shadow: 0 12px 32px rgba(11, 29, 58, 0.07);
  backdrop-filter: none;
}

.page-business-services .ai-bs-process-rail--light .ai-bs-process-card--light .ai-process-num {
  background: linear-gradient(135deg, rgba(20, 184, 166, 0.35), rgba(242, 178, 26, 0.25));
  border: 1px solid rgba(11, 29, 58, 0.1);
  color: var(--navy, #0b1d3a);
}

.page-business-services .ai-bs-process-rail--light .ai-bs-process-card--light .ai-process-title {
  color: var(--navy, #0b1d3a);
}

.page-business-services .ai-bs-process-rail--light .ai-bs-process-card--light .ai-process-body p {
  color: rgba(11, 29, 58, 0.74);
}

@media (min-width: 1024px) {
  .page-business-services .ai-bs-proof-cards--eight {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (min-width: 1200px) {
  .page-business-services .ai-bs-starting-grid--ten {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}

@media (min-width: 640px) and (max-width: 1199px) {
  .page-business-services .ai-bs-starting-grid--ten {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Vertical business pages: spacing when starting paths follow category cards */
.page-business-services.page-home-services .ai-bs-category-grid + .ai-bs-starting-grid {
  margin-top: clamp(1.5rem, 3vw, 2.5rem);
}

.page-business-services .ai-bs-category-grid + .ai-bs-category-grid {
  margin-top: clamp(1.5rem, 3vw, 2.5rem);
}


/* ==========================================================================
   Business page journey rebuild — shared + vertical layouts
   ========================================================================== */

.page-business-services .ai-bs-adaptation-promo-grid {
  display: grid;
  gap: clamp(20px, 3vw, 28px);
  align-items: center;
}

@media (min-width: 900px) {
  .page-business-services .ai-bs-adaptation-promo-grid {
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
  }
}

.page-business-services .ai-bs-adaptation-visual,
.page-business-services .hosp-adaptation-visual,
.page-business-services .ps-adaptation-visual {
  margin: 0;
  border-radius: calc(var(--radius) + 2px);
  overflow: hidden;
  box-shadow: 0 18px 40px rgba(11, 29, 58, 0.14);
  border: 1px solid rgba(11, 29, 58, 0.1);
}

.page-business-services .ai-bs-adaptation-visual img,
.page-business-services .hosp-adaptation-visual img,
.page-business-services .ps-adaptation-visual img {
  display: block;
  width: 100%;
  height: auto;
  max-height: clamp(220px, 42vw, 480px);
  aspect-ratio: 16 / 10;
  object-fit: cover;
  object-position: center;
}

.page-business-services .hosp-campaign-visual img,
.page-business-services .hosp-ops-visual img {
  display: block;
  width: 100%;
  height: auto;
  max-height: clamp(220px, 42vw, 480px);
  aspect-ratio: 16 / 10;
  object-fit: cover;
  object-position: center;
}

.page-business-services .ai-bs-adaptation-signals {
  margin: clamp(14px, 2vw, 18px) 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 8px;
}

.page-business-services .ai-bs-adaptation-signals li {
  padding: 10px 12px;
  border-radius: calc(var(--radius) - 4px);
  font-size: 0.9rem;
  line-height: 1.45;
  color: rgba(11, 29, 58, 0.86);
  background: rgba(255, 255, 255, 0.72);
  border-left: 3px solid var(--turquoise);
}

.page-business-services .ai-bs-adaptation-cta {
  margin-top: clamp(14px, 2vw, 18px);
}

.page-home-services .hs-adaptation-section {
  background:
    linear-gradient(180deg, rgba(255, 251, 242, 0.98) 0%, rgba(255, 253, 248, 1) 55%, rgba(245, 250, 252, 0.92) 100%);
}

.page-home-services .hs-adaptation-card {
  margin-top: 0;
  padding: clamp(20px, 2.6vw, 28px);
  border-color: rgba(242, 178, 26, 0.34);
  box-shadow:
    0 22px 48px rgba(11, 29, 58, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.85);
}

.page-home-services .hs-adaptation-signals li {
  background: rgba(255, 255, 255, 0.9);
  border-left-color: rgba(20, 184, 166, 0.85);
}

.page-home-services .hs-adaptation-focus {
  display: grid;
  gap: 10px;
  margin-top: clamp(14px, 2vw, 18px);
}

@media (min-width: 560px) {
  .page-home-services .hs-adaptation-focus {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }
}

.page-home-services .hs-adaptation-focus-col {
  padding: 12px 14px;
  border-radius: calc(var(--radius) - 2px);
  background: rgba(11, 29, 58, 0.04);
  border: 1px solid rgba(11, 29, 58, 0.08);
}

.page-home-services .hs-adaptation-focus-col--plug {
  background: linear-gradient(145deg, rgba(20, 184, 166, 0.1) 0%, rgba(11, 29, 58, 0.04) 100%);
  border-color: rgba(20, 184, 166, 0.28);
}

.page-home-services .hs-adaptation-focus-label {
  display: block;
  margin-bottom: 4px;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(11, 29, 58, 0.62);
}

.page-home-services .hs-adaptation-focus-col strong {
  display: block;
  font-size: 0.92rem;
  line-height: 1.45;
  font-weight: 800;
  color: rgba(11, 29, 58, 0.94);
}

.page-home-services .hs-adaptation-cta {
  flex-wrap: wrap;
}

.page-home-services .hs-adaptation-cta .btn {
  flex: 1 1 12rem;
  min-width: 0;
  text-align: center;
}

.page-home-services .hs-adaptation-visual img {
  aspect-ratio: 16 / 10;
  object-position: center 22%;
}

.page-home-services .hs-build-grid--cream {
  margin-top: clamp(12px, 2vw, 16px);
}

.page-home-services .hs-build-card--cream {
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid rgba(11, 29, 58, 0.1);
  box-shadow: 0 12px 28px rgba(11, 29, 58, 0.06);
}

.page-home-services .hs-build-card--cream .hs-build-num {
  color: var(--turquoise);
}

.page-home-services .hs-build-card--cream h3 {
  color: var(--navy);
}

.page-home-services .hs-build-card--cream p {
  color: rgba(11, 29, 58, 0.82);
}

.page-home-services .hs-support-note,
.page-professional-services .hs-support-note {
  margin-top: clamp(14px, 2vw, 18px);
  font-size: 0.9rem;
  opacity: 0.88;
}

.page-home-services .hs-offer-card {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 14px 16px;
  border-radius: calc(var(--radius) - 4px);
  background: rgba(255, 246, 230, 0.08);
  border: 1px solid rgba(255, 246, 230, 0.14);
  color: #fff8eb;
  font-size: 0.9rem;
  line-height: 1.45;
}

.page-home-services .hs-offer-card strong {
  font-size: 0.98rem;
  font-weight: 780;
}

.page-home-services .hs-offer-card .btn {
  margin-top: 6px;
  align-self: flex-start;
}

.page-home-services .hs-offer-card--featured {
  border-color: rgba(242, 178, 26, 0.45);
  background: rgba(242, 178, 26, 0.12);
}

.page-professional-services .section-cream .ps-offer-detail-card {
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid rgba(11, 29, 58, 0.1);
  box-shadow: 0 12px 28px rgba(11, 29, 58, 0.06);
}

.page-professional-services .section-cream .ps-offer-detail-card h3 {
  color: var(--navy);
}

.page-professional-services .section-cream .ps-offer-detail-card p {
  color: rgba(11, 29, 58, 0.82);
}

.page-professional-services .section-cream .ps-secondary-card {
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid rgba(11, 29, 58, 0.09);
  box-shadow: 0 12px 28px rgba(11, 29, 58, 0.06);
}

.page-professional-services .section-cream .ps-secondary-card h4 {
  color: var(--navy);
}

.page-professional-services .section-cream .ps-secondary-card p {
  color: rgba(11, 29, 58, 0.82);
}

.page-hospitality-local-experience .hosp-guest-moments {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: clamp(14px, 2vw, 18px) 0;
  padding: 0;
  list-style: none;
}

.page-hospitality-local-experience .hosp-guest-moments li {
  padding: 8px 12px;
  border-radius: 999px;
  font-size: 0.84rem;
  font-weight: 650;
  color: var(--navy);
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid rgba(11, 29, 58, 0.1);
}

.page-hospitality-local-experience .hosp-hero-visual,
.page-hospitality-local-experience .hosp-campaign-visual {
  margin: clamp(14px, 2vw, 18px) 0 0;
  border-radius: calc(var(--radius) + 2px);
  overflow: hidden;
  box-shadow: 0 18px 40px rgba(11, 29, 58, 0.12);
}

.page-hospitality-local-experience .hosp-campaign-visual img {
  display: block;
  width: 100%;
  height: auto;
  max-height: clamp(220px, 42vw, 480px);
  aspect-ratio: 16 / 10;
  object-fit: cover;
  object-position: center;
}

.page-hospitality-local-experience .hosp-adaptation-band {
  align-items: center;
}

.page-hospitality-local-experience .hosp-first-paths {
  display: grid;
  gap: clamp(12px, 2vw, 16px);
}

@media (min-width: 768px) {
  .page-hospitality-local-experience .hosp-first-paths {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.page-hospitality-local-experience .hosp-first-path {
  padding: clamp(16px, 2vw, 20px);
  border-radius: calc(var(--radius) - 2px);
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid rgba(11, 29, 58, 0.09);
}

.page-hospitality-local-experience .hosp-first-path h3 {
  margin: 0 0 8px;
  font-size: 1rem;
  font-weight: 780;
  color: var(--navy);
}

.page-hospitality-local-experience .hosp-first-path p {
  margin: 0;
  font-size: 0.9rem;
  line-height: 1.5;
  color: rgba(11, 29, 58, 0.82);
}

.page-hospitality-local-experience .hosp-first-path--featured {
  border-color: rgba(20, 184, 166, 0.35);
  box-shadow: 0 0 24px rgba(20, 184, 166, 0.12);
}

.page-hospitality-local-experience .hosp-first-path .btn {
  margin-top: 12px;
}

.page-hospitality-local-experience .hosp-ops-dual {
  display: grid;
  gap: clamp(16px, 2.4vw, 22px);
}

@media (min-width: 900px) {
  .page-hospitality-local-experience .hosp-ops-dual {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.page-hospitality-local-experience .hosp-ops-panel {
  padding: clamp(18px, 2.4vw, 24px);
  border-radius: calc(var(--radius) - 2px);
  background: rgba(255, 246, 230, 0.07);
  border: 1px solid rgba(255, 246, 230, 0.14);
}

.page-hospitality-local-experience .hosp-ops-label {
  margin: 0 0 6px;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--gold);
}

.page-hospitality-local-experience .hosp-ops-panel h3 {
  margin: 0 0 12px;
  font-size: clamp(1rem, 0.25vw + 0.94rem, 1.08rem);
  font-weight: 780;
  color: #fff8eb;
}

.page-hospitality-local-experience .hosp-proof-list--dark li {
  color: rgba(255, 246, 230, 0.9);
  background: rgba(255, 246, 230, 0.07);
  border-color: rgba(255, 246, 230, 0.14);
  border-left-color: var(--gold);
}

.page-hospitality-local-experience .hosp-ops-visual {
  margin-top: 14px;
  border-radius: calc(var(--radius) - 4px);
  overflow: hidden;
}

.page-hospitality-local-experience .hosp-ops-visual img {
  display: block;
  width: 100%;
  height: auto;
  max-height: clamp(220px, 42vw, 480px);
  aspect-ratio: 16 / 10;
  object-fit: cover;
  object-position: center;
}

.page-hospitality-local-experience .hosp-campaign-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 clamp(14px, 2vw, 18px);
  padding: 0;
  list-style: none;
}

.page-hospitality-local-experience .hosp-campaign-chips li {
  padding: 8px 12px;
  border-radius: 999px;
  font-size: 0.84rem;
  font-weight: 650;
  color: var(--navy);
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid rgba(11, 29, 58, 0.1);
}

.page-hospitality-local-experience .hosp-venue-lanes {
  display: grid;
  gap: clamp(12px, 2vw, 14px);
}

.page-hospitality-local-experience .hosp-venue-lane {
  display: grid;
  gap: 8px;
  padding: clamp(14px, 2vw, 18px);
  border-radius: calc(var(--radius) - 2px);
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid rgba(11, 29, 58, 0.09);
}

@media (min-width: 640px) {
  .page-hospitality-local-experience .hosp-venue-lanes {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.page-hospitality-local-experience .hosp-venue-lane h3 {
  margin: 0;
  font-size: 1rem;
  font-weight: 780;
  color: var(--navy);
}

.page-hospitality-local-experience .hosp-venue-lane p {
  margin: 0;
  font-size: 0.9rem;
  line-height: 1.5;
  color: rgba(11, 29, 58, 0.82);
}

.page-hospitality-local-experience .hosp-venue-lane--featured {
  border-color: rgba(242, 178, 26, 0.4);
  box-shadow: 0 0 20px rgba(242, 178, 26, 0.12);
}

@media (min-width: 640px) {
  .page-hospitality-local-experience .hosp-venue-lane--featured {
    grid-column: 1 / -1;
  }
}

.page-business-types .bt-gateway-grid {
  display: grid;
  gap: clamp(16px, 2.4vw, 22px);
}

.page-business-types .bt-gateway-card {
  padding: clamp(18px, 2.4vw, 24px);
  border-radius: calc(var(--radius) - 2px);
  background: rgba(255, 246, 230, 0.07);
  border: 1px solid rgba(255, 246, 230, 0.14);
}

.page-business-types .bt-gateway-card--featured {
  border-color: rgba(242, 178, 26, 0.42);
  box-shadow: 0 0 28px rgba(242, 178, 26, 0.1);
}

.page-business-types .bt-gateway-title {
  margin: 0 0 8px;
  font-size: clamp(1.05rem, 0.3vw + 0.98rem, 1.16rem);
  font-weight: 780;
  color: #fff8eb;
}

.page-business-types .bt-gateway-who {
  margin: 0 0 14px;
  font-size: 0.9rem;
  line-height: 1.5;
  color: rgba(255, 246, 230, 0.78);
}

.page-business-types .bt-gateway-lanes {
  margin: 0 0 16px;
  display: grid;
  gap: 10px;
}

@media (min-width: 640px) {
  .page-business-types .bt-gateway-lanes {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.page-business-types .bt-gateway-lanes div {
  padding: 10px 12px;
  border-radius: calc(var(--radius) - 4px);
  background: rgba(0, 0, 0, 0.12);
}

.page-business-types .bt-gateway-lanes dt {
  margin: 0 0 4px;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--gold);
}

.page-business-types .bt-gateway-lanes dd {
  margin: 0;
  font-size: 0.88rem;
  line-height: 1.45;
  color: rgba(255, 246, 230, 0.86);
}

.page-business-types .bt-gateway-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.page-restaurants .rest-ai-adaptation {
  margin: clamp(14px, 2vw, 20px) 0;
  padding: clamp(16px, 2vw, 20px);
  border-radius: calc(var(--radius) - 2px);
  background: rgba(20, 184, 166, 0.1);
  border: 1px solid rgba(20, 184, 166, 0.28);
}

.page-restaurants .rest-ai-cap-grid {
  display: grid;
  gap: clamp(12px, 2vw, 16px);
  margin-bottom: clamp(18px, 2.4vw, 26px);
}

@media (min-width: 640px) {
  .page-restaurants .rest-ai-cap-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1100px) {
  .page-restaurants .rest-ai-cap-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .page-restaurants .rest-ai-cap--support {
    grid-column: 1 / -1;
  }
}

.page-restaurants .rest-ai-cap {
  padding: clamp(14px, 2vw, 18px);
  border-radius: calc(var(--radius) - 4px);
  background: rgba(255, 246, 230, 0.07);
  border: 1px solid rgba(255, 246, 230, 0.14);
}

.page-restaurants .rest-ai-cap-num {
  margin: 0 0 6px;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  color: var(--gold);
}

.page-restaurants .rest-ai-cap h3 {
  margin: 0 0 8px;
  font-size: 0.98rem;
  font-weight: 780;
  color: #fff8eb;
}

.page-restaurants .rest-ai-cap p {
  margin: 0;
  font-size: 0.88rem;
  line-height: 1.5;
  color: rgba(255, 246, 230, 0.82);
}

.page-restaurants .rest-ai-cap--support {
  border-style: dashed;
  opacity: 0.92;
}

.ai-proof-section .ai-systems-chip--priority {
  border-color: rgba(242, 178, 26, 0.45);
  background: rgba(242, 178, 26, 0.14);
  color: #fff8eb;
}

/* ==========================================================================
   Home Services polish — hero, typography, compact bands, trades
   ========================================================================== */

/* Contractor hero: replace generic AI dashboard backdrop */
.page-home-services .ai-bs-hero.hero-fiesta-dark {
  background-image:
    linear-gradient(90deg, rgba(5, 10, 24, 0.78) 0%, rgba(5, 10, 24, 0.52) 44%, rgba(5, 10, 24, 0.22) 72%, rgba(5, 10, 24, 0.08) 100%),
    url("assets/home-services-owner-homeowner-consultation.png");
  background-position: 0 0, 72% center;
  background-size: cover, cover;
}

@media (max-width: 899px) {
  .page-home-services .ai-bs-hero.hero-fiesta-dark {
    min-height: 0;
    max-height: none;
    background-image:
      linear-gradient(180deg, rgba(5, 10, 24, 0.88) 0%, rgba(5, 10, 24, 0.72) 55%, rgba(5, 10, 24, 0.5) 100%),
      url("assets/home-services-owner-homeowner-consultation.png");
    background-position: center, center 30%;
    background-size: cover, cover;
  }
}

.page-home-services .hs-hero-visual .hero-visual-panel {
  border-color: rgba(20, 184, 166, 0.35);
  box-shadow:
    0 22px 48px rgba(0, 0, 0, 0.38),
    0 0 0 1px rgba(255, 246, 230, 0.1);
}

.page-home-services .hs-main > .section {
  padding-top: clamp(28px, 3.5vw, 44px);
  padding-bottom: clamp(28px, 3.5vw, 44px);
}

.page-home-services .hs-final-band {
  padding-top: clamp(24px, 3vw, 36px);
  padding-bottom: clamp(28px, 3.5vw, 40px);
}

.page-home-services .hs-final-inner {
  max-width: 38rem;
}

.page-home-services .hs-final-cta {
  margin-top: clamp(12px, 1.8vw, 16px);
}

.page-home-services .hs-intake-form input::placeholder,
.page-home-services .hs-intake-form textarea::placeholder {
  color: rgba(11, 29, 58, 0.52);
  opacity: 1;
}

/* Ongoing adaptation — compact band */
.page-home-services .hs-adaptation-band {
  background: linear-gradient(180deg, rgba(255, 251, 242, 0.98) 0%, rgba(255, 253, 248, 1) 100%);
  border-top: 1px solid rgba(11, 29, 58, 0.06);
}

.page-home-services .hs-adapt-chips {
  display: grid;
  gap: var(--biz-card-gap, clamp(10px, 1.6vw, 14px));
  margin: 0;
  padding: 0;
  list-style: none;
}

@media (min-width: 720px) {
  .page-home-services .hs-adapt-chips {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.page-home-services .hs-adapt-chip {
  margin: 0;
  padding: var(--hs-card-pad);
  border-radius: var(--hs-card-radius);
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid rgba(11, 29, 58, 0.09);
  border-top: 3px solid var(--turquoise);
  box-shadow: 0 10px 24px rgba(11, 29, 58, 0.06);
}

.page-home-services .hs-adapt-chip strong {
  display: block;
  margin-bottom: 6px;
  font-size: clamp(0.95rem, 0.2vw + 0.9rem, 1.02rem);
  font-weight: 780;
  color: var(--navy);
}

.page-home-services .hs-adapt-chip span {
  display: block;
  font-size: 0.88rem;
  line-height: var(--hs-body-lh);
  color: rgba(11, 29, 58, 0.82);
}

/* Safe first step paths */
.page-home-services .hs-first-paths {
  display: grid;
  gap: var(--biz-card-gap, clamp(10px, 1.6vw, 14px));
  margin: 0;
  padding: 0;
  list-style: none;
}

@media (min-width: 640px) {
  .page-home-services .hs-first-paths {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.page-home-services .hs-first-path {
  margin: 0;
  padding: var(--hs-card-pad);
  border-radius: var(--hs-card-radius);
  background: rgba(255, 246, 230, 0.08);
  border: 1px solid rgba(255, 246, 230, 0.14);
}

.page-home-services .hs-first-path h3 {
  margin: 0 0 6px;
  font-size: clamp(0.96rem, 0.2vw + 0.9rem, 1.02rem);
  font-weight: 780;
  color: #fff8eb;
}

.page-home-services .hs-first-path p {
  margin: 0;
  font-size: 0.88rem;
  line-height: var(--hs-body-lh);
  color: rgba(255, 246, 230, 0.84);
}

.page-home-services .hs-section-cta {
  margin-top: var(--biz-space-md, clamp(18px, 2.4vw, 24px));
}

.page-home-services .hs-section-cta .btn {
  min-height: 48px;
}

@media (max-width: 520px) {
  .page-home-services .hs-section-cta .btn {
    width: 100%;
    justify-content: center;
  }
}

/* What AI can help with — four cards */
.page-home-services .hs-help-grid {
  display: grid;
  gap: var(--biz-card-gap, var(--hs-card-stack-gap));
  margin-top: 0;
}

@media (min-width: 640px) {
  .page-home-services .hs-help-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.page-home-services .hs-help-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: var(--hs-card-pad);
  border-radius: var(--hs-card-radius);
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid rgba(11, 29, 58, 0.09);
  border-left: 3px solid var(--gold);
  box-shadow: 0 10px 26px rgba(11, 29, 58, 0.06);
}

.page-home-services .hs-help-card h3 {
  margin: 0 0 6px;
  font-size: clamp(0.98rem, 0.2vw + 0.92rem, 1.04rem);
  font-weight: 780;
  line-height: 1.3;
  color: var(--navy);
}

.page-home-services .hs-help-card p {
  margin: 0;
  font-size: 0.9rem;
  line-height: var(--hs-body-lh);
  color: rgba(11, 29, 58, 0.82);
}

/* Trades: featured + compact */
.page-home-services .hs-trades-featured {
  margin-top: clamp(12px, 2vw, 16px);
}

.page-home-services #starting-points .ai-bs-category-card {
  padding-bottom: clamp(14px, 2vw, 18px);
}

.page-home-services #starting-points .ai-bs-category-actions {
  display: none;
}

.page-home-services .hs-trades-compact {
  display: grid;
  gap: 8px;
  margin: clamp(14px, 2vw, 18px) 0 0;
  padding: 0;
  list-style: none;
}

@media (min-width: 640px) {
  .page-home-services .hs-trades-compact {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.page-home-services .hs-trades-compact > li {
  margin: 0;
  min-width: 0;
}

.page-home-services .hs-trade-compact {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 12px 14px;
  border-radius: calc(var(--radius) - 4px);
  text-decoration: none;
  color: inherit;
  background: rgba(255, 246, 230, 0.06);
  border: 1px solid rgba(255, 246, 230, 0.12);
  transition: border-color 0.2s ease, background 0.2s ease;
}

.page-home-services .hs-trade-compact:hover {
  border-color: rgba(20, 184, 166, 0.4);
  background: rgba(20, 184, 166, 0.1);
}

.page-home-services .hs-trade-compact strong {
  font-size: 0.94rem;
  font-weight: 780;
  color: #fff8eb;
}

.page-home-services .hs-trade-compact span {
  font-size: 0.84rem;
  line-height: 1.45;
  color: rgba(255, 246, 230, 0.82);
}

/* Trust — compact cream band */
.page-home-services .hs-trust-band {
  padding-top: var(--biz-sec-pad-compact, clamp(40px, 5vw, 48px));
  padding-bottom: var(--biz-sec-pad-compact, clamp(40px, 5vw, 48px));
}

.page-home-services .hs-band-head--trust {
  max-width: 38rem;
  margin-bottom: 0;
}

.page-home-services .hs-trust-band .hs-trust-lede,
.page-home-services .hs-trust-band .ai-owner-lede {
  margin: 0;
  font-size: 0.9rem;
  line-height: var(--hs-body-lh);
  color: rgba(11, 29, 58, 0.84);
  max-width: 38rem;
}

.page-home-services .hs-trust-grid {
  display: grid;
  gap: var(--biz-card-gap, var(--hs-card-stack-gap));
  margin: 0;
  padding: 0;
  list-style: none;
}

@media (min-width: 640px) {
  .page-home-services .hs-trust-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.page-home-services .hs-trust-item {
  margin: 0;
  padding: var(--hs-card-pad);
  border-radius: var(--hs-card-radius);
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid rgba(11, 29, 58, 0.09);
  border-left: 3px solid var(--turquoise);
  box-shadow: 0 8px 20px rgba(11, 29, 58, 0.05);
}

.page-home-services .hs-trust-item h3 {
  margin: 0 0 4px;
  font-size: clamp(0.92rem, 0.2vw + 0.86rem, 0.98rem);
  font-weight: 780;
  line-height: 1.3;
  color: var(--navy);
}

.page-home-services .hs-trust-item p {
  margin: 0;
  font-size: 0.86rem;
  line-height: 1.48;
  color: rgba(11, 29, 58, 0.82);
}

.page-home-services #home-services-inquiry,
.page-home-services #safe-first-step,
.page-home-services #ongoing-adaptation {
  scroll-margin-top: calc(var(--header-h, 64px) + 16px);
}

/* Home Services — scoped overrides vs shared business-services typography */
.page-business-services.page-home-services .ai-band-head {
  margin-bottom: 0;
}

.page-business-services.page-home-services .ai-band-head .section-text,
.page-business-services.page-home-services .ai-band-head .hs-band-lede {
  margin-bottom: 0;
}

.page-business-services.page-home-services .ai-strategic-title {
  text-wrap: auto;
}

.page-business-services.page-home-services .hs-compare-card {
  padding: var(--hs-card-pad);
  border-radius: var(--hs-card-radius);
}

.page-business-services.page-home-services .hs-compare-list {
  line-height: var(--hs-body-lh);
  letter-spacing: normal;
  word-spacing: normal;
}

@media (max-width: 899px) {
  .page-business-services.page-home-services .hs-help-grid {
    gap: var(--biz-card-gap);
    margin-top: 0;
  }

  .page-business-services.page-home-services .hs-help-card {
    padding: var(--biz-card-pad);
  }

  .page-business-services.page-home-services .hs-trust-grid {
    gap: var(--biz-card-gap);
    margin-top: 0;
  }

  .page-business-services.page-home-services .hs-trust-item {
    padding: var(--biz-card-pad);
  }

  .page-business-services.page-home-services #contractor-journey .hs-band-head {
    margin-bottom: 0;
  }

  .page-business-services.page-home-services .hs-trust-band > .routes-band-inner {
    gap: var(--biz-space-sm);
  }
}

/* ==========================================================================
   Business-facing readable copy — global typography (all verticals + restaurants)
   Fixes eyebrow letter-spacing cascade, Safari word breaks, and text-wrap balance.
   ========================================================================== */

:is(.page-business-services, .page-restaurants) {
  --biz-body-lh: 1.52;
  --biz-space-xs: clamp(6px, 1.2vw, 8px);
  --biz-space-sm: clamp(10px, 1.6vw, 14px);
  --biz-space-md: clamp(18px, 2.4vw, 24px);
  --biz-space-lg: clamp(32px, 4vw, 40px);
  --biz-space-xl: clamp(48px, 5.5vw, 64px);
  --biz-sec-pad: clamp(56px, 7vw, 72px);
  --biz-sec-pad-compact: clamp(40px, 5vw, 48px);
  --biz-card-radius: calc(var(--radius) - 2px);
  --biz-card-pad: clamp(14px, 2vw, 18px);
  --biz-card-gap: clamp(10px, 1.6vw, 14px);
  --biz-card-title-gap: var(--biz-space-xs);
}

.page-home .ai-proof-section {
  --biz-body-lh: 1.52;
  --biz-space-xs: clamp(6px, 1.2vw, 8px);
  --biz-space-sm: clamp(10px, 1.6vw, 14px);
  --biz-space-md: clamp(18px, 2.4vw, 24px);
  --biz-space-lg: clamp(32px, 4vw, 40px);
  --biz-space-xl: clamp(48px, 5.5vw, 64px);
  --biz-sec-pad: clamp(56px, 7vw, 72px);
  --biz-sec-pad-compact: clamp(40px, 5vw, 48px);
  --biz-card-pad: clamp(14px, 2vw, 18px);
  --biz-card-gap: clamp(10px, 1.6vw, 14px);
}

/* Readable body copy — never inherit eyebrow tracking or label uppercase */
:is(.page-business-services, .page-restaurants) :where(
  p:not(.eyebrow):not(.eyebrow-on-dark):not(.eyebrow-hero):not(.ai-hero-eyebrow),
  li,
  dd,
  .hero-text,
  .section-text,
  .ai-bs-hero-support,
  .ai-bs-hero-tagline,
  .ai-hero-lead,
  .ai-bs-pillar-lede,
  .ai-bs-pillar-card p,
  .ai-bs-adaptation-card p,
  .ai-bs-category-copy,
  .ai-bs-category-includes,
  .ai-bs-leak-p,
  .ai-bs-leak-support,
  .ai-bs-proof-card-p,
  .ai-bs-owner-card p,
  .ai-bs-owner-lede,
  .ai-bs-project-request-lede,
  .ai-bs-flagship-copy,
  .ai-offer-list li,
  .ai-process-body p,
  .hs-band-lede,
  .hs-compare-list,
  .hs-compare-list li,
  .hs-adapt-chip span,
  .hs-first-path p,
  .hs-help-card p,
  .hs-trade-compact span,
  .hs-trust-item p,
  .hs-support-note,
  .hs-form-note,
  .hs-consent-note,
  .hosp-first-path p,
  .hosp-proof-list li,
  .hosp-guest-moments li,
  .hosp-venue-lane p,
  .ps-compare-list,
  .ps-compare-list li,
  .ps-offer-detail-card p,
  .ps-secondary-card p,
  .ps-trust-list li,
  .bt-gateway-who,
  .bt-gateway-lanes dd,
  .rest-path-copy,
  .rest-benefit-list li,
  .rest-proof-card p,
  .rest-ai-cap p,
  .rest-guardrail-copy,
  .rest-form-note,
  .rest-consent-note,
  .business-operator-diagnostic-note,
  .business-operator-request-helper,
  .consent-note,
  .footer-lead,
  .footer-mission,
  .footer-note,
  .site-header-proof,
  .transport-intake-form input,
  .transport-intake-form select,
  .transport-intake-form textarea,
  .transport-intake-form input::placeholder,
  .transport-intake-form textarea::placeholder,
  .business-operator-check,
  .sms-consent-checkbox,
  .sms-consent-help
),
.page-home .ai-proof-section :where(
  p:not(.eyebrow):not(.ai-proof-eyebrow):not(.ai-proof-media-card__headline):not(.ai-proof-media-card__support),
  li,
  .section-text,
  .ai-proof-lead,
  .ai-proof-proofline,
  .ai-systems-card p,
  .restaurant-owner-soft-link
) {
  letter-spacing: normal;
  word-spacing: normal;
  text-align: start;
  text-align-last: start;
  text-transform: none;
  hyphens: none;
  -webkit-hyphens: none;
  overflow-wrap: normal;
  word-break: normal;
  text-wrap: auto;
  line-height: var(--biz-body-lh, 1.52);
}

:is(.page-business-services, .page-restaurants) :where(
  .hs-faq-item dd,
  .hs-trust-lede,
  .ai-owner-lede,
  .hs-first-path p,
  .hs-trade-compact span,
  .hs-consent-note,
  .site-header-proof,
  .footer-tagline
) {
  letter-spacing: normal;
  word-spacing: normal;
  text-align: start;
  text-align-last: start;
  text-transform: none;
  hyphens: none;
  -webkit-hyphens: none;
  overflow-wrap: normal;
  word-break: normal;
  text-wrap: auto;
  line-height: var(--biz-body-lh, 1.52);
}

:is(.page-business-services, .page-restaurants) :where(.hs-main, .site-header) :where(strong, em, b, i),
:is(.page-business-services, .page-restaurants) > .footer :where(strong, em, b, i) {
  letter-spacing: normal;
  word-spacing: normal;
}

:is(.page-business-services, .page-restaurants) :where(
  .btn,
  .hs-intake-form .transport-field span,
  .ai-bs-intake-form .transport-field span,
  .rest-intake-form .transport-field span,
  .hs-trade-compact strong,
  .hs-adapt-chip strong,
  .hs-help-card h3,
  .hs-trust-item h3,
  .hs-first-path h3,
  .hs-compare-title,
  .ai-bs-category-title,
  .bt-gateway-title,
  .hosp-first-path h3,
  .ps-compare-title,
  .rest-path-title
),
.page-home .ai-proof-section :where(.btn, .ai-systems-chip):not(.ai-proof-media-card__tag) {
  letter-spacing: normal;
  word-spacing: normal;
  text-transform: none;
  text-wrap: auto;
}

.page-home .ai-proof-media-card__tag {
  letter-spacing: 0.14em;
  text-transform: uppercase;
  word-spacing: normal;
}

/* Headlines — no balance/pretty wrapping on business sales pages */
:is(.page-business-services, .page-restaurants) :where(
  h1,
  h2,
  h3,
  h4,
  .hero-title,
  .ai-strategic-title,
  .ai-proof-headline
),
.page-home .ai-proof-section :where(h2, .ai-proof-headline, .ai-proof-media-card__headline) {
  text-wrap: auto;
  text-align: start;
  hyphens: none;
  -webkit-hyphens: none;
  overflow-wrap: normal;
  word-break: normal;
  letter-spacing: -0.02em;
  word-spacing: normal;
}

.page-home .ai-proof-section .ai-proof-pillar-grid--capabilities .ai-proof-pillar-card h3 {
  letter-spacing: normal;
  word-spacing: normal;
  text-transform: none;
}

/* Eyebrows / kickers only — wide tracking must not cascade to siblings or children */
:is(.page-business-services, .page-restaurants) :where(
  .eyebrow,
  .eyebrow-on-dark,
  .eyebrow-hero,
  .ai-hero-eyebrow,
  .ai-proof-eyebrow,
  .ai-bs-lead-flow-label,
  .ai-bs-includes-label,
  .ai-offer-best-label,
  .ai-offer-outcome-label,
  .ai-bs-proof-card-num,
  .hs-build-num,
  .hosp-ops-label,
  .rest-path-label,
  .rest-ai-cap-num,
  .ai-process-num,
  .bt-gateway-lanes dt,
  .transport-intake-section__heading,
  .business-operator-check-legend
),
.page-home .ai-proof-section :where(.eyebrow, .ai-proof-eyebrow) {
  letter-spacing: 0.12em;
  text-transform: uppercase;
  text-wrap: auto;
  word-spacing: normal;
}

:is(.page-business-services, .page-restaurants) .ai-band-head,
:is(.page-business-services, .page-restaurants) .hs-band-head,
:is(.page-business-services, .page-restaurants) .rest-band-head {
  letter-spacing: normal;
  text-transform: none;
}

/* Vertical section rhythm — standard / compact section padding */
:is(.page-business-services, .page-restaurants) main > .section:not(.hero):not(.ai-bs-hero):not(.hs-hero):not(.ps-hero):not(.hosp-hero):not(.rest-hero) {
  padding-top: var(--biz-sec-pad);
  padding-bottom: var(--biz-sec-pad);
}

:is(.page-business-services, .page-restaurants) main > .section.ai-bs-sec-major {
  padding-top: var(--biz-sec-pad);
  padding-bottom: var(--biz-sec-pad);
}

:is(.page-business-services, .page-restaurants) main > .section.ai-bs-sec-compact,
:is(.page-business-services, .page-restaurants) .hs-adaptation-band,
:is(.page-business-services, .page-restaurants) .hs-trust-band,
:is(.page-business-services, .page-restaurants) .rest-sec--guardrail,
:is(.page-business-services, .page-restaurants) .ai-bs-adaptation-promo,
:is(.page-business-services, .page-restaurants) #ongoing-adaptation {
  padding-top: var(--biz-sec-pad-compact);
  padding-bottom: var(--biz-sec-pad-compact);
}

:is(.page-business-services, .page-restaurants) .routes-band-inner {
  gap: var(--biz-space-md);
}

:is(.page-business-services, .page-restaurants) .ai-band-head,
:is(.page-business-services, .page-restaurants) .hs-band-head,
:is(.page-business-services, .page-restaurants) .rest-band-head {
  max-width: 40rem;
  margin-bottom: 0;
}

:is(.page-business-services, .page-restaurants) .ai-band-head .eyebrow,
:is(.page-business-services, .page-restaurants) .hs-band-head .eyebrow,
:is(.page-business-services, .page-restaurants) .rest-band-head .eyebrow {
  margin-bottom: var(--biz-space-xs);
}

:is(.page-business-services, .page-restaurants) .ai-band-head .ai-strategic-title,
:is(.page-business-services, .page-restaurants) .hs-band-head .ai-strategic-title,
:is(.page-business-services, .page-restaurants) .rest-band-head h2 {
  margin-bottom: var(--biz-space-sm);
}

:is(.page-business-services, .page-restaurants) .ai-band-head .section-text,
:is(.page-business-services, .page-restaurants) .hs-band-head .section-text,
:is(.page-business-services, .page-restaurants) .hs-band-head .hs-band-lede,
:is(.page-business-services, .page-restaurants) .rest-band-head .section-text {
  margin-bottom: 0;
}

:is(.page-business-services, .page-restaurants) .ai-bs-section-split {
  gap: var(--biz-space-md);
  margin-bottom: var(--biz-space-md);
}

:is(.page-business-services, .page-restaurants) .ai-bs-section-visual--wide {
  margin-bottom: var(--biz-space-md);
}

/* Shared card rhythm */
:is(.page-business-services, .page-restaurants) :where(
  .hs-help-card,
  .hs-compare-card,
  .hs-first-path,
  .hs-trust-item,
  .hosp-first-path,
  .hosp-ops-panel,
  .ps-compare-card,
  .ps-offer-detail-card,
  .bt-gateway-card,
  .ai-bs-pillar-card,
  .ai-bs-category-card,
  .ai-bs-owner-card,
  .ai-bs-adaptation-card,
  .ai-bs-cap-card,
  .ai-capability-card,
  .rest-path-card,
  .rest-ai-cap,
  .rest-proof-card
) {
  border-radius: var(--biz-card-radius, calc(var(--radius) - 2px));
  padding: var(--biz-card-pad, clamp(14px, 2vw, 18px));
}

:is(.page-business-services, .page-restaurants) :where(
  .hs-help-card h3,
  .hs-compare-card .hs-compare-title,
  .hs-first-path h3,
  .hs-trust-item h3,
  .hosp-first-path h3,
  .ps-compare-card .ps-compare-title,
  .bt-gateway-card .bt-gateway-title,
  .ai-bs-pillar-card h3,
  .ai-bs-category-card .ai-bs-category-title,
  .ai-bs-owner-card h3,
  .ai-bs-adaptation-card h3,
  .rest-path-card .rest-path-title,
  .rest-ai-cap h3,
  .rest-proof-card h3
) {
  margin-top: 0;
  margin-bottom: var(--biz-card-title-gap);
}

:is(.page-business-services, .page-restaurants) :where(
  .hs-help-grid,
  .hs-compare-grid,
  .hs-trust-grid,
  .hosp-first-paths,
  .hosp-ops-dual,
  .ps-compare-grid,
  .ps-offer-detail-grid,
  .bt-gateway-grid,
  .rest-path-grid,
  .rest-ai-cap-grid
) {
  gap: var(--biz-card-gap, clamp(10px, 1.6vw, 14px));
}

/* Compact trust / guardrail bands */
:is(.page-business-services, .page-restaurants) :where(
  .ai-bs-owner-trust:not(.ai-bs-sec-major)
) {
  padding-top: var(--biz-sec-pad-compact);
  padding-bottom: var(--biz-sec-pad-compact);
}

:is(.page-business-services, .page-restaurants) .ai-bs-owner-trust.ai-bs-sec-major {
  padding-top: var(--biz-sec-pad);
  padding-bottom: var(--biz-sec-pad);
}

:is(.page-business-services, .page-restaurants) .ai-bs-owner-cards {
  gap: var(--biz-card-gap, clamp(10px, 1.6vw, 14px));
}

:is(.page-business-services, .page-restaurants) .ai-bs-owner-cards--seven {
  grid-template-columns: 1fr;
}

@media (min-width: 640px) {
  :is(.page-business-services, .page-restaurants) .ai-bs-owner-cards--seven {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1000px) {
  :is(.page-business-services, .page-restaurants) .ai-bs-owner-cards--seven {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* Compressed trade / venue compact rows */
:is(.page-business-services, .page-restaurants) .hs-trades-compact {
  display: grid;
  gap: 8px;
  margin: clamp(12px, 2vw, 16px) 0 0;
  padding: 0;
  list-style: none;
}

:is(.page-business-services, .page-restaurants) .hs-trade-compact {
  display: block;
  padding: 12px 14px;
  border-radius: var(--biz-card-radius, calc(var(--radius) - 2px));
  background: rgba(255, 246, 230, 0.06);
  border: 1px solid rgba(255, 246, 230, 0.14);
  text-decoration: none;
  color: inherit;
}

:is(.page-business-services, .page-restaurants) .hs-trade-compact strong {
  display: block;
  margin-bottom: 4px;
  font-size: 0.92rem;
  font-weight: 780;
  color: #fff8eb;
}

:is(.page-business-services, .page-restaurants) .section-cream .hs-trade-compact {
  background: rgba(255, 255, 255, 0.94);
  border-color: rgba(11, 29, 58, 0.09);
}

:is(.page-business-services, .page-restaurants) .section-cream .hs-trade-compact strong {
  color: var(--navy);
}

/* Business types gateway — tighter cards */
.page-business-types .bt-gateway-card {
  padding: var(--biz-card-pad, clamp(14px, 2vw, 18px));
}

.page-business-types .bt-gateway-lanes dt {
  letter-spacing: 0.08em;
}

.page-business-types .ai-bs-process-rail--light {
  margin-bottom: clamp(14px, 2vw, 18px);
}

/* Hospitality — distinct hero, compact venue grid */
.page-hospitality-local-experience .ai-bs-hero.hero-fiesta-dark {
  background-image:
    linear-gradient(90deg, rgba(5, 10, 24, 0.82) 0%, rgba(5, 10, 24, 0.55) 48%, rgba(5, 10, 24, 0.2) 100%),
    url("assets/hospitality-local-experience-hero.png");
  background-position: 0 0, 68% center;
  background-size: cover, cover;
}

.page-hospitality-local-experience .hosp-guest-moments {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.page-hospitality-local-experience .hosp-guest-moments li {
  padding: 8px 12px;
  border-radius: 999px;
  font-size: 0.82rem;
  font-weight: 650;
  background: rgba(11, 29, 58, 0.06);
  border: 1px solid rgba(11, 29, 58, 0.1);
  color: rgba(11, 29, 58, 0.88);
}

.page-hospitality-local-experience .ai-bs-category-grid--six {
  grid-template-columns: 1fr;
}

@media (min-width: 720px) {
  .page-hospitality-local-experience .ai-bs-category-grid--six.hosp-venues-featured {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Professional — authority-first hero */
.page-professional-services .ai-bs-hero.hero-fiesta-dark {
  background-image:
    linear-gradient(90deg, rgba(5, 10, 24, 0.84) 0%, rgba(5, 10, 24, 0.58) 50%, rgba(5, 10, 24, 0.22) 100%),
    url("assets/professional-services-hero-consultation.png");
  background-position: 0 0, 72% center;
  background-size: cover, cover;
}

.page-professional-services .hs-build-grid {
  gap: var(--biz-card-gap, clamp(10px, 1.6vw, 14px));
}

.page-professional-services .ai-bs-category-grid--six.ps-trades-featured {
  grid-template-columns: 1fr;
}

@media (min-width: 720px) {
  .page-professional-services .ai-bs-category-grid--six.ps-trades-featured {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Restaurants — readable copy on form labels */
.page-restaurants .rest-intake-form .transport-field span {
  letter-spacing: 0.02em;
}

@media (max-width: 899px) {
  :is(.page-business-services, .page-restaurants) :where(
    p:not(.eyebrow):not(.eyebrow-on-dark):not(.eyebrow-hero):not(.ai-hero-eyebrow),
    li,
    dd,
    .hero-text,
    .section-text,
    .ai-bs-hero-support,
    .ai-bs-hero-tagline,
    .ai-hero-lead,
    .hs-band-lede,
    .hs-compare-list,
    .hs-compare-list li,
    .hs-adapt-chip span,
    .hs-first-path p,
    .hs-help-card p,
    .hs-trust-item p,
    .hs-trade-compact span,
    .ai-bs-category-copy,
    .ai-owner-lede,
    .hs-trust-lede,
    .hs-form-note,
    .hs-consent-note,
    .hs-faq-item dd,
    .hosp-proof-list li,
    .ps-compare-list li,
    .bt-gateway-lanes dd,
    .rest-path-copy,
    .footer-lead,
    .footer-mission,
    .footer-note,
    .footer-tagline,
    .site-header-proof
  ),
  .page-home .ai-proof-section :where(
    p:not(.eyebrow):not(.ai-proof-media-card__tag),
    li,
    .section-text,
    .ai-proof-lead,
    .ai-systems-card p,
    .ai-proof-media-card__headline,
    .ai-proof-media-card__support
  ) {
    letter-spacing: normal !important;
    word-spacing: normal !important;
    text-align: start !important;
    text-align-last: start !important;
    text-transform: none !important;
    hyphens: none !important;
    -webkit-hyphens: none !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    text-wrap: auto !important;
    line-height: 1.52 !important;
  }

  :is(.page-business-services, .page-restaurants) :where(
    .hs-help-card h3,
    .hs-trust-item h3,
    .hs-first-path h3,
    .hs-adapt-chip strong,
    .hs-compare-title,
    .ai-bs-category-title,
    .btn
  ) {
    letter-spacing: normal !important;
    word-spacing: normal !important;
    text-transform: none !important;
    text-wrap: auto !important;
  }

  :is(.page-business-services, .page-restaurants) :where(.hero-title, .ai-strategic-title) {
    text-wrap: auto !important;
    letter-spacing: -0.015em;
  }

  :is(.page-business-services, .page-restaurants) :where(.eyebrow, .eyebrow-on-dark, .eyebrow-hero, .ai-hero-eyebrow) {
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    word-spacing: normal !important;
  }

  .page-home .ai-proof-section .ai-proof-media-card__tag {
    letter-spacing: 0.12em !important;
    word-spacing: normal !important;
    text-transform: uppercase !important;
  }

  .page-home .ai-proof-section .ai-proof-media-card__headline {
    letter-spacing: -0.018em !important;
    word-spacing: normal !important;
    text-transform: none !important;
  }

  .page-home-services .hs-band-head {
    margin-bottom: 12px;
  }

  .page-home-services .hs-band-head .ai-strategic-title {
    margin-bottom: 6px;
  }

  :is(.page-business-services, .page-restaurants) .ai-bs-category-thumb img,
  :is(.page-business-services, .page-restaurants) .hs-section-visual img {
    max-height: min(38vh, 280px);
    object-fit: cover;
  }
}

:is(.page-business-services, .page-restaurants) .hs-section-cta,
:is(.page-business-services, .page-restaurants) .ai-bs-final-actions,
:is(.page-business-services, .page-restaurants) .ai-bs-early-cta {
  margin-top: var(--biz-space-md);
}

:is(.page-business-services, .page-restaurants) .hs-section-cta--dark .btn {
  min-height: 48px;
}

/* Form sections — headline → intro → card */
:is(.page-business-services, .page-restaurants) .ai-bs-project-request-inner {
  gap: var(--biz-space-md);
}

:is(.page-business-services, .page-restaurants) .ai-bs-project-request-shell,
:is(.page-business-services, .page-restaurants) .hs-form-shell,
:is(.page-business-services, .page-restaurants) .rest-form-shell {
  margin-top: var(--biz-space-md);
}

:is(.page-business-services, .page-restaurants) :where(
  .ai-bs-intake-form,
  .hs-intake-form,
  .rest-intake-form
) .transport-intake-grid {
  gap: var(--biz-space-sm) var(--biz-space-md);
}

:is(.page-business-services, .page-restaurants) :where(
  .ai-bs-intake-form,
  .hs-intake-form,
  .rest-intake-form
) .transport-intake-section {
  margin-top: var(--biz-space-md);
}

:is(.page-business-services, .page-restaurants) :where(
  .ai-bs-intake-form,
  .hs-intake-form,
  .rest-intake-form
) .transport-field {
  gap: var(--biz-space-xs);
}

:is(.page-business-services, .page-restaurants) :where(
  .consent-note,
  .hs-consent-note,
  .rest-consent-note
) {
  margin-top: var(--biz-space-sm);
}

:is(.page-business-services, .page-restaurants) :where(
  .ai-bs-intake-form,
  .hs-intake-form,
  .rest-intake-form
) .transport-intake-submit,
:is(.page-business-services, .page-restaurants) :where(
  .ai-bs-intake-form,
  .hs-intake-form,
  .rest-intake-form
) button[type="submit"] {
  margin-top: var(--biz-space-md);
}

/* Footer — business pages */
:is(.page-business-services, .page-restaurants) .footer.dark-showcase {
  padding-top: var(--biz-space-lg);
  padding-bottom: max(var(--biz-space-lg), calc(12px + env(safe-area-inset-bottom, 0px)));
  gap: var(--biz-space-sm);
}

:is(.page-business-services, .page-restaurants) .footer-brand .footer-tagline {
  margin-top: var(--biz-space-xs);
}

:is(.page-business-services, .page-restaurants) .footer-lead,
:is(.page-business-services, .page-restaurants) .footer-mission {
  margin-top: var(--biz-space-sm);
}

:is(.page-business-services, .page-restaurants) .footer-links.footer-links--business {
  gap: var(--biz-space-xs);
  margin-top: var(--biz-space-xs);
}

:is(.page-business-services, .page-restaurants) .footer-links.footer-links--business a {
  letter-spacing: normal;
  word-spacing: normal;
  text-transform: none;
}

:is(.page-business-services, .page-restaurants) .footer-note {
  margin-top: var(--biz-space-sm);
}

/* Homepage AI Plug / business proof section */
.page-home .ai-proof-section {
  padding-top: clamp(2rem, 5vw, var(--biz-sec-pad));
  padding-bottom: clamp(2.5rem, 6vw, var(--biz-sec-pad));
}

.page-home .ai-proof-shell.ai-proof-systems {
  gap: clamp(1.25rem, 3vw, var(--biz-space-md));
}

.page-home .ai-proof-shell.ai-proof-systems .ai-proof-header-band {
  gap: clamp(10px, 1.6vw, 14px);
}

.page-home .ai-proof-shell.ai-proof-systems .ai-proof-systems-intro {
  gap: clamp(1rem, 2.6vw, var(--biz-space-md));
}

.page-home .ai-proof-shell.ai-proof-systems .ai-proof-body {
  gap: clamp(8px, 1.2vw, 12px);
}

.page-home .ai-proof-pillar-grid {
  gap: clamp(12px, 2vw, var(--biz-card-gap));
  margin: 0;
}

@media (min-width: 960px) {
  .page-home .ai-proof-pillar-grid:not(.ai-proof-pillar-grid--capabilities) {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(14px, 1.8vw, 18px);
  }
}

.page-home .ai-proof-shell.ai-proof-systems .ai-systems-grid--proof.ai-systems-grid--three {
  gap: clamp(12px, 2vw, 16px);
  margin: 0;
}

.page-home .ai-proof-shell.ai-proof-systems .ai-systems-card--proof {
  padding: clamp(14px, 1.8vw, 18px);
  gap: 6px;
  min-height: 0;
}

.page-home .ai-proof-shell.ai-proof-systems .ai-systems-card--proof h3 {
  font-size: clamp(0.94rem, 0.18vw + 0.88rem, 1rem);
  font-weight: 820;
}

.page-home .ai-proof-shell.ai-proof-systems .ai-systems-card--proof p {
  font-size: clamp(0.82rem, 0.1vw + 0.78rem, 0.86rem);
  line-height: 1.5;
}

.page-home .ai-proof-pillar-card {
  padding: clamp(14px, 2vw, var(--biz-card-pad));
  transition:
    transform 0.2s cubic-bezier(0.22, 1, 0.36, 1),
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}

.page-home .ai-proof-pillar-card:hover {
  transform: translateY(-2px);
  border-color: rgba(255, 246, 230, 0.22);
  box-shadow:
    0 18px 38px rgba(0, 0, 0, 0.32),
    inset 0 1px 0 rgba(255, 246, 230, 0.09);
}

@media (prefers-reduced-motion: reduce) {
  .page-home .ai-proof-pillar-card:hover {
    transform: none;
  }
}

.page-home .ai-proof-pillar-card h3 {
  margin: 0 0 var(--biz-card-title-gap);
}

.page-home .ai-proof-pillar-card p {
  font-size: clamp(0.84rem, 0.12vw + 0.8rem, 0.88rem);
}

.page-home .ai-proof-shell.ai-proof-systems .ai-proof-cta-row {
  margin-top: 0;
  gap: var(--biz-space-sm);
}

.page-home .ai-proof-shell.ai-proof-systems .restaurant-owner-cta-strip {
  display: grid;
  gap: 6px;
  margin: clamp(12px, 2vw, 18px) 0 0;
  padding: clamp(10px, 1.8vw, 12px) clamp(12px, 2.2vw, 14px);
  max-width: min(100%, 36rem);
  border-radius: calc(var(--radius) - 2px);
  border: 1px solid rgba(255, 246, 230, 0.14);
  background: rgba(255, 246, 230, 0.04);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

.page-home .restaurant-owner-cta-strip__lead {
  margin: 0;
  font-size: clamp(0.84rem, 0.12vw + 0.8rem, 0.88rem);
  font-weight: 650;
  line-height: 1.4;
  color: rgba(255, 246, 230, 0.86);
}

.page-home .restaurant-owner-cta-strip__action {
  margin: 0;
  font-size: clamp(0.86rem, 0.14vw + 0.82rem, 0.9rem);
  line-height: 1.45;
}

.page-home .restaurant-owner-cta-strip__action a {
  display: inline;
  font-weight: 800;
  color: #fff8eb;
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 0.2em;
  text-decoration-color: rgba(242, 178, 26, 0.75);
  transition: color 0.15s ease, text-decoration-color 0.15s ease;
}

.page-home .restaurant-owner-cta-strip__action a:hover {
  color: #fff;
  text-decoration-color: rgba(20, 184, 166, 0.85);
}

.page-home .restaurant-owner-cta-strip__action a:focus-visible {
  outline: 2px solid rgba(242, 178, 26, 0.65);
  outline-offset: 3px;
  border-radius: 4px;
}

@media (max-width: 639px) {
  .page-home .ai-proof-shell.ai-proof-systems .ai-proof-headline {
    max-width: none;
  }

  .page-home .ai-proof-pillar-grid {
    gap: 10px;
  }

  .page-home .ai-proof-pillar-card {
    padding: 14px 16px;
  }

  .page-home .ai-proof-shell.ai-proof-systems .ai-systems-grid--proof.ai-systems-grid--three {
    gap: 10px;
  }

  .page-home .ai-proof-shell.ai-proof-systems .ai-systems-card--proof {
    padding: 14px 16px;
  }

  .page-home .ai-proof-shell.ai-proof-systems .ai-proof-cta-row .btn {
    min-height: 44px;
  }

  .page-home .ai-proof-section {
    padding-bottom: clamp(24px, 5vw, 32px);
  }

  .page-home .ai-proof-shell.ai-proof-systems .restaurant-owner-cta-strip {
    margin-top: 14px;
    margin-bottom: 0;
  }
}

/* Homepage AI Plug — visitor proof bridge band */
.page-home .ai-proof-section.ai-proof-section--bridge {
  position: relative;
  isolation: isolate;
  margin-top: clamp(4px, 1.2vw, 12px);
  padding-top: clamp(2.25rem, 5.5vw, 3.25rem);
  padding-bottom: clamp(2.5rem, 6.5vw, 3.75rem);
  border-top: 1px solid rgba(255, 246, 230, 0.12);
  overflow: hidden;
}

.page-home .ai-proof-section.ai-proof-section--bridge::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    radial-gradient(ellipse 72% 48% at 18% 0%, rgba(20, 184, 166, 0.16), transparent 58%),
    radial-gradient(ellipse 55% 40% at 92% 12%, rgba(242, 178, 26, 0.14), transparent 52%),
    radial-gradient(ellipse 60% 35% at 50% 100%, rgba(255, 106, 77, 0.08), transparent 55%);
}

.page-home .ai-proof-section--bridge .ai-proof-shell.ai-proof-systems {
  position: relative;
  z-index: 1;
}

.page-home .ai-proof-header-band--premium {
  padding: clamp(18px, 2.8vw, 28px);
  border-radius: calc(var(--radius) + 4px);
  border: 1px solid rgba(255, 246, 230, 0.18);
  background:
    radial-gradient(ellipse 90% 60% at 0% 0%, rgba(20, 184, 166, 0.14), transparent 55%),
    radial-gradient(ellipse 70% 50% at 100% 100%, rgba(242, 178, 26, 0.1), transparent 50%),
    linear-gradient(165deg, rgba(255, 246, 230, 0.07) 0%, rgba(4, 12, 28, 0.5) 100%);
  box-shadow:
    0 22px 50px rgba(0, 0, 0, 0.3),
    inset 0 1px 0 rgba(255, 246, 230, 0.09);
  gap: clamp(12px, 2vw, 16px);
}

.page-home .ai-proof-section--bridge .ai-proof-headline {
  font-size: clamp(1.58rem, 4.2vw, 2.28rem);
  font-weight: 860;
  line-height: 1.12;
  letter-spacing: -0.032em;
  max-width: 22ch;
}

.page-home .ai-proof-section--bridge .ai-proof-proofline {
  font-size: clamp(0.94rem, 0.24vw + 0.88rem, 1.05rem);
  font-weight: 700;
  line-height: 1.45;
  color: rgba(255, 235, 210, 0.92);
  max-width: 46ch;
}

.page-home .ai-proof-section--bridge .ai-proof-body .ai-proof-lead,
.page-home .ai-proof-section--bridge .ai-proof-body .ai-proof-support {
  margin: 0;
  max-width: 52ch;
  font-size: clamp(0.9rem, 0.16vw + 0.84rem, 0.98rem);
  line-height: 1.55;
  text-align: start;
}

.page-home .ai-proof-section--bridge .ai-proof-body .ai-proof-lead {
  color: rgba(255, 246, 230, 0.88);
}

.page-home .ai-proof-section--bridge .ai-proof-body .ai-proof-support {
  color: rgba(255, 246, 230, 0.78);
}

.page-home .ai-proof-header-band--premium .ai-proof-pillar-row--capabilities {
  margin-top: clamp(8px, 1.6vw, 12px);
}

.page-home .ai-proof-media-card--support .ai-proof-media-card__wrap {
  min-height: clamp(220px, 36vw, 340px);
  box-shadow:
    0 28px 52px rgba(2, 6, 14, 0.5),
    0 0 0 1px rgba(242, 178, 26, 0.2),
    0 0 40px rgba(20, 184, 166, 0.08);
}

.page-home .ai-proof-media-card--support .ai-proof-media-card__overlay {
  background:
    radial-gradient(ellipse 75% 50% at 78% 10%, rgba(20, 184, 166, 0.1), transparent 52%),
    linear-gradient(
      to top,
      rgba(5, 10, 24, 0.45) 0%,
      rgba(5, 10, 24, 0.12) 42%,
      rgba(5, 10, 24, 0) 72%
    );
}

.page-home .ai-proof-section--bridge .ai-proof-cta-row {
  margin-top: clamp(4px, 1vw, 8px);
}

.page-home main + .footer.dark-showcase {
  padding-top: clamp(36px, 5.5vw, 56px);
  margin-top: 0;
}

@media (max-width: 639px) {
  .page-home .ai-proof-section.ai-proof-section--bridge {
    padding-top: clamp(1.75rem, 5vw, 2.25rem);
    padding-bottom: clamp(2rem, 5.5vw, 2.5rem);
  }

  .page-home .ai-proof-section--bridge .ai-proof-headline {
    max-width: none;
    font-size: clamp(1.48rem, 6.8vw, 1.85rem);
  }

  .page-home .ai-proof-header-band--premium {
    padding: clamp(16px, 4.5vw, 22px);
  }

  .page-home .ai-proof-media-card--support .ai-proof-media-card__wrap {
    min-height: clamp(200px, 50vw, 260px);
  }

  .page-home .ai-proof-pillar-row--capabilities .ai-proof-pillar {
    padding: 10px 10px;
    font-size: 0.72rem;
  }

  .page-home .ai-proof-section--bridge .ai-proof-cta-row {
    flex-direction: column;
    align-items: stretch;
    width: 100%;
  }

  .page-home .ai-proof-section--bridge .ai-proof-cta-row .btn {
    width: 100%;
    justify-content: center;
  }

  .page-home main + .footer.dark-showcase {
    padding-top: clamp(32px, 6vw, 44px);
  }
}

.page-home .footer.dark-showcase {
  padding-top: clamp(28px, 4.5vw, var(--biz-space-lg));
  padding-bottom: max(clamp(40px, 5.5vw, 56px), calc(24px + env(safe-area-inset-bottom, 0px)));
  gap: clamp(14px, 2.2vw, var(--biz-space-md));
  border-top-color: rgba(255, 246, 230, 0.24);
}

.page-home .footer.dark-showcase .footer-brand {
  display: grid;
  gap: clamp(4px, 0.8vw, 6px);
}

.page-home .footer.dark-showcase .footer-lead,
.page-home .footer.dark-showcase .footer-mission {
  margin-top: clamp(8px, 1.4vw, 10px);
}

.page-home .footer.dark-showcase .footer-links {
  margin-top: clamp(4px, 1vw, 8px);
  gap: clamp(8px, 1.4vw, 10px);
}

.page-home .footer.dark-showcase .wtgsa-social--footer {
  margin-top: clamp(4px, 1vw, 8px);
  gap: clamp(8px, 1.2vw, 10px);
}

.page-home .footer.dark-showcase .footer-note {
  margin-top: clamp(10px, 1.8vw, 14px);
  margin-bottom: 0;
  padding-top: clamp(12px, 2vw, 14px);
  padding-bottom: clamp(4px, 0.8vw, 8px);
  border-top: 1px solid rgba(255, 246, 230, 0.12);
}

@media (max-width: 899px) {
  .page-home .footer.dark-showcase {
    padding-top: clamp(40px, 6.5vw, 52px);
    padding-bottom: max(clamp(44px, 8vw, 64px), calc(28px + env(safe-area-inset-bottom, 0px)));
    gap: clamp(16px, 2.8vw, 20px);
  }

  .page-home .footer.dark-showcase .footer-brand {
    gap: 6px;
  }

  .page-home .footer.dark-showcase .footer-lead,
  .page-home .footer.dark-showcase .footer-mission {
    margin-top: 8px;
  }

  .page-home .footer.dark-showcase .footer-links {
    margin-top: 6px;
  }

  .page-home .footer.dark-showcase .wtgsa-social--footer {
    margin-top: 6px;
  }
}

:is(.page-business-services, .page-restaurants) .ai-bs-owner-cards--compact {
  grid-template-columns: 1fr;
}

@media (min-width: 640px) {
  :is(.page-business-services, .page-restaurants) .ai-bs-owner-cards--compact {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 900px) {
  .page-business-services .ai-bs-category-grid--four.hosp-venues-featured,
  .page-business-services .ai-bs-category-grid--four.ps-trades-featured,
  .page-home-services .ai-bs-category-grid--four {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1100px) {
  .page-business-services .ai-bs-category-grid--four.hosp-venues-featured,
  .page-business-services .ai-bs-category-grid--four.ps-trades-featured,
  .page-home-services .ai-bs-category-grid--four {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

/* Home Services — readable copy guard (header, main, footer; no eyebrow tracking leak) */
.page-home-services .hs-intake-form .transport-field span {
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: none;
}

.page-home-services .hs-intake-form .transport-intake-section__heading {
  letter-spacing: 0.06em;
}

.page-home-services :is(.hs-main, .site-header) :where(
  .hs-help-card,
  .hs-first-path,
  .hs-trust-item,
  .hs-adapt-chip,
  .hs-compare-card,
  .ai-bs-category-card,
  .hs-trade-compact,
  .hs-form-shell,
  .hs-faq-item
) {
  overflow-wrap: normal;
  word-break: normal;
}

.page-home-services > .footer :where(
  p,
  li,
  strong,
  .footer-lead,
  .footer-mission,
  .footer-note,
  .footer-tagline
) {
  letter-spacing: normal;
  word-spacing: normal;
  text-align: start;
  text-align-last: start;
  text-transform: none;
  hyphens: none;
  -webkit-hyphens: none;
  overflow-wrap: normal;
  word-break: normal;
  text-wrap: auto;
  line-height: var(--hs-body-lh, var(--biz-body-lh, 1.52));
}

.page-home-services :is(.hs-main, .site-header) :where(
  p:not(:is(.eyebrow, .eyebrow-on-dark, .eyebrow-hero, .ai-hero-eyebrow)),
  li,
  dd,
  span,
  strong,
  em,
  .hero-text,
  .section-text,
  .ai-bs-hero-support,
  .ai-bs-hero-tagline,
  .hs-band-lede,
  .hs-compare-list,
  .hs-compare-list li,
  .hs-adapt-chip span,
  .hs-first-path p,
  .hs-help-card p,
  .hs-trust-item p,
  .hs-trade-compact span,
  .ai-bs-category-copy,
  .ai-owner-lede,
  .hs-trust-lede,
  .hs-form-note,
  .hs-consent-note,
  .hs-faq-item dd,
  .site-header-proof
) {
  letter-spacing: normal;
  word-spacing: normal;
  text-align: start;
  text-align-last: start;
  text-transform: none;
  hyphens: none;
  -webkit-hyphens: none;
  overflow-wrap: normal;
  word-break: normal;
  text-wrap: auto;
  line-height: var(--hs-body-lh, var(--biz-body-lh, 1.52));
}

@media (max-width: 899px) {
  .page-home-services > .footer :where(
    p,
    li,
    strong,
    .footer-lead,
    .footer-mission,
    .footer-note,
    .footer-tagline
  ) {
    letter-spacing: normal !important;
    word-spacing: normal !important;
    text-align: start !important;
    text-align-last: start !important;
    hyphens: none !important;
    -webkit-hyphens: none !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    text-wrap: auto !important;
    line-height: 1.52 !important;
  }

  .page-home-services :is(.hs-main, .site-header) :where(
    p:not(:is(.eyebrow, .eyebrow-on-dark, .eyebrow-hero, .ai-hero-eyebrow)),
    li,
    dd,
    span,
    strong,
    .hero-text,
    .section-text,
    .ai-bs-hero-support,
    .ai-bs-hero-tagline,
    .hs-band-lede,
    .hs-compare-list,
    .hs-compare-list li,
    .hs-adapt-chip span,
    .hs-first-path p,
    .hs-help-card p,
    .hs-trust-item p,
    .hs-trade-compact span,
    .ai-bs-category-copy,
    .ai-owner-lede,
    .hs-trust-lede,
    .hs-form-note,
    .hs-consent-note,
    .hs-faq-item dd,
    .site-header-proof,
    .btn
  ) {
    letter-spacing: normal !important;
    word-spacing: normal !important;
    text-align: start !important;
    text-align-last: start !important;
    text-transform: none !important;
    hyphens: none !important;
    -webkit-hyphens: none !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    text-wrap: auto !important;
    line-height: 1.52 !important;
  }

  .page-home-services :where(
    .eyebrow,
    .eyebrow-on-dark,
    .eyebrow-hero,
    .ai-hero-eyebrow
  ) {
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    word-spacing: normal !important;
  }
}

/* ==========================================================================
   Vertical image layout — trade secondary grids, gateway thumbs, editorial splits
   ========================================================================== */

.page-business-services .hs-trades-secondary,
.page-business-services .hosp-venues-secondary,
.page-business-services .ps-trades-secondary {
  margin-top: clamp(14px, 2.2vw, 20px);
}

@media (min-width: 900px) {
  .page-business-services .ai-bs-category-grid--three {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.page-business-services .ai-bs-category-card--text {
  justify-content: flex-start;
  padding-top: clamp(20px, 2.4vw, 26px);
  border-style: dashed;
  border-color: rgba(255, 246, 230, 0.22);
  background: rgba(255, 246, 230, 0.04);
}

.page-business-services .section-cream .ai-bs-category-card--text {
  border-color: rgba(11, 29, 58, 0.14);
  background: rgba(255, 255, 255, 0.92);
}

.page-business-services .ai-bs-category-link {
  display: inline-flex;
  align-items: center;
  margin-top: auto;
  padding-top: 4px;
  font-size: 0.88rem;
  font-weight: 700;
  line-height: 1.4;
  color: var(--turquoise);
  text-decoration: none;
  text-underline-offset: 3px;
}

.page-business-services .ai-bs-category-link:hover {
  text-decoration: underline;
  color: #5eead4;
}

.page-business-services .section-cream .ai-bs-category-link {
  color: #0d9488;
}

.page-business-services .section-cream .ai-bs-category-link:hover {
  color: #0f766e;
}

.page-home-services .hs-problem-band .hs-help-grid--intro {
  margin-top: 0;
}

.page-home-services .hs-problem-band + .hs-help-grid {
  margin-top: clamp(16px, 2.2vw, 22px);
}

.page-hospitality-local-experience .hosp-ops-feature-visual {
  margin: clamp(16px, 2.2vw, 22px) 0 0;
  border-radius: calc(var(--radius) + 2px);
  overflow: hidden;
  border: 1px solid rgba(20, 184, 166, 0.22);
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.28);
}

.page-hospitality-local-experience .hosp-ops-feature-visual img {
  display: block;
  width: 100%;
  height: auto;
  max-height: clamp(220px, 42vw, 420px);
  aspect-ratio: 16 / 10;
  object-fit: cover;
  object-position: center;
}

.page-hospitality-local-experience .hosp-marketing-band .hosp-campaign-chips {
  margin: 0;
}

.page-business-types .bt-gateway-thumb {
  margin: calc(clamp(18px, 2.2vw, 22px) * -1) calc(clamp(18px, 2.2vw, 22px) * -1) clamp(12px, 1.6vw, 14px);
  border-radius: calc(var(--radius) - 2px) calc(var(--radius) - 2px) 0 0;
  overflow: hidden;
  aspect-ratio: 16 / 9;
}

.page-business-types .bt-gateway-thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.page-restaurants .rest-band-head--inline {
  margin-bottom: 0;
  max-width: none;
}

.page-restaurants .rest-why-inner .rest-detail-grid {
  margin-bottom: clamp(16px, 2.2vw, 22px);
}

.page-restaurants .rest-path-band {
  display: grid;
  gap: clamp(18px, 2.4vw, 26px);
}

.page-restaurants .rest-path-band:has(.rest-path-card--visual) {
  grid-template-columns: 1fr;
}

.page-restaurants .rest-path-visual {
  margin: 0;
  border-radius: calc(var(--radius) + 2px);
  overflow: hidden;
  border: 1px solid rgba(20, 184, 166, 0.22);
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.28);
}

.page-restaurants .rest-path-visual img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  object-position: center;
}

.page-restaurants .rest-detail-grid--split {
  margin: clamp(16px, 2.2vw, 22px) 0;
  align-items: center;
}

.page-restaurants .rest-ai-cap-intro {
  display: flex;
  align-items: center;
  min-height: 100%;
}

.page-restaurants .rest-ai-cap-intro .section-text {
  margin: 0;
  max-width: 34rem;
}

@media (max-width: 899px) {
  .page-restaurants .rest-path-band {
    grid-template-columns: 1fr;
  }
}

.page-home .ai-proof-shell.ai-proof-systems .ai-proof-systems-intro.ai-proof-systems-intro--stacked {
  display: grid;
  gap: clamp(1.25rem, 3vw, var(--biz-space-md));
  align-items: stretch;
}

.page-home .ai-proof-systems-intro--stacked .ai-proof-support-band {
  display: grid;
  gap: clamp(12px, 2vw, 16px);
  max-width: 60rem;
}

.page-home .ai-proof-media-card--hero .ai-proof-media-card__wrap {
  min-height: clamp(240px, 52vw, 400px);
}

.page-home .ai-proof-media-card--hero .ai-proof-media-card__overlay {
  background:
    radial-gradient(ellipse 80% 55% at 72% 8%, rgba(20, 184, 166, 0.12), transparent 52%),
    linear-gradient(
      to top,
      rgba(5, 10, 24, 0.92) 0%,
      rgba(5, 10, 24, 0.62) 38%,
      rgba(5, 10, 24, 0.22) 62%,
      rgba(5, 10, 24, 0.08) 100%
    );
}

.page-home .ai-proof-media-card--hero .ai-proof-media-card__stack {
  max-width: min(38rem, 100%);
  gap: clamp(8px, 1.4vw, 12px);
  padding: clamp(18px, 3vw, 28px);
}

.page-home .ai-proof-media-card--hero .ai-proof-media-card__headline {
  font-size: clamp(1.35rem, 4.8vw, 2rem);
  font-weight: 860;
  line-height: 1.14;
  letter-spacing: -0.02em;
  max-width: 22ch;
  text-wrap: pretty;
}

.page-home .ai-proof-media-card--hero .ai-proof-media-card__support {
  font-size: clamp(0.9rem, 0.2vw + 0.84rem, 1.02rem);
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: normal;
  word-spacing: normal;
  max-width: 46ch;
}

.page-home .ai-proof-section--bridge .ai-proof-support-band .ai-proof-body {
  display: grid;
  gap: clamp(8px, 1.2vw, 12px);
}

@media (min-width: 900px) {
  .page-home .ai-proof-media-card--hero .ai-proof-media-card__wrap {
    min-height: clamp(280px, 32vw, 380px);
  }

  .page-home .ai-proof-media-card--hero .ai-proof-media-card__headline {
    font-size: clamp(1.5rem, 2.2vw, 2.05rem);
    max-width: 24ch;
  }
}

@media (max-width: 639px) {
  .page-home .ai-proof-media-card--hero .ai-proof-media-card__wrap {
    min-height: clamp(220px, 62vw, 320px);
  }

  .page-home .ai-proof-media-card--hero .ai-proof-media-card__stack {
    padding: 16px 16px 18px;
    gap: 8px;
  }

  .page-home .ai-proof-media-card--hero .ai-proof-media-card__headline {
    max-width: none;
    font-size: clamp(1.28rem, 6.2vw, 1.62rem);
    letter-spacing: -0.018em;
  }

  .page-home .ai-proof-media-card--hero .ai-proof-media-card__tag {
    font-size: 0.6rem;
    padding: 4px 9px;
    letter-spacing: 0.12em;
  }

  .page-home .ai-proof-systems-intro--stacked .ai-proof-support-band {
    gap: 10px;
  }
}

/* Homepage AI Plug — stacked proof layout (image → copy → cards → CTAs) */
.page-home .ai-proof-shell.ai-proof-systems--stacked {
  display: grid;
  gap: clamp(1.1rem, 2.8vw, var(--biz-space-md));
}

.page-home .ai-proof-shell.ai-proof-systems--stacked .ai-proof-systems-visual {
  margin: 0;
  width: 100%;
}

.page-home .ai-proof-body--support {
  display: grid;
  gap: clamp(8px, 1.2vw, 12px);
  max-width: 60rem;
}

.page-home .ai-proof-media-card--hero .ai-proof-media-card__glass {
  position: absolute;
  left: clamp(12px, 2.4vw, 20px);
  right: clamp(12px, 2.4vw, 20px);
  bottom: clamp(12px, 2.4vw, 20px);
  z-index: 2;
  max-width: min(38rem, calc(100% - clamp(24px, 4.8vw, 40px)));
  padding: clamp(16px, 2.6vw, 24px);
  border-radius: clamp(14px, 2vw, 18px);
  border: 1px solid rgba(255, 246, 230, 0.2);
  background:
    linear-gradient(155deg, rgba(8, 14, 30, 0.82) 0%, rgba(5, 10, 24, 0.72) 100%);
  box-shadow:
    0 18px 42px rgba(0, 0, 0, 0.38),
    inset 0 1px 0 rgba(255, 246, 230, 0.1);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.page-home .ai-proof-media-card--hero .ai-proof-media-card__stack {
  position: relative;
  left: auto;
  right: auto;
  bottom: auto;
  padding: 0;
  max-width: none;
  gap: clamp(8px, 1.4vw, 12px);
}

.page-home .ai-proof-media-card--hero .ai-proof-media-card__overlay {
  background:
    radial-gradient(ellipse 80% 55% at 72% 8%, rgba(20, 184, 166, 0.14), transparent 52%),
    linear-gradient(
      to top,
      rgba(5, 10, 24, 0.55) 0%,
      rgba(5, 10, 24, 0.22) 42%,
      rgba(5, 10, 24, 0.06) 68%,
      rgba(5, 10, 24, 0) 100%
    );
}

.page-home .ai-proof-media-card--hero .ai-proof-media-card__tag {
  padding: 0;
  border: none;
  border-radius: 0;
  background: transparent;
  font-size: clamp(0.58rem, 0.1vw + 0.54rem, 0.64rem);
  font-weight: 800;
  letter-spacing: 0.14em;
  color: rgba(253, 224, 150, 0.96);
}

.page-home .ai-proof-pillar-grid--capabilities {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(10px, 1.8vw, 14px);
  margin: 0;
  padding: 0;
  list-style: none;
}

.page-home .ai-proof-pillar-grid--capabilities .ai-proof-pillar-card {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: start;
  gap: 10px 12px;
  min-height: clamp(4.5rem, 12vw, 5.5rem);
  padding: clamp(14px, 2.2vw, 18px);
  border-radius: calc(var(--radius) - 2px);
  cursor: default;
  pointer-events: none;
  text-decoration: none;
  transform: none;
}

.page-home .ai-proof-pillar-grid--capabilities .ai-proof-pillar-card:hover {
  transform: none;
  border-color: rgba(255, 246, 230, 0.14);
  box-shadow:
    0 14px 32px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 246, 230, 0.07);
}

.page-home .ai-proof-pillar-grid--capabilities .ai-proof-pillar-card::before {
  display: none;
}

.page-home .ai-proof-pillar-grid--capabilities .ai-proof-pillar-card--span-full {
  grid-column: 1 / -1;
}

.page-home .ai-proof-pillar-card__accent {
  display: block;
  width: 9px;
  height: 9px;
  margin-top: 0.42em;
  border-radius: 50%;
  flex-shrink: 0;
  box-shadow: 0 0 0 3px rgba(255, 246, 230, 0.06);
}

.page-home .ai-proof-pillar-card--advantage .ai-proof-pillar-card__accent {
  background: var(--gold);
}

.page-home .ai-proof-pillar-card--adaptation .ai-proof-pillar-card__accent {
  background: var(--turquoise);
}

.page-home .ai-proof-pillar-card--growth .ai-proof-pillar-card__accent {
  background: var(--orange);
}

.page-home .ai-proof-pillar-card--automation .ai-proof-pillar-card__accent {
  background: var(--pink);
}

.page-home .ai-proof-pillar-card--operators .ai-proof-pillar-card__accent {
  background: var(--turquoise);
}

.page-home .ai-proof-pillar-card--marketing .ai-proof-pillar-card__accent {
  background: var(--orange);
}

.page-home .ai-proof-pillar-card--connected .ai-proof-pillar-card__accent {
  background: rgba(120, 160, 255, 0.95);
}

.page-home .ai-proof-pillar-grid--capabilities .ai-proof-pillar-card {
  border-left: 3px solid rgba(255, 246, 230, 0.12);
}

.page-home .ai-proof-pillar-card--advantage {
  border-left-color: rgba(242, 178, 26, 0.55);
}

.page-home .ai-proof-pillar-card--adaptation {
  border-left-color: rgba(20, 184, 166, 0.5);
}

.page-home .ai-proof-pillar-card--growth {
  border-left-color: rgba(255, 139, 31, 0.5);
}

.page-home .ai-proof-pillar-card--automation {
  border-left-color: rgba(255, 92, 168, 0.45);
}

.page-home .ai-proof-pillar-card--operators {
  border-left-color: rgba(20, 184, 166, 0.48);
}

.page-home .ai-proof-pillar-card--marketing {
  border-left-color: rgba(255, 139, 31, 0.48);
}

.page-home .ai-proof-pillar-card--connected {
  border-left-color: rgba(120, 160, 255, 0.5);
}

.page-home .ai-proof-pillar-grid--capabilities .ai-proof-pillar-card h3 {
  margin: 0;
  font-size: clamp(0.88rem, 0.14vw + 0.84rem, 0.98rem);
  font-weight: 800;
  letter-spacing: normal;
  word-spacing: normal;
  line-height: 1.3;
  color: rgba(255, 248, 235, 0.98);
  text-wrap: pretty;
  hyphens: none;
  overflow-wrap: normal;
  word-break: normal;
}

.page-home .ai-proof-section--bridge .ai-proof-body--support .ai-proof-lead,
.page-home .ai-proof-section--bridge .ai-proof-body--support .ai-proof-support {
  margin: 0;
  max-width: 52ch;
  font-size: clamp(0.9rem, 0.16vw + 0.84rem, 0.98rem);
  line-height: 1.55;
  letter-spacing: normal;
  word-spacing: normal;
  text-wrap: pretty;
  hyphens: none;
  overflow-wrap: normal;
  word-break: normal;
}

@media (min-width: 720px) {
  .page-home .ai-proof-pillar-grid--capabilities {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(12px, 1.8vw, 16px);
  }

  .page-home .ai-proof-pillar-grid--capabilities .ai-proof-pillar-card--span-full {
    grid-column: span 2;
  }

  .page-home .ai-proof-pillar-grid--capabilities .ai-proof-pillar-card--connected {
    grid-column: 1 / -1;
  }
}

@media (max-width: 639px) {
  .page-home .ai-proof-media-card--hero .ai-proof-media-card__glass {
    left: 12px;
    right: 12px;
    bottom: 12px;
    max-width: none;
    padding: 14px 16px;
  }

  .page-home .ai-proof-pillar-grid--capabilities {
    gap: 10px;
  }

  .page-home .ai-proof-pillar-grid--capabilities .ai-proof-pillar-card {
    min-height: 0;
    padding: 14px 14px 14px 12px;
  }

  .page-home .ai-proof-pillar-grid--capabilities .ai-proof-pillar-card h3 {
    font-size: clamp(0.84rem, 0.12vw + 0.8rem, 0.92rem);
  }
}

/* ----- Business vertical: premium image integration ----- */
:is(.page-business-services, .page-restaurants, .page-home) .biz-editorial-band {
  display: grid;
  gap: clamp(20px, 3vw, 32px);
  align-items: center;
}

@media (min-width: 900px) {
  :is(.page-business-services, .page-restaurants, .page-home) .biz-editorial-band {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: clamp(28px, 4vw, 48px);
  }

  :is(.page-business-services, .page-restaurants, .page-home) .biz-editorial-band--visual-left .biz-editorial-band__visual {
    order: -1;
  }
}

:is(.page-business-services, .page-restaurants, .page-home) .biz-editorial-band__copy {
  display: grid;
  gap: clamp(12px, 1.8vw, 18px);
  align-content: center;
}

:is(.page-business-services, .page-restaurants, .page-home) .biz-editorial-band__copy .ai-band-head,
:is(.page-business-services, .page-restaurants, .page-home) .biz-editorial-band__copy .hs-band-head {
  margin-bottom: 0;
  max-width: none;
}

:is(.page-business-services, .page-restaurants, .page-home) .biz-editorial-band__visual {
  margin: 0;
  border-radius: calc(var(--radius) + 2px);
  overflow: hidden;
  border: 1px solid rgba(20, 184, 166, 0.22);
  box-shadow: 0 20px 48px rgba(5, 10, 24, 0.28);
}

:is(.page-business-services, .page-restaurants, .page-home) .section-cream .biz-editorial-band__visual {
  border-color: rgba(11, 29, 58, 0.1);
  box-shadow: 0 16px 40px rgba(11, 29, 58, 0.12);
}

:is(.page-business-services, .page-restaurants, .page-home) .dark-showcase .biz-editorial-band__visual,
:is(.page-business-services, .page-restaurants, .page-home) .ai-bs-section--navy .biz-editorial-band__visual {
  border-color: rgba(20, 184, 166, 0.22);
  box-shadow: 0 20px 48px rgba(0, 0, 0, 0.32);
}

:is(.page-business-services, .page-restaurants, .page-home) .biz-editorial-band__visual img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  object-position: center;
}

.page-home .ai-proof-media-card.biz-editorial-band__visual .ai-proof-media-card__img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-height: none;
  aspect-ratio: auto;
  object-fit: cover;
  object-position: 50% 38%;
}

:is(.page-business-services, .page-restaurants, .page-home) .biz-editorial-band__stack {
  display: grid;
  gap: clamp(10px, 1.6vw, 14px);
}

@media (max-width: 899px) {
  :is(.page-business-services, .page-restaurants, .page-home) .biz-editorial-band--mobile-visual-first .biz-editorial-band__visual {
    order: -1;
  }
}

:is(.page-business-services, .page-restaurants, .page-home) .biz-action-card-grid {
  display: grid;
  gap: clamp(14px, 2vw, 18px);
}

@media (min-width: 720px) {
  :is(.page-business-services, .page-restaurants, .page-home) .biz-action-card-grid--3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

:is(.page-business-services, .page-restaurants, .page-home) .biz-action-card {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: clamp(200px, 38vw, 280px);
  border-radius: calc(var(--radius) - 2px);
  overflow: hidden;
  border: 1px solid rgba(255, 246, 230, 0.16);
  box-shadow: 0 16px 36px rgba(5, 10, 24, 0.28);
  text-decoration: none;
  color: inherit;
  isolation: isolate;
  transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}

:is(.page-business-services, .page-restaurants, .page-home) .biz-action-card--static {
  cursor: default;
}

:is(.page-business-services, .page-restaurants, .page-home) a.biz-action-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 22px 48px rgba(5, 10, 24, 0.36);
  border-color: rgba(242, 178, 26, 0.42);
}

:is(.page-business-services, .page-restaurants, .page-home) .biz-action-card--featured {
  min-height: clamp(240px, 44vw, 320px);
  border-color: rgba(242, 178, 26, 0.35);
  box-shadow: 0 0 28px rgba(242, 178, 26, 0.18), 0 20px 44px rgba(5, 10, 24, 0.32);
}

:is(.page-business-services, .page-restaurants, .page-home) .biz-action-card__media {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  z-index: 0;
}

:is(.page-business-services, .page-restaurants, .page-home) .biz-action-card__shade {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(to top, rgba(2, 8, 18, 0.94) 0%, rgba(2, 8, 18, 0.55) 42%, rgba(2, 8, 18, 0.12) 72%, transparent 100%);
}

:is(.page-business-services, .page-restaurants, .page-home) .biz-action-card__body {
  position: relative;
  z-index: 2;
  padding: clamp(14px, 2.2vw, 20px);
  color: #fff8eb;
}

:is(.page-business-services, .page-restaurants, .page-home) .biz-action-card__body .eyebrow {
  margin: 0 0 6px;
  font-size: 0.68rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  font-weight: 800;
  color: rgba(255, 200, 150, 0.95);
}

:is(.page-business-services, .page-restaurants, .page-home) .biz-action-card__body h3 {
  margin: 0 0 8px;
  font-size: clamp(1rem, 1.1vw + 0.82rem, 1.18rem);
  font-weight: 850;
  line-height: 1.2;
  color: #fff8eb;
}

:is(.page-business-services, .page-restaurants, .page-home) .biz-action-card__body p {
  margin: 0;
  font-size: 0.88rem;
  line-height: 1.5;
  color: rgba(255, 246, 230, 0.92);
  max-width: 38ch;
}

:is(.page-business-services, .page-restaurants, .page-home) .biz-action-card__cta {
  display: inline-flex;
  margin-top: 12px;
  font-size: 0.82rem;
  font-weight: 820;
  color: var(--gold);
}

:is(.page-business-services, .page-restaurants, .page-home) .biz-cta-panel {
  position: relative;
  overflow: hidden;
  padding-top: clamp(56px, 7vw, 80px);
  padding-bottom: clamp(56px, 7vw, 80px);
}

:is(.page-business-services, .page-restaurants, .page-home) .biz-cta-panel__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

:is(.page-business-services, .page-restaurants, .page-home) .biz-cta-panel__bg img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

:is(.page-business-services, .page-restaurants, .page-home) .biz-cta-panel__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(115deg, rgba(5, 10, 22, 0.94) 0%, rgba(8, 18, 36, 0.88) 48%, rgba(5, 10, 22, 0.82) 100%);
}

:is(.page-business-services, .page-restaurants, .page-home) .biz-cta-panel__inner {
  position: relative;
  z-index: 1;
  display: grid;
  gap: clamp(14px, 2vw, 20px);
  max-width: 40rem;
}

:is(.page-business-services, .page-restaurants, .page-home) .biz-cta-panel__inner .ai-strategic-title {
  color: #fff8eb;
}

:is(.page-business-services, .page-restaurants, .page-home) .biz-cta-panel__inner .section-text,
:is(.page-business-services, .page-restaurants, .page-home) .biz-cta-panel__inner .ai-bs-final-copy {
  color: rgba(255, 246, 230, 0.9);
  max-width: 38rem;
}

.page-hospitality-local-experience .hosp-story-ops {
  display: grid;
  gap: clamp(22px, 3vw, 32px);
}

.page-home-services .hs-journey-editorial .hs-help-grid--intro {
  margin-top: 0;
}

.page-home-services .hs-journey-editorial .hs-help-grid {
  margin-top: clamp(14px, 2vw, 18px);
}

.page-professional-services .ps-why-band .biz-editorial-band__visual img {
  aspect-ratio: 4 / 3;
}

.page-business-types .bt-gateway-card--visual {
  padding: 0;
  overflow: hidden;
  display: grid;
  grid-template-rows: auto 1fr;
}

.page-business-types .bt-gateway-card--visual .bt-gateway-title,
.page-business-types .bt-gateway-card--visual .bt-gateway-who,
.page-business-types .bt-gateway-card--visual .bt-gateway-lanes,
.page-business-types .bt-gateway-card--visual .bt-gateway-actions {
  padding-left: clamp(18px, 2.2vw, 22px);
  padding-right: clamp(18px, 2.2vw, 22px);
}

.page-business-types .bt-gateway-card--visual .bt-gateway-title {
  padding-top: clamp(14px, 2vw, 18px);
}

.page-business-types .bt-gateway-card--visual .bt-gateway-actions {
  padding-bottom: clamp(18px, 2.2vw, 22px);
}

.page-business-types .bt-gateway-thumb--lane {
  margin: 0;
  aspect-ratio: 21 / 9;
  max-height: 200px;
  overflow: hidden;
}

.page-business-types .bt-gateway-thumb--lane img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.page-restaurants .rest-path-card--visual {
  padding: 0;
  overflow: hidden;
  display: grid;
  grid-template-rows: auto 1fr;
}

.page-restaurants .rest-path-card__thumb {
  margin: 0;
  aspect-ratio: 16 / 9;
  overflow: hidden;
}

.page-restaurants .rest-path-card__thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.page-restaurants .rest-path-card--visual .rest-path-card-body {
  padding: clamp(16px, 2.2vw, 20px);
  display: grid;
  gap: 10px;
}

.page-business-services.ai-services-page .ai-bs-lanes-editorial {
  display: grid;
  gap: clamp(20px, 3vw, 28px);
}

@media (min-width: 960px) {
  .page-business-services.ai-services-page .ai-bs-lanes-editorial {
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
    align-items: start;
  }

  .page-business-services.ai-services-page .ai-bs-lanes-editorial .ai-bs-section-visual--lanes {
    margin: 0;
    position: sticky;
    top: 1.5rem;
  }

  .page-business-services.ai-services-page .ai-bs-lanes-editorial .ai-bs-section-visual--lanes img {
    aspect-ratio: 4 / 5;
    object-fit: cover;
  }
}
/* Homepage — Built by The AI Plug (editorial image hero + overlay copy) */

.page-home .home-ai-plug-section {
  --home-ai-plug-pad-y: clamp(2.25rem, 5.5vw, 3.75rem);
  --home-ai-plug-pad-x: clamp(1rem, 4vw, 1.5rem);
  --home-ai-plug-gap-lg: clamp(1.5rem, 3.2vw, 2.25rem);
  --home-ai-plug-gap-sm: clamp(0.65rem, 1.6vw, 0.85rem);
  --home-ai-plug-body-lh: 1.55;
  position: relative;
  isolation: isolate;
  margin-top: clamp(4px, 1.2vw, 12px);
  padding: var(--home-ai-plug-pad-y) var(--home-ai-plug-pad-x);
  border-top: 1px solid rgba(255, 246, 230, 0.12);
  overflow: hidden;
}

/* Homepage — full-bleed fiesta divider between sections */
.page-home .home-fiesta-divider {
  display: block;
  width: 100vw;
  max-width: 100vw;
  height: 5px;
  margin: 0;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  padding: 0;
  border: none;
  flex-shrink: 0;
  background: linear-gradient(
    90deg,
    rgba(20, 184, 166, 0.95) 0%,
    rgba(242, 178, 26, 0.95) 48%,
    rgba(255, 106, 77, 0.88) 100%
  );
}

/* Homepage — Transport → divider → AI Plug */
.page-home .transport-section.transport-section--story:has(+ .home-fiesta-divider) {
  padding-bottom: clamp(18px, 3.2vw, 26px);
  border-bottom: none;
}

.page-home .home-fiesta-divider + .home-ai-plug-section {
  margin-top: 0;
  border-top: none;
  padding-top: clamp(18px, 3.2vw, 26px);
}

.page-home .home-ai-plug-section::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    radial-gradient(ellipse 72% 48% at 18% 0%, rgba(20, 184, 166, 0.16), transparent 58%),
    radial-gradient(ellipse 55% 40% at 92% 12%, rgba(242, 178, 26, 0.14), transparent 52%),
    radial-gradient(ellipse 60% 35% at 50% 100%, rgba(255, 106, 77, 0.08), transparent 55%);
}

.page-home .home-ai-plug {
  position: relative;
  z-index: 1;
  display: grid;
  gap: var(--home-ai-plug-gap-lg);
  max-width: 1300px;
  margin-inline: auto;
  width: 100%;
}

.page-home .home-ai-plug__hero-card + .home-ai-plug__features {
  margin-top: 0;
}

/* —— Image hero card: headline on image, body copy in panel below —— */
.page-home .home-ai-plug__hero-card {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  overflow: hidden;
  border-radius: clamp(18px, 2.6vw, 26px);
  border: 1px solid rgba(255, 246, 230, 0.24);
  background: #071022;
  box-shadow:
    0 32px 62px rgba(2, 6, 14, 0.55),
    0 0 0 1px rgba(242, 178, 26, 0.2),
    0 0 48px rgba(20, 184, 166, 0.08);
  isolation: isolate;
}

.page-home .home-ai-plug__hero-media-wrap {
  position: relative;
  width: 100%;
  min-height: clamp(220px, 46vw, 300px);
  max-height: 360px;
  overflow: hidden;
  background: #071022;
}

.page-home .home-ai-plug__hero-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 38%;
  display: block;
}

.page-home .home-ai-plug__hero-gradient {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    radial-gradient(ellipse 90% 60% at 70% 18%, rgba(20, 184, 166, 0.1), transparent 55%),
    linear-gradient(
      to top,
      rgba(5, 10, 24, 0.72) 0%,
      rgba(5, 10, 24, 0.34) 42%,
      rgba(5, 10, 24, 0.08) 68%,
      transparent 100%
    );
}

.page-home .home-ai-plug__hero-overlay {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: clamp(5px, 1vw, 9px);
  width: 100%;
  max-width: min(38rem, 94%);
  padding: clamp(14px, 2.4vw, 22px) clamp(16px, 2.6vw, 24px) clamp(16px, 2.6vw, 24px);
  text-align: left;
}

.page-home .home-ai-plug__eyebrow {
  margin: 0;
  font-size: clamp(0.58rem, 0.1vw + 0.54rem, 0.64rem);
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(253, 224, 150, 0.96);
  line-height: 1.3;
  text-shadow: 0 1px 12px rgba(5, 10, 24, 0.45);
}

.page-home .home-ai-plug__hero-title {
  margin: 0;
  font-size: clamp(1.08rem, 0.4vw + 0.96rem, 1.52rem);
  font-weight: 870;
  line-height: 1.12;
  letter-spacing: -0.026em;
  word-spacing: normal;
  color: #fff;
  text-shadow: 0 2px 18px rgba(5, 10, 24, 0.45);
  max-width: 36rem;
  text-wrap: balance;
  hyphens: none;
  overflow-wrap: normal;
  word-break: normal;
}

.page-home .home-ai-plug__hero-subline {
  margin: 0;
  font-size: clamp(0.84rem, 0.2vw + 0.78rem, 0.94rem);
  font-weight: 650;
  line-height: 1.52;
  letter-spacing: normal;
  word-spacing: normal;
  color: rgba(255, 255, 255, 0.92);
  max-width: 36rem;
  text-shadow: 0 1px 12px rgba(5, 10, 24, 0.38);
  hyphens: none;
  overflow-wrap: normal;
  word-break: normal;
}

/* —— Body copy panel (warm strip — readable contrast under image) —— */
.page-home .home-ai-plug__hero-body {
  position: relative;
  flex-shrink: 0;
  padding: clamp(20px, 3vw, 30px) clamp(16px, 2.8vw, 28px) clamp(20px, 3vw, 28px);
  background:
    radial-gradient(ellipse 85% 65% at 100% 0%, rgba(242, 178, 26, 0.14), transparent 52%),
    radial-gradient(ellipse 70% 60% at 0% 100%, rgba(20, 184, 166, 0.08), transparent 48%),
    linear-gradient(168deg, #fffaf3 0%, #f7f0e4 46%, #efe6d8 100%);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.85),
    inset 0 -1px 0 rgba(11, 29, 58, 0.06);
}

.page-home .home-ai-plug__hero-body::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 3px;
  border-radius: 0;
  background: linear-gradient(
    90deg,
    rgba(20, 184, 166, 0.95) 0%,
    rgba(242, 178, 26, 0.95) 48%,
    rgba(255, 106, 77, 0.88) 100%
  );
}

.page-home .home-ai-plug__copy {
  display: grid;
  gap: var(--home-ai-plug-gap-sm);
  max-width: 60rem;
}

.page-home .home-ai-plug__paragraph {
  margin: 0;
  max-width: min(52ch, 100%);
  font-size: clamp(0.9rem, 0.16vw + 0.84rem, 0.98rem);
  line-height: var(--home-ai-plug-body-lh);
  letter-spacing: normal;
  word-spacing: normal;
  text-align: start;
  text-transform: none;
  hyphens: none;
  -webkit-hyphens: none;
  overflow-wrap: normal;
  word-break: normal;
  text-wrap: pretty;
  color: rgba(255, 246, 230, 0.86);
}

.page-home .home-ai-plug__hero-body .home-ai-plug__paragraph {
  color: rgba(11, 29, 58, 0.92);
}

.page-home .home-ai-plug__copy .home-ai-plug__paragraph + .home-ai-plug__paragraph {
  color: rgba(255, 246, 230, 0.78);
}

.page-home .home-ai-plug__hero-body .home-ai-plug__copy .home-ai-plug__paragraph + .home-ai-plug__paragraph {
  color: rgba(11, 29, 58, 0.76);
}

/* —— Capability feature cards —— */
.page-home .home-ai-plug__features {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(12px, 1.8vw, 16px);
  margin: 0;
  padding: 0;
  list-style: none;
}

.page-home .home-ai-plug__feature {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: clamp(8px, 1.2vw, 10px);
  min-width: 0;
  margin: 0;
  padding: clamp(16px, 2.4vw, 20px);
  border-radius: calc(var(--radius) - 2px);
  border: 1px solid rgba(255, 246, 230, 0.14);
  background:
    radial-gradient(circle at 12% -20%, rgba(20, 184, 166, 0.12), transparent 42%),
    linear-gradient(168deg, rgba(255, 246, 230, 0.08) 0%, rgba(4, 12, 28, 0.58) 100%);
  box-shadow:
    0 14px 32px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 246, 230, 0.07);
  overflow: hidden;
  isolation: isolate;
}

.page-home .home-ai-plug__feature::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  pointer-events: none;
}

.page-home .home-ai-plug__feature--advantage::before {
  background: linear-gradient(90deg, var(--gold), rgba(242, 178, 26, 0.45));
}

.page-home .home-ai-plug__feature--adaptation::before {
  background: linear-gradient(90deg, var(--turquoise), rgba(20, 184, 166, 0.45));
}

.page-home .home-ai-plug__feature--growth::before {
  background: linear-gradient(90deg, var(--orange), rgba(255, 139, 31, 0.45));
}

.page-home .home-ai-plug__feature--automation::before {
  background: linear-gradient(90deg, var(--pink), rgba(255, 92, 168, 0.45));
}

.page-home .home-ai-plug__feature--operators::before {
  background: linear-gradient(90deg, var(--turquoise), rgba(20, 184, 166, 0.45));
}

.page-home .home-ai-plug__feature--marketing::before {
  background: linear-gradient(90deg, var(--orange), rgba(255, 139, 31, 0.45));
}

.page-home .home-ai-plug__feature--connected::before {
  background: linear-gradient(90deg, rgba(120, 160, 255, 0.95), rgba(120, 160, 255, 0.45));
}

.page-home .home-ai-plug__feature-title {
  position: relative;
  z-index: 1;
  margin: 0;
  min-width: 0;
  font-size: clamp(0.96rem, 0.2vw + 0.9rem, 1.04rem);
  font-weight: 850;
  letter-spacing: -0.015em;
  word-spacing: normal;
  line-height: 1.25;
  color: rgba(255, 248, 235, 0.98);
  text-wrap: pretty;
  hyphens: none;
  overflow-wrap: normal;
  word-break: normal;
}

.page-home .home-ai-plug__feature-desc {
  position: relative;
  z-index: 1;
  margin: 0;
  flex: 1 1 auto;
  font-size: clamp(0.84rem, 0.12vw + 0.8rem, 0.9rem);
  line-height: 1.55;
  letter-spacing: normal;
  word-spacing: normal;
  color: rgba(255, 246, 230, 0.84);
  text-wrap: pretty;
  hyphens: none;
  overflow-wrap: normal;
  word-break: normal;
}

/* —— CTAs —— */
.page-home .home-ai-plug__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 12px;
}

.page-home .home-ai-plug__btn {
  flex: 1 1 auto;
  min-width: min(100%, 11rem);
  min-height: 48px;
  letter-spacing: normal;
  word-spacing: normal;
  text-transform: none;
}

.page-home .home-ai-plug__btn--primary {
  box-shadow:
    0 14px 36px rgba(255, 139, 31, 0.4),
    0 0 24px rgba(242, 178, 26, 0.15);
}

.page-home .home-ai-plug__btn--secondary {
  background: rgba(4, 12, 26, 0.45);
  color: rgba(255, 248, 235, 0.96);
  border: 1px solid rgba(255, 246, 230, 0.28);
  box-shadow:
    0 10px 28px rgba(0, 0, 0, 0.32),
    inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

.page-home .home-ai-plug__btn--secondary:hover {
  border-color: rgba(20, 184, 166, 0.45);
  color: rgba(255, 250, 240, 0.99);
  background: rgba(255, 246, 230, 0.08);
}

/* —— Restaurant CTA —— */
.page-home .home-ai-plug__restaurant {
  display: grid;
  gap: 6px;
  margin: clamp(4px, 1vw, 8px) 0 0;
  padding: clamp(10px, 1.8vw, 12px) clamp(12px, 2.2vw, 14px);
  max-width: min(100%, 36rem);
  border-radius: calc(var(--radius) - 2px);
  border: 1px solid rgba(255, 246, 230, 0.14);
  background: rgba(255, 246, 230, 0.04);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

.page-home .home-ai-plug__restaurant-lead {
  margin: 0;
  font-size: clamp(0.84rem, 0.12vw + 0.8rem, 0.88rem);
  font-weight: 650;
  line-height: 1.4;
  letter-spacing: normal;
  color: rgba(255, 246, 230, 0.86);
}

.page-home .home-ai-plug__restaurant-action {
  margin: 0;
  font-size: clamp(0.86rem, 0.14vw + 0.82rem, 0.9rem);
  line-height: 1.45;
  letter-spacing: normal;
}

.page-home .home-ai-plug__restaurant-action a {
  display: inline;
  font-weight: 800;
  color: #fff8eb;
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 0.2em;
  text-decoration-color: rgba(242, 178, 26, 0.75);
  transition: color 0.15s ease, text-decoration-color 0.15s ease;
}

.page-home .home-ai-plug__restaurant-action a:hover {
  color: #fff;
  text-decoration-color: rgba(20, 184, 166, 0.85);
}

.page-home .home-ai-plug__restaurant-action a:focus-visible {
  outline: 2px solid rgba(242, 178, 26, 0.65);
  outline-offset: 3px;
  border-radius: 4px;
}

/* —— Desktop grid for feature cards —— */
@media (min-width: 720px) {
  .page-home .home-ai-plug__features {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(12px, 1.8vw, 16px);
  }

  .page-home .home-ai-plug__feature--connected {
    grid-column: 1 / -1;
  }
}

@media (min-width: 720px) {
  .page-home .home-ai-plug__hero-media-wrap {
    min-height: clamp(260px, 34vw, 320px);
    max-height: 380px;
  }

  .page-home .home-ai-plug__hero-overlay {
    padding: clamp(18px, 3vw, 32px);
    max-width: min(40rem, 72%);
  }
}

@media (min-width: 960px) {
  .page-home .home-ai-plug__hero-media-wrap {
    min-height: clamp(280px, 28vw, 340px);
    max-height: 400px;
  }

  .page-home .home-ai-plug__hero-title {
    font-size: clamp(1.2rem, 0.5vw + 1.06rem, 1.52rem);
  }

  .page-home .home-ai-plug__features {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .page-home .home-ai-plug__feature--growth,
  .page-home .home-ai-plug__feature--operators {
    grid-column: span 1;
  }

  .page-home .home-ai-plug__feature--connected {
    grid-column: 1 / -1;
  }
}

@media (max-width: 639px) {
  .page-home .home-ai-plug-section {
    padding-top: clamp(1.75rem, 5vw, 2.25rem);
    padding-bottom: clamp(2rem, 5.5vw, 2.5rem);
  }

  .page-home .transport-section.transport-section--story:has(+ .home-ai-plug-section) {
    padding-bottom: clamp(16px, 3.5vw, 22px);
  }

  .page-home .transport-section + .home-ai-plug-section {
    padding-top: clamp(16px, 3.5vw, 22px);
  }

  .page-home .home-ai-plug__hero-media-wrap {
    min-height: clamp(260px, 52vw, 320px);
    max-height: clamp(300px, 78vw, 360px);
  }

  .page-home .home-ai-plug__hero-img {
    object-position: 50% 36%;
  }

  .page-home .home-ai-plug__hero-overlay {
    max-width: 100%;
    padding: clamp(14px, 3.6vw, 20px) clamp(16px, 3.8vw, 22px) clamp(16px, 3.8vw, 22px);
  }

  .page-home .home-ai-plug__hero-title {
    font-size: clamp(1.06rem, 4.8vw, 1.28rem);
  }

  .page-home .home-ai-plug__eyebrow {
    font-size: 0.58rem;
  }

  .page-home .home-ai-plug__actions {
    margin-top: 4px;
  }

  .page-home .home-ai-plug__actions .home-ai-plug__btn {
    width: 100%;
    justify-content: center;
  }

  .page-home .home-ai-plug__restaurant {
    margin-top: clamp(16px, 4vw, 20px);
  }
}

@media (max-width: 419px) {
  .page-home .home-ai-plug__actions .home-ai-plug__btn {
    min-height: 44px;
  }
}

/* ==============================================================
   Homepage visitor-first rework — compact directory, launcher, proof
   ============================================================== */

.page-home .home-hero--cinematic .hero-title,
.page-home .home-hero--cinematic .hero-text-on-dark,
.page-home .home-hero--cinematic .hero-proof-item {
  letter-spacing: normal;
  word-spacing: normal;
  text-align: left;
}

/* Situation cards — tighter mobile heights, less copy stack */
.page-home .home-lane-card--featured .home-lane-card-media-wrap {
  min-height: clamp(220px, 44vw, 360px);
}

.page-home .home-lane-card--medium .home-lane-card-media-wrap {
  min-height: clamp(200px, 48vw, 280px);
}

.page-home .home-lane-card--compact .home-lane-card-media-wrap {
  min-height: clamp(200px, 42vw, 300px);
}

@media (min-width: 900px) {
  .page-home .home-lane-card--featured .home-lane-card-media-wrap {
    min-height: clamp(300px, 24vw, 400px);
  }

  .page-home .home-lane-card--medium .home-lane-card-media-wrap {
    min-height: clamp(260px, 18vw, 320px);
  }

  .page-home .home-lane-card--compact .home-lane-card-media-wrap {
    min-height: clamp(240px, 16vw, 300px);
  }
}

.page-home .home-lane-copy {
  -webkit-line-clamp: 2;
}

/* Guide directory — compact tile list (distinct from situation posters) */
.page-home .home-guide-directory--tiles {
  padding-top: clamp(22px, 2.8vw, 34px);
  padding-bottom: clamp(24px, 3vw, 38px);
  border-block: 1px solid rgba(255, 246, 230, 0.1);
  background:
    radial-gradient(ellipse 80% 50% at 8% 0%, rgba(20, 184, 166, 0.12), transparent 50%),
    linear-gradient(180deg, #060d18 0%, #0b1628 100%);
}

.page-home .home-guide-directory--tiles .home-directory-head {
  display: flex;
  flex-direction: column;
  gap: clamp(6px, 1vw, 10px);
  max-width: 40rem;
  margin-bottom: clamp(14px, 2vw, 20px);
}

.page-home .home-guide-directory--tiles .home-directory-head .eyebrow {
  margin-bottom: 4px;
  letter-spacing: 0.12em;
}

.page-home .home-guide-directory--tiles .explore-title {
  margin: 0;
  font-size: clamp(1.35rem, 2vw + 0.75rem, 1.85rem);
  line-height: 1.12;
  letter-spacing: -0.028em;
  color: var(--cream);
}

.page-home .home-guide-directory--tiles .home-directory-lede {
  margin: 0;
  font-size: clamp(0.88rem, 0.2vw + 0.82rem, 0.96rem);
  line-height: 1.5;
  color: rgba(255, 246, 230, 0.82);
  letter-spacing: normal;
  word-spacing: normal;
  text-align: left;
}

.page-home .home-guide-tile-grid {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: clamp(8px, 1.2vw, 10px);
  grid-template-columns: 1fr;
}

@media (min-width: 600px) {
  .page-home .home-guide-tile-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) {
  .page-home .home-guide-tile-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.page-home .home-guide-tile-grid > li {
  margin: 0;
  padding: 0;
  min-width: 0;
}

.page-home .home-guide-tile {
  display: flex;
  align-items: center;
  gap: clamp(10px, 1.4vw, 14px);
  min-height: clamp(72px, 12vw, 88px);
  padding: clamp(8px, 1.2vw, 10px) clamp(10px, 1.4vw, 12px);
  border-radius: 14px;
  text-decoration: none;
  color: var(--cream);
  background: rgba(255, 246, 230, 0.06);
  border: 1px solid rgba(255, 246, 230, 0.14);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
  transition:
    transform 0.2s ease,
    border-color 0.2s ease,
    background 0.2s ease;
}

.page-home .home-guide-tile:hover {
  transform: translateY(-2px);
  border-color: rgba(242, 178, 26, 0.38);
  background: rgba(255, 246, 230, 0.1);
}

.page-home .home-guide-tile:focus-visible {
  outline: 3px solid rgba(242, 178, 26, 0.9);
  outline-offset: 2px;
}

.page-home .home-guide-tile--hub {
  border-color: rgba(255, 139, 31, 0.32);
  background: rgba(255, 139, 31, 0.08);
}

.page-home .home-guide-tile-thumb-wrap {
  flex-shrink: 0;
  width: clamp(64px, 14vw, 76px);
  height: clamp(52px, 11vw, 60px);
  border-radius: 10px;
  overflow: hidden;
  background: #0a1428;
}

.page-home .home-guide-tile-thumb {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.page-home .home-guide-tile-text {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 3px;
  text-align: left;
}

.page-home .home-guide-tile-label {
  font-size: clamp(0.92rem, 0.2vw + 0.86rem, 1rem);
  font-weight: 820;
  letter-spacing: -0.02em;
  line-height: 1.2;
  color: #fff8eb;
}

.page-home .home-guide-tile-desc {
  font-size: clamp(0.78rem, 0.12vw + 0.74rem, 0.84rem);
  line-height: 1.42;
  letter-spacing: normal;
  word-spacing: normal;
  color: rgba(255, 246, 230, 0.78);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

.page-home .home-guide-tile-arrow {
  flex-shrink: 0;
  font-size: 1.1rem;
  font-weight: 700;
  color: rgba(242, 178, 26, 0.9);
  line-height: 1;
}

/* Ask launcher — compressed after bridge */
.page-home .home-ask-launcher-compact.section-ask-premium {
  padding-top: clamp(28px, 4vw, 40px);
  padding-bottom: clamp(28px, 4vw, 40px);
}

.page-home .home-ask-launcher-compact .ask-concierge {
  gap: clamp(14px, 2vw, 20px);
}

.page-home .home-ask-launcher-compact .home-ask-launcher-intro {
  gap: clamp(8px, 1.2vw, 12px);
}

.page-home .home-ask-launcher-compact .ask-headline {
  font-size: clamp(1.35rem, 2.2vw + 0.65rem, 1.85rem);
}

.page-home .home-ask-launcher-compact .section-text-ask {
  font-size: clamp(0.9rem, 0.2vw + 0.84rem, 0.98rem);
  line-height: 1.52;
  letter-spacing: normal;
  word-spacing: normal;
}

.page-home .home-ask-launcher-compact .ask-intake-card {
  padding: clamp(16px, 2.4vw, 20px);
}

.page-home .home-ask-launcher-compact .ask-composer-teaser {
  margin-bottom: 12px;
}

.page-home .prompt-chip-grid--compact {
  gap: 8px;
}

.page-home .home-ask-launcher-compact .prompt-chip {
  font-size: clamp(0.78rem, 0.12vw + 0.74rem, 0.84rem);
  padding: 8px 12px;
}

.page-home .ask-sample-preview--compact {
  margin-top: 12px;
  padding: 12px 14px;
}

.page-home .ask-sample-preview--compact .ask-sample-lede {
  margin: 0;
  font-size: clamp(0.82rem, 0.1vw + 0.78rem, 0.88rem);
  line-height: 1.48;
  letter-spacing: normal;
  word-spacing: normal;
  text-align: left;
}

.page-home .ask-sample-preview--compact .ask-sample-list {
  display: none;
}

/* Transport — tighter homepage block */
.page-home .transport-section.transport-section--story {
  padding-top: clamp(22px, 3vw, 32px);
  padding-bottom: clamp(20px, 2.8vw, 28px);
}

.page-home .transport-story-heading {
  font-size: clamp(1.35rem, 1.8vw + 0.75rem, 1.95rem);
}

.page-home .transport-story-lede {
  font-size: clamp(0.9rem, 0.2vw + 0.84rem, 0.98rem);
  line-height: 1.52;
  letter-spacing: normal;
  word-spacing: normal;
}

@media (min-width: 960px) {
  .page-home .transport-story-body {
    grid-template-columns: minmax(0, 1fr) minmax(300px, 1fr);
    gap: clamp(18px, 2.4vw, 28px);
    padding: clamp(16px, 2.2vw, 22px);
  }
}

/* Homepage — Why this guide: light band between Ask (dark) and Transport (dark) */
.page-home .home-trust-band--light.trust-strip--home-proof {
  position: relative;
  padding: clamp(28px, 4.5vw, 44px) clamp(16px, 4.5vw, 48px);
  background:
    radial-gradient(ellipse 90% 50% at 50% 0%, rgba(20, 184, 166, 0.07), transparent 58%),
    linear-gradient(180deg, #fffbf6 0%, #f8f2e8 52%, #f0e9de 100%);
  border-block: 1px solid rgba(11, 29, 58, 0.07);
}

.page-home .home-trust-band--light.trust-strip--home-proof::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(
    90deg,
    rgba(20, 184, 166, 0.85) 0%,
    rgba(242, 178, 26, 0.9) 50%,
    rgba(255, 106, 77, 0.8) 100%
  );
}

.page-home .home-trust-band--light .trust-strip-inner.home-trust-compact-inner {
  gap: clamp(14px, 2.2vw, 20px);
}

.page-home .home-trust-band--light .trust-strip-eyebrow.eyebrow {
  margin-bottom: 8px;
  color: #0d9488;
  letter-spacing: 0.12em;
  font-weight: 850;
}

.page-home .home-trust-band--light .home-trust-compact-head h2 {
  color: var(--navy);
  font-size: clamp(1.28rem, 2vw + 0.72rem, 1.72rem);
  line-height: 1.14;
  letter-spacing: -0.024em;
}

.page-home .home-trust-band--light .home-trust-lede {
  margin-top: 2px;
  color: rgba(11, 29, 58, 0.74);
  font-size: clamp(0.9rem, 0.2vw + 0.84rem, 0.98rem);
  line-height: 1.55;
  letter-spacing: normal;
  word-spacing: normal;
  text-align: left;
}

.page-home .home-trust-band--light .home-trust-proof-row--light {
  gap: clamp(8px, 1.2vw, 10px);
  margin-top: clamp(4px, 0.8vw, 8px);
}

.page-home .home-trust-band--light .home-trust-proof-row--light .home-trust-proof-item {
  display: block;
  margin: 0;
  padding: clamp(12px, 2vw, 14px) clamp(14px, 2.2vw, 16px);
  border-radius: 12px;
  font-size: clamp(0.86rem, 0.18vw + 0.8rem, 0.94rem);
  font-weight: 750;
  line-height: 1.4;
  letter-spacing: normal;
  word-spacing: normal;
  color: rgba(11, 29, 58, 0.9);
  border: 1px solid rgba(11, 29, 58, 0.1);
  border-left-width: 4px;
  box-shadow: none;
}

.page-home .home-trust-band--light .home-trust-proof-item--route {
  border-left-color: #14b8a6;
  background: linear-gradient(
    105deg,
    rgba(20, 184, 166, 0.14) 0%,
    rgba(20, 184, 166, 0.04) 38%,
    rgba(255, 255, 255, 0.35) 100%
  );
}

.page-home .home-trust-band--light .home-trust-proof-item--timing {
  border-left-color: #d97706;
  background: linear-gradient(
    105deg,
    rgba(242, 178, 26, 0.16) 0%,
    rgba(242, 178, 26, 0.05) 38%,
    rgba(255, 255, 255, 0.35) 100%
  );
}

.page-home .home-trust-band--light .home-trust-proof-item--visitors {
  border-left-color: #ea580c;
  background: linear-gradient(
    105deg,
    rgba(255, 106, 77, 0.12) 0%,
    rgba(255, 106, 77, 0.04) 38%,
    rgba(255, 255, 255, 0.35) 100%
  );
}

@media (min-width: 600px) {
  .page-home .home-trust-band--light .home-trust-proof-row--light {
    gap: 12px;
  }

  .page-home .home-trust-band--light .home-trust-proof-row--light .home-trust-proof-item {
    min-height: 100%;
    display: flex;
    align-items: center;
  }
}
