.kic-product-hero {
  position: relative;
  overflow: hidden;
  color: var(--kic-cream);
  background: radial-gradient(circle at 76% 42%, rgba(180, 112, 47, .3), transparent 31%), var(--kic-cacao-900);
}
.kic-product-hero__inner,
.kic-product-content__inner,
.kic-related__inner {
  width: min(1180px, calc(100% - 44px));
  margin: 0 auto;
}
.kic-product-hero__inner {
  min-height: 620px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, .9fr);
  align-items: center;
  gap: 56px;
  padding: 72px 0;
}
.kic-breadcrumb { margin: 0 0 28px; font-size: 13px; color: rgba(255,255,255,.7); }
.kic-breadcrumb a { color: var(--kic-gold); }
.kic-product-hero h1 { max-width: 12ch; margin: 0 0 24px; font: 900 clamp(2.7rem, 5.8vw, 5.8rem)/.93 var(--kic-font-display); letter-spacing: -.055em; }
.kic-product-hero__lead { max-width: 58ch; margin: 0 0 32px; font-size: clamp(1rem, 1.6vw, 1.22rem); line-height: 1.75; color: rgba(255,255,255,.82); }
.kic-product-hero__actions { display: flex; flex-wrap: wrap; gap: 14px; }
.kic-product-purchase { max-width: 520px; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px 14px; align-items: end; margin: 0 0 22px; padding: 18px; border: 1px solid rgba(244,196,48,.24); border-radius: 18px; background: rgba(255,255,255,.06); }
.kic-product-purchase[hidden] { display: none; }
.kic-product-purchase label { grid-column: 1 / -1; font: 800 10px/1 var(--kic-font-body); letter-spacing: .14em; text-transform: uppercase; color: var(--kic-gold); }
.kic-product-purchase select { min-height: 48px; padding: 0 42px 0 14px; border: 1px solid rgba(255,255,255,.2); border-radius: 10px; color: var(--kic-cream); background: #321b11; font: 600 14px var(--kic-font-body); }
.kic-product-price { grid-column: 1 / -1; margin: 2px 0 0; font: 900 28px/1 var(--kic-font-display); color: var(--kic-cream); }
.kic-product-error { min-height: 55vh; padding: 100px 24px; text-align: center; color: var(--kic-cream); background: var(--kic-cacao-900); }
.kic-product-error[hidden] { display: none; }
.kic-product-hero__visual { position: relative; margin: 0; aspect-ratio: 1; border-radius: 32px; overflow: hidden; background: linear-gradient(145deg, #f2d58d, #ba7438); box-shadow: 0 28px 80px rgba(0,0,0,.32); }
.kic-product-hero__visual img { width: 100%; height: 100%; object-fit: cover; }
.kic-product-content { padding: 88px 0; background: #fbf5e8; color: var(--kic-cacao-900); }
.kic-product-content__inner { display: grid; grid-template-columns: 1.05fr .95fr; gap: 72px; align-items: start; }
.kic-product-content h2, .kic-related h2 { margin: 0 0 20px; font: 900 clamp(2rem, 4vw, 3.8rem)/1 var(--kic-font-display); letter-spacing: -.04em; }
.kic-product-content p { max-width: 66ch; line-height: 1.8; color: #654c3e; }
.kic-product-facts { display: grid; gap: 12px; margin: 0; }
.kic-product-facts div { padding: 22px 24px; border: 1px solid rgba(70,38,24,.14); border-radius: 18px; background: rgba(255,255,255,.62); }
.kic-product-facts dt { margin-bottom: 6px; font: 800 12px/1.2 var(--kic-font-body); letter-spacing: .12em; text-transform: uppercase; color: #8a5a2b; }
.kic-product-facts dd { margin: 0; line-height: 1.55; }
.kic-use-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin: 30px 0 0; padding: 0; list-style: none; }
.kic-use-list li { padding: 18px; border-radius: 16px; background: #fff; box-shadow: 0 10px 28px rgba(62,35,20,.07); font-weight: 700; }
.kic-related { padding: 76px 0; color: var(--kic-cream); background: #24120c; }
.kic-related__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin-top: 32px; }
.kic-related__card { min-height: 180px; display: flex; flex-direction: column; justify-content: flex-end; padding: 26px; border: 1px solid rgba(244,196,48,.2); border-radius: 20px; color: inherit; background: linear-gradient(145deg, rgba(244,196,48,.12), rgba(255,255,255,.025)); transition: transform .2s ease, border-color .2s ease; }
.kic-related__card:hover { transform: translateY(-4px); border-color: var(--kic-gold); }
.kic-related__card strong { display: block; margin-bottom: 8px; font: 800 1.25rem/1.15 var(--kic-font-display); }
.kic-related__card span { color: rgba(255,255,255,.68); }
@media (max-width: 860px) {
  .kic-product-hero__inner, .kic-product-content__inner { grid-template-columns: 1fr; }
  .kic-product-hero__inner { padding: 52px 0 68px; }
  .kic-product-hero__visual { max-width: 540px; }
  .kic-related__grid { grid-template-columns: 1fr; }
}
@media (max-width: 520px) {
  .kic-product-hero__inner, .kic-product-content__inner, .kic-related__inner { width: min(100% - 32px, 1180px); }
  .kic-product-hero h1 { font-size: clamp(2.65rem, 15vw, 4.2rem); }
  .kic-product-hero__actions .kic-btn { width: 100%; justify-content: center; }
  .kic-use-list { grid-template-columns: 1fr; }
  .kic-product-purchase { grid-template-columns: 1fr; }
  .kic-product-purchase .kic-btn { width: 100%; justify-content: center; }
}

.kic-commerce-detail { padding: 88px 0; color: var(--kic-cacao-900); background: #f4ead8; }
.kic-commerce-detail__inner { width: min(1180px, calc(100% - 44px)); margin: 0 auto; }
.kic-commerce-detail__head { max-width: 760px; margin-bottom: 34px; }
.kic-commerce-detail__head h2,
.kic-faq h2,
.kic-review-invite h2 { margin: 0 0 16px; font: 900 clamp(2rem, 4vw, 3.7rem)/1 var(--kic-font-display); letter-spacing: -.04em; }
.kic-commerce-detail__head p,
.kic-review-invite p { line-height: 1.75; color: #654c3e; }
.kic-commerce-detail__grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 18px; }
.kic-info-card { padding: 28px; border: 1px solid rgba(70,38,24,.13); border-radius: 22px; background: rgba(255,255,255,.72); }
.kic-info-card h3 { margin: 0 0 12px; font: 800 1.12rem/1.2 var(--kic-font-display); }
.kic-info-card h3:not(:first-child) { margin-top: 26px; }
.kic-info-card p, .kic-info-card li { line-height: 1.7; color: #654c3e; }
.kic-info-card ul { margin: 0; padding-left: 20px; }
.kic-info-card__note { margin-bottom: 0; font-size: .9rem; }
.kic-order-panel { display: grid; grid-template-columns: minmax(220px,.7fr) 1.3fr; gap: 24px; align-items: end; margin: 24px 0 64px; padding: 28px; border-radius: 24px; color: var(--kic-cream); background: var(--kic-cacao-900); box-shadow: 0 20px 50px rgba(51,25,14,.18); }
.kic-order-panel label { display: block; margin-bottom: 9px; color: var(--kic-gold); font: 800 11px/1 var(--kic-font-body); letter-spacing: .11em; text-transform: uppercase; }
.kic-order-panel select { width: 100%; min-height: 50px; padding: 0 42px 0 14px; border: 1px solid rgba(255,255,255,.22); border-radius: 12px; color: #fff; background: #321b11; }
.kic-order-panel__price { display: block; margin-top: 12px; font: 900 1.8rem/1 var(--kic-font-display); }
.kic-order-panel__actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 10px; }
.kic-btn--light { color: var(--kic-cacao-900); background: var(--kic-cream); }
.kic-faq { max-width: 900px; margin: 0 auto 64px; }
.kic-faq details { border-bottom: 1px solid rgba(70,38,24,.18); }
.kic-faq summary { position: relative; padding: 22px 42px 22px 0; cursor: pointer; font-weight: 800; list-style: none; }
.kic-faq summary::after { content: '+'; position: absolute; right: 8px; font-size: 1.5rem; color: #8a5a2b; }
.kic-faq details[open] summary::after { content: '−'; }
.kic-faq details p { max-width: 70ch; margin: 0 0 22px; color: #654c3e; line-height: 1.75; }
.kic-review-invite { display: grid; grid-template-columns: 1fr auto; gap: 30px; align-items: center; padding: 32px; border-radius: 24px; background: #fff; }
.kic-review-invite h2 { font-size: clamp(1.8rem,3vw,2.7rem); }
@media (max-width: 760px) {
  .kic-commerce-detail__grid, .kic-order-panel, .kic-review-invite { grid-template-columns: 1fr; }
  .kic-order-panel__actions { justify-content: flex-start; }
  .kic-review-invite .kic-btn { width: 100%; justify-content: center; }
}
@media (max-width: 520px) {
  .kic-commerce-detail__inner { width: min(100% - 32px,1180px); }
  .kic-commerce-detail { padding: 68px 0; }
  .kic-info-card, .kic-order-panel, .kic-review-invite { padding: 22px; }
  .kic-order-panel__actions .kic-btn { width: 100%; justify-content: center; }
}
