/* Loaded only by Pro, Pro H and Pro Lid. Keep important copy readable. */
.detail-page:is(.detail-pro,.detail-pro-h) .hero h1 { font-size:clamp(32px,3.5vw,50px); }
.detail-page:is(.detail-pro,.detail-pro-h):lang(en) .hero h1 { font-size:clamp(28px,2.6vw,40px); text-wrap:balance; }
.detail-page:is(.detail-pro,.detail-pro-h) .placement-note { margin-top:22px; font-size:16px; color:var(--ink); line-height:1.8; }
.detail-page:is(.detail-pro,.detail-pro-h) .step p { font-size:16px; color:var(--ink); line-height:1.8; }
.detail-page:is(.detail-pro,.detail-pro-h,.detail-lid) .spec-table { font-size:16px; }
.detail-page:is(.detail-pro,.detail-pro-h,.detail-lid) .spec-row dt { color:var(--ink); }
.detail-page:is(.detail-pro,.detail-pro-h,.detail-lid) .spec-row { gap:18px; grid-template-columns:minmax(0,42%) minmax(0,1fr); }
.detail-lid .lid-hero h1 { font-size:clamp(36px,4vw,56px); letter-spacing:0; }
.detail-lid .lid-compat { font-size:16px; line-height:1.8; color:var(--ink); margin-top:24px; white-space:pre-line; }
.detail-lid .lid-color { font-size:16px; }
.detail-lid .lid-cleaning { background:var(--bg-soft); }
.lid-cleaning-images { display:grid; grid-template-columns:repeat(2,minmax(0,340px)); justify-content:center; gap:36px; }
.lid-cleaning-images img { width:100%; height:auto; }
.lid-cleaning-images figcaption { text-align:center; font-size:16px; color:var(--ink); margin-top:12px; }
@media(max-width:760px) {
  .detail-page:is(.detail-pro,.detail-pro-h) .hero h1 { font-size:clamp(28px,7.4vw,40px); }
  .detail-page:is(.detail-pro,.detail-pro-h):lang(en) .hero h1 { font-size:clamp(26px,6.8vw,34px); }
  .detail-page:is(.detail-pro,.detail-pro-h) .steps { grid-template-columns:1fr; gap:28px; max-width:560px; }
  .detail-page:is(.detail-pro,.detail-pro-h) .step { display:grid; grid-template-columns:minmax(0,38%) minmax(0,1fr); column-gap:18px; text-align:left; }
  .detail-page:is(.detail-pro,.detail-pro-h) .step figure { grid-column:1; grid-row:1 / span 2; height:180px; padding:12px; margin:0; }
  .detail-page:is(.detail-pro,.detail-pro-h) .step-n { grid-column:2; margin:0 0 8px; align-self:end; }
  .detail-page:is(.detail-pro,.detail-pro-h) .step p { grid-column:2; margin:0; align-self:start; }
  .detail-page:is(.detail-pro,.detail-pro-h,.detail-lid) .spec-row { padding-inline:0; gap:14px; }
  .detail-lid .lid-hero h1 { font-size:clamp(30px,8vw,42px); }
  .detail-lid:lang(en) .lid-hero h1 { white-space:pre-line; }
  .detail-lid .lid-compat { margin-top:20px; }
  .detail-lid .lid-color-controls { flex-wrap:wrap; gap:10px 20px; }
  .lid-cleaning-images { gap:16px; }
}
