/*
 * Cinematic Camp — unified sitewide visual layer
 *
 * One continuous dark editorial canvas inspired by the approved reference.
 * This is the only deployed site theme. Page-family styles provide component
 * geometry; this file owns the complete visual language.
 */

:root {
  --camp-night: oklch(13.5% .021 184);
  --camp-night-deep: oklch(10.5% .018 184);
  --camp-panel: oklch(17.5% .022 184);
  --camp-panel-soft: oklch(20.5% .021 184);
  --camp-ink: oklch(96% .018 84);
  --camp-copy: oklch(82% .018 174);
  --camp-muted: oklch(68% .018 174);
  --camp-line: oklch(80% .025 82 / .2);
  --camp-line-strong: oklch(88% .025 82 / .34);
  --camp-accent: oklch(63% .145 42);
  --camp-accent-soft: oklch(75% .095 52);
  --camp-paper: oklch(96% .018 84);
  --camp-radius: .72rem;
  --camp-max: 86rem;
  --camp-gutter: clamp(1.15rem, 4vw, 4.25rem);
  color-scheme: dark;
}

/* Localized discount directory -------------------------------------------------
   The old hub stacked ten full sales pages. The directory keeps every code one
   tap away while preserving a clear reading order on phones and desktops. */
.discount-directory-page {
    --directory-border: color-mix(in srgb, var(--color-ink, #17221d) 18%, transparent);
    --directory-surface: #fffdf8;
    --directory-accent: #d55a37;
}

.discount-directory-hero { margin-bottom: clamp(3rem, 7vw, 6.5rem); }
.discount-directory-hero .discounts-hero-content { max-width: 880px; }
.discount-hub-disclosure {
    max-width: 72ch;
    margin-top: 1.25rem;
    color: rgba(255, 255, 255, .78);
    font-size: .95rem;
}
.discount-directory-section {
    width: min(1180px, calc(100% - 2rem));
    margin: 0 auto clamp(4rem, 8vw, 7rem);
}
.discount-directory-heading {
    display: grid;
    grid-template-columns: minmax(0, 1.5fr) minmax(280px, .75fr);
    column-gap: clamp(2rem, 6vw, 7rem);
    align-items: end;
    padding-bottom: 1.5rem;
    border-bottom: 1px solid var(--directory-border);
}
.discount-directory-heading .eyebrow {
    grid-column: 1 / -1;
    margin-bottom: .75rem;
}
.discount-directory-heading h2 {
    margin: 0;
    font-size: clamp(2.35rem, 6vw, 5.4rem);
    line-height: .94;
    letter-spacing: -.055em;
}
.discount-directory-heading p {
    margin: 0;
    color: #435049;
    font-size: 1.05rem;
    line-height: 1.65;
}
.discount-directory-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    margin-top: 1.25rem;
}
.discount-directory-grid-featured { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.discount-directory-card {
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--directory-border);
    border-radius: 1.35rem;
    background: var(--directory-surface);
    box-shadow: 0 18px 50px rgba(20, 31, 25, .07);
}
.discount-directory-card > img {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    object-fit: cover;
    background: #e7e8e2;
}
.discount-directory-card-body {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    padding: clamp(1.2rem, 2.4vw, 1.8rem);
}
.discount-directory-card:not(.compact) .discount-directory-card-body { min-height: 365px; }
.discount-card-topline {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: center;
    margin-bottom: 1.5rem;
    color: #536059;
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .11em;
    text-transform: uppercase;
}
.discount-card-topline strong { color: #a93f25; }
.discount-directory-card h3 {
    margin: 0 0 .65rem;
    font-size: clamp(1.75rem, 3vw, 2.45rem);
    letter-spacing: -.035em;
}
.discount-directory-card p {
    margin: 0;
    color: #3e4a44;
    line-height: 1.6;
}
.discount-directory-code {
    display: flex;
    align-items: stretch;
    margin: 1.4rem 0 1rem;
    border: 1px solid var(--directory-border);
    border-radius: .8rem;
    overflow: hidden;
    background: #f4f1e9;
}
.discount-directory-code code {
    display: flex;
    flex: 1;
    align-items: center;
    min-width: 0;
    padding: .85rem 1rem;
    color: #17221d;
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
    font-size: 1rem;
    font-weight: 800;
    letter-spacing: .045em;
    overflow-wrap: anywhere;
}
.discount-directory-code button {
    flex: 0 0 auto;
    min-height: 48px;
    padding: .75rem 1rem;
    border: 0;
    border-left: 1px solid var(--directory-border);
    background: #17221d;
    color: #fffdf8;
    cursor: pointer;
    font: inherit;
    font-size: .88rem;
    font-weight: 700;
}
.discount-directory-code button:hover,
.discount-directory-code button:focus-visible { background: var(--directory-accent); }
.discount-directory-card .discount-check-date {
    margin-bottom: 1rem;
    color: #68736d;
    font-size: .88rem;
}
.discount-directory-card-body > a {
    width: fit-content;
    margin-top: auto;
    padding-top: .9rem;
    border-bottom: 1px solid currentColor;
    color: #17221d;
    font-weight: 750;
    text-decoration: none;
}
.discount-method-note {
    width: min(920px, calc(100% - 2rem));
    margin: 0 auto clamp(4rem, 8vw, 7rem);
    padding: clamp(1.5rem, 5vw, 3.5rem);
    border-left: 4px solid var(--directory-accent);
    background: #ede9df;
}
.discount-method-note h2 {
    margin-top: 0;
    font-size: clamp(1.8rem, 4vw, 3rem);
}
.discount-method-note p {
    max-width: 72ch;
    color: #37443d;
    font-size: 1.05rem;
    line-height: 1.7;
}
@media (max-width: 920px) {
    .discount-directory-grid-featured { grid-template-columns: 1fr; }
    .discount-directory-grid-featured .discount-directory-card {
        display: grid;
        grid-template-columns: minmax(220px, .8fr) minmax(0, 1fr);
    }
    .discount-directory-grid-featured .discount-directory-card > img {
        height: 100%;
        aspect-ratio: auto;
    }
}
@media (max-width: 700px) {
    .discount-directory-heading,
    .discount-directory-grid,
    .discount-directory-grid-featured,
    .discount-directory-grid-featured .discount-directory-card { grid-template-columns: 1fr; }
    .discount-directory-heading p { margin-top: 1rem; }
    .discount-directory-card:not(.compact) .discount-directory-card-body { min-height: 0; }
    .discount-directory-grid-featured .discount-directory-card > img {
        height: auto;
        aspect-ratio: 16 / 10;
    }
    .discount-directory-code { flex-wrap: wrap; }
    .discount-directory-code button {
        flex-basis: 100%;
        border-left: 0;
        border-top: 1px solid var(--directory-border);
    }
}

html {
  background: var(--camp-night-deep);
  scroll-behavior: smooth;
}

body[data-design="cinematic-camp-v1"] {
  margin: 0;
  color: var(--camp-copy) !important;
  background: var(--camp-night) !important;
  font-family: "Instrument Sans", "Helvetica Neue", sans-serif !important;
  font-size: 1rem;
  line-height: 1.68;
  text-rendering: optimizeLegibility;
}

body[data-design="cinematic-camp-v1"] * {
  box-sizing: border-box;
}

body[data-design="cinematic-camp-v1"] ::selection {
  color: var(--camp-night-deep);
  background: var(--camp-accent-soft);
}

body[data-design="cinematic-camp-v1"] :focus-visible {
  outline: 2px solid var(--camp-accent-soft) !important;
  outline-offset: 4px;
}

body[data-design="cinematic-camp-v1"] :where(h1, h2, h3, h4, h5, h6) {
  color: var(--camp-ink) !important;
  font-family: "Instrument Sans", "Helvetica Neue", sans-serif !important;
  font-weight: 600 !important;
  letter-spacing: -.035em;
  text-wrap: balance;
}

body[data-design="cinematic-camp-v1"] h1 {
  font-size: clamp(3.1rem, 6.4vw, 6.4rem) !important;
  line-height: .94 !important;
}

body[data-design="cinematic-camp-v1"] h2 {
  font-size: clamp(2.2rem, 4.2vw, 4.35rem) !important;
  line-height: 1 !important;
}

body[data-design="cinematic-camp-v1"] h3 {
  font-size: clamp(1.3rem, 2vw, 1.75rem) !important;
  line-height: 1.16 !important;
}

body[data-design="cinematic-camp-v1"] h4 {
  font-size: 1.08rem !important;
  line-height: 1.3 !important;
}

body[data-design="cinematic-camp-v1"] :where(p, li, dd, figcaption) {
  color: var(--camp-copy);
}

body[data-design="cinematic-camp-v1"] :where(strong) {
  color: var(--camp-ink) !important;
}

body[data-design="cinematic-camp-v1"] :where(p, li, dt, dd, small, figcaption, label, summary, button, input, select, textarea) {
  font-family: "Instrument Sans", "Helvetica Neue", sans-serif !important;
}

body[data-design="cinematic-camp-v1"] :where(a) {
  color: var(--camp-ink);
  text-underline-offset: .22em;
  text-decoration-thickness: 1px;
}

body[data-design="cinematic-camp-v1"] :where(a:hover) {
  color: var(--camp-accent-soft);
}

body[data-design="cinematic-camp-v1"] :where(hr) {
  height: 1px;
  border: 0;
  background: var(--camp-line);
}

body[data-design="cinematic-camp-v1"] :where(main, .about-page, .discount-main, .brand-comparison-page, .guide-content-wrapper, .faq-main, .rb-layout) {
  color: var(--camp-copy) !important;
  background: var(--camp-night) !important;
}

body[data-design="cinematic-camp-v1"] main p {
  max-inline-size: 62ch;
}

body[data-design="cinematic-camp-v1"] main :where(ul, ol):not([class*="grid"]):not([class*="nav"]) {
  max-inline-size: 58ch;
}

/* -------------------------------------------------------------------------- */
/* Shared navigation and footer                                                */
/* -------------------------------------------------------------------------- */

body[data-design="cinematic-camp-v1"] :where(.navbar, .review-navbar) {
  color: var(--camp-ink) !important;
  background: color-mix(in oklch, var(--camp-night-deep) 94%, transparent) !important;
  border-color: var(--camp-line) !important;
  box-shadow: none !important;
}

body[data-design="cinematic-camp-v1"] :where(.navbar .logo, .navbar .nav-links a, .review-navbar a, .lang-current) {
  color: var(--camp-ink) !important;
}

body[data-design="cinematic-camp-v1"] .navbar .nav-links a:not(.nav-find-cta) {
  background: transparent !important;
  text-decoration: none !important;
}

body[data-design="cinematic-camp-v1"] :where(.nav-find-cta, .navbar .nav-find-cta) {
  min-height: 2.8rem;
  padding: .7rem 1rem !important;
  color: var(--camp-night-deep) !important;
  background: var(--camp-paper) !important;
  border: 1px solid var(--camp-paper) !important;
  border-radius: var(--camp-radius) !important;
  box-shadow: none !important;
}

body[data-design="cinematic-camp-v1"] :where(.lang-switcher, .lang-current, .lang-menu) {
  color: var(--camp-ink) !important;
  background: var(--camp-panel) !important;
  border-color: var(--camp-line-strong) !important;
  box-shadow: none !important;
}

body[data-design="cinematic-camp-v1"] :where(.menu-toggle, .menu-toggle span, .menu-overlay) {
  border-color: var(--camp-line-strong) !important;
}

body[data-design="cinematic-camp-v1"] .menu-toggle span {
  background: var(--camp-ink) !important;
}

body[data-design="cinematic-camp-v1"] :where(footer, .footer, .site-footer) {
  color: var(--camp-muted) !important;
  background: var(--camp-night-deep) !important;
  border-color: var(--camp-line) !important;
}

body[data-design="cinematic-camp-v1"] :where(footer, .footer, .site-footer) :where(h2, h3, h4, a, .footer-logo) {
  color: var(--camp-ink) !important;
}

body[data-design="cinematic-camp-v1"] .skip-link {
  color: var(--camp-night-deep) !important;
  background: var(--camp-paper) !important;
  position: fixed !important;
  top: max(.75rem, env(safe-area-inset-top)) !important;
  left: max(.75rem, env(safe-area-inset-left)) !important;
  z-index: 9999 !important;
  padding: .7rem 1rem !important;
  transform: translateY(calc(-100% - 2rem)) !important;
  text-decoration: none !important;
}

body[data-design="cinematic-camp-v1"] .skip-link:focus {
  transform: translateY(0) !important;
}

/* -------------------------------------------------------------------------- */
/* Shared editorial primitives                                                 */
/* -------------------------------------------------------------------------- */

body[data-design="cinematic-camp-v1"] :where(
  .breadcrumb,
  .brand-comparison-breadcrumb,
  .review-breadcrumb,
  .faq-breadcrumb
) {
  color: var(--camp-muted) !important;
  background: transparent !important;
  border-color: var(--camp-line) !important;
}

body[data-design="cinematic-camp-v1"] :where(
  .breadcrumb,
  .brand-comparison-breadcrumb,
  .review-breadcrumb,
  .faq-breadcrumb
) :where(a, span) {
  color: inherit !important;
}

body[data-design="cinematic-camp-v1"] :where(
  .section-kicker,
  .hero-eyebrow,
  .guide-eyebrow,
  .tool-kicker,
  .hub-hero-kicker,
  .faq-hero-kicker,
  .review-hero-kicker,
  .rb-eyebrow,
  .brand-comparison-kicker,
  .discount-hero-kicker,
  [class*="-label"]
) {
  color: var(--camp-accent-soft) !important;
  letter-spacing: .15em;
  text-transform: uppercase;
}

body[data-design="cinematic-camp-v1"] :where(
  .hero-content > p,
  .reviews-hub-hero-copy > p,
  .guides-hub-hero-copy > p,
  .vs-hub-hero-copy > p,
  .discounts-hero-copy > p,
  .discounts-hero p,
  .guide-hero-content > p,
  .brand-comparison-hero-copy > p,
  .comparison-hero-copy > p,
  .discount-hero-copy > p,
  .tool-hero-copy > p,
  .faq-hero-copy > p,
  .paa-hero-copy > p,
  .article-hero-copy > p,
  .rb-hero-copy > p,
  .guide-tagline
) {
  color: var(--camp-copy) !important;
  opacity: 1 !important;
}

body[data-design="cinematic-camp-v1"] :where(
  .guide-meta,
  .brand-comparison-meta,
  .discount-meta,
  .discount-hero-meta,
  .tool-hero-notes,
  .faq-meta,
  .article-meta,
  .rb-meta,
  .review-byline
) :where(p, span, a),
body[data-design="cinematic-camp-v1"] :where(
  .guide-meta,
  .brand-comparison-meta,
  .discount-meta,
  .discount-hero-meta,
  .tool-hero-notes,
  .faq-meta,
  .article-meta,
  .rb-meta,
  .review-byline
) {
  color: var(--camp-muted) !important;
  opacity: 1 !important;
}

body[data-design="cinematic-camp-v1"] :where(
  [data-folio]::before,
  .section-number,
  .folio-number
) {
  color: var(--camp-accent-soft) !important;
  border-color: var(--camp-line) !important;
  background: var(--camp-night) !important;
}

body[data-design="cinematic-camp-v1"] :where(
  .cta-button,
  .btn-primary,
  .btn-cta,
  .guide-hero-primary,
  .brand-comparison-hero-primary,
  .rb-primary-cta,
  .tool-hero-start,
  .faq-cta-primary,
  .review-offer-primary,
  .table-buy-btn,
  .discount-cta-btn.primary
  , .hub-hero-primary
  , .review-hero-cta
) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.9rem;
  padding: .75rem 1rem;
  color: var(--camp-night-deep) !important;
  background: var(--camp-paper) !important;
  border: 1px solid var(--camp-paper) !important;
  border-radius: var(--camp-radius) !important;
  box-shadow: none !important;
  font-family: inherit !important;
  font-weight: 650 !important;
  text-decoration: none !important;
}

body[data-design="cinematic-camp-v1"] :where(
  .cta-button.secondary,
  .btn-secondary,
  .guide-hero-secondary,
  .brand-comparison-hero-secondary,
  .rb-secondary-cta,
  .tool-hero-secondary,
  .faq-cta-secondary,
  .review-offer-secondary,
  .table-buy-secondary
  , .hub-hero-secondary
  , .review-hero-jump
) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.9rem;
  padding: .72rem 1rem;
  color: var(--camp-ink) !important;
  background: transparent !important;
  border: 1px solid var(--camp-line-strong) !important;
  border-radius: var(--camp-radius) !important;
  box-shadow: none !important;
  font-family: inherit !important;
  text-decoration: none !important;
}

body[data-design="cinematic-camp-v1"] :where(
  .cta-button,
  .btn-primary,
  .btn-cta,
  .guide-hero-primary,
  .brand-comparison-hero-primary,
  .rb-primary-cta,
  .tool-hero-start,
  .faq-cta-primary,
  .review-offer-primary,
  .table-buy-btn,
  .discount-cta-btn.primary,
  .hub-hero-primary,
  .review-hero-cta,
  .nav-find-cta
):hover {
  color: var(--camp-night-deep) !important;
  background: var(--camp-accent-soft) !important;
  border-color: var(--camp-accent-soft) !important;
  transform: translateY(-1px);
}

body[data-design="cinematic-camp-v1"] :where(
  input,
  select,
  textarea,
  button
) {
  font: inherit;
}

body[data-design="cinematic-camp-v1"] :where(input, select, textarea) {
  color: var(--camp-ink) !important;
  background: var(--camp-night-deep) !important;
  border-color: var(--camp-line-strong) !important;
  border-radius: .45rem !important;
  box-shadow: none !important;
}

body[data-design="cinematic-camp-v1"] :where(input, select, textarea)::placeholder {
  color: var(--camp-muted) !important;
}

body[data-design="cinematic-camp-v1"] :where(code, kbd) {
  color: var(--camp-ink) !important;
  background: var(--camp-panel-soft) !important;
  border-color: var(--camp-line) !important;
}

body[data-design="cinematic-camp-v1"] :where(blockquote, .callout, .note, .verified-badge, .review-verdict, .verdict-box, .quick-verdict) {
  color: var(--camp-copy) !important;
  background: var(--camp-panel) !important;
  border-color: var(--camp-line-strong) !important;
  box-shadow: none !important;
}

body[data-design="cinematic-camp-v1"] :where(blockquote, .callout, .note, .verified-badge, .review-verdict, .verdict-box, .quick-verdict) :where(strong, h2, h3) {
  color: var(--camp-ink) !important;
}

body[data-design="cinematic-camp-v1"] :where(table) {
  color: var(--camp-copy) !important;
  background: var(--camp-panel) !important;
  border-color: var(--camp-line) !important;
  box-shadow: none !important;
}

body[data-design="cinematic-camp-v1"] :where(th) {
  color: var(--camp-ink) !important;
  background: var(--camp-night-deep) !important;
  border-color: var(--camp-line) !important;
}

body[data-design="cinematic-camp-v1"] :where(td) {
  color: var(--camp-copy) !important;
  background: transparent !important;
  border-color: var(--camp-line) !important;
}

body[data-design="cinematic-camp-v1"] :where(tbody tr:nth-child(even), tbody tr:hover) {
  background: color-mix(in oklch, var(--camp-panel-soft) 60%, transparent) !important;
}

body[data-design="cinematic-camp-v1"] tbody tr {
  background: transparent !important;
}

body[data-design="cinematic-camp-v1"] tbody tr:nth-child(even) {
  background: color-mix(in oklch, var(--camp-panel-soft) 60%, transparent) !important;
}

body[data-design="cinematic-camp-v1"] :where(.table-container, .guide-comparison-table, .table-scroll) {
  overflow-x: auto;
  background: var(--camp-panel) !important;
  border: 1px solid var(--camp-line) !important;
  border-radius: var(--camp-radius) !important;
  box-shadow: none !important;
}

body[data-design="cinematic-camp-v1"] :where(img) {
  color: var(--camp-muted);
}

body[data-design="cinematic-camp-v1"] :where(
  .hero-media,
  .reviews-hub-hero-media,
  .guides-hub-hero-media,
  .vs-hub-hero-media,
  .discounts-hero-media,
  .tool-hero-media,
  .hub-hero-media,
  .guide-hero-image,
  .brand-comparison-hero-media,
  .comparison-hero-media,
  .discount-hero-media,
  .paa-hero-media,
  .article-hero-media,
  .rb-hero-media
) {
  background: var(--camp-panel) !important;
  border-color: var(--camp-line) !important;
  border-radius: var(--camp-radius) !important;
  box-shadow: none !important;
  overflow: hidden;
}

body[data-design="cinematic-camp-v1"] :where(
  .hero-media,
  .reviews-hub-hero-media,
  .guides-hub-hero-media,
  .vs-hub-hero-media,
  .discounts-hero-media,
  .tool-hero-media,
  .hub-hero-media,
  .guide-hero-image,
  .brand-comparison-hero-media,
  .comparison-hero-media,
  .discount-hero-media,
  .paa-hero-media,
  .article-hero-media,
  .rb-hero-media
) figcaption {
  color: var(--camp-copy) !important;
  background: color-mix(in oklch, var(--camp-night-deep) 88%, transparent) !important;
  border-color: var(--camp-line) !important;
  border-radius: .35rem !important;
}

/* -------------------------------------------------------------------------- */
/* Homepage — never leave the dark canvas                                      */
/* -------------------------------------------------------------------------- */

body[data-page-key="home"] :where(main, .hero, .vehicle-selector, .swiss-trust-rail, .home-featured, .home-tools-strip, .comparison-section, .partners-section, .home-faq) {
  color: var(--camp-copy) !important;
  background: var(--camp-night) !important;
  border-color: var(--camp-line) !important;
}

body[data-page-key="home"] :where(.hero, .vehicle-selector) {
  background: var(--camp-night-deep) !important;
}

body[data-design="cinematic-camp-v1"][data-page-key="home"] .hero {
  background-image:
    linear-gradient(oklch(7% .018 184 / .7), oklch(7% .018 184 / .7)),
    url('/images/snuuzu-installed-interior.webp') !important;
  background-position: center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
}

body[data-design="cinematic-camp-v1"][data-page-key="home"] .hero::after,
body[data-design="cinematic-camp-v1"][data-page-key^="review_"] .review-hero::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  background: oklch(7% .018 184 / .62) !important;
}

body[data-design="cinematic-camp-v1"][data-page-key="home"] .hero .hero-media {
  z-index: 3 !important;
  background: transparent !important;
  pointer-events: none !important;
}

body[data-design="cinematic-camp-v1"][data-page-key="home"] .hero .hero-media img {
  display: none !important;
}

body[data-design="cinematic-camp-v1"][data-page-key="home"] .hero .hero-media figcaption {
  top: 1rem !important;
  right: 1rem !important;
  bottom: auto !important;
}

body[data-design="cinematic-camp-v1"][data-page-key="home"] .hero::after {
  content: none !important;
  display: none !important;
}

body[data-design="cinematic-camp-v1"][data-page-key="home"] .hero > :not(.hero-media),
body[data-design="cinematic-camp-v1"][data-page-key^="review_"] .review-hero > :not(.review-hero-media) {
  position: relative;
  z-index: 2 !important;
}

body[data-design="cinematic-camp-v1"] :where(
  .guide-hero,
  .tool-hero,
  .discounts-hero,
  .brand-comparison-hero,
  .comparison-hero,
  .rb-hero,
  .article-hero,
  .paa-hero
) h1 {
  font-size: clamp(2.8rem, 4.5vw, 4.8rem) !important;
  line-height: .98 !important;
}

body[data-page-key="guide_best_mattresses"] { --camp-guide-image: url('/images/snuuzu-vs-havnby-real.webp'); }
body[data-page-key="guide_best_model_y"] { --camp-guide-image: url('/images/snuuzu-installed-interior.webp'); }
body[data-page-key="guide_best_model_3"] { --camp-guide-image: url('/images/tesmat-solo-3-installed.webp'); }
body[data-page-key="guide_budget"] { --camp-guide-image: url('/images/overview-tesla-model-y-air-mattress-real.webp'); }
body[data-page-key="guide_cybertruck"],
body[data-page-key="guide_model_x"] { --camp-guide-image: url('/images/tesla-model-y-air-mattress-installed.webp'); }
body[data-page-key="guide_buying"],
body[data-page-key="guide_tesla_vs_generic"] { --camp-guide-image: url('/images/havnby-vs-novapads-real.webp'); }
body[data-page-key="guide_getting_started"],
body[data-page-key="guide_dogs"] { --camp-guide-image: url('/images/camp-mode-night.webp'); }

body[data-design="cinematic-camp-v1"].ranking-guide .guide-hero {
  position: relative !important;
  isolation: isolate;
  display: flex !important;
  align-items: flex-end !important;
  min-height: clamp(34rem, 60vw, 48rem) !important;
  padding: clamp(4rem, 8vw, 7rem) var(--camp-gutter) clamp(3.5rem, 7vw, 6rem) !important;
  background-color: var(--camp-night-deep) !important;
  background-image: var(--camp-guide-image) !important;
  background-position: center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  overflow: hidden;
}

body[data-design="cinematic-camp-v1"].ranking-guide .guide-hero::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  width: auto !important;
  height: auto !important;
  z-index: 0 !important;
  pointer-events: none !important;
  background: oklch(7% .018 184 / .7) !important;
}

body[data-design="cinematic-camp-v1"].ranking-guide .guide-hero::after {
  content: none !important;
  display: none !important;
}

body[data-design="cinematic-camp-v1"].ranking-guide .guide-hero-content {
  position: relative !important;
  z-index: 1 !important;
  width: min(100%, 48rem) !important;
  max-width: 48rem !important;
  padding: 0 !important;
}

body[data-page-key="home"] :where(.home-featured, .home-tools-strip, .comparison-section, .partners-section, .home-faq) {
  border-top: 1px solid var(--camp-line) !important;
}

body[data-page-key="home"] :where(.swiss-trust-rail) {
  border-block: 1px solid var(--camp-line) !important;
}

body[data-page-key="home"] :where(.swiss-trust-rail, .swiss-trust-rail a, .hero-disclosure, .table-filter-status) {
  color: var(--camp-muted) !important;
}

body[data-page-key="home"] .vehicle-selector :where(button, .vehicle-option) {
  color: var(--camp-copy) !important;
  background: transparent !important;
  border-color: var(--camp-line) !important;
  box-shadow: none !important;
}

body[data-page-key="home"] .vehicle-selector :where(button[aria-pressed="true"], .is-active, .active) {
  color: var(--camp-night-deep) !important;
  background: var(--camp-paper) !important;
  border-color: var(--camp-paper) !important;
}

body[data-page-key="home"] .vehicle-selector :where(button[aria-pressed="true"], .is-active, .active) * {
  color: var(--camp-night-deep) !important;
}

body[data-page-key="home"] .vehicle-option input:checked + span * {
  color: var(--camp-night-deep) !important;
}

body[data-design="cinematic-camp-v1"][data-page-key="home"] .vehicle-option:has(input:checked) {
  color: var(--camp-night-deep) !important;
  background: var(--camp-paper) !important;
  border-color: var(--camp-paper) !important;
}

body[data-design="cinematic-camp-v1"][data-page-key="home"] .vehicle-option:has(input:checked) :where(b, small, span) {
  color: var(--camp-night-deep) !important;
  -webkit-text-fill-color: var(--camp-night-deep) !important;
}

body[data-page-key="home"] :where(.home-featured-card, .discount-card-new, .partner-card) {
  color: var(--camp-copy) !important;
  background: var(--camp-panel) !important;
  border: 1px solid var(--camp-line) !important;
  border-radius: var(--camp-radius) !important;
  box-shadow: none !important;
  overflow: hidden;
}

body[data-page-key="home"] :where(.home-featured-card, .discount-card-new, .partner-card) :where(h3, h4, strong, a) {
  color: var(--camp-ink) !important;
}

body[data-page-key="home"] .home-featured-card > span {
  color: var(--camp-copy) !important;
  background: var(--camp-panel) !important;
  border-color: var(--camp-line) !important;
}

body[data-page-key="home"] .home-featured-card > span :where(strong, b) {
  color: var(--camp-ink) !important;
}

body[data-page-key="home"] .home-featured-card > span small {
  color: var(--camp-muted) !important;
}

body[data-page-key="home"] :where(.home-featured-head a, .home-featured-heading a, .swiss-trust-rail, .swiss-trust-rail a) {
  color: var(--camp-copy) !important;
  opacity: 1 !important;
}

body[data-page-key="home"] :where(.home-featured a, .section-description, .btn-review) {
  color: var(--camp-copy) !important;
}

body[data-page-key="home"] :where(.price-source-note, .discount-intro) {
  color: var(--camp-copy) !important;
  opacity: 1 !important;
}

body[data-page-key="home"] .discount-cta-btn.primary,
body[data-page-key="home"] .btn-all-codes {
  color: var(--camp-night-deep) !important;
  background: var(--camp-paper) !important;
  border-color: var(--camp-paper) !important;
}

body[data-page-key="home"] :where(.discount-card-header, .discount-card-body, .discount-card-footer) {
  color: var(--camp-copy) !important;
  background: transparent !important;
  border-color: var(--camp-line) !important;
}

body[data-page-key="home"] :where(.table-tools, .table-filter) {
  color: var(--camp-copy) !important;
  background: transparent !important;
  border-color: var(--camp-line) !important;
}

body[data-page-key="home"] .table-filter button {
  color: var(--camp-copy) !important;
  background: transparent !important;
  border-color: var(--camp-line-strong) !important;
  box-shadow: none !important;
}

body[data-page-key="home"] .table-filter button[aria-pressed="true"] {
  color: var(--camp-night-deep) !important;
  background: var(--camp-paper) !important;
  border-color: var(--camp-paper) !important;
}

body[data-page-key="home"] :where(.table-product-link, .all-codes-cta a, .home-faq a) {
  color: var(--camp-ink) !important;
}

/* -------------------------------------------------------------------------- */
/* Hub pages                                                                   */
/* -------------------------------------------------------------------------- */

body[data-page-key="reviews_index"] :where(.reviews-hub, .reviews-grid, .reviews-guide),
body[data-page-key="guides_index"] :where(.guides-hub, .guides-hub > section),
body[data-page-key="vs_index"] :where(.vs-hub-page, .vs-cards-grid, .vs-guide, .quick-picks),
body[data-page-key="discounts_index"] :where(.discounts-page, .discounts-hero, .discounts-overview, .brand-discount-section),
body[data-page-key="faq_index"] :where(main, .hub-hero, .hub-grid),
body[data-page-key="tool_index"] :where(main, .tool-hero, .tool-trust-strip, .tool-index, .tool-content, .tool-method-note) {
  color: var(--camp-copy) !important;
  background: var(--camp-night) !important;
  border-color: var(--camp-line) !important;
}

body[data-page-key="reviews_index"] :where(.reviews-hub-hero),
body[data-page-key="guides_index"] :where(.guides-hub-hero),
body[data-page-key="vs_index"] :where(.vs-hub-hero),
body[data-page-key="discounts_index"] :where(.discounts-hero),
body[data-page-key="faq_index"] :where(.hub-hero),
body[data-page-key="tool_index"] :where(.tool-hero) {
  background: var(--camp-night-deep) !important;
}

body[data-page-key="reviews_index"] :where(.reviews-grid, .reviews-guide, .reviews-cta),
body[data-page-key="guides_index"] .guides-hub > section,
body[data-page-key="vs_index"] :where(.vs-cards-grid, .vs-guide, .quick-picks),
body[data-page-key="discounts_index"] :where(.discounts-overview, .brand-discount-section),
body[data-page-key="faq_index"] :where(.hub-grid),
body[data-page-key="tool_index"] :where(.tool-trust-strip, .tool-index, .tool-content, .tool-method-note) {
  border-top: 1px solid var(--camp-line) !important;
}

body[data-design="cinematic-camp-v1"] :where(
  .review-card,
  .guide-card,
  .guide-topic-card,
  .vs-card,
  .hub-card,
  .quick-pick,
  .brand-discount-card,
  .tool-card,
  .tool-jump-card
) {
  color: var(--camp-copy) !important;
  background: var(--camp-panel) !important;
  border: 1px solid var(--camp-line) !important;
  border-radius: var(--camp-radius) !important;
  box-shadow: none !important;
  overflow: hidden;
}

body[data-design="cinematic-camp-v1"] :where(
  .review-card,
  .guide-card,
  .guide-topic-card,
  .vs-card,
  .hub-card,
  .quick-pick,
  .brand-discount-card,
  .tool-card,
  .tool-jump-card
) :where(h2, h3, h4, strong, .review-card-link) {
  color: var(--camp-ink) !important;
}

body[data-design="cinematic-camp-v1"] :where(
  .review-card-media,
  .guide-card-image,
  .vs-card-media,
  .hub-card-thumb
) {
  background: var(--camp-night-deep) !important;
  border-color: var(--camp-line) !important;
}

body[data-design="cinematic-camp-v1"] :where(
  .review-card-meta,
  .review-card-summary,
  .guide-card-meta,
  .vs-card-meta,
  .hub-card p,
  .brand-discount-card p
) {
  color: var(--camp-muted) !important;
}

/* -------------------------------------------------------------------------- */
/* Reviews                                                                     */
/* -------------------------------------------------------------------------- */

body[data-page-key^="review_"] {
  --review-night: var(--camp-night-deep) !important;
  --review-panel: var(--camp-panel) !important;
  --review-panel-soft: var(--camp-panel-soft) !important;
  --review-ink: var(--camp-ink) !important;
  --review-ink-soft: var(--camp-copy) !important;
  --review-muted: var(--camp-muted) !important;
  --review-line: var(--camp-line) !important;
  font-family: "Instrument Sans", "Helvetica Neue", sans-serif !important;
  background: var(--camp-night) !important;
}

body[data-page-key^="review_"] :where(.review-main, .review-decision-v3, .ownership-detail, .review-story, .review-next-steps) {
  color: var(--camp-copy) !important;
  background: var(--camp-night) !important;
  border-color: var(--camp-line) !important;
}

body[data-page-key^="review_"] :where(.review-decision-v3, .ownership-detail, .review-story, .product-evidence-gallery, .review-next-steps) {
  border-top: 1px solid var(--camp-line) !important;
}

body[data-page-key^="review_"] :where(
  .review-offer-card,
  .ownership-detail-list,
  .ownership-accordion-panel,
  .product-evidence-item,
  .review-next-step,
  .cta-block
) {
  color: var(--camp-copy) !important;
  background: var(--camp-panel) !important;
  border-color: var(--camp-line) !important;
  box-shadow: none !important;
}

body[data-page-key^="review_"] :where(.review-offer-card, .product-evidence-item, .review-next-step, .cta-block) {
  border-radius: var(--camp-radius) !important;
}

/* -------------------------------------------------------------------------- */
/* Guides, comparisons, discount pages and FAQ articles                       */
/* -------------------------------------------------------------------------- */

body[data-page-key^="guide_"] :where(.guide-hero, .rb-hero),
body[data-page-key^="vs_"]:not([data-page-key="vs_index"]) :where(.brand-comparison-hero, .comparison-hero, .rb-hero),
body[data-page-key^="discount_"] :where(.discount-hero),
body[data-page-key^="paa_"] :where(.paa-hero, .faq-hero),
body[data-page-key^="ck_"] :where(.article-hero, .rb-hero) {
  color: var(--camp-copy) !important;
  background: var(--camp-night-deep) !important;
  border-color: var(--camp-line) !important;
}

body[data-page-key^="paa_"] :where(.paa-hero, .faq-hero)::before,
body[data-page-key^="paa_"] :where(.paa-hero, .faq-hero)::after {
  background: none !important;
  content: none !important;
}

body[data-page-key^="guide_"] :where(.guide-content-wrapper, .guide-main, .guide-layout, .rb-layout, .rb-article),
body[data-page-key^="vs_"]:not([data-page-key="vs_index"]) :where(.brand-comparison-page, .brand-comparison-layout, .brand-comparison-article, .comparison-main, .rb-layout, .rb-article),
body[data-page-key^="discount_"] :where(.discount-main),
body[data-page-key^="paa_"] :where(.faq-main, .paa-main),
body[data-page-key^="ck_"] :where(.article-main, .rb-layout, .rb-article) {
  color: var(--camp-copy) !important;
  background: var(--camp-night) !important;
  border-color: var(--camp-line) !important;
}

body[data-page-key^="guide_"] :where(.guide-section, .guide-faq, .guide-bottom-cta, .ranking-entry, .rb-verdict, .rb-faq, .rb-final-cta, .rb-related),
body[data-page-key^="vs_"]:not([data-page-key="vs_index"]) :where(.brand-comparison-trustbar, .brand-comparison-verdict, .brand-comparison-faq, .brand-comparison-related, .comparison-section, .rb-verdict, .rb-faq, .rb-final-cta, .rb-related),
body[data-page-key^="discount_"] :where(.discount-main > *, .discount-faq),
body[data-page-key^="paa_"] :where(.faq-main > section, .faq-tldr, .faq-related, .faq-cta),
body[data-page-key^="ck_"] :where(.article-main > section, .rb-verdict, .rb-faq, .rb-final-cta, .rb-related) {
  color: var(--camp-copy) !important;
  background: transparent !important;
  border-color: var(--camp-line) !important;
  box-shadow: none !important;
}

body[data-page-key^="guide_"] :where(.guide-section, .guide-faq, .guide-bottom-cta, .ranking-entry, .rb-verdict, .rb-faq, .rb-final-cta, .rb-related),
body[data-page-key^="vs_"]:not([data-page-key="vs_index"]) :where(.brand-comparison-verdict, .brand-comparison-faq, .brand-comparison-related, .rb-verdict, .rb-faq, .rb-final-cta, .rb-related),
body[data-page-key^="discount_"] :where(.discount-main > h2, .discount-faq),
body[data-page-key^="paa_"] :where(.faq-main > section, .faq-related, .faq-cta),
body[data-page-key^="ck_"] :where(.article-main > section, .rb-verdict, .rb-faq, .rb-final-cta, .rb-related) {
  border-top: 1px solid var(--camp-line) !important;
}

body[data-design="cinematic-camp-v1"] :where(
  .sidebar-card,
  .product-pick,
  .faq-item,
  .brand-comparison-card,
  .comparison-card,
  .discount-code-box,
  .big-code-box,
  .code-box-hero,
  .related-list a,
  .rb-related a,
  .brand-comparison-related a
) {
  color: var(--camp-copy) !important;
  background: var(--camp-panel) !important;
  border-color: var(--camp-line) !important;
  border-radius: var(--camp-radius) !important;
  box-shadow: none !important;
}

body[data-design="cinematic-camp-v1"] :where(
  .sidebar-card,
  .product-pick,
  .faq-item,
  .brand-comparison-card,
  .comparison-card,
  .discount-code-box,
  .big-code-box,
  .code-box-hero
) :where(h2, h3, h4, strong, code) {
  color: var(--camp-ink) !important;
}

body[data-design="cinematic-camp-v1"] :where(.brand-comparison-trustbar, .guide-meta, .faq-meta, .article-meta, .rb-meta) {
  color: var(--camp-muted) !important;
  background: var(--camp-panel) !important;
  border-color: var(--camp-line) !important;
}

body[data-design="cinematic-camp-v1"] :where(details, summary) {
  color: var(--camp-copy) !important;
  background: transparent !important;
  border-color: var(--camp-line) !important;
  box-shadow: none !important;
}

body[data-design="cinematic-camp-v1"] summary {
  color: var(--camp-ink) !important;
}

body[data-design="cinematic-camp-v1"] :where(.article-visual-guide-card, .product-evidence-item) {
  background: var(--camp-panel) !important;
  border-color: var(--camp-line) !important;
  border-radius: var(--camp-radius) !important;
  box-shadow: none !important;
  overflow: hidden;
}

/* -------------------------------------------------------------------------- */
/* Discount directory                                                         */
/* -------------------------------------------------------------------------- */

body[data-page-key="discounts_index"] .brand-discount-section:nth-of-type(even),
body[data-page-key="discounts_index"] .brand-discount-section:nth-of-type(odd) {
  background: var(--camp-night) !important;
}

body[data-page-key="discounts_index"] :where(.brand-discount-card, .quick-code-item) {
  background: var(--camp-panel) !important;
  border-color: var(--camp-line) !important;
}

body[data-page-key="discounts_index"] :where(.discount-code, .code) {
  color: var(--camp-ink) !important;
  background: var(--camp-panel-soft) !important;
  border-color: var(--camp-line-strong) !important;
}

/* -------------------------------------------------------------------------- */
/* Tools                                                                       */
/* -------------------------------------------------------------------------- */

body[data-page-key^="tool_"] :where(main, .tool-hero, .tool-shell, .tool-content, .tool-content > section, .tool-index, .tool-trust-strip, .tool-method-note) {
  color: var(--camp-copy) !important;
  background: var(--camp-night) !important;
  border-color: var(--camp-line) !important;
}

body[data-page-key^="tool_"] .tool-hero {
  background: var(--camp-night-deep) !important;
}

body[data-page-key^="tool_"] :where(.tool-shell, .tool-content > section, .tool-index, .tool-trust-strip, .tool-method-note) {
  border-top: 1px solid var(--camp-line) !important;
}

body[data-page-key^="tool_"] :where(
  .tool-form,
  .tool-form-section,
  .tool-result,
  .tool-empty,
  .tool-faq,
  .tool-checkbox-grid label,
  .finder-option,
  .packing-group,
  .battery-result
) {
  color: var(--camp-copy) !important;
  background: var(--camp-panel) !important;
  border-color: var(--camp-line) !important;
  border-radius: var(--camp-radius) !important;
  box-shadow: none !important;
}

body[data-page-key^="tool_"] :where(.tool-form, .tool-form-section, .tool-result, .tool-empty, .tool-faq) :where(h2, h3, h4, strong, label) {
  color: var(--camp-ink) !important;
}

/* -------------------------------------------------------------------------- */
/* About, methodology, disclosure and 404                                     */
/* -------------------------------------------------------------------------- */

body[data-page-key="about"] :where(.about-page, .about-container, section),
body[data-page-key="methodology"] :where(.about-page, .about-container, section),
body[data-page-key="disclosure"] :where(main, section),
body:not([data-page-key]) :where(.error-content, .error-box) {
  color: var(--camp-copy) !important;
  background: var(--camp-night) !important;
  border-color: var(--camp-line) !important;
  box-shadow: none !important;
}

body[data-page-key="about"] .about-container > section,
body[data-page-key="methodology"] .about-container > section,
body[data-page-key="disclosure"] main > section {
  padding-block: clamp(2rem, 4vw, 3.75rem) !important;
  margin-block: 0 !important;
  border-top: 1px solid var(--camp-line) !important;
  border-radius: 0 !important;
}

body[data-page-key="about"] .about-container > section:last-child,
body[data-page-key="methodology"] .about-container > section:last-child {
  padding-inline: 0 !important;
  text-align: left !important;
}

/* -------------------------------------------------------------------------- */
/* Motion and responsive behavior                                              */
/* -------------------------------------------------------------------------- */

body[data-design="cinematic-camp-v1"] :where(a, button) {
  transition: color .2s ease, background-color .2s ease, border-color .2s ease, transform .2s ease;
}

@media (max-width: 64rem) {
  body[data-design="cinematic-camp-v1"] :where(.nav-links, #primary-navigation) {
    color: var(--camp-ink) !important;
    background: var(--camp-night-deep) !important;
    border-color: var(--camp-line) !important;
    box-shadow: none !important;
  }

  body[data-design="cinematic-camp-v1"] :where(.nav-links, #primary-navigation) a {
    color: var(--camp-ink) !important;
    border-color: var(--camp-line) !important;
  }
}

@media (max-width: 52rem) {
  body[data-design="cinematic-camp-v1"] {
    font-size: .98rem;
  }

  body[data-design="cinematic-camp-v1"] :where(h1) {
    font-size: clamp(2.55rem, 12vw, 4rem) !important;
    line-height: .98 !important;
  }

  body[data-design="cinematic-camp-v1"] :where(h2) {
    font-size: clamp(2rem, 8.8vw, 3rem) !important;
    line-height: 1.02 !important;
  }

  body[data-design="cinematic-camp-v1"] :where(
    .home-featured,
    .home-tools-strip,
    .comparison-section,
    .partners-section,
    .home-faq,
    .reviews-grid,
    .reviews-guide,
    .reviews-cta,
    .vs-cards-grid,
    .vs-guide,
    .quick-picks,
    .discounts-overview,
    .brand-discount-section,
    .hub-grid,
    .tool-index,
    .tool-content
  ) {
    padding-inline: var(--camp-gutter) !important;
  }

  body[data-design="cinematic-camp-v1"] :where(.cta-button, .btn-primary, .guide-hero-primary, .brand-comparison-hero-primary, .rb-primary-cta, .tool-hero-start, .faq-cta-primary) {
    width: 100%;
  }
}

/* Discount headlines are short transactional labels. Automatic dictionary
   hyphenation produced distracting splits such as “pro-mo” and “ma-telas” in
   French, so preserve whole words and only wrap an overlong token if the
   viewport genuinely requires it. */
body[data-design="cinematic-camp-v1"] :where(
  .discounts-hero h1,
  .discount-hero h1,
  .discount-main h2,
  .discount-main h3
) {
  overflow-wrap: break-word !important;
  word-break: normal !important;
  -webkit-hyphens: none !important;
  hyphens: none !important;
}

/* Discount-directory contrast lock.
   This must remain after the global readability layer: the cards deliberately
   use a light surface inside the dark cinematic shell. */
body[data-design="cinematic-camp-v1"] .discount-directory-card,
body[data-design="cinematic-camp-v1"] .discount-method-note {
  color: #17221d !important;
}

body[data-design="cinematic-camp-v1"] .discount-directory-card :where(h2, h3, h4, code),
body[data-design="cinematic-camp-v1"] .discount-method-note :where(h2, h3, h4) {
  color: #17221d !important;
  opacity: 1 !important;
}

body[data-design="cinematic-camp-v1"] .discount-directory-card :where(p, li),
body[data-design="cinematic-camp-v1"] .discount-method-note :where(p, li) {
  color: #34423a !important;
  opacity: 1 !important;
}

body[data-design="cinematic-camp-v1"] .discount-directory-card .discount-card-topline {
  color: #4d5c54 !important;
  opacity: 1 !important;
}

body[data-design="cinematic-camp-v1"] .discount-directory-card .discount-card-topline strong {
  color: #9d351f !important;
}

body[data-design="cinematic-camp-v1"] .discount-directory-card .discount-check-date {
  color: #59665f !important;
}

body[data-design="cinematic-camp-v1"] .discount-directory-card .discount-directory-card-body > a,
body[data-design="cinematic-camp-v1"] .discount-method-note > a {
  color: #17221d !important;
  opacity: 1 !important;
}

body[data-design="cinematic-camp-v1"] .discount-directory-card .discount-directory-code button {
  color: #fffdf8 !important;
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  body[data-design="cinematic-camp-v1"] *,
  body[data-design="cinematic-camp-v1"] *::before,
  body[data-design="cinematic-camp-v1"] *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}

/* -------------------------------------------------------------------------- */
/* Final component contracts                                                   */
/* -------------------------------------------------------------------------- */

body[data-design="cinematic-camp-v1"] main :where(h1, h2, h3, h4, h5, h6) {
  color: var(--camp-ink) !important;
}

body[data-design="cinematic-camp-v1"] main :where(p, li, dt, dd, figcaption) {
  color: var(--camp-copy) !important;
}

body[data-design="cinematic-camp-v1"] main :where(small, .meta, [class*="-meta"], [class*="-note"]) {
  color: var(--camp-muted) !important;
  opacity: 1 !important;
}

body[data-page-key="home"] main .home-featured-heading a,
body[data-page-key="about"] main a,
body[data-page-key="methodology"] main a {
  color: var(--camp-ink) !important;
}

body[data-page-key="home"] main .home-featured-heading a {
  color: var(--camp-copy) !important;
}

body[data-page-key="reviews_index"] main.reviews-hub .review-card,
body[data-page-key="reviews_index"] main.reviews-hub .review-card-link {
  color: var(--camp-copy) !important;
  background: var(--camp-panel) !important;
  border-color: var(--camp-line) !important;
  box-shadow: none !important;
}

body[data-page-key="reviews_index"] main.reviews-hub .review-card :where(h2, h3, h4, strong) {
  color: var(--camp-ink) !important;
}

body[data-page-key="reviews_index"] main.reviews-hub .review-card :where(p, small, .review-card-type, .review-card-summary) {
  color: var(--camp-copy) !important;
}

body[data-page-key^="review_"] main.review-main .review-next-steps-grid {
  background: transparent !important;
  border-color: var(--camp-line) !important;
}

body[data-page-key^="review_"] main.review-main .review-next-step {
  color: var(--camp-copy) !important;
  background: var(--camp-panel) !important;
  border-color: var(--camp-line) !important;
}

/* Reviews should lead with one decision, not three competing summary panels. */
body[data-design="cinematic-camp-v1"].review-modern .review-hero-insight-focus {
  display: none !important;
}

body[data-design="cinematic-camp-v1"].review-modern .review-hero-insights {
  position: absolute !important;
  width: auto !important;
  grid-template-columns: minmax(7rem, .7fr) minmax(0, 2.3fr) !important;
}

body[data-design="cinematic-camp-v1"].review-modern .review-hero-insight-score p {
  display: none !important;
}

body[data-design="cinematic-camp-v1"].review-modern .review-hero-media figcaption {
  top: 6.25rem !important;
  bottom: auto !important;
  color: rgba(250, 247, 239, .86) !important;
  text-shadow: 0 1px 18px rgba(0, 0, 0, .72);
}

/* Keep list markers and copy inside the mobile reading measure. */
html body[data-design="cinematic-camp-v1"][data-page-key^="discount_"] main.discount-main {
  box-sizing: border-box;
  width: min(100%, 52rem) !important;
  max-width: none !important;
  margin: 0 auto !important;
  padding: clamp(4rem, 7vw, 6rem) var(--camp-gutter) clamp(5rem, 9vw, 8rem) !important;
}

body[data-design="cinematic-camp-v1"] .discount-main > :is(ul, ol) {
  box-sizing: border-box;
  width: min(100%, var(--tm-reading)) !important;
  margin-right: auto !important;
  margin-left: auto !important;
  padding-left: 1.35rem !important;
}

body[data-page-key^="guide_"] main :where(.guide-callout, .guide-takeaway),
body[data-page-key^="ck_"] main :where(.guide-callout, .guide-takeaway),
body[data-page-key^="paa_"] main :where(.guide-callout, .guide-takeaway),
body[data-page-key^="review_"] main :where(.guide-callout, .guide-takeaway) {
  color: var(--camp-copy) !important;
  background: var(--camp-panel) !important;
  border-color: var(--camp-line) !important;
  box-shadow: none !important;
}

body[data-page-key^="guide_"] main :where(.guide-callout, .guide-takeaway) *,
body[data-page-key^="ck_"] main :where(.guide-callout, .guide-takeaway) *,
body[data-page-key^="paa_"] main :where(.guide-callout, .guide-takeaway) *,
body[data-page-key^="review_"] main :where(.guide-callout, .guide-takeaway) * {
  color: inherit !important;
}

body[data-design="cinematic-camp-v1"] main :where(
  .brand-comparison-product-figures,
  .brand-comparison-decision-grid,
  .brand-comparison-related-grid,
  .rb-related-grid,
  .vs-category-grid,
  .guides-grid,
  .guide-topic-grid
) {
  background: transparent !important;
  border-color: var(--camp-line) !important;
}

body[data-design="cinematic-camp-v1"] main :where(
  .brand-comparison-decision,
  .brand-comparison-sidebar-inner,
  .rb-pros-cons > div,
  .rb-sidebar-inner,
  .vs-category-item,
  .vs-category > div
) {
  color: var(--camp-copy) !important;
  background: var(--camp-panel) !important;
  border-color: var(--camp-line) !important;
  box-shadow: none !important;
}

body[data-design="cinematic-camp-v1"] main :where(
  .brand-comparison-decision,
  .brand-comparison-sidebar-inner,
  .rb-pros-cons > div,
  .rb-sidebar-inner,
  .vs-category-item,
  .vs-category > div
) :where(h2, h3, h4, strong) {
  color: var(--camp-ink) !important;
}

body[data-design="cinematic-camp-v1"] main :where(
  .brand-comparison-decision,
  .brand-comparison-sidebar-inner,
  .rb-pros-cons > div,
  .rb-sidebar-inner,
  .vs-category-item,
  .vs-category > div
) :where(p, li, small) {
  color: var(--camp-copy) !important;
}

body[data-design="cinematic-camp-v1"] main :where(
  .rb-callout,
  .rb-pros-cons,
  .brand-comparison-note,
  .vs-cta
) {
  color: var(--camp-copy) !important;
  background: var(--camp-panel) !important;
  border-color: var(--camp-line) !important;
  box-shadow: none !important;
}

body[data-page-key="review_rockbrook_camping_box"] main :where(.rb-layout, .rb-article, .rb-verdict, .rb-faq, .rb-related),
body[data-page-key^="guide_"] main :where(.rb-layout, .rb-article, .rb-verdict, .rb-faq, .rb-related),
body[data-page-key^="ck_"] main :where(.rb-layout, .rb-article, .rb-verdict, .rb-faq, .rb-related),
body[data-page-key^="vs_"] main :where(.rb-layout, .rb-article, .rb-verdict, .rb-faq, .rb-related) {
  color: var(--camp-copy) !important;
  background: var(--camp-night) !important;
  border-color: var(--camp-line) !important;
  box-shadow: none !important;
}

body[data-page-key="review_rockbrook_camping_box"] main :where(.rb-verdict, .rb-callout, .rb-pros-cons, .rb-faq, .rb-related),
body[data-page-key^="guide_"] main :where(.rb-verdict, .rb-callout, .rb-pros-cons, .rb-faq, .rb-related),
body[data-page-key^="ck_"] main :where(.rb-verdict, .rb-callout, .rb-pros-cons, .rb-faq, .rb-related),
body[data-page-key^="vs_"] main :where(.rb-verdict, .rb-callout, .rb-pros-cons, .rb-faq, .rb-related) {
  background: var(--camp-panel) !important;
}

body[data-page-key^="vs_"] main.brand-comparison-page .brand-comparison-article :where(p, li, dd),
body[data-page-key^="guide_"] main :where(.guide-main, .rb-article) :where(p, li, dd),
body[data-page-key^="discount_"] main.discount-main :where(p, li, dd),
body[data-page-key^="paa_"] main.faq-main :where(p, li, dd),
body[data-page-key^="ck_"] main :where(p, li, dd) {
  color: var(--camp-copy) !important;
}

body[data-page-key^="vs_"] main.brand-comparison-page .brand-comparison-article :where(a),
body[data-page-key^="guide_"] main :where(.guide-main, .rb-article) :where(a),
body[data-page-key^="discount_"] main.discount-main :where(a),
body[data-page-key^="paa_"] main.faq-main :where(a),
body[data-page-key^="ck_"] main :where(a) {
  color: var(--camp-ink) !important;
}

body[data-page-key^="vs_"] main :where(.brand-comparison-meta, .rb-meta) a {
  color: var(--camp-muted) !important;
}

body[data-design="cinematic-camp-v1"] main :where(
  .brand-comparison-jump,
  .rb-sidebar-link,
  .vs-review-link,
  .btn-review
) {
  color: var(--camp-ink) !important;
  background: transparent !important;
  border-color: var(--camp-line-strong) !important;
}

body[data-design="cinematic-camp-v1"] main th {
  color: var(--camp-copy) !important;
  background: var(--camp-night-deep) !important;
  border-color: var(--camp-line) !important;
}

body[data-design="cinematic-camp-v1"] main td {
  color: var(--camp-copy) !important;
  border-color: var(--camp-line) !important;
}

body[data-page-key="discounts_index"] main.discounts-page h3 {
  color: var(--camp-ink) !important;
}

body[data-page-key^="paa_"] main .faq-cta-primary {
  color: var(--camp-night-deep) !important;
  background: var(--camp-paper) !important;
  border-color: var(--camp-paper) !important;
}

body[data-design="cinematic-camp-v1"][data-page-key="home"] main .home-featured-heading a {
  color: var(--camp-copy) !important;
}

body[data-design="cinematic-camp-v1"][data-page-key^="vs_"] main a:not(:is(.btn-buy, .btn-primary, .faq-cta-primary, .hub-hero-primary)):not(.brand-comparison-hero-primary):not(.rb-primary-cta):not(.table-buy-btn):not(.vs-cta-btn),
body[data-design="cinematic-camp-v1"][data-page-key^="guide_"] main a:not(:is(.btn-buy, .btn-primary, .faq-cta-primary, .hub-hero-primary)):not(.guide-hero-primary):not(.rb-primary-cta):not(.table-buy-btn):not(.btn-cta),
body[data-design="cinematic-camp-v1"][data-page-key^="ck_"] main a:not(:is(.btn-buy, .btn-primary, .faq-cta-primary, .hub-hero-primary)):not(.rb-primary-cta):not(.table-buy-btn),
body[data-design="cinematic-camp-v1"][data-page-key="review_rockbrook_camping_box"] main a:not(:is(.btn-buy, .btn-primary, .faq-cta-primary, .hub-hero-primary)):not(.rb-primary-cta) {
  color: var(--camp-ink) !important;
}

body[data-design="cinematic-camp-v1"][data-page-key^="vs_"] main .vs-cta-btn,
body[data-design="cinematic-camp-v1"][data-page-key^="guide_"] main .table-buy-btn {
  color: var(--camp-night-deep) !important;
  background: var(--camp-paper) !important;
  border-color: var(--camp-paper) !important;
}

body[data-design="cinematic-camp-v1"][data-page-key^="vs_"] main :where(.brand-comparison-meta, .rb-meta) a {
  color: var(--camp-muted) !important;
}

body[data-design="cinematic-camp-v1"][data-page-key="guide_best_mattresses"] main .guide-quick-nav {
  color: var(--camp-copy) !important;
  background: var(--camp-panel) !important;
  border-color: var(--camp-line) !important;
}

body[data-design="cinematic-camp-v1"][data-page-key="guide_best_mattresses"] main .guide-quick-nav a,
body[data-design="cinematic-camp-v1"][data-page-key="guide_best_mattresses"] .guide-hero .breadcrumb a,
body[data-design="cinematic-camp-v1"][data-page-key="guide_best_mattresses"] main .guide-meta a {
  color: var(--camp-copy) !important;
}

body[data-design="cinematic-camp-v1"] main .rb-source-note {
  color: var(--camp-copy) !important;
  background: var(--camp-panel) !important;
  border-color: var(--camp-line) !important;
}

body[data-design="cinematic-camp-v1"][data-page-key="discounts_index"] main.discounts-page .faq-item h3 {
  color: var(--camp-ink) !important;
}

body[data-design="cinematic-camp-v1"][data-page-key^="tool_"] main :where(h2, h3, h4) {
  color: var(--camp-ink) !important;
}

body[data-design="cinematic-camp-v1"][data-page-key^="tool_"] main :where(p, li, dd) {
  color: var(--camp-copy) !important;
}

body[data-design="cinematic-camp-v1"][data-page-key^="tool_"] main .tool-segmented {
  color: var(--camp-copy) !important;
  background: var(--camp-night-deep) !important;
  border-color: var(--camp-line-strong) !important;
}

body[data-design="cinematic-camp-v1"][data-page-key^="tool_"] main .tool-segmented label {
  color: var(--camp-copy) !important;
  background: transparent !important;
  border-color: var(--camp-line) !important;
}

body[data-design="cinematic-camp-v1"][data-page-key^="tool_"] main .tool-segmented input:checked + span,
body[data-design="cinematic-camp-v1"][data-page-key^="tool_"] main .tool-segmented label:has(input:checked) {
  color: var(--camp-night-deep) !important;
  background: var(--camp-paper) !important;
}

body[data-design="cinematic-camp-v1"][data-page-key^="tool_"] main .tool-segmented label:has(input:checked) * {
  color: var(--camp-night-deep) !important;
}

body[data-design="cinematic-camp-v1"][data-page-key="home"] main section.home-featured .home-featured-heading > a {
  color: var(--camp-copy) !important;
}

body[data-design="cinematic-camp-v1"][data-page-key="vs_index"] main .hub-hero-primary {
  color: var(--camp-night-deep) !important;
  background: var(--camp-paper) !important;
  border-color: var(--camp-paper) !important;
}

body[data-design="cinematic-camp-v1"][data-page-key] main th {
  color: var(--camp-copy) !important;
  background: var(--camp-night-deep) !important;
}

body[data-design="cinematic-camp-v1"][data-page-key="guide_best_mattresses"] main .guide-main td:first-child {
  color: var(--camp-ink) !important;
}

body[data-design="cinematic-camp-v1"][data-page-key^="guide_"] main .btn-primary,
body[data-design="cinematic-camp-v1"][data-page-key^="ck_"] main .faq-cta-primary,
body[data-design="cinematic-camp-v1"][data-page-key^="paa_"] main .faq-cta-primary,
body[data-design="cinematic-camp-v1"][data-page-key^="vs_"] main .faq-cta-primary {
  color: var(--camp-night-deep) !important;
  background: var(--camp-paper) !important;
  border-color: var(--camp-paper) !important;
}

body[data-design="cinematic-camp-v1"][data-page-key="tool_index"] main .tool-index .tool-jump-card {
  color: var(--camp-copy) !important;
  background: var(--camp-panel) !important;
  border-color: var(--camp-line) !important;
}

body[data-design="cinematic-camp-v1"][data-page-key="tool_index"] main .tool-index .tool-jump-card :where(h2, h3, strong) {
  color: var(--camp-ink) !important;
}

body[data-design="cinematic-camp-v1"][data-page-key="tool_index"] main .tool-index .tool-jump-card p {
  color: var(--camp-copy) !important;
}

body[data-design="cinematic-camp-v1"][data-page-key^="tool_"] main :where(strong, summary) {
  color: var(--camp-ink) !important;
}

body[data-design="cinematic-camp-v1"] main :where(
  .guide-hero-primary,
  .brand-comparison-hero-primary,
  .rb-primary-cta,
  .tool-hero-start,
  .faq-cta-primary,
  .review-offer-primary,
  .table-buy-btn,
  .discount-cta-btn.primary,
  .btn-primary,
  .btn-cta
) {
  color: var(--camp-night-deep) !important;
}

/* Literal foreground contracts keep WebKit text fill aligned with the theme. */
html body[data-design="cinematic-camp-v1"][data-page-key^="guide_"] main .guide-bottom-cta .cta-buttons > a.btn-primary,
html body[data-design="cinematic-camp-v1"][data-page-key^="guide_"] main a.table-buy-btn,
html body[data-design="cinematic-camp-v1"][data-page-key^="vs_"] main a.vs-cta-btn,
html body[data-design="cinematic-camp-v1"][data-page-key="vs_index"] main a.hub-hero-primary,
html body[data-design="cinematic-camp-v1"][data-page-key^="paa_"] main a.faq-cta-primary,
html body[data-design="cinematic-camp-v1"][data-page-key^="ck_"] main a.faq-cta-primary,
html body[data-design="cinematic-camp-v1"][data-page-key^="vs_"] main a.faq-cta-primary {
  color: #081514 !important;
  -webkit-text-fill-color: #081514 !important;
}

html body[data-design="cinematic-camp-v1"][data-page-key="home"] main section.home-featured header.home-featured-heading > a {
  color: #d8dedb !important;
  -webkit-text-fill-color: #d8dedb !important;
}

html body[data-design="cinematic-camp-v1"][data-page-key="tool_index"] main :where(.tool-index-row, .tool-jump-card) {
  color: var(--camp-copy) !important;
  background: var(--camp-panel) !important;
  border-color: var(--camp-line) !important;
}

html body[data-design="cinematic-camp-v1"][data-page-key="tool_index"] main :where(.tool-index-row, .tool-jump-card) :where(h2, h3, strong) {
  color: var(--camp-ink) !important;
  -webkit-text-fill-color: var(--camp-ink) !important;
}

html body[data-design="cinematic-camp-v1"][data-page-key="tool_index"] main :where(.tool-index-row, .tool-jump-card) p {
  color: var(--camp-copy) !important;
  -webkit-text-fill-color: var(--camp-copy) !important;
}

html body[data-design="cinematic-camp-v1"][data-page-key="tool_index"] main .tool-result-actions > a {
  color: #081514 !important;
  -webkit-text-fill-color: #081514 !important;
  background: var(--camp-paper) !important;
  border-color: var(--camp-paper) !important;
}

html body[data-design="cinematic-camp-v1"][data-page-key="review_rockbrook_camping_box"] main aside.rb-sidebar,
html body[data-design="cinematic-camp-v1"][data-page-key^="vs_"] main .verdict-winner {
  color: var(--camp-copy) !important;
  background: var(--camp-panel) !important;
  border-color: var(--camp-line) !important;
}

html body[data-design="cinematic-camp-v1"][data-page-key="review_rockbrook_camping_box"] main aside.rb-sidebar :where(h2, h3, h4, strong),
html body[data-design="cinematic-camp-v1"][data-page-key^="vs_"] main .verdict-winner :where(h2, h3, h4, strong) {
  color: var(--camp-ink) !important;
  -webkit-text-fill-color: var(--camp-ink) !important;
}

html body[data-design="cinematic-camp-v1"][data-page-key="review_rockbrook_camping_box"] main aside.rb-sidebar :where(p, li, small),
html body[data-design="cinematic-camp-v1"][data-page-key^="vs_"] main .verdict-winner :where(p, li, small) {
  color: var(--camp-copy) !important;
  -webkit-text-fill-color: var(--camp-copy) !important;
}

html body[data-design="cinematic-camp-v1"] nav.navbar > a.logo {
  display: inline-flex !important;
  align-items: center !important;
  gap: .62rem !important;
  width: max-content !important;
  min-width: 0;
  color: var(--camp-ink) !important;
  -webkit-text-fill-color: var(--camp-ink) !important;
  font-family: "Instrument Sans", "Helvetica Neue", sans-serif !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  text-transform: none !important;
  white-space: nowrap;
  overflow: visible;
}

html body[data-design="cinematic-camp-v1"] nav.navbar > a.logo::after,
html body[data-design="cinematic-camp-v1"] nav.discount-nav > a.logo::after {
  content: none !important;
  display: none !important;
}

body[data-design="cinematic-camp-v1"] .brand-mark {
  flex: 0 0 auto;
  width: 2.35rem;
  height: 1.65rem;
  overflow: visible;
}

body[data-design="cinematic-camp-v1"] .brand-mark :where(path) {
  fill: none;
  stroke-linecap: square;
  stroke-linejoin: miter;
}

body[data-design="cinematic-camp-v1"] .brand-mark-t {
  stroke: var(--camp-ink);
  stroke-width: 1.8;
}

body[data-design="cinematic-camp-v1"] .brand-mark-m {
  stroke: var(--camp-accent-soft);
  stroke-width: 1.8;
}

body[data-design="cinematic-camp-v1"] .brand-wordmark {
  display: grid;
  gap: .18rem;
  min-width: 0;
  line-height: 1;
}

body[data-design="cinematic-camp-v1"] .brand-wordmark-primary {
  color: var(--camp-ink);
  font-size: .91rem;
  font-variation-settings: "wdth" 88;
  font-weight: 650;
  letter-spacing: .055em;
}

body[data-design="cinematic-camp-v1"] .brand-wordmark-secondary {
  color: var(--camp-muted);
  font-size: .54rem;
  font-variation-settings: "wdth" 90;
  font-weight: 560;
  letter-spacing: .19em;
  text-transform: uppercase;
}

body[data-design="cinematic-camp-v1"] nav.navbar > a.logo:hover .brand-wordmark-secondary {
  color: var(--camp-accent-soft);
}

body[data-design="cinematic-camp-v1"][data-page-key="home"] .hero::before {
  content: none !important;
  display: none !important;
}

html body[data-design="cinematic-camp-v1"][data-page-key] nav.navbar .menu-toggle {
  background: transparent !important;
  border: 1px solid var(--camp-line-strong) !important;
  border-radius: .35rem !important;
  box-shadow: none !important;
}

@media (min-width: 1180px) {
  html body[data-design="cinematic-camp-v1"][data-page-key] nav.navbar .nav-links > li.nav-cta-item,
  html body[data-design="cinematic-camp-v1"][data-page-key] nav.navbar .nav-links > li.nav-methodology-item {
    display: list-item !important;
  }
}

/* -------------------------------------------------------------------------- */
/* Canonical usability contract                                                */
/*
 * This final contract resolves geometry inherited from the generated
 * structural bundle. It deliberately favors predictable navigation, readable
 * measure and honest editorial hierarchy over page-specific decoration.
 */

html {
  scroll-padding-top: 5.25rem;
}

html body[data-design="cinematic-camp-v1"] {
  display: block !important;
  padding: 0 !important;
  border: 0 !important;
}

html body[data-design="cinematic-camp-v1"] > :is(nav.navbar, nav.discount-nav) {
  position: sticky !important;
  inset: auto !important;
  top: 0 !important;
  z-index: 1300 !important;
  width: 100% !important;
  min-height: 4.25rem !important;
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: clamp(.7rem, 1.3vw, 1.35rem) !important;
  padding: .55rem var(--camp-gutter) !important;
  background: var(--camp-night-deep) !important;
  border-bottom: 1px solid var(--camp-line) !important;
}

html body[data-design="cinematic-camp-v1"] > :is(nav.navbar, nav.discount-nav) > .logo {
  grid-column: 1 !important;
  grid-row: 1 !important;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

html body[data-design="cinematic-camp-v1"] > :is(nav.navbar, nav.discount-nav) > .nav-links {
  grid-column: 2 !important;
  grid-row: 1 !important;
  min-width: 0;
}

html body[data-design="cinematic-camp-v1"] > :is(nav.navbar, nav.discount-nav) > .lang-switcher {
  grid-column: 3 !important;
  grid-row: 1 !important;
}

html body[data-design="cinematic-camp-v1"] > :is(nav.navbar, nav.discount-nav) .nav-links a.nav-find-cta {
  color: #081514 !important;
  -webkit-text-fill-color: #081514 !important;
  background: var(--camp-paper) !important;
  border-color: var(--camp-paper) !important;
}

html body[data-design="cinematic-camp-v1"] > :is(nav.navbar, nav.discount-nav) .nav-links a.nav-find-cta:hover {
  color: #081514 !important;
  -webkit-text-fill-color: #081514 !important;
  background: var(--camp-accent-soft) !important;
  border-color: var(--camp-accent-soft) !important;
}

body[data-design="cinematic-camp-v1"] :where(h1, h2, h3, h4) {
  max-inline-size: 100%;
  overflow-wrap: anywhere;
  word-break: normal;
  hyphens: auto;
}

body[data-design="cinematic-camp-v1"] main h2 {
  font-size: clamp(2rem, 3.5vw, 3.25rem) !important;
}

body[data-design="cinematic-camp-v1"] :where(
  .vehicle-selector,
  .rb-verdict,
  .brand-comparison-sidebar-inner
) h2 {
  font-size: clamp(1.65rem, 2.4vw, 2.35rem) !important;
  line-height: 1.05 !important;
}

body[data-design="cinematic-camp-v1"] .discount-hero h1 {
  font-size: clamp(2.8rem, 5.4vw, 5.6rem) !important;
}

body[data-design="cinematic-camp-v1"] main :where(
  .review-main,
  .guide-main,
  .faq-main,
  .discount-main,
  .brand-comparison-article,
  .rb-article,
  .article-content,
  .tool-content
) :where(p, li, dd) {
  max-inline-size: 60ch;
  line-height: 1.72;
}

body[data-design="cinematic-camp-v1"] :where(
  .reviews-hub-hero,
  .guides-hub-hero
) {
  grid-template-columns: minmax(27rem, .95fr) minmax(27rem, 1.05fr);
}

body[data-design="cinematic-camp-v1"] :where(
  .reviews-hub-hero,
  .guides-hub-hero,
  .hub-hero,
  .vs-hub-hero,
  .discounts-hero
) h1 {
  max-width: 14ch !important;
  font-size: clamp(3.15rem, 5.2vw, 5.45rem) !important;
  line-height: .97 !important;
}

body[data-design="cinematic-camp-v1"] .brand-comparison-hero h1,
body[data-design="cinematic-camp-v1"] .rb-hero h1,
body[data-design="cinematic-camp-v1"] .tool-hero h1 {
  max-width: 16ch !important;
  font-size: clamp(2.75rem, 4.15vw, 4.65rem) !important;
  line-height: .99 !important;
}

body[data-design="cinematic-camp-v1"][data-page-key="vs_index"] .vs-hub-page,
body[data-design="cinematic-camp-v1"][data-page-key="vs_index"] .vs-hub-hero,
body[data-design="cinematic-camp-v1"][data-page-key="vs_index"] .vs-hub-hero > * {
  min-width: 0;
  max-width: 100%;
}

body[data-design="cinematic-camp-v1"][data-page-key="vs_index"] .vs-hub-hero {
  width: 100%;
  margin-inline: 0;
}

body[data-design="cinematic-camp-v1"] :where(.review-hero-grid, .review-hero-copy) {
  min-width: 0;
}

body[data-design="cinematic-camp-v1"] .review-hero-copy > * {
  max-width: 100%;
}

body[data-design="cinematic-camp-v1"] :where(
  .btn-buy,
  .copy-btn-large,
  .tool-submit,
  .shop-btn,
  .full-details-link,
  .table-buy-btn,
  .discount-cta-btn.primary,
  .btn-all-codes,
  .table-filter button[aria-pressed="true"],
  .guide-table-filter button[aria-pressed="true"]
) {
  min-height: 2.9rem;
  color: #081514 !important;
  -webkit-text-fill-color: #081514 !important;
  background: var(--camp-paper) !important;
  border-color: var(--camp-paper) !important;
  box-shadow: none !important;
  font-weight: 650 !important;
}

/* Article and ranking CTAs always use the same foreground contract. */
html body[data-design="cinematic-camp-v1"][data-page-key] main :is(
  a.btn-buy,
  button.btn-buy,
  a.btn-primary,
  button.btn-primary,
  a.faq-cta-primary,
  button.faq-cta-primary,
  a.hub-hero-primary,
  button.hub-hero-primary
) {
  color: #081514 !important;
  -webkit-text-fill-color: #081514 !important;
  background: var(--camp-paper) !important;
  border-color: var(--camp-paper) !important;
}

html body[data-design="cinematic-camp-v1"][data-page-key] main :is(
  a.btn-buy,
  button.btn-buy,
  a.btn-primary,
  button.btn-primary,
  a.faq-cta-primary,
  button.faq-cta-primary,
  a.hub-hero-primary,
  button.hub-hero-primary
):hover {
  color: #081514 !important;
  -webkit-text-fill-color: #081514 !important;
  background: var(--camp-accent-soft) !important;
  border-color: var(--camp-accent-soft) !important;
}

body[data-design="cinematic-camp-v1"] :where(
  .btn-review,
  .table-filter button:not([aria-pressed="true"]),
  .guide-table-filter button:not([aria-pressed="true"])
) {
  min-height: 2.9rem;
  color: var(--camp-ink) !important;
  -webkit-text-fill-color: var(--camp-ink) !important;
  background: transparent !important;
  border-color: var(--camp-line-strong) !important;
  box-shadow: none !important;
}

body[data-design="cinematic-camp-v1"] :where(
  .btn-buy,
  .copy-btn-large,
  .tool-submit,
  .shop-btn,
  .full-details-link,
  .table-buy-btn,
  .discount-cta-btn.primary,
  .btn-all-codes
):hover {
  color: #081514 !important;
  -webkit-text-fill-color: #081514 !important;
  background: var(--camp-accent-soft) !important;
  border-color: var(--camp-accent-soft) !important;
}

body[data-design="cinematic-camp-v1"][data-page-key="home"] .comparison-table tbody tr {
  transition: background-color 160ms ease;
}

body[data-design="cinematic-camp-v1"][data-page-key="home"] .comparison-table tbody tr:hover {
  background: var(--camp-panel-soft) !important;
}

body[data-design="cinematic-camp-v1"][data-page-key="home"] .comparison-table :where(th, td) {
  vertical-align: middle;
}

body[data-design="cinematic-camp-v1"][data-page-key="vs_index"] .quick-picks {
  padding: clamp(3rem, 6vw, 5rem) 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid var(--camp-line) !important;
  border-radius: 0 !important;
}

body[data-design="cinematic-camp-v1"][data-page-key="vs_index"] .quick-picks > h2 {
  max-width: 16ch;
  margin-inline: 0;
  text-align: left;
}

body[data-design="cinematic-camp-v1"][data-page-key="vs_index"] .quick-picks-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(1.5rem, 3vw, 3rem);
}

body[data-design="cinematic-camp-v1"][data-page-key="vs_index"] .quick-pick {
  padding: 1.4rem 0 0;
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid var(--camp-line-strong) !important;
  border-radius: 0 !important;
}

body[data-design="cinematic-camp-v1"] :where(
  .review-hero-actions,
  .review-offer-actions,
  .product-pick-cta,
  .brand-comparison-hero-actions,
  .rb-hero-actions,
  .guide-hero-actions,
  .tool-hero-actions,
  .faq-cta-actions,
  .vs-cta-buttons
) :where(a, button) {
  min-height: 2.9rem;
}

@media (max-width: 64rem) {
  html body[data-design="cinematic-camp-v1"] > :is(nav.navbar, nav.discount-nav) {
    grid-template-columns: minmax(0, 1fr) auto auto !important;
    gap: .55rem !important;
    min-height: var(--tm-mobile-nav-height, 4.25rem) !important;
    padding: calc(.55rem + env(safe-area-inset-top)) max(.85rem, env(safe-area-inset-right)) .55rem max(.85rem, env(safe-area-inset-left)) !important;
  }

  html body[data-design="cinematic-camp-v1"] > :is(nav.navbar, nav.discount-nav) > .lang-switcher {
    position: relative !important;
    inset: auto !important;
    z-index: 1 !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: end;
  }

  html body[data-design="cinematic-camp-v1"] > :is(nav.navbar, nav.discount-nav) .lang-current {
    min-width: 2.75rem !important;
    min-height: 2.75rem !important;
    padding: .4rem .2rem !important;
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
  }

  html body[data-design="cinematic-camp-v1"] > :is(nav.navbar, nav.discount-nav) > .menu-toggle {
    grid-column: 3 !important;
    grid-row: 1 !important;
    margin: 0 !important;
  }

  html body[data-design="cinematic-camp-v1"] > :is(nav.navbar, nav.discount-nav) > .nav-links {
    grid-column: auto !important;
    grid-row: auto !important;
    top: var(--tm-mobile-nav-height, 4.25rem) !important;
  }

  body[data-design="cinematic-camp-v1"] .menu-overlay {
    top: var(--tm-mobile-nav-height, 4.25rem) !important;
  }

  body[data-design="cinematic-camp-v1"] :where(
    .reviews-hub-hero,
    .guides-hub-hero
  ) {
    grid-template-columns: 1fr;
  }

  body[data-design="cinematic-camp-v1"] :where(
    .reviews-hub-hero,
    .guides-hub-hero,
    .hub-hero,
    .vs-hub-hero,
    .discounts-hero
  ) h1 {
    max-width: 15ch !important;
    font-size: clamp(2.65rem, 9vw, 4.25rem) !important;
  }
}

@media (max-width: 52rem) {
  body[data-design="cinematic-camp-v1"].review-modern .review-hero-media,
  body[data-design="cinematic-camp-v1"].review-modern .review-hero-copy {
    min-height: 35rem !important;
    height: 35rem !important;
  }

  body[data-design="cinematic-camp-v1"].review-modern .review-hero-copy {
    padding: 6.25rem 1.25rem 4.75rem !important;
  }

  body[data-design="cinematic-camp-v1"].review-modern .review-hero .breadcrumb {
    font-size: .82rem !important;
  }

  body[data-design="cinematic-camp-v1"].review-modern .review-hero-insights {
    position: relative !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    width: auto !important;
    grid-template-columns: minmax(6.5rem, .65fr) minmax(0, 1.35fr) !important;
  }

  body[data-design="cinematic-camp-v1"].review-modern .review-hero-insight-trust {
    grid-column: 2 !important;
    padding-left: 1.25rem !important;
    border-left: 1px solid var(--camp-line) !important;
  }

  body[data-design="cinematic-camp-v1"].review-modern .review-hero-insight,
  body[data-design="cinematic-camp-v1"].review-modern .review-hero-insight:first-child {
    padding-top: 1.1rem !important;
    padding-bottom: 1.1rem !important;
  }

  body[data-design="cinematic-camp-v1"].review-modern .review-decision-v3 {
    padding-top: 4rem !important;
  }
}

@media (max-width: 45rem) {
  html {
    scroll-padding-top: 4.75rem;
  }

  body[data-design="cinematic-camp-v1"][data-page-key="guides_index"] .guides-hub,
  body[data-design="cinematic-camp-v1"][data-page-key="reviews_index"] .reviews-hub {
    padding-inline: 0 !important;
  }

  body[data-design="cinematic-camp-v1"][data-page-key="guides_index"] .guides-hub > :where(.guides-hub-hero, section),
  body[data-design="cinematic-camp-v1"][data-page-key="reviews_index"] .reviews-hub > :where(.reviews-hub-hero, .reviews-grid, .reviews-guide, .reviews-cta) {
    width: calc(100% - (2 * var(--tm-gutter, 1rem))) !important;
    max-width: none;
    margin-inline: var(--tm-gutter, 1rem) !important;
  }

  body[data-design="cinematic-camp-v1"][data-page-key="guides_index"] .guides-hub > section :where(.guides-grid, .guide-topic-grid, .guide-link-grid) {
    width: 100% !important;
    margin-inline: 0 !important;
    padding-inline: 0 !important;
  }

  body[data-design="cinematic-camp-v1"][data-page-key="reviews_index"] .reviews-hub > .reviews-grid {
    padding-inline: 0 !important;
  }

  body[data-design="cinematic-camp-v1"] main :where(
    .review-main,
    .guide-main,
    .faq-main,
    .discount-main,
    .brand-comparison-article,
    .rb-article,
    .article-content,
    .tool-content
  ) :where(p, li, dd) {
    max-inline-size: none;
    line-height: 1.68;
  }

  html[lang="de"] body[data-design="cinematic-camp-v1"] .review-hero h1 {
    font-size: clamp(2.2rem, 10.8vw, 2.68rem) !important;
  }

  body[data-design="cinematic-camp-v1"][data-page-key="vs_index"] .vs-hub-page {
    width: 100%;
    padding-inline: 0 !important;
    overflow: visible;
  }

  body[data-design="cinematic-camp-v1"][data-page-key="vs_index"] .vs-hub-hero {
    min-height: 0;
    padding: 3.25rem var(--tm-gutter, 1rem) 2.5rem !important;
    overflow: visible;
  }

  body[data-design="cinematic-camp-v1"][data-page-key="vs_index"] .vs-hub-page > :where(
    .breadcrumb,
    .vs-cards-grid,
    .vs-guide,
    .quick-picks
  ) {
    width: calc(100% - (2 * var(--tm-gutter, 1rem))) !important;
    max-width: none;
    margin-inline: var(--tm-gutter, 1rem) !important;
  }

  body[data-design="cinematic-camp-v1"][data-page-key="vs_index"] .vs-hub-page > :where(
    .vs-cards-grid,
    .vs-guide
  ) {
    padding-inline: 0 !important;
  }

  body[data-design="cinematic-camp-v1"][data-page-key="vs_index"] .quick-picks-grid {
    grid-template-columns: 1fr;
  }

  body[data-design="cinematic-camp-v1"] :where(
    .review-hero-actions,
    .review-offer-actions,
    .product-pick-cta,
    .brand-comparison-hero-actions,
    .rb-hero-actions,
    .guide-hero-actions,
    .tool-hero-actions,
    .faq-cta-actions,
    .vs-cta-buttons
  ) {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }

  body[data-design="cinematic-camp-v1"] :where(
    .review-hero-actions,
    .review-offer-actions,
    .product-pick-cta,
    .brand-comparison-hero-actions,
    .rb-hero-actions,
    .guide-hero-actions,
    .tool-hero-actions,
    .faq-cta-actions,
    .vs-cta-buttons
  ) :where(a, button) {
    width: 100%;
  }
}

@media (max-width: 22.5rem) {
  html body[data-design="cinematic-camp-v1"] > :is(nav.navbar, nav.discount-nav) {
    gap: .38rem !important;
    padding-right: .7rem !important;
    padding-left: .7rem !important;
  }

  html body[data-design="cinematic-camp-v1"] nav.navbar > a.logo {
    gap: .42rem !important;
  }

  body[data-design="cinematic-camp-v1"] .brand-mark {
    width: 1.9rem;
    height: 1.42rem;
  }

  body[data-design="cinematic-camp-v1"] .brand-wordmark-primary {
    font-size: .78rem;
  }

  body[data-design="cinematic-camp-v1"] .brand-wordmark-secondary {
    font-size: .46rem;
    letter-spacing: .14em;
  }

  body[data-design="cinematic-camp-v1"] .lang-current,
  body[data-design="cinematic-camp-v1"] .menu-toggle {
    min-width: 2.75rem !important;
    width: 2.75rem !important;
    min-height: 2.75rem !important;
    height: 2.75rem !important;
  }

  body[data-design="cinematic-camp-v1"] :where(
    .review-hero,
    .reviews-hub-hero,
    .guides-hub-hero,
    .hub-hero,
    .vs-hero,
    .vs-hub-hero,
    .faq-hero,
    .paa-hero,
    .discounts-hero,
    .discount-hero,
    .brand-comparison-hero,
    .rb-hero,
    .tool-hero,
    .guide-hero,
    .article-hero
  ) h1 {
    font-size: clamp(2.35rem, 12vw, 3rem) !important;
  }
}

/* Review clarity v4 — dark luxury, editorial restraint and stronger reading contrast. */
body[data-design="cinematic-camp-v1"].review-modern .review-hero-copy {
  color: var(--camp-ink) !important;
}

body[data-design="cinematic-camp-v1"].review-modern :where(
  .review-hero-deck,
  .review-tldr-copy,
  .review-offer-card > p,
  .review-offer-checked,
  .ownership-detail-header p,
  .ownership-accordion-panel p,
  .ownership-sources p,
  .product-evidence-gallery-intro,
  .product-evidence-limit,
  .review-article-body > p,
  .review-article-body > ul,
  .review-article-body > ol,
  .review-article-body li,
  .cta-block p,
  .review-next-step span,
  .review-byline
) {
  color: oklch(88% .014 84) !important;
}

body[data-design="cinematic-camp-v1"].review-modern :where(
  .review-article-body > p,
  .review-article-body > ul,
  .review-article-body > ol,
  .ownership-accordion-panel p,
  .ownership-sources p
) {
  font-size: clamp(1rem, .25vw + .98rem, 1.075rem) !important;
  line-height: 1.76 !important;
}

body[data-design="cinematic-camp-v1"].review-modern .review-hero-deck {
  max-width: 50ch !important;
  font-size: clamp(1rem, .35vw + .94rem, 1.15rem) !important;
  line-height: 1.65 !important;
}

body[data-design="cinematic-camp-v1"].review-modern .review-jump-nav {
  color: var(--camp-copy) !important;
  background: var(--camp-night) !important;
  border-color: var(--camp-line) !important;
}

body[data-design="cinematic-camp-v1"].review-modern .review-jump-nav a {
  color: var(--camp-ink) !important;
  background: transparent !important;
  border-color: var(--camp-line) !important;
  font-size: .92rem !important;
  font-weight: 620 !important;
  line-height: 1.35 !important;
  text-decoration: none !important;
}

body[data-design="cinematic-camp-v1"].review-modern .review-jump-nav a:hover {
  color: var(--camp-accent-soft) !important;
}

body[data-design="cinematic-camp-v1"].review-modern .review-jump-nav span {
  color: var(--camp-accent-soft) !important;
  font-size: .72rem !important;
  font-weight: 650 !important;
  letter-spacing: .08em !important;
}

body[data-design="cinematic-camp-v1"].review-modern .review-score-display {
  color: var(--camp-ink) !important;
}

body[data-design="cinematic-camp-v1"].review-modern .review-score-display strong {
  font-size: clamp(1.55rem, 2vw, 2rem) !important;
  line-height: 1 !important;
}

body[data-design="cinematic-camp-v1"].review-modern .review-score-display small {
  color: var(--camp-muted) !important;
  font-size: .74rem !important;
  font-weight: 560 !important;
  letter-spacing: .01em !important;
}

body[data-design="cinematic-camp-v1"].review-modern .review-offer-card {
  color: var(--camp-copy) !important;
  background: transparent !important;
  border-color: var(--camp-line-strong) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

body[data-design="cinematic-camp-v1"].review-modern .review-region-actions a {
  text-decoration: none !important;
}

body[data-design="cinematic-camp-v1"].review-modern .ownership-detail-list {
  background: transparent !important;
  border-color: var(--camp-line-strong) !important;
  border-radius: 0 !important;
}

body[data-design="cinematic-camp-v1"].review-modern .ownership-detail-list > li,
body[data-design="cinematic-camp-v1"].review-modern .ownership-accordion-panel {
  background: transparent !important;
  border-color: var(--camp-line) !important;
}

body[data-design="cinematic-camp-v1"].review-modern .review-article-body > h2 {
  font-size: clamp(2.25rem, 3.4vw, 3rem) !important;
  line-height: 1.04 !important;
}

body[data-design="cinematic-camp-v1"].review-modern .review-article-body > h3 {
  font-size: clamp(1.35rem, 1.8vw, 1.65rem) !important;
  line-height: 1.18 !important;
}

body[data-design="cinematic-camp-v1"].review-modern .cta-block {
  color: var(--camp-copy) !important;
  background: transparent !important;
  border-color: var(--camp-line-strong) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

body[data-design="cinematic-camp-v1"].review-modern .review-next-step {
  background: transparent !important;
  border-color: var(--camp-line) !important;
  border-radius: 0 !important;
  text-decoration: none !important;
}

body[data-design="cinematic-camp-v1"].review-modern .review-next-step :where(strong, b) {
  color: var(--camp-ink) !important;
  text-decoration: none !important;
}

body[data-design="cinematic-camp-v1"].review-modern .review-next-step:hover :where(strong, b) {
  text-decoration: underline !important;
  text-underline-offset: .18em;
}

@media (max-width: 52rem) {
  body[data-design="cinematic-camp-v1"].review-modern .review-hero-copy {
    text-align: left !important;
  }

  body[data-design="cinematic-camp-v1"].review-modern .review-hero h1 {
    max-width: 11ch !important;
    font-size: clamp(2.55rem, 11vw, 3.45rem) !important;
    line-height: .98 !important;
  }

  body[data-design="cinematic-camp-v1"].review-modern .review-hero-actions {
    display: flex !important;
    grid-template-columns: none !important;
    align-items: flex-start !important;
  }

  body[data-design="cinematic-camp-v1"].review-modern .review-hero-actions :where(a, button) {
    width: auto !important;
  }

  body[data-design="cinematic-camp-v1"].review-modern .review-jump-nav a {
    font-size: .86rem !important;
  }
}

/* -------------------------------------------------------------------------- */
/* Readability contract v1                                                     */
/*
 * The editorial system used to let dense legacy components shrink supporting
 * copy to 10–15px. This final layer keeps the hierarchy, but makes every piece
 * of decision-making text legible on mobile and desktop. Tables retain their
 * horizontal scrollers instead of solving density by reducing the type.
 */

:root {
  --camp-copy: oklch(88% .014 84);
  --camp-muted: oklch(77% .016 174);
  --type-body: 1rem;
  --type-secondary: .9375rem;
  --type-meta: .875rem;
  --type-label: .8125rem;
}

body[data-design="cinematic-camp-v1"] {
  font-size: var(--type-body) !important;
  font-kerning: normal;
}

body[data-design="cinematic-camp-v1"] :where(
  main,
  .review-main,
  .discount-main,
  .guide-main,
  .faq-main,
  .article-content,
  .brand-comparison-article,
  .rb-article,
  .reviews-hub,
  .guides-hub,
  .discounts-page,
  .vs-page
) :where(p, li, dd, blockquote) {
  font-size: var(--type-body) !important;
  line-height: 1.72 !important;
}

body[data-design="cinematic-camp-v1"] :where(
  .review-main,
  .discount-main,
  .guide-main,
  .faq-main,
  .article-content,
  .brand-comparison-article,
  .rb-article,
  .comparison-section,
  .reviews-section
) :where(td) {
  font-size: var(--type-body) !important;
  line-height: 1.55 !important;
  font-variant-numeric: tabular-nums;
}

body[data-design="cinematic-camp-v1"] :where(
  .review-main,
  .discount-main,
  .guide-main,
  .faq-main,
  .article-content,
  .brand-comparison-article,
  .rb-article,
  .comparison-section,
  .reviews-section
) :where(th) {
  font-size: var(--type-meta) !important;
  line-height: 1.45 !important;
  letter-spacing: .035em !important;
  font-variant-numeric: tabular-nums;
}

body[data-design="cinematic-camp-v1"] :where(
  figcaption,
  small,
  .breadcrumb,
  .breadcrumb a,
  .breadcrumb span,
  .review-disclosure,
  .discount-disclosure,
  .discount-meta,
  .review-byline,
  .reviews-hub-byline,
  .guide-meta,
  .faq-meta,
  .brand-comparison-byline,
  .rb-byline,
  .hero-disclosure,
  .disclaimer
) {
  color: var(--camp-muted) !important;
  font-size: var(--type-meta) !important;
  line-height: 1.55 !important;
  opacity: 1 !important;
}

body[data-design="cinematic-camp-v1"] :where(
  button,
  summary,
  .btn-review,
  .btn-buy,
  .table-buy-btn,
  .review-card-cta,
  .cta-text-link,
  .review-jump-nav a,
  .nav-links a
) {
  font-size: var(--type-meta) !important;
  line-height: 1.35 !important;
}

body[data-design="cinematic-camp-v1"] :where(
  .table-filter-status,
  .review-card-type,
  .product-pick-meta,
  .brand-meta,
  .guide-card-meta,
  .vs-card-meta,
  .finder-match-meta
) {
  color: var(--camp-muted) !important;
  font-size: var(--type-secondary) !important;
  line-height: 1.5 !important;
  opacity: 1 !important;
}

body[data-design="cinematic-camp-v1"] :where(
  .eyebrow,
  .hero-eyebrow,
  .section-tag,
  .updated-badge,
  .guide-badge,
  .review-card-badge,
  .review-card-brand,
  .review-card-discount,
  .product-flag,
  .discount-badge,
  .discount-code-tag,
  .cta-block-label,
  .feature-flag,
  .quick-codes .brand,
  .quick-codes .savings,
  .review-jump-nav span,
  .review-score-display small
) {
  font-size: var(--type-label) !important;
  line-height: 1.35 !important;
  opacity: 1 !important;
}

body[data-design="cinematic-camp-v1"] :where(
  .review-card-summary,
  .guide-card-summary,
  .vs-card-summary,
  .brand-discount-card p,
  .discount-card p,
  .partner-card p,
  .faq-item p
) {
  color: var(--camp-copy) !important;
  font-size: var(--type-body) !important;
  line-height: 1.65 !important;
  opacity: 1 !important;
}

body[data-design="cinematic-camp-v1"] :where(footer, .footer, .site-footer) :where(p, li, a, small) {
  color: var(--camp-muted) !important;
  font-size: var(--type-meta) !important;
  line-height: 1.55 !important;
  opacity: 1 !important;
}

body[data-design="cinematic-camp-v1"] .quick-codes :where(.brand, .savings),
body[data-design="cinematic-camp-v1"] .quick-codes summary {
  color: var(--camp-copy) !important;
}

body[data-design="cinematic-camp-v1"] .brand-wordmark-secondary,
body[data-design="cinematic-camp-v1"].review-modern .review-jump-nav a > span,
body[data-design="cinematic-camp-v1"].review-modern .review-score-display small {
  font-size: var(--type-label) !important;
  line-height: 1.35 !important;
  opacity: 1 !important;
}

body[data-design="cinematic-camp-v1"] :where(.review-main, .discount-main, .guide-main, .faq-main, .article-content) > :where(p, ul, ol, blockquote) {
  max-inline-size: 65ch;
}

@media (max-width: 52rem) {
  body[data-design="cinematic-camp-v1"] :where(.breadcrumb, nav[class*="breadcrumb"], nav[aria-label="Breadcrumb"]) {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: baseline !important;
    gap: .2rem .4rem !important;
    max-width: 100% !important;
    white-space: normal !important;
  }

  body[data-design="cinematic-camp-v1"] :where(.breadcrumb, nav[class*="breadcrumb"], nav[aria-label="Breadcrumb"]) :where(a, span, li) {
    min-width: 0;
    max-width: 100% !important;
    overflow: visible !important;
    white-space: normal !important;
    text-overflow: clip !important;
  }

  body[data-design="cinematic-camp-v1"] :where(
    .review-main,
    .discount-main,
    .guide-main,
    .faq-main,
    .article-content,
    .brand-comparison-article,
    .rb-article,
    .comparison-section,
    .reviews-section
  ) :where(td) {
    min-width: 7.5rem;
  }

  body[data-design="cinematic-camp-v1"] :where(
    .table-scroll,
    .table-container,
    .comparison-table-wrapper,
    .guide-comparison-table
  ) {
    -webkit-overflow-scrolling: touch;
    scrollbar-gutter: stable;
  }
}
