html {
  scroll-behavior: auto !important;
}

[id] {
  scroll-margin-top: 104px;
}

.section-pad {
  scroll-margin-top: 104px;
}

@media (max-width: 899px) {
  [id],
  .section-pad {
    scroll-margin-top: 82px;
  }
}

@media (max-width: 520px) {
  .age-gate {
    padding: 36px 22px !important;
  }

  .age-gate__logo {
    height: 66px !important;
    margin-bottom: 18px !important;
  }

  .age-gate__question,
  .age-gate__hint,
  .age-gate__legal {
    width: 100% !important;
    max-width: 340px !important;
  }

  .age-gate__hint {
    font-size: 12px !important;
    line-height: 1.55 !important;
  }

  .age-gate__actions {
    width: 100% !important;
    max-width: 340px !important;
    gap: 10px !important;
    flex-wrap: nowrap !important;
  }

  .age-gate__actions .btn {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    justify-content: center !important;
    padding: 15px 12px !important;
    font-size: 10px !important;
    letter-spacing: 0.22em !important;
  }
}

.video-band__video {
  -webkit-mask-image:
    linear-gradient(90deg, transparent 0, #000 18%, #000 82%, transparent),
    linear-gradient(180deg, transparent 0, #000 16%, #000 100%) !important;
  mask-image:
    linear-gradient(90deg, transparent 0, #000 18%, #000 82%, transparent),
    linear-gradient(180deg, transparent 0, #000 16%, #000 100%) !important;
  -webkit-mask-composite: source-in !important;
  mask-composite: intersect !important;
}

.header__brand-logo {
  height: 74px !important;
  width: auto !important;
  max-width: min(32vw, 330px);
  margin: -15px 0 !important;
  object-fit: contain;
}

@media (min-width: 900px) {
  .hero::after {
    content: "" !important;
    position: absolute !important;
    top: -24px !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 1 !important;
    height: 360px !important;
    pointer-events: none !important;
    background: linear-gradient(
      180deg,
      rgba(3, 0, 2, 0.98) 0%,
      rgba(3, 0, 2, 0.9) 28%,
      rgba(3, 0, 2, 0.58) 58%,
      rgba(3, 0, 2, 0.18) 86%,
      rgba(3, 0, 2, 0) 100%
    ) !important;
  }
}

@media (max-width: 979px) {
  .header__brand-logo {
    height: 48px !important;
    max-width: 184px;
    margin: -6px 0 !important;
  }
}

@media (max-width: 899px) {
  :root {
    --gutter: 20px;
  }

  .header {
    padding: 16px var(--gutter) !important;
  }

  .header__menu-btn {
    gap: 12px !important;
    font-size: 10px !important;
    letter-spacing: 0.22em !important;
  }

  .hero {
    min-height: min(940px, 100svh) !important;
    padding: 86px 0 0 !important;
    align-items: stretch !important;
    overflow: hidden !important;
  }

  .hero__grid {
    position: relative !important;
    min-height: calc(100svh - 86px) !important;
    gap: 0 !important;
    display: block !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .hero__copy {
    text-align: center !important;
    position: absolute !important;
    left: calc(var(--gutter) * -1) !important;
    right: calc(var(--gutter) * -1) !important;
    bottom: 28px !important;
    z-index: 4 !important;
    padding: 118px var(--gutter) 28px !important;
    background: linear-gradient(
      180deg,
      rgba(5, 0, 3, 0) 0%,
      rgba(8, 0, 4, 0.52) 24%,
      rgba(6, 0, 3, 0.88) 62%,
      #050003 100%
    ) !important;
  }

  .hero__eyebrow {
    justify-content: center !important;
    width: 100% !important;
    margin: 0 auto 10px !important;
  }

  .hero__eyebrow .eyebrow {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    font-size: 9px !important;
    letter-spacing: 0.28em !important;
  }

  .hero__title--quote {
    max-width: 11.4em !important;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-bottom: 12px !important;
    font-size: clamp(25px, 7.3vw, 34px) !important;
    line-height: 1.04 !important;
  }

  .hero__sub {
    max-width: 260px !important;
    font-size: 17px !important;
    line-height: 1.22 !important;
    margin-top: 0 !important;
    margin-bottom: 10px !important;
  }

  .hero__detail {
    max-width: 280px !important;
    font-size: 11px !important;
    line-height: 1.45 !important;
    margin-bottom: 16px !important;
  }

  .hero__ctas {
    width: 100% !important;
  }

  .hero__ctas .btn {
    width: min(100%, 292px) !important;
    justify-content: center !important;
    padding: 13px 14px !important;
    font-size: 9px !important;
    letter-spacing: 0.16em !important;
    gap: 12px !important;
  }

  .hero__bottle-stage {
    position: absolute !important;
    inset: 0 calc(var(--gutter) * -1) 0 !important;
    z-index: 1 !important;
    height: auto !important;
    width: auto !important;
    margin: 0 !important;
    align-items: flex-end !important;
    overflow: hidden !important;
    background:
      radial-gradient(ellipse at 50% 12%, rgba(82, 18, 28, 0.42), transparent 58%),
      linear-gradient(180deg, #19030a 0%, #100207 36%, #050003 100%) !important;
  }

  .hero__bottle-stage::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 0 auto 0 !important;
    height: 54px !important;
    z-index: 2 !important;
    pointer-events: none !important;
    background: linear-gradient(180deg, #19030a 0%, rgba(25, 3, 10, 0.72) 34%, rgba(25, 3, 10, 0) 100%) !important;
  }

  .hero__banner {
    object-position: center bottom !important;
    opacity: 0.98 !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
  }

  .section-pad {
    padding: 72px 0 !important;
  }

  .idx,
  .collection__head,
  .differentials__head,
  .mow__content,
  .line-section__head,
  .origin__head,
  .experience__head,
  .retail__head {
    text-align: center !important;
  }

  .collection__title,
  .differentials__title,
  .mow__title,
  .line-section__name,
  .origin__title,
  .experience__title,
  .retail__title,
  .final-cta__title {
    max-width: 9em !important;
    margin-left: auto !important;
    margin-right: auto !important;
    font-size: clamp(40px, 12vw, 54px) !important;
    line-height: 0.98 !important;
  }

  .line-section__sub,
  .manifesto__pullquote,
  .final-cta__closing {
    max-width: 12em !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .body-text {
    max-width: 34ch !important;
  }

  .collection__head .body-text,
  .differentials__head .body-text,
  .mow__content .body-text,
  .line-section__head .body-text,
  .origin__head .body-text,
  .experience__head .body-text,
  .retail__head .body-text {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .line-card,
  .product,
  .diff-card,
  .retail-card,
  .origin-card {
    padding-left: 22px !important;
    padding-right: 22px !important;
  }

  .line-card {
    min-height: 430px !important;
  }

  .line-card__name {
    font-size: clamp(48px, 15vw, 64px) !important;
  }

  .product__name {
    font-size: clamp(34px, 10vw, 46px) !important;
  }

  .mow__grid {
    gap: 38px !important;
  }

  .mow__portrait {
    aspect-ratio: 1182 / 1331 !important;
    width: min(100%, 360px) !important;
    max-width: 360px !important;
    margin: 0 auto !important;
    border-radius: 12px !important;
    background: #080404 !important;
  }

  .mow__portrait-img {
    object-position: center top !important;
  }

  .mow__stat-row {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 10px 0 !important;
    border-top-color: rgba(198, 163, 90, 0.18) !important;
    border-bottom-color: rgba(198, 163, 90, 0.18) !important;
  }

  .mow__stat-row > * {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    min-height: 112px !important;
    padding: 16px 8px !important;
    text-align: center !important;
    border: 1px solid rgba(198, 163, 90, 0.14) !important;
    background:
      radial-gradient(circle at 50% 0%, rgba(198, 163, 90, 0.12), transparent 62%),
      rgba(255, 255, 255, 0.018) !important;
  }

  .mow__stat-num {
    font-size: clamp(30px, 11vw, 46px) !important;
    margin-bottom: 8px !important;
  }

  .mow__stat-label {
    font-size: 8px !important;
    letter-spacing: 0.18em !important;
    line-height: 1.45 !important;
  }

  .experience__head {
    margin-bottom: 34px !important;
  }

  .timeline {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
    padding: 0 !important;
  }

  .tl-step {
    align-items: flex-start !important;
    min-height: 168px !important;
    padding: 18px 16px !important;
    text-align: left !important;
    border: 1px solid rgba(198, 163, 90, 0.22) !important;
    background:
      linear-gradient(180deg, rgba(198, 163, 90, 0.055), rgba(255, 255, 255, 0.01)),
      #070404 !important;
  }

  .tl-step__dot {
    position: absolute !important;
    top: 18px !important;
    right: 16px !important;
    width: 9px !important;
    height: 9px !important;
    margin: 0 !important;
    background: rgba(198, 163, 90, 0.22) !important;
  }

  .tl-step__dot::before {
    inset: 2px !important;
  }

  .tl-step__idx {
    margin-bottom: 20px !important;
    font-size: 9px !important;
  }

  .tl-step__name {
    font-size: clamp(30px, 9vw, 38px) !important;
    margin-bottom: 10px !important;
  }

  .tl-step__desc {
    max-width: none !important;
    margin: 0 !important;
    font-size: 11px !important;
    line-height: 1.45 !important;
  }

  .tl-step__moment {
    margin-top: auto !important;
    padding-top: 14px !important;
    font-size: 13px !important;
  }
}

@media (max-width: 379px) {
  .mow__stat-row {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    max-width: 260px !important;
  }

  .mow__stat-row > * {
    min-height: auto !important;
    padding: 14px 16px !important;
  }
}

@media (min-width: 900px) {
  .experience__head {
    margin-bottom: 48px !important;
  }

  .timeline {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 16px !important;
    padding: 0 !important;
  }

  .timeline::before {
    display: none !important;
  }

  .tl-step {
    align-items: flex-start !important;
    min-height: 254px !important;
    padding: 28px 24px 26px !important;
    text-align: left !important;
    border: 1px solid rgba(198, 163, 90, 0.2) !important;
    background:
      linear-gradient(180deg, rgba(198, 163, 90, 0.06), rgba(255, 255, 255, 0.012)),
      #060404 !important;
    overflow: hidden !important;
  }

  .tl-step::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 2px !important;
    background: linear-gradient(90deg, var(--gold), rgba(198, 163, 90, 0)) !important;
    opacity: 0.62 !important;
  }

  .tl-step__dot {
    position: absolute !important;
    top: 26px !important;
    right: 24px !important;
    width: 10px !important;
    height: 10px !important;
    margin: 0 !important;
    background: rgba(198, 163, 90, 0.18) !important;
  }

  .tl-step__dot::before {
    inset: 2px !important;
  }

  .tl-step__idx {
    margin-bottom: 36px !important;
    font-size: 10px !important;
  }

  .tl-step__name {
    font-size: clamp(32px, 2.55vw, 44px) !important;
    margin-bottom: 18px !important;
  }

  .tl-step__desc {
    max-width: 18ch !important;
    margin: 0 !important;
    font-size: 13px !important;
    line-height: 1.55 !important;
  }

  .tl-step__moment {
    margin-top: auto !important;
    padding-top: 24px !important;
    font-size: 16px !important;
  }
}

.footer__brand-logo {
  width: 72px !important;
  height: auto !important;
}

@media (max-width: 899px) {
  .footer__brand-logo {
    width: 60px !important;
  }
}

.footer {
  padding-top: clamp(58px, 7vw, 92px) !important;
  background:
    radial-gradient(ellipse at 20% 0%, rgba(198, 163, 90, 0.08), transparent 42%),
    linear-gradient(180deg, #040404, #010101) !important;
}

.footer .shell {
  width: min(calc(100% - 156px), 1880px) !important;
  max-width: none !important;
}

.footer__top {
  grid-template-columns: minmax(520px, 1fr) 220px 220px !important;
  gap: clamp(56px, 7vw, 120px) !important;
  align-items: start !important;
  padding-bottom: 56px !important;
  border-bottom: 1px solid rgba(198, 163, 90, 0.16) !important;
}

.footer__brand {
  max-width: 680px !important;
  text-align: left !important;
}

.footer__crest-row {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: clamp(22px, 3vw, 42px) !important;
  margin-bottom: 34px !important;
}

.footer__signature {
  max-width: 148px !important;
  height: auto !important;
  opacity: 0.78 !important;
}

.footer__motto {
  max-width: 500px !important;
  margin: 0 0 30px !important;
  font-size: clamp(28px, 2.8vw, 42px) !important;
  line-height: 1.22 !important;
}

.footer__address {
  font-size: 13px !important;
  letter-spacing: 0.04em !important;
}

.footer__col {
  padding-top: 26px !important;
  text-align: left !important;
}

.footer__col h5 {
  margin-bottom: 26px !important;
  color: var(--gold) !important;
  font-size: 11px !important;
  letter-spacing: 0.34em !important;
}

.footer__col ul {
  display: grid !important;
  gap: 18px !important;
}

.footer__col a {
  font-size: 16px !important;
  line-height: 1.25 !important;
  color: rgba(242, 235, 224, 0.66) !important;
}

.footer__col a:hover {
  color: var(--gold-light) !important;
}

.footer__legal {
  padding-top: 26px !important;
}

.mow__stat-row {
  border-color: rgba(198, 163, 90, 0.18) !important;
  gap: 0 !important;
  background:
    linear-gradient(180deg, rgba(198, 163, 90, 0.035), rgba(255, 255, 255, 0.01)),
    rgba(5, 5, 5, 0.42) !important;
}

.mow__stat-row > * {
  padding: 8px 22px !important;
}

.mow__stat-row > * + * {
  border-left: 1px solid rgba(198, 163, 90, 0.14) !important;
}

.mow__stat-num {
  font-size: clamp(34px, 3.2vw, 48px) !important;
  margin-bottom: 10px !important;
}

.mow__stat-label {
  max-width: 150px !important;
}

.mow__quote {
  max-width: 680px !important;
  margin: 18px 0 0 !important;
  padding: 24px 28px !important;
  border-left: 2px solid var(--gold) !important;
  border-top: 1px solid rgba(198, 163, 90, 0.12) !important;
  border-bottom: 1px solid rgba(198, 163, 90, 0.12) !important;
  background:
    linear-gradient(90deg, rgba(198, 163, 90, 0.065), rgba(255, 255, 255, 0.012) 65%, transparent),
    rgba(255, 255, 255, 0.012) !important;
  font-size: clamp(20px, 1.7vw, 28px) !important;
  line-height: 1.34 !important;
}

.mow__attr {
  width: fit-content !important;
  margin-top: 18px !important;
  padding-bottom: 8px !important;
  border-bottom: 1px solid rgba(198, 163, 90, 0.28) !important;
  letter-spacing: 0.3em !important;
}

.final-cta::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  background:
    linear-gradient(180deg, #050505 0%, rgba(5, 5, 5, 0.96) 9%, rgba(5, 5, 5, 0.58) 22%, rgba(5, 5, 5, 0) 42%),
    linear-gradient(0deg, #050505 0%, rgba(5, 5, 5, 0) 24%),
    linear-gradient(90deg, rgba(5, 5, 5, 0.78), rgba(5, 5, 5, 0) 28%, rgba(5, 5, 5, 0) 72%, rgba(5, 5, 5, 0.72));
}

.final-cta__inner {
  position: relative !important;
  z-index: 2 !important;
}

@media (max-width: 899px) {
  .footer .shell {
    width: min(calc(100% - 40px), 640px) !important;
  }

  .footer__top {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
    padding-bottom: 38px !important;
  }

  .footer__crest-row {
    justify-content: flex-start !important;
    flex-wrap: wrap !important;
    gap: 20px 28px !important;
  }

  .footer__signature {
    max-width: 128px !important;
  }

  .footer__motto {
    font-size: 28px !important;
  }

  .footer__col {
    padding-top: 0 !important;
  }

  .mow__quote {
    max-width: 330px !important;
    margin: 10px auto 0 !important;
    padding: 20px 18px !important;
    text-align: left !important;
    font-size: 21px !important;
    line-height: 1.34 !important;
  }

  .mow__attr {
    width: auto !important;
    max-width: 330px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
    font-size: 9px !important;
    line-height: 1.8 !important;
  }

  .final-cta::after {
    background:
      linear-gradient(180deg, #050505 0%, rgba(5, 5, 5, 0.96) 10%, rgba(5, 5, 5, 0.62) 25%, rgba(5, 5, 5, 0) 48%),
      linear-gradient(0deg, #050505 0%, rgba(5, 5, 5, 0) 26%),
      linear-gradient(90deg, rgba(5, 5, 5, 0.62), rgba(5, 5, 5, 0) 34%, rgba(5, 5, 5, 0) 66%, rgba(5, 5, 5, 0.62)) !important;
  }
}

.reveal {
  transform: translateY(18px);
  transition-duration: 760ms;
  transition-timing-function: cubic-bezier(0.2, 0.7, 0.2, 1);
}

.reveal-stagger > * {
  transform: translateY(16px);
  transition-duration: 680ms;
  transition-timing-function: cubic-bezier(0.2, 0.7, 0.2, 1);
}

.reveal-stagger.in > * {
  transition-delay: 80ms;
}

.reveal-stagger.in > :nth-child(2) {
  transition-delay: 140ms;
}

.reveal-stagger.in > :nth-child(3) {
  transition-delay: 200ms;
}

.reveal-stagger.in > :nth-child(4) {
  transition-delay: 260ms;
}

.reveal-stagger.in > :nth-child(5) {
  transition-delay: 320ms;
}

.line-card,
.product,
.diff-card,
.retail-card,
.origin-card,
.tl-step {
  will-change: transform, opacity;
}

.btn,
.line-card,
.product,
.diff-card,
.retail-card,
.origin-card,
.tl-step {
  transition:
    transform 360ms cubic-bezier(0.2, 0.7, 0.2, 1),
    border-color 360ms ease,
    background 360ms ease,
    color 360ms ease,
    opacity 360ms ease !important;
}

.hover-lift:hover,
.line-card:hover,
.product:hover,
.diff-card:hover,
.retail-card:hover,
.origin-card:hover,
.tl-step:hover {
  transform: translateY(-5px) !important;
}

.line-card__bottle-img,
.product__bottle,
.blend-bottle__img,
.eterno-stage__bottle-img {
  transition:
    transform 520ms cubic-bezier(0.2, 0.7, 0.2, 1),
    filter 520ms ease !important;
}

@media (prefers-reduced-motion: no-preference) {
  .hero__bottle-stage {
    animation: bottle-stage-arrive 1200ms cubic-bezier(0.18, 0.78, 0.24, 1) 260ms both;
  }

  .reveal-stagger:not(.in) .line-card__bottle-img,
  .reveal-stagger:not(.in) .product__bottle,
  .reveal-stagger:not(.in) .blend-bottle__img,
  .reveal-stagger:not(.in) .eterno-stage__bottle-img {
    opacity: 0;
    transform: translate3d(0, 34px, 0) scale(0.94);
    filter: blur(8px) saturate(0.92);
  }

  .reveal-stagger.in .line-card__bottle-img,
  .reveal-stagger.in .product__bottle,
  .reveal-stagger.in .blend-bottle__img,
  .reveal-stagger.in .eterno-stage__bottle-img {
    animation: bottle-arrive 950ms cubic-bezier(0.18, 0.78, 0.24, 1) both;
  }

  .reveal-stagger.in .line-card__bottle-img:nth-child(2),
  .reveal-stagger.in .blend-bottle:nth-child(2) .blend-bottle__img,
  .reveal-stagger.in .product:nth-child(2) .product__bottle {
    animation-delay: 150ms;
  }

  .reveal-stagger.in .line-card:nth-child(2) .line-card__bottle-img,
  .reveal-stagger.in .product:nth-child(2) .product__bottle {
    animation-delay: 180ms;
  }

  .reveal-stagger.in .line-card:nth-child(3) .line-card__bottle-img,
  .reveal-stagger.in .product:nth-child(3) .product__bottle {
    animation-delay: 280ms;
  }

  .reveal-stagger.in .line-card:nth-child(4) .line-card__bottle-img,
  .reveal-stagger.in .product:nth-child(4) .product__bottle {
    animation-delay: 380ms;
  }

  .reveal-stagger.in .line-card:nth-child(2) .line-card__bottle-img:nth-child(2) {
    animation-delay: 300ms;
  }

  .reveal-stagger.in .line-card:nth-child(3) .line-card__bottle-img:nth-child(2) {
    animation-delay: 400ms;
  }

  .reveal-stagger.in .line-card:nth-child(4) .line-card__bottle-img:nth-child(2) {
    animation-delay: 500ms;
  }
}

.line-card:hover .line-card__bottle-img,
.product:hover .product__bottle,
.blend-bottle:hover .blend-bottle__img,
.eterno-stage:hover .eterno-stage__bottle-img {
  transform: translateY(-8px) scale(1.025) !important;
  filter: drop-shadow(0 22px 26px rgba(0, 0, 0, 0.42));
}

@media (prefers-reduced-motion: no-preference) {
  .hero__copy.in {
    animation: hero-copy-settle 900ms cubic-bezier(0.2, 0.7, 0.2, 1) both;
  }

  .hero__banner {
    animation: hero-banner-breathe 9s ease-in-out infinite;
    transform-origin: center bottom;
  }

  .video-band__video,
  .final-cta__bottle {
    animation: soft-media-presence 12s ease-in-out infinite;
  }
}

@keyframes bottle-stage-arrive {
  from {
    opacity: 0;
    transform: translate3d(0, 28px, 0) scale(0.985);
    filter: blur(10px) saturate(0.9);
  }

  to {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
    filter: blur(0) saturate(1);
  }
}

@keyframes bottle-arrive {
  0% {
    opacity: 0;
    transform: translate3d(0, 38px, 0) scale(0.94);
    filter: blur(8px) saturate(0.9);
  }

  62% {
    opacity: 1;
    transform: translate3d(0, -5px, 0) scale(1.015);
    filter: blur(0) saturate(1.04);
  }

  100% {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
    filter: blur(0) saturate(1);
  }
}

@keyframes hero-copy-settle {
  from {
    filter: blur(4px);
  }

  to {
    filter: blur(0);
  }
}

@keyframes hero-banner-breathe {
  0%,
  100% {
    transform: translate3d(0, 0, 0) scale(1);
  }

  50% {
    transform: translate3d(0, -8px, 0) scale(1.01);
  }
}

@keyframes soft-media-presence {
  0%,
  100% {
    filter: saturate(1) contrast(1);
  }

  50% {
    filter: saturate(1.06) contrast(1.04);
  }
}

.form__error {
  grid-column: 1 / -1;
  color: #d97a8a;
  font-size: 14px;
  line-height: 1.5;
  padding: 4px 0;
}

.form__consent.invalid {
  color: #d97a8a !important;
}

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

  .reveal,
  .reveal-stagger > * {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }

  .hero__bottle-stage,
  .line-card__bottle-img,
  .product__bottle,
  .blend-bottle__img,
  .eterno-stage__bottle-img,
  .hero__banner,
  .video-band__video,
  .final-cta__bottle {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
    animation: none !important;
  }
}

/* Visual polish pass: make sections feel editorial instead of repeated grids. */
.manifesto {
  background:
    radial-gradient(ellipse at 8% 20%, rgba(198, 163, 90, 0.1), transparent 34%),
    radial-gradient(ellipse at 82% 30%, rgba(74, 15, 29, 0.24), transparent 44%),
    linear-gradient(180deg, #050505, #030303) !important;
  overflow: hidden !important;
}

.manifesto::before {
  content: "" !important;
  position: absolute !important;
  left: max(56px, 7vw) !important;
  right: max(56px, 7vw) !important;
  top: 96px !important;
  height: 1px !important;
  background: linear-gradient(90deg, rgba(198, 163, 90, 0), rgba(198, 163, 90, 0.34), rgba(198, 163, 90, 0)) !important;
  opacity: 0.5 !important;
}

.manifesto__grid {
  position: relative !important;
}

.manifesto__head {
  position: relative !important;
  min-height: 470px !important;
  justify-content: center !important;
}

.manifesto__autograph {
  align-self: flex-end !important;
  margin-top: -10px !important;
  padding-right: 10% !important;
  opacity: 0.88 !important;
  filter: drop-shadow(0 18px 32px rgba(0, 0, 0, 0.42)) !important;
}

.manifesto__body {
  position: relative !important;
  padding: clamp(30px, 4vw, 48px) !important;
  border: 1px solid rgba(198, 163, 90, 0.14) !important;
  background:
    linear-gradient(135deg, rgba(198, 163, 90, 0.065), rgba(255, 255, 255, 0.012) 42%, transparent),
    rgba(7, 4, 4, 0.62) !important;
}

.manifesto__body::before {
  content: "Le Prince" !important;
  position: absolute !important;
  right: 28px !important;
  top: 18px !important;
  font-family: var(--serif) !important;
  font-size: clamp(42px, 7vw, 88px) !important;
  font-style: italic !important;
  color: rgba(198, 163, 90, 0.055) !important;
  pointer-events: none !important;
}

.manifesto__stats {
  gap: 1px !important;
  padding-top: 18px !important;
  border-top: 1px solid rgba(198, 163, 90, 0.16) !important;
}

.manifesto__stats > * {
  padding: 18px 18px 12px !important;
  background: rgba(0, 0, 0, 0.24) !important;
}

.collection {
  background:
    radial-gradient(ellipse at 12% 18%, rgba(198, 163, 90, 0.08), transparent 34%),
    radial-gradient(ellipse at 80% 28%, rgba(74, 15, 29, 0.22), transparent 45%),
    linear-gradient(180deg, #050505, #080305 44%, #040404) !important;
  overflow: hidden !important;
}

.collection__head {
  align-items: center !important;
  margin-bottom: clamp(42px, 6vw, 72px) !important;
}

.collection__title {
  max-width: 7.5em !important;
}

.collection__lines {
  gap: 12px !important;
  background: transparent !important;
  border: 0 !important;
}

.line-card {
  border: 1px solid rgba(198, 163, 90, 0.2) !important;
  background:
    var(--line-card-glow),
    linear-gradient(180deg, rgba(255, 255, 255, 0.018), rgba(255, 255, 255, 0.004)),
    #050505 !important;
  min-height: 560px !important;
  overflow: hidden !important;
}

.line-card::after {
  content: "" !important;
  position: absolute !important;
  left: 24px !important;
  right: 24px !important;
  bottom: 112px !important;
  height: 36px !important;
  border-radius: 50% !important;
  background: radial-gradient(ellipse, rgba(198, 163, 90, 0.18), rgba(0, 0, 0, 0) 68%) !important;
  filter: blur(10px) !important;
  opacity: 0.65 !important;
  z-index: 0 !important;
}

.line-card--signature {
  --line-card-glow: radial-gradient(ellipse at 24% 30%, rgba(107, 26, 42, 0.5), transparent 48%) !important;
}

.line-card--heritage {
  --line-card-glow: radial-gradient(ellipse at 25% 28%, rgba(198, 163, 90, 0.18), transparent 48%) !important;
}

.line-card--legacy {
  --line-card-glow: radial-gradient(ellipse at 25% 28%, rgba(42, 72, 56, 0.48), transparent 50%) !important;
}

.line-card--eterno {
  --line-card-glow: radial-gradient(ellipse at 26% 28%, rgba(7, 26, 51, 0.58), transparent 52%) !important;
}

.line-card__head {
  margin-bottom: 22px !important;
}

.line-card__tier {
  max-width: 17ch !important;
  text-align: right !important;
  line-height: 1.6 !important;
}

.line-card__tag {
  min-height: 48px !important;
}

.line-card__bottle-wrap {
  min-height: 230px !important;
  align-items: center !important;
}

.line-card__bottle-img {
  max-height: 250px !important;
  filter: drop-shadow(0 24px 24px rgba(0, 0, 0, 0.55)) !important;
}

.line-card__body {
  max-width: 28ch !important;
}

.line-card__cta {
  margin-top: 26px !important;
  padding-top: 18px !important;
}

.line-section {
  overflow: hidden !important;
}

.line-section__head {
  margin-bottom: clamp(38px, 5vw, 60px) !important;
}

.line-section__name {
  font-size: clamp(66px, 8.5vw, 132px) !important;
}

.line-section__sub {
  font-size: clamp(22px, 2.2vw, 32px) !important;
}

.product-grid {
  gap: clamp(18px, 2.4vw, 32px) !important;
}

.product {
  position: relative !important;
  min-height: 560px !important;
  padding: clamp(28px, 3vw, 38px) !important;
  border-color: rgba(198, 163, 90, 0.24) !important;
  background:
    radial-gradient(ellipse at 50% 30%, rgba(198, 163, 90, 0.08), transparent 36%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.02), rgba(0, 0, 0, 0)),
    rgba(3, 7, 5, 0.72) !important;
}

.line-section--signature .product {
  background:
    radial-gradient(ellipse at 50% 28%, rgba(107, 26, 42, 0.28), transparent 42%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.02), rgba(0, 0, 0, 0)),
    rgba(7, 3, 4, 0.78) !important;
}

.line-section--heritage .product {
  background:
    radial-gradient(ellipse at 50% 28%, rgba(198, 163, 90, 0.13), transparent 42%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.02), rgba(0, 0, 0, 0)),
    rgba(8, 6, 3, 0.74) !important;
}

.line-section--legacy .product {
  background:
    radial-gradient(ellipse at 50% 28%, rgba(42, 72, 56, 0.34), transparent 42%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.02), rgba(0, 0, 0, 0)),
    rgba(3, 8, 6, 0.78) !important;
}

.product__head {
  align-items: center !important;
  padding-bottom: 18px !important;
  border-bottom: 1px solid rgba(198, 163, 90, 0.18) !important;
}

.product__bottle-wrap {
  min-height: 230px !important;
  margin: 18px 0 24px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.product__bottle {
  max-height: 240px !important;
  filter: drop-shadow(0 28px 24px rgba(0, 0, 0, 0.45)) !important;
}

.product__name {
  font-size: clamp(32px, 3.2vw, 48px) !important;
  line-height: 0.95 !important;
  overflow-wrap: anywhere !important;
}

.product__notes {
  max-width: 58ch !important;
}

.product__pairings {
  gap: 8px !important;
  margin-top: 18px !important;
}

.product__pairings span {
  background: rgba(198, 163, 90, 0.045) !important;
}

.blends__bottles {
  border-radius: 0 !important;
  background:
    radial-gradient(ellipse at 50% 58%, rgba(198, 163, 90, 0.16), transparent 50%),
    rgba(255, 255, 255, 0.018) !important;
}

.origin {
  background:
    radial-gradient(ellipse at 50% 15%, rgba(9, 32, 58, 0.32), transparent 45%),
    linear-gradient(180deg, #050505, #07101e 46%, #050505) !important;
  overflow: hidden !important;
}

.origin__head {
  align-items: center !important;
}

.origin__grid {
  position: relative !important;
  gap: 14px !important;
  background: transparent !important;
  border: 0 !important;
}

.origin__grid::before {
  content: "" !important;
  position: absolute !important;
  left: 6% !important;
  right: 6% !important;
  top: 34px !important;
  height: 1px !important;
  background: linear-gradient(90deg, rgba(198, 163, 90, 0), rgba(198, 163, 90, 0.42), rgba(198, 163, 90, 0)) !important;
  z-index: 0 !important;
}

.origin-card {
  min-height: 310px !important;
  border: 1px solid rgba(198, 163, 90, 0.2) !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.018), rgba(255, 255, 255, 0.006)),
    #050505 !important;
  z-index: 1 !important;
}

.origin-card::before {
  content: "" !important;
  position: absolute !important;
  top: 28px !important;
  left: 30px !important;
  width: 12px !important;
  height: 12px !important;
  border: 1px solid var(--gold) !important;
  border-radius: 50% !important;
  background: #050505 !important;
  box-shadow: 0 0 0 8px #050505 !important;
}

.origin-card__flag {
  margin-left: 28px !important;
}

.origin-card__flag-img {
  filter: drop-shadow(0 10px 16px rgba(0, 0, 0, 0.55)) !important;
}

.origin-card__country {
  font-size: clamp(34px, 3.5vw, 48px) !important;
}

.experience {
  background:
    radial-gradient(ellipse at 50% 0%, rgba(198, 163, 90, 0.07), transparent 38%),
    linear-gradient(180deg, #050505, #030303) !important;
}

.retail {
  background:
    radial-gradient(ellipse at 15% 12%, rgba(198, 163, 90, 0.08), transparent 34%),
    linear-gradient(180deg, #050505, #070404) !important;
}

.retail__grid {
  gap: 12px !important;
  background: transparent !important;
  border: 0 !important;
}

.retail-card {
  border: 1px solid rgba(198, 163, 90, 0.18) !important;
  background:
    linear-gradient(180deg, rgba(198, 163, 90, 0.045), rgba(255, 255, 255, 0.006)),
    #050505 !important;
}

.final-cta {
  min-height: min(820px, 92vh) !important;
}

.final-cta__title {
  max-width: 860px !important;
}

.final-cta__sub {
  max-width: 680px !important;
}

.final-cta__closing {
  background: rgba(0, 0, 0, 0.22) !important;
}

@media (min-width: 1100px) {
  .collection__lines {
    display: grid !important;
    grid-template-columns: 1.12fr 1fr 1fr 0.95fr !important;
  }

  .line-card:hover {
    border-color: rgba(226, 200, 120, 0.48) !important;
    background:
      var(--line-card-glow),
      linear-gradient(180deg, rgba(198, 163, 90, 0.065), rgba(255, 255, 255, 0.01)),
      #070404 !important;
  }

  .product:hover {
    border-color: rgba(226, 200, 120, 0.42) !important;
    background:
      radial-gradient(ellipse at 50% 28%, rgba(198, 163, 90, 0.13), transparent 42%),
      linear-gradient(180deg, rgba(255, 255, 255, 0.024), rgba(0, 0, 0, 0)),
      rgba(4, 7, 5, 0.82) !important;
  }
}

@media (max-width: 899px) {
  .section-pad {
    padding: 64px 0 !important;
  }

  .manifesto__head {
    min-height: auto !important;
    gap: 24px !important;
  }

  .manifesto__autograph {
    margin: 0 0 8px auto !important;
    padding-right: 2% !important;
  }

  .manifesto__autograph img {
    height: 122px !important;
  }

  .manifesto__body {
    padding: 26px 22px !important;
  }

  .manifesto__stats {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 1px !important;
    margin-top: 26px !important;
    padding-top: 12px !important;
    border-top: 1px solid rgba(198, 163, 90, 0.22) !important;
    background: rgba(198, 163, 90, 0.12) !important;
    border: 1px solid rgba(198, 163, 90, 0.16) !important;
  }

  .manifesto__stats > * {
    min-height: 112px !important;
    padding: 16px 8px 14px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
    background:
      radial-gradient(ellipse at 50% 0%, rgba(198, 163, 90, 0.09), transparent 58%),
      rgba(3, 3, 3, 0.92) !important;
  }

  .manifesto__stats .stat-num {
    font-size: clamp(32px, 10vw, 46px) !important;
    line-height: 0.9 !important;
    margin: 0 0 12px !important;
  }

  .manifesto__stats .stat-label {
    font-size: 8.5px !important;
    line-height: 1.35 !important;
    letter-spacing: 0.2em !important;
    color: rgba(244, 239, 229, 0.78) !important;
  }

  .collection__title,
  .differentials__title,
  .mow__title,
  .line-section__name,
  .origin__title,
  .experience__title,
  .retail__title,
  .final-cta__title {
    max-width: 9.4em !important;
    font-size: clamp(34px, 10vw, 46px) !important;
    line-height: 1.04 !important;
  }

  .collection__head {
    gap: 22px !important;
    margin-bottom: 34px !important;
  }

  .collection__head .body-text,
  .origin__head .body-text,
  .experience__body,
  .retail__head .body-text {
    font-size: 16px !important;
    line-height: 1.58 !important;
  }

  .collection__lines {
    gap: 14px !important;
  }

  .line-card {
    min-height: auto !important;
    padding: 26px 24px 24px !important;
  }

  .line-card__head {
    align-items: flex-start !important;
  }

  .line-card__name {
    font-size: clamp(42px, 13vw, 58px) !important;
    line-height: 0.94 !important;
  }

  .line-card__tag {
    min-height: auto !important;
    font-size: 17px !important;
  }

  .line-card__bottle-wrap {
    min-height: 250px !important;
    margin: 4px 0 20px !important;
  }

  .line-card__bottle-img {
    max-height: 250px !important;
  }

  .line-card__body {
    font-size: 15px !important;
    line-height: 1.58 !important;
  }

  .line-section__head {
    gap: 20px !important;
    margin-bottom: 30px !important;
  }

  .line-section__sub {
    max-width: 14em !important;
    font-size: 24px !important;
    line-height: 1.22 !important;
  }

  .product-grid {
    gap: 16px !important;
  }

  .product {
    min-height: auto !important;
    padding: 24px 22px !important;
  }

  .product__head {
    gap: 10px !important;
    align-items: flex-start !important;
  }

  .product__origin {
    max-width: 22ch !important;
    line-height: 1.5 !important;
    text-align: right !important;
  }

  .product__bottle-wrap {
    min-height: 260px !important;
    margin: 16px 0 20px !important;
  }

  .product__bottle {
    max-height: 260px !important;
  }

  .product__name {
    font-size: clamp(34px, 10.5vw, 44px) !important;
    line-height: 0.98 !important;
  }

  .product__notes {
    font-size: 14px !important;
    line-height: 1.58 !important;
  }

  .product__footer {
    gap: 14px !important;
    align-items: flex-start !important;
  }

  .origin {
    background:
      radial-gradient(ellipse at 50% 10%, rgba(9, 32, 58, 0.45), transparent 42%),
      linear-gradient(180deg, #050505, #070d19 42%, #050505) !important;
  }

  .origin__grid {
    gap: 10px !important;
  }

  .origin__grid::before {
    display: none !important;
  }

  .origin-card {
    min-height: 260px !important;
    padding: 28px 24px !important;
  }

  .origin-card::before {
    display: none !important;
  }

  .origin-card__flag {
    margin-left: 0 !important;
  }

  .origin-card__country {
    font-size: 44px !important;
  }

  .origin-card__notes {
    font-size: 15px !important;
    line-height: 1.6 !important;
  }

  .tl-step {
    min-height: 156px !important;
  }

  .retail__grid {
    gap: 10px !important;
  }

  .final-cta {
    min-height: 760px !important;
  }

  .final-cta__title {
    font-size: clamp(42px, 12vw, 56px) !important;
    max-width: 7.8em !important;
  }

  .final-cta__sub {
    max-width: 320px !important;
    font-size: 20px !important;
    line-height: 1.35 !important;
  }

  .final-cta__closing {
    max-width: 310px !important;
    padding: 20px 0 !important;
    font-size: 24px !important;
    line-height: 1.25 !important;
    background: transparent !important;
  }
}

@media (max-width: 520px) {
  .hero__title--quote {
    font-size: clamp(25px, 7.3vw, 32px) !important;
    max-width: 11.4em !important;
  }

  .hero__sub {
    font-size: 17px !important;
  }

  .collection__title,
  .differentials__title,
  .mow__title,
  .line-section__name,
  .origin__title,
  .experience__title,
  .retail__title {
    font-size: clamp(34px, 10.8vw, 43px) !important;
  }

  .line-card__tier,
  .product__origin {
    letter-spacing: 0.24em !important;
  }

  .product__pairings span {
    font-size: 9px !important;
    letter-spacing: 0.16em !important;
  }
}

@media (max-width: 899px) {
  .hero {
    min-height: auto !important;
    padding: 82px 0 0 !important;
  }

  .hero .shell.hero__grid {
    width: 100% !important;
    max-width: none !important;
    min-height: 628px !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative !important;
  }

  .hero__bottle-stage {
    position: absolute !important;
    top: -34px !important;
    left: 50% !important;
    right: auto !important;
    bottom: auto !important;
    width: 100vw !important;
    height: clamp(500px, 116vw, 620px) !important;
    margin: 0 0 0 -50vw !important;
    align-items: flex-start !important;
    background: #050003 !important;
  }

  .hero__banner {
    width: calc(100% - 28px) !important;
    height: 100% !important;
    margin: 0 14px !important;
    object-fit: contain !important;
    object-position: center top !important;
  }

  .hero__copy {
    position: absolute !important;
    left: 50% !important;
    right: auto !important;
    bottom: 28px !important;
    width: 100vw !important;
    max-width: none !important;
    margin-left: -50vw !important;
    padding: 116px 24px 22px !important;
    text-align: center !important;
    background: linear-gradient(
      180deg,
      rgba(5, 0, 3, 0) 0%,
      rgba(5, 0, 3, 0.54) 24%,
      rgba(5, 0, 3, 0.9) 56%,
      #050003 100%
    ) !important;
  }

  .hero__eyebrow {
    margin-bottom: 7px !important;
  }

  .hero__title--quote {
    width: min(100%, 366px) !important;
    max-width: none !important;
    margin: 0 auto 10px !important;
    font-size: clamp(25px, 6.8vw, 32px) !important;
    line-height: 1.06 !important;
    text-shadow: 0 2px 16px rgba(0, 0, 0, 0.72) !important;
  }

  .hero__sub {
    width: min(100%, 306px) !important;
    max-width: none !important;
    margin: 0 auto 8px !important;
    font-size: 17px !important;
    line-height: 1.25 !important;
    text-shadow: 0 2px 12px rgba(0, 0, 0, 0.65) !important;
  }

  .hero__detail {
    width: min(100%, 318px) !important;
    max-width: none !important;
    margin: 0 auto 12px !important;
    font-size: 11.5px !important;
    line-height: 1.45 !important;
  }

  .hero__ctas {
    justify-content: center !important;
  }

  .hero__ctas .btn {
    width: min(100%, 326px) !important;
    padding: 15px 18px !important;
    font-size: 10px !important;
    letter-spacing: 0.17em !important;
  }
}
