/* Bad Guy TV: phosphor, tracking and a live signal. */
.boot-pending body:before{content:"";position:fixed;inset:0;z-index:100;background:#030603;pointer-events:none}
#tv-boot{position:fixed;inset:0;margin:0;width:100%;height:100%;max-width:none;max-height:none;border:0;border-radius:0;background:#030603;overflow:hidden;z-index:101;padding:0;color:var(--gold)}
#tv-boot::backdrop{background:#030603}
.boot-field{position:absolute;inset:3%;overflow:hidden;border-radius:4% / 6%;background:radial-gradient(ellipse at center,#333e20 0%,#111b11 50%,#050905 95%);box-shadow:inset 0 0 100px #000,0 0 80px #d5b66e22;transform:scaleY(.003) scaleX(.05);opacity:0}
.boot-up .boot-field{animation:crt-open 2.95s cubic-bezier(.2,.75,.2,1) both}
.boot-beam{position:absolute;left:50%;top:50%;height:3px;width:80%;background:#f4e4b9;box-shadow:0 0 15px #fff,0 0 60px 10px #dbb75b77;transform:translate(-50%,-50%) scaleX(0);opacity:0}
.boot-up .boot-beam{animation:beam-on 950ms ease-out both}
.boot-noise{position:absolute;inset:0;width:100%;height:100%;image-rendering:pixelated;opacity:.45;mix-blend-mode:screen}
.boot-up .boot-noise{animation:static-settle 2.8s ease-out both}
.boot-scan{position:absolute;inset:0;z-index:2;pointer-events:none;background:repeating-linear-gradient(0deg,#0003 0px,#0003 1px,transparent 1px,transparent 4px)}
.boot-ident{position:absolute;inset:8% 5%;display:flex;flex-direction:column;justify-content:center;align-items:center;opacity:0;filter:blur(4px);transform:scale(1.08)}
.boot-up .boot-ident{animation:signal-lock 1.9s .65s both}
.boot-ident img{width:min(25svh,200px);height:min(25svh,200px);object-fit:contain;border-radius:12px;box-shadow:0 0 45px #dbb75b18}
.boot-ident>p{margin:22px 0 12px;font-size:12px;letter-spacing:.2em}
.boot-ident>strong{font:800 clamp(55px,9vw,128px)/.95 'Barlow Condensed',Impact,sans-serif;letter-spacing:-.03em;color:var(--ink)}
.boot-ident>strong>span{display:inline-block;color:var(--gold);margin-left:.1em;border:2px solid var(--gold);border-radius:8px;font-size:.6em;vertical-align:15%;padding:.05em .12em;letter-spacing:-.06em}
.boot-meter{height:2px;width:230px;background:#c4b57426;margin-top:35px;overflow:hidden}
.boot-meter i{display:block;width:100%;height:100%;background:var(--gold);transform-origin:left;animation:meter-fill 1.6s .7s both}
.boot-ident>p.boot-status{font-size:11px;color:#b3c09e;margin-top:15px}
.boot-channel,.boot-format{position:absolute;bottom:22px;font-size:12px;z-index:3}.boot-channel{left:25px}.boot-format{right:25px}
#skip-intro{position:absolute;top:26px;right:30px;z-index:4;font-size:12px;color:#dcdccb;background:#101910b3;border:1px solid #98a57a66;padding:12px 16px;border-radius:30px}
.boot-up.boot-reveal{animation:boot-away .55s ease both}.boot-up.boot-reveal .boot-field{animation:none;opacity:1;transform:scale(1.08)}
.boot-down .boot-field{opacity:1;transform:none;animation:crt-shut .55s ease-in both;background:#adb390}.boot-down .boot-ident,.boot-down #skip-intro,.boot-down .boot-format,.boot-down .boot-channel{display:none}.boot-down .boot-beam{animation:beam-off .6s ease both}
body.broadcast-enter .hero-copy .signal-line{animation:type-arrive .95s cubic-bezier(.15,.7,.15,1) both}body.broadcast-enter .hero-copy .signal-line:nth-child(2){animation-delay:.1s}body.broadcast-enter .hero-bottom{animation:fade-arrive 1s .25s both}body.broadcast-enter .hero-badge{animation:badge-arrive 1.1s .15s both}body.broadcast-enter .hero-screen{animation:picture-arrive 1.2s both}
.signal-type{position:relative;isolation:isolate}.signal-line{display:block;position:relative}.hero-copy h1 .signal-line{color:var(--ink)}.hero-copy h1 .gold-line{color:var(--gold)}.signal-type canvas{position:absolute;left:-50px;top:-25px;width:calc(100% + 100px);height:calc(100% + 50px);pointer-events:none;z-index:2}.signal-type.signal-ready>.signal-line{opacity:0}.signal-type.signal-ready{overflow:visible}
.hero-screen{perspective:1100px;--mx:0;--my:0;--px:50%;--py:40%}.photo-wall{transform:rotate(-7deg) scale(1.13) translate(calc(var(--mx) * 25px),calc(var(--my) * 18px));will-change:transform}.wall-tile{transition:filter .5s,box-shadow .5s;transform:translateZ(0)}.hero-screen.pointer-live .wall-tile{filter:contrast(1.1)}.feature-shot{transform:scale(1.06) translate(calc(var(--mx) * 18px),calc(var(--my) * 12px));will-change:transform}.hero-badge{transform:rotate(calc(7deg + var(--mx) * 9deg)) translate(calc(var(--mx) * -12px),calc(var(--my) * -10px));transition:box-shadow .3s}.hero-screen.pointer-live .hero-badge{box-shadow:0 0 0 1px #f5d68760,0 0 55px #dbb75b25}.signal-glow{position:absolute;inset:0;z-index:2;pointer-events:none;background:radial-gradient(ellipse 260px 180px at var(--px) var(--py),#d0f7bb22,transparent);opacity:0;transition:opacity .5s;mix-blend-mode:screen}.pointer-live .signal-glow{opacity:1}.scan-sweep{position:absolute;inset:0;pointer-events:none;z-index:2;background:linear-gradient(transparent 44%,#e1ffd00d 48%,#e1ffd02b 50%,#e1ffd00d 52%,transparent 56%);transform:translateY(-110%);animation:vertical-scan 9s 2s linear infinite}
.hero-screen.retuning .photo-wall,.hero-screen.retuning .feature-shot{animation:picture-tune .62s ease both}.hero-screen.retuning .scanlines{animation:tracking .62s ease both}.hero-copy .eyebrow{transition:letter-spacing .5s}.hero-screen.pointer-live .eyebrow{letter-spacing:.17em}
.work-card{perspective:1100px}.work-photo{transform:rotateX(var(--tilt-y,0deg)) rotateY(var(--tilt-x,0deg));transition:transform .5s cubic-bezier(.16,.65,.2,1),box-shadow .5s}.work-photo:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(115deg,transparent 20%,#f5e4b32c 42%,transparent 64%);transform:translateX(-140%);pointer-events:none}.work-card:hover .work-photo:before{animation:glass-sheen .85s ease}.work-card:hover .work-photo{box-shadow:0 15px 45px #0005,0 0 0 1px #dbb75b55}.work-card:hover .expand-icon{transform:rotate(45deg);background:var(--gold)}.expand-icon{transition:transform .35s,background .35s}.work-card .card-caption h3{transition:color .3s,transform .35s}.work-card:hover .card-caption h3{color:var(--gold);transform:translateX(6px)}
.book-button,.light-button{position:relative;isolation:isolate;overflow:hidden;transition:transform .3s,box-shadow .3s}.book-button:before,.light-button:before{content:"";position:absolute;inset:-100% -30%;background:#fff5;transform:translateX(-110%) rotate(-20deg);transition:transform .55s;z-index:-1}.book-button:hover:before,.light-button:hover:before{transform:translateX(0) rotate(-20deg)}.book-button:hover,.light-button:hover{box-shadow:0 0 28px #dbb75b22}.book-button span,.light-button span{transition:transform .3s}.book-button:hover span,.light-button:hover span{transform:translate(3px,-3px)}
footer{position:relative;isolation:isolate;--fx:50%;--fy:50%}footer:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle 190px at var(--fx) var(--fy),#f5e8b777,transparent);opacity:0;transition:opacity .5s;z-index:-1}footer.pointer-live:before{opacity:1}.footer-name{display:block;position:relative;cursor:pointer;will-change:transform}.footer-hint{font-size:12px;margin:0 0 25px;opacity:.65}.footer-orb{position:absolute;left:0;top:0;width:120px;height:120px;border-radius:100%;border:1px solid #f7e4a8;background:#14190e;color:var(--gold);display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;z-index:5;opacity:0;transform:translate(-1000px,-1000px) scale(.3);box-shadow:0 10px 30px #20291335;will-change:transform}.footer-orb:after{content:"";position:absolute;inset:-7px;border-radius:50%;border:1px dashed #1c241780;animation:orb-orbit 15s linear infinite}.footer-orb strong{font-size:40px;line-height:1.1;font-weight:400}.footer-orb .mono{font-size:10px;letter-spacing:.12em}
.reveal-ready{opacity:0;transform:translateY(55px);transition:opacity .9s,transform .9s cubic-bezier(.16,.7,.22,1)}.reveal-ready.is-revealed{opacity:1;transform:none}
@keyframes crt-open{0%{opacity:0;transform:scaleY(.002) scaleX(.05)}9%{opacity:1;transform:scaleY(.002) scaleX(1)}25%{opacity:1;transform:scaleY(1) scaleX(1)}100%{opacity:1;transform:scaleY(1) scaleX(1)}}@keyframes beam-on{0%{opacity:0;transform:translate(-50%,-50%) scaleX(.005)}15%{opacity:1;transform:translate(-50%,-50%) scaleX(.04)}50%{opacity:1;transform:translate(-50%,-50%) scaleX(1)}100%{opacity:0;transform:translate(-50%,-50%) scaleX(1)}}@keyframes signal-lock{0%{opacity:0;filter:blur(7px);transform:scale(1.09) skewX(5deg)}22%{opacity:1;filter:blur(0);transform:scale(1) skewX(0)}100%{opacity:1;filter:blur(0);transform:scale(1)}}@keyframes static-settle{0%,22%{opacity:.65}45%{opacity:.18}100%{opacity:.07}}@keyframes meter-fill{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes boot-away{to{opacity:0;filter:blur(4px);transform:scale(1.08)}}@keyframes crt-shut{0%{transform:scale(1);opacity:.5}50%{transform:scaleY(.003) scaleX(1);opacity:.8}90%,100%{transform:scaleY(.003) scaleX(.001);opacity:0}}@keyframes beam-off{0%{opacity:0;transform:translate(-50%,-50%) scaleX(1)}50%{opacity:1;transform:translate(-50%,-50%) scaleX(1)}100%{opacity:0;transform:translate(-50%,-50%) scaleX(0)}}@keyframes type-arrive{from{transform:translateY(55px) skewY(4deg);opacity:0}to{transform:none;opacity:1}}@keyframes fade-arrive{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@keyframes badge-arrive{from{opacity:0;transform:rotate(-16deg) scale(.8)}to{opacity:1;transform:rotate(7deg) scale(1)}}@keyframes picture-arrive{from{filter:blur(4px);transform:scale(1.035)}to{filter:blur(0);transform:none}}@keyframes vertical-scan{to{transform:translateY(110%)}}@keyframes tracking{0%{opacity:.12}25%{opacity:.7;transform:translateY(18px)}55%{opacity:.3;transform:translateY(-12px)}100%{opacity:.12;transform:none}}@keyframes picture-tune{0%{filter:contrast(1)}15%{filter:contrast(1.4) saturate(.1);translate:12px 0}40%{translate:-10px 0;filter:contrast(1.15)}100%{translate:0 0;filter:none}}@keyframes glass-sheen{to{transform:translateX(140%)}}@keyframes orb-orbit{to{rotate:360deg}}
@media(max-width:700px){.hero-copy h1{font-size:clamp(44px,11.8vw,78px)}.hero-copy{bottom:70px}.hero-bottom{gap:20px}.hero-screen{min-height:680px}.boot-field{inset:12px;border-radius:18px}.boot-ident img{width:160px;height:160px}.boot-ident>strong{font-size:70px}.boot-ident>p{font-size:10px;letter-spacing:.1em}.boot-channel{left:16px;font-size:10px}.boot-format{display:none}#skip-intro{right:25px;top:25px}.footer-hint,.footer-orb{display:none}}
@media(hover:none),(pointer:coarse){.footer-hint,.footer-orb{display:none}.photo-wall{transform:rotate(-7deg) scale(1.13)}.signal-glow{display:none}}
@media(prefers-reduced-motion:reduce){.reveal-ready{opacity:1;transform:none}.signal-type canvas{display:none!important}.signal-type.signal-ready>.signal-line{opacity:1}.footer-orb,.signal-glow,.scan-sweep{display:none}.photo-wall{transform:rotate(-7deg) scale(1.13)}.work-photo,.footer-name{transform:none!important}}
body.motion-paused .reveal-ready{opacity:1;transform:none}body.motion-paused .signal-type canvas{display:none}body.motion-paused .signal-type.signal-ready>.signal-line{opacity:1}body.motion-paused .footer-orb{opacity:0!important}body.motion-paused .photo-wall{transform:rotate(-7deg) scale(1.13)}body.motion-paused .work-photo,body.motion-paused .footer-name{transform:none!important}
body.broadcast-enter .hero-copy .signal-ready>.signal-line{animation:none;opacity:0}body.broadcast-enter .hero-copy .signal-ready>canvas{animation:fade-arrive .95s cubic-bezier(.15,.7,.15,1) both}

.signal-type{user-select:none;-webkit-user-select:none}
/* Owner portraits and playable reel channels. */
.owner-portraits{position:relative;padding:0 13% 14% 0}.owner-main{display:block;width:100%;height:610px;object-fit:cover;object-position:center 43%;border-radius:12px}.owner-secondary{position:absolute;right:0;bottom:0;width:41%;height:310px;object-fit:cover;object-position:center 42%;border:7px solid #1d211a;border-radius:12px;transform:rotate(5deg);box-shadow:0 20px 35px #0006}.owner-portraits .artist-logo{position:absolute;left:20px;top:20px;width:92px;border-radius:8px;transform:rotate(-7deg);box-shadow:0 5px 20px #0005}.artist-visual>span{margin-top:25px}.bts-strip img{object-position:center}
/* Videos share the original full-bleed photo surface. */
.feature-shot video{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.8)}
.feature-shot [hidden],.lightbox-image [hidden],#source-link[hidden]{display:none!important}
.lightbox-image video{width:100%;height:100%;max-height:82svh;object-fit:contain;background:#080b08}
.video-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:68px;height:68px;border:1px solid #e7d59f;background:#10150dab;color:var(--gold);border-radius:50%;display:grid;place-items:center;padding-left:4px;font-size:22px;backdrop-filter:blur(8px);transition:background .25s,scale .25s}
.video-card:hover .video-play{background:#dbb75b;color:#111;scale:1.1}.footer-name{cursor:default}
@media(max-width:1000px){.owner-main{height:520px}.owner-secondary{height:260px}}
@media(max-width:700px){.owner-main{height:470px}.owner-secondary{height:240px}.owner-portraits .artist-logo{width:70px;top:15px;left:15px}.lightbox-image video{height:100%;max-height:45svh}.filters{flex-wrap:wrap}.video-play{width:45px;height:45px;font-size:16px}}

.footer-booking-cta{display:inline-block;margin:0 0 25px;font-size:14px;text-decoration:underline;text-underline-offset:5px;line-height:1.6}.footer-booking-cta:hover{opacity:.7}.footer-booking-cta:focus-visible{outline:2px solid currentColor;outline-offset:6px}

.broadcast-top .live-dot{animation:broadcast-pulse 1.8s ease-out infinite;transform-origin:center}
@keyframes broadcast-pulse{0%{transform:scale(.9);opacity:.75;box-shadow:0 0 0 0 #dbb75b70}35%{transform:scale(1.2);opacity:1;box-shadow:0 0 0 4px #dbb75b35}80%,100%{transform:scale(.9);opacity:.75;box-shadow:0 0 0 9px #dbb75b00}}

.ticker>.ticker-track{display:flex;width:max-content;gap:0}.ticker-group{display:flex;flex:0 0 auto;align-items:center;justify-content:space-around;min-width:100vw;white-space:nowrap}.ticker-group b{font:inherit;flex:none}.ticker-group span{flex:none}

.owner-portraits{padding:0}.owner-main{object-position:center 40%}

/* Font-independent icons render identically on iOS and desktop. */
.icon{display:inline-block;width:1em;height:1em;vertical-align:-.15em;flex-shrink:0;pointer-events:none}
.expand-icon .icon{width:22px;height:22px}.ticker .icon-star{width:1em;height:1em;stroke-width:2.5;vertical-align:-.1em}
.hero-slide-control button,.lightbox-controls button,.close-dialog,#power{display:inline-flex;align-items:center;justify-content:center}
#power .icon{width:22px;height:22px}.video-play .icon{width:22px;height:22px}
@media(max-width:700px){.expand-icon .icon{width:18px;height:18px}.video-play .icon{width:16px;height:16px}}

.booking-instagram{margin-left:22px}
.header nav{align-items:center}
@media(min-width:701px){
  .remote{transition:opacity .25s ease,transform .32s cubic-bezier(.2,.75,.2,1)}
  .desktop-hero .remote{opacity:0;transform:translate(-50%,calc(100% + 42px));pointer-events:none}
}
@media(max-width:700px){
  .booking-instagram{margin-left:0;display:table}
  .remote{opacity:0;transform:translate(-50%,calc(100% + 42px));pointer-events:none;transition:opacity .25s ease,transform .32s cubic-bezier(.2,.75,.2,1)}
  .remote.mobile-visible{opacity:1;transform:translateX(-50%);pointer-events:auto}
}
