/* ==========================================================================
   Option A PDP skin — proof-led clinic editorial
   Extends option-a.css (copied unmodified from the homepage set): numbered
   sections, hairline rules, cream figure frames, calm editorial rows.
   ========================================================================== */

/* --- Buy hero ---------------------------------------------------------------- */
.a-buy { padding-block: clamp(8px, 2vw, 24px) var(--section-y); }
.a-section--tight { padding-top: 0; }
.a-figure {
  background: var(--cream); border-radius: var(--radius-m);
  padding: clamp(14px, 2.2vw, 24px); box-shadow: var(--shadow-soft);
}
.a-figure .gallery-frame { background: var(--paper); border-radius: var(--radius-s); }
.a-figure .gallery-plate { border-radius: var(--radius-s); }
.a-fig-cap {
  display: flex; justify-content: space-between; gap: 14px;
  margin-top: 12px; font-size: 0.8rem; color: var(--shiitake);
}
.a-buy__col { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
.a-buy__title { font-size: clamp(2.2rem, 4.6vw, 3.3rem); }
.a-buy__sub { font-family: var(--serif); font-style: italic; font-size: 1.3rem; color: var(--cypress-deep); }
.a-proof-row { display: flex; align-items: center; gap: 10px; font-size: 0.9rem; color: var(--shiitake); flex-wrap: wrap; }
.a-buy__desc { max-width: 54ch; }
.a-fine { border-top: 1px solid rgba(121, 104, 86, 0.3); padding-top: 14px; font-size: 0.85rem; color: var(--shiitake); }

/* --- 01 · Product notes accordion --------------------------------------------- */
.a-acc { border-top: 1.5px solid rgba(121, 104, 86, 0.35); }
.a-acc details { border-bottom: 1px solid rgba(121, 104, 86, 0.25); }
.a-acc summary {
  display: flex; align-items: baseline; gap: 18px;
  padding: 18px 4px; cursor: pointer; list-style: none;
}
.a-acc summary::-webkit-details-marker { display: none; }
.a-acc summary:hover h3 { color: var(--cypress); }
.a-acc .num { font-family: var(--serif); color: var(--stucco); font-size: 1.1rem; min-width: 2ch; }
.a-acc h3 { font-size: clamp(1.15rem, 2vw, 1.5rem); flex: 1; min-width: 0; transition: color var(--t-hover); }
.a-acc .ind { font-size: 1.5rem; color: var(--cypress); line-height: 1; transition: transform var(--t-menu); }
.a-acc details[open] .ind { transform: rotate(45deg); }
.a-acc__body {
  padding: 2px 4px 28px calc(2ch + 22px);
  max-width: 72ch; display: grid; gap: 12px;
}
@media (max-width: 700px) { .a-acc__body { padding-left: 4px; } }
.a-acc__body ul { list-style: disc; padding-left: 1.2rem; display: grid; gap: 8px; }

/* --- 04 · On the label (trust band) -------------------------------------------- */
.a-label { background: var(--paper-deep); }
.a-label__cols { display: grid; gap: clamp(20px, 3vw, 36px); grid-template-columns: minmax(0, 1fr); }
@media (min-width: 760px) { .a-label__cols { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1080px) { .a-label__cols { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.a-label__item { border-top: 1px solid rgba(121, 104, 86, 0.35); padding-top: 16px; }
.a-label__item h3 { font-size: 1.2rem; margin-bottom: 8px; }
.a-label__item p { font-size: 0.95rem; color: var(--shiitake); }

/* --- 05 · More products (editorial rows) ---------------------------------------- */
.a-xrows { border-top: 1.5px solid rgba(121, 104, 86, 0.35); }
.a-xrow {
  display: flex; align-items: baseline; gap: 6px 16px; flex-wrap: wrap;
  padding: 20px 4px; border-bottom: 1px solid rgba(121, 104, 86, 0.25);
}
.a-xrow h3 { font-size: clamp(1.2rem, 2.4vw, 1.7rem); flex: 1 1 300px; min-width: 0; }
.a-xrow .size { color: var(--shiitake); font-size: 0.9rem; }

/* --- Consultation bridge ---------------------------------------------------------- */
.a-bridge__panel {
  background: var(--cream); border-radius: var(--radius-l);
  padding: clamp(28px, 4.5vw, 56px); box-shadow: var(--shadow-soft);
  display: grid; gap: 24px; grid-template-columns: minmax(0, 1fr); align-items: center;
}
@media (min-width: 900px) { .a-bridge__panel { grid-template-columns: minmax(0, 7fr) minmax(0, 4fr); } }
.a-bridge__panel h2 { font-size: clamp(1.7rem, 3.2vw, 2.4rem); margin-block: 10px 14px; }
.a-bridge__panel .a-bridge__sub { color: var(--shiitake); max-width: 56ch; }
.a-bridge__ctas { display: grid; gap: 10px; }
