/* PLUS v28 — unified brand message, unobtrusive typographic polish. */
.plus-v27-hero h1{max-width:1180px;font-size:clamp(40px,4.75vw,68px);line-height:1.52;letter-spacing:.055em;font-weight:600}
.plus-v27-hero h1 em{font-weight:600}
.plus-v27-hero .plus-v26-hero-lead{max-width:910px}
.plus-v28-future-panel{display:grid;grid-template-columns:minmax(210px,.55fr) 1fr;gap:clamp(18px,3.5vw,52px);margin-top:26px;padding:25px 32px;border:1px solid #e4e9e1;background:#f6f9f5;border-radius:10px;align-items:center}
.plus-v28-future-panel>img{display:block;width:100%;height:175px;object-fit:cover;object-position:center;background:#eaf1ea;border-radius:8px;filter:contrast(1.12) saturate(.95)}
.plus-v28-future-body h3{font-size:clamp(21px,2vw,27px);line-height:1.5;color:#2b5039;margin:10px 0}
.plus-v28-future-body h3 small{display:inline-block;color:#69795b;background:#e3e9d9;font-size:11px;padding:4px 9px;border-radius:99px;vertical-align:middle;margin-left:8px;font-weight:600;white-space:nowrap}
.plus-v28-future-body p{font-size:13px;line-height:1.98;color:#566658;margin:0}
@media(max-width:900px){.plus-v27-hero h1{font-size:clamp(35px,5vw,48px);letter-spacing:.02em}}
@media(max-width:650px){
 .plus-v27-hero h1{font-size:clamp(25px,6.65vw,38px);line-height:1.68;letter-spacing:0;white-space:nowrap}
 .plus-v27-hero .plus-v26-hero-lead{font-size:11.2px;line-height:1.95}
 .plus-v28-future-panel{grid-template-columns:1fr;padding:20px;gap:13px}
 .plus-v28-future-panel>img{height:130px}
 .plus-v28-future-body h3{font-size:21px}
}
@media(max-width:350px){.plus-v27-hero h1{font-size:24px}}
