/* Jam45 Visual Overhaul 0.1.2-alpha3
   Reversible presentation layer. All rules are scoped behind body.jam45-visual-overhaul. */
body.jam45-visual-overhaul{
  --jam45-bg:#050505;--jam45-bg-2:#090909;--jam45-surface:#0d0d0e;--jam45-surface-2:#141415;
  --jam45-border:rgba(255,255,255,.14);--jam45-border-strong:rgba(255,255,255,.22);
  --jam45-text:#f7f7f7;--jam45-muted:#a4a4aa;--jam45-blue:#e32027;--jam45-blue-2:#ff3a42;
  --jam45-violet:#971116;--jam45-good:#40d59b;--jam45-radius:10px;--jam45-shadow:0 18px 60px rgba(0,0,0,.58);
  --j45o-red:#e32027;--j45o-red-2:#ff343c;--j45o-red-deep:#6e090d;--j45o-black:#050505;--j45o-panel:#0e0e0f;
  --j45o-line:rgba(255,255,255,.13);--j45o-muted:#a7a7ad;--j45o-display:"Arial Narrow","Roboto Condensed","Helvetica Neue Condensed",Impact,sans-serif;
  color:#f6f6f6;background:#050505!important;font-family:Arial,"Segoe UI",sans-serif!important;line-height:1.55;
}
body.jam45-visual-overhaul::before{content:"";position:fixed;inset:0;z-index:-999;background:radial-gradient(circle at 50% 0,rgba(211,18,27,.07),transparent 32rem),#050505;pointer-events:none}
body.jam45-visual-overhaul a{color:#f5f5f5}
body.jam45-visual-overhaul ::selection{background:#d91d25;color:#fff}
body.jam45-visual-overhaul .jam45-container{width:min(1460px,calc(100% - 52px))}
body.jam45-visual-overhaul .jam45-site-shell{background:#050505}

/* Header */
body.jam45-visual-overhaul .jam45-site-header{border-bottom:1px solid rgba(255,255,255,.12)!important;background:rgba(4,4,4,.94)!important;backdrop-filter:blur(16px)!important;box-shadow:0 8px 30px rgba(0,0,0,.34)!important}
body.jam45-visual-overhaul .jam45-header-inner{width:min(1540px,calc(100% - 32px));min-height:66px;gap:1rem}
body.jam45-visual-overhaul .jam45-brand{min-width:110px}
body.jam45-visual-overhaul .custom-logo{max-height:44px}
body.jam45-visual-overhaul .jam45-wordmark{font-family:Arial Black,Arial,sans-serif!important;font-size:1.72rem;letter-spacing:-.08em}
body.jam45-visual-overhaul .jam45-wordmark strong{color:var(--j45o-red-2)}
body.jam45-visual-overhaul .jam45-menu{padding:0;gap:.12rem;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
body.jam45-visual-overhaul .jam45-menu a{min-height:42px;padding:.58rem .9rem;border-radius:4px!important;color:#d4d4d8!important;font:700 .78rem/1 Arial,"Segoe UI",sans-serif!important;letter-spacing:.045em;text-transform:uppercase}
body.jam45-visual-overhaul .jam45-menu a:hover,body.jam45-visual-overhaul .jam45-menu .current-menu-item>a,body.jam45-visual-overhaul .jam45-menu .current-menu-ancestor>a{color:#fff!important;background:rgba(227,32,39,.12)!important}
body.jam45-visual-overhaul .jam45-primary-nav>.jam45-menu>li>a::after{left:.9rem;right:.9rem;bottom:.22rem;height:2px;background:var(--j45o-red)!important;box-shadow:0 0 10px rgba(227,32,39,.45)!important}
body.jam45-visual-overhaul .jam45-menu .sub-menu{border-radius:6px!important;border-color:rgba(255,255,255,.15)!important;background:#0b0b0c!important;box-shadow:0 24px 60px rgba(0,0,0,.65)!important}
body.jam45-visual-overhaul .jam45-menu .sub-menu a{border-radius:4px!important;text-transform:none;font-size:.86rem!important;letter-spacing:0}
body.jam45-visual-overhaul .jam45-icon-button,body.jam45-visual-overhaul .jam45-menu-toggle{border-radius:4px!important;border-color:rgba(255,255,255,.16)!important;background:#0d0d0e!important}
body.jam45-visual-overhaul .jam45-icon-button:hover{border-color:rgba(227,32,39,.6)!important;background:rgba(227,32,39,.12)!important}
body.jam45-visual-overhaul .jam45-cart-count{border-color:#050505!important;background:var(--j45o-red)!important}
body.jam45-visual-overhaul .jam45-header-button{border-radius:4px!important;text-transform:uppercase;letter-spacing:.045em;font-size:.72rem!important}
body.jam45-visual-overhaul .jam45-header-button.is-primary{border-color:#d6242b!important;background:linear-gradient(180deg,#ed242c,#bf1118)!important;box-shadow:none!important}
body.jam45-visual-overhaul .jam45-header-button.is-ghost{background:#0d0d0e!important;border-color:rgba(255,255,255,.16)!important}
body.jam45-visual-overhaul .jam45-search-panel{background:#080808!important}
body.jam45-visual-overhaul .jam45-search-field{border-radius:4px!important;background:#111!important}
body.jam45-visual-overhaul .jam45-search-form button{border-radius:4px!important;background:var(--j45o-red)!important}

/* Shared typography and surfaces */
body.jam45-visual-overhaul h1,body.jam45-visual-overhaul h2,body.jam45-visual-overhaul h3,body.jam45-visual-overhaul .woocommerce-products-header__title.page-title{color:#fff}
body.jam45-visual-overhaul .jam45-theme-eyebrow,body.jam45-visual-overhaul .jam45-eyebrow{color:var(--j45o-red-2)!important;letter-spacing:.16em}
body.jam45-visual-overhaul .jam45-theme-button,body.jam45-visual-overhaul .jam45-button,body.jam45-visual-overhaul .button,body.jam45-visual-overhaul button.button{border-radius:4px!important}
body.jam45-visual-overhaul .jam45-theme-button.is-primary,body.jam45-visual-overhaul .jam45-button-primary,body.jam45-visual-overhaul .woocommerce a.button,body.jam45-visual-overhaul .woocommerce button.button,body.jam45-visual-overhaul .woocommerce input.button{color:#fff!important;background:linear-gradient(180deg,#eb242c,#bf1118)!important;border:1px solid #e42a31!important;box-shadow:0 8px 20px rgba(159,9,15,.18)!important}
body.jam45-visual-overhaul .jam45-theme-button.is-secondary,body.jam45-visual-overhaul .jam45-button-secondary{color:#fff!important;border:1px solid rgba(255,255,255,.2)!important;background:#101011!important}
body.jam45-visual-overhaul .jam45-content-surface,body.jam45-visual-overhaul .jam45-article-content,body.jam45-visual-overhaul .jam45-comments{border-radius:8px!important;border-color:rgba(255,255,255,.13)!important;background:#0d0d0e!important;box-shadow:none!important}
body.jam45-visual-overhaul input:not([type=checkbox]):not([type=radio]):not([type=range]),body.jam45-visual-overhaul textarea,body.jam45-visual-overhaul select{border-radius:4px!important;border-color:rgba(255,255,255,.17)!important;background:#0d0d0e!important;color:#fff!important}
body.jam45-visual-overhaul input:focus,body.jam45-visual-overhaul textarea:focus,body.jam45-visual-overhaul select:focus{border-color:rgba(255,52,60,.75)!important;box-shadow:0 0 0 2px rgba(227,32,39,.14)!important;outline:0}
body.jam45-visual-overhaul input[type=range]{accent-color:var(--j45o-red)}

/* Custom homepage */
body.jam45-visual-overhaul .j45o-home{overflow:hidden;background:#050505}
body.jam45-visual-overhaul .j45o-wrap{width:min(1480px,calc(100% - 52px));margin-inline:auto}
body.jam45-visual-overhaul .j45o-campaign{padding:28px 0 18px;border-bottom:1px solid rgba(255,255,255,.07);text-align:center;background:#050505}
body.jam45-visual-overhaul .j45o-campaign h1{margin:0;font-family:var(--j45o-display);font-stretch:condensed;font-size:clamp(1.65rem,3.6vw,3.45rem);font-weight:900;line-height:1;letter-spacing:.005em;text-transform:uppercase}
body.jam45-visual-overhaul .j45o-campaign h1 span{color:var(--j45o-red-2)}
body.jam45-visual-overhaul .j45o-campaign h1 i{padding:0 .18em;color:#fff;font-style:normal;font-family:Arial,sans-serif;font-size:.58em;vertical-align:.18em}
body.jam45-visual-overhaul .j45o-campaign p{margin:13px 0 0;color:#c5c5c9;font-size:.78rem;font-weight:700;letter-spacing:.42em;text-transform:uppercase}
body.jam45-visual-overhaul .j45o-hero{position:relative;min-height:520px;display:grid;align-items:center;border-bottom:1px solid rgba(255,255,255,.11);background:radial-gradient(circle at 72% 50%,rgba(224,20,29,.2),transparent 34rem),linear-gradient(90deg,#050505 0%,#090707 52%,#080505 100%)}
body.jam45-visual-overhaul .j45o-hero::after{content:"";position:absolute;inset:0;opacity:.16;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:54px 54px;pointer-events:none}
body.jam45-visual-overhaul .j45o-hero-glow{position:absolute;right:2%;top:15%;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(255,20,30,.28),transparent 68%);filter:blur(22px);pointer-events:none}
body.jam45-visual-overhaul .j45o-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(320px,.72fr) minmax(560px,1.28fr);gap:30px;align-items:center;padding-block:34px}
body.jam45-visual-overhaul .j45o-hero-copy{padding:26px 0 28px}
body.jam45-visual-overhaul .j45o-eyebrow{display:block;margin-bottom:12px;color:var(--j45o-red-2);font-size:.74rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
body.jam45-visual-overhaul .j45o-hero-copy h2{margin:0;font-family:var(--j45o-display);font-size:clamp(3rem,5vw,5.7rem);font-weight:900;line-height:.88;letter-spacing:-.01em;text-transform:uppercase}
body.jam45-visual-overhaul .j45o-hero-copy p{max-width:510px;margin:22px 0 0;color:#c6c6ca;font-size:1.05rem;line-height:1.6}
body.jam45-visual-overhaul .j45o-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
body.jam45-visual-overhaul .j45o-button{min-height:44px;padding:.72rem 1.15rem;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:1px solid rgba(255,255,255,.25);border-radius:4px;color:#fff!important;background:#0b0b0c;text-decoration:none!important;font-size:.76rem;font-weight:900;letter-spacing:.03em;text-transform:uppercase;transition:.18s ease}
body.jam45-visual-overhaul .j45o-button:hover{transform:translateY(-1px);border-color:rgba(255,255,255,.46);background:#141415}
body.jam45-visual-overhaul .j45o-button.is-red{border-color:#ed3037;background:linear-gradient(180deg,#ee262e,#c41018);box-shadow:0 10px 24px rgba(136,6,12,.24)}
body.jam45-visual-overhaul .j45o-trust{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:18px;color:#9f9fa5;font-size:.76rem}
body.jam45-visual-overhaul .j45o-trust span::before{content:"✓";margin-right:6px;color:var(--j45o-red-2);font-weight:900}
body.jam45-visual-overhaul .j45o-hero-release{min-width:0}
body.jam45-visual-overhaul .j45o-hero-release .jam45-coverflow-heading{display:none!important}
body.jam45-visual-overhaul .j45o-hero-release .jam45-coverflow-section{margin:0!important;padding:0!important;background:transparent!important}
body.jam45-visual-overhaul .j45o-hero-release .jam45-coverflow-stage{min-height:430px!important}
body.jam45-visual-overhaul .j45o-hero-release .jam45-coverflow-track{min-height:430px!important}
body.jam45-visual-overhaul .j45o-hero-release .jam45-coverflow-slide{width:min(52vw,510px)!important}
body.jam45-visual-overhaul .j45o-hero-release .jam45-coverflow-card{border-radius:6px!important;border-color:rgba(255,70,76,.48)!important;box-shadow:0 26px 70px rgba(0,0,0,.62),0 0 28px rgba(227,32,39,.13)!important}
body.jam45-visual-overhaul .j45o-hero-release .jam45-coverflow-art{border-radius:5px!important}
body.jam45-visual-overhaul .j45o-hero-release .jam45-coverflow-copy{background:linear-gradient(180deg,transparent,rgba(0,0,0,.92))!important}
body.jam45-visual-overhaul .j45o-hero-release .jam45-coverflow-play{border-color:#fff!important;background:rgba(0,0,0,.52)!important;box-shadow:0 0 0 2px rgba(255,255,255,.25)!important}
body.jam45-visual-overhaul .j45o-hero-release .jam45-coverflow-cart{border-radius:4px!important;background:var(--j45o-red)!important}
body.jam45-visual-overhaul .j45o-hero-release .jam45-coverflow-dots button[aria-selected="true"]{background:var(--j45o-red)!important}
body.jam45-visual-overhaul .j45o-live-placeholder{min-height:360px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.14);background:#0c0c0d;text-align:center}
body.jam45-visual-overhaul .j45o-live-placeholder strong{font:900 4rem/1 var(--j45o-display);color:#fff}
body.jam45-visual-overhaul .j45o-live-placeholder span{color:#aaa}
body.jam45-visual-overhaul .j45o-section{padding:18px 0;border-bottom:1px solid rgba(255,255,255,.1);background:#050505}
body.jam45-visual-overhaul .j45o-section-head{margin-bottom:12px;display:flex;align-items:center;justify-content:space-between;gap:20px}
body.jam45-visual-overhaul .j45o-section-head h2,body.jam45-visual-overhaul .j45o-section .jam45-coverflow-heading h2,body.jam45-visual-overhaul .j45o-featured .jam45-slider-heading h2,body.jam45-visual-overhaul .j45o-artists .jam45-directory h2{margin:0;font-family:var(--j45o-display);font-size:clamp(1.55rem,2.3vw,2.35rem);font-weight:900;line-height:1;text-transform:uppercase;letter-spacing:.02em}
body.jam45-visual-overhaul .j45o-section-head>a{color:var(--j45o-red-2)!important;font-size:.7rem;font-weight:900;text-decoration:none;letter-spacing:.05em;text-transform:uppercase}
body.jam45-visual-overhaul .j45o-new-releases .jam45-coverflow-section{padding:0!important}
body.jam45-visual-overhaul .j45o-new-releases .jam45-coverflow-heading{margin-bottom:10px!important}
body.jam45-visual-overhaul .j45o-new-releases .jam45-coverflow-heading .jam45-eyebrow,body.jam45-visual-overhaul .j45o-new-releases .jam45-coverflow-heading p{display:none!important}
body.jam45-visual-overhaul .jam45-coverflow-card{border-radius:5px!important;border-color:rgba(255,255,255,.14)!important;background:#0d0d0e!important;box-shadow:none!important}
body.jam45-visual-overhaul .jam45-coverflow-card:hover{border-color:rgba(255,54,62,.5)!important}
body.jam45-visual-overhaul .jam45-coverflow-cart{border-radius:3px!important;background:#bd1118!important}
body.jam45-visual-overhaul .jam45-coverflow-price{color:var(--j45o-red-2)!important}
body.jam45-visual-overhaul .jam45-coverflow-dots button[aria-selected="true"]{background:var(--j45o-red)!important}
body.jam45-visual-overhaul .j45o-genre-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
body.jam45-visual-overhaul .j45o-genre{position:relative;min-height:150px;display:flex;align-items:flex-end;padding:15px;overflow:hidden;border:1px solid rgba(255,255,255,.15);border-radius:4px;color:#fff!important;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.78)),var(--j45o-genre-image),linear-gradient(145deg,#211010,#090909);background-size:cover;background-position:center;text-decoration:none!important}
body.jam45-visual-overhaul .j45o-genre::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(220,18,27,.15),transparent 48%);opacity:0;transition:.18s}
body.jam45-visual-overhaul .j45o-genre:hover::after{opacity:1}
body.jam45-visual-overhaul .j45o-genre span{position:relative;z-index:1;font-family:var(--j45o-display);font-size:1.45rem;font-weight:900;letter-spacing:.04em;text-shadow:0 4px 20px #000}
body.jam45-visual-overhaul .j45o-featured .jam45-slider-section,body.jam45-visual-overhaul .j45o-artists .jam45-directory{margin:0!important;padding:0!important;background:transparent!important}
body.jam45-visual-overhaul .j45o-featured .jam45-slider-heading .jam45-eyebrow,body.jam45-visual-overhaul .j45o-artists .jam45-eyebrow{display:none!important}
body.jam45-visual-overhaul .j45o-pillar-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
body.jam45-visual-overhaul .j45o-pillar{position:relative;min-height:360px;padding:24px;border:1px solid rgba(255,255,255,.16);border-radius:6px;background:linear-gradient(145deg,#111112,#090909 70%);box-shadow:inset 0 1px 0 rgba(255,255,255,.03)}
body.jam45-visual-overhaul .j45o-pillar::before{content:"";position:absolute;inset:-1px;z-index:-1;border-radius:inherit;background:linear-gradient(135deg,rgba(227,32,39,.5),transparent 35%,transparent 70%,rgba(227,32,39,.25));opacity:.26}
body.jam45-visual-overhaul .j45o-pillar-icon{width:48px;height:48px;margin:-48px auto 12px;display:grid;place-items:center;border:2px solid var(--j45o-red);border-radius:50%;color:var(--j45o-red-2);background:#090909;font-size:1.35rem;box-shadow:0 0 20px rgba(227,32,39,.22)}
body.jam45-visual-overhaul .j45o-pillar h2{margin:0 0 16px;font-family:var(--j45o-display);font-size:2rem;line-height:1;text-transform:uppercase;text-align:left}
body.jam45-visual-overhaul .j45o-pillar h2 span{color:var(--j45o-red-2)}
body.jam45-visual-overhaul .j45o-pillar ul{margin:0 0 22px;padding:0;display:grid;gap:8px;list-style:none;color:#d1d1d5;font-size:.86rem}
body.jam45-visual-overhaul .j45o-pillar li::before{content:"✓";margin-right:9px;color:var(--j45o-red-2);font-weight:900}
body.jam45-visual-overhaul .j45o-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
body.jam45-visual-overhaul .j45o-feature-card{position:relative;min-height:270px;padding:24px;overflow:hidden;border:1px solid rgba(255,255,255,.16);border-radius:6px;color:#fff!important;background:linear-gradient(145deg,#101011,#070707);text-decoration:none!important}
body.jam45-visual-overhaul .j45o-feature-card:hover{border-color:rgba(255,52,60,.48)}
body.jam45-visual-overhaul .j45o-feature-kicker{color:#fff;font-size:.72rem;font-weight:900;letter-spacing:.08em}
body.jam45-visual-overhaul .j45o-feature-card h2{display:inline;margin:0 0 0 5px;color:var(--j45o-red-2);font-family:var(--j45o-display);font-size:2.1rem;line-height:1;text-transform:uppercase}
body.jam45-visual-overhaul .j45o-feature-card p{max-width:420px;margin:16px 0 72px;color:#c4c4c9;font-size:.88rem}
body.jam45-visual-overhaul .j45o-feature-card b{position:absolute;left:24px;bottom:20px;color:#fff;font-size:.72rem;letter-spacing:.04em}
body.jam45-visual-overhaul .j45o-wave{position:absolute;right:18px;bottom:30px;width:46%;height:70px;display:flex;align-items:center;gap:5px;opacity:.72}
body.jam45-visual-overhaul .j45o-wave i{flex:1;height:22%;border-radius:2px;background:linear-gradient(#ff343c,#6f090d);box-shadow:0 0 9px rgba(227,32,39,.15)}
body.jam45-visual-overhaul .j45o-wave i:nth-child(2n){height:66%}body.jam45-visual-overhaul .j45o-wave i:nth-child(3n){height:92%}body.jam45-visual-overhaul .j45o-wave i:nth-child(5n){height:44%}
body.jam45-visual-overhaul .j45o-records{position:absolute;right:22px;bottom:26px;width:46%;height:92px;display:flex;align-items:flex-end;gap:7px;opacity:.72}
body.jam45-visual-overhaul .j45o-records i{width:64px;aspect-ratio:1;border:1px solid rgba(255,255,255,.2);border-radius:3px;background:radial-gradient(circle,#111 0 12%,#a9151a 13% 15%,#111 16% 35%,#181818 36% 42%,#090909 43%);transform:rotate(-5deg)}
body.jam45-visual-overhaul .j45o-records i:nth-child(2){transform:translateY(-8px) rotate(3deg)}body.jam45-visual-overhaul .j45o-records i:nth-child(3){transform:translateY(-2px) rotate(-2deg)}body.jam45-visual-overhaul .j45o-records i:nth-child(4){transform:translateY(-12px) rotate(5deg)}
body.jam45-visual-overhaul .j45o-bin{position:absolute;right:28px;bottom:26px;width:42%;height:86px;border:1px solid #5a2d1e;border-top-color:#88513b;background:linear-gradient(180deg,#62341f,#2a160e);transform:perspective(260px) rotateX(-8deg);opacity:.78}
body.jam45-visual-overhaul .j45o-bin i{position:absolute;bottom:42px;width:54px;height:65px;border:1px solid rgba(255,255,255,.18);background:linear-gradient(145deg,#191919,#650c10)}body.jam45-visual-overhaul .j45o-bin i:nth-child(1){left:16px}body.jam45-visual-overhaul .j45o-bin i:nth-child(2){left:58px;background:linear-gradient(145deg,#261b12,#9b391f)}body.jam45-visual-overhaul .j45o-bin i:nth-child(3){left:100px;background:linear-gradient(145deg,#121b24,#2d5879)}
body.jam45-visual-overhaul .j45o-join{padding:32px 0;border-top:1px solid rgba(255,54,62,.22);border-bottom:1px solid rgba(255,255,255,.12);background:radial-gradient(circle at 50% 140%,rgba(227,32,39,.22),transparent 34rem),linear-gradient(90deg,#080808,#120708,#080808)}
body.jam45-visual-overhaul .j45o-join-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}
body.jam45-visual-overhaul .j45o-join h2{margin:0;font-family:var(--j45o-display);font-size:clamp(2.7rem,5vw,5.5rem);line-height:.9;text-transform:uppercase}
body.jam45-visual-overhaul .j45o-join h2 span{color:var(--j45o-red-2)}
body.jam45-visual-overhaul .j45o-join p{margin:10px 0 0;color:#c6c6ca}

/* WooCommerce / music catalog */
body.jam45-visual-overhaul .woocommerce-products-header__title.page-title,body.jam45-visual-overhaul .woocommerce h1.page-title{font-family:var(--j45o-display)!important;font-size:clamp(2.7rem,5vw,5.2rem)!important;text-transform:uppercase;letter-spacing:.01em!important}
body.jam45-visual-overhaul .woocommerce ul.products{gap:14px!important}
body.jam45-visual-overhaul .woocommerce ul.products li.product{padding:8px!important;border-radius:5px!important;border-color:rgba(255,255,255,.14)!important;background:#0d0d0e!important;box-shadow:none!important}
body.jam45-visual-overhaul .woocommerce ul.products li.product:hover{transform:translateY(-2px)!important;border-color:rgba(255,52,60,.46)!important}
body.jam45-visual-overhaul .woocommerce ul.products li.product a img{border-radius:3px!important}
body.jam45-visual-overhaul .woocommerce ul.products li.product .price{color:var(--j45o-red-2)!important}
body.jam45-visual-overhaul .woocommerce span.onsale{border-radius:3px!important;background:var(--j45o-red)!important}
body.jam45-visual-overhaul .woocommerce-message,body.jam45-visual-overhaul .woocommerce-info,body.jam45-visual-overhaul .woocommerce-error{border-radius:4px!important;background:#0d0d0e!important;border-color:rgba(255,255,255,.15)!important}

/* Marketplace/account/dashboards: preserve structure, replace visual language. */
body.jam45-visual-overhaul .jam45-dashboard-shell,body.jam45-visual-overhaul .jam45-account-shell,body.jam45-visual-overhaul .jam45-auth-shell,body.jam45-visual-overhaul .jam45-commerce-main{color:#f5f5f5!important}
body.jam45-visual-overhaul .jam45-dashboard-header,body.jam45-visual-overhaul .jam45-dashboard-nav,body.jam45-visual-overhaul .jam45-dashboard-content,body.jam45-visual-overhaul .jam45-account-accordion,body.jam45-visual-overhaul .jam45-auth-card,body.jam45-visual-overhaul .jam45-form-section,body.jam45-visual-overhaul .jam45-analytics-panel,body.jam45-visual-overhaul .jam45-artist-card,body.jam45-visual-overhaul .jam45-account-security-panel,body.jam45-visual-overhaul .jam45-follower-announcement-panel,body.jam45-visual-overhaul .jam45-bandcamp-import-panel{border-radius:6px!important;border-color:rgba(255,255,255,.14)!important;background:#0d0d0e!important;box-shadow:none!important}
body.jam45-visual-overhaul .jam45-dashboard-tab-link,body.jam45-visual-overhaul .jam45-artist-tab,body.jam45-visual-overhaul .jam45-auth-tabs button,body.jam45-visual-overhaul .jam45-dashboard-subnav-links a{border-radius:4px!important}
body.jam45-visual-overhaul .jam45-dashboard-tab-link.is-active,body.jam45-visual-overhaul .jam45-artist-tab.is-active,body.jam45-visual-overhaul .jam45-auth-tabs button.is-active,body.jam45-visual-overhaul .jam45-dashboard-subnav-links a.is-active{color:#fff!important;border-color:rgba(255,52,60,.42)!important;background:rgba(227,32,39,.14)!important;box-shadow:inset 3px 0 0 var(--j45o-red)}
body.jam45-visual-overhaul .jam45-badge,body.jam45-visual-overhaul [class*="jam45-badge-"]{border-radius:3px!important}
body.jam45-visual-overhaul .jam45-alert{border-radius:4px!important}
body.jam45-visual-overhaul .jam45-analytics-total,body.jam45-visual-overhaul .jam45-account-count{color:var(--j45o-red-2)!important}
body.jam45-visual-overhaul .jam45-artist-hero,body.jam45-visual-overhaul .jam45-epk-hero{border-radius:6px!important}
body.jam45-visual-overhaul .jam45-artist-featured,body.jam45-visual-overhaul .jam45-artist-merch-panel,body.jam45-visual-overhaul .jam45-epk-section{border-radius:6px!important;border-color:rgba(255,255,255,.14)!important;background:#0d0d0e!important}
body.jam45-visual-overhaul .jam45-calendar-event-detail-card,body.jam45-visual-overhaul .jam45-calendar-action-choice,body.jam45-visual-overhaul .jam45-calendar-native-form{border-radius:6px!important;border-color:rgba(255,255,255,.14)!important;background:#0d0d0e!important}
body.jam45-visual-overhaul [class*="jam45-calendar-type-"]{border-radius:3px!important}
body.jam45-visual-overhaul .jam45-calendar-type-release-date,body.jam45-visual-overhaul .jam45-calendar-type-scheduled-release{border-color:rgba(255,52,60,.45)!important;background:rgba(227,32,39,.14)!important;color:#ffd7d9!important}

/* Player: retain the working controls, give them the new identity. */
body.jam45-visual-overhaul .jam45-player{border-radius:7px!important;border-color:rgba(255,255,255,.16)!important;background:#09090a!important;box-shadow:0 -10px 38px rgba(0,0,0,.45)!important}
body.jam45-visual-overhaul .jam45-player button,body.jam45-visual-overhaul .jam45-player .jam45-button{border-radius:4px!important}
body.jam45-visual-overhaul .jam45-player .jam45-player-mode,body.jam45-visual-overhaul .jam45-track-playback-badge{border-radius:3px!important}
body.jam45-visual-overhaul .jam45-player .is-preview,body.jam45-visual-overhaul .jam45-track-playback-badge.is-preview{color:#ffd1d4!important;border-color:rgba(255,52,60,.38)!important;background:rgba(227,32,39,.12)!important}
body.jam45-visual-overhaul .jam45-eq-slider{accent-color:var(--j45o-red)!important}

/* Jukebox: preserve the actual machine and controls, neutralize blue/purple chrome. */
body.jam45-visual-overhaul .jam45-jukebox-page,body.jam45-visual-overhaul .jam45-jukebox-wrap{background:#050505!important}
body.jam45-visual-overhaul .jam45-jukebox-machine{border-color:rgba(255,60,66,.36)!important;box-shadow:0 22px 70px rgba(0,0,0,.58),0 0 28px rgba(227,32,39,.09)!important}
body.jam45-visual-overhaul .jam45-jukebox-window,body.jam45-visual-overhaul .jam45-jukebox-library,body.jam45-visual-overhaul .jam45-jukebox-dialog,body.jam45-visual-overhaul .jam45-jukebox-info-band{border-color:rgba(255,255,255,.14)!important;background:#0c0c0d!important;box-shadow:none!important}
body.jam45-visual-overhaul .jam45-jukebox-source-counts button,body.jam45-visual-overhaul .jam45-jukebox-primary-actions>.jam45-button,body.jam45-visual-overhaul .jam45-jukebox-track-actions>.jam45-button{border-radius:4px!important}
body.jam45-visual-overhaul .jam45-jukebox-source-counts button:hover,body.jam45-visual-overhaul .jam45-jukebox-source-counts button.is-active{border-color:rgba(255,52,60,.48)!important;background:rgba(227,32,39,.12)!important}
body.jam45-visual-overhaul .jam45-jukebox-listen,body.jam45-visual-overhaul .jam45-jukebox-preview-buy{border-color:#e52a32!important;background:linear-gradient(180deg,#ed242c,#b90e15)!important}
body.jam45-visual-overhaul .jam45-jukebox-current-edit,body.jam45-visual-overhaul .jam45-jukebox-vimeo-button{border-color:rgba(255,255,255,.18)!important;background:#151516!important}

/* Studio / Mastering: variable-level recolor plus conservative surface normalization. */
body.jam45-visual-overhaul .j45s-shell{--j45s-bg:#050505;--j45s-panel:rgba(14,14,15,.96);--j45s-panel2:rgba(18,18,19,.96);--j45s-line:rgba(255,255,255,.13);--j45s-text:#f7f7f7;--j45s-muted:#a4a4aa;--j45s-purple:#9a1016;--j45s-cyan:#ff3a42;--j45s-blue:#d51c24;--j45s-green:#4ade80;--j45s-warn:#fbbf24;border-radius:8px!important;background:radial-gradient(circle at 50% -20%,rgba(227,32,39,.12),transparent 36%),#080808!important;box-shadow:none!important}
body.jam45-visual-overhaul .j45s-card{border-radius:6px!important;border-color:rgba(255,255,255,.13)!important;background:#0d0d0e!important;box-shadow:none!important}
body.jam45-visual-overhaul .j45s-hero h1,body.jam45-visual-overhaul .j45m-console-copy h2{font-family:var(--j45o-display)!important;text-transform:uppercase;letter-spacing:.01em!important}
body.jam45-visual-overhaul .j45s-kicker,body.jam45-visual-overhaul .j45s-step,body.jam45-visual-overhaul .j45m-subtabs button{border-radius:4px!important}
body.jam45-visual-overhaul .j45s-master-button{border-radius:4px!important;color:#fff!important;background:linear-gradient(180deg,#eb252d,#af0e15)!important;box-shadow:0 12px 30px rgba(142,8,13,.22)!important}
body.jam45-visual-overhaul .j45s-upload-orb,body.jam45-visual-overhaul .j45s-play{border-radius:5px!important;color:#fff!important;background:linear-gradient(145deg,#ee2931,#8b0a0f)!important}
body.jam45-visual-overhaul .j45s-profile,body.jam45-visual-overhaul .j45s-drop,body.jam45-visual-overhaul .j45s-player{border-radius:6px!important}
body.jam45-visual-overhaul .j45m-console-head,body.jam45-visual-overhaul .j45m-transport,body.jam45-visual-overhaul .j45m-track-row,body.jam45-visual-overhaul .j45m-channel,body.jam45-visual-overhaul .j45m-rec-help,body.jam45-visual-overhaul .j45m-fx-grid label{border-radius:6px!important;border-color:rgba(255,255,255,.13)!important}
body.jam45-visual-overhaul .j45m-subtabs button.is-active{border-color:rgba(255,52,60,.4)!important;background:rgba(227,32,39,.14)!important}
body.jam45-visual-overhaul .j45m-eyebrow,body.jam45-visual-overhaul .j45m-fx-open{color:var(--j45o-red-2)!important}
body.jam45-visual-overhaul .j45m-fx-open{border-color:rgba(255,52,60,.22)!important;background:rgba(227,32,39,.07)!important}

/* Pricing / comparison */
body.jam45-visual-overhaul .jam45-pricing-card,body.jam45-visual-overhaul .jam45-compare-card,body.jam45-visual-overhaul .jam45-comparison-card{border-radius:6px!important;border-color:rgba(255,255,255,.14)!important;background:#0d0d0e!important;box-shadow:none!important}
body.jam45-visual-overhaul .jam45-pricing-card.is-featured{border-color:rgba(255,52,60,.52)!important;box-shadow:0 0 0 1px rgba(227,32,39,.1)!important}

/* Footer */
body.jam45-visual-overhaul .jam45-site-footer{margin-top:0!important;padding:42px 0 18px!important;border-top:1px solid rgba(255,255,255,.12)!important;background:#050505!important}
body.jam45-visual-overhaul .jam45-site-footer::before,body.jam45-visual-overhaul .jam45-footer-glow{display:none!important}
body.jam45-visual-overhaul .jam45-footer-grid{grid-template-columns:1.1fr repeat(3,.7fr);gap:28px}
body.jam45-visual-overhaul .jam45-footer-nav-section h2,body.jam45-visual-overhaul .jam45-footer-heading{font-family:var(--j45o-display);font-size:1.02rem!important;letter-spacing:.05em!important}
body.jam45-visual-overhaul .jam45-footer-socials a{border-radius:4px!important;background:#0d0d0e!important}
body.jam45-visual-overhaul .jam45-footer-bottom{margin-top:28px;border-color:rgba(255,255,255,.11)!important}

/* Responsive */
@media(max-width:1180px){
  body.jam45-visual-overhaul .j45o-hero-grid{grid-template-columns:1fr 1fr}
  body.jam45-visual-overhaul .j45o-genre-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:900px){
  body.jam45-visual-overhaul .j45o-wrap,body.jam45-visual-overhaul .jam45-container{width:min(100% - 28px,1480px)}
  body.jam45-visual-overhaul .j45o-campaign{padding-top:22px}
  body.jam45-visual-overhaul .j45o-campaign h1{font-size:clamp(1.55rem,6.4vw,3rem);line-height:1.05}
  body.jam45-visual-overhaul .j45o-campaign p{font-size:.65rem;letter-spacing:.22em}
  body.jam45-visual-overhaul .j45o-hero-grid{grid-template-columns:1fr;padding-block:24px}
  body.jam45-visual-overhaul .j45o-hero-copy{text-align:center;padding-bottom:0}
  body.jam45-visual-overhaul .j45o-hero-copy p{margin-inline:auto}
  body.jam45-visual-overhaul .j45o-actions,body.jam45-visual-overhaul .j45o-trust{justify-content:center}
  body.jam45-visual-overhaul .j45o-hero-release .jam45-coverflow-slide{width:min(74vw,500px)!important}
  body.jam45-visual-overhaul .j45o-pillar-grid,body.jam45-visual-overhaul .j45o-feature-grid{grid-template-columns:1fr}
  body.jam45-visual-overhaul .j45o-pillar{margin-top:24px}
  body.jam45-visual-overhaul .j45o-join-inner{display:grid;text-align:center}
  body.jam45-visual-overhaul .j45o-join-inner .j45o-actions{justify-content:center}
}
@media(max-width:760px){
  body.jam45-visual-overhaul .jam45-header-inner{min-height:62px}
  body.jam45-visual-overhaul .jam45-primary-nav{background:#080808!important}
  body.jam45-visual-overhaul .jam45-menu{padding:10px!important}
  body.jam45-visual-overhaul .jam45-menu a{min-height:46px!important}
  body.jam45-visual-overhaul .j45o-campaign h1 i{display:none}
  body.jam45-visual-overhaul .j45o-campaign h1 span{white-space:nowrap}
  body.jam45-visual-overhaul .j45o-hero-copy h2{font-size:clamp(2.8rem,13vw,4.6rem)}
  body.jam45-visual-overhaul .j45o-hero-release .jam45-coverflow-stage,body.jam45-visual-overhaul .j45o-hero-release .jam45-coverflow-track{min-height:340px!important}
  body.jam45-visual-overhaul .j45o-hero-release .jam45-coverflow-slide{width:min(82vw,360px)!important}
  body.jam45-visual-overhaul .j45o-genre-grid{grid-template-columns:repeat(2,1fr)}
  body.jam45-visual-overhaul .j45o-genre{min-height:125px}
  body.jam45-visual-overhaul .j45o-feature-card p{margin-bottom:94px}
  body.jam45-visual-overhaul .j45o-wave,body.jam45-visual-overhaul .j45o-records,body.jam45-visual-overhaul .j45o-bin{width:50%}
  body.jam45-visual-overhaul .jam45-footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:480px){
  body.jam45-visual-overhaul .j45o-wrap,body.jam45-visual-overhaul .jam45-container{width:calc(100% - 20px)}
  body.jam45-visual-overhaul .j45o-campaign h1{font-size:1.55rem}
  body.jam45-visual-overhaul .j45o-campaign p{line-height:1.45}
  body.jam45-visual-overhaul .j45o-genre-grid{grid-template-columns:1fr 1fr;gap:7px}
  body.jam45-visual-overhaul .j45o-genre{min-height:110px;padding:10px}
  body.jam45-visual-overhaul .j45o-genre span{font-size:1.1rem}
  body.jam45-visual-overhaul .j45o-button{width:100%}
  body.jam45-visual-overhaul .j45o-pillar,body.jam45-visual-overhaul .j45o-feature-card{padding:20px}
  body.jam45-visual-overhaul .j45o-feature-card b{left:20px}
  body.jam45-visual-overhaul .jam45-footer-grid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){body.jam45-visual-overhaul *,body.jam45-visual-overhaul *::before,body.jam45-visual-overhaul *::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}

/* Alpha2 — theme-owned professional homepage structure.
   The theme now owns front-page.php; this plugin styles the live Jam45
   shortcodes into the approved music-editorial presentation. */
body.jam45-visual-overhaul .j45o-new-releases .jam45-slider-section,
body.jam45-visual-overhaul .j45o-featured .jam45-slider-section,
body.jam45-visual-overhaul .j45o-artists .jam45-directory{
  width:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.jam45-visual-overhaul .j45o-new-releases .jam45-section-heading,
body.jam45-visual-overhaul .j45o-featured .jam45-section-heading,
body.jam45-visual-overhaul .j45o-artists .jam45-section-heading{
  margin:0 0 12px!important;
  padding:0!important;
  align-items:center!important;
}
body.jam45-visual-overhaul .j45o-new-releases .jam45-section-heading .jam45-eyebrow,
body.jam45-visual-overhaul .j45o-featured .jam45-section-heading .jam45-eyebrow,
body.jam45-visual-overhaul .j45o-artists .jam45-section-heading .jam45-eyebrow{
  display:none!important;
}
body.jam45-visual-overhaul .j45o-new-releases .jam45-section-heading h2,
body.jam45-visual-overhaul .j45o-featured .jam45-section-heading h2,
body.jam45-visual-overhaul .j45o-artists .jam45-section-heading h1{
  margin:0!important;
  color:#f7f7f7!important;
  font-family:var(--j45o-display)!important;
  font-size:clamp(1.45rem,2.1vw,2.15rem)!important;
  font-weight:900!important;
  line-height:1!important;
  letter-spacing:.04em!important;
  text-transform:uppercase!important;
}
body.jam45-visual-overhaul .j45o-new-releases .jam45-slider-controls,
body.jam45-visual-overhaul .j45o-featured .jam45-slider-controls{
  gap:6px!important;
}
body.jam45-visual-overhaul .j45o-new-releases .jam45-slider-controls button,
body.jam45-visual-overhaul .j45o-featured .jam45-slider-controls button{
  width:34px!important;min-width:34px!important;height:34px!important;min-height:34px!important;
  padding:0!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:50%!important;
  color:#fff!important;background:#0b0b0c!important;box-shadow:none!important;
}
body.jam45-visual-overhaul .j45o-new-releases .jam45-slider-controls button:hover,
body.jam45-visual-overhaul .j45o-featured .jam45-slider-controls button:hover{
  border-color:rgba(255,52,60,.65)!important;background:rgba(227,32,39,.14)!important;
}
body.jam45-visual-overhaul .j45o-new-releases .jam45-release-grid.is-slider,
body.jam45-visual-overhaul .j45o-featured .jam45-release-grid.is-slider{
  gap:14px!important;
  padding:0 2px 6px!important;
  scroll-padding-inline:2px;
}
body.jam45-visual-overhaul .j45o-new-releases .jam45-release-grid.is-slider .jam45-release-card{
  flex:0 0 clamp(150px,13.8vw,190px)!important;
}
body.jam45-visual-overhaul .j45o-featured .jam45-release-grid.is-slider .jam45-release-card{
  flex:0 0 clamp(145px,12.6vw,178px)!important;
}
body.jam45-visual-overhaul .j45o-new-releases .jam45-release-card,
body.jam45-visual-overhaul .j45o-featured .jam45-release-card{
  overflow:visible!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  transform:none!important;
}
body.jam45-visual-overhaul .j45o-new-releases .jam45-release-art,
body.jam45-visual-overhaul .j45o-featured .jam45-release-art{
  aspect-ratio:1/1!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:4px!important;
  background:#0d0d0e!important;
  transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease;
}
body.jam45-visual-overhaul .j45o-new-releases .jam45-release-card:hover .jam45-release-art,
body.jam45-visual-overhaul .j45o-featured .jam45-release-card:hover .jam45-release-art{
  transform:translateY(-2px)!important;
  border-color:rgba(255,52,60,.55)!important;
  box-shadow:0 10px 24px rgba(0,0,0,.32)!important;
}
body.jam45-visual-overhaul .j45o-new-releases .jam45-release-art img,
body.jam45-visual-overhaul .j45o-featured .jam45-release-art img{
  width:100%!important;height:100%!important;object-fit:cover!important;border-radius:3px!important;
}
body.jam45-visual-overhaul .j45o-new-releases .jam45-release-type,
body.jam45-visual-overhaul .j45o-featured .jam45-release-type{
  display:none!important;
}
body.jam45-visual-overhaul .j45o-new-releases .jam45-card-play,
body.jam45-visual-overhaul .j45o-featured .jam45-card-play{
  width:44px!important;min-width:44px!important;max-width:44px!important;
  height:44px!important;min-height:44px!important;max-height:44px!important;
  border:1px solid rgba(255,255,255,.78)!important;border-radius:50%!important;
  background:rgba(0,0,0,.56)!important;box-shadow:0 4px 18px rgba(0,0,0,.38)!important;
}
body.jam45-visual-overhaul .j45o-new-releases .jam45-release-card-copy,
body.jam45-visual-overhaul .j45o-featured .jam45-release-card-copy{
  padding:.58rem 1px 0!important;
}
body.jam45-visual-overhaul .j45o-new-releases .jam45-release-card-copy h3,
body.jam45-visual-overhaul .j45o-featured .jam45-release-card-copy h3{
  margin:0 0 2px!important;font-size:.82rem!important;line-height:1.2!important;font-weight:800!important;
}
body.jam45-visual-overhaul .j45o-new-releases .jam45-card-artist,
body.jam45-visual-overhaul .j45o-featured .jam45-card-artist{
  color:#aaa!important;font-size:.72rem!important;line-height:1.2!important;
}
body.jam45-visual-overhaul .j45o-new-releases .jam45-card-state,
body.jam45-visual-overhaul .j45o-featured .jam45-card-state{
  display:none!important;
}
body.jam45-visual-overhaul .j45o-new-releases .jam45-card-bottom,
body.jam45-visual-overhaul .j45o-featured .jam45-card-bottom{
  margin-top:4px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:6px!important;
  color:var(--j45o-red-2)!important;font-size:.72rem!important;font-weight:800!important;
}
body.jam45-visual-overhaul .j45o-new-releases .jam45-card-bottom a,
body.jam45-visual-overhaul .j45o-featured .jam45-card-bottom a{
  padding:0!important;border:0!important;color:var(--j45o-red-2)!important;background:transparent!important;
  box-shadow:none!important;font-size:.66rem!important;font-weight:900!important;text-transform:uppercase!important;
}

/* Artist strip — real approved artists, compact like the approved homepage. */
body.jam45-visual-overhaul .j45o-artists .j45o-wrap{position:relative}
body.jam45-visual-overhaul .j45o-section-link{position:absolute;right:0;top:4px;z-index:2}
body.jam45-visual-overhaul .j45o-section-link a{color:var(--j45o-red-2)!important;font-size:.7rem;font-weight:900;letter-spacing:.05em;text-decoration:none;text-transform:uppercase}
body.jam45-visual-overhaul .j45o-artists .jam45-artist-grid{
  display:flex!important;grid-template-columns:none!important;gap:24px!important;overflow-x:auto!important;
  padding:2px 0 7px!important;scroll-snap-type:x proximity;scrollbar-width:none;
}
body.jam45-visual-overhaul .j45o-artists .jam45-artist-grid::-webkit-scrollbar{display:none}
body.jam45-visual-overhaul .j45o-artists .jam45-artist-card{
  flex:0 0 104px!important;min-height:0!important;padding:0!important;display:flex!important;flex-direction:column!important;
  align-items:center!important;gap:7px!important;border:0!important;border-radius:0!important;background:transparent!important;
  text-align:center!important;scroll-snap-align:start;box-shadow:none!important;
}
body.jam45-visual-overhaul .j45o-artists .jam45-artist-card img{
  width:82px!important;height:82px!important;min-width:82px!important;border:1px solid rgba(255,65,72,.48)!important;
  border-radius:50%!important;object-fit:cover!important;background:#111!important;transition:.18s ease;
}
body.jam45-visual-overhaul .j45o-artists .jam45-artist-card:hover img{
  transform:translateY(-2px) scale(1.02);border-color:rgba(255,65,72,.9)!important;box-shadow:0 0 18px rgba(227,32,39,.14)!important;
}
body.jam45-visual-overhaul .j45o-artists .jam45-artist-card span{display:block!important;width:100%!important}
body.jam45-visual-overhaul .j45o-artists .jam45-artist-card strong{display:block!important;font-size:.72rem!important;line-height:1.15!important;color:#f4f4f5!important}
body.jam45-visual-overhaul .j45o-artists .jam45-artist-card small{display:none!important}

/* Hero polish — live coverflow only; vinyl is decorative, not product UI. */
body.jam45-visual-overhaul .j45o-hero{min-height:500px!important}
body.jam45-visual-overhaul .j45o-hero-release .jam45-coverflow-slide{overflow:visible!important}
body.jam45-visual-overhaul .j45o-hero-release .jam45-coverflow-slide.is-active::before{
  content:"";position:absolute;z-index:-1;right:-24%;top:8%;width:82%;aspect-ratio:1;border-radius:50%;
  border:1px solid rgba(255,255,255,.12);
  background:repeating-radial-gradient(circle at center,#171717 0 3px,#080808 4px 8px,#151515 9px 11px),#090909;
  box-shadow:0 18px 55px rgba(0,0,0,.55),inset 0 0 0 14px rgba(255,255,255,.018);
  opacity:.92;
}
body.jam45-visual-overhaul .j45o-hero-release .jam45-coverflow-slide.is-active::after{
  content:"";position:absolute;z-index:-1;right:8.5%;top:39%;width:13%;aspect-ratio:1;border-radius:50%;
  background:radial-gradient(circle,#070707 0 11%,#cf171e 12% 48%,#5f080b 49% 100%);opacity:.9;
}
body.jam45-visual-overhaul .j45o-hero-release .jam45-coverflow-card{box-shadow:0 24px 70px rgba(0,0,0,.62),0 0 32px rgba(227,32,39,.12)!important}
body.jam45-visual-overhaul .j45o-hero-release .jam45-coverflow-arrow{border-color:rgba(255,255,255,.34)!important;background:rgba(0,0,0,.42)!important}
body.jam45-visual-overhaul .j45o-hero-release .jam45-coverflow-arrow:hover{border-color:rgba(255,52,60,.75)!important;background:rgba(227,32,39,.16)!important}

@media(max-width:900px){
  body.jam45-visual-overhaul .j45o-new-releases .jam45-release-grid.is-slider .jam45-release-card,
  body.jam45-visual-overhaul .j45o-featured .jam45-release-grid.is-slider .jam45-release-card{flex-basis:min(190px,46vw)!important}
  body.jam45-visual-overhaul .j45o-artists .jam45-artist-grid{gap:17px!important}
  body.jam45-visual-overhaul .j45o-section-link{right:2px}
}
@media(max-width:520px){
  body.jam45-visual-overhaul .j45o-new-releases .jam45-release-grid.is-slider .jam45-release-card,
  body.jam45-visual-overhaul .j45o-featured .jam45-release-grid.is-slider .jam45-release-card{flex-basis:42vw!important}
  body.jam45-visual-overhaul .j45o-new-releases .jam45-card-play,
  body.jam45-visual-overhaul .j45o-featured .jam45-card-play{width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important}
  body.jam45-visual-overhaul .j45o-artists .jam45-artist-card{flex-basis:88px!important}
  body.jam45-visual-overhaul .j45o-artists .jam45-artist-card img{width:72px!important;height:72px!important;min-width:72px!important}
}

/* Alpha3 — true release spotlight hero + squared action buttons. */
body.jam45-visual-overhaul{
  --jam45-action-radius:2px;
  --jam45-action-glow:0 0 14px rgba(227,32,39,.22);
}

/* Keep icon-only transport controls circular where that shape communicates the control,
   but make normal text/action buttons rectangular like the approved homepage. */
body.jam45-visual-overhaul .j45o-button,
body.jam45-visual-overhaul .jam45-theme-button,
body.jam45-visual-overhaul .jam45-button,
body.jam45-visual-overhaul .jam45-header-button,
body.jam45-visual-overhaul .woocommerce a.button,
body.jam45-visual-overhaul .woocommerce button.button,
body.jam45-visual-overhaul .woocommerce input.button,
body.jam45-visual-overhaul .woocommerce ul.products li.product .jam45-archive-play,
body.jam45-visual-overhaul .woocommerce ul.products li.product .jam45-music-add-to-cart,
body.jam45-visual-overhaul .jam45-player-buy,
body.jam45-visual-overhaul .jam45-preview-purchase,
body.jam45-visual-overhaul .j45s-master-button{
  border-radius:var(--jam45-action-radius)!important;
}

body.jam45-visual-overhaul .j45o-button:hover,
body.jam45-visual-overhaul .j45o-button:focus-visible,
body.jam45-visual-overhaul .jam45-theme-button:hover,
body.jam45-visual-overhaul .jam45-theme-button:focus-visible,
body.jam45-visual-overhaul .jam45-button:hover,
body.jam45-visual-overhaul .jam45-button:focus-visible,
body.jam45-visual-overhaul .jam45-header-button:hover,
body.jam45-visual-overhaul .jam45-header-button:focus-visible,
body.jam45-visual-overhaul .woocommerce a.button:hover,
body.jam45-visual-overhaul .woocommerce a.button:focus-visible,
body.jam45-visual-overhaul .woocommerce button.button:hover,
body.jam45-visual-overhaul .woocommerce button.button:focus-visible,
body.jam45-visual-overhaul .woocommerce ul.products li.product .jam45-archive-play:hover,
body.jam45-visual-overhaul .woocommerce ul.products li.product .jam45-archive-play:focus-visible,
body.jam45-visual-overhaul .woocommerce ul.products li.product .jam45-music-add-to-cart:hover,
body.jam45-visual-overhaul .woocommerce ul.products li.product .jam45-music-add-to-cart:focus-visible,
body.jam45-visual-overhaul .jam45-player-buy:hover,
body.jam45-visual-overhaul .jam45-player-buy:focus-visible{
  box-shadow:var(--jam45-action-glow)!important;
}

/* Stronger exact archive selectors beat the legacy pill rules in theme.css. */
body.jam45-visual-overhaul.woocommerce ul.products li.product .jam45-archive-play,
body.jam45-visual-overhaul.woocommerce ul.products li.product .jam45-music-add-to-cart,
body.jam45-visual-overhaul .woocommerce ul.products li.product .button.jam45-archive-play,
body.jam45-visual-overhaul .woocommerce ul.products li.product .button.jam45-music-add-to-cart{
  border-radius:2px!important;
  border-color:rgba(227,32,39,.58)!important;
  background:#101011!important;
}
body.jam45-visual-overhaul.woocommerce ul.products li.product .jam45-archive-play:hover,
body.jam45-visual-overhaul.woocommerce ul.products li.product .jam45-music-add-to-cart:hover,
body.jam45-visual-overhaul .woocommerce ul.products li.product .button.jam45-archive-play:hover,
body.jam45-visual-overhaul .woocommerce ul.products li.product .button.jam45-music-add-to-cart:hover{
  border-color:#ef343b!important;
  background:linear-gradient(180deg,#e8242c,#b80f16)!important;
  box-shadow:0 0 13px rgba(227,32,39,.2)!important;
}

/* The hero is now one real latest release, not the old coverflow. */
body.jam45-visual-overhaul .j45o-hero.has-release{
  min-height:520px!important;
  isolation:isolate;
  background:
    linear-gradient(90deg,rgba(5,5,5,.99) 0%,rgba(5,5,5,.93) 35%,rgba(6,5,5,.78) 64%,rgba(5,5,5,.9) 100%),
    var(--j45o-hero-art),#050505!important;
  background-size:auto,cover!important;
  background-position:center,72% center!important;
}
body.jam45-visual-overhaul .j45o-hero.has-release::before{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(circle at 73% 52%,rgba(225,26,34,.23),transparent 34%),linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.58));
  backdrop-filter:blur(8px);
}
body.jam45-visual-overhaul .j45o-hero.has-release::after{
  opacity:.1;
}
body.jam45-visual-overhaul .j45o-hero.has-release .j45o-hero-grid{
  grid-template-columns:minmax(300px,.72fr) minmax(520px,1.28fr);
  gap:44px;
  min-height:520px;
  padding-block:40px;
}
body.jam45-visual-overhaul .j45o-hero.has-release .j45o-hero-copy{
  align-self:center;
  padding:12px 0;
}
body.jam45-visual-overhaul .j45o-hero.has-release .j45o-hero-copy h2{
  max-width:630px;
  font-size:clamp(3rem,5.25vw,5.6rem);
  line-height:.9;
  text-wrap:balance;
}
body.jam45-visual-overhaul .j45o-hero-artist{
  display:inline-block;margin-top:11px;color:var(--j45o-red-2)!important;
  font-family:var(--j45o-display);font-size:clamp(1.15rem,1.8vw,1.7rem);font-weight:900;
  letter-spacing:.08em;text-decoration:none!important;text-transform:uppercase;
}
body.jam45-visual-overhaul a.j45o-hero-artist:hover,
body.jam45-visual-overhaul a.j45o-hero-artist:focus-visible{color:#fff!important;text-shadow:0 0 13px rgba(227,32,39,.35)}
body.jam45-visual-overhaul .j45o-hero.has-release .j45o-hero-copy p{max-width:560px;margin-top:18px}

body.jam45-visual-overhaul .j45o-hero.has-release .j45o-hero-release{
  position:relative;
  min-width:0;
  min-height:430px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding-right:74px;
}
body.jam45-visual-overhaul .j45o-hero-cover{
  position:relative;z-index:3;
  width:min(430px,72%);aspect-ratio:1;
  display:block;overflow:hidden;
  border:1px solid rgba(255,72,78,.48);border-radius:3px;
  background:#0b0b0c;
  box-shadow:0 28px 70px rgba(0,0,0,.66),0 0 28px rgba(227,32,39,.13);
  text-decoration:none!important;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
body.jam45-visual-overhaul .j45o-hero-cover:hover,
body.jam45-visual-overhaul .j45o-hero-cover:focus-visible{
  transform:translateY(-3px);border-color:rgba(255,72,78,.9);
  box-shadow:0 30px 76px rgba(0,0,0,.68),0 0 22px rgba(227,32,39,.22);
}
body.jam45-visual-overhaul .j45o-hero-cover img{width:100%;height:100%;display:block;object-fit:cover}
body.jam45-visual-overhaul .j45o-cover-play{
  position:absolute;left:50%;top:50%;width:68px;height:68px;display:grid;place-items:center;
  transform:translate(-50%,-50%);border:1px solid rgba(255,255,255,.78);border-radius:50%;
  color:#fff;background:rgba(0,0,0,.5);font-size:1.5rem;line-height:1;padding-left:4px;
  box-shadow:0 8px 24px rgba(0,0,0,.38);
}
body.jam45-visual-overhaul .j45o-vinyl{
  position:absolute;z-index:2;right:3%;top:50%;width:min(390px,62%);aspect-ratio:1;
  transform:translateY(-50%);border-radius:50%;border:1px solid rgba(255,255,255,.12);
  background:repeating-radial-gradient(circle at center,#171717 0 3px,#080808 4px 8px,#151515 9px 11px),#090909;
  box-shadow:0 18px 55px rgba(0,0,0,.58),inset 0 0 0 16px rgba(255,255,255,.014);
}
body.jam45-visual-overhaul .j45o-vinyl::before{
  content:"";position:absolute;left:50%;top:50%;width:31%;aspect-ratio:1;transform:translate(-50%,-50%);
  border-radius:50%;background:radial-gradient(circle,#050505 0 10%,#ce171e 11% 48%,#5d080b 49% 100%);
}
body.jam45-visual-overhaul .j45o-vinyl i{position:absolute;inset:3.5%;border:1px solid rgba(255,255,255,.055);border-radius:50%}

@media(max-width:1000px){
  body.jam45-visual-overhaul .j45o-hero.has-release .j45o-hero-grid{grid-template-columns:1fr 1fr;gap:24px}
  body.jam45-visual-overhaul .j45o-hero.has-release .j45o-hero-release{padding-right:38px}
}
@media(max-width:900px){
  body.jam45-visual-overhaul .j45o-hero.has-release .j45o-hero-grid{grid-template-columns:1fr;min-height:0;padding-block:28px 40px}
  body.jam45-visual-overhaul .j45o-hero.has-release .j45o-hero-release{min-height:390px;padding-right:38px}
  body.jam45-visual-overhaul .j45o-hero.has-release .j45o-hero-copy{text-align:center}
  body.jam45-visual-overhaul .j45o-hero.has-release .j45o-hero-copy h2,
  body.jam45-visual-overhaul .j45o-hero.has-release .j45o-hero-copy p{margin-inline:auto}
}
@media(max-width:560px){
  body.jam45-visual-overhaul .j45o-hero.has-release .j45o-hero-release{min-height:300px;padding-right:26px}
  body.jam45-visual-overhaul .j45o-hero-cover{width:75%}
  body.jam45-visual-overhaul .j45o-vinyl{width:61%;right:2%}
  body.jam45-visual-overhaul .j45o-cover-play{width:54px;height:54px;font-size:1.15rem}
}


/* Alpha4 — ambient live-performance hero background + stronger genre navigation cue. */
body.jam45-visual-overhaul .j45o-genres .j45o-section-head>a::after{
  content:"→";display:inline-block;margin-left:.45em;transition:transform .18s ease;
}
body.jam45-visual-overhaul .j45o-genres .j45o-section-head>a:hover::after,
body.jam45-visual-overhaul .j45o-genres .j45o-section-head>a:focus-visible::after{
  transform:translateX(3px);
}
body.jam45-visual-overhaul .j45o-genre{
  padding-right:48px;
}
body.jam45-visual-overhaul .j45o-genre::before{
  content:"→";position:absolute;right:14px;bottom:14px;z-index:2;
  color:#fff;font:900 1rem/1 Arial,sans-serif;opacity:.92;
  text-shadow:0 4px 18px rgba(0,0,0,.65);transition:transform .18s ease,color .18s ease;
}
body.jam45-visual-overhaul .j45o-genre:hover::before,
body.jam45-visual-overhaul .j45o-genre:focus-visible::before{
  transform:translateX(3px);color:var(--j45o-red-2);
}
body.jam45-visual-overhaul .j45o-hero.has-release{
  background:
    linear-gradient(90deg,rgba(5,5,5,.96) 0%,rgba(5,5,5,.78) 28%,rgba(5,5,5,.46) 55%,rgba(5,5,5,.72) 78%,rgba(5,5,5,.9) 100%),
    linear-gradient(180deg,rgba(6,5,5,.24) 0%,rgba(5,5,5,.28) 100%),
    url('../images/hero-live-ambience.png') center center / cover no-repeat !important;
}
body.jam45-visual-overhaul .j45o-hero.has-release::before{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:
    radial-gradient(circle at 12% 38%,rgba(228,32,39,.34),transparent 18%),
    radial-gradient(circle at 88% 36%,rgba(228,32,39,.28),transparent 18%),
    radial-gradient(circle at 50% 56%,rgba(255,255,255,.10),transparent 24%),
    linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.52));
}
body.jam45-visual-overhaul .j45o-hero.has-release .j45o-hero-copy p{
  color:#d6d6da;text-shadow:0 2px 14px rgba(0,0,0,.34);
}
body.jam45-visual-overhaul .j45o-hero.has-release .j45o-trust span{
  background:rgba(10,10,10,.58);backdrop-filter:blur(10px);
}
@media(max-width:900px){
  body.jam45-visual-overhaul .j45o-hero.has-release{
    background-position:62% center, center, 58% center !important;
  }
}


/* Alpha5 — Browse by Genre is a true horizontal carousel, matching the release rows. */
body.jam45-visual-overhaul .j45o-genres .j45o-section-head{align-items:center!important}
body.jam45-visual-overhaul .j45o-genre-head-actions{display:flex;align-items:center;gap:12px}
body.jam45-visual-overhaul .j45o-genre-view-all{color:var(--j45o-red-2)!important;font-size:.7rem;font-weight:900;text-decoration:none!important;letter-spacing:.05em;text-transform:uppercase}
body.jam45-visual-overhaul .j45o-genre-view-all:hover,body.jam45-visual-overhaul .j45o-genre-view-all:focus-visible{color:#fff!important}
body.jam45-visual-overhaul .j45o-genre-controls{display:flex;align-items:center;gap:6px!important}
body.jam45-visual-overhaul .j45o-genre-controls button{
  box-sizing:border-box;width:34px!important;min-width:34px!important;height:34px!important;min-height:34px!important;
  padding:0!important;display:grid!important;place-items:center!important;border:1px solid rgba(255,255,255,.18)!important;
  border-radius:50%!important;color:#fff!important;background:#0b0b0c!important;box-shadow:none!important;
  font:700 1.35rem/1 Arial,sans-serif!important;cursor:pointer;transition:.18s ease;
}
body.jam45-visual-overhaul .j45o-genre-controls button:hover,body.jam45-visual-overhaul .j45o-genre-controls button:focus-visible{
  border-color:rgba(255,52,60,.65)!important;background:rgba(227,32,39,.14)!important;box-shadow:0 0 12px rgba(227,32,39,.16)!important;outline:0;
}
body.jam45-visual-overhaul .j45o-genre-controls button:disabled{opacity:.3;cursor:default;box-shadow:none!important}
body.jam45-visual-overhaul .j45o-genre-slider{
  display:flex;gap:10px;overflow-x:auto;overflow-y:hidden;padding:0 2px 8px;scroll-snap-type:x mandatory;scroll-behavior:smooth;
  scrollbar-width:none;-ms-overflow-style:none;overscroll-behavior-inline:contain;
}
body.jam45-visual-overhaul .j45o-genre-slider::-webkit-scrollbar{display:none}
body.jam45-visual-overhaul .j45o-genre-slider .j45o-genre{
  flex:0 0 clamp(178px,15.5vw,230px);min-height:150px;padding:15px!important;scroll-snap-align:start;
}
/* Alpha4 mistakenly put arrows on each genre tile; the controls above replace them. */
body.jam45-visual-overhaul .j45o-genre-slider .j45o-genre::before{content:none!important;display:none!important}
body.jam45-visual-overhaul .j45o-genre-slider .j45o-genre::after{inset:0}
@media(max-width:900px){
  body.jam45-visual-overhaul .j45o-genre-slider .j45o-genre{flex-basis:clamp(170px,34vw,240px)}
}
@media(max-width:560px){
  body.jam45-visual-overhaul .j45o-genre-head-actions{gap:8px}
  body.jam45-visual-overhaul .j45o-genre-view-all{display:none}
  body.jam45-visual-overhaul .j45o-genre-controls button{width:32px!important;min-width:32px!important;height:32px!important;min-height:32px!important}
  body.jam45-visual-overhaul .j45o-genre-slider .j45o-genre{flex-basis:72vw;min-height:128px}
}


/* Alpha6 — Record Bin Grid View play control adopts the Jam45 red visual system. */
body.jam45-visual-overhaul .jam45-record-bin.is-grid .jam45-record-grid-play{
  border-color:rgba(239,52,59,.72)!important;
  color:#fff!important;
  background:linear-gradient(145deg,#ee2931,#b40d14)!important;
  box-shadow:0 8px 20px rgba(180,13,20,.28),0 0 0 1px rgba(255,255,255,.025)!important;
}
body.jam45-visual-overhaul .jam45-record-bin.is-grid .jam45-record-grid-play:hover,
body.jam45-visual-overhaul .jam45-record-bin.is-grid .jam45-record-grid-play:focus-visible{
  border-color:#ff454c!important;
  background:linear-gradient(145deg,#ff343c,#c41018)!important;
  box-shadow:0 8px 22px rgba(180,13,20,.34),0 0 14px rgba(227,32,39,.25)!important;
  outline:2px solid rgba(255,69,76,.7)!important;
  outline-offset:2px!important;
}

/* Alpha7 — honest, product-led previews for Studio, Jukebox and Record Bin. */
body.jam45-visual-overhaul .j45o-feature-card.is-experience-enhanced{
  min-height:300px;
  isolation:isolate;
  transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease;
}
body.jam45-visual-overhaul .j45o-feature-card.is-experience-enhanced:hover,
body.jam45-visual-overhaul .j45o-feature-card.is-experience-enhanced:focus-visible{
  transform:translateY(-2px);
  border-color:rgba(255,52,60,.62);
  box-shadow:0 18px 44px rgba(0,0,0,.28),inset 0 1px rgba(255,255,255,.035);
  outline:0;
}
body.jam45-visual-overhaul .j45o-feature-card.is-experience-enhanced p{
  max-width:52%;
  margin-bottom:72px;
}
body.jam45-visual-overhaul .j45o-experience-preview{
  position:absolute;
  z-index:2;
  right:12px;
  bottom:22px;
  width:48%;
  height:132px;
  overflow:hidden;
  pointer-events:none;
}
body.jam45-visual-overhaul .j45o-feature-card.is-experience-enhanced>b{z-index:6}

/* Studio: miniature of the real dark Record / Mix console rather than decorative bars. */
body.jam45-visual-overhaul .j45o-studio-preview{
  padding:8px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:5px;
  background:linear-gradient(180deg,#15171c,#090a0d 80%);
  box-shadow:0 12px 28px rgba(0,0,0,.38),inset 0 1px rgba(255,255,255,.035);
}
body.jam45-visual-overhaul .j45o-studio-mini-top,
body.jam45-visual-overhaul .j45o-studio-mini-transport{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:6px;
}
body.jam45-visual-overhaul .j45o-studio-mini-top{
  padding:0 2px 5px;
  color:#e9e9ec;
  font-size:.42rem;
  letter-spacing:.08em;
}
body.jam45-visual-overhaul .j45o-studio-mini-top strong{font-size:.44rem;color:#fff}
body.jam45-visual-overhaul .j45o-studio-mini-top em{font-style:normal;color:#9ea3ad;font-variant-numeric:tabular-nums}
body.jam45-visual-overhaul .j45o-studio-mini-transport{
  justify-content:flex-start;
  padding:4px 5px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:3px;
  background:#08090c;
  color:#d4d6da;
  font-size:.38rem;
  font-weight:800;
}
body.jam45-visual-overhaul .j45o-studio-mini-transport .is-record{
  margin-left:auto;
  color:#fff;
  padding:2px 5px;
  border-radius:2px;
  background:#bb1118;
}
body.jam45-visual-overhaul .j45o-studio-mini-console{
  height:78px;
  margin-top:5px;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:4px;
}
body.jam45-visual-overhaul .j45o-studio-mini-channel{
  min-width:0;
  padding:4px 4px 3px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:3px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:3px;
  background:linear-gradient(180deg,#17191f,#0c0d11);
}
body.jam45-visual-overhaul .j45o-studio-mini-channel.is-master{background:linear-gradient(180deg,#1d2027,#0d0f13)}
body.jam45-visual-overhaul .j45o-studio-mini-channel b{
  position:static!important;
  max-width:100%;
  overflow:hidden;
  color:#dfe1e5!important;
  font-size:.31rem!important;
  line-height:1!important;
  letter-spacing:.02em!important;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body.jam45-visual-overhaul .j45o-studio-mini-channel em{
  margin-top:auto;
  color:#989da8;
  font-size:.28rem;
  font-style:normal;
}
body.jam45-visual-overhaul .j45o-studio-mini-meter{
  position:relative;
  width:7px;
  flex:1;
  overflow:hidden;
  border-radius:2px;
  background:#050608;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.05);
}
body.jam45-visual-overhaul .j45o-studio-mini-meter::before{
  content:"";
  position:absolute;
  left:1px;right:1px;bottom:1px;
  height:var(--j45o-meter-level,65%);
  border-radius:1px;
  background:linear-gradient(to top,#1ba94c 0 62%,#d6a820 63% 84%,#d92c35 85% 100%);
  transform-origin:center bottom;
  animation:j45o-studio-meter 1.1s ease-in-out var(--j45o-meter-delay,0s) infinite alternate;
}
@keyframes j45o-studio-meter{from{transform:scaleY(.58)}to{transform:scaleY(1)}}

/* Jukebox: real catalog artwork sits in a compact version of the current machine. */
body.jam45-visual-overhaul .j45o-jukebox-preview{
  right:10px;
  bottom:18px;
  height:142px;
  overflow:visible;
}
body.jam45-visual-overhaul .j45o-jukebox-mini-machine{
  position:absolute;
  inset:0 4px 0 10%;
  overflow:hidden;
  border:1px solid rgba(255,66,73,.48);
  border-radius:52% 52% 7px 7px / 25% 25% 7px 7px;
  background:radial-gradient(circle at 50% 6%,rgba(235,37,45,.3),transparent 30%),linear-gradient(180deg,#221012,#0b0b0d 43%,#121214);
  box-shadow:0 12px 30px rgba(0,0,0,.42),inset 0 0 0 4px rgba(255,255,255,.025),0 0 18px rgba(227,32,39,.08);
}
body.jam45-visual-overhaul .j45o-jukebox-mini-brand{
  height:26px;
  padding-top:6px;
  display:flex;
  align-items:baseline;
  justify-content:center;
  gap:3px;
  text-align:center;
  line-height:1;
}
body.jam45-visual-overhaul .j45o-jukebox-mini-brand strong{color:#fff;font-size:.48rem;letter-spacing:.02em}
body.jam45-visual-overhaul .j45o-jukebox-mini-brand span{color:#ff343c;font-size:.38rem;font-weight:900;letter-spacing:.08em}
body.jam45-visual-overhaul .j45o-jukebox-mini-window{
  position:relative;
  width:70%;
  height:70px;
  margin:0 auto;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.15);
  border-radius:42% 42% 4px 4px / 24% 24% 4px 4px;
  background:linear-gradient(145deg,#08090c,#17171a);
}
body.jam45-visual-overhaul .j45o-jukebox-mini-vinyl{
  position:absolute;
  left:42%;top:12px;
  width:58px;
  aspect-ratio:1;
  border-radius:50%;
  background:repeating-radial-gradient(circle,#171717 0 2px,#080808 3px 5px,#141414 6px 7px);
  box-shadow:0 7px 15px rgba(0,0,0,.5);
  transition:transform .35s ease;
}
body.jam45-visual-overhaul .j45o-jukebox-mini-vinyl::after{
  content:"";
  position:absolute;
  left:50%;top:50%;
  width:21%;aspect-ratio:1;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:#c9161d;
}
body.jam45-visual-overhaul .j45o-jukebox-mini-cover{
  position:absolute;
  z-index:2;
  left:8px;bottom:7px;
  width:52px;
  aspect-ratio:1;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.28);
  border-radius:2px;
  background:#161619;
  box-shadow:0 6px 14px rgba(0,0,0,.5);
  transition:transform .25s ease;
}
body.jam45-visual-overhaul .j45o-jukebox-mini-cover img,
body.jam45-visual-overhaul .j45o-jukebox-mini-thumb img,
body.jam45-visual-overhaul .j45o-record-bin-mini-sleeve img{width:100%;height:100%;display:block;object-fit:cover}
body.jam45-visual-overhaul .j45o-jukebox-mini-cover.is-fallback,
body.jam45-visual-overhaul .j45o-jukebox-mini-thumb.is-fallback,
body.jam45-visual-overhaul .j45o-record-bin-mini-sleeve.is-fallback{
  display:grid;place-items:center;color:#fff;background:linear-gradient(145deg,#2c1012,#0d0d0f);font-size:.46rem;font-weight:900;
}
body.jam45-visual-overhaul .j45o-jukebox-mini-shelf{
  height:29px;
  padding:4px 10px 2px;
  display:flex;
  justify-content:center;
  gap:4px;
}
body.jam45-visual-overhaul .j45o-jukebox-mini-thumb{
  width:22px;
  aspect-ratio:1;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.14);
  border-radius:1px;
  background:#111;
}
body.jam45-visual-overhaul .j45o-jukebox-mini-sources{
  display:block;
  margin-top:1px;
  color:#85868c;
  text-align:center;
  font-size:.25rem;
  font-weight:800;
  letter-spacing:.06em;
}
body.jam45-visual-overhaul .j45o-feature-card.is-jukebox:hover .j45o-jukebox-mini-vinyl,
body.jam45-visual-overhaul .j45o-feature-card.is-jukebox:focus-visible .j45o-jukebox-mini-vinyl{transform:rotate(55deg)}
body.jam45-visual-overhaul .j45o-feature-card.is-jukebox:hover .j45o-jukebox-mini-cover,
body.jam45-visual-overhaul .j45o-feature-card.is-jukebox:focus-visible .j45o-jukebox-mini-cover{transform:translateY(-3px) rotate(-1deg)}

/* Record Bin: the actual Jam45 walnut crate plus live homepage release sleeves. */
body.jam45-visual-overhaul .j45o-record-bin-preview{
  right:4px;
  bottom:12px;
  width:56%;
  height:150px;
  overflow:visible;
}
body.jam45-visual-overhaul .j45o-record-bin-preview::before,
body.jam45-visual-overhaul .j45o-record-bin-preview::after{
  content:"";
  position:absolute;
  inset:0;
  background:url('../images/record-bin-crate-beta238.png') center bottom / contain no-repeat;
  pointer-events:none;
}
body.jam45-visual-overhaul .j45o-record-bin-preview::before{z-index:1}
body.jam45-visual-overhaul .j45o-record-bin-preview::after{z-index:4;clip-path:inset(63% 0 0 0)}
body.jam45-visual-overhaul .j45o-record-bin-mini-sleeves{position:absolute;z-index:2;inset:26px 19px 33px 20px}
body.jam45-visual-overhaul .j45o-record-bin-mini-sleeve{
  position:absolute;
  left:2%;
  bottom:17%;
  width:42%;
  aspect-ratio:1;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.22);
  border-radius:1px;
  background:#171719;
  box-shadow:0 5px 14px rgba(0,0,0,.48);
  transform:translateY(0) rotate(-1.5deg);
  transition:transform .24s ease;
}
body.jam45-visual-overhaul .j45o-record-bin-mini-sleeve:nth-child(1){left:2%;z-index:4;transform:translateY(0) rotate(-1.5deg)}
body.jam45-visual-overhaul .j45o-record-bin-mini-sleeve:nth-child(2){left:20%;z-index:3;transform:translateY(3px) rotate(-.5deg)}
body.jam45-visual-overhaul .j45o-record-bin-mini-sleeve:nth-child(3){left:38%;z-index:2;transform:translateY(6px) rotate(.5deg)}
body.jam45-visual-overhaul .j45o-record-bin-mini-sleeve:nth-child(4){left:56%;z-index:1;transform:translateY(9px) rotate(1.5deg)}
body.jam45-visual-overhaul .j45o-record-bin-mini-plaque{
  position:absolute;
  z-index:6;
  left:50%;bottom:11px;
  min-width:58px;
  padding:2px 5px;
  transform:translateX(-50%);
  border:1px solid rgba(224,187,109,.42);
  border-radius:2px;
  color:#e2c27e;
  background:linear-gradient(180deg,#4c371c,#251c10);
  text-align:center;
  line-height:.9;
  box-shadow:0 2px 5px rgba(0,0,0,.45);
}
body.jam45-visual-overhaul .j45o-record-bin-mini-plaque strong{display:block;font-size:.38rem;letter-spacing:.04em}
body.jam45-visual-overhaul .j45o-record-bin-mini-plaque small{font-size:.23rem;letter-spacing:.08em}
body.jam45-visual-overhaul .j45o-feature-card.is-record-bin:hover .j45o-record-bin-mini-sleeve:nth-child(1),
body.jam45-visual-overhaul .j45o-feature-card.is-record-bin:focus-visible .j45o-record-bin-mini-sleeve:nth-child(1){transform:translateY(-10px) rotate(-1deg)}
body.jam45-visual-overhaul .j45o-feature-card.is-record-bin:hover .j45o-record-bin-mini-sleeve:nth-child(2),
body.jam45-visual-overhaul .j45o-feature-card.is-record-bin:focus-visible .j45o-record-bin-mini-sleeve:nth-child(2){transform:translateY(-4px) rotate(.5deg)}

@media(max-width:900px){
  body.jam45-visual-overhaul .j45o-feature-card.is-experience-enhanced{min-height:292px}
  body.jam45-visual-overhaul .j45o-feature-card.is-experience-enhanced p{max-width:50%}
  body.jam45-visual-overhaul .j45o-experience-preview{width:44%}
  body.jam45-visual-overhaul .j45o-record-bin-preview{width:50%}
}
@media(max-width:560px){
  body.jam45-visual-overhaul .j45o-feature-card.is-experience-enhanced{min-height:350px}
  body.jam45-visual-overhaul .j45o-feature-card.is-experience-enhanced p{max-width:none;margin-bottom:156px}
  body.jam45-visual-overhaul .j45o-experience-preview,
  body.jam45-visual-overhaul .j45o-record-bin-preview{left:22px;right:22px;bottom:43px;width:auto;height:118px}
  body.jam45-visual-overhaul .j45o-jukebox-preview{height:126px}
  body.jam45-visual-overhaul .j45o-record-bin-preview{height:126px}
  body.jam45-visual-overhaul .j45o-studio-mini-console{height:66px}
  body.jam45-visual-overhaul .j45o-jukebox-mini-machine{inset:0 14%}
}
@media(prefers-reduced-motion:reduce){
  body.jam45-visual-overhaul .j45o-feature-card.is-experience-enhanced,
  body.jam45-visual-overhaul .j45o-jukebox-mini-vinyl,
  body.jam45-visual-overhaul .j45o-jukebox-mini-cover,
  body.jam45-visual-overhaul .j45o-record-bin-mini-sleeve{transition:none!important}
  body.jam45-visual-overhaul .j45o-studio-mini-meter::before{animation:none!important}
}

/* Alpha8 — mobile header containment + homepage pillar CTA containment.
   Keep the hamburger independently clickable and stop full-width pillar
   actions from adding their padding outside the card on narrow screens. */
body.jam45-visual-overhaul .j45o-pillar,
body.jam45-visual-overhaul .j45o-pillar *{
  min-width:0;
}
body.jam45-visual-overhaul .j45o-pillar .j45o-button{
  box-sizing:border-box;
  max-width:100%;
}

@media(max-width:760px){
  body.jam45-visual-overhaul .jam45-header-inner{
    width:calc(100% - 16px)!important;
    grid-template-columns:minmax(72px,1fr) 40px auto!important;
    gap:6px!important;
  }
  body.jam45-visual-overhaul .jam45-brand{
    min-width:0!important;
    max-width:96px;
    overflow:visible;
  }
  body.jam45-visual-overhaul .custom-logo{
    max-width:92px!important;
    max-height:44px!important;
  }
  body.jam45-visual-overhaul .jam45-menu-toggle{
    position:relative;
    z-index:30;
    display:grid!important;
    place-items:center!important;
    width:40px!important;
    min-width:40px!important;
    height:40px!important;
    min-height:40px!important;
    padding:0!important;
    justify-self:center;
  }
  body.jam45-visual-overhaul .jam45-header-actions{
    position:relative;
    z-index:10;
    min-width:0!important;
    gap:5px!important;
  }
  body.jam45-visual-overhaul .jam45-cart-link{
    width:40px!important;
    min-width:40px!important;
    height:40px!important;
    min-height:40px!important;
  }
  body:not(.logged-in).jam45-visual-overhaul .jam45-join-trigger{
    min-width:64px!important;
    width:auto!important;
    min-height:40px!important;
    padding:.42rem .48rem!important;
    transform:none!important;
    animation:none!important;
  }
  body:not(.logged-in).jam45-visual-overhaul .jam45-join-trigger>.jam45-join-word{
    width:43px!important;
    height:27px!important;
  }
  body:not(.logged-in).jam45-visual-overhaul .jam45-join-trigger>.jam45-join-word img{
    width:43px!important;
  }
  body:not(.logged-in).jam45-visual-overhaul .jam45-join-trigger>svg{
    width:10px!important;
    height:10px!important;
    margin-left:.2rem!important;
  }

  body.jam45-visual-overhaul .j45o-pillar{
    height:auto!important;
    min-height:0!important;
    overflow:visible;
  }
  body.jam45-visual-overhaul .j45o-pillar .j45o-button{
    width:100%!important;
    max-width:100%!important;
    min-height:48px;
    padding:.75rem .7rem!important;
    white-space:normal!important;
    overflow-wrap:anywhere;
    text-align:center;
    line-height:1.2;
  }
}

@media(max-width:440px){
  body.jam45-visual-overhaul .jam45-header-inner{
    grid-template-columns:minmax(64px,1fr) 40px auto!important;
    gap:5px!important;
  }
  body.jam45-visual-overhaul .jam45-brand{max-width:88px}
  body.jam45-visual-overhaul .custom-logo{max-width:84px!important}
  body.jam45-visual-overhaul .jam45-cart-link{
    width:38px!important;
    min-width:38px!important;
    height:38px!important;
    min-height:38px!important;
  }
  body:not(.logged-in).jam45-visual-overhaul .jam45-join-trigger{
    min-width:60px!important;
    min-height:38px!important;
    padding:.38rem .42rem!important;
  }
  body:not(.logged-in).jam45-visual-overhaul .jam45-join-trigger>.jam45-join-word{
    width:40px!important;
    height:25px!important;
  }
  body:not(.logged-in).jam45-visual-overhaul .jam45-join-trigger>.jam45-join-word img{width:40px!important}
  body.jam45-visual-overhaul .j45o-pillar .j45o-button{
    font-size:.72rem;
    letter-spacing:.02em;
  }
}
