/* V2.1: hero and extensible cases. */
.hero{background:#f4f3ed}
.hero__layout{padding-block:42px 32px;grid-template-columns:1fr 1fr;gap:30px 44px}
.hero__copy{padding:32px 0;background:none;border:0;border-radius:0;box-shadow:none;align-self:center}
.hero .eyebrow{font-size:11px;letter-spacing:.1em;color:#58665c}
.hero h1{font-size:clamp(48px,4.9vw,70px);line-height:1.035;letter-spacing:-.055em;color:#1d3029;max-width:620px}
.hero h1 em{display:block;color:#38634e}
.hero__lead{font-size:18px;line-height:1.6;margin-top:26px;max-width:480px;color:#515f54}
.hero__actions{margin-top:28px;gap:22px}
.hero__actions .button{min-height:58px;padding:16px 25px;font-size:16px;border-radius:12px}
.hero__secondary{font-size:13px}
.hero__facts{margin-top:26px;gap:20px;color:#56665a;font-size:12px}
.hero-photo{min-height:490px;border-radius:24px 80px 24px 24px;background:#24302c;box-shadow:none}
.hero-photo>img{object-position:83% center}
.hero-photo:after{inset:70% 0 0;background:linear-gradient(transparent,#12201de6)}
.hero-photo figcaption{left:24px;right:20px;bottom:22px;gap:4px}
.hero-photo figcaption>span{font-size:16px;font-weight:600;color:#fff}
.hero-photo figcaption>small{font-size:10px;color:#eee}
.hero-panel{border-top:1px solid #d7dcd3;padding-top:22px}
.hero-panel__top h2{font-size:18px}
.appliance{min-height:94px;border-radius:14px;background:#fffdf8;box-shadow:none}
.appliance>svg{width:27px;height:27px}
.appliance>span:not(.appliance__arrow){font-size:14px}
.hero-panel__top>span{font-size:12px}
.case-card__body>.case-card__cta{margin-top:auto}
.case-card__photo--pending{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#f1f3ee;border:1px dashed #c3cec1}
.case-card__photo--pending>svg{width:60px;height:60px;color:#809283}
.case-card__photo--pending>p{font-size:13px;color:#58685e;margin:0}
.case-more{background:#f6f8f4}
.case-more__content{padding:0 16px 18px}
.case-more[open] .case-card{animation:none}
.case-more[open] .case-more__plus{transform:none}
.case-more[open] .case-more__plus{font-size:0}
.case-more[open] .case-more__plus:after{content:'−';font-size:20px}
.case-more__content .case-grid>.case-card:last-child{display:flex;grid-column:auto;gap:0}
.case-more__content .case-grid>.case-card:last-child .case-card__photo{aspect-ratio:4/3;min-height:0}
.case-more__content .case-grid>.case-card:last-child .case-card__photo>img{position:static}
@media(max-width:1100px){.hero__layout{gap:28px}.hero h1{font-size:52px}.hero__lead{font-size:16px}.hero-photo{min-height:450px}.hero__secondary{font-size:12px}}
@media(max-width:800px){.hero__layout{grid-template-columns:1fr 1fr;padding-block:28px}.hero__copy{grid-column:1/-1;padding:0}.hero h1{font-size:60px;max-width:680px}.hero h1 br{display:none}.hero h1 em{display:inline}.hero-photo{grid-row:2;grid-column:1/-1;min-height:320px;max-height:none;border-radius:22px 60px 22px 22px}.hero-photo>img{object-position:center 57%}.hero-panel{grid-row:3}.hero__lead{font-size:17px;max-width:570px}.hero__facts{margin-top:18px}.hero__actions{margin-top:20px}}
@media(max-width:560px){.hero__layout{gap:20px;padding-block:24px}.hero__copy{order:0}.hero .eyebrow{font-size:9px;margin-bottom:14px}.hero h1{font-size:41px;line-height:1.06;letter-spacing:-.05em}.hero h1 em{display:block}.hero__lead{font-size:14px;margin-top:16px;line-height:1.6}.hero__lead br{display:none}.hero__actions{margin-top:19px}.hero__actions .button{min-height:50px;padding:13px 22px;font-size:15px}.hero__facts{display:none}.hero-photo{order:1;min-height:220px;border-radius:18px 48px 18px 18px}.hero-photo>img{object-position:83% 58%}.hero-photo figcaption{left:16px;bottom:14px;right:12px}.hero-photo figcaption>span{font-size:14px}.hero-photo figcaption>small{font-size:9px;line-height:1.4}.hero-panel{order:2;padding-top:18px}.hero-panel__top h2{font-size:18px}.appliance-grid{gap:8px}.appliance{min-height:92px;gap:8px;padding:12px}.appliance>svg{width:25px;height:25px}.case-more__content{padding:0 8px 10px}.case-more__content .case-grid{gap:16px}}
@media(max-width:380px){.hero h1{font-size:39px}}
@media(prefers-reduced-motion:reduce){.case-more__content{animation:none!important}.hero-photo{animation:none!important}}
