@font-face {
  font-family: GmarketSans;
  src: url('./fonts/GmarketSansTTFMedium.ttf') format('truetype');
  font-weight: 500;
  font-display: swap;
}

@font-face {
  font-family: GmarketSans;
  src: url('./fonts/GmarketSansTTFBold.ttf') format('truetype');
  font-weight: 700 900;
  font-display: swap;
}

@font-face {
  font-family: KoPubDotum;
  src: url('./fonts/KoPubWorldDotum-Medium.otf') format('opentype');
  font-weight: 500;
  font-display: swap;
}

@font-face {
  font-family: "Podam Sungkok Semi";
  src: url('./product-detail/assets/fonts/KMU80TTFSungkokSemiSerif.ttf') format('truetype');
  font-weight: 400;
  font-display: swap;
}

:root {
  --milk: #faf8f3;
  --paper: #fffdf9;
  --sky: #eaf5fa;
  --sky-strong: #d9eff8;
  --mint: #e8f3ed;
  --navy: #0a315b;
  --navy-deep: #062444;
  --blue: #1769b0;
  --blue-bright: #42b8ed;
  --warm: #d97765;
  --ink-muted: #637887;
  --line: #dce8ec;
  --shadow: 0 22px 60px rgba(62, 91, 105, .12);
  --sans: GmarketSans, Arial, sans-serif;
  --body: KoPubDotum, GmarketSans, Arial, sans-serif;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  -webkit-user-select: text;
  user-select: text;
}

/* Keep every rendered copy block selectable without changing its typography,
   spacing, color, or layout. Media stays non-selectable so dragging across a
   section continues selecting the surrounding real HTML text. */
img,
video,
svg {
  -webkit-user-select: none;
  user-select: none;
}

body {
  margin: 0;
  overflow-x: hidden;
  background: var(--milk);
  color: var(--navy);
  font-family: var(--sans);
  -webkit-font-smoothing: antialiased;
}

img {
  display: block;
  max-width: 100%;
}

a {
  color: inherit;
}

.site-header {
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  width: 100%;
  height: 76px;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  padding: 0 clamp(22px, 4.6vw, 76px);
  border-bottom: 1px solid rgba(141, 171, 183, .22);
  background: rgba(255, 253, 249, .86);
  backdrop-filter: blur(18px);
  transition: box-shadow .25s ease, background .25s ease;
}

.site-header.is-scrolled {
  background: rgba(255, 253, 249, .96);
  box-shadow: 0 10px 30px rgba(55, 82, 94, .08);
}

.brand-link {
  width: max-content;
}

.brand {
  width: 122px;
  height: 32px;
  object-fit: contain;
  object-position: left center;
}

.site-header nav {
  display: flex;
  align-items: center;
  gap: 38px;
}

.site-header nav a {
  position: relative;
  padding: 27px 0 24px;
  color: #536c7b;
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
}

.site-header nav a::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 17px;
  width: 0;
  height: 2px;
  border-radius: 999px;
  background: var(--blue-bright);
  transform: translateX(-50%);
  transition: width .22s ease;
}

.site-header nav a:hover::after,
.site-header nav a:focus-visible::after {
  width: 100%;
}

.store-link {
  justify-self: end;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  border: 1px solid #bddbe8;
  border-radius: 999px;
  background: #fff;
  color: var(--blue);
  font-size: 11px;
  font-weight: 700;
  text-decoration: none;
  box-shadow: 0 8px 22px rgba(61, 109, 132, .08);
}

.store-link span {
  font-size: 15px;
}

.home-hero {
  position: relative;
  min-height: 900px;
  overflow: hidden;
  padding: 98px max(28px, 5vw) 58px;
  background: var(--milk);
}

.home-shape {
  position: absolute;
  pointer-events: none;
  border-radius: 50%;
}

.home-shape--one {
  top: 150px;
  left: 50%;
  width: min(670px, 56vw);
  height: min(650px, 54vw);
  background: rgba(218, 241, 249, .78);
  transform: translateX(-50%);
}

.home-shape--two {
  top: 350px;
  right: -110px;
  width: 330px;
  height: 330px;
  background: rgba(232, 243, 237, .86);
}

.hero-eyebrow {
  position: relative;
  z-index: 3;
  margin: 6px 0 8px;
  text-align: center;
  color: #6091aa;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .25em;
}

.hero-stage {
  position: relative;
  z-index: 4;
  width: min(1420px, 100%);
  min-height: 470px;
  display: grid;
  grid-template-columns: 1fr minmax(410px, 500px) 1fr;
  align-items: center;
  gap: clamp(10px, 2.2vw, 38px);
  margin: 0 auto;
}

.lamp-copy {
  position: relative;
  z-index: 4;
  display: flex;
  flex-direction: column;
  opacity: 0;
  transition: opacity .55s ease, transform .85s cubic-bezier(.16, 1, .3, 1);
}

.lamp-copy--upper {
  align-items: flex-end;
  transform: translateX(36px);
}

.lamp-copy--lower {
  align-items: flex-start;
  transform: translateX(-36px);
}

.home-hero.is-visible .lamp-copy {
  opacity: 1;
  transform: translateX(0);
}

.lamp-copy small {
  margin: 13px 8px 0;
  color: #668090;
  font-family: var(--body);
  font-size: 13px;
  font-weight: 700;
}

.lamp-badge {
  display: inline-flex;
  width: max-content;
  padding: 8px 13px;
  border: 1px solid #c5e0eb;
  border-radius: 9px;
  background: rgba(255, 255, 255, .9);
  color: var(--blue);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .15em;
  box-shadow: 0 9px 24px rgba(57, 113, 139, .08);
}

.lamp-copy--upper .lamp-badge {
  margin: 0 8px 27px 0;
}

.lamp-copy--lower .lamp-badge {
  margin: 27px 0 0 8px;
}

.lamp-phrase {
  display: flex;
  align-items: baseline;
  margin: 0;
  white-space: nowrap;
}

.lamp-phrase strong {
  color: var(--blue);
  font-size: clamp(80px, 7vw, 128px);
  line-height: .9;
  letter-spacing: -.09em;
}

.lamp-phrase em {
  color: var(--navy);
  font-size: clamp(40px, 4vw, 68px);
  font-style: normal;
  font-weight: 700;
  letter-spacing: -.075em;
}

.lamp-word {
  position: relative;
  display: inline-flex;
  isolation: isolate;
}

.lamp-line {
  position: absolute;
  z-index: -1;
  left: 3%;
  right: 0;
  height: 4px;
  border-radius: 999px;
  background: #65c8ee;
  animation: lampLine 2.8s ease-in-out infinite;
}

.lamp-line::before {
  content: "";
  position: absolute;
  left: -7%;
  right: -7%;
  height: 62px;
  opacity: .46;
  filter: blur(10px);
}

.lamp-phrase--top .lamp-line {
  top: -11px;
}

.lamp-phrase--top .lamp-line::before {
  top: 2px;
  background: linear-gradient(to bottom, rgba(89, 199, 239, .7), rgba(119, 202, 238, .14) 58%, transparent);
  transform-origin: center top;
}

.lamp-phrase--bottom .lamp-line {
  bottom: -10px;
}

.lamp-phrase--bottom .lamp-line::before {
  bottom: 2px;
  background: linear-gradient(to top, rgba(89, 199, 239, .7), rgba(119, 202, 238, .14) 58%, transparent);
  transform-origin: center bottom;
}

.hero-product {
  position: relative;
  z-index: 6;
  height: 470px;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  margin: 0;
}

.hero-product img {
  position: relative;
  z-index: 2;
  height: 100%;
  width: auto;
  max-width: none;
  filter: drop-shadow(0 28px 32px rgba(71, 84, 91, .22));
}

.hero-product figcaption {
  position: absolute;
  z-index: 3;
  right: 1%;
  bottom: 37px;
  color: #6b8ca0;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .22em;
  writing-mode: vertical-rl;
}

.product-halo {
  position: absolute;
  left: 50%;
  bottom: 18px;
  width: 84%;
  height: 72%;
  border-radius: 48% 52% 45% 55%;
  background: rgba(240, 249, 252, .85);
  box-shadow: inset 0 0 0 1px rgba(168, 213, 229, .35), 0 25px 60px rgba(67, 123, 144, .1);
  transform: translateX(-50%);
}

.lamp-phrase {
  position: relative;
}

.lamp-word::before {
  content: none;
}

.hero-message {
  position: relative;
  z-index: 5;
  margin-top: -6px;
  text-align: center;
}

.hero-message h1 {
  margin: 0;
  color: var(--navy-deep);
  font-size: clamp(54px, 5.5vw, 96px);
  line-height: 1;
  letter-spacing: -.075em;
}

.hero-message h1 strong {
  color: var(--blue);
}

.hero-message p {
  margin: 14px 0 0;
  color: var(--ink-muted);
  font-family: var(--body);
  font-size: 15px;
}

.hero-facts {
  position: relative;
  z-index: 5;
  width: min(950px, 86vw);
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin: 28px auto 0;
}

.hero-facts article {
  min-height: 86px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 4px;
  padding: 16px 24px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: rgba(255, 255, 255, .9);
  box-shadow: 0 13px 36px rgba(61, 91, 106, .08);
}

.hero-facts b {
  color: var(--blue);
  font-size: 24px;
}

.hero-facts span {
  color: #667d8b;
  font-family: var(--body);
  font-size: 12px;
  font-weight: 700;
}

.hero-facts__accent {
  border-color: #b5ddec !important;
  background: var(--sky) !important;
}

.fineprint {
  position: relative;
  z-index: 5;
  margin: 15px 0 0;
  color: #8a9aa4;
  font-family: var(--body);
  font-size: 10px;
  text-align: center;
}

.comparison {
  position: relative;
  padding: 122px max(28px, 5vw) 100px;
  background: #f4f8f6;
}

.section-heading {
  max-width: 1000px;
  margin: 0 auto 65px;
  text-align: center;
}

.section-heading > span,
.lamp-story__intro > span,
.home-life__copy > span,
.contact > div > span {
  display: inline-block;
  margin-bottom: 18px;
  color: var(--blue);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .23em;
}

.section-heading p {
  margin: 0 0 9px;
  color: #6d8490;
  font-family: var(--body);
  font-size: clamp(17px, 1.45vw, 24px);
  font-weight: 700;
}

.section-heading h2 {
  margin: 0;
  color: var(--navy-deep);
  font-size: clamp(48px, 5.1vw, 88px);
  line-height: 1.08;
  letter-spacing: -.075em;
}

.section-heading h2 strong {
  position: relative;
  color: var(--blue);
}

.section-heading h2 strong::after {
  content: "";
  position: absolute;
  left: 2%;
  right: 0;
  bottom: -5px;
  height: 5px;
  border-radius: 999px;
  background: #7ccfe9;
}

.comparison-stage {
  width: min(1060px, 100%);
  display: grid;
  grid-template-columns: 1fr 78px 1fr;
  align-items: center;
  gap: 22px;
  margin: 0 auto;
}

.product-card {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 34px;
  background: var(--paper);
  box-shadow: var(--shadow);
}

.product-card--single {
  border-color: #e1dfe8;
}

.product-card--dual {
  border-color: #9dd9ef;
  box-shadow: 0 24px 65px rgba(45, 132, 173, .15);
}

.product-card header {
  position: relative;
  z-index: 4;
  padding: 28px 28px 8px;
  text-align: center;
}

.product-card header small {
  display: block;
  margin-bottom: 6px;
  color: #8b95a2;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .17em;
}

.product-card--dual header small {
  color: var(--blue-bright);
}

.product-card h3 {
  margin: 0;
  color: var(--navy-deep);
  font-size: clamp(25px, 2.5vw, 38px);
  letter-spacing: -.06em;
}

.product-card figure {
  position: relative;
  width: 100%;
  aspect-ratio: 1 / .96;
  display: grid;
  place-items: center;
  margin: 0;
  overflow: hidden;
}

.product-card figure::before {
  content: "";
  position: absolute;
  left: 16%;
  right: 16%;
  bottom: 9%;
  height: 28%;
  border-radius: 50%;
  background: rgba(174, 203, 217, .22);
  filter: blur(24px);
}

.product-card--dual figure::before {
  background: rgba(89, 193, 235, .28);
}

.product-card figure > img:not(.dual-arrows) {
  position: relative;
  z-index: 2;
  width: 100%;
  height: 100%;
  object-fit: contain;
  clip-path: inset(6.5% 0 0 0);
}

.product-card--single figure > img {
  filter: saturate(.8);
}

.single-arrow {
  position: absolute;
  z-index: 3;
  top: 9%;
  left: 50%;
  color: rgba(101, 79, 137, .62);
  font-size: 58px;
  font-weight: 700;
  transform: translateX(-50%);
  animation: singleArrow 2.2s ease-in-out infinite;
}

.dual-arrows {
  position: absolute !important;
  z-index: 4 !important;
  top: 5%;
  left: 12.25%;
  width: 75.5% !important;
  height: 90% !important;
  object-fit: fill !important;
  pointer-events: none;
}

.card-note {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 12px;
  margin: 0 20px 20px;
  padding: 17px 18px;
  border-radius: 17px;
  background: #f6f4f7;
}

.product-card--dual .card-note {
  background: var(--sky);
}

.card-note span {
  color: #71818c;
  font-family: var(--body);
  font-size: 12px;
  font-weight: 700;
}

.card-note b {
  color: var(--navy);
  font-size: 15px;
}

.product-card--dual .card-note b {
  color: var(--blue);
}

.versus {
  display: grid;
  place-items: center;
  width: 68px;
  height: 68px;
  border: 1px solid #bad8e5;
  border-radius: 50%;
  background: var(--paper);
  box-shadow: 0 10px 28px rgba(62, 91, 105, .12);
  color: var(--navy);
  font-size: 20px;
  font-weight: 700;
}

.quick-table {
  width: min(1060px, 100%);
  overflow: hidden;
  margin: 34px auto 0;
  border: 1px solid var(--line);
  border-radius: 23px;
  background: var(--paper);
  box-shadow: 0 18px 48px rgba(62, 91, 105, .09);
}

.quick-row {
  display: grid;
  grid-template-columns: .75fr 1fr 1.25fr;
  min-height: 56px;
  border-top: 1px solid #e6eef0;
}

.quick-row:first-child {
  border-top: 0;
}

.quick-row > * {
  display: flex;
  align-items: center;
  padding: 14px 22px;
  border-right: 1px solid #e6eef0;
  color: #6c7f8b;
  font-family: var(--body);
  font-size: 13px;
}

.quick-row > *:last-child {
  border-right: 0;
  background: rgba(234, 245, 250, .66);
}

.quick-row b,
.quick-row strong {
  color: var(--navy);
}

.quick-row strong {
  color: var(--blue);
}

.quick-row--head {
  background: #f7faf9;
}

.quick-row--head > * {
  color: #82939d;
  font-family: var(--sans);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .12em;
}

.comparison-note {
  width: min(1060px, 100%);
  margin: 12px auto 0;
  color: #8b9aa1;
  font-family: var(--body);
  font-size: 10px;
  text-align: right;
}

.lamp-story {
  display: grid;
  grid-template-columns: minmax(280px, .65fr) minmax(670px, 1.35fr);
  align-items: center;
  gap: clamp(36px, 5vw, 86px);
  padding: 130px max(28px, 7vw);
  background: var(--paper);
}

.lamp-story__intro h2 {
  margin: 0;
  color: var(--navy-deep);
  font-size: clamp(46px, 4.5vw, 76px);
  line-height: 1.1;
  letter-spacing: -.075em;
}

.lamp-story__intro h2 strong {
  color: var(--blue);
}

.lamp-story__intro p {
  max-width: 420px;
  margin: 22px 0 0;
  color: var(--ink-muted);
  font-family: var(--body);
  font-size: 15px;
  line-height: 1.8;
}

.lamp-story__cards {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}

.lamp-story__cards article {
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 28px;
  background: #fff;
  box-shadow: var(--shadow);
}

.lamp-story__cards figure {
  height: 250px;
  margin: 0;
  overflow: hidden;
}

.lamp-story__cards figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.lamp-story__cards article > div {
  padding: 23px 25px 26px;
}

.lamp-story__cards small {
  color: #68a5bf;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .18em;
}

.lamp-story__cards h3 {
  margin: 8px 0 9px;
  color: var(--blue);
  font-size: 25px;
}

.lamp-story__cards p {
  margin: 0;
  color: #687d89;
  font-family: var(--body);
  font-size: 13px;
  line-height: 1.6;
}

.lamp-plus {
  position: absolute;
  z-index: 4;
  top: 45%;
  left: 50%;
  width: 52px;
  height: 52px;
  display: grid;
  place-items: center;
  border: 6px solid var(--paper);
  border-radius: 50%;
  background: var(--sky-strong);
  color: var(--navy);
  font-size: 26px;
  font-weight: 700;
  transform: translate(-50%, -50%);
}

.home-life {
  position: relative;
  min-height: 650px;
  overflow: hidden;
  background: #eee9e1;
}

.home-life > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.home-life__copy {
  position: absolute;
  z-index: 2;
  left: max(28px, 8vw);
  top: 50%;
  width: min(540px, 44vw);
  padding: 42px 44px;
  border: 1px solid rgba(255, 255, 255, .72);
  border-radius: 30px;
  background: rgba(255, 253, 249, .9);
  box-shadow: 0 24px 65px rgba(69, 70, 65, .14);
  backdrop-filter: blur(12px);
  transform: translateY(-50%);
}

.home-life__copy h2 {
  margin: 0;
  color: var(--navy-deep);
  font-size: clamp(37px, 3.6vw, 62px);
  line-height: 1.14;
  letter-spacing: -.07em;
}

.home-life__copy h2 strong {
  color: var(--blue);
}

.home-life__copy a {
  display: inline-flex;
  align-items: center;
  gap: 13px;
  margin-top: 27px;
  padding-bottom: 5px;
  border-bottom: 1px solid #82bfd8;
  color: var(--blue);
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
}

.home-life__copy i {
  font-size: 18px;
  font-style: normal;
}

.contact {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 50px;
  padding: 88px max(28px, 8vw);
  background: var(--sky);
}

.contact__copy {
  position: relative;
  z-index: 1;
}

.contact__copy::before {
  content: attr(data-backdrop);
  position: absolute;
  z-index: -1;
  top: 50%;
  left: -8px;
  color: var(--blue);
  font-family: var(--sans);
  font-size: clamp(68px, 7.6vw, 126px);
  font-weight: 700;
  line-height: .78;
  letter-spacing: -.075em;
  white-space: nowrap;
  opacity: .12;
  transform: translateY(-50%);
  pointer-events: none;
}

.contact h2 {
  margin: 0;
  color: var(--navy-deep);
  font-size: clamp(37px, 3.4vw, 58px);
  letter-spacing: -.07em;
}

.contact p {
  margin: 13px 0 0;
  color: #66808d;
  font-family: var(--body);
  font-size: 14px;
}

.contact__actions {
  position: relative;
  z-index: 1;
  display: flex;
  gap: 10px;
}

.button {
  min-width: 190px;
  padding: 16px 22px;
  border: 1px solid #9fcede;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  text-align: center;
  text-decoration: none;
}

.button--primary {
  border-color: var(--blue);
  background: var(--blue);
  color: #fff;
}

.button--secondary {
  background: rgba(255, 255, 255, .78);
  color: var(--blue);
}

footer {
  height: 104px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 max(28px, 8vw);
  background: var(--paper);
  color: #8b9aa1;
  font-size: 10px;
  letter-spacing: .12em;
}

footer img {
  width: 105px;
}

@keyframes lampLine {
  0%, 100% { opacity: .58; transform: scaleX(.94); }
  50% { opacity: 1; transform: scaleX(1); }
}

@keyframes singleArrow {
  0%, 100% { opacity: .45; transform: translate(-50%, -5px); }
  50% { opacity: .85; transform: translate(-50%, 7px); }
}

@media (max-width: 1050px) {
  .hero-stage {
    grid-template-columns: 1fr minmax(320px, 400px) 1fr;
    min-height: 500px;
  }

  .hero-product {
    height: 480px;
  }

  .lamp-phrase strong {
    font-size: 72px;
  }

  .lamp-phrase em {
    font-size: 36px;
  }

  .lamp-story {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .site-header {
    height: 64px;
    grid-template-columns: 1fr auto;
    padding: 0 16px;
  }

  .brand {
    width: 101px;
  }

  .site-header nav {
    position: fixed;
    z-index: 100;
    left: 12px;
    right: 12px;
    bottom: 10px;
    justify-content: space-around;
    gap: 0;
    padding: 4px 8px;
    border: 1px solid rgba(169, 199, 211, .5);
    border-radius: 999px;
    background: rgba(255, 253, 249, .94);
    box-shadow: 0 14px 38px rgba(50, 75, 87, .16);
    backdrop-filter: blur(16px);
  }

  .site-header nav a {
    padding: 10px 14px;
    font-size: 11px;
  }

  .site-header nav a::after {
    display: none;
  }

  .store-link {
    padding: 8px 12px;
    font-size: 9px;
  }

  .home-hero {
    min-height: auto;
    padding: 93px 15px 73px;
  }

  .home-shape--one {
    top: 210px;
    width: 92vw;
    height: 78vw;
  }

  .home-shape--two {
    top: 530px;
    right: -90px;
    width: 230px;
    height: 230px;
  }

  .hero-eyebrow {
    margin-bottom: 35px;
    font-size: 9px;
  }

  .hero-stage {
    min-height: 535px;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto 1fr auto;
    gap: 0;
  }

  .lamp-copy {
    z-index: 8;
  }

  .lamp-copy--upper {
    grid-column: 1;
    grid-row: 1;
    align-items: flex-end;
    align-self: end;
    transform: translateX(24px);
  }

  .lamp-copy--lower {
    grid-column: 2;
    grid-row: 3;
    align-items: flex-start;
    align-self: start;
    transform: translateX(-24px);
  }

  .lamp-copy small {
    display: none;
  }

  .lamp-copy--upper .lamp-badge {
    margin: 0 3px 17px 0;
  }

  .lamp-copy--lower .lamp-badge {
    margin: 17px 0 0 3px;
  }

  .lamp-badge {
    padding: 5px 7px;
    border-radius: 6px;
    font-size: 7px;
  }

  .lamp-phrase strong {
    font-size: clamp(45px, 13vw, 64px);
  }

  .lamp-phrase em {
    font-size: clamp(25px, 7vw, 37px);
  }

  .lamp-line {
    height: 3px;
  }

  .lamp-line::before {
    height: 42px;
  }

  .lamp-phrase--top .lamp-line {
    top: -7px;
  }

  .lamp-phrase--bottom .lamp-line {
    bottom: -7px;
  }

  .hero-product {
    grid-column: 1 / -1;
    grid-row: 1 / 4;
    z-index: 4;
    height: 455px;
    align-self: center;
  }

  .hero-product figcaption {
    display: none;
  }

  .product-halo {
    width: 96%;
  }

  .hero-message {
    margin-top: -4px;
  }

  .hero-message h1 {
    font-size: clamp(38px, 11.1vw, 53px);
    white-space: nowrap;
  }

  .hero-message p {
    max-width: 320px;
    margin: 13px auto 0;
    font-size: 12px;
    line-height: 1.55;
  }

  .hero-facts {
    width: 100%;
    gap: 5px;
    margin-top: 22px;
  }

  .hero-facts article {
    min-height: 79px;
    padding: 11px 6px;
    border-radius: 14px;
    text-align: center;
  }

  .hero-facts b {
    font-size: 17px;
  }

  .hero-facts span {
    font-size: 8px;
    line-height: 1.35;
  }

  .fineprint {
    font-size: 8px;
    line-height: 1.45;
  }

  .comparison {
    padding: 86px 15px 78px;
  }

  .section-heading {
    margin-bottom: 42px;
  }

  .section-heading > span,
  .lamp-story__intro > span,
  .home-life__copy > span,
  .contact > div > span {
    margin-bottom: 13px;
    font-size: 9px;
  }

  .section-heading p {
    font-size: 16px;
  }

  .section-heading h2 {
    font-size: clamp(38px, 11vw, 53px);
  }

  .section-heading h2 strong::after {
    height: 3px;
  }

  .comparison-stage {
    display: flex;
    flex-direction: column;
    gap: 14px;
  }

  .product-card {
    width: min(100%, 430px);
    border-radius: 25px;
  }

  .product-card header {
    padding: 22px 20px 5px;
  }

  .product-card h3 {
    font-size: 27px;
  }

  .product-card figure {
    aspect-ratio: 1 / .92;
  }

  .card-note {
    margin: 0 14px 14px;
    padding: 14px;
  }

  .card-note span {
    font-size: 10px;
  }

  .card-note b {
    font-size: 13px;
  }

  .versus {
    z-index: 5;
    width: 48px;
    height: 48px;
    margin: -3px 0;
    font-size: 14px;
  }

  .quick-table {
    margin-top: 24px;
    border-radius: 17px;
  }

  .quick-row {
    grid-template-columns: .78fr 1fr 1.28fr;
    min-height: 48px;
  }

  .quick-row > * {
    padding: 11px 7px;
    font-size: 9px;
    line-height: 1.35;
  }

  .quick-row--head > * {
    font-size: 7px;
  }

  .comparison-note {
    font-size: 8px;
    line-height: 1.5;
  }

  .lamp-story {
    gap: 37px;
    padding: 86px 15px;
  }

  .lamp-story__intro {
    padding: 0 5px;
    text-align: center;
  }

  .lamp-story__intro h2 {
    font-size: 44px;
  }

  .lamp-story__intro p {
    margin: 17px auto 0;
    font-size: 12px;
  }

  .lamp-story__cards {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .lamp-story__cards article {
    border-radius: 22px;
  }

  .lamp-story__cards figure {
    height: 230px;
  }

  .lamp-plus {
    top: 50%;
    width: 45px;
    height: 45px;
    border-width: 5px;
    font-size: 22px;
  }

  .home-life {
    min-height: 570px;
  }

  .home-life > img {
    object-position: 62% center;
  }

  .home-life__copy {
    left: 15px;
    right: 15px;
    top: auto;
    bottom: 22px;
    width: auto;
    padding: 27px 24px;
    border-radius: 22px;
    transform: none;
  }

  .home-life__copy h2 {
    font-size: 34px;
  }

  .home-life__copy a {
    margin-top: 19px;
  }

  .contact {
    flex-direction: column;
    align-items: flex-start;
    gap: 29px;
    padding: 70px 20px 100px;
  }

  .contact h2 {
    font-size: 39px;
  }

  .contact__copy::before {
    top: 49%;
    left: -3px;
    font-size: clamp(46px, 15vw, 66px);
    opacity: .1;
  }

  .contact p {
    font-size: 12px;
  }

  .contact__actions {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .button {
    min-width: 0;
    padding: 14px 9px;
    font-size: 10px;
  }

  footer {
    height: 122px;
    padding: 0 20px 48px;
  }

  footer span {
    display: none;
  }
}

/* September comparison rebuild: large diagonal split, a light-weight facts row,
   and the dual-light motion bridge requested for the home story. */
.comparison {
  padding: 142px max(24px, 4.6vw) 118px;
}

.section-heading {
  max-width: 1120px;
  margin-bottom: 78px;
}

.section-heading h2 {
  font-size: clamp(54px, 5.7vw, 98px);
}

.comparison-stage {
  position: relative;
  isolation: isolate;
  display: block;
  width: min(1320px, 100%);
  height: clamp(620px, 55vw, 780px);
  margin: 0 auto;
  overflow: hidden;
  border: 1px solid rgba(138, 180, 197, .28);
  border-radius: 48px;
  background: linear-gradient(105deg, #f7f1f7 0 49%, #eaf7fc 51% 100%);
  box-shadow: 0 32px 80px rgba(64, 102, 119, .12);
}

.comparison-stage::before {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  background:
    radial-gradient(circle at 25% 68%, rgba(115, 85, 144, .18), transparent 33%),
    radial-gradient(circle at 78% 68%, rgba(71, 193, 237, .28), transparent 38%);
  pointer-events: none;
}

.comparison-stage::after {
  content: "";
  position: absolute;
  z-index: 6;
  top: -12%;
  left: 50%;
  width: 58px;
  height: 124%;
  background: rgba(255, 255, 255, .84);
  filter: blur(14px);
  transform: translateX(-50%) rotate(7deg);
  pointer-events: none;
}

.comparison-panel {
  position: absolute;
  z-index: 2;
  top: 0;
  bottom: 0;
  width: 59%;
  overflow: hidden;
}

.comparison-panel--single {
  left: 0;
  clip-path: polygon(0 0, 100% 0, 83% 100%, 0 100%);
  background: linear-gradient(145deg, rgba(255, 253, 250, .96), rgba(237, 230, 240, .94));
  filter: saturate(.82);
}

.comparison-panel--dual {
  right: 0;
  clip-path: polygon(17% 0, 100% 0, 100% 100%, 0 100%);
  background: linear-gradient(145deg, rgba(250, 254, 255, .98), rgba(216, 243, 253, .95));
  filter: saturate(.9) brightness(.98);
  transform: scale(.94);
  transform-origin: 88% 52%;
  transition: transform 1.08s cubic-bezier(.2, .78, .2, 1), filter 1.08s ease;
}

.comparison.is-revealed .comparison-panel--dual {
  filter: saturate(1) brightness(1);
  transform: scale(1.035);
}

.comparison-panel header {
  position: absolute;
  z-index: 5;
  top: 45px;
  width: 68%;
  text-align: center;
}

.comparison-panel--single header {
  left: 5%;
}

.comparison-panel--dual header {
  right: 4%;
}

.comparison-panel header small {
  display: block;
  margin-bottom: 8px;
  color: #87929d;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .18em;
}

.comparison-panel--dual header small {
  color: var(--blue-bright);
}

.comparison-panel h3 {
  margin: 0;
  color: var(--navy-deep);
  font-size: clamp(34px, 3.25vw, 55px);
  letter-spacing: -.065em;
}

.comparison-panel figure {
  position: absolute;
  bottom: -5%;
  width: 91%;
  height: 88%;
  margin: 0;
}

.comparison-panel--single figure {
  left: -2%;
}

.comparison-panel--dual figure {
  right: -1%;
}

.comparison-panel figure > img:not(.dual-arrows) {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.comparison-panel--single figure > img {
  filter: saturate(.86) contrast(.98);
}

.comparison-panel .dual-arrows {
  position: absolute;
  z-index: 4;
  top: 5%;
  left: 12.25%;
  width: 75.5%;
  height: 90%;
  object-fit: fill;
  pointer-events: none;
}

.comparison-stage .versus {
  position: absolute;
  z-index: 9;
  top: 50%;
  left: 50%;
  width: 76px;
  height: 76px;
  margin: 0;
  border: 1px solid rgba(133, 187, 211, .7);
  background: rgba(255, 253, 249, .94);
  font-size: 21px;
  transform: translate(-50%, -50%);
}

.quick-table {
  width: min(1180px, 100%);
  margin: 52px auto 0;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  opacity: .64;
  transform: scale(.965);
  transform-origin: 72% 0;
  transition: opacity .82s ease .12s, transform 1s cubic-bezier(.2, .78, .2, 1) .12s;
}

.comparison.is-revealed .quick-table {
  opacity: 1;
  transform: scale(1);
}

.quick-row {
  grid-template-columns: .68fr 1fr 1.18fr;
  min-height: 68px;
  border-top: 1px solid rgba(122, 153, 165, .28);
}

.quick-row:first-child {
  border-top: 2px solid var(--navy);
  border-bottom: 1px solid rgba(122, 153, 165, .28);
}

.quick-row > * {
  padding: 17px 25px;
  border-right: 0;
  background: transparent !important;
  font-size: 15px;
}

.quick-row--head {
  min-height: 48px;
  background: transparent;
}

.quick-row--head > * {
  font-size: 11px;
}

.comparison-note {
  width: min(1180px, 100%);
  margin-top: 14px;
  font-size: 11px;
}

.dual-orb-bridge {
  position: relative;
  width: min(520px, 100%);
  margin: 96px auto 4px;
}

.dual-orb-bridge::before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 26px;
  width: 88%;
  height: 36%;
  border-radius: 50%;
  background: rgba(63, 151, 200, .14);
  filter: blur(32px);
  transform: translateX(-50%);
}

.dual-orb-bridge__orbs {
  position: relative;
  display: grid;
  grid-template-columns: 220px 220px;
  gap: 22px;
  width: max-content;
  margin: 0 auto;
}

.dual-orb-bridge__orb {
  position: relative;
  display: block;
  width: 220px;
  height: 220px;
  overflow: hidden;
  border: 4px solid rgba(83, 157, 229, .28);
  border-radius: 50%;
  background: #eaf6ff;
  box-shadow: 0 20px 38px rgba(20, 79, 137, .18), 0 6px 14px rgba(6, 30, 70, .1);
}

.dual-orb-bridge__orb video,
.dual-orb-bridge__fallback {
  position: absolute;
  top: -425px;
  display: block;
  width: 704px;
  max-width: none;
  height: auto;
}

.dual-orb-bridge__fallback {
  z-index: 0;
}

.dual-orb-bridge__orb video {
  z-index: 1;
  aspect-ratio: 898 / 2106;
  background: transparent;
}

.dual-orb-bridge__orb--led video,
.dual-orb-bridge__orb--led .dual-orb-bridge__fallback {
  left: -99px;
}

.dual-orb-bridge__orb--lamp video,
.dual-orb-bridge__orb--lamp .dual-orb-bridge__fallback {
  left: -378px;
}

.dual-orb-bridge__plus {
  position: absolute;
  z-index: 4;
  top: 50%;
  left: 50%;
  display: grid;
  width: 74px;
  height: 74px;
  place-items: center;
  border-radius: 50%;
  background: #050505;
  color: #fff;
  font-size: 42px;
  font-weight: 300;
  line-height: 1;
  transform: translate(-50%, -50%);
}

.dual-orb-bridge figcaption {
  position: relative;
  display: grid;
  grid-template-columns: 220px 220px;
  gap: 22px;
  width: max-content;
  margin: 18px auto 0;
  color: var(--navy);
  font-size: 17px;
  font-weight: 700;
  text-align: center;
}

.lamp-story {
  grid-template-columns: minmax(310px, .62fr) minmax(690px, 1.38fr);
  gap: clamp(48px, 6vw, 104px);
  padding: 154px max(28px, 6vw);
}

.lamp-story__intro h2 {
  font-size: clamp(52px, 4.9vw, 84px);
}

.lamp-story__intro p {
  max-width: 470px;
  font-size: 17px;
}

.lamp-story__cards {
  gap: 22px;
}

.lamp-story__cards figure {
  height: 310px;
}

.lamp-story__cards article > div {
  padding: 27px 29px 31px;
}

.lamp-story__cards h3 {
  font-size: 29px;
}

.lamp-story__cards p {
  font-size: 14px;
}

@media (max-width: 1050px) {
  .lamp-story {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .comparison {
    padding: 98px 13px 86px;
  }

  .section-heading {
    margin-bottom: 50px;
  }

  .section-heading h2 {
    font-size: clamp(42px, 12vw, 58px);
  }

  .comparison-stage {
    display: block;
    height: 720px;
    border-radius: 28px;
  }

  .comparison-stage::after {
    top: 50%;
    left: -8%;
    width: 116%;
    height: 36px;
    filter: blur(11px);
    transform: translateY(-50%) rotate(-6deg);
  }

  .comparison-panel {
    width: 100%;
    height: 57%;
  }

  .comparison-panel--single {
    top: 0;
    bottom: auto;
    clip-path: polygon(0 0, 100% 0, 100% 81%, 0 100%);
  }

  .comparison-panel--dual {
    top: auto;
    bottom: 0;
    clip-path: polygon(0 19%, 100% 0, 100% 100%, 0 100%);
    transform-origin: 70% 82%;
  }

  .comparison-panel header {
    top: 23px;
    width: 100%;
  }

  .comparison-panel--single header,
  .comparison-panel--dual header {
    left: 0;
    right: auto;
  }

  .comparison-panel--dual header {
    top: 70px;
  }

  .comparison-panel header small {
    margin-bottom: 4px;
    font-size: 8px;
  }

  .comparison-panel h3 {
    font-size: 30px;
  }

  .comparison-panel figure {
    bottom: -8%;
    width: 100%;
    height: 84%;
  }

  .comparison-panel--single figure,
  .comparison-panel--dual figure {
    left: 0;
    right: auto;
  }

  .comparison-stage .versus {
    top: 50%;
    width: 54px;
    height: 54px;
    font-size: 14px;
  }

  .quick-table {
    margin-top: 34px;
  }

  .quick-row {
    grid-template-columns: .72fr .96fr 1.32fr;
    min-height: 58px;
  }

  .quick-row > * {
    padding: 12px 7px;
    font-size: 10px;
    line-height: 1.42;
  }

  .quick-row--head {
    min-height: 42px;
  }

  .quick-row--head > * {
    font-size: 7px;
  }

  .comparison-note {
    font-size: 8px;
    line-height: 1.5;
  }

  .dual-orb-bridge {
    margin-top: 72px;
  }

  .dual-orb-bridge__orbs {
    grid-template-columns: 136px 136px;
    gap: 12px;
  }

  .dual-orb-bridge__orb {
    width: 136px;
    height: 136px;
    border-width: 3px;
  }

  .dual-orb-bridge__orb video {
    top: -262px;
    width: 435px;
  }

  .dual-orb-bridge__orb--led video {
    left: -61px;
  }

  .dual-orb-bridge__orb--lamp video {
    left: -234px;
  }

  .dual-orb-bridge__plus {
    width: 50px;
    height: 50px;
    font-size: 29px;
  }

  .dual-orb-bridge figcaption {
    grid-template-columns: 136px 136px;
    gap: 12px;
    margin-top: 13px;
    font-size: 12px;
  }

  .lamp-story {
    gap: 44px;
    padding: 102px 15px;
  }

  .lamp-story__intro h2 {
    font-size: 48px;
  }

  .lamp-story__intro p {
    font-size: 14px;
  }

  .lamp-story__cards figure {
    height: 280px;
  }

  .lamp-story__cards h3 {
    font-size: 27px;
  }

  .lamp-story__cards p {
    font-size: 13px;
  }
}

/* September impact pass: full-width comparison, stronger PODAM reveal and
   restored upper/lower hierarchy for the two lamp messages. */
.home-hero {
  min-height: 1120px;
  padding: 104px 0 72px;
}

.home-shape--one {
  top: 120px;
  width: min(850px, 64vw);
  height: min(810px, 61vw);
}

.home-shape--two {
  top: 390px;
  width: 410px;
  height: 410px;
}

.hero-eyebrow {
  margin-bottom: 10px;
  font-size: 14px;
}

.hero-stage {
  width: 100%;
  min-height: 680px;
  grid-template-columns: minmax(320px, 1fr) minmax(560px, 690px) minmax(320px, 1fr);
  gap: 0;
  padding: 0 clamp(32px, 4.4vw, 82px);
}

.lamp-copy--upper {
  align-self: center;
  margin-top: -190px;
}

.lamp-copy--lower {
  align-self: center;
  margin-top: 210px;
}

.lamp-badge {
  padding: 10px 18px;
  border: 0;
  border-radius: 5px;
  background: linear-gradient(90deg, #0b5cae, #2187d1);
  box-shadow: 0 12px 26px rgba(23, 105, 176, .24);
  color: #fff;
  font-size: 15px;
  letter-spacing: .13em;
}

.lamp-copy--upper .lamp-badge {
  margin: 0 10px 38px 0;
}

.lamp-copy--lower .lamp-badge {
  margin: 38px 0 0 10px;
}

.lamp-copy small {
  display: inline-flex;
  margin-top: 22px;
  color: var(--navy-deep);
  font-family: var(--sans);
  font-size: clamp(18px, 1.55vw, 25px);
  font-weight: 700;
  letter-spacing: -.045em;
}

.lamp-phrase strong {
  position: relative;
  z-index: 2;
  font-size: clamp(112px, 9vw, 176px);
  text-shadow: 0 12px 30px rgba(23, 105, 176, .12);
}

.lamp-phrase em {
  font-size: clamp(56px, 4.8vw, 88px);
}

.lamp-line {
  z-index: 1;
  left: 1%;
  right: -1%;
  height: 7px;
  overflow: visible;
  background: #7bdcff;
  box-shadow: 0 0 12px rgba(75, 202, 249, .92), 0 0 34px rgba(75, 202, 249, .74);
  animation: lampLine 2.15s cubic-bezier(.45, 0, .2, 1) infinite;
}

.lamp-line::before {
  left: -5%;
  right: -5%;
  height: 110px;
  opacity: .72;
  filter: blur(14px);
  animation: lampGlow 2.15s cubic-bezier(.45, 0, .2, 1) infinite;
}

.lamp-phrase--top .lamp-line {
  top: -18px;
}

.lamp-phrase--top .lamp-line::before {
  top: 0;
  background: linear-gradient(to bottom, rgba(72, 208, 255, .94), rgba(104, 206, 244, .3) 55%, transparent 100%);
  clip-path: inset(0 -30px -30px -30px);
}

.lamp-phrase--bottom .lamp-line {
  bottom: -18px;
}

.lamp-phrase--bottom .lamp-line::before {
  bottom: 0;
  background: linear-gradient(to top, rgba(72, 208, 255, .94), rgba(104, 206, 244, .3) 55%, transparent 100%);
  clip-path: inset(-30px -30px 0 -30px);
}

.hero-product {
  height: 670px;
}

.product-halo {
  bottom: 28px;
  width: 94%;
  height: 76%;
}

.hero-product figcaption {
  right: -1%;
  bottom: 58px;
  font-size: 11px;
}

.hero-message {
  margin-top: -20px;
}

.hero-message h1 {
  font-size: clamp(76px, 7.1vw, 126px);
}

.hero-message p {
  margin-top: 20px;
  font-size: 19px;
}

.hero-facts {
  width: min(1240px, 92vw);
  gap: 18px;
  margin-top: 36px;
}

.hero-facts article {
  min-height: 118px;
  padding: 22px 32px;
  border-radius: 24px;
}

.hero-facts b {
  font-size: 34px;
}

.hero-facts span {
  font-size: 15px;
}

.fineprint {
  margin-top: 18px;
  font-size: 12px;
}

.comparison {
  padding: 154px 0 126px;
}

.comparison .section-heading {
  padding: 0 max(24px, 5vw);
}

.comparison-stage {
  width: 100vw;
  height: clamp(720px, 57vw, 920px);
  margin-left: 50%;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  transform: translateX(-50%);
}

.comparison-stage::after {
  width: 96px;
  background: rgba(255, 255, 255, .72);
  filter: blur(24px);
}

.comparison-panel {
  width: 63%;
  will-change: transform, filter, opacity;
  transition: transform 1.05s cubic-bezier(.08, .92, .16, 1), filter .9s ease, opacity .9s ease;
}

.comparison-panel::before {
  content: "";
  position: absolute;
  z-index: 4;
  inset: 0 0 50% 0;
  background: linear-gradient(to bottom, rgba(3, 25, 55, .84), rgba(3, 25, 55, .48) 48%, transparent 100%);
  pointer-events: none;
}

.comparison-panel--single {
  clip-path: polygon(0 0, 100% 0, 81% 100%, 0 100%);
  opacity: .92;
  transform: scale(1.04);
  transform-origin: 12% 50%;
}

.comparison-panel--dual {
  clip-path: polygon(19% 0, 100% 0, 100% 100%, 0 100%);
  opacity: .48;
  filter: saturate(.72) brightness(.88);
  transform: scale(.78);
  transform-origin: 91% 54%;
}

.comparison.is-revealed .comparison-panel--single {
  opacity: .58;
  filter: saturate(.55) blur(2.5px);
  transform: scale(.95);
}

.comparison.is-revealed .comparison-panel--dual {
  z-index: 3;
  opacity: 1;
  filter: saturate(1.08) brightness(1);
  transform: scale(1.11);
}

.comparison-panel header {
  top: 48px;
  width: 48%;
  text-align: left;
  color: #fff;
}

.comparison-panel--single header {
  left: 5.5%;
}

.comparison-panel--dual header {
  right: 5.5%;
}

.comparison-panel header small {
  margin-bottom: 10px;
  color: rgba(255, 255, 255, .7);
  font-size: 13px;
}

.comparison-panel--dual header small {
  color: #83ddff;
}

.comparison-panel h3 {
  color: #fff;
  font-size: clamp(42px, 4.4vw, 72px);
  text-shadow: 0 10px 28px rgba(0, 18, 43, .36);
}

.comparison-panel__facts {
  margin: 30px 0 0;
}

.comparison-panel__facts div {
  display: grid;
  grid-template-columns: minmax(100px, .72fr) 1.28fr;
  gap: 20px;
  padding: 14px 0;
  border-top: 1px solid rgba(255, 255, 255, .34);
}

.comparison-panel__facts dt,
.comparison-panel__facts dd {
  margin: 0;
  font-family: var(--body);
  line-height: 1.4;
}

.comparison-panel__facts dt {
  color: rgba(255, 255, 255, .68);
  font-size: 13px;
  font-weight: 700;
}

.comparison-panel__facts dd {
  color: #fff;
  font-size: clamp(15px, 1.35vw, 21px);
  font-weight: 700;
}

.comparison-panel figure {
  bottom: -8%;
  width: 116%;
  height: 112%;
  transition: transform 1.05s cubic-bezier(.08, .92, .16, 1);
}

.comparison-panel--single figure {
  left: -13%;
}

.comparison-panel--dual figure {
  right: -13%;
}

.comparison-panel figure > img:not(.dual-arrows) {
  object-fit: contain;
}

.comparison-stage .versus,
.quick-table {
  display: none;
}

.comparison-note {
  width: min(1320px, calc(100% - 48px));
  margin: 17px auto 0;
}

.lamp-story {
  grid-template-columns: minmax(520px, .82fr) minmax(650px, 1.18fr);
  gap: clamp(50px, 5vw, 96px);
}

.lamp-story__intro h2 span,
.lamp-story__intro h2 strong {
  display: block;
  white-space: nowrap;
}

.lamp-story__intro h2 {
  font-size: clamp(54px, 4.5vw, 78px);
}

@keyframes lampLine {
  0%, 100% {
    opacity: .56;
    box-shadow: 0 0 8px rgba(75, 202, 249, .58), 0 0 20px rgba(75, 202, 249, .38);
    transform: scaleX(.82);
  }
  45%, 55% {
    opacity: 1;
    box-shadow: 0 0 18px rgba(75, 202, 249, 1), 0 0 48px rgba(75, 202, 249, .9);
    transform: scaleX(1.04);
  }
}

@keyframes lampGlow {
  0%, 100% { opacity: .2; transform: scaleY(.72); }
  45%, 55% { opacity: .9; transform: scaleY(1.1); }
}

@media (max-width: 1280px) {
  .hero-stage {
    grid-template-columns: minmax(250px, 1fr) minmax(500px, 600px) minmax(250px, 1fr);
    padding-inline: 24px;
  }

  .lamp-phrase strong {
    font-size: clamp(92px, 9vw, 130px);
  }

  .lamp-phrase em {
    font-size: clamp(48px, 4.8vw, 66px);
  }

  .lamp-story {
    grid-template-columns: 1fr;
  }

  .lamp-story__intro {
    text-align: center;
  }

  .lamp-story__intro p {
    margin-inline: auto;
  }
}

@media (max-width: 760px) {
  .home-hero {
    min-height: auto;
    padding: 88px 0 78px;
  }

  .hero-eyebrow {
    margin-bottom: 25px;
    font-size: 10px;
  }

  .hero-stage {
    min-height: 650px;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto 1fr auto;
    padding: 0 12px;
  }

  .lamp-copy--upper {
    align-self: end;
    margin-top: 0;
    transform: translateX(18px);
  }

  .lamp-copy--lower {
    align-self: start;
    margin-top: 0;
    transform: translateX(-18px);
  }

  .lamp-badge {
    padding: 7px 9px;
    font-size: 8px;
  }

  .lamp-copy--upper .lamp-badge {
    margin: 0 4px 22px 0;
  }

  .lamp-copy--lower .lamp-badge {
    margin: 22px 0 0 4px;
  }

  .home-hero .lamp-copy small {
    display: inline-flex;
    margin: 12px 2px 0;
    padding: 6px 8px;
    border-radius: 3px;
    background: rgba(8, 49, 91, .9);
    color: #fff;
    font-size: 10px;
  }

  .lamp-phrase strong {
    font-size: clamp(56px, 16vw, 72px);
  }

  .lamp-phrase em {
    font-size: clamp(29px, 8.2vw, 40px);
  }

  .lamp-line {
    height: 5px;
  }

  .lamp-line::before {
    height: 66px;
  }

  .lamp-phrase--top .lamp-line {
    top: -11px;
  }

  .lamp-phrase--bottom .lamp-line {
    bottom: -11px;
  }

  .hero-product {
    height: 560px;
  }

  .hero-message {
    margin-top: -8px;
    padding-inline: 10px;
  }

  .hero-message h1 {
    font-size: clamp(46px, 12.4vw, 60px);
  }

  .hero-message p {
    font-size: 14px;
  }

  .hero-facts {
    width: calc(100% - 24px);
    gap: 6px;
  }

  .hero-facts article {
    min-height: 92px;
    padding: 13px 7px;
  }

  .hero-facts b {
    font-size: 21px;
  }

  .hero-facts span {
    font-size: 9px;
  }

  .fineprint {
    padding-inline: 18px;
    font-size: 9px;
  }

  .comparison {
    padding: 112px 0 94px;
  }

  .comparison .section-heading {
    padding-inline: 14px;
  }

  .comparison-stage {
    width: 100vw;
    height: 880px;
    border-radius: 0;
  }

  .comparison-stage::after {
    height: 64px;
    filter: blur(18px);
  }

  .comparison-panel {
    width: 100%;
    height: 59%;
  }

  .comparison-panel::before {
    inset: 0 0 40% 0;
  }

  .comparison-panel--single {
    clip-path: polygon(0 0, 100% 0, 100% 79%, 0 100%);
    transform-origin: 25% 18%;
  }

  .comparison-panel--dual {
    clip-path: polygon(0 21%, 100% 0, 100% 100%, 0 100%);
    transform-origin: 72% 84%;
  }

  .comparison-panel header {
    top: 24px;
    width: calc(100% - 40px);
    text-align: center;
  }

  .comparison-panel--single header,
  .comparison-panel--dual header {
    left: 20px;
    right: auto;
  }

  .comparison-panel--dual header {
    top: 98px;
  }

  .comparison-panel header small {
    font-size: 9px;
  }

  .comparison-panel h3 {
    font-size: 34px;
  }

  .comparison-panel__facts {
    max-width: 330px;
    margin: 16px auto 0;
  }

  .comparison-panel__facts div {
    grid-template-columns: .8fr 1.2fr;
    gap: 10px;
    padding: 8px 0;
    text-align: left;
  }

  .comparison-panel__facts dt {
    font-size: 9px;
  }

  .comparison-panel__facts dd {
    font-size: 11px;
  }

  .comparison-panel figure {
    bottom: -13%;
    width: 122%;
    height: 112%;
  }

  .comparison-panel--single figure,
  .comparison-panel--dual figure {
    left: -11%;
    right: auto;
  }

  .comparison-note {
    width: calc(100% - 28px);
    font-size: 8px;
  }

  .lamp-story__intro h2 {
    font-size: 38px;
  }

  .lamp-story__intro h2 span,
  .lamp-story__intro h2 strong {
    white-space: nowrap;
  }
}

/* September live-review pass: line-cast illumination, softer image boundaries,
   and one continuous dual-light chapter. */
.lamp-word strong {
  position: relative;
  display: inline-block;
  color: #0c5a9d;
  background: none;
  text-shadow: 0 2px 0 rgba(255, 255, 255, .18), 0 10px 22px rgba(7, 53, 103, .3);
  filter: none;
  animation: none;
}

.lamp-word strong::after {
  content: attr(data-text);
  position: absolute;
  z-index: 3;
  inset: 0;
  color: rgba(39, 139, 207, .24);
  -webkit-text-fill-color: rgba(39, 139, 207, .24);
  font: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  -webkit-text-stroke: 1px rgba(105, 203, 244, .52);
  text-shadow: 0 0 5px rgba(83, 190, 236, .46), 0 0 16px rgba(32, 139, 207, .38), 0 0 32px rgba(8, 93, 168, .22);
  opacity: .4;
  mix-blend-mode: overlay;
  pointer-events: none;
  animation: lampContactPulse 2.15s cubic-bezier(.45, 0, .2, 1) infinite;
}

.lamp-phrase--top strong::after {
  -webkit-mask-image: linear-gradient(to bottom, #000 0%, rgba(0, 0, 0, .88) 18%, rgba(0, 0, 0, .52) 40%, rgba(0, 0, 0, .22) 60%, transparent 82%);
  mask-image: linear-gradient(to bottom, #000 0%, rgba(0, 0, 0, .88) 18%, rgba(0, 0, 0, .52) 40%, rgba(0, 0, 0, .22) 60%, transparent 82%);
}

.lamp-phrase--bottom strong::after {
  -webkit-mask-image: linear-gradient(to top, #000 0%, rgba(0, 0, 0, .88) 18%, rgba(0, 0, 0, .52) 40%, rgba(0, 0, 0, .22) 60%, transparent 82%);
  mask-image: linear-gradient(to top, #000 0%, rgba(0, 0, 0, .88) 18%, rgba(0, 0, 0, .52) 40%, rgba(0, 0, 0, .22) 60%, transparent 82%);
}

.lamp-line {
  left: 0;
  right: 0;
  height: 9px;
  background:
    linear-gradient(to bottom, rgba(31, 160, 223, .94) 0%, #67d2f6 30%, #bceeff 49%, #d8f7ff 56%, #74d8f7 76%, rgba(18, 135, 207, .96) 100%),
    linear-gradient(90deg, #1ca5df, #88ddfa 20%, #c8f1ff 50%, #88ddfa 80%, #1ca5df);
  box-shadow:
    0 0 2px 1px rgba(177, 233, 252, .82),
    0 0 8px 2px rgba(76, 200, 243, .72),
    0 0 18px 5px rgba(31, 163, 224, .58),
    0 0 39px 10px rgba(17, 126, 198, .32),
    0 0 68px 17px rgba(6, 78, 155, .16);
  filter: saturate(1.18);
  animation: none;
}

.lamp-line::before {
  left: -2%;
  right: -2%;
  height: 154px;
  opacity: .46;
  filter: blur(24px) saturate(1.24);
  mix-blend-mode: overlay;
  animation: none;
}

.lamp-phrase--top .lamp-line::before {
  background: linear-gradient(to bottom, rgba(54, 186, 236, .72) 0%, rgba(42, 166, 222, .46) 18%, rgba(24, 126, 198, .25) 44%, rgba(8, 74, 151, .08) 70%, transparent 100%);
}

.lamp-phrase--bottom .lamp-line::before {
  background: linear-gradient(to top, rgba(54, 186, 236, .72) 0%, rgba(42, 166, 222, .46) 18%, rgba(24, 126, 198, .25) 44%, rgba(8, 74, 151, .08) 70%, transparent 100%);
}

.lamp-line::after {
  content: "";
  position: absolute;
  top: 3px;
  right: 0;
  bottom: 3px;
  left: 0;
  border-radius: inherit;
  background: linear-gradient(90deg, #62cbed, #c6f0ff 18%, #dff7ff 50%, #c6f0ff 82%, #62cbed);
  box-shadow: 0 0 5px rgba(178, 237, 255, .78), 0 0 13px rgba(77, 201, 242, .66), 0 0 22px rgba(25, 143, 211, .46);
}

.lamp-word .lamp-badge {
  position: absolute;
  z-index: 8;
  left: 0;
  margin: 0;
  transform: none;
  white-space: nowrap;
}

.lamp-phrase--top .lamp-badge {
  bottom: calc(100% + 29px);
}

.lamp-phrase--bottom .lamp-badge {
  top: auto;
  bottom: calc(100% + 29px);
}

.hero-message {
  margin-top: 46px;
}

.hero-kicker {
  margin: 0 0 18px !important;
  color: #58798e !important;
  font-family: var(--sans);
  font-size: clamp(18px, 1.55vw, 25px) !important;
  font-weight: 750;
  letter-spacing: -.045em;
  line-height: 1.25;
  white-space: nowrap;
}

.hero-message h1 {
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: clamp(20px, 2.2vw, 42px);
  overflow: visible;
}

.hero-type {
  position: relative;
  display: inline-block;
  isolation: isolate;
  white-space: nowrap;
}

.hero-type--power {
  text-shadow: none;
  transform: none;
}

.hero-message h1 .hero-type--speed {
  padding-bottom: .07em;
  background: linear-gradient(106deg, #0e5a9f 0%, #1876bb 38%, #4aaed5 54%, #1d82c0 69%, #0b559a 100%);
  background-clip: text;
  color: transparent;
  text-shadow: none;
  transform: none;
  -webkit-background-clip: text;
}

.hero-type--speed::after {
  content: "";
  position: absolute;
  right: .02em;
  bottom: -.02em;
  left: .02em;
  height: 4px;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, #75cde9 18%, #2187c2 72%, transparent);
  box-shadow: none;
  transform: scaleX(.96);
}

.hero-message > p:not(.hero-kicker) {
  margin-top: 30px;
}

.hero-facts {
  width: min(1120px, 90vw);
  gap: 0;
  margin-top: 44px;
  padding: 18px 0 16px;
  border-top: 1px solid rgba(74, 118, 145, .2);
  border-bottom: 1px solid rgba(74, 118, 145, .2);
}

.hero-facts article,
.hero-facts .hero-facts__accent {
  position: relative;
  display: flex;
  flex: 1 1 0;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 82px;
  padding: 8px 34px;
  border: 0;
  border-radius: 0;
  background: transparent !important;
  box-shadow: none;
  text-align: center;
}

.hero-facts article + article::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 1px;
  height: 56px;
  background: linear-gradient(to bottom, transparent, rgba(67, 116, 150, .52) 24%, rgba(67, 116, 150, .52) 76%, transparent);
  transform: translateY(-50%);
}

.hero-facts b {
  font-size: clamp(28px, 2.4vw, 38px);
}

.hero-facts span {
  margin-top: 5px;
  font-size: 14px;
  letter-spacing: .015em;
}

.hero-stage::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: 48%;
  left: 50%;
  width: min(900px, 68vw);
  aspect-ratio: 1;
  border: 1px solid rgba(98, 199, 235, .28);
  border-radius: 50%;
  background:
    radial-gradient(circle at center, rgba(255, 255, 255, .54) 0 28%, transparent 29%),
    repeating-radial-gradient(circle at center, transparent 0 16%, rgba(100, 202, 238, .12) 16.25% 16.5%, transparent 16.75% 25%);
  box-shadow: 0 0 90px rgba(83, 192, 231, .2);
  transform: translate(-50%, -50%);
  animation: heroAura 8s ease-in-out infinite;
  pointer-events: none;
}

.hero-product::before {
  content: "";
  position: absolute;
  z-index: 1;
  left: 50%;
  bottom: 38px;
  width: 96%;
  height: 82%;
  border-radius: 50%;
  background: conic-gradient(from 20deg, transparent, rgba(93, 215, 255, .38), transparent 32%, rgba(255, 255, 255, .72) 48%, transparent 63%, rgba(93, 215, 255, .28), transparent);
  filter: blur(1px);
  transform: translateX(-50%);
  animation: heroOrbit 11s linear infinite;
  pointer-events: none;
}

.hero-product::after {
  content: "";
  position: absolute;
  z-index: 1;
  left: 50%;
  bottom: 10px;
  width: 92%;
  height: 54px;
  border-radius: 50%;
  background: radial-gradient(ellipse, rgba(113, 220, 255, .72), rgba(98, 199, 239, .2) 45%, transparent 72%);
  filter: blur(13px);
  transform: translateX(-50%);
  animation: floorGlow 2.6s ease-in-out infinite;
  pointer-events: none;
}

.comparison {
  padding-bottom: 0;
  overflow: hidden;
  background: linear-gradient(180deg, #f4f8f6 0%, #f4f8f6 80%, #f2f8f6 100%);
}

.comparison-stage {
  background: #f4f8f6;
  -webkit-mask-image: none;
  mask-image: none;
}

.comparison-stage::after {
  width: 220px;
  background: linear-gradient(90deg, transparent, rgba(245, 252, 253, .82) 30%, rgba(236, 249, 253, .95) 50%, rgba(245, 252, 253, .78) 70%, transparent);
  filter: blur(34px);
  opacity: .92;
}

.comparison-panel::before {
  inset: -18px;
  background: linear-gradient(90deg, rgba(2, 10, 24, .24), transparent 19%, transparent 81%, rgba(2, 10, 24, .24));
  filter: blur(15px);
  transform: scale(1.025);
}

.comparison-panel::after {
  content: "";
  position: absolute;
  z-index: 4;
  inset: -2px;
  background:
    linear-gradient(to bottom,
      #f4f8f6 0%,
      rgba(244, 248, 246, .94) 2.5%,
      rgba(244, 248, 246, .62) 6%,
      rgba(244, 248, 246, .2) 11%,
      transparent 18%,
      transparent 81%,
      rgba(242, 248, 246, .2) 88%,
      rgba(242, 248, 246, .62) 94%,
      rgba(242, 248, 246, .94) 97.5%,
      #f2f8f6 100%);
  filter: blur(5px);
  pointer-events: none;
}

.comparison.is-revealed .comparison-panel--single {
  opacity: .94;
  filter: none;
}

.comparison-panel--single {
  background: linear-gradient(145deg, #f0f6f7, #dfe9ec);
}

.comparison-panel--dual {
  background: linear-gradient(145deg, #f9fdff, #dff5fd);
}

.comparison-panel h3 {
  text-shadow: 0 2px 3px rgba(0, 12, 30, .98), 0 7px 16px rgba(0, 15, 40, .9), 0 18px 38px rgba(0, 12, 35, .76);
}

.comparison-panel header small,
.comparison-panel__facts dt,
.comparison-panel__facts dd {
  text-shadow: 0 2px 3px rgba(0, 12, 30, .98), 0 6px 14px rgba(0, 13, 34, .9), 0 13px 30px rgba(0, 9, 28, .74);
}

.comparison-panel--single header {
  left: 15%;
}

.comparison-panel--dual header {
  right: 15%;
}

.comparison-panel .dual-arrows {
  opacity: .98;
  filter: saturate(1.45) contrast(1.22) brightness(.9) drop-shadow(0 10px 12px rgba(0, 56, 173, .58));
  mix-blend-mode: multiply;
}

.comparison.is-revealed .comparison-panel--single figure {
  opacity: .66;
  filter: saturate(.56) brightness(.72) blur(1.2px);
}

.comparison-panel--single::after {
  background:
    linear-gradient(to bottom,
      #f4f8f6 0%,
      rgba(244, 248, 246, .98) 3%,
      rgba(244, 248, 246, .76) 7%,
      rgba(244, 248, 246, .28) 13%,
      transparent 21%,
      transparent 79%,
      rgba(242, 248, 246, .28) 87%,
      rgba(242, 248, 246, .76) 94%,
      rgba(242, 248, 246, .98) 98%,
      #f2f8f6 100%);
}

.site-header nav {
  gap: 0;
}

.site-header nav a {
  padding-inline: 27px;
}

.site-header nav a + a::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 1px;
  height: 15px;
  background: linear-gradient(to bottom, transparent, rgba(74, 118, 145, .42), transparent);
  transform: translateY(-50%);
}

.store-link {
  position: relative;
  gap: 10px;
  padding: 10px 0 8px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: #0d67ad;
  font-size: 12px;
  letter-spacing: .015em;
}

.store-link::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 3px;
  left: 0;
  height: 1px;
  background: linear-gradient(90deg, rgba(13, 103, 173, .2), rgba(13, 103, 173, .82));
  transform: scaleX(.42);
  transform-origin: right;
  transition: transform .25s ease;
}

.store-link:hover::after,
.store-link:focus-visible::after {
  transform: scaleX(1);
}

.store-link span {
  transition: transform .25s ease;
}

.store-link:hover span,
.store-link:focus-visible span {
  transform: translate(3px, -3px);
}

.comparison {
  padding-top: 0;
}

.comparison .section-heading {
  position: relative;
  isolation: isolate;
  display: flex;
  width: 100%;
  max-width: none;
  min-height: clamp(620px, 63vw, 900px);
  align-items: center;
  justify-content: center;
  flex-direction: column;
  margin: 0 0 56px;
  padding: clamp(110px, 12vw, 190px) max(28px, 5vw);
  overflow: hidden;
  color: #fff;
  text-align: center;
  background:
    linear-gradient(180deg, rgba(0, 7, 15, .72) 0%, rgba(0, 10, 20, .6) 42%, rgba(0, 7, 15, .78) 100%),
    url("./assets/question-baby-care.png") center 53% / cover no-repeat;
}

.comparison .section-heading::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  background:
    radial-gradient(ellipse at 50% 48%, rgba(0, 27, 58, .04) 0%, rgba(0, 4, 10, .58) 79%),
    repeating-linear-gradient(180deg, rgba(0, 0, 0, .11) 0 2px, transparent 2px 8px);
  pointer-events: none;
}

.comparison .section-heading > span {
  display: none;
}

.comparison .section-heading p {
  margin: 0 0 28px;
  color: rgba(218, 241, 252, .9);
  font-size: clamp(23px, 2.15vw, 38px);
  font-weight: 750;
  text-shadow: 0 3px 13px rgba(0, 0, 0, .82);
}

.comparison .section-heading h2 {
  max-width: 1600px;
  margin: 0;
  color: #f8fcff;
  font-family: "Podam Sungkok Semi", serif;
  font-size: clamp(78px, 8.7vw, 162px);
  font-weight: 400;
  line-height: .98;
  letter-spacing: -.055em;
  text-shadow: 0 4px 8px rgba(0, 0, 0, .96), 0 18px 52px rgba(0, 0, 0, .82);
}

.comparison .section-heading h2 strong {
  color: #f7ca4f;
  font-weight: 400;
  text-shadow: 0 3px 6px rgba(0, 0, 0, .94), 0 0 24px rgba(247, 202, 79, .28), 0 18px 52px rgba(0, 0, 0, .78);
}

.comparison .section-heading h2 strong::after {
  content: none;
  display: none;
}

.comparison-note {
  margin-bottom: 0;
}

.lamp-story {
  position: relative;
  display: block;
  margin-top: 0;
  padding: 24px max(20px, 5vw) 168px;
  overflow: hidden;
  background: linear-gradient(180deg, #f2f8f6 0%, #f4f8f6 52%, #f7faf9 100%);
}

.lamp-story::before {
  content: "";
  position: absolute;
  top: 32px;
  left: 50%;
  width: min(920px, 78vw);
  height: 500px;
  border-radius: 50%;
  background: radial-gradient(ellipse, rgba(114, 215, 249, .14), rgba(198, 236, 247, .045) 48%, transparent 72%);
  filter: blur(38px);
  transform: translateX(-50%);
  pointer-events: none;
}

.lamp-story .dual-orb-bridge {
  --orb-size: clamp(270px, 28vw, 380px);
  z-index: 2;
  width: min(860px, 100%);
  margin: 0 auto;
  opacity: .26;
  transform: translateY(66px) scale(.91);
  transform-origin: center top;
  transition: opacity .75s ease, transform 1.05s cubic-bezier(.16, 1, .3, 1);
}

.lamp-story .dual-orb-bridge::before {
  bottom: 30px;
  width: 82%;
  height: 34%;
  opacity: .45;
  filter: blur(30px);
}

.lamp-story .dual-orb-bridge__orbs {
  grid-template-columns: var(--orb-size) var(--orb-size);
  gap: 32px;
}

.lamp-story .dual-orb-bridge__orb {
  width: var(--orb-size);
  height: var(--orb-size);
  border: 5px solid rgba(105, 201, 239, .42);
  box-shadow: 0 26px 54px rgba(20, 79, 137, .12), 0 0 28px rgba(75, 202, 249, .16);
}

.lamp-story .dual-orb-bridge__orb video,
.lamp-story .dual-orb-bridge__fallback {
  top: calc(var(--orb-size) * -1.93);
  width: calc(var(--orb-size) * 3.2);
}

.lamp-story .dual-orb-bridge__orb--led video,
.lamp-story .dual-orb-bridge__orb--led .dual-orb-bridge__fallback {
  left: calc(var(--orb-size) * -.4485);
}

.lamp-story .dual-orb-bridge__orb--lamp video,
.lamp-story .dual-orb-bridge__orb--lamp .dual-orb-bridge__fallback {
  left: calc(var(--orb-size) * -1.718);
}

.lamp-story .dual-orb-bridge__plus {
  width: 128px;
  height: 128px;
  border: 3px solid transparent;
  background:
    radial-gradient(circle at 36% 28%, rgba(38, 117, 181, .98), rgba(8, 39, 78, .98) 48%, rgba(2, 14, 31, .99) 100%) padding-box,
    conic-gradient(from 25deg, #d8f7ff, #61d6ff 24%, #176bb0 48%, #b7efff 72%, #fff 88%, #d8f7ff) border-box;
  color: #e8faff;
  font-size: 72px;
  font-weight: 260;
  text-shadow: 0 0 8px rgba(255, 255, 255, .72), 0 0 24px rgba(73, 205, 255, .88);
  box-shadow:
    0 0 0 8px rgba(223, 247, 255, .3),
    0 18px 42px rgba(3, 31, 69, .32),
    0 0 34px rgba(63, 184, 235, .72),
    inset 0 1px 0 rgba(255, 255, 255, .44);
  backdrop-filter: blur(10px);
}

.lamp-story .dual-orb-bridge__plus::before {
  content: "";
  position: absolute;
  inset: 13px;
  border: 1px solid rgba(190, 239, 255, .26);
  border-radius: 50%;
  box-shadow: inset 0 0 24px rgba(65, 198, 247, .14);
  pointer-events: none;
}

.lamp-story .dual-orb-bridge figcaption {
  grid-template-columns: var(--orb-size) var(--orb-size);
  gap: 32px;
  margin-top: 22px;
  font-size: 23px;
}

.lamp-story__intro {
  position: relative;
  z-index: 3;
  width: min(1540px, 100%);
  margin: 74px auto 82px;
  text-align: center;
  opacity: .22;
  transform: translateY(54px);
  transition: opacity .72s ease .1s, transform .98s cubic-bezier(.16, 1, .3, 1) .1s;
}

.lamp-story__intro > span {
  margin-bottom: 22px;
  font-size: 14px;
}

.lamp-story__intro h2 {
  margin: 0;
  font-size: clamp(58px, 6.15vw, 112px);
  line-height: 1.03;
  letter-spacing: -.078em;
  white-space: nowrap;
}

.lamp-story__intro h2 span,
.lamp-story__intro h2 strong {
  display: inline-block;
  white-space: nowrap;
}

.story-join {
  margin-right: .18em;
  color: var(--navy-deep);
}

.story-accent {
  position: relative;
  color: transparent !important;
  background: linear-gradient(105deg, #0b5fb8 0%, #2a84cf 32%, #fff 47%, #83dfff 54%, #1769b0 67%, #0b5fb8 100%);
  background-size: 230% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  filter: drop-shadow(0 10px 22px rgba(23, 105, 176, .18));
  animation: storySatin 3.1s ease-in-out infinite;
}

.story-accent::after {
  content: "";
  position: absolute;
  left: 2%;
  right: 0;
  bottom: -.12em;
  height: 8px;
  border-radius: 999px;
  background: #a7edff;
  box-shadow: 0 0 9px #fff, 0 0 22px rgba(68, 204, 255, .86), 0 0 42px rgba(68, 204, 255, .55);
  animation: storyUnderline 3.1s ease-in-out infinite;
}

.story-accent--care {
  font-weight: 700;
}

.lamp-story__intro p {
  max-width: none;
  margin: 42px auto 0;
  font-size: 18px;
  text-align: center;
}

.lamp-story__cards {
  z-index: 2;
  width: min(1420px, 100%);
  margin: 0 auto;
  gap: 28px;
  opacity: .18;
  transform: translateY(72px) scale(.97);
  transition: opacity .72s ease .2s, transform 1.08s cubic-bezier(.16, 1, .3, 1) .2s;
}

.lamp-story.is-revealed .dual-orb-bridge,
.lamp-story.is-revealed .lamp-story__intro,
.lamp-story.is-revealed .lamp-story__cards {
  opacity: 1;
  transform: none;
}

.lamp-story__cards figure {
  height: 390px;
}

@keyframes lampContactPulse {
  0%, 100% {
    opacity: .28;
    filter: saturate(1.12) drop-shadow(0 0 5px rgba(41, 156, 214, .26));
  }
  46%, 58% {
    opacity: .46;
    filter: saturate(1.32) drop-shadow(0 0 8px rgba(67, 186, 232, .42)) drop-shadow(0 0 22px rgba(12, 112, 187, .36));
  }
}

@keyframes heroAura {
  0%, 100% { opacity: .58; transform: translate(-50%, -50%) scale(.94); }
  50% { opacity: 1; transform: translate(-50%, -50%) scale(1.03); }
}

@keyframes heroOrbit {
  to { transform: translateX(-50%) rotate(360deg); }
}

@keyframes floorGlow {
  0%, 100% { opacity: .48; transform: translateX(-50%) scaleX(.86); }
  50% { opacity: .95; transform: translateX(-50%) scaleX(1.06); }
}

@keyframes storySatin {
  0%, 18% { background-position: 100% 0; }
  55%, 72% { background-position: 0 0; }
  100% { background-position: -100% 0; }
}

@keyframes storyUnderline {
  0%, 100% { opacity: .44; transform: scaleX(.82); }
  50% { opacity: 1; transform: scaleX(1.02); }
}

@media (max-width: 760px) {
  .comparison .section-heading {
    min-height: 520px;
    margin-bottom: 34px;
    padding: 88px 18px 82px;
    background-position: 52% center;
  }

  .comparison .section-heading p {
    margin-bottom: 20px;
    font-size: clamp(18px, 5.4vw, 24px);
  }

  .comparison .section-heading h2 {
    font-size: clamp(50px, 14.7vw, 68px);
    line-height: 1.03;
  }

  .comparison .section-heading h2 strong::after {
    height: 6px;
  }

  .lamp-phrase--top .lamp-badge {
    bottom: calc(100% + 20px);
  }

  .lamp-phrase--bottom .lamp-badge {
    top: auto;
    bottom: calc(100% + 20px);
  }

  .hero-message {
    margin-top: 30px;
  }

  .hero-kicker {
    margin-bottom: 12px !important;
    font-size: clamp(12px, 3.4vw, 16px) !important;
  }

  .hero-message h1 {
    gap: clamp(8px, 2.5vw, 14px);
  }

  .hero-type--power {
    transform: none;
  }

  .hero-message h1 .hero-type--speed {
    transform: none;
  }

  .hero-type--speed::after {
    height: 3px;
  }

  .hero-message > p:not(.hero-kicker) {
    margin-top: 18px;
  }

  .hero-facts {
    width: calc(100% - 28px);
    margin-top: 28px;
    padding: 12px 0;
  }

  .hero-facts article,
  .hero-facts .hero-facts__accent {
    min-height: 68px;
    padding: 8px 8px;
  }

  .hero-facts article + article::before {
    height: 42px;
  }

  .hero-facts b {
    font-size: clamp(19px, 5.5vw, 25px);
  }

  .hero-facts span {
    font-size: 9px;
  }

  .hero-stage::before {
    width: 118vw;
  }

  .hero-product::before {
    width: 112%;
  }

  .comparison-stage::after {
    width: 126%;
    height: 118px;
    background: linear-gradient(180deg, transparent, rgba(242, 251, 253, .94) 37%, rgba(235, 248, 252, .98) 50%, rgba(244, 251, 253, .9) 64%, transparent);
    filter: blur(26px);
  }

  .comparison-panel::before {
    inset: -14px;
    background: linear-gradient(90deg, rgba(2, 10, 24, .2), transparent 22%, transparent 78%, rgba(2, 10, 24, .2));
    filter: blur(13px);
  }

  .comparison-panel::after {
    background:
      linear-gradient(to bottom,
        #f4f8f6 0%,
        rgba(244, 248, 246, .9) 3%,
        rgba(244, 248, 246, .48) 8%,
        transparent 17%,
        transparent 82%,
        rgba(242, 248, 246, .48) 93%,
        #f2f8f6 100%);
    filter: blur(4px);
  }

  .lamp-story {
    padding: 18px 12px 112px;
  }

  .lamp-story::before {
    top: 24px;
    width: 110vw;
    height: 330px;
  }

  .lamp-story .dual-orb-bridge {
    --orb-size: min(43vw, 180px);
    width: 100%;
  }

  .lamp-story .dual-orb-bridge__orbs {
    grid-template-columns: var(--orb-size) var(--orb-size);
    gap: 14px;
  }

  .lamp-story .dual-orb-bridge__orb {
    width: var(--orb-size);
    height: var(--orb-size);
    border-width: 3px;
  }

  .lamp-story .dual-orb-bridge__orb video,
  .lamp-story .dual-orb-bridge__fallback {
    top: calc(var(--orb-size) * -1.93);
    width: calc(var(--orb-size) * 3.2);
  }

  .lamp-story .dual-orb-bridge__orb--led video,
  .lamp-story .dual-orb-bridge__orb--led .dual-orb-bridge__fallback {
    left: calc(var(--orb-size) * -.4485);
  }

  .lamp-story .dual-orb-bridge__orb--lamp video,
  .lamp-story .dual-orb-bridge__orb--lamp .dual-orb-bridge__fallback {
    left: calc(var(--orb-size) * -1.718);
  }

  .lamp-story .dual-orb-bridge__plus {
    width: 76px;
    height: 76px;
    border-width: 2px;
    font-size: 46px;
    box-shadow:
      0 0 0 5px rgba(223, 247, 255, .3),
      0 12px 28px rgba(3, 31, 69, .3),
      0 0 24px rgba(63, 184, 235, .62),
      inset 0 1px 0 rgba(255, 255, 255, .42);
  }

  .lamp-story .dual-orb-bridge__plus::before {
    inset: 8px;
  }

  .lamp-story .dual-orb-bridge figcaption {
    grid-template-columns: var(--orb-size) var(--orb-size);
    gap: 14px;
    margin-top: 14px;
    font-size: 13px;
  }

  .lamp-story__intro {
    margin: 40px auto 60px;
  }

  .lamp-story__intro > span {
    font-size: 10px;
  }

  .lamp-story__intro h2 {
    font-size: clamp(34px, 9.8vw, 43px);
    line-height: 1.18;
    white-space: normal;
  }

  .lamp-story__intro h2 span,
  .lamp-story__intro h2 strong {
    white-space: normal;
  }

  .story-accent::after {
    height: 5px;
  }

  .lamp-story__intro p {
    margin-top: 30px;
    padding-inline: 12px;
    font-size: 14px;
  }

  .lamp-story__cards {
    gap: 24px;
  }

  .lamp-story__cards figure {
    height: 300px;
  }
}

/* v87 final mobile geometry overrides. Keep this block last so legacy review
   variants cannot restore the oversized rails or undersized comparison. */
@media (max-width: 760px) {
  .hero-stage {
    min-height: clamp(286px, 76vw, 320px);
  }

  .hero-product {
    top: 47%;
    width: clamp(166px, 45vw, 204px);
  }

  .lamp-copy--upper,
  .home-hero.is-visible .lamp-copy--upper {
    top: 39%;
  }

  .lamp-copy--lower,
  .home-hero.is-visible .lamp-copy--lower {
    right: 7px;
    bottom: 36%;
  }

  .lamp-phrase--top .lamp-line,
  .lamp-phrase--bottom .lamp-line {
    width: calc(100% + clamp(38px, 11vw, 50px));
  }

  .hero-message {
    width: 100%;
    margin-top: -5px;
    padding-inline: 18px;
    text-align: center;
  }

  .hero-kicker {
    width: 100%;
    margin-inline: auto;
    text-align: center;
  }

  .hero-inline-brand {
    margin-top: 11px;
  }

  .home-hero .hero-facts {
    margin-top: 8px;
  }

  .comparison-stage {
    height: clamp(610px, 168vw, 690px);
  }

  .comparison-panel,
  .comparison-panel--single,
  .comparison-panel--dual {
    width: 80%;
  }

  .comparison-panel--single,
  .comparison.is-revealed .comparison-panel--single {
    clip-path: polygon(0 0, calc(62.5% - 35% * var(--comparison-progress)) 0,
      calc(62.5% - 35% * var(--comparison-progress)) 100%, 0 100%);
  }

  .comparison-panel--dual,
  .comparison.is-revealed .comparison-panel--dual {
    clip-path: polygon(calc(37.5% - 35% * var(--comparison-progress)) 0,
      100% 0, 100% 100%, calc(37.5% - 35% * var(--comparison-progress)) 100%);
  }

  .comparison-panel figure {
    left: 0;
    width: 100%;
  }

  .comparison-panel--single figure,
  .comparison.is-revealed .comparison-panel--single figure {
    transform: translateX(calc(-4% - 24% * var(--comparison-progress)))
      scale(calc(.66 - .26 * var(--comparison-progress)));
  }

  .comparison-panel--dual figure,
  .comparison.is-revealed .comparison-panel--dual figure {
    transform: translateX(calc(-2% - 11% * var(--comparison-progress)))
      scale(calc(.9 + .36 * var(--comparison-progress)));
  }

  .comparison-panel--single header,
  .comparison.is-revealed .comparison-panel--single header {
    left: calc(46% - 24% * var(--comparison-progress));
    width: min(58%, 30vw);
    transform: translate(-50%, -50%) scale(calc(.88 - .34 * var(--comparison-progress)));
  }

  .comparison-panel--dual header,
  .comparison.is-revealed .comparison-panel--dual header {
    left: calc(48% - 11% * var(--comparison-progress));
    width: min(72%, 52vw);
    transform: translate(-50%, -50%) scale(calc(.96 + .2 * var(--comparison-progress)));
  }
}

/* v105: official-store CTA — bold blue capsule with a round arrow action. */
.site-header .store-link,
.support-page .site-header .store-link {
  min-height: 52px;
  gap: 18px;
  padding: 7px 8px 7px 24px;
  border: 0;
  border-radius: 999px;
  background: linear-gradient(110deg, #0d4e95 0%, #0872bd 100%);
  box-shadow: 0 10px 24px rgba(8, 76, 145, .2);
  color: #fff;
  font-family: GmarketSans, Arial, sans-serif;
  font-size: 16px;
  font-weight: 900;
  letter-spacing: -.045em;
  transition: transform .24s ease, box-shadow .24s ease, filter .24s ease;
}

.site-header .store-link span,
.support-page .site-header .store-link span {
  width: 38px;
  height: 38px;
  display: grid;
  flex: 0 0 38px;
  place-items: center;
  border-radius: 50%;
  background: #fff;
  color: #0c61aa;
  font-size: 20px;
  font-weight: 700;
  line-height: 1;
  transition: transform .24s ease;
}

.site-header .store-link:hover,
.site-header .store-link:focus-visible,
.support-page .site-header .store-link:hover,
.support-page .site-header .store-link:focus-visible {
  background: linear-gradient(110deg, #0d4e95 0%, #0872bd 100%);
  box-shadow: 0 14px 30px rgba(8, 76, 145, .28);
  filter: saturate(1.08);
  transform: translateY(-2px);
}

.site-header .store-link:hover span,
.site-header .store-link:focus-visible span,
.support-page .site-header .store-link:hover span,
.support-page .site-header .store-link:focus-visible span {
  transform: translate(2px, -2px);
}

@media (max-width: 760px) {
  .site-header .store-link,
  .support-page .site-header .store-link {
    min-height: 34px;
    gap: 6px;
    padding: 4px 4px 4px 9px;
    border: 0;
    background: linear-gradient(110deg, #0d4e95 0%, #0872bd 100%);
    color: #fff;
    font-size: clamp(8px, 2.2vw, 10px);
    letter-spacing: -.045em;
  }

  .site-header .store-link span,
  .support-page .site-header .store-link span {
    width: 24px;
    height: 24px;
    flex-basis: 24px;
    font-size: 14px;
  }
}

/* v97 — customer-care panels drawn from the PODAM appliance silhouette. */
.support-page .support-cards {
  width: min(790px, 100%);
  align-items: stretch;
  gap: clamp(22px, 2.6vw, 34px);
}

.support-page .support-card {
  min-height: 390px;
  justify-content: flex-start;
  padding: 80px 30px 30px;
  overflow: hidden;
  border: 1px solid rgba(184, 180, 172, .8);
  border-radius: 48px 48px 32px 32px;
  background:
    linear-gradient(108deg, rgba(255,255,255,.95), rgba(241,241,239,.82)),
    #f7f7f5;
  box-shadow:
    0 23px 44px rgba(85, 71, 54, .12),
    inset 0 0 0 7px rgba(247, 245, 241, .88),
    inset 0 0 0 8px rgba(181, 181, 176, .34),
    inset 0 1px 0 rgba(255,255,255,.96);
}

.support-page .support-card:nth-child(2) {
  border-color: rgba(176, 153, 129, .76);
  background:
    linear-gradient(112deg, rgba(246, 237, 226, .98), rgba(222, 203, 183, .86)),
    #e8d8c7;
  box-shadow:
    0 23px 44px rgba(91, 68, 43, .14),
    inset 0 0 0 7px rgba(236, 223, 209, .9),
    inset 0 0 0 8px rgba(155, 132, 108, .34),
    inset 0 1px 0 rgba(255,255,255,.72);
}

.support-page .support-card::before {
  content: "○  ·  02:38  ·  ○";
  position: absolute;
  top: 17px;
  right: 23px;
  left: 23px;
  width: auto;
  height: 43px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-bottom: 1px solid rgba(126, 133, 136, .25);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: rgba(93, 100, 103, .56);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: .15em;
  transform: none;
}

.support-page .support-card::after {
  content: "";
  position: absolute;
  z-index: 0;
  right: 25px;
  bottom: 24px;
  left: 25px;
  height: 118px;
  border: 6px solid rgba(235, 239, 241, .94);
  border-radius: 17px;
  background:
    linear-gradient(180deg, rgba(96, 215, 255, .42), transparent 36%),
    repeating-linear-gradient(90deg, transparent 0 13%, rgba(137, 219, 255, .18) 13.5% 14%, transparent 14.5% 25%),
    linear-gradient(155deg, #167bd2 0%, #064fae 48%, #052e79 100%);
  box-shadow:
    inset 0 0 0 1px rgba(3, 34, 92, .78),
    inset 0 10px 28px rgba(94, 214, 255, .24);
  pointer-events: none;
}

.support-page .support-card__icon {
  position: relative;
  z-index: 2;
  width: 61px;
  height: 61px;
  margin: 4px 0 14px;
  border-color: rgba(43, 104, 145, .2);
  background: rgba(247, 250, 250, .72);
  color: #1769a8;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.8);
}

.support-page .support-card:nth-child(2) .support-card__icon {
  background: rgba(255, 249, 241, .55);
}

.support-page .support-card > span:not(.support-card__icon) {
  position: relative;
  z-index: 2;
  color: #5f7079;
  font-size: 14px;
  font-weight: 800;
}

.support-page .support-card strong {
  position: absolute;
  z-index: 2;
  right: 34px;
  bottom: 76px;
  left: 34px;
  margin: 0;
  color: #fff;
  font-size: clamp(25px, 2.05vw, 32px);
  font-weight: 850;
  letter-spacing: -.035em;
  text-shadow: 0 2px 8px rgba(1, 26, 70, .38);
}

.support-page .support-card small {
  position: absolute;
  z-index: 2;
  right: 34px;
  bottom: 48px;
  left: 34px;
  margin: 0;
  color: rgba(232, 247, 255, .86);
  font-size: 12px;
  font-weight: 700;
  text-shadow: 0 1px 4px rgba(1, 26, 70, .34);
}

.support-page .support-card:hover,
.support-page .support-card:focus-visible {
  border-color: rgba(71, 122, 155, .48);
  background:
    linear-gradient(108deg, rgba(255,255,255,.98), rgba(241,241,239,.9)),
    #f7f7f5;
  box-shadow:
    0 28px 52px rgba(85, 71, 54, .15),
    inset 0 0 0 7px rgba(247, 245, 241, .9),
    inset 0 0 0 8px rgba(95, 137, 161, .3),
    inset 0 1px 0 rgba(255,255,255,.96);
  transform: translateY(-3px);
}

.support-page .support-card:nth-child(2):hover,
.support-page .support-card:nth-child(2):focus-visible {
  background:
    linear-gradient(112deg, rgba(248, 239, 229, .99), rgba(226, 207, 187, .92)),
    #e8d8c7;
}

@media (max-width: 760px) {
  .support-page .support-cards {
    width: min(340px, 100%);
    gap: 18px;
  }

  .support-page .support-card {
    min-height: 342px;
    padding: 72px 24px 26px;
    border-radius: 42px 42px 28px 28px;
  }

  .support-page .support-card::before {
    top: 14px;
    right: 21px;
    left: 21px;
    height: 39px;
    font-size: 12px;
  }

  .support-page .support-card::after {
    right: 21px;
    bottom: 20px;
    left: 21px;
    height: 108px;
    border-width: 5px;
    border-radius: 15px;
  }

  .support-page .support-card__icon {
    width: 56px;
    height: 56px;
    margin-top: 2px;
  }

  .support-page .support-card strong {
    right: 28px;
    bottom: 68px;
    left: 28px;
    font-size: 26px;
  }

  .support-page .support-card small {
    right: 28px;
    bottom: 42px;
    left: 28px;
    font-size: 11px;
  }
}

/* v94 — warm household-tone customer care page. */
.support-page .site-header .store-link {
  border-color: rgba(213, 180, 143, .72);
  background: #fff8ef;
  box-shadow: 0 6px 16px rgba(121, 87, 48, .1);
  color: #8a5b2c;
}

.support-page .site-header .store-link:hover,
.support-page .site-header .store-link:focus-visible {
  background: #f9eddd;
  box-shadow: 0 9px 22px rgba(121, 87, 48, .15);
}

.support-page .customer-support {
  position: relative;
  isolation: isolate;
  min-height: calc(100vh - 278px);
  padding: clamp(142px, 10vw, 170px) max(24px, 7vw) clamp(96px, 8vw, 132px);
  overflow: hidden;
  background:
    radial-gradient(circle at 13% 22%, rgba(232, 213, 190, .48) 0 13%, transparent 13.4%),
    radial-gradient(circle at 91% 78%, rgba(225, 207, 184, .36) 0 17%, transparent 17.4%),
    linear-gradient(150deg, #fffdf9 0%, #fbf4eb 54%, #f6ecdf 100%);
}

.support-page .customer-support::before,
.support-page .customer-support::after {
  content: "";
  position: absolute;
  z-index: -1;
  border: 0;
  border-radius: 50%;
  pointer-events: none;
}

.support-page .customer-support::before {
  top: -250px;
  left: -200px;
  width: 560px;
  height: 560px;
  background: rgba(255, 255, 255, .46);
}

.support-page .customer-support::after {
  right: -210px;
  bottom: -330px;
  width: 650px;
  height: 650px;
  background: rgba(235, 220, 201, .34);
}

.support-page .customer-support__inner {
  width: min(1100px, 100%);
}

.support-page .customer-support__heading > span {
  gap: 9px;
  margin-bottom: 16px;
  color: #52758f;
  font-size: 12px;
  letter-spacing: .16em;
}

.support-page .customer-support__heading > span::before,
.support-page .customer-support__heading > span::after {
  width: 22px;
  background: rgba(52, 122, 168, .34);
}

.support-page .customer-support__heading h1 {
  color: #0b3157;
  font-size: clamp(56px, 5.4vw, 78px);
  font-weight: 850;
  letter-spacing: -.075em;
}

.support-page .customer-support__heading p {
  max-width: 680px;
  margin-top: 25px;
  color: #687983;
  font-size: clamp(14px, 1.1vw, 17px);
  line-height: 1.75;
}

.support-page .support-cards {
  width: min(900px, 100%);
  gap: clamp(16px, 2vw, 24px);
  margin-top: clamp(46px, 5vw, 62px);
}

.support-page .support-card {
  min-height: 285px;
  padding: 34px 28px 32px;
  overflow: visible;
  border: 1px solid rgba(202, 181, 157, .58);
  border-radius: 30px;
  background: rgba(255, 253, 249, .9);
  box-shadow: 0 20px 48px rgba(99, 76, 50, .09);
  backdrop-filter: blur(8px);
  transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease, background .25s ease;
}

.support-page .support-card::before {
  content: none;
}

.support-page .support-card:hover,
.support-page .support-card:focus-visible {
  border-color: rgba(52, 122, 168, .48);
  background: #fffefa;
  box-shadow: 0 26px 58px rgba(99, 76, 50, .13);
  transform: translateY(-4px);
}

.support-page .support-card__icon {
  width: 68px;
  height: 68px;
  display: grid;
  place-items: center;
  margin-bottom: 19px;
  border: 1px solid rgba(74, 135, 173, .22);
  border-radius: 50%;
  background: linear-gradient(145deg, #f8fbfc, #eef5f6);
  color: #1769a8;
}

.support-page .support-card__icon svg {
  width: 36px;
  height: 36px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.support-page .support-card > span:not(.support-card__icon) {
  color: #6d7c83;
  font-size: 13px;
}

.support-page .support-card strong {
  margin-top: 12px;
  color: #0b3157;
  font-size: clamp(26px, 2.15vw, 34px);
  font-weight: 850;
}

.support-page .support-card small {
  margin-top: 12px;
  color: #78868c;
  font-size: 13px;
}

.support-page .customer-support__note {
  max-width: 840px;
  margin-top: 30px;
  color: #7d898e;
  font-size: 11px;
  line-height: 1.7;
}

@media (max-width: 760px) {
  .support-page .customer-support {
    min-height: 0;
    padding: 104px 18px 78px;
    background:
      radial-gradient(circle at 7% 13%, rgba(232, 213, 190, .42) 0 11%, transparent 11.5%),
      radial-gradient(circle at 100% 78%, rgba(225, 207, 184, .32) 0 17%, transparent 17.5%),
      linear-gradient(150deg, #fffdf9 0%, #fbf4eb 58%, #f6ecdf 100%);
  }

  .support-page .customer-support__heading > span {
    margin-bottom: 13px;
    font-size: 10px;
  }

  .support-page .customer-support__heading h1 {
    font-size: clamp(43px, 12vw, 52px);
  }

  .support-page .customer-support__heading p {
    margin-top: 19px;
    font-size: 13px;
    line-height: 1.7;
  }

  .support-page .customer-support__heading p br {
    display: initial;
  }

  .support-page .support-cards {
    gap: 13px;
    margin-top: 34px;
  }

  .support-page .support-card {
    min-height: 220px;
    padding: 27px 20px 25px;
    border-radius: 24px;
  }

  .support-page .support-card__icon {
    width: 58px;
    height: 58px;
    margin-bottom: 15px;
  }

  .support-page .support-card__icon svg {
    width: 31px;
    height: 31px;
  }

  .support-page .support-card strong {
    margin-top: 10px;
    font-size: 27px;
  }

  .support-page .support-card small {
    margin-top: 10px;
  }

  .support-page .customer-support__note {
    margin-top: 23px;
    text-align: center;
  }
}

/* The mobile split belongs to the background, not to PODAM itself. The former
   polygon plus overflow hidden was slicing off the appliance and its copy. */
@media (max-width: 760px) {
  .comparison-panel--dual,
  .comparison.is-revealed .comparison-panel--dual {
    overflow: visible;
    clip-path: none;
    background: transparent;
  }

  .comparison-panel--dual::before {
    display: none;
  }

  .comparison-panel--dual figure {
    z-index: 2;
  }
}

/* v87 — clearer chapter rhythm plus a mobile-first product comparison. */
.section-divider {
  --divider-top: #fff;
  --divider-bottom: #fff;
  --divider-blue: rgba(30, 132, 184, .62);
  --divider-warm: rgba(201, 143, 136, .78);
  position: relative;
  z-index: 8;
  height: 0;
  overflow: visible;
  background: transparent;
}

.section-divider--lineup-video {
  --divider-top: #fffcf8;
  --divider-bottom: #fff;
}

.section-divider--comparison-story {
  --divider-top: #f2f8f6;
  --divider-bottom: #f2f8f6;
}

.section-divider--story-reflector {
  --divider-top: #f7faf9;
  --divider-bottom: #fffaf4;
}

.section-divider::before,
.section-divider::after {
  content: "";
  position: absolute;
  top: 0;
  width: min(38vw, 510px);
  height: 1px;
  transform: none;
}

.section-divider::before {
  right: calc(50% + 10px);
  background: rgba(47, 141, 187, .38);
}

.section-divider::after {
  left: calc(50% + 10px);
  background: rgba(47, 141, 187, .38);
}

.section-divider > span,
.section-divider > span::before,
.section-divider > span::after {
  position: absolute;
  border-radius: 50%;
}

.section-divider > span {
  top: 0;
  left: 50%;
  width: 20px;
  height: 0;
  background: transparent;
  transform: translate(-50%, -50%);
}

.section-divider > span::before,
.section-divider > span::after {
  content: "";
  top: 50%;
  width: 10px;
  height: 10px;
  border: 0;
  box-shadow: none;
}

.section-divider > span::before {
  left: 50%;
  z-index: 2;
  background: #2f8dbb;
  transform: translate(-50%, -50%);
}

.section-divider > span::after {
  display: none;
}

@media (max-width: 760px) {
  /* Preserve the desktop hero proportions without letting the light rails
     dominate the narrower canvas. */
  .hero-stage {
    min-height: clamp(286px, 76vw, 320px);
  }

  .hero-product {
    top: 47%;
    width: clamp(166px, 45vw, 204px);
  }

  .lamp-copy--upper,
  .home-hero.is-visible .lamp-copy--upper {
    top: 39%;
  }

  .lamp-copy--lower,
  .home-hero.is-visible .lamp-copy--lower {
    right: 7px;
    bottom: 36%;
  }

  .lamp-phrase--top .lamp-line,
  .lamp-phrase--bottom .lamp-line {
    width: calc(100% + clamp(38px, 11vw, 50px));
  }

  .hero-message {
    width: 100%;
    margin-top: -5px;
    padding-inline: 18px;
    text-align: center;
  }

  .hero-kicker {
    width: 100%;
    margin-inline: auto;
    text-align: center;
  }

  .hero-inline-brand {
    margin-top: 11px;
  }

  .home-hero .hero-facts {
    margin-top: 8px;
  }

  /* The two canvases remain horizontal, but PODAM takes over the frame as the
     scroll progress rises. Copy and product use the same centre formula. */
  .comparison-stage {
    height: clamp(610px, 168vw, 690px);
  }

  .comparison-panel,
  .comparison-panel--single,
  .comparison-panel--dual {
    width: 80%;
  }

  .comparison-panel--single,
  .comparison.is-revealed .comparison-panel--single {
    clip-path: polygon(0 0, calc(62.5% - 35% * var(--comparison-progress)) 0,
      calc(62.5% - 35% * var(--comparison-progress)) 100%, 0 100%);
  }

  .comparison-panel--dual,
  .comparison.is-revealed .comparison-panel--dual {
    clip-path: polygon(calc(37.5% - 35% * var(--comparison-progress)) 0,
      100% 0, 100% 100%, calc(37.5% - 35% * var(--comparison-progress)) 100%);
  }

  .comparison-panel figure {
    left: 0;
    width: 100%;
  }

  .comparison-panel--single figure,
  .comparison.is-revealed .comparison-panel--single figure {
    transform: translateX(calc(-4% - 24% * var(--comparison-progress)))
      scale(calc(.66 - .26 * var(--comparison-progress)));
  }

  .comparison-panel--dual figure,
  .comparison.is-revealed .comparison-panel--dual figure {
    transform: translateX(calc(-2% - 11% * var(--comparison-progress)))
      scale(calc(.9 + .36 * var(--comparison-progress)));
  }

  .comparison-panel--single header,
  .comparison.is-revealed .comparison-panel--single header {
    left: calc(46% - 24% * var(--comparison-progress));
    width: min(58%, 30vw);
    transform: translate(-50%, -50%) scale(calc(.88 - .34 * var(--comparison-progress)));
  }

  .comparison-panel--dual header,
  .comparison.is-revealed .comparison-panel--dual header {
    left: calc(48% - 11% * var(--comparison-progress));
    width: min(72%, 52vw);
    transform: translate(-50%, -50%) scale(calc(.96 + .2 * var(--comparison-progress)));
  }

  .section-divider {
    height: 0;
  }

  .section-divider::before,
  .section-divider::after {
    width: calc(50% - 34px);
  }
}

/* September live-review v22: white lamp halo and clearer comparison panels. */
.lamp-badge,
.lamp-word .lamp-badge {
  display: none !important;
}

.lamp-word::before {
  content: "";
  position: absolute;
  z-index: 0;
  inset: -62px -48px;
  border-radius: 50%;
  background: radial-gradient(ellipse at center,
      rgba(255, 255, 255, .98) 0%,
      rgba(255, 255, 255, .88) 34%,
      rgba(255, 255, 255, .52) 58%,
      rgba(255, 255, 255, .16) 73%,
      transparent 84%);
  filter: blur(17px);
  pointer-events: none;
}

.lamp-word strong {
  text-shadow:
    0 1px 0 rgba(255, 255, 255, .96),
    0 0 15px rgba(255, 255, 255, .94),
    0 0 34px rgba(255, 255, 255, .72),
    0 14px 30px rgba(255, 255, 255, .52);
}

.lamp-phrase em {
  position: relative;
  z-index: 2;
  text-shadow:
    0 1px 0 rgba(255, 255, 255, .96),
    0 0 14px rgba(255, 255, 255, .92),
    0 0 30px rgba(255, 255, 255, .68);
}

.lamp-line {
  box-shadow:
    0 0 2px 1px rgba(228, 249, 255, .98),
    0 0 8px 2px rgba(137, 224, 252, .86),
    0 0 18px 5px rgba(72, 199, 241, .6),
    0 0 39px 11px rgba(255, 255, 255, .74),
    0 0 72px 20px rgba(255, 255, 255, .48);
}

.lamp-line::before {
  opacity: .58;
  filter: blur(25px) saturate(.9);
  mix-blend-mode: screen;
}

.lamp-phrase--top .lamp-line::before {
  background: linear-gradient(to bottom,
      rgba(221, 247, 255, .98) 0%,
      rgba(242, 252, 255, .8) 24%,
      rgba(255, 255, 255, .48) 52%,
      rgba(255, 255, 255, .14) 74%,
      transparent 100%);
}

.lamp-phrase--bottom .lamp-line::before {
  background: linear-gradient(to top,
      rgba(221, 247, 255, .98) 0%,
      rgba(242, 252, 255, .8) 24%,
      rgba(255, 255, 255, .48) 52%,
      rgba(255, 255, 255, .14) 74%,
      transparent 100%);
}

@media (min-width: 901px) {
  .lamp-phrase strong {
    font-size: clamp(124px, 9.6vw, 186px);
  }

  .lamp-phrase em {
    font-size: clamp(62px, 5vw, 94px);
  }

  .lamp-copy--upper {
    position: relative;
    left: clamp(8px, 1.4vw, 24px);
  }

  .lamp-copy--lower {
    position: relative;
    right: auto;
    transform: translateX(20px);
  }

  .home-hero.is-visible .lamp-copy--lower {
    transform: translateX(0);
  }

  .lamp-copy--lower .lamp-phrase {
    transform: scaleX(.84);
    transform-origin: left center;
  }
}

.comparison-stage::after,
.comparison-panel::before,
.comparison-panel--dual::before {
  display: none;
}

.lamp-word strong::after {
  content: none;
  animation: none;
}

.comparison.is-revealed .comparison-panel--single {
  opacity: 1;
}

.comparison.is-revealed .comparison-panel--single figure {
  opacity: .94;
  filter: saturate(.86) brightness(.98) contrast(1.08);
}

/* September live-review v24: clearer white hero, larger product/type and page return control. */
body {
  background: #fff;
}

.home-hero {
  min-height: 1180px;
  background:
    linear-gradient(122deg, #fff 0%, #fff 46%, #f8fcfd 72%, #f1fafc 100%);
}

.home-hero::before,
.home-hero::after {
  content: "";
  position: absolute;
  z-index: 0;
  pointer-events: none;
}

.home-hero::before {
  top: 76px;
  bottom: 0;
  left: 0;
  width: min(29vw, 520px);
  background: linear-gradient(150deg, rgba(222, 243, 250, .58), rgba(255, 255, 255, 0) 68%);
  clip-path: polygon(0 0, 72% 0, 100% 82%, 0 100%);
}

.home-hero::after {
  top: 186px;
  right: -7vw;
  width: min(31vw, 560px);
  height: 690px;
  border-radius: 50%;
  background: rgba(226, 246, 239, .58);
  box-shadow: 0 0 0 1px rgba(173, 217, 204, .18);
}

.home-shape--one {
  background: rgba(197, 233, 246, .72);
  box-shadow:
    0 0 0 1px rgba(111, 197, 228, .24),
    0 38px 100px rgba(77, 158, 190, .13);
}

.home-shape--two {
  background: rgba(225, 246, 238, .74);
}

.hero-stage::before {
  width: min(970px, 70vw);
  border-color: rgba(75, 183, 225, .3);
  background:
    radial-gradient(circle at center, rgba(255, 255, 255, .96) 0 25%, rgba(222, 244, 251, .82) 25.5% 52%, rgba(255, 255, 255, .32) 52.5% 63%, transparent 63.5%),
    repeating-radial-gradient(circle at center, transparent 0 16%, rgba(77, 186, 226, .13) 16.25% 16.5%, transparent 16.75% 25%);
  box-shadow: 0 0 110px rgba(70, 174, 214, .18);
}

.hero-product img {
  filter:
    contrast(1.065)
    saturate(1.08)
    drop-shadow(0 34px 42px rgba(30, 66, 88, .25));
}

.product-halo {
  background: rgba(244, 251, 253, .94);
  box-shadow:
    inset 0 0 0 1px rgba(113, 198, 229, .28),
    0 30px 72px rgba(48, 116, 145, .14);
}

.lamp-word strong {
  color: #075da9;
  text-shadow:
    0 1px 0 rgba(255, 255, 255, .98),
    0 0 13px rgba(255, 255, 255, .9),
    0 13px 30px rgba(16, 76, 122, .18);
}

.lamp-phrase em {
  color: #082f59;
  text-shadow:
    0 1px 0 rgba(255, 255, 255, .98),
    0 0 14px rgba(255, 255, 255, .9),
    0 12px 27px rgba(19, 62, 95, .14);
}

.lamp-line {
  height: 7px;
  background: linear-gradient(90deg, #229bd4, #7ed7f3 42%, #dff8ff 66%, #53c2eb);
  box-shadow:
    0 0 1px 1px rgba(230, 250, 255, .98),
    0 0 8px 2px rgba(86, 205, 244, .72),
    0 0 22px 6px rgba(64, 184, 228, .3);
}

.lamp-line::before {
  opacity: .42;
  filter: blur(22px) saturate(.88);
}

.lamp-phrase--top .lamp-line {
  top: auto;
  bottom: -25px;
  left: 0;
  width: calc(100% + clamp(180px, 18vw, 340px));
}

.lamp-phrase--bottom .lamp-line {
  top: -25px;
  right: 0;
  bottom: auto;
  left: auto;
  width: calc(100% + clamp(180px, 18vw, 340px));
}

.lamp-phrase--top .lamp-line::before {
  top: auto;
  bottom: 0;
  background: linear-gradient(to top, rgba(215, 245, 255, .94), rgba(255, 255, 255, .46) 54%, transparent 100%);
}

.lamp-phrase--bottom .lamp-line::before {
  top: 0;
  bottom: auto;
  background: linear-gradient(to bottom, rgba(215, 245, 255, .94), rgba(255, 255, 255, .46) 54%, transparent 100%);
}

.hero-facts {
  border-color: rgba(42, 103, 143, .28);
}

.hero-facts article + article::before {
  background: linear-gradient(to bottom, transparent, rgba(35, 103, 150, .62) 24%, rgba(35, 103, 150, .62) 76%, transparent);
}

.hero-facts b {
  color: #075da9;
}

.back-to-top {
  position: fixed;
  z-index: 130;
  right: clamp(18px, 2.4vw, 38px);
  bottom: clamp(18px, 2.4vw, 36px);
  width: 56px;
  height: 56px;
  display: grid;
  place-items: center;
  padding: 0;
  border: 1px solid rgba(95, 176, 211, .5);
  border-radius: 50%;
  background: rgba(255, 255, 255, .94);
  color: #075da9;
  font-family: var(--sans);
  font-size: 25px;
  line-height: 1;
  box-shadow: 0 13px 34px rgba(29, 84, 112, .18), inset 0 0 0 5px rgba(225, 246, 253, .52);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(14px);
  transition: opacity .24s ease, transform .28s ease, border-color .2s ease, background .2s ease;
  cursor: pointer;
}

.back-to-top.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}

.back-to-top:hover,
.back-to-top:focus-visible {
  border-color: rgba(25, 133, 188, .78);
  background: #fff;
  outline: none;
}

@media (min-width: 1281px) {
  .hero-stage {
    min-height: 760px;
    grid-template-columns: minmax(0, 1fr) clamp(560px, 39vw, 620px) minmax(0, 1fr);
    padding-inline: clamp(34px, 3.2vw, 62px);
  }

  .hero-product {
    height: 740px;
  }

  .lamp-phrase strong {
    font-size: clamp(146px, 9.5vw, 184px);
  }

  .lamp-phrase em {
    font-size: clamp(48px, 3.2vw, 62px);
  }

  .lamp-copy--upper {
    left: 0;
    margin-top: -210px;
  }

  .lamp-copy--lower {
    margin-top: 230px;
  }

  .home-hero.is-visible .lamp-copy--lower {
    transform: translateX(-34px);
  }

  .lamp-copy--lower .lamp-phrase {
    transform: none;
  }
}

@media (min-width: 761px) and (max-width: 1280px) {
  .hero-stage {
    min-height: 710px;
    grid-template-columns: minmax(0, 1fr) clamp(500px, 44vw, 560px) minmax(0, 1fr);
    padding-inline: 20px;
  }

  .hero-product {
    height: 690px;
  }

  .lamp-phrase strong {
    font-size: clamp(120px, 10.3vw, 132px);
  }

  .lamp-phrase em {
    font-size: clamp(38px, 3.3vw, 42px);
  }

  .lamp-copy--upper {
    left: -4px;
  }

  .home-hero.is-visible .lamp-copy--lower {
    transform: translateX(-28px);
  }

  .lamp-copy--lower .lamp-phrase {
    transform: none;
  }
}

@media (max-width: 760px) {
  .home-hero {
    min-height: auto;
    background: linear-gradient(145deg, #fff 0%, #f5fbfd 72%, #eef9fb 100%);
  }

  .home-hero::before {
    width: 52vw;
  }

  .home-hero::after {
    top: 310px;
    right: -34vw;
    width: 72vw;
    height: 72vw;
  }

  .hero-product {
    grid-column: 1;
    grid-row: 2;
    height: min(132vw, 560px);
  }

  .hero-stage {
    min-height: auto;
    grid-template-columns: 1fr;
    grid-template-rows: auto auto auto;
    gap: 18px;
    padding: 28px 14px 0;
  }

  .lamp-copy--upper {
    grid-column: 1;
    grid-row: 1;
    justify-self: start;
    align-items: flex-start;
    margin: 0 0 -72px 10px;
    transform: none;
  }

  .lamp-copy--lower,
  .home-hero.is-visible .lamp-copy--lower {
    grid-column: 1;
    grid-row: 3;
    justify-self: end;
    align-items: flex-end;
    margin: -72px 10px 0 0;
    transform: none;
  }

  .lamp-copy--lower .lamp-phrase {
    transform: none;
  }

  .lamp-phrase--top .lamp-line {
    bottom: -15px;
    width: calc(100% + 88px);
  }

  .lamp-phrase--bottom .lamp-line {
    top: -15px;
    width: calc(100% + 88px);
  }

  .back-to-top {
    width: 50px;
    height: 50px;
    bottom: calc(84px + env(safe-area-inset-bottom));
    font-size: 22px;
  }
}

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

  .lamp-copy {
    opacity: 1;
    transform: none;
    transition: none;
  }

  .lamp-line,
  .single-arrow {
    animation: none;
  }

  .comparison-panel--dual,
  .comparison-panel--single,
  .quick-table {
    opacity: 1;
    filter: none;
    transform: none;
    transition: none;
  }

  .lamp-line::before {
    animation: none;
  }

  .lamp-word strong,
  .lamp-word strong::after,
  .hero-stage::before,
  .hero-product::before,
  .hero-product::after,
  .story-accent,
  .story-accent::after {
    animation: none;
  }

  .lamp-story .dual-orb-bridge,
  .lamp-story__intro,
  .lamp-story__cards {
    opacity: 1;
    transform: none;
    transition: none;
  }

  .back-to-top {
    transition: none;
  }
}

/* September live-review v26: crisp comparison, clean hero depth and larger product. */
.comparison-panel::after,
.comparison-panel--single::after {
  display: none;
}

.comparison-panel h3 {
  text-shadow: 0 2px 8px rgba(3, 25, 55, .22);
}

.comparison-panel header small,
.comparison-panel__facts dt,
.comparison-panel__facts dd {
  text-shadow: none;
}

.hero-stage::before,
.hero-product::before {
  display: none;
}

.home-shape--one,
.home-hero::after {
  box-shadow: none;
}

.product-halo {
  width: 102%;
  height: 78%;
  border-radius: 50%;
  background: radial-gradient(ellipse at center,
      rgba(255, 255, 255, .78) 0%,
      rgba(228, 246, 251, .34) 52%,
      transparent 78%);
  box-shadow: none;
}

.lamp-word::before {
  content: none;
}

.lamp-phrase {
  column-gap: clamp(14px, 1.1vw, 20px);
}

.lamp-line {
  height: 8px;
  background:
    linear-gradient(to bottom, rgba(35, 164, 224, .96) 0%, #71d8f7 30%, #d9f8ff 51%, #8ee3fb 69%, rgba(20, 139, 207, .96) 100%),
    linear-gradient(90deg, #269fd7, #8addf7 28%, #e2faff 52%, #75d4f1 78%, #278fc9);
  box-shadow:
    0 0 2px 1px rgba(226, 249, 255, .96),
    0 0 9px 3px rgba(79, 204, 243, .7),
    0 0 26px 8px rgba(41, 166, 219, .32);
  animation: none;
}

.lamp-line::before {
  height: 112px;
  opacity: .34;
  filter: blur(19px) saturate(1.06);
  mix-blend-mode: overlay;
  animation: none;
}

.lamp-phrase--top .lamp-line {
  top: -23px;
  bottom: auto;
  left: 0;
  width: calc(100% + clamp(180px, 18vw, 340px));
}

.lamp-phrase--bottom .lamp-line {
  top: auto;
  right: 0;
  bottom: -23px;
  left: auto;
  width: calc(100% + clamp(180px, 18vw, 340px));
}

.lamp-phrase--top .lamp-line::before {
  top: 0;
  bottom: auto;
  background: linear-gradient(to bottom, rgba(115, 218, 249, .82) 0%, rgba(88, 194, 235, .38) 34%, rgba(63, 161, 211, .12) 66%, transparent 100%);
}

.lamp-phrase--bottom .lamp-line::before {
  top: auto;
  bottom: 0;
  background: linear-gradient(to top, rgba(115, 218, 249, .82) 0%, rgba(88, 194, 235, .38) 34%, rgba(63, 161, 211, .12) 66%, transparent 100%);
}

.home-hero {
  min-height: 1320px;
}

@media (min-width: 1281px) {
  .hero-stage {
    min-height: 930px;
    grid-template-columns: minmax(0, 1fr) clamp(680px, 46vw, 760px) minmax(0, 1fr);
  }

  .hero-product {
    height: 920px;
  }
}

@media (min-width: 761px) and (max-width: 1280px) {
  .hero-stage {
    min-height: 850px;
    grid-template-columns: minmax(0, 1fr) clamp(580px, 52vw, 660px) minmax(0, 1fr);
  }

  .hero-product {
    height: 840px;
  }
}

@media (max-width: 760px) {
  .home-hero {
    min-height: auto;
  }

  .hero-product {
    height: min(144vw, 630px);
  }

  .lamp-phrase {
    column-gap: 9px;
  }

  .lamp-phrase--top .lamp-line {
    top: -15px;
    bottom: auto;
    width: calc(100% + 88px);
  }

  .lamp-phrase--bottom .lamp-line {
    top: auto;
    bottom: -15px;
    width: calc(100% + 88px);
  }
}

/* Keep the oversized hero readable without reintroducing layered circles. */
.home-shape--two {
  display: none;
}

@media (min-width: 761px) {
  .lamp-copy--upper {
    left: clamp(38px, 4vw, 68px);
  }

  .lamp-copy--lower {
    right: clamp(82px, 8vw, 148px);
  }
}

@media (max-width: 760px) {
  .lamp-copy--upper,
  .lamp-copy--lower {
    right: auto;
    left: auto;
  }
}

/* Let the copy sit above the oversized product while its neon rails pass behind it. */
.lamp-copy {
  z-index: 9;
}

.home-hero.is-visible .lamp-copy {
  transform: none;
}

.lamp-word {
  isolation: auto;
}

.lamp-word strong,
.lamp-phrase em {
  position: relative;
  z-index: 8;
}

.lamp-phrase--top .lamp-line,
.lamp-phrase--bottom .lamp-line {
  width: calc(100% + 20px);
}

@media (max-width: 760px) {
  .lamp-phrase--top .lamp-line,
  .lamp-phrase--bottom .lamp-line {
    width: calc(100% + 12px);
  }
}

/* Keep the solid neon rails outside the product; only their light may feather onto it. */
.lamp-copy--upper {
  left: 0;
}

.lamp-copy--lower {
  right: 18px;
}

.lamp-phrase--top .lamp-line,
.lamp-phrase--bottom .lamp-line {
  width: 100%;
}

@media (max-width: 760px) {
  .lamp-copy--lower {
    right: auto;
  }

  .lamp-phrase--top .lamp-line,
  .lamp-phrase--bottom .lamp-line {
    width: 100%;
  }
}

.lamp-line::before {
  opacity: .5;
  filter: blur(20px) saturate(1.08) brightness(1.12);
  mix-blend-mode: screen;
}

.lamp-phrase--top .lamp-line::before {
  background: linear-gradient(to bottom,
      rgba(232, 250, 255, .98) 0%,
      rgba(127, 222, 250, .72) 24%,
      rgba(82, 193, 235, .3) 58%,
      transparent 100%);
}

.lamp-phrase--bottom .lamp-line::before {
  background: linear-gradient(to top,
      rgba(232, 250, 255, .98) 0%,
      rgba(127, 222, 250, .72) 24%,
      rgba(82, 193, 235, .3) 58%,
      transparent 100%);
}

/* Live review v42: let each fixed neon rail cast light onto the facing edge
   of "램프" without moving or resizing the rails themselves. */
.lamp-word {
  z-index: 1;
  isolation: isolate;
}

.lamp-word::before {
  content: "";
  position: absolute;
  z-index: -1;
  right: clamp(-44px, -2.5vw, -28px);
  left: clamp(-44px, -2.5vw, -28px);
  height: clamp(58px, 4.4vw, 78px);
  border-radius: 12% 12% 38% 38%;
  opacity: .96;
  filter: blur(8px) saturate(1.1);
  mix-blend-mode: normal;
  pointer-events: none;
}

.lamp-phrase--top .lamp-word::before {
  top: clamp(-48px, -2.65vw, -34px);
  bottom: auto;
  clip-path: polygon(17% 0, 83% 0, 100% 100%, 0 100%);
  background: linear-gradient(to bottom,
      rgba(196, 241, 255, .9) 0%,
      rgba(83, 207, 247, .58) 24%,
      rgba(62, 177, 229, .32) 58%,
      rgba(62, 177, 229, .08) 82%,
      transparent 100%);
}

.lamp-phrase--bottom .lamp-word::before {
  top: auto;
  bottom: clamp(-29px, -1.65vw, -18px);
  border-radius: 38% 38% 12% 12%;
  clip-path: polygon(0 0, 100% 0, 83% 100%, 17% 100%);
  background: linear-gradient(to top,
      rgba(196, 241, 255, .9) 0%,
      rgba(83, 207, 247, .58) 24%,
      rgba(62, 177, 229, .32) 58%,
      rgba(62, 177, 229, .08) 82%,
      transparent 100%);
}

.lamp-word::after {
  content: "";
  position: absolute;
  z-index: -1;
  right: clamp(-18px, -1vw, -10px);
  left: clamp(-18px, -1vw, -10px);
  height: clamp(40px, 3.2vw, 58px);
  opacity: .84;
  filter: blur(3px);
  mix-blend-mode: normal;
  pointer-events: none;
}

.lamp-phrase--top .lamp-word::after {
  top: clamp(-43px, -2.4vw, -31px);
  bottom: auto;
  clip-path: polygon(26% 0, 74% 0, 100% 100%, 0 100%);
  background:
    linear-gradient(102deg, transparent 0 28%, rgba(255, 255, 255, .62) 42%, transparent 55%),
    linear-gradient(78deg, transparent 0 48%, rgba(165, 235, 253, .48) 61%, transparent 74%),
    linear-gradient(to bottom, rgba(225, 249, 255, .84), rgba(85, 202, 242, .28) 55%, transparent);
}

.lamp-phrase--bottom .lamp-word::after {
  top: auto;
  bottom: clamp(-25px, -1.45vw, -16px);
  clip-path: polygon(0 0, 100% 0, 74% 100%, 26% 100%);
  background:
    linear-gradient(78deg, transparent 0 28%, rgba(255, 255, 255, .62) 42%, transparent 55%),
    linear-gradient(102deg, transparent 0 48%, rgba(165, 235, 253, .48) 61%, transparent 74%),
    linear-gradient(to top, rgba(225, 249, 255, .84), rgba(85, 202, 242, .28) 55%, transparent);
}

.lamp-word strong {
  color: #075da9;
  -webkit-text-fill-color: #075da9;
  -webkit-text-stroke: clamp(.8px, .08vw, 1.25px) rgba(255, 255, 255, .9);
  paint-order: stroke fill;
  background: none;
}

.home-hero .lamp-word > strong::after {
  content: none;
  animation: none;
}

.lamp-word__light {
  position: absolute;
  z-index: 2;
  inset: 0;
  display: block;
  color: rgba(220, 247, 255, .92);
  -webkit-text-fill-color: rgba(220, 247, 255, .92);
  -webkit-text-stroke: .6px rgba(255, 255, 255, .96);
  font: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  text-shadow:
    0 0 4px rgba(255, 255, 255, .92),
    0 0 11px rgba(108, 215, 248, .74);
  opacity: .88;
  mix-blend-mode: screen;
  pointer-events: none;
}

.lamp-phrase--top .lamp-word__light {
  -webkit-mask-image: linear-gradient(to bottom,
      #000 0%,
      #000 7%,
      rgba(0, 0, 0, .82) 13%,
      rgba(0, 0, 0, .32) 23%,
      transparent 34%);
  mask-image: linear-gradient(to bottom,
      #000 0%,
      #000 7%,
      rgba(0, 0, 0, .82) 13%,
      rgba(0, 0, 0, .32) 23%,
      transparent 34%);
  filter: drop-shadow(0 -5px 9px rgba(86, 206, 245, .48));
}

.lamp-phrase--bottom .lamp-word__light {
  -webkit-mask-image: linear-gradient(to top,
      #000 0%,
      #000 7%,
      rgba(0, 0, 0, .82) 13%,
      rgba(0, 0, 0, .32) 23%,
      transparent 34%);
  mask-image: linear-gradient(to top,
      #000 0%,
      #000 7%,
      rgba(0, 0, 0, .82) 13%,
      rgba(0, 0, 0, .32) 23%,
      transparent 34%);
  filter: drop-shadow(0 5px 9px rgba(86, 206, 245, .48));
}

.home-hero .lamp-phrase--top .lamp-word > strong {
  text-shadow:
    0 -2px 1px rgba(255, 255, 255, .94),
    0 -7px 14px rgba(83, 204, 244, .54),
    0 8px 18px rgba(16, 76, 122, .22);
}

.home-hero .lamp-phrase--bottom .lamp-word > strong {
  text-shadow:
    0 2px 1px rgba(255, 255, 255, .94),
    0 7px 14px rgba(83, 204, 244, .54),
    0 -8px 18px rgba(16, 76, 122, .22);
}

/* Restore clean legibility and keep the full comparison products inside the frame. */
.comparison-panel h3 {
  text-shadow: 0 3px 10px rgba(0, 22, 55, .48);
}

.comparison-panel header small,
.comparison-panel__facts dt,
.comparison-panel__facts dd {
  text-shadow: 0 2px 4px rgba(0, 22, 55, .62);
}

.comparison-panel header small,
.comparison-panel__facts dt {
  color: rgba(255, 255, 255, .84);
}

.comparison-panel--dual header small {
  color: #dff7ff;
}

.comparison-panel--single {
  transform: scale(.985);
}

.comparison-panel--dual {
  transform: scale(.93);
}

.comparison.is-revealed .comparison-panel--single,
.comparison.is-revealed .comparison-panel--dual {
  transform: scale(1);
}

.comparison-panel figure {
  bottom: 0;
  width: 108%;
  height: 100%;
}

.comparison-panel--single figure {
  left: -5%;
}

.comparison-panel--dual figure {
  right: -5%;
}

@media (max-width: 760px) {
  .comparison-panel figure {
    bottom: 0;
    width: 110%;
    height: 100%;
  }

  .comparison-panel--single figure,
  .comparison-panel--dual figure {
    right: auto;
    left: -5%;
  }
}

/* September live-review v34: rails emerge behind the product; PODAM wins the comparison motion. */
@media (min-width: 761px) {
  .lamp-phrase .lamp-line {
    display: none;
  }

  .hero-stage::before,
  .hero-stage::after {
    content: "";
    position: absolute;
    z-index: 5;
    display: block;
    inset: auto;
    height: 8px;
    border: 0;
    border-radius: 999px;
    background:
      linear-gradient(to bottom, rgba(35, 164, 224, .96) 0%, #71d8f7 30%, #e7fbff 51%, #8ee3fb 69%, rgba(20, 139, 207, .96) 100%),
      linear-gradient(90deg, #269fd7, #8addf7 28%, #eafcff 52%, #75d4f1 78%, #278fc9);
    opacity: 1;
    filter: none;
    mix-blend-mode: screen;
    transform: none;
    animation: none;
    pointer-events: none;
  }

  .hero-stage::before {
    top: 27%;
    left: 1.5vw;
    width: 52%;
    box-shadow:
      0 0 2px 1px rgba(231, 250, 255, .98),
      0 0 10px 3px rgba(91, 214, 248, .78),
      0 0 28px 9px rgba(50, 177, 226, .34),
      0 22px 42px 7px rgba(91, 211, 246, .2);
  }

  .hero-stage::after {
    top: 70%;
    right: -3vw;
    width: 52%;
    box-shadow:
      0 0 2px 1px rgba(231, 250, 255, .98),
      0 0 10px 3px rgba(91, 214, 248, .78),
      0 0 28px 9px rgba(50, 177, 226, .34),
      0 -22px 42px 7px rgba(91, 211, 246, .2);
  }
}

.comparison-panel header {
  right: auto;
  left: 50%;
  width: 56%;
  text-align: center;
  transform: translateX(-50%);
  transform-origin: center top;
  transition: transform 1s cubic-bezier(.16, 1, .3, 1), opacity .8s ease;
}

.comparison-panel--single header,
.comparison-panel--dual header {
  right: auto;
  left: 50%;
}

.comparison-panel__facts {
  width: 100%;
  margin-inline: auto;
}

.comparison-panel__facts div {
  grid-template-columns: .82fr 1.18fr;
  gap: 16px;
}

.comparison-panel--single h3 {
  font-size: clamp(36px, 3.5vw, 56px);
}

.comparison-panel--single header small {
  font-size: 11px;
}

.comparison-panel--single .comparison-panel__facts dt {
  font-size: 11px;
}

.comparison-panel--single .comparison-panel__facts dd {
  font-size: clamp(13px, 1.1vw, 18px);
}

.comparison-panel--dual h3 {
  font-size: clamp(54px, 5vw, 82px);
}

.comparison-panel--dual header small {
  font-size: 14px;
}

.comparison-panel--dual .comparison-panel__facts dt {
  font-size: 14px;
}

.comparison-panel--dual .comparison-panel__facts dd {
  font-size: clamp(18px, 1.5vw, 24px);
}

.comparison-panel h3 {
  text-shadow: 0 4px 12px rgba(0, 22, 55, .58);
}

.comparison-panel header small,
.comparison-panel__facts dt,
.comparison-panel__facts dd {
  text-shadow: 0 2px 5px rgba(0, 20, 52, .72);
}

.comparison-panel figure {
  top: 0;
  bottom: auto;
}

@media (min-width: 761px) {
  .comparison-stage {
    height: clamp(760px, 61vw, 980px);
  }

  .comparison-panel {
    top: 14px;
    bottom: 14px;
  }

  .comparison-panel--single {
    z-index: 2;
    opacity: 1;
    filter: saturate(.9) brightness(.94);
    transform: scale(1);
  }

  .comparison-panel--dual {
    z-index: 3;
    opacity: .68;
    filter: saturate(.84) brightness(.94);
    transform: scale(.93);
  }

  .comparison-panel--single header {
    transform: translateX(-50%) scale(1);
  }

  .comparison-panel--dual header {
    transform: translateX(-50%) scale(.94);
  }

  .comparison.is-revealed .comparison-panel--single {
    z-index: 2;
    opacity: 1;
    filter: none;
    transform: scale(.84);
  }

  .comparison.is-revealed .comparison-panel--dual {
    z-index: 4;
    opacity: 1;
    filter: saturate(1.08) brightness(1.02);
    transform: scale(1.03);
  }

  .comparison.is-revealed .comparison-panel--single header {
    opacity: .94;
    transform: translateX(-50%) scale(.9);
  }

  .comparison.is-revealed .comparison-panel--dual header {
    transform: translateX(-50%) scale(1.07);
  }

  .comparison.is-revealed .comparison-panel--single figure {
    opacity: .68;
    filter: saturate(.52) brightness(.76) contrast(1.05);
  }

  .comparison.is-revealed .comparison-panel--single h3 {
    color: rgba(255, 255, 255, .96);
    text-shadow: 0 3px 9px rgba(0, 14, 43, .72);
  }

  .comparison.is-revealed .comparison-panel--single header small,
  .comparison.is-revealed .comparison-panel--single .comparison-panel__facts dt,
  .comparison.is-revealed .comparison-panel--single .comparison-panel__facts dd {
    color: rgba(255, 255, 255, .9);
    text-shadow: 0 2px 5px rgba(0, 13, 41, .78);
  }
}

@media (max-width: 760px) {
  .comparison-panel header,
  .comparison-panel--single header,
  .comparison-panel--dual header {
    right: auto;
    left: 50%;
    width: calc(100% - 52px);
    transform: translateX(-50%);
  }

  .comparison-panel--single h3 {
    font-size: 30px;
  }

  .comparison-panel--dual h3 {
    font-size: 38px;
  }

  .comparison-panel--single .comparison-panel__facts dd {
    font-size: 10px;
  }

  .comparison-panel--dual .comparison-panel__facts dd {
    font-size: 12px;
  }

  .comparison.is-revealed .comparison-panel--single {
    transform: scale(.9);
  }

  .comparison.is-revealed .comparison-panel--dual {
    transform: scale(1);
  }
}

/* Live review v38: center the comparison copy in each product image. */
.comparison-panel header,
.comparison-panel--single header,
.comparison-panel--dual header {
  top: 50%;
  transform: translate(-50%, -50%);
  transform-origin: center;
}

@media (min-width: 761px) {
  .comparison-panel--single header {
    transform: translate(-50%, -50%) scale(1);
  }

  .comparison-panel--dual header {
    transform: translate(-50%, -50%) scale(.94);
  }

  .comparison.is-revealed .comparison-panel--single header {
    transform: translate(-50%, -50%) scale(.9);
  }

  .comparison.is-revealed .comparison-panel--dual header {
    transform: translate(-50%, -50%) scale(1.07);
  }
}

@media (max-width: 760px) {
  .comparison-panel header,
  .comparison-panel--single header,
  .comparison-panel--dual header {
    transform: translate(-50%, -50%);
  }
}

.lamp-story__cards article > div {
  display: flex;
  min-height: 150px;
  flex-direction: column;
  justify-content: center;
}

.lamp-story__cards p {
  color: #5d7788;
  font-size: clamp(15px, 1.25vw, 19px);
  font-weight: 650;
  letter-spacing: -.035em;
  line-height: 1.45;
}

.lamp-story__cards h3 {
  margin: 10px 0 0;
  font-size: clamp(38px, 3.5vw, 58px);
  font-weight: 850;
  letter-spacing: -.045em;
  line-height: 1;
}

@media (max-width: 760px) {
  .lamp-story__cards article > div {
    min-height: 126px;
  }

  .lamp-story__cards p {
    font-size: 14px;
  }

  .lamp-story__cards h3 {
    font-size: 34px;
  }
}

/* Live review v40: clean matched hero type, stronger comparison contrast,
   and a single left-to-right story highlight sequence. */
.hero-type--power {
  padding-bottom: .07em;
  background: linear-gradient(106deg, #061f3f 0%, #0a315d 38%, #235f86 54%, #0b3c6b 70%, #041a35 100%);
  background-clip: text;
  color: transparent;
  font-weight: 900;
  -webkit-background-clip: text;
}

.hero-type--power::after {
  content: "";
  position: absolute;
  right: .02em;
  bottom: -.02em;
  left: .02em;
  height: 5px;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, #1c5f8f 17%, #082e58 72%, transparent);
  transform: scaleX(.96);
}

.hero-facts span strong {
  color: #315f80;
  font-weight: 800;
}

.comparison-panel h3 {
  text-shadow:
    0 3px 4px rgba(0, 14, 42, .86),
    0 10px 24px rgba(0, 12, 38, .64);
}

.comparison-panel header small,
.comparison-panel__facts dt,
.comparison-panel__facts dd {
  text-shadow:
    0 2px 3px rgba(0, 12, 38, .96),
    0 6px 13px rgba(0, 10, 34, .78);
}

.story-accent--light {
  background-size: 500% 100%;
  animation: none;
}

.lamp-story.is-revealed .story-accent--light {
  animation: storySweepLead 6.2s linear infinite;
}

.story-accent--care {
  background-size: 500% 100%;
  animation: none;
}

.lamp-story.is-revealed .story-accent--care {
  animation: storySweepFollow 6.2s linear infinite;
}

.story-accent--light::after,
.story-accent--care::after,
.story-join {
  animation: none;
}

.lamp-story.is-revealed .story-accent--light::after {
  animation: storyLineLead 6.2s linear infinite;
}

.lamp-story.is-revealed .story-accent--care::after {
  animation: storyLineFollow 6.2s linear infinite;
}

.lamp-story.is-revealed .story-join {
  animation: storyJoinPass 6.2s linear infinite;
}

@keyframes storySweepLead {
  0% { background-position: 100% 0; }
  28% { background-position: 0 0; }
  29%, 100% { background-position: 0 0; }
}

@keyframes storySweepFollow {
  0%, 39% { background-position: 100% 0; }
  70% { background-position: 0 0; }
  71%, 100% { background-position: 0 0; }
}

@keyframes storyJoinPass {
  0%, 27%, 43%, 100% {
    color: var(--navy-deep);
    text-shadow: none;
  }
  35% {
    color: #2e79a6;
    text-shadow: 0 0 12px rgba(102, 207, 239, .24);
  }
}

@keyframes storyLineLead {
  0%, 4% { opacity: .35; transform: scaleX(.12); transform-origin: left; }
  28% { opacity: 1; transform: scaleX(1); transform-origin: left; }
  38%, 100% { opacity: .42; transform: scaleX(1); transform-origin: left; }
}

@keyframes storyLineFollow {
  0%, 40% { opacity: .28; transform: scaleX(.12); transform-origin: left; }
  70% { opacity: 1; transform: scaleX(1); transform-origin: left; }
  82%, 100% { opacity: .42; transform: scaleX(1); transform-origin: left; }
}

@media (max-width: 760px) {
  .hero-type--power::after {
    height: 4px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .lamp-story.is-revealed .story-accent--light,
  .lamp-story.is-revealed .story-accent--care,
  .lamp-story.is-revealed .story-accent--light::after,
  .lamp-story.is-revealed .story-accent--care::after,
  .lamp-story.is-revealed .story-join,
  .story-accent--light,
  .story-accent--care,
  .story-accent--light::after,
  .story-accent--care::after,
  .story-join {
    animation: none;
  }
}

/* Live review v47: compact text-length rails with a breathing glow cast. */
@media (min-width: 761px) {
  .hero-stage::before,
  .hero-stage::after {
    content: none;
    display: none;
  }

  .lamp-phrase .lamp-line {
    display: block;
  }

  .hero-product {
    height: 1010px;
  }

  .hero-stage {
    min-height: 1020px;
  }

  .lamp-phrase strong {
    font-size: clamp(148px, 10.4vw, 196px);
  }

  .lamp-copy--upper,
  .home-hero.is-visible .lamp-copy--upper {
    transform: translateX(clamp(60px, 4vw, 72px));
  }

  .lamp-copy--lower,
  .home-hero.is-visible .lamp-copy--lower {
    transform: translateX(clamp(-56px, -3vw, -42px));
  }
}

@media (min-width: 761px) and (max-width: 1280px) {
  .hero-product {
    height: 920px;
  }

  .hero-stage {
    min-height: 930px;
  }

  .lamp-phrase strong {
    font-size: clamp(128px, 11.2vw, 146px);
  }
}

.lamp-phrase .lamp-line {
  z-index: 1;
  right: auto;
  left: 0;
  width: 100%;
  height: 20px;
  overflow: visible;
  opacity: .94;
  background:
    linear-gradient(to bottom, rgba(33, 155, 217, .98), #74dbf8 31%, #eefcff 50%, #7eddf8 69%, rgba(20, 139, 207, .98));
  box-shadow:
    0 0 2px 1px rgba(231, 251, 255, .96),
    0 0 9px 3px rgba(79, 204, 243, .7),
    0 0 22px 7px rgba(41, 166, 219, .3);
  filter: brightness(1);
  animation: lampWholeRailPulse 4.8s ease-in-out infinite;
}

.lamp-phrase .lamp-line::after {
  content: none;
  animation: none;
}

.lamp-phrase--top .lamp-line {
  top: -30px;
  bottom: auto;
}

.lamp-phrase--bottom .lamp-line {
  top: auto;
  bottom: -30px;
}

.lamp-line::before {
  right: -2%;
  left: -2%;
  height: clamp(58px, 4.4vw, 76px);
  opacity: .2;
  filter: blur(15px) saturate(1.12);
  mix-blend-mode: normal;
  animation: lampWholeCastPulse 4.8s ease-in-out infinite;
}

.lamp-phrase--top .lamp-line::before {
  top: 0;
  bottom: auto;
  background: linear-gradient(to bottom,
      rgba(132, 224, 251, .66) 0%,
      rgba(105, 210, 244, .34) 34%,
      rgba(81, 178, 224, .13) 68%,
      transparent 100%);
  transform-origin: center top;
}

.lamp-phrase--bottom .lamp-line::before {
  top: auto;
  bottom: 0;
  background: linear-gradient(to top,
      rgba(132, 224, 251, .66) 0%,
      rgba(105, 210, 244, .34) 34%,
      rgba(81, 178, 224, .13) 68%,
      transparent 100%);
  transform-origin: center bottom;
}

.lamp-word::before,
.lamp-word::after {
  content: none;
}

.lamp-word__light {
  display: none;
}

.lamp-copy--lower .lamp-line,
.lamp-copy--lower .lamp-line::before {
  animation-delay: -2.4s;
}

.lamp-phrase--top {
  --lamp-edge-y: -2px;
  --lamp-glow-y: -7px;
  --lamp-depth-y: 8px;
}

.lamp-phrase--bottom {
  --lamp-edge-y: 2px;
  --lamp-glow-y: 7px;
  --lamp-depth-y: -8px;
}

.home-hero .lamp-phrase .lamp-word > strong {
  animation: lampWholeGlyphPulse 4.8s ease-in-out infinite;
}

.home-hero .lamp-phrase--bottom .lamp-word > strong {
  animation-delay: -2.4s;
}

@keyframes lampWholeRailPulse {
  0%, 45%, 100% {
    opacity: .82;
    filter: brightness(.96) saturate(.98);
    box-shadow:
      0 0 2px 1px rgba(231, 251, 255, .9),
      0 0 7px 2px rgba(79, 204, 243, .58),
      0 0 18px 5px rgba(41, 166, 219, .24);
  }
  9%, 32% {
    opacity: 1;
    filter: brightness(1.3) saturate(1.12);
    box-shadow:
      0 0 3px 1px rgba(245, 254, 255, 1),
      0 0 14px 5px rgba(101, 221, 252, .94),
      0 0 38px 13px rgba(50, 183, 231, .46);
  }
}

@keyframes lampWholeCastPulse {
  0%, 45%, 100% {
    opacity: .14;
    transform: scaleY(.3);
  }
  9%, 32% {
    opacity: .72;
    transform: scaleY(1);
  }
}

@keyframes lampWholeGlyphPulse {
  0%, 45%, 100% {
    text-shadow:
      0 var(--lamp-edge-y) 1px rgba(255, 255, 255, .82),
      0 var(--lamp-glow-y) 10px rgba(72, 189, 233, .26),
      0 var(--lamp-depth-y) 18px rgba(16, 76, 122, .18);
  }
  9%, 32% {
    text-shadow:
      0 var(--lamp-edge-y) 1px rgba(255, 255, 255, .96),
      0 var(--lamp-glow-y) 17px rgba(72, 198, 239, .66),
      0 var(--lamp-depth-y) 24px rgba(16, 76, 122, .24);
  }
}

@media (max-width: 760px) {
  .hero-product {
    width: min(calc(100% + 28px), 430px);
    height: auto;
    min-width: 0;
    aspect-ratio: 1123 / 1401;
    justify-self: center;
  }

  .hero-product img {
    width: 100%;
    height: auto;
    max-width: 100%;
    object-fit: contain;
  }

  .lamp-copy--upper {
    margin-left: 24px;
  }

  .lamp-copy--lower,
  .home-hero.is-visible .lamp-copy--lower {
    margin-right: 24px;
  }

  .lamp-phrase .lamp-line {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .lamp-phrase .lamp-line,
  .lamp-line::before,
  .lamp-line::after,
  .home-hero .lamp-phrase .lamp-word > strong {
    animation: none;
  }

  .lamp-phrase .lamp-line {
    opacity: 1;
    filter: none;
  }

  .lamp-line::before {
    opacity: .42;
    transform: none;
  }

  .lamp-line::after {
    opacity: 0;
  }
}

/* Live review v54: centered PODAM divider, customer support, and full footer. */
.hero-inline-brand {
  position: relative;
  z-index: 5;
  width: min(1120px, 90vw);
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: clamp(20px, 2.4vw, 38px);
  margin: clamp(30px, 3vw, 46px) auto 0;
}

.hero-inline-brand > span {
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(59, 121, 159, .28));
}

.hero-inline-brand > span:last-child {
  background: linear-gradient(90deg, rgba(59, 121, 159, .28), transparent);
}

.hero-inline-brand img {
  width: clamp(112px, 9vw, 152px);
  height: auto;
  opacity: .78;
}

.home-hero .hero-facts {
  margin-top: 22px;
  border-top: 0;
}

.customer-support {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: clamp(104px, 9vw, 154px) max(24px, 7vw) clamp(98px, 8vw, 138px);
  background:
    radial-gradient(circle at 14% 16%, rgba(104, 205, 239, .16), transparent 28%),
    radial-gradient(circle at 88% 82%, rgba(183, 226, 209, .25), transparent 30%),
    linear-gradient(155deg, #f9fbfa 0%, #edf7f8 48%, #e8f3ed 100%);
}

.customer-support::before,
.customer-support::after {
  content: "";
  position: absolute;
  z-index: -1;
  border: 1px solid rgba(75, 179, 222, .15);
  border-radius: 50%;
  pointer-events: none;
}

.customer-support::before {
  top: -260px;
  left: -180px;
  width: 520px;
  height: 520px;
}

.customer-support::after {
  right: -190px;
  bottom: -300px;
  width: 610px;
  height: 610px;
}

.customer-support__inner {
  width: min(1180px, 100%);
  margin: 0 auto;
}

.customer-support__heading {
  text-align: center;
}

.customer-support__heading > span {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  margin-bottom: 18px;
  color: var(--blue);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .12em;
}

.customer-support__heading > span::before,
.customer-support__heading > span::after {
  content: "";
  width: 25px;
  height: 1px;
  background: rgba(23, 105, 176, .45);
}

.customer-support__heading h1,
.customer-support__heading h2 {
  margin: 0;
  color: var(--navy-deep);
  font-size: clamp(54px, 5.4vw, 82px);
  line-height: 1;
  letter-spacing: -.075em;
}

.site-header nav a[aria-current="page"] {
  color: var(--blue);
}

.site-header nav a[aria-current="page"]::after {
  width: 100%;
}

.support-page .customer-support {
  min-height: calc(100vh - 278px);
  padding-top: clamp(150px, 11vw, 180px);
}

.customer-support__heading p {
  margin: 28px auto 0;
  color: #526f7e;
  font-family: var(--body);
  font-size: clamp(14px, 1.15vw, 17px);
  line-height: 1.85;
}

.support-cards {
  width: min(860px, 100%);
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin: 54px auto 0;
}

.support-card {
  position: relative;
  min-height: 228px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  overflow: hidden;
  padding: 38px 28px;
  border: 1px solid rgba(144, 191, 207, .55);
  border-radius: 28px;
  background: rgba(255, 255, 255, .84);
  color: var(--navy-deep);
  text-align: center;
  text-decoration: none;
  box-shadow: 0 24px 58px rgba(37, 89, 108, .1), inset 0 1px 0 rgba(255, 255, 255, .96);
  backdrop-filter: blur(12px);
  transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}

.support-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  width: 82px;
  height: 4px;
  border-radius: 0 0 999px 999px;
  background: linear-gradient(90deg, #1769b0, #65cef0);
  box-shadow: 0 0 18px rgba(67, 188, 235, .48);
  transform: translateX(-50%);
}

.support-card:hover,
.support-card:focus-visible {
  border-color: rgba(69, 170, 211, .72);
  box-shadow: 0 30px 68px rgba(34, 94, 118, .15), 0 0 34px rgba(101, 206, 240, .12);
  transform: translateY(-4px);
}

.support-card > span {
  color: #597380;
  font-family: var(--body);
  font-size: 13px;
  font-weight: 700;
}

.support-card strong {
  margin-top: 18px;
  color: var(--navy-deep);
  font-size: clamp(25px, 2vw, 33px);
  letter-spacing: -.035em;
  white-space: nowrap;
}

.support-card small {
  margin-top: 18px;
  color: #6c828d;
  font-family: var(--body);
  font-size: 13px;
}

.customer-support__note {
  margin: 31px auto 0;
  color: #71858e;
  font-family: var(--body);
  font-size: 11px;
  line-height: 1.65;
  text-align: center;
}

.site-footer {
  height: auto;
  min-height: 278px;
  display: grid;
  grid-template-columns: minmax(210px, .85fr) minmax(470px, 1.15fr);
  align-items: start;
  justify-content: initial;
  gap: clamp(58px, 10vw, 170px);
  padding: 62px max(28px, 8vw) 68px;
  border-top: 1px solid rgba(112, 151, 166, .18);
  background: #fffdf9;
  color: #6f838d;
  font-size: 13px;
  letter-spacing: 0;
}

.site-footer__brand img {
  width: clamp(118px, 10vw, 154px);
  height: auto;
}

.site-footer__brand p {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 28px 0 0;
  color: #526b77;
  font-family: var(--body);
  font-size: 12px;
  letter-spacing: -.01em;
}

.site-footer__brand p strong {
  color: var(--navy-deep);
  font-family: var(--sans);
  font-size: 12px;
}

.site-footer__brand p span {
  display: inline;
}

.site-footer__info {
  display: grid;
  gap: 0;
  margin: 0;
}

.site-footer__info > div {
  min-height: 43px;
  display: grid;
  grid-template-columns: 112px 1fr;
  align-items: center;
  border-bottom: 1px solid rgba(121, 154, 167, .15);
}

.site-footer__info > div:last-child {
  border-bottom: 0;
}

.site-footer__info dt,
.site-footer__info dd {
  margin: 0;
}

.site-footer__info dt {
  color: #7b8f98;
  font-family: var(--body);
  font-size: 12px;
}

.site-footer__info dd {
  color: var(--navy-deep);
  font-family: var(--body);
  font-size: 14px;
  font-weight: 700;
}

.site-footer__info a {
  color: var(--navy-deep);
  text-decoration-color: rgba(10, 49, 91, .45);
  text-underline-offset: 4px;
}

@media (max-width: 760px) {
  .hero-inline-brand {
    width: calc(100% - 28px);
    gap: 14px;
    margin-top: 24px;
  }

  .hero-inline-brand img {
    width: 96px;
  }

  .home-hero .hero-facts {
    margin-top: 15px;
  }

  .customer-support {
    padding: 82px 18px 88px;
  }

  .customer-support__heading > span {
    font-size: 10px;
  }

  .customer-support__heading h1,
  .customer-support__heading h2 {
    font-size: 48px;
  }

  .support-page .customer-support {
    min-height: 0;
    padding-top: 112px;
  }

  .customer-support__heading p {
    margin-top: 22px;
    font-size: 13px;
  }

  .customer-support__heading p br {
    display: none;
  }

  .support-cards {
    grid-template-columns: 1fr;
    gap: 12px;
    margin-top: 38px;
  }

  .support-card {
    min-height: 174px;
    border-radius: 22px;
    padding: 29px 20px;
  }

  .support-card strong {
    font-size: 27px;
  }

  .customer-support__note {
    margin-top: 24px;
    font-size: 10px;
    text-align: left;
  }

  .site-footer {
    min-height: 0;
    grid-template-columns: 1fr;
    gap: 34px;
    padding: 42px 20px 96px;
  }

  .site-footer__brand img {
    width: 118px;
  }

  .site-footer__brand p {
    margin-top: 22px;
  }

  .site-footer__brand p span {
    display: inline;
  }

  .site-footer__info > div {
    grid-template-columns: 84px 1fr;
  }

  .site-footer__info dd {
    font-size: 13px;
  }
}

/* Live review v56: keep the lamp copy clear of the product, let the rails pass
   behind its frame, and bridge the question into the performance comparison. */
.hero-stage {
  isolation: isolate;
}

.hero-product {
  z-index: 20;
  isolation: isolate;
}

.lamp-copy {
  z-index: 10;
}

.lamp-phrase--top .lamp-line {
  right: auto;
  left: 0;
  width: calc(100% + clamp(118px, 9vw, 156px));
}

.lamp-phrase--bottom .lamp-line {
  right: 0;
  left: auto;
  width: calc(100% + clamp(118px, 9vw, 156px));
}

@media (min-width: 1281px) {
  .hero-stage {
    min-height: clamp(930px, 70vw, 990px);
  }

  .hero-product {
    height: clamp(920px, 69vw, 980px);
  }

  .lamp-copy {
    width: max-content;
  }

  .lamp-copy--upper,
  .home-hero.is-visible .lamp-copy--upper {
    right: auto;
    left: auto;
    justify-self: end;
    align-items: flex-end;
    transform: translateX(clamp(-42px, -2.5vw, -28px));
  }

  .lamp-copy--lower,
  .home-hero.is-visible .lamp-copy--lower {
    right: auto;
    left: auto;
    justify-self: start;
    align-items: flex-start;
    transform: translateX(clamp(28px, 2.5vw, 42px));
  }

  .lamp-phrase strong {
    font-size: clamp(112px, 8vw, 158px);
  }

  .lamp-phrase em {
    font-size: clamp(34px, 2.7vw, 52px);
  }

  .lamp-copy--lower .lamp-phrase {
    transform: scaleX(.82);
    transform-origin: left center;
  }
}

@media (min-width: 761px) and (max-width: 1280px) {
  .hero-stage {
    min-height: clamp(690px, 67vw, 860px);
    grid-template-columns: minmax(0, 1fr) clamp(520px, 49vw, 620px) minmax(0, 1fr);
    padding-inline: 0;
  }

  .hero-product {
    height: clamp(680px, 66vw, 850px);
  }

  .lamp-copy {
    width: max-content;
  }

  .lamp-copy--upper,
  .home-hero.is-visible .lamp-copy--upper {
    right: auto;
    left: auto;
    justify-self: end;
    align-items: flex-end;
    transform: translateX(clamp(-26px, -1.5vw, -12px));
  }

  .lamp-copy--lower,
  .home-hero.is-visible .lamp-copy--lower {
    right: auto;
    left: auto;
    justify-self: start;
    align-items: flex-start;
    transform: translateX(clamp(12px, 1.5vw, 26px));
  }

  .lamp-phrase {
    column-gap: clamp(8px, 1vw, 13px);
  }

  .lamp-phrase strong {
    font-size: clamp(68px, 8.2vw, 105px);
  }

  .lamp-phrase em {
    font-size: clamp(24px, 2.8vw, 36px);
  }

  .lamp-copy--lower .lamp-phrase {
    transform: scaleX(.82);
    transform-origin: left center;
  }
}

@media (max-width: 760px) {
  .lamp-copy--upper,
  .home-hero.is-visible .lamp-copy--upper {
    margin: 0 0 18px 10px;
  }

  .lamp-copy--lower,
  .home-hero.is-visible .lamp-copy--lower {
    margin: 18px 10px 0 0;
  }

  .lamp-phrase--top .lamp-line,
  .lamp-phrase--bottom .lamp-line {
    width: calc(100% + 34px);
  }
}

.comparison .section-heading {
  margin-bottom: 0;
}

.comparison-impact-title {
  position: relative;
  z-index: 3;
  display: grid;
  place-items: center;
  padding: clamp(62px, 7vw, 108px) 24px clamp(34px, 3.4vw, 54px);
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 8%, rgba(104, 211, 241, .13), transparent 42%),
    #f4f8f6;
  text-align: center;
}

.comparison-impact-title::after {
  content: "";
  position: absolute;
  bottom: 18px;
  left: 50%;
  width: min(420px, 42vw);
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(38, 151, 204, .48), transparent);
  transform: translateX(-50%);
}

.comparison-impact-title p {
  margin: 0;
  color: #082e58;
  font-size: clamp(50px, 6.15vw, 102px);
  font-weight: 900;
  letter-spacing: -.068em;
  line-height: 1;
  text-wrap: balance;
}

.comparison-impact-title strong {
  background: linear-gradient(102deg, #0875c2 4%, #26a9dd 54%, #07569f 100%);
  background-clip: text;
  color: transparent;
  font-weight: 900;
  -webkit-background-clip: text;
}

@media (max-width: 760px) {
  .comparison-impact-title {
    padding: 48px 18px 32px;
  }

  .comparison-impact-title::after {
    bottom: 15px;
    width: 58vw;
  }

  .comparison-impact-title p {
    font-size: clamp(36px, 10.8vw, 54px);
    line-height: 1.08;
  }

  .comparison-impact-title span,
  .comparison-impact-title strong {
    display: block;
  }
}

@media (min-width: 761px) and (max-width: 920px) {
  .lamp-copy--upper,
  .home-hero.is-visible .lamp-copy--upper,
  .lamp-copy--lower,
  .home-hero.is-visible .lamp-copy--lower {
    transform: none;
  }
}

/* v59 — shorter page rhythm, source video, and a human question visual. */
.home-hero {
  min-height: 0;
  padding: 92px 0 42px;
}

.hero-message {
  margin-top: 24px;
}

.hero-inline-brand {
  margin-top: 26px;
}

.home-hero .hero-facts {
  margin-top: 16px;
}

.home-video {
  position: relative;
  z-index: 1;
  padding: clamp(22px, 2.5vw, 36px) max(20px, 5vw) clamp(42px, 4.5vw, 62px);
  background: linear-gradient(180deg, #fff 0%, #f6fbfc 65%, #f4f9f8 100%);
}

.home-video__inner {
  width: min(960px, 100%);
  display: grid;
  justify-items: center;
  gap: clamp(24px, 3vw, 38px);
  margin: auto;
}

.home-video__cta {
  min-height: 70px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: clamp(28px, 5vw, 76px);
  padding: 15px 16px 15px clamp(24px, 3vw, 42px);
  border: 1px solid #bedfed;
  border-radius: 999px;
  background: linear-gradient(110deg, #0d4788, #0969b0);
  color: #fff;
  font-size: clamp(20px, 2vw, 28px);
  font-weight: 800;
  letter-spacing: -.045em;
  text-decoration: none;
  box-shadow: 0 15px 34px rgba(5, 71, 133, .17), inset 0 1px 0 rgba(255, 255, 255, .25);
  transition: transform .22s ease, box-shadow .22s ease;
}

.home-video__cta:hover,
.home-video__cta:focus-visible {
  transform: translateY(-3px);
  box-shadow: 0 20px 40px rgba(5, 71, 133, .24), inset 0 1px 0 rgba(255, 255, 255, .28);
}

.home-video__arrow {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #fff;
  color: #0b62a8;
  font-family: Arial, sans-serif;
  font-size: 30px;
  font-weight: 400;
  line-height: 1;
}

.home-video__frame {
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border: 1px solid #d5e6eb;
  border-radius: clamp(18px, 2.3vw, 30px);
  background: #eef4f6;
  box-shadow: 0 22px 58px rgba(33, 74, 96, .12);
}

.home-video__frame video {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.comparison .section-heading {
  min-height: clamp(520px, 43vw, 620px);
  margin-bottom: 0;
  padding: clamp(84px, 8vw, 120px) max(28px, 5vw);
  background-image:
    linear-gradient(180deg, rgba(0, 7, 15, .59) 0%, rgba(0, 10, 20, .55) 48%, rgba(0, 7, 15, .75) 100%),
    url("./assets/question-mother-bottle-bw-v1.png");
  background-position: center, center 40%;
}

.comparison .section-heading::before {
  background:
    linear-gradient(90deg, rgba(0, 7, 16, .14), transparent 76%),
    repeating-linear-gradient(180deg, rgba(0, 0, 0, .055) 0 1px, transparent 1px 8px);
}

.question-mobile-break {
  display: none;
}

.comparison-impact-title {
  padding: clamp(46px, 5vw, 70px) 24px clamp(32px, 3vw, 42px);
}

.lamp-story {
  padding-bottom: 90px;
}

.lamp-story .dual-orb-bridge {
  --orb-size: clamp(230px, 23vw, 310px);
}

.lamp-story__intro {
  margin: 44px auto 52px;
}

.lamp-story__cards figure {
  height: 320px;
}

@media (min-width: 1281px) {
  .hero-stage {
    min-height: 790px;
    grid-template-columns: minmax(0, 1fr) clamp(560px, 43vw, 650px) minmax(0, 1fr);
  }

  .hero-product {
    height: 780px;
  }

  .lamp-phrase strong {
    font-size: clamp(100px, 7.6vw, 132px);
  }

  .lamp-copy--upper,
  .home-hero.is-visible .lamp-copy--upper {
    margin-top: -125px;
  }

  .lamp-copy--lower,
  .home-hero.is-visible .lamp-copy--lower {
    margin-top: 145px;
  }
}

@media (min-width: 761px) and (max-width: 1280px) {
  .hero-stage {
    min-height: clamp(590px, 63vw, 760px);
    grid-template-columns: minmax(0, 1fr) clamp(470px, 46vw, 590px) minmax(0, 1fr);
  }

  .hero-product {
    height: clamp(580px, 62vw, 750px);
  }

  .lamp-phrase strong {
    font-size: clamp(66px, 7.8vw, 100px);
  }

  .lamp-copy--upper,
  .home-hero.is-visible .lamp-copy--upper {
    margin-top: -105px;
  }

  .lamp-copy--lower,
  .home-hero.is-visible .lamp-copy--lower {
    margin-top: 120px;
  }
}

@media (min-width: 761px) {
  .comparison-stage {
    height: clamp(650px, 50vw, 760px);
  }
}

@media (min-width: 761px) and (max-width: 920px) {
  .lamp-phrase strong {
    font-size: clamp(54px, 7vw, 67px);
  }

  .lamp-phrase em {
    font-size: clamp(18px, 2.5vw, 24px);
  }

  .lamp-copy--upper,
  .home-hero.is-visible .lamp-copy--upper {
    transform: translateX(12px);
  }

  .lamp-copy--lower,
  .home-hero.is-visible .lamp-copy--lower {
    transform: translateX(-22px);
  }

  .lamp-story__intro h2 {
    font-size: clamp(40px, 5.6vw, 51px);
  }

  .site-footer {
    grid-template-columns: 1fr;
    gap: 28px;
    padding: 48px 7vw;
  }
}

@media (max-width: 760px) {
  .home-hero {
    padding: 78px 0 28px;
  }

  .hero-stage {
    gap: 9px;
    padding-top: 12px;
  }

  .hero-product {
    height: min(120vw, 500px);
  }

  .hero-message {
    margin-top: 18px;
  }

  .hero-inline-brand {
    margin-top: 17px;
  }

  .home-hero .hero-facts {
    margin-top: 12px;
  }

  .home-hero .hero-facts article {
    padding-inline: 3px;
  }

  .home-hero .hero-facts b {
    font-size: clamp(16px, 4.7vw, 20px);
    word-break: keep-all;
  }

  .home-hero .hero-facts span {
    word-break: keep-all;
  }

  .home-video {
    padding: 22px 15px 46px;
  }

  .home-video__inner {
    gap: 20px;
  }

  .home-video__cta {
    min-height: 58px;
    gap: 26px;
    padding: 8px 9px 8px 22px;
    font-size: 19px;
  }

  .home-video__arrow {
    width: 40px;
    height: 40px;
    font-size: 26px;
  }

  .comparison .section-heading {
    min-height: 430px;
    padding: 74px 18px;
    background-position: center, right center;
  }

  .comparison .section-heading h2 {
    font-size: clamp(39px, 10.8vw, 47px);
  }

  .question-mobile-break {
    display: initial;
  }

  .comparison-impact-title {
    padding: 37px 18px 29px;
  }

  .comparison-stage {
    height: 760px;
  }

  .lamp-story {
    padding: 12px 12px 76px;
  }

  .lamp-story .dual-orb-bridge {
    --orb-size: min(40vw, 162px);
  }

  .lamp-story__intro {
    margin: 34px auto 38px;
  }

  .lamp-story__cards figure {
    height: 250px;
  }
}

/* v62: keep the lamp lettering and rail at their natural proportions. */
.home-hero {
  isolation: isolate;
}

.home-shape--one,
.home-hero::after {
  z-index: 0;
}

@media (min-width: 761px) {
  .lamp-copy--lower .lamp-phrase {
    transform: none;
  }
}

.site-header .store-link {
  padding: 10px 17px;
  border: 1px solid #b8d9e9;
  border-radius: 999px;
  background: #f5fbfe;
  box-shadow: 0 5px 16px rgba(61, 109, 132, .1);
  color: #0d67ad;
  transition: background .25s ease, box-shadow .25s ease, transform .25s ease;
}

.site-header .store-link::after {
  display: none;
}

.site-header .store-link:hover,
.site-header .store-link:focus-visible {
  background: #e9f6fc;
  box-shadow: 0 8px 22px rgba(61, 109, 132, .18);
  transform: translateY(-2px);
}

/* v64: a two-row mobile header and a balanced, compact mobile hero. */
@media (max-width: 760px) {
  .site-header {
    height: 108px;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-rows: 54px 46px;
    column-gap: 8px;
    padding: 0 14px 8px;
  }

  .site-header .brand-link {
    grid-column: 1;
    grid-row: 1;
    align-self: center;
    justify-self: start;
  }

  .site-header .brand {
    width: 96px;
    height: 28px;
  }

  .site-header .store-link {
    grid-column: 2;
    grid-row: 1;
    align-self: center;
    justify-self: end;
    gap: 5px;
    padding: 7px 11px;
    font-size: 10px;
  }

  .site-header nav {
    position: static;
    z-index: auto;
    grid-column: 1 / -1;
    grid-row: 2;
    width: 100%;
    height: 40px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    padding: 0;
    border-radius: 999px;
    box-shadow: none;
    backdrop-filter: none;
  }

  .site-header nav a {
    min-width: 0;
    min-height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 4px;
    font-size: 11px;
    line-height: 1;
    text-align: center;
  }

  .site-header nav a + a::before {
    height: 16px;
  }

  .home-hero {
    padding-top: 122px;
  }

  .lamp-phrase--top .lamp-line {
    width: calc(100% + 98px);
  }

  .lamp-phrase--bottom .lamp-line {
    width: calc(100% + 34px);
  }

  .hero-message h1 {
    gap: 6px;
    font-size: clamp(34px, 9.2vw, 40px);
  }

  .hero-kicker {
    font-size: clamp(11px, 3vw, 13px) !important;
  }

  .home-hero .hero-facts b {
    font-size: clamp(15px, 4.3vw, 18px);
  }

  .home-hero .hero-facts span {
    font-size: clamp(8px, 2.4vw, 10px);
  }

  .comparison .section-heading h2 .question-middle {
    display: inline-block;
    white-space: nowrap;
  }
}

/* v66: preserve the desktop composition on small screens and keep the
   comparison split stationary while the product images change scale. */
:root {
  --comparison-surface: #f4f8f6;
}

.comparison-stage::after {
  display: block;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: auto;
  height: auto;
  background: linear-gradient(to bottom,
    var(--comparison-surface) 0%,
    transparent 15%,
    transparent 85%,
    var(--comparison-surface) 100%);
  filter: none;
  opacity: 1;
  transform: none;
}

.comparison-panel::after {
  display: none;
}

.comparison-panel--single,
.comparison-panel--dual,
.comparison.is-revealed .comparison-panel--single,
.comparison.is-revealed .comparison-panel--dual {
  transform: none;
}

.comparison-panel {
  transition: clip-path 1.15s cubic-bezier(.16, 1, .3, 1),
    filter .9s ease, opacity .9s ease;
}

.comparison-panel figure {
  transform-origin: center center;
}

.comparison-panel--single figure {
  transform: translateX(-2%) scale(.82);
}

.comparison.is-revealed .comparison-panel--single figure {
  transform: translateX(-17%) scale(.56);
}

.comparison-panel--dual figure {
  transform: scale(.86);
}

.comparison.is-revealed .comparison-panel--dual figure {
  transform: translateX(-5%) scale(1.12);
}

@media (min-width: 761px) {
  .comparison-panel--single {
    clip-path: polygon(0 0, 79.365% 0, 79.365% 100%, 0 100%);
  }

  .comparison-panel--dual {
    clip-path: polygon(20.635% 0, 100% 0, 100% 100%, 20.635% 100%);
  }

  .comparison.is-revealed .comparison-panel--single {
    clip-path: polygon(0 0, 63.492% 0, 63.492% 100%, 0 100%);
  }

  .comparison.is-revealed .comparison-panel--dual {
    clip-path: polygon(4.762% 0, 100% 0, 100% 100%, 4.762% 100%);
  }

  .comparison.is-revealed .comparison-panel--single header {
    left: 34%;
    transform: translate(-50%, -50%) scale(.78);
  }
}

@media (max-width: 760px) {
  .site-header {
    height: 62px;
    grid-template-columns: auto minmax(0, 1fr) auto;
    grid-template-rows: 1fr;
    gap: clamp(5px, 1.7vw, 10px);
    padding: 0 clamp(8px, 2.7vw, 13px);
  }

  .site-header .brand-link {
    grid-column: 1;
    grid-row: 1;
  }

  .site-header .brand {
    width: clamp(59px, 17.5vw, 72px);
    height: auto;
  }

  .site-header nav {
    grid-column: 2;
    grid-row: 1;
    height: 34px;
    align-self: center;
    border: 0;
    border-radius: 0;
    background: none;
    backdrop-filter: none;
  }

  .site-header nav a {
    min-height: 34px;
    padding: 0 2px;
    font-size: clamp(8px, 2.45vw, 10px);
    white-space: nowrap;
  }

  .site-header nav a::after {
    bottom: 0;
  }

  .site-header nav a + a::before {
    height: 13px;
  }

  .site-header .store-link {
    grid-column: 3;
    grid-row: 1;
    gap: 3px;
    min-height: 31px;
    padding: 5px clamp(7px, 2vw, 10px);
    border-color: rgba(255, 255, 255, .36);
    background: linear-gradient(110deg, #0d4788, #0969b0);
    box-shadow: 0 5px 13px rgba(5, 71, 133, .16);
    color: #fff;
    font-size: clamp(8px, 2.35vw, 10px);
    white-space: nowrap;
  }

  .site-header .store-link span {
    font-size: 12px;
  }

  .home-hero {
    padding: 74px 0 24px;
  }

  .hero-stage {
    width: 100%;
    min-height: clamp(270px, 82vw, 330px);
    display: block;
    padding: 0;
  }

  .hero-product {
    position: absolute;
    top: 50%;
    left: 50%;
    width: clamp(116px, 36vw, 180px);
    height: auto;
    min-width: 0;
    aspect-ratio: 1123 / 1401;
    margin: 0;
    transform: translate(-50%, -50%);
  }

  .hero-product img {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .lamp-copy--upper,
  .home-hero.is-visible .lamp-copy--upper {
    position: absolute;
    top: 27%;
    right: auto;
    bottom: auto;
    left: clamp(7px, 2.7vw, 13px);
    width: max-content;
    margin: 0;
    align-items: flex-start;
    transform: none;
  }

  .lamp-copy--lower,
  .home-hero.is-visible .lamp-copy--lower {
    position: absolute;
    top: auto;
    right: clamp(7px, 2.7vw, 13px);
    bottom: 22%;
    left: auto;
    width: max-content;
    margin: 0;
    align-items: flex-end;
    transform: none;
  }

  .lamp-phrase {
    column-gap: 4px;
  }

  .lamp-phrase strong {
    font-size: clamp(27px, 8.5vw, 34px);
    line-height: 1;
  }

  .lamp-phrase em {
    font-size: clamp(11px, 3.1vw, 13px);
  }

  .lamp-phrase--top .lamp-line {
    width: calc(100% + clamp(77px, 24vw, 112px));
  }

  .lamp-phrase--bottom .lamp-line {
    width: calc(100% + clamp(77px, 24vw, 112px));
  }

  .hero-message,
  .home-hero .hero-facts {
    text-align: center;
  }

  .hero-message h1 {
    font-size: clamp(29px, 8.3vw, 35px);
  }

  .home-hero .hero-facts b {
    font-size: clamp(13px, 3.9vw, 16px);
  }

  .comparison-panel--single {
    clip-path: inset(0 0 15.254% 0);
  }

  .comparison-panel--dual {
    clip-path: inset(15.254% 0 0 0);
  }

  .comparison-panel--single figure {
    transform: translateY(-2%) scale(.82);
  }

  .comparison.is-revealed .comparison-panel--single figure {
    transform: translateY(-12%) scale(.56);
  }

  .comparison-panel--dual figure {
    transform: scale(.9);
  }

  .comparison.is-revealed .comparison-panel--dual figure {
    transform: scale(1.08);
  }

  .comparison.is-revealed .comparison-panel--single {
    clip-path: inset(0 0 28.814% 0);
  }

  .comparison.is-revealed .comparison-panel--dual {
    clip-path: inset(1.695% 0 0 0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .comparison-panel figure {
    transition: none;
  }

  .comparison-panel--single figure,
  .comparison.is-revealed .comparison-panel--single figure {
    transform: scale(.56);
  }

  .comparison-panel--dual figure,
  .comparison.is-revealed .comparison-panel--dual figure {
    transform: scale(1.08);
  }
}

/* The product enters once on first view; the decorative lamp rhythm remains
   independent so the appliance never changes its mobile positioning. */
.has-js .home-hero .hero-product img {
  transition: opacity .86s ease, transform 1.18s cubic-bezier(.16, 1, .3, 1);
  transform-origin: center bottom;
}

.has-js .home-hero:not(.is-visible) .hero-product img {
  opacity: 0;
  transform: translateY(52px) scale(.88);
}

.has-js .home-hero.is-visible .hero-product img {
  opacity: 1;
  transform: none;
}

/* v71: a continuous comparison surface and reversible, scroll-linked product motion. */
.comparison {
  --comparison-progress: 0;
}

.comparison-stage {
  background: linear-gradient(90deg, #edf0ef 0%, #f2f6f5 48%, #e8f5f9 100%);
}

.comparison-panel--single,
.comparison-panel--dual {
  background: transparent;
}

.comparison-panel {
  transition: filter .35s ease, opacity .35s ease;
}

.comparison-panel figure,
.comparison-panel header {
  transition: none;
}

.lamp-phrase--bottom .lamp-line {
  right: -12px;
  width: calc(100% + clamp(118px, 9vw, 156px) + 12px);
}

@media (min-width: 761px) {
  .comparison-panel--single,
  .comparison.is-revealed .comparison-panel--single {
    clip-path: polygon(0 0, calc(79.365% - 15.873% * var(--comparison-progress)) 0,
      calc(79.365% - 15.873% * var(--comparison-progress)) 100%, 0 100%);
  }

  .comparison-panel--dual,
  .comparison.is-revealed .comparison-panel--dual {
    clip-path: polygon(calc(20.635% - 15.873% * var(--comparison-progress)) 0,
      100% 0, 100% 100%, calc(20.635% - 15.873% * var(--comparison-progress)) 100%);
  }

  .comparison-panel--single figure,
  .comparison.is-revealed .comparison-panel--single figure {
    transform: translateX(calc(7% - 13% * var(--comparison-progress))) scale(.56);
  }

  .comparison-panel--dual figure,
  .comparison.is-revealed .comparison-panel--dual figure {
    transform: translateX(calc(-4% - 6% * var(--comparison-progress)))
      scale(calc(.86 + .26 * var(--comparison-progress)));
  }

  .comparison-panel--single header,
  .comparison.is-revealed .comparison-panel--single header {
    left: calc(46.84% - 16.2% * var(--comparison-progress));
    transform: translate(-50%, -50%) scale(calc(1 - .22 * var(--comparison-progress)));
  }

  .comparison-panel--dual header,
  .comparison.is-revealed .comparison-panel--dual header {
    left: calc(51% - 5.4% * var(--comparison-progress));
    transform: translate(-50%, -50%) scale(calc(.94 + .13 * var(--comparison-progress)));
  }
}

@media (max-width: 760px) {
  .lamp-phrase--bottom .lamp-line {
    right: -9px;
    width: calc(100% + clamp(77px, 24vw, 112px) + 9px);
  }

  /* Keep the mobile comparison in the same left/right composition as desktop.
     The split stays centered while only PODAM grows as scrolling progresses. */
  .comparison-stage {
    width: 100%;
    height: clamp(380px, 112vw, 500px);
    margin-left: 0;
    background: linear-gradient(90deg, #edf0ef 0%, #f2f6f5 48%, #e8f5f9 100%);
    transform: none;
  }

  .comparison-panel,
  .comparison-panel--single,
  .comparison-panel--dual {
    top: 0;
    bottom: 0;
    width: 63%;
    height: auto;
  }

  .comparison-panel--single {
    right: auto;
    left: 0;
  }

  .comparison-panel--dual {
    right: 0;
    left: auto;
  }

  .comparison-panel--single,
  .comparison.is-revealed .comparison-panel--single {
    clip-path: polygon(0 0, calc(79.365% - 15.873% * var(--comparison-progress)) 0,
      calc(79.365% - 15.873% * var(--comparison-progress)) 100%, 0 100%);
  }

  .comparison-panel--dual,
  .comparison.is-revealed .comparison-panel--dual {
    clip-path: polygon(calc(20.635% - 15.873% * var(--comparison-progress)) 0,
      100% 0, 100% 100%, calc(20.635% - 15.873% * var(--comparison-progress)) 100%);
  }

  .comparison-panel figure {
    top: 0;
    right: auto;
    bottom: 0;
    left: -5%;
    width: 110%;
    height: 100%;
  }

  .comparison-panel--single figure,
  .comparison.is-revealed .comparison-panel--single figure {
    transform: translateX(calc(0% - 11% * var(--comparison-progress))) scale(.56);
  }

  .comparison-panel--dual figure,
  .comparison.is-revealed .comparison-panel--dual figure {
    transform: translateX(calc(-2% - 6% * var(--comparison-progress)))
      scale(calc(.86 + .26 * var(--comparison-progress)));
  }

  .comparison-panel header,
  .comparison-panel--single header,
  .comparison-panel--dual header {
    top: 50%;
    width: min(68%, 38vw);
  }

  .comparison-panel header small {
    margin-bottom: 5px;
    font-size: 8px;
  }

  .comparison-panel--single header {
    width: min(62%, 28vw);
  }

  .comparison-panel--single h3 {
    font-size: clamp(13px, 3.7vw, 18px);
  }

  .comparison-panel--dual h3 {
    font-size: clamp(17px, 4.7vw, 25px);
  }

  .comparison-panel__facts {
    margin-top: 10px;
  }

  .comparison-panel__facts div {
    display: block;
    padding: 5px 0;
  }

  .comparison-panel__facts dt,
  .comparison-panel__facts dd,
  .comparison-panel--single .comparison-panel__facts dd,
  .comparison-panel--dual .comparison-panel__facts dd {
    font-size: clamp(8px, 2.35vw, 11px);
    line-height: 1.25;
  }

  .comparison-panel--single header,
  .comparison.is-revealed .comparison-panel--single header {
    left: calc(39.68% - 7.94% * var(--comparison-progress));
    transform: translate(-50%, -50%) scale(calc(1 - .12 * var(--comparison-progress)));
  }

  .comparison-panel--dual header,
  .comparison.is-revealed .comparison-panel--dual header {
    left: calc(60.32% - 7.94% * var(--comparison-progress));
    transform: translate(-50%, -50%) scale(calc(.94 + .13 * var(--comparison-progress)));
  }
}

@media (prefers-reduced-motion: reduce) {
  .comparison-panel,
  .comparison-panel figure,
  .comparison-panel header {
    transition: none;
  }
}

/* v84: keep each copy block locked to the visual centre of its product.
   The product scale still changes independently, while both centres travel
   through the same scroll-linked horizontal path in either direction. */
.comparison-panel__motion {
  display: contents;
}

@media (min-width: 761px) {
  .comparison-panel--single header,
  .comparison.is-revealed .comparison-panel--single header {
    left: calc(56.56% - 14.04% * var(--comparison-progress));
  }

  .comparison-panel--dual header,
  .comparison.is-revealed .comparison-panel--dual header {
    left: calc(46.68% - 6.48% * var(--comparison-progress));
  }
}

@media (max-width: 760px) {
  .comparison-panel--single header,
  .comparison.is-revealed .comparison-panel--single header {
    left: calc(50% - 12.1% * var(--comparison-progress));
  }

  .comparison-panel--dual header,
  .comparison.is-revealed .comparison-panel--dual header {
    left: calc(47.8% - 6.6% * var(--comparison-progress));
  }
}

/* Color line-up: keep the source photographs and wording editable on the homepage. */
.color-lineup {
  padding: clamp(64px, 7vw, 100px) max(18px, 4vw) clamp(66px, 7vw, 104px);
  background: #fffcf8;
  color: var(--navy-deep);
}

.color-lineup__heading {
  max-width: 1040px;
  margin: 0 auto clamp(30px, 4vw, 52px);
  text-align: center;
}

.color-lineup__heading > span,
.reflector-feature__heading > span {
  display: inline-block;
  padding-bottom: 8px;
  border-bottom: 2px solid var(--blue);
  color: var(--blue);
  font-size: clamp(12px, 1.2vw, 16px);
  font-weight: 700;
  letter-spacing: .21em;
}

.color-lineup__heading h2 {
  margin: 26px 0 0;
  font-size: clamp(34px, 4.45vw, 66px);
  font-weight: 700;
  letter-spacing: -.07em;
  line-height: 1.22;
  word-break: keep-all;
}

.color-lineup__mobile-break {
  display: none;
}

.color-lineup__showcase {
  width: min(1100px, 100%);
  margin: 0 auto;
  overflow: hidden;
  border: 1px solid rgba(126, 141, 151, .14);
  border-radius: 26px;
  background: #f7eee6;
  box-shadow: 0 22px 54px rgba(69, 54, 42, .08);
}

.color-lineup__showcase > img {
  width: 100%;
  height: auto;
  aspect-ratio: 1448 / 1086;
  object-fit: contain;
}

.color-lineup__showcase figcaption {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: center;
  min-height: 74px;
  background: #fffcf8;
  text-align: center;
}

.color-lineup__showcase figcaption span {
  padding: 16px 8px;
  font-family: "Podam Sungkok Semi", Georgia, serif;
  font-size: clamp(21px, 2.25vw, 32px);
  font-weight: 700;
  letter-spacing: -.035em;
}

.color-lineup__showcase figcaption span + span {
  border-left: 1px solid #e0d6ce;
}

.color-lineup__details {
  display: grid;
  gap: 20px;
  width: min(1100px, 100%);
  margin: clamp(22px, 3vw, 38px) auto 0;
}

.color-lineup__card {
  display: grid;
  grid-template-columns: 1fr 1fr;
  height: clamp(270px, 35vw, 360px);
  min-height: 0;
  overflow: hidden;
  border: 1px solid #e6ded5;
  border-radius: 25px;
  background: #f9fcfc;
  box-shadow: 0 14px 36px rgba(66, 53, 41, .06);
}

.color-lineup__card--beige {
  background: #f5ece2;
}

.color-lineup__card > img {
  width: 100%;
  height: 100%;
  min-height: 0;
  object-fit: cover;
  object-position: center 55%;
}

.color-lineup__card > div {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(20px, 4vw, 58px);
}

.color-lineup__card--beige > img {
  order: 2;
}

.color-lineup__card--beige > div {
  order: 1;
}

.color-lineup__card h3 {
  margin: 0;
  font-family: "Podam Sungkok Semi", Georgia, serif;
  font-size: clamp(27px, 3.3vw, 46px);
  line-height: 1.08;
}

.color-lineup__card p {
  margin: 16px 0 0;
  color: var(--ink-muted);
  font-family: var(--body);
  font-size: clamp(14px, 1.5vw, 20px);
  font-weight: 500;
  line-height: 1.45;
  word-break: keep-all;
}

/* The original two moving reflector sources sit below the dual-care story. */
.reflector-feature {
  background: #fffaf4;
  color: var(--navy-deep);
}

.reflector-feature__bridge {
  position: relative;
  display: grid;
  min-height: clamp(260px, 29vw, 390px);
  place-items: center;
  overflow: hidden;
  background: #234969;
  color: #fff;
  text-align: center;
}

.reflector-feature__bridge svg {
  position: absolute;
  top: 50%;
  left: 50%;
  width: min(490px, 70vw);
  height: min(490px, 70vw);
  stroke: rgba(180, 221, 245, .21);
  stroke-width: 2;
  transform: translate(-50%, -50%);
}

.reflector-feature__bridge-copy {
  position: relative;
  z-index: 1;
  padding: 36px 18px;
}

.reflector-feature__bridge-copy > span {
  color: #a7d3ec;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .2em;
}

.reflector-feature__bridge h2 {
  margin: 14px 0 13px;
  font-size: clamp(35px, 4.4vw, 62px);
  letter-spacing: -.07em;
  line-height: 1.23;
}

.reflector-feature__bridge h2 strong {
  color: #9cdbfb;
}

.reflector-feature__bridge p {
  margin: 0;
  color: #deedf5;
  font-family: var(--body);
  font-size: clamp(15px, 1.45vw, 19px);
  line-height: 1.55;
}

.reflector-feature__body {
  padding: clamp(58px, 6vw, 88px) max(18px, 4vw) clamp(66px, 7vw, 100px);
}

.reflector-feature__heading {
  margin-bottom: clamp(32px, 4vw, 56px);
  text-align: center;
}

.reflector-feature__heading h3 {
  margin: 20px 0 0;
  font-size: clamp(34px, 4vw, 58px);
  letter-spacing: -.07em;
  line-height: 1.28;
  word-break: keep-all;
}

.reflector-feature__heading h3 strong {
  color: var(--blue);
}

.reflector-feature__media {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-areas: "photo spread" "benefit spread";
  align-items: center;
  gap: 18px clamp(20px, 3.3vw, 42px);
  width: min(1010px, 100%);
  margin: 0 auto;
}

.reflector-feature__photo,
.reflector-feature__spread {
  position: relative;
  width: 100%;
  margin: 0;
  overflow: hidden;
  border: 7px solid #fff;
  border-radius: 25px;
  box-shadow: 0 19px 42px rgba(31, 62, 86, .13);
}

.reflector-feature__photo {
  grid-area: photo;
  aspect-ratio: 1.32;
  background: #222;
}

.reflector-feature__photo video {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 898 / 1270;
}

.reflector-feature__photo figcaption {
  position: absolute;
  z-index: 1;
  right: 13px;
  bottom: 13px;
  display: flex;
  width: clamp(92px, 10vw, 130px);
  height: clamp(92px, 10vw, 130px);
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border: 2px solid rgba(255, 255, 255, .92);
  border-radius: 50%;
  background: linear-gradient(145deg, #185594, #071f43 80%);
  box-shadow: 0 8px 24px rgba(8, 32, 66, .3);
  color: #fff;
  text-align: center;
}

.reflector-feature__photo figcaption strong {
  font-size: clamp(35px, 4vw, 54px);
  line-height: .95;
}

.reflector-feature__photo figcaption small {
  margin-left: 3px;
  font-size: .3em;
}

.reflector-feature__photo figcaption span {
  margin-top: 6px;
  color: #bce5ff;
  font-size: clamp(9px, .8vw, 11px);
  font-weight: 700;
}

.reflector-feature__benefit {
  grid-area: benefit;
  margin: 0;
  color: var(--navy-deep);
  font-size: clamp(17px, 1.9vw, 25px);
  font-weight: 700;
  letter-spacing: -.055em;
  line-height: 1.45;
  text-align: center;
}

.reflector-feature__benefit strong {
  display: inline-block;
  margin-top: 9px;
  padding: 7px 14px 9px;
  border-radius: 10px;
  background: #155a9c;
  color: #fff;
  font-size: clamp(21px, 2.4vw, 32px);
  white-space: nowrap;
}

.reflector-feature__spread {
  grid-area: spread;
  align-self: center;
  aspect-ratio: 802 / 934;
  background: #d7eafd;
}

.reflector-feature__spread picture,
.reflector-feature__spread img {
  display: block;
  width: 100%;
  height: 100%;
}

.reflector-feature__spread img {
  object-fit: cover;
}

@media (max-width: 760px) {
  .color-lineup {
    padding: 56px 14px 66px;
  }

  .color-lineup__heading h2 {
    margin-top: 18px;
    font-size: clamp(31px, 8.3vw, 39px);
  }

  .color-lineup__mobile-break {
    display: initial;
  }

  .color-lineup__showcase {
    border-radius: 18px;
  }

  .color-lineup__showcase > img {
    aspect-ratio: 1448 / 1086;
  }

  .color-lineup__showcase figcaption {
    min-height: 52px;
  }

  .color-lineup__showcase figcaption span {
    font-size: clamp(16px, 4.7vw, 21px);
  }

  .color-lineup__details {
    gap: 13px;
    margin-top: 18px;
  }

  .color-lineup__card {
    height: clamp(170px, 48vw, 230px);
    border-radius: 17px;
  }

  .color-lineup__card > div {
    padding: clamp(12px, 3.8vw, 20px);
  }

  .color-lineup__card h3 {
    font-size: clamp(19px, 5vw, 26px);
  }

  .color-lineup__card p {
    margin-top: 9px;
    font-size: clamp(11px, 3vw, 14px);
  }

  .reflector-feature__bridge {
    min-height: 245px;
  }

  .reflector-feature__bridge svg {
    width: 330px;
    height: 330px;
  }

  .reflector-feature__bridge h2 {
    font-size: clamp(33px, 8.4vw, 42px);
  }

  .reflector-feature__body {
    padding: 58px 17px 72px;
  }

  .reflector-feature__heading h3 {
    font-size: clamp(30px, 8vw, 39px);
  }

  .reflector-feature__media {
    grid-template-columns: 1fr;
    grid-template-areas: "photo" "benefit" "spread";
    gap: 22px;
    max-width: 470px;
  }

  .reflector-feature__photo figcaption {
    width: 93px;
    height: 93px;
  }

  .reflector-feature__photo figcaption strong {
    font-size: 38px;
  }

  .reflector-feature__benefit {
    padding: 8px 0 2px;
    font-size: clamp(17px, 4.5vw, 21px);
  }

  .reflector-feature__benefit strong {
    font-size: clamp(21px, 5.6vw, 27px);
  }
}

@media (prefers-reduced-motion: reduce) {
  .reflector-feature__photo video {
    display: none;
  }

  .reflector-feature__photo {
    background: #222 url('./assets/facet-reflector-poster.png') center bottom / cover no-repeat;
  }
}

@media (prefers-reduced-motion: reduce) {
  .has-js .home-hero .hero-product img {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* v74 — color cards, patent-style seal, and reflector closing emphasis. */
.color-lineup__details {
  margin-top: 0;
}

.color-lineup,
.reflector-feature {
  scroll-margin-top: 88px;
}

.color-lineup > .home-video__cta {
  display: flex;
  width: max-content;
  max-width: 100%;
  margin: clamp(35px, 4vw, 56px) auto 0;
}

.reflector-feature__heading {
  max-width: 1100px;
  margin: 0 auto clamp(26px, 3.1vw, 44px);
}

.reflector-feature__headline {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(10px, 1.8vw, 26px);
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
  text-align: left;
}

.reflector-feature__medal {
  position: relative;
  width: clamp(200px, 23vw, 260px);
  flex: none;
  filter: drop-shadow(0 11px 12px rgba(113, 79, 28, .13));
}

.reflector-feature__medal svg {
  display: block;
  width: 100%;
  height: auto;
}

.reflector-feature__medal p {
  position: absolute;
  top: 54%;
  left: 50%;
  width: 78%;
  margin: 0;
  color: #243750;
  font-family: "Podam Sungkok Semi", serif;
  font-size: clamp(14px, 1.48vw, 19px);
  font-weight: 700;
  font-synthesis: weight;
  letter-spacing: -.04em;
  line-height: 1.08;
  text-align: center;
  -webkit-text-stroke: .24px rgba(36, 55, 80, .48);
  text-shadow: 0 1px 0 rgba(255, 249, 224, .72), 0 3px 8px rgba(92, 61, 20, .13);
  transform: translate(-50%, -50%);
  word-break: keep-all;
}

.reflector-feature__medal strong {
  display: block;
  font-weight: 700;
}

.reflector-feature__medal strong + strong {
  margin-top: 10px;
}

.reflector-feature__medal strong span {
  display: block;
}

.reflector-feature__headline-copy {
  min-width: 0;
  flex: 1 1 auto;
}

.reflector-feature__pretitle {
  margin: 0 0 8px;
  color: #6d7a82;
  font-size: clamp(17px, 1.85vw, 24px);
  font-weight: 600;
  letter-spacing: -.045em;
}

.reflector-feature__heading h2 {
  position: relative;
  display: inline-block;
  margin: 0;
  padding-bottom: clamp(10px, .9vw, 13px);
  color: var(--navy-deep);
  font-size: clamp(38px, 5.15vw, 72px);
  font-weight: 800;
  letter-spacing: -.075em;
  line-height: 1.18;
  word-break: keep-all;
}

.reflector-feature__heading h2::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 3px;
  border-radius: 999px;
  background: #2f83b8;
}

.reflector-feature__closing {
  width: min(1180px, 100%);
  margin: clamp(40px, 5vw, 70px) auto 0;
  color: var(--navy-deep);
  font-family: var(--sans);
  font-weight: 800;
}

.reflector-feature__signature {
  display: grid;
  grid-template-columns: minmax(0, 1fr) clamp(150px, 16vw, 220px) minmax(0, 1fr);
  align-items: center;
  gap: clamp(14px, 2vw, 30px);
  width: 100%;
}

.reflector-feature__signature-symbol {
  width: 100%;
  /* The supplied source contains the droplet above a separate PODAM wordmark.
     Crop at the transparent break after the complete 1783 x 2261 droplet so
     the lower crescent is not clipped and the wordmark never enters view. */
  aspect-ratio: 1783 / 2261;
  overflow: hidden;
}

.reflector-feature__signature-symbol img {
  display: block;
  width: 100%;
  height: auto;
}

.reflector-feature__signature-line {
  margin: 0;
  color: var(--navy-deep);
  font-family: var(--sans);
  font-size: clamp(27px, 3vw, 42px);
  font-weight: 800;
  letter-spacing: -.075em;
  line-height: 1.22;
  word-break: keep-all;
}

.reflector-feature__signature-line--left {
  text-align: right;
}

.reflector-feature__signature-line--right {
  text-align: left;
}

.has-js .reflector-feature__closing {
  opacity: 0;
  transform: translateY(18px);
}

.has-js .reflector-feature__signature-symbol {
  opacity: 0;
  transform: translateY(10px) scale(.91);
}

.has-js .reflector-feature__signature-line {
  opacity: 0;
}

.has-js .reflector-feature__closing.is-visible {
  animation: reflector-closing-reveal .68s ease-out forwards;
}

.has-js .reflector-feature__closing.is-visible .reflector-feature__signature-symbol {
  animation: reflector-signature-symbol-reveal .85s cubic-bezier(.2,.72,.16,1) .18s forwards;
}

.has-js .reflector-feature__closing.is-visible .reflector-feature__signature-line--left {
  animation: reflector-signature-copy-left-reveal .7s cubic-bezier(.2,.72,.16,1) .46s forwards;
}

.has-js .reflector-feature__closing.is-visible .reflector-feature__signature-line--right {
  animation: reflector-signature-copy-right-reveal .7s cubic-bezier(.2,.72,.16,1) .58s forwards;
}

@keyframes reflector-closing-reveal {
  to { opacity: 1; transform: translateY(0); }
}

@keyframes reflector-signature-symbol-reveal {
  to { opacity: 1; transform: translateY(0) scale(1); }
}

@keyframes reflector-signature-copy-left-reveal {
  from { transform: translateX(24px); }
  to { opacity: 1; transform: translateX(0); }
}

@keyframes reflector-signature-copy-right-reveal {
  from { transform: translateX(-24px); }
  to { opacity: 1; transform: translateX(0); }
}

@media (max-width: 760px) {
  .color-lineup__details {
    margin-top: 0;
  }

  .color-lineup > .home-video__cta {
    margin-top: 34px;
  }

  .reflector-feature__headline {
    gap: 2px;
  }

  .reflector-feature__medal {
    width: clamp(145px, 41vw, 180px);
    margin-left: -10px;
  }

  .reflector-feature__medal p {
    width: 80%;
    font-size: clamp(13px, 3.7vw, 15px);
  }

  .reflector-feature__medal strong + strong {
    margin-top: 7px;
  }

  .reflector-feature__pretitle {
    font-size: clamp(13px, 3.45vw, 17px);
  }

  .reflector-feature__heading h2 {
    font-size: clamp(28px, 7.7vw, 38px);
  }

  .reflector-feature__closing {
    width: min(520px, 100%);
    margin-top: 44px;
  }

  .reflector-feature__signature {
    grid-template-columns: minmax(0, 1fr) clamp(76px, 24vw, 112px) minmax(0, 1fr);
    gap: clamp(6px, 2.4vw, 12px);
  }

  .reflector-feature__signature-line {
    font-size: clamp(16px, 4.8vw, 22px);
    letter-spacing: -.07em;
    line-height: 1.3;
  }
}

@media (prefers-reduced-motion: reduce) {
  .has-js .reflector-feature__closing,
  .has-js .reflector-feature__closing.is-visible {
    opacity: 1;
    transform: none;
    animation: none;
  }

  .has-js .reflector-feature__signature-symbol,
  .has-js .reflector-feature__closing.is-visible .reflector-feature__signature-symbol {
    opacity: 1;
    transform: none;
    animation: none;
  }

  .has-js .reflector-feature__signature-line,
  .has-js .reflector-feature__closing.is-visible .reflector-feature__signature-line {
    opacity: 1;
    transform: none;
    animation: none;
  }
}

/* Keep the desktop lamp/product composition in the narrow hero: both rails
   cross behind the appliance instead of sitting above and below it. */
@media (max-width: 760px) {
  .hero-stage {
    min-height: clamp(335px, 92vw, 390px);
  }

  .hero-product {
    width: clamp(150px, 40vw, 190px);
  }

  .lamp-copy--upper,
  .home-hero.is-visible .lamp-copy--upper {
    top: 43%;
  }

  .lamp-copy--lower,
  .home-hero.is-visible .lamp-copy--lower {
    right: 5px;
    bottom: 40%;
  }
}

/* Editorial-rail question layout selected from the three isolated concepts.
   The source photo, typeface, copy, and existing text colours stay unchanged. */
.comparison .section-heading {
  min-height: clamp(480px, 44.25vw, 620px);
  align-items: flex-start;
  justify-content: center;
  margin-bottom: 0;
  padding: clamp(74px, 7vw, 104px) clamp(58px, 8.3vw, 116px);
  padding-left: clamp(126px, 13.5vw, 190px);
  text-align: left;
  background-image:
    linear-gradient(90deg, rgba(2, 12, 22, .95) 0%, rgba(2, 12, 22, .88) 35%, rgba(3, 13, 23, .56) 60%, rgba(2, 10, 18, .2) 100%),
    url("./assets/question-mother-bottle-bw-v1.png");
  background-position: center, right 40%;
  background-size: cover, cover;
}

.comparison .section-heading::before {
  z-index: -1;
  background:
    linear-gradient(90deg, rgba(0, 7, 16, .08), transparent 74%),
    repeating-linear-gradient(180deg, rgba(0, 0, 0, .055) 0 1px, transparent 1px 8px);
}

.comparison .section-heading::after {
  content: none;
}

.comparison .section-heading > p,
.comparison .section-heading > h2 {
  position: relative;
  z-index: 2;
}

.comparison .section-heading p {
  margin: 0 0 clamp(18px, 1.8vw, 26px);
}

.comparison .section-heading h2 {
  width: min(720px, 58vw);
  max-width: none;
  font-size: clamp(58px, 6.65vw, 96px);
  line-height: .94;
}

.comparison .section-heading h2::before {
  content: "";
  position: absolute;
  top: clamp(-60px, -4.2vw, -48px);
  bottom: clamp(-36px, -2.4vw, -26px);
  left: clamp(-40px, -3vw, -30px);
  width: clamp(4px, .4vw, 6px);
  border-radius: 999px;
  background: #f7ca4f;
  box-shadow: 0 0 18px rgba(247, 202, 79, .12);
}

.question-mobile-break {
  display: initial;
}

@media (max-width: 760px) {
  .comparison .section-heading {
    min-height: clamp(410px, 111vw, 468px);
    margin-bottom: 0;
    padding: 66px 12px 60px clamp(68px, 14.5vw, 96px);
    background-image:
      linear-gradient(90deg, rgba(2, 12, 22, .96) 0%, rgba(2, 12, 22, .88) 47%, rgba(3, 13, 23, .5) 76%, rgba(2, 10, 18, .2) 100%),
      url("./assets/question-mother-bottle-bw-v1.png");
    background-position: center, 64% center;
    background-size: cover, auto 100%;
  }

  .comparison .section-heading p {
    margin-bottom: 16px;
    font-size: clamp(15px, 4.3vw, 19px);
  }

  .comparison .section-heading h2 {
    width: 100%;
    font-size: clamp(39px, 11.8vw, 49px);
    line-height: .97;
  }

  .comparison .section-heading h2::before {
    top: -47px;
    bottom: -27px;
    left: -20px;
    width: 4px;
  }
}

/* v87 final mobile geometry overrides. */
@media (max-width: 760px) {
  html,
  body {
    max-width: 100%;
    overflow-x: hidden;
    overscroll-behavior-x: none;
  }

  body {
    touch-action: pan-y;
  }

  .hero-stage {
    min-height: clamp(286px, 76vw, 320px);
  }

  .hero-product {
    top: 47%;
    width: clamp(166px, 45vw, 204px);
  }

  .lamp-copy--upper,
  .home-hero.is-visible .lamp-copy--upper {
    top: 39%;
  }

  .lamp-copy--lower,
  .home-hero.is-visible .lamp-copy--lower {
    right: 7px;
    bottom: 36%;
  }

  .lamp-phrase--top .lamp-line,
  .lamp-phrase--bottom .lamp-line {
    width: calc(100% + clamp(15px, 4.6vw, 22px));
  }

  .hero-message {
    width: 100%;
    margin-top: -5px;
    padding-inline: 18px;
    text-align: center;
  }

  .hero-kicker {
    width: 100%;
    margin-inline: auto;
    text-align: center;
  }

  .hero-inline-brand {
    margin-top: 11px;
  }

  .hero-inline-brand img {
    width: 78px;
  }

  .home-hero .hero-facts {
    margin-top: 20px;
  }

  .comparison-stage {
    height: clamp(610px, 168vw, 690px);
  }

  /* Treat the two products as separate side-by-side stages. The PODAM stage
     stays larger, but no element from the left stage is brought in front of it. */
  .comparison-panel,
  .comparison-panel--single,
  .comparison-panel--dual {
    top: 0;
    bottom: 0;
    height: 100%;
    overflow: visible;
    clip-path: none;
    background: transparent;
  }

  .comparison-panel--single,
  .comparison.is-revealed .comparison-panel--single {
    z-index: 2;
    right: auto;
    left: 0;
    width: 52%;
  }

  .comparison-panel--dual,
  .comparison.is-revealed .comparison-panel--dual {
    z-index: 3;
    right: 0;
    left: auto;
    width: 75%;
  }

  .comparison-panel::before,
  .comparison-panel--dual::before {
    display: none;
  }

  .comparison-panel figure {
    top: 0;
    right: auto;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transform-origin: center center;
  }

  .comparison-panel--single figure,
  .comparison.is-revealed .comparison-panel--single figure {
    z-index: 2;
    transform: translateX(calc(-2% - 4% * var(--comparison-progress)))
      scale(calc(.8 - .03 * var(--comparison-progress)));
  }

  .comparison-panel--dual figure,
  .comparison.is-revealed .comparison-panel--dual figure {
    z-index: 2;
    transform: scale(calc(.98 + .06 * var(--comparison-progress)));
  }

  .comparison-panel header,
  .comparison-panel--single header,
  .comparison-panel--dual header {
    top: 50%;
    right: auto;
    text-align: center;
  }

  .comparison-panel--single header,
  .comparison.is-revealed .comparison-panel--single header {
    left: 43%;
    width: 74%;
    transform: translate(-50%, -50%) scale(calc(.87 - .03 * var(--comparison-progress)));
  }

  .comparison-panel--dual header,
  .comparison.is-revealed .comparison-panel--dual header {
    left: 50%;
    width: 76%;
    transform: translate(-50%, -50%) scale(calc(.98 + .04 * var(--comparison-progress)));
  }

  .comparison-panel__facts {
    width: 100%;
    margin: 10px auto 0;
  }

  .comparison-panel__facts div {
    display: block;
    width: 100%;
    padding: 5px 0;
    text-align: center;
  }

  .comparison-panel__facts dt,
  .comparison-panel__facts dd {
    display: block;
    width: 100%;
    margin: 0;
    text-align: center;
  }
}

/* v120 desktop comparison: close the wide opening pose without allowing the
   two appliances or their copy blocks to cross. The revealed pose remains at
   its already-safe separation. */
@media (min-width: 761px) {
  .comparison-panel--single figure,
  .comparison.is-revealed .comparison-panel--single figure {
    transform: translateX(calc(10% - 16% * var(--comparison-progress))) scale(.56);
  }

  .comparison-panel--dual figure,
  .comparison.is-revealed .comparison-panel--dual figure {
    transform: translateX(calc(-14% + 4% * var(--comparison-progress)))
      scale(calc(.86 + .26 * var(--comparison-progress)));
  }

  .comparison-panel--single header,
  .comparison.is-revealed .comparison-panel--single header {
    left: calc(55.5% - 12.98% * var(--comparison-progress));
    transform: translate(-50%, -50%) scale(calc(.82 - .04 * var(--comparison-progress)));
  }

  .comparison-panel--dual header,
  .comparison.is-revealed .comparison-panel--dual header {
    left: calc(42.5% - 2.3% * var(--comparison-progress));
    transform: translate(-50%, -50%) scale(calc(.82 + .25 * var(--comparison-progress)));
  }
}
