/* 5.0 INDUSTRY Pro 2.0.5 — unified 1460px editorial grid.
 * A single width contract applies to every section (header, nav, featured,
 * news, industry rail, footer). Background strips remain full viewport width.
 * No 100vw positioning, negative offsets or body overflow clipping.
 */
:root{--i50-wide:1460px}
.i50-container{box-sizing:border-box;width:calc(100% - 64px);max-width:var(--i50-wide);margin-inline:auto}
.i50-site-header,.i50-homepage,.i50-masthead,.i50-industries-section,.i50-footer{min-width:0;width:100%}
.i50-brandbar-inner,.i50-industry-inner,.i50-home-layout,.i50-industry-feature,.i50-footer-grid,.i50-single-layout{min-width:0}
.i50-home-layout>*,.i50-masthead-grid>*,.i50-article-grid>*,.i50-industries-grid>*,.i50-footer-grid>*,.i50-single-layout>*{min-width:0}
.i50-card,.i50-widget,.i50-industry-tile{min-width:0;max-width:100%}
.i50-card-title,.i50-card-excerpt,.i50-industry-title,.i50-popular-info,.i50-footer-list a{overflow-wrap:break-word}

/* The hero uses the same container as the news area, with a full-width dark strip. */
.i50-homepage>.i50-masthead{box-sizing:border-box;margin:0;padding:14px 0;background:#061725}
.i50-homepage>.i50-masthead>.i50-masthead-grid{box-sizing:border-box;width:calc(100% - 64px);max-width:var(--i50-wide);margin-inline:auto;display:grid;grid-template-columns:minmax(0,2.08fr) minmax(0,1fr);grid-template-rows:224px 224px;gap:10px;min-height:458px}
.i50-masthead-grid>.i50-hero-card{position:relative;min-width:0;overflow:hidden;isolation:isolate;border-radius:2px}
.i50-hero-large{grid-column:1;grid-row:1/3}
.i50-hero-small{grid-column:2}
.i50-hero-card>.i50-hero-media{position:absolute;inset:0;z-index:0;display:block;overflow:hidden}
.i50-hero-card>.i50-hero-media>img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;object-fit:cover}
.i50-hero-card>.i50-hero-gradient{z-index:1}
.i50-hero-card>.i50-hero-copy{position:absolute;z-index:2;box-sizing:border-box;pointer-events:none;min-width:0}
.i50-hero-card>.i50-hero-copy a{pointer-events:auto}
/* This is local to the card — never calculated relative to viewport width. */
.i50-homepage .i50-hero-large .i50-hero-copy{left:clamp(24px,3.3%,48px);right:clamp(24px,3.3%,48px);bottom:clamp(26px,4%,48px);max-width:650px}
.i50-homepage .i50-hero-large .i50-hero-copy h2{font-size:clamp(34px,3.6vw,59px);line-height:1.06;max-width:610px;overflow-wrap:break-word}
.i50-homepage .i50-hero-small .i50-hero-copy{left:22px;right:18px;bottom:22px;padding-right:45px;max-width:none}
.i50-homepage .i50-hero-small .i50-hero-copy h2{max-width:100%;font-size:clamp(17px,1.6vw,25px);overflow-wrap:break-word}
.i50-homepage .i50-hero-small .i50-hero-circle{right:0;bottom:1px;width:31px;height:31px}

/* Headline overlay is legible even when the source has bright photography. */
.i50-hero-large .i50-hero-gradient{background:linear-gradient(90deg,rgba(0,10,20,.9),rgba(0,12,22,.58) 48%,rgba(0,12,22,.04) 100%),linear-gradient(0deg,rgba(0,10,20,.42),transparent 65%)}
.i50-hero-small .i50-hero-gradient{background:linear-gradient(0deg,rgba(0,8,18,.94),rgba(0,10,21,.35) 70%,rgba(0,12,24,.15))}
.i50-hero-card--placeholder>.i50-hero-media>.i50-image-fallback{position:absolute;inset:0;width:100%;height:100%;min-height:0;display:block;background:radial-gradient(circle at 79% 39%,rgba(255,202,5,.17),transparent 30%),linear-gradient(110deg,#071321,#123448 70%,#0a1c2d)}
.i50-hero-card--placeholder>.i50-hero-media>.i50-image-fallback::before{content:"";position:absolute;inset:0;opacity:.2;background-image:linear-gradient(rgba(137,195,222,.2) 1px,transparent 1px),linear-gradient(90deg,rgba(137,195,222,.2) 1px,transparent 1px);background-size:38px 38px}

/* The nav scrolls inside its own 1460px frame when labels run long. */
@media(min-width:621px){
 .i50-industry-inner{display:block;min-width:0;overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:#738595 #071522}
 .i50-industry-links{display:flex;width:max-content;min-width:100%;max-width:none;flex-wrap:nowrap}
 .i50-industry-links>li{flex:none}
}
.i50-industry-inner:focus-visible{outline:2px solid #ffca05;outline-offset:-2px}
.i50-home-layout{grid-template-columns:minmax(0,1fr) 300px}
.i50-article-grid{min-width:0;grid-auto-flow:row}
.i50-industries-grid{min-width:0}

@media(max-width:1350px){
 .i50-container,.i50-homepage>.i50-masthead>.i50-masthead-grid{width:calc(100% - 50px)}
 .i50-home-layout{grid-template-columns:minmax(0,1fr) 280px}
}
@media(max-width:1050px){
 .i50-homepage>.i50-masthead>.i50-masthead-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);grid-template-rows:200px 200px;min-height:410px}
 .i50-homepage .i50-hero-large .i50-hero-copy{left:25px;right:23px;bottom:28px;max-width:calc(100% - 48px)}
 .i50-homepage .i50-hero-large .i50-hero-copy h2{font-size:clamp(30px,4vw,43px)}
 .i50-homepage .i50-hero-small .i50-hero-copy h2{font-size:18px}
 .i50-home-layout{grid-template-columns:minmax(0,1fr) 280px}
}
@media(max-width:850px){
 .i50-container,.i50-homepage>.i50-masthead>.i50-masthead-grid{width:calc(100% - 34px)}
 .i50-home-layout{grid-template-columns:minmax(0,1fr)}
 .i50-homepage>.i50-masthead>.i50-masthead-grid{grid-template-rows:185px 185px;min-height:380px}
 .i50-homepage .i50-hero-small .i50-hero-copy{left:16px;right:14px;padding-right:34px;bottom:15px}
 .i50-homepage .i50-hero-small .i50-hero-copy h2{font-size:16px}
}
@media(max-width:620px){
 .i50-container,.i50-homepage>.i50-masthead>.i50-masthead-grid{width:calc(100% - 30px)}
 .i50-homepage>.i50-masthead{padding:10px 0}
 .i50-homepage>.i50-masthead>.i50-masthead-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:330px 175px;gap:7px;min-height:512px}
 .i50-homepage .i50-hero-large{grid-column:1/-1;grid-row:1}
 .i50-homepage .i50-hero-small{grid-row:2;grid-column:auto}
 .i50-homepage .i50-hero-large .i50-hero-copy{left:18px;right:18px;bottom:22px;max-width:calc(100% - 36px)}
 .i50-homepage .i50-hero-large .i50-hero-copy h2{font-size:clamp(29px,8.1vw,40px)}
 .i50-homepage .i50-hero-small .i50-hero-copy{left:11px;right:11px;padding-right:0;bottom:12px}
 .i50-homepage .i50-hero-small .i50-hero-copy h2{font-size:clamp(12px,3.8vw,15px)}
 .i50-homepage .i50-hero-small .i50-hero-circle{display:none}
 .i50-industry-bar.is-open .i50-industry-inner{overflow:visible}
 .i50-industry-links,.i50-industry-bar.is-open .i50-industry-links{width:100%;min-width:0;max-width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));white-space:normal}
 .i50-industry-links>li,.i50-industry-links>li>a{min-width:0}
 .i50-industry-links>li>a{white-space:normal;overflow-wrap:anywhere}
}
@media(max-width:390px){
 .i50-homepage>.i50-masthead>.i50-masthead-grid{grid-template-rows:305px 162px;min-height:474px}
 .i50-homepage .i50-hero-large .i50-hero-copy h2{font-size:30px}
}
