/* EcoMach product page: base note, configurator and live summary. Uses site.css / evolution.css tokens. */
.detail-price .eco-base-note{margin-top:12px;font-size:14px;line-height:1.45;color:var(--steel)}

.eco-config{margin-top:clamp(64px,8vw,112px);padding-top:clamp(40px,5vw,64px);border-top:1px solid var(--line);scroll-margin-top:calc(var(--header-h) + 16px)}
.eco-config:focus{outline:none}
.eco-config-head{display:grid;gap:14px;max-width:860px;margin-bottom:clamp(28px,3.5vw,48px)}
.eco-kicker{font-size:14px;font-weight:600;color:var(--blue-ink)}
.eco-config-head h2{font-size:clamp(28px,2.8vw,40px)}
.eco-config-head>p:last-child{font-size:17px;line-height:1.5;color:var(--steel);max-width:62ch}
.eco-config-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(320px,.7fr);gap:clamp(24px,3vw,48px);align-items:start}

.eco-choices{display:grid;gap:16px}
.eco-card{display:grid;gap:20px;padding:clamp(20px,2.4vw,32px);background:#fff;box-shadow:inset 0 0 0 1.5px var(--line);transition:box-shadow .2s ease}
.eco-card.is-active{box-shadow:inset 0 0 0 2px var(--blue)}
.eco-card-head{display:grid;grid-template-columns:22px minmax(0,1fr);gap:16px;align-items:start;cursor:pointer}
.eco-card-head input{appearance:none;-webkit-appearance:none;width:22px;height:22px;margin:4px 0 0;border:1.5px solid var(--line-strong);border-radius:50%;background:#fff;display:grid;place-content:center;cursor:pointer;transition:border-color .15s ease}
.eco-card-head input::before{content:"";width:10px;height:10px;border-radius:50%;background:var(--blue);transform:scale(0);transition:transform .15s ease}
.eco-card-head input:checked{border-color:var(--blue)}
.eco-card-head input:checked::before{transform:scale(1)}
.eco-card-head input:focus-visible,.eco-option input:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
.eco-card-title{display:grid;gap:6px}
.eco-card-title b{font-size:clamp(22px,2vw,28px);font-stretch:112%;font-weight:750;letter-spacing:-.02em;line-height:1.1;color:var(--slate)}
.eco-card-title span{font-size:16px;line-height:1.45;color:var(--steel)}
.eco-card>:not(.eco-card-head){margin-left:38px}

.eco-options{list-style:none;margin:0;padding:0;display:grid}
.eco-line{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:12px 14px;padding:14px 0;border-top:1px solid var(--line)}
.eco-options li:last-child .eco-line{border-bottom:1px solid var(--line)}
.eco-line-base::before{content:"";width:18px;height:18px;background:var(--steel);-webkit-mask:var(--check) center/contain no-repeat;mask:var(--check) center/contain no-repeat}
.eco-option.check-label{display:grid;font-size:inherit}
.eco-option:hover .eco-line-name{color:var(--blue-ink)}
.eco-line-name{font-size:16.5px;font-weight:600;line-height:1.3;color:var(--slate)}
.eco-line-price{display:grid;justify-items:end;gap:2px;text-align:right;font-variant-numeric:tabular-nums lining-nums}
.eco-line-price b{font-size:17px;font-weight:700;color:var(--slate)}
.eco-line-price small{font-size:13px;color:var(--steel)}
.eco-line-price s{text-decoration-thickness:1px}
.eco-offer{font-size:14.5px;line-height:1.5;color:var(--steel);max-width:62ch}

.eco-summary{position:sticky;top:calc(var(--header-h) + 20px);display:grid;gap:16px;padding:clamp(22px,2.4vw,32px);background:var(--quartz);clip-path:polygon(0 0,calc(100% - 28px) 0,100% 28px,100% 100%,0 100%)}
.eco-summary h3{margin-top:-8px;font-size:24px;font-stretch:112%;font-weight:750;letter-spacing:-.02em}
.eco-summary-lines{list-style:none;margin:0;padding:14px 0 0;display:grid;gap:8px;border-top:1px solid var(--line-strong)}
.eco-summary-lines li{display:flex;justify-content:space-between;gap:16px;font-size:15px;line-height:1.35;color:var(--slate)}
.eco-summary-lines b{flex:none;font-weight:650;font-variant-numeric:tabular-nums lining-nums}
.eco-summary-count{display:flex;justify-content:space-between;gap:16px;font-size:14px;color:var(--steel)}
.eco-summary-count b{color:var(--slate);font-variant-numeric:tabular-nums}
.eco-summary-total{display:grid;gap:8px;padding-top:16px;border-top:1px solid var(--line-strong)}
.eco-summary-total>span:first-child{font-size:14px;font-weight:600;color:var(--steel)}
.eco-summary-total>b{font-size:clamp(34px,3vw,42px);font-stretch:112%;font-weight:780;letter-spacing:-.03em;line-height:1;color:var(--slate);font-variant-numeric:tabular-nums lining-nums}
.eco-summary-total .price-meta:empty{display:none}
.eco-summary .financing-estimate{margin:0;padding:14px 0 0;background:none;border-top:1px solid var(--line-strong);font-size:13.5px}
.eco-summary .financing-estimate strong{font-size:22px}
.eco-nudge{display:grid;gap:4px;padding:14px 16px;background:var(--blue-soft);color:var(--blue-ink);font-size:14.5px;font-weight:550;line-height:1.4}
.eco-nudge[hidden]{display:none}
.eco-nudge .text-link{justify-self:start;padding:2px 0;font-size:14.5px;color:var(--blue-ink);text-decoration-color:currentColor}
.eco-summary-actions{display:grid;gap:10px}
.eco-summary-actions .button{width:100%}
.eco-discuss{justify-self:start;font-size:14.5px}

.eco-footprint-figure{margin:clamp(32px,4vw,48px) 0 0;padding:clamp(18px,2.4vw,28px);background:#fff;box-shadow:inset 0 0 0 1.5px var(--line)}
.eco-footprint-figure svg{display:block;width:100%;height:auto;max-width:560px;margin:0 auto}
.eco-footprint-figure figcaption{margin-top:14px;font-size:14px;line-height:1.45;color:var(--steel)}

@media (max-width:1024px){
 .eco-config-grid{grid-template-columns:1fr}
 .eco-summary{position:static}
}
@media (max-width:760px){
 .eco-card{padding:18px}
 .eco-card-head{gap:12px}
 .eco-card>:not(.eco-card-head){margin-left:0}
 .eco-line{gap:10px 12px}
 .eco-line-name{font-size:15.5px}
 .eco-summary{padding:22px 18px}
}
