:root { --green:#244b35; --green-dark:#173526; --gold:#dfb442; --gold-dark:#c89b2e; --cream:#fbfaf6; --ink:#253d2e; --muted:#647367; --line:#d9ddd9; }
      * { box-sizing:border-box; }
      body { margin:0; min-height:100vh; background:var(--cream); color:var(--ink); font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; padding-bottom:118px; }
      header { height:84px; border-bottom:3px solid var(--gold); background:var(--green); display:flex; align-items:center; }
      .bar { width:min(1180px, calc(100% - 40px)); margin:auto; display:flex; justify-content:space-between; align-items:center; gap:30px; }
      .brand { color:#fffdf7; text-decoration:none; font-family:Georgia, serif; font-size:2.4rem; font-weight:800; letter-spacing:-.05em; }.brand sup{font:600 .75rem/1 Inter,sans-serif;letter-spacing:0;vertical-align:top;position:relative;top:8px;margin-left:1px}.brand span{color:var(--gold)}.brand small{display:block;color:var(--gold);font:800 .71rem Inter,sans-serif;letter-spacing:.14em;margin-top:-3px}
      nav{display:flex;align-items:center;gap:28px}nav a{color:#fffdf7;text-decoration:none;font-weight:700;font-size:.93rem}nav a:hover{color:var(--gold)}.join{color:var(--green-dark);background:var(--gold);padding:11px 17px;border-radius:7px}.join:hover{color:var(--green-dark);background:var(--gold-dark)}
      main{display:flex;flex-direction:column;align-items:center;min-height:calc(100vh - 202px);padding:40px 20px 26px;background:radial-gradient(ellipse at center 35%,#fff 0%,#fbfaf6 57%,#f1f0eb 100%)}
      .hero{width:min(920px,100%);text-align:center}
      .hero h1{font:700 clamp(2rem,4.2vw,3.1rem)/1.15 Georgia,serif;letter-spacing:-.035em;margin:0 0 30px;color:var(--green)}
      .search{background:#fff;border:1px solid #d2d8d1;border-radius:16px;box-shadow:0 15px 40px #244b3517;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px;text-align:left}
      .search input{border:0;min-width:0;width:100%;padding:14px 10px;font:1rem Inter,ui-sans-serif,system-ui,sans-serif;color:var(--ink);background:transparent;border-radius:5px}
      .search input::placeholder{color:#6a766d}
      .search .location{border-left:1px solid var(--line);border-radius:0;padding-left:22px}
      .search button{border:0;background:var(--gold);color:var(--green-dark);padding:15px 27px;border-radius:9px;font:800 .95rem Inter,ui-sans-serif,system-ui,sans-serif;cursor:pointer}
      .search button:hover{background:var(--gold-dark)}
      a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--green);outline-offset:4px}
      header a:focus-visible,.player a:focus-visible{outline-color:var(--gold)}
      .categories{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:4px 12px;margin-top:20px}
      .categories a{color:var(--green);font-size:.9rem;text-decoration:none;padding:8px 2px;text-underline-offset:4px}
      .categories a:hover{text-decoration:underline}
      .categories span{color:#8b967f}
      .search-status{font-size:.9rem;color:var(--muted);line-height:1.5;margin:20px 0 0}
      .directory{width:100%;margin:48px auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;text-align:left}
      .card{background:#fffdf9;border:1px solid #e1e0db;border-radius:12px;padding:20px;text-decoration:none;color:var(--ink)}
      .card:hover{transform:translateY(-2px);box-shadow:0 8px 22px #244b3512}
      .card strong{font-family:Georgia,serif;font-size:1.17rem}.card p{font-size:.87rem;line-height:1.5;margin:7px 0 0;color:var(--muted)}
      .network-attribution{margin:auto 0 0;padding-top:44px;text-align:center;font-size:.78rem;line-height:1.5;color:var(--muted)}
      .player{position:fixed;bottom:0;left:0;right:0;z-index:3;height:118px;background:var(--green-dark);color:#fff;border-top:3px solid var(--gold);box-shadow:0 -8px 26px #17352626}.player-inner{width:min(1180px,calc(100% - 40px));height:100%;margin:auto;display:grid;grid-template-columns:1.45fr .75fr 1fr 1fr;align-items:center;gap:25px}.station{display:flex;align-items:center;gap:13px}.mark{width:49px;height:49px;border-radius:12px;background:var(--gold);color:var(--green);display:grid;place-items:center;font:800 1.4rem Georgia,serif}.live{color:var(--gold);font-size:.64rem;font-weight:900;letter-spacing:.12em}.station strong{font-family:Georgia,serif;font-size:1.17rem;display:block}.station small{color:#b7c5bb}.play{display:flex;align-items:center;gap:12px;text-decoration:none;color:#fff}.play i{width:46px;height:46px;border-radius:50%;background:var(--gold);display:grid;place-items:center;font-style:normal;color:var(--green);font-size:1rem}.equalizer{color:var(--gold);font-weight:800;letter-spacing:2px}.now{text-align:center;font-size:.76rem;color:#bdc9c0}.now b{display:block;color:var(--gold);letter-spacing:.12em;margin-bottom:5px}.volume{display:flex;align-items:center;gap:10px;color:#c8d3cb;font-size:.86rem}.track{height:7px;background:#6f8074;border:1px solid #a1aea4;border-radius:99px;flex:1;position:relative}.track:before{content:"";position:absolute;width:14px;height:14px;border-radius:50%;background:var(--gold);left:20%;top:50%;transform:translate(-50%,-50%)}
      @media (max-width:750px){.bar{width:calc(100% - 28px);flex-direction:column;gap:12px}header{height:auto;min-height:126px;padding:12px 0}.brand{font-size:1.95rem}nav{gap:16px;flex-wrap:wrap;justify-content:center}nav a{font-size:.82rem}.join{padding:10px 13px}body{padding-bottom:104px}main{min-height:calc(100vh - 230px);padding:40px 20px 24px}.search{padding:12px;grid-template-columns:1fr;gap:5px}.search .location{border-left:0;border-top:1px solid var(--line);padding-left:10px}.search button{width:100%;margin-top:5px}.directory{margin-top:32px}.categories{gap:2px 7px}.directory{grid-template-columns:1fr}.player{height:104px}.player-inner{grid-template-columns:1fr auto;width:calc(100% - 28px);gap:8px}.now,.volume,.equalizer{display:none}.station small{display:none}.play i{width:43px;height:43px}}
nav a[aria-current="page"]{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:7px}
.placeholder{max-width:680px}
.placeholder .coming-soon{font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:0 0 20px}
.placeholder h1{margin-bottom:22px}
.placeholder .page-description{max-width:500px;margin:0 auto;color:var(--muted);font-size:1.05rem;line-height:1.7}
.back-home{display:inline-block;margin-top:32px;color:var(--green);font-size:.9rem;text-underline-offset:4px}

.network-attribution .copyright{display:block;font-weight:600;margin-bottom:6px}

/* One focused invitation beneath the directory search. */
.listing-cta{display:block;text-decoration:none;color:var(--ink);width:min(480px,100%);margin:48px auto 0;padding:24px;background:#fffdf9;border:1px solid #e1e0db;border-radius:12px;text-align:center}
.listing-cta h2{margin:0;color:var(--green);font:700 1.3rem/1.25 Georgia,serif}
.listing-cta p{margin:10px 0 0;color:var(--muted);font-size:.9rem;line-height:1.5}
.listing-cta:hover{border-color:var(--gold);box-shadow:0 8px 22px #244b3512}
@media(max-width:750px){.listing-cta{margin-top:32px}}
