/* fonts (self-hosted) */
@font-face{font-family:"Barlow Condensed";font-style:normal;font-weight:700;font-display:block;src:url(/fonts/barlow-condensed-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:"Barlow Condensed";font-style:normal;font-weight:700;font-display:block;src:url(/fonts/barlow-condensed-latin-ext-700-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:"Barlow Condensed";font-style:normal;font-weight:800;font-display:block;src:url(/fonts/barlow-condensed-latin-800-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:"Barlow Condensed";font-style:normal;font-weight:800;font-display:block;src:url(/fonts/barlow-condensed-latin-ext-800-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:"Barlow";font-style:normal;font-weight:400;font-display:block;src:url(/fonts/barlow-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:"Barlow";font-style:normal;font-weight:400;font-display:block;src:url(/fonts/barlow-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:"Barlow";font-style:normal;font-weight:500;font-display:block;src:url(/fonts/barlow-latin-500-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:"Barlow";font-style:normal;font-weight:500;font-display:block;src:url(/fonts/barlow-latin-ext-500-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:"Barlow";font-style:normal;font-weight:700;font-display:block;src:url(/fonts/barlow-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:"Barlow";font-style:normal;font-weight:700;font-display:block;src:url(/fonts/barlow-latin-ext-700-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF;}
/* DD Artists — built on the Dunking Devils design system (DD-design-system-web/DESIGN.md).
   Black / white / yellow bands, Barlow Condensed + Barlow, sharp corners, no shadows. */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
:root{
  --black:#0E0E0E;--white:#FFFFFF;--yellow:#FFD400;
  --ink-muted-on-white:#5C5C5C;--ink-muted-on-black:#A6A6A6;--ink-on-yellow-muted:#3D3500;
  --line-on-black:rgba(255,255,255,.18);--line-on-white:rgba(14,14,14,.14);
  --surface-soft:#FAFAF7;--success:#0B6B2E;--error:#B00020;
  --font-display:"Barlow Condensed","Arial Narrow",sans-serif;
  --font-text:"Barlow",system-ui,sans-serif;
  --size-h1:clamp(3rem,1.2rem + 6.9vw,8.5rem);
  --size-h2:clamp(2.5rem,1.9rem + 2.6vw,4.5rem);
  --size-h3:clamp(1.75rem,1.6rem + .45vw,2.125rem);
  --size-label:clamp(.875rem,.85rem + .1vw,.9375rem);
  --size-lead:clamp(1.1875rem,1.13rem + .25vw,1.3125rem);
  --size-body:clamp(1rem,.95rem + .25vw,1.125rem);
  --size-stat:clamp(3.25rem,2.4rem + 3vw,5.25rem);
  --content:1240px;--gutter:24px;
  --pad-x:max(24px,calc((100vw - 1240px) / 2));
  --band-top:clamp(48px,4vw + 24px,72px);
  --band-bottom:clamp(64px,5vw + 32px,104px);
  --header-h:72px;
  --ease-out:cubic-bezier(.16,1,.3,1);
  /* legacy aliases used by JS-generated markup */
  --y:var(--yellow);--bk:var(--black);--dk:var(--black);
}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 16px);}
body{background:var(--black);color:var(--white);font-family:var(--font-text);font-size:var(--size-body);line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden;}
img,video,svg{max-width:100%;}
::selection{background:var(--yellow);color:var(--black);}
:focus-visible{outline:3px solid var(--yellow);outline-offset:3px;}
.section--white :focus-visible,.related-section :focus-visible,.book-section :focus-visible,.contact-form-wrap :focus-visible,.ws-highlights :focus-visible{outline-color:var(--black);}
button{font-family:inherit;}
.page{display:none;}.page.active{display:block;}

/* Shared type roles */
.label,.section-eyebrow,.show-tag-lbl,.ft-lbl,.filter-lbl,.stat-lbl,.tcard-cat,.acard-cat,.ecard-tag,.team-role,.ft-role,.det-row strong{font-family:var(--font-display);font-weight:700;text-transform:uppercase;letter-spacing:.13em;line-height:1.2;}

/* HEADER */
nav{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:var(--header-h);padding:8px var(--pad-x);background:var(--black);border-bottom:1px solid var(--line-on-black);position:sticky;top:0;z-index:200;}
@media(max-width:768px){nav{padding:10px 16px;flex-wrap:wrap;position:relative;}}
.nav-logo{display:flex;align-items:center;gap:8px;cursor:pointer;}
.nav-links{display:flex;align-items:center;gap:28px;flex-wrap:wrap;}
@media(max-width:768px){.nav-links{gap:14px;}}
.nl{font-family:var(--font-display);font-size:var(--size-label);font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-muted-on-black);cursor:pointer;border:none;background:none;transition:color 160ms var(--ease-out);padding:8px 2px;border-bottom:3px solid transparent;min-height:44px;display:inline-flex;align-items:center;}
.nl:hover,.nl.active{color:var(--white);border-bottom-color:var(--yellow);}
.btn-book{font-family:var(--font-display);font-size:1rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--black);background:var(--yellow);border:2px solid var(--yellow);border-radius:0;padding:0 22px;cursor:pointer;transition:background-color 160ms var(--ease-out),color 160ms var(--ease-out);min-height:48px;display:inline-flex;align-items:center;}
.btn-book:hover{background:var(--white);border-color:var(--white);}
.btn-book:active{transform:translateY(1px);}
.lang-sw{display:flex;gap:0;}
.lbtn{font-family:var(--font-display);font-size:.875rem;font-weight:700;letter-spacing:.1em;padding:6px 12px;border:1px solid var(--line-on-black);background:none;color:var(--ink-muted-on-black);cursor:pointer;transition:background-color 160ms var(--ease-out),color 160ms var(--ease-out);min-height:36px;min-width:44px;}
.lbtn+.lbtn{border-left:none;}
.lbtn:hover{color:var(--white);}
.lbtn.active{background:var(--yellow);border-color:var(--yellow);color:var(--black);}

/* BUTTONS */
.btn-primary,.btn-ghost,.smodal-btn{font-family:var(--font-display);font-size:1rem;font-weight:700;letter-spacing:.06em;line-height:1;text-transform:uppercase;border:2px solid transparent;border-radius:0;padding:12px 22px;cursor:pointer;min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:10px;text-decoration:none;transition:background-color 160ms var(--ease-out),color 160ms var(--ease-out),border-color 160ms var(--ease-out),transform 160ms var(--ease-out);}
.btn-primary:active,.btn-ghost:active,.smodal-btn:active{transform:translateY(1px);}
.btn-primary,.smodal-btn{background:var(--yellow);color:var(--black);}
.btn-primary:hover,.smodal-btn:hover{background:var(--white);}
.btn-ghost{background:transparent;color:var(--white);border-color:currentColor;}
.btn-ghost:hover{background:var(--white);color:var(--black);border-color:var(--white);}
/* on yellow bands the primary action turns dark */
.book-section .btn-primary{background:var(--black);color:var(--white);}
.book-section .btn-primary:hover{background:#2a2a2a;}

/* HERO */
.hero{position:relative;min-height:696px;background:var(--black);display:flex;align-items:center;overflow:hidden;}
@media(max-width:768px){.hero{min-height:552px;}}
.hero-video-wrap{position:absolute;inset:0;overflow:hidden;z-index:0;}
.hero-iframe{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:177.78vh;height:56.25vw;min-width:100%;min-height:100%;border:none;pointer-events:none;object-fit:cover;}
.hero-bg-static{position:absolute;inset:0;background-size:cover;background-position:center 40%;transition:opacity 1s;z-index:1;}
.hero-video-wrap.loaded .hero-bg-static{opacity:0;}
.hero-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(14,14,14,.94) 0%,rgba(14,14,14,.35) 100%);}
.hero-content{position:relative;z-index:2;padding:var(--band-top) var(--pad-x);width:100%;}
.hero-title{font-family:var(--font-display);font-weight:800;font-size:clamp(3rem,1rem + 6.4vw,7.25rem);line-height:.84;text-transform:uppercase;margin-bottom:28px;text-wrap:balance;overflow-wrap:break-word;}
:root:not([lang="en"]) .hero-title{line-height:.98;}
/* brand headline: key words on a yellow bar */
.hero-title span,.page-hero h1 span,.page-hero h2 span{color:var(--black);padding:0 .12em;margin-inline:-.06em;background:linear-gradient(var(--yellow),var(--yellow)) 0 .22em/100% .86em no-repeat;-webkit-box-decoration-break:clone;box-decoration-break:clone;}
:root:not([lang="en"]) .hero-title span,:root:not([lang="en"]) .page-hero h1 span,:root:not([lang="en"]) .page-hero h2 span{background-position:0 .12em;background-size:100% .96em;}
.hero-slogan{font-family:var(--font-display);font-size:var(--size-label);font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--white);margin-bottom:32px;border-left:4px solid var(--yellow);padding-left:16px;}
.hero-ctas{display:flex;gap:16px;flex-wrap:wrap;}

/* STATS */
.stats-bar{background:var(--black);border-bottom:1px solid var(--line-on-black);padding:var(--band-top) var(--pad-x);display:flex;align-items:flex-start;}
@media(max-width:768px){.stats-bar{padding:32px 8px;}.stat-hide-mobile{display:none;}}
.stat{flex:1;text-align:center;border-right:1px solid var(--line-on-black);padding:0 16px;}
.stat:last-child{border-right:none;}
.stat-num{font-family:var(--font-display);font-weight:800;font-size:var(--size-stat);color:var(--yellow);line-height:.9;text-transform:uppercase;font-variant-numeric:tabular-nums;}
@media(max-width:768px){.stat-num{font-size:2.25rem;}}
.stat-lbl{font-size:var(--size-label);color:var(--ink-muted-on-black);margin-top:10px;text-align:center;}
@media(max-width:768px){.stat-lbl{font-size:.75rem;letter-spacing:.08em;}}

/* BANDS */
.section{padding:var(--band-top) var(--pad-x) var(--band-bottom);background:var(--black);color:var(--white);}
.section--white{background:var(--white);color:var(--black);}
.section--black{background:var(--black);color:var(--white);}
.section-eyebrow{font-size:var(--size-label);color:var(--yellow);margin-bottom:12px;}
.section-title{font-family:var(--font-display);font-weight:800;font-size:var(--size-h2);text-transform:uppercase;line-height:.9;margin-bottom:36px;text-wrap:balance;overflow-wrap:break-word;}
:root:not([lang="en"]) .section-title{line-height:1;}
.section-title span{color:inherit;}

/* Values */
.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
@media(max-width:768px){
  .values-grid{display:flex;flex-direction:row;overflow-x:auto;gap:16px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding-bottom:12px;}
  .values-grid::-webkit-scrollbar{height:3px;}
  .values-grid::-webkit-scrollbar-thumb{background:var(--black);}
}
.val-card{background:var(--white);border:1px solid var(--line-on-white);padding:24px;flex-shrink:0;transition:transform 200ms var(--ease-out),border-color 200ms var(--ease-out);}
.val-card:hover{border-color:var(--black);transform:scale(1.025);}
@media(max-width:768px){.val-card{width:276px;scroll-snap-align:start;}}
.val-icon{display:none;}
.val-title{font-family:var(--font-display);font-weight:800;font-size:var(--size-h3);text-transform:uppercase;line-height:.95;margin-bottom:10px;}
.val-desc{font-size:1rem;color:var(--ink-muted-on-white);line-height:1.5;}

/* Featured carousel */
.trending-carousel-wrap{position:relative;margin-top:28px;overflow:hidden;}
.trending-grid{display:flex;gap:3px;cursor:grab;user-select:none;transition:none;}
.trending-grid.dragging{cursor:grabbing;}
.tcard{position:relative;cursor:pointer;overflow:hidden;background:var(--black);flex:0 0 calc(27.5% - 2px);height:462px;}
@media(max-width:768px){.tcard{flex:0 0 calc(44% - 2px);height:242px;}}
.tcard:hover{outline:3px solid var(--yellow);outline-offset:-3px;z-index:1;}
.tcard-bg{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:66px;}
.tcard-bg img{width:100%;height:100%;object-fit:cover;object-position:center 20%;transition:transform 700ms var(--ease-out);}
.tcard:hover .tcard-bg img{transform:scale(1.05);}
.tcard-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(14,14,14,.94) 0%,rgba(14,14,14,.1) 65%,transparent 100%);}
.tcard-info{position:absolute;bottom:0;left:0;right:0;padding:20px;}
.tcard-name{font-family:var(--font-display);font-size:var(--size-h3);font-weight:800;text-transform:uppercase;line-height:.95;}
.tcard-name span{color:var(--yellow);}
.tcard-cat{font-size:.8125rem;color:var(--ink-muted-on-black);margin-top:6px;}
.tcard-cta{position:absolute;bottom:20px;right:20px;background:var(--yellow);color:var(--black);font-family:var(--font-display);font-size:.875rem;letter-spacing:.06em;text-transform:uppercase;font-weight:700;padding:8px 14px;opacity:0;transform:translateY(6px);transition:opacity 200ms var(--ease-out),transform 200ms var(--ease-out);}
.tcard:hover .tcard-cta{opacity:1;transform:translateY(0);}
.see-all-center{text-align:center;margin-top:8px;}
.feat-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:0;}
.feat-header .section-title{margin-bottom:0;}
.feat-arrows{display:flex;gap:12px;flex-shrink:0;}
.carousel-arrow{width:48px;height:48px;border:2px solid var(--white);background:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color 160ms var(--ease-out),border-color 160ms var(--ease-out);padding:0;line-height:0;}
.carousel-arrow:hover{background:var(--yellow);border-color:var(--yellow);}
.carousel-arrow svg{display:block;width:16px;height:16px;}
.carousel-arrow:hover svg{stroke:var(--black);}
@media(max-width:768px){.carousel-arrow{width:44px;height:44px;}}

/* Clients */
.clients{background:var(--white);color:var(--black);border-top:1px solid var(--line-on-white);border-bottom:1px solid var(--line-on-white);padding:36px 0;overflow:hidden;}
.clients-lbl{font-family:var(--font-display);font-weight:700;font-size:var(--size-label);letter-spacing:.13em;text-transform:uppercase;color:var(--ink-muted-on-white);text-align:center;margin-bottom:24px;}
.clients-track{display:flex;align-items:center;gap:80px;width:max-content;animation:marquee 32s linear infinite;}
.clients-track:hover{animation-play-state:paused;}
.client-logo{height:60px;width:auto;max-width:160px;object-fit:contain;opacity:.8;transition:opacity 200ms var(--ease-out);}
.client-logo:hover{opacity:1;}
@keyframes marquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* Page headers */
.page-hero{padding:var(--band-top) var(--pad-x) 56px;background:var(--black);border-bottom:1px solid var(--line-on-black);}
.page-hero h1,.page-hero h2.page-title{font-family:var(--font-display);font-weight:800;font-size:clamp(3rem,1.2rem + 5vw,6.5rem);text-transform:uppercase;line-height:.84;margin-bottom:16px;text-wrap:balance;overflow-wrap:break-word;}
:root:not([lang="en"]) .page-hero h1,.page-hero h2.page-title{line-height:.98;}
.page-hero p{font-size:var(--size-lead);font-weight:500;line-height:1.5;color:var(--ink-muted-on-black);max-width:60ch;margin-top:8px;}
.page-hero .section-eyebrow{margin-bottom:16px;}

/* Filters */
.filters{padding:20px var(--pad-x);display:flex;gap:8px;flex-wrap:wrap;align-items:center;border-bottom:1px solid var(--line-on-black);background:var(--black);}
.filter-lbl{font-size:var(--size-label);color:var(--ink-muted-on-black);margin-right:8px;}
.fbtn{font-family:var(--font-display);font-size:1rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:8px 18px;border:2px solid var(--line-on-black);border-radius:0;background:transparent;color:var(--white);cursor:pointer;transition:background-color 160ms var(--ease-out),border-color 160ms var(--ease-out),color 160ms var(--ease-out);min-height:44px;}
.fbtn:hover{border-color:var(--white);}
.fbtn.active{background:var(--yellow);border-color:var(--yellow);color:var(--black);}

/* Card grids */
.artists-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding:var(--band-top) var(--pad-x) var(--band-bottom);background:var(--black);}
@media(max-width:900px){.artists-grid{grid-template-columns:1fr 1fr;gap:16px;}}
@media(max-width:480px){.artists-grid{padding-inline:16px;gap:12px;}}
.acard{position:relative;cursor:pointer;overflow:hidden;background:var(--black);aspect-ratio:4/3;border:1px solid var(--line-on-black);transition:transform 200ms var(--ease-out),border-color 200ms var(--ease-out);}
.acard:hover{transform:scale(1.025);border-color:var(--yellow);z-index:1;}
.acard-img{width:100%;height:100%;object-fit:cover;object-position:center 20%;transition:transform 700ms var(--ease-out);}
.acard:hover .acard-img{transform:scale(1.05);}
.acard-emoji{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:72px;}
.acard-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(14,14,14,.94) 0%,rgba(14,14,14,.05) 65%,transparent 100%);}
.acard-arrow{position:absolute;top:16px;right:16px;width:44px;height:44px;border:2px solid var(--yellow);background:var(--yellow);display:flex;align-items:center;justify-content:center;color:var(--black);font-size:20px;opacity:0;transition:opacity 200ms var(--ease-out);}
.acard:hover .acard-arrow{opacity:1;}
.acard-info{position:absolute;bottom:0;left:0;right:0;padding:20px;}
.acard-name{font-family:var(--font-display);font-size:var(--size-h3);font-weight:800;text-transform:uppercase;line-height:.95;}
.acard-name span{color:var(--yellow);}
.acard-cat{font-size:.8125rem;color:var(--ink-muted-on-black);margin-top:6px;}
.eq-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding:var(--band-top) var(--pad-x) var(--band-bottom);background:var(--black);}
@media(max-width:900px){.eq-grid{grid-template-columns:repeat(2,1fr);gap:16px;}}
@media(max-width:480px){.eq-grid{padding-inline:16px;gap:12px;}}
.ecard{position:relative;cursor:pointer;overflow:hidden;background:var(--black);aspect-ratio:3/4;border:1px solid var(--line-on-black);transition:transform 200ms var(--ease-out),border-color 200ms var(--ease-out);}
.ecard:hover{transform:scale(1.025);border-color:var(--yellow);z-index:1;}
.ecard-img{width:100%;height:100%;object-fit:cover;object-position:center top;transition:transform 700ms var(--ease-out);}
.ecard-emoji{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:56px;}
.ecard:hover .ecard-img{transform:scale(1.05);}
.ecard-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(14,14,14,.94) 0%,rgba(14,14,14,.1) 55%,transparent 100%);}
.ecard-info{position:absolute;bottom:0;left:0;right:0;padding:16px;}
.ecard-name{font-family:var(--font-display);font-size:1.75rem;font-weight:800;text-transform:uppercase;color:var(--white);line-height:.95;}
.ecard-name span{color:var(--yellow);}
.ecard-tag{font-size:.75rem;color:var(--ink-muted-on-black);margin-top:6px;}

/* Detail pages */
.back-btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-display);font-size:var(--size-label);font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-muted-on-black);cursor:pointer;padding:16px var(--pad-x);background:var(--black);border:none;border-bottom:1px solid var(--line-on-black);transition:color 160ms var(--ease-out);width:100%;min-height:56px;}
.back-btn:hover{color:var(--yellow);}
.back-btn:focus-visible{outline-offset:-3px;}
.show-hero,.ws-hero,.show-details-wrap{display:grid;grid-template-columns:1fr 1fr;}
@media(max-width:768px){.show-hero,.ws-hero,.show-details-wrap{grid-template-columns:1fr;}}
.show-media{position:relative;background:var(--black);min-height:420px;overflow:hidden;}
@media(max-width:768px){.show-media{min-height:240px;}}
.show-media-emoji{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:100px;opacity:.5;}
.show-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.show-media iframe{position:absolute;inset:0;width:100%;height:100%;border:none;}
.show-play-btn{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:3;transition:background-color 160ms var(--ease-out);}
.show-play-btn:hover{background:rgba(14,14,14,.25);}
.play-circle{width:72px;height:72px;border:2px solid var(--white);border-radius:0;display:flex;align-items:center;justify-content:center;background:rgba(14,14,14,.6);transition:background-color 160ms var(--ease-out),border-color 160ms var(--ease-out);}
.show-play-btn:hover .play-circle{border-color:var(--yellow);background:var(--yellow);}
.play-circle i{font-size:30px;color:var(--white);margin-left:4px;}
.show-play-btn:hover .play-circle i{color:var(--black);}
.show-yt-thumb{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.show-content{padding:clamp(28px,4vw,56px) clamp(16px,3.5vw,48px) clamp(28px,4vw,56px) var(--pad-x);background:var(--black);display:flex;flex-direction:column;justify-content:center;align-items:flex-start;}
.show-hero .show-media+.show-content,.ws-hero .show-content{padding-left:clamp(24px,4vw,56px);padding-right:var(--pad-x);}
@media(max-width:768px){.show-content,.show-hero .show-media+.show-content,.ws-hero .show-content{padding:28px 16px;}}
.show-tag-lbl{font-size:var(--size-label);color:var(--yellow);margin-bottom:12px;}
.show-title{font-family:var(--font-display);font-weight:800;font-size:var(--size-h2);text-transform:uppercase;line-height:.9;margin-bottom:20px;text-wrap:balance;overflow-wrap:break-word;}
:root:not([lang="en"]) .show-title{line-height:1;}
.show-desc{font-size:var(--size-body);color:var(--white);line-height:1.5;margin-bottom:28px;max-width:68ch;}
.show-det-left{padding:clamp(28px,4vw,56px) clamp(24px,4vw,56px) clamp(28px,4vw,56px) var(--pad-x);background:var(--black);border-top:1px solid var(--line-on-black);}
@media(max-width:768px){.show-det-left{padding:28px 16px;}}
.det-title{font-family:var(--font-display);font-weight:800;font-size:var(--size-h3);text-transform:uppercase;line-height:.95;margin-bottom:24px;}
.det-row{margin-bottom:18px;font-size:1rem;}
.det-row strong{display:block;font-size:var(--size-label);color:var(--ink-muted-on-black);margin-bottom:4px;}
.det-row span{color:var(--white);}
.show-gallery{background:var(--black);display:flex;align-items:center;justify-content:center;font-size:80px;position:relative;overflow:hidden;min-height:320px;border-top:1px solid var(--line-on-black);}
.show-gallery img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;}
.gal-nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border:2px solid var(--white);background:rgba(14,14,14,.6);color:var(--white);display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:18px;transition:background-color 160ms var(--ease-out),border-color 160ms var(--ease-out),color 160ms var(--ease-out);z-index:2;}
.gal-nav:hover{background:var(--yellow);border-color:var(--yellow);color:var(--black);}
.gal-prev{left:12px;}.gal-next{right:12px;}
.related-section{padding:var(--band-top) var(--pad-x) var(--band-bottom);background:var(--white);color:var(--black);}
.related-title{font-family:var(--font-display);font-size:var(--size-h2);font-weight:800;text-transform:uppercase;line-height:.9;margin-bottom:36px;color:var(--black);}
:root:not([lang="en"]) .related-title{line-height:1;}
.related-title strong{font-weight:800;}
.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
@media(max-width:768px){.related-grid{grid-template-columns:1fr 1fr;gap:16px;}}
.rcard{position:relative;cursor:pointer;overflow:hidden;background:var(--black);aspect-ratio:3/2;border:1px solid var(--line-on-white);transition:transform 200ms var(--ease-out),border-color 200ms var(--ease-out);}
.rcard:hover{transform:scale(1.025);border-color:var(--yellow);z-index:1;}
.rcard-bg{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:40px;}
.rcard-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(14,14,14,.9) 0%,transparent 60%);}
.rcard-label{position:absolute;bottom:0;left:0;right:0;padding:14px 16px;font-family:var(--font-display);font-size:1.5rem;font-weight:800;line-height:.95;text-transform:uppercase;color:var(--white);}
.rcard-label span{color:var(--yellow);}
.ws-media{background:var(--black);display:flex;align-items:center;justify-content:center;position:relative;min-height:360px;overflow:hidden;}
.ws-media-emoji{font-size:100px;opacity:.5;}
.ws-highlights{padding:var(--band-top) var(--pad-x) var(--band-bottom);background:var(--white);color:var(--black);}
.ws-hl-title{font-family:var(--font-display);font-weight:800;font-size:var(--size-h3);line-height:.95;text-transform:uppercase;margin-bottom:24px;}
.ws-hl-list{list-style:none;display:flex;flex-direction:column;gap:14px;}
.ws-hl-list li{font-size:var(--size-body);line-height:1.5;display:flex;gap:12px;}
.ws-hl-list li::before{content:"→";font-weight:700;flex-shrink:0;}

/* Contact */
.contact-form-wrap{padding:var(--band-top) var(--pad-x) var(--band-bottom);background:var(--white);color:var(--black);}
.contact-form-wrap .ft-lbl{color:var(--black);font-size:var(--size-label);margin-bottom:20px;}
.contact-form-wrap .cform{max-width:780px;}
.team-section{padding:var(--band-top) var(--pad-x) var(--band-bottom);background:var(--black);}
.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:8px;}
@media(max-width:900px){.team-grid{grid-template-columns:repeat(2,1fr);gap:16px;}}
.team-card{position:relative;background:var(--black);border:1px solid var(--line-on-black);overflow:hidden;transition:border-color 200ms var(--ease-out);}
.team-card:hover{border-color:var(--yellow);}
.team-photo{position:relative;aspect-ratio:3/4;overflow:hidden;background:#1a1a1a;}
.team-photo img{width:100%;height:100%;object-fit:cover;object-position:center top;transition:transform 700ms var(--ease-out);}
.team-card:hover .team-photo img{transform:scale(1.05);}
.team-info{padding:20px;}
.team-name{font-family:var(--font-display);font-size:1.75rem;font-weight:800;text-transform:uppercase;line-height:.95;color:var(--white);}
.team-role{font-size:var(--size-label);color:var(--yellow);margin-top:8px;}
.team-contact{margin-top:12px;display:flex;flex-direction:column;gap:4px;}
.team-contact a,.team-contact span{font-size:.875rem;color:var(--ink-muted-on-black);text-decoration:none;transition:color 160ms var(--ease-out);line-height:1.5;overflow-wrap:anywhere;}
.team-contact a:hover{color:var(--yellow);}

/* Forms — white sharp fields, 48px, yellow ring (black on light bands) */
.cform{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
@media(max-width:600px){.cform{grid-template-columns:1fr;}}
.cform-full{grid-column:1/-1;}
.cinput{width:100%;min-height:48px;background:var(--white);border:1px solid var(--black);border-radius:0;color:var(--black);padding:12px 14px;font-size:1rem;font-family:var(--font-text);outline:none;}
.cinput:focus-visible{outline:3px solid var(--black);outline-offset:0;}
.cinput::placeholder{color:var(--ink-muted-on-white);}
.ctextarea{min-height:130px;resize:vertical;line-height:1.45;}
input[type="date"].cinput{color-scheme:light;}

/* BOOK — yellow band */
.book-section{padding:var(--band-top) var(--pad-x) var(--band-bottom);background:var(--yellow);color:var(--black);text-align:center;}
.book-title{font-family:var(--font-display);font-weight:800;font-size:var(--size-h2);text-transform:uppercase;line-height:.9;margin-bottom:16px;text-wrap:balance;}
:root:not([lang="en"]) .book-title{line-height:1;}
.book-title span{color:inherit;}
.book-sub{color:var(--black);font-size:var(--size-lead);font-weight:500;line-height:1.5;margin:0 auto 36px;max-width:60ch;}
.bform{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:640px;margin:0 auto;text-align:left;}
@media(max-width:600px){.bform{grid-template-columns:1fr;}}
.bform-full{grid-column:1/-1;}
.bform-submit{grid-column:1/-1;text-align:center;margin-top:8px;}
.ccheck-wrap{display:flex;align-items:center;gap:12px;cursor:pointer;padding:14px 0;border-top:1px solid rgba(14,14,14,.3);margin-top:4px;}
.ccheck-wrap input[type="checkbox"]{width:20px;height:20px;accent-color:var(--black);cursor:pointer;flex-shrink:0;}
.ccheck-wrap>span{font-family:var(--font-display);font-size:var(--size-label);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--black);}
.more-info-fields{display:none;flex-direction:column;gap:20px;padding:12px 0 4px;}
.more-info-fields.visible{display:flex;}
.mif-dates{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
@media(max-width:600px){.mif-dates{grid-template-columns:1fr;}}
.cdate-wrap{display:flex;flex-direction:column;gap:8px;}
.cdate-lbl{font-family:var(--font-display);font-size:var(--size-label);font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--black);}
.multi-day-check{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.875rem;color:var(--ink-on-yellow-muted);margin-top:6px;}
.multi-day-check input{accent-color:var(--black);width:16px;height:16px;flex-shrink:0;}
.multi-day-end{display:none;flex-direction:column;gap:8px;}
.cfield-group{display:flex;flex-direction:column;gap:8px;}
.copt-group{display:flex;flex-wrap:wrap;gap:8px;}
.copt-group label{display:flex;align-items:center;cursor:pointer;padding:10px 16px;min-height:44px;border:1px solid var(--black);background:var(--white);transition:background-color 160ms var(--ease-out),color 160ms var(--ease-out);font-size:.9375rem;color:var(--black);}
.copt-group label:hover{background:var(--surface-soft);}
.copt-group input{display:none;}
.copt-group label:has(input:checked){background:var(--black);color:var(--white);}
.provide-fields{display:none;flex-direction:column;gap:8px;}
.provide-fields.visible{display:flex;}

/* FOOTER */
footer{background:var(--black);border-top:1px solid var(--line-on-black);padding:var(--band-top) var(--pad-x) 32px;display:grid;grid-template-columns:1.8fr 1.2fr 1fr .8fr;gap:40px;align-items:start;}
@media(max-width:960px){footer{grid-template-columns:1fr 1fr;gap:32px;}}
@media(max-width:480px){footer{grid-template-columns:1fr;gap:28px;}}
.ft-lbl{font-size:var(--size-label);color:var(--ink-muted-on-black);margin-bottom:14px;}
.ft-brand-name{font-family:var(--font-display);font-weight:800;font-size:2.25rem;line-height:.95;color:var(--white);text-transform:uppercase;margin-bottom:12px;}
.ft-brand-name span{color:var(--yellow);}
.ft-brand-desc{font-size:.9375rem;color:var(--ink-muted-on-black);line-height:1.5;max-width:300px;}
.ft-contacts{display:flex;flex-direction:column;gap:16px;}
.ft-info{font-size:.9375rem;color:var(--ink-muted-on-black);line-height:1.6;}
.ft-info strong{color:var(--white);font-weight:700;display:block;}
.ft-role{font-size:.8125rem;color:var(--ink-muted-on-black);display:block;margin-bottom:2px;}
.ft-info a{color:var(--white);text-decoration:underline;text-underline-offset:.18em;text-decoration-thickness:1px;}
.ft-info a:hover{color:var(--yellow);}
.ft-ql{display:flex;flex-direction:column;gap:8px;}
.ft-link{font-family:var(--font-display);font-size:1.0625rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--white);text-decoration:none;cursor:pointer;transition:color 160ms var(--ease-out);background:none;border:none;text-align:left;padding:4px 0;min-height:32px;}
.ft-link:hover{color:var(--yellow);}
.ft-social-icons{display:flex;gap:10px;margin-top:4px;}
.ft-sicon{color:var(--white);font-size:20px;transition:background-color 160ms var(--ease-out),color 160ms var(--ease-out),border-color 160ms var(--ease-out);text-decoration:none;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line-on-black);border-radius:0;}
.ft-sicon:hover{background:var(--yellow);border-color:var(--yellow);color:var(--black);}
.ft-copy{grid-column:1/-1;border-top:1px solid var(--line-on-black);padding-top:20px;font-size:.875rem;color:var(--ink-muted-on-black);text-align:left;margin-top:8px;}

/* SUCCESS MODAL */
.smodal{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;background:rgba(14,14,14,.85);opacity:0;pointer-events:none;transition:opacity 200ms var(--ease-out);}
.smodal.show{opacity:1;pointer-events:all;}
.smodal-box{background:var(--black);border:1px solid var(--line-on-black);border-radius:0;padding:48px 40px;max-width:480px;width:90%;text-align:center;transform:translateY(24px);transition:transform 200ms var(--ease-out);position:relative;}
.smodal.show .smodal-box{transform:translateY(0);}
.smodal-icon{width:64px;height:64px;background:var(--yellow);border-radius:0;display:flex;align-items:center;justify-content:center;margin:0 auto 24px;font-size:32px;color:var(--black);}
.smodal-title{font-family:var(--font-display);font-weight:800;font-size:var(--size-h3);text-transform:uppercase;line-height:.95;color:var(--white);margin-bottom:16px;}
.smodal-msg{font-size:var(--size-body);color:var(--ink-muted-on-black);line-height:1.5;margin-bottom:32px;}
@media(max-width:480px){.smodal-box{padding:36px 24px;}}

/* VIDEO MODAL */
.vmodal{display:none;position:fixed;inset:0;z-index:1000;background:rgba(14,14,14,.95);align-items:center;justify-content:center;opacity:0;transition:opacity 200ms var(--ease-out);}
.vmodal.open{display:flex;opacity:1;}
.vmodal-inner{position:relative;width:90vw;max-width:1100px;aspect-ratio:16/9;background:var(--black);}
.vmodal-iframe{position:absolute;inset:0;width:100%;height:100%;border:none;}
.vmodal-close{position:absolute;top:-52px;right:0;background:none;border:none;color:var(--white);font-size:32px;cursor:pointer;line-height:1;padding:8px;transition:color 160ms var(--ease-out);display:flex;align-items:center;justify-content:center;width:48px;height:48px;}
.vmodal-close:hover{color:var(--yellow);}
@media(max-width:768px){.vmodal-inner{width:96vw;}.vmodal-close{top:-48px;right:0;}}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important;}}

/* ===== multi-page additions (static site) ===== */
/* header wrapper is the sticky element; nav links are real <a> */
.site-header{position:sticky;top:0;z-index:200;background:var(--black);}
.site-header nav{position:static;}
@media(max-width:768px){.site-header{position:relative;}}
.skip-link{position:absolute;left:-9999px;top:8px;z-index:1000;background:var(--yellow);color:var(--black);padding:12px 18px;font-family:var(--font-display);font-weight:700;text-transform:uppercase;letter-spacing:.06em;}
.skip-link:focus{left:8px;}
nav a.nl,nav a.btn-book,nav a.lbtn,.nav-logo{text-decoration:none;}
.lbtn{display:inline-flex;align-items:center;justify-content:center;}
.btn-primary,.btn-ghost,.btn-dark{text-decoration:none;}
.btn-dark{font-family:var(--font-display);font-size:1rem;font-weight:700;letter-spacing:.06em;line-height:1;text-transform:uppercase;border:2px solid var(--black);border-radius:0;padding:12px 22px;min-height:48px;display:inline-flex;align-items:center;justify-content:center;background:var(--black);color:var(--white);transition:background-color 160ms var(--ease-out);}
.btn-dark:hover{background:#2a2a2a;}

/* hero */
.hero-eyebrow{font-family:var(--font-display);font-size:var(--size-label);font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--yellow);margin:0 0 16px;line-height:1.2;}
.hero-title{margin-bottom:20px;}
.hero-sub{font-size:var(--size-lead);font-weight:500;line-height:1.5;color:var(--white);max-width:56ch;margin:0 0 32px;border-left:4px solid var(--yellow);padding-left:16px;}
.hero .hero-iframe{object-fit:cover;}
.stats-bar{border-bottom:0;}
.stats-note{background:var(--black);color:var(--ink-muted-on-black);text-align:center;padding:0 var(--pad-x) 40px;margin:0;max-width:none;font-size:var(--size-body);border-bottom:1px solid var(--line-on-black);}
.stat-num{white-space:nowrap;}

/* bands / typography */
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:start;margin-bottom:56px;}
@media(max-width:900px){.split{grid-template-columns:1fr;gap:20px;margin-bottom:40px;}}
.lead{font-size:var(--size-lead);font-weight:500;line-height:1.5;max-width:60ch;}
.section p{max-width:68ch;margin-bottom:1em;}
.section .lead{margin-bottom:1em;}
.section-title.sm{font-size:var(--size-h3);margin-bottom:20px;}
.sub-title{font-family:var(--font-display);font-weight:800;text-transform:uppercase;font-size:var(--size-h3);line-height:.95;margin:0 0 24px;}
.section--yellow{background:var(--yellow);color:var(--black);}
.section--yellow :focus-visible{outline-color:var(--black);}
.why-grid{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,205px),1fr));gap:20px;}
.why-grid li{border:1px solid var(--line-on-white);padding:24px;}
.why-grid h3{font-family:var(--font-display);font-weight:800;text-transform:uppercase;font-size:1.625rem;line-height:.95;margin:0 0 10px;}
.why-grid p{color:var(--ink-muted-on-white);font-size:1rem;margin:0;}
.tile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:24px;}
.tile{display:flex;flex-direction:column;gap:10px;border:1px solid var(--line-on-black);padding:24px;text-decoration:none;color:var(--white);transition:transform 200ms var(--ease-out),border-color 200ms var(--ease-out);}
.tile:hover{transform:scale(1.025);border-color:var(--yellow);}
.tile h3,.tile .tile-h{font-family:var(--font-display);font-weight:800;text-transform:uppercase;font-size:var(--size-h3);line-height:.95;margin:0;}
.tile p{color:var(--ink-muted-on-black);margin:0;font-size:1rem;}
.tile .link-arrow{margin-top:auto;padding-top:8px;color:var(--yellow);}
.values-grid{grid-template-columns:repeat(4,1fr);}
@media(max-width:900px){.values-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:768px){.values-grid{display:grid;grid-template-columns:1fr;overflow:visible;}.val-card{width:auto;}}
.steps{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:32px;counter-reset:s;}
.steps li{display:flex;gap:20px;align-items:flex-start;}
.step-n{font-family:var(--font-display);font-weight:800;font-size:var(--size-stat);line-height:.9;color:var(--yellow);font-variant-numeric:tabular-nums;}
.steps h3{font-family:var(--font-display);font-weight:800;text-transform:uppercase;font-size:var(--size-h3);line-height:.95;margin:0 0 8px;}
.steps p{margin:0;color:var(--ink-muted-on-black);}
.faq{max-width:860px;}
.faq-item{border-top:1px solid var(--line-on-white);}
.faq-item:last-child{border-bottom:1px solid var(--line-on-white);}
.faq-item summary{cursor:pointer;list-style:none;padding:20px 40px 20px 0;font-family:var(--font-display);font-weight:700;font-size:1.375rem;letter-spacing:.02em;text-transform:uppercase;position:relative;min-height:48px;}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{content:"+";position:absolute;right:4px;top:50%;transform:translateY(-50%);font-size:1.75rem;line-height:1;}
.faq-item[open] summary::after{content:"–";}
.faq-item p{padding:0 40px 24px 0;margin:0;max-width:68ch;}
.chips{display:flex;flex-wrap:wrap;gap:8px;}
.chips--center{justify-content:flex-start;margin-top:32px;}
.chip{display:inline-flex;align-items:center;min-height:40px;padding:6px 14px;border:1px solid currentColor;font-family:var(--font-display);font-weight:700;font-size:.9375rem;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;color:inherit;transition:background-color 160ms var(--ease-out),color 160ms var(--ease-out);}
a.chip:hover{background:var(--black);color:var(--yellow);}
.section--black a.chip:hover{background:var(--yellow);color:var(--black);}

/* breadcrumbs */
.crumbs{background:var(--black);border-bottom:1px solid var(--line-on-black);}
.crumbs-in{padding:16px var(--pad-x);font-family:var(--font-display);font-weight:700;font-size:var(--size-label);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted-on-black);display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.crumbs a{color:var(--ink-muted-on-black);text-decoration:none;}
.crumbs a:hover{color:var(--yellow);}
.crumbs .sep{opacity:.5;}
.crumbs [aria-current]{color:var(--white);}

/* cards as links */
a.acard,a.ecard{display:block;color:var(--white);text-decoration:none;}
.acard>img,.ecard>img{width:100%;height:100%;object-fit:cover;object-position:center 20%;transition:transform 700ms var(--ease-out);}
.acard:hover>img,.ecard:hover>img{transform:scale(1.05);}
.acard-overlay,.ecard-overlay{display:block;}
.acard-info,.ecard-info{display:block;}
.acard-name,.ecard-name,.acard-cat,.ecard-tag{display:block;}
.acard.is-hidden{display:none;}
.artists-grid--flat{padding:0;background:transparent;}
.rail{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding-bottom:4px;}
.rail::-webkit-scrollbar{display:none;}
.rail .acard{flex:0 0 min(78%,340px);aspect-ratio:3/4;scroll-snap-align:start;}
.see-all-center{margin-top:32px;max-width:none;}
.feat-header{margin-bottom:36px;}
.feat-header .section-title{margin-bottom:0;}

/* detail pages */
.show-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 25%;}
.show-media .yt-lite{text-decoration:none;}
.yt-lite iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
.yt-badge{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);background:rgba(14,14,14,.75);color:var(--white);font-family:var(--font-display);font-weight:700;font-size:.875rem;letter-spacing:.1em;text-transform:uppercase;padding:8px 16px;border:1px solid rgba(255,255,255,.3);pointer-events:none;white-space:nowrap;}
.show-content{padding-left:clamp(24px,4vw,56px);padding-right:var(--pad-x);}
.show-hero .show-media{min-height:min(56vw,520px);}
.detail-band{padding-top:var(--band-top);}
.detail-band .det-title{color:var(--black);}
.detail-band .det-row{max-width:68ch;}
.detail-band .det-row strong{color:var(--ink-muted-on-white);}
.detail-band .det-row span{color:var(--black);}
.detail-band .ws-hl-title{margin-bottom:24px;}
.prose-band .lead-block p{font-size:var(--size-lead);font-weight:500;max-width:62ch;}
.idea-list{list-style:none;display:grid;gap:14px;max-width:68ch;}
.idea-list li{position:relative;padding-left:28px;line-height:1.5;}
.idea-list li::before{content:"→";position:absolute;left:0;font-weight:700;}
.cta-band .section-title{margin-bottom:16px;}
.cta-band .lead{margin-bottom:28px;}
.contact-direct{margin-top:32px;display:flex;flex-wrap:wrap;gap:12px;}
.contact-form-wrap .bform{margin:0;max-width:780px;}
.contact-form-wrap .btn-ghost:hover{background:var(--black);color:var(--white);border-color:var(--black);}
.team-contact a{overflow-wrap:anywhere;}
.ft-info a[href^=tel]{display:inline-block;margin-top:2px;}
a.ft-link{display:block;}
.ft-brand-desc{margin:0;}

/* WhatsApp floating button (brand green kept) */
.wa-float{position:fixed;bottom:24px;right:24px;z-index:900;width:56px;height:56px;background:#25D366;border-radius:50%;display:flex;align-items:center;justify-content:center;text-decoration:none;}
.wa-float:hover{background:#1ebe5b;}
@media(max-width:768px){.wa-float{bottom:16px;right:16px;width:50px;height:50px;}}
.vmodal-close{background:none;}

/* mobile stats: 3 + 2 grid instead of a single overflowing row */
@media(max-width:768px){
  .stats-bar{display:grid;grid-template-columns:repeat(3,1fr);gap:28px 0;padding:32px 8px 24px;}
  .stat{padding:0 6px;min-width:0;}
  .stat:nth-child(3){border-right:none;}
  .stat-num{font-size:2.25rem;}
  .stat-lbl{font-size:.6875rem;letter-spacing:.06em;}
}

/* ===== Performance Styles (aerial pages) ===== */
.styles-band .lead{margin-bottom:36px;}
.style-grid{display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));}
.style-grid--2{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));max-width:880px;}
.style-card h3{font-family:var(--font-display);font-weight:800;text-transform:uppercase;font-size:var(--size-h3);line-height:.95;margin:20px 0 10px;}
.style-card p{color:var(--ink-muted-on-black);margin:0;font-size:1rem;max-width:44ch;}
.style-media{position:relative;aspect-ratio:4/5;overflow:hidden;background:#1a1a1a;border:1px solid var(--line-on-black);}
.style-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 700ms var(--ease-out);}
.style-card:hover .style-media img{transform:scale(1.04);}
.cross-link{margin-top:40px;max-width:none;}
.cross-link .link-arrow{color:var(--yellow);font-size:1.125rem;}
.show-desc + .show-desc{margin-top:-14px;}
.field-apparatus{display:grid;gap:8px;}
.field-apparatus select{appearance:auto;}
.show-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#1a1a1a;}
.show-play-btn[hidden]{display:none;}
.show-play-btn{border:0;background:transparent;cursor:pointer;padding:0;}

/* generic <nav> rules above are meant for the site header only */
nav.crumbs{display:block;position:static;padding:0;justify-content:initial;}
img[data-placeholder]{object-fit:contain !important;background:#1a1a1a;}

/* ===== photo gallery + lightbox (pattern of dunking-devils.com) ===== */
.gallery{columns:3;column-gap:12px;margin-top:12px;}
.gallery__item{display:block;width:100%;margin:0 0 12px;padding:0;border:0;background:#1a1a1a;cursor:zoom-in;overflow:hidden;break-inside:avoid;position:relative;}
.gallery__item img{display:block;width:100%;height:auto;transition:transform 700ms var(--ease-out);}
.gallery__item:hover img{transform:scale(1.04);}
.gallery__item:focus-visible{outline:3px solid var(--yellow);outline-offset:3px;}
@media(max-width:700px){.gallery{columns:2;column-gap:8px;}.gallery__item{margin-bottom:8px;}}
.gallery-band .section-eyebrow{color:var(--yellow);}
.related-band{border-top:1px solid var(--line-on-black);}
dialog.lb{border:0;padding:0;margin:0;width:100vw;height:100vh;max-width:none;max-height:none;background:rgba(14,14,14,.97);color:var(--white);}
dialog.lb:not([open]){display:none;}
dialog.lb::backdrop{background:rgba(14,14,14,.97);}
.lb__figure{margin:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:56px 72px 40px;}
.lb__img{max-width:100%;max-height:calc(100vh - 150px);width:auto;height:auto;object-fit:contain;}
.lb__count{font-family:var(--font-display);font-weight:700;letter-spacing:.13em;font-size:.875rem;color:var(--ink-muted-on-black);}
.lb__btn{position:absolute;display:flex;align-items:center;justify-content:center;width:48px;height:48px;border:0;border-radius:0;cursor:pointer;font-size:1.5rem;line-height:1;transition:background-color 160ms var(--ease-out),color 160ms var(--ease-out);}
.lb__prev,.lb__next{top:50%;transform:translateY(-50%);background:var(--yellow);color:var(--black);}
.lb__prev{left:16px;}.lb__next{right:16px;}
.lb__prev:hover,.lb__next:hover{background:var(--white);}
.lb__close{top:12px;right:16px;background:transparent;color:var(--white);font-size:2rem;}
.lb__close:hover{color:var(--yellow);}
@media(max-width:700px){.lb__figure{padding:56px 8px 64px;}.lb__prev,.lb__next{top:auto;bottom:12px;transform:none;}.lb__prev{left:calc(50% - 56px);}.lb__next{right:calc(50% - 56px);}}

/* ===== aerial pages: yellow facts band + white FAQ band ===== */
.facts-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:56px;align-items:start;}
@media(max-width:900px){.facts-grid{grid-template-columns:1fr;gap:40px;}}
.facts-band .det-title{font-family:var(--font-display);font-weight:800;text-transform:uppercase;font-size:var(--size-h2);line-height:.9;color:var(--black);margin:0 0 28px;}
.facts-band .det-row{max-width:none;margin-bottom:20px;font-size:1.0625rem;}
.facts-band .det-row strong{color:var(--ink-on-yellow-muted);}
.facts-band .det-row span{color:var(--black);}
.facts-band .chip{border:2px solid var(--black);color:var(--black);}
.facts-band a.chip:hover{background:var(--black);color:var(--yellow);}
.facts-band .chips{gap:10px;}
.faq-band .faq{max-width:860px;}

.gallery__item[hidden]{display:none;}
.gallery-more{margin:28px 0 0;max-width:none;}

/* duo cover photo (landscape, performer left of centre) */
.show-media--blur{background:#0b1220;isolation:isolate;}
.show-media--blur::before{content:"";position:absolute;inset:-30px;background:var(--bg) center/cover no-repeat;filter:blur(28px) brightness(.55);z-index:0;}
.show-media .show-img--fit{object-fit:contain;object-position:center;z-index:1;}
@media(max-width:768px){.show-hero--sq .show-media{min-height:min(125vw,540px);}}

/* play button on Performance Styles cards + video viewer */
.style-play{position:absolute;inset:0;width:100%;height:100%;border:0;padding:0;margin:0;cursor:pointer;display:flex;align-items:center;justify-content:center;background:rgba(14,14,14,.18);color:var(--white);transition:background-color 160ms var(--ease-out);}
.style-play:hover{background:rgba(14,14,14,.32);}
.style-play .play-circle{width:72px;height:72px;border:2px solid var(--white);background:rgba(14,14,14,.6);display:flex;align-items:center;justify-content:center;transition:background-color 160ms var(--ease-out),border-color 160ms var(--ease-out),color 160ms var(--ease-out);}
.style-play:hover .play-circle,.style-play:focus-visible .play-circle{background:var(--yellow);border-color:var(--yellow);color:var(--black);}
.style-play:focus-visible{outline:3px solid var(--yellow);outline-offset:-6px;}
.lb__video{max-width:100%;max-height:calc(100vh - 130px);width:auto;height:auto;background:#000;}
dialog.lb--video .lb__figure{padding:56px 24px 28px;}

.lb__seek{display:flex;gap:12px;justify-content:center;}
.lb__seekbtn{min-width:96px;height:44px;padding:0 18px;border:2px solid var(--white);background:transparent;color:var(--white);font-family:var(--font-display);font-weight:700;font-size:1.0625rem;letter-spacing:.06em;cursor:pointer;transition:background-color 160ms var(--ease-out),color 160ms var(--ease-out),border-color 160ms var(--ease-out);}
.lb__seekbtn:hover{background:var(--yellow);border-color:var(--yellow);color:var(--black);}
.lb__seekbtn:focus-visible{outline:3px solid var(--yellow);outline-offset:3px;}
dialog.lb--video .lb__figure{gap:12px;}
dialog.lb--video .lb__video{max-height:calc(100vh - 210px);}

/* technical diagram inside the yellow facts band */
.rig{margin-top:56px;}
.rig .gallery--single{columns:1;margin-top:0;max-width:1100px;}
.rig .gallery__item{margin:0;background:#fff;border:2px solid var(--black);cursor:zoom-in;}
.rig .gallery__item img{transition:none;}
.rig .gallery__item:hover img{transform:none;}
.rig__note{margin:16px 0 0;font-size:.9375rem;color:var(--ink-on-yellow-muted);max-width:68ch;}
.lb--single .lb__count,.lb--single .lb__prev,.lb--single .lb__next{display:none;}
.lb--single .lb__img{background:#fff;}

/* "Best for" chips in the hero; Key Facts + diagram side by side */
.hero-best{margin:6px 0 30px;}
.hero-best__lbl{font-family:var(--font-display);font-weight:700;letter-spacing:.13em;text-transform:uppercase;font-size:var(--size-label);color:var(--ink-muted-on-black);margin-bottom:10px;}
.hero-best .chips{gap:8px;}
.hero-best a.chip:hover{background:var(--yellow);border-color:var(--yellow);color:var(--black);}
.facts-grid--rig{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;}
@media(max-width:900px){.facts-grid--rig{grid-template-columns:1fr;gap:40px;}}
.facts-grid--rig .rig{margin-top:0;}

/* hero play button over the autoplaying (muted) video - opens the viewer with sound */
.show-media .show-play-btn{border:0;padding:0;margin:0;background:rgba(14,14,14,.10);transition:background-color 160ms var(--ease-out);}
.show-media .show-play-btn:hover{background:rgba(14,14,14,.30);}
.show-media .show-play-btn:focus-visible{outline:3px solid var(--yellow);outline-offset:-6px;}
.show-media .show-play-btn .yt-badge{bottom:20px;}

/* play icon: white at rest, black on the yellow hover state (the <button> default colour made it black) */
.show-play-btn,.style-play{color:var(--white);}
.play-circle{color:var(--white);}
.show-play-btn:hover .play-circle,.show-play-btn:focus-visible .play-circle,.style-play:hover .play-circle,.style-play:focus-visible .play-circle{color:var(--black);}

/* text selection on yellow surfaces: black highlight with yellow text (yellow-on-yellow was invisible) */
.section--yellow::selection, .section--yellow *::selection,
.book-section::selection, .book-section *::selection,
.facts-band::selection, .facts-band *::selection,
.cta-band::selection, .cta-band *::selection,
.btn-primary::selection, .btn-primary *::selection,
.btn-book::selection, .btn-book *::selection,
.fbtn.active::selection, .lbtn.active::selection,
.tcard-cta::selection, .smodal-btn::selection, .smodal-icon::selection,
.hero-title span::selection, .page-hero h1 span::selection, .page-hero h2 span::selection,
.yt-badge::selection { background: var(--black); color: var(--yellow); }
/* the white play square and the white cards inside yellow bands keep the normal yellow selection */
.rig .gallery__item::selection, .rig .gallery__item *::selection, .book-section .cinput::selection, .book-section .copt-group label::selection { background: var(--yellow); color: var(--black); }
.book-section .cinput::selection { background: var(--black); color: var(--white); }

/* auto-scrolling rail: snapping would fight the animation */
.rail--auto{scroll-snap-type:none;}
.rail--auto .acard{scroll-snap-align:none;}

/* ===== mobile menu (hamburger -> full-screen accordion), pattern of dunking-devils.com ===== */
.nav-toggle,.mnav{display:none;}
@media(max-width:860px){
  .site-header{position:sticky;top:0;}
  .site-header nav{flex-wrap:nowrap;gap:12px;padding:10px 16px;min-height:var(--header-h);}
  .nav-links{display:contents;}
  .nav-links .nl,.nav-links .lang-sw{display:none;}
  .nav-links .btn-book{margin-left:auto;min-height:44px;padding:0 16px;font-size:.9375rem;}
  .nav-logo img{height:26px !important;}
  .nav-toggle{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border:0;background:transparent;color:var(--white);cursor:pointer;flex:0 0 auto;}
  .nav-toggle:focus-visible{outline:3px solid var(--yellow);outline-offset:-3px;}
  .nav-toggle__bars,.nav-toggle__bars::before,.nav-toggle__bars::after{display:block;width:26px;height:3px;background:currentColor;content:"";transition:transform 200ms var(--ease-out),opacity 160ms var(--ease-out);}
  .nav-toggle__bars{position:relative;}
  .nav-toggle__bars::before{position:absolute;left:0;top:-8px;}
  .nav-toggle__bars::after{position:absolute;left:0;top:8px;}
  .nav-toggle[aria-expanded="true"] .nav-toggle__bars{background:transparent;}
  .nav-toggle[aria-expanded="true"] .nav-toggle__bars::before{transform:translateY(8px) rotate(45deg);}
  .nav-toggle[aria-expanded="true"] .nav-toggle__bars::after{transform:translateY(-8px) rotate(-45deg);}
  .mnav{position:absolute;left:0;right:0;top:100%;max-height:calc(100vh - var(--header-h));max-height:calc(100dvh - var(--header-h));overflow-y:auto;background:var(--black);border-top:1px solid var(--line-on-black);padding:0 24px 40px;-webkit-overflow-scrolling:touch;}
  .mnav:not([hidden]){display:block;}
  .mnav__list{list-style:none;margin:0;padding:0;}
  .mnav__item{border-bottom:1px solid var(--line-on-black);}
  .mnav__link{display:block;padding:24px 0;color:var(--white);font-family:var(--font-display);font-weight:800;font-size:2rem;line-height:1;text-transform:uppercase;letter-spacing:.02em;text-decoration:none;}
  .mnav__link:hover,.mnav__link:focus-visible{color:var(--yellow);}
  .mnav__cta{display:flex;width:100%;margin-top:32px;min-height:56px;font-size:1.25rem;}
  .lang{position:relative;margin-top:24px;}
  .lang__toggle{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 16px;background:transparent;border:1px solid var(--line-on-black);color:var(--white);font-family:var(--font-display);font-weight:700;font-size:1.0625rem;letter-spacing:.1em;cursor:pointer;}
  .lang__toggle:focus-visible{outline:3px solid var(--yellow);outline-offset:2px;}
  .lang__toggle img,.lang__item img{width:20px;height:14px;display:block;}
  .lang__chev{width:12px;height:8px;transition:transform 200ms var(--ease-out);}
  .lang__toggle[aria-expanded="true"] .lang__chev{transform:rotate(180deg);}
  .lang__menu{list-style:none;margin:8px 0 0;padding:0;border:1px solid var(--line-on-black);background:var(--black);}
  .lang__menu[hidden]{display:none;}
  .lang__item{display:flex;align-items:center;gap:12px;min-height:52px;padding:0 16px;color:var(--white);text-decoration:none;font-family:var(--font-display);font-weight:700;letter-spacing:.08em;}
  .lang__name{font-family:var(--font-body);font-weight:400;letter-spacing:0;color:var(--ink-muted-on-black);}
  .lang__item.is-current{color:var(--yellow);}
  a.lang__item:hover,a.lang__item:focus-visible{color:var(--yellow);}
  body.menu-open{overflow:hidden;}
}
@media(max-width:860px){
  .nav-links .btn-book{white-space:nowrap;padding:0 14px;font-size:.875rem;letter-spacing:.05em;}
  .nav-logo img{height:22px !important;}
  .site-header nav{gap:8px;padding:10px 12px 10px 16px;}
}
@media(max-width:360px){.nav-logo img{height:20px !important;}.nav-links .btn-book{padding:0 10px;}}
@media(max-width:860px){
  .mnav{height:calc(100vh - var(--header-h));height:calc(100dvh - var(--header-h));}
}
body.menu-open .wa-float{display:none;}

@media(max-width:600px){.artists-grid[data-grid]{grid-template-columns:1fr;gap:16px;}}
.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;}
.facts-grid--solo{grid-template-columns:minmax(0,1fr);max-width:920px;}

/* icon-style Key facts row */
.kf{border:1px solid var(--black);padding:36px 0 0;position:relative;margin-top:14px;}
.kf__tag{position:absolute;top:-14px;left:20px;margin:0;background:var(--yellow);color:var(--black);font-family:var(--font-display);font-weight:800;font-size:1.25rem;letter-spacing:.06em;text-transform:uppercase;line-height:1;padding:9px 18px;}
.kf__grid{display:grid;grid-template-columns:repeat(var(--n,6),minmax(0,1fr));}
.kf__cell{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:8px 14px 28px;border-left:1px solid #d8d8d8;color:var(--black);}
.kf__cell:first-child{border-left:0;}
.kf__ico{color:var(--black);margin-bottom:4px;}
.kf__lbl{font-family:var(--font-display);font-weight:800;font-size:1rem;letter-spacing:.04em;text-transform:uppercase;line-height:1.1;}
.kf__val{font-family:var(--font-display);font-weight:700;font-size:1.5rem;line-height:1.1;}
.kf__val--txt{font-family:var(--font-body);font-weight:500;font-size:1rem;line-height:1.35;}
.kf__sub{font-size:.9375rem;color:var(--ink-muted-on-white);line-height:1.3;}
@media(max-width:1000px){.kf__grid{grid-template-columns:repeat(3,minmax(0,1fr));}.kf__cell:nth-child(4){border-left:0;}.kf__cell:nth-child(n+4){border-top:1px solid #d8d8d8;padding-top:24px;}}
@media(max-width:560px){.kf__grid{grid-template-columns:repeat(2,minmax(0,1fr));}.kf__cell{border-left:0;border-top:1px solid #d8d8d8;padding:22px 10px 22px;}.kf__cell:nth-child(odd){border-right:1px solid #d8d8d8;}.kf__cell:nth-child(-n+2){border-top:0;}.kf{padding-top:30px;}}
.detail-band .rig{margin-top:40px;}

/* Dunking Devils page blocks */
.what-band .lead{max-width:70ch;margin-bottom:48px;}
.what-band .section-title.sm{margin-top:8px;}
.fmt-wrap{overflow-x:auto;border:1px solid var(--line-on-black);}
.fmt{width:100%;border-collapse:collapse;text-align:left;min-width:640px;}
.fmt th,.fmt td{padding:18px 20px;border-bottom:1px solid var(--line-on-black);vertical-align:top;font-size:1.0625rem;}
.fmt thead th{font-family:var(--font-display);font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:.9375rem;color:var(--yellow);}
.fmt tbody th{font-family:var(--font-display);font-weight:700;font-size:1.25rem;color:var(--white);}
.fmt tbody th a{color:var(--white);text-decoration:underline;text-decoration-color:var(--yellow);text-underline-offset:4px;}
.fmt td{color:var(--ink-muted-on-black);}
.fmt tbody tr:last-child th,.fmt tbody tr:last-child td{border-bottom:0;}
.facts-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 56px;}
@media(max-width:800px){.facts-cols{grid-template-columns:1fr;}}
.proof{list-style:none;margin:0;padding:0;display:grid;gap:0;max-width:900px;}
.proof li{padding:20px 0;border-bottom:1px solid var(--line-on-black);font-size:1.125rem;color:var(--ink-muted-on-black);}
.proof li strong{color:var(--white);font-family:var(--font-display);font-weight:800;text-transform:uppercase;letter-spacing:.03em;font-size:1.25rem;}
.proof .link-arrow{margin-left:8px;}
.quotes{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:32px;}
.quote{margin:0;border-left:6px solid var(--yellow);padding:4px 0 4px 24px;}
.quote blockquote{margin:0;font-family:var(--font-display);font-weight:700;font-size:1.75rem;line-height:1.15;color:var(--black);}
.quote blockquote p{margin:0;}
.quote figcaption{margin-top:14px;color:var(--ink-muted-on-white);font-size:1rem;}
.more-dd{margin-top:32px;color:var(--ink-muted-on-white);}
.more-dd a{color:var(--black);font-weight:600;}
.proof .link-arrow{color:var(--yellow);text-decoration:none;}
.facts-cols--one{grid-template-columns:1fr;}
.facts-grid--rig .rig{margin-top:0;}

@media(min-width:1001px){.kf__grid[style*="--n:8"] .kf__cell{padding-left:10px;padding-right:10px;}.kf__grid[style*="--n:8"] .kf__val{font-size:1.25rem;}.kf__grid[style*="--n:8"] .kf__val--txt{font-size:.9375rem;}.kf__grid[style*="--n:8"] .kf__lbl{font-size:.875rem;}}
@media(max-width:1000px){.kf__grid[style*="--n:8"]{grid-template-columns:repeat(4,minmax(0,1fr));}.kf__grid[style*="--n:8"] .kf__cell:nth-child(4){border-left:1px solid #d8d8d8;}.kf__grid[style*="--n:8"] .kf__cell:nth-child(5){border-left:0;}.kf__grid[style*="--n:8"] .kf__cell:nth-child(n+5){border-top:1px solid #d8d8d8;padding-top:24px;}.kf__grid[style*="--n:8"] .kf__cell:nth-child(n+4):nth-child(-n+4){border-top:0;padding-top:8px;}}
@media(max-width:560px){.kf__grid[style*="--n:8"]{grid-template-columns:repeat(2,minmax(0,1fr));}.kf__grid[style*="--n:8"] .kf__cell{border-left:0;border-top:1px solid #d8d8d8;padding:22px 10px;}.kf__grid[style*="--n:8"] .kf__cell:nth-child(odd){border-right:1px solid #d8d8d8;}.kf__grid[style*="--n:8"] .kf__cell:nth-child(-n+2){border-top:0;}}
.facts-tiles .rig .gallery--single{max-width:700px;}

/* stats as badges (white / outline / yellow), numbers still count up */
.stats-bar{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;padding:var(--band-top) var(--pad-x) 28px;}
.stat{flex:0 0 auto;display:inline-flex;align-items:baseline;gap:.4em;padding:12px 22px;border:2px solid var(--yellow);text-align:left;font-family:var(--font-display);font-weight:800;text-transform:uppercase;font-size:clamp(1.25rem,1rem + 1vw,1.75rem);line-height:1;letter-spacing:.02em;min-width:0;}
.stat:last-child{border-right:2px solid var(--yellow);}
.stat:nth-child(3n+1){background:var(--white);border-color:var(--white);color:var(--black);}
.stat:nth-child(3n+2){background:transparent;color:var(--yellow);}
.stat:nth-child(3n){background:var(--yellow);color:var(--black);}
.stat-num{font-size:inherit;color:inherit;line-height:1;display:inline-block;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;}
.stat-lbl{font-size:inherit;color:inherit;margin:0;letter-spacing:.02em;text-align:left;}
@media(max-width:768px){
  .stats-bar{display:flex;grid-template-columns:none;gap:8px;padding:28px 12px 20px;}
  .stat,.stat:nth-child(3),.stat:last-child{padding:9px 14px;font-size:1.0625rem;border:2px solid var(--yellow);}
  .stat:nth-child(3n+1){border-color:var(--white);}
  .stat-num{font-size:inherit;}
  .stat-lbl{font-size:inherit;letter-spacing:.02em;}
}

/* phone = swipeable square cards (1.5 visible) + arrows: why / values / event types */
.why-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;}
.why-arrows{display:none;}
.section--white .why-arrows .carousel-arrow{border-color:var(--black);}
.section--white .why-arrows .carousel-arrow svg{stroke:var(--black);}
@media(max-width:768px){
  .why-head{margin-bottom:20px;align-items:center;}
  .why-head .sub-title,.why-head .section-title{margin-bottom:0;}
  .why-arrows{display:flex;}
  .swipe-row.why-grid,.swipe-row.values-grid,.swipe-row.tile-grid{display:flex;grid-template-columns:none;gap:16px;overflow-x:auto;overflow-y:visible;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;margin-inline:calc(-1 * var(--pad-x));padding-inline:var(--pad-x);scroll-padding-inline:var(--pad-x);padding-bottom:8px;scrollbar-width:none;}
  .swipe-row::-webkit-scrollbar{display:none;}
  .swipe-row > *{flex:0 0 calc((100% + var(--pad-x) - 16px) / 1.5);width:auto;aspect-ratio:1/1;scroll-snap-align:start;padding:18px;display:flex;flex-direction:column;}
  .swipe-row .why-grid h3,.why-grid h3,.val-title,.tile h3,.tile .tile-h{font-size:1.375rem;margin-bottom:8px;line-height:.95;}
  .why-grid p,.val-desc,.tile p{font-size:.9375rem;line-height:1.35;}
  .swipe-row .tile:hover{transform:none;}
}

/* compact footer */
footer{padding:40px var(--pad-x) 18px;gap:24px 40px;grid-template-columns:1.2fr 2fr .9fr;}
.ft-brand-name{font-size:1.75rem;margin-bottom:8px;}
.ft-brand-desc{font-size:.875rem;line-height:1.45;}
.ft-lbl{margin-bottom:10px;}
.ft-contacts{display:grid;grid-template-columns:1fr 1fr;gap:8px 28px;align-items:start;}
.ft-contacts .ft-lbl,.ft-contacts .ft-link{grid-column:1/-1;}
.ft-contacts .ft-lbl{margin-bottom:2px;}
.ft-info{font-size:.875rem;line-height:1.5;}
.ft-ql{gap:4px;}
.ft-link{font-size:1rem;}
.ft-copy{padding-top:14px;margin-top:0;}
@media(max-width:960px){footer{grid-template-columns:1fr 1fr;gap:22px 28px;padding-top:32px;}.ft-brand{grid-column:1/-1;}.ft-contacts{grid-template-columns:1fr;}}
@media(max-width:480px){footer{grid-template-columns:1fr 1fr;gap:20px 20px;}.ft-contacts{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:8px 16px;}.ft-info a{overflow-wrap:anywhere;}}
@media(max-width:600px){.ft-ql{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;gap:6px 20px;}.ft-ql .ft-lbl{flex:0 0 100%;margin-bottom:2px;}.ft-ql a.ft-link{display:inline-block;}}

/* Trusted by: full row from the start, swipe / drag, endless auto-scroll (JS) */
.clients{padding:28px 0 32px;}
.clients-scroll{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch;cursor:grab;user-select:none;-webkit-user-select:none;touch-action:pan-x pan-y;}
.clients-scroll::-webkit-scrollbar{display:none;}
.clients-scroll.is-drag{cursor:grabbing;}
.clients-track{display:flex;align-items:center;gap:0;width:max-content;animation:none;}
.clients-track:hover{animation-play-state:running;}
.client-logo{flex:0 0 auto;height:60px;width:auto;max-width:160px;margin-right:80px;object-fit:contain;pointer-events:none;-webkit-user-drag:none;}
@media(max-width:768px){.clients{padding:22px 0 24px;}.client-logo{height:48px;margin-right:48px;}}

/* phone cards: no hover-scale (it clipped the top border inside the scroller), less empty space */
@media(max-width:768px){
  .swipe-row > *:hover,.swipe-row .val-card:hover,.swipe-row .tile:hover{transform:none;}
  .swipe-row{padding-top:2px;}
  .swipe-row.values-grid > *,.swipe-row.why-grid > *{flex-basis:calc((100% + var(--pad-x) - 16px) / 1.7);aspect-ratio:auto;padding:16px;}
  .swipe-row.values-grid,.swipe-row.why-grid{align-items:stretch;}
  .swipe-row.why-grid h3,.swipe-row.values-grid .val-title{font-size:1.25rem;margin-bottom:6px;}
  .swipe-row.why-grid p,.swipe-row.values-grid .val-desc{font-size:.875rem;line-height:1.35;}
}
.why-head > h2{min-width:0;flex:1 1 auto;}
@media(max-width:768px){.why-head > h2.section-title{font-size:1.875rem;line-height:.95;}}
.why-arrows{flex:0 0 auto;}

/* collapsible intro paragraph (phones): first sentence + chevron */
.ic-btn{display:none;}
@media(max-width:768px){
  .ic.ic-ready .ic-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;margin-left:8px;vertical-align:middle;background:transparent;border:2px solid var(--yellow);color:var(--yellow);cursor:pointer;}
  .ic.ic-ready .ic-btn svg{transition:transform 200ms var(--ease-out);}
  .ic.ic-ready.is-open .ic-btn svg{transform:rotate(180deg);}
  .ic.ic-ready .ic-rest{display:none;}
  .ic.ic-ready.is-open .ic-rest{display:block;margin-top:10px;}
  .ic-btn:focus-visible{outline:3px solid var(--white);outline-offset:2px;}
}

/* shows filter on phones: 3 per row, full width, big touch targets */
@media(max-width:768px){
  .filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:16px;}
  .filters .filter-lbl{grid-column:1/-1;margin-bottom:2px;}
  .filters .fbtn{width:100%;min-height:52px;padding:8px 6px;font-size:.9375rem;letter-spacing:.04em;display:flex;align-items:center;justify-content:center;text-align:center;line-height:1.05;}
  .filters .fbtn:last-of-type:nth-of-type(3n+2){grid-column:span 2;}
  .filters .fbtn:last-of-type:nth-of-type(3n+1){grid-column:1/-1;}
}

/* optional note card under the Key facts tiles (e.g. workshops) */
.kf-note{border:1px solid var(--black);position:relative;margin-top:36px;padding:32px 24px 22px;max-width:520px;}
.kf-note__tag{position:absolute;top:-14px;left:20px;margin:0;background:var(--yellow);color:var(--black);font-family:var(--font-display);font-weight:800;font-size:1.125rem;letter-spacing:.06em;text-transform:uppercase;line-height:1;padding:9px 16px;}
.kf-note__body{display:flex;gap:16px;align-items:flex-start;}
.kf-note__body p{margin:0;font-size:1.0625rem;line-height:1.45;color:var(--black);}
.facts-tiles + .faq-band{padding-top:0;}

/* "You might also like" on show pages (phones): 1.5 cards visible, swipe or arrows */
@media(max-width:768px){
  .swipe-row.artists-grid{display:flex;grid-template-columns:none;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;margin-inline:calc(-1 * var(--pad-x));padding:2px var(--pad-x) 8px;scroll-padding-inline:var(--pad-x);scrollbar-width:none;}
  .swipe-row.artists-grid > .acard{flex:0 0 calc((100% + var(--pad-x) - 16px) / 1.5);aspect-ratio:3/4;padding:0;display:block;scroll-snap-align:start;}
  .swipe-row.artists-grid > .acard:hover{transform:none;}
  .related-band .cross-link{margin-top:16px;}
}

/* shows page (phones): tighter intro/filter spacing, smaller filter buttons, chevron on the right of the first line */
@media(max-width:768px){
  .page-hero:has(.ic){padding-bottom:20px;}
  .ic.ic-ready{display:flex;flex-wrap:wrap;align-items:flex-start;gap:0 12px;}
  .ic.ic-ready .ic-first{flex:1 1 0;min-width:0;}
  .ic.ic-ready .ic-btn{margin-left:0;flex:0 0 auto;width:32px;height:32px;margin-top:2px;}
  .ic.ic-ready .ic-rest{flex:0 0 100%;}
  .filters{padding:12px 16px 14px;gap:6px;}
  .filters .fbtn{min-height:42px;padding:6px 4px;font-size:.8125rem;}
}
.show-title .h1-yellow{color:var(--yellow);}

/* two Key facts columns (Trampwall one-sided / two-sided), each with its stage diagram */
.kf-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;align-items:start;}
@media(max-width:900px){.kf-groups{grid-template-columns:1fr;gap:48px;}}
.kf-col .rig{margin-top:28px;}
.kf-col .rig .gallery--single{max-width:none;}
.kf--group .kf__tag{font-size:1.0625rem;max-width:calc(100% - 40px);line-height:1.15;}
.kf--group .kf__grid{grid-template-columns:repeat(2,minmax(0,1fr));}
.kf--group .kf__grid .kf__cell{border:0;border-top:1px solid #d8d8d8;border-left:1px solid #d8d8d8;padding:20px 12px;}
.kf--group .kf__grid .kf__cell:nth-child(odd){border-left:0;}
.kf--group .kf__grid .kf__cell:nth-child(-n+2){border-top:0;}

/* home gallery: rotating random photos, artist name in the corner */
.gallery-home .section-eyebrow{color:var(--yellow);}
/* content-width grid like the other galleries: 8 photos (4 x 2) on desktop and tablets, 6 (2 x 3) on phones */
.hg-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:8px 0 0;}
@media(max-width:900px){.hg-grid{gap:10px;}}
@media(max-width:560px){.hg-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}}
.hg-tile{position:relative;aspect-ratio:1/1;overflow:hidden;background:#1a1a1a;}
.hg-open{position:absolute;inset:0;display:block;width:100%;height:100%;padding:0;border:0;background:none;cursor:zoom-in;}
.hg-open img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform 700ms var(--ease-out);}
.hg-tile:hover .hg-open img{transform:scale(1.05);}
.hg-open img.hg-new{opacity:0;transition:opacity 800ms ease;}
.hg-open img.hg-new.is-in{opacity:1;}
.hg-open:focus-visible{outline:3px solid var(--yellow);outline-offset:-3px;}
.hg-name{position:absolute;left:0;bottom:0;max-width:calc(100% - 12px);padding:7px 11px;background:var(--black);color:var(--yellow);font-family:var(--font-display);font-weight:800;font-size:.875rem;letter-spacing:.06em;text-transform:uppercase;line-height:1.1;text-decoration:none;z-index:2;}
.hg-name:hover,.hg-name:focus-visible{background:var(--yellow);color:var(--black);}
@media(max-width:560px){.hg-name{font-size:.75rem;padding:6px 9px;}}
.lb--home .lb__count a{color:var(--yellow);text-decoration:none;font-weight:800;}
.lb--home .lb__count a:hover{text-decoration:underline;}
.gallery-home + .section--black{border-top:1px solid var(--line-on-black);}

/* lightbox on phones: use the dynamic viewport so the buttons are never below the browser bars; tapping the photo halves navigates */
dialog.lb{height:100vh;height:100dvh;max-height:none;}
@media(max-width:700px){
  .lb__img{max-height:calc(100dvh - 190px);}
  .lb__prev,.lb__next{bottom:max(16px,env(safe-area-inset-bottom));}
  .lb__figure{padding-bottom:84px;}
}
.hg-more{margin:28px 0 0;max-width:none;text-align:center;}
@media(max-width:560px){.hg-tile:nth-child(n+7){display:none;}.hg-more{margin-top:20px;}}

/* animation overview on tablets / phones: same card size and shape as the equipment cards (2 per row, 3:4) */
@media(max-width:900px){
  .artists-grid--anim{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
  .artists-grid--anim .acard{aspect-ratio:3/4;}
  .artists-grid--anim .acard-info{padding:16px;}
  .artists-grid--anim .acard-name{font-size:1.75rem;}
  .artists-grid--anim .acard-cat{font-size:.75rem;}
}
@media(max-width:480px){.artists-grid--anim{gap:12px;}}

/* Reference videos: 3 click-to-play videos in a row */
.ref-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:8px;}
@media(max-width:900px){.ref-grid{grid-template-columns:1fr;gap:28px;}}
.ref-video{margin:0;}
.ref-video{position:relative;}
.ref-video__link{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:#1a1a1a;border:1px solid var(--line-on-black);}
.ref-video__link img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 600ms var(--ease-out);}
.ref-video__link:hover img{transform:scale(1.04);}
.ref-video__link .play-circle{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);}
.ref-video iframe{display:block;width:100%;aspect-ratio:16/9;height:auto;border:0;position:static;}
.ref-video figcaption{margin-top:12px;color:var(--ink-muted-on-black);font-size:.9375rem;line-height:1.35;}

/* vertical reference videos: second row, 9:16, native controls */
.ref-grid--v{grid-template-columns:repeat(2,minmax(0,1fr));max-width:760px;margin-top:32px;gap:24px;}
@media(max-width:600px){.ref-grid--v{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}}
.ref-video--v video{display:block;width:100%;aspect-ratio:9/16;object-fit:cover;background:#000;border:1px solid var(--line-on-black);}
.ref-vwrap{position:relative;}
.ref-vplay{display:none;position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:pointer;color:var(--white);}
.ref-vwrap.is-ready .ref-vplay{display:block;}
.ref-vwrap.is-playing .ref-vplay{display:none;}
.ref-vplay .play-circle{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);}
.ref-vplay:hover .play-circle{background:var(--yellow);color:var(--black);}
.ref-vplay:focus-visible{outline:3px solid var(--yellow);outline-offset:-3px;}

/* Key facts card on the left, picture card on the right: same frame, same tab heading, equal height */
.kf-side{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:stretch;}
@media(max-width:900px){.kf-side{grid-template-columns:1fr;gap:36px;}}
.kf-side__l,.kf-side__r{display:flex;flex-direction:column;}
.kf-side .kf{margin-top:14px;flex:1;display:flex;flex-direction:column;}
.kf-side .kf__grid{flex:1;grid-auto-rows:1fr;}
.kf--img{padding:36px 18px 18px;}
.kf--img .rig{margin-top:0;display:flex;flex-direction:column;flex:1;}
.kf--img .rig .gallery--single{max-width:none;margin:0;}
.kf--img .rig__note{margin:12px 0 0;color:var(--ink-muted-on-white);font-size:.9375rem;}
.kf--img .gallery__item{border:1px solid var(--black);}
.kf-side__l .kf-note{margin-top:20px;max-width:none;}

/* every yellow surface with dark text: the selection highlight is black with yellow text (yellow on yellow is invisible) */
.kf__tag::selection, .kf-note__tag::selection, .kf__tag *::selection, .kf-note__tag *::selection,
.stat:nth-child(3n)::selection, .stat:nth-child(3n) *::selection,
.hg-name:hover::selection, .hg-name:focus-visible::selection,
.skip-link::selection, .btn-book::selection, .btn-book *::selection,
.section--black a.chip:hover::selection, .hero-best a.chip:hover::selection,
.lb__prev::selection, .lb__next::selection, .lb__seekbtn:hover::selection,
.gal-nav:hover::selection, .ft-sicon:hover::selection, .acard-arrow::selection, .acard-arrow *::selection,
.play-circle::selection, .play-circle *::selection,
.section--yellow a::selection, .section--yellow button::selection, .section--yellow input::selection { background: var(--black); color: var(--yellow); }
/* exception kept: white tiles inside yellow bands */
.section--yellow .kf::selection, .facts-tiles .kf__cell::selection, .facts-tiles .kf__cell *::selection { background: var(--yellow); color: var(--black); }
.facts-tiles .kf__tag::selection, .facts-tiles .kf-note__tag::selection { background: var(--black); color: var(--yellow); }
.lb__prev *::selection, .lb__next *::selection, .lb__seekbtn:hover *::selection, .gal-nav:hover *::selection, .ft-sicon:hover *::selection, .hg-name:hover *::selection { background: var(--black); color: var(--yellow); }
.detail-band + .faq-band{padding-top:0;}

/* event-type pages */
.evt-benefits{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--c,3),minmax(0,1fr));gap:20px;}
@media(max-width:1000px){.evt-benefits{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:600px){.evt-benefits{grid-template-columns:1fr;}}
.evt-benefits li{border:1px solid var(--line-on-white);padding:24px 24px 26px;border-top:6px solid var(--yellow);}
.evt-benefits h3{font-family:var(--font-display);font-weight:800;text-transform:uppercase;font-size:1.5rem;line-height:.98;margin:0 0 10px;}
.evt-benefits p{margin:0;color:var(--ink-muted-on-white);font-size:1.0625rem;line-height:1.5;}
.evt-ideas{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:16px 28px;counter-reset:none;}
.evt-ideas li{display:flex;gap:16px;align-items:flex-start;border-top:1px solid var(--line-on-black);padding:18px 0;font-size:1.0625rem;line-height:1.5;color:var(--ink-muted-on-black);}
.evt-ideas strong{color:var(--white);font-weight:700;}
.evt-n{flex:0 0 auto;font-family:var(--font-display);font-weight:800;font-size:2rem;line-height:.9;color:var(--yellow);min-width:1.4em;}
.evt-refs{margin-top:32px;border-left:6px solid var(--yellow);padding:4px 0 4px 20px;max-width:760px;}
.evt-refs p{margin:6px 0;color:var(--white);font-size:1.0625rem;}
.artists-grid--events{grid-template-columns:repeat(3,minmax(0,1fr));}
@media(max-width:900px){.artists-grid--events{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:560px){.artists-grid--events{grid-template-columns:1fr;}}
.artists-grid--events .acard{aspect-ratio:4/3;}
.artists-grid--events .acard-info{padding:20px;}
.show-hero .hero-ctas{margin-top:24px;display:flex;flex-wrap:wrap;gap:12px;}
