:root { --ink:#071719; --paper:#f3f5ee; --cream:#e9ecdf; --teal:#0f6d66; --aqua:#4bd0be; --orange:#f0642e; --line:rgba(7,23,25,.15); --font-geist-sans:Inter,Arial,sans-serif; --font-geist-mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
section { scroll-margin-top:78px; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:var(--font-geist-sans),Arial,sans-serif; }
a { color:inherit; text-decoration:none; }
button,input { font:inherit; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }

.site-header { height:78px; display:flex; align-items:center; justify-content:space-between; padding:0 clamp(22px,5vw,76px); border-bottom:1px solid var(--line); background:rgba(243,245,238,.9); backdrop-filter:blur(15px); position:sticky; top:0; z-index:20; }
.brand { display:flex; align-items:center; gap:12px; font-weight:760; letter-spacing:-.04em; font-size:20px; }
.brand>span:last-child>span { color:var(--teal); }
.mark { width:30px; height:30px; display:inline-block; position:relative; flex:0 0 30px; }
.mark span { position:absolute; width:8px; height:8px; border-radius:50%; background:var(--ink); }
.mark span:nth-child(1) { left:1px; top:11px; }
.mark span:nth-child(2) { right:1px; top:1px; background:var(--orange); }
.mark span:nth-child(3) { right:1px; bottom:1px; background:var(--aqua); }
.mark::before,.mark::after { content:""; position:absolute; left:7px; width:20px; height:1px; background:var(--ink); transform-origin:left center; }
.mark::before { top:14px; transform:rotate(-28deg); }
.mark::after { top:16px; transform:rotate(28deg); }
.site-header nav { display:flex; align-items:center; gap:30px; font-size:14px; font-weight:600; }
.site-header nav a { transition:color .2s; }
.site-header nav a:hover { color:var(--teal); }
.nav-cta { border:1px solid var(--ink); padding:10px 17px; border-radius:99px; }

.hero { min-height:650px; padding:100px clamp(22px,5vw,76px) 84px; display:grid; grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr); align-items:center; gap:clamp(50px,8vw,130px); position:relative; overflow:hidden; border-bottom:1px solid var(--line); }
.hero-grid { position:absolute; inset:0; opacity:.22; background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px); background-size:60px 60px; mask-image:linear-gradient(to bottom,black,transparent 86%); pointer-events:none; }
.hero-orbit { position:absolute; border:1px solid rgba(15,109,102,.16); border-radius:50%; pointer-events:none; }
.orbit-one { width:620px; height:620px; right:-250px; top:-170px; }
.orbit-two { width:400px; height:400px; right:-115px; top:-70px; }
.hero-copy,.signal-card { position:relative; z-index:1; }
.eyebrow,.section-kicker { font-family:var(--font-geist-mono); color:var(--teal); letter-spacing:.16em; font-size:12px; font-weight:700; }
.eyebrow { display:flex; align-items:center; gap:10px; }
.eyebrow span { width:8px; height:8px; border-radius:50%; background:var(--orange); box-shadow:0 0 0 6px rgba(240,100,46,.12); }
.hero h1 { margin:25px 0 26px; max-width:770px; font-size:clamp(55px,6.3vw,96px); line-height:.94; letter-spacing:-.075em; font-weight:650; }
.hero h1 em { color:var(--teal); font-style:normal; }
.hero-lead { max-width:610px; margin:0; font-size:20px; line-height:1.55; color:#425255; }
.hero-actions { margin-top:40px; display:flex; align-items:center; gap:25px; flex-wrap:wrap; }
.primary-button { background:var(--ink); color:white; border-radius:99px; padding:16px 24px; display:inline-flex; align-items:center; gap:22px; font-weight:670; transition:transform .2s,background .2s; }
.primary-button:hover { background:var(--teal); transform:translateY(-2px); }
.primary-button span { color:var(--aqua); }
.hero-note { display:flex; align-items:center; gap:9px; color:#5f6c6d; font-size:13px; }
.hero-note i { width:7px; height:7px; background:#27a56f; border-radius:50%; box-shadow:0 0 0 5px rgba(39,165,111,.13); }

.signal-card { min-height:350px; padding:36px; color:white; background:var(--ink); border-radius:6px 70px 6px 6px; box-shadow:0 30px 70px rgba(7,23,25,.19); }
.signal-card::before { content:""; position:absolute; inset:0; border-radius:inherit; background:radial-gradient(circle at 75% 5%,rgba(75,208,190,.2),transparent 37%); }
.signal-map { min-height:232px; display:grid; grid-template-columns:1fr minmax(70px,1.2fr) 1fr; align-items:center; position:relative; }
.node { display:flex; flex-direction:column; align-items:center; text-align:center; gap:8px; font-weight:650; }
.node i { display:block; width:54px; height:54px; border:1px solid rgba(255,255,255,.25); border-radius:50%; position:relative; }
.node i::after { content:""; position:absolute; inset:18px; border-radius:50%; background:var(--orange); box-shadow:0 0 0 8px rgba(240,100,46,.12); }
.node-de i::after { background:var(--aqua); box-shadow:0 0 0 8px rgba(75,208,190,.12); }
.node small { font-family:var(--font-geist-mono); color:rgba(255,255,255,.5); font-size:9px; letter-spacing:.15em; }
.signal-line { height:1px; background:linear-gradient(90deg,var(--orange),rgba(255,255,255,.25),var(--aqua)); position:relative; }
.signal-line span { position:absolute; width:5px; height:5px; top:-2px; background:white; border-radius:50%; animation:pulse-line 2.4s infinite ease-in-out; }
.signal-line span:nth-child(1) { left:10%; }.signal-line span:nth-child(2) { left:48%; animation-delay:.5s; }.signal-line span:nth-child(3) { right:8%; animation-delay:1s; }
@keyframes pulse-line { 0%,100% { opacity:.2; transform:scale(.7); } 50% { opacity:1; transform:scale(1.5); } }
.signal-footer { border-top:1px solid rgba(255,255,255,.14); padding-top:20px; display:flex; justify-content:space-between; align-items:center; position:relative; }
.signal-footer span { font:10px var(--font-geist-mono); letter-spacing:.14em; color:rgba(255,255,255,.46); }.signal-footer strong { font:600 14px var(--font-geist-mono); color:var(--aqua); }

.section-shell { padding:100px clamp(22px,5vw,76px); }
.broadcasts { background:var(--ink); color:white; }
.section-heading { display:flex; justify-content:space-between; align-items:end; gap:30px; margin-bottom:42px; }
.section-heading h2 { font-size:clamp(35px,4.2vw,61px); line-height:1; letter-spacing:-.055em; margin:13px 0 0; }
.section-heading>p { max-width:430px; color:#93a2a3; font-size:14px; line-height:1.6; margin:0; }
.broadcast-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.broadcast-card { border:1px solid rgba(255,255,255,.15); background:#0b2023; overflow:hidden; }
.broadcast-topline { min-height:84px; display:flex; align-items:center; justify-content:space-between; gap:15px; padding:18px 22px; }
.broadcast-topline>div { display:flex; align-items:center; gap:13px; }.broadcast-topline h3 { margin:0; font-size:20px; letter-spacing:-.025em; }
.country-code { font:700 10px var(--font-geist-mono); letter-spacing:.12em; border:1px solid rgba(255,255,255,.25); padding:7px; }
.live-pill { font:700 9px var(--font-geist-mono); letter-spacing:.12em; color:#ff9c79; display:flex; align-items:center; gap:7px; }
.live-pill i { width:7px; height:7px; background:var(--orange); border-radius:50%; box-shadow:0 0 0 5px rgba(240,100,46,.11); animation:blink 1.5s infinite; }.live-pill.offline { color:#93a2a3; }.live-pill.offline i { background:#738082; box-shadow:none; animation:none; }
@keyframes blink { 50% { opacity:.3; } }
.video-frame { aspect-ratio:16/9; background:#020707; position:relative; overflow:hidden; }.video-frame video,.video-frame iframe { width:100%; height:100%; border:0; display:block; object-fit:cover; }.iframe-frame { background:#03090a; }
.stream-fallback { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; gap:8px; padding:30px; background:radial-gradient(circle at center,#143235,#020707); }.stream-fallback span { color:#8ea0a1; font-size:13px; }
.stream-fallback[hidden] { display:none; }
.broadcast-meta { padding:20px 22px 22px; display:flex; justify-content:space-between; gap:24px; align-items:start; }.broadcast-meta p { margin:0; max-width:390px; color:#9babac; font-size:13px; line-height:1.55; }.broadcast-meta a { color:var(--aqua); white-space:nowrap; font-size:12px; font-weight:650; }
.alternate-sources { margin-top:18px; display:flex; align-items:center; gap:11px; flex-wrap:wrap; color:#879899; font:11px var(--font-geist-mono); letter-spacing:.04em; }.alternate-sources>span { margin-right:7px; }.alternate-sources a { color:#c8d2d1; border:1px solid rgba(255,255,255,.13); padding:9px 12px; transition:border-color .2s,color .2s; }.alternate-sources a:hover { color:white; border-color:var(--aqua); }.alternate-sources b { color:var(--aqua); margin-right:6px; }

.atlas { background:var(--paper); }.atlas .section-kicker { color:var(--orange); }.atlas-heading { align-items:end; }
.search-box { width:min(100%,340px); height:48px; display:flex; align-items:center; gap:10px; border-bottom:1px solid var(--ink); }.search-box>span:first-child { font-size:25px; transform:rotate(-10deg); }.search-box input { width:100%; border:0; outline:0; background:transparent; color:var(--ink); }.search-box input::placeholder { color:#778183; }
.filter-row { display:flex; align-items:center; gap:8px; padding-bottom:25px; border-bottom:1px solid var(--line); margin-bottom:26px; }.filter-row button { border:1px solid var(--line); background:transparent; border-radius:99px; padding:9px 16px; cursor:pointer; transition:.2s; }.filter-row button:hover,.filter-row button.active { color:white; background:var(--teal); border-color:var(--teal); }.filter-row>span { margin-left:auto; color:#778183; font:11px var(--font-geist-mono); }
.country-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:14px; }.country-card { min-width:0; border:1px solid var(--line); background:#fafbf6; opacity:0; animation:card-in .5s forwards; animation-delay:var(--delay); transition:transform .2s,box-shadow .2s; }.country-card:hover { transform:translateY(-4px); box-shadow:0 18px 40px rgba(7,23,25,.08); }
@keyframes card-in { to { opacity:1; } }
.flag-wrap { height:128px; display:flex; align-items:center; justify-content:center; background:#dde3d8; position:relative; overflow:hidden; }.flag-wrap::after { content:""; position:absolute; inset:0; background:linear-gradient(145deg,transparent,rgba(7,23,25,.14)); }.flag-wrap img { width:68%; max-height:72%; object-fit:contain; filter:saturate(.82); box-shadow:0 9px 24px rgba(7,23,25,.16); }.flag-wrap span { position:absolute; z-index:1; left:12px; top:12px; padding:5px 7px; background:rgba(243,245,238,.9); font:700 8px var(--font-geist-mono); letter-spacing:.1em; text-transform:uppercase; }
.country-body { padding:18px; }.country-title { display:flex; align-items:center; justify-content:space-between; }.country-title h3 { margin:0; font-size:20px; letter-spacing:-.035em; }.country-title>span { color:var(--teal); }.country-body>p { color:#637173; font-size:12px; line-height:1.55; min-height:74px; }.country-footer { border-top:1px solid var(--line); padding-top:13px; display:flex; justify-content:space-between; align-items:end; }.country-footer>span { display:flex; flex-direction:column; gap:3px; font-size:12px; }.country-footer small { font:8px var(--font-geist-mono); letter-spacing:.12em; color:#8b9697; }.country-footer a { color:var(--teal); font-size:11px; font-weight:700; border-bottom:1px solid rgba(15,109,102,.35); }.empty-state { min-height:180px; display:grid; place-items:center; color:#778183; border:1px dashed var(--line); }

footer { min-height:180px; padding:42px clamp(22px,5vw,76px); background:var(--cream); border-top:1px solid var(--line); display:grid; grid-template-columns:1fr 1fr auto; align-items:center; gap:40px; }.footer-brand { display:flex; align-items:center; gap:12px; }.footer-brand strong { letter-spacing:-.03em; }footer>p { color:#657173; line-height:1.6; font-size:13px; max-width:430px; }.footer-meta { display:flex; flex-direction:column; align-items:end; gap:7px; color:#778183; font:9px var(--font-geist-mono); letter-spacing:.12em; }

@media (max-width:1120px) { .country-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }.hero { grid-template-columns:1fr 410px; gap:50px; } }
@media (max-width:840px) { .site-header nav a:not(.nav-cta) { display:none; }.hero { grid-template-columns:1fr; padding-top:75px; }.hero h1 { font-size:clamp(52px,13vw,82px); }.signal-card { width:100%; min-height:310px; }.broadcast-grid { grid-template-columns:1fr; }.section-heading,.atlas-heading { align-items:start; flex-direction:column; }.search-box { width:100%; }.country-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }footer { grid-template-columns:1fr; gap:16px; }.footer-meta { align-items:start; } }
@media (max-width:560px) { .site-header { height:68px; }.nav-cta { padding:8px 13px; }.brand { font-size:17px; }.hero { min-height:auto; padding-top:62px; }.hero h1 { font-size:clamp(46px,15vw,65px); }.hero-lead { font-size:17px; }.signal-card { padding:24px 18px; border-radius:4px 45px 4px 4px; min-height:270px; }.signal-map { grid-template-columns:1fr 70px 1fr; min-height:190px; }.section-shell { padding-top:76px; padding-bottom:76px; }.broadcast-topline,.broadcast-meta { padding-left:15px; padding-right:15px; }.broadcast-meta { flex-direction:column; gap:12px; }.country-grid { grid-template-columns:1fr; }.filter-row { overflow-x:auto; padding-bottom:18px; }.filter-row>span { display:none; }.section-heading h2 { font-size:40px; } }
