:root{--red:#8e150e;--red2:#6b100b;--orange:#ea850d;--yellow:#f6c14e;--cream:#fffaf2;--paper:#fff;--sand:#f6ecdc;--text:#40291f;--muted:#756556;--border:#e8dbcb;--green:#326956;--blue:#285987;--purple:#70518c;--shadow:0 3px 15px #58371d0a}*{box-sizing:border-box}body{margin:0;font:15px/1.5 system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--text);background:var(--cream)}button,input,select{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit}.layout{display:flex;min-height:100vh}.sidebar{width:248px;background:var(--red);color:#fff;flex-shrink:0;display:flex;flex-direction:column;padding:25px 15px 20px;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:12px;padding:0 10px}.sunmark{font-size:39px;color:var(--yellow);line-height:1}.brand b{display:block;font-size:21px;letter-spacing:1.5px;line-height:1.1}.brand small{letter-spacing:2.9px;font-size:11px;color:#f9dba8}.tagline{font-size:11px;letter-spacing:.5px;color:#f7ceb5;padding:2px 10px 17px;border-bottom:1px solid #ffffff30}.sidebar nav{margin-top:14px}.sidebar nav>a{display:flex;align-items:center;gap:12px;margin:4px 0;padding:11px 13px;border-radius:7px;text-decoration:none;font-weight:650;font-size:14px}.sidebar nav>a:hover,.sidebar nav>a.active{background:var(--orange);color:#251108}.subnav{margin:2px 0 12px 30px;border-left:1px solid #ffffff40;display:grid;gap:1px}.subnav a{font-size:12px;color:#ffead4;text-decoration:none;padding:6px 12px}.subnav a:hover{text-decoration:underline}.sidebar-bottom{margin-top:auto;display:grid;gap:12px;padding:10px}.mini-label{font-size:10px;letter-spacing:2px;color:#ffd79a}.discord{font-size:13px;text-decoration:none;border:1px solid #ffffff50;padding:10px;border-radius:6px}.sidebar-bottom small{font-size:11px;color:#e9bbab}.workarea{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{height:57px;background:#fff;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;padding:0 35px;color:#796658;font-size:11px;letter-spacing:1.5px;font-weight:750}.top-meta{letter-spacing:0;font-weight:500;font-size:12px}.mobile-menu{display:none}main{width:min(1190px,100%);padding:36px 42px 60px;margin:0 auto;flex:1}footer{padding:18px 42px;border-top:1px solid var(--border);color:var(--muted);display:flex;justify-content:space-between;gap:20px;font-size:12px}footer a{color:var(--red)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(27px,3vw,39px);line-height:1.18;letter-spacing:-.7px;margin-bottom:12px}h2{font-size:23px;line-height:1.25}.eyebrow{color:var(--red);font-size:11px;font-weight:800;letter-spacing:2px;text-transform:uppercase;margin-bottom:12px}.intro{font-size:16px;color:var(--muted);max-width:740px}.page-head{margin-bottom:26px}.home-hero{background:linear-gradient(115deg,#fff3d9,#fffaf2 62%);border:1px solid #efdbc1;border-radius:12px;padding:36px;margin-bottom:24px}.home-hero h1{max-width:690px}.home-hero p{max-width:700px;color:#67513d}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:37px;padding:8px 13px;background:#fff;border:1px solid #d5c8b6;border-radius:6px;text-decoration:none;font-size:13px;font-weight:700;color:#5a392b}.btn:hover{border-color:var(--orange);background:#fff8ed}.btn.primary{background:var(--red);border-color:var(--red);color:white}.btn.primary:hover{background:var(--red2)}.btn:disabled{opacity:.52;cursor:not-allowed}.statrow{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:25px 0}.stat{border:1px solid var(--border);background:#fff;border-radius:9px;padding:18px 20px}.stat b{display:block;font-size:26px;color:var(--red)}.stat small{color:var(--muted)}.section-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:28px 0 15px}.section-head h2{margin:0}.textlink{color:var(--red);font-size:13px;font-weight:700;text-decoration:none}.textlink:hover{text-decoration:underline}.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.tile{background:white;border:1px solid var(--border);border-radius:9px;padding:20px;text-decoration:none;box-shadow:var(--shadow)}.tile:hover{border-color:var(--orange)}.tile b{font-size:16px}.tile p{margin:8px 0 0;font-size:13px;color:var(--muted)}.searchbox{display:flex;gap:10px;align-items:center;background:white;border:1px solid #cfbda8;border-radius:8px;padding:0 14px;min-height:49px}.searchbox input{border:0;outline:0;width:100%;background:transparent;font-size:15px}.searchbox:focus-within{outline:2px solid var(--orange)}.filters{display:flex;gap:9px;flex-wrap:wrap;margin:13px 0}.filters select{padding:9px 26px 9px 11px;border:1px solid var(--border);border-radius:6px;background:#fff;color:var(--text);max-width:100%}.filter-title{font-weight:700;color:var(--muted);font-size:12px;padding-top:9px}.resultbar{margin:16px 0;display:flex;align-items:center;justify-content:space-between;gap:15px;color:var(--muted);font-size:13px}.reset{background:none;border:none;color:var(--red);font-weight:750;text-decoration:underline}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.card{border:1px solid var(--border);border-radius:9px;overflow:hidden;background:#fff;box-shadow:var(--shadow);display:flex;flex-direction:column}.photo{height:155px;background:linear-gradient(130deg,#f3e5ce,#e6ddce);position:relative;display:grid;place-items:center;overflow:hidden}.photo img{width:100%;height:100%;object-fit:cover}.photo .missing{font-size:12px;text-align:center;color:#887260;padding:15px}.card-body{padding:16px;display:flex;flex-direction:column;gap:8px;flex:1}.card h3{font-size:17px;margin:0;line-height:1.25}.card p{font-size:13px;color:var(--muted);margin:0;flex:1}.labels{display:flex;gap:5px;flex-wrap:wrap}.label{font-size:10px;line-height:1.45;padding:3px 7px;border-radius:4px;font-weight:800;letter-spacing:.2px;border:1px solid transparent;background:#f2e6d6;color:#69472f}.label.destination{background:#e4f0e6;color:#22573d}.label.history{background:#efe8f7;color:#5d3978}.label.update{background:#fff0db;color:#90540a}.label.music{background:#e4edf8;color:#265586}.label.region{background:#f5ece2;color:#785133}.label.topic{background:#f7f6f2;border-color:#e7dfd1;color:#5f6157}.card-actions{display:flex;gap:7px;margin-top:6px;flex-wrap:wrap}.card-actions .btn{font-size:12px;min-height:33px;padding:6px 10px}.note{background:#fff4db;border:1px solid #f1d8a8;border-radius:8px;padding:13px 16px;color:#75552b;font-size:13px;margin:18px 0}.empty{background:#fff;border:1px dashed #d1bfa7;border-radius:8px;padding:30px;text-align:center;color:var(--muted)}.list-item{background:#fff;border:1px solid var(--border);border-radius:8px;padding:20px;margin:12px 0}.list-item h3{margin:8px 0}.list-item p{color:var(--muted);margin:8px 0}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:24px}.stream-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.stream{background:#fff;border:1px solid var(--border);border-radius:9px;padding:18px}.stream h3{font-size:16px;margin:0 0 5px}.stream p{font-size:13px;color:var(--muted);margin:0 0 13px}.status{font-size:11px;color:#976018}.audio-bar{position:sticky;bottom:12px;background:#fff;box-shadow:0 5px 25px #39201020;border:1px solid var(--border);padding:12px;border-radius:8px;margin-top:18px;display:none}.audio-bar.visible{display:block}.detail{border:1px solid var(--border);border-radius:12px;box-shadow:0 20px 70px #28150a66;padding:28px;max-width:740px;width:calc(100% - 25px);max-height:88vh;color:var(--text)}.detail::backdrop{background:#24170ec0}.detail h2{font-size:29px;margin:8px 0}.detail .detail-photo{height:260px;background:#f3e7d7;display:grid;place-items:center;color:var(--muted);margin:16px 0;border-radius:7px;overflow:hidden}.detail-photo img{width:100%;height:100%;object-fit:cover}.detail .close{float:right;border:none;background:#f6eee4;border-radius:5px;padding:7px 11px}.kv{display:grid;grid-template-columns:125px 1fr;gap:8px;font-size:13px;margin:14px 0}.kv dt{font-weight:800}.kv dd{margin:0;overflow-wrap:anywhere}.copyrow{display:flex;gap:7px;flex-wrap:wrap;align-items:center}.copyrow code{background:#f7edde;padding:8px;border-radius:5px;font-size:12px;overflow-wrap:anywhere}.loading{padding:50px;color:var(--muted)}@media(max-width:1100px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tiles{grid-template-columns:repeat(2,1fr)}main{padding:30px 26px}}@media(max-width:750px){.sidebar{position:fixed;left:-270px;z-index:20;transition:left .2s}.sidebar.open{left:0}.topbar{padding:0 18px}.mobile-menu{display:block;border:0;background:none;font-size:22px;color:var(--red)}.top-title{font-size:10px}.top-meta{display:none}main{padding:25px 16px}footer{padding:17px;flex-wrap:wrap}.grid,.stream-grid,.two-col{grid-template-columns:1fr}.tiles{grid-template-columns:1fr}.statrow{grid-template-columns:repeat(3,1fr);gap:7px}.stat{padding:12px}.stat b{font-size:19px}.home-hero{padding:23px}.detail{padding:18px}.detail .detail-photo{height:180px}.kv{grid-template-columns:95px 1fr}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* V0.4 — expandable OpenSim regions; content comes from destinations.json */
.sidebar{overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#ffffff55 transparent}
.region-group{min-width:0}
.region-row{display:flex;align-items:center;min-width:0}
.subnav .region-link{flex:1;min-width:0;padding:7px 2px 7px 12px;overflow-wrap:anywhere}
.region-toggle{flex:0 0 28px;min-height:29px;padding:0;border:0;border-radius:5px;background:transparent;color:#ffe4c4;font-size:17px;cursor:pointer}
.region-toggle:hover,.region-toggle:focus-visible{background:#ffffff22;outline-offset:2px}
.region-places{padding:0 0 6px 12px;margin-left:12px;border-left:1px solid #ffffff45}
.region-places[hidden]{display:none!important}
.region-places a{display:block;font-size:11.5px;padding:5px 5px 5px 9px;line-height:1.35;overflow-wrap:anywhere}
.region-places a:hover{color:#fff;text-decoration:underline}

/* V0.5 - One assigned music stream on cards and destination detail panels */
.destination-music{display:flex;align-items:baseline;gap:5px;flex-wrap:wrap;color:#685039;font-size:12px;border-top:1px solid var(--border);padding-top:9px;margin-top:3px}
.destination-music strong{color:var(--red);font-size:12px;letter-spacing:.2px}
.destination-music.expanded{border-top:none;padding-top:0;margin-top:0;font-size:13px}
.destination-music.expanded strong{font-size:13px}
.destination-music .music-description{flex-basis:100%;color:var(--muted);font-size:12px}

/* V0.6 — branding, footer and navigable music labels */
.brand{padding:0 4px;gap:9px}
.brand-logo{width:95px;max-width:48%;height:auto;object-fit:contain;flex:0 0 auto}
.brand-wordmark{min-width:0}
.brand-wordmark b{font-size:18px;letter-spacing:.8px}
.brand-wordmark small{letter-spacing:2px}
.sidebar-bottom{gap:8px}
.hero-quote{font-family:Georgia,serif;font-style:italic;font-size:clamp(17px,1.7vw,23px);color:var(--red)!important;margin-bottom:16px!important;max-width:750px}
.footer-lines{display:flex;flex-direction:column;gap:5px}
.footer-motto{font-size:12px;color:#755442}
.stream-link{font-weight:800;color:var(--red);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.stream-link:hover,.stream-link:focus-visible{color:#ba5a0b}
.stream-selected{border:2px solid var(--orange);box-shadow:0 0 0 3px #ea850d24}
.stream-selected:before{content:'YOUR SELECTED STATION';display:block;font-size:10px;letter-spacing:1px;color:var(--red);font-weight:800;margin-bottom:8px}
@media(max-width:750px){.brand-logo{width:90px}}

/* V0.6.1: white navigation sidebar, logo-only branding */
.sidebar{background:#fff;color:var(--text);border-right:1px solid var(--border)}
.brand{padding:8px 12px 18px;justify-content:center;border-bottom:1px solid var(--border)}
.brand>a{display:block;text-align:center;width:100%}
.brand-logo{display:block;width:min(198px,100%);max-width:100%;margin:0 auto;height:auto}
.sidebar nav>a{color:var(--red)}
.sidebar nav>a:hover,.sidebar nav>a.active{background:#fff0da;color:var(--red)}
.subnav{border-left-color:#dfcfc0}
.subnav a{color:#5b4438}
.subnav a:hover{color:var(--red)}
.region-places{border-left-color:#dfcfc0}
.region-toggle{color:var(--red)}
.region-toggle:hover,.region-toggle:focus-visible{background:#fff1e0}
.mini-label{color:#7d685b}
.sidebar-bottom{border-top:1px solid var(--border)}
.sidebar-bottom small{color:#806b5e}
.sidebar-bottom .discord{border-color:#dbcaba;color:var(--red);background:#fff}
.sidebar-bottom .discord:hover{background:#fff5e6}
.top-discord{letter-spacing:0;font-size:13px;font-weight:700;color:var(--red);text-decoration:none}
.top-discord:hover{text-decoration:underline}
.contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.contact-grid .list-item{margin:0}
@media(max-width:750px){.contact-grid{grid-template-columns:1fr}}

/* V0.6.2 — About-only sections */
.about-intro{background:#fffaf1;border:1px solid var(--border);border-radius:14px;padding:clamp(20px,3vw,34px);margin:14px 0 30px}
.about-intro h2{margin:0 0 10px;color:var(--red)}
.about-intro p{max-width:76ch;line-height:1.65}
.about-avatars{display:grid;grid-template-columns:repeat(2,minmax(0,210px));gap:20px;margin:22px 0}
.about-avatars figure{margin:0;background:#fff;border:1px solid var(--border);border-radius:12px;overflow:hidden}
.about-avatars img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover}
.about-avatars figcaption{font-weight:700;color:var(--red);font-size:13px;padding:10px}
.about-note{font-style:italic;color:#765c4b}
.about-section-lead{margin:-2px 0 20px;color:#715b4d;line-height:1.55}
.archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 30px}
.archive-card{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin:0}
.archive-card h3{margin:0}.archive-card p{flex:1;line-height:1.5;margin:0 0 12px}.archive-card small{color:#735b4e}
.archive-icon{font-size:26px}.archive-link{margin-top:auto}
@media(max-width:1000px){.archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.archive-grid,.about-avatars{grid-template-columns:1fr}.about-avatars figure{max-width:240px}}

/* V0.6.3: music search results behave as whole-card links */
.music-search-result { display:block; color:inherit; text-decoration:none; cursor:pointer; }
.music-search-result:hover, .music-search-result:focus-visible { border-color:#9f502a; background:#fff9ee; }
.music-search-result:focus-visible { outline:3px solid #9f502a; outline-offset:3px; }

/* V0.6.4.2 — About page: Flickr overview and embedded interviews */
.flickr-showcase{display:block;max-width:940px;margin:0 0 34px;background:#fff;border:1px solid var(--border);border-radius:13px;overflow:hidden;color:var(--red);text-decoration:none;font-weight:700}
.flickr-showcase img{width:100%;height:auto;display:block}
/* Show only the Flickr album covers, excluding the heading embedded in the screenshot.
   Source image is 922×598; gallery starts at y=155. Keep source asset untouched. */
.flickr-showcase .flickr-gallery-preview{width:100%;aspect-ratio:922 / 443;background-image:url("assets/about/sunvibes-flickr-albums.png");background-size:100% auto;background-position:center bottom;background-repeat:no-repeat}
.flickr-showcase span{display:block;padding:12px 17px}
.flickr-showcase:hover,.flickr-showcase:focus-visible{border-color:var(--red);box-shadow:0 3px 13px #3b201217}
.about-video-list{display:grid;gap:18px;margin-bottom:30px}
.about-video{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,1fr);gap:24px;align-items:center;margin:0}
.about-video h3{margin:7px 0 12px;font-size:22px;color:var(--red)}
.about-video p{line-height:1.65}.about-video small{color:#765c4b}
.about-video-embed{position:relative;aspect-ratio:16/9;border-radius:10px;overflow:hidden;background:#1b1715}
.about-video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
@media(max-width:760px){.about-video{grid-template-columns:1fr;gap:14px}.about-video-embed{order:0}}


/* V0.6.5 — Sunvibes brand framing, journal cards and four external links */
body{background:#fff9f0}
.sidebar{padding-bottom:18px}
.sidebar nav>a.active{background:#ffb94d;color:#65160b;box-shadow:inset 3px 0 0 #d16b06}
.sidebar nav>a:hover{background:#fff0dc;color:#76160e}
.sidebar-bottom{padding:15px 9px 4px;gap:9px}
.sidebar-flourish{color:#d7790b;text-align:center;font-size:20px;letter-spacing:5px}
.sidebar-motto{margin:0;text-align:center;color:#795038;font-size:12px;font-style:italic;line-height:1.55}
.sidebar-bottom .mini-label{color:#9b4d19;margin-top:9px}
.social-links{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.social-links a{font-size:11.5px;line-height:1.25;padding:9px 7px;background:#fff8ee;border:1px solid #e8d4bf;border-radius:7px;color:#791b13;text-decoration:none;font-weight:700;overflow-wrap:anywhere}
.social-links a:hover,.social-links a:focus-visible{background:#ffeacf;border-color:#d98923}
.sunvibes-banner{background:linear-gradient(100deg,#7c1710 0%,#a72713 46%,#e78922 100%);color:#fff2da;border-bottom:3px solid #d6a048;padding:12px 36px;font-family:Georgia,serif;font-size:17px;font-style:italic;letter-spacing:.2px}
.topbar{background:#fffaf3}
.page-head{border-bottom:2px solid #efc28c;padding-bottom:17px}
.news-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:24px}
.news-tools .searchbox{flex:1 1 280px;margin:0}
.news-tools .filters{margin:0}
.news-feed{display:grid;gap:16px;margin:12px 0 26px}
.news-card{display:grid;grid-template-columns:minmax(190px,33%) minmax(0,1fr);min-height:205px;border:1px solid #e8d8c6;border-radius:12px;background:#fffefb;overflow:hidden;box-shadow:0 4px 14px #582a1810}
.news-card-art{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:205px;position:relative;background:linear-gradient(135deg,#7f190e,#b62f15 57%,#dc8b2c);color:#fff6d9;overflow:hidden}
.news-card-art img{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover}
.news-art-mark{font-size:70px;line-height:1}.news-art-label{font-weight:800;letter-spacing:3px;font-size:12px}
.news-card-copy{padding:24px 26px;display:flex;flex-direction:column;align-items:flex-start}
.news-card-copy h2{font-size:23px;color:#721a11;margin:10px 0 5px}
.news-card-copy p{line-height:1.6;color:#6a5546;margin:4px 0 10px}
.news-card-meta{display:flex;align-items:center;gap:7px;flex-wrap:wrap;font-size:12px;color:#836850}
.news-chip{background:#fff1db;color:#95501b;font-weight:700;border:1px solid #f1d7b7;border-radius:5px;padding:3px 8px;font-size:10px;text-transform:uppercase;letter-spacing:.4px}
.news-kind{background:#8b2015;color:white;border-color:#8b2015}
.news-card-meta time{margin-left:4px}
.news-card-actions{margin-top:auto;padding-top:10px}
footer{background:#fff3e3;border-top:3px solid #db861c;padding:22px 35px;align-items:center}
.footer-lines strong{color:#7f2215;font-size:14px}.footer-nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:9px 17px;max-width:440px}
.footer-nav a{font-weight:700;color:#823322;text-decoration:none}.footer-nav a:hover{text-decoration:underline}
@media(max-width:760px){.sunvibes-banner{padding:11px 18px;font-size:14px}.news-card{grid-template-columns:1fr}.news-card-art{min-height:150px}.news-card-copy{padding:18px}.footer-nav{justify-content:flex-start}}

/* V0.6.6: soft active navigation and homepage introduction */
.sidebar nav>a.active{background:#fff0da;color:var(--red);box-shadow:inset 3px 0 0 #d16b06}
.home-about{background:#fffaf1;border:1px solid var(--border);border-radius:12px;padding:clamp(22px,3vw,34px);margin:0 0 24px}
.home-about h2{color:var(--red);margin-bottom:16px}
.home-about p{max-width:75ch;color:#67513d;line-height:1.65;margin:0 0 12px}
.home-about .home-about-spirit{font-weight:750;color:var(--red);margin:0}

/* V0.6.8 — music station cards matching the Sites five-area player */
.music-station-list{display:grid;gap:10px;margin:24px 0}
.music-station{display:flex;align-items:center;gap:16px;min-height:86px;padding:11px 16px;background:#fffaf5;border:1px solid #e9d7c5;border-radius:11px}
.music-station-image{width:64px;height:64px;border-radius:7px;object-fit:cover;flex-shrink:0}
.music-station-info{flex:1;min-width:0}
.music-station-info h3{font-size:15px;font-weight:600;color:#512519;margin:0 0 4px}
.music-station-info p{font-size:13px;color:#76503b;margin:0}
.music-station-status{display:block;min-height:16px;margin-top:5px;font-size:11px;color:#a34010}
.music-station-controls{display:flex;align-items:center;gap:18px;flex-shrink:0}
.music-station-play{background:#990f06;color:white;border:0;border-radius:25px;font-weight:700;padding:12px 18px;min-width:102px;cursor:pointer}
.music-station-play.is-playing{background:#e98200;color:white}
.music-station-play:hover{filter:brightness(1.09)}
.music-station-volume{display:flex;align-items:center;gap:6px;color:#a23c10}
.music-station-volume input{width:95px;accent-color:#aa3a14;cursor:pointer}
.music-station-copy{border:1px solid #e9d2bc;background:#fffaf5;color:#912610;border-radius:6px;padding:11px 14px;cursor:pointer;min-width:94px}
.music-station-copy:hover{background:#fff1e0}
.music-station-note{font-size:12px;color:#7b533d;margin:15px 0 28px}
@media(max-width:760px){.music-station{flex-wrap:wrap;gap:10px}.music-station-controls{width:100%;justify-content:space-between;gap:8px;padding-left:0}.music-station-volume input{width:75px}}
@media(max-width:430px){.music-station-controls{flex-wrap:wrap}.music-station-copy{margin-left:auto}}

/* V0.6.9: homepage panorama and compact destination audio */
.home-video-banner{width:100%;overflow:hidden;border-radius:11px;margin:0 0 20px;background:#f1e3cd;border:1px solid #ead6b6}
.home-video-banner video{display:block;width:100%;height:auto;aspect-ratio:1492/434;object-fit:cover}
.destination-mini-player{display:flex;gap:11px;align-items:center;flex-wrap:wrap;flex-basis:100%;padding-top:8px}
.mini-play{border:1px solid var(--red);background:var(--red);color:#fff;border-radius:6px;padding:7px 13px;font-weight:750;font-size:12px;min-width:79px}
.mini-play.is-playing{background:var(--orange);border-color:var(--orange);color:#27150a}
.mini-volume-label{display:flex;gap:6px;align-items:center;font-size:13px}
.mini-volume-label input{width:120px;max-width:28vw;accent-color:var(--red)}
.mini-status{color:var(--muted);font-size:12px}
@media(max-width:750px){.home-video-banner{margin-bottom:16px}.home-video-banner video{min-height:120px;object-fit:cover}}

/* V0.6.9.1: make destination-linked station selection visible */
.music-station-selected{border:2px solid #dd790d!important;background:#fff1dc!important;box-shadow:0 0 0 3px rgba(221,121,13,.10);position:relative;flex-wrap:wrap}
.music-selected-label{width:100%;color:#8c300c;font-size:12px;font-weight:700;letter-spacing:.01em;margin-bottom:2px}
.music-station-selected .music-station-info h3{color:#8d1b0a}
.music-station-selected .music-station-play:not(.is-playing){outline:2px solid #dd790d;outline-offset:2px}

/* V0.6.9.3: curated six-location homepage slideshow */
.destination-slideshow{position:relative;margin:0 0 20px;border:1px solid #ead6b6;border-radius:11px;overflow:hidden;background:#37281f;isolation:isolate}
.slideshow-images{position:relative;aspect-ratio:1492/475;min-height:210px;overflow:hidden}
.slideshow-frame{position:absolute;inset:0;opacity:0;transition:opacity 1.25s ease;pointer-events:none}
.slideshow-frame.active{opacity:1;z-index:1}
.slideshow-frame img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center;transform:scale(1.015)}
.slideshow-bottom{position:absolute;bottom:0;left:0;right:0;z-index:2;display:flex;align-items:end;justify-content:space-between;gap:16px;padding:28px 20px 14px;color:white;background:linear-gradient(transparent,#1b1109c9)}
.slideshow-caption{display:flex;flex-direction:column;min-width:0;text-shadow:0 1px 4px #111}
.slideshow-kicker{font-size:10px;letter-spacing:1.5px;font-weight:800;color:#ffdfaa}
.slideshow-destination{font-size:clamp(17px,2vw,24px);font-weight:800;text-decoration:none;color:#fff;line-height:1.25}
.slideshow-destination:hover,.slideshow-destination:focus-visible{text-decoration:underline}
.slideshow-world{font-size:12px;color:#ffebd3}
.slideshow-controls{display:flex;align-items:center;gap:8px;flex-shrink:0}
.slide-arrow,.slide-toggle{border:1px solid #ffffffa1;background:#291c17b3;color:white;border-radius:50%;width:34px;height:34px;display:grid;place-items:center;font-size:24px;line-height:1}
.slide-toggle{font-size:13px}
.slide-arrow:hover,.slide-toggle:hover{background:#a44217}
.slide-dots{display:flex;gap:6px;align-items:center}
.slide-dot{width:10px;height:10px;padding:0;border:1px solid #fff;background:#ffffff75;border-radius:50%}
.slide-dot.active{background:#ffb342;border-color:#ffb342}
@media(max-width:650px){.slideshow-images{min-height:240px;aspect-ratio:4/3}.slideshow-bottom{padding:40px 12px 11px;gap:8px;align-items:end;flex-wrap:wrap}.slideshow-controls{gap:5px}.slide-arrow,.slide-toggle{width:30px;height:30px}.slide-dot{width:9px;height:9px}}
@media(prefers-reduced-motion:reduce){.slideshow-frame{transition:none}}

/* Header simplification: no cream top bar; mobile menu stays in the gradient banner. */
.sunvibes-banner{display:flex;align-items:center;gap:12px}
@media(max-width:750px){.sunvibes-banner .mobile-menu{display:inline-flex;align-items:center;justify-content:center;color:#fff7e7;background:transparent;border:1px solid #ffffff70;border-radius:5px;min-width:36px;min-height:34px;flex-shrink:0}}

/* Visual Editor v0.5 — About introduction and two avatar cards */
.about-intro{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:clamp(18px,3vw,34px);align-items:start}
.about-intro-copy{min-width:0}
.about-intro-copy p{max-width:76ch}
.about-avatars{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;margin:0}
.about-avatars figure{min-width:0}
@media(max-width:760px){.about-intro{grid-template-columns:minmax(0,1fr)}.about-avatars{grid-template-columns:repeat(2,minmax(0,210px));gap:14px}}
@media(max-width:480px){.about-avatars{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* V0.6.9.5 — two-way navigation to the Sunvibes Media Archive */
.social-links .media-archive-sidebar-link{grid-column:1 / -1;text-align:center;background:#fff0dc;border-color:#dfa96e}
.social-links .media-archive-sidebar-link:hover,.social-links .media-archive-sidebar-link:focus-visible{background:#ffe0ad;border-color:#d98923}
.sunvibes-banner [data-edit="banner"]{min-width:0}
.media-archive-header-link{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;padding:8px 12px;border:1px solid #ffdfb8;border-radius:5px;color:#fffaf2;background:#77190b70;font:700 12px/1.3 system-ui,-apple-system,"Segoe UI",sans-serif;font-style:normal;letter-spacing:0;text-decoration:none;text-align:center}
.media-archive-header-link:hover,.media-archive-header-link:focus-visible{background:#72150e;border-color:#fff4df}
@media(max-width:750px){.media-archive-header-link{font-size:11px;padding:7px 8px}.sunvibes-banner [data-edit="banner"]{font-size:13px;line-height:1.3}}
@media(max-width:420px){.sunvibes-banner{gap:8px}.sunvibes-banner [data-edit="banner"]{font-size:11px}.media-archive-header-link{font-size:10px;max-width:120px}}

/* 22 October 2026: Sunvibes Thank You page */
.thank-you-page{max-width:1000px;margin:0 auto}
.thank-you-page h1{margin-bottom:22px}
.thank-you-art{display:block;width:100%;height:auto;max-width:100%;border-radius:12px;border:1px solid #edd7b8;box-shadow:var(--shadow)}
.thank-you-message{max-width:790px;margin:26px auto 0;background:#fff;border:1px solid var(--border);border-radius:10px;padding:26px 32px;font-size:16px;line-height:1.75;color:var(--text)}
.thank-you-message p:last-child{margin-bottom:0}
@media(max-width:750px){.thank-you-page h1{margin-bottom:16px}.thank-you-message{padding:19px 20px;font-size:15px;margin-top:19px}}
