/* Native disclosures keep the value story usable without scripts. */
.capacity-section { padding-block:64px 48px; color:#112b3c; }
.capacity-heading { max-width:700px; margin-bottom:32px; }
.capacity-heading h2,.capacity-feedback h2 { font-size:clamp(32px,4vw,54px); line-height:1.08; letter-spacing:-.04em; margin:0 0 20px; }
.capacity-heading p { max-width:560px; color:#425c67; font-size:18px; line-height:1.65; }
.capacity-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; align-items:start; }
.capacity-card { background:#e3f3ec; border:1px solid #b7d7ca; border-radius:24px; overflow:hidden; transition:transform .3s,box-shadow .3s; }
.capacity-card:nth-child(2) { background:#fff0df; border-color:#e4cbb0; }
.capacity-card:nth-child(3) { background:#e8effa; border-color:#c1d0e6; }
.capacity-card:nth-child(4) { background:#f6e8ee; border-color:#dfc3cf; }
.capacity-card summary { padding:26px 22px 20px; cursor:pointer; list-style:none; min-height:320px; display:flex; flex-direction:column; }
.capacity-card summary::-webkit-details-marker { display:none; }
body .capacity-card summary:focus-visible { outline:3px solid #08746d; outline-offset:-6px; border-radius:23px; box-shadow:none; }
.capacity-icon { display:grid; place-items:center; width:48px; height:48px; font-size:30px; border-radius:16px; background:#ffffffa6; margin-bottom:28px; }
.capacity-number { font-size:10px; font-weight:750; letter-spacing:.08em; margin-bottom:12px; }
.capacity-card strong { font-size:25px; line-height:1.12; letter-spacing:-.025em; }
.capacity-teaser { margin-block:14px 24px; font-size:15px; line-height:1.5; }
.capacity-expand { display:flex; justify-content:space-between; align-items:center; gap:8px; margin-top:auto; font-size:13px; font-weight:700; }
.capacity-expand b { font-size:24px; transition:transform .3s; }
.capacity-card[open] .capacity-expand b { transform:rotate(45deg); }
.capacity-card p { margin:0; padding:0 22px 26px; line-height:1.7; font-size:15px; }
.capacity-card[open] p { animation:capacity-unfold .45s ease-out both; }
.capacity-feedback { margin-top:32px; padding:40px; border-radius:26px; background:#112b3c; color:#fff; display:grid; grid-template-columns:1fr 1.25fr; gap:48px; }
.capacity-feedback .section-eyebrow { color:#a6dec8; }
.capacity-feedback h2 { font-size:clamp(30px,3vw,42px); color:#fff; }
.feedback-story { margin:0 0 18px; font-size:clamp(19px,2vw,24px); line-height:1.5; }
.capacity-feedback .feedback-note { font-size:12px; line-height:1.6; color:#c7d8df; margin-bottom:24px; }
.capacity-feedback .text-link { color:#b4f0d6; }
.capacity-story { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:12px; text-align:center; padding-block:20px; color:#294652; }
.capacity-story strong { color:#08746d; }
.capacity-story small { flex-basis:100%; font-size:12px; }
@keyframes capacity-unfold { from { translate:0 12px; } to { translate:0 0; } }
@media (hover:hover) and (prefers-reduced-motion:no-preference) { html:not(.reduce-motion) .capacity-card:hover { transform:translateY(-6px); box-shadow:0 18px 32px #112b3c12; } html:not(.reduce-motion) .capacity-card:hover .capacity-icon { animation:capacity-unfold .5s ease-out; } }
@media(max-width:1000px) { .capacity-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .capacity-card summary { min-height:290px; } }
@media(max-width:600px) { .capacity-section { padding-block:36px; } .capacity-grid { grid-template-columns:1fr; } .capacity-card summary { min-height:0; padding:22px; } .capacity-icon { margin-bottom:16px; } .capacity-feedback { grid-template-columns:1fr; gap:16px; padding:28px 24px; } }
@media(prefers-reduced-motion:reduce) { .capacity-card,.capacity-card * { animation:none!important; transition:none!important; transform:none!important; } }
html.reduce-motion .capacity-card,html.reduce-motion .capacity-card * { animation:none!important; transition:none!important; transform:none!important; }
