/* Shared homepage NEWS viewport layout for both company websites.
 * The header scrolls away, so NEWS uses the whole dynamic viewport.
 * Intrinsic text sizes are a safety floor: short windows/zoom may extend the
 * section instead of clipping copy or introducing a nested vertical scrollbar.
 * Keep this file identical in both sites; it owns layout, not section colors.
 */
body[data-page=home] #news{
 min-height:100vh;min-height:100dvh;
 display:grid;grid-template-rows:auto minmax(min-content,1fr);
 padding-block:clamp(24px,5dvh,72px);gap:clamp(16px,3dvh,30px);
}
body[data-page=home] #news .news-heading{margin-bottom:0}
body[data-page=home] #news .news-carousel{display:grid;min-width:0}
body[data-page=home] #news .news-grid{min-width:0;grid-template-rows:repeat(2,minmax(min-content,1fr));gap:clamp(12px,2dvh,22px)}
body[data-page=home] #news .news-card{min-height:min-content}
body[data-page=home] #news .news-card-image{flex:1 1 0;aspect-ratio:auto;min-height:clamp(72px,12dvh,180px)}
body[data-page=home] #news .news-card-copy{flex:0 0 auto;padding:clamp(12px,2dvh,22px)}
body[data-page=home] #news .news-card h3{margin:10px 0 14px;font-size:clamp(16px,2dvh,20px);line-height:1.45}
body[data-page=home] #news .news-featured h3{font-size:clamp(22px,3.1dvh,36px);line-height:1.35}
body[data-page=home] #news .news-card-excerpt{font-size:clamp(14px,1.7dvh,16px);line-height:1.65;margin-bottom:16px}
@media(min-width:721px) and (max-height:740px){
 body[data-page=home] #news{padding-block:24px;gap:18px}
 body[data-page=home] #news .news-heading h2{font-size:32px}
 body[data-page=home] #news .news-card:not(.news-featured){flex-direction:row}
 body[data-page=home] #news .news-card:not(.news-featured) .news-card-image{flex:0 0 28%;min-height:0}
 body[data-page=home] #news .news-card:not(.news-featured) .news-card-copy{flex:1;min-width:0}
}
@media(max-width:720px){
 body[data-page=home] #news{padding-block:clamp(24px,4dvh,44px);gap:24px}
 body[data-page=home] #news .news-grid{display:flex;gap:16px}
 body[data-page=home] #news .news-card-image{min-height:clamp(100px,25dvh,320px)}
 body[data-page=home] #news .news-card-copy{padding:20px;min-height:0}
 body[data-page=home] #news .news-card h3{font-size:22px;line-height:1.5;margin:12px 0 20px}
 body[data-page=home] #news .news-swipe-arrow{top:50%;transform:translateY(-50%)}
}

/* A compact editorial holding message, with the existing section palette. */
body[data-page=home] #news.news-coming-soon{min-height:0;display:block;padding-block:clamp(52px,7vw,96px)}
.news-coming-soon .news-empty-message{max-width:760px;margin:28px 0 0;padding-top:24px;border-top:1px solid var(--section-border,#d9cec0);color:var(--section-muted,#526275);font-size:clamp(16px,1.5vw,20px);line-height:1.8}
.news-list-section.news-coming-soon{min-height:220px;padding-block:48px 72px}
.news-list-section.news-coming-soon .news-empty-message{margin-top:0}
@media(max-width:720px){body[data-page=home] #news.news-coming-soon{padding:48px 7% 52px}body[data-page=home] #news.news-coming-soon .news-heading{padding:0}.news-coming-soon .news-empty-message{margin-top:24px;padding-top:20px}}
