:root{--bg:#071021;--text:#e6eef7;--accent:#66a8ff;--muted:#adb5bd;--card-bg:#0f1720;--overlay-bg:rgba(0,0,0,.85)}html,body{height:100%;margin:0;font-family:Calibri,'Helvetica Neue',Arial,sans-serif;-webkit-font-smoothing:antialiased;background:#071021;color:#e6eef7}#app{min-height:100%;background:inherit}.page-container{max-width:1100px;margin:0 auto;padding:78px 16px 48px;min-height:100vh;background:var(--bg);color:var(--text)}.page-container.theme-dark{--bg:#071021;--text:#e6eef7;--accent:#66a8ff;--muted:#adb5bd;--card-bg:#0f1720;--overlay-bg:rgba(0,0,0,.85);background:var(--bg);color:var(--text)}.page-container.theme-light{--bg:#eeeaf8;--text:#111827;--accent:#1b6ec2;--muted:#6c757d;--card-bg:#fff;--overlay-bg:rgba(0,0,0,.75);background:var(--bg);color:var(--text)}section{margin:6rem 1rem 3rem 1rem}section h2,section h3{margin:2rem 0 0 0}section p{margin:1rem 0}.revealable{opacity:1;transform:translateY(12px);transition:opacity .45s ease,transform .45s ease}.revealable.revealed{opacity:1;transform:none}.artist-info{margin:0 2rem}.artist-bio{display:grid;grid-template-columns:160px 1fr;gap:1rem;align-items:center;margin:2rem 0}.artist-photo{width:160px;height:160px;object-fit:cover;display:block}.rounded-profile-pic .artist-photo{border-radius:50%}.social-links{display:flex;gap:.5rem;margin-top:.5rem}.social-link{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;color:var(--muted);background:transparent;text-decoration:none;border:1px solid transparent}.social-link svg{width:22px;height:22px;fill:currentColor}.gallery-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));margin:0 0}.album-card{background:var(--card-bg);border-radius:8px;overflow:hidden;cursor:pointer;border:1px solid rgba(0,0,0,.06);transition:transform .12s ease,box-shadow .12s ease;margin:2rem 0}.album-cover{width:100%;aspect-ratio:1/1;object-fit:cover;display:block;opacity:.6;transition:transform 3s ease-in-out,opacity 1.5s ease-in-out;will-change:transform,opacity}.album-card:hover .album-cover{transform:scale(1.06);opacity:1}.album-card .caption{margin-top:1rem}.carousel-overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:var(--overlay-bg);z-index:2000;padding:1rem}.carousel-container{width:100%;max-width:1200px;color:var(--text);outline:none}.carousel-stage{display:flex;align-items:center;gap:1rem}.carousel-image{max-width:100%;max-height:70vh;object-fit:contain;border-radius:8px}.carousel-caption{position:static !important;padding-top:0;text-align:center;color:var(--text)}.carousel-caption h3{margin:0;font-size:1.05rem}.carousel-caption p{margin:.25rem 0 0;color:var(--muted);font-size:.95rem}.carousel-thumbs{display:flex;gap:.5rem;margin-top:.75rem;overflow:auto}.carousel-thumbs img{width:120px;height:80px;object-fit:cover;border-radius:6px;opacity:.8;cursor:pointer;border:2px solid transparent}.carousel-thumbs img.active{opacity:1;border-color:var(--accent)}.carousel-image{max-width:100%;max-height:70vh;object-fit:contain;border-radius:8px;opacity:1;transform:none;transition:opacity .26s ease,transform .26s ease}.carousel-image.fade-out{opacity:0;transform:scale(.98) !important;transition:opacity .22s ease,transform .22s ease}.carousel-image.fade-in{opacity:1;transform:none}.carousel-image.zoom{animation:slow-zoom 12s ease-in-out forwards;will-change:transform}@keyframes slow-zoom{from{transform:scale(1)}to{transform:scale(1.06)}}@media(max-width:768px){.artist-bio{grid-template-columns:1fr}.artist-photo{margin:0 auto;width:120px;height:120px}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.album-cover{aspect-ratio:1/1}.carousel-thumbs img{width:92px;height:62px}}#legal-modal{position:fixed;z-index:99999;inset:0;background:rgba(0,0,0,.92);color:#fff;display:flex;align-items:center;justify-content:center;font-family:inherit}#legal-modal .modal-content{background:#181a1b;border-radius:12px;padding:2.5rem 2rem 2rem 2rem;max-width:50rem;box-shadow:0 8px 32px rgba(0,0,0,.25);text-align:center}#legal-modal h2{margin-bottom:1.2rem;font-size:1.5rem}#legal-modal p{margin-bottom:2rem;color:#e0e0e0}#legal-modal .modal-actions{display:flex;justify-content:center;gap:1rem}#legal-modal .modal-actions .btn{min-width:12rem}.spinner-overlay{position:fixed;z-index:99998;inset:0;display:flex;align-items:center;justify-content:center;background:#0b0b13;transition:background .2s}.spinner{width:64px;height:64px;display:inline-block;position:relative;background:transparent}.spinner::after,.spinner::before{content:"";box-sizing:border-box;position:absolute;inset:0;border-radius:50%;border:6px solid transparent;border-top-color:#00e87a;border-right-color:#00e87a;animation:spin-modern 1s cubic-bezier(.68,-.55,.27,1.55) infinite}.spinner::before{border:6px solid transparent;border-bottom-color:#9cffd0;border-left-color:#9cffd0;animation-delay:.5s}@keyframes spin-modern{0%{transform:rotate(0deg) scale(1)}50%{transform:rotate(180deg) scale(1.1)}100%{transform:rotate(360deg) scale(1)}}a:link,a:visited{color:var(--accent);text-decoration:underline;transition:color .2s}a:hover,a:focus{color:#174a7c;text-decoration:underline}.theme-dark a:link,.theme-dark a:visited{color:#82cfff;text-decoration:underline;transition:color .2s}.theme-dark a:hover,.theme-dark a:focus{color:#ffd166;text-decoration:underline}.body-theme-dark{background-color:#071021 !important;color:#e6eef7 !important}.body-theme-light{background-color:#eeeaf8 !important;color:#111827 !important}.body-theme-dark #app{background-color:#071021 !important}.body-theme-light #app{background-color:#eeeaf8 !important}.carousel-control{background:transparent;border:none;color:var(--text);font-size:2.2rem;cursor:pointer;transition:color .2s}.carousel-control:focus{outline:2px solid var(--accent);outline-offset:2px}.theme-dark .carousel-control{color:#e6eef7}.theme-dark .carousel-control:focus{outline:2px solid #66a8ff}:root{--g:#00e87a;--gd:#00b85f;--gg:rgba(0,232,122,.2);--p:#00d4ff;--pd:#09c;--pg:rgba(0,212,255,.22);--pk:#38b8ff;--pkd:#0080c8}[data-theme="dark"]{--bg:#0b0b13;--surf:#12121e;--card:#191926;--cardh:#1f1f30;--bdr:rgba(255,255,255,.09);--bdrh:rgba(255,255,255,.18);--t1:#fff;--t2:rgba(255,255,255,.78);--t3:rgba(255,255,255,.4);--imgph:#141422;--modal:rgba(3,3,10,.98);--link:var(--g);--linkh:var(--p)}[data-theme="light"]{--bg:#eeeaf8;--surf:#eeeaf8;--card:#fafafe;--cardh:#f1edff;--bdr:rgba(0,0,0,.09);--bdrh:rgba(0,0,0,.2);--t1:#08081a;--t2:rgba(8,8,26,.7);--t3:rgba(8,8,26,.38);--imgph:#ddd8ee;--modal:rgba(3,3,10,.98);--link:var(--gd);--linkh:var(--pd)}@keyframes fadeIn{from{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes slideUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes popIn{from{opacity:0}to{opacity:1}}[data-theme]{background:var(--bg);color:var(--t1);min-height:100vh;transition:background .25s,color .25s}.g-hd{position:sticky;top:0;z-index:100;height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 36px;background:var(--surf);border-bottom:2px solid var(--g)}.g-hd-logo{font-family:'Space Mono',monospace;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--g)}.g-hd-right{display:flex;align-items:center;gap:10px}.g-chip{font-family:'Space Mono',monospace;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--t3);padding:4px 9px;border:1px solid var(--bdr)}.g-theme-btn{display:flex;align-items:center;gap:5px;padding:6px 14px;background:transparent;border:1px solid var(--bdrh);color:var(--t2);font-family:'Space Mono',monospace;font-size:11px;cursor:pointer;transition:border-color .15s,color .15s}.g-theme-btn:hover{border-color:var(--g);color:var(--g)}.g-hero{max-width:1100px;margin:0 auto;padding:64px 36px 52px;display:flex;gap:40px;align-items:flex-start;animation:slideUp .42s ease-out}.g-bio-eyebrow{font-family:'Space Mono',monospace;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--p);margin-bottom:12px}.g-bio-name{font-size:46px;font-weight:900;letter-spacing:-.04em;line-height:1;color:var(--t1);margin-bottom:10px}.g-bio-name:focus,.g-bio-name:focus-visible{outline:none}.g-bio-role{font-family:'Space Mono',monospace;font-size:11px;color:var(--t3);letter-spacing:.03em;margin-bottom:24px}.g-bio-divider{width:48px;height:2px;background:var(--g);margin-bottom:22px}.g-bio-body{font-size:14.5px;line-height:1.78;color:var(--t2);margin-bottom:18px}.g-bio-body p{margin-bottom:10px}.g-bio-body p:last-child{margin-bottom:0}.g-contact{font-size:12px;color:var(--t3)}.g-photo{flex:none;width:160px;height:160px;background-size:cover;background-position:center;background-color:var(--imgph);border:2px solid var(--bdrh);display:flex;align-items:center;justify-content:center}.g-photo.rounded{border-radius:50%;border-color:var(--g);box-shadow:0 0 0 5px rgba(0,232,122,.15)}.g-photo-initials{font-family:'Space Mono',monospace;font-size:32px;font-weight:700;color:var(--g);opacity:.4;pointer-events:none}.g-section{max-width:1100px;margin:0 auto;padding:0 36px 96px}.g-section-hd{display:flex;align-items:center;gap:14px;padding-bottom:16px;border-bottom:1px solid var(--bdr);margin-bottom:32px}.g-section-bracket{font-family:'Space Mono',monospace;font-size:16px;color:var(--g)}.g-section-title{font-size:16px;font-weight:700;letter-spacing:-.01em;color:var(--t1);flex:1}.g-section-count{font-family:'Space Mono',monospace;font-size:10px;color:var(--t3)}.g-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:24px}.g-card{cursor:pointer;background:var(--card);border-left:1px solid var(--bdr);border-right:1px solid var(--bdr);border-bottom:1px solid var(--bdr);border-top:3px solid var(--ca,var(--g));overflow:hidden;transition:border-color .2s,background .2s,box-shadow .2s;animation:fadeIn .35s ease-out}.g-card:hover{border-color:var(--ca,var(--g));background:var(--cardh);box-shadow:0 0 32px var(--cg,rgba(0,232,122,.22))}.g-cover{width:100%;aspect-ratio:1/1;object-fit:cover;display:block;background:var(--imgph)}.g-card-body{padding:16px}.g-card-title{font-size:14px;font-weight:700;letter-spacing:-.01em;color:var(--t1);margin-bottom:6px}.g-card-desc{font-size:12px;line-height:1.55;color:var(--t2);margin-bottom:14px}.g-card-foot{display:flex;align-items:center;justify-content:space-between}.g-card-count{font-family:'Space Mono',monospace;font-size:10px;color:var(--t3)}.g-card-cta{font-family:'Space Mono',monospace;font-size:11px;color:var(--ca,var(--g));letter-spacing:.04em}.g-footer{max-width:1100px;margin:0 auto;padding:0 36px 48px;display:flex;align-items:center;gap:16px}.g-footer-line{flex:1;height:1px;background:var(--bdr)}.g-footer-txt{font-family:'Space Mono',monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--t3)}.g-modal{position:fixed;inset:0;z-index:1000;background:var(--modal);display:flex;flex-direction:column;animation:popIn .18s ease-out;outline:none}.g-mhd{flex:none;display:flex;align-items:center;justify-content:space-between;padding:14px 24px;border-bottom:1px solid rgba(255,255,255,.08)}.g-maltitle{font-size:13px;font-weight:700;color:#fff;letter-spacing:-.01em;max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.g-mhd-r{display:flex;align-items:center;gap:14px}.g-mctr{font-family:'Space Mono',monospace;font-size:11px;color:var(--g);font-weight:700}.g-mclose{background:none;border:1px solid rgba(255,255,255,.15);color:rgba(255,255,255,.65);width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:14px;cursor:pointer;transition:border-color .15s,color .15s}.g-mclose:hover{border-color:var(--pk);color:var(--pk)}.g-mbody{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;position:relative;padding:24px 88px;overflow:hidden}.g-mnav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(0,0,0,.55);border:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.8);width:46px;height:46px;display:flex;align-items:center;justify-content:center;font-size:20px;cursor:pointer;z-index:2;transition:border-color .15s,background .15s,color .15s}.g-mnav:hover:not(:disabled){border-color:var(--g);background:rgba(0,232,122,.12);color:var(--g)}.g-mnav:disabled{opacity:.15;cursor:default}.g-mnav.prev{left:16px}.g-mnav.next{right:16px}.g-carousel-img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;display:block;animation:fadeIn .2s ease-out;user-select:none}.g-mft{flex:none;display:flex;flex-direction:column;gap:10px;padding:12px 24px 14px;border-top:1px solid rgba(255,255,255,.08)}.g-mft-meta{min-height:32px}.g-imgtitle{font-size:13px;font-weight:600;color:#fff;margin-bottom:3px}.g-imgdesc{font-size:12px;color:rgba(255,255,255,.5)}.g-thumbstrip{display:flex;gap:5px;overflow-x:auto;padding-bottom:2px;scrollbar-width:thin}.g-thumbstrip::-webkit-scrollbar{height:3px}.g-thumbstrip::-webkit-scrollbar-thumb{background:rgba(255,255,255,.2);border-radius:2px}.g-thumb{flex:none;width:72px;height:48px;cursor:pointer;overflow:hidden;border:2px solid transparent;opacity:.45;transition:opacity .15s,border-color .15s}.g-thumb:hover{opacity:.75}.g-thumb.active{border-color:#00e87a;opacity:1}.g-thumb img{width:100%;height:100%;object-fit:cover;display:block}.g-legal{position:fixed;inset:0;z-index:2000;background:rgba(0,0,0,.93);display:flex;align-items:center;justify-content:center;animation:popIn .2s ease-out}.g-legal-box{background:var(--surf);border:1px solid var(--bdrh);max-width:460px;width:calc(100% - 48px);padding:40px}.g-legal-title{font-size:22px;font-weight:800;letter-spacing:-.025em;color:var(--t1);margin-bottom:12px}.g-legal-body{font-size:14px;line-height:1.68;color:var(--t2);margin-bottom:28px}.g-btn{padding:11px 26px;background:var(--g);color:#000;border:none;font-family:'Space Mono',monospace;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:opacity .15s}.g-legal-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.g-btn.g-btn-secondary{background:transparent;color:var(--t2);border:1px solid var(--bdrh)}.g-btn:hover{opacity:.82}@media(max-width:768px){.g-hero{flex-direction:column;padding:36px 20px}.g-photo{width:120px;height:120px}.g-bio-name{font-size:34px}.g-section{padding:0 20px 60px}.g-footer{padding:0 20px 36px}.g-hd{padding:0 20px}.g-mbody{padding:16px 64px}.g-mnav.prev{left:8px}.g-mnav.next{right:8px}}