:root{
  --bg:#070709;
  --soft:#0d0d11;
  --panel:#111117;
  --text:#f7f7f8;
  --muted:#a0a0aa;
  --line:#292932;
  --pink:#ff1271;
  --pink-bright:#ff0d6f;
  --green:#83c800;
  --max:1240px;
  --header-max:1400px;
  --hero-max:1400px;
  --radius:22px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility
}
body.nav-open{overflow:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
button,input,select,textarea{font:inherit}

.screen-reader-text{
  position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0
}

/* GLOBAL CONTAINERS */
.b2p-container{width:min(var(--max),calc(100% - 40px));margin-inline:auto}
.b2p-header-container{width:min(var(--header-max),calc(100% - 56px));margin-inline:auto}
.b2p-hero-container{position:relative;z-index:3;width:min(var(--hero-max),calc(100% - 56px));margin-inline:auto}
.b2p-reading{max-width:920px}
.b2p-page{padding:170px 0 100px;min-height:70vh}

.b2p-page h1,.b2p-artist-copy h1{
  font-size:clamp(3rem,7vw,6.4rem);line-height:.96;letter-spacing:-.055em;margin:.2em 0 .35em
}

.b2p-eyebrow{
  margin:0 0 18px;color:var(--pink);font-size:.74rem;font-weight:800;
  letter-spacing:.2em;text-transform:uppercase
}

.b2p-lead{color:#d1d1d7;font-size:clamp(1.05rem,1.5vw,1.3rem);max-width:760px}
.b2p-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}

.b2p-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:12px;
  min-height:52px;padding:0 24px;border:1px solid var(--pink);border-radius:9px;
  background:var(--pink);color:#fff;text-decoration:none;font-weight:600;
  box-shadow:0 12px 30px rgba(255,18,113,.24);
  transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease
}
.b2p-btn:hover{transform:translateY(-2px);box-shadow:0 16px 38px rgba(255,18,113,.32)}
.b2p-btn--ghost{background:transparent;border-color:#4a4a55;box-shadow:none}

/* HEADER + HERO ARE ONE VISUAL SCENE */
.site-header{
  position:fixed;
  inset:0 0 auto;
  z-index:1000;
  background:transparent;
  border-bottom:1px solid transparent;
  transition:background .22s ease,backdrop-filter .22s ease,border-color .22s ease,box-shadow .22s ease
}

body:not(.home) .site-header{
  background:rgba(7,7,9,.95);
  border-bottom-color:rgba(255,255,255,.06)
}

.site-header.is-scrolled{
  background:rgba(5,5,8,.90);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  border-bottom-color:rgba(255,255,255,.07);
  box-shadow:0 12px 35px rgba(0,0,0,.20)
}

.site-header__inner{
  height:88px;
  display:flex;
  align-items:center;
  gap:28px
}

/* Logo */
.b2p-brand{
  position:relative;
  z-index:2;
  display:inline-flex;
  flex-direction:column;
  justify-content:center;
  flex:0 0 auto;
  min-width:240px;
  text-decoration:none;
  line-height:1
}

.b2p-brand .custom-logo-link{display:block}
.custom-logo{
  width:auto;
  max-width:245px;
  max-height:64px;
  object-fit:contain
}

.b2p-brand__name{font-size:2rem;letter-spacing:-.065em}
.b2p-brand__name span{color:var(--green);font-weight:900}
.b2p-brand small{margin-top:8px;font-size:.62rem;letter-spacing:.46em;color:#d2d2d6}

/* Nav */
.primary-nav{
  margin-left:auto;
  display:flex;
  align-items:center
}

.primary-menu{
  list-style:none;
  display:flex;
  align-items:center;
  gap:30px;
  margin:0;
  padding:0
}

.primary-menu li{position:relative}
.primary-menu a{
  position:relative;
  display:flex;
  align-items:center;
  min-height:88px;
  color:rgba(255,255,255,.90);
  text-decoration:none;
  font-size:.89rem;
  font-weight:500;
  transition:color .2s ease
}

.primary-menu a:hover{color:#fff}

.primary-menu .current-menu-item>a::after,
.primary-menu .current_page_item>a::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:17px;
  height:3px;
  border-radius:99px;
  background:var(--pink);
  box-shadow:0 0 16px rgba(255,18,113,.52)
}

.site-header__cta{
  flex:0 0 auto;
  min-width:145px;
  min-height:52px;
  padding-inline:20px;
  border-radius:8px
}

.b2p-btn--header{
  background:linear-gradient(135deg,#ff0a6d,#ff177d);
  border-color:#ff177d;
  box-shadow:0 9px 25px rgba(255,13,111,.30);
  font-size:.9rem
}

/* Mobile hamburger */
.nav-toggle{
  display:none;
  width:44px;
  height:44px;
  margin-left:auto;
  padding:8px;
  border:0;
  border-radius:10px;
  background:rgba(10,10,14,.50);
  cursor:pointer
}
.nav-toggle span:not(.screen-reader-text){
  display:block;
  width:24px;
  height:2px;
  margin:5px auto;
  background:#fff;
  border-radius:2px;
  transition:.2s ease
}

/* HERO */
.b2p-hero{
  position:relative;
  isolation:isolate;
  height:clamp(600px,78svh,720px);
  min-height:600px;
  overflow:hidden;
  display:flex;
  align-items:center;
  background:#050507
}

.b2p-hero__picture{
  position:absolute;
  inset:0;
  z-index:0
}

.b2p-hero__background{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center
}

/* Keep left side readable without making the whole image dull */
.b2p-hero__shade{
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(90deg,
      rgba(3,3,6,.91) 0%,
      rgba(3,3,6,.82) 18%,
      rgba(3,3,6,.62) 34%,
      rgba(3,3,6,.31) 48%,
      rgba(3,3,6,.08) 68%,
      rgba(3,3,6,.15) 100%),
    linear-gradient(180deg,
      rgba(0,0,0,.28) 0%,
      rgba(0,0,0,.03) 35%,
      rgba(0,0,0,.10) 72%,
      rgba(0,0,0,.46) 100%)
}

.b2p-hero-container{
  display:flex;
  align-items:center;
  width:min(var(--hero-max),calc(100% - 56px));
  height:100%;
  padding-top:82px
}

.b2p-hero__content{
  width:min(610px,47vw);
  padding:10px 0 20px
}

.b2p-hero__eyebrow{
  display:flex;
  align-items:center;
  gap:16px;
  margin:0 0 23px;
  color:#f2f2f5;
  font-size:.76rem;
  font-weight:700;
  letter-spacing:.18em;
  text-transform:uppercase
}

.b2p-hero__eyebrow>span{
  width:46px;
  height:3px;
  flex:0 0 46px;
  border-radius:20px;
  background:var(--pink);
  box-shadow:0 0 16px rgba(255,18,113,.48)
}

.b2p-hero h1{
  margin:0;
  max-width:690px;
  font-size:clamp(3.15rem,4.7vw,4.65rem);
  line-height:.97;
  letter-spacing:-.052em
}

.b2p-hero h1 span,
.b2p-hero h1 strong{
  display:block
}

.b2p-hero h1 span{
  color:#fff;
  font-weight:600
}

.b2p-hero h1 strong{
  margin-top:3px;
  color:var(--pink-bright);
  font-weight:700;
  text-shadow:0 0 28px rgba(255,13,111,.12)
}

.b2p-hero__lead{
  max-width:570px;
  margin:25px 0 0;
  color:rgba(255,255,255,.78);
  font-size:clamp(.98rem,1.18vw,1.12rem);
  line-height:1.62
}

.b2p-hero__actions{
  display:flex;
  align-items:center;
  gap:22px;
  margin-top:30px
}

.b2p-btn--hero{
  min-width:190px;
  min-height:54px;
  font-size:.9rem
}

.b2p-btn--hero-ghost{
  min-width:180px;
  min-height:54px;
  background:rgba(5,5,8,.34);
  border:1px solid rgba(255,255,255,.48);
  box-shadow:none;
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
  font-size:.9rem
}

.b2p-btn--hero-ghost:hover{
  background:rgba(255,255,255,.08);
  border-color:#fff;
  box-shadow:none
}

/* EXISTING SECTIONS - unchanged foundation */
.b2p-section{padding:100px 0}
.b2p-section--soft{background:var(--soft)}
.b2p-section-heading{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:42px}
.b2p-section-heading h2,.b2p-cta h2{margin:0;font-size:clamp(2.4rem,4.4vw,4.8rem);line-height:1;letter-spacing:-.05em}
.b2p-section-heading>p{color:var(--muted);max-width:430px}
.b2p-services{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.b2p-services article{min-height:240px;padding:28px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius)}
.b2p-services article span{color:var(--pink);font-weight:900}
.b2p-services h3{margin:42px 0 12px;font-size:1.22rem}
.b2p-services p{color:var(--muted)}
.b2p-cta{padding:90px 0;background:linear-gradient(120deg,#180712,#08080a 55%,#1a0812);border-block:1px solid rgba(255,31,120,.16)}
.b2p-cta__inner{display:flex;align-items:center;justify-content:space-between;gap:30px}
.site-footer{padding:52px 0;border-top:1px solid var(--line)}
.site-footer__grid{display:flex;justify-content:space-between;align-items:end;gap:30px}
.b2p-brand--footer{min-width:0}
.site-footer__copy{text-align:right;color:var(--muted);font-size:.9rem}
.b2p-system-note{padding:24px;border:1px dashed #44444f;border-radius:16px;color:var(--muted)}

/* Artist pages */
.b2p-artist-page{padding:150px 0 100px}
.b2p-back{display:inline-block;margin-bottom:34px;color:var(--muted);text-decoration:none}
.b2p-artist-hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:64px}
.b2p-artist-photo img,.b2p-photo-placeholder{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--radius);border:1px solid var(--line)}
.b2p-photo-placeholder{display:grid;place-items:center;background:#15151b;color:#45454f;font-weight:900;font-size:5rem}
.b2p-location{color:#c8c8ce}
.b2p-tags{display:flex;flex-wrap:wrap;gap:9px;margin:24px 0}
.b2p-tags span{padding:8px 14px;border:1px solid rgba(255,31,120,.55);border-radius:999px;font-size:.82rem}
.b2p-artist-bio{color:#c6c6cd}
.b2p-socials{display:flex;flex-wrap:wrap;gap:10px;margin-top:34px}
.b2p-socials a{padding:10px 15px;border:1px solid #35353f;border-radius:10px;text-decoration:none}
.entry-content{color:#cfcfd5}

/* Laptop / common 14-inch viewport tuning */
@media (min-width:981px) and (max-width:1440px){
  :root{--header-max:1320px;--hero-max:1320px}
  .b2p-header-container,.b2p-hero-container{width:min(var(--hero-max),calc(100% - 52px))}
  .site-header__inner{height:82px}
  .custom-logo{max-width:220px;max-height:58px}
  .b2p-brand{min-width:218px}
  .primary-menu{gap:24px}
  .primary-menu a{min-height:82px;font-size:.84rem}
  .primary-menu .current-menu-item>a::after,.primary-menu .current_page_item>a::after{bottom:15px}
  .site-header__cta{min-width:132px;min-height:48px}
  .b2p-hero{height:clamp(590px,77svh,690px);min-height:590px}
  .b2p-hero-container{padding-top:76px}
  .b2p-hero__content{width:min(585px,46vw)}
  .b2p-hero h1{font-size:clamp(3rem,4.55vw,4rem)}
  .b2p-hero__lead{font-size:.98rem;max-width:530px}
  .b2p-hero__actions{margin-top:26px}
}

/* Tablet */
@media (max-width:980px){
  .b2p-header-container{width:calc(100% - 34px)}
  .site-header__inner{height:80px}
  .custom-logo{max-width:205px;max-height:56px}
  .b2p-brand{min-width:0}

  .site-header__cta{display:none}
  .nav-toggle{display:block}

  .primary-nav{
    position:fixed;
    top:80px;
    left:17px;
    right:17px;
    margin:0;
    padding:18px;
    border:1px solid rgba(255,255,255,.10);
    border-radius:16px;
    background:rgba(9,9,13,.97);
    box-shadow:0 28px 70px rgba(0,0,0,.46);
    opacity:0;
    visibility:hidden;
    transform:translateY(-9px);
    transition:.2s ease
  }

  .primary-nav.is-open{opacity:1;visibility:visible;transform:none}
  .primary-menu{flex-direction:column;align-items:stretch;gap:0}
  .primary-menu a{
    min-height:50px;
    padding:0 10px;
    font-size:.95rem
  }

  .primary-menu .current-menu-item>a::after,
  .primary-menu .current_page_item>a::after{
    left:10px;
    right:auto;
    bottom:5px;
    width:32px;
    height:2px
  }

  .b2p-hero{
    height:auto;
    min-height:720px;
    align-items:flex-end
  }

  .b2p-hero__background{
    object-position:61% center
  }

  .b2p-hero__shade{
    background:
      linear-gradient(90deg,rgba(2,2,5,.88) 0%,rgba(2,2,5,.64) 44%,rgba(2,2,5,.18) 80%),
      linear-gradient(180deg,rgba(0,0,0,.20) 0%,rgba(0,0,0,.14) 42%,rgba(0,0,0,.72) 100%)
  }

  .b2p-hero-container{
    width:calc(100% - 34px);
    padding:125px 0 62px;
    align-items:flex-end
  }

  .b2p-hero__content{
    width:min(610px,76vw);
    padding:0
  }

  .b2p-hero h1{
    font-size:clamp(3rem,7vw,4.4rem)
  }

  .b2p-services{grid-template-columns:repeat(2,1fr)}
  .b2p-artist-hero{grid-template-columns:1fr}
}

/* Mobile */
@media (max-width:680px){
  .b2p-container{width:min(100% - 28px,var(--max))}
  .b2p-header-container,.b2p-hero-container{width:calc(100% - 28px)}

  .site-header__inner{height:72px}
  .custom-logo{max-width:168px;max-height:48px}
  .b2p-brand__name{font-size:1.45rem}
  .b2p-brand small{font-size:.48rem}
  .primary-nav{top:72px;left:14px;right:14px}

  .b2p-hero{
    min-height:100svh;
    max-height:none
  }

  .b2p-hero__background{
    object-position:61% center
  }

  .b2p-hero__shade{
    background:
      linear-gradient(180deg,
        rgba(1,1,4,.32) 0%,
        rgba(1,1,4,.44) 25%,
        rgba(1,1,4,.63) 51%,
        rgba(1,1,4,.91) 100%),
      linear-gradient(90deg,
        rgba(1,1,4,.72) 0%,
        rgba(1,1,4,.32) 65%,
        rgba(1,1,4,.10) 100%)
  }

  .b2p-hero-container{
    min-height:100svh;
    padding:110px 0 42px;
    align-items:flex-end
  }

  .b2p-hero__content{
    width:100%;
    padding:0
  }

  .b2p-hero__eyebrow{
    gap:11px;
    margin-bottom:16px;
    font-size:.66rem
  }

  .b2p-hero__eyebrow>span{
    width:31px;
    flex-basis:31px;
    height:2px
  }

  .b2p-hero h1{
    max-width:100%;
    font-size:clamp(2.55rem,12.2vw,3.55rem);
    line-height:.96;
    letter-spacing:-.048em
  }

  .b2p-hero__lead{
    margin-top:19px;
    max-width:95%;
    font-size:.91rem;
    line-height:1.53;
    color:rgba(255,255,255,.80)
  }

  .b2p-hero__actions{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
    margin-top:23px;
    width:min(100%,340px)
  }

  .b2p-btn--hero,.b2p-btn--hero-ghost{
    width:100%;
    min-width:0;
    min-height:50px
  }

  .b2p-section{padding:72px 0}
  .b2p-section-heading,.b2p-cta__inner,.site-footer__grid{display:block}
  .b2p-services{grid-template-columns:1fr}
  .b2p-cta .b2p-btn{margin-top:28px}
  .site-footer__copy{margin-top:30px;text-align:left}
  .b2p-page{padding-top:120px}
}

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


/* PREMIUM TYPOGRAPHY + ICON SYSTEM v0.2.1 */
.b2p-icon{
  display:inline-block;
  flex:0 0 auto;
  vertical-align:-0.16em;
  color:currentColor;
}

body{
  font-weight:400;
  letter-spacing:-0.008em;
}

.primary-menu a{
  font-weight:500;
  letter-spacing:-0.01em;
}

.b2p-btn{
  font-weight:600;
  letter-spacing:-0.012em;
}

.b2p-hero h1 span{
  font-weight:600;
}

.b2p-hero h1 strong{
  font-weight:700;
}

.b2p-section-heading h2,
.b2p-cta h2{
  font-weight:600;
}

.b2p-services article{
  transition:transform .2s ease,border-color .2s ease,background .2s ease;
}

.b2p-services article:hover{
  transform:translateY(-2px);
  border-color:#3a3a45;
  background:#131319;
}

.b2p-service-icon{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  color:var(--pink);
  border:1px solid rgba(255,18,113,.28);
  border-radius:14px;
  background:rgba(255,18,113,.045);
}

.b2p-services h3{
  margin:28px 0 10px;
  font-weight:600;
  letter-spacing:-0.025em;
}

.b2p-services p{
  font-weight:400;
}

.nav-toggle .b2p-icon{
  margin:auto;
}


/* FEATURED DJs + FIND YOUR SOUND — v0.3.0 */
.b2p-featured-section{
  padding-top:82px;
  padding-bottom:76px;
  border-top:1px solid rgba(255,255,255,.045);
}
.b2p-featured-heading{
  align-items:flex-start;
  margin-bottom:28px;
}
.b2p-featured-heading h2{
  font-size:clamp(2.25rem,3.55vw,3.55rem);
  font-weight:600;
  letter-spacing:-.045em;
}
.b2p-featured-heading__right{
  width:min(430px,39vw);
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:15px;
}
.b2p-featured-heading__right>p{
  margin:0;
  color:var(--muted);
  font-size:.94rem;
  line-height:1.58;
}
.b2p-text-link{
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:var(--pink);
  text-decoration:none;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:.72rem;
  font-weight:600;
}
.b2p-text-link:hover{color:#fff}

.b2p-find-sound{
  padding:34px 0 38px;
  background:
    linear-gradient(90deg,rgba(255,18,113,.022),transparent 30%),
    #0b0b0e;
  border-top:1px solid rgba(255,255,255,.055);
  border-bottom:1px solid rgba(255,255,255,.055);
}
.b2p-find-sound__grid{
  display:grid;
  grid-template-columns:220px minmax(0,1fr);
  align-items:end;
  gap:42px;
}
.b2p-find-sound__title .b2p-eyebrow{margin-bottom:12px}
.b2p-find-sound__title h2{
  margin:0;
  font-size:clamp(2rem,3vw,3rem);
  line-height:.96;
  font-weight:600;
  letter-spacing:-.045em;
}
@media(max-width:980px){
  .b2p-featured-heading__right{
    width:100%;
    align-items:flex-start;
  }
  .b2p-find-sound__grid{
    grid-template-columns:1fr;
    align-items:start;
    gap:24px;
  }
}
@media(max-width:680px){
  .b2p-featured-section{
    padding-top:64px;
    padding-bottom:60px;
  }
  .b2p-featured-heading{display:block}
  .b2p-featured-heading__right{margin-top:20px}
  .b2p-find-sound{padding:28px 0 32px}
}


/* ==========================================================
   SECTION SCALE + SERVICES + STORY + EVENTS — v0.4.0
   ========================================================== */

/* Featured DJs typography tuned for common 14" laptop viewports */
.b2p-featured-heading h2{
  font-size:clamp(2rem,2.65vw,2.65rem)!important;
  line-height:1.04;
  letter-spacing:-.038em;
}
.b2p-featured-heading__right>p{
  font-size:.88rem!important;
  line-height:1.55;
}
.b2p-featured-heading .b2p-eyebrow{
  font-size:.67rem;
}
.b2p-text-link{
  font-size:.68rem!important;
}

/* Shared compact section title scale */
.b2p-section-heading--compact{
  margin-bottom:26px;
}
.b2p-section-heading--compact h2,
.b2p-story h2,
.b2p-events-cover h2{
  margin:0;
  font-size:clamp(1.95rem,2.55vw,2.55rem);
  line-height:1.04;
  letter-spacing:-.04em;
  font-weight:600;
}

/* Services */
.b2p-services-section{
  padding:62px 0 70px;
  background:#09090c;
  border-top:1px solid rgba(255,255,255,.05);
}
.b2p-services-section .b2p-section-heading>p{
  margin:3px 0 0;
  max-width:365px;
  font-size:.86rem;
  line-height:1.55;
}
.b2p-services{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.b2p-services article{
  min-height:205px;
  padding:23px 22px 20px;
  border-radius:10px;
  background:linear-gradient(145deg,#111116,#0c0c10);
}
.b2p-service-icon{
  width:42px;
  height:42px;
  border:0;
  background:transparent;
  justify-items:start;
  color:var(--pink);
}
.b2p-services h3{
  margin:18px 0 7px;
  font-size:1.02rem;
  line-height:1.2;
  font-weight:600;
}
.b2p-services p{
  margin:0;
  min-height:54px;
  color:#a9a9b2;
  font-size:.78rem;
  line-height:1.48;
}
.b2p-services article>a{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-top:18px;
  color:var(--pink);
  font-size:.71rem;
  font-weight:600;
  text-decoration:none;
}
.b2p-services article>a:hover{
  color:#fff;
}

/* Our Story */
.b2p-story{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:#0a0a0d;
}
.b2p-story::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-3;
  background-image:var(--b2p-story-bg,none);
  background-size:cover;
  background-position:center;
  opacity:.22;
}
.b2p-story__overlay{
  position:absolute;
  inset:0;
  z-index:-2;
  background:
    linear-gradient(90deg,rgba(5,5,8,.05),rgba(5,5,8,.80) 47%,rgba(5,5,8,.90)),
    linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.35));
}
.b2p-story__grid{
  display:grid;
  grid-template-columns:1.02fr .92fr .48fr;
  min-height:345px;
  align-items:stretch;
}
.b2p-story__visual{
  margin-left:calc((100vw - min(var(--max),calc(100vw - 40px)))/-2);
  min-height:345px;
  overflow:hidden;
}
.b2p-story__visual img{
  width:100%;
  height:100%;
  min-height:345px;
  object-fit:cover;
  object-position:center;
}
.b2p-story__placeholder{
  height:100%;
  min-height:345px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  background:
    radial-gradient(circle at 65% 35%,rgba(255,18,113,.25),transparent 28%),
    linear-gradient(145deg,#17171d,#08080a);
  color:#fff;
}
.b2p-story__placeholder span{
  font-size:2.2rem;
  font-weight:600;
}
.b2p-story__placeholder small{
  color:#9999a2;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.b2p-story__content{
  padding:44px 42px 38px;
  align-self:center;
}
.b2p-story__content .b2p-eyebrow{
  margin-bottom:13px;
}
.b2p-story__content>p:not(.b2p-eyebrow){
  margin:19px 0 0;
  color:#b8b8c0;
  font-size:.84rem;
  line-height:1.64;
}
.b2p-story__button{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:42px;
  margin-top:20px;
  padding:0 16px;
  border:1px solid rgba(255,255,255,.48);
  border-radius:7px;
  color:#fff;
  text-decoration:none;
  font-size:.76rem;
  font-weight:600;
  background:rgba(8,8,11,.35);
}
.b2p-story__button:hover{
  border-color:var(--pink);
  color:var(--pink);
}
.b2p-story__statement{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  padding:30px 10px 30px 26px;
  text-transform:uppercase;
}
.b2p-story__statement strong{
  color:rgba(255,255,255,.54);
  font-size:clamp(1.65rem,2.55vw,2.6rem);
  line-height:.92;
  letter-spacing:.035em;
  font-weight:700;
}
.b2p-story__statement span{
  width:70px;
  height:2px;
  margin:18px 0;
  background:var(--pink);
}
.b2p-story__statement small{
  color:#9d9da7;
  font-size:.57rem;
  line-height:1.5;
  letter-spacing:.26em;
}

/* Events we cover */
.b2p-events-cover{
  padding:30px 0 34px;
  background:#0b0b0e;
  border-top:1px solid rgba(255,255,255,.055);
  border-bottom:1px solid rgba(255,255,255,.055);
}
.b2p-events-cover__grid{
  display:grid;
  grid-template-columns:330px minmax(0,1fr);
  gap:44px;
  align-items:end;
}
.b2p-events-cover__title .b2p-eyebrow{
  margin-bottom:11px;
}
.b2p-events-cover h2{
  font-size:clamp(1.65rem,2.05vw,2.05rem);
}
.b2p-event-types{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:12px;
}
.b2p-event-types>div{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  color:var(--pink);
  text-align:center;
}
.b2p-event-types span{
  color:#c9c9d0;
  font-size:.72rem;
  line-height:1.25;
  white-space:normal;
}

/* 14" laptop refinement */
@media(min-width:981px) and (max-width:1440px){
  .b2p-featured-heading h2{
    font-size:2.12rem!important;
  }
  .b2p-section-heading--compact h2,
  .b2p-story h2{
    font-size:2.05rem;
  }
  .b2p-services-section{
    padding-top:54px;
    padding-bottom:60px;
  }
  .b2p-services article{
    min-height:190px;
    padding:20px;
  }
  .b2p-story__grid,
  .b2p-story__visual,
  .b2p-story__visual img,
  .b2p-story__placeholder{
    min-height:320px;
  }
  .b2p-story__content{
    padding:36px 34px;
  }
}

/* Tablet */
@media(max-width:980px){
  .b2p-services{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .b2p-story__grid{
    grid-template-columns:1fr 1fr;
  }
  .b2p-story__visual{
    margin-left:0;
  }
  .b2p-story__statement{
    grid-column:1/-1;
    flex-direction:row;
    align-items:center;
    justify-content:center;
    gap:18px;
    padding:25px;
  }
  .b2p-story__statement strong{
    font-size:1.6rem;
  }
  .b2p-story__statement span{
    width:2px;
    height:42px;
    margin:0;
  }
  .b2p-events-cover__grid{
    grid-template-columns:1fr;
    align-items:start;
    gap:24px;
  }
  .b2p-event-types{
    grid-template-columns:repeat(3,1fr);
  }
}

/* Mobile */
@media(max-width:680px){
  .b2p-featured-heading h2{
    font-size:1.8rem!important;
  }
  .b2p-featured-heading__right>p{
    font-size:.84rem!important;
  }
  .b2p-services-section{
    padding:50px 0 56px;
  }
  .b2p-section-heading--compact h2,
  .b2p-story h2{
    font-size:1.78rem;
  }
  .b2p-services{
    grid-template-columns:1fr;
  }
  .b2p-services article{
    min-height:0;
  }
  .b2p-services p{
    min-height:0;
  }
  .b2p-story__grid{
    grid-template-columns:1fr;
  }
  .b2p-story__visual,
  .b2p-story__visual img,
  .b2p-story__placeholder{
    min-height:280px;
  }
  .b2p-story__content{
    padding:36px 0 30px;
  }
  .b2p-story__statement{
    grid-column:auto;
    justify-content:flex-start;
    padding:26px 0 32px;
  }
  .b2p-events-cover{
    padding:32px 0 38px;
  }
  .b2p-event-types{
    grid-template-columns:repeat(2,1fr);
    row-gap:24px;
  }
  .b2p-events-cover h2{
    font-size:1.65rem;
  }
}


/* ==========================================================
   VISUAL REFINEMENT — SERVICES / STORY / EVENTS — v0.4.1
   Matches the approved visual reference more closely.
   ========================================================== */

/* ---------- SERVICES ---------- */
.b2p-services-section{
  padding:46px 0 52px!important;
  background:#09090c;
}

.b2p-services-section .b2p-section-heading{
  align-items:flex-start;
  margin-bottom:22px!important;
}

.b2p-services-section .b2p-section-heading--compact h2{
  font-size:clamp(1.95rem,2.35vw,2.42rem)!important;
  line-height:1.02;
  max-width:520px;
}

.b2p-services-section .b2p-section-heading>p{
  width:min(355px,31vw);
  margin:12px 0 0!important;
  font-size:.82rem!important;
  line-height:1.48!important;
  color:#a9a9b2;
}

.b2p-services{
  gap:10px!important;
}

.b2p-services article{
  min-height:150px!important;
  display:grid;
  grid-template-columns:52px minmax(0,1fr);
  align-items:start;
  gap:14px;
  padding:20px 18px!important;
  border-radius:7px!important;
  border-color:#303039!important;
  background:linear-gradient(145deg,#0f0f14,#0b0b0f)!important;
  box-shadow:none!important;
}

.b2p-services article:hover{
  transform:translateY(-1px)!important;
  border-color:#454550!important;
}

.b2p-service-icon{
  width:46px!important;
  height:46px!important;
  display:grid!important;
  place-items:center!important;
  color:var(--pink)!important;
  margin-top:1px;
}

.b2p-service-body{
  min-width:0;
}

.b2p-service-body h3{
  margin:2px 0 6px!important;
  font-size:.98rem!important;
  line-height:1.18;
  font-weight:600;
}

.b2p-service-body p{
  min-height:40px!important;
  margin:0!important;
  color:#b6b6bd!important;
  font-size:.72rem!important;
  line-height:1.42!important;
}

.b2p-service-body>a{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-top:13px!important;
  color:var(--pink);
  text-decoration:none;
  font-size:.69rem!important;
  font-weight:600;
}

/* ---------- STORY ---------- */
.b2p-story{
  min-height:320px;
  border-top:1px solid rgba(255,255,255,.045);
  border-bottom:1px solid rgba(255,255,255,.045);
}

.b2p-story::before{
  opacity:.29!important;
  background-position:center 48%!important;
}

.b2p-story__overlay{
  background:
    linear-gradient(90deg,
      rgba(5,5,8,.06) 0%,
      rgba(5,5,8,.30) 36%,
      rgba(5,5,8,.80) 54%,
      rgba(5,5,8,.92) 100%)!important;
}

.b2p-story__grid{
  grid-template-columns:minmax(0,1.12fr) minmax(0,.92fr) minmax(180px,.40fr)!important;
  min-height:320px!important;
}

.b2p-story__visual{
  min-height:320px!important;
}

.b2p-story__visual img,
.b2p-story__placeholder{
  min-height:320px!important;
  object-position:center center!important;
}

.b2p-story__content{
  padding:34px 30px 30px 38px!important;
  align-self:center;
}

.b2p-story__content .b2p-eyebrow{
  margin-bottom:10px!important;
  font-size:.63rem!important;
}

.b2p-story h2{
  font-size:clamp(1.9rem,2.25vw,2.28rem)!important;
  line-height:1.01!important;
}

.b2p-story__content>p:not(.b2p-eyebrow){
  margin-top:16px!important;
  max-width:510px;
  font-size:.77rem!important;
  line-height:1.55!important;
  color:#bcbcc4!important;
}

.b2p-story__button{
  min-height:38px!important;
  margin-top:17px!important;
  padding:0 15px!important;
  font-size:.72rem!important;
  border-radius:6px!important;
}

.b2p-story__statement{
  padding:30px 18px 28px 12px!important;
  justify-content:center!important;
}

.b2p-story__statement strong{
  font-size:clamp(1.7rem,2.25vw,2.3rem)!important;
  line-height:.93!important;
  color:rgba(255,255,255,.55)!important;
}

.b2p-story__statement span{
  width:66px!important;
  margin:15px 0!important;
}

.b2p-story__statement small{
  font-size:.52rem!important;
  line-height:1.45!important;
  letter-spacing:.24em!important;
}

/* ---------- EVENTS STRIP ---------- */
.b2p-events-cover{
  padding:23px 0 25px!important;
  background:#0a0a0d!important;
}

.b2p-events-cover__grid{
  grid-template-columns:315px minmax(0,1fr)!important;
  gap:26px!important;
  align-items:center!important;
}

.b2p-events-cover__title .b2p-eyebrow{
  margin-bottom:8px!important;
  font-size:.61rem!important;
}

.b2p-events-cover h2{
  font-size:clamp(1.52rem,1.78vw,1.8rem)!important;
  line-height:1.03!important;
  max-width:310px;
}

.b2p-event-types{
  grid-template-columns:repeat(6,minmax(82px,1fr))!important;
  gap:4px!important;
  align-items:center;
}

.b2p-event-types>div{
  gap:7px!important;
  min-height:76px;
}

.b2p-event-types .b2p-icon{
  width:30px!important;
  height:30px!important;
  stroke-width:1.6;
}

.b2p-event-types span{
  font-size:.69rem!important;
  line-height:1.18!important;
  color:#c8c8cf!important;
}

/* ---------- COMMON 14" LAPTOP ---------- */
@media(min-width:981px) and (max-width:1440px){
  .b2p-services-section{
    padding:40px 0 46px!important;
  }

  .b2p-services-section .b2p-section-heading--compact h2{
    font-size:2rem!important;
  }

  .b2p-services article{
    min-height:142px!important;
    grid-template-columns:46px minmax(0,1fr);
    gap:12px;
    padding:17px 15px!important;
  }

  .b2p-service-icon{
    width:42px!important;
    height:42px!important;
  }

  .b2p-service-body h3{
    font-size:.91rem!important;
  }

  .b2p-service-body p{
    font-size:.68rem!important;
  }

  .b2p-story,
  .b2p-story__grid,
  .b2p-story__visual,
  .b2p-story__visual img,
  .b2p-story__placeholder{
    min-height:300px!important;
  }

  .b2p-story__content{
    padding:30px 26px 27px 32px!important;
  }

  .b2p-story h2{
    font-size:1.92rem!important;
  }

  .b2p-events-cover{
    padding:20px 0 22px!important;
  }

  .b2p-events-cover__grid{
    grid-template-columns:290px minmax(0,1fr)!important;
  }

  .b2p-events-cover h2{
    font-size:1.55rem!important;
  }

  .b2p-event-types .b2p-icon{
    width:28px!important;
    height:28px!important;
  }

  .b2p-event-types span{
    font-size:.65rem!important;
  }
}

/* ---------- TABLET ---------- */
@media(max-width:980px){
  .b2p-services-section .b2p-section-heading>p{
    width:100%;
  }

  .b2p-services article{
    min-height:145px!important;
  }

  .b2p-story__grid{
    grid-template-columns:1fr 1fr!important;
  }

  .b2p-story__statement{
    grid-column:1/-1;
    min-height:100px;
  }

  .b2p-events-cover__grid{
    grid-template-columns:1fr!important;
    gap:18px!important;
  }

  .b2p-event-types{
    grid-template-columns:repeat(3,1fr)!important;
    row-gap:18px!important;
  }
}

/* ---------- MOBILE ---------- */
@media(max-width:680px){
  .b2p-services-section{
    padding:40px 0 44px!important;
  }

  .b2p-services-section .b2p-section-heading--compact h2{
    font-size:1.7rem!important;
  }

  .b2p-services{
    grid-template-columns:1fr!important;
  }

  .b2p-services article{
    grid-template-columns:44px minmax(0,1fr);
    min-height:0!important;
    padding:16px!important;
  }

  .b2p-service-body h3{
    font-size:.94rem!important;
  }

  .b2p-service-body p{
    min-height:0!important;
    font-size:.72rem!important;
  }

  .b2p-story,
  .b2p-story__grid,
  .b2p-story__visual,
  .b2p-story__visual img,
  .b2p-story__placeholder{
    min-height:0!important;
  }

  .b2p-story__visual{
    height:285px;
  }

  .b2p-story__visual img{
    height:285px;
  }

  .b2p-story__content{
    padding:30px 0 24px!important;
  }

  .b2p-story h2{
    font-size:1.72rem!important;
  }

  .b2p-story__statement{
    padding:22px 0 28px!important;
  }

  .b2p-event-types{
    grid-template-columns:repeat(2,1fr)!important;
    row-gap:20px!important;
  }

  .b2p-events-cover h2{
    font-size:1.5rem!important;
  }

  .b2p-event-types>div{
    min-height:68px;
  }
}


/* ==========================================================
   SHOWREEL / METRICS / TESTIMONIALS / CTA / FOOTER — v0.5.0
   ========================================================== */

.b2p-proof{
  padding:54px 0 48px;
  background:#08080b;
  border-top:1px solid rgba(255,255,255,.055);
}
.b2p-proof__grid{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:28px;
}
.b2p-proof__video{
  min-width:0;
}
.b2p-proof__right{
  min-width:0;
  display:flex;
  flex-direction:column;
}
.b2p-proof__empty{
  min-height:300px;
  display:grid;
  place-items:center;
  border:1px solid #303039;
  border-radius:9px;
  color:#85858f;
  background:#0d0d11;
}

.b2p-metrics{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  padding:8px 0 28px;
  border-bottom:1px solid #2a2a32;
}
.b2p-metric{
  min-width:0;
  padding:4px 16px;
  text-align:center;
  border-right:1px solid #2a2a32;
}
.b2p-metric:first-child{padding-left:0}
.b2p-metric:last-child{
  padding-right:0;
  border-right:0;
}
.b2p-metric strong{
  display:block;
  color:var(--pink);
  font-size:clamp(1.75rem,2.5vw,2.55rem);
  line-height:1;
  letter-spacing:-.04em;
  font-weight:700;
}
.b2p-metric span{
  display:block;
  margin-top:8px;
  color:#c0c0c8;
  font-size:.68rem;
  line-height:1.35;
}

.b2p-testimonials-block{
  display:grid;
  grid-template-columns:180px minmax(0,1fr);
  gap:20px;
  align-items:center;
  padding-top:24px;
}
.b2p-testimonials-block__heading .b2p-eyebrow{
  margin-bottom:9px;
  font-size:.60rem;
}
.b2p-testimonials-block__heading h2{
  margin:0;
  font-size:clamp(1.55rem,2vw,2rem);
  line-height:1.03;
  letter-spacing:-.04em;
  font-weight:600;
}

/* Final CTA */
.b2p-final-cta{
  position:relative;
  isolation:isolate;
  min-height:180px;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:#120812;
}
.b2p-final-cta::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-3;
  background-image:var(--b2p-final-cta-bg,none);
  background-size:cover;
  background-position:center 58%;
}
.b2p-final-cta__shade{
  position:absolute;
  inset:0;
  z-index:-2;
  background:
    linear-gradient(90deg,rgba(6,5,9,.66),rgba(10,5,10,.36) 54%,rgba(6,5,9,.52)),
    linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.50));
}
.b2p-final-cta__inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:40px;
  padding-top:34px;
  padding-bottom:34px;
}
.b2p-final-cta .b2p-eyebrow{
  color:#e8e8ed;
  font-size:.62rem;
}
.b2p-final-cta h2{
  margin:0;
  color:#fff;
  font-size:clamp(2rem,3.1vw,3.15rem);
  line-height:1;
  font-weight:600;
  letter-spacing:-.045em;
}
.b2p-final-cta__actions{
  display:flex;
  align-items:center;
  gap:14px;
}
.b2p-final-cta__actions .b2p-btn{
  min-width:160px;
}

/* Footer — social networks only */
.b2p-footer{
  padding:34px 0;
  background:#08080b;
  border-top:1px solid rgba(255,255,255,.055);
}
.b2p-footer__inner{
  display:grid;
  grid-template-columns:auto 1fr auto auto;
  gap:32px;
  align-items:center;
}
.b2p-footer .custom-logo{
  max-width:160px;
  max-height:46px;
}
.b2p-footer__nav{
  justify-self:center;
}
.b2p-footer-menu{
  display:flex;
  align-items:center;
  gap:24px;
  list-style:none;
  margin:0;
  padding:0;
}
.b2p-footer-menu a{
  color:#c4c4cc;
  text-decoration:none;
  font-size:.70rem;
  font-weight:500;
}
.b2p-footer-menu a:hover{color:#fff}
.b2p-footer__social{
  display:flex;
  align-items:center;
  gap:12px;
}
.b2p-footer__social a{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  color:#d4d4da;
  text-decoration:none;
  border:1px solid transparent;
  border-radius:50%;
  transition:.2s ease;
}
.b2p-footer__social a:hover{
  color:var(--pink);
  border-color:rgba(255,18,113,.45);
}
.b2p-footer__legal{
  padding-left:20px;
  border-left:1px solid #35353e;
  display:flex;
  flex-direction:column;
  gap:2px;
  color:#81818a;
  font-size:.60rem;
  white-space:nowrap;
}

@media(min-width:981px) and (max-width:1440px){
  .b2p-proof{
    padding:46px 0 42px;
  }
  .b2p-proof__grid{
    gap:24px;
  }
  .b2p-metric strong{
    font-size:2rem;
  }
  .b2p-testimonials-block{
    grid-template-columns:165px minmax(0,1fr);
  }
  .b2p-final-cta{
    min-height:160px;
  }
  .b2p-final-cta h2{
    font-size:2.45rem;
  }
  .b2p-footer__inner{
    gap:24px;
  }
  .b2p-footer-menu{
    gap:18px;
  }
}

@media(max-width:980px){
  .b2p-proof__grid{
    grid-template-columns:1fr;
  }
  .b2p-testimonials-block{
    grid-template-columns:1fr;
  }
  .b2p-final-cta__inner{
    align-items:flex-start;
    flex-direction:column;
    gap:24px;
  }
  .b2p-footer__inner{
    grid-template-columns:1fr;
    justify-items:start;
  }
  .b2p-footer__nav{justify-self:start}
  .b2p-footer__legal{
    padding-left:0;
    border-left:0;
  }
}

@media(max-width:680px){
  .b2p-proof{
    padding:38px 0;
  }
  .b2p-metrics{
    grid-template-columns:repeat(2,1fr);
    row-gap:18px;
  }
  .b2p-metric:nth-child(2){
    border-right:0;
  }
  .b2p-metric:nth-child(3),
  .b2p-metric:nth-child(4){
    padding-top:18px;
    border-top:1px solid #2a2a32;
  }
  .b2p-testimonials-block{
    padding-top:22px;
  }
  .b2p-final-cta{
    min-height:260px;
  }
  .b2p-final-cta__inner{
    padding-top:40px;
    padding-bottom:40px;
  }
  .b2p-final-cta h2{
    font-size:2rem;
  }
  .b2p-final-cta__actions{
    width:100%;
    display:grid;
    grid-template-columns:1fr;
  }
  .b2p-final-cta__actions .b2p-btn{
    width:100%;
  }
  .b2p-footer-menu{
    flex-wrap:wrap;
    gap:14px 18px;
  }
}


/* Zynexall footer credit — v0.5.1 */
.b2p-footer__credit{
  margin-top:4px;
  color:#6f6f79;
}
.b2p-footer__credit a{
  color:#9b9ba5;
  text-decoration:none;
  font-weight:600;
  transition:color .2s ease;
}
.b2p-footer__credit a:hover{
  color:var(--pink);
}


/* ==========================================================
   COMPLETE PUBLIC FRONTEND — v0.7.0
   ========================================================== */
.b2p-inner-hero{position:relative;isolation:isolate;min-height:430px;display:flex;align-items:flex-end;padding:150px 0 70px;overflow:hidden;background:#08090c}
.b2p-inner-hero::before{content:"";position:absolute;inset:0;z-index:-3;background-image:var(--b2p-inner-bg,none);background-size:cover;background-position:center 42%}
.b2p-inner-hero__shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(5,6,9,.92),rgba(5,6,9,.62) 46%,rgba(5,6,9,.38)),linear-gradient(180deg,rgba(0,0,0,.10),rgba(0,0,0,.68))}
.b2p-inner-hero__content{position:relative;z-index:1;max-width:780px}
.b2p-inner-hero h1{margin:10px 0 16px;font-size:clamp(2.7rem,5.2vw,5rem);line-height:.95;letter-spacing:-.055em;font-weight:600}
.b2p-inner-hero__content>p:last-child{max-width:640px;margin:0;color:#c2c5cb;font-size:.98rem;line-height:1.6}

/* Roster archive */
.b2p-roster-page{padding:58px 0 76px;background:#08090c}
.b2p-roster-intro{display:grid;grid-template-columns:.85fr 1fr;gap:60px;align-items:end;margin-bottom:28px}
.b2p-roster-intro h2{margin:8px 0 0;font-size:clamp(1.9rem,3vw,3rem);line-height:1.02;letter-spacing:-.045em}
.b2p-roster-intro>p{max-width:500px;margin:0;color:#9ea5af;line-height:1.6}
.b2p-roster-page .b2p-filters{margin-bottom:20px;padding:14px;border:1px solid #232b35;border-radius:10px;background:#0c1016}
.b2p-roster-page .b2p-dj-grid:not(.b2p-dj-grid--slider){grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.b2p-roster-page .b2p-dj-card__quick{aspect-ratio:1.34/1}
.b2p-roster-page .b2p-dj-card__placeholder b{font-size:clamp(2rem,4vw,3.7rem)}

/* Shared CTA */
.b2p-page-cta{position:relative;padding:48px 0;background:linear-gradient(90deg,#10080e,#08090c);border-top:1px solid rgba(255,255,255,.06)}
.b2p-page-cta__inner{display:flex;align-items:center;justify-content:space-between;gap:32px}
.b2p-page-cta h2{margin:7px 0 0;font-size:clamp(1.8rem,3vw,3rem);line-height:1.02;letter-spacing:-.045em}

/* DJ profile */
.b2p-profile-hero{padding:135px 0 70px;background:radial-gradient(circle at 85% 15%,rgba(255,15,114,.10),transparent 25%),#08090c}
.b2p-back{display:inline-flex;margin-bottom:22px;color:#8e96a0;text-decoration:none;font-size:.75rem}
.b2p-back:hover{color:#fff}
.b2p-profile-grid{display:grid;grid-template-columns:minmax(320px,.92fr) minmax(0,1.08fr);gap:54px;align-items:center}
.b2p-profile-photo{min-height:600px;overflow:hidden;border:1px solid #292f38;border-radius:14px;background:#0e1117}
.b2p-profile-photo img{width:100%;height:100%;min-height:600px;object-fit:cover;display:block;filter:saturate(.82) contrast(1.04)}
.b2p-profile-placeholder{min-height:600px;display:grid;place-items:center;align-content:center;gap:8px;background:radial-gradient(circle at 70% 20%,rgba(255,15,114,.22),transparent 25%),linear-gradient(145deg,#15151c,#09090c)}
.b2p-profile-placeholder strong{font-size:6rem;letter-spacing:-.08em}.b2p-profile-placeholder small{text-transform:uppercase;letter-spacing:.22em;color:#767d86}
.b2p-profile-copy h1{margin:8px 0 10px;font-size:clamp(3.7rem,7vw,7rem);line-height:.88;letter-spacing:-.07em;font-weight:600}
.b2p-profile-location{display:flex;align-items:center;gap:7px;color:#b4bac2}
.b2p-tags{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.b2p-tags span{padding:7px 12px;border:1px solid rgba(255,15,114,.52);border-radius:999px;font-size:.72rem;color:#f1f2f4}
.b2p-profile-lead{max-width:650px;color:#d3d7dc;font-size:1rem;line-height:1.65}
.b2p-profile-socials{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.b2p-profile-socials a{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid #303741;border-radius:8px;color:#c9ced5;text-decoration:none;font-size:.72rem}.b2p-profile-socials a:hover{border-color:#ff0f72;color:#fff}
.b2p-profile-actions{display:flex;gap:10px;margin-top:26px}.b2p-profile-actions .b2p-btn{min-width:160px}
.b2p-profile-body{padding:68px 0;background:#0b0c10;border-top:1px solid rgba(255,255,255,.05)}
.b2p-profile-body__grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr);gap:70px}
.b2p-rich-copy{color:#b9bec6;line-height:1.8;font-size:.92rem}.b2p-rich-copy p:first-child{margin-top:0}.b2p-rich-copy p:last-child{margin-bottom:0}
.b2p-profile-events{display:flex;flex-direction:column;gap:8px}.b2p-profile-events span{display:flex;align-items:center;gap:9px;padding:11px 12px;border:1px solid #242b34;border-radius:8px;background:#0e1218;color:#cdd1d6;font-size:.75rem}.b2p-profile-events svg{color:#ff0f72}
.b2p-profile-gallery{padding:58px 0 70px;background:#08090c}.b2p-gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.b2p-gallery-grid figure{margin:0;overflow:hidden;border-radius:10px;aspect-ratio:4/3;background:#0e1117}.b2p-gallery-grid img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}.b2p-gallery-grid figure:hover img{transform:scale(1.025)}
.b2p-profile-related{padding:58px 0 72px;background:#0a0b0e;border-top:1px solid rgba(255,255,255,.05)}

/* About */
.b2p-about-story{padding:70px 0;background:#08090c}.b2p-about-story__grid{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center}.b2p-about-story__image{min-height:500px;overflow:hidden;border-radius:12px;background:#11151b}.b2p-about-story__image img{width:100%;height:100%;min-height:500px;object-fit:cover}.b2p-about-story__copy h2{margin:8px 0 18px;font-size:clamp(2rem,3.6vw,3.6rem);line-height:1;letter-spacing:-.05em}.b2p-about-story__copy>p:not(.b2p-eyebrow){color:#b5bbc3;line-height:1.72}.b2p-about-story__copy .b2p-btn{margin-top:12px}
.b2p-values{padding:64px 0;background:#0b0c10;border-top:1px solid rgba(255,255,255,.05)}.b2p-values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.b2p-values-grid article{padding:28px;border:1px solid #272e38;border-radius:10px;background:#0e1117}.b2p-values-grid article>span{color:#ff0f72;font-size:.68rem;letter-spacing:.14em}.b2p-values-grid h3{font-size:1.15rem}.b2p-values-grid p{color:#9ea5ae;font-size:.8rem;line-height:1.6}.b2p-about-metrics{padding:42px 0;background:#08090c}

/* Services */
.b2p-services-page{padding:64px 0;background:#08090c}.b2p-service-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.b2p-service-detail-grid article{position:relative;padding:30px;border:1px solid #28313b;border-radius:12px;background:linear-gradient(145deg,#10141b,#0b0e13);overflow:hidden}.b2p-service-detail-grid article>span{position:absolute;right:22px;top:18px;color:#343b45;font-size:2.1rem;font-weight:700}.b2p-service-detail__icon{width:48px;height:48px;display:grid;place-items:center;color:#ff0f72}.b2p-service-detail-grid h2{margin:16px 0 8px;font-size:1.5rem}.b2p-service-detail-grid p{color:#9ea5ae;line-height:1.6;font-size:.82rem}.b2p-service-detail-grid p.lead{color:#d1d5db}.b2p-service-detail-grid a{display:inline-flex;align-items:center;gap:7px;margin-top:10px;color:#ff0f72;text-decoration:none;font-size:.74rem;font-weight:600}
.b2p-process{padding:64px 0;background:#0b0c10;border-top:1px solid rgba(255,255,255,.05)}.b2p-process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.b2p-process-grid>div{padding:24px;border-left:1px solid #303741}.b2p-process-grid b{color:#ff0f72;font-size:.65rem;letter-spacing:.14em}.b2p-process-grid h3{font-size:1.05rem}.b2p-process-grid p{color:#949ca6;font-size:.78rem;line-height:1.55}

/* Events */
.b2p-events-page{padding:64px 0 72px;background:#08090c}.b2p-event-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.b2p-event-card-grid article{padding:26px;border:1px solid #29313b;border-radius:11px;background:#0e1117}.b2p-event-card-grid article>div{color:#ff0f72}.b2p-event-card-grid h2{margin:17px 0 8px;font-size:1.18rem}.b2p-event-card-grid p{min-height:62px;color:#989fa8;font-size:.78rem;line-height:1.58}.b2p-event-card-grid a{display:inline-flex;align-items:center;gap:6px;color:#ff0f72;text-decoration:none;font-size:.72rem;font-weight:600}

/* Contact / Booking */
.b2p-contact-page{min-height:calc(100vh - 80px);padding:145px 0 78px;background:radial-gradient(circle at 8% 30%,rgba(255,15,114,.09),transparent 24%),#08090c}.b2p-contact-grid{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:70px;align-items:start}.b2p-contact-copy{position:sticky;top:120px}.b2p-contact-copy h1{margin:8px 0 16px;font-size:clamp(3rem,5.5vw,5.5rem);line-height:.92;letter-spacing:-.06em}.b2p-contact-copy>p:not(.b2p-eyebrow){max-width:520px;color:#abb2bb;line-height:1.65}.b2p-contact-points{display:grid;gap:10px;margin-top:28px}.b2p-contact-points>div{display:flex;gap:12px;align-items:flex-start;padding:13px 0;border-top:1px solid #252c35}.b2p-contact-points svg{color:#ff0f72}.b2p-contact-points span{display:flex;flex-direction:column;gap:3px}.b2p-contact-points small{color:#737c87;text-transform:uppercase;letter-spacing:.08em;font-size:.58rem}.b2p-contact-points a,.b2p-contact-points strong{color:#d8dce1;text-decoration:none;font-size:.77rem;font-weight:500}
.b2p-booking-card{padding:26px;border:1px solid #29313c;border-radius:14px;background:linear-gradient(145deg,#10141b,#0b0e13);box-shadow:0 24px 70px rgba(0,0,0,.24)}.b2p-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.b2p-form-grid label{display:flex;flex-direction:column;gap:6px}.b2p-form-grid label>span{font-size:.68rem;font-weight:600;color:#d6dae0}.b2p-form-grid input,.b2p-form-grid select,.b2p-form-grid textarea{width:100%;border:1px solid #34404c;border-radius:8px;background:#090d12;color:#fff;padding:11px 12px;outline:none}.b2p-form-grid input,.b2p-form-grid select{height:48px}.b2p-form-grid input:focus,.b2p-form-grid select:focus,.b2p-form-grid textarea:focus{border-color:#ff0f72;box-shadow:0 0 0 3px rgba(255,15,114,.08)}.b2p-span-2{grid-column:1/-1}.b2p-booking-submit{width:100%;margin-top:16px}.b2p-form-note{margin:12px 0 0;color:#717a84;font-size:.64rem;line-height:1.5}.b2p-honeypot{position:absolute!important;left:-9999px!important}.b2p-form-message{display:flex;flex-direction:column;gap:4px;margin-bottom:16px;padding:13px 14px;border-radius:8px;font-size:.76rem}.b2p-form-message--success{background:rgba(51,210,111,.08);border:1px solid rgba(51,210,111,.3);color:#a6e5ba}.b2p-form-message--error{background:rgba(255,15,114,.08);border:1px solid rgba(255,15,114,.3);color:#ff9bc4}

/* Improve current Home search proportions */
.b2p-find-sound__title h2{font-size:clamp(1.85rem,2.45vw,2.45rem)!important;line-height:1!important}.b2p-find-sound__grid{grid-template-columns:205px minmax(0,1fr)!important}.b2p-find-sound{padding-top:28px!important;padding-bottom:30px!important}

@media(max-width:980px){
  .b2p-inner-hero{min-height:390px;padding-top:125px}.b2p-roster-intro,.b2p-profile-grid,.b2p-profile-body__grid,.b2p-about-story__grid,.b2p-contact-grid{grid-template-columns:1fr}.b2p-roster-page .b2p-dj-grid:not(.b2p-dj-grid--slider){grid-template-columns:repeat(2,1fr)}.b2p-profile-photo,.b2p-profile-photo img,.b2p-profile-placeholder{min-height:480px}.b2p-contact-copy{position:static}.b2p-service-detail-grid,.b2p-values-grid,.b2p-process-grid,.b2p-event-card-grid{grid-template-columns:repeat(2,1fr)}.b2p-page-cta__inner{align-items:flex-start;flex-direction:column}.b2p-find-sound__grid{grid-template-columns:1fr!important}
}
@media(max-width:680px){
  .b2p-inner-hero{min-height:340px;padding:115px 0 46px}.b2p-inner-hero h1{font-size:2.55rem}.b2p-roster-page{padding:42px 0 54px}.b2p-roster-intro{gap:18px}.b2p-roster-page .b2p-dj-grid:not(.b2p-dj-grid--slider){grid-template-columns:1fr}.b2p-profile-hero{padding-top:112px}.b2p-profile-photo,.b2p-profile-photo img,.b2p-profile-placeholder{min-height:380px}.b2p-profile-copy h1{font-size:3.5rem}.b2p-profile-actions{flex-direction:column}.b2p-profile-actions .b2p-btn{width:100%}.b2p-profile-body{padding:48px 0}.b2p-gallery-grid{grid-template-columns:1fr 1fr}.b2p-about-story,.b2p-services-page,.b2p-events-page{padding:48px 0}.b2p-about-story__image,.b2p-about-story__image img{min-height:340px}.b2p-service-detail-grid,.b2p-values-grid,.b2p-process-grid,.b2p-event-card-grid{grid-template-columns:1fr}.b2p-contact-page{padding:116px 0 50px}.b2p-contact-copy h1{font-size:3rem}.b2p-form-grid{grid-template-columns:1fr}.b2p-span-2{grid-column:auto}.b2p-booking-card{padding:18px}.b2p-page-cta{padding:38px 0}
}


/* US LEGAL / BOOKING CONSENT — v0.7.1 */
.b2p-consent-row{grid-column:1/-1;display:grid!important;grid-template-columns:20px minmax(0,1fr);gap:10px!important;align-items:start;margin-top:4px;padding:13px 14px;border:1px solid #28313c;border-radius:9px;background:#0a0e13}
.b2p-consent-row input{width:16px!important;height:16px!important;min-height:0!important;margin:2px 0 0;accent-color:#ff0f72}
.b2p-consent-row span{font-size:.68rem!important;font-weight:400!important;color:#aeb6bf!important;line-height:1.55}
.b2p-consent-row a{color:#ff4f99;text-decoration:none}.b2p-consent-row a:hover{text-decoration:underline}
.b2p-footer__policy-links{display:inline-flex;align-items:center;gap:7px;flex-wrap:wrap}.b2p-footer__policy-links a{color:#8e8e98;text-decoration:none}.b2p-footer__policy-links a:hover{color:#ff0f72}
.b2p-legal-page{min-height:calc(100vh - 80px);padding:145px 0 80px;background:radial-gradient(circle at 8% 18%,rgba(255,15,114,.08),transparent 24%),#08090c}
.b2p-legal-layout{display:grid;grid-template-columns:310px minmax(0,1fr);gap:70px;align-items:start}.b2p-legal-summary{position:sticky;top:120px}.b2p-legal-summary h1{margin:10px 0 16px;font-size:clamp(2.8rem,4.8vw,4.8rem);line-height:.94;letter-spacing:-.055em}.b2p-legal-summary>p:not(.b2p-eyebrow){color:#9ea6b0;line-height:1.6}.b2p-legal-summary dl{margin:28px 0 0;border-top:1px solid #28303a}.b2p-legal-summary dl>div{padding:13px 0;border-bottom:1px solid #28303a}.b2p-legal-summary dt{color:#6f7882;font-size:.58rem;text-transform:uppercase;letter-spacing:.11em}.b2p-legal-summary dd{margin:5px 0 0;color:#d9dde2;font-size:.76rem}.b2p-legal-summary a{color:#ff4f99;text-decoration:none}.b2p-legal-content{padding:32px;border:1px solid #28313b;border-radius:14px;background:linear-gradient(145deg,#10141a,#0b0e13)}.b2p-legal-content h2{margin:32px 0 10px;font-size:1.12rem}.b2p-legal-content h2:first-child{margin-top:0}.b2p-legal-content p{margin:0 0 13px;color:#aeb6c0;font-size:.84rem;line-height:1.72}.b2p-legal-content a{color:#ff4f99;text-decoration:none}
@media(max-width:980px){.b2p-legal-layout{grid-template-columns:1fr;gap:30px}.b2p-legal-summary{position:static}.b2p-legal-summary h1{font-size:3rem}}
@media(max-width:680px){.b2p-legal-page{padding:116px 0 50px}.b2p-legal-content{padding:20px}.b2p-legal-summary h1{font-size:2.5rem}}


/* CUSTOM LOGO STRUCTURE FIX — v0.7.2 */
.b2p-brand--custom{display:flex;align-items:center;justify-content:flex-start}
.b2p-brand--custom .custom-logo-link{display:flex!important;align-items:center;justify-content:flex-start;width:max-content;max-width:100%;line-height:0;margin:0!important;padding:0!important}
.b2p-brand--custom .custom-logo{display:block;margin:0!important;object-position:left center}
.site-header__inner>.b2p-brand{margin-left:0!important;margin-right:0!important}
@media (min-width:981px){
  .site-header__inner>.b2p-brand--custom{flex:0 0 240px;min-width:240px}
}
@media (min-width:981px) and (max-width:1440px){
  .site-header__inner>.b2p-brand--custom{flex-basis:218px;min-width:218px}
}
@media (max-width:980px){
  .site-header__inner>.b2p-brand--custom{flex:0 1 auto;min-width:0}
}
