/* Premium rework: quiet silver/graphite direction, product-detail-first PDP */
:root {
  --premium-ink: #080b10;
  --premium-muted: #66717a;
  --premium-soft: #f4f7f9;
  --premium-panel: rgba(255, 255, 255, 0.84);
  --premium-line: rgba(12, 20, 30, 0.12);
  --premium-shadow: 0 28px 84px rgba(18, 28, 40, 0.13);
  --premium-accent: #526b79;
  --premium-accent-dark: #24333d;
  --fulmor-red: #ed1c2e;
  --fulmor-red-soft: rgba(237, 28, 46, 0.12);
  --fulmor-red-line: rgba(237, 28, 46, 0.28);
}

body {
  color: var(--premium-ink) !important;
  background:
    radial-gradient(ellipse at 18% -8%, rgba(255, 255, 255, 0.9), transparent 34%),
    linear-gradient(180deg, #f7f9fb 0%, #edf1f5 100%) !important;
}

.site-header,
.shop-header,
.nav {
  color: var(--premium-ink) !important;
  background: rgba(255, 255, 255, 0.78) !important;
  border-bottom: 1px solid rgba(12, 20, 30, 0.1) !important;
  box-shadow: 0 18px 46px rgba(18, 28, 40, 0.08) !important;
  backdrop-filter: blur(22px) saturate(1.22) !important;
}

.brand img,
.nav-logo img,
.shop-header .logo,
.footer img {
  filter: none !important;
}

.nav-links a,
.nav-links > a:not(.nav-button):not(.nav-cta):not(.cta),
.shop-header .nav-links a {
  color: rgba(8, 11, 16, 0.68) !important;
  text-shadow: none !important;
}

.nav-links a:hover,
.nav-links > a:not(.nav-button):not(.nav-cta):not(.cta):hover,
.shop-header .nav-links a:hover {
  color: var(--premium-ink) !important;
  text-shadow: none !important;
}

.lang-switch {
  display: inline-flex !important;
  align-items: center !important;
  gap: 3px !important;
  padding: 3px !important;
  border: 1px solid rgba(12, 20, 30, 0.12) !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.72) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.9),
    0 10px 28px rgba(18, 28, 40, 0.06) !important;
}

.nav-links .lang-switch a,
.mobile-menu .lang-switch a,
.shop-header .nav-links .lang-switch a {
  display: inline-flex !important;
  min-width: 34px !important;
  height: 28px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 9px !important;
  border-radius: 999px !important;
  color: rgba(8, 11, 16, 0.58) !important;
  font-size: 0.72rem !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  transition: color 160ms ease, background-color 160ms ease, box-shadow 160ms ease !important;
}

.nav-links .lang-switch a.active,
.mobile-menu .lang-switch a.active,
.shop-header .nav-links .lang-switch a.active {
  color: #fff !important;
  background: linear-gradient(135deg, #27333d, #080b10) !important;
  box-shadow: 0 8px 18px rgba(8, 13, 18, 0.18) !important;
}

.nav-links .lang-switch a::after {
  display: none !important;
}

.nav-links .lang-switch a:hover,
.mobile-menu .lang-switch a:hover,
.shop-header .nav-links .lang-switch a:hover {
  color: var(--premium-ink) !important;
}

.nav-links .lang-switch a.active:hover,
.mobile-menu .lang-switch a.active:hover,
.shop-header .nav-links .lang-switch a.active:hover {
  color: #fff !important;
}

.nav-cta,
.button,
.button-light,
.button-primary,
.button-dark,
.buy-panel .button-dark,
.actions .button-dark {
  color: #fff !important;
  border: 1px solid rgba(255, 255, 255, 0.18) !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.18), transparent 42%),
    linear-gradient(135deg, #26313b, #070a0e) !important;
  box-shadow:
    0 18px 44px rgba(8, 13, 18, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.2) !important;
}

.button-ghost,
.hero-actions .button-ghost,
.final-buy .button-ghost {
  color: var(--premium-ink) !important;
  border: 1px solid rgba(8, 13, 18, 0.18) !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(241, 245, 248, 0.74)) !important;
  box-shadow:
    0 16px 38px rgba(18, 28, 40, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.92) !important;
}

.button-ghost:hover,
.hero-actions .button-ghost:hover,
.final-buy .button-ghost:hover {
  color: #000 !important;
  border-color: rgba(8, 13, 18, 0.34) !important;
  background: #fff !important;
}

.eyebrow,
.eyebrow.red,
.section-kicker {
  color: var(--premium-accent) !important;
  letter-spacing: 0.14em !important;
}

body:not(.locale-ja) .hero-copy .eyebrow,
body.locale-ja .hero-copy .eyebrow,
.scene-white .eyebrow.red,
.moments .eyebrow.red,
.finale-copy .eyebrow {
  color: var(--fulmor-red) !important;
}

.hero-copy .eyebrow::after,
.feature-copy .eyebrow.red::after,
.moments .eyebrow.red::after,
.finale-copy .eyebrow::after {
  background: var(--fulmor-red) !important;
  border-color: var(--fulmor-red) !important;
  box-shadow: none !important;
}

.hero,
.finale,
.shop-hero {
  color: var(--premium-ink) !important;
  background:
    radial-gradient(circle at 78% 42%, rgba(255, 255, 255, 0.96), transparent 0 18%, transparent 42%),
    radial-gradient(ellipse at 78% 48%, rgba(175, 194, 205, 0.34), transparent 44%),
    radial-gradient(ellipse at 22% 16%, rgba(255, 255, 255, 0.78), transparent 36%),
    linear-gradient(135deg, #fbfcfd 0%, #eef3f6 44%, #dfe7ed 100%) !important;
  isolation: isolate;
}

.hero .ocean-canvas,
.finale .ocean-canvas,
.aurora,
.halo,
.hero-field,
.hero-glass,
.orbit,
.hero-particles,
.finale-atmosphere,
.finale-field,
.finale-ring,
.finale-sparks {
  display: none !important;
}

.hero::before,
.hero::after,
.finale::before,
.finale::after,
.shop-hero::before,
.shop-hero::after {
  content: "" !important;
  position: absolute !important;
  pointer-events: none !important;
}

.hero::before,
.finale::before,
.shop-hero::before {
  inset: 0 !important;
  opacity: 0.86 !important;
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.72), transparent 34%, rgba(255, 255, 255, 0.46)),
    repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.15) 0 1px, transparent 1px 96px) !important;
  mask-image: linear-gradient(180deg, transparent 0%, #000 18%, #000 84%, transparent 100%) !important;
}

.hero::after,
.finale::after,
.shop-hero::after {
  inset: auto 6vw 0 !important;
  height: 32% !important;
  opacity: 0.52 !important;
  background: radial-gradient(ellipse at 68% 72%, rgba(50, 62, 72, 0.17), transparent 62%) !important;
  filter: blur(10px) !important;
}

.hero-grid {
  min-height: min(760px, calc(100svh - 74px)) !important;
  padding-top: clamp(70px, 8vw, 118px) !important;
  padding-bottom: clamp(34px, 4vw, 64px) !important;
  grid-template-columns: minmax(0, 0.86fr) minmax(420px, 1.14fr) !important;
  gap: clamp(28px, 6vw, 94px) !important;
}

.hero-copy,
.finale-copy {
  color: var(--premium-ink) !important;
  max-width: 570px !important;
}

.hero h1,
.finale-copy h2 {
  color: var(--premium-ink) !important;
  background: none !important;
  -webkit-text-fill-color: currentColor !important;
  letter-spacing: 0 !important;
  text-shadow: none !important;
}

.hero p,
.finale-copy p,
.product-subtitle,
.section-head p,
.detail-copy p {
  color: rgba(8, 11, 16, 0.66) !important;
}

.hero-price-line {
  display: grid !important;
  align-items: start !important;
  gap: 8px !important;
  margin: clamp(18px, 2.8vw, 30px) 0 clamp(20px, 3vw, 32px) !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: var(--premium-ink) !important;
  background: none !important;
  box-shadow: none !important;
}

.hero-price-line strong {
  color: var(--fulmor-red) !important;
  font-size: clamp(3.8rem, 7vw, 6.6rem) !important;
  line-height: 0.9 !important;
  letter-spacing: 0 !important;
  font-weight: 950 !important;
  text-shadow: none !important;
  filter: none !important;
}

.hero-price-line span {
  color: rgba(8, 11, 16, 0.58) !important;
  font-size: 0.76rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

.hero-stage-price {
  display: none !important;
}

.hero-stage,
.finale-product,
.gallery-panel,
.media-stage {
  border-radius: 8px !important;
}

.hero-stage,
.finale-product {
  min-height: clamp(500px, 60vw, 700px) !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow:
    none !important;
  overflow: visible !important;
}

.hero-stage::before,
.finale-product::before {
  content: "" !important;
  position: absolute !important;
  inset: 4% 4% 2% !important;
  width: auto !important;
  height: auto !important;
  border-radius: 8px !important;
  opacity: 0.9 !important;
  background:
    linear-gradient(102deg, transparent 8%, rgba(255, 255, 255, 0.74) 43%, transparent 72%),
    radial-gradient(ellipse at 52% 78%, rgba(82, 96, 108, 0.16), transparent 56%) !important;
  filter: blur(12px) !important;
  transform: none !important;
}

.hero-stage::after {
  content: "" !important;
  position: absolute !important;
  inset: auto 12% 8% !important;
  width: auto !important;
  height: 62px !important;
  opacity: 0.52 !important;
  border-radius: 50% !important;
  background: radial-gradient(ellipse, rgba(30, 38, 46, 0.22), transparent 68%) !important;
  filter: blur(9px) !important;
  transform: none !important;
}

.hero-product,
.finale-product img,
.main-product,
.final-product img {
  filter:
    saturate(0.18)
    drop-shadow(0 28px 46px rgba(20, 28, 36, 0.18))
    drop-shadow(0 2px 8px rgba(255, 255, 255, 0.8)) !important;
}

.hero-product {
  width: min(34vw, 350px) !important;
  max-height: min(72vh, 650px) !important;
  object-fit: contain !important;
  object-position: center !important;
}

.hero-reflection,
.finale-plinth,
.hero-plinth {
  background: radial-gradient(ellipse, rgba(30, 38, 46, 0.18), transparent 68%) !important;
  opacity: 0.58 !important;
  filter: blur(10px) !important;
}

.spec-rail {
  color: var(--premium-ink) !important;
  margin-top: -18px !important;
  margin-bottom: clamp(34px, 5vw, 64px) !important;
  border: 1px solid rgba(255, 255, 255, 0.74) !important;
  background: rgba(255, 255, 255, 0.72) !important;
  box-shadow:
    0 24px 64px rgba(18, 28, 40, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.92) !important;
}

.spec-rail span {
  color: rgba(8, 11, 16, 0.48) !important;
}

.spec-rail strong {
  color: var(--premium-ink) !important;
}

.spec-rail div:first-child strong,
.performance h2,
.finale-price {
  color: var(--fulmor-red) !important;
}

.spec-rail div:first-child {
  border-color: var(--fulmor-red-line) !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(255, 246, 247, 0.78)) !important;
}

.spec-rail div:first-child span {
  color: rgba(237, 28, 46, 0.62) !important;
}

/* Keep the hero specification cards neutral; brand red is reserved for price and section accents. */
.hero .spec-rail div:first-child,
.hero .spec-rail div:first-child strong,
.hero .spec-rail div:first-child span {
  border-color: rgba(255, 255, 255, 0.74) !important;
  background: transparent !important;
}

.hero .spec-rail div:first-child strong {
  color: var(--premium-ink) !important;
}

.hero .spec-rail div:first-child span {
  color: rgba(8, 11, 16, 0.48) !important;
}

.finale {
  min-height: auto !important;
  padding-top: clamp(84px, 9vw, 132px) !important;
  padding-bottom: clamp(86px, 9vw, 138px) !important;
}

.finale-grid {
  min-height: 0 !important;
  align-items: center !important;
  grid-template-columns: minmax(0, 0.92fr) minmax(380px, 1.08fr) !important;
}

.finale-product {
  min-height: clamp(480px, 52vw, 620px) !important;
}

.finale-product img {
  width: min(30vw, 330px) !important;
  max-height: 560px !important;
  object-fit: contain !important;
}

.finale-price {
  color: var(--fulmor-red) !important;
  background: none !important;
  -webkit-text-fill-color: currentColor !important;
}

.shop-hero {
  padding-top: 92px !important;
  padding-bottom: clamp(58px, 7vw, 96px) !important;
}

.breadcrumb {
  color: rgba(8, 11, 16, 0.48) !important;
}

.breadcrumb a {
  color: rgba(8, 11, 16, 0.72) !important;
}

.shop-grid {
  grid-template-columns: minmax(0, 1.08fr) minmax(380px, 0.92fr) !important;
  gap: clamp(28px, 4.6vw, 72px) !important;
  align-items: start !important;
}

.gallery-panel {
  background:
    radial-gradient(ellipse at 50% 34%, rgba(255, 255, 255, 0.98), transparent 44%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.72), rgba(233, 239, 244, 0.72)) !important;
  border: 1px solid rgba(255, 255, 255, 0.72) !important;
  box-shadow: var(--premium-shadow) !important;
}

.media-stage {
  min-height: clamp(520px, 58vw, 680px) !important;
  background:
    radial-gradient(ellipse at 50% 70%, rgba(74, 87, 98, 0.15), transparent 56%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.58), rgba(241, 245, 248, 0.64)) !important;
  overflow: hidden !important;
}

.main-product {
  width: min(42vw, 390px) !important;
  max-height: 620px !important;
  object-fit: contain !important;
}

.thumb {
  background: rgba(255, 255, 255, 0.86) !important;
  border-color: rgba(12, 20, 30, 0.12) !important;
  box-shadow: none !important;
}

.thumb[aria-current="true"] {
  border-color: rgba(36, 51, 61, 0.46) !important;
  box-shadow: 0 12px 30px rgba(18, 28, 40, 0.1) !important;
}

.buy-panel {
  color: var(--premium-ink) !important;
  background: rgba(255, 255, 255, 0.88) !important;
  border: 1px solid rgba(255, 255, 255, 0.78) !important;
  box-shadow: var(--premium-shadow) !important;
  backdrop-filter: blur(18px) saturate(1.12) !important;
}

.product-title {
  color: var(--premium-ink) !important;
  background: none !important;
  -webkit-text-fill-color: currentColor !important;
}

.rating-row {
  color: rgba(8, 11, 16, 0.58) !important;
  border-color: rgba(12, 20, 30, 0.1) !important;
}

.stars {
  color: var(--premium-accent-dark) !important;
  background: rgba(82, 107, 121, 0.1) !important;
  border: 1px solid rgba(82, 107, 121, 0.18) !important;
  padding: 6px 9px !important;
  border-radius: 999px !important;
  font-size: 0.72rem !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}

.purchase-line {
  align-items: flex-start !important;
  gap: 18px !important;
  padding: 18px 0 !important;
  border-top: 1px solid rgba(12, 20, 30, 0.09) !important;
  border-bottom: 1px solid rgba(12, 20, 30, 0.09) !important;
}

.price {
  color: var(--premium-ink) !important;
  line-height: 1 !important;
}

.purchase-notes span,
.trust-row div {
  color: rgba(8, 11, 16, 0.6) !important;
}

.quick-spec {
  background: linear-gradient(180deg, #fff, #f3f6f8) !important;
  border: 1px solid rgba(12, 20, 30, 0.08) !important;
  box-shadow: 0 12px 34px rgba(18, 28, 40, 0.06) !important;
}

.quick-spec span,
.spec-row span,
.detail-list span,
.included-list div {
  color: rgba(8, 11, 16, 0.56) !important;
}

.qty,
.acc-item,
.trust-row,
.spec-card,
.included-card,
.support-card,
.benefit,
.structure-visual {
  background: rgba(255, 255, 255, 0.82) !important;
  border: 1px solid rgba(12, 20, 30, 0.1) !important;
  box-shadow: 0 18px 52px rgba(18, 28, 40, 0.07) !important;
}

.detail-section,
.product-overview {
  background:
    radial-gradient(ellipse at 82% 8%, rgba(255, 255, 255, 0.92), transparent 32%),
    linear-gradient(180deg, #fbfcfd 0%, #f2f5f8 100%) !important;
}

.section-head {
  max-width: 760px !important;
}

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

.benefit span {
  color: var(--premium-accent) !important;
}

.benefit h3,
.spec-card h2,
.included-card h2,
.support-card h2,
.detail-copy h2 {
  color: var(--premium-ink) !important;
}

.benefit p {
  color: rgba(8, 11, 16, 0.62) !important;
}

.detail-band {
  color: var(--premium-ink) !important;
  background:
    radial-gradient(ellipse at 78% 42%, rgba(255, 255, 255, 0.74), transparent 38%),
    linear-gradient(135deg, #eef3f6 0%, #dfe7ed 100%) !important;
}

.detail-grid {
  align-items: center !important;
}

.structure-visual {
  overflow: hidden !important;
}

.structure-visual img {
  mix-blend-mode: multiply !important;
  filter: contrast(1.02) drop-shadow(0 18px 40px rgba(18, 28, 40, 0.08)) !important;
}

.spec-grid {
  grid-template-columns: minmax(0, 1.25fr) minmax(260px, 0.85fr) minmax(260px, 0.85fr) !important;
  gap: 18px !important;
  align-items: stretch !important;
}

.support-card {
  border-radius: 8px !important;
  padding: clamp(24px, 3vw, 34px) !important;
}

.final-shop {
  color: var(--premium-ink) !important;
  background:
    radial-gradient(ellipse at 74% 48%, rgba(255, 255, 255, 0.86), transparent 40%),
    linear-gradient(135deg, #f8fafb 0%, #e3ebf0 100%) !important;
}

.final-grid {
  align-items: center !important;
}

.final-copy p {
  color: rgba(8, 11, 16, 0.62) !important;
}

.final-price {
  color: var(--premium-ink) !important;
}

.final-product {
  background:
    radial-gradient(ellipse at 50% 44%, rgba(255, 255, 255, 0.96), transparent 42%),
    radial-gradient(ellipse at 50% 72%, rgba(74, 87, 98, 0.14), transparent 56%) !important;
  border: 1px solid rgba(255, 255, 255, 0.76) !important;
  box-shadow: var(--premium-shadow) !important;
}

@media (max-width: 980px) {
  .hero-grid,
  .finale-grid,
  .shop-grid,
  .detail-grid,
  .spec-grid {
    grid-template-columns: 1fr !important;
  }

  .hero-stage,
  .finale-product {
    min-height: 500px !important;
  }

  .hero-product,
  .finale-product img {
    width: min(52vw, 330px) !important;
  }

  .main-product {
    width: min(54vw, 360px) !important;
  }
}

@media (max-width: 760px) {
  .site-header,
  .shop-header,
  .nav {
    background: rgba(255, 255, 255, 0.92) !important;
  }

  .mobile-menu {
    position: absolute !important;
    z-index: 120 !important;
    background: #fff !important;
    border: 1px solid rgba(12, 20, 30, 0.1) !important;
    box-shadow: 0 18px 52px rgba(18, 28, 40, 0.12) !important;
    opacity: 1 !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  .mobile-menu a {
    color: var(--premium-ink) !important;
  }

  .mobile-menu .lang-switch {
    width: fit-content !important;
    margin: 4px 0 !important;
  }

  .menu-toggle span {
    background: var(--premium-ink) !important;
  }

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

  .hero-grid {
    min-height: auto !important;
    padding-top: 84px !important;
    padding-bottom: 24px !important;
    gap: 24px !important;
  }

  .hero-copy {
    max-width: none !important;
  }

  .hero-price-line {
    display: none !important;
  }

  .hero-stage {
    min-height: 440px !important;
  }

  .hero-stage-price {
    position: absolute !important;
    z-index: 20 !important;
    left: 50% !important;
    bottom: -18px !important;
    display: grid !important;
    align-items: center !important;
    justify-items: center !important;
    gap: 3px !important;
    transform: translateX(-50%) !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: var(--premium-ink) !important;
    background: none !important;
    box-shadow: none !important;
    white-space: nowrap !important;
  }

  .hero-stage-price strong {
    color: var(--fulmor-red) !important;
    font-size: clamp(2.15rem, 9vw, 2.75rem) !important;
    line-height: 0.9 !important;
    letter-spacing: 0 !important;
    font-weight: 950 !important;
    text-shadow: none !important;
    filter: none !important;
  }

  .hero-stage-price span {
    color: rgba(8, 11, 16, 0.58) !important;
    font-size: 0.68rem !important;
    font-weight: 900 !important;
    letter-spacing: 0.1em !important;
    text-transform: uppercase !important;
  }

  .hero-product {
    width: min(72vw, 270px) !important;
    max-height: 410px !important;
  }

  .spec-rail {
    margin-top: 0 !important;
    margin-bottom: 34px !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .finale {
    padding-top: 58px !important;
    padding-bottom: 62px !important;
  }

  .finale-grid {
    gap: 24px !important;
  }

  .finale-product {
    order: -1 !important;
    min-height: 420px !important;
  }

  .finale-product img {
    width: min(70vw, 270px) !important;
    max-height: 390px !important;
  }

  .shop-hero {
    padding-top: 74px !important;
  }

  .gallery-panel {
    padding: 14px !important;
  }

  .media-stage {
    min-height: 420px !important;
  }

  .main-product {
    width: min(72vw, 300px) !important;
    max-height: 400px !important;
  }

  .thumbs {
    display: flex !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    padding-bottom: 4px !important;
  }

  .thumb {
    min-width: 76px !important;
    scroll-snap-align: start !important;
  }

  .buy-panel {
    padding: 22px !important;
  }

  .purchase-line {
    display: grid !important;
  }

  .quick-specs {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .trust-row {
    grid-template-columns: 1fr !important;
  }

  .benefit-grid {
    grid-template-columns: 1fr !important;
  }

  .final-product {
    order: -1 !important;
  }
}

/* Remove remaining legacy red glow and PDP red accents */
.hero-cinema,
.hero-cinema span,
.finale-atmosphere,
.finale-atmosphere span,
.hero .aurora,
.finale .aurora {
  display: none !important;
  opacity: 0 !important;
}

.hero-stage,
.finale-product,
.gallery-panel,
.media-stage {
  border-color: rgba(12, 20, 30, 0.09) !important;
  box-shadow:
    0 42px 110px rgba(18, 28, 40, 0.13),
    inset 0 1px 0 rgba(255, 255, 255, 0.96) !important;
}

.hero-stage,
.finale-product {
  background:
    transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.media-stage,
.gallery-panel {
  background:
    radial-gradient(ellipse at 50% 42%, rgba(255, 255, 255, 0.98), transparent 42%),
    radial-gradient(ellipse at 50% 72%, rgba(87, 103, 116, 0.14), transparent 54%),
    linear-gradient(180deg, #fdfefe, #edf3f7) !important;
}

.thumb[aria-current="true"],
.media-stage {
  border-color: rgba(36, 51, 61, 0.22) !important;
}

.buy-panel .eyebrow::after,
.section-kicker::after,
.product-title::after,
.detail-copy .section-kicker::after {
  background: var(--premium-accent) !important;
  border-color: var(--premium-accent) !important;
  box-shadow: none !important;
}

.shop-header .nav-links a.nav-cta,
.nav-links a.nav-cta,
.nav-cta {
  color: #fff !important;
}

.shop-header .nav-links a.nav-cta:hover,
.nav-links a.nav-cta:hover,
.nav-cta:hover {
  color: #fff !important;
}

.product-motion-ready .main-product,
.cinematic-ready .hero-product,
.cinematic-ready .finale-product img {
  will-change: transform !important;
}

html.cinematic-ready .hero-stage::before,
html.cinematic-ready .finale-product::before,
body .hero-stage::before,
body .finale-product::before {
  background:
    linear-gradient(102deg, transparent 14%, rgba(255, 255, 255, 0.78) 44%, transparent 72%),
    radial-gradient(ellipse at 52% 78%, rgba(44, 55, 66, 0.14), transparent 56%) !important;
  border: 0 !important;
  box-shadow: none !important;
  filter: blur(14px) !important;
}

html.cinematic-ready .hero-stage::after,
body .hero-stage::after {
  background: radial-gradient(ellipse, rgba(20, 28, 36, 0.22), transparent 68%) !important;
  box-shadow: none !important;
  filter: blur(10px) !important;
}

html.product-motion-ready .media-stage::before,
html.product-motion-ready .gallery-panel::before,
body .media-stage::before,
body .gallery-panel::before {
  background:
    radial-gradient(ellipse at 50% 72%, rgba(30, 40, 50, 0.12), transparent 58%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.54), transparent) !important;
  box-shadow: none !important;
  filter: blur(6px) !important;
}

html.product-motion-ready .media-stage::after,
body .media-stage::after {
  background: radial-gradient(ellipse, rgba(20, 28, 36, 0.16), transparent 68%) !important;
  box-shadow: none !important;
  filter: blur(12px) !important;
}

body .final-product::before,
body .final-product::after,
html.product-motion-ready .final-product::before,
html.product-motion-ready .final-product::after {
  background:
    radial-gradient(ellipse at 50% 70%, rgba(20, 28, 36, 0.14), transparent 58%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.62), transparent) !important;
  box-shadow: none !important;
}

html.product-motion-ready .main-product,
body .main-product {
  filter:
    saturate(0.12)
    drop-shadow(0 28px 46px rgba(20, 28, 36, 0.16))
    drop-shadow(0 2px 8px rgba(255, 255, 255, 0.82)) !important;
}

body .hero-reflection,
body .finale-plinth,
body .hero-plinth {
  background: radial-gradient(ellipse, rgba(20, 28, 36, 0.18), transparent 70%) !important;
  box-shadow: none !important;
}

/* Bugfix pass: interrupted-style cleanup for menu, moments, and PDP actions */
@media (max-width: 760px) {
  .site-header {
    position: sticky !important;
    top: 0 !important;
    z-index: 80 !important;
  }

  .site-header .nav {
    position: relative !important;
  }

  .mobile-menu {
    position: absolute !important;
    top: calc(100% + 8px) !important;
    left: 16px !important;
    right: 16px !important;
    width: auto !important;
    padding: 8px !important;
    gap: 0 !important;
    display: none !important;
    grid-template-columns: 1fr !important;
    border-radius: 8px !important;
    background: rgba(255, 255, 255, 0.96) !important;
    border: 1px solid rgba(12, 20, 30, 0.1) !important;
    box-shadow: 0 18px 52px rgba(18, 28, 40, 0.16) !important;
    backdrop-filter: blur(18px) saturate(1.15) !important;
  }

  .mobile-menu.open {
    display: grid !important;
  }

  .mobile-menu a {
    min-height: 42px !important;
    padding: 0 12px !important;
    display: flex !important;
    align-items: center !important;
    border-radius: 7px !important;
    color: var(--premium-ink) !important;
    font-size: 0.92rem !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
  }

  .mobile-menu a:hover,
  .mobile-menu a:focus-visible {
    background: #f1f5f8 !important;
  }
}

.moments,
.scene-white.moments {
  background:
    radial-gradient(ellipse at 50% 0%, rgba(255, 255, 255, 0.86), transparent 36%),
    linear-gradient(180deg, #fbfcfd 0%, #eef3f7 100%) !important;
}

.moment-feature {
  border-color: rgba(12, 20, 30, 0.12) !important;
  box-shadow: 0 30px 74px rgba(18, 28, 40, 0.11) !important;
}

.moment-feature::after {
  background: linear-gradient(180deg, transparent, rgba(8, 12, 18, 0.34)) !important;
}

.moment-choice,
.moment-choice:hover,
.moment-choice.active,
.moment-choice:focus-visible {
  color: var(--premium-ink) !important;
  border-color: rgba(12, 20, 30, 0.12) !important;
  border-bottom-color: rgba(12, 20, 30, 0.12) !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(245, 248, 250, 0.88)) !important;
  box-shadow: none !important;
}

.moment-choice.active,
.moment-choice:hover {
  border-color: rgba(36, 51, 61, 0.24) !important;
  background:
    linear-gradient(180deg, #fff, #f3f7f9) !important;
  box-shadow: 0 14px 38px rgba(18, 28, 40, 0.08) !important;
}

.moment-choice span,
.moment-choice.active span,
.moment-choice:hover span {
  color: var(--fulmor-red) !important;
}

.moment-choice strong,
.moment-choice.active strong,
.moment-choice:hover strong {
  color: var(--premium-ink) !important;
}

.moment-choice p,
.moment-choice.active p,
.moment-choice:hover p {
  color: rgba(8, 11, 16, 0.58) !important;
}

.buy-panel .actions .button-dark,
.actions .button-dark,
#addCart {
  color: var(--premium-ink) !important;
  border: 1px solid rgba(12, 20, 30, 0.14) !important;
  background:
    linear-gradient(180deg, #fff, #eef3f6) !important;
  box-shadow:
    0 14px 34px rgba(18, 28, 40, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.92) !important;
}

.buy-panel .actions .button-dark:hover,
.actions .button-dark:hover,
#addCart:hover {
  border-color: rgba(12, 20, 30, 0.26) !important;
  background: #fff !important;
}

.finale-price,
.price,
.final-price,
.spec-rail strong {
  color: var(--premium-ink) !important;
  background: none !important;
  -webkit-text-fill-color: currentColor !important;
  text-shadow: none !important;
  filter: none !important;
  box-shadow: none !important;
}

.hero .hero-stage-price strong,
.hero .hero-stage-price span,
.hero .hero-price-line strong,
.finale .finale-price,
.hero .spec-rail div:first-child strong,
.performance h2 {
  color: var(--fulmor-red) !important;
}

.hero .hero-stage-price {
  border-color: var(--fulmor-red-line) !important;
}

.hero .hero-stage-price span {
  color: rgba(237, 28, 46, 0.68) !important;
}

.lifestyle .eyebrow,
.technology .eyebrow,
.design .eyebrow {
  color: rgba(237, 28, 46, 0.74) !important;
}

.finale-price::before,
.finale-price::after,
.price::before,
.price::after,
.final-price::before,
.final-price::after {
  display: none !important;
  content: none !important;
  background: none !important;
  box-shadow: none !important;
  filter: none !important;
}

.hero .spec-rail div:first-child {
  border-color: rgba(255, 255, 255, 0.74) !important;
  background: transparent !important;
}

.hero .spec-rail div:first-child strong {
  color: var(--premium-ink) !important;
}

.hero .spec-rail div:first-child span {
  color: rgba(8, 11, 16, 0.48) !important;
}

/* Product detail page refinement */
.pdp-story,
.pdp-flow-section,
.pdp-spec-section {
  padding-top: clamp(76px, 8vw, 124px) !important;
  padding-bottom: clamp(76px, 8vw, 124px) !important;
}

.pdp-story .section-head,
.pdp-flow-section .section-head {
  max-width: 820px !important;
}

.pdp-metric-strip {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 1px !important;
  margin: clamp(32px, 4vw, 54px) 0 clamp(22px, 3vw, 34px) !important;
  overflow: hidden !important;
  border: 1px solid rgba(12, 20, 30, 0.1) !important;
  border-radius: 8px !important;
  background: rgba(12, 20, 30, 0.1) !important;
  box-shadow: 0 24px 70px rgba(18, 28, 40, 0.08) !important;
}

.pdp-metric-strip div {
  min-height: 132px !important;
  padding: clamp(20px, 2.6vw, 30px) !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(244, 248, 250, 0.88)) !important;
}

.pdp-metric-strip strong {
  display: block !important;
  color: var(--premium-ink) !important;
  font-size: clamp(1.7rem, 3.3vw, 3.05rem) !important;
  line-height: 0.94 !important;
  letter-spacing: 0 !important;
  text-shadow: none !important;
}

.pdp-metric-strip span {
  display: block !important;
  max-width: 160px !important;
  margin-top: 12px !important;
  color: rgba(8, 11, 16, 0.56) !important;
  font-size: 0.84rem !important;
  font-weight: 760 !important;
  line-height: 1.35 !important;
}

.pdp-pillars,
.pdp-flow-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
}

.pdp-pillar,
.flow-card {
  min-height: 250px !important;
  padding: clamp(22px, 2.8vw, 32px) !important;
  border: 1px solid rgba(12, 20, 30, 0.1) !important;
  border-radius: 8px !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.9), rgba(243, 247, 250, 0.82)) !important;
  box-shadow:
    0 20px 58px rgba(18, 28, 40, 0.07),
    inset 0 1px 0 rgba(255, 255, 255, 0.94) !important;
}

.pdp-pillar span,
.flow-card span {
  display: inline-flex !important;
  width: 34px !important;
  height: 34px !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: clamp(32px, 4vw, 52px) !important;
  border: 1px solid rgba(82, 107, 121, 0.2) !important;
  border-radius: 50% !important;
  color: var(--premium-accent) !important;
  font-size: 0.72rem !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
  background: rgba(255, 255, 255, 0.72) !important;
}

.pdp-pillar h3,
.flow-card h3 {
  margin: 0 0 12px !important;
  color: var(--premium-ink) !important;
  font-size: clamp(1.12rem, 1.55vw, 1.48rem) !important;
  line-height: 1.12 !important;
  letter-spacing: 0 !important;
}

.pdp-pillar p,
.flow-card p {
  margin: 0 !important;
  color: rgba(8, 11, 16, 0.62) !important;
  font-size: 0.95rem !important;
  line-height: 1.58 !important;
}

.pdp-split-section {
  padding-top: clamp(86px, 9vw, 138px) !important;
  padding-bottom: clamp(86px, 9vw, 138px) !important;
  background:
    radial-gradient(ellipse at 74% 42%, rgba(255, 255, 255, 0.9), transparent 42%),
    linear-gradient(135deg, #edf3f6 0%, #dce6ec 100%) !important;
}

.pdp-split-section .detail-grid {
  grid-template-columns: minmax(0, 0.82fr) minmax(440px, 1.18fr) !important;
  gap: clamp(34px, 6vw, 92px) !important;
}

.pdp-split-section .detail-copy h2 {
  max-width: 620px !important;
  font-size: clamp(2.7rem, 5.2vw, 6.2rem) !important;
  line-height: 0.94 !important;
}

.pdp-structure-visual {
  min-height: clamp(420px, 50vw, 620px) !important;
  display: grid !important;
  place-items: center !important;
  padding: clamp(18px, 3vw, 38px) !important;
  border-radius: 8px !important;
  background:
    radial-gradient(ellipse at 54% 58%, rgba(255, 255, 255, 0.92), transparent 54%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.76), rgba(235, 242, 246, 0.72)) !important;
}

.pdp-structure-visual img {
  width: min(100%, 760px) !important;
  max-height: 560px !important;
  object-fit: contain !important;
  object-position: center !important;
}

.pdp-flow-section {
  background:
    radial-gradient(ellipse at 16% 12%, rgba(255, 255, 255, 0.9), transparent 34%),
    linear-gradient(180deg, #f8fafb 0%, #eef3f6 100%) !important;
}

.flow-card {
  min-height: 230px !important;
}

.pdp-spec-section {
  background:
    radial-gradient(ellipse at 80% 12%, rgba(255, 255, 255, 0.88), transparent 34%),
    linear-gradient(180deg, #fbfcfd 0%, #edf2f6 100%) !important;
}

.pdp-spec-section .spec-grid {
  align-items: start !important;
}

.pdp-spec-section .spec-card,
.pdp-spec-section .included-card,
.pdp-spec-section .support-card {
  min-height: 100% !important;
}

body .final-shop {
  display: none !important;
}

@media (max-width: 980px) {
  .pdp-metric-strip,
  .pdp-pillars,
  .pdp-flow-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .pdp-split-section .detail-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 760px) {
  .reveal,
  .reveal.visible,
  .cinematic-ready .reveal,
  .cinematic-ready .reveal.visible {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
    transition: none !important;
  }

  .cinematic-ready .hero-copy,
  .cinematic-ready .hero-stage,
  .cinematic-ready .finale-copy,
  .cinematic-ready .finale-product,
  .product-motion-ready .media-stage,
  .product-motion-ready .main-product,
  .product-motion-ready .thumb,
  .product-motion-ready .buy-panel {
    transform: none !important;
    transition-duration: 140ms !important;
    will-change: auto !important;
  }

  .hero .ocean-canvas,
  .finale .ocean-canvas {
    display: none !important;
  }

  .pdp-story,
  .pdp-flow-section,
  .pdp-spec-section {
    padding-top: 54px !important;
    padding-bottom: 58px !important;
  }

  .pdp-metric-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    margin-top: 26px !important;
  }

  .pdp-metric-strip div {
    min-height: 108px !important;
    padding: 18px !important;
  }

  .pdp-metric-strip strong {
    font-size: clamp(1.36rem, 8vw, 2.15rem) !important;
  }

  .pdp-metric-strip span {
    max-width: none !important;
    font-size: 0.78rem !important;
  }

  .pdp-pillars,
  .pdp-flow-grid {
    grid-template-columns: 1fr !important;
  }

  .pdp-pillar,
  .flow-card {
    min-height: 0 !important;
  }

  .pdp-pillar span,
  .flow-card span {
    margin-bottom: 26px !important;
  }

  .pdp-split-section {
    padding-top: 58px !important;
    padding-bottom: 58px !important;
  }

  .pdp-structure-visual {
    min-height: 300px !important;
    padding: 14px !important;
  }

  .pdp-structure-visual img {
    max-height: 320px !important;
  }
}

/* Final mobile QA pass: keep the product visible and the PDP gallery usable. */
@media (max-width: 760px) {
  .hero-grid {
    padding-top: 66px !important;
    gap: 16px !important;
  }

  .hero-stage {
    min-height: 340px !important;
  }

  .hero-product {
    width: min(60vw, 228px) !important;
    max-height: 320px !important;
  }

  .hero-stage-price {
    bottom: -14px !important;
  }

  .hero-copy {
    margin-top: 2px !important;
  }

  .hero h1 {
    font-size: clamp(2.75rem, 12.7vw, 3.24rem) !important;
    line-height: 0.96 !important;
  }

  .hero p {
    margin-top: 14px !important;
    font-size: 0.98rem !important;
    line-height: 1.58 !important;
  }

  .hero-actions {
    margin-top: 18px !important;
  }

  .shop-hero {
    padding-top: 66px !important;
  }

  .breadcrumb {
    padding-top: 10px !important;
    font-size: 0.76rem !important;
  }

  .shop-grid {
    gap: 16px !important;
    padding-top: 14px !important;
  }

  .gallery-panel {
    position: relative !important;
    top: auto !important;
    padding: 12px !important;
    border-radius: 18px !important;
  }

  .media-stage {
    display: grid !important;
    min-height: 330px !important;
    border-radius: 18px !important;
  }

  .main-product {
    width: min(56vw, 230px) !important;
    max-height: 305px !important;
  }

  .thumbs {
    display: flex !important;
    gap: 8px !important;
    margin-top: 10px !important;
    padding: 0 2px 2px !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
  }

  .thumbs::-webkit-scrollbar {
    display: none !important;
  }

  .thumb {
    flex: 0 0 72px !important;
    min-width: 72px !important;
    min-height: 72px !important;
    padding: 7px !important;
    border-radius: 14px !important;
    scroll-snap-align: start !important;
  }

  .thumb img {
    width: 100% !important;
    height: 56px !important;
    object-fit: contain !important;
  }

  .buy-panel {
    margin-top: 4px !important;
  }

  .product-title {
    font-size: clamp(2.55rem, 12vw, 3.25rem) !important;
    line-height: 0.94 !important;
  }

  .purchase-line {
    gap: 10px !important;
  }

  .quick-spec {
    min-height: 86px !important;
    padding: 14px !important;
  }
}

.performance h2 {
  color: var(--premium-ink) !important;
}

/* PDP conversion polish: tighter purchase panel, clearer details, mobile sticky order. */
.shop-hero {
  min-height: auto !important;
  padding-top: 58px !important;
  padding-bottom: 54px !important;
}

.shop-grid {
  grid-template-columns: minmax(0, 1.04fr) minmax(390px, 0.86fr) !important;
  gap: clamp(24px, 4vw, 58px) !important;
}

.gallery-panel {
  top: 92px !important;
}

.buy-panel {
  padding: clamp(22px, 2.5vw, 30px) !important;
}

.product-title {
  font-size: clamp(2.35rem, 4.25vw, 4.25rem) !important;
  line-height: 0.94 !important;
  letter-spacing: 0 !important;
}

.product-subtitle {
  margin-top: 14px !important;
  font-size: 0.98rem !important;
  line-height: 1.56 !important;
}

.rating-row {
  margin-top: 14px !important;
  flex-wrap: wrap !important;
}

.purchase-line {
  margin-top: 20px !important;
  padding: 16px 0 !important;
  align-items: center !important;
}

.price {
  font-size: clamp(2.9rem, 4.8vw, 4rem) !important;
}

.purchase-notes {
  align-content: center !important;
}

.quantity-row,
.actions {
  margin-top: 18px !important;
}

.trust-row {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
  margin-top: 12px !important;
}

.trust-row div {
  min-height: 54px !important;
  padding: 11px 8px !important;
  display: grid !important;
  place-items: center !important;
  text-align: center !important;
}

.quick-specs {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 8px !important;
  margin-top: 16px !important;
}

.quick-spec {
  min-height: 82px !important;
  padding: 13px !important;
}

.quick-spec strong {
  font-size: 0.92rem !important;
}

.accordion {
  margin-top: 18px !important;
}

.pdp-story .section-head p,
.pdp-flow-section .section-head p {
  max-width: 640px !important;
}

.pdp-metric-strip {
  gap: 10px !important;
}

.pdp-metric-strip div,
.pdp-pillar,
.flow-card {
  border-radius: 8px !important;
}

.pdp-pillar,
.flow-card {
  min-height: 238px !important;
  background: rgba(255, 255, 255, 0.84) !important;
  border: 1px solid rgba(12, 20, 30, 0.09) !important;
  box-shadow: 0 18px 52px rgba(18, 28, 40, 0.07) !important;
}

.pdp-pillar span,
.flow-card span {
  color: rgba(8, 11, 16, 0.36) !important;
}

.pdp-pillar h3,
.flow-card h3 {
  color: var(--premium-ink) !important;
}

.pdp-pillar p,
.flow-card p {
  color: rgba(8, 11, 16, 0.62) !important;
}

.pdp-structure-visual img {
  width: min(96%, 640px) !important;
  max-height: 520px !important;
  object-fit: contain !important;
}

.mobile-buy-bar {
  display: none;
}

@media (max-width: 760px) {
  body.product-order-page {
    padding-bottom: 84px !important;
  }

  .shop-hero {
    min-height: auto !important;
    padding-top: 46px !important;
    padding-bottom: 42px !important;
  }

  .shop-hero .breadcrumb {
    display: none !important;
  }

  .shop-grid {
    grid-template-columns: 1fr !important;
    padding-top: 4px !important;
    gap: 14px !important;
  }

  .gallery-panel {
    order: 1 !important;
    position: relative !important;
    top: auto !important;
    padding: 10px !important;
  }

  .buy-panel {
    order: 2 !important;
  }

  .media-stage {
    min-height: 292px !important;
  }

  .main-product {
    width: min(52vw, 210px) !important;
    max-height: 272px !important;
  }

  .thumb {
    flex-basis: 68px !important;
    min-width: 68px !important;
    min-height: 68px !important;
  }

  .thumb img {
    height: 52px !important;
  }

  .buy-panel {
    padding: 20px !important;
  }

  .product-title {
    font-size: clamp(2.08rem, 10vw, 2.72rem) !important;
    line-height: 0.96 !important;
  }

  .product-subtitle {
    font-size: 0.92rem !important;
    line-height: 1.5 !important;
  }

  .rating-row {
    font-size: 0.78rem !important;
    gap: 8px !important;
  }

  .purchase-line {
    margin-top: 16px !important;
    padding: 14px 0 !important;
  }

  .price {
    font-size: clamp(2.55rem, 12vw, 3.25rem) !important;
  }

  .purchase-notes {
    text-align: left !important;
    justify-content: start !important;
    font-size: 0.78rem !important;
  }

  .quantity-row,
  .actions {
    margin-top: 16px !important;
  }

  .quick-specs {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    margin-top: 14px !important;
  }

  .quick-spec {
    min-height: 74px !important;
    padding: 12px !important;
  }

  .trust-row {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 6px !important;
  }

  .trust-row div {
    min-height: 48px !important;
    padding: 9px 6px !important;
    font-size: 0.72rem !important;
  }

  .pdp-metric-strip {
    grid-template-columns: 1fr !important;
  }

  .pdp-metric-strip div {
    min-height: 92px !important;
  }

  .pdp-pillar,
  .flow-card {
    min-height: 0 !important;
  }

  .mobile-buy-bar {
    position: fixed !important;
    left: 12px !important;
    right: 12px !important;
    bottom: 12px !important;
    z-index: 140 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 14px !important;
    min-height: 64px !important;
    padding: 10px 12px 10px 16px !important;
    border: 1px solid rgba(12, 20, 30, 0.12) !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.94) !important;
    box-shadow: 0 20px 52px rgba(18, 28, 40, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.9) !important;
    backdrop-filter: blur(18px) saturate(1.15) !important;
    -webkit-backdrop-filter: blur(18px) saturate(1.15) !important;
  }

  .mobile-buy-bar div {
    display: grid !important;
    gap: 2px !important;
    color: var(--premium-ink) !important;
  }

  .mobile-buy-bar strong {
    font-size: 1.32rem !important;
    line-height: 1 !important;
    color: var(--premium-ink) !important;
  }

  .mobile-buy-bar span {
    color: rgba(8, 11, 16, 0.54) !important;
    font-size: 0.68rem !important;
    font-weight: 850 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
  }

  .mobile-buy-bar a,
  .mobile-buy-bar button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 116px !important;
    min-height: 44px !important;
    padding: 0 18px !important;
    border: 0 !important;
    border-radius: 999px !important;
    color: #fff !important;
    font-size: 0.88rem !important;
    font-weight: 900 !important;
    background: linear-gradient(135deg, #26313b, #070a0e) !important;
    box-shadow: 0 14px 34px rgba(8, 13, 18, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.22) !important;
    appearance: none !important;
    cursor: pointer !important;
  }
}

/* Product order page: cover-style product introduction with a cleaner PDP flow. */
.product-order-page {
  background: #f4f7f9 !important;
  color: var(--premium-ink) !important;
}

.product-order-page .order-cover {
  position: relative !important;
  overflow: hidden !important;
  padding: clamp(54px, 6vw, 86px) 0 clamp(46px, 5vw, 74px) !important;
  background:
    radial-gradient(ellipse at 72% 18%, rgba(255, 255, 255, 0.98), transparent 30%),
    radial-gradient(ellipse at 78% 64%, rgba(229, 28, 45, 0.08), transparent 35%),
    linear-gradient(135deg, #f8fafb 0%, #e8eff4 58%, #fdfefe 100%) !important;
}

.product-order-page .order-cover::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(115deg, transparent 0 44%, rgba(255, 255, 255, 0.72) 52%, transparent 64%),
    radial-gradient(ellipse at 22% 74%, rgba(255, 255, 255, 0.66), transparent 34%) !important;
  opacity: 0.74 !important;
  pointer-events: none !important;
}

.product-order-page .order-cover-grid {
  position: relative !important;
  z-index: 1 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 0.94fr) minmax(440px, 1.06fr) !important;
  gap: clamp(30px, 5vw, 72px) !important;
  align-items: center !important;
}

.product-order-page .order-breadcrumb {
  margin-bottom: 28px !important;
  color: rgba(8, 11, 16, 0.52) !important;
  font-size: 0.8rem !important;
  font-weight: 850 !important;
}

.product-order-page .order-breadcrumb a {
  color: rgba(8, 11, 16, 0.72) !important;
}

.product-order-page .order-copy {
  min-width: 0 !important;
}

.product-order-page .order-copy .eyebrow,
.product-order-page .order-story-copy .section-kicker,
.product-order-page .order-spec-card .section-kicker,
.product-order-page .order-product-intro .section-kicker {
  color: var(--premium-accent-dark) !important;
}

.product-order-page .order-copy h1 {
  max-width: 680px !important;
  margin: 18px 0 0 !important;
  color: var(--premium-ink) !important;
  font-size: clamp(3.4rem, 7.2vw, 7.45rem) !important;
  line-height: 0.9 !important;
  letter-spacing: 0 !important;
}

.product-order-page .order-lede {
  max-width: 620px !important;
  margin: 24px 0 0 !important;
  color: rgba(8, 11, 16, 0.62) !important;
  font-size: clamp(1rem, 1.3vw, 1.18rem) !important;
  font-weight: 720 !important;
  line-height: 1.58 !important;
}

.product-order-page .order-buy-card {
  width: min(100%, 620px) !important;
  margin-top: 30px !important;
  padding: clamp(18px, 2vw, 24px) !important;
  border: 1px solid rgba(12, 20, 30, 0.1) !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, 0.82) !important;
  box-shadow: 0 24px 72px rgba(18, 28, 40, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.92) !important;
  backdrop-filter: blur(18px) saturate(1.12) !important;
  -webkit-backdrop-filter: blur(18px) saturate(1.12) !important;
}

.product-order-page .order-price {
  display: flex !important;
  align-items: end !important;
  justify-content: space-between !important;
  gap: 18px !important;
  padding-bottom: 16px !important;
  border-bottom: 1px solid rgba(12, 20, 30, 0.09) !important;
}

.product-order-page .order-price strong {
  color: var(--premium-ink) !important;
  font-size: clamp(3rem, 5vw, 4.8rem) !important;
  line-height: 0.9 !important;
  letter-spacing: 0 !important;
  font-weight: 950 !important;
}

.product-order-page .order-price span {
  color: rgba(8, 11, 16, 0.55) !important;
  font-size: 0.78rem !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

.product-order-page .order-buy-card .quantity-row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin-top: 18px !important;
}

.product-order-page .order-buy-card .actions {
  display: grid !important;
  grid-template-columns: 1.2fr 0.8fr !important;
  gap: 10px !important;
  margin-top: 16px !important;
}

.product-order-page .order-support {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
  margin-top: 14px !important;
}

.product-order-page .order-support span {
  display: grid !important;
  min-height: 46px !important;
  place-items: center !important;
  padding: 10px !important;
  color: rgba(8, 11, 16, 0.58) !important;
  font-size: 0.78rem !important;
  font-weight: 850 !important;
  text-align: center !important;
  border: 1px solid rgba(12, 20, 30, 0.08) !important;
  border-radius: 8px !important;
  background: rgba(247, 250, 252, 0.84) !important;
}

.product-order-page .order-showcase {
  min-width: 0 !important;
}

.product-order-page .order-stage {
  position: relative !important;
  min-height: clamp(590px, 66vw, 760px) !important;
  border: 1px solid rgba(255, 255, 255, 0.76) !important;
  border-radius: 8px !important;
  background:
    radial-gradient(ellipse at 50% 42%, rgba(255, 255, 255, 0.98), transparent 34%),
    radial-gradient(ellipse at 50% 72%, rgba(71, 86, 99, 0.15), transparent 54%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.72), rgba(232, 239, 244, 0.72)) !important;
  box-shadow: 0 42px 118px rgba(18, 28, 40, 0.14), inset 0 1px 0 rgba(255, 255, 255, 0.96) !important;
}

.product-order-page .order-stage .main-product {
  width: min(39vw, 390px) !important;
  max-height: 650px !important;
  object-fit: contain !important;
  filter: drop-shadow(0 24px 46px rgba(20, 30, 42, 0.16)) !important;
}

.product-order-page .stage-note {
  position: absolute !important;
  z-index: 4 !important;
  display: grid !important;
  gap: 2px !important;
  min-width: 132px !important;
  padding: 13px 15px !important;
  border: 1px solid rgba(12, 20, 30, 0.1) !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, 0.82) !important;
  box-shadow: 0 16px 44px rgba(18, 28, 40, 0.12) !important;
  backdrop-filter: blur(14px) saturate(1.1) !important;
  -webkit-backdrop-filter: blur(14px) saturate(1.1) !important;
}

.product-order-page .stage-note strong {
  color: var(--premium-ink) !important;
  font-size: 1rem !important;
  line-height: 1 !important;
}

.product-order-page .stage-note span {
  color: rgba(8, 11, 16, 0.56) !important;
  font-size: 0.68rem !important;
  font-weight: 850 !important;
  text-transform: uppercase !important;
}

.product-order-page .stage-note-a {
  left: 28px !important;
  top: 32px !important;
}

.product-order-page .stage-note-b {
  right: 28px !important;
  bottom: 32px !important;
}

.product-order-page .order-showcase .thumbs {
  margin-top: 14px !important;
}

.product-order-page .order-metrics,
.product-order-page .order-product-intro,
.product-order-page .order-spec-section {
  padding: clamp(62px, 8vw, 112px) 0 !important;
  background:
    radial-gradient(ellipse at 82% 8%, rgba(255, 255, 255, 0.88), transparent 30%),
    linear-gradient(180deg, #fbfcfd 0%, #f1f5f8 100%) !important;
}

.product-order-page .order-metrics {
  padding-top: clamp(38px, 5vw, 68px) !important;
  padding-bottom: clamp(38px, 5vw, 68px) !important;
}

.product-order-page .order-metric-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

.product-order-page .order-metric-grid div {
  min-height: 138px !important;
  padding: clamp(18px, 2vw, 24px) !important;
  display: grid !important;
  align-content: space-between !important;
  border: 1px solid rgba(12, 20, 30, 0.09) !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, 0.86) !important;
  box-shadow: 0 18px 52px rgba(18, 28, 40, 0.07) !important;
}

.product-order-page .order-metric-grid strong {
  color: var(--premium-ink) !important;
  font-size: clamp(2rem, 3.8vw, 4.2rem) !important;
  line-height: 0.9 !important;
  letter-spacing: 0 !important;
}

.product-order-page .order-metric-grid span {
  color: rgba(8, 11, 16, 0.56) !important;
  font-size: 0.76rem !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

.product-order-page .order-story {
  padding: clamp(72px, 9vw, 132px) 0 !important;
  background:
    linear-gradient(115deg, rgba(255, 255, 255, 0.84) 0 44%, rgba(242, 247, 250, 0.72) 44% 100%),
    #f7fafb !important;
}

.product-order-page .order-split {
  display: grid !important;
  grid-template-columns: minmax(0, 0.88fr) minmax(420px, 1.12fr) !important;
  gap: clamp(28px, 5vw, 72px) !important;
  align-items: center !important;
}

.product-order-page .order-story-copy h2,
.product-order-page .order-product-intro h2,
.product-order-page .order-spec-card h2,
.product-order-page .order-side-card h2 {
  margin: 14px 0 0 !important;
  color: var(--premium-ink) !important;
  font-size: clamp(2.4rem, 5vw, 5.7rem) !important;
  line-height: 0.96 !important;
  letter-spacing: 0 !important;
}

.product-order-page .order-story-copy p,
.product-order-page .order-product-intro .section-head p {
  max-width: 650px !important;
  color: rgba(8, 11, 16, 0.62) !important;
  font-size: 1.02rem !important;
  font-weight: 700 !important;
  line-height: 1.62 !important;
}

.product-order-page .order-detail-list {
  display: grid !important;
  gap: 10px !important;
  margin-top: 26px !important;
}

.product-order-page .order-detail-list div {
  display: grid !important;
  gap: 4px !important;
  padding: 18px !important;
  border: 1px solid rgba(12, 20, 30, 0.09) !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, 0.78) !important;
}

.product-order-page .order-detail-list strong {
  color: var(--premium-ink) !important;
  font-size: 1rem !important;
}

.product-order-page .order-detail-list span {
  color: rgba(8, 11, 16, 0.56) !important;
  font-size: 0.92rem !important;
}

.product-order-page .order-story-visual {
  display: grid !important;
  min-height: clamp(420px, 52vw, 610px) !important;
  place-items: center !important;
  padding: clamp(20px, 4vw, 48px) !important;
  border: 1px solid rgba(12, 20, 30, 0.08) !important;
  border-radius: 8px !important;
  background:
    radial-gradient(ellipse at 50% 46%, rgba(255, 255, 255, 0.96), transparent 36%),
    linear-gradient(180deg, #ffffff, #edf3f7) !important;
  box-shadow: 0 28px 82px rgba(18, 28, 40, 0.1) !important;
  overflow: hidden !important;
}

.product-order-page .order-story-visual img {
  width: min(100%, 680px) !important;
  max-height: 520px !important;
  object-fit: contain !important;
  mix-blend-mode: multiply !important;
}

.product-order-page .order-feature-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin-top: 34px !important;
}

.product-order-page .order-feature-grid article {
  min-height: 260px !important;
  padding: clamp(20px, 2.4vw, 30px) !important;
  display: grid !important;
  align-content: space-between !important;
  border: 1px solid rgba(12, 20, 30, 0.09) !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, 0.86) !important;
  box-shadow: 0 18px 52px rgba(18, 28, 40, 0.07) !important;
}

.product-order-page .order-feature-grid article span {
  color: rgba(229, 28, 45, 0.78) !important;
  font-size: 0.78rem !important;
  font-weight: 950 !important;
}

.product-order-page .order-feature-grid h3 {
  margin: 0 !important;
  color: var(--premium-ink) !important;
  font-size: clamp(1.35rem, 2vw, 2rem) !important;
  line-height: 1.06 !important;
}

.product-order-page .order-feature-grid p {
  margin: 0 !important;
  color: rgba(8, 11, 16, 0.6) !important;
  font-size: 0.94rem !important;
  font-weight: 680 !important;
  line-height: 1.5 !important;
}

.product-order-page .order-spec-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1.25fr) minmax(320px, 0.75fr) !important;
  gap: 18px !important;
  align-items: start !important;
}

.product-order-page .order-spec-card,
.product-order-page .order-side-card {
  padding: clamp(24px, 3vw, 38px) !important;
  border: 1px solid rgba(12, 20, 30, 0.09) !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, 0.86) !important;
  box-shadow: 0 22px 64px rgba(18, 28, 40, 0.08) !important;
}

.product-order-page .order-side-card {
  position: sticky !important;
  top: 96px !important;
}

.product-order-page .order-side-card h2 {
  font-size: clamp(1.8rem, 2.8vw, 3rem) !important;
}

@media (max-width: 980px) {
  .product-order-page .order-cover-grid,
  .product-order-page .order-split,
  .product-order-page .order-spec-layout {
    grid-template-columns: 1fr !important;
  }

  .product-order-page .order-showcase {
    order: -1 !important;
  }

  .product-order-page .order-metric-grid,
  .product-order-page .order-feature-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .product-order-page .order-side-card {
    position: relative !important;
    top: auto !important;
  }
}

@media (max-width: 760px) {
  .product-order-page .order-cover {
    padding-top: 36px !important;
    padding-bottom: 44px !important;
  }

  .product-order-page .order-cover-grid {
    gap: 18px !important;
  }

  .product-order-page .order-breadcrumb {
    display: none !important;
  }

  .product-order-page .order-stage {
    min-height: 360px !important;
  }

  .product-order-page .order-stage .main-product {
    width: min(53vw, 220px) !important;
    max-height: 320px !important;
  }

  .product-order-page .stage-note {
    min-width: 0 !important;
    padding: 10px 11px !important;
  }

  .product-order-page .stage-note strong {
    font-size: 0.85rem !important;
  }

  .product-order-page .stage-note span {
    font-size: 0.6rem !important;
  }

  .product-order-page .stage-note-a {
    left: 12px !important;
    top: 12px !important;
  }

  .product-order-page .stage-note-b {
    right: 12px !important;
    bottom: 12px !important;
  }

  .product-order-page .order-copy h1 {
    font-size: clamp(2.18rem, 10.6vw, 2.86rem) !important;
    line-height: 0.96 !important;
  }

  .product-order-page .order-lede {
    display: none !important;
  }

  .product-order-page .order-buy-card {
    display: none !important;
  }

  .product-order-page .order-price {
    align-items: start !important;
    display: grid !important;
    gap: 6px !important;
    padding: 0 !important;
    border-bottom: 0 !important;
  }

  .product-order-page .order-price strong {
    font-size: clamp(3rem, 14vw, 3.8rem) !important;
    color: var(--premium-ink) !important;
    line-height: 0.9 !important;
  }

  .product-order-page .order-price span {
    color: rgba(8, 11, 16, 0.56) !important;
    font-size: 0.72rem !important;
    font-weight: 900 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
  }

  .product-order-page .order-buy-card .quantity-row {
    display: none !important;
  }

  .product-order-page .order-buy-card .actions,
  .product-order-page .order-support {
    display: none !important;
  }

  .product-order-page .order-metrics,
  .product-order-page .order-story,
  .product-order-page .order-product-intro,
  .product-order-page .order-spec-section {
    padding-top: 54px !important;
    padding-bottom: 58px !important;
  }

  .product-order-page .order-metric-grid,
  .product-order-page .order-feature-grid {
    grid-template-columns: 1fr !important;
  }

  .product-order-page .order-metric-grid div {
    min-height: 104px !important;
  }

  .product-order-page .order-story-copy h2,
  .product-order-page .order-product-intro h2,
  .product-order-page .order-spec-card h2 {
    font-size: clamp(2.25rem, 10vw, 3.15rem) !important;
  }

  .product-order-page .order-story-visual {
    min-height: 300px !important;
    padding: 14px !important;
  }

  .product-order-page .order-story-visual img {
    max-height: 300px !important;
  }

  .product-order-page .order-feature-grid article {
    min-height: 0 !important;
    gap: 26px !important;
  }
}

/* Order page premium continuation: bring the PDP closer to the homepage rhythm. */
.product-order-page {
  --order-ink: #07090d;
  --order-muted: rgba(7, 9, 13, 0.58);
  --order-line: rgba(7, 9, 13, 0.09);
  --order-red: #ed1c2e;
}

.product-order-page .order-cover {
  min-height: calc(100svh - 72px) !important;
  display: grid !important;
  align-items: center !important;
  padding-top: clamp(42px, 5.2vw, 72px) !important;
  padding-bottom: clamp(34px, 4.6vw, 62px) !important;
  background:
    radial-gradient(ellipse at 70% 20%, rgba(255, 255, 255, 0.96), transparent 34%),
    radial-gradient(ellipse at 16% 76%, rgba(237, 28, 46, 0.06), transparent 32%),
    linear-gradient(135deg, #ffffff 0%, #eef4f8 52%, #f8fafb 100%) !important;
}

.product-order-page .order-cover::before {
  background:
    linear-gradient(112deg, transparent 0 38%, rgba(255, 255, 255, 0.74) 52%, transparent 66%),
    radial-gradient(ellipse at 54% 62%, rgba(153, 169, 181, 0.1), transparent 40%) !important;
}

.product-order-page .order-cover::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent, rgba(7, 9, 13, 0.12), transparent) !important;
}

.product-order-page .order-cover-grid {
  grid-template-columns: minmax(0, 0.88fr) minmax(500px, 1.12fr) !important;
  gap: clamp(36px, 6vw, 92px) !important;
}

.product-order-page .order-copy h1 {
  max-width: 720px !important;
  font-size: clamp(4rem, 7.8vw, 8.2rem) !important;
  line-height: 0.88 !important;
}

.product-order-page.locale-ja .order-copy h1 {
  font-size: clamp(3rem, 6.4vw, 6.3rem) !important;
  line-height: 1.02 !important;
}

.product-order-page .order-lede {
  max-width: 660px !important;
  color: var(--order-muted) !important;
}

.product-order-page .order-hero-points {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin-top: 22px !important;
}

.product-order-page .order-hero-points span {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 36px !important;
  padding: 0 13px !important;
  border: 1px solid rgba(7, 9, 13, 0.09) !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.68) !important;
  color: rgba(7, 9, 13, 0.62) !important;
  font-size: 0.76rem !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9) !important;
}

.product-order-page.locale-ja .order-hero-points span {
  text-transform: none !important;
}

.product-order-page .order-buy-card {
  border-radius: 18px !important;
  background: rgba(255, 255, 255, 0.92) !important;
  box-shadow: 0 30px 82px rgba(18, 28, 40, 0.13), inset 0 1px 0 rgba(255, 255, 255, 0.96) !important;
}

.product-order-page .order-stage {
  min-height: clamp(620px, 67vw, 790px) !important;
  overflow: hidden !important;
  border-radius: 22px !important;
  background:
    radial-gradient(ellipse at 50% 41%, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.72) 28%, rgba(219, 230, 238, 0.36) 54%, transparent 72%),
    radial-gradient(ellipse at 50% 78%, rgba(7, 9, 13, 0.18), transparent 35%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.68), rgba(224, 235, 243, 0.78)) !important;
}

.product-order-page .order-stage::before {
  content: "" !important;
  position: absolute !important;
  inset: 8% 24% auto !important;
  height: 58% !important;
  border-radius: 999px !important;
  background: radial-gradient(ellipse, rgba(255, 255, 255, 0.72), rgba(237, 28, 46, 0.055) 38%, transparent 70%) !important;
  pointer-events: none !important;
}

.product-order-page .order-stage::after {
  content: "" !important;
  position: absolute !important;
  left: 22% !important;
  right: 22% !important;
  bottom: 11% !important;
  height: 54px !important;
  border-radius: 50% !important;
  background: radial-gradient(ellipse, rgba(7, 9, 13, 0.18), rgba(7, 9, 13, 0.08) 42%, transparent 70%) !important;
  filter: blur(14px) !important;
  pointer-events: none !important;
}

.product-order-page .order-stage .main-product {
  position: relative !important;
  z-index: 3 !important;
  width: min(36vw, 365px) !important;
  max-height: 690px !important;
  filter: contrast(1.02) saturate(0.96) drop-shadow(0 42px 68px rgba(20, 30, 42, 0.24)) !important;
}

.product-order-page .stage-note {
  border-radius: 999px !important;
}

.product-order-page .thumbs {
  padding: 8px !important;
  border: 1px solid rgba(7, 9, 13, 0.08) !important;
  border-radius: 18px !important;
  background: rgba(255, 255, 255, 0.76) !important;
  box-shadow: 0 18px 44px rgba(18, 28, 40, 0.08) !important;
}

.product-order-page .order-metrics {
  background: #fff !important;
  border-top: 1px solid rgba(7, 9, 13, 0.08) !important;
  border-bottom: 1px solid rgba(7, 9, 13, 0.08) !important;
}

.product-order-page .order-metric-grid {
  gap: 0 !important;
  border-left: 1px solid rgba(7, 9, 13, 0.08) !important;
}

.product-order-page .order-metric-grid div {
  min-height: 154px !important;
  border: 0 !important;
  border-right: 1px solid rgba(7, 9, 13, 0.08) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.product-order-page .order-metric-grid strong {
  font-size: clamp(2.2rem, 3.5vw, 4.6rem) !important;
}

.product-order-page .order-story {
  background:
    radial-gradient(ellipse at 88% 14%, rgba(255, 255, 255, 0.96), transparent 30%),
    linear-gradient(180deg, #f7fafb 0%, #edf3f7 100%) !important;
}

.product-order-page .order-story-visual,
.product-order-page .order-spec-card,
.product-order-page .order-side-card,
.product-order-page .order-feature-grid article {
  border-radius: 22px !important;
}

.product-order-page .order-story-visual {
  min-height: clamp(460px, 52vw, 640px) !important;
  background:
    radial-gradient(ellipse at 50% 48%, rgba(255, 255, 255, 1), transparent 42%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(229, 237, 243, 0.86)) !important;
}

.product-order-page .order-product-intro .section-head {
  max-width: 960px !important;
}

.product-order-page .order-feature-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
}

.product-order-page .order-feature-grid article {
  min-height: 232px !important;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.96), rgba(246, 249, 251, 0.86)) !important;
}

.product-order-page .order-feature-grid article span {
  color: var(--order-red) !important;
}

.product-order-page .order-feature-grid h3 {
  max-width: 440px !important;
  font-size: clamp(1.8rem, 3.2vw, 3.4rem) !important;
}

.product-order-page .order-spec-layout {
  gap: 22px !important;
}

.product-order-page .spec-row {
  min-height: 48px !important;
}

.product-order-page .included-list {
  display: grid !important;
  gap: 10px !important;
}

.product-order-page .included-list div {
  border: 1px solid rgba(7, 9, 13, 0.07) !important;
  border-radius: 14px !important;
  background: rgba(247, 250, 252, 0.78) !important;
}

@media (max-width: 980px) {
  .product-order-page .order-cover-grid {
    grid-template-columns: 1fr !important;
  }

  .product-order-page .order-stage .main-product {
    width: min(48vw, 350px) !important;
  }
}

@media (max-width: 760px) {
  .product-order-page .order-cover {
    min-height: auto !important;
    padding-top: 22px !important;
    padding-bottom: 40px !important;
  }

  .product-order-page .order-stage {
    min-height: 386px !important;
    border-radius: 18px !important;
  }

  .product-order-page .order-stage::before {
    inset: 8% 20% auto !important;
    height: 54% !important;
  }

  .product-order-page .order-stage .main-product {
    width: min(54vw, 218px) !important;
    max-height: 338px !important;
  }

  .product-order-page .order-copy h1 {
    font-size: clamp(2.38rem, 11vw, 3.16rem) !important;
    line-height: 0.94 !important;
  }

  .product-order-page.locale-ja .order-copy h1 {
    font-size: clamp(2.12rem, 9.5vw, 2.92rem) !important;
    line-height: 1.06 !important;
  }

  .product-order-page .order-hero-points {
    display: none !important;
  }

  .product-order-page .order-metric-grid {
    border-left: 0 !important;
    gap: 8px !important;
  }

  .product-order-page .order-metric-grid div {
    min-height: 96px !important;
    border: 1px solid rgba(7, 9, 13, 0.08) !important;
    border-radius: 14px !important;
    background: rgba(255, 255, 255, 0.74) !important;
  }

  .product-order-page .order-feature-grid {
    grid-template-columns: 1fr !important;
  }

  .product-order-page .order-feature-grid article {
    min-height: 0 !important;
    border-radius: 18px !important;
  }

  .product-order-page .order-feature-grid h3 {
    font-size: clamp(1.55rem, 7vw, 2.2rem) !important;
  }

  .product-order-page .order-story-visual,
  .product-order-page .order-spec-card,
  .product-order-page .order-side-card {
    border-radius: 18px !important;
  }
}

/* Order page visual detail pass: mobile price, image-led cards, and icon language. */
.product-order-page .mobile-hero-price {
  display: none !important;
}

.product-order-page .order-visual-details {
  padding: clamp(72px, 9vw, 132px) 0 !important;
  background:
    radial-gradient(ellipse at 12% 20%, rgba(237, 28, 46, 0.055), transparent 30%),
    radial-gradient(ellipse at 86% 8%, rgba(255, 255, 255, 0.96), transparent 32%),
    linear-gradient(180deg, #ffffff 0%, #eef4f8 100%) !important;
}

.product-order-page .order-visual-details .section-head {
  max-width: 980px !important;
  margin-bottom: 30px !important;
}

.product-order-page .visual-card-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.22fr) minmax(260px, 0.78fr) !important;
  gap: 16px !important;
}

.product-order-page .visual-card {
  position: relative !important;
  min-height: 430px !important;
  overflow: hidden !important;
  border: 1px solid rgba(7, 9, 13, 0.08) !important;
  border-radius: 22px !important;
  background:
    radial-gradient(ellipse at 50% 30%, rgba(255, 255, 255, 0.98), transparent 44%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(231, 239, 245, 0.86)) !important;
  box-shadow: 0 28px 82px rgba(18, 28, 40, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.88) !important;
}

.product-order-page .visual-card-wide {
  grid-row: span 2 !important;
  min-height: 876px !important;
}

.product-order-page .visual-card img {
  width: 100% !important;
  height: 100% !important;
  min-height: inherit !important;
  object-fit: cover !important;
  object-position: center !important;
  filter: saturate(0.94) contrast(1.02) !important;
}

.product-order-page .visual-card-wide img {
  object-position: center 45% !important;
}

.product-order-page .visual-card:nth-child(2) img {
  object-fit: contain !important;
  width: 92% !important;
  height: 66% !important;
  min-height: 0 !important;
  margin: 32px auto 0 !important;
  mix-blend-mode: multiply !important;
}

.product-order-page .visual-card::after {
  content: "" !important;
  position: absolute !important;
  inset: auto 0 0 !important;
  height: 46% !important;
  background: linear-gradient(180deg, transparent, rgba(255, 255, 255, 0.94) 62%, rgba(255, 255, 255, 0.98)) !important;
  pointer-events: none !important;
}

.product-order-page .visual-card-copy {
  position: absolute !important;
  z-index: 2 !important;
  left: clamp(18px, 2.4vw, 30px) !important;
  right: clamp(18px, 2.4vw, 30px) !important;
  bottom: clamp(18px, 2.4vw, 30px) !important;
  display: grid !important;
  gap: 10px !important;
}

.product-order-page .visual-icon {
  display: grid !important;
  place-items: center !important;
  width: 46px !important;
  height: 46px !important;
  border: 1px solid rgba(237, 28, 46, 0.18) !important;
  border-radius: 999px !important;
  color: var(--order-red) !important;
  background: rgba(255, 255, 255, 0.82) !important;
  box-shadow: 0 14px 34px rgba(18, 28, 40, 0.08) !important;
}

.product-order-page .visual-icon svg {
  width: 22px !important;
  height: 22px !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.9 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

.product-order-page .visual-card h3 {
  margin: 0 !important;
  max-width: 620px !important;
  color: var(--order-ink) !important;
  font-size: clamp(1.72rem, 3vw, 3.15rem) !important;
  line-height: 1 !important;
  font-weight: 950 !important;
}

.product-order-page .visual-card p {
  max-width: 560px !important;
  margin: 0 !important;
  color: rgba(7, 9, 13, 0.6) !important;
  font-size: 0.98rem !important;
  font-weight: 720 !important;
  line-height: 1.52 !important;
}

@media (max-width: 760px) {
  .product-order-page .mobile-hero-price {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin-top: 18px !important;
    min-height: 72px !important;
    padding: 12px 12px 12px 16px !important;
    border: 1px solid rgba(7, 9, 13, 0.1) !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.92) !important;
    box-shadow: 0 18px 46px rgba(18, 28, 40, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.95) !important;
  }

  .product-order-page .mobile-hero-price div {
    display: grid !important;
    gap: 2px !important;
  }

  .product-order-page .mobile-hero-price strong {
    color: var(--order-ink) !important;
    font-size: 1.62rem !important;
    line-height: 1 !important;
    font-weight: 950 !important;
  }

  .product-order-page .mobile-hero-price span {
    color: rgba(7, 9, 13, 0.52) !important;
    font-size: 0.68rem !important;
    font-weight: 900 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
  }

  .product-order-page.locale-ja .mobile-hero-price span {
    letter-spacing: 0 !important;
    text-transform: none !important;
  }

  .product-order-page .mobile-hero-price button {
    min-width: 112px !important;
    min-height: 48px !important;
    border: 0 !important;
    border-radius: 999px !important;
    color: #fff !important;
    background: linear-gradient(135deg, #26313b, #070a0e) !important;
    font-size: 0.92rem !important;
    font-weight: 950 !important;
    box-shadow: 0 14px 34px rgba(8, 13, 18, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.22) !important;
  }

  .product-order-page .mobile-buy-bar {
    transform: translateY(calc(100% + 28px)) !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: transform 260ms ease, opacity 220ms ease !important;
  }

  .product-order-page.mobile-buy-visible .mobile-buy-bar {
    transform: translateY(0) !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  .product-order-page .order-visual-details {
    padding-top: 58px !important;
    padding-bottom: 58px !important;
  }

  .product-order-page .order-visual-details .section-head {
    margin-bottom: 20px !important;
  }

  .product-order-page .visual-card-grid {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .product-order-page .visual-card,
  .product-order-page .visual-card-wide {
    min-height: 420px !important;
    grid-row: auto !important;
    border-radius: 18px !important;
  }

  .product-order-page .visual-card-wide {
    min-height: 360px !important;
  }

  .product-order-page .visual-card-wide img {
    object-fit: cover !important;
    object-position: center !important;
  }

  .product-order-page .visual-card:nth-child(2) img {
    width: 92% !important;
    height: 62% !important;
  }

  .product-order-page .visual-card h3 {
    font-size: clamp(1.55rem, 7.2vw, 2.2rem) !important;
  }

  .product-order-page .visual-icon {
    width: 42px !important;
    height: 42px !important;
  }
}

/* Order page dark product moment: mirrors the homepage premium material section. */
.product-order-page .order-support span {
  position: relative !important;
  align-content: center !important;
  gap: 4px !important;
  padding-top: 34px !important;
}

.product-order-page .order-support span::before {
  content: "" !important;
  position: absolute !important;
  top: 10px !important;
  left: 50% !important;
  width: 18px !important;
  height: 18px !important;
  transform: translateX(-50%) !important;
  border: 1.7px solid rgba(237, 28, 46, 0.72) !important;
  border-radius: 999px !important;
}

.product-order-page .order-support span:nth-child(1)::after {
  content: "" !important;
  position: absolute !important;
  top: 15px !important;
  left: 50% !important;
  width: 8px !important;
  height: 4px !important;
  transform: translateX(-50%) rotate(-45deg) !important;
  border-left: 2px solid rgba(237, 28, 46, 0.82) !important;
  border-bottom: 2px solid rgba(237, 28, 46, 0.82) !important;
}

.product-order-page .order-support span:nth-child(2)::before {
  border-radius: 4px !important;
}

.product-order-page .order-support span:nth-child(3)::before {
  border-radius: 5px !important;
}

.product-order-page .order-support span:nth-child(3)::after {
  content: "" !important;
  position: absolute !important;
  top: 15px !important;
  left: calc(50% - 4px) !important;
  width: 8px !important;
  height: 2px !important;
  background: rgba(237, 28, 46, 0.82) !important;
  box-shadow: 0 4px 0 rgba(237, 28, 46, 0.82) !important;
}

.product-order-page .order-dark-feature {
  position: relative !important;
  overflow: hidden !important;
  padding: clamp(78px, 9vw, 136px) 0 !important;
  color: #fff !important;
  background:
    radial-gradient(ellipse at 28% 32%, rgba(255, 255, 255, 0.1), transparent 34%),
    radial-gradient(ellipse at 76% 22%, rgba(237, 28, 46, 0.1), transparent 30%),
    linear-gradient(135deg, #06080c 0%, #111820 58%, #040508 100%) !important;
}

.product-order-page .order-dark-feature::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(105deg, transparent 0 42%, rgba(255, 255, 255, 0.075) 50%, transparent 62%),
    repeating-linear-gradient(115deg, transparent 0 82px, rgba(255, 255, 255, 0.018) 83px 84px) !important;
  pointer-events: none !important;
}

.product-order-page .order-dark-grid {
  position: relative !important;
  z-index: 1 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(360px, 0.95fr) !important;
  gap: clamp(30px, 5vw, 74px) !important;
  align-items: center !important;
}

.product-order-page .order-dark-media {
  position: relative !important;
  min-height: clamp(520px, 54vw, 720px) !important;
  display: grid !important;
  place-items: center !important;
  overflow: hidden !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  border-radius: 24px !important;
  background:
    radial-gradient(ellipse at 50% 34%, rgba(255, 255, 255, 0.22), transparent 38%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.07), rgba(255, 255, 255, 0.025)) !important;
  box-shadow: 0 42px 100px rgba(0, 0, 0, 0.34), inset 0 1px 0 rgba(255, 255, 255, 0.1) !important;
}

.product-order-page .order-dark-media::after {
  content: "" !important;
  position: absolute !important;
  left: 16% !important;
  right: 16% !important;
  bottom: 12% !important;
  height: 64px !important;
  border-radius: 50% !important;
  background: radial-gradient(ellipse, rgba(255, 255, 255, 0.24), rgba(237, 28, 46, 0.12) 42%, transparent 72%) !important;
  filter: blur(16px) !important;
}

.product-order-page .order-dark-media img {
  position: relative !important;
  z-index: 1 !important;
  width: min(92%, 760px) !important;
  height: auto !important;
  max-height: 620px !important;
  object-fit: contain !important;
  border-radius: 18px !important;
  filter: saturate(0.9) contrast(1.04) drop-shadow(0 34px 70px rgba(0, 0, 0, 0.45)) !important;
}

.product-order-page .order-dark-copy .section-kicker {
  color: #ff4054 !important;
}

.product-order-page .order-dark-copy h2 {
  margin: 14px 0 0 !important;
  max-width: 660px !important;
  color: #fff !important;
  font-size: clamp(3rem, 6.6vw, 7rem) !important;
  line-height: 0.9 !important;
  font-weight: 950 !important;
}

.product-order-page.locale-ja .order-dark-copy h2 {
  font-size: clamp(2.4rem, 5.2vw, 5.4rem) !important;
  line-height: 1.04 !important;
}

.product-order-page .order-dark-copy > p {
  max-width: 590px !important;
  margin: 24px 0 0 !important;
  color: rgba(255, 255, 255, 0.7) !important;
  font-size: clamp(1rem, 1.25vw, 1.15rem) !important;
  font-weight: 700 !important;
  line-height: 1.62 !important;
}

.product-order-page .dark-icon-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin-top: 34px !important;
}

.product-order-page .dark-icon-grid article {
  min-height: 178px !important;
  padding: 20px !important;
  display: grid !important;
  align-content: space-between !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  border-radius: 18px !important;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.035)) !important;
}

.product-order-page .dark-icon-grid span {
  display: grid !important;
  place-items: center !important;
  width: 42px !important;
  height: 42px !important;
  color: #ff4054 !important;
  border: 1px solid rgba(237, 28, 46, 0.26) !important;
  border-radius: 999px !important;
  background: rgba(237, 28, 46, 0.08) !important;
}

.product-order-page .dark-icon-grid svg {
  width: 21px !important;
  height: 21px !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.9 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

.product-order-page .dark-icon-grid strong {
  color: #fff !important;
  font-size: 1.02rem !important;
  line-height: 1.15 !important;
}

.product-order-page .dark-icon-grid p {
  margin: 8px 0 0 !important;
  color: rgba(255, 255, 255, 0.6) !important;
  font-size: 0.86rem !important;
  font-weight: 680 !important;
  line-height: 1.45 !important;
}

@media (max-width: 980px) {
  .product-order-page .order-dark-grid,
  .product-order-page .dark-icon-grid {
    grid-template-columns: 1fr !important;
  }

  .product-order-page .order-dark-media {
    order: 2 !important;
  }
}

@media (max-width: 760px) {
  .product-order-page .order-dark-feature {
    padding-top: 62px !important;
    padding-bottom: 64px !important;
  }

  .product-order-page .order-dark-grid {
    gap: 22px !important;
  }

  .product-order-page .order-dark-copy h2 {
    font-size: clamp(2.35rem, 11vw, 3.3rem) !important;
    line-height: 0.96 !important;
  }

  .product-order-page.locale-ja .order-dark-copy h2 {
    font-size: clamp(2.04rem, 9.4vw, 2.9rem) !important;
    line-height: 1.08 !important;
  }

  .product-order-page .order-dark-media {
    min-height: 350px !important;
    border-radius: 18px !important;
  }

  .product-order-page .order-dark-media img {
    width: 118% !important;
    max-width: none !important;
    max-height: 340px !important;
  }

  .product-order-page .dark-icon-grid article {
    min-height: 0 !important;
    gap: 18px !important;
    border-radius: 16px !important;
  }

  .product-order-page .order-support span {
    padding-top: 10px !important;
  }

  .product-order-page .order-support span::before,
  .product-order-page .order-support span::after {
    display: none !important;
  }
}

/* Order page Apple-style PDP pass: product gallery left, purchase configuration right. */
.product-order-page {
  background: #f5f5f7 !important;
}

.product-order-page .order-cover {
  min-height: auto !important;
  display: block !important;
  padding-top: clamp(34px, 4.2vw, 62px) !important;
  padding-bottom: clamp(46px, 6vw, 82px) !important;
  background:
    linear-gradient(180deg, #f8f8fa 0%, #f5f5f7 52%, #ffffff 100%) !important;
}

.product-order-page .order-cover::before,
.product-order-page .order-cover::after {
  display: none !important;
}

.product-order-page .order-cover-grid {
  grid-template-columns: minmax(500px, 1.12fr) minmax(420px, 0.88fr) !important;
  gap: clamp(28px, 4.8vw, 68px) !important;
  align-items: start !important;
}

.product-order-page .order-showcase {
  position: sticky !important;
  top: 88px !important;
  order: 0 !important;
}

.product-order-page .order-copy {
  padding-top: clamp(6px, 1.2vw, 18px) !important;
}

.product-order-page .order-breadcrumb {
  margin-bottom: 18px !important;
}

.product-order-page .order-copy h1 {
  max-width: 620px !important;
  margin-top: 14px !important;
  font-size: clamp(3rem, 5.2vw, 5.8rem) !important;
  line-height: 1 !important;
}

.product-order-page.locale-ja .order-copy h1 {
  max-width: 620px !important;
  font-size: clamp(2.45rem, 4.5vw, 4.9rem) !important;
  line-height: 1.08 !important;
}

.product-order-page .order-lede {
  max-width: 590px !important;
  margin-top: 18px !important;
  color: rgba(7, 9, 13, 0.66) !important;
  font-size: clamp(1rem, 1.12vw, 1.12rem) !important;
  line-height: 1.6 !important;
}

.product-order-page .order-stage {
  min-height: clamp(600px, 62vw, 760px) !important;
  border: 1px solid rgba(7, 9, 13, 0.06) !important;
  border-radius: 28px !important;
  background:
    radial-gradient(ellipse at 50% 44%, rgba(255, 255, 255, 1), rgba(245, 247, 249, 0.92) 46%, rgba(226, 232, 238, 0.54) 72%),
    linear-gradient(180deg, #ffffff 0%, #edf2f6 100%) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9), 0 28px 78px rgba(23, 34, 48, 0.09) !important;
}

.product-order-page .order-stage::before {
  display: none !important;
}

.product-order-page .order-stage::after {
  left: 27% !important;
  right: 27% !important;
  bottom: 10% !important;
  height: 42px !important;
  background: radial-gradient(ellipse, rgba(18, 27, 38, 0.15), rgba(18, 27, 38, 0.055) 44%, transparent 72%) !important;
  filter: blur(12px) !important;
}

.product-order-page .order-stage .main-product {
  width: min(31vw, 330px) !important;
  max-height: 640px !important;
  filter: contrast(1.02) saturate(0.96) drop-shadow(0 38px 58px rgba(20, 30, 42, 0.22)) !important;
}

.product-order-page .stage-note {
  border-radius: 16px !important;
  background: rgba(255, 255, 255, 0.74) !important;
  box-shadow: 0 18px 46px rgba(18, 28, 40, 0.1) !important;
}

.product-order-page .stage-note strong {
  color: #111318 !important;
}

.product-order-page .stage-note span {
  color: rgba(7, 9, 13, 0.54) !important;
}

.product-order-page .thumbs {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 8px !important;
  margin-top: 14px !important;
  border-radius: 22px !important;
  background: rgba(255, 255, 255, 0.78) !important;
  box-shadow: none !important;
}

.product-order-page .thumb {
  min-height: 78px !important;
  border-radius: 16px !important;
  transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease !important;
}

.product-order-page .thumb:hover {
  transform: translateY(-2px) !important;
}

.product-order-page .apple-buy-flow {
  display: grid !important;
  gap: 26px !important;
  margin-top: 32px !important;
}

.product-order-page .buy-step {
  display: grid !important;
  gap: 14px !important;
}

.product-order-page .buy-step-heading {
  display: grid !important;
  grid-template-columns: 42px minmax(0, 1fr) !important;
  gap: 14px !important;
  align-items: start !important;
}

.product-order-page .buy-step-heading > span {
  display: grid !important;
  place-items: center !important;
  width: 42px !important;
  height: 42px !important;
  border-radius: 999px !important;
  color: #fff !important;
  background: #111318 !important;
  font-size: 0.78rem !important;
  font-weight: 950 !important;
}

.product-order-page .buy-step-heading h2 {
  margin: 0 !important;
  color: #111318 !important;
  font-size: clamp(1.42rem, 1.9vw, 2rem) !important;
  line-height: 1.08 !important;
  letter-spacing: 0 !important;
  font-weight: 950 !important;
}

.product-order-page.locale-ja .buy-step-heading h2 {
  line-height: 1.18 !important;
}

.product-order-page .buy-step-heading p {
  max-width: 520px !important;
  margin: 6px 0 0 !important;
  color: rgba(7, 9, 13, 0.58) !important;
  font-size: 0.92rem !important;
  font-weight: 720 !important;
  line-height: 1.5 !important;
}

.product-order-page .option-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 10px !important;
}

.product-order-page .option-grid.two {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.product-order-page .choice-card {
  min-height: 86px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  padding: 18px 18px 17px !important;
  border: 1px solid rgba(7, 9, 13, 0.13) !important;
  border-radius: 18px !important;
  background: #fff !important;
  box-shadow: 0 10px 28px rgba(18, 28, 40, 0.045) !important;
  transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease !important;
}

.product-order-page .choice-card:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 14px 34px rgba(18, 28, 40, 0.07) !important;
}

.product-order-page .choice-card.selected {
  border-color: #111318 !important;
  box-shadow: inset 0 0 0 1px #111318, 0 14px 34px rgba(18, 28, 40, 0.065) !important;
}

.product-order-page .choice-card strong {
  display: block !important;
  color: #111318 !important;
  font-size: 1rem !important;
  line-height: 1.18 !important;
  font-weight: 950 !important;
}

.product-order-page .choice-card span {
  display: block !important;
  margin-top: 5px !important;
  color: rgba(7, 9, 13, 0.56) !important;
  font-size: 0.84rem !important;
  font-weight: 740 !important;
  line-height: 1.36 !important;
}

.product-order-page .choice-card em {
  color: #111318 !important;
  font-style: normal !important;
  font-size: 1rem !important;
  font-weight: 950 !important;
  white-space: nowrap !important;
}

.product-order-page .included-chip-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
}

.product-order-page .included-chip-grid span {
  display: grid !important;
  min-height: 46px !important;
  place-items: center !important;
  padding: 10px !important;
  border: 1px solid rgba(7, 9, 13, 0.1) !important;
  border-radius: 14px !important;
  background: rgba(255, 255, 255, 0.72) !important;
  color: rgba(7, 9, 13, 0.7) !important;
  font-size: 0.78rem !important;
  font-weight: 900 !important;
  text-align: center !important;
}

.product-order-page .order-buy-card {
  width: 100% !important;
  margin-top: 30px !important;
  padding: 20px !important;
  border: 1px solid rgba(7, 9, 13, 0.12) !important;
  border-radius: 22px !important;
  background: #fff !important;
  box-shadow: 0 22px 54px rgba(18, 28, 40, 0.08) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.product-order-page .order-price {
  align-items: end !important;
  padding-bottom: 16px !important;
}

.product-order-page .order-price > div {
  display: grid !important;
  gap: 4px !important;
}

.product-order-page .order-price span {
  color: rgba(7, 9, 13, 0.52) !important;
  font-size: 0.72rem !important;
  font-weight: 950 !important;
  letter-spacing: 0 !important;
  text-transform: uppercase !important;
}

.product-order-page.locale-ja .order-price span {
  text-transform: none !important;
}

.product-order-page .order-price strong {
  color: #111318 !important;
  font-size: clamp(2.65rem, 4.1vw, 4.2rem) !important;
}

.product-order-page .order-price small {
  color: rgba(7, 9, 13, 0.56) !important;
  font-size: 0.8rem !important;
  font-weight: 850 !important;
  text-align: right !important;
  text-transform: uppercase !important;
}

.product-order-page.locale-ja .order-price small {
  text-transform: none !important;
}

.product-order-page .order-buy-card .actions {
  grid-template-columns: 1fr 1fr !important;
  gap: 10px !important;
}

.product-order-page .order-support span {
  min-height: 54px !important;
  padding: 12px !important;
  border-radius: 14px !important;
  background: #f5f5f7 !important;
  color: rgba(7, 9, 13, 0.64) !important;
}

.product-order-page .order-support span::before,
.product-order-page .order-support span::after {
  display: none !important;
}

.product-order-page .order-metrics {
  padding: 0 !important;
  background: #fff !important;
}

.product-order-page .order-metric-grid {
  border-left: 0 !important;
  gap: 1px !important;
  background: rgba(7, 9, 13, 0.08) !important;
}

.product-order-page .order-metric-grid div {
  min-height: 136px !important;
  border: 0 !important;
  background: #fff !important;
}

.product-order-page .order-metric-grid strong {
  font-size: clamp(2rem, 3vw, 3.6rem) !important;
}

.product-order-page .order-story,
.product-order-page .order-product-intro,
.product-order-page .order-spec-section,
.product-order-page .order-visual-details {
  background: #f5f5f7 !important;
}

.product-order-page .order-dark-feature {
  background:
    radial-gradient(ellipse at 26% 32%, rgba(255, 255, 255, 0.12), transparent 38%),
    linear-gradient(135deg, #12161b 0%, #202a34 54%, #0d1014 100%) !important;
}

@media (max-width: 1120px) {
  .product-order-page .order-cover-grid {
    grid-template-columns: minmax(410px, 1fr) minmax(380px, 0.9fr) !important;
    gap: 28px !important;
  }

  .product-order-page .order-stage .main-product {
    width: min(34vw, 300px) !important;
  }

  .product-order-page .option-grid.two {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 980px) {
  .product-order-page .order-cover-grid {
    grid-template-columns: 1fr !important;
  }

  .product-order-page .order-showcase {
    position: relative !important;
    top: auto !important;
  }

  .product-order-page .order-stage .main-product {
    width: min(42vw, 330px) !important;
  }

  .product-order-page .option-grid.two {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 760px) {
  .product-order-page .order-cover {
    padding-top: 18px !important;
    padding-bottom: 36px !important;
  }

  .product-order-page .order-cover-grid {
    gap: 20px !important;
  }

  .product-order-page .order-showcase {
    min-width: 0 !important;
  }

  .product-order-page .order-stage {
    min-height: 360px !important;
    border-radius: 22px !important;
  }

  .product-order-page .order-stage::after {
    bottom: 8% !important;
  }

  .product-order-page .order-stage .main-product {
    width: min(50vw, 208px) !important;
    max-height: 314px !important;
  }

  .product-order-page .stage-note {
    display: none !important;
  }

  .product-order-page .thumbs {
    display: flex !important;
    gap: 8px !important;
    overflow-x: auto !important;
    overscroll-behavior-x: contain !important;
    scroll-snap-type: x proximity !important;
    padding: 8px !important;
    border-radius: 18px !important;
  }

  .product-order-page .thumb {
    flex: 0 0 74px !important;
    min-height: 66px !important;
    scroll-snap-align: start !important;
  }

  .product-order-page .order-copy h1 {
    font-size: clamp(2.24rem, 10.2vw, 3.12rem) !important;
    line-height: 1.02 !important;
  }

  .product-order-page.locale-ja .order-copy h1 {
    font-size: clamp(2.06rem, 8.6vw, 2.82rem) !important;
    line-height: 1.1 !important;
  }

  .product-order-page .order-lede {
    display: block !important;
    margin-top: 14px !important;
    font-size: 0.98rem !important;
    line-height: 1.52 !important;
  }

  .product-order-page .mobile-hero-price {
    border-radius: 20px !important;
    min-height: 68px !important;
    margin-top: 16px !important;
  }

  .product-order-page .apple-buy-flow {
    gap: 22px !important;
    margin-top: 28px !important;
  }

  .product-order-page .buy-step-heading {
    grid-template-columns: 36px minmax(0, 1fr) !important;
    gap: 12px !important;
  }

  .product-order-page .buy-step-heading > span {
    width: 36px !important;
    height: 36px !important;
  }

  .product-order-page .buy-step-heading h2 {
    font-size: 1.36rem !important;
  }

  .product-order-page .buy-step-heading p {
    font-size: 0.86rem !important;
  }

  .product-order-page .option-grid.two,
  .product-order-page .included-chip-grid {
    grid-template-columns: 1fr !important;
  }

  .product-order-page .choice-card {
    min-height: 82px !important;
    padding: 16px !important;
    border-radius: 16px !important;
  }

  .product-order-page .order-buy-card {
    display: block !important;
    margin-top: 24px !important;
    padding: 16px !important;
    border-radius: 20px !important;
  }

  .product-order-page .order-price {
    display: flex !important;
    align-items: end !important;
    justify-content: space-between !important;
    gap: 14px !important;
    padding-bottom: 14px !important;
    border-bottom: 1px solid rgba(7, 9, 13, 0.09) !important;
  }

  .product-order-page .order-price strong {
    font-size: 2.5rem !important;
  }

  .product-order-page .order-price small {
    max-width: 110px !important;
    font-size: 0.7rem !important;
  }

  .product-order-page .order-buy-card .quantity-row {
    display: flex !important;
  }

  .product-order-page .order-buy-card .actions,
  .product-order-page .order-support {
    display: grid !important;
  }

  .product-order-page .order-buy-card .actions {
    grid-template-columns: 1fr !important;
  }

  .product-order-page .order-support {
    grid-template-columns: 1fr !important;
  }
}

/* Order PDP selling-point rebuild: larger image-led sections and clearer buyer logic. */
.product-order-page .pdp-feature-section,
.product-order-page .pdp-flow-section,
.product-order-page .pdp-material-section,
.product-order-page .pdp-compare-section {
  position: relative !important;
  overflow: hidden !important;
  scroll-margin-top: 90px !important;
  padding: clamp(82px, 9vw, 142px) 0 !important;
}

.product-order-page .pdp-feature-section,
.product-order-page .pdp-flow-section,
.product-order-page .pdp-compare-section {
  background: #f5f5f7 !important;
}

.product-order-page .pdp-section-head {
  max-width: 980px !important;
  margin-bottom: clamp(30px, 4vw, 54px) !important;
}

.product-order-page .pdp-section-head.center {
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

.product-order-page .pdp-section-head h2,
.product-order-page .pdp-material-copy h2,
.product-order-page .pdp-compare-copy h2 {
  margin: 14px 0 0 !important;
  color: #07090d !important;
  font-size: clamp(3.2rem, 6.4vw, 7.4rem) !important;
  line-height: 0.92 !important;
  letter-spacing: 0 !important;
  font-weight: 950 !important;
}

.product-order-page.locale-ja .pdp-section-head h2,
.product-order-page.locale-ja .pdp-material-copy h2,
.product-order-page.locale-ja .pdp-compare-copy h2 {
  font-size: clamp(2.55rem, 5.2vw, 5.9rem) !important;
  line-height: 1.05 !important;
}

.product-order-page .pdp-section-head p,
.product-order-page .pdp-material-copy > p,
.product-order-page .pdp-compare-copy > p {
  max-width: 720px !important;
  margin: 22px 0 0 !important;
  color: rgba(7, 9, 13, 0.62) !important;
  font-size: clamp(1rem, 1.22vw, 1.16rem) !important;
  font-weight: 720 !important;
  line-height: 1.62 !important;
}

.product-order-page .pdp-section-head.center p {
  margin-left: auto !important;
  margin-right: auto !important;
}

.product-order-page .pdp-engine-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.24fr) minmax(340px, 0.76fr) !important;
  gap: clamp(18px, 2.8vw, 34px) !important;
  align-items: stretch !important;
}

.product-order-page .pdp-engine-visual {
  position: relative !important;
  min-height: clamp(520px, 48vw, 720px) !important;
  display: grid !important;
  place-items: center !important;
  overflow: hidden !important;
  margin: 0 !important;
  border: 1px solid rgba(7, 9, 13, 0.07) !important;
  border-radius: 32px !important;
  background:
    radial-gradient(ellipse at 52% 44%, rgba(255, 255, 255, 1), rgba(245, 248, 251, 0.84) 42%, rgba(225, 232, 238, 0.56) 72%),
    linear-gradient(180deg, #fff, #edf2f6) !important;
  box-shadow: 0 36px 88px rgba(18, 28, 40, 0.09), inset 0 1px 0 rgba(255, 255, 255, 0.9) !important;
}

.product-order-page .pdp-engine-visual img {
  width: min(112%, 1180px) !important;
  height: auto !important;
  max-height: 620px !important;
  object-fit: contain !important;
  filter: contrast(1.02) saturate(0.92) drop-shadow(0 30px 54px rgba(18, 28, 40, 0.13)) !important;
}

.product-order-page .pdp-engine-visual figcaption {
  position: absolute !important;
  left: clamp(16px, 2vw, 28px) !important;
  right: clamp(16px, 2vw, 28px) !important;
  bottom: clamp(16px, 2vw, 28px) !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
}

.product-order-page .pdp-engine-visual figcaption span {
  display: grid !important;
  min-height: 54px !important;
  place-items: center !important;
  padding: 10px !important;
  border: 1px solid rgba(7, 9, 13, 0.08) !important;
  border-radius: 16px !important;
  background: rgba(255, 255, 255, 0.8) !important;
  color: rgba(7, 9, 13, 0.68) !important;
  font-size: 0.78rem !important;
  font-weight: 920 !important;
  text-align: center !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
}

.product-order-page .pdp-proof-panel {
  display: grid !important;
  gap: 12px !important;
}

.product-order-page .pdp-proof-panel article {
  min-height: 0 !important;
  display: grid !important;
  align-content: space-between !important;
  gap: 20px !important;
  padding: clamp(22px, 2.8vw, 34px) !important;
  border: 1px solid rgba(7, 9, 13, 0.08) !important;
  border-radius: 26px !important;
  background: #fff !important;
  box-shadow: 0 18px 48px rgba(18, 28, 40, 0.065) !important;
}

.product-order-page .pdp-proof-panel article > span,
.product-order-page .pdp-flow-grid article span {
  color: #ed1c2e !important;
  font-size: 0.78rem !important;
  font-weight: 950 !important;
}

.product-order-page .pdp-proof-panel h3,
.product-order-page .pdp-flow-grid h3,
.product-order-page .pdp-material-list strong,
.product-order-page .pdp-compare-cards strong {
  margin: 0 !important;
  color: #07090d !important;
  font-size: clamp(1.25rem, 1.65vw, 1.72rem) !important;
  line-height: 1.1 !important;
  font-weight: 950 !important;
}

.product-order-page .pdp-proof-panel p,
.product-order-page .pdp-flow-grid p,
.product-order-page .pdp-material-list span,
.product-order-page .pdp-compare-cards p {
  margin: 10px 0 0 !important;
  color: rgba(7, 9, 13, 0.58) !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;
}

.product-order-page .pdp-flow-section {
  background: #fff !important;
}

.product-order-page .pdp-flow-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 14px !important;
}

.product-order-page .pdp-flow-grid article {
  overflow: hidden !important;
  border: 1px solid rgba(7, 9, 13, 0.08) !important;
  border-radius: 30px !important;
  background: #f5f5f7 !important;
  box-shadow: 0 22px 58px rgba(18, 28, 40, 0.07) !important;
}

.product-order-page .pdp-flow-grid img {
  display: block !important;
  width: 100% !important;
  height: clamp(230px, 20vw, 310px) !important;
  box-sizing: border-box !important;
  padding: clamp(10px, 1.4vw, 18px) !important;
  object-fit: contain !important;
  object-position: center !important;
  background: linear-gradient(180deg, #ffffff, #f4f6f8) !important;
  filter: saturate(0.96) contrast(1.02) !important;
}

.product-order-page .pdp-flow-grid article > div {
  padding: clamp(22px, 2.4vw, 30px) !important;
}

.product-order-page .pdp-material-section {
  color: #fff !important;
  background:
    radial-gradient(ellipse at 18% 26%, rgba(255, 255, 255, 0.12), transparent 32%),
    radial-gradient(ellipse at 86% 72%, rgba(237, 28, 46, 0.08), transparent 30%),
    linear-gradient(135deg, #0d1116 0%, #202833 58%, #07090d 100%) !important;
}

.product-order-page .pdp-material-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(360px, 0.95fr) !important;
  gap: clamp(28px, 5vw, 72px) !important;
  align-items: center !important;
}

.product-order-page .pdp-material-visual {
  min-height: clamp(520px, 52vw, 710px) !important;
  display: grid !important;
  place-items: center !important;
  overflow: hidden !important;
  margin: 0 !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  border-radius: 34px !important;
  background:
    radial-gradient(ellipse at 50% 36%, rgba(255, 255, 255, 0.92), rgba(233, 239, 244, 0.86) 42%, rgba(154, 168, 180, 0.2) 74%),
    linear-gradient(180deg, #fff, #e9eef3) !important;
  box-shadow: 0 44px 108px rgba(0, 0, 0, 0.32) !important;
}

.product-order-page .pdp-material-visual img {
  width: min(96%, 670px) !important;
  max-height: 650px !important;
  object-fit: contain !important;
  filter: saturate(0.94) contrast(1.03) drop-shadow(0 34px 68px rgba(0, 0, 0, 0.22)) !important;
}

.product-order-page .pdp-material-copy .section-kicker {
  color: #ff4054 !important;
}

.product-order-page .pdp-material-copy h2,
.product-order-page .pdp-material-copy > p {
  color: #fff !important;
}

.product-order-page .pdp-material-copy > p {
  color: rgba(255, 255, 255, 0.68) !important;
}

.product-order-page .pdp-material-list {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 10px !important;
  margin-top: 32px !important;
}

.product-order-page .pdp-material-list article {
  padding: 20px !important;
  border: 1px solid rgba(255, 255, 255, 0.11) !important;
  border-radius: 20px !important;
  background: rgba(255, 255, 255, 0.055) !important;
}

.product-order-page .pdp-material-list strong {
  color: #fff !important;
}

.product-order-page .pdp-material-list span {
  display: block !important;
  margin-top: 8px !important;
  color: rgba(255, 255, 255, 0.62) !important;
}

.product-order-page .pdp-compare-grid {
  display: grid !important;
  grid-template-columns: minmax(320px, 0.78fr) minmax(0, 1.22fr) !important;
  gap: clamp(24px, 4vw, 58px) !important;
  align-items: start !important;
}

.product-order-page .pdp-compare-copy {
  position: sticky !important;
  min-width: 0 !important;
  top: 96px !important;
}

.product-order-page .pdp-compare-copy h2 {
  max-width: 560px !important;
  font-size: clamp(3rem, 5.1vw, 5.9rem) !important;
}

.product-order-page .pdp-compare-cards {
  min-width: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

.product-order-page .pdp-compare-cards article {
  min-height: 210px !important;
  display: grid !important;
  align-content: space-between !important;
  padding: clamp(22px, 2.4vw, 30px) !important;
  border: 1px solid rgba(7, 9, 13, 0.08) !important;
  border-radius: 26px !important;
  background: #fff !important;
  box-shadow: 0 18px 50px rgba(18, 28, 40, 0.06) !important;
}

.product-order-page .pdp-compare-cards article > span {
  color: rgba(237, 28, 46, 0.92) !important;
  font-size: 0.78rem !important;
  font-weight: 950 !important;
  text-transform: uppercase !important;
}

.product-order-page.locale-ja .pdp-compare-cards article > span {
  text-transform: none !important;
}

@media (max-width: 980px) {
  .product-order-page .pdp-engine-grid,
  .product-order-page .pdp-material-grid,
  .product-order-page .pdp-compare-grid {
    grid-template-columns: 1fr !important;
  }

  .product-order-page .pdp-compare-copy {
    position: relative !important;
    top: auto !important;
  }

  .product-order-page .pdp-flow-grid,
  .product-order-page .pdp-compare-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 760px) {
  .product-order-page .pdp-feature-section,
  .product-order-page .pdp-flow-section,
  .product-order-page .pdp-material-section,
  .product-order-page .pdp-compare-section {
    padding-top: 58px !important;
    padding-bottom: 62px !important;
  }

  .product-order-page .pdp-section-head {
    margin-bottom: 24px !important;
  }

  .product-order-page .pdp-section-head.center {
    text-align: left !important;
  }

  .product-order-page .pdp-section-head h2,
  .product-order-page .pdp-material-copy h2,
  .product-order-page .pdp-compare-copy h2 {
    font-size: clamp(2.24rem, 10.2vw, 3.18rem) !important;
    line-height: 1 !important;
  }

  .product-order-page.locale-ja .pdp-section-head h2,
  .product-order-page.locale-ja .pdp-material-copy h2,
  .product-order-page.locale-ja .pdp-compare-copy h2 {
    font-size: clamp(2rem, 8.6vw, 2.72rem) !important;
    line-height: 1.1 !important;
  }

  .product-order-page .pdp-section-head p,
  .product-order-page .pdp-material-copy > p,
  .product-order-page .pdp-compare-copy > p {
    margin-top: 14px !important;
    font-size: 0.96rem !important;
    line-height: 1.55 !important;
  }

  .product-order-page .pdp-engine-visual {
    min-height: 330px !important;
    border-radius: 22px !important;
  }

  .product-order-page .pdp-engine-visual img {
    width: 128% !important;
    max-width: none !important;
    max-height: 280px !important;
  }

  .product-order-page .pdp-engine-visual figcaption {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    width: calc(100% - 24px) !important;
    margin: 0 12px 12px !important;
    grid-template-columns: 1fr !important;
  }

  .product-order-page .pdp-engine-visual figcaption span {
    min-height: 40px !important;
    border-radius: 12px !important;
  }

  .product-order-page .pdp-proof-panel article,
  .product-order-page .pdp-flow-grid article,
  .product-order-page .pdp-material-list article,
  .product-order-page .pdp-compare-cards article {
    border-radius: 18px !important;
  }

  .product-order-page .pdp-flow-grid,
  .product-order-page .pdp-compare-cards {
    grid-template-columns: 1fr !important;
  }

  .product-order-page .pdp-flow-grid img {
    height: 238px !important;
  }

  .product-order-page .pdp-material-grid {
    gap: 24px !important;
  }

  .product-order-page .pdp-material-visual {
    min-height: 360px !important;
    border-radius: 22px !important;
  }

  .product-order-page .pdp-material-visual img {
    width: 108% !important;
    max-height: 350px !important;
  }

  .product-order-page .pdp-compare-cards article {
    min-height: 0 !important;
    gap: 28px !important;
  }
}

/* Order page 2.0: product-to-core transition and scenario carousel. */
.product-order-page .pdp-transition-section,
.product-order-page .pdp-scenario-section {
  position: relative !important;
  overflow: hidden !important;
  scroll-margin-top: 90px !important;
  padding: clamp(82px, 9vw, 144px) 0 !important;
}

.product-order-page .pdp-transition-section {
  background: linear-gradient(180deg, #ffffff 0%, #f5f7fa 100%) !important;
}

.product-order-page .pdp-transition-stage {
  position: relative !important;
  display: grid !important;
  grid-template-columns: minmax(240px, 0.58fr) minmax(76px, 0.14fr) minmax(420px, 1fr) !important;
  gap: clamp(14px, 2vw, 24px) !important;
  align-items: stretch !important;
  padding: clamp(16px, 2vw, 26px) !important;
  border: 1px solid rgba(7, 9, 13, 0.07) !important;
  border-radius: 38px !important;
  background:
    radial-gradient(ellipse at 18% 18%, rgba(255, 255, 255, 0.95), transparent 34%),
    linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(239, 244, 248, 0.94)) !important;
  box-shadow: 0 36px 96px rgba(18, 28, 40, 0.09), inset 0 1px 0 rgba(255, 255, 255, 0.86) !important;
}

.product-order-page .transition-product,
.product-order-page .transition-core {
  position: relative !important;
  min-height: clamp(500px, 46vw, 650px) !important;
  display: grid !important;
  place-items: center !important;
  overflow: hidden !important;
  margin: 0 !important;
  border: 1px solid rgba(7, 9, 13, 0.065) !important;
  border-radius: 28px !important;
  background:
    radial-gradient(ellipse at 50% 36%, #ffffff 0%, #f2f6fa 50%, #dfe7ee 100%) !important;
}

.product-order-page .transition-product img {
  width: auto !important;
  height: min(62vw, 590px) !important;
  max-width: 86% !important;
  object-fit: contain !important;
  filter: saturate(0.94) contrast(1.03) drop-shadow(0 32px 54px rgba(18, 28, 40, 0.16)) !important;
}

.product-order-page .transition-core {
  background:
    radial-gradient(ellipse at 50% 46%, rgba(245, 252, 255, 0.98), rgba(224, 235, 244, 0.78) 55%, rgba(206, 217, 226, 0.92) 100%) !important;
}

.product-order-page .transition-core img {
  width: min(112%, 980px) !important;
  height: auto !important;
  object-fit: contain !important;
  filter: saturate(0.95) contrast(1.02) drop-shadow(0 34px 62px rgba(18, 28, 40, 0.14)) !important;
}

.product-order-page .transition-product figcaption,
.product-order-page .transition-core figcaption {
  position: absolute !important;
  left: 18px !important;
  bottom: 18px !important;
  padding: 10px 14px !important;
  border: 1px solid rgba(7, 9, 13, 0.08) !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.82) !important;
  color: rgba(7, 9, 13, 0.72) !important;
  font-size: 0.78rem !important;
  font-weight: 900 !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
}

.product-order-page .transition-bridge {
  position: relative !important;
  display: grid !important;
  place-items: center !important;
  align-self: center !important;
  min-height: 180px !important;
}

.product-order-page .transition-bridge::before {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: 20% !important;
  bottom: 20% !important;
  width: 1px !important;
  background: linear-gradient(180deg, transparent, rgba(7, 9, 13, 0.22), transparent) !important;
}

.product-order-page .transition-bridge span {
  position: relative !important;
  width: 10px !important;
  height: 10px !important;
  border-radius: 50% !important;
  background: #ed1c2e !important;
  box-shadow: 0 0 0 8px rgba(237, 28, 46, 0.08), 0 0 24px rgba(237, 28, 46, 0.34) !important;
  animation: fulmorBridgePulse 2.6s ease-in-out infinite !important;
}

.product-order-page .transition-bridge span:nth-child(2) {
  animation-delay: 0.28s !important;
}

.product-order-page .transition-bridge span:nth-child(3) {
  animation-delay: 0.56s !important;
}

.product-order-page .pdp-transition-specs {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin-top: 18px !important;
}

.product-order-page .pdp-transition-specs span {
  display: grid !important;
  min-height: 82px !important;
  align-items: center !important;
  padding: 18px !important;
  border: 1px solid rgba(7, 9, 13, 0.08) !important;
  border-radius: 20px !important;
  background: rgba(255, 255, 255, 0.82) !important;
  color: rgba(7, 9, 13, 0.72) !important;
  font-size: 0.88rem !important;
  font-weight: 900 !important;
  line-height: 1.34 !important;
}

.product-order-page .pdp-scenario-section {
  color: #fff !important;
  background:
    radial-gradient(ellipse at 72% 26%, rgba(88, 113, 135, 0.26), transparent 34%),
    linear-gradient(135deg, #111820 0%, #1f2a34 48%, #07090d 100%) !important;
}

.product-order-page .pdp-scenario-grid {
  display: grid !important;
  grid-template-columns: minmax(320px, 0.66fr) minmax(0, 1.34fr) !important;
  gap: clamp(26px, 4.4vw, 68px) !important;
  align-items: center !important;
}

.product-order-page .pdp-scenario-copy h2 {
  margin: 14px 0 0 !important;
  max-width: 720px !important;
  color: #fff !important;
  font-size: clamp(3rem, 5.4vw, 6.4rem) !important;
  line-height: 0.94 !important;
  letter-spacing: 0 !important;
  font-weight: 950 !important;
}

.product-order-page.locale-ja .pdp-scenario-copy h2 {
  font-size: clamp(2.4rem, 4.8vw, 5.2rem) !important;
  line-height: 1.06 !important;
}

.product-order-page .pdp-scenario-copy p {
  max-width: 520px !important;
  margin: 22px 0 0 !important;
  color: rgba(255, 255, 255, 0.66) !important;
  font-size: clamp(1rem, 1.18vw, 1.14rem) !important;
  font-weight: 720 !important;
  line-height: 1.62 !important;
}

.product-order-page .scenario-tabs {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin-top: 34px !important;
}

.product-order-page .scenario-tab {
  min-height: 56px !important;
  border: 1px solid rgba(255, 255, 255, 0.16) !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.065) !important;
  color: rgba(255, 255, 255, 0.72) !important;
  font: inherit !important;
  font-size: 0.88rem !important;
  font-weight: 930 !important;
  cursor: pointer !important;
  transition: background 180ms ease, color 180ms ease, transform 180ms ease, border-color 180ms ease !important;
}

.product-order-page .scenario-tab:hover,
.product-order-page .scenario-tab.active {
  transform: translateY(-1px) !important;
  border-color: rgba(255, 255, 255, 0.72) !important;
  background: #fff !important;
  color: #07090d !important;
}

.product-order-page .scenario-showcase {
  position: relative !important;
  min-height: clamp(560px, 50vw, 730px) !important;
  overflow: hidden !important;
  margin: 0 !important;
  border: 1px solid rgba(255, 255, 255, 0.13) !important;
  border-radius: 36px !important;
  background: #dfe5ea !important;
  box-shadow: 0 44px 118px rgba(0, 0, 0, 0.34) !important;
}

.product-order-page .scenario-showcase img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: clamp(560px, 50vw, 730px) !important;
  object-fit: cover !important;
  object-position: center !important;
  transform: scale(1.01) !important;
  filter: saturate(0.94) contrast(1.03) !important;
  transition: opacity 220ms ease, transform 520ms ease !important;
}

.product-order-page .scenario-showcase img.is-switching {
  opacity: 0.36 !important;
  transform: scale(1.035) !important;
}

.product-order-page .scenario-showcase figcaption {
  position: absolute !important;
  left: clamp(18px, 2.4vw, 32px) !important;
  right: clamp(18px, 2.4vw, 32px) !important;
  bottom: clamp(18px, 2.4vw, 32px) !important;
  display: grid !important;
  gap: 10px !important;
  max-width: 470px !important;
  padding: clamp(18px, 2vw, 24px) !important;
  border: 1px solid rgba(255, 255, 255, 0.18) !important;
  border-radius: 24px !important;
  background: rgba(7, 9, 13, 0.58) !important;
  color: #fff !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
}

.product-order-page .scenario-showcase figcaption span {
  color: rgba(255, 255, 255, 0.66) !important;
  font-size: 0.76rem !important;
  font-weight: 950 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}

.product-order-page.locale-ja .scenario-showcase figcaption span {
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.product-order-page .scenario-showcase figcaption strong {
  color: #fff !important;
  font-size: clamp(1.55rem, 2.2vw, 2.35rem) !important;
  line-height: 1.05 !important;
  font-weight: 950 !important;
}

.product-order-page .scenario-showcase figcaption p {
  margin: 0 !important;
  color: rgba(255, 255, 255, 0.72) !important;
  font-size: 0.96rem !important;
  font-weight: 720 !important;
  line-height: 1.5 !important;
}

@keyframes fulmorBridgePulse {
  0%,
  100% {
    opacity: 0.46;
    transform: scale(0.82);
  }
  50% {
    opacity: 1;
    transform: scale(1);
  }
}

@media (max-width: 980px) {
  .product-order-page .pdp-transition-stage,
  .product-order-page .pdp-scenario-grid {
    grid-template-columns: 1fr !important;
  }

  .product-order-page .transition-bridge {
    min-height: 56px !important;
    display: flex !important;
    justify-content: center !important;
    gap: 16px !important;
  }

  .product-order-page .transition-bridge::before {
    left: 18% !important;
    right: 18% !important;
    top: 50% !important;
    bottom: auto !important;
    width: auto !important;
    height: 1px !important;
    background: linear-gradient(90deg, transparent, rgba(7, 9, 13, 0.22), transparent) !important;
  }

  .product-order-page .pdp-transition-specs {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 760px) {
  .product-order-page .pdp-transition-section,
  .product-order-page .pdp-scenario-section {
    padding-top: 58px !important;
    padding-bottom: 62px !important;
  }

  .product-order-page .pdp-transition-stage {
    padding: 10px !important;
    border-radius: 24px !important;
  }

  .product-order-page .transition-product,
  .product-order-page .transition-core {
    min-height: 330px !important;
    border-radius: 18px !important;
  }

  .product-order-page .transition-product img {
    height: 305px !important;
  }

  .product-order-page .transition-core img {
    width: 122% !important;
  }

  .product-order-page .transition-product figcaption,
  .product-order-page .transition-core figcaption {
    left: 12px !important;
    bottom: 12px !important;
    font-size: 0.72rem !important;
  }

  .product-order-page .pdp-transition-specs {
    grid-template-columns: 1fr !important;
  }

  .product-order-page .pdp-transition-specs span {
    min-height: 62px !important;
    border-radius: 16px !important;
  }

  .product-order-page .pdp-scenario-copy h2 {
    font-size: clamp(2.2rem, 10vw, 3.15rem) !important;
    line-height: 1 !important;
  }

  .product-order-page.locale-ja .pdp-scenario-copy h2 {
    font-size: clamp(2rem, 8.6vw, 2.72rem) !important;
    line-height: 1.1 !important;
  }

  .product-order-page .scenario-tabs {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    margin-top: 22px !important;
  }

  .product-order-page .scenario-tab {
    min-height: 48px !important;
  }

  .product-order-page .scenario-showcase,
  .product-order-page .scenario-showcase img {
    min-height: 430px !important;
    border-radius: 22px !important;
  }

  .product-order-page .scenario-showcase figcaption {
    left: 12px !important;
    right: 12px !important;
    bottom: 12px !important;
    border-radius: 18px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .product-order-page .transition-bridge span,
  .product-order-page .scenario-showcase img {
    animation: none !important;
    transition: none !important;
  }
}

/* Conversion-focused order page: cleaner PDP, stronger purchase path. */
.order-conversion-page {
  background: #f6f7f8 !important;
  color: #080b10 !important;
}

.order-conversion-page .shop-header {
  background: rgba(255, 255, 255, 0.9) !important;
  border-bottom: 1px solid rgba(8, 11, 16, 0.08) !important;
  backdrop-filter: blur(18px) saturate(1.1) !important;
  -webkit-backdrop-filter: blur(18px) saturate(1.1) !important;
}

.order-conversion-page .checkout-hero {
  padding: clamp(36px, 5vw, 72px) 0 clamp(34px, 5vw, 70px) !important;
  background:
    radial-gradient(ellipse at 22% 18%, rgba(255, 255, 255, 0.92), transparent 34%),
    linear-gradient(180deg, #f9fafb 0%, #eef2f5 100%) !important;
}

.order-conversion-page .checkout-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.06fr) minmax(420px, 0.94fr) !important;
  gap: clamp(26px, 4.6vw, 68px) !important;
  align-items: start !important;
}

.order-conversion-page .checkout-gallery {
  position: sticky !important;
  top: 96px !important;
  min-width: 0 !important;
}

.order-conversion-page .checkout-stage {
  position: relative !important;
  display: grid !important;
  place-items: center !important;
  min-height: clamp(540px, 58vw, 690px) !important;
  overflow: hidden !important;
  border: 1px solid rgba(8, 11, 16, 0.08) !important;
  border-radius: 22px !important;
  background:
    radial-gradient(ellipse at 50% 40%, #fff 0%, #f7fafc 36%, #dfe7ee 100%) !important;
  box-shadow: 0 28px 82px rgba(18, 28, 40, 0.11), inset 0 1px 0 rgba(255, 255, 255, 0.94) !important;
}

.order-conversion-page .checkout-stage::after {
  content: "" !important;
  position: absolute !important;
  left: 19% !important;
  right: 19% !important;
  bottom: 12% !important;
  height: 9% !important;
  border-radius: 50% !important;
  background: radial-gradient(ellipse, rgba(28, 38, 48, 0.18), transparent 66%) !important;
  filter: blur(8px) !important;
}

.order-conversion-page .checkout-stage .main-product {
  position: relative !important;
  z-index: 2 !important;
  width: auto !important;
  height: min(55vw, 610px) !important;
  max-width: 78% !important;
  object-fit: contain !important;
  filter: drop-shadow(0 28px 52px rgba(20, 30, 42, 0.16)) !important;
}

.order-conversion-page .checkout-stage-badge {
  position: absolute !important;
  right: clamp(18px, 2vw, 30px) !important;
  bottom: clamp(18px, 2vw, 30px) !important;
  z-index: 3 !important;
  display: grid !important;
  gap: 3px !important;
  min-width: 142px !important;
  padding: 14px 16px !important;
  border: 1px solid rgba(8, 11, 16, 0.09) !important;
  border-radius: 18px !important;
  background: rgba(255, 255, 255, 0.86) !important;
  box-shadow: 0 16px 44px rgba(18, 28, 40, 0.12) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
}

.order-conversion-page .checkout-stage-badge strong {
  color: #080b10 !important;
  font-size: 1.18rem !important;
  line-height: 1 !important;
  font-weight: 950 !important;
}

.order-conversion-page .checkout-stage-badge span {
  color: rgba(8, 11, 16, 0.54) !important;
  font-size: 0.72rem !important;
  font-weight: 850 !important;
  line-height: 1.24 !important;
}

.order-conversion-page .checkout-thumbs {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin-top: 12px !important;
}

.order-conversion-page .checkout-thumbs .thumb {
  min-height: 92px !important;
  border-radius: 16px !important;
  background: #fff !important;
}

.order-conversion-page .checkout-panel {
  min-width: 0 !important;
  padding-top: 10px !important;
}

.order-conversion-page .order-breadcrumb {
  margin: 0 0 22px !important;
  color: rgba(8, 11, 16, 0.48) !important;
  font-size: 0.82rem !important;
  font-weight: 820 !important;
}

.order-conversion-page .checkout-panel .eyebrow,
.order-conversion-page .section-kicker {
  color: #e51c2d !important;
  font-size: 0.76rem !important;
  font-weight: 950 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}

.order-conversion-page.locale-ja .checkout-panel .eyebrow,
.order-conversion-page.locale-ja .section-kicker {
  letter-spacing: 0.02em !important;
  text-transform: none !important;
}

.order-conversion-page .checkout-panel h1 {
  margin: 14px 0 0 !important;
  color: #080b10 !important;
  font-size: clamp(3rem, 5.4vw, 5.85rem) !important;
  line-height: 0.96 !important;
  letter-spacing: 0 !important;
  font-weight: 950 !important;
}

.order-conversion-page.locale-ja .checkout-panel h1 {
  font-size: clamp(2.55rem, 4.8vw, 5rem) !important;
  line-height: 1.06 !important;
}

.order-conversion-page .checkout-rating {
  display: inline-flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  margin: 18px 0 0 !important;
  padding: 9px 12px !important;
  border: 1px solid rgba(8, 11, 16, 0.08) !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.8) !important;
  color: rgba(8, 11, 16, 0.62) !important;
  font-size: 0.86rem !important;
  font-weight: 820 !important;
}

.order-conversion-page .order-lede {
  max-width: 610px !important;
  margin: 20px 0 0 !important;
  color: rgba(8, 11, 16, 0.64) !important;
  font-size: clamp(1rem, 1.18vw, 1.1rem) !important;
  font-weight: 680 !important;
  line-height: 1.55 !important;
}

.order-conversion-page .checkout-price-row {
  display: flex !important;
  align-items: end !important;
  justify-content: space-between !important;
  gap: 18px !important;
  margin-top: 26px !important;
  padding: 20px 0 !important;
  border-top: 1px solid rgba(8, 11, 16, 0.09) !important;
  border-bottom: 1px solid rgba(8, 11, 16, 0.09) !important;
}

.order-conversion-page .checkout-price-row div {
  display: grid !important;
  gap: 4px !important;
}

.order-conversion-page .checkout-price-row span,
.order-conversion-page .checkout-option span {
  color: rgba(8, 11, 16, 0.5) !important;
  font-size: 0.76rem !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
}

.order-conversion-page.locale-ja .checkout-price-row span,
.order-conversion-page.locale-ja .checkout-option span {
  text-transform: none !important;
  letter-spacing: 0 !important;
}

.order-conversion-page .checkout-price-row strong {
  color: #080b10 !important;
  font-size: clamp(3rem, 5.3vw, 5rem) !important;
  line-height: 0.9 !important;
  letter-spacing: 0 !important;
  font-weight: 950 !important;
}

.order-conversion-page .checkout-price-row em {
  align-self: center !important;
  padding: 9px 12px !important;
  border-radius: 999px !important;
  background: rgba(229, 28, 45, 0.08) !important;
  color: #c81424 !important;
  font-size: 0.82rem !important;
  font-style: normal !important;
  font-weight: 900 !important;
}

.order-conversion-page .mobile-hero-price {
  display: none !important;
}

.order-conversion-page .checkout-options {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 10px !important;
  margin-top: 18px !important;
}

.order-conversion-page .order-detail-drawer {
  overflow: hidden !important;
  border: 1px solid rgba(8, 11, 16, 0.08) !important;
  border-radius: 18px !important;
  background: rgba(255, 255, 255, 0.9) !important;
  box-shadow: 0 16px 46px rgba(18, 28, 40, 0.06) !important;
}

.order-conversion-page .order-detail-drawer summary {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 14px !important;
  min-height: 58px !important;
  padding: 16px 18px !important;
  cursor: pointer !important;
  list-style: none !important;
}

.order-conversion-page .order-detail-drawer summary::-webkit-details-marker {
  display: none !important;
}

.order-conversion-page .order-detail-drawer summary span {
  color: rgba(8, 11, 16, 0.5) !important;
  font-size: 0.76rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
}

.order-conversion-page.locale-ja .order-detail-drawer summary span {
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.order-conversion-page .order-detail-drawer summary strong {
  color: #080b10 !important;
  font-size: 0.96rem !important;
  font-weight: 930 !important;
  text-align: right !important;
}

.order-conversion-page .order-detail-drawer summary::after {
  content: "+" !important;
  display: grid !important;
  flex: 0 0 26px !important;
  width: 26px !important;
  height: 26px !important;
  place-items: center !important;
  border-radius: 999px !important;
  background: #f3f5f7 !important;
  color: rgba(8, 11, 16, 0.72) !important;
  font-weight: 900 !important;
}

.order-conversion-page .order-detail-drawer[open] summary::after {
  content: "-" !important;
  color: #e51c2d !important;
}

.order-conversion-page .checkout-option-list {
  display: grid !important;
  gap: 10px !important;
  padding: 0 12px 12px !important;
}

.order-conversion-page .checkout-option,
.order-conversion-page .checkout-actions-card,
.order-conversion-page .checkout-trust-grid article,
.order-conversion-page .checkout-benefits article,
.order-conversion-page .checkout-flow-grid article,
.order-conversion-page .checkout-final-card {
  border: 1px solid rgba(8, 11, 16, 0.08) !important;
  border-radius: 18px !important;
  background: rgba(255, 255, 255, 0.9) !important;
  box-shadow: 0 16px 46px rgba(18, 28, 40, 0.06) !important;
}

.order-conversion-page .checkout-option {
  display: grid !important;
  gap: 6px !important;
  padding: 18px !important;
}

.order-conversion-page .checkout-option.selected {
  border-color: rgba(8, 11, 16, 0.42) !important;
  box-shadow: 0 0 0 1px rgba(8, 11, 16, 0.3), 0 20px 54px rgba(18, 28, 40, 0.08) !important;
}

.order-conversion-page .checkout-option strong {
  color: #080b10 !important;
  font-size: 1.04rem !important;
  font-weight: 930 !important;
}

.order-conversion-page .checkout-option small {
  color: rgba(8, 11, 16, 0.56) !important;
  font-size: 0.88rem !important;
  font-weight: 720 !important;
}

.order-conversion-page .checkout-actions-card {
  margin-top: 16px !important;
  padding: 18px !important;
}

.order-conversion-page .quantity-row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  margin: 0 !important;
}

.order-conversion-page .quantity-row label {
  color: rgba(8, 11, 16, 0.7) !important;
  font-size: 0.92rem !important;
  font-weight: 900 !important;
}

.order-conversion-page .checkout-actions-card .actions {
  display: grid !important;
  grid-template-columns: 1.15fr 0.85fr !important;
  gap: 10px !important;
  margin-top: 16px !important;
}

.order-conversion-page .button {
  border-radius: 999px !important;
  min-height: 52px !important;
  font-weight: 930 !important;
}

.order-conversion-page .button-primary {
  background: linear-gradient(135deg, #151b22, #05070a) !important;
  box-shadow: 0 18px 42px rgba(8, 12, 18, 0.24) !important;
}

.order-conversion-page .button-dark {
  color: #080b10 !important;
  background: #fff !important;
  border: 1px solid rgba(8, 11, 16, 0.16) !important;
  box-shadow: none !important;
}

.order-conversion-page .checkout-trust,
.order-conversion-page .checkout-story,
.order-conversion-page .checkout-flow,
.order-conversion-page .checkout-details,
.order-conversion-page .checkout-qa,
.order-conversion-page .checkout-final {
  padding: clamp(54px, 7vw, 96px) 0 !important;
}

.order-conversion-page .checkout-trust {
  background: #fff !important;
}

.order-conversion-page .checkout-trust-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

.order-conversion-page .checkout-trust-grid article,
.order-conversion-page .checkout-benefits article,
.order-conversion-page .checkout-flow-grid article {
  display: grid !important;
  gap: 8px !important;
  align-content: start !important;
  padding: 22px !important;
}

.order-conversion-page .checkout-trust-grid strong,
.order-conversion-page .checkout-benefits strong,
.order-conversion-page .checkout-flow-grid strong {
  color: #080b10 !important;
  font-size: 1.05rem !important;
  font-weight: 940 !important;
}

.order-conversion-page .checkout-trust-grid span,
.order-conversion-page .checkout-benefits span,
.order-conversion-page .checkout-flow-grid span {
  color: rgba(8, 11, 16, 0.58) !important;
  font-size: 0.9rem !important;
  font-weight: 700 !important;
  line-height: 1.45 !important;
}

.order-conversion-page .checkout-story {
  background: #f4f7f9 !important;
}

.order-conversion-page .checkout-story-grid {
  display: grid !important;
  grid-template-columns: minmax(320px, 0.88fr) minmax(440px, 1.12fr) !important;
  gap: clamp(28px, 5vw, 76px) !important;
  align-items: center !important;
}

.order-conversion-page .checkout-story-copy h2,
.order-conversion-page .checkout-section-head h2,
.order-conversion-page .checkout-details h2,
.order-conversion-page .checkout-qa-copy h2,
.order-conversion-page .checkout-final-card h2 {
  margin: 12px 0 0 !important;
  color: #080b10 !important;
  font-size: clamp(2.4rem, 4.8vw, 5.2rem) !important;
  line-height: 0.98 !important;
  letter-spacing: 0 !important;
  font-weight: 950 !important;
}

.order-conversion-page.locale-ja .checkout-story-copy h2,
.order-conversion-page.locale-ja .checkout-section-head h2,
.order-conversion-page.locale-ja .checkout-details h2,
.order-conversion-page.locale-ja .checkout-qa-copy h2,
.order-conversion-page.locale-ja .checkout-final-card h2 {
  font-size: clamp(2.1rem, 4.2vw, 4.5rem) !important;
  line-height: 1.08 !important;
}

.order-conversion-page .checkout-story-copy p,
.order-conversion-page .checkout-qa-copy p,
.order-conversion-page .checkout-final-card p {
  max-width: 600px !important;
  margin: 18px 0 0 !important;
  color: rgba(8, 11, 16, 0.62) !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  line-height: 1.58 !important;
}

.order-conversion-page .checkout-benefits {
  display: grid !important;
  gap: 0 !important;
  margin-top: 34px !important;
  border-top: 1px solid rgba(8, 11, 16, 0.1) !important;
}

.order-conversion-page .checkout-benefits article {
  display: grid !important;
  grid-template-columns: minmax(140px, 0.42fr) minmax(0, 1fr) !important;
  align-items: baseline !important;
  gap: 18px !important;
  padding: 20px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(8, 11, 16, 0.1) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.order-conversion-page .checkout-core-visual {
  position: relative !important;
  min-height: clamp(430px, 42vw, 590px) !important;
  display: grid !important;
  place-items: center !important;
  overflow: hidden !important;
  margin: 0 !important;
  border: 1px solid rgba(8, 11, 16, 0.08) !important;
  border-radius: 28px !important;
  background:
    radial-gradient(ellipse at 50% 35%, rgba(255, 255, 255, 0.98), transparent 44%),
    linear-gradient(180deg, #eef3f6 0%, #dbe4ea 100%) !important;
  box-shadow: 0 34px 88px rgba(18, 28, 40, 0.12) !important;
}

.order-conversion-page .checkout-core-visual img {
  width: min(116%, 880px) !important;
  height: auto !important;
  object-fit: contain !important;
  filter: drop-shadow(0 24px 48px rgba(18, 28, 40, 0.16)) !important;
}

.order-conversion-page .checkout-core-visual figcaption {
  position: absolute !important;
  left: 18px !important;
  right: 18px !important;
  bottom: 18px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 14px !important;
  padding: 14px 16px !important;
  border: 1px solid rgba(8, 11, 16, 0.08) !important;
  border-radius: 18px !important;
  background: rgba(255, 255, 255, 0.86) !important;
  color: rgba(8, 11, 16, 0.66) !important;
  box-shadow: 0 16px 44px rgba(18, 28, 40, 0.1) !important;
  font-weight: 900 !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
}

.order-conversion-page .checkout-core-visual figcaption strong {
  color: #080b10 !important;
  font-size: 0.96rem !important;
  font-weight: 950 !important;
}

.order-conversion-page .checkout-core-visual figcaption span {
  max-width: 260px !important;
  color: rgba(8, 11, 16, 0.58) !important;
  font-size: 0.8rem !important;
  font-weight: 760 !important;
  text-align: right !important;
}

.order-conversion-page .checkout-flow {
  background: #fff !important;
}

.order-conversion-page .checkout-section-head {
  max-width: 780px !important;
  margin-bottom: 28px !important;
}

.order-conversion-page .checkout-flow-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

.order-conversion-page .checkout-flow-grid img {
  width: 100% !important;
  height: 220px !important;
  object-fit: cover !important;
  border-radius: 14px !important;
  background: linear-gradient(180deg, #f7f9fb, #eef2f5) !important;
}

.order-conversion-page .checkout-details {
  background: #f6f7f8 !important;
}

.order-conversion-page .checkout-details-grid {
  display: grid !important;
  grid-template-columns: minmax(300px, 0.74fr) minmax(0, 1.26fr) !important;
  gap: clamp(24px, 4vw, 56px) !important;
  align-items: start !important;
}

.order-conversion-page .checkout-spec-table-wrap {
  overflow: hidden !important;
  border: 1px solid rgba(8, 11, 16, 0.08) !important;
  border-radius: 22px !important;
  background: rgba(255, 255, 255, 0.92) !important;
  box-shadow: 0 18px 52px rgba(18, 28, 40, 0.06) !important;
}

.order-conversion-page .checkout-spec-table {
  width: 100% !important;
  border-collapse: collapse !important;
}

.order-conversion-page .checkout-spec-table th,
.order-conversion-page .checkout-spec-table td {
  padding: 20px 24px !important;
  border-bottom: 1px solid rgba(8, 11, 16, 0.075) !important;
  vertical-align: top !important;
  text-align: left !important;
}

.order-conversion-page .checkout-spec-table tr:last-child th,
.order-conversion-page .checkout-spec-table tr:last-child td {
  border-bottom: 0 !important;
}

.order-conversion-page .checkout-spec-table th {
  width: 38% !important;
  color: rgba(8, 11, 16, 0.5) !important;
  font-size: 0.76rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.04em !important;
  line-height: 1.25 !important;
  text-transform: uppercase !important;
}

.order-conversion-page.locale-ja .checkout-spec-table th {
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.order-conversion-page .checkout-spec-table td {
  color: #080b10 !important;
  font-size: clamp(1.02rem, 1.28vw, 1.22rem) !important;
  font-weight: 900 !important;
  line-height: 1.32 !important;
}

.order-conversion-page .checkout-qa {
  background: #fff !important;
}

.order-conversion-page .checkout-qa-grid {
  display: grid !important;
  grid-template-columns: minmax(300px, 0.74fr) minmax(0, 1.26fr) !important;
  gap: clamp(24px, 4vw, 56px) !important;
  align-items: start !important;
}

.order-conversion-page .checkout-qa-list {
  display: grid !important;
  gap: 10px !important;
}

.order-conversion-page .checkout-qa-list details {
  overflow: hidden !important;
  border: 1px solid rgba(8, 11, 16, 0.08) !important;
  border-radius: 18px !important;
  background: rgba(255, 255, 255, 0.96) !important;
  box-shadow: 0 16px 46px rgba(18, 28, 40, 0.06) !important;
}

.order-conversion-page .checkout-qa-list summary {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  min-height: 74px !important;
  padding: 20px 24px !important;
  color: #080b10 !important;
  cursor: pointer !important;
  list-style: none !important;
  font-size: 1.02rem !important;
  font-weight: 930 !important;
}

.order-conversion-page .checkout-qa-list summary::-webkit-details-marker {
  display: none !important;
}

.order-conversion-page .checkout-qa-list summary::after {
  content: "+" !important;
  display: grid !important;
  flex: 0 0 28px !important;
  width: 28px !important;
  height: 28px !important;
  place-items: center !important;
  border-radius: 999px !important;
  background: #f3f5f7 !important;
  color: rgba(8, 11, 16, 0.72) !important;
  font-size: 1.05rem !important;
  font-weight: 900 !important;
}

.order-conversion-page .checkout-qa-list details[open] summary::after {
  content: "-" !important;
  color: #e51c2d !important;
}

.order-conversion-page .checkout-qa-list p {
  margin: 0 !important;
  padding: 0 24px 22px !important;
  color: rgba(8, 11, 16, 0.6) !important;
  font-size: 0.94rem !important;
  font-weight: 700 !important;
  line-height: 1.55 !important;
}

.order-conversion-page .checkout-final {
  background: linear-gradient(180deg, #fff, #eef2f5) !important;
}

.order-conversion-page .checkout-final-card {
  display: grid !important;
  grid-template-columns: 96px minmax(0, 1fr) auto !important;
  gap: 24px !important;
  align-items: center !important;
  padding: clamp(20px, 3vw, 32px) !important;
}

.order-conversion-page .checkout-final-card img {
  width: 78px !important;
  height: 150px !important;
  object-fit: contain !important;
}

.order-conversion-page .checkout-final-card h2 {
  font-size: clamp(1.8rem, 3vw, 3.2rem) !important;
}

.order-conversion-page .checkout-final-card p {
  margin-top: 8px !important;
}

@media (max-width: 980px) {
  .order-conversion-page .checkout-grid,
  .order-conversion-page .checkout-story-grid,
  .order-conversion-page .checkout-details-grid,
  .order-conversion-page .checkout-qa-grid {
    grid-template-columns: 1fr !important;
  }

  .order-conversion-page .checkout-gallery {
    position: relative !important;
    top: auto !important;
  }

  .order-conversion-page .checkout-stage {
    min-height: 520px !important;
  }

  .order-conversion-page .checkout-trust-grid,
  .order-conversion-page .checkout-flow-grid,
  .order-conversion-page .product-info-panels {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 760px) {
  .order-conversion-page .checkout-hero {
    padding-top: 18px !important;
  }

  .order-conversion-page .checkout-grid {
    gap: 18px !important;
  }

  .order-conversion-page .checkout-stage {
    min-height: 340px !important;
    border-radius: 18px !important;
  }

  .order-conversion-page .checkout-stage .main-product {
    height: 300px !important;
    max-width: 82% !important;
  }

  .order-conversion-page .checkout-stage-badge {
    right: 12px !important;
    bottom: 12px !important;
    min-width: 116px !important;
    padding: 10px 12px !important;
  }

  .order-conversion-page .checkout-thumbs {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }

  .order-conversion-page .checkout-thumbs .thumb {
    min-height: 58px !important;
    border-radius: 12px !important;
  }

  .order-conversion-page .checkout-panel {
    padding-top: 0 !important;
  }

  .order-conversion-page .order-breadcrumb {
    display: none !important;
  }

  .order-conversion-page .checkout-panel h1 {
    font-size: clamp(2.35rem, 11vw, 3.3rem) !important;
    line-height: 1 !important;
  }

  .order-conversion-page.locale-ja .checkout-panel h1 {
    font-size: clamp(2.08rem, 9vw, 2.85rem) !important;
    line-height: 1.08 !important;
  }

  .order-conversion-page .checkout-rating {
    border-radius: 14px !important;
    line-height: 1.35 !important;
  }

  .order-conversion-page .checkout-price-row {
    display: none !important;
  }

  .order-conversion-page .mobile-hero-price {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin-top: 18px !important;
    padding: 14px 14px 14px 16px !important;
    border: 1px solid rgba(8, 11, 16, 0.1) !important;
    border-radius: 18px !important;
    background: #fff !important;
    box-shadow: 0 14px 40px rgba(18, 28, 40, 0.08) !important;
  }

  .order-conversion-page .mobile-hero-price div {
    display: grid !important;
    gap: 2px !important;
  }

  .order-conversion-page .mobile-hero-price strong {
    color: #080b10 !important;
    font-size: 1.72rem !important;
    line-height: 1 !important;
  }

  .order-conversion-page .mobile-hero-price span {
    color: rgba(8, 11, 16, 0.52) !important;
    font-size: 0.76rem !important;
    font-weight: 850 !important;
  }

  .order-conversion-page .mobile-hero-price button {
    min-height: 44px !important;
    padding: 0 20px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #080b10 !important;
    color: #fff !important;
    font-weight: 930 !important;
  }

  .order-conversion-page .checkout-actions-card .actions,
  .order-conversion-page .checkout-flow-grid,
  .order-conversion-page .checkout-final-card {
    grid-template-columns: 1fr !important;
  }

  .order-conversion-page .checkout-trust-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  .order-conversion-page .checkout-trust-grid article {
    min-height: 92px !important;
    padding: 16px !important;
  }

  .order-conversion-page .checkout-trust-grid strong {
    font-size: 0.95rem !important;
  }

  .order-conversion-page .checkout-trust-grid span {
    font-size: 0.8rem !important;
    line-height: 1.32 !important;
  }

  .order-conversion-page .checkout-spec-table,
  .order-conversion-page .checkout-spec-table tbody,
  .order-conversion-page .checkout-spec-table tr,
  .order-conversion-page .checkout-spec-table th,
  .order-conversion-page .checkout-spec-table td {
    display: block !important;
  }

  .order-conversion-page .checkout-spec-table tr {
    padding: 17px 18px !important;
    border-bottom: 1px solid rgba(8, 11, 16, 0.075) !important;
  }

  .order-conversion-page .checkout-spec-table tr:last-child {
    border-bottom: 0 !important;
  }

  .order-conversion-page .checkout-spec-table th,
  .order-conversion-page .checkout-spec-table td {
    width: auto !important;
    padding: 0 !important;
    border-bottom: 0 !important;
  }

  .order-conversion-page .checkout-spec-table td {
    margin-top: 7px !important;
    font-size: 1.06rem !important;
    line-height: 1.28 !important;
  }

  .order-conversion-page .checkout-trust,
  .order-conversion-page .checkout-story,
  .order-conversion-page .checkout-flow,
  .order-conversion-page .checkout-details,
  .order-conversion-page .checkout-qa,
  .order-conversion-page .checkout-final {
    padding-top: 48px !important;
    padding-bottom: 52px !important;
  }

  .order-conversion-page .checkout-story-copy h2,
  .order-conversion-page .checkout-section-head h2,
  .order-conversion-page .checkout-details h2,
  .order-conversion-page .checkout-qa-copy h2 {
    font-size: clamp(2rem, 9vw, 2.8rem) !important;
    line-height: 1.04 !important;
  }

  .order-conversion-page .checkout-qa-list summary {
    min-height: 64px !important;
    padding: 18px !important;
    font-size: 0.98rem !important;
  }

  .order-conversion-page .checkout-qa-list p {
    padding: 0 18px 20px !important;
  }

  .order-conversion-page .checkout-core-visual {
    min-height: 310px !important;
    border-radius: 18px !important;
  }

  .order-conversion-page .checkout-core-visual img {
    width: 118% !important;
  }

  .order-conversion-page .checkout-flow-grid img {
    height: 190px !important;
  }

  .order-conversion-page .checkout-final-card {
    text-align: left !important;
  }

  .order-conversion-page .checkout-final-card img {
    width: 96px !important;
    height: 170px !important;
  }
}

/* Order page product information upgrade. */
.order-conversion-page .checkout-key-points {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
  margin-top: 18px !important;
}

.order-conversion-page .checkout-key-points span {
  display: grid !important;
  min-height: 66px !important;
  align-content: center !important;
  gap: 4px !important;
  padding: 12px 14px !important;
  border: 1px solid rgba(8, 11, 16, 0.08) !important;
  border-radius: 16px !important;
  background: rgba(255, 255, 255, 0.78) !important;
  color: rgba(8, 11, 16, 0.58) !important;
  font-size: 0.78rem !important;
  font-weight: 800 !important;
  line-height: 1.18 !important;
}

.order-conversion-page .checkout-key-points strong {
  display: block !important;
  color: #080b10 !important;
  font-size: 1.08rem !important;
  font-weight: 950 !important;
  line-height: 1 !important;
}

.order-conversion-page .checkout-product-info {
  padding: clamp(64px, 8vw, 116px) 0 !important;
  background: linear-gradient(180deg, #fff 0%, #f3f7fa 100%) !important;
}

.order-conversion-page .product-info-grid {
  display: grid !important;
  grid-template-columns: minmax(420px, 1.06fr) minmax(0, 0.94fr) !important;
  gap: clamp(28px, 5vw, 76px) !important;
  align-items: center !important;
}

.order-conversion-page .product-info-visual {
  position: relative !important;
  display: grid !important;
  place-items: center !important;
  min-height: clamp(430px, 42vw, 590px) !important;
  overflow: hidden !important;
  margin: 0 !important;
  border: 1px solid rgba(8, 11, 16, 0.08) !important;
  border-radius: 28px !important;
  background:
    radial-gradient(ellipse at 55% 35%, #fff 0%, #f7fafc 42%, #dfe8ee 100%) !important;
  box-shadow: 0 34px 88px rgba(18, 28, 40, 0.11) !important;
}

.order-conversion-page .product-info-visual img {
  width: min(74%, 430px) !important;
  height: auto !important;
  max-height: 530px !important;
  object-fit: contain !important;
  filter: drop-shadow(0 26px 48px rgba(18, 28, 40, 0.16)) !important;
}

.order-conversion-page .product-info-visual figcaption {
  position: absolute !important;
  left: 18px !important;
  right: 18px !important;
  bottom: 18px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  padding: 14px 16px !important;
  border: 1px solid rgba(8, 11, 16, 0.08) !important;
  border-radius: 18px !important;
  background: rgba(255, 255, 255, 0.86) !important;
  box-shadow: 0 16px 44px rgba(18, 28, 40, 0.1) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
}

.order-conversion-page .product-info-visual figcaption strong {
  color: #080b10 !important;
  font-size: 0.96rem !important;
  font-weight: 950 !important;
}

.order-conversion-page .product-info-visual figcaption span {
  max-width: 240px !important;
  color: rgba(8, 11, 16, 0.58) !important;
  font-size: 0.8rem !important;
  font-weight: 760 !important;
  text-align: right !important;
}

.order-conversion-page .product-info-copy h2 {
  max-width: 760px !important;
  margin: 12px 0 0 !important;
  color: #080b10 !important;
  font-size: clamp(2.5rem, 4.9vw, 5.4rem) !important;
  line-height: 0.98 !important;
  letter-spacing: 0 !important;
  font-weight: 950 !important;
}

.order-conversion-page.locale-ja .product-info-copy h2 {
  font-size: clamp(2.15rem, 4.2vw, 4.6rem) !important;
  line-height: 1.08 !important;
}

.order-conversion-page .product-info-copy > p {
  max-width: 560px !important;
  margin: 18px 0 0 !important;
  color: rgba(8, 11, 16, 0.62) !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  line-height: 1.58 !important;
}

.order-conversion-page .product-info-panels {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0 !important;
  margin-top: 28px !important;
  border-top: 1px solid rgba(8, 11, 16, 0.1) !important;
}

.order-conversion-page .product-info-panels article {
  min-height: 0 !important;
  display: grid !important;
  grid-template-columns: 38px minmax(140px, 0.42fr) minmax(0, 1fr) !important;
  align-items: baseline !important;
  gap: 18px !important;
  padding: 20px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(8, 11, 16, 0.1) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.order-conversion-page .product-info-panels article > span {
  color: #e51c2d !important;
  font-size: 0.76rem !important;
  font-weight: 950 !important;
}

.order-conversion-page .product-info-panels h3 {
  margin: 0 !important;
  color: #080b10 !important;
  font-size: clamp(1.08rem, 1.35vw, 1.28rem) !important;
  line-height: 1.12 !important;
  font-weight: 950 !important;
}

.order-conversion-page .product-info-panels p {
  margin: 0 !important;
  color: rgba(8, 11, 16, 0.6) !important;
  font-size: 0.92rem !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;
}

.order-conversion-page .checkout-details-note {
  max-width: 420px !important;
  margin: 18px 0 0 !important;
  color: rgba(8, 11, 16, 0.58) !important;
  font-size: 0.98rem !important;
  font-weight: 700 !important;
  line-height: 1.55 !important;
}

@media (max-width: 980px) {
  .order-conversion-page .product-info-grid {
    grid-template-columns: 1fr !important;
  }

  .order-conversion-page .product-info-visual {
    min-height: 430px !important;
  }
}

@media (max-width: 760px) {
  .order-conversion-page .checkout-key-points {
    grid-template-columns: 1fr !important;
    margin-top: 12px !important;
  }

  .order-conversion-page .checkout-key-points span {
    min-height: 52px !important;
    grid-template-columns: 86px 1fr !important;
    align-items: center !important;
    gap: 10px !important;
  }

  .order-conversion-page .checkout-product-info {
    padding-top: 48px !important;
    padding-bottom: 52px !important;
  }

  .order-conversion-page .product-info-visual {
    min-height: 360px !important;
    border-radius: 18px !important;
  }

  .order-conversion-page .product-info-visual img {
    width: 72% !important;
    max-height: 330px !important;
  }

  .order-conversion-page .product-info-visual figcaption {
    left: 12px !important;
    right: 12px !important;
    bottom: 12px !important;
    display: grid !important;
  }

  .order-conversion-page .product-info-visual figcaption span {
    max-width: none !important;
    text-align: left !important;
  }

  .order-conversion-page .product-info-copy h2 {
    font-size: clamp(2rem, 9vw, 2.85rem) !important;
    line-height: 1.04 !important;
  }

  .order-conversion-page.locale-ja .product-info-copy h2 {
    font-size: clamp(1.95rem, 8.3vw, 2.62rem) !important;
    line-height: 1.1 !important;
  }

  .order-conversion-page .product-info-panels {
    grid-template-columns: 1fr !important;
  }

  .order-conversion-page .product-info-panels article {
    min-height: 0 !important;
    grid-template-columns: 32px 1fr !important;
    gap: 12px !important;
    border-radius: 18px !important;
  }

  .order-conversion-page .product-info-panels p {
    grid-column: 2 !important;
  }

  .order-conversion-page .checkout-benefits article {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  .order-conversion-page .checkout-core-visual figcaption {
    display: grid !important;
  }

  .order-conversion-page .checkout-core-visual figcaption span {
    max-width: none !important;
    text-align: left !important;
  }
}

/* Order page information/story refinement. */
.order-conversion-page .product-info-kit-visual {
  min-height: clamp(390px, 38vw, 540px) !important;
  background:
    radial-gradient(ellipse at 48% 34%, rgba(255, 255, 255, 0.95), transparent 48%),
    linear-gradient(180deg, #f7fafc 0%, #e8eef3 100%) !important;
}

.order-conversion-page .product-info-kit-visual img {
  width: 100% !important;
  height: 100% !important;
  max-height: none !important;
  border-radius: 0 !important;
  object-fit: cover !important;
  object-position: center 48% !important;
  transform: none !important;
  filter: none !important;
  box-shadow: none !important;
}

.order-conversion-page .product-info-panels {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
  border-top: 0 !important;
}

.order-conversion-page .product-info-panels article {
  min-height: 166px !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  align-content: start !important;
  gap: 10px !important;
  padding: 20px !important;
  border: 1px solid rgba(8, 11, 16, 0.08) !important;
  border-radius: 20px !important;
  background: rgba(255, 255, 255, 0.86) !important;
  box-shadow: 0 18px 48px rgba(18, 28, 40, 0.065) !important;
}

.order-conversion-page .product-info-panels article > span {
  display: grid !important;
  width: 34px !important;
  height: 34px !important;
  place-items: center !important;
  border-radius: 999px !important;
  background: rgba(229, 28, 45, 0.09) !important;
  color: #d7192a !important;
  font-size: 0.72rem !important;
}

.order-conversion-page .product-info-panels h3 {
  font-size: 1.12rem !important;
}

.order-conversion-page .product-info-panels p {
  color: rgba(8, 11, 16, 0.62) !important;
  line-height: 1.48 !important;
}

.order-conversion-page .checkout-benefits {
  counter-reset: fulmor-benefit !important;
  gap: 10px !important;
  border-top: 0 !important;
}

.order-conversion-page .checkout-benefits article {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 54px minmax(0, 1fr) !important;
  gap: 8px 16px !important;
  align-items: start !important;
  padding: 18px !important;
  border: 1px solid rgba(8, 11, 16, 0.08) !important;
  border-radius: 20px !important;
  background: rgba(255, 255, 255, 0.86) !important;
  box-shadow: 0 18px 48px rgba(18, 28, 40, 0.065) !important;
}

.order-conversion-page .checkout-benefits article::before {
  counter-increment: fulmor-benefit !important;
  content: "0" counter(fulmor-benefit) !important;
  grid-row: 1 / span 2 !important;
  display: grid !important;
  width: 42px !important;
  height: 42px !important;
  place-items: center !important;
  border-radius: 999px !important;
  background: #080b10 !important;
  color: #fff !important;
  font-size: 0.74rem !important;
  font-weight: 950 !important;
}

.order-conversion-page .checkout-benefits strong,
.order-conversion-page .checkout-benefits span {
  grid-column: 2 !important;
}

.order-conversion-page .checkout-structure-visual {
  min-height: clamp(420px, 40vw, 580px) !important;
  background:
    radial-gradient(ellipse at 50% 40%, rgba(255, 255, 255, 0.98), transparent 46%),
    linear-gradient(180deg, #f3f6f8 0%, #dfe7ed 100%) !important;
}

.order-conversion-page .checkout-structure-visual img {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: center 42% !important;
  transform: none !important;
  filter: none !important;
}

@media (max-width: 760px) {
  .order-conversion-page .product-info-kit-visual {
    min-height: 330px !important;
  }

  .order-conversion-page .product-info-kit-visual img {
    width: 100% !important;
    height: 100% !important;
    max-height: none !important;
    border-radius: 0 !important;
    transform: none !important;
  }

  .order-conversion-page .product-info-panels {
    grid-template-columns: 1fr !important;
  }

  .order-conversion-page .product-info-panels article {
    min-height: 0 !important;
    grid-template-columns: 1fr !important;
    padding: 18px !important;
  }

  .order-conversion-page .product-info-panels p {
    grid-column: auto !important;
  }

  .order-conversion-page .checkout-benefits article {
    grid-template-columns: 48px minmax(0, 1fr) !important;
    gap: 6px 14px !important;
  }

  .order-conversion-page .checkout-benefits article::before {
    width: 38px !important;
    height: 38px !important;
  }

  .order-conversion-page .checkout-structure-visual {
    min-height: 320px !important;
  }

  .order-conversion-page .checkout-structure-visual img {
    width: 100% !important;
    transform: none !important;
  }
}

/* Order page premium visual layer fix. */
.order-conversion-page .product-info-kit-visual,
.order-conversion-page .checkout-structure-visual {
  isolation: isolate !important;
}

.order-conversion-page .product-info-kit-visual {
  background:
    url("images/order-kit-generated.webp") center 48% / cover no-repeat,
    radial-gradient(ellipse at 48% 34%, rgba(255, 255, 255, 0.95), transparent 48%),
    linear-gradient(180deg, #f7fafc 0%, #e8eef3 100%) !important;
}

.order-conversion-page .checkout-structure-visual {
  background:
    url("images/reaction-core-blue.webp") center center / contain no-repeat,
    radial-gradient(ellipse at 50% 40%, rgba(255, 255, 255, 0.98), transparent 46%),
    linear-gradient(180deg, #f3f6f8 0%, #dfe7ed 100%) !important;
}

.order-conversion-page .product-info-kit-visual > img,
.order-conversion-page .checkout-structure-visual > img {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  transform: none !important;
  filter: none !important;
  opacity: 0 !important;
}

.order-conversion-page .product-info-kit-visual > img {
  object-position: center 48% !important;
}

.order-conversion-page .checkout-structure-visual > img {
  object-position: center 42% !important;
}

.order-conversion-page .product-info-kit-visual > figcaption,
.order-conversion-page .checkout-structure-visual > figcaption {
  z-index: 3 !important;
}

@media (max-width: 760px) {
  body.product-order-page {
    padding-bottom: calc(108px + env(safe-area-inset-bottom)) !important;
  }

  .product-order-page .mobile-buy-bar {
    bottom: calc(12px + env(safe-area-inset-bottom)) !important;
  }
}

/* Homepage product-image and copy precision pass. */
.performance .feature-copy p,
.technology .tech-copy p,
.design-notes span {
  max-width: 560px !important;
}

.performance .feature-media::before {
  background:
    radial-gradient(circle, rgba(229, 28, 45, 0.1), transparent 62%),
    radial-gradient(circle at 54% 46%, rgba(120, 220, 245, 0.12), transparent 48%) !important;
}

.performance .feature-media img {
  border-radius: 30px !important;
}

.technology .tech-visual {
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.96), rgba(246, 250, 252, 0.66)),
    radial-gradient(circle at 70% 18%, rgba(120, 220, 245, 0.18), transparent 42%) !important;
}

.technology .tech-copy h2 {
  max-width: 760px !important;
}

.design {
  overflow: hidden !important;
  background:
    radial-gradient(circle at 50% 46%, rgba(120, 220, 245, 0.12), transparent 34%),
    radial-gradient(circle at 50% 66%, rgba(255, 255, 255, 0.08), transparent 24%),
    linear-gradient(180deg, #05070a 0%, #0c1117 52%, #05070a 100%) !important;
}

.design-product {
  width: min(520px, 72vw) !important;
  margin-top: 6px !important;
}

.design-product::before {
  content: "" !important;
  position: absolute !important;
  inset: 6% -22% 0 !important;
  border-radius: 50% !important;
  background: radial-gradient(ellipse, rgba(255, 255, 255, 0.14), transparent 68%) !important;
  filter: blur(2px) !important;
}

.design-product img {
  position: relative !important;
  z-index: 1 !important;
  height: min(64svh, 700px) !important;
  width: auto !important;
  max-width: 100% !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  filter: saturate(0.96) contrast(1.04) drop-shadow(0 42px 74px rgba(0, 0, 0, 0.48)) !important;
}

.design-notes {
  max-width: 1180px !important;
}

.design-notes div {
  min-height: 104px !important;
  border-color: rgba(255, 255, 255, 0.13) !important;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.07), rgba(255, 255, 255, 0.035)) !important;
}

@media (max-width: 760px) {
  .performance .feature-media img {
    border-radius: 22px !important;
  }

  .design {
    min-height: auto !important;
    padding-top: 72px !important;
  }

  .design-product {
    width: min(300px, 76vw) !important;
  }

  .design-product img {
    height: min(54svh, 520px) !important;
  }

  .design-notes div {
    min-height: 86px !important;
  }
}

/* Order page clean-image and layout polish pass. */
.order-conversion-page .checkout-stage-badge,
.order-conversion-page .product-info-visual figcaption,
.order-conversion-page .checkout-core-visual figcaption {
  display: none !important;
}

.order-conversion-page .checkout-hero {
  background:
    radial-gradient(ellipse at 42% 18%, rgba(255, 255, 255, 0.96), transparent 36%),
    linear-gradient(180deg, #f9fafb 0%, #edf2f6 100%) !important;
}

.order-conversion-page .checkout-stage {
  border-radius: 28px !important;
  background:
    radial-gradient(ellipse at 50% 42%, #fff 0%, #f8fbfd 38%, #dfe7ee 100%) !important;
  box-shadow: 0 34px 96px rgba(18, 28, 40, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.96) !important;
}

.order-conversion-page .checkout-trust {
  background: linear-gradient(180deg, #fff 0%, #f7f9fb 100%) !important;
}

.order-conversion-page .checkout-trust-grid {
  gap: clamp(10px, 1.4vw, 16px) !important;
}

.order-conversion-page .checkout-trust-grid article {
  min-height: 118px !important;
  justify-content: space-between !important;
  border-radius: 22px !important;
  background: rgba(255, 255, 255, 0.92) !important;
}

.order-conversion-page .product-info-kit-visual,
.order-conversion-page .checkout-structure-visual {
  min-height: clamp(470px, 42vw, 630px) !important;
  border-radius: 32px !important;
  box-shadow: 0 36px 94px rgba(18, 28, 40, 0.12) !important;
}

.order-conversion-page .product-info-kit-visual {
  background:
    url("images/order-kit-generated.webp") center 49% / cover no-repeat,
    linear-gradient(180deg, #f8fafc 0%, #e8eef3 100%) !important;
}

.order-conversion-page .checkout-structure-visual {
  background:
    url("images/reaction-core-blue.webp") center center / contain no-repeat,
    radial-gradient(ellipse at 50% 45%, rgba(255, 255, 255, 0.96), transparent 54%),
    linear-gradient(180deg, #f6f9fb 0%, #dfe7ed 100%) !important;
}

.order-conversion-page .product-info-grid,
.order-conversion-page .checkout-story-grid {
  gap: clamp(34px, 5.2vw, 88px) !important;
}

.order-conversion-page .product-info-panels,
.order-conversion-page .checkout-benefits {
  gap: 14px !important;
}

.order-conversion-page .product-info-panels article,
.order-conversion-page .checkout-benefits article {
  border-radius: 24px !important;
  background: rgba(255, 255, 255, 0.9) !important;
  box-shadow: 0 20px 54px rgba(18, 28, 40, 0.065) !important;
}

.order-conversion-page .checkout-flow {
  background:
    linear-gradient(180deg, #fff 0%, #f6f8fa 100%) !important;
}

.order-conversion-page .checkout-product-info,
.order-conversion-page .checkout-story,
.order-conversion-page .checkout-flow,
.order-conversion-page .checkout-details,
.order-conversion-page .checkout-qa,
.order-conversion-page .checkout-final {
  scroll-margin-top: 92px !important;
}

.order-conversion-page .checkout-flow .checkout-section-head {
  max-width: 900px !important;
  margin-bottom: clamp(24px, 3vw, 40px) !important;
}

.order-conversion-page .checkout-flow-grid {
  gap: clamp(16px, 2vw, 24px) !important;
}

.order-conversion-page .checkout-flow-grid article {
  overflow: hidden !important;
  gap: 10px !important;
  padding: 12px 12px 24px !important;
  border-radius: 28px !important;
  background: rgba(255, 255, 255, 0.94) !important;
  box-shadow: 0 24px 64px rgba(18, 28, 40, 0.075) !important;
}

.order-conversion-page .checkout-flow-grid img {
  display: block !important;
  width: 100% !important;
  height: clamp(248px, 18vw, 315px) !important;
  object-fit: cover !important;
  object-position: center !important;
  border-radius: 20px !important;
  background: linear-gradient(180deg, #f7f9fb, #edf2f5) !important;
}

.order-conversion-page .checkout-flow-grid article:nth-child(1) img {
  background:
    url("images/process-kit.webp") center / cover no-repeat,
    linear-gradient(180deg, #f7f9fb, #edf2f5) !important;
}

.order-conversion-page .checkout-flow-grid article:nth-child(2) img {
  background:
    url("images/process-fill.webp") center / cover no-repeat,
    linear-gradient(180deg, #f7f9fb, #edf2f5) !important;
}

.order-conversion-page .checkout-flow-grid article:nth-child(3) img {
  background:
    url("images/process-button.webp") center / cover no-repeat,
    linear-gradient(180deg, #f7f9fb, #edf2f5) !important;
}

.order-conversion-page .checkout-flow-grid strong,
.order-conversion-page .checkout-flow-grid span {
  padding: 0 8px !important;
}

.order-conversion-page .checkout-flow-grid strong {
  margin-top: 4px !important;
  font-size: 1.14rem !important;
}

.order-conversion-page .checkout-details {
  background: #f5f7f9 !important;
}

.order-conversion-page .checkout-details-grid {
  align-items: center !important;
}

.order-conversion-page .checkout-spec-table-wrap {
  border-radius: 26px !important;
  background: rgba(255, 255, 255, 0.96) !important;
  box-shadow: 0 24px 68px rgba(18, 28, 40, 0.075) !important;
}

.order-conversion-page .checkout-spec-table th,
.order-conversion-page .checkout-spec-table td {
  padding: 18px 24px !important;
}

.order-conversion-page .checkout-final-card {
  border-radius: 28px !important;
  background: rgba(255, 255, 255, 0.94) !important;
  box-shadow: 0 28px 78px rgba(18, 28, 40, 0.09) !important;
}

@media (max-width: 980px) {
  .order-conversion-page .product-info-kit-visual,
  .order-conversion-page .checkout-structure-visual {
    min-height: 440px !important;
  }

  .order-conversion-page .checkout-flow-grid img {
    height: clamp(230px, 30vw, 300px) !important;
  }
}

@media (max-width: 760px) {
  .order-conversion-page .checkout-stage {
    min-height: 370px !important;
    border-radius: 22px !important;
  }

  .order-conversion-page .checkout-stage .main-product {
    height: 330px !important;
    max-width: 88% !important;
  }

  .order-conversion-page .checkout-product-info,
  .order-conversion-page .checkout-story,
  .order-conversion-page .checkout-flow,
  .order-conversion-page .checkout-details,
  .order-conversion-page .checkout-qa,
  .order-conversion-page .checkout-final {
    scroll-margin-top: 76px !important;
  }

  .order-conversion-page .checkout-trust-grid article {
    min-height: 96px !important;
    border-radius: 18px !important;
  }

  .order-conversion-page .product-info-kit-visual,
  .order-conversion-page .checkout-structure-visual {
    min-height: 330px !important;
    border-radius: 22px !important;
  }

  .order-conversion-page .product-info-kit-visual {
    background-position: center 50% !important;
  }

  .order-conversion-page .checkout-structure-visual {
    background-position: center 45% !important;
  }

  .order-conversion-page .checkout-flow-grid article {
    padding: 10px 10px 22px !important;
    border-radius: 24px !important;
  }

  .order-conversion-page .checkout-flow-grid img {
    height: clamp(230px, 64vw, 320px) !important;
    border-radius: 18px !important;
  }

  .order-conversion-page .checkout-spec-table tr {
    padding: 18px !important;
  }
}

/* Homepage material section blue-lit product image. */
.design .design-product {
  width: min(930px, 86vw) !important;
  margin-top: clamp(18px, 3vw, 34px) !important;
}

.design .design-product::before {
  inset: 6% -8% -8% !important;
  border-radius: 34px !important;
  background:
    radial-gradient(ellipse at 50% 64%, rgba(86, 204, 242, 0.24), transparent 58%),
    radial-gradient(ellipse at 50% 44%, rgba(255, 255, 255, 0.1), transparent 62%) !important;
  filter: blur(20px) !important;
}

.design .design-product img {
  width: 100% !important;
  height: auto !important;
  max-height: min(58svh, 640px) !important;
  object-fit: cover !important;
  border: 1px solid rgba(255, 255, 255, 0.16) !important;
  border-radius: 34px !important;
  background: #dfe8f0 !important;
  box-shadow:
    0 40px 100px rgba(0, 0, 0, 0.44),
    0 0 80px rgba(86, 204, 242, 0.14),
    inset 0 1px 0 rgba(255, 255, 255, 0.32) !important;
  filter: saturate(1.04) contrast(1.03) !important;
}

@media (max-width: 760px) {
  .design .design-product {
    width: min(358px, 91vw) !important;
    margin-top: 22px !important;
  }

  .design .design-product::before {
    inset: 8% -10% -10% !important;
    border-radius: 24px !important;
    filter: blur(16px) !important;
  }

  .design .design-product img {
    max-height: none !important;
    aspect-ratio: 930 / 670 !important;
    border-radius: 24px !important;
  }
}

/* Mobile homepage price polish: keep pricing out of the product image. */
.hero .hero-price-order {
  display: none !important;
}

@media (max-width: 760px) {
  .hero .hero-stage-price {
    display: none !important;
  }

  .hero .hero-price-line {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 3px 14px !important;
    width: 100% !important;
    margin: 16px 0 14px !important;
    padding: 12px 14px 12px 16px !important;
    border: 1px solid rgba(8, 11, 16, 0.1) !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.95) !important;
    box-shadow: 0 20px 52px rgba(18, 28, 40, 0.16), inset 0 1px 0 rgba(255, 255, 255, 0.92) !important;
    backdrop-filter: blur(18px) saturate(1.12) !important;
    -webkit-backdrop-filter: blur(18px) saturate(1.12) !important;
  }

  .hero .hero-price-line strong {
    grid-column: 1 !important;
    grid-row: 1 !important;
    color: #080b10 !important;
    font-size: 1.32rem !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    text-shadow: none !important;
  }

  .hero .hero-price-line span {
    grid-column: 1 !important;
    grid-row: 2 !important;
    max-width: none !important;
    color: rgba(8, 11, 16, 0.54) !important;
    font-size: 0.68rem !important;
    font-weight: 850 !important;
    line-height: 1.12 !important;
    letter-spacing: 0.04em !important;
    text-align: left !important;
    text-transform: uppercase !important;
    white-space: normal !important;
  }

  .hero .hero-price-order {
    grid-column: 2 !important;
    grid-row: 1 / span 2 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 116px !important;
    min-height: 44px !important;
    padding: 0 18px !important;
    border-radius: 999px !important;
    color: #fff !important;
    background: linear-gradient(135deg, #26313b, #070a0e) !important;
    box-shadow: 0 14px 34px rgba(8, 13, 18, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.22) !important;
    font-size: 0.88rem !important;
    font-weight: 900 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
  }

  .hero .hero-actions .button-light {
    display: none !important;
  }
}

/* Mobile PDP final polish: align order page with the bottom quick-buy rhythm. */
@media (max-width: 760px) {
  .order-conversion-page .checkout-hero {
    padding-top: 12px !important;
    padding-bottom: 38px !important;
  }

  .order-conversion-page .checkout-grid {
    gap: 14px !important;
  }

  .order-conversion-page .checkout-stage {
    min-height: clamp(318px, 86vw, 360px) !important;
    border-radius: 22px !important;
  }

  .order-conversion-page .checkout-stage .main-product {
    height: clamp(284px, 78vw, 326px) !important;
    max-width: 86% !important;
  }

  .order-conversion-page .checkout-thumbs {
    gap: 8px !important;
    margin-top: 10px !important;
    padding: 8px !important;
    border-radius: 18px !important;
    background: rgba(255, 255, 255, 0.84) !important;
    box-shadow: 0 14px 34px rgba(18, 28, 40, 0.075) !important;
  }

  .order-conversion-page .checkout-panel .eyebrow {
    font-size: 0.66rem !important;
    letter-spacing: 0.12em !important;
  }

  .order-conversion-page .checkout-panel h1 {
    max-width: 9.8em !important;
    margin-top: 10px !important;
    font-size: clamp(2.12rem, 9.2vw, 2.84rem) !important;
    line-height: 1.02 !important;
  }

  .order-conversion-page.locale-ja .checkout-panel h1 {
    max-width: 10.6em !important;
    font-size: clamp(1.96rem, 8vw, 2.56rem) !important;
    line-height: 1.08 !important;
  }

  .order-conversion-page .order-lede {
    margin-top: 13px !important;
    font-size: 0.98rem !important;
    line-height: 1.5 !important;
  }

  .order-conversion-page .checkout-rating {
    margin-top: 12px !important;
    padding: 8px 10px !important;
    border-radius: 12px !important;
    font-size: 0.78rem !important;
  }

  .order-conversion-page .mobile-hero-price {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 3px 14px !important;
    margin-top: 16px !important;
    padding: 12px 14px 12px 16px !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.96) !important;
    box-shadow: 0 20px 52px rgba(18, 28, 40, 0.15), inset 0 1px 0 rgba(255, 255, 255, 0.92) !important;
    backdrop-filter: blur(18px) saturate(1.12) !important;
    -webkit-backdrop-filter: blur(18px) saturate(1.12) !important;
  }

  .order-conversion-page .mobile-hero-price div {
    display: grid !important;
    gap: 2px !important;
  }

  .order-conversion-page .mobile-hero-price strong {
    font-size: 1.32rem !important;
  }

  .order-conversion-page .mobile-hero-price span {
    font-size: 0.68rem !important;
    line-height: 1.12 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
  }

  .order-conversion-page .mobile-hero-price button {
    min-width: 116px !important;
    min-height: 44px !important;
    padding: 0 18px !important;
    background: linear-gradient(135deg, #26313b, #070a0e) !important;
    box-shadow: 0 14px 34px rgba(8, 13, 18, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.22) !important;
    font-size: 0.88rem !important;
  }

  .order-conversion-page .checkout-key-points {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
    margin-top: 12px !important;
  }

  .order-conversion-page .checkout-key-points span {
    display: grid !important;
    grid-template-columns: 1fr !important;
    align-content: center !important;
    gap: 5px !important;
    min-height: 82px !important;
    padding: 12px 10px !important;
    border-radius: 16px !important;
    text-align: left !important;
    line-height: 1.16 !important;
  }

  .order-conversion-page .checkout-key-points strong {
    font-size: 0.98rem !important;
    line-height: 1 !important;
  }

  .order-conversion-page .checkout-actions-card {
    margin-top: 14px !important;
    padding: 14px !important;
    border-radius: 20px !important;
  }

  .order-conversion-page .quantity-row {
    margin-bottom: 12px !important;
  }

  .order-conversion-page .checkout-actions-card .actions {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  .order-conversion-page .checkout-actions-card .button {
    min-height: 48px !important;
    border-radius: 999px !important;
  }

  .order-conversion-page .checkout-options {
    margin-top: 12px !important;
  }

  .order-conversion-page .checkout-trust {
    padding-top: 38px !important;
    padding-bottom: 42px !important;
  }

  .order-conversion-page .checkout-trust-grid {
    gap: 8px !important;
  }

  .order-conversion-page .checkout-trust-grid article {
    min-height: 82px !important;
    padding: 14px !important;
    border-radius: 18px !important;
  }

  .order-conversion-page .checkout-product-info,
  .order-conversion-page .checkout-story,
  .order-conversion-page .checkout-flow,
  .order-conversion-page .checkout-details,
  .order-conversion-page .checkout-qa,
  .order-conversion-page .checkout-final {
    padding-top: 48px !important;
    padding-bottom: 52px !important;
  }

  .order-conversion-page .product-info-grid,
  .order-conversion-page .checkout-story-grid {
    gap: 24px !important;
  }

  .order-conversion-page .product-info-kit-visual,
  .order-conversion-page .checkout-structure-visual {
    min-height: clamp(280px, 74vw, 330px) !important;
    border-radius: 22px !important;
  }

  .order-conversion-page .product-info-panels,
  .order-conversion-page .checkout-benefits {
    gap: 10px !important;
  }

  .order-conversion-page .product-info-panels article,
  .order-conversion-page .checkout-benefits article {
    padding: 16px !important;
    border-radius: 18px !important;
  }

  .order-conversion-page .checkout-flow-grid {
    gap: 12px !important;
  }

  .order-conversion-page .checkout-flow-grid article {
    padding: 10px 10px 18px !important;
    border-radius: 22px !important;
  }

  .order-conversion-page .checkout-flow-grid img {
    height: clamp(206px, 58vw, 260px) !important;
    border-radius: 16px !important;
  }

  .order-conversion-page .checkout-spec-table-wrap {
    border-radius: 20px !important;
    overflow: hidden !important;
  }

  .order-conversion-page .checkout-spec-table tr {
    padding: 14px 16px !important;
  }

  .order-conversion-page .checkout-spec-table th,
  .order-conversion-page .checkout-spec-table td {
    padding: 0 !important;
  }
}

@media (max-width: 380px) {
  .hero .hero-price-order,
  .order-conversion-page .mobile-hero-price button,
  .mobile-buy-bar a,
  .mobile-buy-bar button {
    min-width: 104px !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .order-conversion-page .checkout-key-points {
    grid-template-columns: 1fr !important;
  }

  .order-conversion-page .checkout-key-points span {
    min-height: 54px !important;
    grid-template-columns: 78px 1fr !important;
    align-items: center !important;
  }
}

.order-html {
  background: #f6f7f8 !important;
}

/* Mobile order page density pass: keep the buying path obvious. */
@media (max-width: 760px) {
  .order-conversion-page .checkout-actions-card .button-dark {
    display: none !important;
  }

  .order-conversion-page .checkout-actions-card .button-primary {
    min-height: 52px !important;
    font-size: 0.98rem !important;
  }

  .order-conversion-page .checkout-options summary {
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 14px !important;
    padding: 20px 18px !important;
    border-radius: 20px !important;
  }

  .order-conversion-page .checkout-options summary span {
    font-size: 0.68rem !important;
    letter-spacing: 0.1em !important;
  }

  .order-conversion-page .checkout-options summary strong {
    font-size: 1.06rem !important;
    line-height: 1.22 !important;
  }

  .order-conversion-page .checkout-options summary::after {
    width: 38px !important;
    height: 38px !important;
    font-size: 1.1rem !important;
  }

  .order-conversion-page .checkout-trust-grid article strong {
    font-size: 1.18rem !important;
  }

  .order-conversion-page .checkout-trust-grid article span {
    font-size: 0.75rem !important;
    line-height: 1.18 !important;
  }

  .order-conversion-page .product-info-copy h2,
  .order-conversion-page .checkout-story-copy h2,
  .order-conversion-page .checkout-section-head h2,
  .order-conversion-page .checkout-details h2,
  .order-conversion-page .checkout-qa-copy h2,
  .order-conversion-page .checkout-final-card h2 {
    font-size: clamp(2rem, 8.4vw, 2.68rem) !important;
    line-height: 1.04 !important;
  }

  .order-conversion-page.locale-ja .product-info-copy h2,
  .order-conversion-page.locale-ja .checkout-story-copy h2,
  .order-conversion-page.locale-ja .checkout-section-head h2,
  .order-conversion-page.locale-ja .checkout-details h2,
  .order-conversion-page.locale-ja .checkout-qa-copy h2,
  .order-conversion-page.locale-ja .checkout-final-card h2 {
    font-size: clamp(1.82rem, 7.4vw, 2.34rem) !important;
    line-height: 1.12 !important;
  }

  .order-conversion-page .product-info-copy > p,
  .order-conversion-page .checkout-story-copy > p,
  .order-conversion-page .checkout-details-note,
  .order-conversion-page .checkout-qa-copy p {
    font-size: 0.98rem !important;
    line-height: 1.48 !important;
  }

  .order-conversion-page .product-info-panels article {
    grid-template-columns: 44px 1fr !important;
    gap: 12px !important;
    padding: 15px !important;
  }

  .order-conversion-page .product-info-panels article span {
    width: 44px !important;
    height: 44px !important;
    font-size: 0.8rem !important;
  }

  .order-conversion-page .product-info-panels article h3,
  .order-conversion-page .checkout-benefits article strong {
    font-size: 1.08rem !important;
    line-height: 1.16 !important;
  }

  .order-conversion-page .product-info-panels article p,
  .order-conversion-page .checkout-benefits article span {
    font-size: 0.88rem !important;
    line-height: 1.42 !important;
  }

  .order-conversion-page .checkout-benefits article {
    padding: 15px !important;
  }

  .order-conversion-page .checkout-spec-table tr {
    gap: 7px !important;
    padding: 13px 15px !important;
  }

  .order-conversion-page .checkout-spec-table th {
    font-size: 0.76rem !important;
  }

  .order-conversion-page .checkout-spec-table td {
    font-size: 0.94rem !important;
    line-height: 1.34 !important;
  }
}

/* Mobile order refinement: one primary purchase path and cleaner product flow. */
@media (max-width: 760px) {
  .order-conversion-page .checkout-hero {
    padding-top: 8px !important;
    padding-bottom: 32px !important;
  }

  .order-conversion-page .checkout-grid {
    gap: 12px !important;
  }

  .order-conversion-page .checkout-stage {
    min-height: clamp(260px, 68vw, 306px) !important;
    border-radius: 22px !important;
  }

  .order-conversion-page .checkout-stage .main-product {
    height: clamp(238px, 62vw, 286px) !important;
    max-width: 80% !important;
    object-position: center center !important;
  }

  .order-conversion-page .checkout-thumbs {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 7px !important;
    margin-top: 8px !important;
    padding: 7px !important;
    border-radius: 16px !important;
  }

  .order-conversion-page .checkout-thumbs .thumb {
    min-height: 48px !important;
    border-radius: 12px !important;
  }

  .order-conversion-page .checkout-thumbs .thumb img {
    max-height: 42px !important;
    object-fit: contain !important;
  }

  .order-conversion-page .checkout-panel h1 {
    max-width: 9.4em !important;
    margin-top: 8px !important;
    font-size: clamp(2.02rem, 8.7vw, 2.64rem) !important;
  }

  .order-conversion-page.locale-ja .checkout-panel h1 {
    max-width: 10.5em !important;
    font-size: clamp(1.86rem, 7.6vw, 2.32rem) !important;
  }

  .order-conversion-page .mobile-hero-price {
    margin-top: 14px !important;
  }

  .order-conversion-page .order-lede {
    max-width: 24em !important;
    margin-top: 12px !important;
    font-size: 0.94rem !important;
    line-height: 1.44 !important;
  }

  .order-conversion-page .checkout-actions-card,
  .order-conversion-page .order-detail-drawer {
    display: none !important;
  }

  .order-conversion-page .checkout-trust {
    padding-top: 30px !important;
    padding-bottom: 34px !important;
  }

  .order-conversion-page .checkout-trust-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  .order-conversion-page .checkout-trust-grid article {
    position: relative !important;
    min-height: 118px !important;
    padding: 16px !important;
    border-radius: 20px !important;
    overflow: hidden !important;
  }

  .order-conversion-page .checkout-trust-grid article::before {
    content: "" !important;
    width: 22px !important;
    height: 3px !important;
    border-radius: 999px !important;
    background: #e51c2d !important;
  }

  .order-conversion-page .checkout-trust-grid article strong {
    font-size: 1.02rem !important;
    line-height: 1.08 !important;
  }

  .order-conversion-page .checkout-trust-grid article span {
    font-size: 0.76rem !important;
    line-height: 1.28 !important;
  }

  .order-conversion-page .product-info-grid {
    gap: 20px !important;
  }

  .order-conversion-page .product-info-kit-visual,
  .order-conversion-page .checkout-structure-visual {
    min-height: clamp(250px, 66vw, 310px) !important;
    background-size: cover !important;
  }

  .order-conversion-page .product-info-kit-visual {
    background-position: center 54% !important;
  }

  .order-conversion-page .checkout-structure-visual {
    background-position: center 50% !important;
  }

  .order-conversion-page .product-info-panels {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  .order-conversion-page .product-info-panels article {
    display: grid !important;
    grid-template-columns: 1fr !important;
    align-content: start !important;
    min-height: 154px !important;
    padding: 14px !important;
    gap: 8px !important;
    border-radius: 18px !important;
  }

  .order-conversion-page .product-info-panels article span {
    width: auto !important;
    height: auto !important;
    justify-self: start !important;
    padding: 5px 9px !important;
    border-radius: 999px !important;
    background: rgba(229, 28, 45, 0.1) !important;
    color: #c81424 !important;
    font-size: 0.68rem !important;
    line-height: 1 !important;
    letter-spacing: 0.03em !important;
  }

  .order-conversion-page .product-info-panels article h3 {
    font-size: 1.02rem !important;
    line-height: 1.14 !important;
  }

  .order-conversion-page .product-info-panels article p {
    grid-column: auto !important;
    font-size: 0.82rem !important;
    line-height: 1.36 !important;
  }

  .order-conversion-page .checkout-flow-grid {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .order-conversion-page .checkout-flow-grid article {
    display: grid !important;
    grid-template-columns: minmax(118px, 42%) minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 10px !important;
    border-radius: 20px !important;
  }

  .order-conversion-page .checkout-flow-grid img {
    grid-row: 1 / span 2 !important;
    width: 100% !important;
    height: clamp(116px, 34vw, 146px) !important;
    border-radius: 16px !important;
    object-fit: cover !important;
  }

  .order-conversion-page .checkout-flow-grid article:nth-child(1) img {
    object-position: center 58% !important;
  }

  .order-conversion-page .checkout-flow-grid article:nth-child(2) img {
    object-position: center 38% !important;
  }

  .order-conversion-page .checkout-flow-grid article:nth-child(3) img {
    object-position: center 50% !important;
  }

  .order-conversion-page .checkout-flow-grid strong,
  .order-conversion-page .checkout-flow-grid span {
    padding: 0 !important;
  }

  .order-conversion-page .checkout-flow-grid strong {
    align-self: end !important;
    margin: 0 !important;
    font-size: 1.04rem !important;
    line-height: 1.14 !important;
  }

  .order-conversion-page .checkout-flow-grid span {
    align-self: start !important;
    font-size: 0.82rem !important;
    line-height: 1.34 !important;
  }

  .order-conversion-page .checkout-benefits {
    gap: 10px !important;
  }

  .order-conversion-page .checkout-benefits article {
    grid-template-columns: 1fr !important;
    gap: 7px !important;
    padding: 16px !important;
    border-radius: 18px !important;
  }

  .order-conversion-page .checkout-benefits article::before {
    counter-increment: none !important;
    content: "" !important;
    display: block !important;
    grid-row: auto !important;
    width: 22px !important;
    height: 3px !important;
    place-items: initial !important;
    border-radius: 999px !important;
    background: #e51c2d !important;
  }

  .order-conversion-page .checkout-benefits strong,
  .order-conversion-page .checkout-benefits span {
    grid-column: auto !important;
  }

  .order-conversion-page .checkout-benefits article strong {
    font-size: 1.02rem !important;
    line-height: 1.14 !important;
  }

  .order-conversion-page .checkout-benefits article span {
    font-size: 0.84rem !important;
    line-height: 1.36 !important;
  }
}

@media (max-width: 380px) {
  .order-conversion-page .checkout-trust-grid,
  .order-conversion-page .product-info-panels {
    grid-template-columns: 1fr !important;
  }

  .order-conversion-page .product-info-panels article {
    min-height: 0 !important;
  }
}

/* Keep the Molecular Hydrogen section on the original clean white canvas. */
.performance.scene-white {
  background: #ffffff !important;
}

.performance.scene-white::before,
.performance.scene-white::after {
  display: none !important;
}

/* Final nav restoration: stable light menu with EN/JP switch. */
.site-header,
.shop-header {
  background: rgba(255, 255, 255, 0.9) !important;
  border-bottom: 1px solid rgba(12, 20, 30, 0.1) !important;
  box-shadow: 0 16px 44px rgba(18, 28, 40, 0.08) !important;
  backdrop-filter: blur(20px) saturate(1.16) !important;
  -webkit-backdrop-filter: blur(20px) saturate(1.16) !important;
}

.site-header .nav,
.shop-header .shop-nav {
  background: transparent !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}

.site-header .nav-links > a,
.shop-header .nav-links > a {
  color: rgba(8, 11, 16, 0.68) !important;
  text-shadow: none !important;
}

.site-header .nav-links > a:hover,
.shop-header .nav-links > a:hover {
  color: var(--premium-ink) !important;
}

.site-header .menu-toggle span {
  background: var(--premium-ink) !important;
}

@media (max-width: 760px) {
  .site-header .mobile-menu .lang-switch {
    display: inline-flex !important;
    width: fit-content !important;
    margin: 8px 12px 6px !important;
  }

  .site-header .mobile-menu .lang-switch a {
    display: inline-flex !important;
    min-height: 28px !important;
    height: 28px !important;
    min-width: 34px !important;
    padding: 0 9px !important;
    border-radius: 999px !important;
    font-size: 0.72rem !important;
    font-weight: 900 !important;
    letter-spacing: 0.04em !important;
    line-height: 1 !important;
  }
}

/* Shopify-style mobile PDP: keep the purchase form in the product panel. */
@media (max-width: 760px) {
  .order-conversion-page .mobile-hero-price,
  .order-conversion-page .order-lede {
    display: none !important;
  }

  .order-conversion-page .checkout-price-row {
    display: flex !important;
    margin-top: 18px !important;
  }

  .order-conversion-page .checkout-actions-card {
    display: block !important;
    margin-top: 12px !important;
  }

  .order-conversion-page .order-detail-drawer {
    display: block !important;
  }

  .order-conversion-page .checkout-actions-card .button-dark {
    display: inline-flex !important;
  }

  .order-conversion-page .checkout-actions-card .actions {
    grid-template-columns: 1fr !important;
  }

.order-conversion-page .checkout-final {
    display: none !important;
  }
}

/* Final order mobile pass: one clear top buy module plus cleaner benefits. */
.order-conversion-page .hero-mobile-order {
  display: none !important;
}

.order-conversion-page .checkout-structure-visual > img {
  opacity: 0 !important;
  object-fit: contain !important;
  object-position: center center !important;
}

@media (max-width: 760px) {
  .order-conversion-page .checkout-price-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 2px 14px !important;
    margin-top: 14px !important;
    padding: 12px 14px 12px 16px !important;
    border: 1px solid rgba(8, 11, 16, 0.08) !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.96) !important;
    box-shadow: 0 20px 52px rgba(18, 28, 40, 0.15), inset 0 1px 0 rgba(255, 255, 255, 0.92) !important;
    backdrop-filter: blur(18px) saturate(1.12) !important;
    -webkit-backdrop-filter: blur(18px) saturate(1.12) !important;
  }

  .order-conversion-page .checkout-price-row div {
    grid-column: 1 !important;
    grid-row: 1 !important;
    min-width: 0 !important;
    gap: 0 !important;
  }

  .order-conversion-page .checkout-price-row span {
    display: none !important;
  }

  .order-conversion-page .checkout-price-row strong {
    font-size: 1.34rem !important;
    line-height: 1 !important;
  }

  .order-conversion-page .checkout-price-row em {
    grid-column: 1 !important;
    grid-row: 2 !important;
    align-self: start !important;
    padding: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: rgba(8, 11, 16, 0.56) !important;
    font-size: 0.68rem !important;
    font-style: normal !important;
    font-weight: 880 !important;
    line-height: 1.12 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
  }

  .order-conversion-page.locale-ja .checkout-price-row em {
    letter-spacing: 0 !important;
    text-transform: none !important;
  }

  .order-conversion-page .hero-mobile-order {
    grid-column: 2 !important;
    grid-row: 1 / span 2 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 116px !important;
    min-height: 44px !important;
    padding: 0 18px !important;
    border: 0 !important;
    border-radius: 999px !important;
    color: #fff !important;
    background: linear-gradient(135deg, #26313b, #070a0e) !important;
    box-shadow: 0 14px 34px rgba(8, 13, 18, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.22) !important;
    font-size: 0.88rem !important;
    font-weight: 930 !important;
    white-space: nowrap !important;
  }

  .order-conversion-page .checkout-actions-card,
  .order-conversion-page .order-detail-drawer {
    display: none !important;
  }

  .order-conversion-page .checkout-trust-grid {
    gap: 9px !important;
  }

  .order-conversion-page .checkout-trust-grid article {
    min-height: 112px !important;
    padding: 15px !important;
    border-radius: 20px !important;
    background: rgba(255, 255, 255, 0.94) !important;
  }

  .order-conversion-page .checkout-trust-grid article strong {
    font-size: 0.98rem !important;
    line-height: 1.12 !important;
  }

  .order-conversion-page .checkout-trust-grid article span {
    font-size: 0.74rem !important;
    line-height: 1.3 !important;
  }

  .order-conversion-page .product-info-kit-visual > img {
    opacity: 0 !important;
  }

  .order-conversion-page .checkout-structure-visual > img {
    opacity: 0 !important;
    object-fit: contain !important;
  }
}

/* Mobile homepage purchase module: match the final buy rhythm and simplify specs. */
@media (max-width: 760px) {
  .hero .hero-price-line {
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 4px 14px !important;
    width: calc(100% - 6px) !important;
    min-height: 74px !important;
    margin: 18px auto 12px !important;
    padding: 11px 11px 11px 18px !important;
    border: 1px solid rgba(8, 11, 16, 0.08) !important;
    border-radius: 30px !important;
    background:
      linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(247, 250, 252, 0.94)) !important;
    box-shadow:
      0 22px 54px rgba(18, 28, 40, 0.14),
      inset 0 1px 0 rgba(255, 255, 255, 0.94) !important;
  }

  .hero .hero-price-line strong {
    color: #080b10 !important;
    font-size: clamp(1.72rem, 7.4vw, 2.28rem) !important;
    font-weight: 950 !important;
    line-height: 0.98 !important;
    letter-spacing: 0 !important;
  }

  .hero .hero-price-line span {
    color: rgba(8, 11, 16, 0.5) !important;
    font-size: 0.62rem !important;
    font-weight: 900 !important;
    line-height: 1.1 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
  }

  body.locale-ja .hero .hero-price-line span {
    letter-spacing: 0 !important;
    text-transform: none !important;
  }

  .hero .hero-price-order {
    min-width: clamp(112px, 34vw, 138px) !important;
    min-height: 52px !important;
    padding: 0 20px !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, #202a33 0%, #080b10 100%) !important;
    box-shadow:
      0 16px 34px rgba(8, 13, 18, 0.24),
      inset 0 1px 0 rgba(255, 255, 255, 0.18) !important;
    font-size: 0.98rem !important;
    font-weight: 920 !important;
  }

  .hero .hero-actions {
    margin-top: 10px !important;
    gap: 10px !important;
    justify-content: flex-start !important;
  }

  .hero .hero-actions .button-ghost {
    min-height: 46px !important;
    padding: 0 22px !important;
    border-radius: 999px !important;
    color: #080b10 !important;
    border: 1px solid rgba(8, 11, 16, 0.12) !important;
    background: rgba(255, 255, 255, 0.7) !important;
    box-shadow:
      0 10px 24px rgba(18, 28, 40, 0.08),
      inset 0 1px 0 rgba(255, 255, 255, 0.84) !important;
    font-size: 0.9rem !important;
  }

  .hero .spec-rail {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: calc(100% - 28px) !important;
    margin: 18px auto 0 !important;
    padding: 10px !important;
    border: 1px solid rgba(255, 255, 255, 0.74) !important;
    border-radius: 28px !important;
    background:
      linear-gradient(180deg, rgba(255, 255, 255, 0.86), rgba(247, 250, 252, 0.78)) !important;
    box-shadow:
      0 22px 56px rgba(18, 28, 40, 0.11),
      inset 0 1px 0 rgba(255, 255, 255, 0.92) !important;
    backdrop-filter: blur(16px) saturate(1.08) !important;
    -webkit-backdrop-filter: blur(16px) saturate(1.08) !important;
  }

  .hero .spec-rail::before {
    display: none !important;
    content: none !important;
  }

  .hero .spec-rail div {
    position: relative !important;
    min-height: 96px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    gap: 16px !important;
    padding: 16px 14px 15px !important;
    border: 1px solid rgba(8, 11, 16, 0.06) !important;
    border-radius: 22px !important;
    background:
      linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(249, 251, 253, 0.88)) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.92) !important;
    overflow: hidden !important;
  }

  .hero .spec-rail div::after {
    left: 14px !important;
    top: 14px !important;
    width: 6px !important;
    height: 6px !important;
    border-radius: 50% !important;
    background: var(--fulmor-red) !important;
    box-shadow: none !important;
    opacity: 0.9 !important;
  }

  .hero .spec-rail span {
    padding-left: 13px !important;
    color: rgba(8, 11, 16, 0.48) !important;
    font-size: 0.64rem !important;
    font-weight: 900 !important;
    line-height: 1.1 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
  }

  body.locale-ja .hero .spec-rail span {
    letter-spacing: 0 !important;
    text-transform: none !important;
  }

  .hero .spec-rail strong {
    color: #080b10 !important;
    font-size: clamp(1.42rem, 6.8vw, 2.05rem) !important;
    font-weight: 950 !important;
    line-height: 1.02 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
  }

  .hero .spec-rail div:nth-child(4) strong {
    font-size: clamp(1.24rem, 5.7vw, 1.72rem) !important;
  }
}

@media (max-width: 374px) {
  .hero .hero-price-line {
    padding-left: 15px !important;
  }

  .hero .hero-price-order {
    min-width: 104px !important;
    padding: 0 16px !important;
  }

  .hero .spec-rail {
    width: calc(100% - 20px) !important;
    gap: 8px !important;
    padding: 8px !important;
  }

  .hero .spec-rail div {
    min-height: 90px !important;
    padding: 14px 12px !important;
  }

  .hero .spec-rail strong {
    font-size: 1.32rem !important;
  }
}

/* Mobile order page: Shopify-style product purchase form. */
@media (max-width: 760px) {
  .order-conversion-page .checkout-price-row {
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    align-items: end !important;
    gap: 8px 12px !important;
    margin-top: 18px !important;
    padding: 18px 18px 16px !important;
    border: 1px solid rgba(8, 11, 16, 0.08) !important;
    border-radius: 24px !important;
    background:
      linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(247, 250, 252, 0.92)) !important;
    box-shadow:
      0 18px 48px rgba(18, 28, 40, 0.1),
      inset 0 1px 0 rgba(255, 255, 255, 0.94) !important;
    backdrop-filter: blur(16px) saturate(1.08) !important;
    -webkit-backdrop-filter: blur(16px) saturate(1.08) !important;
  }

  .order-conversion-page .checkout-price-row div {
    display: grid !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
    gap: 5px !important;
    min-width: 0 !important;
  }

  .order-conversion-page .checkout-price-row span {
    display: block !important;
    color: rgba(8, 11, 16, 0.48) !important;
    font-size: 0.66rem !important;
    font-weight: 900 !important;
    letter-spacing: 0.06em !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
  }

  .order-conversion-page.locale-ja .checkout-price-row span {
    letter-spacing: 0 !important;
    text-transform: none !important;
  }

  .order-conversion-page .checkout-price-row strong {
    color: #080b10 !important;
    font-size: clamp(2.18rem, 10vw, 2.82rem) !important;
    font-weight: 950 !important;
    line-height: 0.94 !important;
    letter-spacing: 0 !important;
  }

  .order-conversion-page .checkout-price-row em {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: center !important;
    justify-self: end !important;
    padding: 8px 11px !important;
    border: 1px solid rgba(8, 11, 16, 0.08) !important;
    border-radius: 999px !important;
    background: #fff !important;
    color: rgba(8, 11, 16, 0.62) !important;
    font-size: 0.68rem !important;
    font-style: normal !important;
    font-weight: 900 !important;
    letter-spacing: 0.02em !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
  }

  .order-conversion-page.locale-ja .checkout-price-row em {
    letter-spacing: 0 !important;
    text-transform: none !important;
  }

  .order-conversion-page .hero-mobile-order {
    display: none !important;
  }

  .order-conversion-page .checkout-actions-card {
    display: block !important;
    margin-top: 12px !important;
    padding: 16px !important;
    border-radius: 24px !important;
    background: rgba(255, 255, 255, 0.96) !important;
    box-shadow:
      0 18px 48px rgba(18, 28, 40, 0.1),
      inset 0 1px 0 rgba(255, 255, 255, 0.94) !important;
  }

  .order-conversion-page .quantity-row {
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    align-items: center !important;
    gap: 12px !important;
    min-height: 48px !important;
  }

  .order-conversion-page .quantity-row label {
    color: rgba(8, 11, 16, 0.68) !important;
    font-size: 0.88rem !important;
    font-weight: 900 !important;
  }

  .order-conversion-page .qty {
    height: 44px !important;
    min-width: 132px !important;
    display: grid !important;
    grid-template-columns: 42px 48px 42px !important;
    align-items: center !important;
    overflow: hidden !important;
    border: 1px solid rgba(8, 11, 16, 0.12) !important;
    border-radius: 999px !important;
    background: #f7f9fb !important;
  }

  .order-conversion-page .qty button,
  .order-conversion-page .qty input {
    width: 100% !important;
    height: 100% !important;
    border: 0 !important;
    background: transparent !important;
    color: #080b10 !important;
    font-size: 0.96rem !important;
    font-weight: 900 !important;
    text-align: center !important;
  }

  .order-conversion-page .checkout-actions-card .actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    margin-top: 14px !important;
  }

  .order-conversion-page .checkout-actions-card .button {
    width: 100% !important;
    min-height: 56px !important;
    border-radius: 999px !important;
    font-size: 0.98rem !important;
    font-weight: 930 !important;
  }

  .order-conversion-page .checkout-actions-card .button-primary {
    color: #fff !important;
    background: linear-gradient(135deg, #202a33 0%, #070a0e 100%) !important;
    box-shadow:
      0 16px 34px rgba(8, 13, 18, 0.24),
      inset 0 1px 0 rgba(255, 255, 255, 0.18) !important;
  }

  .order-conversion-page .checkout-actions-card .button-dark {
    display: inline-flex !important;
    color: #080b10 !important;
    border: 1px solid rgba(8, 11, 16, 0.14) !important;
    background: #fff !important;
    box-shadow: none !important;
  }

  .order-conversion-page .order-detail-drawer {
    display: block !important;
    margin-top: 12px !important;
  }

  .order-conversion-page .checkout-trust {
    padding-top: 30px !important;
  }
}

@media (max-width: 374px) {
  .order-conversion-page .checkout-price-row {
    grid-template-columns: 1fr !important;
  }

  .order-conversion-page .checkout-price-row em {
    grid-column: 1 !important;
    grid-row: 2 !important;
    justify-self: start !important;
  }

  .order-conversion-page .qty {
    min-width: 122px !important;
    grid-template-columns: 38px 46px 38px !important;
  }
}

/* Mobile home hero: match the final order section price and button rhythm. */
@media (max-width: 760px) {
  .hero {
    min-height: 0 !important;
    padding-bottom: 72px !important;
  }

  .hero .hero-grid {
    gap: 10px !important;
  }

  .hero .hero-stage {
    height: min(300px, 72vw) !important;
    margin-top: -10px !important;
  }

  .hero .hero-product {
    height: min(292px, 70vw) !important;
    max-height: 292px !important;
  }

  .hero h1 {
    font-size: clamp(3rem, 12.1vw, 4.15rem) !important;
    line-height: 0.96 !important;
  }

  .hero p {
    margin-top: 12px !important;
    font-size: 0.96rem !important;
    line-height: 1.54 !important;
  }

  .hero .hero-price-line {
    display: block !important;
    width: auto !important;
    min-height: 0 !important;
    margin: 16px 0 10px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  .hero .hero-price-line strong {
    display: block !important;
    color: var(--fulmor-red) !important;
    font-size: clamp(4.55rem, 21vw, 6.15rem) !important;
    font-weight: 950 !important;
    line-height: 0.88 !important;
    letter-spacing: 0 !important;
    text-shadow: none !important;
  }

  .hero .hero-price-line span,
  .hero .hero-price-order {
    display: none !important;
  }

  .hero .hero-actions {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 14px !important;
    margin-top: 8px !important;
  }

  .hero .hero-actions .button-light,
  .hero .hero-actions .button-ghost {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 54px !important;
    border-radius: 999px !important;
    padding: 0 24px !important;
    font-size: 0.96rem !important;
    font-weight: 930 !important;
    letter-spacing: 0 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
  }

  .hero .hero-actions .button-light {
    min-width: 118px !important;
    color: #fff !important;
    border: 1px solid rgba(8, 11, 16, 0.18) !important;
    background: linear-gradient(135deg, #202a33 0%, #070a0e 100%) !important;
    box-shadow:
      0 16px 34px rgba(8, 13, 18, 0.24),
      inset 0 1px 0 rgba(255, 255, 255, 0.18) !important;
  }

  .hero .hero-actions .button-ghost {
    min-width: 138px !important;
    color: #080b10 !important;
    border: 1px solid rgba(8, 11, 16, 0.1) !important;
    background:
      linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(248, 250, 252, 0.88)) !important;
    box-shadow:
      0 14px 34px rgba(18, 28, 40, 0.1),
      inset 0 1px 0 rgba(255, 255, 255, 0.9) !important;
  }
}

@media (max-width: 374px) {
  .hero .hero-price-line strong {
    font-size: clamp(4rem, 19vw, 5.2rem) !important;
  }

  .hero .hero-actions {
    gap: 10px !important;
  }

  .hero .hero-actions .button-light,
  .hero .hero-actions .button-ghost {
    min-height: 50px !important;
    padding: 0 20px !important;
  }

  .hero .hero-actions .button-light {
    min-width: 108px !important;
  }

  .hero .hero-actions .button-ghost {
    min-width: 124px !important;
  }
}

/* Mobile lifestyle visual: keep the bottle in frame instead of cropping it at the edge. */
@media (max-width: 760px) {
  .lifestyle-bg img {
    object-position: 62% center !important;
  }
}

/* Keep scenario images clean; labels live in the list below, not on the image. */
.moment-feature .moment-caption {
  display: none !important;
}

/* Short desktop viewports: keep the hero purchase buttons fully visible above the fold. */
@media (min-width: 761px) and (max-height: 940px) {
  .hero-copy {
    transform: translateY(-42px) !important;
  }

  .hero-stage {
    transform: translateY(-18px) !important;
  }
}

/* Final mobile lock: keep the approved mobile purchase and media rhythm stable. */
@media (max-width: 760px) {
  .hero .hero-stage {
    height: min(318px, 75vw) !important;
    margin-top: -16px !important;
  }

  .hero .hero-product {
    height: min(306px, 72vw) !important;
    max-height: 306px !important;
    width: auto !important;
    object-fit: contain !important;
  }

  .hero .hero-price-line {
    display: block !important;
    margin: 14px 0 8px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  .hero .hero-price-line strong {
    display: block !important;
    color: var(--fulmor-red) !important;
    font-size: clamp(4.35rem, 20.5vw, 5.95rem) !important;
    line-height: 0.88 !important;
    letter-spacing: 0 !important;
  }

  .hero .hero-price-line span,
  .hero .hero-price-order {
    display: none !important;
  }

  .hero .hero-actions {
    display: flex !important;
    gap: 14px !important;
    margin-top: 6px !important;
  }

  .hero .hero-actions .button-light,
  .hero .hero-actions .button-ghost {
    display: inline-flex !important;
    min-height: 54px !important;
    border-radius: 999px !important;
    font-size: 0.96rem !important;
    font-weight: 930 !important;
  }

  .hero .hero-actions .button-light {
    min-width: 118px !important;
    color: #fff !important;
    background: linear-gradient(135deg, #202a33 0%, #070a0e 100%) !important;
  }

  .hero .hero-actions .button-ghost {
    min-width: 138px !important;
    color: #080b10 !important;
    border: 1px solid rgba(8, 11, 16, 0.1) !important;
    background: rgba(255, 255, 255, 0.9) !important;
  }

  .hero .spec-rail {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: calc(100% - 28px) !important;
    margin-top: 18px !important;
  }

  .hero .spec-rail div {
    min-height: 92px !important;
    padding: 15px 14px !important;
    border-radius: 22px !important;
  }

  .hero .spec-rail span {
    font-size: 0.62rem !important;
  }

  .hero .spec-rail strong {
    font-size: clamp(1.34rem, 6.2vw, 1.92rem) !important;
  }

  .lifestyle-bg img {
    object-position: center center !important;
  }

  .moment-feature,
  .moment-feature img {
    border-radius: 24px !important;
  }

  .moment-feature::after,
  .moment-feature .moment-caption {
    display: none !important;
    content: none !important;
  }

  .moment-feature {
    background: transparent !important;
    box-shadow: none !important;
  }
}

@media (max-width: 374px) {
  .hero .hero-price-line strong {
    font-size: clamp(3.85rem, 18.8vw, 5rem) !important;
  }

  .hero .hero-actions {
    gap: 10px !important;
  }

  .hero .hero-actions .button-light,
  .hero .hero-actions .button-ghost {
    min-height: 50px !important;
    padding: 0 18px !important;
  }
}
