:root{--gold:#e4bd6f;--muted:#bec4ce}body{background:#060a13;isolation:isolate}main,footer{position:relative;z-index:1}.site-atmosphere{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;background:radial-gradient(ellipse at 80% 8%,#1d365655,transparent 55%),radial-gradient(ellipse at 4% 60%,#8d571124,transparent 45%)}.stage-light{position:absolute;filter:blur(70px);opacity:.32;mix-blend-mode:screen;animation:light-breathe 12s ease-in-out infinite alternate}.light-one{width:40vw;height:95vh;top:-35vh;right:9%;background:linear-gradient(150deg,transparent,#6a9dde5c,#c69a394f,transparent);transform:rotate(-25deg)}.light-two{width:35vw;height:90vh;left:-10%;top:18vh;background:linear-gradient(25deg,transparent,#9957155c,#273d6b88,transparent);transform:rotate(25deg);animation-delay:-6s}.gold-orbit{position:absolute;width:105vw;height:65vw;left:22%;top:12%;border:1px solid #dfbd6720;border-radius:50%;transform:rotate(-27deg);box-shadow:0 -1px 25px #dba65210}.stardust{position:absolute;left:var(--x);top:var(--y);width:var(--size);height:var(--size);border-radius:50%;background:#fce4a9;box-shadow:0 0 9px #f5c966;opacity:.22;animation:star-glimmer 6s ease-in-out infinite;animation-delay:var(--delay)}
header{z-index:15;height:130px;padding:0 3%;border-bottom:1px solid #ab7a3d;background:linear-gradient(180deg,#182439ee,#080e1aee);box-shadow:0 8px 35px #0008,0 1px 12px #dfac3a44;backdrop-filter:blur(18px);gap:22px}.brand{width:120px}.brand img{height:110px;animation:logo-enter .9s ease-out both}nav{gap:7px}nav a{min-height:79px;display:flex;flex-direction:column;justify-content:center;gap:8px;align-items:center;padding:11px 12px;border-radius:8px;border:1px solid #bc8d48;background:linear-gradient(145deg,#584122,#242838 48%,#101c30);color:#f4d59a;box-shadow:inset 0 1px 0 #f8db9866,0 4px 12px #0005;letter-spacing:.025em;font-size:10px;text-align:center;transition:background .3s,color .3s,box-shadow .3s,transform .3s,border-color .3s;overflow:hidden;position:relative}nav a:before{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 15%,#ffedbd26 42%,#ffedbd55 48%,transparent 63%);transform:translateX(-130%);pointer-events:none;transition:transform .6s}nav a:hover:before{transform:translateX(130%)}nav a:hover{color:#fff3d1;border-color:#ffe2a0;background:linear-gradient(145deg,#8c6530,#263654 60%,#142440);box-shadow:0 0 22px #d9a34755,inset 0 1px 0 #ffdfa499;transform:translateY(-3px)}nav a[aria-current="page"]{color:#141927;border-color:#fff0bb;background:linear-gradient(145deg,#fff0be,#dfba70 45%,#b98438);box-shadow:0 0 25px #d6a23a55,inset 0 1px 0 #fff9d9;transform:none}.nav-symbol{width:24px;height:24px;color:inherit;display:block}.nav-symbol svg{width:100%;height:100%}nav a:after{bottom:4px;background:#f8d68e;height:1px}nav a[aria-current="page"]:after{background:#513f20}nav a:last-child{min-height:79px;padding:11px 17px;margin-left:3px;background:linear-gradient(145deg,#fff1bb,#d5a653 60%,#a87532);border-color:#fff0c3;color:#151a27;font-size:9px;box-shadow:0 0 22px #d9a34740,inset 0 1px 0 #fff3cf;letter-spacing:.08em}nav a:last-child:hover{background:linear-gradient(145deg,#fff8da,#edc984 60%,#c89247);box-shadow:0 0 30px #d9a34766}nav a:last-child .nav-symbol{animation:symbol-glow 5s ease-in-out infinite}.languages{border-color:#917044;background:#141d2c;box-shadow:0 3px 15px #0004}.languages a[aria-current]{background:linear-gradient(145deg,#e8c27a,#b78b44);border-color:#f3dba3;color:#101826;font-weight:800}.artist-name strong{background:linear-gradient(120deg,#fff3c9,#d7a955 38%,#fff1b8 62%,#cb9644);background-size:200% 100%;background-clip:text;-webkit-background-clip:text;color:transparent;animation:name-light 10s ease-in-out infinite;letter-spacing:.025em}.hero-copy{animation:copy-enter .9s ease-out both}.hero-photo{padding:7px;border:1px solid #c09b5b;border-radius:155px 8px 8px 8px;box-shadow:0 0 35px #d6a95428,12px 18px 50px #0008;background:linear-gradient(145deg,#c49a5a66,#101b30);animation:photo-enter 1.1s ease-out both;overflow:visible}.hero-photo img{border-radius:146px 3px 3px 3px}.hero-photo:after{content:'✦';position:absolute;left:4%;top:18%;font-size:33px;color:#ffe9b7;text-shadow:0 0 18px #e6b34a;animation:star-glimmer 5s ease-in-out infinite;pointer-events:none}.hero{gap:65px;padding-top:65px;padding-bottom:80px}.photo-caption{border-left:2px solid var(--gold);bottom:24px;left:24px}.eyebrow{color:#efc97e}.marquee{background:linear-gradient(90deg,transparent,#3f2e1a66,#16243c88,#3f2e1a66,transparent);border-color:#917143;color:#e9d2aa;box-shadow:0 0 25px #dda94014}.marquee span{color:#ffeac0;text-shadow:0 0 12px #e3ad42;animation:star-glimmer 5s ease-in-out infinite}.button{border-color:#ffe6ac;border-radius:5px;background:linear-gradient(135deg,#fff0bb,#dfb360 55%,#c39142);box-shadow:0 5px 22px #dba94226,inset 0 1px 0 #fff8d0;position:relative;overflow:hidden;transition:box-shadow .25s,transform .25s}.button:before{content:'';position:absolute;top:-50%;left:-75%;width:50%;height:200%;background:linear-gradient(90deg,transparent,#fff8dc80,transparent);transform:rotate(25deg);transition:left .6s}.button:hover:before{left:130%}.button:hover{background:linear-gradient(135deg,#fff7d8,#edc881,#e2ac54);box-shadow:0 0 30px #dba94255;transform:translateY(-2px)}.textlink{border-bottom-color:#b79555}.textlink:hover{color:#fff1ce;text-shadow:0 0 12px #dfb86755}.spotlight .cover{border-color:#c99b50;box-shadow:0 0 30px #dda44018,0 20px 40px #0005;border-radius:6px;background:linear-gradient(145deg,#4d371c44,#132039)}.spotlight .cover img{border-radius:0}.spotlight-copy h2 em,.spotlight-copy h1 em{color:#edc476;text-shadow:0 0 50px #cb903322}.format{position:relative}.format h3{color:#edc476}.format-top .index{display:flex;align-items:center;justify-content:center;border:1px solid #98753a;width:34px;height:34px;border-radius:50%;background:#75542330;color:#f1d092}.formats{border-color:#917244;background:linear-gradient(145deg,#18243a33,#1b160f22)}.format:first-child{padding-left:22px}.format:last-child{padding-right:22px}.closing{position:relative}.closing:before{content:'✦';display:block;margin-bottom:30px;font-size:28px;color:#f2cc85;text-shadow:0 0 16px #d6a240;animation:star-glimmer 6s ease-in-out infinite}.pagehead{border-bottom-color:#8d6f3d;background:radial-gradient(ellipse at 10% 55%,#bd873319,transparent 70%)}.pagehead h1 em{color:#e9bf70}.social-card,.video-card,.photo-tile{border-color:#705935;box-shadow:0 10px 30px #0003}.social-card:hover,.photo-tile:hover{box-shadow:0 0 24px #d8a44822;border-color:#e0b566}.streaming-link{border-color:#bc914c;color:#f0d5a5}.streaming-link:hover{background:#4a3827;box-shadow:0 0 16px #d9a34a33}footer{border-top-color:#8d6c35;background:linear-gradient(180deg,#17243b44,#0a0e18)}.reveal-ready{opacity:0;transform:translateY(20px);transition:opacity .85s ease,transform .85s ease}.reveal-ready.is-visible{opacity:1;transform:none}
@keyframes star-glimmer{0%,100%{opacity:.25}50%{opacity:.9}}@keyframes light-breathe{0%{opacity:.18;translate:0 -2%}100%{opacity:.4;translate:3% 4%}}@keyframes symbol-glow{0%,100%{filter:drop-shadow(0 0 0 transparent)}50%{filter:drop-shadow(0 0 5px #fff4cb)}}@keyframes name-light{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}@keyframes logo-enter{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}@keyframes copy-enter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes photo-enter{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
@media(min-width:1600px){header{padding-inline:calc((100vw - 1500px)/2)}nav a{font-size:11px;padding-inline:14px}}
@media(max-width:1350px){header{height:112px;padding-inline:5%}.brand{width:115px}.brand img{height:95px}.menu-toggle{display:flex;width:45px;height:43px;flex-direction:column;justify-content:center;gap:7px;border:1px solid #d5a857;align-items:center;background:linear-gradient(145deg,#6c5028,#172640);border-radius:6px;margin-left:auto;box-shadow:0 0 18px #d3a04222}.menu-toggle span{height:1px;width:23px;background:#ffe4a5}.languages{margin-left:8px}nav{display:none;position:absolute;top:112px;left:0;right:0;background:linear-gradient(145deg,#172640,#080f1c);padding:25px 5%;border-bottom:1px solid #b68b42;box-shadow:0 15px 40px #0009}nav.open{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}nav a{min-height:80px;padding:13px;font-size:12px;display:flex;flex-direction:column;text-align:center;white-space:normal}nav a:last-child{margin:0;min-height:80px;padding:13px;font-size:11px}.nav-symbol{width:25px;height:25px}nav a:after{left:50%;right:auto;top:auto;bottom:5px;transform:translateX(-50%)}nav a:hover:after,nav a[aria-current]:after{width:24px}}
@media(max-width:760px){header{height:96px;padding-inline:6%;gap:12px}.brand{width:98px}.brand img{height:85px}.languages{margin-left:0}.menu-toggle{width:40px;height:40px}.hero{gap:38px;padding-top:45px;padding-bottom:55px}.hero-photo{padding:5px;border-radius:100px 5px 5px 5px;max-height:none;box-shadow:0 0 25px #d6a9542b,0 14px 40px #0008}.hero-photo img{border-radius:94px 0 0 0}.hero-photo:after{font-size:24px;left:2%;top:17%}.photo-caption{left:18px;right:18px;bottom:20px}.artist-name strong{font-size:65px}.stage-light{filter:blur(45px);width:60vw}.light-one{right:-15%}.light-two{left:-20%}.gold-orbit{width:180vw;height:110vw;top:24%}nav{top:96px;max-height:calc(100dvh - 96px);padding:20px 6%;overflow-y:auto}nav.open{grid-template-columns:1fr 1fr;gap:10px}nav a{font-size:12px;min-height:81px}nav a:last-child{font-size:11px;min-height:81px}.nav-symbol{width:23px;height:23px}.formats{background:linear-gradient(135deg,#17243a50,#241c1330)}.format,.format:first-child,.format:last-child{padding-inline:18px}.closing:before{font-size:24px}}
@media(prefers-reduced-motion:reduce){.stage-light,.stardust,.brand img,.artist-name strong,.hero-copy,.hero-photo,.hero-photo:after,nav a:last-child .nav-symbol,.marquee span,.closing:before{animation:none!important}.reveal-ready{opacity:1;transform:none;transition:none}.stardust{opacity:.3}nav a:hover,.button:hover{transform:none}nav a:before,.button:before{display:none}}

/* Give the original JMS artwork a prominent, proportional header placement. */
header{height:164px;gap:20px}
.brand{position:relative;display:block;width:240px;height:146px;flex:0 0 240px;overflow:hidden}
.brand img{position:absolute;left:0;top:50%;width:100%;height:auto;max-width:none;object-fit:initial;transform:translateY(-50%);animation:none;filter:drop-shadow(0 3px 8px #0008)}
.brand:focus-visible{outline:2px solid #f4d59a;outline-offset:3px;border-radius:8px}
@media(min-width:1351px){nav{gap:6px}nav a{padding-inline:9px}nav a:last-child{padding-inline:12px}}
@media(max-width:1350px){header{height:150px}.brand{width:245px;height:140px;flex-basis:245px}.brand img{height:auto}nav{top:150px;max-height:calc(100dvh - 150px);overflow-y:auto}}
@media(max-width:760px){header{height:120px;padding-inline:4%;gap:8px}.brand{width:min(185px,42vw);height:110px;flex-basis:min(185px,42vw)}.brand img{height:auto}.languages{margin-left:0}.menu-toggle{margin-left:auto;flex-shrink:0}nav{top:120px;max-height:calc(100dvh - 120px)}}
@media(max-width:360px){.languages a{font-size:10px;padding-inline:5px}.brand{width:132px;flex-basis:132px}}

/* Blend the original ka photograph into the booking page. */
.contact-ka{position:relative;isolation:isolate;width:100%;max-width:410px;margin:34px 0 0;line-height:0}
.contact-ka:before{content:'';position:absolute;z-index:-1;inset:10% -8% 4%;background:radial-gradient(ellipse at 50% 50%,#bd89302b,transparent 70%);filter:blur(22px);pointer-events:none}
.contact-ka img{display:block;width:100%;height:auto;object-fit:contain;-webkit-mask-image:radial-gradient(ellipse 50% 50% at 50% 50%,#000 57%,#000d 73%,transparent 100%);mask-image:radial-gradient(ellipse 50% 50% at 50% 50%,#000 57%,#000d 73%,transparent 100%)}
@media(max-width:760px){.contact-ka{max-width:360px;margin:26px auto 0}}

/* Discography heading artwork, aligned at the far right of the title row. */
.page-title-row{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-bottom:26px}
.pagehead .page-title-row h1{margin:0;min-width:0}
.page-title-art{display:block;width:200px;height:auto;flex:0 0 200px;object-fit:contain;filter:drop-shadow(0 6px 15px #0005)}
@media(max-width:760px){.page-title-row{gap:12px;margin-bottom:22px}.pagehead .page-title-row h1{font-size:clamp(28px,6.5vw,44px)}.page-title-art{width:90px;flex-basis:90px}}
@media(max-width:360px){.pagehead .page-title-row h1{font-size:25px}.page-title-art{width:78px;flex-basis:78px}}

/* Website production credit */
.footer-bottom{flex-wrap:wrap;row-gap:14px}
.site-credit{font-size:12px;color:var(--muted)}
.site-credit strong{font-weight:600;color:var(--gold);white-space:nowrap}
