/* Shadowk67 — thème client intégré */
:root{
  --shadow-logo:url('../media/studio_assets/shadow_logo_512.png');
  --shadow-header:url('../media/studio_assets/shadow_header_1600x500.jpg');
  --shadow-mobile:url('../media/studio_assets/shadow_mobile_banner_1080x420.jpg');
  --shadow-bg:url('../media/studio_assets/shadow_background_1920x1080.jpg');
}
body{
  background:#020204 var(--shadow-bg) center top/cover fixed no-repeat !important;
}
body::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;
  background:radial-gradient(circle at 50% 0%,rgba(255,255,255,.05),transparent 38%),linear-gradient(180deg,rgba(0,0,0,.20),rgba(0,0,0,.86));
}
.brandHeaderLogo,.jukeLogo img,.brandHeaderLogo img{filter:drop-shadow(0 0 18px rgba(255,255,255,.16));}
.studioHeroShell{
  background-image:linear-gradient(90deg,rgba(0,0,0,.82),rgba(0,0,0,.48)),var(--shadow-header) !important;
  background-size:cover !important;background-position:center !important;
  border-color:rgba(255,255,255,.16) !important;
}
.studioHeroEyebrow{background:rgba(0,0,0,.42) !important;border-color:rgba(255,255,255,.18) !important;}
.studioHeroTitle span{background:linear-gradient(90deg,#ffffff,#b8bcc7,#ffffff) !important;-webkit-background-clip:text !important;background-clip:text !important;}
@media(max-width:700px){
  body{background-image:var(--shadow-bg) !important;background-attachment:scroll !important;}
  .studioHeroShell{background-image:linear-gradient(180deg,rgba(0,0,0,.50),rgba(0,0,0,.88)),var(--shadow-mobile) !important;background-position:center !important;}
}


/* ================================
   Shadowk67 — correctif pro v2
   Objectif : logo compact, header responsive, The Boss en mode fantôme
================================ */
.wrap{
  max-width: min(1440px, calc(100vw - 48px)) !important;
}
.topbar{
  align-items:stretch !important;
  gap:14px !important;
}
.brandPro{
  min-width:0 !important;
  flex:1 1 auto !important;
}
.brandHero{
  min-width:0 !important;
  width:100% !important;
}
.brandLine{
  min-width:0 !important;
  overflow:hidden !important;
}
.brandHeaderLogo{
  width:82px !important;
  height:82px !important;
  flex:0 0 82px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.brandHeaderLogo img{
  max-width:82px !important;
  max-height:82px !important;
  width:82px !important;
  height:82px !important;
  object-fit:contain !important;
}
.brandWordFixed,
.brandWord{
  font-size:clamp(32px, 5vw, 64px) !important;
  line-height:.92 !important;
  max-width:100% !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  letter-spacing:.02em !important;
}
.brandCopy small{
  display:block !important;
  max-width:100% !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.jukeWordWrap{
  flex:0 0 auto !important;
  max-width:220px !important;
}
.jukeWord{
  display:none !important;
}
.jukeLogo{
  width:96px !important;
  height:96px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.jukeLogo img{
  max-width:96px !important;
  max-height:96px !important;
  width:96px !important;
  height:96px !important;
  object-fit:contain !important;
}

.studioHeroShell{
  min-height:360px !important;
  background-image:
    linear-gradient(90deg,rgba(0,0,0,.90),rgba(0,0,0,.72) 54%,rgba(0,0,0,.88)),
    var(--shadow-bg) !important;
  background-size:cover !important;
  background-position:center !important;
}
.studioHeroShell::before{
  opacity:.22 !important;
}
.studioHeroTitle{
  max-width:820px !important;
  font-size:clamp(2.35rem, 4.2vw, 4.6rem) !important;
  line-height:1.02 !important;
}
.studioHeroLead{
  max-width:820px !important;
}
.studioHeroAside{
  backdrop-filter: blur(8px) !important;
}
#me.bossGhost{
  opacity:.45 !important;
  border-style:dashed !important;
  background:rgba(255,255,255,.025) !important;
}
#me.bossGhost::before{
  content:"👻 ";
}

@media (max-width: 900px){
  .wrap{
    max-width:100% !important;
    padding-left:12px !important;
    padding-right:12px !important;
  }
  .topbar{
    flex-direction:column !important;
  }
  .brandHero{
    gap:10px !important;
  }
  .brandHeaderLogo{
    width:64px !important;
    height:64px !important;
    flex-basis:64px !important;
  }
  .brandHeaderLogo img{
    width:64px !important;
    height:64px !important;
    max-width:64px !important;
    max-height:64px !important;
  }
  .brandWordFixed,
  .brandWord{
    font-size:clamp(28px, 9vw, 46px) !important;
  }
  .jukeLogo{
    width:64px !important;
    height:64px !important;
  }
  .jukeLogo img{
    width:64px !important;
    height:64px !important;
    max-width:64px !important;
    max-height:64px !important;
  }
  .studioHeroShell{
    grid-template-columns:1fr !important;
    padding:16px !important;
    border-radius:24px !important;
  }
  .studioHeroTitle{
    font-size:clamp(2rem, 11vw, 3.25rem) !important;
  }
}
