/* Fluid layout for phones, tablets, desktops and presentation screens. */
:root{--page-gutter:clamp(20px,3.5vw,100px);--section-space:clamp(48px,5vw,120px)}
body{font-size:clamp(16px,.4vw + 12px,20px)}.wrap{width:100%;max-width:2400px;padding-left:var(--page-gutter);padding-right:var(--page-gutter)}header{padding-left:var(--page-gutter);padding-right:var(--page-gutter)}header nav{font-size:clamp(12px,.35vw + 8px,17px);gap:clamp(16px,2vw,48px)}.hero{gap:clamp(30px,4vw,100px);padding-top:var(--section-space);padding-bottom:var(--section-space);grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.hero-copy,.section-heading,.service-list,.locations,.partner-rows{min-width:0}h1{font-size:clamp(64px,7vw,160px)}h2,.section h2,.platform-fit h2,.capacity-story h2,.readiness h2,.workflow h2{font-size:clamp(38px,4.2vw,88px)}.closing h2{font-size:clamp(48px,5.5vw,120px)}.lede{font-size:clamp(20px,1.7vw,30px);max-width:35ch}.intro,.section-heading p,.platform-fit>p,.readiness>p{font-size:clamp(15px,1vw,20px);max-width:65ch}.demo{width:100%;max-width:840px;justify-self:end}.demo-top{font-size:clamp(9px,.55vw,13px)}.demo-bottom strong{font-size:clamp(13px,.9vw,18px)}.demo-bottom span,.analysis-note{font-size:clamp(12px,.7vw,16px);max-width:40ch}.demo-bottom button{font-size:13px;min-height:44px}.section{gap:clamp(35px,5vw,130px);padding-top:var(--section-space);padding-bottom:var(--section-space)}.service-list p,.partner-rows p,.capacity-columns p{font-size:clamp(14px,.85vw,18px);max-width:65ch}.platform-lanes span,.steps p{font-size:clamp(13px,.75vw,17px)}.footnote{font-size:clamp(12px,.6vw,14px)}.eyebrow{font-size:clamp(11px,.65vw,15px)}.moments-row{gap:clamp(12px,1.3vw,32px)}.moments-row figcaption{font-size:clamp(10px,.65vw,15px)}.ribbon{font-size:clamp(11px,.65vw,16px)}.readiness,.platform-fit,.capacity-story{padding-top:var(--section-space);padding-bottom:var(--section-space)}.readiness-points p{font-size:clamp(14px,.85vw,18px)}.locations h3{font-size:clamp(32px,2.6vw,56px)}.status{font-size:12px}.button,.nav-cta{min-height:44px}.palette-options button{min-height:44px}.text-link{font-size:clamp(12px,.75vw,16px)}
@media(min-width:2000px){.section-heading p{max-width:50ch}.hero{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.platform-lanes>div{padding:32px}.service-list article{padding:38px 0}.sports-moments h2{font-size:64px}}
@media(min-width:2800px){.wrap{max-width:2800px}}
@media(max-width:1100px){.hero{grid-template-columns:minmax(0,1fr) minmax(0,.9fr)}.section{gap:32px}.platform-lanes{grid-template-columns:repeat(2,minmax(0,1fr))}.readiness-points{grid-template-columns:repeat(2,minmax(0,1fr))}.readiness-points article:last-child{grid-column:1/-1}.demo-top{flex-wrap:wrap}.scale{gap:30px}}
@media(max-width:800px){.hero,.section{grid-template-columns:1fr}.demo{justify-self:center;max-width:600px}.hero-copy{max-width:680px}.hero h1{font-size:clamp(62px,11vw,100px)}.section-heading p{max-width:65ch}.moments-row{grid-template-columns:repeat(3,minmax(0,1fr))}.scale{grid-template-columns:1fr}.ribbon .wrap{flex-wrap:wrap;justify-content:center}.section h2{margin-top:20px}}
@media(max-width:680px){html{scroll-padding-top:150px}header{height:auto;min-height:115px;flex-wrap:wrap;gap:10px;padding-top:10px;padding-bottom:10px}header nav{width:100%;display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:11px}header nav>a:not(.nav-cta){display:block;padding:8px 0}header nav .nav-cta{padding:8px 10px;min-height:36px;font-size:10px}.hero{padding-top:38px}.actions{align-items:flex-start;gap:18px}.steps{grid-template-columns:repeat(2,minmax(0,1fr))}.readiness-points,.capacity-columns{grid-template-columns:1fr}.readiness-points article:last-child{grid-column:auto}.palette-values{line-height:1.6}.platform-lanes{gap:12px}.platform-lanes>div{padding:16px}.sports-moments h2{font-size:clamp(32px,7vw,44px)}.locations article{gap:12px}.status{white-space:nowrap;font-size:10px}.closing h2{font-size:clamp(46px,10vw,64px)}}
@media(max-width:360px){header nav{justify-content:flex-start;gap:12px}header nav .nav-cta{display:none}.platform-lanes{grid-template-columns:1fr}.moments-row{grid-template-columns:repeat(2,minmax(0,1fr))}.steps{gap:16px}.ribbon{letter-spacing:.5px}.hero h1{font-size:62px}}

.broadcast-story{padding-block:clamp(48px,5vw,100px);border-top:1px solid var(--line,#cddfe8)}
.broadcast-images{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(16px,2vw,36px);margin-block:32px}
.broadcast-images figure{margin:0;position:relative;overflow:hidden;background:#102b3c;aspect-ratio:3/2}
.broadcast-images img{width:100%;height:100%;object-fit:cover;display:block}
.broadcast-images figcaption{position:absolute;inset:auto 0 0;padding:48px 24px 24px;color:#fff;background:linear-gradient(transparent,rgba(5,20,30,.9))}
.broadcast-images figcaption span{display:block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px}
.broadcast-images figcaption strong{font-size:clamp(20px,1.5vw,32px)}
.broadcast-story>p{max-width:65ch}
@media(max-width:680px){.broadcast-images{grid-template-columns:1fr}.broadcast-images figcaption{padding:40px 18px 18px}}


.framed-sports{padding-block:clamp(48px,5vw,100px)}
.framed-sports .moments-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 24px}
.framed-sports .moment-image{border:1px solid rgba(16,43,60,.18)}
.framed-sports .moment-image:before,.framed-sports .moment-image:after{width:18px;height:18px;border-color:#00b9e8}
.framed-sports .moment-image:before{left:12px;top:12px;border-width:3px 0 0 3px}
.framed-sports .moment-image:after{right:12px;bottom:12px;border-width:0 3px 3px 0}
.framed-sports figcaption{text-align:left;font-size:12px;margin-top:14px;letter-spacing:.13em}
@media(max-width:800px){.framed-sports .moments-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}}
@media(max-width:420px){.framed-sports .moments-row{grid-template-columns:1fr}.framed-sports .moment-image{max-width:100%}}

.external-line{font-size:13px;padding-block:20px;color:#526d7e}
#independence,#start,#network,.framed-sports{padding-block:clamp(40px,4vw,72px)}
@media(min-width:1100px){.framed-sports .moments-row{grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}}
/* The sports artwork already contains its frame corners. */
.framed-sports .moment-image:before,.framed-sports .moment-image:after{display:none}

/* Full-width sports bands: one faint action image per section, one set of frame corners. */
.sport-band{position:relative;isolation:isolate;--muted:#465c6c;--sport-opacity:.12;--mark:#00c4fe;--mark-len:clamp(18px,1.6vw,34px);--mark-w:clamp(2px,.2vw,4px);--mark-inset:clamp(12px,1.3vw,28px)}
.sport-band:before,.sport-band:after{content:'';position:absolute;inset:0;pointer-events:none}
.sport-band:before{z-index:-1;background:center/cover no-repeat;opacity:var(--sport-opacity)}
.sport-band:after{inset:var(--mark-inset);background:linear-gradient(var(--mark),var(--mark)) left top/var(--mark-len) var(--mark-w) no-repeat,linear-gradient(var(--mark),var(--mark)) left top/var(--mark-w) var(--mark-len) no-repeat,linear-gradient(var(--mark),var(--mark)) right bottom/var(--mark-len) var(--mark-w) no-repeat,linear-gradient(var(--mark),var(--mark)) right bottom/var(--mark-w) var(--mark-len) no-repeat}
.sport-baseball{--sport-opacity:.11}.sport-baseball:before{background-image:url(assets/sport-baseball.jpg)}
.sport-hockey{--sport-opacity:.17}.sport-hockey:before{background-image:url(assets/sport-hockey.jpg)}
.sport-basketball{--sport-opacity:.12}.sport-basketball:before{background-image:url(assets/sport-basketball.jpg)}
.sport-band .readiness-points article{background:rgba(245,249,252,.84);border:1px solid var(--line)}
@media(max-width:800px){.sport-band:before{background-size:170% auto;background-position:50% 0;-webkit-mask-image:linear-gradient(#000 70vw,transparent 120vw);mask-image:linear-gradient(#000 70vw,transparent 120vw)}.sport-baseball:before{background-position:12% 0}.sport-basketball:before{background-position:75% 0}}
@media(min-width:2401px){main{overflow-x:clip}.sport-band:before{left:calc(50% - 50vw);right:calc(50% - 50vw)}.sport-band:after{left:calc(50% - 50vw + var(--mark-inset));right:calc(50% - 50vw + var(--mark-inset))}}
@media(min-width:361px) and (max-width:400px){header nav{gap:6px}header nav .nav-cta{padding-left:8px;padding-right:8px}}
