@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/montserrat-400.ttf) format("truetype")}
@font-face{font-family:Montserrat;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/montserrat-500.ttf) format("truetype")}
@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/montserrat-600.ttf) format("truetype")}
@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/montserrat-700.ttf) format("truetype")}
@font-face{font-family:Montserrat;font-style:normal;font-weight:800;font-display:swap;src:url(/assets/fonts/montserrat-800.ttf) format("truetype")}
:root{--blue:#005CB9;--navy:#003A5D;--orange:#FF5F00;--lime:#A2D45E}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#031436;font-family:Montserrat,Arial,Helvetica,sans-serif;color:var(--navy)}body{display:grid;place-items:center}.screen{width:min(100vw,177.7778vh);height:min(56.25vw,100vh);display:grid;grid-template-rows:16% 67% 17%;background:white;container-type:inline-size}header{display:flex;align-items:center;justify-content:space-between;padding:0 3.2%;color:white;background:var(--blue);gap:2%}.brand{display:flex;align-items:center;gap:1.4cqw;width:28%}.brand img{width:12.3cqw;height:auto;filter:brightness(0) invert(1)}.brand span{font-weight:700;font-size:1.95cqw;letter-spacing:.12cqw;border-left:.16cqw solid #ff781d;padding-left:1.3cqw}.edition{font-weight:700;font-size:2.65cqw;white-space:nowrap;display:flex;align-items:center;gap:1.5cqw;letter-spacing:-.08cqw}.datetime{text-align:right;border-left:1px solid #ffffff50;padding-left:2.3cqw;min-width:25%}#date{font-size:.95cqw;font-weight:600;letter-spacing:.06cqw;text-transform:uppercase}#clock{font-size:4.05cqw;line-height:1.05;font-weight:700;letter-spacing:-.15cqw;font-variant-numeric:tabular-nums}.story{position:relative;display:grid;grid-template-columns:57% 43%;overflow:hidden}.visual{position:relative;overflow:hidden;background:#083278;border-right:.55cqw solid var(--lime)}#photo{width:100%;height:100%;object-fit:cover;animation:kenburns 15s linear infinite}.visual-shade{position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#051a4350);pointer-events:none}.photo-label{position:absolute;bottom:2cqw;left:2.7cqw;z-index:1;color:#fff;font-size:.75cqw;font-weight:bold;letter-spacing:.12cqw;text-shadow:0 1px 4px #000}article{padding:3cqw 3.2cqw 2.1cqw;display:flex;flex-direction:column;background:#fbfcff;position:relative;min-width:0}.eyebrow{display:flex;justify-content:space-between;align-items:center;gap:1cqw}#category{font-size:.95cqw;font-weight:700;letter-spacing:.04cqw;padding:.65cqw 1cqw;border-radius:3cqw;color:#fff;background:var(--orange)}.story-number{font-size:.85cqw;font-weight:700;color:#8a95b1;white-space:nowrap}h1{font-size:3.7cqw;line-height:1.05;letter-spacing:-.16cqw;margin:1.8cqw 0 1.3cqw;font-weight:700;overflow-wrap:break-word}h1.long{font-size:2.6cqw;letter-spacing:-.08cqw}#summary{font-size:1.45cqw;line-height:1.38;margin:0;color:#354669;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}#source{font-size:.9cqw;color:#647491;text-decoration:none;display:block;margin-top:1.5cqw;line-height:1.4}.story-footer{margin-top:auto;padding-top:1.2cqw;display:flex;justify-content:space-between;align-items:center}#type{font-size:.68cqw;color:#8791a8;letter-spacing:.13cqw;font-weight:bold}#dots{display:flex;gap:.55cqw}#dots span{display:block;background:#c6d2e6;width:.6cqw;height:.6cqw;border-radius:50%}#dots span.active{background:var(--orange);width:1.6cqw;border-radius:1cqw}.progress{position:absolute;bottom:0;left:0;right:0;height:.3cqw;background:#003cd515;z-index:5}#progress{height:100%;display:block;width:0;background:var(--orange);animation:progress 15s linear infinite}.weather{background:var(--blue);color:#fff;display:flex;align-items:center;padding:1.1cqw 3.2cqw;gap:2cqw}.weather-location{width:11%;display:flex;flex-direction:column;gap:.5cqw}.weather-location strong{font-size:1.65cqw;letter-spacing:.07cqw}.weather-location span{font-size:.6cqw;letter-spacing:.07cqw;line-height:1.4;color:#c5d9ff}.current{display:flex;align-items:center;gap:1cqw;padding:0 2cqw;border-left:1px solid #ffffff50;border-right:1px solid #ffffff50;width:33%}.current>strong{font-size:4.1cqw;letter-spacing:-.2cqw;white-space:nowrap}.current>div{display:flex;flex-direction:column;gap:.35cqw}.current b{font-size:1cqw;font-weight:500}.current small{font-size:.65cqw;color:#c5d9ff}.weather-icon{width:3.7cqw;height:3.7cqw;display:inline-block;flex-shrink:0}.weather-icon svg{width:100%;height:100%;overflow:visible}.forecast{display:grid;grid-template-columns:repeat(4,1fr);flex:1;gap:1.3cqw}.day{display:flex;flex-direction:column;gap:.4cqw}.day>strong{font-size:.9cqw;letter-spacing:.07cqw}.day>div{display:flex;align-items:center;gap:.4cqw}.day .weather-icon{width:2.3cqw;height:2.3cqw}.temps{font-size:1.05cqw;white-space:nowrap}.temps span{color:#b8d0ff}.switching article{animation:enter .65s ease both}.switching .visual{animation:fade .7s ease both}@keyframes kenburns{from{transform:scale(1)}to{transform:scale(1.06)}}@keyframes progress{to{width:100%}}@keyframes enter{from{opacity:0;transform:translateX(16px)}to{opacity:1;transform:translateX(0)}}@keyframes fade{from{opacity:.25}to{opacity:1}}@media(prefers-reduced-motion:reduce){#photo{animation:none}.switching article,.switching .visual{animation:none}}
[hidden]{display:none!important}.credit-block{display:flex;flex-direction:column;gap:.35cqw;max-width:60%}#translation{font-size:.62cqw;color:#8791a8}.story-footer{gap:1cqw;align-items:flex-end}#dots{position:absolute;right:3.2cqw;bottom:1cqw;max-width:25cqw;gap:.35cqw}#dots span{width:.4cqw;height:.4cqw}#dots span.active{width:1.2cqw}.qr-link{display:flex;flex-direction:column;align-items:center;text-decoration:none;color:var(--navy);gap:.2cqw;padding-bottom:1.3cqw;flex-shrink:0}#qr{display:block;width:6.8cqw;height:6.8cqw;background:white;padding:.25cqw}#qr svg{width:100%;height:100%;display:block}.qr-link small{font-size:.55cqw;font-weight:bold;letter-spacing:.06cqw}#source{max-width:100%;font-size:.8cqw}.event-details{margin-top:1.5cqw;display:flex;flex-direction:column;gap:.55cqw}.event-date{font-size:1.25cqw;color:var(--blue);text-transform:uppercase}.event-venue{font-size:1.1cqw;color:#53617c}.event-price{font-size:.9cqw;letter-spacing:.04cqw;font-weight:700;margin-top:.3cqw}.event-price.free{color:#087847}.story.event h1{font-size:3.05cqw}.story.event h1.long{font-size:2.45cqw}.story.event article{padding-top:2.4cqw}.story.sports{display:block;background:#f7f9ff}.story.sports .visual{display:none}.story.sports article{height:100%;padding:1.8cqw 4cqw;background:radial-gradient(ellipse at 95% 0%,#e6edff,transparent 70%),#f8faff}.story.sports h1{font-size:2.8cqw;margin:.8cqw 0}.story.sports #source{position:absolute;right:4cqw;top:4.6cqw;font-size:.8cqw}.story.sports #scoreboard{margin-top:.3cqw}.score-row{display:grid;grid-template-columns:1fr 9cqw 1fr 15cqw;align-items:center;gap:2cqw;padding:.88cqw 1.5cqw;border-bottom:1px solid #dce4f4;font-size:1.4cqw}.score-row.local-team{background:#e5edff;border-left:.3cqw solid var(--orange);border-radius:.3cqw}.team.home{text-align:right}.score{text-align:center;font-size:1.7cqw;color:var(--blue);white-space:nowrap}.match-status{font-size:.78cqw;color:#60708c;text-align:right}.story.sports .story-footer{padding-top:.5cqw;align-items:center}.story.sports #qr{width:3.6cqw;height:3.6cqw}.story.sports .qr-link{flex-direction:row;padding:0;gap:.7cqw}.story.sports #dots{bottom:1.8cqw;right:20cqw}.source-panel{position:fixed;inset:0;background:#f8faff;color:#102454;overflow:auto;padding:4vw;font-family:Montserrat,Arial,sans-serif;z-index:99}.source-panel h2{font-size:32px}.source-row{display:grid;grid-template-columns:2fr 1fr 3fr;gap:20px;padding:18px 0;border-bottom:1px solid #dbe3f4}.source-row small{font-size:14px}.source-panel p{font-size:14px;color:#51617b}.source-panel a{display:inline-block;padding:14px 20px;background:var(--blue);color:white;border-radius:8px}
h1{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;flex-shrink:0}#summary{-webkit-line-clamp:2}#source{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;flex-shrink:0}.event-details{flex-shrink:0}.story-footer{flex-shrink:0}
/* CIEE February 2026 guide: Montserrat, CIEE Blue / Orange and secondary accents. */
.brand img{filter:none}.brand span{border-left-color:var(--orange);font-weight:600}#category{color:var(--navy)}h1{color:var(--blue);font-weight:700;text-transform:uppercase;font-size:3.25cqw;letter-spacing:-.035em}h1.long{font-size:2.4cqw;letter-spacing:-.035em}.story.event h1{font-size:2.8cqw}.story.event h1.long{font-size:2.25cqw}.story.sports h1{font-size:2.7cqw}.edition{font-weight:700;font-size:2.45cqw;letter-spacing:-.04em}#clock{font-weight:600;font-size:3.8cqw}.weather{background:var(--blue)}.team{display:flex;align-items:center;gap:1.1cqw;min-width:0}.team.home{justify-content:flex-end}.team.away{justify-content:flex-start}.team-name{font-weight:600;font-size:1.2cqw;line-height:1.25}.team-crest{width:2.65cqw;height:2.65cqw;flex:0 0 2.65cqw;display:grid;place-items:center;position:relative}.team-badge{position:absolute;inset:0;max-width:100%;max-height:100%;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 2px 2px #003a5d18)}.crest-fallback{display:grid;place-items:center;width:2.2cqw;height:2.5cqw;clip-path:polygon(8% 0,92% 0,92% 65%,50% 100%,8% 65%);background:#d9e5f1;color:var(--navy);font-size:.7cqw;font-weight:700}.score-row{padding:.65cqw 1.2cqw;gap:1.5cqw;min-height:4.1cqw;grid-template-columns:1fr 8cqw 1fr 14cqw}.score{font-weight:600}.weather-icon{width:5cqw;height:5cqw;display:inline-flex;align-items:center;justify-content:center}.weather-art{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 .15cqw .15cqw #003a5d33)}.day .weather-icon{width:3.5cqw;height:3.5cqw;margin:-.5cqw 0}.current{gap:.65cqw;padding:0 1.5cqw}.current>strong{font-size:3.65cqw;letter-spacing:-.06em}.current b{font-size:.86cqw}.current small{font-size:.56cqw}.temps{font-size:.95cqw}.forecast{gap:.6cqw}.day>div{gap:.1cqw}.weather-location strong{font-size:1.45cqw}.day>strong{font-weight:600}.current .weather-art{animation:weather-float 8s ease-in-out infinite}@keyframes weather-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-.15cqw)}}@media(prefers-reduced-motion:reduce){.current .weather-art{animation:none}}
/* Preserve complete photos and posters; use a soft backdrop to fill their frame. */
.visual{background:var(--navy);isolation:isolate}.photo-backdrop{position:absolute;inset:-4%;width:108%;height:108%;object-fit:cover;filter:blur(24px) brightness(.55) saturate(.8);z-index:0;pointer-events:none}#photo{position:absolute;inset:1cqw 1cqw 3cqw;width:calc(100% - 2cqw);height:calc(100% - 4cqw);object-fit:contain;object-position:center;animation:none;transform:none;z-index:1;filter:drop-shadow(0 .35cqw .6cqw #001b3860)}.visual-shade{z-index:0}.photo-label{z-index:2;bottom:1.1cqw;left:1.5cqw;right:1.2cqw;font-size:.65cqw;line-height:1.4}
/* Larger weather symbols, with forecast temperatures below each icon. */
.weather{padding:.7cqw 3.2cqw;gap:1.6cqw}.current>.weather-icon{width:7cqw;height:7cqw}.weather-art{transform:scale(1.18)}.current .weather-art{animation:weather-float-large 8s ease-in-out infinite}.day{align-items:center;gap:.05cqw}.day>div{flex-direction:column;align-items:center;gap:0}.day .weather-icon{width:5.6cqw;height:5.6cqw;margin:-.3cqw 0}.temps{font-size:1.05cqw}.day>strong{font-size:.85cqw}.current>div{min-width:0}.current>strong{flex-shrink:0}@keyframes weather-float-large{0%,100%{transform:scale(1.18) translateY(0)}50%{transform:scale(1.18) translateY(-.15cqw)}}@media(prefers-reduced-motion:reduce){.current .weather-art{animation:none}}

/* Selected option B: solid colors, no gradients or dimensional shadows. */
.weather-art{filter:none}
/* Never enlarge a source photo beyond its intrinsic pixel dimensions. */
#photo{inset:auto;left:50%;top:calc(50% - 1cqw);width:auto;height:auto;max-width:calc(100% - 2cqw);max-height:calc(100% - 4cqw);transform:translate(-50%,-50%);object-fit:contain;animation:none}
/* Low-resolution artwork gets a complete editorial card, never a tiny floating photo. */
.story.no-photo{display:block}.story.no-photo .visual{display:none}.story.no-photo article{height:100%;padding:2.7cqw 4cqw;background:linear-gradient(115deg,#fff 0%,#f7faff 70%,#eef5fc 100%)}.story.no-photo h1{max-width:60cqw;font-size:3.8cqw;margin:2cqw 0 1.5cqw;line-height:1.1}.story.no-photo h1.long{font-size:3.1cqw}.story.no-photo #summary{max-width:55cqw;font-size:1.6cqw}.story.no-photo #source{max-width:58cqw;font-size:1cqw}.story.no-photo .event-details{position:absolute;right:4cqw;top:8.5cqw;width:25cqw;padding:2cqw;border-radius:1cqw;background:var(--blue);gap:1cqw;box-shadow:0 .5cqw 1.5cqw #003a5d12}.story.no-photo .event-date{font-size:1.35cqw;line-height:1.4;color:#fff}.story.no-photo .event-venue{font-size:1.15cqw;line-height:1.4;color:#fff}.story.no-photo .event-price{font-size:1cqw;color:#FFC844}.story.no-photo .event-price.free{color:#d5f2af}.story.no-photo .story-footer{padding-top:1.2cqw}.story.no-photo #qr{width:7.2cqw;height:7.2cqw}.story.no-photo .qr-link{padding-bottom:1cqw}.story.no-photo #dots{right:4cqw;bottom:1.2cqw}.story.no-photo .credit-block{max-width:55cqw}.story.no-photo:not(.event) h1{max-width:82cqw}.story.no-photo:not(.event) #summary{max-width:72cqw}
/* CES attribution stays visible on every concert supplied by this source. */
.source-attribution{margin-top:1.5cqw;display:flex;align-items:center;gap:1cqw;min-width:0}.source-attribution #source{margin-top:0}.source-text{min-width:0}#source-logo{width:4.5cqw;height:4.5cqw;object-fit:contain;border-radius:.35cqw;flex-shrink:0}#source-label{font-size:.65cqw;font-weight:700;letter-spacing:.1cqw;color:var(--navy);margin-bottom:.3cqw;display:block}.story.ces .source-attribution{margin-top:.8cqw}.story.ces h1{margin-bottom:.7cqw}.story.ces .event-details{margin-top:.7cqw}.story.ces .story-footer{padding-top:.6cqw}.story.no-photo.ces #source-logo{width:5.2cqw;height:5.2cqw}
