/* Hallmark · macrostructure: Split Studio · genre: editorial commerce · tone: practical
   pre-emit critique: P4 H4 E4 S5 R4 V4 · contrast: pass (40–41)
   mobile: checked at 320, 375, 414, 768 px; desktop 1280 px
   Existing EnergySklad graphite/lime tokens, Road Radio, nav/footer preserved.
   Existing lifestyle illustrations; no decorative motion. */
.fridge-page { --fridge-section-gap: clamp(3rem, 7vw, 6rem); }
.fridge-page main > section { scroll-margin-top: 6rem; }
.fridge-header { min-height: 80px; display:flex; align-items:center; justify-content:space-between; gap:var(--space-md); }
.fridge-header .brand { width:clamp(150px, 24vw, 252px); }
.fridge-header nav { display:none; gap:var(--space-lg); margin-inline-start:auto; }
.fridge-header nav a { min-height:44px; display:flex; align-items:center; font-size:var(--text-sm); }
.fridge-crumbs { display:flex; flex-wrap:wrap; align-items:center; gap:var(--space-sm); margin-block:var(--space-lg) var(--space-md); font-size:var(--text-xs); color:var(--color-muted); }
.fridge-crumbs a { display:inline-flex; align-items:center; min-height:44px; }
.fridge-hero { display:grid; gap:var(--space-xl); padding-block:var(--space-lg) var(--fridge-section-gap); }
.fridge-hero-copy { display:flex; flex-direction:column; justify-content:center; gap:var(--space-lg); min-width:0; }
.fridge-hero h1 { font-size:clamp(1.58rem, 3.6vw, 3.25rem); line-height:1.05; letter-spacing:-.025em; overflow-wrap:anywhere; }
.fridge-hero h1 span { display:block; color:var(--color-accent); margin-top:.15em; }
.fridge-page p { max-width:65ch; }
.fridge-lead { color:var(--color-muted); font-size:var(--text-md); }
.fridge-actions { display:flex; flex-wrap:wrap; align-items:center; gap:var(--space-sm) var(--space-lg); }
.fridge-page .button { font-size:var(--text-sm); padding:.9rem 1.2rem; min-height:48px; white-space:nowrap; gap:var(--space-sm); max-width:100%; }
.fridge-link { display:inline-flex; align-items:center; gap:var(--space-sm); min-height:44px; font-size:var(--text-sm); }
.fridge-link span { color:var(--color-link-icon); }
.fridge-link:hover { text-decoration:underline; text-underline-offset:.25em; }
.fridge-caption { font-size:var(--text-xs); color:var(--color-muted); line-height:1.6; }
.fridge-hero-media { margin:0; min-width:0; }
.fridge-hero-media img { display:block; width:100%; height:auto; aspect-ratio:4/5; object-fit:cover; border-radius:var(--radius-card); }
.fridge-hero-media figcaption { color:var(--color-muted); font-size:.75rem; margin-top:var(--space-sm); }
.fridge-section { padding-block:var(--fridge-section-gap); border-top:1px solid var(--color-rule); }
.fridge-page h2 { font-size:clamp(1.65rem, 2.8vw, 2.5rem); line-height:1.12; letter-spacing:-.02em; margin-block:var(--space-md) var(--space-lg); }
.fridge-page h3 { font-size:var(--text-md); line-height:1.35; }
.fridge-selection, .fridge-runtime, .fridge-faq, .fridge-delivery, .fridge-help { display:grid; grid-template-columns:minmax(0,1fr); gap:var(--space-xl); }
.fridge-selection p:not(.section-label), .fridge-section-heading>p, .fridge-runtime-copy>p:not(.section-label), .fridge-help p:not(.section-label), .fridge-delivery p:not(.section-label) { color:var(--color-muted); }
.fridge-steps { display:grid; gap:var(--space-lg); }
.fridge-steps article { display:grid; grid-template-columns:2.2rem minmax(0,1fr); gap:var(--space-md); }
.fridge-step-number { color:var(--color-accent); font-size:var(--text-lg); }
.fridge-steps h3 { margin-bottom:var(--space-sm); }
.fridge-section-heading { display:grid; gap:var(--space-sm); margin-bottom:var(--space-xl); }
.fridge-products { display:grid; grid-template-columns:minmax(0,1fr); gap:var(--space-lg); }
.fridge-product { min-width:0; display:flex; flex-direction:column; background:var(--color-paper-2); border-radius:var(--radius-card); overflow:clip; }
.fridge-product-image { display:block; }
.fridge-product-image img { display:block; width:100%; height:auto; aspect-ratio:4/5; object-fit:cover; }
.fridge-product-copy { padding:var(--space-lg); display:flex; flex-direction:column; flex:1; gap:var(--space-md); }
.fridge-product-copy .section-label { font-size:.75rem; letter-spacing:.03em; }
.fridge-product h3 { font-size:clamp(1.1rem, 1.6vw, 1.4rem); }
.fridge-product-copy>p:not(.section-label) { font-size:var(--text-sm); color:var(--color-muted); }
.fridge-product dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-sm); margin: auto 0 0; padding-top:var(--space-lg); }
.fridge-product dt { color:var(--color-muted); font-size:.75rem; }
.fridge-product dd { margin:.25rem 0 0; font-size:var(--text-sm); }
.fridge-price { font-size:var(--text-lg); margin-top:var(--space-sm); }
.fridge-product-actions { display:grid; gap:.25rem; }
.fridge-product-actions .fridge-link { justify-content:center; }
.fridge-under-grid { display:grid; gap:var(--space-md); margin-top:var(--space-lg); }
.fridge-under-grid .fridge-link { justify-self:start; }
.fridge-runtime-copy>p+p { margin-top:var(--space-lg); }
.fridge-calculator { padding:clamp(1rem, 3vw, 2rem); background:var(--color-paper-2); border-radius:var(--radius-card); display:grid; gap:var(--space-md); }
.fridge-calculator label { display:grid; gap:var(--space-sm); font-size:var(--text-xs); min-width:0; }
.fridge-fields { display:grid; gap:var(--space-md); }
.fridge-calculator input,.fridge-calculator select { width:100%; min-width:0; min-height:48px; padding:.75rem; border:1px solid var(--color-rule); border-radius:var(--radius-sm); background:var(--color-paper); color:var(--color-ink); font:inherit; font-size:1rem; }
.fridge-calculator select { font-size:var(--text-sm); text-overflow:ellipsis; }
.fridge-calculator input:focus-visible,.fridge-calculator select:focus-visible { outline:3px solid var(--color-focus); outline-offset:3px; }
.fridge-calculator input[aria-invalid=true] { border-color:var(--color-error); }
.fridge-calc-error { min-height:1.5em; color:var(--color-error); font-size:var(--text-xs); }
.fridge-result { border-top:1px solid var(--color-rule); padding-top:var(--space-lg); margin-top:var(--space-sm); }
.fridge-result>p { color:var(--color-muted); font-size:var(--text-xs); }
.fridge-result output { display:block; margin-block:var(--space-xs); color:var(--color-accent); font-size:clamp(2.2rem,5vw,3.5rem); line-height:1.1; font-variant-numeric:tabular-nums; }
.fridge-result[data-stale=true] output { color:var(--color-muted); }
.fridge-formula { font-size:var(--text-xs); }
.fridge-formula summary { min-height:44px; padding-block:.7rem; cursor:pointer; }
.fridge-formula p { color:var(--color-muted); margin-top:var(--space-xs); }
.fridge-help { padding:clamp(1.25rem,4vw,3rem); border:0; border-radius:var(--radius-card); background:var(--color-paper-2); margin-block:var(--space-lg) var(--fridge-section-gap); }
.fridge-help>div:last-child { display:flex; flex-direction:column; justify-content:center; align-items:flex-start; gap:var(--space-md); }
.fridge-faq details { border-bottom:1px solid var(--color-rule); }
.fridge-faq summary { position:relative; min-height:48px; padding:var(--space-lg) 2rem var(--space-lg) 0; cursor:pointer; font-size:var(--text-md); list-style:none; }
.fridge-faq summary::-webkit-details-marker { display:none; }
.fridge-faq summary::after { content:'+'; position:absolute; right:0; top:var(--space-lg); color:var(--color-accent); }
.fridge-faq details[open] summary::after { content:'−'; }
.fridge-faq details p { color:var(--color-muted); padding-bottom:var(--space-lg); font-size:var(--text-sm); }
.fridge-source { margin-top:var(--space-lg); }
.fridge-source a { text-decoration:underline; text-underline-offset:.25em; }
.fridge-city-links { display:flex; flex-wrap:wrap; column-gap:var(--space-lg); margin-top:var(--space-md); }
.fridge-city-links a { display:flex; align-items:center; min-height:44px; font-size:var(--text-sm); text-decoration:underline; text-underline-offset:.25em; }
.fridge-delivery aside { padding:var(--space-lg) 0; align-self:start; }
.fridge-delivery aside p { margin-top:var(--space-md); font-size:var(--text-sm); }
.fridge-delivery aside a { display:flex; margin-top:var(--space-sm); }
.fridge-footer { flex-wrap:wrap; }
.fridge-footer a { min-height:44px; display:flex; align-items:center; }
.fridge-page .lead-dialog h2 { font-size:clamp(1.35rem,4vw,2rem); }
@media (min-width:40rem) {
  .fridge-header nav { display:flex; }
  .fridge-fields { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .fridge-hero-media { max-width:32rem; justify-self:center; }
  .fridge-products { grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--space-md); }
  .fridge-product-copy { padding:var(--space-md); }
  .fridge-product-copy .button { padding-inline:.5rem; font-size:var(--text-xs); }
}
@media (min-width:60rem) {
  .fridge-hero { grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); gap:var(--space-2xl); align-items:center; }
  .fridge-hero-media { width:100%; max-width:30rem; justify-self:end; }
  .fridge-selection,.fridge-runtime,.fridge-faq { grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); gap:var(--space-3xl); }
  .fridge-section-heading,.fridge-help,.fridge-delivery { grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); gap:var(--space-2xl); align-items:center; }
  .fridge-section-heading>p { justify-self:end; max-width:44ch; }
  .fridge-products { gap:var(--space-lg); }
  .fridge-product-copy { padding:var(--space-lg); }
  .fridge-under-grid { grid-template-columns:minmax(0,1fr) auto; align-items:center; }
  .fridge-help>div:last-child { align-items:center; }
}
@media (hover:hover) {
  .fridge-product h3 a:hover,.fridge-header nav a:hover { color:var(--color-accent); }
  .fridge-calculator input:hover { background:var(--color-paper-3); }
}
@media (prefers-reduced-motion:reduce) {
  html:has(.fridge-page) { scroll-behavior:auto; }
  .fridge-page *, .fridge-page *::before, .fridge-page *::after { animation:none!important; transition:none!important; }
}
