:root { --navy: #0a2342; --blue: #0071e3; --paper: #fff; --mist: #f0f5fb; --frost: #f7f9fc; --ink: #0a2342; --slate: #50657b; --steel: #60768d; --line: #d2deeb; --link: #0066cc; --sans: 'Helvetica Neue', Helvetica, Arial, sans-serif; }
body { font-size: 1rem; }
main { overflow: clip; }
h1, h2, h3, h4 { text-wrap: balance; }
p { text-wrap: pretty; }
:focus-visible { outline-offset: 5px; }
.container { width: min(100% - 80px, 1280px); }
.nav-wrap { background: rgba(255, 255, 255, 0.97); border-color: var(--line); }
.nav { width: min(100% - 64px, 1360px); min-height: 80px; gap: 18px; }
.brand { gap: 12px; min-width: 190px; }
.brand-icon { display: block; width: 44px; height: 40px; flex-shrink: 0; border: 0px; border-radius: 0px; }
.brand-icon svg { display: block; width: 100%; height: 100%; overflow: visible; }
.map-outer { fill: var(--ink); }
.map-center { fill: var(--blue); }
.brand-type { gap: 0px; }
.brand-type strong, .brand-type small { color: var(--ink); font-size: 0.875rem; font-weight: 750; line-height: 1.12; letter-spacing: -0.015em; }
.nav-links { gap: 18px; font-size: 0.875rem; color: var(--ink); }
.nav-links a { white-space: nowrap; }
.nav-links a[aria-current="page"] { color: var(--link); text-decoration-color: var(--blue); }
.nav-cta { min-height: 44px; padding: 10px 18px; font-size: 0.875rem; font-weight: 600; }
.nav-cta[aria-current="page"] { background: var(--navy); }
.currency-control-header select { appearance: none; width: 6rem; min-width: 6rem; min-height: 2.75rem; padding: 0.625rem 2.25rem 0.625rem 1.125rem; border-color: var(--line); border-radius: 999px; background-color: var(--paper); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%230a2342' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 1rem center; background-size: 0.75rem 0.5rem; color: var(--ink); font-size: 0.875rem; line-height: 1.25; cursor: pointer; }
.mobile-nav summary { color: var(--ink); font-size: 0.875rem; }
.mobile-nav > div { border-radius: 10px; }
.mobile-nav > div a { font-size: 1rem; }
.button { min-height: 48px; padding: 13px 23px; font-size: 0.9375rem; font-weight: 600; gap: 12px; }
.button-outline { border-color: var(--line); background: white; }
.button-outline:hover { border-color: var(--blue); color: var(--link); }
.text-link, .hero-secondary { font-size: 0.9375rem; }
.section-label { border-color: var(--line); color: var(--slate); font-size: 0.75rem; letter-spacing: 0.075em; }
.section-label span:first-child { color: var(--link); }
.section h2, .clarity-section h2, .last-call h2, .editorial-head h2 { font-weight: 650; letter-spacing: -0.045em; }
.section h2 em, .site-map-section h2 em, .stops-heading h2 em, .intro h2 em { color: var(--blue); }
.map-hero { background: var(--frost); }
.map-hero .hero-inner { padding-top: 35px; padding-bottom: 36px; }
.map-hero .hero-topline { justify-content: space-between; font-size: 0.75rem; letter-spacing: 0.11em; text-align: left; padding-bottom: 22px; border-bottom: 1px solid var(--line); }
.map-hero .hero-topline span:first-child { color: var(--link); }
.hero-layout { display: grid; grid-template-columns: minmax(0px, 0.95fr) minmax(0px, 1.05fr); align-items: center; gap: clamp(28px, 4vw, 60px); padding-top: 30px; }
.map-hero .hero-content { max-width: none; margin: 0px; text-align: left; }
.map-hero .hero-kicker { margin: 0px 0px 22px; color: var(--slate); font-size: 0.9375rem; font-weight: 500; letter-spacing: 0px; }
.map-hero h1 { font-size: clamp(46px, 5.1vw, 72px); line-height: 1.025; letter-spacing: -0.055em; font-weight: 700; }
.map-hero h1 em { color: var(--blue); }
.map-hero .hero-lede { max-width: 495px; margin: 26px 0px 0px; color: var(--slate); font-size: 1.0625rem; line-height: 1.65; letter-spacing: 0px; }
.map-hero .hero-actions { justify-content: flex-start; gap: 22px; margin-top: 30px; }
.map-hero .hero-crossing { margin-top: 24px; font-size: 0.875rem; }
.map-hero .hero-stage { min-width: 0px; }
.unfolded-photo { display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 9px; height: clamp(380px, 37vw, 530px); margin: 0px; }
.map-fold { position: relative; isolation: isolate; overflow: hidden; background: var(--mist); animation: 0.85s ease 0s 1 normal both running unfold-reveal; }
.map-fold:nth-child(1) { clip-path: polygon(0px 10%, 100% 24%, 100% 100%, 0px 86%); }
.map-fold:nth-child(2) { clip-path: polygon(0px 24%, 100% 5%, 100% 81%, 0px 100%); animation-delay: 0.1s; }
.map-fold:nth-child(3) { clip-path: polygon(0px 5%, 100% 21%, 100% 97%, 0px 81%); animation-delay: 0.2s; }
.map-fold img { position: absolute; top: 0px; width: 300%; max-width: none; height: 100%; object-fit: cover; filter: saturate(0.42); }
.map-fold:nth-child(1) img { left: 0px; }
.map-fold:nth-child(2) img { left: -100%; filter: saturate(0.65); }
.map-fold:nth-child(3) img { left: -200%; }
.map-fold::after { content: ""; position: absolute; inset: 0px; background: rgba(10, 35, 66, 0.18); mix-blend-mode: color; pointer-events: none; }
.map-fold:nth-child(2)::after { background: rgb(0, 113, 227); mix-blend-mode: color; opacity: 0.7; }
.map-caption { display: flex; justify-content: space-between; gap: 12px; margin-top: 22px; padding-top: 15px; border-top: 1px solid var(--line); font-size: 0.75rem; letter-spacing: 0.075em; color: var(--slate); }
.map-caption span:last-child { color: var(--link); }
.map-hero .hero-note { position: static; display: grid; grid-template-columns: minmax(0px, 1fr) auto; max-width: none; width: min(100% - 80px, 1280px); margin: 0px auto; padding: 25px 30px; border: 1px solid var(--line); border-radius: 8px; background: white; gap: 30px; }
.map-hero .hero-note > div { display: grid; grid-template-columns: minmax(0px, 1fr) minmax(0px, 1fr); gap: 6px 30px; }
.map-hero .hero-note-top { grid-column: 1 / -1; font-size: 0.75rem; color: var(--link); margin: 0px 0px 5px; }
.map-hero .hero-note p { display: block; font-size: 0.875rem; line-height: 1.5; }
.map-hero .hero-note p strong { font-size: 1.75rem; color: var(--ink); }
.map-hero .hero-note p span { font-size: 0.875rem; }
.map-hero .hero-note small { color: var(--slate); font-size: 0.8125rem; line-height: 1.5; margin: 0px; }
.map-hero .hero-note .price-examples { margin: 0px; }
.map-hero .hero-note .currency-control-compact { grid-column: 1 / -1; margin: 0px; }
.map-hero .hero-note .currency-control-compact p { font-size: 0.75rem; }
.map-hero .hero-bottom { padding-block: 20px 28px; font-size: 0.75rem; }
.fold-ribbon { height: 36px; background: var(--frost) url('/assets/brand/fold-ribbon.svg') repeat-x center / auto 36px; }
@keyframes unfold-reveal { 
  0% { opacity: 0; transform: translateY(15px); }
  100% { opacity: 1; transform: translateY(0px); }
}
.brand-story { --ink: #fff; --slate: #c5d6e8; --steel: #c5d6e8; --line: #ffffff30; --link: #91c6ff; background: var(--navy); position: relative; isolation: isolate; }
.brand-story::before { content: ""; position: absolute; inset: 0px; z-index: -1; background: url("/assets/brand/fold-ribbon.svg") 0% 0% / 430px 180px repeat; opacity: 0.07; pointer-events: none; }
.brand-story .intro-grid { margin-top: 45px; }
.brand-story .intro-stats { margin-top: 55px; }
.brand-story .intro-stats strong { color: white; }
.intro-stats > div > span, .intro-stats p { font-size: 0.8125rem; }
.intro-stats > div > span { margin-top: 12px; }
.site-map-card { border-radius: 8px; position: relative; overflow: hidden; border-color: var(--line); background: var(--frost); }
.site-map-card::before { content: ""; position: absolute; top: 0px; right: 0px; width: 27px; height: 27px; background: linear-gradient(225deg,white 49%,var(--line) 50%,var(--mist) 54%); pointer-events: none; }
.site-map-card:hover { border-color: var(--blue); background: rgb(237, 245, 255); }
.site-map-card > span, .site-map-card small { font-size: 0.75rem; }
.site-map-card p { font-size: 1rem; }
.site-map-hint { font-size: 0.875rem; }
.editorial-media article, .blog-feature, .blog-topic, .guide-card, .guide-detail-grid article, .route-notes-grid article { border-radius: 8px; }
.editorial-head span, .editorial-media article span { font-size: 0.75rem; color: var(--link); }
.editorial-media article { border: 1px solid var(--line); }
.editorial-media h3 { letter-spacing: -0.04em; }
.editorial-image { background: var(--frost); }
.route-notes { border-radius: 8px; border: 1px solid var(--line); }
.route-notes-grid article > span, .flow-grid article > span, .light-label { font-size: 0.75rem; color: var(--link); }
.route-notes-grid p, .flow-grid p, .clarity-list p, .faq details p { font-size: 1rem; line-height: 1.65; }
.clarity-list h3 { font-size: 1rem; }
.subpage-hero { position: relative; padding-top: 75px; padding-bottom: 65px; border-color: var(--line); }
.subpage-hero:not(.food-hero)::after, .blog-hero::after { content: ""; position: absolute; width: 154px; height: 130px; right: 6px; top: 70px; background: url("/assets/brand/map-mark.svg") center center / contain no-repeat; opacity: 0.065; pointer-events: none; }
.subpage-hero h1 { position: relative; max-width: 1000px; font-weight: 700; letter-spacing: -0.05em; }
.subpage-hero h1 em, .guide-hero h1 em, .guide-section h2 em, .guide-example h2 em, .blog-hero h1 em, .blog-article h1 em, .blog-section h2 em { color: var(--blue); }
.subpage-eyebrow, .guide-eyebrow, .blog-eyebrow, .blog-kicker { color: var(--link); font-size: 0.75rem; letter-spacing: 0.1em; }
.subpage-hero > p, .food-hero-copy > p, .guide-hero-copy > p { color: var(--slate); font-size: 1.125rem; line-height: 1.65; }
.guide-hero { padding-top: 30px; }
.guide-hero h1, .blog-hero h1, .blog-article h1 { font-weight: 700; letter-spacing: -0.05em; }
.guide-hero-grid > img { border-radius: 8px; }
.guide-breadcrumb, .blog-breadcrumb, .guide-facts span { font-size: 0.875rem; }
.guide-facts { background: var(--frost); padding-inline: 24px; border-radius: 8px; border: 1px solid var(--line); }
.guide-steps li > span { color: var(--link); font-size: 0.875rem; }
.guide-steps p, .guide-detail-grid p, .guide-timeline p, .guide-card p { font-size: 1rem; line-height: 1.65; }
.guide-category-head span, .guide-card-kicker, .guide-detail-grid article > span { font-size: 0.75rem; color: var(--link); }
.food-jumps a { font-size: 0.875rem; padding: 10px 14px; }
.guide-card-foot, .guide-card .guide-card-status, .guide-aside { font-size: 0.875rem; }
.food-photo { border-radius: 8px; }
.food-photo::after { border-radius: 0px 0px 8px 8px; }
.food-category-layout .guide-card { border-radius: 8px; background: var(--frost); }
.food-category-layout .guide-card p { font-size: 1rem; }
.food-guide-stats { font-size: 0.875rem; }
.blog-hero { position: relative; }
.blog-feature-copy h2, .blog-topic h3 { font-weight: 650; }
.blog-topic > span, .blog-topic small, .blog-meta { font-size: 0.75rem; color: var(--link); }
.blog-topic p { font-size: 1rem; }
.blog-cover { border-radius: 8px; }
.blog-prose { color: var(--ink); font-size: 1.0625rem; }
.blog-aside { border-radius: 8px; }
.last-call, .guide-cta, .blog-cta { --ink: #fff; --slate: #c5d6e8; --steel: #fff; background: var(--navy); color: white; position: relative; isolation: isolate; }
.last-call::before, .guide-cta::before, .blog-cta::before { content: ""; position: absolute; inset: 0px; z-index: -1; background: url("/assets/brand/fold-ribbon.svg") center center / 560px 220px repeat-x; opacity: 0.07; pointer-events: none; }
.last-call h2 em, .guide-cta h2 em, .blog-cta h2 em { color: rgb(145, 198, 255); }
.last-call-inner > span, .guide-cta-inner > span { font-size: 0.75rem; }
.filters { gap: 9px; border: 0px; margin-top: 32px; }
.filter { min-height: 44px; padding: 10px 15px; border: 1px solid var(--line); border-radius: 999px; font-size: 0.875rem; background: white; }
.filter:hover, .filter.is-active { border-color: var(--navy); background: var(--navy); color: white; }
.filter span { font-size: 0.75rem; }
.stops-grid { gap: 18px; }
.stops-directory-grid { gap: 22px; }
.stop-card { position: relative; padding: 20px; border: 1px solid var(--line); border-radius: 8px; background: var(--paper); min-width: 0px; }
.stop-card.is-selected { border-color: var(--blue); background: rgb(237, 245, 255); }
.stop-index { color: var(--link); font-size: 0.75rem; }
.stop-index span { font-size: 0.75rem; }
.stop-visual, .venue-photo-gallery { border-radius: 5px; }
.stop-card p { font-size: 1rem; line-height: 1.6; }
.stop-card .stop-duration, .stop-source { font-size: 0.875rem; }
.stop-foot > span { font-size: 0.75rem; }
.select-stop { min-height: 44px; padding: 10px 16px; border-color: var(--line); font-size: 0.875rem; }
.select-stop:hover { border-color: var(--blue); color: var(--link); }
.is-selected .select-stop:hover { color: white; }
.bundle-card { position: relative; background: var(--frost); border-radius: 8px; border-top: 3px solid var(--blue); }
.bundle-category { color: var(--link); font-size: 0.75rem; }
.bundle-card p, .bundle-intro { font-size: 0.9375rem; }
.bundle-card small, .bundle-card .bundle-estimate, .bundle-message { font-size: 0.8125rem; }
.bundle-card .button { font-size: 0.875rem; }
.day-controls { top: 80px; border-radius: 8px; }
.day-controls label, .day-controls select, .day-tab { font-size: 0.875rem; }
.day-controls > p { font-size: 0.8125rem; }
.day-controls select { min-height: 44px; }
.day-tab { min-height: 44px; }
.builder-grid { grid-template-columns: minmax(0px, 1fr) 370px; gap: 30px; }
.builder-panel { padding: 26px; border-radius: 8px; border-top: 4px solid var(--blue); background: var(--frost); }
.builder-top, .selection-heading { color: var(--link); font-size: 0.75rem; }
.builder-panel h3 { font-size: 2.5rem; letter-spacing: -0.045em; }
.builder-intro, .selection-empty { font-size: 0.9375rem; }
.day-overview-button { border-radius: 6px; font-size: 0.8125rem; }
.day-overview-button strong { font-size: 0.875rem; }
.itinerary-stop > div > span { font-size: 0.875rem; }
.itinerary-stop small, .itinerary-index { font-size: 0.75rem; }
.itinerary-stop button { min-width: 24px; min-height: 28px; color: var(--ink); }
.plan-capacity > div { font-size: 0.875rem; }
.plan-capacity small, .plan-breakdown, .selection-note, .day-switch-help { font-size: 0.8125rem; }
.form-row label { font-size: 0.875rem; }
.form-row input, .form-row select, .form-row textarea { font-size: 1rem; border-color: var(--line); border-radius: 6px; }
.form-row > small { font-size: 0.75rem; }
.price-line > div > span { font-size: 0.9375rem; }
.price-line small, .booking-policy, .booking-policy strong, .consent, .payment-note, .form-message { font-size: 0.8125rem; line-height: 1.55; }
.consent { color: var(--slate); grid-template-columns: 18px 1fr; }
.review-main { padding-block: 65px; }
.status-brand { color: var(--link); font-size: 0.75rem; font-weight: 600; letter-spacing: 0.08em; }
.review-main h1 { color: var(--navy); font-weight: 700; }
.review-day, .review-box { border-radius: 8px; background: var(--frost); border-top: 3px solid var(--blue); }
.review-budget { font-size: 0.875rem; }
.review-day li small { font-size: 0.875rem; }
.review-box input:not([type="checkbox"]), .review-box select, .review-box textarea { font-size: 1rem; border-radius: 6px; }
.ga-consent { background: white; color: var(--ink); border-color: var(--line); font-family: var(--sans); border-radius: 8px; }
.ga-consent button { border-color: var(--navy); border-radius: 6px; }
.ga-consent button:last-child { background: var(--blue); border-color: var(--blue); }
.footer { --ink: #fff; --slate: #b7bcc4; --line: #ffffff2b; --link: #91c6ff; background: rgb(8, 8, 8); color: white; }
.footer::before { content: ""; display: block; height: 27px; background: url("/assets/brand/fold-ribbon.svg") center center / auto 27px repeat-x; }
.footer-top { padding-block: 45px 42px; align-items: flex-start; }
.footer-brand { display: inline-flex; align-items: center; gap: 16px; font-weight: 700; }
.footer-brand .brand-icon { width: 54px; height: 47px; }
.footer-brand .brand-type strong, .footer-brand .brand-type small { color: white; font-size: 1.125rem; font-weight: 700; }
.footer-top p { font-size: 0.875rem; line-height: 1.65; max-width: 430px; }
.footer-top p .footer-tagline { display: block; color: white; font-size: 1.125rem; margin-bottom: 10px; }
.footer-bottom { flex-wrap: wrap; color: var(--slate); font-size: 0.8125rem; gap: 15px 24px; }
.footer-bottom a:hover { color: white; text-decoration: underline; }
.footer-bottom > span { margin-right: auto; }
@media (max-width: 1250px) {
  .nav-links { display: none; }
  .mobile-nav { margin-left: auto; }
  .hero-layout { gap: 28px; }
  .map-hero h1 { font-size: clamp(48px, 5.5vw, 66px); }
}
@media (max-width: 1050px) {
  .builder-grid { grid-template-columns: minmax(0px, 1fr) 330px; gap: 22px; }
  .builder-panel { padding: 22px; }
  .builder-grid .stops-grid { grid-template-columns: 1fr; }
  .map-hero .hero-actions { flex-wrap: wrap; gap: 18px; }
  .unfolded-photo { height: 400px; }
}
@media (max-width: 900px) {
  .hero-layout { grid-template-columns: 1fr; gap: 34px; }
  .map-hero .hero-content { max-width: 680px; }
  .map-hero h1 { font-size: clamp(54px, 7.5vw, 70px); }
  .map-hero .hero-lede { max-width: 650px; }
  .map-hero .hero-stage { max-width: 660px; width: 100%; margin-inline: auto; }
  .unfolded-photo { height: 430px; }
  .builder-grid { grid-template-columns: 1fr; }
  .builder-grid .stops-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
  .builder-panel { position: static; max-height: none; }
  .stops-directory-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
}
@media (max-width: 700px) {
  .container, .nav { width: calc(100% - 40px); }
  .nav { min-height: 72px; flex-wrap: nowrap; padding-block: 12px; gap: 10px; }
  .brand { min-width: 0px; gap: 9px; }
  .brand-icon { display: block; width: 36px; height: 33px; }
  .brand-type strong, .brand-type small { font-size: 0.8125rem; }
  .currency-control-header { margin-left: auto; }
  .currency-control-header select { width: 5.5rem; min-width: 5.5rem; min-height: 2.375rem; padding: 0.5rem 1.875rem 0.5rem 0.875rem; background-position: right 0.75rem center; }
  .mobile-nav { margin-left: 0px; }
  .mobile-nav summary { padding: 9px 10px; font-size: 0.8125rem; }
  .nav-cta { display: none; }
  .map-hero .hero-inner { padding-top: 25px; padding-bottom: 28px; }
  .map-hero .hero-topline { font-size: 0.75rem; gap: 12px; }
  .map-hero .hero-edition { display: none; }
  .hero-layout { padding-top: 30px; gap: 25px; }
  .map-hero .hero-kicker { margin-bottom: 19px; font-size: 0.875rem; }
  .map-hero h1 { font-size: clamp(43px, 10.6vw, 63px); letter-spacing: -0.05em; }
  .map-hero .hero-lede { font-size: 1rem; margin-top: 21px; }
  .map-hero .hero-actions { flex-direction: row; align-items: center; margin-top: 25px; }
  .map-hero .hero-crossing { line-height: 1.6; }
  .unfolded-photo { height: clamp(280px, 72vw, 405px); gap: 6px; }
  .map-caption { margin-top: 16px; font-size: 0.75rem; }
  .map-hero .hero-note { width: calc(100% - 40px); grid-template-columns: 1fr; padding: 22px; margin: 0px auto; gap: 19px; }
  .map-hero .hero-note > div { display: block; }
  .map-hero .hero-note-top { margin-bottom: 12px; }
  .map-hero .hero-note p, .map-hero .hero-note small { margin-top: 8px; }
  .map-hero .hero-note .price-examples { margin-top: 12px; }
  .map-hero .hero-note .button { justify-content: center; }
  .map-hero .hero-bottom { padding-block: 18px 24px; }
  .section { padding-block: 70px; }
  .intro-stats { grid-template-columns: 1fr; }
  .intro-stats > div { min-height: 0px; padding: 22px 0px; }
  .intro-stats > div + div { border-left: 0px; border-top: 1px solid var(--line); padding-left: 0px; }
  .intro-stats strong { font-size: 2.5rem; }
  .intro-stats > div > span { font-size: 0.8125rem; }
  .intro-stats p { font-size: 0.9375rem; }
  .brand-story .intro-stats { margin-top: 35px; }
  .subpage-hero { padding-top: 55px; padding-bottom: 45px; }
  .subpage-hero:not(.food-hero)::after, .blog-hero::after { width: 100px; height: 95px; right: 0px; top: 35px; opacity: 0.045; }
  .subpage-hero h1 { font-size: clamp(44px, 10.5vw, 65px); }
  .subpage-hero > p, .food-hero-copy > p { font-size: 1rem; }
  .section-label { font-size: 0.75rem; }
  .filters { gap: 8px; }
  .filter { font-size: 0.875rem; padding: 9px 12px; }
  .builder-grid .stops-grid, .stops-directory-grid { grid-template-columns: 1fr; }
  .stop-card { padding: 20px; }
  .day-controls { top: 72px; padding: 14px; }
  .day-controls > div:first-child { flex-wrap: wrap; }
  .day-controls > p { min-width: 0px; }
  .builder-panel { padding: 24px; }
  .guide-facts { padding-inline: 16px; }
  .guide-facts > div { padding: 18px 8px 18px 0px; }
  .guide-facts > div + div { padding-left: 12px; }
  .guide-facts span { font-size: 0.8125rem; }
  .last-call, .guide-cta, .blog-cta { padding-block: 75px; }
  .footer-top { display: block; }
  .footer-top p { margin-top: 25px; }
  .footer-bottom { font-size: 0.8125rem; padding-block: 22px 32px; }
  .footer-bottom > span { flex-basis: 100%; }
}
@media (max-width: 390px) {
  .container, .nav { width: calc(100% - 32px); }
  .map-hero .hero-note { width: calc(100% - 32px); }
  .brand-type strong, .brand-type small { font-size: 0.75rem; }
  .brand-icon { display: block; width: 33px; height: 30px; }
  .brand { gap: 7px; }
  .nav { gap: 8px; }
  .map-hero h1 { font-size: 43px; }
  .map-hero .hero-actions { flex-direction: column; align-items: flex-start; }
}
@media (prefers-reduced-motion: reduce) {
  .map-fold { animation: auto ease 0s 1 normal none running none; }
}
@media print {
  .brand-story, .last-call, .guide-cta, .blog-cta, .footer { --ink: #0a2342; --slate: #50657b; --line: #d2deeb; background: white; color: var(--ink); }
  .brand-story .intro-stats strong, .footer-brand .brand-type strong, .footer-brand .brand-type small { color: var(--ink); }
  .footer::before, .fold-ribbon { display: none; }
  .map-fold { animation: auto ease 0s 1 normal none running none; }
}
/* Keep pricing readable and the sticky planner clear of the brand header. */
.builder-panel { top: 100px; }
.brand-story .intro h2 em, .brand-story h2 em { color: #91c6ff; }
.brand-story .section-label span:first-child { color: #91c6ff; }
.button-blue:hover, .nav-cta:hover { background: #005fc0; }
.footer-brand .brand-icon { color: white; }
@media (max-width: 700px) { .builder-panel { top: auto; } }
