/* PAN-AS-YOU-GO: scoped promotion and program details. */
.hero .program-hero h1{font-size:clamp(30px,3.25vw,48px);line-height:1.12;letter-spacing:-.045em;margin-bottom:26px}
.program-benefits{list-style:none;margin:0 0 22px;padding:0;display:grid;gap:12px;font-size:clamp(13px,1.15vw,16px);font-weight:600}
.program-benefits li{position:relative;padding-left:25px}
.program-benefits li::before{content:'✓';position:absolute;left:0;color:#92adff;font-weight:800}
.program-benefits strong{color:#a9c0ff;font-weight:800}
.program-hero-terms{max-width:440px;font-size:12px;line-height:1.8;color:#b7c2d6;margin-bottom:0}
.program-hero .hero-footnote{margin-top:28px}
.program-section{background:#f0f3fa;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.program-inner{display:grid;grid-template-columns:1fr 1.08fr;gap:80px;align-items:start}
.program-intro h2{font-size:clamp(30px,3vw,43px);line-height:1.15;margin-bottom:24px}
.program-intro h2 span{color:var(--blue)}
.program-intro>p:not(.eyebrow){font-size:15px;line-height:1.85;max-width:460px}
.program-intro .button{margin-top:12px}
.program-steps{list-style:none;padding:0;margin:0}
.program-steps li{display:flex;gap:24px;padding:24px 0;border-bottom:1px solid #d3dbea}
.program-steps li:first-child{padding-top:0}
.program-step-number{flex-shrink:0;color:var(--blue);font-size:12px;font-weight:800;line-height:1.8}
.program-steps h3{font-size:19px;line-height:1.3;margin-bottom:10px}
.program-steps p{font-size:14px;line-height:1.85;margin-bottom:0}
.program-note{font-size:12px;line-height:1.8;margin:20px 0 0}
@media(min-width:801px) and (max-width:1100px){.site-header nav{gap:16px;font-size:11px}.header-inner{gap:20px}.brand img{width:190px}}
@media(max-width:800px){.program-inner{gap:35px}.hero .program-hero h1{font-size:clamp(27px,3.9vw,36px)}.program-benefits{font-size:12px}.program-inner{grid-template-columns:1fr}.program-intro>p:not(.eyebrow){max-width:620px}.program-steps{margin-top:5px}}
@media(max-width:560px){.hero .program-hero h1{font-size:clamp(27px,7.8vw,42px)}.program-benefits{font-size:13px;gap:13px}.program-hero-terms{font-size:12px}.program-hero .actions{flex-wrap:wrap}.program-intro h2{font-size:33px}.program-intro>p:not(.eyebrow){font-size:14px}.program-steps li{gap:18px}.program-steps h3{font-size:18px}}

/* Keep the program action above the full-card Explore hit area. */
.equipment-card .card-actions{flex-wrap:wrap}
.program-card-link{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;flex:0 0 100%;min-height:44px;padding:11px 16px;border:1px solid transparent;border-radius:6px;background:var(--blue);color:#fff;font-size:12px;font-weight:800;text-align:center}
.program-card-link:hover{background:#2348e4}
.is-carousel .equipment-card .program-card-link{flex-basis:auto;min-width:160px;border-radius:24px;background:#335cff;color:#fff}
.is-carousel .equipment-card .card-actions{display:grid;grid-template-columns:auto auto}
.is-carousel .equipment-card .program-card-link{grid-column:1 / -1;justify-self:center}
#dialog-content .card-actions{flex-wrap:wrap;gap:10px}
#dialog-content .program-card-link{width:100%}

/* Minimum usage calculator, separate from equipment detail dialogs. */
.usage-calculator-link{color:var(--blue);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.usage-calculator-link:hover{color:#2348e4}
#minimum-usage-calculator{max-width:540px;padding:36px;background:#fff}
#minimum-usage-calculator .eyebrow{margin:0 45px 12px 0}
#usage-calculator-title{font-size:28px;line-height:1.2;letter-spacing:-.035em;margin:0 24px 26px 0}
#usage-calculator-form{display:grid;gap:14px}
#usage-calculator-form label{font-size:14px;font-weight:700}
#equipment-value{width:100%;min-height:50px;padding:12px 14px;border:1px solid #aebbd0;border-radius:6px;font:inherit;font-size:16px;color:var(--ink);background:#fff}
#usage-calculator-form .button{justify-content:center;font-size:14px;min-height:48px}
#usage-calculator-result{margin-top:24px;padding:20px;background:#f0f3fa;border:1px solid var(--line);border-radius:8px;overflow-wrap:anywhere}
#usage-calculator-result p{font-size:14px;line-height:1.8;margin:0}
#usage-calculator-result p+p{margin-top:12px}
#usage-calculator-commitment{font-weight:700;color:var(--ink)}
@media(max-width:560px){#minimum-usage-calculator{padding:30px 22px}#usage-calculator-title{font-size:25px}#usage-calculator-result{padding:16px}}
