/* Seasonal choices — existing brand typography, teal, navy and orange. */
.summer-section{background:var(--bg);padding:84px 0 76px}
.summer-heading{max-width:700px;margin-bottom:36px}
.summer-heading h2{margin:14px 0 18px;font-size:clamp(2.2rem,4vw,3.5rem);line-height:1.05;letter-spacing:-.045em}
.summer-heading h2 span{color:var(--cool-ink)}
.summer-heading p{color:var(--muted);font-size:1.05rem;line-height:1.6}
.summer-heading strong{color:var(--fg);font-weight:600}
.summer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.summer-card{display:flex;flex-direction:column;position:relative;padding:26px;border:1px solid var(--line);border-radius:24px;background:var(--surface);color:var(--fg);transition:transform .2s ease,box-shadow .2s ease}
.summer-card:hover{box-shadow:0 16px 36px -25px rgba(11,37,48,.28)}
.summer-topline{min-height:54px;display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.summer-topline .eyebrow{font-size:.66rem;letter-spacing:.055em;padding-top:8px}
.summer-card h3{font-family:var(--display);font-size:2rem;line-height:1.1;letter-spacing:-.035em;margin:0 0 12px}
.summer-description{min-height:46px;margin:0;color:var(--muted);font-size:.93rem;line-height:1.5;max-width:260px}
.summer-price{margin:26px 0 16px}
.summer-price>span{font-size:.8rem;color:var(--muted)}
.summer-price>div{display:flex;flex-direction:column;gap:4px;margin-top:4px}
.summer-price b{font-family:var(--display);font-size:3.2rem;font-weight:600;letter-spacing:-.065em;line-height:1.1}
.summer-price>div>span{font-size:.82rem;color:var(--muted)}
.summer-benefit{min-height:44px;padding-bottom:16px;border-bottom:1px solid var(--line);font-size:.82rem;font-weight:600;color:var(--cool-ink);line-height:1.5}
.summer-card ul{list-style:none;padding:0;margin:22px 0 28px;display:grid;gap:14px;flex:1;align-content:start}
.summer-card li{display:flex;align-items:flex-start;gap:10px;font-size:.88rem;line-height:1.45}
.summer-card li svg{width:18px;height:18px;flex-shrink:0;margin-top:1px;fill:none;stroke:var(--cool-ink);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.summer-card .btn{width:100%;justify-content:space-between;min-height:48px;margin-top:auto;font-size:.9rem}
.summer-3{background:var(--cool-soft);border-color:color-mix(in srgb,var(--cool) 24%,var(--line))}
.summer-install{font-weight:700}
.summer-5{background:var(--fg);border-color:var(--fg);color:#fff}
.summer-5 .eyebrow,.summer-5 .summer-price>span,.summer-5 .summer-price>div>span,.summer-5 .summer-description{color:#bcced3}
.summer-5 .summer-benefit{color:#8ee0d6;border-color:#35505a}
.summer-5 li svg{stroke:#7dd4c9}
.summer-5 .summer-install svg{stroke:var(--heat)}
.summer-5 .btn-main{background:#fff;color:var(--fg);border-color:#fff}
.summer-5 .btn-main:hover{background:var(--cool-soft);border-color:var(--cool-soft)}
.summer-gift{background:var(--heat);color:var(--fg);border-radius:999px;padding:7px 9px;font-size:.65rem;font-weight:700;white-space:nowrap}
.summer-fine{max-width:1000px;margin:20px 0 0;color:var(--muted);font-size:.73rem;line-height:1.6}
.prod:not(.wide) .price .pm{min-height:36px}
.prod:not(.wide) .price .ps,.prod:not(.wide) .price .pn{min-height:3.2em}
.prod .sale-only{position:absolute;right:16px;bottom:12px;background:var(--heat-soft);color:var(--heat-ink);padding:5px 8px;border-radius:999px;font-size:.68rem;font-weight:700}
.installation-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 22px;padding:12px 8px 0;font-size:.72rem;color:var(--muted)}
.installation-legend span{display:flex;align-items:center;gap:7px}
.legend-air{width:22px;border-top:2px dashed var(--cool)}
.legend-unit{width:12px;height:12px;border-radius:3px;background:var(--fg)}
.installation-air{stroke-dasharray:4 7;animation:installationFlow 8s linear infinite}
@keyframes installationFlow{to{stroke-dashoffset:-44}}
@media(min-width:761px) and (max-width:1100px){.summer-card{padding:22px 18px}.summer-topline{min-height:68px;flex-wrap:wrap}.summer-price b{font-size:2.9rem}}
@media(max-width:760px){.summer-section{padding:54px 0}.summer-heading{margin-bottom:26px}.summer-grid{grid-template-columns:1fr;gap:16px}.summer-card{padding:24px}.summer-topline{min-height:42px}.summer-description{min-height:0;max-width:none}.summer-price{margin-top:22px}.summer-benefit{min-height:0}.summer-card ul{margin:20px 0 24px}.summer-price b{font-size:3rem}.prod:not(.wide) .price .ps,.prod:not(.wide) .price .pn{min-height:0}.summer-fine{font-size:.72rem}}
@media(prefers-reduced-motion:reduce){.installation-air{animation:none}.summer-card{transition:none}.summer-card:hover{transform:none}}

/* Pricing cards stay still; every hero uses the same warm/cool title roles. */
.summer-card,.summer-card .btn{transition:background .2s,color .2s,border-color .2s}
.summer-card:hover,.summer-card .btn:hover{transform:none;box-shadow:none}
.summer-price>div{flex-direction:row;align-items:center;flex-wrap:wrap;gap:6px 12px}
.summer-price>div>span{max-width:96px;line-height:1.5}
.summer-compromise{background:var(--heat-soft);color:var(--heat-ink)}
.quote-intro h1 .hot{color:var(--heat-ink)}
.quote-intro h1 .cold{color:var(--cool-ink)}

.summer-price>div>span{font-size:.78rem;white-space:nowrap;max-width:none}

/* The tax caption shares the price baseline, including narrow mobile cards. */
.summer-price>div{align-items:baseline;flex-wrap:nowrap}
@media(max-width:360px){.summer-price b{font-size:2.5rem}.summer-price>div{gap:8px}}
/* One desktop screen: compact spacing, unchanged offers and readable controls. */
@media(min-width:761px){
.summer-section{padding:28px 0 24px}
.summer-heading{max-width:none;display:grid;grid-template-columns:1fr auto;align-items:end;gap:6px 28px;margin-bottom:20px}
.summer-heading>.eyebrow{grid-column:1/-1}
.summer-heading h2{font-size:clamp(1.7rem,2.6vw,2.2rem);line-height:1.08;letter-spacing:-.035em;margin:0}
.summer-heading p{font-size:.9rem;line-height:1.5;margin:0 0 3px}
.summer-grid{gap:16px}
.summer-card{padding:20px;border-radius:20px}
.summer-topline{min-height:30px;flex-wrap:nowrap}
.summer-topline .eyebrow{font-size:.6rem;padding-top:6px}
.summer-gift{padding:5px 8px;font-size:.61rem}
.summer-card h3{font-size:1.65rem;margin-bottom:7px}
.summer-description{min-height:38px;font-size:.86rem;line-height:1.4;max-width:none}
.summer-price{margin:12px 0 10px}
.summer-price b{font-size:2.6rem;letter-spacing:-.045em}
.summer-benefit{min-height:30px;padding-bottom:10px;font-size:.77rem;line-height:1.4}
.summer-card ul{margin:14px 0 18px;gap:9px}
.summer-card li{font-size:.82rem;line-height:1.4;gap:8px}
.summer-card li svg{width:16px;height:16px}
.summer-card .btn{min-height:44px;padding-block:10px;font-size:.84rem}
.summer-fine{max-width:none;font-size:.68rem;line-height:1.5;margin-top:12px}
}
@media(min-width:761px) and (max-width:1000px){.summer-topline .eyebrow{display:none}.summer-topline{justify-content:flex-end}.summer-heading p{font-size:.8rem}.summer-card{padding:16px}}
@media(min-width:761px) and (max-height:780px){
.summer-section{padding:20px 0}
.summer-heading{margin-bottom:14px}.summer-heading h2{font-size:1.8rem}
.summer-card{padding:16px}.summer-topline{min-height:26px}
.summer-card h3{font-size:1.5rem}.summer-description{min-height:32px}
.summer-price{margin:10px 0 8px}.summer-price b{font-size:2.35rem}
.summer-benefit{min-height:28px}.summer-card ul{gap:7px;margin:10px 0 14px}
.summer-card .btn{min-height:42px}.summer-fine{margin-top:10px}
}
