:root{--gold:#8B7A2B;--gold-light:#A69032;--bg:#F5F3ED;--bg-alt:#EDE9DF;--bg-card:#FFF;--bg-raised:#F0EDE5;--text-primary:#1C1A14;--text-body:#3D3A30;--text-secondary:#5C5845;--text-tertiary:#7A7560;--border:rgba(139,122,43,.18);--player-bg:rgba(245,243,237,.96);--overlay:rgba(245,243,237,.9)}
.dark{--bg:#080806;--bg-alt:#0a0a08;--bg-card:#0d0d0a;--bg-raised:#12120e;--text-primary:#F0EBD8;--text-body:#D4CEBC;--text-secondary:#A89E84;--text-tertiary:#7A7260;--border:rgba(139,122,43,.14);--player-bg:rgba(8,8,6,.96);--overlay:rgba(8,8,6,.9)}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-tap-highlight-color:transparent}
body{font-family:'Cormorant Garamond',serif;background:var(--bg);color:var(--text-body);overflow-x:hidden}
@keyframes wf1{from{height:4px}to{height:16px}}@keyframes wf2{from{height:4px}to{height:13px}}@keyframes wf3{from{height:4px}to{height:11px}}@keyframes wf4{from{height:4px}to{height:15px}}@keyframes wf5{from{height:4px}to{height:10px}}
@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes pulseGlow{0%,100%{opacity:.4}50%{opacity:1}}
.fade-up{animation:fadeUp .6s ease-out both}
.live-dot{animation:pulseGlow 2s ease-in-out infinite}
.wb{width:3px;border-radius:3px;background:linear-gradient(to top,var(--gold),var(--gold-light))}
.wb.p.b1{animation:wf1 .4s ease-in-out infinite alternate}.wb.p.b2{animation:wf2 .48s ease-in-out infinite alternate .08s}.wb.p.b3{animation:wf3 .36s ease-in-out infinite alternate .16s}.wb.p.b4{animation:wf4 .44s ease-in-out infinite alternate .24s}.wb.p.b5{animation:wf5 .5s ease-in-out infinite alternate .32s}
.progress-fill{background:linear-gradient(90deg,var(--gold),var(--gold-light));transition:width .15s linear}
.section{display:none}.section.visible{display:block}
.hero-viz{position:absolute;inset:0;overflow:hidden;pointer-events:none}
/* Roku-style standby: a skyline silhouette at the bottom, the BPM canvas
   shrunk to the top portion so it doesn't cover it, a billboard panel
   sitting ON the skyline with the current cover, and an ad-truck overlay
   that drives across periodically (see assets/ads.js). */
.bpm-canvas-wrap{position:absolute;top:0;left:0;right:0;height:80%;z-index:2;pointer-events:none}
#bpmCanvas{position:absolute;inset:0;width:100%;height:100%}
/* Dense skyscraper tile (~30 buildings, varied widths, with antennas and
   setbacks). Left/right edges meet at y=52 so background-repeat tiles it
   seamlessly. When `body.is-playing` is true the skyline drifts slowly to
   the left — Roku-style "audio is on" cue. background-position animation
   is cheap (one repaint scroll, no DOM, no extra requests). */
.hero-skyline{position:absolute;left:0;right:0;bottom:0;height:26%;min-height:72px;z-index:1;pointer-events:none;opacity:.34;background-image:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 100' preserveAspectRatio='none'%3E%3Cpath d='M 0,100 L 0,82 L 22,82 L 22,70 L 38,70 L 38,80 L 52,80 L 52,55 L 60,55 L 60,48 L 64,48 L 64,40 L 66,40 L 66,10 L 68,10 L 68,40 L 70,40 L 70,48 L 74,48 L 74,55 L 82,55 L 82,75 L 95,75 L 95,60 L 108,60 L 108,78 L 124,78 L 124,52 L 136,52 L 136,68 L 152,68 L 152,80 L 168,80 L 168,42 L 178,42 L 180,42 L 180,28 L 188,28 L 188,42 L 192,42 L 192,60 L 205,60 L 205,72 L 220,72 L 220,55 L 235,55 L 235,68 L 250,68 L 250,38 L 265,38 L 265,52 L 278,52 L 278,72 L 292,72 L 292,58 L 308,58 L 308,75 L 322,75 L 322,55 L 326,55 L 326,42 L 330,42 L 330,28 L 333,28 L 333,16 L 336,16 L 336,8 L 338,8 L 338,4 L 339,4 L 339,2 L 340,2 L 340,4 L 341,4 L 341,8 L 343,8 L 343,16 L 346,16 L 346,28 L 349,28 L 349,42 L 352,42 L 352,55 L 356,55 L 356,75 L 370,75 L 370,55 L 386,55 L 386,72 L 402,72 L 402,48 L 418,48 L 418,68 L 432,68 L 432,80 L 446,80 L 446,72 L 455,72 L 455,100 L 575,100 L 575,72 L 588,72 L 588,58 L 602,58 L 602,72 L 618,72 L 618,48 L 634,48 L 634,68 L 650,68 L 650,42 L 662,42 L 663,42 L 663,28 L 666,28 L 666,42 L 668,42 L 668,60 L 685,60 L 685,75 L 700,75 L 700,55 L 712,55 L 712,42 L 716,42 L 716,36 L 718,36 L 718,20 L 720,20 L 720,36 L 722,36 L 722,42 L 728,42 L 728,55 L 740,55 L 740,78 L 758,78 L 758,65 L 774,65 L 774,80 L 790,80 L 790,82 L 812,82 L 812,68 L 828,68 L 828,82 L 842,82 L 842,42 L 856,42 L 858,42 L 858,28 L 864,28 L 864,42 L 866,42 L 866,58 L 880,58 L 880,72 L 894,72 L 894,52 L 900,52 L 900,46 L 902,46 L 902,38 L 904,38 L 904,16 L 906,16 L 906,38 L 908,38 L 908,46 L 910,46 L 910,52 L 916,52 L 916,75 L 930,75 L 930,60 L 946,60 L 946,38 L 960,38 L 960,52 L 974,52 L 974,75 L 990,75 L 990,55 L 1006,55 L 1006,78 L 1022,78 L 1022,50 L 1038,50 L 1038,68 L 1054,68 L 1054,80 L 1068,80 L 1068,42 L 1078,42 L 1080,42 L 1080,28 L 1082,28 L 1082,16 L 1084,16 L 1084,28 L 1086,28 L 1086,16 L 1088,16 L 1088,28 L 1090,28 L 1090,42 L 1100,42 L 1100,55 L 1114,55 L 1114,72 L 1128,72 L 1128,58 L 1144,58 L 1144,38 L 1152,38 L 1152,25 L 1156,25 L 1156,10 L 1158,10 L 1158,25 L 1160,25 L 1160,38 L 1166,38 L 1166,55 L 1180,55 L 1180,75 L 1196,75 L 1196,60 L 1212,60 L 1212,72 L 1226,72 L 1226,50 L 1240,50 L 1240,68 L 1254,68 L 1254,82 L 1268,82 L 1268,55 L 1274,55 L 1274,45 L 1278,45 L 1278,35 L 1282,35 L 1282,24 L 1284,24 L 1284,16 L 1286,16 L 1286,8 L 1287,8 L 1287,2 L 1288,2 L 1288,8 L 1289,8 L 1289,16 L 1291,16 L 1291,24 L 1293,24 L 1293,35 L 1297,35 L 1297,45 L 1301,45 L 1301,55 L 1306,55 L 1306,75 L 1322,75 L 1322,52 L 1338,52 L 1338,68 L 1352,68 L 1352,80 L 1366,80 L 1366,42 L 1376,42 L 1376,28 L 1378,28 L 1378,16 L 1380,16 L 1380,28 L 1382,28 L 1382,42 L 1390,42 L 1390,55 L 1404,55 L 1404,72 L 1418,72 L 1418,58 L 1434,58 L 1434,75 L 1450,75 L 1450,48 L 1466,48 L 1466,68 L 1468,68 L 1468,58 L 1474,58 L 1474,46 L 1480,46 L 1480,36 L 1486,36 L 1486,55 L 1500,55 L 1500,72 L 1514,72 L 1514,58 L 1530,58 L 1530,42 L 1546,42 L 1546,28 L 1550,28 L 1550,42 L 1552,42 L 1552,28 L 1556,28 L 1556,42 L 1560,42 L 1560,55 L 1574,55 L 1574,72 L 1588,72 L 1588,82 L 1600,82 L 1600,100 Z' fill='%238B7A2B'/%3E%3Crect x='455' y='66' width='120' height='3' fill='%238B7A2B'/%3E%3Cpath d='M 465,66 L 465,16 L 467,12 L 468,12 L 468,6 L 470,6 L 470,12 L 471,12 L 473,16 L 473,66 Z' fill='%238B7A2B'/%3E%3Cpath d='M 557,66 L 557,16 L 559,12 L 560,12 L 560,6 L 562,6 L 562,12 L 563,12 L 565,16 L 565,66 Z' fill='%238B7A2B'/%3E%3Cpath d='M 469,12 Q 515,72 561,12' fill='none' stroke='%238B7A2B' stroke-width='1.4'/%3E%3Cline x1='480' y1='25' x2='480' y2='66' stroke='%238B7A2B' stroke-width='0.9'/%3E%3Cline x1='495' y1='38' x2='495' y2='66' stroke='%238B7A2B' stroke-width='0.9'/%3E%3Cline x1='510' y1='48' x2='510' y2='66' stroke='%238B7A2B' stroke-width='0.9'/%3E%3Cline x1='520' y1='50' x2='520' y2='66' stroke='%238B7A2B' stroke-width='0.9'/%3E%3Cline x1='535' y1='47' x2='535' y2='66' stroke='%238B7A2B' stroke-width='0.9'/%3E%3Cline x1='550' y1='28' x2='550' y2='66' stroke='%238B7A2B' stroke-width='0.9'/%3E%3Cpath d='M 458,85 q 6,-2.5 12,0 t 12,0 t 12,0 t 12,0 t 12,0 t 12,0 t 12,0 t 12,0 t 12,0 t 12,0' fill='none' stroke='%238B7A2B' stroke-width='1' opacity='0.6'/%3E%3Cpath d='M 458,92 q 6,-2 12,0 t 12,0 t 12,0 t 12,0 t 12,0 t 12,0 t 12,0 t 12,0 t 12,0 t 12,0' fill='none' stroke='%238B7A2B' stroke-width='0.8' opacity='0.5'/%3E%3C/svg%3E");background-repeat:repeat-x;background-size:1600px 100%;background-position:0 bottom;animation:skylineScroll 180s linear infinite;animation-play-state:paused;will-change:background-position}
body.is-playing .hero-skyline{animation-play-state:running}
@keyframes skylineScroll{from{background-position:0 bottom}to{background-position:-1600px bottom}}
.dark .hero-skyline{opacity:.38}
/* Roku-style neon billboard sitting between buildings — shows the current
   track. Two-instance marquee: the wrapper translates -1600px in sync
   with the skyline tile, the original sign sits at left:30%, the clone
   one tile-width to the right. The pair cycles so a sign is on-screen
   most of the time. Buildings drift past underneath at the same
   velocity. Sized visibly shorter than the tallest tower. */
.neon-marquee{position:absolute;inset:0;pointer-events:none;z-index:2;animation:neonScroll 180s linear infinite;animation-play-state:paused;will-change:transform}
body.is-playing .neon-marquee{animation-play-state:running}
@keyframes neonScroll{from{transform:translate3d(0,0,0)}to{transform:translate3d(-1600px,0,0)}}
.neon-sign{position:absolute;left:30%;bottom:18%;width:144px;min-height:56px;background:repeating-linear-gradient(0deg,transparent 0,transparent 2px,rgba(166,144,50,.07) 2px,rgba(166,144,50,.07) 3px),radial-gradient(ellipse at 50% 35%,rgba(166,144,50,.22) 0%,rgba(8,8,6,.55) 60%,rgba(8,8,6,.88) 100%),#080806;border:1.5px solid var(--gold-light);border-radius:3px;box-shadow:0 0 8px rgba(166,144,50,.55),0 0 18px rgba(166,144,50,.32),inset 0 0 14px rgba(166,144,50,.18);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:9px 8px 7px;pointer-events:none;font-family:'DM Mono',monospace;color:var(--gold-light);text-align:center;overflow:visible;opacity:0;transition:opacity .8s ease}
.neon-sign-clone{left:calc(30% + 1600px)}
.neon-sign.on{opacity:.92;animation:neonFlicker 9s linear infinite}
.neon-sign::before{content:'NOW PLAYING';position:absolute;top:-7px;left:50%;transform:translateX(-50%);background:#080806;padding:0 5px;font-size:6px;font-weight:700;letter-spacing:.22em;color:var(--gold-light);text-shadow:0 0 5px var(--gold-light),0 0 9px var(--gold-light);white-space:nowrap}
.neon-sign::after{content:'';position:absolute;left:6px;right:6px;top:6px;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(166,144,50,.55) 50%,transparent 100%);pointer-events:none}
.neon-title{font-size:10px;font-weight:700;letter-spacing:.06em;line-height:1.15;text-transform:uppercase;text-shadow:0 0 5px var(--gold-light),0 0 10px rgba(166,144,50,.6);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-width:100%;position:relative}
.neon-artist{font-size:7.5px;letter-spacing:.14em;line-height:1.3;text-transform:uppercase;opacity:.85;margin-top:3px;text-shadow:0 0 4px var(--gold-light),0 0 8px rgba(166,144,50,.5);display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;max-width:100%;position:relative}
@keyframes neonFlicker{0%,92%,100%{opacity:.92}92.6%{opacity:.55}93%{opacity:.92}93.6%{opacity:.32}94%{opacity:.92}}
@media(max-width:1023px){.neon-sign{width:108px;min-height:42px;left:22%;bottom:18%;padding:7px 6px 6px}.neon-sign-clone{left:calc(22% + 1600px)}.neon-sign::before{font-size:5px;top:-6px;letter-spacing:.18em}.neon-title{font-size:8px;line-height:1.1}.neon-artist{font-size:6px;margin-top:2px;letter-spacing:.1em}}
/* Billboard mounted on the skyline showing the current track cover (both
   desktop and mobile now — replaces the old mobile-only full-background). */
.bpm-cover{position:absolute;display:block;left:50%;bottom:21%;transform:translateX(-50%);width:230px;height:138px;background-position:center;background-size:cover;background-repeat:no-repeat;opacity:0;transition:opacity .8s ease,background-image .8s ease;filter:blur(3px) saturate(1.2) brightness(.92);border:1.5px solid rgba(139,122,43,.55);border-radius:3px;box-shadow:0 8px 24px rgba(0,0,0,.45),inset 0 0 40px rgba(0,0,0,.3);z-index:3;will-change:opacity}
.bpm-cover.on{opacity:.65}
.bpm-cover::before{content:'';position:absolute;top:100%;left:50%;transform:translateX(-50%);width:3px;height:34px;background:linear-gradient(180deg,rgba(139,122,43,.6),rgba(139,122,43,0))}
.bpm-cover::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.15) 0%,transparent 30%,transparent 70%,rgba(0,0,0,.35) 100%);pointer-events:none}
@media(max-width:1023px){.bpm-cover{width:170px;height:104px;bottom:21%}.bpm-cover::before{height:26px}}
/* Ad truck — billboard tractor-trailer that drives across the skyline.
   Pure CSS truck (cab + billboard + 3 wheels) inside an animated <a>.
   The billboard panel itself holds the brand IMAGE + PITCH TEXT; the
   "Click here" call-to-action sits just under the truck. Travels with
   the truck via the single drive keyframe — no second animation. */
.ad-truck{position:absolute;left:0;right:0;bottom:0;height:34%;z-index:11;pointer-events:none;overflow:visible}
.ad-truck-link{position:absolute;bottom:5%;display:flex;flex-direction:column;align-items:center;gap:6px;text-decoration:none;pointer-events:none;transform:translate3d(120vw,0,0);filter:drop-shadow(0 6px 12px rgba(0,0,0,.5));will-change:transform}
.ad-truck.driving .ad-truck-link{pointer-events:auto;animation:adTruckDrive 26s linear forwards}
.ad-truck-rig{position:relative;display:flex;align-items:flex-end;gap:3px}
.ad-truck-cab{width:36px;height:42px;background:linear-gradient(180deg,var(--gold-light) 0%,var(--gold) 70%,#5e521d 100%);border-radius:5px 5px 3px 3px;position:relative}
.ad-truck-cab::before{content:'';position:absolute;top:5px;left:4px;right:4px;height:16px;background:rgba(0,0,0,.35);border-radius:2px}
/* Billboard panel — holds both the brand image and the pitch text. Flex
   column with image on top, text on the bottom; both shrink-to-fit. */
.ad-truck-billboard{position:relative;width:230px;height:140px;background:#f5efde;border:2px solid rgba(139,122,43,.75);border-radius:3px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:10px}
.ad-truck-img{max-width:100%;max-height:56%;width:auto;object-fit:contain;display:block;flex-shrink:0}
.ad-truck-pitch{font-family:'DM Mono',monospace;font-size:9px;letter-spacing:.02em;color:#1c1a14;text-align:center;line-height:1.3;max-height:40%;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}
.ad-truck-wheel{position:absolute;bottom:-5px;width:13px;height:13px;background:#0c0c08;border:1.5px solid rgba(139,122,43,.6);border-radius:50%}
.ad-truck-w1{left:9px}.ad-truck-w2{left:96px}.ad-truck-w3{left:240px}
/* "Click here →" call-to-action below the truck — gold pill, clearly
   tappable, white-spaces nowrap so it never wraps awkwardly mid-drive. */
.ad-truck-cta{font-family:'DM Mono',monospace;font-size:10px;letter-spacing:.12em;color:#1c1a14;background:var(--gold-light);padding:4px 12px;border-radius:2px;text-transform:uppercase;font-weight:700;white-space:nowrap;box-shadow:0 2px 6px rgba(0,0,0,.45)}
@keyframes adTruckDrive{from{transform:translate3d(120vw,0,0)}to{transform:translate3d(-120%,0,0)}}
@media(max-width:1023px){
  .ad-truck-link{gap:4px}
  .ad-truck-cab{width:28px;height:34px}
  .ad-truck-cab::before{top:4px;left:3px;right:3px;height:12px}
  .ad-truck-billboard{width:170px;height:104px;padding:7px;gap:4px}
  .ad-truck-img{max-height:50%}
  .ad-truck-pitch{font-size:7.5px;line-height:1.25;-webkit-line-clamp:3}
  .ad-truck-wheel{width:10px;height:10px;bottom:-4px}
  .ad-truck-w1{left:6px}.ad-truck-w2{left:72px}.ad-truck-w3{left:178px}
  .ad-truck-cta{font-size:8.5px;letter-spacing:.1em;padding:3px 10px}
}
.pa-badge{display:inline-flex;align-items:center;justify-content:center;height:14px;padding:0 5px;border-radius:2px;background:#000;color:#fff;font-family:'DM Mono',monospace;font-size:7px;font-weight:700;letter-spacing:.04em;line-height:1;flex-shrink:0;border:1px solid rgba(255,255,255,.3);text-transform:uppercase;white-space:nowrap;cursor:help}
.pa-badge.lg{height:auto;padding:3px 6px;font-size:8px;letter-spacing:.05em}
.vibe-chips{display:flex;flex-wrap:wrap;gap:8px}
.vibe-chip{display:inline-flex;align-items:center;padding:6px 14px;border-radius:9999px;font-family:'DM Mono',monospace;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary);border:1px solid var(--border);background:transparent;transition:all .15s;cursor:pointer;white-space:nowrap;line-height:1}
.vibe-chip:hover{color:var(--gold-light);border-color:rgba(139,122,43,.35);background:rgba(139,122,43,.04)}
.vibe-chip.active{color:var(--bg);background:var(--gold-light);border-color:var(--gold-light)}
.dark .vibe-chip.active{color:#080806}
.vibe-tag{display:inline-flex;align-items:center;padding:1px 6px;border-radius:9999px;font-family:'DM Mono',monospace;font-size:8px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-tertiary);background:rgba(139,122,43,.08);line-height:1.4;white-space:nowrap}
.carousel-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.carousel-wrap::-webkit-scrollbar{display:none}
.carousel-track{display:flex;gap:12px;padding:8px 0;width:max-content}
.carousel-item{width:120px;height:120px;border-radius:10px;overflow:hidden;flex-shrink:0;cursor:pointer;position:relative;transition:transform .3s,box-shadow .3s;border:1px solid var(--border)}
@media(min-width:768px){.carousel-item{width:140px;height:140px}}
.carousel-item:hover{transform:scale(1.06);box-shadow:0 8px 24px rgba(139,122,43,.15)}
.carousel-item.active-cover{border:2px solid var(--gold-light);box-shadow:0 4px 20px rgba(166,144,50,.2)}
.carousel-item img{width:100%;height:100%;object-fit:cover}
.cov-ov{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.35);opacity:0;transition:opacity .2s}.carousel-item:hover .cov-ov{opacity:1}
.mob-nav-btn{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 4px;flex:1;border-radius:8px;transition:all .2s;color:var(--text-tertiary);font-size:10px;font-family:'DM Mono',monospace}
.mob-nav-btn.active{color:var(--gold-light);background:rgba(139,122,43,.08)}
.desk-nav{transition:all .2s;border-left:2px solid transparent}
.desk-nav.active{background:rgba(139,122,43,.1);color:var(--gold-light);border-left-color:var(--gold-light)}
.desk-nav:not(.active){color:var(--text-tertiary)}.desk-nav:not(.active):hover{color:var(--gold-light);background:rgba(139,122,43,.05)}
.queue-item{transition:all .2s}.queue-item:hover{background:rgba(139,122,43,.05)}.queue-item.active{background:rgba(139,122,43,.08)}
.ep-card:hover .ep-title{color:var(--gold-light)}
.ev-card{border:1px solid var(--border);transition:all .3s}.ev-card:hover{border-color:rgba(139,122,43,.25);background:rgba(139,122,43,.03)}.ev-card:hover .ev-title{color:var(--gold-light)}
.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:rgba(139,122,43,.2);border-radius:2px}
.dark .grain::before{content:'';position:fixed;inset:-50%;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");background-size:128px;animation:grain 8s steps(10) infinite;pointer-events:none;z-index:200;opacity:.3}
@keyframes grain{0%,100%{transform:translate(0,0)}50%{transform:translate(-10%,5%)}}
.cta-box{border:1px solid var(--border);background:radial-gradient(ellipse at center,rgba(139,122,43,.06) 0%,transparent 70%)}
.cta-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:9999px;font-size:14px;font-family:'DM Mono',monospace;transition:all .2s}
.cta-btn-primary{background:rgba(139,122,43,.12);border:1px solid rgba(139,122,43,.3);color:var(--gold-light)}
.cta-btn-secondary{border:1px solid var(--border);color:var(--text-secondary)}
.cta-btn:hover{opacity:.8}
