/* Travel Caribe · visual system refresh across public pages and customer portal */
:root {
  --tc-ink: #1d2e45;
  --tc-muted: #687b92;
  --tc-blue: #4779bc;
  --tc-blue-dark: #2e5688;
  --tc-blue-soft: #edf4ff;
  --tc-coral: #d99b69;
  --tc-line: #dfe7f1;
  --tc-paper: #fff;
  --tc-canvas: #f5f8fc;
  --brand-navy: #2e5688;
  --brand-deep: #1b3b65;
  --brand-ocean: #4779bc;
  --brand-sky: #91b8e9;
  --brand-sun: #e6ae76;
  --ink: #1d2e45;
  --muted: #687b92;
  --page: #f5f8fc;
  --line: #dfe7f1;
  --shadow: 0 22px 60px rgba(36, 70, 117, .12);
  --soft-shadow: 0 12px 34px rgba(36, 70, 117, .075);
}

html { scroll-behavior: smooth; scroll-padding-top: 100px; }
body { background: #f5f8fc; color: var(--tc-ink); font-family: Inter, "Segoe UI", ui-sans-serif, system-ui, sans-serif; }
button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { text-underline-offset: 3px; }
::selection { background: #dbe9ff; color: #1d3f70; }
:focus-visible { outline: 3px solid rgba(71, 121, 188, .34); outline-offset: 3px; }

/* One shared, light navigation for every public content page. */
.top-shell:not(.tc-reference-header) {
  background: rgba(255,255,255,.94);
  color: var(--tc-ink);
  border-bottom: 1px solid rgba(216,226,239,.9);
  box-shadow: 0 7px 24px rgba(39,72,117,.055);
  backdrop-filter: blur(18px);
}
.top-shell:not(.tc-reference-header).is-scrolled { box-shadow: 0 10px 28px rgba(39,72,117,.08); }
.top-shell:not(.tc-reference-header) .topbar {
  display: flex;
  width: min(1320px, calc(100% - 48px));
  min-height: 78px;
  gap: clamp(18px, 3vw, 42px);
}
.top-shell:not(.tc-reference-header) .brand { width: 174px; min-width: 146px; min-height: 60px; justify-content: flex-start; transform: none; }
.top-shell:not(.tc-reference-header) .brand-logo { width: 164px; max-width: 164px; max-height: 48px; object-fit: contain; }
.top-shell:not(.tc-reference-header) .top-actions { gap: 10px; margin-left: auto; }
.top-shell:not(.tc-reference-header) .cart-link,
.top-shell:not(.tc-reference-header) .round-button {
  border: 1px solid #dce6f1;
  border-radius: 999px;
  background: #fff;
  color: #456487;
  box-shadow: 0 2px 8px rgba(40,75,120,.04);
}
.top-shell:not(.tc-reference-header) .cart-link { min-height: 40px; padding: 0 15px; font-size: .8rem; font-weight: 700; }
.top-shell:not(.tc-reference-header) .cart-link:hover,
.top-shell:not(.tc-reference-header) .round-button:hover { border-color: #a9c5e8; background: #f5f9ff; color: var(--tc-blue-dark); }
.tc-global-navigation { display: flex; min-width: 0; align-items: center; gap: clamp(3px, .6vw, 10px); }
.tc-global-navigation a { display: inline-flex; min-height: 40px; align-items: center; padding: 0 12px; border-radius: 999px; color: #586e87; font-size: .78rem; font-weight: 690; white-space: nowrap; transition: background .18s ease, color .18s ease; }
.tc-global-navigation a:hover, .tc-global-navigation a[aria-current="page"] { background: #edf4ff; color: #315d99; }
.tc-global-navigation .tc-nav-primary { background: #edf4ff; color: #315d99; }

/* Expedia-style destination search and booking flow, with Travel Caribe branding. */
.tc-reference-header { background: rgba(255,255,255,.97); color: var(--tc-ink); border-bottom: 1px solid #e3eaf3; box-shadow: 0 4px 18px rgba(34,64,105,.045); backdrop-filter: blur(16px); }
.tc-reference-header .topbar { min-height: 78px; }
.tc-reference-header .tc-sales-link { color: #4d6685; }
.tc-reference-header .tc-sales-link:hover { color: var(--tc-blue-dark); }
.tc-reference-header .utility-link { color: #586e87; }
.tc-reference-header .utility-link:hover { color: var(--tc-blue-dark); }
.tc-reference-header .round-button { color: var(--tc-blue-dark); background: #f3f7fd; }
.tc-reference-header .cart-link { color: #47688e; border-color: #dce6f1; }
.offers-landing-hero .tc-video-hero { min-height: 665px; border-radius: 0 0 30px 30px; }
.offers-landing-hero .tc-video-hero-overlay { background: linear-gradient(90deg,rgba(16,39,70,.7),rgba(24,50,78,.25) 68%,rgba(24,50,78,.12)),linear-gradient(0deg,rgba(14,33,60,.42),rgba(14,33,60,.08) 55%); }
.offers-landing-hero .tc-video-hero-content { width: min(1320px, calc(100% - 48px)); min-height: 665px; align-items: stretch; padding: 135px 0 32px; }
.offers-landing-hero .tc-video-message { margin-bottom: 0; }
.offers-landing-hero .tc-video-message p { display: inline-flex; min-height: 27px; align-items: center; padding: 0 11px; border: 1px solid rgba(255,255,255,.4); border-radius: 999px; background: rgba(255,255,255,.13); color: #f9d7ae; font-size: .63rem; letter-spacing: .14em; backdrop-filter: blur(8px); }
.offers-landing-hero .tc-video-message h1 { max-width: 720px; font-size: clamp(2.8rem,5.1vw,4.8rem); font-weight: 800; letter-spacing: -.055em; line-height: 1; text-wrap: balance; }
.offers-landing-hero .tc-video-message > span { color: rgba(255,255,255,.9); font-size: 1rem; font-weight: 500; }
.offers-landing-hero .service-nav-shell { position: absolute; z-index: 6; top: 15px; left: 0; width: 100%; }
.offers-landing-hero .service-nav { width: min(1320px,calc(100% - 48px)); min-height: 62px; justify-content: flex-start; gap: 5px; padding: 7px; overflow-x: auto; border: 1px solid rgba(222,232,245,.92); border-radius: 16px; background: rgba(255,255,255,.97); box-shadow: 0 10px 26px rgba(16,37,68,.13); scrollbar-width: none; }
.offers-landing-hero .service-nav::-webkit-scrollbar { display: none; }
.offers-landing-hero .nav-pill { min-height: 46px; flex: 1 0 auto; justify-content: center; gap: 8px; padding: 0 14px; border: 0; border-radius: 11px; color: #566d87; font-size: .75rem; font-weight: 700; white-space: nowrap; }
.offers-landing-hero .nav-pill svg { width: 19px; height: 19px; color: #547fb8; stroke-width: 1.8; }
.offers-landing-hero .nav-pill:hover { background: #f4f8ff; color: #2e5688; }
.offers-landing-hero .nav-pill.is-active { background: #eaf2ff; color: #2e5688; box-shadow: inset 0 0 0 1px #d9e7fb; }
.offers-landing-hero .tc-video-search-slot .search-card { padding: 21px 23px 16px; border: 1px solid rgba(226,234,244,.92); border-radius: 20px; box-shadow: 0 18px 48px rgba(18,39,69,.2); }
.offers-landing-hero .search-card-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 14px; }
.offers-landing-hero .search-card-kicker { color: #4e77aa; font-size: .66rem; }
.offers-landing-hero .search-card h2 { color: #243e5d; font-size: 1.18rem; font-weight: 770; letter-spacing: -.025em; }
.offers-landing-hero .search-card p { color: #7a8ba0; font-size: .74rem; }
.offers-landing-hero .search-card-assurance { border-color: #d7e6f6; border-radius: 999px; background: #f4f8fd; color: #426b9e; }
.offers-landing-hero .tc-video-search-slot .search-grid { grid-template-columns: minmax(215px,1.35fr) repeat(3,minmax(145px,1fr)) minmax(130px,.84fr); gap: 9px; }
.offers-landing-hero .tc-video-search-slot .search-field { border: 1px solid #dce5ef; border-radius: 12px; background: #fff; }
.offers-landing-hero .tc-video-search-slot .search-field:focus-within { border-color: #8bb1e0; box-shadow: 0 0 0 3px rgba(84,132,195,.12); }
.offers-landing-hero .tc-video-search-slot .search-field span { color: #71849c; }
.offers-landing-hero .tc-video-search-slot .search-field input,
.offers-landing-hero .tc-video-search-slot .search-field select { color: #283f5b; }
.offers-landing-hero .tc-video-search-slot .search-button { border-radius: 12px; background: #4677b7; box-shadow: 0 6px 14px rgba(58,103,165,.22); }
.offers-landing-hero .tc-video-search-slot .search-button:hover { background: #315f9e; transform: translateY(-1px); }
.offers-landing-hero .search-card-foot { color: #71839a; }
.offers-landing-hero .search-card-foot svg { color: #5682b9; }
.search-results-page { background: linear-gradient(180deg,#f7f9fd 0%,#f2f6fb 100%); }
.results-progress i { background: #e6effc; color: #4779bc; }
.results-progress > .is-current { color: #315d98; }
.results-heading-copy h2 { color: #203955; }
.results-toolbar, .search-result-card, .results-quote-card { border-color: #e0e8f2; box-shadow: 0 8px 24px rgba(33,65,108,.045); }
.search-result-card { border-radius: 18px; }
.search-result-price { background: #fafcff; }
.search-result-price button { background: #4779bc; }
.search-result-price button:hover { background: #315f9e; }
.results-quote-icon { background: #eaf2ff; color: #4779bc; }
.tc-reference-home .section-title h2, .tc-reference-home .tc-inspiration-heading h2, .tc-reference-home .gyg-experience-heading h2 { color: #233a56; letter-spacing: -.035em; }
.tc-reference-home .offers-section, .tc-reference-home .product-section, .tc-reference-home .social-section, .tc-inspiration-destinations, .caribe-inspiration-section, .travel-ready-section { padding-top: clamp(46px,6vw,78px); padding-bottom: clamp(46px,6vw,78px); }
.tc-reference-home .offer-tabs { gap: 8px; }
.tc-reference-home .offer-tab { border-radius: 999px; border-color: #dce6f1; background: #fff; color: #627892; }
.tc-reference-home .offer-tab.is-active { background: #eaf2ff; color: #315d98; }
.tc-reference-home .offers-panel, .tc-reference-home .travel-ready-card, .tc-reference-home .travel-ready-widget, .tc-reference-home .gyg-experience-card { border-color: #e0e8f2; border-radius: 20px; box-shadow: 0 9px 28px rgba(34,65,105,.055); }
.tc-reference-home .tc-destination-card { border-radius: 18px; box-shadow: 0 10px 26px rgba(28,50,74,.12); }
.tc-reference-home .tc-destination-card:hover { transform: translateY(-4px); }
.tc-reference-home .travel-ready-tab-icon, .tc-reference-home .travel-ready-summary-icon { background: #edf4ff; color: #4779bc; }

/* Clear subpage hierarchy: centered workspaces, crisp cards, consistent forms. */
.page-container { width: min(1280px, calc(100% - 48px)); }
.legal-main { min-height: calc(100vh - 180px); padding: clamp(28px,4vw,52px) 0 76px; background: linear-gradient(180deg,#f5f8fc,#f8fafd); }
.legal-layout { display: grid; grid-template-columns: 245px minmax(0,1fr); align-items: start; gap: 24px; }
.legal-nav { position: sticky; top: 102px; display: grid; gap: 6px; padding: 18px; border: 1px solid #e1e9f2; border-radius: 18px; background: rgba(255,255,255,.92); box-shadow: 0 8px 28px rgba(36,67,105,.055); }
.legal-nav h2 { margin: 2px 8px 8px; color: #2c4f7b; font-size: .74rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.legal-nav a { padding: 11px 12px; border-radius: 10px; color: #647790; font-size: .82rem; font-weight: 620; line-height: 1.3; }
.legal-nav a:hover, .legal-nav a.is-active { background: #edf4ff; color: #315f9e; }
.legal-card { min-width: 0; padding: clamp(24px,4vw,48px); border: 1px solid #e0e8f2; border-radius: 22px; background: #fff; box-shadow: 0 12px 40px rgba(35,66,105,.06); }
.legal-card h1 { margin-top: 0; color: #213b59; font-size: clamp(1.8rem,3.4vw,2.55rem); letter-spacing: -.045em; line-height: 1.08; text-wrap: balance; }
.legal-card h2 { margin-top: 30px; color: #31567f; font-size: 1.12rem; letter-spacing: -.02em; }
.legal-card h3 { color: #3c5776; font-size: .98rem; }
.legal-card p, .legal-card li { color: #64778e; font-size: .91rem; line-height: 1.75; }
.legal-card strong { color: #334c69; }
.help-main { padding: 38px 0 74px; background: linear-gradient(180deg,#f3f7fc 0%,#f8fafd 100%); }
.help-hero { border: 1px solid #dce8f6; border-radius: 24px; background: linear-gradient(115deg,#eaf2ff 0%,#f7faff 58%,#eff6ff 100%); box-shadow: 0 12px 32px rgba(49,91,146,.065); }
.help-hero .overline { color: #4779bc; }
.help-hero h1 { color: #25436b; font-size: clamp(2rem,4vw,3.15rem); letter-spacing: -.05em; }
.help-hero h1 + p { color: #667c96; }
.help-account-status { border-color: #dbe6f3; background: rgba(255,255,255,.76); box-shadow: 0 4px 14px rgba(41,75,119,.04); }
.help-account-status small { color: #788aa0; }
.help-account-status strong { color: #29476b; }
.help-action-card, .help-action-tile, .help-section, .help-panel, .help-card, .help-request-card { border-color: #e1e9f2; border-radius: 18px; box-shadow: 0 8px 24px rgba(39,70,111,.05); }
.help-action-card:hover, .help-action-tile:hover { border-color: #bed2ed; transform: translateY(-2px); }
.help-action-card > span, .help-action-tile > span, .help-section-icon { border-radius: 14px; background: #edf4ff; color: #4779bc; }
.help-section-head h2, .help-section h2 { color: #29476d; }

.auth-main { padding: 42px 0 78px; background: radial-gradient(ellipse at 18% 12%,#e7f0ff 0,transparent 34%),#f5f8fc; }
.auth-layout { gap: clamp(32px,6vw,84px); align-items: center; }
.auth-copy .overline, .overline { color: #4779bc; font-weight: 800; letter-spacing: .12em; }
.auth-copy h1 { color: #223d5d; font-size: clamp(2rem,4vw,3rem); letter-spacing: -.05em; line-height: 1.08; }
.auth-card, .auth-form, .auth-panel, .login-card, .register-card { border: 1px solid #e0e8f2; border-radius: 22px; background: #fff; box-shadow: 0 18px 48px rgba(38,69,109,.09); }

.accessories-page { background: #f5f8fc; }
.accessories-header, .inspiration-site-header { position: sticky; z-index: 60; top: 0; border-bottom: 1px solid #e2eaf3; background: rgba(255,255,255,.95); box-shadow: 0 5px 20px rgba(34,64,104,.05); backdrop-filter: blur(16px); }
.accessories-header-inner, .inspiration-header-inner { min-height: 78px; }
.accessories-header nav, .inspiration-site-header nav { gap: 6px; }
.accessories-header nav a, .inspiration-site-header nav a { padding: 10px 13px; border-radius: 999px; color: #5c7088; font-size: .8rem; font-weight: 700; }
.accessories-header nav a:hover, .accessories-header nav a.is-active, .inspiration-site-header nav a:hover, .inspiration-site-header nav a.is-active { background: #edf4ff; color: #315f9e; }
.accessories-hero, .inspiration-page-hero { position: relative; overflow: hidden; background: linear-gradient(118deg,#315b94,#4f7db7 62%,#7298c8); color: #fff; }
.accessories-hero::after, .inspiration-page-hero::after { position: absolute; right: -100px; bottom: -230px; width: 440px; height: 440px; border: 1px solid rgba(255,255,255,.18); border-radius: 50%; box-shadow: 0 0 0 38px rgba(255,255,255,.045),0 0 0 80px rgba(255,255,255,.035); content: ""; pointer-events: none; }
.accessories-hero h1, .inspiration-page-hero h1 { max-width: 760px; font-size: clamp(2.4rem,5.2vw,4rem); letter-spacing: -.055em; line-height: 1.02; text-wrap: balance; }
.accessories-hero p, .inspiration-page-hero p { max-width: 690px; color: rgba(255,255,255,.86); }
.accessories-catalog, .inspiration-page-content { background: #f5f8fc; }
.accessories-catalog-head, .inspiration-widget-head { align-items: end; }
.accessories-card, .accessories-product-card, .inspiration-card, .inspiration-widget, .article-card { border: 1px solid #e1e9f2; border-radius: 18px; background: #fff; box-shadow: 0 8px 25px rgba(36,66,105,.055); }
.accessories-card:hover, .accessories-product-card:hover { border-color: #cad9eb; box-shadow: 0 15px 34px rgba(36,66,105,.1); transform: translateY(-3px); }
.inspiration-page-content .inspiration-widget-head h2 { color: #263f5c; font-size: clamp(1.4rem,3vw,2rem); letter-spacing: -.04em; }

/* A single color and type system extends through signup and partner workflows. */
.affiliate-page, .accommodation-onboarding { min-height: 100vh; background: radial-gradient(ellipse at 8% 6%,#e3eeff 0,transparent 32%),#f5f8fc; color: #203754; }
.affiliate-page .affiliate-register-shell { gap: clamp(26px,5vw,72px); }
.affiliate-brand img { border-radius: 12px; }
.affiliate-kicker, .accommodation-intro > p:first-child, .form-heading > p { color: #4779bc; letter-spacing: .13em; }
.affiliate-register-intro h1, .accommodation-intro h1 { color: #203c5e; font-size: clamp(2.1rem,4.7vw,3.65rem); letter-spacing: -.055em; line-height: 1.03; text-wrap: balance; }
.affiliate-register-card, .affiliate-login-card, .affiliate-result-card, .accommodation-form { border: 1px solid #e0e8f2; border-radius: 22px; background: rgba(255,255,255,.96); box-shadow: 0 18px 52px rgba(36,67,108,.09); }
.affiliate-register-card input:not([type=checkbox]), .affiliate-register-card select, .accommodation-form input, .accommodation-form select, .accommodation-form textarea { min-height: 46px; border-color: #dce5ef; border-radius: 11px; background: #fbfcfe; }
.affiliate-main-button, .accommodation-form button[type=submit] { border-radius: 12px; background: #4779bc; box-shadow: 0 7px 18px rgba(53,99,159,.18); }
.affiliate-main-button:hover, .accommodation-form button[type=submit]:hover { background: #315f9e; }
.accommodation-header { border-bottom: 1px solid #e2eaf3; background: rgba(255,255,255,.94); }
.accommodation-header img { width: 172px; }
.accommodation-intro { padding: 12px 8px; }
.accommodation-form fieldset { border-color: #e0e8f2; border-radius: 15px; background: #fff; }
.accommodation-form legend { color: #35597f; }

.payment-page { min-height: 100vh; background: #f3f7fc; }
.payment-header { border-bottom: 1px solid #e1e8f1; background: rgba(255,255,255,.96); box-shadow: 0 5px 20px rgba(32,65,106,.05); }
.payment-header-inner { min-height: 78px; }
.payment-header .payment-brand { width: 172px; }
.payment-header-security { color: #547499; }
.payment-main { padding-top: clamp(30px,5vw,62px); padding-bottom: 80px; }
.payment-intro h1 { color: #213b5b; font-size: clamp(2rem,4vw,3rem); letter-spacing: -.05em; }
.checkout-payment-surface, .checkout-summary, .payment-status-card, .payment-result-card { border-color: #e0e8f2; border-radius: 20px; box-shadow: 0 14px 40px rgba(35,66,105,.065); }
.payment-method { border-color: #dfe7f1; border-radius: 14px; }
.payment-method[aria-pressed=true], .payment-method:focus-visible { border-color: #8eb1dd; background: #f2f7ff; }
.payment-page button[type=submit], .payment-page .payment-primary { border-radius: 12px; background: #4779bc; }
.payment-page button[type=submit]:hover, .payment-page .payment-primary:hover { background: #315f9e; }
.visa-flow-body { background: #f5f8fc; }
.visa-flow-header { border-color: #e0e8f2; box-shadow: 0 6px 22px rgba(37,68,108,.06); }
.visa-flow-main { padding-bottom: 70px; }
.visa-flow-page-heading h1 { color: #213b5b; font-size: clamp(2rem,4vw,3rem); letter-spacing: -.05em; }
.visa-flow-page-heading > p { color: #4779bc; }
.visa-card, .visa-flow-card, .visa-form-card, .visa-summary-card, .visa-protection-card, .visa-authority-note { border-color: #e0e8f2; border-radius: 18px; box-shadow: 0 9px 28px rgba(36,67,105,.055); }
.visa-flow-body input, .visa-flow-body select, .visa-flow-body textarea { border-color: #dce5ef; border-radius: 10px; }
.visa-flow-primary { border-radius: 11px; background: #4779bc; }

/* Customer account: calmer blue palette, unchanged authentication and data. */
.client-portal-v2 {
  --portal-navy: #315c95;
  --portal-navy-deep: #213f68;
  --portal-blue: #5685c1;
  --portal-blue-soft: #edf4ff;
  --portal-cyan: #78aee1;
  --portal-coral: #dda475;
  --portal-ink: #233a56;
  --portal-muted: #6c8098;
  --portal-line: #e0e8f2;
  --portal-canvas: #f5f8fc;
  --portal-shadow: 0 18px 45px rgba(34,67,108,.075);
  background: var(--portal-canvas);
}
.client-portal-v2 .portal-topbar { box-shadow: 0 5px 20px rgba(35,66,105,.045); }
.client-portal-v2 .portal-sidebar { border-color: #e0e8f2; background: #fff; box-shadow: 0 8px 26px rgba(35,66,105,.04); }
.client-portal-v2 .portal-nav-link:hover, .client-portal-v2 .portal-nav-link.is-active { background: #edf4ff; color: #315f9e; }
.client-portal-v2 .portal-hero { background: linear-gradient(118deg,#315f9c 0%,#487bb7 54%,#7197c7 100%); }
.client-portal-v2 .portal-metric-card, .client-portal-v2 .portal-section-card, .client-portal-v2 .portal-form-card { border-color: #e0e8f2; border-radius: 18px; box-shadow: 0 9px 28px rgba(36,67,105,.05); }
.client-portal-v2 .portal-action-primary, .client-portal-v2 .portal-form-card button[type=submit] { background: #4779bc; }
.client-portal-v2 .portal-action-primary:hover, .client-portal-v2 .portal-form-card button[type=submit]:hover { background: #315f9e; }

/* Lucide line icons inherit one restrained color from their control. */
svg.lucide { fill: none; stroke: currentColor; stroke-width: 1.85; stroke-linecap: round; stroke-linejoin: round; }
.site-footer-v2 { background: linear-gradient(145deg,#244875 0%,#1f3f68 62%,#1b385f 100%); }

@media (max-width: 1100px) {
  .offers-landing-hero .tc-video-hero, .offers-landing-hero .tc-video-hero-content { min-height: 720px; }
  .offers-landing-hero .tc-video-search-slot .search-grid,
  .offers-landing-hero .tc-video-search-slot .search-grid[data-search-fields] { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .offers-landing-hero .tc-video-search-slot .search-button { grid-column: auto; }
  .top-shell:not(.tc-reference-header) .tc-global-navigation { gap: 0; }
  .top-shell:not(.tc-reference-header) .tc-global-navigation a { padding-inline: 9px; font-size: .73rem; }
}
@media (max-width: 850px) {
  .top-shell:not(.tc-reference-header) .topbar { width: calc(100% - 32px); min-height: 70px; gap: 10px; }
  .top-shell:not(.tc-reference-header) .brand { width: 138px; min-width: 120px; }
  .top-shell:not(.tc-reference-header) .brand-logo { width: 136px; }
  .tc-global-navigation { display: none; }
  .legal-layout { grid-template-columns: 205px minmax(0,1fr); gap: 16px; }
  .legal-nav { padding: 12px; }
  .offers-landing-hero .tc-video-hero, .offers-landing-hero .tc-video-hero-content { min-height: 740px; }
  .offers-landing-hero .tc-video-hero-content { padding-top: 125px; }
}
@media (max-width: 680px) {
  html { scroll-padding-top: 80px; }
  .page-container { width: calc(100% - 30px); }
  .top-shell:not(.tc-reference-header) .topbar { width: calc(100% - 28px); min-height: 66px; }
  .top-shell:not(.tc-reference-header) .brand { width: 123px; min-width: 112px; }
  .top-shell:not(.tc-reference-header) .brand-logo { width: 120px; max-height: 42px; }
  .top-shell:not(.tc-reference-header) .cart-link { min-height: 36px; padding: 0 10px; font-size: .69rem; }
  .tc-reference-header .topbar { min-height: 66px; }
  .tc-reference-header .brand { flex-basis: 132px; width: 132px; min-height: 55px; transform: none; }
  .tc-reference-header .brand-logo { width: 132px; max-width: 132px; height: 48px; }
  .offers-landing-hero .tc-video-hero { border-radius: 0 0 22px 22px; }
  .offers-landing-hero .tc-video-hero-content { width: calc(100% - 24px); gap: 16px; padding: 96px 0 16px; }
  .offers-landing-hero .service-nav-shell { top: 10px; }
  .offers-landing-hero .service-nav { width: calc(100% - 24px); min-height: 52px; gap: 2px; padding: 4px; border-radius: 13px; }
  .offers-landing-hero .nav-pill { min-height: 42px; flex: 0 0 auto; gap: 6px; padding-inline: 10px; font-size: .66rem; }
  .offers-landing-hero .tc-video-message h1 { max-width: 520px; font-size: clamp(2.25rem,9.2vw,3.15rem); }
  .offers-landing-hero .tc-video-message > span { max-width: 430px; font-size: .84rem; line-height: 1.45; }
  .offers-landing-hero .tc-video-search-slot .search-card { padding: 14px; border-radius: 16px; }
  .offers-landing-hero .search-card-head { margin-bottom: 10px; }
  .offers-landing-hero .search-card-assurance { display: none; }
  .offers-landing-hero .tc-video-search-slot .search-grid,
  .offers-landing-hero .tc-video-search-slot .search-grid[data-search-fields] { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 7px; }
  .offers-landing-hero .tc-video-search-slot .search-field,
  .offers-landing-hero .tc-video-search-slot .search-field.wide,
  .offers-landing-hero .tc-video-search-slot .search-field.split { min-height: 54px; padding: 7px 9px; border-radius: 10px; }
  .offers-landing-hero .tc-video-search-slot .search-button { min-height: 47px; grid-column: 1 / -1; }
  .legal-main { padding: 22px 0 48px; }
  .legal-layout { grid-template-columns: 1fr; }
  .legal-nav { position: static; display: flex; gap: 5px; overflow-x: auto; padding: 9px; scrollbar-width: thin; }
  .legal-nav h2 { display: none; }
  .legal-nav a { flex: 0 0 auto; padding: 9px 11px; font-size: .72rem; white-space: nowrap; }
  .legal-card { padding: 22px 18px; border-radius: 17px; }
  .legal-card p, .legal-card li { font-size: .86rem; }
  .help-main { padding: 24px 0 50px; }
  .auth-main { padding: 26px 0 54px; }
  .accessories-header-inner, .inspiration-header-inner { min-height: 65px; }
  .accessories-header nav, .inspiration-site-header nav { max-width: 100%; overflow-x: auto; }
  .accessories-header nav a, .inspiration-site-header nav a { padding: 8px 10px; font-size: .69rem; white-space: nowrap; }
  .accessories-hero h1, .inspiration-page-hero h1, .affiliate-register-intro h1, .accommodation-intro h1 { font-size: clamp(2rem,9vw,2.8rem); }
  .accessories-catalog-head, .inspiration-widget-head { align-items: flex-start; flex-direction: column; gap: 12px; }
  .payment-main { padding: 26px 0 52px; }
  .payment-header-inner { min-height: 66px; }
  .payment-header .payment-brand { width: 130px; }
  .payment-header .brand-logo { width: 128px; }
  .visa-flow-header-inner, .visa-flow-shell { width: calc(100% - 28px); }
  .visa-flow-header-inner { min-height: 66px; }
  .visa-flow-brand img { width: 112px; }
  .visa-flow-brand span { display: none; }
  .visa-header-security { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
