/* Storage is selected by energy first. Power remains explicit per cabinet. */
.chapter .energy-unit { text-transform:none; }
.hero-specs { align-items:center; gap:38px; }
.hero-specs .hero-capacity { gap:12px; }
.hero-specs .hero-capacity strong { color:#31b845; font-size:58px; line-height:1.05; }
.hero-specs .hero-capacity>span { font-size:18px; }
.hero-specs .hero-rated-power { gap:9px; }
.hero-specs .hero-rated-power strong { color:#4f5852; font-size:32px; text-shadow:none; }
.hero-specs .hero-rated-power>span { color:#758078; font-size:13px; }
.hero-specs small { font-size:10px; }
.model-selector button { flex-direction:column; align-items:flex-start; gap:4px; }
.model-selector button>span { font-size:25px; }
.model-selector button small { font-size:11px; }
.model-selector button b { font-size:12px; line-height:1.5; color:#69746d; }
.range-name { font-size:38px; line-height:1.2; }
.range-name small { font-size:15px; letter-spacing:0; }
.range-power { margin-top:11px; font-size:19px; line-height:1.4; color:#657068; letter-spacing:-.015em; }
.range-power>span { font-size:12px; letter-spacing:0; }
.range-cooling { margin-top:4px; }
.spec-model strong { font-size:25px; }
.spec-model strong small { font-size:12px; }
.spec-model>span { font-size:12px; color:#69776e; }
.datasheet-entry h3 { font-size:24px; color:#2b332e; }
.datasheet-entry h3>small { font-size:13px; font-weight:400; }
.datasheet-entry h3>span { font-size:14px; margin-left:3px; }
.contact-inner { grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:clamp(40px,6vw,110px); }
.contact-inner h2 { white-space:nowrap; font-size:clamp(28px,2.9vw,44px); letter-spacing:-.035em; line-height:1.2; }
@media(max-width:1100px) {
 .hero-specs { gap:30px; }
 .hero-specs .hero-capacity strong { font-size:50px; }
 .hero-specs .hero-rated-power strong { font-size:29px; }
 .range-name { font-size:34px; }
 .contact-inner h2 { font-size:clamp(25px,2.9vw,32px); }
}
@media(max-width:650px) {
 .hero-specs { gap:30px; }
 .hero-specs .hero-capacity strong { font-size:49px; }
 .hero-specs .hero-capacity>span { font-size:16px; }
 .hero-specs .hero-rated-power strong { font-size:27px; }
 .hero-specs .hero-rated-power>span { font-size:12px; }
 .model-selector { gap:14px; }
 .model-selector button>span { font-size:23px; }
 .model-selector button small { font-size:10px; }
 .model-selector button b { font-size:11px; }
 .range-name { font-size:36px; }
 .range-power { display:inline-block; font-size:18px; }
 .range-cooling { float:right; margin-top:15px; }
 .spec-model strong { font-size:22px; }
 .spec-model>span { font-size:11px; }
 .datasheet-entry h3 { font-size:25px; }
 .contact-inner h2 { font-size:clamp(21px,6.3vw,30px); letter-spacing:-.035em; }
}
@media(max-width:370px) {
 .hero-specs { gap:22px; }
 .hero-specs .hero-capacity strong { font-size:44px; }
 .hero-specs .hero-rated-power strong { font-size:25px; }
 .model-selector { gap:10px; }
 .model-selector button>span { font-size:21px; }
 .model-selector button b { font-size:11px; }
}

/* A lightly tinted glass material for the four platform icons. */
.feature-icon {
 position:relative;
 isolation:isolate;
 overflow:hidden;
 width:66px;
 height:66px;
 flex-basis:66px;
 color:#3c6250;
 border:1px solid #ffffffed;
 background:linear-gradient(135deg,#ffffff9e 0%,#ffffff33 43%,#dcece24d 100%);
 -webkit-backdrop-filter:blur(16px) saturate(1.12);
 backdrop-filter:blur(16px) saturate(1.12);
 box-shadow:0 0 0 1px #b9cbc16b,0 5px 14px #3b5c4520,inset 1px 1px 1px #fff,inset -1px -1px 1px #a7bdb35c;
 transition:transform .35s var(--ease),box-shadow .35s ease,border-color .35s ease;
}
.feature-icon::before {
 content:"";
 position:absolute;
 z-index:0;
 inset:1px;
 pointer-events:none;
 border-radius:inherit;
 background:linear-gradient(135deg,#ffffffb3 0%,#ffffff1f 35%,transparent 58%,#ffffff63 100%);
 box-shadow:inset 0 1px 0 #ffffffed,inset 0 -1px 0 #ffffff80;
}
.feature-icon::after {
 content:"";
 position:absolute;
 z-index:0;
 inset:-25%;
 pointer-events:none;
 background:linear-gradient(125deg,transparent 25%,#ffffff75 37%,#ffffff0a 48%,transparent 61%);
 opacity:.65;
}
.feature-icon svg {
 position:relative;
 z-index:1;
 color:#3c6250;
 filter:drop-shadow(0 1px 0 #ffffffb3);
}
.feature-item.is-seen .feature-icon { animation-fill-mode:backwards; }
.feature-item:hover .feature-icon {
 transform:translateY(-2px);
 border-color:#fff;
 box-shadow:0 0 0 1px #a8c5b675,0 8px 18px #3b5c4524,inset 1px 1px 1px #fff,inset -1px -1px 1px #a7bdb36b;
}
@media(max-width:1190px) {
 .feature-icon { width:58px; height:58px; flex-basis:58px; }
 .feature-icon svg { width:32px; height:32px; }
}
.motion-paused .feature-icon { animation:none!important; transition:none; }
.motion-paused .feature-item:hover .feature-icon { transform:none; }
@media(prefers-reduced-motion:reduce) {
 .feature-icon { animation:none!important; transition:none; }
 .feature-item:hover .feature-icon { transform:none; }
}
