:root{--bg:#070b10;--panel:#101820;--lime:#7dea50;--blue:#4d8bef;--midnight:#02234c;--text:#f5f7f9;--muted:#a4b0bd;--line:#26333e;--heading:'Chakra Petch',sans-serif;--body:'Roboto Mono',monospace;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--body);font-size:16px;line-height:1.8;letter-spacing:-.025em}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{max-width:100%;display:block}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--lime);outline-offset:5px}::selection{background:var(--lime);color:var(--bg)}.wrap{width:min(1180px,calc(100% - 96px));margin-inline:auto}.section{padding-block:100px}.eyebrow{display:block;font-size:.8125rem;letter-spacing:.15em;font-weight:500;color:var(--lime);line-height:1.6}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:40px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--heading);line-height:1.06}h1{font-size:clamp(3.5rem,6vw,6.25rem);font-weight:700;letter-spacing:-.045em;margin-top:26px}h2{font-size:clamp(2.5rem,4vw,4rem);font-weight:700;letter-spacing:-.035em;margin-top:15px}h3{font-size:1.4rem;font-weight:600}p{color:var(--muted)}strong{color:var(--text);font-weight:500}header{height:88px;position:sticky;top:0;z-index:10;background:rgba(7,11,16,.95);border-bottom:1px solid var(--line);backdrop-filter:blur(15px)}.nav-shell{height:100%;width:min(1320px,calc(100% - 64px));margin:auto;display:flex;align-items:center;justify-content:space-between}.brand{padding:12px 0;display:block;flex:none}.brand img{width:140px;height:auto;filter:grayscale(1) brightness(0) invert(1);mix-blend-mode:screen}nav{display:flex;align-items:center;gap:32px;font-family:var(--heading);font-size:1rem;font-weight:500}nav a{padding:10px 0;color:#c6ced6}nav a:hover,nav a.active{color:var(--lime)}nav .nav-contact{padding:8px 21px;border:1px solid #577047;color:var(--lime)}.menu-toggle{display:none}.hero{position:relative;min-height:660px;height:min(790px,calc(100svh - 88px));display:flex;align-items:center;isolation:isolate;overflow:hidden}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 38%;z-index:-3}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,15,28,.94),rgba(2,15,28,.55) 48%,rgba(2,15,28,.09)),linear-gradient(0deg,var(--bg),transparent 55%);z-index:-2}.hero-content{padding-block:70px 115px}.hero h1 span{color:var(--lime)}.hero-content>p{color:#e2e9ec;margin-top:24px;max-width:550px;font-size:1rem}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:12px 24px;font-family:var(--heading);font-weight:700;line-height:1.3;font-size:1rem;border:1px solid transparent;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.primary{background:var(--lime);color:#071307}.primary:hover{background:#a1ff7b}.secondary{border-color:#82929c;background:rgba(7,11,16,.4);color:white}.secondary:hover{background:var(--midnight)}.hero-socials{display:flex;flex-wrap:wrap;gap:24px;margin-top:28px;font-size:.875rem;color:#c5d1d9}.hero-socials a:hover{color:var(--lime)}.hero-bottom{position:absolute;left:0;right:0;bottom:28px;display:flex;justify-content:space-between;gap:20px;font-size:.75rem;letter-spacing:.12em;color:#b0bfcb}.hero-bottom a{letter-spacing:0;font-size:.875rem}.chapter-bar{border-block:1px solid #284720;color:var(--lime);background:#0c170e}.chapter-bar .wrap{display:flex;justify-content:space-between;gap:20px;padding-block:16px;font-size:.75rem;letter-spacing:.15em}.about{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:start}.portrait-frame{position:relative;border:1px solid #274864;padding:12px}.portrait-frame img{aspect-ratio:1;object-fit:cover}.image-caption{display:flex;justify-content:space-between;gap:20px;font-size:.75rem;margin-top:14px;color:var(--muted);letter-spacing:.07em}.milestone{display:flex;gap:28px;align-items:center;border-top:1px solid var(--line);margin-top:34px;padding-top:25px}.milestone strong{font:700 5rem/1 var(--heading);color:var(--lime);letter-spacing:-.06em}.milestone span{color:var(--lime);font-size:.75rem;letter-spacing:.18em}.milestone p{font-size:.875rem;line-height:1.7;margin-top:3px}.about-copy>p{margin-top:25px}.about-copy .intro{font-size:1.125rem;line-height:1.75;color:#dde4eb}.bio{margin-top:25px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;padding:17px 0;color:var(--lime);font-family:var(--heading);font-weight:600;list-style:none}summary::-webkit-details-marker{display:none}summary span{font-size:1.5rem}.bio[open] summary span{transform:rotate(45deg)}.bio p{margin:0 0 23px}.label-line{margin-top:25px}.label-line>span{color:var(--blue);font-size:.75rem;letter-spacing:.14em}.label-line p{font-family:var(--heading);font-size:1rem;margin-top:6px}.music-section{background:#0d141d;border-block:1px solid var(--line)}.text-link{color:var(--lime);font-size:.875rem;padding-bottom:6px;border-bottom:1px solid #3b6830;flex:none}.text-link:hover{color:white}.release-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 26px}.art{position:relative;overflow:hidden;aspect-ratio:1;background:var(--panel)}.art img{height:100%;width:100%;object-fit:cover;transition:transform .35s}.play{position:absolute;right:18px;bottom:18px;border-radius:50%;display:grid;place-items:center;background:rgba(7,11,16,.85);border:1px solid #ffffff60;width:48px;height:48px;font-size:1rem;line-height:1;padding-left:3px}.release:hover .art img{transform:scale(1.04)}.release:hover .play{background:var(--lime);color:var(--bg);border-color:var(--lime)}.release-meta{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:18px}.release h3{font-size:1.3rem}.release-no{color:#748492;font-size:.75rem}.release>p{font-size:.875rem;margin-top:7px}.spotify-panel{margin-top:55px;padding:32px;border:1px solid #2e414c;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;background:linear-gradient(110deg,#112b27,#10202b)}.spotify-panel h3{font-size:2rem;margin:10px 0}.spotify-panel p{font-size:.875rem}.spotify-panel .embed-note{flex:1 0 100%;font-size:.75rem;color:#abbcbf}.embed-note a{text-decoration:underline}.spotify-panel iframe{width:100%;height:352px;border:0;border-radius:12px}.section-aside{color:var(--muted);font-size:.8125rem;line-height:1.8}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.gallery-photo{padding:0;border:0;background:var(--panel);overflow:hidden;aspect-ratio:1}.gallery-photo img{width:100%;height:100%;object-fit:cover;transition:transform .3s,filter .3s;filter:saturate(.6)}.gallery-photo:hover img{transform:scale(1.04);filter:saturate(1)}.follow-section{background:#0c1421;border-block:1px solid var(--line)}.social-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #314252}.social-grid a{padding:27px 24px;border-right:1px solid #314252;transition:background .2s}.social-grid a:last-child{border:0}.social-grid a:hover{background:var(--midnight)}.social-grid span{font-size:.75rem;color:var(--blue)}.social-grid h3{margin-top:27px;font-size:1.5rem}.social-grid p{font-size:.8125rem;margin-top:10px}.contacts{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:center}.contacts h2 span{color:var(--lime)}.contacts>div>p:not(.eyebrow){margin-top:25px}.contact-details{padding-left:35px;border-left:1px solid var(--line)}.email{display:block;font-family:var(--heading);font-size:clamp(1.1rem,2vw,1.6rem);margin-top:17px;overflow-wrap:anywhere}.email:hover{color:var(--lime)}.phone{display:block;color:var(--muted);margin:10px 0 25px}footer{border-top:1px solid var(--line);padding-block:30px;display:flex;align-items:center;justify-content:space-between;gap:25px}footer p,footer>a:last-child{font-size:.75rem}footer .brand img{width:116px}.skip{position:fixed;top:-100px;left:20px;padding:12px;background:var(--lime);color:black;z-index:99}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}dialog{padding:56px 18px 18px;border:1px solid var(--line);background:var(--bg);max-width:min(90vw,720px);max-height:90svh}dialog::backdrop{background:#000d;backdrop-filter:blur(8px)}dialog img{max-height:75svh;object-fit:contain}.close-dialog{position:absolute;right:16px;top:10px;min-height:35px;border:0;background:transparent;color:white;font-size:.875rem}
@media(min-width:1600px){.hero-photo{object-position:center 38%}.hero-shade{background:linear-gradient(90deg,rgba(2,15,28,.93),rgba(2,15,28,.4) 60%,rgba(2,15,28,.05)),linear-gradient(0deg,var(--bg),transparent 55%)}}
@media(max-width:1000px){.wrap{width:calc(100% - 64px)}.about{gap:45px}.section{padding-block:75px}.contacts{gap:30px}.social-grid a{padding:22px 17px}.social-grid h3{font-size:1.3rem}.hero{min-height:620px}h1{font-size:clamp(3.1rem,7vw,5rem)}}
@media(max-width:700px){html{scroll-padding-top:90px}.wrap{width:calc(100% - 40px)}header{height:74px}.nav-shell{width:calc(100% - 40px)}.brand img{width:117px}.menu-toggle{display:flex;gap:18px;align-items:center;border:1px solid var(--line);padding:7px 12px;background:transparent;color:white;font-family:var(--heading);font-size:.875rem}.menu-toggle span{color:var(--lime);font-size:1.25rem}nav{display:none;position:absolute;left:0;right:0;top:74px;background:#070b10;border-bottom:1px solid var(--line);padding:20px;gap:6px;align-items:stretch}nav.open{display:flex;flex-direction:column}nav a{padding:10px}nav .nav-contact{margin-top:8px}.hero{height:calc(90svh - 74px);min-height:620px;max-height:760px}.hero-photo{object-position:62% center}.hero-shade{background:linear-gradient(90deg,rgba(2,15,28,.8),rgba(2,15,28,.35)),linear-gradient(0deg,#070b10,transparent 90%)}.hero-content{padding-block:70px 110px}.hero h1{font-size:clamp(2.7rem,10.6vw,4.3rem);margin-top:20px}.hero .eyebrow{font-size:.75rem}.hero-content>p{font-size:.9375rem;max-width:290px}.hero-actions{gap:10px;margin-top:25px}.button{padding:12px 17px;font-size:.9375rem}.hero-socials{gap:22px;font-size:.8125rem}.hero-bottom{bottom:25px;align-items:end}.hero-bottom>span{max-width:180px;font-size:.6875rem}.hero-bottom>a{font-size:.75rem}.chapter-bar .wrap{padding-block:13px;font-size:.6875rem}.chapter-bar .wrap>span:last-child{display:none}.section{padding-block:64px}.about{grid-template-columns:1fr;gap:38px}.about-visual{max-width:450px;width:100%;margin:auto}.milestone{margin-top:23px;padding-top:20px}.milestone strong{font-size:4rem}.about-copy h2{font-size:2.9rem}.section-heading{align-items:start;gap:20px;flex-direction:column;margin-bottom:28px}h2{font-size:2.5rem}.release-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 16px}.release h3{font-size:1.0625rem;line-height:1.2}.release>p{font-size:.8125rem;line-height:1.5}.release-no{display:none}.play{width:38px;height:38px;right:10px;bottom:10px;font-size:.8125rem}.spotify-panel{padding:25px;margin-top:35px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.social-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.social-grid a{padding:22px}.social-grid a:nth-child(2){border-right:0}.social-grid a:nth-child(-n+2){border-bottom:1px solid #314252}.social-grid h3{margin-top:15px}.contacts{grid-template-columns:1fr;gap:30px}.contact-details{padding:25px 0 0;border-left:0;border-top:1px solid var(--line)}.email{font-size:1.5rem}footer{flex-wrap:wrap;gap:20px;padding-block:25px}footer p{order:3;flex-basis:100%}.image-caption{font-size:.6875rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Official 2026 branding and motion. */
.brand img{filter:none;mix-blend-mode:normal;transition:filter .25s}
.brand:hover img{filter:drop-shadow(2px 0 0 var(--blue)) drop-shadow(-2px 0 0 var(--lime))}
.hero-atmosphere{position:absolute;inset:-12%;z-index:-1;pointer-events:none;overflow:hidden;opacity:.7}
.hero-atmosphere::before,.hero-atmosphere::after{content:"";position:absolute;inset:0;will-change:transform}
.hero-atmosphere::before{background:radial-gradient(ellipse at 80% 45%,#4d8bef24,transparent 44%);animation:blue-drift 17s ease-in-out infinite alternate}
.hero-atmosphere::after{background:linear-gradient(115deg,transparent 50%,#7dea500d 60%,#7dea5024 61%,transparent 62%);animation:lime-drift 13s ease-in-out infinite alternate}
.hero-mark{position:absolute;right:8%;top:21%;width:clamp(180px,26vw,400px);pointer-events:none;z-index:-1;opacity:.12;animation:mark-float 10s ease-in-out infinite}
.hero-mark img{width:100%;height:auto;filter:drop-shadow(8px 0 0 var(--blue)) drop-shadow(-5px 0 0 var(--lime));animation:brand-glitch 12s linear infinite}
.hero h1 span{animation:headline-signal 12s linear infinite}
.portrait-frame{padding:10px;overflow:hidden}
.portrait-frame img{aspect-ratio:4/5;object-position:50% 28%}
.portrait-frame::after{content:"";position:absolute;left:0;top:0;width:35%;height:2px;background:var(--lime);box-shadow:0 0 15px #7dea5070;transform-origin:left;animation:frame-signal 7s ease-in-out infinite alternate;pointer-events:none}
.gallery-photo{aspect-ratio:3/4;border:1px solid var(--line);transition:border-color .3s}
.gallery-photo img{object-position:center 24%;filter:none}
.gallery-photo:hover{border-color:var(--lime)}
.release,.gallery-photo,.social-grid a{transition:transform .35s,border-color .3s,background .3s;transform-style:preserve-3d}
.motion-reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.3,1);transition-delay:var(--reveal-delay,0ms)}
.motion-reveal.is-visible{opacity:1;transform:none}
@keyframes blue-drift{from{transform:translate(-3%,-4%) scale(1)}to{transform:translate(5%,3%) scale(1.12)}}
@keyframes lime-drift{from{transform:translateX(-9%)}to{transform:translateX(9%)}}
@keyframes mark-float{0%,100%{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-18px) rotate(-1deg)}}
@keyframes brand-glitch{0%,91%,94%,100%{transform:translateX(0)}92%{transform:translateX(4px) skewX(-2deg)}93%{transform:translateX(-3px)}}
@keyframes headline-signal{0%,91%,94%,100%{text-shadow:none}92%,93%{text-shadow:2px 0 #4d8bef65,-2px 0 #7dea5040}}
@keyframes frame-signal{from{transform:scaleX(.65);opacity:.65}to{transform:scaleX(2.3);opacity:1}}
@media(max-width:700px){.hero-mark{right:-12%;top:15%;width:260px;opacity:.08}.hero-atmosphere{opacity:.5}.portrait-frame img{aspect-ratio:4/5}.gallery-photo{aspect-ratio:3/4}}
@media(prefers-reduced-motion:reduce){.motion-reveal{opacity:1;transform:none}.hero-mark{transform:none}.hero-atmosphere::before,.hero-atmosphere::after{will-change:auto}}

/* Live montage retains a still image until playback succeeds. */
.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-3;opacity:0;transition:opacity .6s ease;pointer-events:none}
.hero-video.is-playing{opacity:1}
.hero-video-control{position:absolute;top:24px;right:32px;z-index:2;min-height:42px;padding:8px 14px;border:1px solid #ffffff50;background:#070b10cc;backdrop-filter:blur(10px);color:#f5f7f9;font-family:var(--body);font-size:.875rem;line-height:1.4}
.hero-video-control:hover{border-color:var(--lime);color:var(--lime)}
.hero:has(.hero-video.is-playing) .hero-atmosphere{opacity:.3}
.hero:has(.hero-video.is-playing) .hero-mark{opacity:.055}
@media(max-width:700px){.hero-video-control{top:18px;right:20px}.hero-photo img{object-position:center}.hero:has(.hero-video.is-playing) .hero-mark{opacity:.04}}

/* Give music and following priority; keep portraits as supporting content. */
.follow-section .section{padding-block:58px}
.follow-section .section-heading{margin-bottom:24px}
.follow-section h2{font-size:clamp(2rem,3vw,3rem)}
.social-grid a{padding:20px 24px}
.social-grid h3{margin-top:12px}
.social-grid p{margin-top:6px}
.about{grid-template-columns:minmax(0,280px) minmax(0,1fr);gap:64px}
.about-visual{width:100%;max-width:280px;margin:0}
.portrait-frame{width:100%;height:350px;padding:8px;aspect-ratio:auto}
.portrait-frame img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center 30%}
.image-caption{flex-wrap:wrap;gap:4px 14px;line-height:1.5}
.milestone{gap:16px;margin-top:24px;padding-top:20px}
.milestone strong{font-size:3.25rem}
#gallery.section{padding-block:56px}
#gallery .section-heading{margin-bottom:24px}
#gallery h2{font-size:clamp(1.75rem,2.8vw,2.5rem)}
.gallery-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.gallery-photo{aspect-ratio:4/5}
@media(max-width:1000px){.about{grid-template-columns:minmax(0,240px) minmax(0,1fr);gap:36px}.portrait-frame{height:300px}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:660px;margin-inline:auto}.gallery-photo{aspect-ratio:1}}
@media(max-width:700px){
  .follow-section .section{padding-block:40px}.follow-section .section-heading{gap:12px}.social-grid a{padding:18px}.social-grid h3{font-size:1.3rem}.social-grid p{font-size:.8125rem}
  .about{grid-template-columns:1fr;gap:28px}.about-copy{grid-row:1}
  .about-visual{display:grid;grid-template-columns:128px minmax(0,1fr);gap:12px 20px;align-items:center;width:100%;max-width:none;margin:0}
  .portrait-frame{grid-row:1/3;height:160px;padding:5px}.image-caption{display:flex;flex-direction:column;align-items:start;margin:0;gap:6px;font-size:.75rem}
  .milestone{gap:12px;margin:0;padding-top:12px;align-self:start}.milestone strong{font-size:2.5rem}.milestone span{font-size:.75rem}.milestone p{font-size:.75rem;line-height:1.6}
  #gallery.section{padding-block:40px}#gallery .section-heading{gap:12px;margin-bottom:20px}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.gallery-photo{aspect-ratio:4/5}
}
@media(max-width:420px){.about-visual{grid-template-columns:104px minmax(0,1fr);gap:10px 16px}.portrait-frame{height:130px}.milestone{gap:10px}.milestone strong{font-size:2.1rem}}

/* Cursor layers are activated only after a real mouse movement. */
.cursor-dot,.cursor-ring{position:fixed;top:0;left:0;z-index:2147483647;pointer-events:none;opacity:0;contain:layout style;will-change:transform}
.cursor-dot{width:6px;height:6px;border-radius:50%;background:var(--lime);box-shadow:0 0 12px #7dea5066}
.cursor-ring{display:grid;place-items:center;width:34px;height:34px;border:1px solid #4d8befc9;border-radius:50%;color:var(--lime);background:#4d8bef06;box-shadow:0 0 14px #4d8bef26;font-family:var(--heading);font-weight:700;font-size:.75rem;line-height:1;letter-spacing:.06em;transition:width .18s,height .18s,border-color .18s,background .18s,box-shadow .18s}
.cursor-ring.is-hover{width:48px;height:48px;background:#4d8bef20;border-color:var(--lime);box-shadow:0 0 22px #7dea502f}
.cursor-ring.is-view{width:66px;height:66px;background:#070b10de;border-color:var(--lime);box-shadow:0 0 24px #4d8bef40}
.hero-pointer-glow{position:absolute;top:0;left:0;width:640px;height:640px;z-index:-1;pointer-events:none;background:radial-gradient(circle at 38% 42%,#7dea5026,transparent 56%),radial-gradient(circle,#4d8bef33,transparent 68%);opacity:0;transition:opacity .45s;will-change:transform}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) and (forced-colors:none){
  html.cursor-ready,html.cursor-ready a,html.cursor-ready button,html.cursor-ready summary{cursor:none}
  html.cursor-ready input,html.cursor-ready textarea,html.cursor-ready select,html.cursor-ready [contenteditable]{cursor:auto}
  html.cursor-ready .cursor-dot,html.cursor-ready .cursor-ring{opacity:1}
  html.cursor-view .cursor-dot{opacity:0}
}
@media(prefers-reduced-motion:reduce),(hover:none),(pointer:coarse),(forced-colors:active){.cursor-dot,.cursor-ring,.hero-pointer-glow{display:none}}

/* Reserve the image size before revealing it; animate only opacity and transform. */
html{scrollbar-gutter:stable}
html.photo-open{overflow:hidden}
#photo-dialog{position:fixed;inset:0;margin:0;width:100%;height:100%;max-width:none;max-height:none;padding:24px;border:0;background:transparent;overflow:hidden;overscroll-behavior:contain}
#photo-dialog[open]{display:grid;place-items:center}
#photo-dialog::backdrop{background:#000d;backdrop-filter:none;opacity:0;transition:opacity 280ms ease}
#photo-dialog.photo-visible::backdrop{opacity:1}
.photo-stage{display:grid;gap:12px;width:min(440px,calc((100svh - 112px)*.5625),calc(100vw - 48px));opacity:0;transform:translate3d(0,14px,0) scale(.975);transition:transform 320ms cubic-bezier(.2,.75,.25,1),opacity 240ms ease;will-change:transform,opacity}
#photo-dialog.photo-visible .photo-stage{opacity:1;transform:translate3d(0,0,0) scale(1)}
.photo-frame{position:relative;aspect-ratio:9/16;width:100%;border:1px solid var(--line);background:var(--bg);box-shadow:0 16px 70px #0006;overflow:hidden}
#photo-dialog .photo-frame img{position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:contain}
#photo-dialog .close-dialog{position:static;justify-self:end;min-height:44px;padding:8px 14px;border:1px solid #ffffff50;background:#070b10;color:var(--text);font-size:.875rem}
#photo-dialog .close-dialog:hover{border-color:var(--lime);color:var(--lime)}
#photo-dialog.photo-closing .photo-stage,#photo-dialog.photo-closing::backdrop{transition-duration:200ms}
.gallery-photo[aria-busy="true"] img{opacity:.75}
@media(prefers-reduced-motion:reduce){.photo-stage{transform:none}}

/* Brand artwork becomes part of the canvas, with a tighter content rhythm. */
body{isolation:isolate;background:#070b10}
.brand-backdrop{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;user-select:none;background:radial-gradient(ellipse at 90% 22%,#02234c88,transparent 65%),radial-gradient(ellipse at 8% 85%,#7dea5014,transparent 60%)}
.backdrop-symbol{position:absolute;width:clamp(600px,75vw,1200px);max-width:none;right:-18%;top:8%;opacity:.085;transform:rotate(-8deg);filter:drop-shadow(0 0 55px #4d8bef22)}
.backdrop-wordmark{position:absolute;width:clamp(800px,110vw,1800px);max-width:none;left:-10%;bottom:5%;opacity:.035;transform:rotate(-8deg)}
.wrap{width:min(1080px,calc(100% - 80px))}
.section{padding-block:68px}
.section-heading{margin-bottom:28px;gap:24px}
h2{font-size:clamp(2.25rem,3.7vw,3.5rem);margin-top:12px}
header{height:78px;background:#070b10eb}
.nav-shell{width:min(1200px,calc(100% - 64px))}
.hero{min-height:580px;height:min(680px,calc(92svh - 78px))}
.hero-content{padding-block:54px 94px}
.hero h1{font-size:clamp(3.2rem,5.5vw,5.75rem)}
.hero-mark{width:clamp(220px,32vw,460px);opacity:.15;right:5%;top:18%}
.hero:has(.hero-video.is-playing) .hero-mark{opacity:.1}
.follow-section,.music-section{position:relative;isolation:isolate;overflow:hidden;border-color:#ffffff0d}
.follow-section{background:#0c14217a}
.music-section{background:#0d141d8c}
.follow-section .section{padding-block:42px}
.follow-section::before{content:"";position:absolute;inset:0;z-index:-1;background:url('assets/wordmark.png') no-repeat 94% 50% / 65% auto;opacity:.055;pointer-events:none}
.music-section::before{content:"";position:absolute;inset:0;z-index:-1;background:url('assets/symbol.png') no-repeat -180px 70% / 720px auto;opacity:.075;pointer-events:none}
.chapter-bar{background:#0c170eaa;border-color:#7dea5026}
.chapter-bar .wrap{padding-block:12px}
.social-grid{background:#070b104d}
.social-grid a{padding:18px 22px}
.social-grid h3{margin-top:10px}
.release-grid{gap:28px 22px}
.release-meta{margin-top:12px}
.release>p{margin-top:4px}
.spotify-panel{margin-top:32px;padding:24px;background:linear-gradient(110deg,#112b27bd,#10202bbd)}
.spotify-panel h3{font-size:1.75rem;margin:8px 0}
.about{gap:48px;grid-template-columns:minmax(0,240px) minmax(0,1fr)}
.about-visual{max-width:240px}
.portrait-frame{height:300px;border-color:#ffffff1c;padding:6px;background:#070b1066}
.portrait-frame::after{display:none}
.about-copy>p{margin-top:20px}
.about-copy .intro{font-size:1.0625rem}
.bio{margin-top:20px}
.label-line{margin-top:20px}
#gallery.section{padding-block:38px}
#gallery .section-heading{margin-bottom:20px}
.gallery-photo{border-color:#ffffff18}
.contacts{padding-block:60px}
@media(max-width:1000px){
 .wrap{width:calc(100% - 56px)}.section{padding-block:56px}
 .about{grid-template-columns:minmax(0,220px) minmax(0,1fr);gap:32px}
 .portrait-frame{height:275px}.hero{min-height:570px}
 .backdrop-symbol{width:800px;right:-44%;opacity:.07}
}
@media(max-width:700px){
 html{scroll-padding-top:84px}.wrap{width:calc(100% - 40px)}
 header{height:70px}.nav-shell{width:calc(100% - 40px)}nav{top:70px}
 .section{padding-block:44px}.section-heading{margin-bottom:22px;gap:14px}
 .hero{height:calc(86svh - 70px);min-height:550px;max-height:680px}
 .hero-content{padding-block:48px 100px}.hero h1{font-size:clamp(2.7rem,10.6vw,4.3rem)}
 .hero-mark{width:300px;right:-17%;top:16%}
 .hero:has(.hero-video.is-playing) .hero-mark{opacity:.07}
 .backdrop-symbol{width:650px;top:24%;right:-100%;opacity:.08}
 .backdrop-wordmark{width:900px;left:-100%;bottom:10%;opacity:.03}
 .follow-section .section{padding-block:32px}.social-grid a{padding:16px}
 .follow-section::before{background-size:130%;background-position:20% 30%}
 .music-section::before{background-size:520px;background-position:-250px 85%;opacity:.06}
 .release-grid{gap:24px 14px}.spotify-panel{margin-top:28px;padding:20px}
 .about{grid-template-columns:1fr;gap:24px}.about-visual{max-width:none}
 .about-visual .portrait-frame{height:150px}.about-copy h2{font-size:2.5rem}
 .about-copy>p{margin-top:18px}
 #gallery.section{padding-block:30px}.gallery-grid{gap:8px}
 .contacts{padding-block:44px;gap:24px}footer{padding-block:22px}
}
@media(max-width:420px){.about-visual .portrait-frame{height:130px}}
@media(forced-colors:active){.brand-backdrop,.follow-section::before,.music-section::before{display:none}}

/* Let the live image continue underneath the navigation. */
:root{--lime:#87ff3c;--blue:#348bff;--electric:#1767ff}
header{position:fixed;inset:0 0 auto;width:100%;background:transparent;border-bottom:1px solid transparent;backdrop-filter:none;transition:background .25s,border-color .25s}
header.is-scrolled{background:#070b10bf;border-bottom-color:#348bff30;backdrop-filter:blur(12px)}
nav a{text-shadow:0 2px 8px #000c;color:#f5f7f9}
nav .nav-contact{border-color:#87ff3c90;background:#070b1026}
.menu-toggle{background:#070b1040;border-color:#ffffff50}
.hero{height:min(758px,92svh);min-height:658px}
.hero-content{padding-block:132px 94px}
.hero-video-control{top:102px}
.hero-shade::after{content:"";position:absolute;inset:0 0 auto;height:140px;background:linear-gradient(#070b1070,transparent);pointer-events:none}
/* Supplied neon artwork keeps its native aspect ratio; cover crops without distortion. */
.brand-backdrop{background:radial-gradient(ellipse at 88% 20%,#87ff3c24,transparent 58%),radial-gradient(ellipse at 12% 70%,#1767ff40,transparent 65%),#070b10}
.backdrop-art{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;opacity:.4;mask-image:linear-gradient(90deg,#000, #0006 38%,#0008 66%,#000);-webkit-mask-image:linear-gradient(90deg,#000,#0006 38%,#0008 66%,#000)}
.backdrop-symbol{width:clamp(280px,34vw,560px);height:auto;aspect-ratio:560/511;right:5%;top:48%;opacity:.055;transform:none;filter:none}
.follow-section::before,.music-section::before{display:none}
.follow-section{background:linear-gradient(110deg,#070b1099,#02234c5c 60%,#070b104d)}
.music-section{background:linear-gradient(110deg,#070b10c4,#0d141d8c)}
.chapter-bar{background:linear-gradient(100deg,#0c170ec9,#1767ff25 60%,#87ff3c20)}
.social-grid{background:#070b1066;border-color:#348bff40}
.social-grid a:hover{background:#1767ff30}
.spotify-panel{background:linear-gradient(115deg,#87ff3c1c,#1767ff29);border-color:#348bff55}
.primary{box-shadow:0 0 24px #87ff3c16}
.eyebrow{text-shadow:0 0 16px #87ff3c15}
@media(max-width:1000px){.backdrop-symbol{width:400px;right:-5%;top:55%}}
@media(max-width:700px){
 .hero{height:86svh;min-height:620px;max-height:750px}
 .hero-content{padding-block:118px 100px}
 .hero-video-control{top:88px}
 .backdrop-art{opacity:.34;object-position:68% center;mask-image:linear-gradient(180deg,#0009,#0006 40%,#000b);-webkit-mask-image:linear-gradient(180deg,#0009,#0006 40%,#000b)}
 .backdrop-symbol{width:280px;height:auto;right:-65px;top:58%;opacity:.055}
 header.is-scrolled{background:#070b10c9}
 nav{background:#070b10f5;backdrop-filter:blur(12px)}
}
@media(forced-colors:active){header{background:Canvas;border-bottom:1px solid CanvasText}}

/* Scale the painted ring rather than resizing its box around the pointer. */
.cursor-ring,.cursor-ring.is-hover,.cursor-ring.is-view{width:36px;height:36px;border:0;background:transparent;box-shadow:none;transition:none;isolation:isolate}
.cursor-ring::before{content:"";position:absolute;inset:0;z-index:-1;border:1px solid var(--blue);border-radius:50%;background:transparent;transform:scale(var(--cursor-scale,1));transition:transform .16s ease,border-color .16s ease,background .16s ease}
.cursor-ring.is-hover{--cursor-scale:1.3}
.cursor-ring.is-hover::before{border-color:var(--lime);background:#348bff12}
.cursor-ring.is-view{--cursor-scale:1.8}
.cursor-ring.is-view::before{border-color:var(--lime);background:#070b10e6}
.cursor-dot{box-shadow:none}
html.scroll-running{scroll-behavior:auto!important}
