/* Shared seasonal cards: deliberately scoped to avoid changing existing pages. */
.season-benefits { padding: clamp(48px, 6vw, 88px) 0; background: var(--color-surface, #fff); }
.season-benefits h2 { margin: 0 auto clamp(28px, 4vw, 48px); color: var(--color-primary, #173b2c); text-align: center; font-family: var(--font-heading); font-size: clamp(2rem, 3.6vw, 3.5rem); font-weight: 800; line-height: 1.15; letter-spacing: -.025em; }
.season-benefits h2 mark { display: inline-block; padding: .03em .2em .08em; border-radius: 3px; color: var(--color-primary, #173b2c); background: #c3e2af; }
.season-benefits__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(20px, 2.2vw, 32px); }
.season-benefits__card { min-width: 0; display: grid; grid-template-rows: subgrid; grid-row: span 3; gap: 22px; padding: clamp(18px, 1.65vw, 26px); border: 1px solid #496f50; border-radius: 12px; background: #fff; box-shadow: 5px 6px 0 var(--color-primary, #173b2c); }
.season-benefits__intro h3 { margin: 0 0 18px; color: var(--color-primary, #173b2c); font-family: var(--font-heading); font-weight: 800; }
.season-benefits__intro h3 strong { display: block; margin-bottom: 12px; font-size: clamp(2.5rem, 3.7vw, 3.6rem); line-height: 1; letter-spacing: -.025em; }
.season-benefits__intro h3 span { display: block; font-size: clamp(1.1rem, 1.6vw, 1.5rem); line-height: 1.16; }
.season-benefits__intro > p { margin: 0; color: var(--color-text, #38443e); font-size: 1rem; line-height: 1.5; }
.season-benefits__media { width: 100%; aspect-ratio: 1; margin: 0; overflow: hidden; border-radius: 9px; background: #edf1ec; }
.season-benefits__media img, .season-benefits__media video { display: block; width: 100%; height: 100%; object-fit: cover; }
.season-benefits__media img { object-position: center 69%; }
.season-benefits__snow img { object-fit: contain; object-position: center; background: #dce5ef; }
.season-benefits__label { margin: 0 0 16px; color: #586459; font-size: .78rem; font-weight: 650; letter-spacing: .09em; }
.season-benefits__details ul { display: grid; gap: 13px; margin: 0; padding: 0; list-style: none; }
.season-benefits__details li { display: flex; align-items: center; gap: 12px; font-size: .95rem; line-height: 1.4; }
.season-benefits__icon { display: grid; place-items: center; flex: 0 0 36px; width: 36px; height: 36px; color: #397d42; background: #edf5e8; border-radius: 4px; }
.season-benefits__icon svg { width: 25px; height: 25px; }
.season-benefits__note { max-width: 1080px; margin: 26px auto 0; color: #586459; font-size: .78rem; line-height: 1.55; text-align: center; }
@supports not (grid-template-rows: subgrid) { .season-benefits__card { display: flex; flex-direction: column; }.season-benefits__intro { min-height: 240px; } }
@media (max-width: 767px) {
 .season-benefits__grid { grid-template-columns: 1fr; gap: 26px; max-width: 520px; margin-inline: auto; }
 .season-benefits__card { display: flex; flex-direction: column; gap: 20px; padding: 22px; }
 .season-benefits__intro { min-height: 0; }
 .season-benefits__intro h3 strong { font-size: 3rem; }
 .season-benefits__intro h3 span { font-size: 1.35rem; }
 .season-benefits__note { text-align: left; }
}
.season-benefits { scroll-margin-top: 140px; }

/* Compact desktop composition: header, cards and note within a laptop viewport. */
@media (min-width: 768px) {
 .season-benefits { padding-block: 16px; }
 .season-benefits > .season-frame { max-width: 1120px; }
 .season-benefits h2 { font-size: clamp(1.9rem, 2.6vw, 2.5rem); margin-bottom: 20px; }
 .season-benefits__grid { gap: 22px; }
 .season-benefits__card { padding: 16px; gap: 14px; }
 .season-benefits__intro h3 { margin-bottom: 10px; }
 .season-benefits__intro h3 strong { font-size: 2.55rem; margin-bottom: 8px; }
 .season-benefits__intro h3 span { font-size: 1.1rem; }
 .season-benefits__intro > p { font-size: .93rem; line-height: 1.4; }
 .season-benefits__media { height: clamp(160px, calc(100svh - 640px), 280px); aspect-ratio: auto; }
 .season-benefits__film video { object-fit: contain; background: #e9eee8; }
 .season-benefits__label { margin-bottom: 10px; font-size: .7rem; }
 .season-benefits__details ul { gap: 8px; }
 .season-benefits__details li { gap: 9px; font-size: .875rem; line-height: 1.3; }
 .season-benefits__icon { flex-basis: 28px; width: 28px; height: 28px; }
 .season-benefits__icon svg { width: 21px; height: 21px; }
 .season-benefits__note { max-width: 1040px; margin-top: 16px; font-size: .72rem; line-height: 1.4; }
}

/* Enlarge the impact clip inside its existing frame to crop the lower watermark. */
.season-benefits__film video { transform: scale(1.16); transform-origin: center top; }
