/* Aquora / River Series — Phase 0 design foundation (layout unchanged) */

:root {
  /* Aquora / Texas palette */
  --aquora-cream: #F5F0E8;
  --aquora-sand: #E8DDCB;
  --aquora-navy: #1B2838;
  --aquora-navy-2: #24364A;
  --aquora-rust: #B85C38;
  --aquora-rust-dark: #8F3F27;
  --aquora-gold: #C99A4A;
  --aquora-charcoal: #242424;
  --aquora-white: #FFFFFF;
  --aquora-muted: #6F6A61;

  /* Legacy aliases — remapped for Aquora (keeps existing class behavior) */
  --cold-375: var(--aquora-rust);
  --cold-400: var(--aquora-rust-dark);
  --cold: var(--aquora-rust);
  --sauna: var(--aquora-navy);
  --black: #000;
  --white: var(--aquora-white);
  --grey-50: var(--aquora-cream);
  --grey-75: #f8f6f2;
  --grey-100: var(--aquora-sand);
  --grey-175: #e0d8cc;
  --grey-200: #d2cdc4;
  --grey-300: #8d9ba1;
  --grey-575: var(--aquora-muted);
  --grey-600: #4f5a5f;
  --grey-875: var(--aquora-charcoal);
  --grey-900: #171717;
  --page-width: 128rem;
  --font: "Assistant", system-ui, -apple-system, sans-serif;
  --font-display: "Bitter", Georgia, "Times New Roman", serif;
}

*, *::before, *::after { box-sizing: border-box; }

html { font-size: 62.5%; scroll-behavior: smooth; }

[id] {
  scroll-margin-top: 8rem;
}

body {
  margin: 0;
  font-family: var(--font);
  font-size: 1.6rem;
  line-height: 1.5;
  color: var(--grey-875);
  background: var(--white);
  letter-spacing: 0.06rem;
  -webkit-font-smoothing: antialiased;
  overflow-x: clip;
}

/* Phase 0 — display typography on major headings only */
.line-up__heading h2,
.plunge03-wrapper h2,
.core-values__heading h2,
.core-values__heading h3,
.mansory__heading h2,
.padded-banner__content .title,
.pdp-buybox__title,
.pdp-feature__content h2,
.pdp-section-heading h2,
.pdp-compare-nudge__copy h2,
.pdp-highlight-grid h2,
.pdp-stats__heading,
.pdp-finance__inner h2,
.pdp-dimensions__block h3 {
  font-family: var(--font-display);
  letter-spacing: -0.02em;
}

img { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration: none; }
button { font-family: inherit; cursor: pointer; border: none; background: none; }
ul { list-style: none; margin: 0; padding: 0; }

.container {
  width: 100%;
  max-width: var(--page-width);
  margin: 0 auto;
  padding-left: 2rem;
  padding-right: 2rem;
}

/* ── Buttons (btn-plunge) ── */
.btn-plunge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.2;
  padding: 1.4rem 4.4rem;
  border-radius: 3rem;
  border: 2.5px solid transparent;
  transition: all 0.175s ease;
  white-space: nowrap;
  cursor: pointer;
  text-decoration: none;
  position: relative;
  min-width: 17rem;
}

.btn-plunge--black {
  background: var(--aquora-navy);
  color: var(--aquora-white);
}

.btn-plunge--black:hover {
  background: var(--aquora-rust-dark);
}

.btn-plunge--white {
  background: var(--aquora-white);
  color: var(--aquora-charcoal);
}

.btn-plunge--white:hover {
  background: var(--aquora-cream);
}

.btn-plunge--large { padding: 1.9rem 4.4rem; border-radius: 5rem; font-size: 1.8rem; }

.btn-plunge--small { padding: 1rem 2.4rem; min-width: 0; font-size: 1.3rem; }

.btn-plunge--tertiary {
  background: transparent;
  padding: 0;
  min-width: 0;
  text-decoration: underline;
  text-underline-offset: 2px;
  color: var(--aquora-charcoal);
}

.btn-plunge--tertiary:hover {
  color: var(--aquora-rust);
}

/* ── Badges ── */
.highlight {
  display: inline-block;
  background: var(--cold-375);
  color: var(--white);
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1;
  padding: 0.5rem 1rem;
  border-radius: 0.2rem;
  letter-spacing: 0.02em;
}

@media (min-width: 1024px) {
  .highlight { font-size: 1.7rem; padding: 1.4rem 1.6rem; }
}

.highlight-badge {
  display: inline-block;
  background: var(--cold-375);
  color: var(--white);
  font-size: 1.2rem;
  font-weight: 700;
  padding: 0.6rem 1rem;
  border-radius: 0.2rem;
}

.title-append {
  font-weight: 700;
  background: linear-gradient(90deg, var(--aquora-gold) 5%, var(--aquora-rust) 50%, var(--aquora-rust-dark) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* ── Announcement ── */
.announcement {
  background: var(--aquora-navy);
  color: var(--aquora-white);
  text-align: center;
  padding: 1rem 2rem;
  font-size: 1.3rem;
  font-weight: 600;
}

.announcement a {
  text-decoration: underline;
  text-underline-offset: 2px;
  color: var(--aquora-white);
}

.announcement a:hover {
  color: var(--aquora-gold);
}

.announcement a::after {
  content: " →";
  text-decoration: none;
}

/* ── Header ── */
.header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: var(--aquora-white);
  border-bottom: 1px solid var(--grey-175);
}

.header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 6.4rem;
  height: auto;
  padding: 0.8rem 0;
  gap: 1.6rem;
}

.header__logo {
  flex-shrink: 0;
  text-decoration: none;
}

.header__logo img { height: 2.2rem; width: auto; }

.header__logo-text {
  display: flex;
  flex-direction: column;
  line-height: 1.05;
}

.header__logo-name {
  font-family: var(--font-display);
  font-size: 2.2rem;
  font-weight: 700;
  color: var(--aquora-navy);
  letter-spacing: -0.02em;
}

.header__logo-series {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  margin-top: 0.15rem;
  font-family: var(--font);
  font-size: 0.95rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--aquora-muted);
}

.header__logo-star {
  font-size: 0.75rem;
  color: var(--aquora-gold);
  line-height: 1;
}

.header__nav {
  display: none;
  gap: 2rem;
  align-items: center;
  flex: 1;
  justify-content: center;
}

.header__nav > a,
.header__nav > button {
  font-size: 1.5rem;
  font-weight: 600;
  color: var(--aquora-charcoal);
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  white-space: nowrap;
}

.header__nav > a:not(.header__cta):hover,
.header__nav > button:hover {
  color: var(--aquora-rust);
}

.header__nav .header__cta {
  margin-left: 0.4rem;
  min-width: 0;
  padding: 1rem 2rem;
  font-size: 1.3rem;
  flex-shrink: 0;
}

.header__actions {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  flex-shrink: 0;
}

.header__actions a,
.header__actions button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 4rem;
  height: 4rem;
  color: var(--aquora-charcoal);
}

.header__actions a:hover,
.header__actions button:hover {
  color: var(--aquora-rust);
}

.header__actions svg { width: 2.2rem; height: 2.2rem; }

.header__cart-count {
  font-size: 1.2rem;
  font-weight: 600;
}

.header__menu-toggle { display: flex; }

@media (min-width: 1024px) and (max-width: 1199px) {
  .header__nav {
    gap: 1.2rem;
  }

  .header__nav > a:not(.header__cta) {
    font-size: 1.35rem;
  }

  .header__nav .header__cta {
    padding: 0.9rem 1.6rem;
    font-size: 1.2rem;
  }
}

@media (min-width: 1024px) {
  .header__nav { display: flex; }
  .header__menu-toggle { display: none; }
}

.mobile-nav {
  display: none;
  position: fixed;
  inset: 6.4rem 0 0;
  background: var(--aquora-white);
  z-index: 99;
  padding: 2rem;
  overflow-y: auto;
}

.mobile-nav.is-open { display: block; }

.mobile-nav__cta {
  display: flex;
  justify-content: center;
  width: 100%;
  margin-bottom: 2rem;
  padding: 1.4rem 2rem;
  border-bottom: none;
}

.mobile-nav a:not(.mobile-nav__cta) {
  display: block;
  padding: 1.4rem 0;
  font-size: 1.7rem;
  font-weight: 600;
  border-bottom: 1px solid var(--grey-175);
  color: var(--aquora-charcoal);
}

.mobile-nav a:not(.mobile-nav__cta):hover {
  color: var(--aquora-rust);
}

/* ── Full bleed hero ── */
.full-bleed-hero {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 60rem;
  padding: 5rem 0;
  isolation: isolate;
  overflow: hidden;
}

.full-bleed-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0, calc(var(--overlay-opacity, 0) / 100));
  z-index: -1;
}

.full-bleed-hero__bg {
  position: absolute;
  inset: 0;
  z-index: -2;
}

.full-bleed-hero__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.full-bleed-hero__content {
  position: relative;
  z-index: 1;
  max-width: 55rem;
  padding: 0 2rem;
}

.full-bleed-hero__content--light { color: var(--white); }

.full-bleed-hero__content--light .hero-title,
.full-bleed-hero__content--light .heading__wysiwyg p { color: var(--white); }

.full-bleed-hero__content--light .heading__wysiwyg p { opacity: 0.85; }

.full-bleed-hero__content .highlight { margin-bottom: 2.5rem; }

.hero-title {
  font-family: var(--font-display);
  font-size: clamp(3.4rem, 5vw, 5.6rem);
  font-weight: 700;
  line-height: 1.1;
  margin: 0 0 2rem;
  color: var(--grey-875);
  letter-spacing: -0.02em;
}

.heading__wysiwyg p {
  font-size: clamp(1.6rem, 2vw, 2rem);
  line-height: 1.45;
  margin: 0 0 3rem;
  opacity: 0.85;
}

.full-bleed-hero__buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}

.full-bleed-hero--center .full-bleed-hero__inner {
  text-align: center;
  margin: 0 auto;
}

.full-bleed-hero--center .full-bleed-hero__buttons { justify-content: center; }

.full-bleed-hero--left .container {
  width: 100%;
  max-width: var(--page-width);
  margin: 0 auto;
}

@media (min-width: 1024px) {
  .full-bleed-hero { min-height: 64rem; }
  .full-bleed-hero--small { min-height: 56rem; }
}

@media (max-width: 1023px) {
  .full-bleed-hero__content.centered-mobile {
    text-align: center;
    margin: 0 auto;
  }
  .full-bleed-hero__content.centered-mobile .full-bleed-hero__buttons { justify-content: center; }
}

.hero-rating {
  display: block;
  font-size: 1.8rem;
  opacity: 0.85;
  margin-bottom: 1rem;
}

/* ── Aquora main hero (Phase 2) ── */
.aquora-hero-main.full-bleed-hero--aquora::before {
  background: linear-gradient(
    90deg,
    rgba(10, 16, 24, 0.68) 0%,
    rgba(10, 16, 24, 0.45) 38%,
    rgba(10, 16, 24, 0.12) 100%
  );
}

.aquora-hero-main .full-bleed-hero__bg img {
  object-fit: cover;
  object-position: 66% center;
}

.full-bleed-hero--aquora::before {
  background: rgba(27, 40, 56, calc(var(--overlay-opacity, 42) / 100));
}

.full-bleed-hero--aquora .hero-title {
  color: var(--aquora-cream);
}

.full-bleed-hero--aquora .heading__wysiwyg p {
  color: var(--aquora-cream);
  opacity: 0.92;
}

.full-bleed-hero--aquora .highlight {
  background: var(--aquora-rust);
  color: var(--aquora-white);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-size: 1.1rem;
}

@media (min-width: 1024px) {
  .full-bleed-hero--aquora .highlight {
    font-size: 1.4rem;
  }
}

.hero-badge__star {
  color: var(--aquora-gold);
  margin-right: 0.35rem;
  font-size: 0.9em;
}

.full-bleed-hero--aquora .btn-plunge--white {
  background: var(--aquora-cream);
  color: var(--aquora-navy);
  border-color: var(--aquora-cream);
}

.full-bleed-hero--aquora .btn-plunge--white:hover {
  background: var(--aquora-white);
  color: var(--aquora-rust-dark);
  border-color: var(--aquora-gold);
}

.btn-plunge--hero-outline {
  background: transparent;
  color: var(--aquora-cream);
  border: 2.5px solid rgba(245, 240, 232, 0.75);
}

.btn-plunge--hero-outline:hover {
  background: rgba(245, 240, 232, 0.1);
  border-color: var(--aquora-gold);
  color: var(--aquora-gold);
}

.hero-trust-microcopy {
  margin: 2.4rem 0 0;
  font-size: 1.25rem;
  font-weight: 600;
  letter-spacing: 0.03em;
  line-height: 1.5;
  color: var(--aquora-cream);
  opacity: 0.88;
}

@media (max-width: 1023px) {
  .hero-trust-microcopy {
    font-size: 1.15rem;
    max-width: 34rem;
    margin-left: auto;
    margin-right: auto;
  }

  .full-bleed-hero--aquora .hero-title {
    font-size: clamp(3rem, 8vw, 3.8rem);
  }

  .aquora-hero-main.full-bleed-hero--aquora::before {
    background: linear-gradient(
      180deg,
      rgba(10, 16, 24, 0.72) 0%,
      rgba(10, 16, 24, 0.48) 55%,
      rgba(10, 16, 24, 0.18) 100%
    );
  }

  .aquora-hero-main .hero-title,
  .aquora-hero-main .heading__wysiwyg p {
    text-shadow: 0 2px 18px rgba(10, 16, 24, 0.35);
  }
}

/* ── Aquora financing hero (Phase 6) ── */
.full-bleed-hero--center.full-bleed-hero--financing .full-bleed-hero__content {
  max-width: 62rem;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.full-bleed-hero--center.full-bleed-hero--financing .hero-trust-microcopy {
  max-width: 40rem;
}

/* ── Aquora model finder hero (Phase 11) ── */
.full-bleed-hero--model-finder {
  background: var(--aquora-cream);
}

.full-bleed-hero--model-finder::before {
  display: none;
}

.full-bleed-hero--model-finder .full-bleed-hero__bg {
  left: auto;
  width: 58%;
}

.full-bleed-hero--model-finder .full-bleed-hero__bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, var(--aquora-cream) 0%, rgba(245, 240, 232, 0.92) 18%, transparent 52%);
  pointer-events: none;
  z-index: 1;
}

.model-finder__rotator {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 3rem 2rem 3rem 4rem;
}

.model-finder__rotator-img {
  position: absolute;
  width: min(92%, 54rem);
  max-height: 88%;
  object-fit: contain;
  object-position: center;
  opacity: 0;
  animation: model-finder-rotate 12s infinite;
}

.model-finder__rotator-img:nth-child(1) { animation-delay: 0s; }
.model-finder__rotator-img:nth-child(2) { animation-delay: 4s; }
.model-finder__rotator-img:nth-child(3) { animation-delay: 8s; }

@keyframes model-finder-rotate {
  0%, 26%, 100% { opacity: 0; }
  4%, 22% { opacity: 1; }
}

@media (prefers-reduced-motion: reduce) {
  .model-finder__rotator-img {
    animation: none;
    opacity: 0;
  }

  .model-finder__rotator-img:first-child {
    opacity: 1;
  }
}

.full-bleed-hero--model-finder .hero-title {
  color: var(--aquora-navy);
}

.full-bleed-hero--model-finder .heading__wysiwyg p {
  color: var(--aquora-charcoal);
  opacity: 0.88;
}

.model-finder__badge {
  background: var(--aquora-rust);
  color: var(--aquora-white);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-size: 1.1rem;
  font-weight: 700;
  margin-bottom: 2rem;
}

@media (min-width: 1024px) {
  .model-finder__badge { font-size: 1.4rem; }
}

.model-finder__microcopy {
  color: var(--aquora-muted);
  opacity: 1;
}

@media (max-width: 1023px) {
  .full-bleed-hero--model-finder .full-bleed-hero__bg {
    width: 100%;
    inset: auto 0 0;
    height: 42%;
  }

  .model-finder__rotator {
    padding: 1.5rem 1.5rem 2rem;
  }

  .model-finder__rotator-img {
    width: min(88%, 36rem);
    max-height: 92%;
  }

  .full-bleed-hero--model-finder .full-bleed-hero__bg::after {
    background: linear-gradient(180deg, var(--aquora-cream) 0%, rgba(245, 240, 232, 0.88) 55%, rgba(245, 240, 232, 0.55) 100%);
  }

  .full-bleed-hero--model-finder .full-bleed-hero__content {
    padding-bottom: 22rem;
  }

  .model-finder__microcopy {
    max-width: 34rem;
    margin-left: auto;
    margin-right: auto;
  }
}

/* ── Aquora consultation hero (Phase 12) ── */
.full-bleed-hero--consultation .full-bleed-hero__content {
  max-width: 58rem;
}

.full-bleed-hero--consultation .hero-trust-microcopy {
  max-width: 42rem;
}

@media (max-width: 1023px) {
  .full-bleed-hero--consultation .hero-trust-microcopy {
    max-width: 34rem;
    margin-left: auto;
    margin-right: auto;
  }
}

/* ── Aquora brand story hero (Phase 14) ── */
.full-bleed-hero--story .full-bleed-hero__content {
  max-width: 58rem;
}

.full-bleed-hero--story .heading__wysiwyg p + p {
  margin-top: 1.6rem;
  opacity: 0.88;
}

/* ── Aquora lifestyle focal points ── */

/* Match quiz banner — person left, pool center-right; text on left */
.aquora-banner-match .padded-banner__bg img {
  object-fit: cover;
  object-position: 42% 38%;
}

.aquora-banner-match.padded-banner__wrapper--aquora.padded-banner__wrapper--aquora-match::before {
  background: linear-gradient(
    90deg,
    rgba(10, 16, 24, 0.70) 0%,
    rgba(10, 16, 24, 0.45) 40%,
    rgba(10, 16, 24, 0.08) 100%
  );
}

/* Pricing banner — person right, head high; centered text */
.aquora-banner-pricing.full-bleed-hero--aquora::before {
  background: linear-gradient(
    180deg,
    rgba(10, 16, 24, 0.58) 0%,
    rgba(10, 16, 24, 0.42) 42%,
    rgba(10, 16, 24, 0.14) 100%
  );
}

.aquora-banner-pricing .full-bleed-hero__bg img {
  object-fit: cover;
  object-position: 70% 30%;
}

/* Planning CTA — left-aligned text, standing subjects */
.aquora-banner-planning.full-bleed-hero--aquora::before {
  background: linear-gradient(
    90deg,
    rgba(10, 16, 24, 0.70) 0%,
    rgba(10, 16, 24, 0.45) 40%,
    rgba(10, 16, 24, 0.08) 100%
  );
}

.aquora-banner-planning .full-bleed-hero__bg img {
  object-fit: cover;
  object-position: 68% 32%;
}

/* Final CTA — left-aligned text, standing subjects */
.aquora-banner-final.full-bleed-hero--aquora::before {
  background: linear-gradient(
    90deg,
    rgba(10, 16, 24, 0.70) 0%,
    rgba(10, 16, 24, 0.45) 40%,
    rgba(10, 16, 24, 0.08) 100%
  );
}

.aquora-banner-final .full-bleed-hero__bg img {
  object-fit: cover;
  object-position: 65% 32%;
}

@media (max-width: 1023px) {
  .aquora-hero-main .full-bleed-hero__bg img {
    object-position: 60% 36%;
  }

  .aquora-banner-match .padded-banner__bg img {
    object-position: 46% 34%;
  }

  .aquora-banner-pricing .full-bleed-hero__bg img {
    object-position: 66% 28%;
  }

  .aquora-banner-planning .full-bleed-hero__bg img,
  .aquora-banner-final .full-bleed-hero__bg img {
    object-position: 62% 30%;
  }

  .aquora-banner-pricing.full-bleed-hero--aquora::before {
    background: linear-gradient(
      180deg,
      rgba(10, 16, 24, 0.72) 0%,
      rgba(10, 16, 24, 0.48) 55%,
      rgba(10, 16, 24, 0.18) 100%
    );
  }

  .aquora-banner-planning.full-bleed-hero--aquora::before,
  .aquora-banner-final.full-bleed-hero--aquora::before {
    background: linear-gradient(
      180deg,
      rgba(10, 16, 24, 0.72) 0%,
      rgba(10, 16, 24, 0.48) 55%,
      rgba(10, 16, 24, 0.18) 100%
    );
  }
}

@media (max-width: 767px) {
  .aquora-hero-main .full-bleed-hero__bg img {
    object-position: 58% 36%;
  }

  .aquora-banner-match .padded-banner__bg img {
    object-position: 50% 32%;
  }

  .aquora-banner-match.padded-banner__wrapper--aquora.padded-banner__wrapper--aquora-match::before {
    background: linear-gradient(
      180deg,
      rgba(10, 16, 24, 0.72) 0%,
      rgba(10, 16, 24, 0.48) 55%,
      rgba(10, 16, 24, 0.18) 100%
    );
  }

  .aquora-banner-pricing .full-bleed-hero__bg img {
    object-position: 64% 26%;
  }

  .aquora-banner-planning .full-bleed-hero__bg img,
  .aquora-banner-final .full-bleed-hero__bg img {
    object-position: 58% 28%;
  }
}

/* ── Value banner (trust strip) ── */
.value-banner {
  padding: 2rem 0;
  background: var(--aquora-cream);
  border-top: 1px solid var(--aquora-sand);
  border-bottom: 1px solid var(--aquora-sand);
}

.value-banner__wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 1.5rem 2.4rem;
}

.value-banner__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  text-decoration: none;
  color: var(--aquora-charcoal);
  gap: 1rem;
  max-width: 100%;
}

a.value-banner__item:hover {
  color: var(--aquora-navy);
}

a.value-banner__item:hover .value-banner__icon--gold {
  color: var(--aquora-rust);
}

.value-banner__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 3.2rem;
  height: 3.2rem;
}

.value-banner__icon svg {
  width: 2.6rem;
  height: 2.6rem;
}

.value-banner__icon--gold { color: var(--aquora-gold); }
.value-banner__icon--navy { color: var(--aquora-navy); }
.value-banner__icon--rust { color: var(--aquora-rust); }

.value-banner__item img { height: 3.2rem; width: auto; }

.value-banner__item p {
  margin: 0;
  font-size: 1.15rem;
  font-weight: 600;
  line-height: 1.35;
  color: var(--aquora-charcoal);
}

@media (min-width: 768px) {
  .value-banner__item {
    flex-direction: row;
    text-align: left;
    gap: 1rem;
    flex: 1 1 auto;
    min-width: 0;
  }

  .value-banner__item p { font-size: 1.35rem; }
}

@media (min-width: 1024px) {
  .value-banner__wrapper {
    flex-wrap: nowrap;
    justify-content: space-between;
    gap: 2rem;
  }

  .value-banner__item {
    flex: 1;
  }

  .value-banner__item p { font-size: 1.4rem; }
}

@media (max-width: 374px) {
  .value-banner__item p { font-size: 1.05rem; }
}

/* ── Line-up (products) ── */
.line-up-block {
  background: var(--grey-50);
  overflow: hidden;
}

.line-up-block--plunges .line-up__wrapper,
.line-up-block--saunas .line-up__wrapper {
  overflow: visible;
}

.line-up-block--overlap { margin-top: -17rem; }

.line-up__wrapper {
  padding: 8rem 0 10rem;
}

.line-up-block--overlap .line-up__wrapper { padding-top: 8rem; }

.line-up__heading {
  text-align: center;
  margin-bottom: 9rem;
}

.line-up__heading h2 {
  font-size: clamp(2.8rem, 4vw, 4.8rem);
  font-weight: 700;
  line-height: 1.15;
  margin: 0;
  color: var(--grey-875);
}

.line-up__subhead {
  max-width: 68rem;
  margin: 1.6rem auto 0;
  font-size: clamp(1.6rem, 2vw, 2rem);
  font-weight: 400;
  line-height: 1.55;
  color: var(--aquora-muted);
}

.line-up__grid {
  display: none;
}

@media (min-width: 1024px) {
  .line-up__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10rem 4rem;
    margin-top: 8rem;
  }
}

.line-up__slider-wrap { overflow: visible; }

@media (min-width: 1024px) {
  .line-up__slider-wrap { display: none; }
}

@media (max-width: 1023px) {
  .line-up-block--plunges,
  .line-up-block--saunas {
    overflow: visible;
  }

  .line-up-block--plunges .container,
  .line-up-block--saunas .container {
    overflow: visible;
  }

  .line-up-block--plunges .line-up__wrapper,
  .line-up-block--saunas .line-up__wrapper {
    padding-top: 9rem;
    overflow: visible;
  }

  .line-up-block--overlap .line-up__wrapper {
    padding-top: 9rem;
  }

  .line-up__heading {
    margin-bottom: 4rem;
  }

  .line-up__slider-wrap {
    margin-top: 0;
    overflow: visible;
  }
}

.line-up__slider { overflow: visible; }

.line-up__slider-track {
  display: flex;
  gap: 1.6rem;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  margin-bottom: 6rem;
  padding: 0 2rem;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

@media (max-width: 1023px) {
  .line-up__slider,
  .line-up__slider-track,
  .line-up__slider-track .line-up-item,
  .line-up__slider-track .line-up-item .item__top {
    overflow: visible;
  }

  /* Room inside the scroll container for images that float above cards */
  .line-up__slider-track {
    padding-top: 9rem;
    align-items: flex-start;
  }
}

.line-up__slider-track::-webkit-scrollbar { display: none; }

.line-up__slider__navigation {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 2rem;
}

.line-up__slider__navigation-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
  transition: opacity 0.175s ease;
  flex-shrink: 0;
}

.line-up__slider__navigation-arrow svg {
  height: 1.4rem;
  width: 1.4rem;
}

.line-up__slider__navigation-arrow--prev svg { transform: scale(-1); }

.line-up__slider__navigation-arrow.is-disabled {
  opacity: 0.5;
  cursor: default;
}

.line-up__slider-scrollbar {
  position: relative;
  background-color: var(--grey-200);
  border-radius: 10rem;
  height: 3px;
  margin: 0 2rem;
  width: 100%;
  overflow: hidden;
}

.line-up__slider-scrollbar-drag {
  position: absolute;
  top: 0;
  left: 0;
  height: 3px;
  border-radius: 10rem;
  background: linear-gradient(90deg, var(--aquora-rust) 0%, var(--aquora-gold) 100%);
  background-repeat: no-repeat;
  cursor: pointer;
  will-change: transform, width;
}

.line-up-item {
  background: var(--white);
  border-radius: 2rem;
  padding: 2.5rem;
  display: flex;
  flex-direction: column;
  scroll-snap-align: start;
  flex-shrink: 0;
  overflow: visible;
}

.line-up__slider-track .line-up-item {
  height: auto;
}

@media (max-width: 1023px) {
  .line-up__slider-track .line-up-item {
    position: relative;
    padding-top: 15rem;
    border-radius: 1.4rem;
  }

  .line-up__slider-track .line-up-item .item__top {
    display: grid;
    grid-template-areas: "content badge";
    grid-template-columns: minmax(0, 1fr) auto;
    column-gap: 1.2rem;
    align-items: start;
    position: static;
  }

  .line-up__slider-track .line-up-item .item__image {
    position: absolute;
    top: -7.5rem;
    left: 50%;
    transform: translateX(-50%);
    width: 90%;
    height: auto;
    margin: 0;
    z-index: 2;
    display: block;
    overflow: visible;
    grid-area: unset;
  }

  .line-up__slider-track .line-up-item .item__image img {
    width: 100%;
    height: auto;
    max-height: none;
    object-fit: contain;
    object-position: center;
    display: block;
  }

  .line-up__slider-track .line-up-item .item__image--aquora-preview {
    border-radius: 1rem;
    padding: 0.8rem 1rem;
  }

  .line-up__slider-track .line-up-item .item__image--aquora-preview img {
    max-height: 18rem;
  }

  .line-up__slider-track .line-up-item .item__badge {
    grid-area: badge;
    position: static;
  }

  .line-up__slider-track .line-up-item .item__content {
    grid-area: content;
    margin-top: 0;
  }

  .line-up__slider-track .line-up-item .item__financing {
    margin-top: 0.4rem;
  }
}

.line-up-item .item__bottom,
.line-up-item .item__top { flex: 1; }

.line-up-item .item__top {
  display: grid;
  grid-template-areas: "image image" "content badge";
  grid-template-columns: minmax(0, 1fr) auto;
  column-gap: 1.2rem;
  row-gap: 1rem;
  align-items: start;
}

.line-up-item .item__image {
  grid-area: image;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: visible;
  height: 24rem;
  margin: -9rem -1.5rem 0;
}

.line-up-item .item__image img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.line-up-item .item__image--aquora-preview {
  background: linear-gradient(180deg, #1b2838 0%, #101820 100%);
  border: 1px solid rgba(245, 240, 232, 0.08);
  border-radius: 1.2rem;
  overflow: hidden;
  padding: 1rem 1.2rem;
}

.line-up-item .item__image--aquora-preview img {
  width: 100%;
  height: auto;
  max-height: 20rem;
  object-fit: contain;
  object-position: center;
}

.line-up-item .item__badge {
  grid-area: badge;
  background-color: rgba(184, 92, 56, 0.1);
  color: var(--aquora-rust-dark);
  border: 1px solid rgba(184, 92, 56, 0.22);
  display: inline-flex;
  font-size: 1.1rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.656rem;
  padding: 0.55rem 1rem;
  border-radius: 2px;
  white-space: nowrap;
  width: fit-content;
  text-transform: uppercase;
}

.line-up-item .item__badge--gold {
  background-color: rgba(201, 154, 74, 0.14);
  color: #7a5a24;
  border-color: rgba(201, 154, 74, 0.35);
}

.line-up-item .item__badge--rust {
  background-color: rgba(184, 92, 56, 0.1);
  color: var(--aquora-rust-dark);
  border-color: rgba(184, 92, 56, 0.22);
}

.line-up-block--plunges .line-up-item .item__badge,
.line-up-block--saunas .line-up-item .item__badge {
  color: inherit;
}

.line-up-item .item__content {
  grid-area: content;
  display: flex;
  flex-direction: column;
  min-width: 0;
  margin-top: 0;
}

.line-up-item .item__content h4 {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 2.952rem;
  margin: 0;
  color: var(--grey-875);
}

@media (min-width: 1024px) {
  .line-up-item .item__content h4 {
    font-size: 2.6rem;
    line-height: 3.198rem;
  }
}

.star-rating {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  margin-bottom: 0.4rem;
}

.star-rating svg { height: 1.7rem; width: auto; }

.line-up-item .item__financing {
  color: var(--grey-575);
  font-size: 1.2rem;
  margin: -0.5rem 0 0;
  grid-column: 1 / -1;
}

.line-up-item .item__financing b {
  color: var(--grey-875);
  font-size: 1.4rem;
  font-weight: 700;
}

.line-up-item .item__bottom {
  color: var(--grey-875);
  font-size: 14px;
  line-height: 130%;
  margin-top: 0.5rem;
}

.line-up-item .item__buttons {
  display: flex;
  align-items: end;
  flex-grow: 1;
  flex-wrap: wrap;
  gap: 1rem;
  margin-top: 2rem;
  margin-bottom: 1rem;
}

@media (min-width: 1024px) {
  .line-up-item .item__buttons {
    gap: 1.4rem;
    margin-top: 3.5rem;
  }
}

.line-up-item .item__btn {
  font-size: 14px;
  padding: 1.4rem 3.65rem;
  min-width: 0;
  width: fit-content;
  max-width: 100%;
}

@media (max-width: 1023px) {
  .line-up__slider-track .line-up-item .item__financing {
    font-size: 1.05rem;
  }

  .line-up__slider-track .line-up-item .item__bottom {
    font-size: 13px;
  }
}

/* ── Padded banner (Backyard Fit Quiz) ── */
.section-padded-banner {
  margin: 4.5rem 0;
}

.padded-banner__wrapper {
  border-radius: 1.2rem;
  min-height: 60rem;
  padding: 6rem 2rem;
  display: flex;
  align-items: flex-start;
  background-image: var(--mobile-bg);
  background-size: cover;
  background-position: 100% 0;
  background-repeat: no-repeat;
}

.padded-banner__wrapper--aquora {
  position: relative;
  isolation: isolate;
  align-items: center;
}

.padded-banner__wrapper--aquora::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: rgba(27, 40, 56, 0.58);
  z-index: 0;
}

.padded-banner__wrapper--aquora-match {
  position: relative;
  overflow: hidden;
  background-image: none;
}

.padded-banner__bg {
  position: absolute;
  inset: 0;
  border-radius: inherit;
  overflow: hidden;
  z-index: 0;
}

.padded-banner__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

.aquora-banner-match.padded-banner__wrapper--aquora.padded-banner__wrapper--aquora-match::before {
  z-index: 1;
}

.padded-banner__wrapper--aquora .padded-banner__content {
  position: relative;
  z-index: 2;
}

@media (min-width: 768px) {
  .section-padded-banner { margin: 6rem 0; }
  .padded-banner__wrapper {
    background-image: var(--desktop-bg);
    padding: 12.4rem 6rem 13.9rem;
    align-items: center;
  }
}

@media (max-width: 767px) {
  .padded-banner__wrapper--aquora.padded-banner__wrapper--aquora-match::before {
    background: linear-gradient(
      180deg,
      rgba(10, 16, 24, 0.58) 0%,
      rgba(10, 16, 24, 0.32) 38%,
      rgba(10, 16, 24, 0.08) 72%,
      rgba(10, 16, 24, 0) 100%
    );
  }
}

.padded-banner__content { max-width: 46.2rem; color: var(--white); }

.padded-banner__wrapper--aquora .padded-banner__badge {
  background: var(--aquora-rust);
  color: var(--aquora-white);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  font-size: 1.2rem;
}

@media (min-width: 768px) {
  .padded-banner__wrapper--aquora .padded-banner__badge {
    font-size: 1.4rem;
  }
}

.padded-banner__content .title {
  font-size: clamp(4rem, 5vw, 6.2rem);
  font-weight: 700;
  line-height: 1.1;
  margin: 1.4rem 0 0;
}

.padded-banner__wrapper--aquora .title {
  font-family: var(--font-display);
  color: var(--aquora-cream);
  letter-spacing: -0.02em;
}

.padded-banner__content p {
  font-size: 1.6rem;
  line-height: 1.5;
  margin: 2rem 0 0;
}

.padded-banner__wrapper--aquora .padded-banner__content > p:not(.padded-banner__microcopy) {
  color: var(--aquora-cream);
  opacity: 0.92;
}

@media (min-width: 768px) {
  .padded-banner__content p { font-size: 2rem; margin-top: 3rem; }
}

.padded-banner__buttons { margin-top: 2rem; }

@media (min-width: 768px) {
  .padded-banner__buttons { margin-top: 3rem; }
}

.padded-banner__wrapper--aquora .padded-banner__cta {
  background: var(--aquora-cream);
  color: var(--aquora-navy);
  border-color: var(--aquora-cream);
}

.padded-banner__wrapper--aquora .padded-banner__cta:hover {
  background: var(--aquora-white);
  color: var(--aquora-rust-dark);
  border-color: var(--aquora-gold);
}

.padded-banner__microcopy {
  margin: 1.6rem 0 0;
  font-size: 1.25rem;
  font-weight: 600;
  letter-spacing: 0.03em;
  line-height: 1.45;
  color: var(--aquora-cream);
  opacity: 0.85;
}

@media (min-width: 768px) {
  .padded-banner__microcopy {
    font-size: 1.4rem;
    margin-top: 2rem;
  }
}

/* ── Compare (plunge03) ── */
.plunge03-wrapper {
  width: 100%;
  max-width: 100rem;
  margin: 0 auto;
  padding: 3rem 1.5rem 6rem;
}

.plunge03-wrapper--aquora {
  background: var(--aquora-cream);
}

.plunge03-wrapper h2 {
  font-size: 2.8rem;
  text-align: center;
  margin: 3rem 0 6rem;
  font-weight: 700;
}

.plunge03-wrapper--aquora h2 {
  font-family: var(--font-display);
  font-size: clamp(2.8rem, 4vw, 4.2rem);
  color: var(--aquora-navy);
  margin: 3rem 0 1.6rem;
  letter-spacing: -0.02em;
}

.plunge03-subhead {
  text-align: center;
  max-width: 52rem;
  margin: 0 auto 2rem;
  font-size: clamp(1.6rem, 2vw, 2rem);
  font-weight: 400;
  line-height: 1.55;
  color: var(--aquora-muted);
}

.plunge03-star-divider {
  margin: 0 auto 3rem;
  max-width: 28rem;
}

.plunge03-container {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  position: relative;
}

.plunge03-container::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 1px;
  height: 100%;
  background: #e2e2e2;
  z-index: 1;
}

.plunge03-wrapper--aquora .plunge03-container::after {
  background: var(--aquora-sand);
}

.plunge03-row {
  display: flex;
  align-items: center;
  width: 100%;
  position: relative;
  z-index: 2;
}

.plunge03-column {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  gap: 0;
  min-width: 0;
  padding: 0 0.8rem;
}

.plunge03-logo { max-width: 12rem; height: auto; }

.plunge03-brand-title {
  font-family: var(--font-display);
  font-size: clamp(1.8rem, 3vw, 2.4rem);
  font-weight: 700;
  line-height: 1.15;
  margin: 0;
  color: var(--aquora-navy);
}

.plunge03-brand-title--aquora {
  color: var(--aquora-rust-dark);
}

.plunge03-others-title {
  font-size: clamp(1.8rem, 3vw, 2.4rem);
  font-weight: 600;
  margin: 0;
  text-transform: none;
  font-family: var(--font-display);
  color: var(--aquora-charcoal);
}

.plunge03-tub-image {
  width: 14.6rem;
  height: 10rem;
  object-fit: contain;
}

@media (min-width: 769px) {
  .plunge03-tub-image { width: 20rem; height: 12rem; }
  .plunge03-others-title { font-size: 2.8rem; }
  .plunge03-logo { max-width: 15rem; }
  .plunge03-brand-title { font-size: 2.8rem; }
}

.plunge03-feature-text {
  margin: 0;
  font-size: 1.4rem;
  line-height: 1.5;
  text-align: center;
  max-width: 90%;
  display: none;
}

.plunge03-feature-text--v2 { display: block; }

.plunge03-feature-text--aquora {
  color: var(--aquora-charcoal);
  font-weight: 600;
}

.plunge03-column:last-child .plunge03-feature-text {
  color: var(--aquora-muted);
}

@media (min-width: 769px) {
  .plunge03-feature-text { font-size: 1.8rem; max-width: 80%; }
}

.plunge03-cta { display: block; width: fit-content; margin: 4rem auto 0; }

.plunge03-microcopy {
  text-align: center;
  margin: 1.6rem auto 0;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.45;
  color: var(--aquora-muted);
  max-width: 36rem;
  padding: 0 1.6rem;
}

/* ── Core values (benefits & difference) ── */
.core-values-block {
  background: var(--grey-875);
  padding: 3.2rem 0;
  color: var(--white);
}

.core-values-block--aquora {
  background: var(--aquora-navy);
  color: var(--aquora-cream);
}

@media (min-width: 1024px) {
  .core-values-block { padding: 10rem 0; }
}

.core-values__heading { text-align: center; }

.core-values__heading h2 {
  font-size: clamp(2.6rem, 4vw, 3.6rem);
  font-weight: 700;
  letter-spacing: -0.026rem;
  line-height: 1.1;
  margin: 0;
}

.core-values-block--aquora .core-values__heading h2 {
  font-family: var(--font-display);
  color: var(--aquora-cream);
  letter-spacing: -0.02em;
}

.core-values__star-divider {
  margin: 2rem auto 0;
  max-width: 28rem;
}

.core-values-block--aquora .core-values__star-divider {
  color: var(--aquora-gold);
}

.core-values__heading h3 {
  font-size: 1.7rem;
  font-weight: 400;
  opacity: 0.6;
  margin: 1.6rem 0 0;
}

.core-values__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 4rem 2rem;
  padding-top: 3.2rem;
}

@media (min-width: 768px) {
  .core-values__grid--4 { grid-template-columns: repeat(4, 1fr); }
}

@media (min-width: 1024px) {
  .core-values__grid { padding-top: 6rem; }
  .core-values__grid--3 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 5rem 4rem;
    max-width: 100rem;
    margin: 0 auto;
  }
}

.value-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.core-values__grid--3 .value-item { max-width: 29rem; }

.value-item__icon img {
  height: 3.2rem;
  width: auto;
  object-fit: contain;
}

@media (min-width: 1024px) {
  .value-item__icon img { height: 4.4rem; }
}

.value-item__icon + .value-item__content { margin-top: 1.5rem; }

@media (min-width: 1024px) {
  .value-item__icon + .value-item__content { margin-top: 2rem; }
}

.value-item h4 {
  font-size: 1.9rem;
  font-weight: 700;
  margin: 0;
  line-height: 1.3;
}

.core-values-block--aquora .value-item h4 {
  color: var(--aquora-cream);
}

.value-item p {
  font-size: 1.5rem;
  line-height: 1.47;
  opacity: 0.7;
  margin: 1.5rem 0 0;
}

.core-values-block--aquora .value-item p {
  color: var(--aquora-cream);
  opacity: 0.78;
}

.core-values-block--difference {
  background: var(--aquora-charcoal);
}

.core-values-block--difference .core-values__heading h3 {
  color: var(--aquora-cream);
  opacity: 0.78;
  max-width: 52rem;
  margin-left: auto;
  margin-right: auto;
  line-height: 1.5;
}

.value-item__icon--svg {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--aquora-gold);
}

.value-item__icon--svg.value-item__icon--rust {
  color: var(--aquora-rust);
}

.value-item__icon--svg svg {
  width: 3.2rem;
  height: 3.2rem;
}

@media (min-width: 1024px) {
  .value-item p { margin-top: 2rem; }
  .value-item__icon--svg svg {
    width: 4.4rem;
    height: 4.4rem;
  }
}

/* ── Wall of love (reviews) ── */
.wall-of-love {
  margin: 3.2rem 0;
}

.wall-of-love--aquora {
  background: var(--aquora-cream);
  padding: 4rem 0;
}

@media (min-width: 1024px) {
  .wall-of-love--aquora { padding: 6rem 0; }
}

.mansory__heading {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  margin-bottom: 4rem;
}

.wall-of-love--ugc .mansory__heading {
  margin-bottom: 3.2rem;
}

.mansory__heading-text {
  flex: 1 1 28rem;
  min-width: 0;
}

.mansory__heading h2 {
  font-size: clamp(2.8rem, 4vw, 4rem);
  font-weight: 700;
  margin: 0;
}

.wall-of-love--aquora .mansory__heading h2 {
  font-family: var(--font-display);
  color: var(--aquora-navy);
  letter-spacing: -0.02em;
}

.mansory__subhead {
  margin: 1.2rem 0 0;
  max-width: 52rem;
  font-size: clamp(1.6rem, 2vw, 1.9rem);
  line-height: 1.55;
  color: var(--aquora-muted);
}

.mansory {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
  align-items: start;
}

@media (max-width: 1023px) {
  .mansory { grid-template-columns: 1fr; }
}

/* ── Aquora UGC wall of love ── */
.wall-of-love--ugc .mansory--ugc {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 2rem;
  align-items: stretch;
}

.wall-of-love--ugc .mansory-col {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  min-width: 0;
  min-height: 100%;
}

.wall-of-love--ugc .mansory-col > :last-child:not(:only-child) {
  margin-top: auto;
}

.wall-of-love--ugc .mansory-col > * {
  width: 100%;
  flex-shrink: 0;
}

@media (max-width: 1023px) {
  .wall-of-love--ugc .mansory--ugc {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2rem;
  }

  .wall-of-love--ugc .mansory-col > :last-child:not(:only-child) {
    margin-top: 0;
  }
}

@media (max-width: 767px) {
  .wall-of-love--ugc .mansory--ugc {
    grid-template-columns: 1fr;
    gap: 1.8rem;
  }

  .wall-of-love--ugc .mansory-col {
    display: contents;
  }
}

.wall-of-love--ugc .mansory-tweet--review,
.wall-of-love--ugc .mansory-tweet--press {
  padding: 2rem;
  border-color: var(--aquora-sand);
  box-shadow: 0 2px 14px rgba(27, 40, 56, 0.05);
}

.wall-of-love--ugc .mansory-tweet--press .author {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  margin-bottom: 1.2rem;
}

.wall-of-love--ugc .mansory-tweet--press .author > img:first-child {
  width: 4.8rem;
  height: 4.8rem;
  object-fit: contain;
  border-radius: 0.4rem;
  flex-shrink: 0;
}

.wall-of-love--ugc .mansory-tweet--press .name {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  font-size: 1.4rem;
  font-weight: 700;
  color: var(--aquora-navy);
  line-height: 1.2;
}

.wall-of-love--ugc .mansory-tweet--press .name img {
  width: 1.6rem;
  height: 1.6rem;
  flex-shrink: 0;
}

.wall-of-love--ugc .mansory-tweet--press p {
  font-size: 1.45rem;
  line-height: 1.55;
  color: var(--aquora-charcoal);
  margin: 0;
}

.wall-of-love--ugc .mansory-media {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 9 / 16;
  border-radius: 1.2rem;
  overflow: hidden;
  background: var(--aquora-navy);
  border: 1px solid var(--aquora-sand);
  box-shadow: 0 2px 14px rgba(27, 40, 56, 0.06);
}

.wall-of-love--ugc .mansory-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

@media (max-width: 767px) {
  .wall-of-love--ugc .mansory-media {
    aspect-ratio: 3 / 4;
  }
}

.wall-of-love--ugc .mansory-media__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(10, 16, 24, 0.28);
  pointer-events: none;
}

.wall-of-love--ugc .mansory-media__play-btn {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 5.8rem;
  height: 5.8rem;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.94);
  color: var(--aquora-navy);
  box-shadow: 0 4px 20px rgba(10, 16, 24, 0.35);
}

.wall-of-love--ugc .mansory-media__play-btn svg {
  width: 2.4rem;
  height: 2.4rem;
  margin-left: 0.15rem;
}

.wall-of-love--ugc .mansory-media__caption {
  position: absolute;
  inset: auto 0 0;
  z-index: 3;
  padding: 3rem 1.4rem 1.2rem;
  background: linear-gradient(180deg, transparent 0%, rgba(10, 16, 24, 0.72) 100%);
  pointer-events: none;
}

.wall-of-love--ugc .mansory-media__caption span {
  display: block;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.35;
  color: var(--aquora-cream);
  letter-spacing: 0.02em;
}

.wall-of-love--ugc .load-more__wrapper {
  margin-top: 3rem;
}

.mansory-tweet {
  display: block;
  background: var(--white);
  border: 1px solid var(--grey-175);
  border-radius: 1.2rem;
  padding: 2rem;
  color: inherit;
}

.wall-of-love--aquora .mansory-tweet {
  border-color: var(--aquora-sand);
  box-shadow: 0 2px 12px rgba(27, 40, 56, 0.04);
}

.mansory-tweet .author {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  margin-bottom: 1.2rem;
}

.mansory-tweet .author img:first-child {
  width: 4.8rem;
  height: 4.8rem;
  object-fit: contain;
  border-radius: 0.4rem;
}

.author__avatar {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 4.8rem;
  height: 4.8rem;
  border-radius: 50%;
  background: rgba(201, 154, 74, 0.16);
  color: var(--aquora-rust-dark);
  font-size: 1.35rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  flex-shrink: 0;
}

.mansory-tweet .author__info {
  text-align: left;
}

.mansory-tweet .name {
  display: block;
  font-size: 1.4rem;
  font-weight: 700;
  color: var(--aquora-navy);
}

.mansory-tweet--customer .name {
  display: flex;
  align-items: center;
  gap: 0.6rem;
}

.author__label {
  display: block;
  margin-top: 0.25rem;
  font-size: 1.15rem;
  font-weight: 600;
  color: var(--aquora-muted);
}

.mansory-tweet .name img { width: 1.6rem; height: 1.6rem; }

.mansory-tweet p {
  font-size: 1.4rem;
  line-height: 1.5;
  color: var(--grey-600);
  margin: 0;
}

.wall-of-love--aquora .mansory-tweet p {
  color: var(--aquora-charcoal);
}

.mansory-video {
  position: relative;
  border-radius: 1.2rem;
  overflow: hidden;
  aspect-ratio: 9/16;
  background: var(--aquora-navy);
  border: 1px solid var(--aquora-sand);
}

.mansory-video img:first-child {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.mansory-video .overlay {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(27, 40, 56, 0.22);
  color: var(--aquora-cream);
}

.mansory-video .overlay svg {
  width: 4.8rem;
  height: 4.8rem;
  filter: drop-shadow(0 2px 8px rgba(0, 0, 0, 0.25));
}

.mansory-video .overlay img { width: 4.8rem; height: 4.8rem; }

.load-more__wrapper { text-align: center; margin-top: 3rem; }

/* ── Text offers columns ── */
.text-offers-columns__wrapper {
  display: grid;
  grid-template-columns: 1fr;
  gap: 4rem;
  padding: 7.2rem 2rem;
}

@media (min-width: 768px) {
  .text-offers-columns__wrapper {
    grid-template-columns: repeat(3, 1fr);
    padding: 9.6rem 2rem;
    gap: 3rem;
  }
}

.text-offers-columns--aquora {
  background: var(--aquora-cream);
  border-top: 1px solid var(--aquora-sand);
}

.text-offers-columns--aquora .offer-column h4 {
  font-family: var(--font-display);
  color: var(--aquora-navy);
}

.text-offers-columns--aquora .offer-column p {
  color: var(--aquora-muted);
}

.text-offers-columns--aquora .offer-column__button {
  color: var(--aquora-navy);
  font-weight: 700;
}

.offer-column h4 {
  font-size: 1.8rem;
  font-weight: 700;
  margin: 0 0 1rem;
}

.offer-column p {
  font-size: 1.5rem;
  line-height: 1.6;
  color: var(--grey-600);
  margin: 0;
}

.offer-column .fine-print { font-size: 1.2rem; }

.offer-column__button { margin-top: 1.2rem; }

/* ── Footer ── */
.footer {
  background: var(--aquora-navy);
  color: var(--aquora-cream);
  padding: 6rem 0 3rem;
}

.footer__top {
  display: grid;
  grid-template-columns: 1fr;
  gap: 4rem;
  margin-bottom: 4rem;
}

@media (min-width: 768px) {
  .footer__top {
    grid-template-columns: 1.2fr repeat(4, 1fr);
  }
}

.footer__brand {
  max-width: 28rem;
}

.footer__logo-text {
  display: inline-flex;
  flex-direction: column;
  line-height: 1.1;
  text-decoration: none;
  margin-bottom: 1.6rem;
}

.footer__logo-name {
  font-family: var(--font-display);
  font-size: 2.6rem;
  font-weight: 700;
  color: var(--aquora-cream);
  letter-spacing: -0.02em;
}

.footer__logo-series {
  margin-top: 0.3rem;
  font-family: var(--font);
  font-size: 1.1rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--aquora-gold);
}

.footer__logo img {
  height: 2.4rem;
  filter: brightness(0) invert(1);
  margin-bottom: 1.6rem;
}

.footer__tagline {
  font-size: 1.5rem;
  opacity: 0.75;
  margin: 0;
  line-height: 1.5;
  color: var(--aquora-cream);
}

.footer__col h4 {
  font-size: 1.4rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin: 0 0 1.6rem;
  color: var(--aquora-cream);
}

.footer__col a {
  display: block;
  font-size: 1.4rem;
  opacity: 0.75;
  padding: 0.35rem 0;
  transition: color 0.15s ease, opacity 0.15s ease;
  color: var(--aquora-cream);
}

.footer__col a:hover {
  opacity: 1;
  color: var(--aquora-gold);
}

.footer__phone {
  font-size: 1.6rem;
  font-weight: 700;
  margin-top: 0.8rem;
  color: var(--aquora-cream);
}

.footer__bottom {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  padding-top: 3rem;
  border-top: 1px solid rgba(245, 240, 232, 0.15);
}

.footer__social {
  display: flex;
  gap: 1.6rem;
}

.footer__social a {
  opacity: 0.75;
  color: var(--aquora-cream);
  transition: color 0.15s ease, opacity 0.15s ease;
}

.footer__social a:hover {
  opacity: 1;
  color: var(--aquora-gold);
}

.footer__social svg { width: 2rem; height: 2rem; }

.footer__legal {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  font-size: 1.2rem;
  opacity: 0.65;
  color: var(--aquora-cream);
}

.footer__legal a {
  color: var(--aquora-cream);
  transition: color 0.15s ease;
}

.footer__legal a:hover {
  opacity: 1;
  color: var(--aquora-gold);
}

/* ── Chat widget ── */
.chat-widget {
  position: fixed;
  bottom: 2.4rem;
  right: 2.4rem;
  z-index: 90;
  width: 5.6rem;
  height: 5.6rem;
  border-radius: 50%;
  background: var(--aquora-rust);
  color: var(--aquora-white);
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 20px rgba(184, 92, 56, 0.35);
  transition: background 0.175s ease;
}

.chat-widget:hover {
  background: var(--aquora-rust-dark);
}

.chat-widget svg { width: 2.4rem; height: 2.4rem; }

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border: 0;
}

/* ── Aquora / Texas utility classes (Phase 0) ── */

.texas-kicker {
  display: inline-block;
  font-family: var(--font);
  font-size: 1.2rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--aquora-rust);
}

@media (min-width: 1024px) {
  .texas-kicker { font-size: 1.3rem; }
}

.texas-section-label {
  display: block;
  font-family: var(--font);
  font-size: 1.1rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--aquora-gold);
  margin-bottom: 1.2rem;
}

.texas-star-divider {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  width: 100%;
  max-width: 32rem;
  margin: 2.4rem auto;
  color: var(--aquora-gold);
}

.texas-star-divider::before,
.texas-star-divider::after {
  content: "";
  flex: 1;
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent,
    var(--aquora-sand) 20%,
    var(--aquora-gold) 50%,
    var(--aquora-sand) 80%,
    transparent
  );
}

.texas-star-divider__icon {
  flex-shrink: 0;
  font-size: 1rem;
  line-height: 1;
  color: var(--aquora-gold);
  opacity: 0.85;
}

.aquora-cream-section {
  background: var(--aquora-cream);
  color: var(--aquora-charcoal);
}

.aquora-dark-section {
  background: var(--aquora-navy);
  color: var(--aquora-cream);
}

.aquora-rust-accent {
  color: var(--aquora-rust);
}

.aquora-outline-card {
  background: var(--aquora-white);
  border: 1px solid var(--aquora-sand);
  border-radius: 1.4rem;
  padding: 2.4rem;
  box-shadow: 0 1px 0 rgba(27, 40, 56, 0.04);
}

/* ── Product detail page (PDP) ── */

.pdp-page {
  background: var(--aquora-white);
}

.pdp-hero {
  padding: 2rem 0 4rem;
  background: var(--aquora-white);
  border-bottom: 1px solid var(--aquora-sand);
}

.pdp-hero__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
  align-items: start;
}

@media (max-width: 1023px) {
  .pdp-hero__grid .pdp-buybox {
    order: 2;
  }

  .pdp-hero__grid .pdp-gallery {
    order: 1;
  }
}

@media (min-width: 1024px) {
  .pdp-hero {
    padding: 5rem 0 6rem;
  }

  .pdp-hero__grid {
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
    gap: 5rem;
  }
}

/* Gallery */
.pdp-gallery {
  min-width: 0;
}

.pdp-gallery__main {
  position: relative;
  background: linear-gradient(180deg, #1b2838 0%, #101820 100%);
  border: 1px solid rgba(245, 240, 232, 0.08);
  border-radius: 1.4rem;
  overflow: hidden;
  aspect-ratio: 4 / 3;
}

.pdp-gallery__slide {
  position: absolute;
  inset: 0;
  margin: 0;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 2rem;
}

.pdp-gallery__slide img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

#pdp-gallery-1:checked ~ .pdp-gallery__main .pdp-gallery__slide--1,
#pdp-gallery-2:checked ~ .pdp-gallery__main .pdp-gallery__slide--2,
#pdp-gallery-3:checked ~ .pdp-gallery__main .pdp-gallery__slide--3,
#pdp-gallery-4:checked ~ .pdp-gallery__main .pdp-gallery__slide--4 {
  display: flex;
}

.pdp-gallery__thumbs {
  display: flex;
  gap: 1rem;
  margin-top: 1.2rem;
  overflow-x: auto;
  padding-bottom: 0.4rem;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}

.pdp-gallery__thumbs::-webkit-scrollbar {
  display: none;
}

.pdp-gallery__thumb {
  flex: 0 0 7.2rem;
  width: 7.2rem;
  height: 7.2rem;
  border-radius: 0.8rem;
  overflow: hidden;
  border: 2px solid transparent;
  background: var(--aquora-navy);
  cursor: pointer;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.pdp-gallery__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#pdp-gallery-1:checked ~ .pdp-gallery__thumbs label[for="pdp-gallery-1"],
#pdp-gallery-2:checked ~ .pdp-gallery__thumbs label[for="pdp-gallery-2"],
#pdp-gallery-3:checked ~ .pdp-gallery__thumbs label[for="pdp-gallery-3"],
#pdp-gallery-4:checked ~ .pdp-gallery__thumbs label[for="pdp-gallery-4"] {
  border-color: var(--aquora-rust);
  box-shadow: 0 0 0 1px var(--aquora-rust);
}

.pdp-gallery__thumb:hover {
  border-color: var(--aquora-gold);
}

/* Buy box */
.pdp-buybox {
  min-width: 0;
  background: var(--aquora-white);
  border: 1px solid var(--aquora-sand);
  border-radius: 1.2rem;
  padding: 2rem;
}

@media (min-width: 1024px) {
  .pdp-buybox {
    position: sticky;
    top: 14rem;
    padding: 2.4rem;
  }
}

/* Plunge-style feature tabs */
.pdp-buybox__tabs {
  display: flex;
  gap: 1rem;
  overflow-x: auto;
  margin: 0 -0.4rem 2rem;
  padding: 0 0.4rem 0.4rem;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}

.pdp-buybox__tabs::-webkit-scrollbar {
  display: none;
}

.pdp-buybox__tab {
  flex: 0 0 10.5rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.8rem;
  padding: 1rem 0.8rem;
  border: 2px solid var(--grey-200);
  border-radius: 1rem;
  background: var(--grey-75);
  text-align: center;
  transition: border-color 0.15s ease, background 0.15s ease;
}

.pdp-buybox__tab:hover,
.pdp-buybox__tab.is-active {
  border-color: var(--aquora-navy);
  background: var(--aquora-white);
}

.pdp-buybox__tab-thumb {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 5.6rem;
  overflow: hidden;
  border-radius: 0.6rem;
  background: linear-gradient(180deg, #1b2838 0%, #101820 100%);
}

.pdp-buybox__tab-thumb img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 0.4rem;
}

.pdp-buybox__tab-label {
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.25;
  color: var(--aquora-charcoal);
}

/* Title + stock row */
.pdp-buybox__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1.2rem;
  margin-bottom: 0.8rem;
}

.pdp-buybox__title {
  font-family: var(--font-display);
  font-size: clamp(2.4rem, 4vw, 3.2rem);
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -0.02em;
  color: var(--aquora-navy);
  margin: 0;
  flex: 1;
  min-width: 0;
}

.pdp-buybox__title .title-append {
  display: block;
  font-size: 0.72em;
  margin-top: 0.2rem;
}

.pdp-buybox__stock {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  flex-shrink: 0;
  margin: 0.4rem 0 0;
  padding: 0.5rem 0.9rem;
  border-radius: 999px;
  background: rgba(76, 130, 90, 0.12);
  font-size: 1.15rem;
  font-weight: 700;
  line-height: 1;
  color: #3d6b47;
  white-space: nowrap;
}

.pdp-buybox__stock svg {
  width: 1.4rem;
  height: 1.4rem;
  color: #3d6b47;
}

/* Stories link (replaces fake review count) */
.pdp-buybox__stories {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  margin: 0 0 1.6rem;
  font-size: 1.35rem;
}

.pdp-buybox__stars {
  color: var(--aquora-charcoal);
  letter-spacing: 0.08em;
  font-size: 1.2rem;
  line-height: 1;
}

.pdp-buybox__stories a {
  font-weight: 600;
  color: var(--aquora-charcoal);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.pdp-buybox__stories a:hover {
  color: var(--aquora-rust);
}

/* Price row */
.pdp-buybox__price-row {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem 1.2rem;
  margin-bottom: 1.6rem;
}

.pdp-buybox__price-main {
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
}

.pdp-buybox__price {
  font-family: var(--font-display);
  font-size: clamp(2.6rem, 4vw, 3.2rem);
  font-weight: 700;
  line-height: 1.1;
  color: var(--aquora-charcoal);
  letter-spacing: -0.02em;
}

.pdp-buybox__price-note {
  font-size: 1.35rem;
  font-weight: 600;
  color: var(--aquora-muted);
}

.pdp-buybox__offer-badge {
  display: inline-flex;
  align-items: center;
  padding: 0.6rem 1rem;
  border-radius: 0.4rem;
  background: var(--aquora-navy);
  color: var(--aquora-white);
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
}

/* Financing card */
.pdp-buybox__finance-card {
  display: grid;
  grid-template-columns: auto 1fr auto;
  grid-template-rows: auto auto;
  gap: 0.2rem 1rem;
  align-items: center;
  margin-bottom: 2rem;
  padding: 1.4rem 1.6rem;
  border-radius: 1rem;
  background: var(--grey-75);
  border: 1px solid var(--grey-200);
  transition: border-color 0.15s ease, background 0.15s ease;
}

.pdp-buybox__finance-card:hover {
  border-color: var(--aquora-sand);
  background: var(--aquora-cream);
}

.pdp-buybox__finance-brand {
  grid-row: 1 / 3;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 6.4rem;
  padding: 0.6rem 0.8rem;
  border-radius: 0.5rem;
  background: var(--aquora-white);
  border: 1px solid var(--grey-200);
  font-size: 1.1rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--aquora-navy);
}

.pdp-buybox__finance-apr {
  grid-column: 2;
  font-size: 1.25rem;
  font-weight: 600;
  color: var(--aquora-muted);
}

.pdp-buybox__finance-highlight {
  grid-column: 2;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.3;
  color: var(--aquora-charcoal);
}

.pdp-buybox__finance-chevron {
  grid-row: 1 / 3;
  grid-column: 3;
  width: 2rem;
  height: 2rem;
  color: var(--aquora-muted);
}

.pdp-buybox__tagline {
  margin: 0 0 1.6rem;
  font-size: 1.55rem;
  line-height: 1.55;
  color: var(--aquora-charcoal);
}

.pdp-buybox__bullets {
  margin: 0 0 1.6rem;
  padding-left: 2rem;
  list-style: disc;
}

.pdp-buybox__bullets li {
  margin-bottom: 0.8rem;
  font-size: 1.45rem;
  line-height: 1.5;
  color: var(--aquora-charcoal);
}

.pdp-buybox__bullets li::marker {
  color: var(--aquora-charcoal);
}

.pdp-buybox__bullets a {
  color: var(--aquora-navy);
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.pdp-buybox__bullets a:hover {
  color: var(--aquora-rust);
}

.pdp-buybox__details-link {
  display: inline-block;
  margin-bottom: 2rem;
  font-size: 1.45rem;
  font-weight: 700;
  color: var(--aquora-charcoal);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.pdp-buybox__details-link:hover {
  color: var(--aquora-rust);
}

/* Promo banner (Plunge sale box) */
.pdp-promo-banner {
  margin-bottom: 2rem;
  padding: 2rem;
  border-radius: 1.2rem;
  background: var(--aquora-charcoal);
  color: var(--aquora-cream);
}

.pdp-promo-banner__title {
  margin: 0 0 1.6rem;
  font-family: var(--font-display);
  font-size: clamp(1.7rem, 2.5vw, 2rem);
  font-weight: 700;
  line-height: 1.25;
  color: var(--aquora-cream);
}

.pdp-promo-banner__list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.pdp-promo-banner__list li {
  position: relative;
  padding-left: 2.8rem;
  margin-bottom: 1rem;
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 1.45;
  color: var(--aquora-cream);
}

.pdp-promo-banner__list li:last-child {
  margin-bottom: 0;
}

.pdp-promo-banner__list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.1rem;
  width: 1.8rem;
  height: 1.8rem;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--aquora-rust) 0%, var(--aquora-gold) 100%);
  box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.15);
}

.pdp-promo-banner__list li::after {
  content: "✓";
  position: absolute;
  left: 0.45rem;
  top: 0.22rem;
  font-size: 1rem;
  font-weight: 800;
  line-height: 1;
  color: var(--aquora-white);
}

/* Dealer call card */
.pdp-dealer-card {
  margin-bottom: 2rem;
  padding: 2rem;
}

.pdp-dealer-card__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1.2rem;
  margin-bottom: 1.6rem;
}

.pdp-dealer-card__phone {
  margin: 0 0 0.6rem;
  font-family: var(--font-display);
  font-size: clamp(2rem, 3vw, 2.4rem);
  font-weight: 700;
  line-height: 1.15;
  color: var(--aquora-navy);
}

.pdp-dealer-card__text {
  margin: 0 0 0.4rem;
  font-size: 1.45rem;
  line-height: 1.45;
  color: var(--aquora-charcoal);
}

.pdp-dealer-card__support {
  margin: 0;
  font-size: 1.35rem;
  line-height: 1.45;
  color: var(--aquora-muted);
}

.pdp-dealer-card__support a {
  color: var(--aquora-navy);
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.pdp-dealer-card__avatar {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 5.6rem;
  height: 5.6rem;
  border-radius: 50%;
  background: rgba(201, 154, 74, 0.16);
  color: var(--aquora-rust-dark);
}

.pdp-dealer-card__avatar svg {
  width: 2.8rem;
  height: 2.8rem;
}

.pdp-dealer-card__btn {
  display: flex;
  width: 100%;
}

/* Warranty block (Extend-style) */
.pdp-warranty-block {
  margin-bottom: 2rem;
  padding-bottom: 2rem;
  border-bottom: 1px solid var(--aquora-sand);
}

.pdp-warranty-block__heading {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  margin: 0 0 0.6rem;
  font-size: 1.45rem;
  font-weight: 700;
  line-height: 1.35;
  color: var(--aquora-navy);
}

.pdp-warranty-block__heading svg {
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
  color: var(--aquora-gold);
}

.pdp-warranty-block__desc {
  margin: 0 0 1.2rem;
  font-size: 1.35rem;
  line-height: 1.45;
  color: var(--aquora-muted);
}

.pdp-warranty-block__desc a {
  color: var(--aquora-navy);
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.pdp-warranty-block__select {
  width: 100%;
  padding: 1.2rem 1.4rem;
  border: 1px solid var(--grey-200);
  border-radius: 0.8rem;
  background: var(--aquora-white);
  font-family: var(--font);
  font-size: 1.4rem;
  font-weight: 600;
  color: var(--aquora-charcoal);
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236F6A61' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 1.2rem center;
  padding-right: 3.6rem;
}

/* Checkout stack (bottom buy box) */
.pdp-buybox__checkout {
  padding-top: 0.4rem;
}

.pdp-buybox__price-row--checkout {
  margin-top: 0;
  margin-bottom: 1.2rem;
}

.pdp-buybox__finance-card--compact {
  margin-bottom: 1.6rem;
}

.pdp-buybox__cta-checkout {
  width: 100%;
  max-width: 100%;
  margin-bottom: 1.6rem;
}

.pdp-dealer-card .btn-plunge--white {
  border: 2px solid var(--aquora-navy);
  color: var(--aquora-navy);
}

.pdp-dealer-card .btn-plunge--white:hover {
  background: var(--aquora-cream);
  color: var(--aquora-rust-dark);
  border-color: var(--aquora-rust);
}

/* Trust / delivery card */
.pdp-trust-card {
  margin-bottom: 1.6rem;
  padding: 1.6rem;
  border-radius: 1rem;
  background: var(--grey-75);
  border: 1px solid var(--grey-200);
}

.pdp-trust-card__ship {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1.6rem;
  padding-bottom: 1.6rem;
  border-bottom: 1px solid var(--grey-200);
}

.pdp-trust-card__ship-label {
  font-size: 1.45rem;
  font-weight: 700;
  color: var(--aquora-charcoal);
}

.pdp-trust-card__stock {
  margin: 0;
}

.pdp-trust-card__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.4rem 1.2rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

.pdp-trust-card__grid li {
  display: flex;
  align-items: flex-start;
  gap: 0.8rem;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.35;
  color: var(--aquora-charcoal);
}

.pdp-trust-card__grid svg {
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
  color: var(--aquora-navy);
  margin-top: 0.1rem;
}

.pdp-buybox__footnote {
  margin: 0 0 1.2rem;
  font-size: 1.35rem;
  line-height: 1.45;
  color: var(--aquora-muted);
  text-align: center;
}

.pdp-buybox__footnote a {
  color: var(--aquora-navy);
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.pdp-buybox__checkout .pdp-buybox__cta-secondary {
  display: flex;
  justify-content: center;
  width: 100%;
}

.pdp-buybox__badge {
  margin-bottom: 0;
}

.pdp-buybox__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1rem;
  margin-bottom: 1.2rem;
}

.pdp-buybox__status {
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--aquora-rust-dark);
  letter-spacing: 0.02em;
}

.pdp-buybox__series {
  margin: -0.4rem 0 1.6rem;
  font-size: 1.4rem;
  font-weight: 600;
  color: var(--aquora-muted);
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.pdp-buybox__pricing {
  margin-bottom: 1.6rem;
  padding-bottom: 1.6rem;
  border-bottom: 1px solid var(--aquora-sand);
}

.pdp-buybox__price-label {
  margin: 0 0 0.4rem;
  font-family: var(--font-display);
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.15;
  color: var(--aquora-navy);
}

.pdp-buybox__financing {
  font-size: 1.4rem;
  font-weight: 600;
  color: var(--aquora-rust);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.pdp-buybox__financing:hover {
  color: var(--aquora-rust-dark);
}

.pdp-buybox__more {
  margin-bottom: 2rem;
  border-top: 1px solid var(--aquora-sand);
  border-bottom: 1px solid var(--aquora-sand);
}

.pdp-buybox__more summary {
  padding: 1.2rem 0;
  font-size: 1.4rem;
  font-weight: 700;
  color: var(--aquora-navy);
  cursor: pointer;
  list-style: none;
}

.pdp-buybox__more summary::-webkit-details-marker {
  display: none;
}

.pdp-buybox__more p {
  margin: 0 0 1.2rem;
  font-size: 1.45rem;
  line-height: 1.55;
  color: var(--aquora-muted);
}

.pdp-buybox__options {
  border: none;
  margin: 0 0 2rem;
  padding: 0;
}

.pdp-buybox__options-label {
  display: block;
  font-size: 1.3rem;
  font-weight: 700;
  color: var(--aquora-charcoal);
  margin-bottom: 0.8rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.pdp-buybox__option-group {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
}

.pdp-buybox__option {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 7rem;
  padding: 1rem 1.6rem;
  border: 2px solid var(--aquora-sand);
  border-radius: 0.6rem;
  font-size: 1.4rem;
  font-weight: 700;
  color: var(--aquora-charcoal);
  background: var(--aquora-white);
  transition: border-color 0.15s ease, background 0.15s ease;
}

.pdp-buybox__option:hover,
.pdp-buybox__option.is-selected {
  border-color: var(--aquora-navy);
  background: rgba(27, 40, 56, 0.04);
  color: var(--aquora-navy);
}

.pdp-buybox__trust-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.2rem 1.6rem;
  list-style: none;
  margin: 2.4rem 0 0;
  padding: 2rem 0 0;
  border-top: 1px solid var(--aquora-sand);
}

.pdp-buybox__trust-row li {
  display: flex;
  align-items: flex-start;
  gap: 0.8rem;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.35;
  color: var(--aquora-muted);
}

.pdp-buybox__trust-row svg {
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
  color: var(--aquora-gold);
  margin-top: 0.1rem;
}

@media (min-width: 1024px) {
  .pdp-buybox__trust-row {
    grid-template-columns: 1fr;
  }
}

/* Sticky anchor nav */
.pdp-anchor-nav {
  position: sticky;
  top: 6.4rem;
  z-index: 50;
  background: var(--aquora-white);
  border-bottom: 1px solid var(--aquora-sand);
  box-shadow: 0 2px 12px rgba(27, 40, 56, 0.04);
}

.pdp-anchor-nav__inner {
  display: flex;
  gap: 0;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}

.pdp-anchor-nav__inner::-webkit-scrollbar {
  display: none;
}

.pdp-anchor-nav__link {
  flex-shrink: 0;
  padding: 1.4rem 1.6rem;
  font-size: 1.35rem;
  font-weight: 600;
  color: var(--aquora-muted);
  border-bottom: 2px solid transparent;
  white-space: nowrap;
  transition: color 0.15s ease, border-color 0.15s ease;
}

.pdp-anchor-nav__link:hover,
.pdp-anchor-nav__link.is-active {
  color: var(--aquora-navy);
  border-bottom-color: var(--aquora-rust);
}

@media (min-width: 1024px) {
  .pdp-anchor-nav__inner {
    justify-content: center;
    gap: 0.4rem;
  }

  .pdp-anchor-nav__link {
    padding: 1.6rem 2rem;
    font-size: 1.4rem;
  }
}

/* Highlight grid (Plunge "What's New") */
.pdp-highlight-grid {
  padding: 5rem 0;
}

.pdp-highlight-grid__cards {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.6rem;
}

@media (min-width: 768px) {
  .pdp-highlight-grid__cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2rem;
  }
}

@media (min-width: 1024px) {
  .pdp-highlight-grid__cards {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.pdp-highlight-card {
  background: var(--aquora-white);
  border: 1px solid var(--aquora-sand);
  border-radius: 1.2rem;
  padding: 2rem;
  box-shadow: 0 1px 0 rgba(27, 40, 56, 0.04);
}

.pdp-highlight-card h3 {
  font-family: var(--font-display);
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.25;
  color: var(--aquora-navy);
  margin: 0 0 1rem;
}

.pdp-highlight-card p {
  margin: 0;
  font-size: 1.45rem;
  line-height: 1.55;
  color: var(--aquora-muted);
}

/* Details stack */
.pdp-details-stack {
  padding: 4rem 0 5rem;
  background: var(--aquora-white);
}

.pdp-accordion--details {
  max-width: 80rem;
  margin: 0 auto;
}

.pdp-accordion--details > .pdp-accordion__item {
  border-radius: 0;
  border-left: none;
  border-right: none;
  border-top: none;
}

.pdp-accordion--details > .pdp-accordion__item:first-child {
  border-top: 1px solid var(--aquora-sand);
}

.pdp-accordion--details > .pdp-accordion__item summary {
  font-size: 1.7rem;
  padding: 1.8rem 0;
}

.pdp-accordion--details > .pdp-accordion__item .pdp-accordion__body {
  padding: 0 0 2rem;
}

.pdp-accordion__list {
  margin: 1.2rem 0 0;
  padding-left: 1.6rem;
  font-size: 1.45rem;
  line-height: 1.6;
  color: var(--aquora-charcoal);
}

.pdp-accordion--nested {
  margin-top: 0.8rem;
}

.pdp-accordion--nested .pdp-accordion__item summary {
  font-size: 1.5rem;
  padding: 1.4rem 1.6rem;
}

.pdp-details-stack__more {
  margin: 1.6rem 0 0;
  font-size: 1.4rem;
  font-weight: 700;
}

.pdp-details-stack__more a {
  color: var(--aquora-rust);
  text-decoration: underline;
  text-underline-offset: 2px;
}

/* Included grid */
.pdp-included {
  padding: 5rem 0;
}

.pdp-included__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.6rem;
}

@media (min-width: 640px) {
  .pdp-included__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) {
  .pdp-included__grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}

.pdp-included__item {
  text-align: center;
  padding: 2rem 1.4rem;
  background: var(--aquora-white);
  border: 1px solid var(--aquora-sand);
  border-radius: 1.2rem;
}

.pdp-included__item h3 {
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--aquora-navy);
  margin: 0 0 0.8rem;
  line-height: 1.3;
}

.pdp-included__item p {
  margin: 0;
  font-size: 1.35rem;
  line-height: 1.45;
  color: var(--aquora-muted);
}

/* Stats strip */
.pdp-stats {
  padding: 5rem 0;
}

.pdp-stats__heading {
  font-family: var(--font-display);
  font-size: clamp(2.4rem, 3.5vw, 3.2rem);
  font-weight: 700;
  text-align: center;
  color: var(--aquora-cream);
  margin: 0 0 3.2rem;
  letter-spacing: -0.02em;
}

.pdp-stats__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2.4rem 2rem;
}

@media (min-width: 768px) {
  .pdp-stats__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.pdp-stat {
  text-align: center;
}

.pdp-stat__value {
  display: block;
  font-family: var(--font-display);
  font-size: clamp(2.4rem, 4vw, 3.4rem);
  font-weight: 700;
  line-height: 1.1;
  color: var(--aquora-gold);
  letter-spacing: -0.02em;
}

.pdp-stat__label {
  display: block;
  margin-top: 0.8rem;
  font-size: 1.35rem;
  font-weight: 600;
  line-height: 1.4;
  color: var(--aquora-cream);
  opacity: 0.82;
}

.pdp-benefits {
  padding: 4rem 0;
}

@media (min-width: 1024px) {
  .pdp-benefits {
    padding: 6rem 0;
  }
}

/* Dimensions */
.pdp-dimensions {
  padding: 5rem 0;
}

.pdp-dimensions__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
}

@media (min-width: 1024px) {
  .pdp-dimensions__grid {
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
  }
}

.pdp-dimensions__block h3 {
  font-family: var(--font-display);
  font-size: 2rem;
  font-weight: 700;
  color: var(--aquora-navy);
  margin: 0 0 1.6rem;
}

.pdp-dimensions__list {
  margin: 0 0 2rem;
  padding-left: 2rem;
  font-size: 1.5rem;
  line-height: 1.6;
  color: var(--aquora-charcoal);
}

.pdp-dimensions__list li + li {
  margin-top: 0.8rem;
}

.pdp-dimensions__diagram {
  background: linear-gradient(180deg, #1b2838 0%, #101820 100%);
  border-radius: 1rem;
  padding: 2rem;
  border: 1px solid rgba(245, 240, 232, 0.08);
}

.pdp-dimensions__diagram img {
  width: 100%;
  max-height: 20rem;
  object-fit: contain;
  margin: 0 auto;
}

/* Finance band */
.pdp-finance {
  padding: 5rem 0;
  background: var(--aquora-cream);
  border-top: 1px solid var(--aquora-sand);
  border-bottom: 1px solid var(--aquora-sand);
}

.pdp-finance__inner {
  text-align: center;
  max-width: 56rem;
  margin: 0 auto;
}

.pdp-finance__inner h2 {
  font-family: var(--font-display);
  font-size: clamp(2.4rem, 3.5vw, 3.2rem);
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: var(--aquora-navy);
  margin: 1rem 0 1.2rem;
}

.pdp-finance__inner > p:not(.pdp-finance__micro) {
  margin: 0 0 2.4rem;
  font-size: 1.6rem;
  line-height: 1.55;
  color: var(--aquora-muted);
}

.pdp-finance__micro {
  margin: 1.6rem 0 0;
  font-size: 1.25rem;
  font-weight: 600;
  color: var(--aquora-muted);
}

.pdp-difference {
  padding: 5rem 0;
}

@media (min-width: 1024px) {
  .pdp-difference {
    padding: 8rem 0;
  }
}

/* Mobile sticky bar */
.pdp-sticky-bar {
  display: block;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 85;
  background: var(--aquora-white);
  border-top: 1px solid var(--aquora-sand);
  box-shadow: 0 -4px 20px rgba(27, 40, 56, 0.08);
  padding: 1.2rem 0;
  padding-bottom: calc(1.2rem + env(safe-area-inset-bottom, 0));
}

@media (min-width: 1024px) {
  .pdp-sticky-bar {
    display: none;
  }
}

.pdp-sticky-bar__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.2rem;
}

.pdp-sticky-bar__info {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.pdp-sticky-bar__name {
  font-size: 1.35rem;
  font-weight: 700;
  color: var(--aquora-navy);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.pdp-sticky-bar__price {
  font-size: 1.2rem;
  font-weight: 600;
  color: var(--aquora-muted);
}

.pdp-page .chat-widget {
  bottom: calc(7.2rem + env(safe-area-inset-bottom, 0));
}

@media (min-width: 1024px) {
  .pdp-page .chat-widget {
    bottom: 2.4rem;
  }

  .pdp-page .footer {
    padding-bottom: 3rem;
  }
}

.pdp-page .footer {
  padding-bottom: calc(8rem + env(safe-area-inset-bottom, 0));
}

.pdp-page [id] {
  scroll-margin-top: 12rem;
}

@media (min-width: 1024px) {
  .pdp-page [id] {
    scroll-margin-top: 14rem;
  }
}

.pdp-pricing-cta__micro {
  margin: 1.6rem 0 0;
  font-size: 1.25rem;
  font-weight: 600;
  color: var(--aquora-muted);
}

.pdp-buybox__subhead {
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 1.45;
  color: var(--aquora-muted);
  margin: 0 0 2rem;
}

.pdp-buybox__highlights {
  list-style: none;
  margin: 0 0 2.4rem;
  padding: 0;
}

.pdp-buybox__highlights li {
  position: relative;
  padding-left: 2rem;
  margin-bottom: 1rem;
  font-size: 1.5rem;
  line-height: 1.5;
  color: var(--aquora-charcoal);
}

.pdp-buybox__highlights li::before {
  content: "★";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--aquora-gold);
  font-size: 1.1rem;
}

.pdp-buybox__ctas {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
  align-items: stretch;
}

.pdp-buybox__cta-primary {
  width: 100%;
  max-width: 100%;
}

.pdp-buybox__cta-secondary {
  align-self: center;
  font-size: 1.5rem;
}

.pdp-buybox__trust {
  margin: 2rem 0 0;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.5;
  color: var(--aquora-muted);
  text-align: center;
}

@media (min-width: 1024px) {
  .pdp-buybox__trust {
    text-align: left;
  }
}

.pdp-value-strip {
  border-bottom: 1px solid var(--aquora-sand);
}

/* Feature blocks */
.pdp-features {
  background: var(--aquora-white);
}

.pdp-feature {
  padding: 4rem 0;
}

.pdp-feature:nth-child(even) {
  background: var(--aquora-cream);
}

.pdp-feature__inner {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
  align-items: center;
}

@media (min-width: 1024px) {
  .pdp-feature {
    padding: 6rem 0;
  }

  .pdp-feature__inner {
    grid-template-columns: 1fr 1fr;
    gap: 5rem;
  }

  .pdp-feature--reverse .pdp-feature__media {
    order: 2;
  }

  .pdp-feature--reverse .pdp-feature__content {
    order: 1;
  }
}

.pdp-feature__media {
  min-width: 0;
  border-radius: 1.2rem;
  overflow: hidden;
  background: var(--aquora-navy);
  aspect-ratio: 4 / 3;
}

.pdp-feature__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.pdp-feature__content h2 {
  font-family: var(--font-display);
  font-size: clamp(2.4rem, 3.5vw, 3.2rem);
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: var(--aquora-navy);
  margin: 0 0 1.6rem;
}

.pdp-feature__content p {
  font-size: 1.6rem;
  line-height: 1.6;
  color: var(--aquora-muted);
  margin: 0;
}

@media (min-width: 768px) {
  .pdp-feature__content p {
    font-size: 1.8rem;
  }
}

/* Section headings */
.pdp-section-heading {
  text-align: center;
  max-width: 62rem;
  margin: 0 auto 3.2rem;
}

.pdp-section-heading--left {
  text-align: left;
  margin-left: 0;
  margin-right: 0;
  max-width: 52rem;
}

.pdp-section-heading h2 {
  font-family: var(--font-display);
  font-size: clamp(2.6rem, 4vw, 3.6rem);
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: var(--aquora-navy);
  margin: 0;
}

.pdp-section-heading__sub {
  margin: 1.2rem 0 0;
  font-size: 1.6rem;
  line-height: 1.55;
  color: var(--aquora-muted);
}

/* Specs */
.pdp-specs {
  padding: 5rem 0;
}

.pdp-specs-table-wrap {
  overflow-x: auto;
  margin-bottom: 2.4rem;
  border: 1px solid var(--aquora-sand);
  border-radius: 1.2rem;
  background: var(--aquora-white);
}

.pdp-specs-table {
  width: 100%;
  min-width: 28rem;
  border-collapse: collapse;
  font-size: 1.5rem;
}

.pdp-specs-table th,
.pdp-specs-table td {
  padding: 1.4rem 1.6rem;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid var(--aquora-sand);
}

.pdp-specs-table tr:last-child th,
.pdp-specs-table tr:last-child td {
  border-bottom: none;
}

.pdp-specs-table th {
  width: 34%;
  font-weight: 700;
  color: var(--aquora-navy);
  background: rgba(245, 240, 232, 0.55);
}

.pdp-specs-table td {
  color: var(--aquora-charcoal);
  line-height: 1.5;
}

/* Accordion */
.pdp-accordion {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
}

.pdp-accordion__item {
  border: 1px solid var(--aquora-sand);
  border-radius: 1rem;
  background: var(--aquora-white);
  overflow: hidden;
}

.pdp-accordion__item summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.6rem;
  padding: 1.6rem 2rem;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.4;
  color: var(--aquora-navy);
  cursor: pointer;
  list-style: none;
}

.pdp-accordion__item summary::-webkit-details-marker {
  display: none;
}

.pdp-accordion__item summary::after {
  content: "+";
  flex-shrink: 0;
  font-size: 2rem;
  font-weight: 400;
  color: var(--aquora-rust);
  line-height: 1;
}

.pdp-accordion__item[open] summary::after {
  content: "−";
}

.pdp-accordion__body {
  padding: 0 2rem 1.6rem;
}

.pdp-accordion__body p {
  margin: 0;
  font-size: 1.5rem;
  line-height: 1.6;
  color: var(--aquora-muted);
}

/* Compare nudge */
.pdp-compare-nudge {
  padding: 4rem 0;
  background: var(--aquora-white);
}

.pdp-compare-nudge__inner {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  align-items: flex-start;
}

.pdp-compare-nudge__copy h2 {
  font-family: var(--font-display);
  font-size: clamp(2.2rem, 3.5vw, 3rem);
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: var(--aquora-navy);
  margin: 0 0 1rem;
}

.pdp-compare-nudge__copy p {
  margin: 0;
  font-size: 1.6rem;
  line-height: 1.55;
  color: var(--aquora-muted);
}

.pdp-compare-nudge__mini {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
  width: 100%;
}

@media (min-width: 640px) {
  .pdp-compare-nudge__mini {
    grid-template-columns: 1fr 1fr;
  }
}

.pdp-compare-nudge__label {
  display: block;
  font-family: var(--font-display);
  font-size: 1.6rem;
  font-weight: 700;
  color: var(--aquora-charcoal);
  margin-bottom: 1rem;
}

.pdp-compare-nudge__label--aquora {
  color: var(--aquora-rust-dark);
}

.pdp-compare-nudge__col ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.pdp-compare-nudge__col li {
  position: relative;
  padding-left: 1.6rem;
  margin-bottom: 0.8rem;
  font-size: 1.45rem;
  line-height: 1.45;
  color: var(--aquora-charcoal);
}

.pdp-compare-nudge__col li::before {
  content: "•";
  position: absolute;
  left: 0;
  color: var(--aquora-gold);
}

/* Reviews compact */
.pdp-reviews {
  margin: 0;
  padding: 4rem 0 5rem;
}

.pdp-reviews__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
}

@media (min-width: 768px) {
  .pdp-reviews__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) {
  .pdp-reviews__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.pdp-reviews__video {
  min-height: 100%;
}

@media (max-width: 1023px) {
  .pdp-reviews__video {
    aspect-ratio: 3 / 4;
  }
}

/* FAQ */
.pdp-faq {
  padding: 5rem 0;
  background: var(--aquora-white);
  border-top: 1px solid var(--aquora-sand);
}

.pdp-accordion--faq {
  max-width: 72rem;
  margin: 0 auto;
}

/* Pricing CTA block */
.pdp-pricing-cta {
  padding: 4rem 0;
  border-top: 1px solid var(--aquora-sand);
}

.pdp-pricing-cta__inner {
  text-align: center;
  max-width: 52rem;
  margin: 0 auto;
}

.pdp-pricing-cta__inner h2 {
  font-family: var(--font-display);
  font-size: clamp(2.4rem, 3.5vw, 3.2rem);
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: var(--aquora-navy);
  margin: 0 0 1.2rem;
}

.pdp-pricing-cta__inner > p:not(.pdp-pricing-cta__micro) {
  margin: 0 0 2.4rem;
  font-size: 1.6rem;
  line-height: 1.55;
  color: var(--aquora-muted);
}

.pdp-pricing-cta__micro {
  margin: 1.6rem 0 0;
  font-size: 1.25rem;
  font-weight: 600;
  color: var(--aquora-muted);
}
