/* Koto: a warm, accessible community-radio journal. Original brand assets retained. */
:root{--bg:#f5f9ff;--text:#1d4463;--muted:#526477;--orange:#ca492b;--blue:#167da5;--line:#ccdcea;--panel:#eaf3fc}body{background:var(--bg);color:var(--text);font-size:16px}header{background:#f5f9fff5;border-bottom:1px solid var(--line);padding:15px 4%;backdrop-filter:blur(16px)}.brand{font-size:15px}.brand img{height:55px;width:60px;background:transparent}.brand small{font-size:8px;color:#526477}header nav{font-size:12px;gap:24px}header nav a[aria-current]{color:#a73820}.languages button[aria-pressed=true]{color:#a73820}.button{background:#c5482b;color:#fff9ef;border-radius:100px;padding:14px 26px;font-size:13px;box-shadow:none}.button:hover{background:#a63822;color:white}.wrap{width:min(1240px,90%)}.hero{padding-block:76px 65px;grid-template-columns:1.25fr .9fr;gap:8%}.hero h1{font:600 clamp(62px,7.2vw,105px)/1.04 Georgia,serif;letter-spacing:-5px;margin:25px 0}.hero h1 em{font-weight:400;color:#bd442b;text-shadow:none}.hero .eyebrow{color:#22678b;font-size:10px}.hero .slogan{font:17px/1.6 'Plus Jakarta Sans',sans-serif;margin:22px 0;font-weight:600}.slogan br{display:none}.slogan i{font-style:normal;color:#a73820}.hero .intro{font-size:15px;max-width:510px;line-height:1.85;color:#526477}.hero-actions{gap:22px}.hero-signoff{color:#526477;letter-spacing:2px;font-size:9px;margin-top:30px}.broadcast-line{display:none}.radio{--muted:#c4ddef;--line:#527c9c;background:linear-gradient(145deg,#22577c,#12334f);color:#ffffff;padding:27px 30px 22px;border-radius:16px;border:1px solid #437d9e;box-shadow:10px 15px 0 #c9e5f5}.radio:before{display:none}.radio-screws{color:#9fc4db}.radio-top{color:#c5dfef}.onair.online{color:#f5c190;border-color:#b4a177;background:#f5c1900a}.onair.online:before{color:#f5c190}.record{height:242px;background:radial-gradient(ellipse,#42b7eb30,transparent 68%)}.grooves{width:228px;height:228px;background:repeating-radial-gradient(#12334f 0px,#12334f 3px,#2e6d92 4px,#12334f 5px);box-shadow:6px 12px 20px #0006}.grooves img{width:140px;height:140px;box-shadow:0 0 0 5px #1d4463}.track .eyebrow{color:#f0bb8a}.track h2{font-size:25px;color:#ffffff}.track p{color:#c5dfef}.play{background:#f3b98c;color:#1d4463;box-shadow:none}.play:hover{background:#ffd2ac}.connection,.volume,.radio-bottom{color:#c5dfef}.volume output{color:#f3bd92}.volume input{accent-color:#f3bd92}.playback-lines{display:none}.record-caption{color:#c5dfef}.ticker{background:#1d4463;color:#ffffff;padding:19px 0;border:0;font-size:11px;letter-spacing:2px}.ticker b{color:#b24129}.purpose{display:grid;grid-template-columns:1.1fr 1fr 1fr 1fr;gap:32px;padding-block:64px;border-bottom:1px solid var(--line)}.purpose h2{font-size:33px}.purpose h3{font-size:16px;line-height:1.5}.purpose p{font-size:13px;color:var(--muted);line-height:1.8}.purpose-number{display:block;font:italic 19px Georgia;color:#bc4927;margin-bottom:14px}.eyebrow{color:#a9432c;font-size:10px;letter-spacing:1.8px}h2{font:500 clamp(30px,3.8vw,49px)/1.14 Georgia,serif;letter-spacing:-1.7px}h3{color:inherit}.section{padding-block:68px}.section-head{margin-bottom:20px}.text-link{color:inherit;border-color:#b24a31}.muted{color:#526477;font-size:14px}#recent{padding-block:42px;border-bottom:1px solid var(--line)}#recent h2{font-size:32px}.history article{border-top:0;background:#e8f3fc;padding:16px;border-radius:5px}.history strong{font-size:12px}.history small,.history time{color:#526477}.history img{border-radius:4px}.shows{gap:24px}.show{background:#ffffff;border:1px solid #ccdcea;border-radius:7px;box-shadow:none}.show-art{height:185px}.show-art>span{font-size:76px;font-style:italic}.show-art small{letter-spacing:2px}.art-0{background:#ffb078;color:#663621}.art-1{background:#89cceb;color:#1d4463}.art-2{background:#ee835b;color:#522f27}.art-3{background:#1d4463;color:#bce7fa}.art-4{background:#c1daf8;color:#1d4463}.art-5{background:#e3dcff;color:#434779}.show-copy{padding:25px}.show-copy h3{font-size:20px}.show-copy p{font-size:13px;line-height:1.8;color:#526477}.show details{border-top:1px solid #ccdcea;margin-top:20px;padding-top:12px}.show summary{cursor:pointer;font-size:11px;color:#526477;min-height:32px}.show details a{font-size:12px;text-decoration:underline;color:#964026}.community{background:#e3f2fe;border-block:1px solid #beddef}.community-grid{grid-template-columns:.9fr 1.1fr;gap:9%}.community-art{background:#1d4463;color:#ffffff;min-height:370px;border-radius:130px 130px 5px 5px;padding:42px;box-shadow:none}.community-orbits{opacity:.35}.community-art .big-lpr{font-size:100px;letter-spacing:-7px}.big-lpr span{color:#f0b183}.community-caption{position:relative;color:#ffffff;font:italic 27px/1.2 Georgia;margin-top:30px}.community h2{font-size:48px}.community p{line-height:1.9}.about-grid{padding-block:72px;gap:10%}.about-grid p{line-height:1.9}.participation{padding-bottom:35px}.join-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-block:1px solid var(--line);margin:30px 0 18px}.join-grid article{padding:32px}.join-grid article:first-child{padding-left:0}.join-grid article+article{border-left:1px solid var(--line)}.join-grid h3{font-size:19px}.join-grid p{font-size:14px;color:#526477;line-height:1.8}.app-section{background:#1d4463;color:#ffffff;border:0;border-radius:10px;padding:50px 55px;margin-top:30px}.app-section .eyebrow{color:#f0b78e}.app-section .muted{color:#c5dfef}.app-section .button{background:#f1b58a;color:#1d4463}.app-mark{color:#c5dfef}.app-mark img{width:150px;border-radius:12px;box-shadow:none}.app-kicker{color:#c5dfef}.app-orbit{border-color:#448eb6}.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:10%;border-bottom:1px solid var(--line)}.faq details{border-bottom:1px solid #ccdcea;padding:20px 0}.faq details:first-child{padding-top:0}.faq summary{cursor:pointer;font-weight:600;font-size:15px;line-height:1.6;padding-right:20px}.faq details p{font-size:14px;line-height:1.85;color:#526477}.contact h2{font-size:60px}.contact{padding-block:80px}.contact p{font-size:15px}.email{font-size:clamp(19px,3vw,34px)}.supporters{padding-block:30px}.supporters img{height:54px;width:170px;padding:8px;background:#fff;border-radius:4px}footer{padding-bottom:130px}.footer-top{padding-top:12px}.footer-bottom{font-size:12px}.sticky{background:#ffffffef;border-color:#ccdcea;box-shadow:0 -4px 20px #1d446310;color:#1d4463;padding-block:12px}.sticky .play{background:#c4482c;color:white}.sticky strong{font-size:13px}.sticky small{color:#526477}.sticky a{color:#a13b24;font-size:12px}#mobile{background:#f5f9ff;color:#1d4463}.menu{color:#1d4463}.small{font-size:12px}.show:hover{transform:translateY(-3px)}
@media(min-width:1500px){.hero{padding-block:88px}}@media(max-width:1100px){header nav{gap:15px}.hero{gap:5%}.hero h1{font-size:80px}.purpose{gap:22px;grid-template-columns:1fr 1fr}.hero-actions{flex-wrap:wrap}.radio{padding:25px}.community h2{font-size:40px}}@media(max-width:800px){.hero{grid-template-columns:1fr;padding-block:42px;gap:38px}.hero h1{font-size:72px;letter-spacing:-3.5px}.hero-copy{max-width:650px}.hero .intro{max-width:600px}.hero-actions{gap:20px}.radio{width:100%;max-width:540px;justify-self:center}.record{height:215px}.grooves{width:200px;height:200px}.grooves img{width:125px;height:125px}.purpose{padding-block:44px}.shows{gap:16px}.show-copy{padding:20px}.show-art{height:150px}.community-grid{grid-template-columns:1fr}.community-art{min-height:310px;max-width:470px;width:100%;margin:auto}.community h2{font-size:40px}.join-grid{grid-template-columns:1fr}.join-grid article,.join-grid article:first-child{padding:26px 0}.join-grid article+article{border-left:0;border-top:1px solid var(--line)}.faq{grid-template-columns:1fr;gap:20px}.app-section{padding:32px}.section{padding-block:46px}.contact h2{font-size:44px}.brand small{font-size:8px}#mobile{top:86px}.supporters{gap:20px}.footer-bottom{gap:20px}}
@media(max-width:480px){.hero h1{font-size:61px;letter-spacing:-3px}.hero .eyebrow{font-size:9px;letter-spacing:1.5px}.hero .slogan{font-size:14px}.hero .intro{font-size:14px}.hero-actions{align-items:flex-start;flex-direction:column;gap:16px}.purpose{grid-template-columns:1fr;gap:20px}.purpose article{border-top:1px solid var(--line);padding-top:20px}.purpose h2{margin-bottom:0}.purpose-number{float:right}.purpose p{font-size:14px}.shows{grid-template-columns:1fr}.show-art{height:175px}.show-copy h3{font-size:22px}.show-copy p{font-size:14px}.show summary{font-size:13px;padding-block:6px}.radio{padding:22px;box-shadow:6px 8px 0 #c9e5f5}.track h2{font-size:23px}.community-art{min-height:300px;padding:30px}.community h2{font-size:36px}.contact h2{font-size:40px}.sticky{gap:12px}.sticky strong{max-width:190px}.sticky a{font-size:10px}.supporters img{width:135px}.supporters .eyebrow{width:100%;text-align:center}}
/* Conversation-first broadcast identity. */
.hero h1{font-family:'Sora',sans-serif;font-weight:800;font-size:clamp(45px,5.6vw,78px);line-height:1.08;letter-spacing:-4px}.hero h1 em{font-style:normal;color:#167da5}.hero .slogan{font-size:16px}.hero{grid-template-columns:1.22fr 1fr;gap:6%}.hero-listen{background:#c5482b}.hero-actions .text-link{color:#1d4463}.record{height:245px;isolation:isolate}.grooves{width:210px;height:210px;border-radius:28px;background:#e5f5ff;transform:rotate(-5deg);animation:none!important;border:2px solid #76c9ef;box-shadow:12px 12px 0 #0b293e}.grooves img{width:176px;height:176px;border-radius:17px;box-shadow:none;background:#fff;object-fit:cover}.voice-label{position:absolute;z-index:2;top:8px;right:-4px;background:#f3b98c;color:#1d4463;font:800 15px 'Sora',sans-serif;padding:12px 20px;transform:rotate(7deg);border-radius:30px 30px 30px 3px}.record-caption{bottom:-10px}.ticker b{color:#ffb078}.ticker{font-weight:700}.community-art{border-radius:25px;transform:rotate(-2deg)}.community-art .big-lpr{font-family:'Sora',sans-serif}.purpose h2,.section h2,.app-section h2{font-family:'Sora',sans-serif;font-weight:700;letter-spacing:-1.7px;font-size:clamp(29px,3.2vw,44px)}.purpose h2{font-size:29px}.contact h2{font-size:clamp(32px,4.7vw,58px)}.conversation-prompts{background:#1d4463;color:white;border-radius:16px;padding:28px;margin-top:28px}.conversation-prompts>p:first-child{font-size:18px;font-weight:700;margin-top:0}.prompt-buttons{display:flex;gap:12px;flex-wrap:wrap}.prompt-buttons a{flex:1;min-width:190px;display:block;background:#e5f5ff;color:#1d4463;border:2px solid transparent;border-radius:12px;padding:18px;font-weight:700;font-size:14px;line-height:1.6;transition:transform .2s}.prompt-buttons a:hover{background:#ffd1ae;transform:translateY(-3px)}.conversation-prompts .small{color:#c5dfef;max-width:none;margin-bottom:0;margin-top:18px}.social-section{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.social-section p{color:#526477;line-height:1.8}.social-actions{display:grid;gap:14px}.social-card{display:flex;align-items:center;gap:20px;text-align:left;width:100%;border:1px solid #bdd9ee;background:white;color:#1d4463;border-radius:14px;padding:22px;cursor:pointer}.social-card:hover{border-color:#167da5;background:#eaf6ff}.social-card strong{display:block;font-size:20px}.social-card small{display:block;font-size:12px;margin-top:7px}.social-icon{display:grid;place-items:center;width:52px;height:52px;flex-shrink:0;border-radius:14px;background:#1d4463;color:white;font:bold 35px Arial}.social-actions p:empty{display:none}.social-actions p{margin:0;font-size:13px}#share-fallback{width:100%;padding:12px;border:1px solid #9dbbd1;border-radius:8px}.contact{border-top:1px solid #ccdcea}.button:focus-visible,.social-card:focus-visible{outline-color:#167da5}.hero-signoff{display:block!important}@media(max-width:1100px){.hero h1{font-size:59px;letter-spacing:-3px}}@media(max-width:800px){.hero{grid-template-columns:1fr}.hero h1{font-size:64px}.social-section{grid-template-columns:1fr;gap:22px}.community-art{transform:none}.hero .slogan{font-size:15px}}@media(max-width:480px){.hero h1{font-size:44px;letter-spacing:-2.2px}.hero .slogan{font-size:13px}.voice-label{font-size:12px;right:0}.conversation-prompts{padding:22px}.prompt-buttons a{min-width:100%;font-size:14px}.social-card{padding:18px}.social-card strong{font-size:18px}.hero-signoff{font-size:8px}.hero .intro{line-height:1.8}}
.hero-copy,.radio{animation:none}.hero h1 em{font-weight:800}.record-caption{font-size:7px}

/* Live video complements the audio-first homepage. */
.watch-section{scroll-margin-top:110px;border-bottom:1px solid var(--line)}
.watch-section .section-head{gap:20px;flex-wrap:wrap}.watch-section .muted{max-width:650px;line-height:1.7}
.watch-player{aspect-ratio:16/9;position:relative;overflow:hidden;border-radius:16px;background:#102c3f;margin-top:26px;isolation:isolate}
.watch-start{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;border:0;background:linear-gradient(150deg,#163e55,#10202b);color:white;cursor:pointer;padding:24px}
.watch-start:before{content:'';position:absolute;inset:0;background:url('https://i.ytimg.com/vi/W4ZdMsydsVo/hqdefault.jpg') center/cover;opacity:.38;z-index:-1}.watch-start{background:transparent}
.watch-start strong{font:700 clamp(20px,3vw,32px) 'Sora',sans-serif}.watch-start>span:last-child{font-size:14px;color:#e6eff4}.watch-play-icon{display:grid;place-items:center;width:68px;height:68px;border-radius:50%;background:#c4482c;color:white;font-size:25px;padding-left:4px}.watch-start:hover .watch-play-icon{background:#a13b24}.watch-start:focus-visible{outline:4px solid #ffb078;outline-offset:-6px}.watch-player iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.watch-note{font-size:13px;color:#526477;line-height:1.7;max-width:760px;margin-top:16px}
@media(max-width:480px){.watch-player{border-radius:10px}.watch-start{gap:10px;padding:16px}.watch-play-icon{width:48px;height:48px;font-size:19px}.watch-start>span:last-child{font-size:12px}}

/* Keep recovery controls outside the video, without covering YouTube controls. */
.watch-recovery{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:12px;font-size:14px;color:#526477;flex-wrap:wrap}
.watch-recovery[hidden],.watch-recovery button[hidden]{display:none}
.watch-recovery button{border:1px solid #167da5;background:#fff;color:#1d4463;border-radius:24px;padding:10px 18px;font:inherit;cursor:pointer;min-height:44px}
.watch-recovery button:focus-visible{outline:3px solid #167da5;outline-offset:3px}

/* Shared Firebase content; independent of the live player. */
.shared-schedule{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:24px}.schedule-card{padding:28px;border:1px solid #cddbe3;border-radius:18px;background:#fff}.schedule-card h3{margin:8px 0 14px;font-size:clamp(1.4rem,3vw,2rem)}.schedule-card p{overflow-wrap:anywhere}.schedule-time{font-weight:700;color:#a34d26}.schedule-host{font-weight:600}.shared-supporter-section{flex-wrap:wrap}.shared-supporters{display:flex;align-items:center;flex-wrap:wrap;gap:32px;flex:1}.supporter-item{display:flex;align-items:center;justify-content:center;max-width:280px;min-height:72px}.shared-supporters img{max-width:240px;max-height:95px;width:auto;height:auto;object-fit:contain}.content-retry{padding:10px 18px;border:1px solid currentColor;border-radius:24px;background:transparent;color:inherit;cursor:pointer}.content-retry[hidden]{display:none}#sponsors-sync-status:empty,#schedule-sync-status:empty{display:none}@media(max-width:600px){.shared-supporters{width:100%;flex-basis:100%;gap:24px}.shared-supporters img{max-width:200px}.schedule-card{padding:22px}}
