:root {
  --kk-red: #B3131B;
  --kk-red-bright: #D93434;
  --kk-red-deep: #720A10;
  --kk-gold: #C99A2E;
  --kk-gold-deep: #9A6F17;
  --kk-gold-light: #F6D77C;
  --kk-cream: #FFF8EC;
  --kk-cream-2: #F7E8CE;
  --kk-porcelain: #FFFCF7;
  --kk-ink: #241313;
  --kk-muted: #7B6762;
  --kk-white: #FFFFFF;
  --shadow-soft: 0 24px 70px rgba(122, 11, 16, 0.13);
  --shadow-product: 0 16px 28px rgba(92, 23, 20, 0.12);
  --shadow-gold: 0 18px 46px rgba(201, 154, 46, 0.28);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;
  color: var(--kk-ink);
  background: var(--kk-cream);
}
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }

.site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  height: 72px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 max(28px, 6vw);
  background: rgba(255, 248, 236, 0.84);
  backdrop-filter: saturate(180%) blur(20px);
  border-bottom: 1px solid rgba(201, 154, 46, 0.20);
}
.brand img { width: 136px; height: auto; }
.nav { display: flex; gap: 28px; font-size: 14px; color: rgba(36, 19, 19, 0.76); }
.nav a { position: relative; padding: 26px 0; }
.nav a::after { content: ""; position: absolute; left: 0; right: 0; bottom: 18px; height: 2px; transform: scaleX(0); transform-origin: center; background: var(--kk-red); transition: transform .2s ease; }
.nav a:hover { color: var(--kk-red); }
.nav a:hover::after { transform: scaleX(1); }
.nav-cta, .button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  min-height: 44px;
  padding: 0 24px;
  font-weight: 800;
  letter-spacing: .01em;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.nav-cta { color: white; background: linear-gradient(135deg, var(--kk-red), var(--kk-red-deep)); box-shadow: 0 12px 34px rgba(179, 19, 27, .22); }
.nav-cta:hover, .button:hover { transform: translateY(-2px); }

.section-red-gold {
  background:
    radial-gradient(circle at 78% 16%, rgba(246, 215, 124, .42), transparent 24%),
    radial-gradient(circle at 14% 88%, rgba(255, 248, 236, .18), transparent 30%),
    linear-gradient(132deg, #5F070C 0%, var(--kk-red-deep) 22%, var(--kk-red) 58%, #E04D36 100%);
}
.hero {
  position: relative;
  overflow: hidden;
  min-height: calc(100vh - 72px);
  display: grid;
  grid-template-columns: minmax(560px, .92fr) minmax(560px, 1.08fr);
  align-items: center;
  gap: 42px;
  padding: 72px max(30px, 5.4vw) 62px;
  color: white;
}
.hero::before { content: ""; position: absolute; inset: 28px; border: 1px solid rgba(246, 215, 124, .25); border-radius: 42px; pointer-events: none; }
.hero-glow { position: absolute; border-radius: 999px; filter: blur(10px); pointer-events: none; }
.hero-glow-one { width: 380px; height: 380px; right: 11%; top: 12%; background: rgba(246, 215, 124, .18); }
.hero-glow-two { width: 300px; height: 300px; left: 8%; bottom: 7%; background: rgba(255, 255, 255, .10); }
.hero-content { position: relative; z-index: 3; max-width: 820px; }
.eyebrow { margin: 0 0 16px; text-transform: uppercase; letter-spacing: .18em; font-size: 13px; font-weight: 900; }
.eyebrow.light { color: var(--kk-gold-light); }
.eyebrow.red { color: var(--kk-red); }
.eyebrow.gold { color: var(--kk-gold); }
.hero h1 { margin: 0; max-width: 860px; font-size: clamp(46px, 5.45vw, 82px); line-height: 1.05; letter-spacing: -.045em; font-weight: 900; text-wrap: balance; }
.hero h1 span { display: block; white-space: nowrap; }
.hero-subtitle { margin: 26px 0 12px; font-size: clamp(26px, 3vw, 42px); font-weight: 800; color: var(--kk-gold-light); }
.hero-copy { max-width: 660px; margin: 0; font-size: 19px; line-height: 1.82; color: rgba(255, 255, 255, .88); }
.hero-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 34px; }
.button-primary { color: var(--kk-red-deep); background: linear-gradient(135deg, var(--kk-gold-light), var(--kk-gold)); box-shadow: var(--shadow-gold); }
.button-ghost { color: white; border: 1px solid rgba(255,255,255,.42); background: rgba(255,255,255,.08); }
.hero-metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; max-width: 610px; margin-top: 42px; }
.hero-metrics div { padding: 18px 16px; border-radius: 22px; background: rgba(255,255,255,.10); border: 1px solid rgba(246,215,124,.25); backdrop-filter: blur(12px); }
.hero-metrics strong { display: block; font-size: clamp(22px, 2vw, 28px); line-height: 1.08; color: var(--kk-gold-light); }
.hero-metrics span { display: block; margin-top: 8px; font-size: 13px; color: rgba(255,255,255,.78); }
.hero-showcase { position: relative; z-index: 2; height: 720px; border-radius: 48px; background: linear-gradient(160deg, rgba(255,248,236,.96), rgba(255,233,190,.78)); border: 1px solid rgba(246,215,124,.55); box-shadow: 0 46px 130px rgba(36, 19, 19, .34); overflow: hidden; }
.showcase-ring { position: absolute; width: 545px; height: 545px; left: 50%; top: 52%; transform: translate(-50%, -50%); border-radius: 50%; border: 2px solid rgba(201,154,46,.30); box-shadow: inset 0 0 70px rgba(201,154,46,.10), 0 0 0 26px rgba(246,215,124,.10), 0 0 0 54px rgba(179,19,27,.045); }
.showcase-ring::before, .showcase-ring::after { content: ""; position: absolute; border-radius: 50%; background: linear-gradient(135deg, var(--kk-gold-light), var(--kk-gold)); box-shadow: 0 10px 28px rgba(201,154,46,.30); }
.showcase-ring::before { width: 18px; height: 18px; left: 52px; top: 82px; }
.showcase-ring::after { width: 11px; height: 11px; right: 70px; bottom: 96px; background: var(--kk-red-bright); }
.hero-tree { position: absolute; width: 450px; opacity: .14; left: 50%; top: 38%; transform: translate(-50%, -50%); }
.hero-pack { position: absolute; object-fit: contain; filter: drop-shadow(0 14px 18px rgba(92, 23, 20, 0.12)); }
.pack-main { width: 590px; left: 50%; top: -42px; transform: translateX(-50%); z-index: 4; }
.pack-left { width: 440px; left: -76px; bottom: -4px; transform: rotate(-6deg); z-index: 3; }
.pack-right { width: 440px; right: -76px; bottom: -4px; transform: rotate(6deg); z-index: 3; }
.hero-mascot { position: absolute; width: 142px; right: 24px; top: 24px; z-index: 5; filter: drop-shadow(0 10px 14px rgba(122,11,16,.12)); }

.section { padding: 104px max(30px, 7vw); }
.section-heading { max-width: 860px; margin-bottom: 48px; }
.section-heading.center { margin-left: auto; margin-right: auto; text-align: center; }
.section-heading h2, .story-copy h2, .quality-content h2, .verify-section h2 { margin: 0; font-size: clamp(36px, 5vw, 66px); line-height: 1.05; letter-spacing: -.05em; }
.section-heading p:not(.eyebrow), .story-copy p, .quality-content p, .verify-section p { color: var(--kk-muted); font-size: 18px; line-height: 1.82; }

.brand-story-section { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(360px, .78fr); gap: 54px; align-items: center; background: linear-gradient(180deg, var(--kk-cream), #fffdf8); }
.story-copy p { max-width: 860px; }
.story-card { padding: 32px; border-radius: 38px; background: rgba(255,255,255,.78); border: 1px solid rgba(201,154,46,.22); box-shadow: var(--shadow-soft); }
.story-card img { width: 100%; max-height: 300px; object-fit: contain; margin-bottom: 12px; }
.story-card span { color: var(--kk-gold-deep); font-size: 13px; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.story-card strong { display: block; margin-top: 8px; color: var(--kk-red); font-size: 30px; letter-spacing: -.03em; }
.story-card p { color: var(--kk-muted); line-height: 1.75; }

.products-section { background: #fffaf1; position: relative; }
.products-section::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 8% 18%, rgba(201,154,46,.13), transparent 24%), radial-gradient(circle at 95% 42%, rgba(179,19,27,.08), transparent 30%); pointer-events: none; }
.products-section > * { position: relative; z-index: 1; }
.series-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.series-card { min-height: 430px; display: grid; grid-template-columns: minmax(0,.88fr) minmax(330px,1.12fr); align-items: stretch; gap: 10px; padding: clamp(22px, 2vw, 30px); border-radius: 36px; background: rgba(255,255,255,.82); border: 1px solid rgba(201,154,46,.22); box-shadow: var(--shadow-soft); overflow: hidden; }
.series-card.wide { grid-column: 1 / -1; grid-template-columns: minmax(0, .86fr) minmax(520px, 1.14fr); grid-template-rows: 1fr; align-items: center; }
.series-copy { position: relative; z-index: 2; }
.series-index { display: inline-flex; width: 48px; height: 48px; align-items: center; justify-content: center; border-radius: 16px; color: var(--kk-red-deep); background: linear-gradient(135deg, #fff0c3, var(--kk-gold-light)); font-weight: 900; box-shadow: 0 10px 26px rgba(201,154,46,.22); }
.series-card h3 { margin: 18px 0 12px; font-size: clamp(27px, 2.6vw, 38px); line-height: 1.08; letter-spacing: -.04em; color: var(--kk-ink); }
.series-card p { margin: 0; color: var(--kk-muted); font-size: 17px; line-height: 1.75; }
.series-card ul { margin: 18px 0 0; padding: 0; list-style: none; display: grid; gap: 9px; color: rgba(36,19,19,.78); }
.series-card li { position: relative; padding-left: 20px; line-height: 1.55; }
.series-card li::before { content: ""; position: absolute; left: 0; top: .72em; width: 7px; height: 7px; border-radius: 50%; background: var(--kk-red); box-shadow: 0 0 0 4px rgba(179,19,27,.08); }
.series-products { position: relative; min-height: 390px; border-radius: 28px; background: radial-gradient(circle at 50% 34%, rgba(246,215,124,.18), transparent 30%), linear-gradient(180deg, rgba(255,250,241,.24), rgba(246,215,124,.12)); display: flex; align-items: flex-end; justify-content: center; padding: 0 0 0; overflow: hidden; }
.series-products::before { content: ""; position: absolute; width: 88%; height: 48px; bottom: 0; left: 50%; transform: translateX(-50%); border-radius: 50%; background: radial-gradient(ellipse, rgba(122,11,16,.11), transparent 70%); }
.series-products::after { content: ""; position: absolute; width: 52%; height: 52%; left: 50%; top: 49%; transform: translate(-50%, -50%); border-radius: 50%; border: 1px solid rgba(201,154,46,.22); box-shadow: 0 0 0 13px rgba(246,215,124,.07), inset 0 0 34px rgba(201,154,46,.07); }
.series-products img { position: relative; z-index: 1; object-fit: contain; filter: drop-shadow(0 10px 14px rgba(122,11,16,.10)); transition: transform .22s ease; }
.series-card:hover .series-products img { transform: translateY(-7px); }
.series-products.three img { width: 62%; max-height: 510px; margin: 0 -19%; }
.series-products.three img:nth-of-type(1) { transform: rotate(-5deg); }
.series-card:hover .series-products.three img:nth-of-type(1) { transform: rotate(-5deg) translateY(-7px); }
.series-products.three img:nth-of-type(2) { z-index: 2; width: 70%; max-height: 550px; }
.series-products.three img:nth-of-type(3) { transform: rotate(5deg); }
.series-card:hover .series-products.three img:nth-of-type(3) { transform: rotate(5deg) translateY(-7px); }
.series-products.two img { width: 82%; max-height: 545px; margin: 0 -22%; }
.complete-stage { min-height: 500px; gap: 0; align-items: center; justify-content: center; background: radial-gradient(circle at 52% 45%, rgba(255,255,255,.72), transparent 34%), linear-gradient(135deg, rgba(255,248,236,.55), rgba(246,215,124,.25)); }
.single-product-stage img { width: min(82%, 560px); max-height: 610px; z-index: 3; filter: drop-shadow(0 18px 22px rgba(122,11,16,.12)); }
.single-product-stage::after { width: 360px; height: 360px; border-color: rgba(201,154,46,.34); box-shadow: 0 0 0 24px rgba(246,215,124,.10), 0 0 0 48px rgba(179,19,27,.045), inset 0 0 54px rgba(201,154,46,.12); }
.orbit-dot { position: absolute; z-index: 2; width: 16px; height: 16px; border-radius: 50%; background: var(--kk-gold-light); box-shadow: 0 0 0 9px rgba(246,215,124,.18), 0 12px 24px rgba(201,154,46,.30); }
.dot-a { left: 24%; top: 24%; }
.dot-b { right: 21%; top: 30%; width: 11px; height: 11px; background: var(--kk-red-bright); }
.dot-c { right: 30%; bottom: 20%; width: 13px; height: 13px; }
.series-bone { background: linear-gradient(180deg, rgba(255,255,255,.88), rgba(255,244,219,.82)); }
.series-brain { background: linear-gradient(180deg, rgba(255,255,255,.9), rgba(255,237,226,.82)); }
.series-immunity { background: linear-gradient(180deg, rgba(255,255,255,.9), rgba(255,242,235,.85)); }
.series-gut { background: linear-gradient(180deg, rgba(255,255,255,.9), rgba(255,247,229,.82)); }
.series-complete { background: linear-gradient(135deg, #fffdf8, #fff0cf); }
.compliance-note { margin-top: 28px; padding: 24px 28px; border-radius: 28px; background: rgba(122,11,16,.06); border: 1px solid rgba(179,19,27,.14); }
.compliance-note strong { color: var(--kk-red); }
.compliance-note p { margin: 8px 0 0; color: var(--kk-muted); line-height: 1.7; }

.quality-section { display: grid; grid-template-columns: 1.05fr .75fr; gap: 46px; align-items: center; color: white; background: radial-gradient(circle at 80% 24%, rgba(246,215,124,.18), transparent 30%), linear-gradient(135deg, #21090B, #4B1115 50%, #751018); }
.quality-content p { color: rgba(255,255,255,.78); max-width: 820px; }
.quality-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 34px; }
.quality-list div { padding: 20px; border-radius: 24px; background: rgba(255,255,255,.08); border: 1px solid rgba(246,215,124,.22); }
.quality-list strong { display: block; color: var(--kk-gold-light); font-size: 20px; }
.quality-list span { display: block; margin-top: 8px; color: rgba(255,255,255,.72); line-height: 1.55; }
.quality-visual { position: relative; min-height: 440px; border-radius: 42px; background: radial-gradient(circle at 50% 50%, rgba(246,215,124,.18), transparent 38%), rgba(255,255,255,.08); border: 1px solid rgba(246,215,124,.25); overflow: hidden; }
.resource-visual::before { content: ""; position: absolute; inset: 26px; border-radius: 38px; background: linear-gradient(135deg, rgba(255,255,255,.12), rgba(255,255,255,.02)); border: 1px solid rgba(255,255,255,.10); }
.resource-orbit { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); border-radius: 50%; border: 1px solid rgba(246,215,124,.32); }
.orbit-one { width: 330px; height: 330px; }
.orbit-two { width: 235px; height: 235px; border-style: dashed; opacity: .78; }
.resource-core { position: absolute; left: 50%; top: 50%; width: 188px; height: 188px; transform: translate(-50%, -50%); border-radius: 50%; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; background: linear-gradient(145deg, rgba(255,248,236,.98), rgba(246,215,124,.82)); color: var(--kk-red-deep); box-shadow: 0 30px 80px rgba(0,0,0,.22); }
.resource-core img { width: 92px; height: 72px; object-fit: contain; opacity: .85; margin-bottom: 4px; }
.resource-core strong { font-size: 22px; line-height: .96; letter-spacing: -.04em; }
.resource-core span { margin-top: 9px; font-size: 12px; color: rgba(114,10,16,.70); font-weight: 800; }
.resource-node { position: absolute; z-index: 2; display: inline-flex; align-items: center; justify-content: center; min-width: 104px; min-height: 42px; padding: 0 14px; border-radius: 999px; color: white; font-weight: 900; font-size: 14px; background: rgba(255,255,255,.12); border: 1px solid rgba(246,215,124,.34); box-shadow: 0 16px 34px rgba(0,0,0,.16); backdrop-filter: blur(12px); }
.node-rd { left: 12%; top: 24%; }
.node-origin { right: 10%; top: 24%; }
.node-gmp { left: 14%; bottom: 22%; }
.node-qc { right: 12%; bottom: 22%; }

.parenting-section { background: var(--kk-cream); }
.parenting-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 22px; }
.parenting-grid article { position: relative; overflow: hidden; padding: 30px; border-radius: 32px; background: linear-gradient(180deg, rgba(255,255,255,.88), rgba(255,245,226,.76)); border: 1px solid rgba(201,154,46,.18); box-shadow: var(--shadow-soft); }
.parenting-grid article::before { content: ""; position: absolute; width: 160px; height: 160px; right: -48px; top: -52px; border-radius: 50%; background: radial-gradient(circle, rgba(246,215,124,.32), transparent 66%); }
.parenting-grid article::after { content: ""; position: absolute; width: 74px; height: 74px; right: 24px; bottom: 22px; border-radius: 50%; border: 1px solid rgba(201,154,46,.24); box-shadow: 0 0 0 12px rgba(246,215,124,.08); }
.parenting-grid img { position: relative; z-index: 1; width: 126px; height: 126px; object-fit: contain; margin-bottom: 18px; filter: drop-shadow(0 10px 14px rgba(122,11,16,.10)); }
.parenting-grid h3 { position: relative; z-index: 1; margin: 0 0 10px; font-size: 27px; color: var(--kk-red-deep); }
.parenting-grid p { position: relative; z-index: 1; color: var(--kk-muted); line-height: 1.76; margin: 0; }
.verify-section { display: flex; align-items: center; justify-content: space-between; gap: 48px; background: #fffaf1; }
.verify-copy { max-width: 760px; }
.verify-steps { display: grid; gap: 12px; margin: 24px 0 0; padding: 0; list-style: none; color: rgba(36,19,19,.78); }
.verify-steps li { position: relative; padding-left: 28px; line-height: 1.65; font-weight: 700; }
.verify-steps li::before { content: ""; position: absolute; left: 0; top: .68em; width: 9px; height: 9px; border-radius: 50%; background: var(--kk-red); box-shadow: 0 0 0 6px rgba(179,19,27,.08); }
.verify-card { flex: 0 0 300px; display: grid; justify-items: center; text-align: center; padding: 24px 24px 26px; border-radius: 34px; background: rgba(255,255,255,.88); border: 1px solid rgba(201,154,46,.28); box-shadow: var(--shadow-soft); }
.verify-card img { width: 220px; height: 220px; object-fit: contain; padding: 10px; border-radius: 26px; background: #fff; border: 1px solid rgba(201,154,46,.18); }
.verify-card strong { margin-top: 18px; color: var(--kk-red-deep); font-size: 20px; letter-spacing: -.02em; }
.verify-card span { margin-top: 8px; color: var(--kk-muted); font-size: 14px; line-height: 1.55; }
.footer { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 34px max(28px, 7vw); background: var(--kk-red-deep); color: rgba(255,255,255,.82); }
.footer-brand img { width: 136px; padding: 8px 12px; border-radius: 16px; background: rgba(255,255,255,.92); }
.footer p { margin: 8px 0 0; line-height: 1.65; }

.product-tabs { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin: -18px auto 32px; }
.product-tabs span { display: inline-flex; align-items: center; min-height: 38px; padding: 0 18px; border-radius: 999px; color: var(--kk-red-deep); font-weight: 900; background: rgba(255,255,255,.72); border: 1px solid rgba(201,154,46,.25); box-shadow: 0 10px 24px rgba(201,154,46,.10); }
.sparkle { position: absolute; z-index: 6; width: 12px; height: 12px; border-radius: 50%; background: var(--kk-gold-light); box-shadow: 0 0 0 10px rgba(246,215,124,.12), 0 0 28px rgba(201,154,46,.8); }
.sparkle-a { left: 15%; top: 18%; }
.sparkle-b { right: 17%; top: 42%; width: 9px; height: 9px; background: var(--kk-red-bright); }
.sparkle-c { left: 48%; bottom: 12%; width: 15px; height: 15px; }
.hero-badge { position: absolute; z-index: 7; display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 18px; border-radius: 999px; color: var(--kk-red-deep); font-size: 14px; font-weight: 900; background: rgba(255,255,255,.82); border: 1px solid rgba(201,154,46,.38); box-shadow: 0 16px 36px rgba(122,11,16,.12); backdrop-filter: blur(12px); }
.badge-top { left: 28px; top: 34px; }
.badge-bottom { right: 32px; bottom: 36px; }
.stage-label { position: absolute; z-index: 4; left: 18px; top: 18px; display: inline-flex; min-height: 34px; align-items: center; padding: 0 14px; border-radius: 999px; color: rgba(114,10,16,.72); font-size: 12px; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; background: rgba(255,255,255,.72); border: 1px solid rgba(201,154,46,.22); }
.complete-label { left: 50%; top: 24px; transform: translateX(-50%); }
.quality-card { position: absolute; z-index: 4; width: 132px; padding: 14px 16px; border-radius: 22px; background: rgba(255,255,255,.12); border: 1px solid rgba(246,215,124,.30); backdrop-filter: blur(14px); box-shadow: 0 18px 34px rgba(0,0,0,.16); }
.quality-card strong { display:block; color: var(--kk-gold-light); font-size: 22px; line-height: 1; }
.quality-card span { display:block; margin-top: 7px; color: rgba(255,255,255,.72); font-size: 12px; line-height: 1.4; }
.mini-card-a { left: 10%; top: 46%; }
.mini-card-b { right: 9%; top: 46%; }


.hero-pack, .series-products img { will-change: transform; }
.pack-main { animation: productFloat 5.5s ease-in-out infinite; }
.pack-left { animation: productFloatLeft 6.2s ease-in-out infinite; }
.pack-right { animation: productFloatRight 6s ease-in-out infinite; }
@keyframes productFloat { 0%,100% { transform: translateX(-50%) translateY(0); } 50% { transform: translateX(-50%) translateY(-10px); } }
@keyframes productFloatLeft { 0%,100% { transform: rotate(-6deg) translateY(0); } 50% { transform: rotate(-6deg) translateY(-8px); } }
@keyframes productFloatRight { 0%,100% { transform: rotate(6deg) translateY(0); } 50% { transform: rotate(6deg) translateY(-8px); } }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .01ms !important; }
}

@media (max-width: 1120px) {
  .nav { display: none; }
  .hero { grid-template-columns: 1fr; }
  .hero-showcase { max-width: 620px; width: 100%; justify-self: center; }
  .brand-story-section, .quality-section { grid-template-columns: 1fr; }
  .series-grid { grid-template-columns: 1fr; }
  .series-card, .series-card.wide { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  .site-header { height: 66px; padding: 0 18px; }
  .brand img { width: 112px; }
  .nav-cta { display: none; }
  .hero { padding: 56px 22px; }
  .hero::before { inset: 14px; border-radius: 28px; }
  .hero h1 { font-size: clamp(36px, 10vw, 48px); letter-spacing: -.04em; }
  .hero h1 span { white-space: normal; }
  .hero-metrics, .quality-list, .parenting-grid { grid-template-columns: 1fr; }
  .hero-showcase { height: 520px; border-radius: 34px; }
  .pack-main { width: 360px; }
  .pack-left, .pack-right { width: 248px; }
  .hero-mascot { width: 110px; }
  .section { padding: 72px 22px; }
  .series-card { min-height: auto; border-radius: 28px; }
  .series-products { min-height: 300px; }
  .series-products.three img { width: 56%; margin: 0 -17%; }
  .single-product-stage img { width: min(86%, 430px); }
  .quality-visual { min-height: 390px; }
  .resource-core { width: 164px; height: 164px; }
  .orbit-one { width: 290px; height: 290px; }
  .orbit-two { width: 210px; height: 210px; }
  .quality-visual img:not(.resource-core img) { width: 250px; }
  .verify-section, .footer { flex-direction: column; align-items: flex-start; }
}

/* Product center, series, detail, guide and about pages - restored + mobile optimized */
.nav a.is-active { color: var(--kk-red); font-weight: 900; }
.nav a.is-active::after { transform: scaleX(1); }
.text-link { display: inline-flex; margin-top: 18px; color: var(--kk-red); font-weight: 900; border-bottom: 2px solid rgba(179,19,27,.18); padding-bottom: 4px; }
.subpage-hero, .guide-hero, .about-hero { position: relative; overflow: hidden; display: grid; grid-template-columns: minmax(0, .95fr) minmax(420px, .78fr); gap: 46px; align-items: center; min-height: 620px; padding: 86px max(30px, 7vw); color: white; }
.guide-hero, .about-hero { min-height: 680px; grid-template-columns: minmax(0,.95fr) minmax(440px,.85fr); }
.subpage-hero::before, .guide-hero::before, .about-hero::before { content:""; position:absolute; inset:28px; border:1px solid rgba(246,215,124,.25); border-radius:42px; pointer-events:none; }
.subpage-hero-copy, .subpage-hero-visual, .guide-hero-copy, .about-hero-copy { position: relative; z-index: 1; }
.subpage-hero h1, .guide-hero-copy h1, .about-hero-copy h1 { margin:0; font-size:clamp(44px,5.6vw,78px); line-height:1.04; letter-spacing:-.055em; max-width:900px; }
.subpage-hero p:not(.eyebrow), .guide-hero-copy p:not(.eyebrow), .about-hero-copy p:not(.eyebrow) { max-width:760px; color:rgba(255,255,255,.84); font-size:19px; line-height:1.85; }
.subpage-hero-visual, .guide-hero-visual, .about-hero-visual { position:relative; min-height:520px; border-radius:44px; background:linear-gradient(160deg, rgba(255,248,236,.95), rgba(255,233,190,.72)); border:1px solid rgba(246,215,124,.48); box-shadow:0 44px 110px rgba(36,19,19,.28); overflow:hidden; }
.guide-hero-visual, .about-hero-visual { min-height:560px; border-radius:46px; }
.subpage-hero-visual::before, .guide-hero-visual::before, .about-hero-visual::before { content:""; position:absolute; width:380px; height:380px; left:50%; top:52%; transform:translate(-50%,-50%); border-radius:50%; border:1px solid rgba(201,154,46,.28); box-shadow:0 0 0 22px rgba(246,215,124,.10), 0 0 0 52px rgba(179,19,27,.045), inset 0 0 54px rgba(201,154,46,.10); }
.subpage-tree, .about-tree { position:absolute; width:390px; opacity:.16; left:50%; top:42%; transform:translate(-50%,-50%); }
.subpage-pack, .guide-pack, .about-pack { position:absolute; z-index:2; object-fit:contain; filter:drop-shadow(0 15px 19px rgba(122,11,16,.12)); }
.subpage-pack.main { width:430px; left:50%; top:6%; transform:translateX(-50%); z-index:3; }
.subpage-pack.left, .subpage-pack.right { width:300px; bottom:-8px; }
.subpage-pack.left { left:-52px; transform:rotate(-7deg); }
.subpage-pack.right { right:-52px; transform:rotate(7deg); }
.product-center-section, .faq-section, .about-system-section, .about-cta-section, .guide-form-section, .guide-entry-section { background:#fffaf1; }
.product-center-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.product-center-card { position:relative; min-height:286px; overflow:hidden; display:grid; grid-template-columns:minmax(0,1.18fr) minmax(178px,.72fr); gap:16px; align-items:center; padding:28px 26px 26px 30px; border-radius:34px; background:rgba(255,255,255,.84); border:1px solid rgba(201,154,46,.22); box-shadow:var(--shadow-soft); }
.product-center-card::before { content:""; position:absolute; width:232px; height:232px; right:-62px; bottom:-70px; border-radius:50%; background:radial-gradient(circle,rgba(246,215,124,.30),rgba(246,215,124,.08) 56%,transparent 68%); }
.product-center-card > div, .product-center-card img { position:relative; z-index:2; }
.product-center-card .series-index { position:absolute; left:24px; top:24px; width:42px; height:42px; border-radius:14px; font-size:15px; }
.product-center-card div .eyebrow { margin-left:58px; margin-bottom:12px; font-size:11px; letter-spacing:.14em; }
.product-center-card h3 { margin:8px 0 12px; font-size:clamp(25px,2.4vw,36px); line-height:1.08; letter-spacing:-.035em; }
.product-center-card p:not(.eyebrow) { max-width:390px; margin:0; color:var(--kk-muted); line-height:1.72; font-size:16px; }
.product-center-card strong { display:inline-flex; margin-top:18px; color:var(--kk-red); font-size:15px; }
.product-center-card img { justify-self:end; width:min(100%,232px); max-height:265px; object-fit:contain; filter:drop-shadow(0 13px 16px rgba(122,11,16,.11)); }
.chooser-section, .representative-section, .product-feature-section, .guide-result-section, .about-quality-section { background:var(--kk-cream); }
.chooser-panel, .guide-entry-panel, .about-cta-panel { display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:28px; align-items:center; padding:38px; border-radius:34px; background:linear-gradient(135deg,#fffdf8,#fff0cf); border:1px solid rgba(201,154,46,.22); box-shadow:var(--shadow-soft); }
.chooser-panel { display:flex; justify-content:space-between; }
.chooser-panel h2, .guide-entry-panel h2, .about-cta-panel h2 { margin:0; font-size:clamp(34px,4vw,58px); line-height:1.06; letter-spacing:-.05em; }
.chooser-panel p, .guide-entry-panel p, .about-cta-panel p { max-width:850px; color:var(--kk-muted); line-height:1.8; font-size:18px; }
.series-detail-hero, .product-detail-hero { display:grid; grid-template-columns:minmax(0,.92fr) minmax(460px,.82fr); gap:40px; align-items:center; padding:86px max(30px,7vw); background:linear-gradient(180deg,#fffaf1,#fffdf8); }
.product-detail-hero { grid-template-columns:minmax(0,.95fr) minmax(420px,.76fr); }
.series-detail-copy h1, .product-detail-copy h1 { margin:18px 0; font-size:clamp(44px,5vw,74px); line-height:1.04; letter-spacing:-.055em; }
.series-detail-copy p, .product-detail-lead { color:var(--kk-muted); font-size:19px; line-height:1.8; max-width:820px; }
.series-detail-copy ul, .product-core-list { display:grid; gap:10px; margin:22px 0 0; padding:0; list-style:none; }
.series-detail-copy li, .product-core-list li { position:relative; padding-left:24px; color:rgba(36,19,19,.78); font-weight:800; line-height:1.55; }
.series-detail-copy li::before, .product-core-list li::before { content:""; position:absolute; left:0; top:.66em; width:9px; height:9px; border-radius:50%; background:var(--kk-red); box-shadow:0 0 0 6px rgba(179,19,27,.08); }
.series-detail-products, .product-detail-visual, .about-cta-products { position:relative; min-height:520px; display:flex; align-items:flex-end; justify-content:center; padding:28px; border-radius:42px; background:radial-gradient(circle at 50% 40%,rgba(246,215,124,.22),transparent 32%),rgba(255,255,255,.78); border:1px solid rgba(201,154,46,.22); box-shadow:var(--shadow-soft); overflow:hidden; }
.product-detail-visual { display:grid; place-items:center; min-height:560px; }
.series-detail-products img, .about-cta-products img { position:relative; z-index:1; width:56%; max-height:520px; object-fit:contain; margin:0 -17%; filter:drop-shadow(0 14px 18px rgba(122,11,16,.12)); }
.series-detail-products img:nth-child(2), .about-cta-products img:nth-child(2) { z-index:2; width:66%; }
.series-subnav { position:sticky; top:72px; z-index:20; display:flex; justify-content:center; flex-wrap:wrap; gap:10px; padding:14px 22px; background:rgba(255,248,236,.9); border-bottom:1px solid rgba(201,154,46,.18); backdrop-filter:blur(18px); }
.series-subnav a { display:inline-flex; align-items:center; min-height:38px; padding:0 16px; border-radius:999px; font-weight:900; color:var(--kk-red-deep); border:1px solid rgba(201,154,46,.22); background:rgba(255,255,255,.68); }
.series-subnav a.current { color:white; background:linear-gradient(135deg,var(--kk-red),var(--kk-red-deep)); border-color:transparent; }
.scene-grid, .representative-grid, .feature-strip, .related-product-grid, .core-product-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.scene-grid article, .feature-strip article, .faq-list details { padding:28px; border-radius:30px; background:rgba(255,255,255,.82); border:1px solid rgba(201,154,46,.20); box-shadow:var(--shadow-soft); }
.scene-grid p, .feature-strip p, .faq-list p { color:var(--kk-muted); line-height:1.75; font-weight:700; }
.series-product-card { overflow:hidden; display:grid; grid-template-rows:320px auto; border-radius:32px; background:rgba(255,255,255,.84); border:1px solid rgba(201,154,46,.20); box-shadow:var(--shadow-soft); }
.series-product-card img { width:100%; height:100%; object-fit:contain; padding:14px 20px 0; background:radial-gradient(circle at 50% 58%,rgba(246,215,124,.18),transparent 34%); filter:drop-shadow(0 14px 18px rgba(122,11,16,.11)); }
.series-product-card div { padding:24px; }
.series-product-card h3 { margin:0 0 10px; font-size:25px; color:var(--kk-red-deep); }
.related-product-card, .core-product-card, .guide-result-product { overflow:hidden; display:grid; grid-template-columns:150px minmax(0,1fr); gap:18px; align-items:center; padding:18px; border-radius:28px; background:rgba(255,255,255,.84); border:1px solid rgba(201,154,46,.20); box-shadow:var(--shadow-soft); }
.related-product-card img, .core-product-card img, .guide-result-product img { width:150px; height:150px; object-fit:contain; border-radius:22px; background:radial-gradient(circle at 50% 55%,rgba(246,215,124,.18),transparent 56%); filter:drop-shadow(0 10px 14px rgba(122,11,16,.10)); }
.related-product-card span, .core-product-card strong, .guide-result-product strong { display:block; color:var(--kk-red-deep); font-size:20px; font-weight:900; line-height:1.28; }
.core-product-card p, .guide-result-product p { margin:8px 0 0; color:var(--kk-muted); line-height:1.62; font-size:14px; }
.product-detail-visual img { position:relative; z-index:2; width:min(78%,460px); max-height:520px; object-fit:contain; filter:drop-shadow(0 18px 24px rgba(122,11,16,.14)); }
.product-detail-tag, .breadcrumb-link { display:inline-flex; align-items:center; min-height:34px; padding:0 14px; border-radius:999px; color:var(--kk-red-deep); font-size:13px; font-weight:900; background:rgba(255,255,255,.74); border:1px solid rgba(201,154,46,.24); }
.product-detail-tag { position:absolute; z-index:3; left:26px; top:26px; }
.guide-report-card { position:absolute; z-index:4; left:32px; top:34px; width:min(360px,calc(100% - 64px)); padding:24px; border-radius:28px; background:rgba(255,255,255,.82); border:1px solid rgba(201,154,46,.28); box-shadow:0 24px 68px rgba(122,11,16,.14); backdrop-filter:blur(14px); }
.guide-report-card strong { display:block; margin-top:8px; color:var(--kk-red-deep); font-size:28px; line-height:1.15; }
.guide-report-card p { margin:10px 0 0; color:var(--kk-muted); line-height:1.6; }
.guide-mascot, .about-mascot { position:absolute; z-index:5; right:28px; top:28px; width:120px; filter:drop-shadow(0 10px 14px rgba(122,11,16,.12)); }
.pack-guide-a { width:390px; left:50%; top:120px; transform:translateX(-50%); }
.pack-guide-b, .pack-guide-c { width:305px; bottom:8px; }
.pack-guide-b { left:-34px; transform:rotate(-7deg); }
.pack-guide-c { right:-32px; transform:rotate(7deg); }
.guide-card, .guide-result-shell { max-width:1180px; margin:0 auto; padding:32px; border-radius:38px; background:rgba(255,255,255,.86); border:1px solid rgba(201,154,46,.22); box-shadow:var(--shadow-soft); }
.guide-progress { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-bottom:28px; }
.guide-progress span { display:flex; align-items:center; justify-content:center; min-height:42px; padding:0 12px; border-radius:999px; color:var(--kk-muted); font-size:13px; font-weight:900; background:rgba(255,248,236,.82); border:1px solid rgba(201,154,46,.18); }
.guide-progress span.is-active { color:white; background:linear-gradient(135deg,var(--kk-red),var(--kk-red-deep)); border-color:transparent; }
.guide-question { margin:0 0 26px; padding:0; border:0; }
.guide-question legend { display:flex; align-items:center; gap:12px; margin-bottom:14px; color:var(--kk-ink); font-size:22px; font-weight:900; letter-spacing:-.02em; }
.guide-question legend span { display:inline-flex; width:42px; height:42px; align-items:center; justify-content:center; border-radius:15px; color:var(--kk-red-deep); background:linear-gradient(135deg,#fff0c3,var(--kk-gold-light)); box-shadow:0 10px 24px rgba(201,154,46,.18); font-size:14px; }
.option-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; }
.option-grid input { position:absolute; opacity:0; pointer-events:none; }
.option-grid label span { display:flex; align-items:center; justify-content:center; min-height:72px; padding:14px 16px; text-align:center; border-radius:22px; color:rgba(36,19,19,.78); font-weight:850; line-height:1.42; background:#fffdf8; border:1px solid rgba(201,154,46,.22); box-shadow:0 10px 24px rgba(122,11,16,.05); }
.option-grid input:checked + span { color:white; background:linear-gradient(135deg,var(--kk-red),var(--kk-red-deep)); border-color:transparent; }
.guide-actions { display:flex; flex-wrap:wrap; gap:14px; padding-top:8px; }
.guide-insight-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin:28px 0; }
.guide-insight-grid article { padding:22px; border-radius:26px; background:rgba(255,255,255,.74); border:1px solid rgba(201,154,46,.20); }
.guide-product-result { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.guide-entry-visual { display:grid; grid-template-columns:1fr 1fr; gap:0; align-items:end; justify-items:center; }
.guide-entry-visual img { width:175px; height:205px; object-fit:contain; margin:0 -24px; filter:drop-shadow(0 12px 16px rgba(122,11,16,.10)); }
.pack-about-main { width:400px; left:50%; top:78px; transform:translateX(-50%); z-index:3; }
.pack-about-left, .pack-about-right { width:300px; bottom:0; }
.pack-about-left { left:-36px; transform:rotate(-7deg); }
.pack-about-right { right:-34px; transform:rotate(7deg); }
.about-floating-card { position:absolute; z-index:6; width:190px; padding:18px 20px; border-radius:24px; background:rgba(255,255,255,.84); border:1px solid rgba(201,154,46,.30); box-shadow:0 22px 58px rgba(122,11,16,.13); backdrop-filter:blur(14px); }
.about-floating-card strong { display:block; color:var(--kk-red-deep); font-size:22px; line-height:1.15; }
.about-floating-card span { display:block; margin-top:8px; color:var(--kk-gold-deep); font-size:13px; font-weight:900; }
.about-floating-card.card-top { left:30px; top:34px; }
.about-floating-card.card-bottom { right:30px; bottom:34px; }
.about-mission-section { background:linear-gradient(180deg,var(--kk-cream),#fffdf8); }
.about-value-grid, .about-series-map, .about-trust-grid, .quality-principle-grid { display:grid; gap:20px; }
.about-value-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.about-series-map { grid-template-columns:repeat(5,minmax(0,1fr)); }
.about-trust-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.quality-principle-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.about-value-grid article, .about-series-map a, .about-trust-grid article, .quality-principle-grid article { position:relative; overflow:hidden; padding:30px; border-radius:32px; background:rgba(255,255,255,.84); border:1px solid rgba(201,154,46,.20); box-shadow:var(--shadow-soft); }
.about-value-grid span, .about-series-map span { display:inline-flex; width:46px; height:46px; align-items:center; justify-content:center; border-radius:15px; color:var(--kk-red-deep); background:linear-gradient(135deg,#fff0c3,var(--kk-gold-light)); box-shadow:0 10px 24px rgba(201,154,46,.18); font-weight:900; }
.about-value-grid h3 { margin:18px 0 12px; color:var(--kk-red-deep); font-size:28px; letter-spacing:-.03em; }
.about-value-grid p, .about-series-map p, .about-trust-grid p, .quality-principle-grid p { margin:0; color:var(--kk-muted); line-height:1.76; }
.about-series-map a { min-height:280px; display:flex; flex-direction:column; }
.about-series-map strong { display:block; margin:18px 0 12px; color:var(--kk-red-deep); font-size:24px; line-height:1.18; letter-spacing:-.03em; }
.about-trust-section { display:grid; grid-template-columns:.85fr 1.15fr; gap:42px; align-items:center; color:white; background:radial-gradient(circle at 84% 18%,rgba(246,215,124,.18),transparent 30%),linear-gradient(135deg,#21090B,#4B1115 50%,#751018); }
.about-trust-copy h2 { margin:0; font-size:clamp(36px,5vw,66px); line-height:1.05; letter-spacing:-.05em; }
.about-trust-copy p:not(.eyebrow) { color:rgba(255,255,255,.78); font-size:18px; line-height:1.82; }
.about-trust-grid article { background:rgba(255,255,255,.09); border-color:rgba(246,215,124,.24); box-shadow:none; backdrop-filter:blur(14px); }
.about-trust-grid strong { display:block; color:var(--kk-gold-light); font-size:22px; margin-bottom:10px; }
.about-trust-grid p { color:rgba(255,255,255,.76); }
.quality-principle-grid span { color:var(--kk-gold-deep); font-size:12px; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }
.quality-principle-grid strong { display:block; margin:12px 0 10px; color:var(--kk-red-deep); font-size:25px; }
.about-cta-panel { grid-template-columns:minmax(0,1fr) 420px; }
.about-cta-products { min-height:330px; }

/* Mobile refinement pass - 2026-04-28 */
html, body { max-width: 100%; overflow-x: hidden; }
:focus-visible { outline: 2px solid var(--kk-gold); outline-offset: 3px; }
@media (max-width:1120px){
  .site-header{height:auto;min-height:66px;align-items:center;gap:12px;padding:10px 18px 12px;flex-wrap:wrap}.brand{flex:0 0 auto}.nav{order:3;display:flex;width:100%;gap:8px;overflow-x:auto;padding:4px 0 2px;margin:0 -2px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.nav::-webkit-scrollbar{display:none}.nav a{flex:0 0 auto;min-height:38px;display:inline-flex;align-items:center;padding:0 14px;border-radius:999px;font-size:13px;font-weight:850;color:var(--kk-red-deep);background:rgba(255,255,255,.72);border:1px solid rgba(201,154,46,.20)}.nav a::after{display:none}.nav a.is-active,.nav a:hover{color:#fff;background:linear-gradient(135deg,var(--kk-red),var(--kk-red-deep));border-color:transparent}.nav-cta{min-height:38px;padding:0 15px;font-size:13px}html{scroll-padding-top:118px}
  .subpage-hero,.guide-hero,.about-hero,.series-detail-hero,.product-detail-hero,.about-trust-section,.about-cta-panel{grid-template-columns:1fr}.subpage-hero-visual,.guide-hero-visual,.about-hero-visual,.series-detail-products,.product-detail-visual{max-width:680px;width:100%;justify-self:center}.product-center-grid,.representative-grid,.related-product-grid,.core-product-grid{grid-template-columns:1fr}.scene-grid,.feature-strip,.guide-insight-grid,.guide-product-result{grid-template-columns:1fr}.option-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-entry-panel{grid-template-columns:1fr}.about-value-grid,.about-series-map,.about-trust-grid,.quality-principle-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:760px){
  html{scroll-padding-top:120px}body{font-size:15px}.site-header{position:sticky;top:0;padding:9px 14px 10px;background:rgba(255,248,236,.94)}.brand img{width:108px}.nav-cta{display:inline-flex;margin-left:auto}.site-header .nav-cta{width:auto;min-height:36px;padding:0 12px;font-size:12px}.nav a{min-height:36px;padding:0 12px;font-size:12px}.button,.nav-cta{width:100%;max-width:100%;min-height:46px;padding:0 18px;text-align:center}
  .hero,.subpage-hero,.series-detail-hero,.product-detail-hero,.guide-hero,.about-hero{gap:26px;padding:42px 16px 46px}.hero::before,.subpage-hero::before,.guide-hero::before,.about-hero::before{inset:10px;border-radius:24px}.hero h1,.subpage-hero h1,.series-detail-copy h1,.product-detail-copy h1,.guide-hero-copy h1,.about-hero-copy h1{font-size:clamp(32px,10.5vw,44px);line-height:1.08;letter-spacing:-.045em;text-wrap:balance}.hero-subtitle{font-size:clamp(22px,7vw,30px)}.hero-copy,.subpage-hero p:not(.eyebrow),.series-detail-copy p,.product-detail-lead,.guide-hero-copy p:not(.eyebrow),.about-hero-copy p:not(.eyebrow),.section-heading p:not(.eyebrow),.story-copy p,.quality-content p,.verify-section p,.chooser-panel p,.guide-entry-panel p,.about-cta-panel p{font-size:16px;line-height:1.72}.eyebrow{font-size:11px;letter-spacing:.14em;margin-bottom:12px}.hero-actions,.guide-actions{display:grid;grid-template-columns:1fr;gap:10px;width:100%}.hero-metrics{gap:10px;margin-top:26px}.hero-metrics div{padding:14px;border-radius:18px}
  .hero-showcase,.subpage-hero-visual,.guide-hero-visual,.about-hero-visual{min-height:360px;height:auto;border-radius:28px;box-shadow:0 24px 70px rgba(36,19,19,.24)}.hero-showcase{height:400px}.showcase-ring{width:310px;height:310px}.pack-main{width:300px;top:-16px}.pack-left,.pack-right{width:205px;bottom:4px}.pack-left{left:-50px}.pack-right{right:-50px}.hero-mascot{width:78px;right:14px;top:14px}.hero-badge,.quality-card,.sparkle{display:none}.section{padding:56px 16px}.section-heading{margin-bottom:28px}.section-heading h2,.story-copy h2,.quality-content h2,.verify-section h2,.about-trust-copy h2{font-size:clamp(30px,9vw,40px);line-height:1.1;letter-spacing:-.04em}
  .story-card,.series-card,.product-center-card,.scene-grid article,.series-product-card,.feature-strip article,.faq-list details,.related-product-card,.core-product-card,.guide-card,.guide-result-shell,.guide-entry-panel,.about-value-grid article,.about-series-map a,.about-trust-grid article,.quality-principle-grid article,.about-cta-panel{border-radius:24px}.story-card,.series-card,.product-center-card,.scene-grid article,.feature-strip article,.guide-card,.guide-result-shell,.guide-entry-panel,.about-value-grid article,.about-series-map a,.about-trust-grid article,.quality-principle-grid article,.about-cta-panel{padding:20px}.series-card h3,.product-center-card h3,.about-value-grid h3,.about-series-map strong{font-size:24px;line-height:1.16}.series-products,.series-detail-products,.product-detail-visual,.about-cta-products{min-height:300px;border-radius:24px}.series-products.three img{width:58%;margin:0 -19%}.series-products.two img{width:74%;margin:0 -18%}.single-product-stage img{width:min(82%,330px)}.quality-section,.about-trust-section{gap:26px}.quality-visual{min-height:300px;border-radius:28px}.resource-core{width:132px;height:132px}.orbit-one{width:238px;height:238px}.orbit-two{width:174px;height:174px}.verify-section{align-items:stretch;gap:24px}.verify-card{width:100%;flex:initial}.footer{align-items:flex-start;padding:26px 16px}
  .product-tabs{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;margin:-10px -16px 26px;padding:0 16px 4px;scrollbar-width:none}.product-tabs::-webkit-scrollbar{display:none}.product-tabs span{flex:0 0 auto;min-height:36px;font-size:12px;padding:0 13px}.subpage-pack.main{width:275px;top:38px}.subpage-pack.left,.subpage-pack.right{width:190px;bottom:2px}.subpage-pack.left{left:-44px}.subpage-pack.right{right:-44px}.product-center-card{grid-template-columns:1fr;min-height:auto;padding-top:66px}.product-center-card .series-index{left:24px;top:24px}.product-center-card div .eyebrow{margin-left:0}.product-center-card img{transform:none;justify-self:center;width:min(76%,210px)}.chooser-panel{display:block;padding:22px;border-radius:24px}.series-subnav{top:110px;justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding:10px 16px}.series-subnav a{flex:0 0 auto;min-height:34px;font-size:12px;padding:0 12px}.series-detail-products img{width:62%;margin:0 -22%}.series-product-card{grid-template-rows:220px auto}.related-product-card,.core-product-card,.guide-result-product{grid-template-columns:92px minmax(0,1fr);gap:12px;padding:12px}.related-product-card img,.core-product-card img,.guide-result-product img{width:92px;height:92px;border-radius:18px}.related-product-card span,.core-product-card strong,.guide-result-product strong{font-size:17px}.product-detail-visual img{width:min(80%,285px);max-height:320px}.product-detail-tag{left:14px;top:14px;min-height:34px;font-size:12px}
  .guide-progress{grid-template-columns:1fr;gap:8px}.guide-progress span{min-height:38px}.guide-question{margin-bottom:22px}.guide-question legend{font-size:18px;line-height:1.35;align-items:flex-start}.guide-question legend span{width:36px;height:36px;border-radius:13px;flex:0 0 auto}.option-grid{grid-template-columns:1fr}.option-grid label span{min-height:58px;padding:12px;border-radius:18px}.guide-report-card{left:14px;top:14px;width:calc(100% - 28px);padding:16px}.guide-report-card strong{font-size:22px}.guide-mascot{width:76px;right:16px;top:112px}.pack-guide-a{width:260px;top:138px}.pack-guide-b,.pack-guide-c{width:178px;bottom:2px}.pack-guide-b{left:-38px}.pack-guide-c{right:-38px}.guide-entry-panel{grid-template-columns:1fr}.guide-entry-visual{grid-template-columns:1fr 1fr;max-width:260px}.guide-entry-visual img{width:120px;height:146px;margin:0 -16px}
  .about-value-grid,.about-series-map,.about-trust-grid,.quality-principle-grid{grid-template-columns:1fr}.about-hero-visual::before,.guide-hero-visual::before{width:300px;height:300px}.about-tree{width:270px}.about-mascot{width:76px;right:16px;top:16px}.pack-about-main{width:260px;top:78px}.pack-about-left,.pack-about-right{width:178px;bottom:2px}.pack-about-left{left:-38px}.pack-about-right{right:-38px}.about-floating-card{width:136px;padding:12px}.about-floating-card strong{font-size:16px}.about-floating-card span{font-size:11px}.about-floating-card.card-bottom{bottom:14px;right:14px}.about-series-map a{min-height:auto}.about-cta-panel{grid-template-columns:1fr}.about-cta-products{min-height:235px}.about-cta-products img{width:56%;margin:0 -21%}
}
@media (max-width:380px){.site-header{padding-left:12px;padding-right:12px}.brand img{width:98px}.site-header .nav-cta{padding:0 10px;font-size:11px}.hero h1,.subpage-hero h1,.series-detail-copy h1,.product-detail-copy h1,.guide-hero-copy h1,.about-hero-copy h1{font-size:31px}.hero,.subpage-hero,.series-detail-hero,.product-detail-hero,.guide-hero,.about-hero,.section{padding-left:14px;padding-right:14px}.hero-showcase,.subpage-hero-visual,.guide-hero-visual,.about-hero-visual{min-height:330px}.pack-main{width:270px}.pack-left,.pack-right{width:180px}.pack-guide-a,.pack-about-main{width:235px}.pack-guide-b,.pack-guide-c,.pack-about-left,.pack-about-right{width:160px}.about-floating-card{display:none}.related-product-card,.core-product-card,.guide-result-product{grid-template-columns:1fr;text-align:center}.related-product-card img,.core-product-card img,.guide-result-product img{justify-self:center}}


/* Product detail mobile overlap hotfix - 2026-04-28
   Keep product images and text in separate vertical flow on small screens. */
@media (max-width: 760px) {
  .product-detail-page,
  .product-detail-page * {
    min-width: 0;
  }

  .product-detail-hero {
    display: flex !important;
    flex-direction: column;
    align-items: stretch;
    gap: 22px;
    padding: 34px 16px 38px;
  }

  .product-detail-copy {
    order: 1;
    width: 100%;
    max-width: 100%;
    position: relative;
    z-index: 3;
  }

  .product-detail-visual {
    order: 2;
    width: 100%;
    max-width: 100%;
    min-height: 255px;
    padding: 50px 16px 20px;
    margin: 4px 0 0;
    display: grid;
    place-items: center;
    overflow: hidden;
    position: relative;
    z-index: 1;
  }

  .product-detail-visual::before {
    content: "";
    position: absolute;
    width: 230px;
    height: 230px;
    left: 50%;
    top: 55%;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    background: radial-gradient(circle, rgba(246, 215, 124, .26), rgba(246, 215, 124, .08) 58%, transparent 70%);
    pointer-events: none;
  }

  .product-detail-visual img {
    position: relative;
    z-index: 2;
    width: min(72vw, 260px);
    max-width: 100%;
    max-height: 270px;
    object-fit: contain;
    margin: 0 auto;
  }

  .product-detail-tag {
    position: absolute;
    left: 14px;
    top: 12px;
    right: auto;
    max-width: calc(100% - 28px);
    min-height: 32px;
    padding: 0 12px;
    white-space: normal;
    line-height: 1.35;
    text-align: center;
  }

  .product-core-list {
    gap: 8px;
    margin-top: 18px;
  }

  .product-core-list li {
    font-size: 14px;
    line-height: 1.55;
    padding-left: 20px;
  }

  .product-detail-section,
  .product-feature-section,
  .related-products-section,
  .faq-section {
    overflow: hidden;
  }

  .product-scene-grid,
  .feature-strip,
  .related-product-grid {
    grid-template-columns: 1fr !important;
  }

  .related-product-card,
  .core-product-card,
  .guide-result-product {
    display: grid;
    grid-template-columns: 86px minmax(0, 1fr);
    align-items: center;
    gap: 12px;
  }

  .related-product-card img,
  .core-product-card img,
  .guide-result-product img {
    width: 86px;
    height: 86px;
    max-width: 86px;
    flex: 0 0 86px;
  }

  .related-product-card span,
  .core-product-card strong,
  .guide-result-product strong {
    min-width: 0;
    overflow-wrap: anywhere;
    word-break: normal;
  }
}

@media (max-width: 430px) {
  .product-detail-hero {
    padding-left: 14px;
    padding-right: 14px;
  }

  .product-detail-copy h1 {
    font-size: clamp(30px, 10vw, 40px);
  }

  .product-detail-visual {
    min-height: 235px;
    padding-top: 46px;
  }

  .product-detail-visual img {
    width: min(68vw, 235px);
    max-height: 245px;
  }

  .related-product-card,
  .core-product-card,
  .guide-result-product {
    grid-template-columns: 78px minmax(0, 1fr) !important;
    text-align: left !important;
  }

  .related-product-card img,
  .core-product-card img,
  .guide-result-product img {
    width: 78px !important;
    height: 78px !important;
    max-width: 78px !important;
    justify-self: center;
  }
}


/* Mobile readability polish for detail CTAs - 2026-04-28 */
@media (max-width: 760px) {
  .product-detail-copy .button-ghost,
  .series-detail-copy .button-ghost,
  .hero-actions .red-ghost {
    color: var(--kk-red-deep) !important;
    background: rgba(255, 255, 255, .78) !important;
    border-color: rgba(201, 154, 46, .34) !important;
    box-shadow: 0 10px 24px rgba(122, 11, 16, .08);
  }

  .product-detail-copy .button-primary,
  .series-detail-copy .button-primary {
    color: var(--kk-red-deep) !important;
  }
}


/* Mobile text wrapping guard for product detail copy - 2026-04-28 */
@media (max-width: 760px) {
  .product-detail-copy,
  .product-detail-copy p,
  .product-detail-copy li,
  .product-detail-lead,
  .series-detail-copy,
  .series-detail-copy p,
  .series-detail-copy li {
    max-width: 100%;
    overflow-wrap: anywhere;
    word-break: normal;
  }
}


/* Mobile global overlap/cropping fix - 2026-04-28
   Ensure every mobile text block can wrap inside the viewport and image stages stay in their own flow. */
@media (max-width: 760px) {
  body,
  main,
  section,
  header,
  footer,
  div,
  article,
  nav,
  a,
  p,
  h1,
  h2,
  h3,
  h4,
  li,
  span,
  strong {
    min-width: 0;
  }

  h1,
  h2,
  h3,
  h4,
  p,
  li,
  .hero-copy,
  .section-heading,
  .section-heading h2,
  .section-heading p,
  .subpage-hero-copy,
  .subpage-hero-copy h1,
  .subpage-hero-copy p,
  .series-copy,
  .series-copy h3,
  .series-copy p,
  .product-center-card,
  .product-center-card h3,
  .product-center-card p,
  .series-detail-copy,
  .series-detail-copy h1,
  .series-detail-copy p,
  .product-detail-copy,
  .product-detail-copy h1,
  .product-detail-copy p,
  .guide-hero-copy,
  .guide-hero-copy h1,
  .guide-hero-copy p,
  .about-hero-copy,
  .about-hero-copy h1,
  .about-hero-copy p {
    max-width: 100%;
    width: auto;
    white-space: normal !important;
    overflow: visible;
    overflow-wrap: anywhere;
    word-break: normal;
  }

  .hero,
  .subpage-hero,
  .series-detail-hero,
  .product-detail-hero,
  .guide-hero,
  .about-hero,
  .section {
    overflow-x: clip;
  }

  .hero h1,
  .subpage-hero h1,
  .guide-hero-copy h1,
  .about-hero-copy h1,
  .series-detail-copy h1,
  .product-detail-copy h1 {
    font-size: clamp(30px, 8.8vw, 39px) !important;
    line-height: 1.12 !important;
    letter-spacing: -0.035em !important;
  }

  .section-heading h2,
  .story-copy h2,
  .quality-content h2,
  .verify-section h2,
  .about-trust-copy h2,
  .chooser-panel h2,
  .guide-entry-panel h2,
  .about-cta-panel h2 {
    font-size: clamp(28px, 8vw, 36px) !important;
    line-height: 1.14 !important;
    letter-spacing: -0.035em !important;
  }

  .hero-copy,
  .subpage-hero p:not(.eyebrow),
  .guide-hero-copy p:not(.eyebrow),
  .about-hero-copy p:not(.eyebrow),
  .section-heading p:not(.eyebrow),
  .product-center-card p:not(.eyebrow),
  .series-card p,
  .series-detail-copy p,
  .product-detail-lead,
  .guide-entry-panel p,
  .about-cta-panel p {
    font-size: 15.5px !important;
    line-height: 1.7 !important;
  }

  .product-center-card,
  .series-card,
  .series-product-card,
  .related-product-card,
  .core-product-card,
  .guide-result-product,
  .about-value-grid article,
  .about-series-map a,
  .about-trust-grid article,
  .quality-principle-grid article {
    overflow: hidden;
  }

  .series-card,
  .product-center-card {
    display: flex !important;
    flex-direction: column;
    align-items: stretch;
    gap: 18px;
  }

  .series-copy,
  .product-center-card > div {
    order: 1;
    position: relative;
    z-index: 3;
  }

  .series-products,
  .product-center-card img {
    order: 2;
  }

  .series-products {
    width: 100%;
    min-height: 230px !important;
    padding-top: 10px;
  }

  .series-products.three img,
  .series-products.two img,
  .series-detail-products img,
  .about-cta-products img {
    max-width: 76vw;
    max-height: 250px;
  }

  .product-center-card img {
    align-self: center;
    justify-self: center;
    width: min(70vw, 205px) !important;
    max-height: 225px !important;
    margin: 0 auto;
  }

  .series-subnav,
  .product-tabs,
  .nav {
    max-width: 100%;
  }

  .nav {
    overscroll-behavior-inline: contain;
  }
}

@media (max-width: 430px) {
  .hero,
  .subpage-hero,
  .series-detail-hero,
  .product-detail-hero,
  .guide-hero,
  .about-hero {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .section {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .hero h1,
  .subpage-hero h1,
  .guide-hero-copy h1,
  .about-hero-copy h1,
  .series-detail-copy h1,
  .product-detail-copy h1 {
    font-size: clamp(29px, 8.4vw, 36px) !important;
  }

  .product-center-card,
  .series-card,
  .guide-card,
  .guide-result-shell,
  .about-cta-panel {
    padding: 18px !important;
  }

  .product-center-card {
    padding-top: 62px !important;
  }
}


/* Mobile overflow hard fix for product center and shared sections - 2026-04-28 */
@media (max-width: 760px) {
  html,
  body {
    max-width: 100%;
    overflow-x: hidden;
  }

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

  .site-header,
  .hero,
  .subpage-hero,
  .product-center-section,
  .core-product-showcase,
  .chooser-section,
  .compliance-note,
  .about-hero,
  .guide-hero,
  .product-detail-hero,
  .series-detail-hero {
    width: 100% !important;
    max-width: 100vw !important;
  }

  .subpage-hero {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 28px !important;
  }

  .subpage-hero-copy,
  .subpage-hero-copy h1,
  .subpage-hero-copy p,
  .product-center-section .section-heading,
  .product-center-section .section-heading h2,
  .product-center-section .section-heading p,
  .core-product-showcase .section-heading,
  .core-product-showcase .section-heading h2,
  .core-product-showcase .section-heading p {
    display: block !important;
    inline-size: 100% !important;
    max-inline-size: 100% !important;
    min-inline-size: 0 !important;
    overflow: visible !important;
    text-align: left;
    text-wrap: initial;
    white-space: normal !important;
    word-break: break-word !important;
    overflow-wrap: break-word !important;
  }

  .product-center-section .section-heading.center,
  .core-product-showcase .section-heading.center {
    text-align: left !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .subpage-hero-copy h1 {
    font-size: 31px !important;
    line-height: 1.18 !important;
    letter-spacing: -0.04em !important;
  }

  .product-center-section .section-heading h2,
  .core-product-showcase .section-heading h2 {
    font-size: 29px !important;
    line-height: 1.18 !important;
    letter-spacing: -0.04em !important;
  }

  .subpage-hero-copy p:not(.eyebrow),
  .product-center-section .section-heading p:not(.eyebrow),
  .core-product-showcase .section-heading p:not(.eyebrow) {
    font-size: 15px !important;
    line-height: 1.72 !important;
  }

  .subpage-hero-visual {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 280px !important;
    margin: 0 !important;
    overflow: hidden !important;
    border-radius: 24px !important;
    justify-self: stretch !important;
  }

  .subpage-hero-visual::before {
    width: min(260px, 76vw) !important;
    height: min(260px, 76vw) !important;
  }

  .subpage-tree {
    width: min(260px, 72vw) !important;
  }

  .subpage-pack.main {
    width: min(240px, 62vw) !important;
    max-width: 62vw !important;
    top: 42px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
  }

  .subpage-pack.left,
  .subpage-pack.right {
    width: min(150px, 40vw) !important;
    max-width: 40vw !important;
    bottom: 6px !important;
  }

  .subpage-pack.left {
    left: 6px !important;
    transform: rotate(-5deg) !important;
  }

  .subpage-pack.right {
    right: 6px !important;
    transform: rotate(5deg) !important;
  }

  .subpage-hero-visual img {
    object-fit: contain;
  }

  .product-center-grid,
  .core-product-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 18px !important;
  }

  .product-center-card,
  .core-product-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .product-center-card > div,
  .core-product-card > div {
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .product-center-card h3,
  .product-center-card p,
  .product-center-card strong,
  .core-product-card strong,
  .core-product-card p,
  .core-product-card span {
    white-space: normal !important;
    overflow: visible !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }
}

@media (max-width: 430px) {
  .subpage-hero-copy h1 {
    font-size: 29px !important;
  }

  .product-center-section .section-heading h2,
  .core-product-showcase .section-heading h2 {
    font-size: 27px !important;
  }

  .subpage-hero,
  .product-center-section,
  .core-product-showcase,
  .chooser-section,
  .compliance-note {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}


/* Mobile product center text clipping final fix - 2026-04-28 */
@media (max-width: 760px) {
  .subpage-hero,
  .product-center-section,
  .core-product-showcase {
    overflow: hidden !important;
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .subpage-hero {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    justify-items: stretch !important;
  }

  .subpage-hero-copy,
  .product-center-section .section-heading,
  .core-product-showcase .section-heading {
    contain: layout paint;
  }

  .subpage-hero-copy h1,
  .product-center-section .section-heading h2,
  .core-product-showcase .section-heading h2 {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    inline-size: 100% !important;
    overflow: visible !important;
    white-space: normal !important;
    text-wrap: initial !important;
    word-break: normal !important;
    overflow-wrap: anywhere !important;
    hyphens: none;
  }

  .subpage-hero-copy h1 br,
  .product-center-section .section-heading h2 br,
  .core-product-showcase .section-heading h2 br {
    display: none;
  }

  .subpage-hero-copy h1 {
    font-size: 27px !important;
    line-height: 1.26 !important;
    letter-spacing: -0.02em !important;
  }

  .product-center-section .section-heading h2,
  .core-product-showcase .section-heading h2 {
    font-size: 25px !important;
    line-height: 1.28 !important;
    letter-spacing: -0.02em !important;
  }

  .subpage-hero-copy p:not(.eyebrow),
  .product-center-section .section-heading p:not(.eyebrow),
  .core-product-showcase .section-heading p:not(.eyebrow) {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
    white-space: normal !important;
    text-wrap: initial !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }
}

@media (max-width: 430px) {
  .subpage-hero-copy h1 {
    font-size: 25px !important;
    line-height: 1.3 !important;
  }

  .product-center-section .section-heading h2,
  .core-product-showcase .section-heading h2 {
    font-size: 23px !important;
    line-height: 1.32 !important;
  }
}


/* Mobile image/text overlap prevention final pass - 2026-04-28 */
@media (max-width: 760px) {
  .hero,
  .subpage-hero,
  .guide-hero,
  .about-hero,
  .series-detail-hero,
  .product-detail-hero,
  .brand-story-section,
  .quality-section,
  .about-trust-section {
    grid-template-columns: minmax(0, 1fr) !important;
    align-items: stretch !important;
  }

  .hero-content,
  .hero-showcase,
  .subpage-hero-copy,
  .subpage-hero-visual,
  .guide-hero-copy,
  .guide-hero-visual,
  .about-hero-copy,
  .about-hero-visual,
  .series-detail-copy,
  .series-detail-products,
  .product-detail-copy,
  .product-detail-visual,
  .story-copy,
  .story-card,
  .quality-content,
  .quality-visual,
  .about-trust-copy,
  .about-trust-grid {
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .hero-showcase,
  .subpage-hero-visual,
  .guide-hero-visual,
  .about-hero-visual,
  .series-products,
  .series-detail-products,
  .product-detail-visual,
  .about-cta-products {
    isolation: isolate;
    overflow: hidden !important;
  }

  .hero-showcase img,
  .subpage-hero-visual img,
  .guide-hero-visual img,
  .about-hero-visual img,
  .series-products img,
  .series-detail-products img,
  .product-detail-visual img,
  .about-cta-products img,
  .product-center-card img,
  .core-product-card img,
  .related-product-card img,
  .guide-result-product img {
    max-width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
  }

  .section-heading,
  .series-copy,
  .product-center-card > div,
  .core-product-card > div,
  .related-product-card > div,
  .guide-result-product > div {
    position: relative;
    z-index: 3;
    min-width: 0 !important;
  }

  h1, h2, h3, p, li, strong, span {
    max-width: 100%;
  }
}

/* Mobile anti-overlap and safe-width pass - 2026-04-28 */
@media (max-width: 760px) {
  *,
  *::before,
  *::after {
    box-sizing: border-box;
  }

  html,
  body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
  }

  img {
    max-width: 100%;
    height: auto;
  }

  main,
  section,
  header,
  footer,
  .section,
  .hero,
  .subpage-hero,
  .guide-hero,
  .about-hero,
  .series-detail-hero,
  .product-detail-hero {
    max-width: 100vw;
    overflow-x: hidden;
  }

  .site-header {
    overflow: hidden;
  }

  .nav {
    max-width: 100%;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    -webkit-overflow-scrolling: touch;
  }

  .hero-content,
  .subpage-hero-copy,
  .guide-hero-copy,
  .about-hero-copy,
  .series-detail-copy,
  .product-detail-copy,
  .section-heading,
  .story-copy,
  .quality-content,
  .verify-copy,
  .chooser-panel > div,
  .guide-entry-panel > div,
  .about-cta-panel > div,
  .product-center-card > div,
  .series-copy,
  .core-product-card > div,
  .related-product-card > div,
  .guide-result-product > div {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow-wrap: anywhere;
    word-break: normal;
  }

  h1, h2, h3, p, li, strong, span {
    max-width: 100%;
  }

  .hero h1,
  .subpage-hero h1,
  .guide-hero-copy h1,
  .about-hero-copy h1,
  .section-heading h2,
  .story-copy h2,
  .quality-content h2,
  .verify-section h2,
  .series-detail-copy h1,
  .product-detail-copy h1,
  .chooser-panel h2,
  .guide-entry-panel h2,
  .about-cta-panel h2 {
    white-space: normal !important;
    overflow-wrap: normal;
    word-break: keep-all;
    max-width: 100%;
  }

  .subpage-hero h1,
  .product-center-section .section-heading h2,
  .core-product-showcase .section-heading h2 {
    font-size: clamp(27px, 7.6vw, 34px) !important;
    line-height: 1.18 !important;
    letter-spacing: -0.025em !important;
  }

  .subpage-hero,
  .guide-hero,
  .about-hero,
  .product-detail-hero,
  .series-detail-hero {
    display: flex !important;
    flex-direction: column;
    align-items: stretch;
  }

  .subpage-hero-visual,
  .guide-hero-visual,
  .about-hero-visual,
  .hero-showcase,
  .product-detail-visual,
  .series-detail-products {
    width: 100%;
    max-width: 100%;
    margin-inline: auto;
    flex: none;
    overflow: hidden;
    contain: layout paint;
  }

  .subpage-pack,
  .guide-pack,
  .about-pack,
  .hero-pack,
  .product-detail-pack,
  .series-detail-products img,
  .about-cta-products img {
    max-width: 100%;
    height: auto;
  }

  .subpage-pack.main {
    width: min(66vw, 245px);
    top: 42px;
  }

  .subpage-pack.left,
  .subpage-pack.right {
    width: min(46vw, 168px);
    bottom: 10px;
  }

  .subpage-pack.left { left: -24px; }
  .subpage-pack.right { right: -24px; }

  .product-center-card {
    width: 100%;
    max-width: 100%;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 18px;
    overflow: hidden;
  }

  .product-center-card img {
    order: 2;
    width: min(68vw, 190px) !important;
    max-height: 210px;
    justify-self: center;
    margin-top: 2px;
    position: relative;
    z-index: 1;
  }

  .product-center-card > div {
    order: 1;
    position: relative;
    z-index: 2;
  }

  .core-product-card,
  .related-product-card,
  .guide-result-product {
    width: 100%;
    max-width: 100%;
    overflow: hidden;
  }

  .core-product-card img,
  .related-product-card img,
  .guide-result-product img {
    flex: 0 0 auto;
  }

  .series-detail-products {
    padding: 20px 10px 10px;
  }

  .series-detail-products img {
    width: 52% !important;
    max-height: 270px;
    margin: 0 -16% !important;
  }

  .series-detail-products img:nth-child(2) {
    width: 60% !important;
  }

  .guide-report-card,
  .about-floating-card,
  .product-detail-tag {
    max-width: calc(100% - 28px);
    overflow-wrap: anywhere;
  }
}

@media (max-width: 430px) {
  .hero,
  .subpage-hero,
  .guide-hero,
  .about-hero,
  .section {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .hero-showcase {
    height: 360px;
  }

  .pack-main {
    width: min(72vw, 270px);
    left: 50%;
    right: auto;
  }

  .pack-left,
  .pack-right {
    width: min(45vw, 168px);
    bottom: 12px;
  }

  .pack-left { left: -24px; }
  .pack-right { right: -24px; }

  .showcase-ring {
    width: 280px;
    height: 280px;
  }

  .section-heading h2 {
    font-size: clamp(28px, 8.8vw, 36px);
  }

  .subpage-hero-copy p:not(.eyebrow),
  .hero-copy,
  .section-heading p:not(.eyebrow) {
    font-size: 15px;
    line-height: 1.68;
  }
}

/* Mobile overlap hotfix v2 - force natural wrapping and single-column product layouts */
@media (max-width: 760px) {
  .hero h1,
  .hero-copy,
  .subpage-hero h1,
  .subpage-hero p,
  .guide-hero h1,
  .guide-hero p,
  .about-hero h1,
  .about-hero p,
  .section-heading h2,
  .section-heading p,
  .product-center-card h3,
  .product-center-card p,
  .core-product-card strong,
  .core-product-card p,
  .series-detail-copy h1,
  .series-detail-copy p,
  .product-detail-copy h1,
  .product-detail-copy p {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    overflow-wrap: break-word !important;
    word-break: break-word !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .subpage-hero,
  .product-center-section,
  .core-product-showcase,
  .chooser-section {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .product-center-grid,
  .core-product-grid,
  .related-products-grid,
  .scene-grid,
  .feature-strip {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 16px !important;
  }

  .product-center-card,
  .core-product-card,
  .related-product-card,
  .series-product-card,
  .guide-result-product {
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow: hidden !important;
  }

  .product-center-card {
    padding: 24px 20px 22px !important;
  }

  .product-center-card::before,
  .product-center-card::after {
    pointer-events: none !important;
  }

  .product-center-card > div,
  .core-product-card > div,
  .related-product-card > div,
  .guide-result-product > div {
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    z-index: 3 !important;
  }

  .product-center-card img {
    position: relative !important;
    z-index: 2 !important;
    display: block !important;
    width: min(58vw, 176px) !important;
    max-width: 176px !important;
    max-height: 190px !important;
    margin: 8px auto 0 !important;
    object-fit: contain !important;
    transform: none !important;
  }

  .subpage-hero-visual {
    min-height: 330px !important;
    height: 330px !important;
  }

  .subpage-pack.main {
    width: min(58vw, 220px) !important;
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) !important;
  }

  .subpage-pack.left {
    width: min(36vw, 132px) !important;
    left: 10px !important;
    right: auto !important;
  }

  .subpage-pack.right {
    width: min(36vw, 132px) !important;
    right: 10px !important;
    left: auto !important;
  }

  .hero-showcase,
  .guide-hero-visual,
  .about-hero-visual,
  .product-detail-visual {
    overflow: hidden !important;
  }
}

@media (max-width: 430px) {
  .subpage-hero h1,
  .section-heading h2 {
    font-size: clamp(27px, 7.8vw, 32px) !important;
    line-height: 1.22 !important;
    letter-spacing: -0.025em !important;
  }

  .subpage-hero p:not(.eyebrow),
  .section-heading p:not(.eyebrow) {
    font-size: 14.5px !important;
    line-height: 1.72 !important;
  }

  .product-center-card h3 {
    font-size: 24px !important;
    line-height: 1.2 !important;
  }
}

/* Mobile overlap hotfix v3 - product center explicit line breaks */
@media (max-width: 760px) {
  .subpage-hero-copy,
  .section-heading {
    text-align: left !important;
  }

  .section-heading.center {
    text-align: left !important;
  }

  .product-center-section .section-heading,
  .core-product-showcase .section-heading {
    padding-left: 2px !important;
    padding-right: 2px !important;
  }
}

/* Mobile overlap hotfix v4 - decorative media containment */
@media (max-width: 760px) {
  .story-copy h2,
  .about-cta-panel h2,
  .guide-entry-panel h2 {
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: break-word !important;
  }

  .hero-showcase .hero-pack.pack-left,
  .hero-showcase .hero-pack.pack-right {
    width: min(39vw, 148px) !important;
  }

  .hero-showcase .hero-pack.pack-left { left: 4px !important; }
  .hero-showcase .hero-pack.pack-right { right: 4px !important; }

  .about-pack.pack-about-left,
  .guide-pack.pack-guide-b {
    left: 6px !important;
    width: min(37vw, 142px) !important;
  }

  .about-pack.pack-about-right,
  .guide-pack.pack-guide-c {
    right: 6px !important;
    width: min(37vw, 142px) !important;
  }

  .about-hero-visual,
  .guide-hero-visual,
  .about-cta-panel,
  .guide-entry-panel,
  .story-copy,
  .feature-strip article,
  .product-center-card,
  .series-products,
  .about-cta-section,
  .guide-entry-section {
    overflow-x: hidden !important;
  }

  .feature-strip article,
  .about-cta-panel > div,
  .guide-entry-panel > div,
  .story-copy {
    min-width: 0 !important;
  }
}

/* Mobile product detail overlap hardening - 2026-04-28
   Product detail pages were the most prone to image/text overlap on real phones.
   This pass forces all product visuals into normal vertical flow and keeps long navs scrollable. */
@media (max-width: 760px) {
  .product-detail-page .product-detail-hero {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 24px !important;
    padding-top: 34px !important;
    padding-bottom: 34px !important;
    overflow: visible !important;
  }

  .product-detail-page .product-detail-copy {
    order: 1 !important;
    position: relative !important;
    z-index: 5 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .product-detail-page .product-detail-copy h1,
  .product-detail-page .product-detail-lead,
  .product-detail-page .product-core-list,
  .product-detail-page .product-core-list li {
    max-width: 100% !important;
    white-space: normal !important;
    overflow: visible !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
  }

  .product-detail-page .product-detail-visual {
    order: 2 !important;
    position: relative !important;
    z-index: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 300px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 52px 16px 24px !important;
    display: grid !important;
    place-items: center !important;
    overflow: hidden !important;
    isolation: isolate !important;
    transform: none !important;
  }

  .product-detail-page .product-detail-visual img {
    position: relative !important;
    inset: auto !important;
    z-index: 2 !important;
    display: block !important;
    width: min(66vw, 250px) !important;
    max-width: 250px !important;
    max-height: 250px !important;
    height: auto !important;
    margin: 0 auto !important;
    object-fit: contain !important;
    transform: none !important;
  }

  .product-detail-page .product-detail-tag {
    z-index: 4 !important;
    left: 14px !important;
    top: 14px !important;
    right: 14px !important;
    width: fit-content !important;
    max-width: calc(100% - 28px) !important;
    white-space: normal !important;
  }

  .product-detail-page .series-subnav {
    justify-content: flex-start !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    max-width: 100% !important;
    padding-inline: 14px !important;
    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .product-detail-page .series-subnav::-webkit-scrollbar {
    display: none !important;
  }

  .product-detail-page .series-subnav a {
    flex: 0 0 auto !important;
  }

  .product-detail-page .scene-grid,
  .product-detail-page .feature-strip,
  .product-detail-page .related-product-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .product-detail-page .related-product-card {
    grid-template-columns: 82px minmax(0, 1fr) !important;
    align-items: center !important;
  }

  .product-detail-page .related-product-card img {
    width: 82px !important;
    height: 82px !important;
    max-width: 82px !important;
    max-height: 82px !important;
  }
}

@media (max-width: 430px) {
  .product-detail-page .product-detail-visual {
    min-height: 280px !important;
    padding-top: 50px !important;
  }

  .product-detail-page .product-detail-visual img {
    width: min(62vw, 225px) !important;
    max-width: 225px !important;
    max-height: 225px !important;
  }

  .product-detail-page .product-detail-copy h1 {
    font-size: clamp(28px, 8.4vw, 35px) !important;
    line-height: 1.16 !important;
  }
}

/* Mobile decorative-image separation for home/about/guide - 2026-04-28
   Avoid decorative packs or mascot art covering label text on smaller screens. */
@media (max-width: 760px) {
  .series-card {
    overflow: hidden !important;
  }

  .series-card .series-products {
    display: flex !important;
    align-items: flex-end !important;
    justify-content: center !important;
    gap: 0 !important;
    min-height: 240px !important;
    padding: 48px 8px 12px !important;
  }

  .series-card .stage-label {
    z-index: 6 !important;
    top: 14px !important;
    left: 16px !important;
    max-width: calc(100% - 32px) !important;
    background: rgba(255, 255, 255, .86) !important;
    border: 1px solid rgba(201, 154, 46, .24) !important;
    border-radius: 999px !important;
    padding: 6px 12px !important;
    line-height: 1.2 !important;
  }

  .series-card .series-products img {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    transform: none !important;
    width: min(32vw, 118px) !important;
    max-width: 118px !important;
    max-height: 175px !important;
    margin: 0 -7px !important;
    object-fit: contain !important;
  }

  .series-card .series-products.two img {
    width: min(40vw, 138px) !important;
    max-width: 138px !important;
    margin: 0 -5px !important;
  }

  .series-card .single-product-stage img {
    width: min(58vw, 190px) !important;
    max-width: 190px !important;
    margin: 0 auto !important;
  }

  .about-hero-visual,
  .guide-hero-visual {
    display: grid !important;
    place-items: center !important;
    min-height: 330px !important;
    padding: 56px 16px 18px !important;
    overflow: hidden !important;
  }

  .about-floating-card,
  .guide-report-card {
    z-index: 8 !important;
    background: rgba(255,255,255,.9) !important;
  }

  .about-tree,
  .pack-about-main,
  .pack-guide-a {
    position: relative !important;
    inset: auto !important;
    transform: none !important;
    z-index: 2 !important;
    width: min(62vw, 220px) !important;
    max-width: 220px !important;
    margin: 12px auto 0 !important;
  }

  .pack-about-left,
  .pack-about-right,
  .pack-guide-b,
  .pack-guide-c,
  .guide-mascot,
  .about-mascot {
    display: none !important;
  }
}

/* Mobile overlap hotfix v5 - neutralize card scrollWidth false positives */
@media (max-width: 760px) {
  .feature-strip article,
  .product-center-card {
    contain: paint !important;
  }

  .product-center-card,
  .product-center-card * {
    max-width: 100% !important;
  }

  .product-center-card .card-index,
  .product-center-card .eyebrow,
  .product-center-card h3,
  .product-center-card p,
  .product-center-card .text-link {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }
}

/* Mobile hero decorative card simplification - 2026-04-28
   Text-heavy floating cards were colliding with decorative images on compact screens. */
@media (max-width: 760px) {
  .resource-visual .resource-node,
  .about-hero-visual .about-floating-card,
  .guide-hero-visual .guide-report-card {
    display: none !important;
  }

  .resource-visual {
    min-height: 260px !important;
  }

  .guide-hero-visual,
  .about-hero-visual {
    min-height: 300px !important;
    padding-top: 24px !important;
  }

  .guide-hero-visual .pack-guide-a,
  .about-hero-visual .about-tree,
  .about-hero-visual .pack-about-main {
    margin-top: 0 !important;
  }
}



/* 2026 14-product matrix refinement */
.core-product-grid { grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); }
.core-product-card img,
.related-product-card img { object-fit: contain; background: radial-gradient(circle at 50% 45%, rgba(246, 215, 124, 0.26), rgba(255,255,255,0.02) 62%); }
.product-detail-visual { overflow: hidden; min-height: 440px; }
.product-detail-visual img { object-fit: contain; max-width: min(420px, 86%); max-height: 430px; margin: 0 auto; }
.series-detail-products { align-items: center; justify-content: center; gap: 18px; }
.series-detail-products img { object-fit: contain; max-height: 280px; }
.representative-grid { grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
.series-product-card img { object-fit: contain; background: linear-gradient(145deg, rgba(255,248,236,.88), rgba(255,255,255,.96)); }
.subpage-hero-visual .subpage-pack { object-fit: contain; }
@media (max-width: 760px) {
  .product-center-grid, .core-product-grid, .representative-grid, .related-product-grid, .feature-strip, .product-scene-grid { grid-template-columns: 1fr !important; }
  .core-product-card, .related-product-card, .series-product-card { min-height: auto; }
  .core-product-card img, .related-product-card img, .series-product-card img { width: 100%; max-width: 220px; height: auto; max-height: 220px; margin: 0 auto 14px; display: block; }
  .product-detail-hero { grid-template-columns: 1fr !important; gap: 20px; padding-bottom: 30px; }
  .product-detail-copy { position: relative; z-index: 2; }
  .product-detail-visual { min-height: 300px; padding: 28px 16px; order: 2; }
  .product-detail-visual img { max-width: min(260px, 82vw); max-height: 260px; position: relative; z-index: 1; }
  .product-detail-tag { position: static; display: inline-flex; margin-bottom: 12px; }
  .series-detail-hero { grid-template-columns: 1fr !important; gap: 18px; }
  .series-detail-products { min-height: 260px; padding: 24px 10px; }
  .series-detail-products img { position: static !important; transform: none !important; max-width: 30%; max-height: 190px; }
  .subpage-hero { grid-template-columns: 1fr !important; gap: 18px; }
  .subpage-hero-visual { min-height: 300px; overflow: hidden; }
  .subpage-hero-visual .subpage-pack { max-width: 34%; max-height: 190px; }
  .series-card { grid-template-columns: 1fr !important; }
  .series-products { min-height: 260px; padding: 20px 8px; }
  .series-products img { max-height: 190px; object-fit: contain; }
}
@media (max-width: 430px) {
  .product-detail-visual { min-height: 260px; }
  .product-detail-visual img { max-width: 230px; max-height: 230px; }
  .series-detail-products img, .subpage-hero-visual .subpage-pack, .series-products img { max-height: 165px; }
  .core-product-card img, .related-product-card img, .series-product-card img { max-width: 190px; max-height: 190px; }
}


/* UI cleanup after product image recut - 2026-04-28
   This block intentionally comes last to override earlier iterative hotfixes. */
:root {
  --kk-stage-bg: radial-gradient(circle at 50% 42%, rgba(246,215,124,.24), transparent 38%), linear-gradient(160deg, rgba(255,253,248,.92), rgba(255,239,205,.72));
}
.product-center-card,
.core-product-card,
.related-product-card,
.series-product-card,
.guide-result-product {
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.product-center-card:hover,
.core-product-card:hover,
.related-product-card:hover,
.series-product-card:hover,
.guide-result-product:hover {
  transform: translateY(-3px);
  border-color: rgba(201,154,46,.36);
}
.core-product-card,
.related-product-card,
.guide-result-product { background: rgba(255,255,255,.88); }
.product-center-card img,
.core-product-card img,
.related-product-card img,
.guide-result-product img,
.series-product-card img,
.product-detail-visual img,
.series-detail-products img,
.subpage-pack,
.hero-pack,
.guide-pack,
.about-pack { mix-blend-mode: normal; image-rendering: auto; }
.product-detail-visual,
.series-detail-products,
.subpage-hero-visual,
.hero-showcase,
.guide-hero-visual,
.about-hero-visual,
.series-products,
.about-cta-products { background: var(--kk-stage-bg); }
.product-detail-visual img { width: min(78%, 430px); max-height: 430px; }
.core-product-card img,
.related-product-card img,
.guide-result-product img { background: radial-gradient(circle at 50% 55%, rgba(246,215,124,.20), transparent 58%); }

@media (min-width: 761px) {
  .core-product-grid { grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); }
  .core-product-card { min-height: 190px; grid-template-columns: 140px minmax(0,1fr); }
  .core-product-card img { width: 140px; height: 150px; padding: 6px; }
  .product-center-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .product-center-card img { max-width: 240px; max-height: 250px; }
}

@media (max-width: 760px) {
  html, body { width: 100%; max-width: 100%; overflow-x: hidden; }
  .site-header { position: sticky; top: 0; overflow: visible; }
  .nav { order: 3; width: 100%; display: flex; flex-wrap: nowrap; overflow-x: auto; gap: 8px; padding: 4px 0; }
  .nav a { flex: 0 0 auto; white-space: nowrap !important; }
  .hero, .subpage-hero, .guide-hero, .about-hero, .series-detail-hero, .product-detail-hero { display: flex !important; flex-direction: column !important; align-items: stretch !important; gap: 24px !important; }
  .hero h1, .subpage-hero h1, .guide-hero-copy h1, .about-hero-copy h1, .series-detail-copy h1, .product-detail-copy h1, .section-heading h2 { word-break: keep-all !important; overflow-wrap: break-word !important; text-wrap: balance; }
  .hero-copy, .subpage-hero p:not(.eyebrow), .guide-hero-copy p:not(.eyebrow), .about-hero-copy p:not(.eyebrow), .section-heading p:not(.eyebrow), .product-center-card p, .core-product-card p { overflow-wrap: break-word !important; word-break: normal !important; }
  .subpage-hero-visual, .hero-showcase, .guide-hero-visual, .about-hero-visual { width: 100% !important; min-height: 320px !important; height: auto !important; contain: paint; }
  .subpage-pack.main { width: min(58vw, 230px) !important; max-width: 230px !important; top: 38px !important; }
  .subpage-pack.left, .subpage-pack.right { width: min(35vw, 138px) !important; max-width: 138px !important; bottom: 12px !important; }
  .subpage-pack.left { left: 12px !important; transform: rotate(-4deg) !important; }
  .subpage-pack.right { right: 12px !important; transform: rotate(4deg) !important; }
  .product-center-grid, .core-product-grid, .representative-grid, .related-product-grid, .guide-product-result, .scene-grid, .feature-strip { grid-template-columns: minmax(0,1fr) !important; gap: 16px !important; }
  .product-center-card { display: grid !important; grid-template-columns: minmax(0,1fr) !important; padding: 22px !important; min-height: auto !important; }
  .product-center-card .series-index { position: static !important; margin-bottom: 8px; }
  .product-center-card div .eyebrow { margin-left: 0 !important; }
  .product-center-card img { width: min(62vw, 190px) !important; max-height: 205px !important; justify-self: center !important; margin: 8px auto 0 !important; }
  .core-product-card, .related-product-card, .guide-result-product { display: grid !important; grid-template-columns: 88px minmax(0,1fr) !important; gap: 12px !important; align-items: center !important; text-align: left !important; padding: 14px !important; }
  .core-product-card img, .related-product-card img, .guide-result-product img { width: 88px !important; height: 88px !important; max-width: 88px !important; max-height: 88px !important; margin: 0 !important; padding: 4px !important; }
  .product-detail-page .product-detail-visual, .product-detail-visual { min-height: 285px !important; padding: 46px 16px 22px !important; overflow: hidden !important; }
  .product-detail-page .product-detail-visual img, .product-detail-visual img { width: min(64vw, 240px) !important; max-height: 240px !important; max-width: 240px !important; }
  .product-detail-tag { position: absolute !important; left: 14px !important; top: 12px !important; right: auto !important; width: auto !important; max-width: calc(100% - 28px) !important; }
  .series-detail-products { min-height: 260px !important; padding: 44px 10px 16px !important; display: flex !important; align-items: flex-end !important; justify-content: center !important; overflow: hidden !important; }
  .series-detail-products img { width: min(31vw, 118px) !important; max-width: 118px !important; max-height: 180px !important; margin: 0 -5px !important; position: relative !important; transform: none !important; }
  .series-detail-products img:nth-child(2) { width: min(35vw, 132px) !important; max-width: 132px !important; }
  .series-card .series-products { min-height: 235px !important; padding: 44px 8px 12px !important; }
  .series-card .series-products img { width: min(31vw, 116px) !important; max-height: 170px !important; margin: 0 -5px !important; }
  .series-card .series-products.two img { width: min(40vw, 136px) !important; }
  .series-card .single-product-stage img { width: min(58vw, 185px) !important; max-height: 190px !important; }
}

@media (max-width: 430px) {
  .hero h1, .subpage-hero h1, .guide-hero-copy h1, .about-hero-copy h1, .series-detail-copy h1, .product-detail-copy h1 { font-size: clamp(28px, 8.2vw, 34px) !important; line-height: 1.2 !important; }
  .section-heading h2 { font-size: clamp(26px, 7.6vw, 32px) !important; line-height: 1.22 !important; }
  .core-product-card, .related-product-card, .guide-result-product { grid-template-columns: 78px minmax(0,1fr) !important; }
  .core-product-card img, .related-product-card img, .guide-result-product img { width: 78px !important; height: 78px !important; max-width: 78px !important; max-height: 78px !important; }
  .subpage-hero-visual, .hero-showcase, .guide-hero-visual, .about-hero-visual { min-height: 300px !important; }
}


/* Desktop card overflow polish - 2026-04-28 */
.product-center-card { min-width: 0; }
.product-center-card img { min-width: 0; max-width: 100%; }
@media (min-width: 761px) and (max-width: 1320px) {
  .product-center-card { grid-template-columns: minmax(0, 1fr) minmax(132px, .52fr) !important; }
  .product-center-card img { width: min(100%, 178px) !important; max-height: 220px !important; }
  .subpage-pack.left { left: -20px !important; }
  .subpage-pack.right { right: -20px !important; }
}


/* Overflow metric cleanup: keep decorative pseudo-elements inside cards */
.product-center-card::before { right: -116px; bottom: -106px; }
@media (min-width: 761px) and (max-width: 1320px) {
  .product-center-card::before { width: 190px; height: 190px; right: -82px; bottom: -88px; }
}
.subpage-hero-visual { contain: paint; }


/* Product center decorative orb mobile containment - 2026-04-28 */
@media (max-width: 760px) {
  .product-center-card::before {
    width: 150px !important;
    height: 150px !important;
    right: -72px !important;
    bottom: -74px !important;
  }
}


@media (max-width: 760px) {
  .product-center-card::before { display: none !important; }
}


/* 首页综合营养补充系列：营养包 + 复合多维片 + 氨基丁酸三产品展示 */
.complete-trio-stage {
  gap: 0;
  align-items: flex-end;
  justify-content: center;
  padding: 70px 26px 8px;
}
.complete-trio-stage img {
  position: relative;
  z-index: 3;
  width: min(38%, 260px);
  max-height: 440px;
  object-fit: contain;
  margin: 0 -4.5%;
  filter: drop-shadow(0 18px 22px rgba(122, 11, 16, .12));
}
.complete-trio-stage img:nth-of-type(1) {
  transform: rotate(-5deg) translateY(8px);
  z-index: 2;
}
.complete-trio-stage img:nth-of-type(2) {
  width: min(42%, 292px);
  max-height: 470px;
  z-index: 4;
}
.complete-trio-stage img:nth-of-type(3) {
  transform: rotate(5deg) translateY(8px);
  z-index: 2;
}
.series-card:hover .complete-trio-stage img:nth-of-type(1) { transform: rotate(-5deg) translateY(1px); }
.series-card:hover .complete-trio-stage img:nth-of-type(2) { transform: translateY(-7px); }
.series-card:hover .complete-trio-stage img:nth-of-type(3) { transform: rotate(5deg) translateY(1px); }

@media (max-width: 760px) {
  .complete-trio-stage {
    min-height: 330px;
    padding: 58px 8px 6px;
  }
  .complete-trio-stage img {
    width: 39%;
    max-height: 300px;
    margin: 0 -5.5%;
  }
  .complete-trio-stage img:nth-of-type(2) {
    width: 43%;
    max-height: 320px;
  }
}


/* 系列代表产品多图一致性优化 - 2026-04-28
   文案中出现多个代表产品时，视觉区同步展示多产品组合，避免只出现单品造成理解偏差。 */
.series-products.four,
.product-center-products.four,
.series-detail-products.four-products {
  gap: 0;
}
.series-products.four img {
  width: 48%;
  max-height: 500px;
  margin: 0 -15%;
}
.series-products.four img:nth-of-type(1),
.series-products.four img:nth-of-type(4) {
  width: 44%;
  transform: rotate(-5deg) translateY(10px);
  z-index: 1;
}
.series-products.four img:nth-of-type(2),
.series-products.four img:nth-of-type(3) {
  width: 52%;
  z-index: 3;
}
.series-products.four img:nth-of-type(4) {
  transform: rotate(5deg) translateY(10px);
}
.series-card:hover .series-products.four img:nth-of-type(1) { transform: rotate(-5deg) translateY(2px); }
.series-card:hover .series-products.four img:nth-of-type(4) { transform: rotate(5deg) translateY(2px); }
.series-card:hover .series-products.four img:nth-of-type(2),
.series-card:hover .series-products.four img:nth-of-type(3) { transform: translateY(-7px); }

.product-center-products {
  position: relative;
  min-height: 230px;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 0;
  overflow: hidden;
}
.product-center-products img {
  position: relative;
  z-index: 2;
  object-fit: contain;
  filter: drop-shadow(0 12px 16px rgba(122, 11, 16, .10));
}
.product-center-products.single img {
  width: min(78%, 250px);
  max-height: 260px;
}
.product-center-products.three img {
  width: 52%;
  max-height: 245px;
  margin: 0 -15%;
}
.product-center-products.three img:nth-of-type(2) {
  z-index: 3;
  width: 58%;
}
.product-center-products.four img {
  width: 43%;
  max-height: 238px;
  margin: 0 -13%;
}
.product-center-products.four img:nth-of-type(2),
.product-center-products.four img:nth-of-type(3) {
  width: 48%;
  z-index: 3;
}

.series-detail-products.four-products img {
  width: 43%;
  max-height: 470px;
  margin: 0 -13%;
}
.series-detail-products.four-products img:nth-of-type(2),
.series-detail-products.four-products img:nth-of-type(3) {
  width: 48%;
  z-index: 3;
}
.series-detail-products.four-products img:nth-of-type(1) { transform: rotate(-5deg) translateY(8px); }
.series-detail-products.four-products img:nth-of-type(4) { transform: rotate(5deg) translateY(8px); }

.about-series-map a::after {
  content: "";
  position: absolute;
  right: 20px;
  bottom: 18px;
  width: 54px;
  height: 54px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(246, 215, 124, .24), transparent 68%);
  border: 1px solid rgba(201, 154, 46, .18);
}

@media (max-width: 760px) {
  .series-products.four,
  .series-products.three,
  .complete-trio-stage,
  .product-center-products,
  .series-detail-products,
  .series-detail-products.four-products {
    min-height: 230px !important;
    padding: 52px 10px 8px !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: center !important;
    overflow: hidden !important;
  }
  .series-products.four img,
  .series-products.three img,
  .series-products.two img,
  .complete-trio-stage img,
  .product-center-products img,
  .product-center-products.three img,
  .product-center-products.four img,
  .series-detail-products img,
  .series-detail-products.four-products img {
    width: auto !important;
    max-width: 42vw !important;
    max-height: 205px !important;
    height: auto !important;
    margin: 0 -7vw !important;
    object-fit: contain !important;
  }
  .product-center-products.single img,
  .series-products.two img {
    max-width: 62vw !important;
    margin: 0 auto !important;
  }
  .series-products.four img,
  .product-center-products.four img,
  .series-detail-products.four-products img {
    max-width: 34vw !important;
    margin: 0 -5.5vw !important;
  }
  .series-products.four img:nth-of-type(1),
  .product-center-products.four img:nth-of-type(1),
  .series-detail-products.four-products img:nth-of-type(1) {
    transform: rotate(-4deg) translateY(6px) !important;
  }
  .series-products.four img:nth-of-type(4),
  .product-center-products.four img:nth-of-type(4),
  .series-detail-products.four-products img:nth-of-type(4) {
    transform: rotate(4deg) translateY(6px) !important;
  }
  .product-center-products.three img:nth-of-type(2),
  .complete-trio-stage img:nth-of-type(2),
  .series-products.three img:nth-of-type(2) {
    max-width: 45vw !important;
    z-index: 4;
  }
}

@media (max-width: 430px) {
  .series-products.four img,
  .product-center-products.four img,
  .series-detail-products.four-products img {
    max-width: 31vw !important;
    max-height: 178px !important;
    margin: 0 -5vw !important;
  }
  .series-products.three img,
  .product-center-products.three img,
  .complete-trio-stage img,
  .series-detail-products img {
    max-width: 39vw !important;
    max-height: 188px !important;
    margin: 0 -6.5vw !important;
  }
  .product-center-products.single img {
    max-width: 58vw !important;
    max-height: 198px !important;
  }
}

/* Product image proportion harmonization - 2026-04-29
   Unify product image stages so packs sit visually centered inside cards,
   neither floating too high nor sinking too low. This block intentionally
   comes last and overrides earlier iterative image hotfixes. */
:root {
  --kk-product-card-img-box: 168px;
  --kk-product-list-img-box: 128px;
  --kk-product-detail-img-box: 420px;
  --kk-series-stage-height: 360px;
  --kk-series-detail-stage-height: 430px;
}

.product-center-products,
.series-products,
.series-detail-products,
.about-cta-products {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}

.series-products {
  min-height: var(--kk-series-stage-height) !important;
  padding: 34px 20px 24px !important;
}

.product-center-products {
  min-height: 210px !important;
  padding: 22px 10px 18px !important;
}

.series-detail-products {
  min-height: var(--kk-series-detail-stage-height) !important;
  padding: 40px 24px 28px !important;
}

.series-products img,
.product-center-products img,
.series-detail-products img,
.about-cta-products img {
  position: relative !important;
  display: block !important;
  object-fit: contain !important;
  height: auto !important;
  max-height: 100% !important;
  align-self: center !important;
  transform-origin: 50% 76% !important;
}

.series-products.two img,
.series-products.three img,
.series-products.four img,
.complete-trio-stage img {
  max-height: 300px !important;
  width: auto !important;
  max-width: 34% !important;
  margin: 0 -4.5% !important;
}
.series-products.two img { max-width: 42% !important; margin: 0 -3% !important; }
.series-products.three img:nth-of-type(2),
.complete-trio-stage img:nth-of-type(2) { max-width: 38% !important; max-height: 318px !important; z-index: 4; }
.series-products.four img { max-width: 28% !important; margin: 0 -3.8% !important; }
.series-products.four img:nth-of-type(2),
.series-products.four img:nth-of-type(3) { max-width: 31% !important; z-index: 4; }
.single-product-stage img { width: auto !important; max-width: 72% !important; max-height: 320px !important; margin: 0 auto !important; }

.product-center-products.single img { width: auto !important; max-width: 72% !important; max-height: 190px !important; margin: 0 auto !important; }
.product-center-products.three img { width: auto !important; max-width: 33% !important; max-height: 178px !important; margin: 0 -4.5% !important; }
.product-center-products.three img:nth-of-type(2) { max-width: 36% !important; max-height: 190px !important; z-index: 4; }
.product-center-products.four img { width: auto !important; max-width: 27% !important; max-height: 172px !important; margin: 0 -3.6% !important; }
.product-center-products.four img:nth-of-type(2),
.product-center-products.four img:nth-of-type(3) { max-width: 30% !important; max-height: 184px !important; z-index: 4; }
.product-center-card > img:not(.subpage-pack) { width: auto !important; max-width: 210px !important; max-height: 218px !important; align-self: center !important; justify-self: center !important; margin: auto !important; }

.core-product-card,
.related-product-card,
.guide-result-product {
  align-items: center !important;
}
.core-product-card img,
.related-product-card img,
.guide-result-product img {
  width: var(--kk-product-list-img-box) !important;
  height: var(--kk-product-list-img-box) !important;
  max-width: var(--kk-product-list-img-box) !important;
  max-height: var(--kk-product-list-img-box) !important;
  padding: 8px !important;
  object-fit: contain !important;
  align-self: center !important;
  justify-self: center !important;
}
.series-product-card {
  grid-template-rows: 300px auto !important;
}
.series-product-card img {
  width: 100% !important;
  height: 300px !important;
  max-height: 300px !important;
  padding: 22px 28px 18px !important;
  object-fit: contain !important;
  object-position: center center !important;
}

.product-detail-visual {
  min-height: 500px !important;
  padding: 60px 32px 42px !important;
  display: grid !important;
  place-items: center !important;
}
.product-detail-visual img {
  width: auto !important;
  max-width: min(82%, var(--kk-product-detail-img-box)) !important;
  max-height: var(--kk-product-detail-img-box) !important;
  object-fit: contain !important;
  object-position: center center !important;
  margin: auto !important;
}

.series-detail-products img { width: auto !important; max-width: 30% !important; max-height: 340px !important; margin: 0 -4.5% !important; }
.series-detail-products img:nth-child(2) { max-width: 35% !important; max-height: 365px !important; }
.series-detail-products.four-products img { max-width: 25% !important; max-height: 328px !important; margin: 0 -3.5% !important; }
.series-detail-products.four-products img:nth-of-type(2),
.series-detail-products.four-products img:nth-of-type(3) { max-width: 28% !important; max-height: 350px !important; }

.hero-showcase .hero-pack { object-fit: contain !important; }
.pack-main { width: min(54%, 360px) !important; max-height: 390px !important; }
.pack-left,
.pack-right { width: min(34%, 215px) !important; max-height: 260px !important; }

@media (max-width: 760px) {
  :root {
    --kk-product-list-img-box: 86px;
    --kk-product-detail-img-box: 236px;
    --kk-series-stage-height: 250px;
    --kk-series-detail-stage-height: 260px;
  }
  .series-products,
  .series-card .series-products,
  .complete-trio-stage {
    min-height: var(--kk-series-stage-height) !important;
    padding: 44px 8px 12px !important;
    align-items: center !important;
  }
  .series-products.two img,
  .series-products.three img,
  .complete-trio-stage img {
    width: auto !important;
    max-width: 34vw !important;
    max-height: 178px !important;
    margin: 0 -4.8vw !important;
  }
  .series-products.two img { max-width: 44vw !important; margin: 0 -3vw !important; }
  .series-products.three img:nth-of-type(2),
  .complete-trio-stage img:nth-of-type(2) { max-width: 38vw !important; max-height: 190px !important; }
  .series-products.four img { width: auto !important; max-width: 28vw !important; max-height: 166px !important; margin: 0 -4.3vw !important; }
  .series-products.four img:nth-of-type(2),
  .series-products.four img:nth-of-type(3) { max-width: 30vw !important; }
  .single-product-stage img { max-width: 58vw !important; max-height: 190px !important; }

  .product-center-products {
    min-height: 178px !important;
    padding: 14px 6px 8px !important;
  }
  .product-center-products.single img { max-width: 54vw !important; max-height: 156px !important; }
  .product-center-products.three img { max-width: 31vw !important; max-height: 148px !important; margin: 0 -4.7vw !important; }
  .product-center-products.three img:nth-of-type(2) { max-width: 34vw !important; max-height: 158px !important; }
  .product-center-products.four img { max-width: 25vw !important; max-height: 140px !important; margin: 0 -4.1vw !important; }
  .product-center-products.four img:nth-of-type(2),
  .product-center-products.four img:nth-of-type(3) { max-width: 27vw !important; max-height: 150px !important; }
  .product-center-card > img:not(.subpage-pack) { max-width: 180px !important; max-height: 188px !important; margin: 8px auto 0 !important; }

  .core-product-card,
  .related-product-card,
  .guide-result-product {
    grid-template-columns: var(--kk-product-list-img-box) minmax(0,1fr) !important;
    min-height: 116px !important;
  }
  .core-product-card img,
  .related-product-card img,
  .guide-result-product img {
    width: var(--kk-product-list-img-box) !important;
    height: var(--kk-product-list-img-box) !important;
    max-width: var(--kk-product-list-img-box) !important;
    max-height: var(--kk-product-list-img-box) !important;
    margin: 0 !important;
    padding: 5px !important;
  }
  .series-product-card { grid-template-rows: 210px auto !important; }
  .series-product-card img { height: 210px !important; max-height: 210px !important; padding: 16px 18px 12px !important; }

  .product-detail-page .product-detail-visual,
  .product-detail-visual {
    min-height: 282px !important;
    padding: 48px 14px 20px !important;
  }
  .product-detail-page .product-detail-visual img,
  .product-detail-visual img {
    width: auto !important;
    max-width: min(68vw, var(--kk-product-detail-img-box)) !important;
    max-height: var(--kk-product-detail-img-box) !important;
  }
  .series-detail-products,
  .series-detail-products.four-products {
    min-height: var(--kk-series-detail-stage-height) !important;
    padding: 40px 8px 14px !important;
    align-items: center !important;
  }
  .series-detail-products img { width: auto !important; max-width: 31vw !important; max-height: 180px !important; margin: 0 -4.7vw !important; }
  .series-detail-products img:nth-child(2) { max-width: 35vw !important; max-height: 190px !important; }
  .series-detail-products.four-products img { max-width: 25vw !important; max-height: 164px !important; margin: 0 -4vw !important; }
  .series-detail-products.four-products img:nth-of-type(2),
  .series-detail-products.four-products img:nth-of-type(3) { max-width: 27vw !important; max-height: 174px !important; }

  .hero-showcase { min-height: 330px !important; }
  .pack-main { width: min(62vw, 230px) !important; max-height: 255px !important; }
  .pack-left,
  .pack-right { width: min(36vw, 132px) !important; max-height: 160px !important; }
}

@media (max-width: 430px) {
  :root { --kk-product-list-img-box: 78px; --kk-product-detail-img-box: 220px; }
  .series-products.two img,
  .series-products.three img,
  .complete-trio-stage img { max-height: 166px !important; }
  .series-products.four img { max-height: 154px !important; }
  .product-center-products.single img { max-height: 146px !important; }
  .product-center-products.three img { max-height: 138px !important; }
  .product-center-products.four img { max-height: 130px !important; }
  .series-product-card { grid-template-rows: 190px auto !important; }
  .series-product-card img { height: 190px !important; max-height: 190px !important; }
  .product-detail-page .product-detail-visual,
  .product-detail-visual { min-height: 264px !important; }
}



/* Homepage hero visual refinement: keep the desktop image uncropped and use copy + frame for a calmer brand expression */
.hero-showcase-image.hero-visual-card {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  align-items: stretch;
  gap: clamp(16px, 2vw, 24px);
  padding: clamp(22px, 2.6vw, 34px);
  background:
    radial-gradient(circle at 72% 18%, rgba(246, 215, 124, .32), transparent 24%),
    linear-gradient(160deg, rgba(255, 251, 244, .98), rgba(255, 238, 205, .86));
}
.hero-visual-copy {
  position: relative;
  z-index: 8;
  max-width: 520px;
  padding-right: 110px;
}
.hero-visual-copy span {
  display: inline-flex;
  min-height: 30px;
  align-items: center;
  padding: 0 12px;
  border-radius: 999px;
  color: var(--kk-red-deep);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
  background: rgba(255, 255, 255, .72);
  border: 1px solid rgba(201, 154, 46, .24);
}
.hero-visual-copy strong {
  display: block;
  margin-top: 12px;
  color: var(--kk-red-deep);
  font-size: clamp(24px, 2.2vw, 36px);
  line-height: 1.14;
  letter-spacing: -.04em;
}
.hero-visual-copy p {
  max-width: 480px;
  margin: 10px 0 0;
  color: rgba(36, 19, 19, .68);
  font-size: 15px;
  line-height: 1.72;
}
.hero-image-frame {
  position: relative;
  z-index: 3;
  min-height: 0;
  display: grid;
  place-items: center;
  padding: clamp(10px, 1.6vw, 20px);
  border-radius: 34px;
  background:
    radial-gradient(ellipse at 50% 76%, rgba(122, 11, 16, .10), transparent 54%),
    rgba(255, 255, 255, .50);
  border: 1px solid rgba(201, 154, 46, .22);
  overflow: hidden;
}
.hero-image-frame::before {
  content: "";
  position: absolute;
  width: min(78%, 460px);
  aspect-ratio: 1;
  left: 50%;
  top: 55%;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  border: 1px solid rgba(201, 154, 46, .20);
  box-shadow: 0 0 0 18px rgba(246, 215, 124, .07), inset 0 0 44px rgba(201, 154, 46, .08);
}
.hero-home-image {
  position: relative;
  z-index: 2;
  width: min(100%, 560px);
  height: auto;
  max-height: 390px;
  object-fit: contain;
  object-position: center;
  border-radius: 0;
  filter: drop-shadow(0 20px 34px rgba(92, 23, 20, 0.16));
}

/* Keep the hero headline stable after removing punctuation */
.hero h1 span {
  word-break: keep-all;
}

@media (max-width: 980px) {
  .hero-showcase-image.hero-visual-card {
    min-height: 520px;
    height: auto;
    padding: 20px;
  }
  .hero-visual-copy {
    padding-right: 0;
  }
  .hero-home-image {
    max-height: 330px;
  }
}

@media (max-width: 640px) {
  .hero h1 span {
    white-space: normal;
  }
  .hero-showcase-image.hero-visual-card {
    min-height: auto;
    border-radius: 30px;
    gap: 14px;
  }
  .hero-visual-copy strong {
    font-size: 24px;
  }
  .hero-visual-copy p {
    font-size: 14px;
  }
  .hero-image-frame {
    min-height: 230px;
    border-radius: 24px;
  }
  .hero-home-image {
    max-height: 245px;
  }
  .hero-showcase-image .hero-badge {
    position: static;
    justify-self: start;
    font-size: 11px;
    padding: 8px 12px;
  }
  .hero-showcase-image .badge-bottom {
    justify-self: end;
    margin-top: -48px;
    z-index: 9;
  }
}
