:root {
  --jam45-bg:#080a10;
  --jam45-bg-2:#0c1019;
  --jam45-surface:#111520;
  --jam45-surface-2:#171c29;
  --jam45-border:rgba(255,255,255,.11);
  --jam45-border-strong:rgba(255,255,255,.18);
  --jam45-text:#f6f7fb;
  --jam45-muted:#aeb5c6;
  --jam45-blue:#2788ff;
  --jam45-blue-2:#66b3ff;
  --jam45-violet:#8a63ff;
  --jam45-good:#36d399;
  --jam45-radius:24px;
  --jam45-shadow:0 28px 85px rgba(0,0,0,.42);
  --jam45-header-height:82px;
}
html { scroll-behavior:smooth; }
body { margin:0; color:var(--jam45-text); background:
  radial-gradient(circle at 4% 0,rgba(39,136,255,.12),transparent 24rem),
  radial-gradient(circle at 100% 35%,rgba(138,99,255,.1),transparent 28rem),
  var(--jam45-bg); font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-size:16px; line-height:1.65; overflow-x:hidden; }
body.admin-bar .jam45-site-header { top:32px; }
img { max-width:100%; height:auto; }
a { color:var(--jam45-blue-2); text-underline-offset:.18em; }
a:hover { color:#fff; }
button,input,textarea,select { font:inherit; }
button,a { -webkit-tap-highlight-color:transparent; }
::selection { color:#fff; background:rgba(39,136,255,.72); }
.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; }
.screen-reader-text:focus,.jam45-skip-link:focus { z-index:100000; top:12px; left:12px; width:auto; height:auto; padding:.8rem 1rem; clip:auto; color:#fff; background:#111520; border:2px solid var(--jam45-blue); border-radius:10px; }
.jam45-skip-link { position:fixed; left:-9999px; }
.jam45-site-shell { min-height:100vh; display:flex; flex-direction:column; }
.jam45-main { flex:1; min-width:0; }
.jam45-container { width:min(1320px,calc(100% - 40px)); margin-inline:auto; }

/* Header */
.jam45-site-header { position:sticky; z-index:99990; top:0; border-bottom:1px solid transparent; background:rgba(8,10,16,.66); backdrop-filter:blur(22px) saturate(140%); transition:background .2s ease,border-color .2s ease,box-shadow .2s ease; }
.jam45-site-header.is-scrolled { border-color:var(--jam45-border); background:rgba(8,10,16,.92); box-shadow:0 16px 45px rgba(0,0,0,.24); }
.jam45-header-inner { width:min(1480px,calc(100% - 32px)); min-height:var(--jam45-header-height); margin:auto; display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:1.35rem; }
.jam45-brand { min-width:124px; display:flex; align-items:center; }
.custom-logo-link { display:inline-flex; align-items:center; }
.custom-logo { width:auto; max-height:54px; }
.jam45-wordmark { display:inline-flex; align-items:baseline; gap:.06em; color:#fff!important; font-size:1.65rem; font-weight:950; letter-spacing:-.075em; text-decoration:none!important; }
.jam45-wordmark span { text-shadow:0 0 24px rgba(39,136,255,.32); }
.jam45-wordmark strong { color:var(--jam45-blue-2); }
.jam45-primary-nav { justify-self:center; min-width:0; }
.jam45-menu { margin:0; padding:.36rem; display:flex; align-items:center; gap:.12rem; list-style:none; border:1px solid rgba(255,255,255,.065); border-radius:999px; background:rgba(255,255,255,.025); }
.jam45-menu li { position:relative; }
.jam45-menu a { min-height:42px; padding:.62rem .92rem; display:flex; align-items:center; border-radius:999px; color:var(--jam45-muted); font-size:.91rem; font-weight:780; text-decoration:none; transition:color .18s ease,background .18s ease; }
.jam45-menu a:hover,.jam45-menu .current-menu-item>a,.jam45-menu .current-menu-ancestor>a { color:#fff; background:rgba(255,255,255,.08); }
.jam45-menu .sub-menu { position:absolute; top:calc(100% + .55rem); left:0; min-width:220px; margin:0; padding:.55rem; visibility:hidden; opacity:0; transform:translateY(7px); list-style:none; border:1px solid var(--jam45-border); border-radius:17px; background:rgba(13,17,27,.98); box-shadow:var(--jam45-shadow); transition:.18s ease; }
.jam45-menu li:hover>.sub-menu,.jam45-menu li:focus-within>.sub-menu { visibility:visible; opacity:1; transform:none; }
.jam45-menu .sub-menu a { border-radius:12px; }
.jam45-header-actions { display:flex; align-items:center; justify-content:flex-end; gap:.45rem; }
.jam45-icon-button { position:relative; width:43px; height:43px; padding:0; display:grid; place-items:center; border:1px solid var(--jam45-border); border-radius:50%; color:#fff!important; background:rgba(255,255,255,.035); cursor:pointer; text-decoration:none!important; transition:transform .18s ease,border-color .18s ease,background .18s ease; }
.jam45-icon-button:hover { transform:translateY(-1px); border-color:rgba(102,179,255,.55); background:rgba(39,136,255,.12); }
.jam45-icon-button svg { width:21px; height:21px; fill:none; stroke:currentColor; stroke-width:1.85; stroke-linecap:round; stroke-linejoin:round; }
.jam45-cart-count { position:absolute; top:-4px; right:-5px; min-width:20px; height:20px; padding:0 5px; display:grid; place-items:center; border:2px solid var(--jam45-bg); border-radius:999px; color:#fff; background:linear-gradient(135deg,var(--jam45-blue),var(--jam45-violet)); font-size:.68rem; font-weight:900; line-height:1; }
.jam45-account-actions { display:flex; gap:.45rem; }
.jam45-header-button { min-height:43px; padding:.65rem 1rem; display:inline-flex; align-items:center; justify-content:center; border:1px solid transparent; border-radius:999px; font-size:.86rem; font-weight:850; text-decoration:none!important; white-space:nowrap; }
.jam45-header-button.is-ghost { color:#fff; border-color:var(--jam45-border); background:rgba(255,255,255,.035); }
.jam45-header-button.is-primary { color:#fff; background:linear-gradient(135deg,var(--jam45-blue),var(--jam45-violet)); box-shadow:0 10px 25px rgba(39,136,255,.2); }
.jam45-menu-toggle { display:none; width:44px; height:44px; padding:0; border:1px solid var(--jam45-border); border-radius:50%; color:#fff; background:rgba(255,255,255,.04); cursor:pointer; }
.jam45-menu-toggle-lines { width:19px; display:grid; gap:4px; }
.jam45-menu-toggle-lines i { height:2px; display:block; border-radius:2px; background:currentColor; transition:.18s ease; }
.jam45-search-panel { border-top:1px solid var(--jam45-border); background:rgba(8,10,16,.97); }
.jam45-search-panel[hidden] { display:none; }
.jam45-search-panel-inner { width:min(900px,calc(100% - 40px)); margin:auto; padding:1rem 0 1.2rem; }
.jam45-search-form { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.65rem; }
.jam45-search-form label { display:block; }
.jam45-search-field { width:100%; min-height:53px; padding:.85rem 1rem; border:1px solid var(--jam45-border); border-radius:15px; color:#fff; background:#0d111b; outline:none; }
.jam45-search-field:focus { border-color:var(--jam45-blue); box-shadow:0 0 0 3px rgba(39,136,255,.15); }
.jam45-search-form button { min-width:125px; padding:.75rem 1.1rem; display:flex; align-items:center; justify-content:center; gap:.55rem; border:0; border-radius:15px; color:#fff; font-weight:850; background:linear-gradient(135deg,var(--jam45-blue),var(--jam45-violet)); cursor:pointer; }
.jam45-search-form button svg { width:19px; fill:none; stroke:currentColor; stroke-width:1.8; }

/* Shared headings and buttons */
.jam45-theme-eyebrow { display:block; margin-bottom:.6rem; color:var(--jam45-blue-2); font-size:.72rem; font-weight:900; letter-spacing:.17em; text-transform:uppercase; }
.jam45-theme-button { min-height:50px; padding:.8rem 1.3rem; display:inline-flex; align-items:center; justify-content:center; border:1px solid transparent; border-radius:999px; font-weight:880; text-decoration:none!important; transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease; }
.jam45-theme-button:hover { transform:translateY(-2px); }
.jam45-theme-button.is-primary { color:#fff; background:linear-gradient(135deg,var(--jam45-blue),var(--jam45-violet)); box-shadow:0 16px 36px rgba(39,136,255,.24); }
.jam45-theme-button.is-secondary { color:#fff; border-color:var(--jam45-border-strong); background:rgba(255,255,255,.055); }
.jam45-theme-section-heading { margin-bottom:1.5rem; display:flex; align-items:flex-end; justify-content:space-between; gap:1rem; }
.jam45-theme-section-heading h2 { margin:0; color:#fff; font-size:clamp(2rem,4.3vw,3.5rem); line-height:1.02; letter-spacing:-.055em; }
.jam45-theme-section-heading>a { color:var(--jam45-blue-2); font-weight:850; text-decoration:none; }

/* Home hero */
.jam45-home-hero { position:relative; isolation:isolate; min-height:min(850px,calc(100vh - 20px)); padding:clamp(4rem,8vw,7.5rem) 0 clamp(7rem,12vw,11rem); display:grid; align-items:center; overflow:hidden; background:
  radial-gradient(circle at 13% 25%,rgba(39,136,255,.21),transparent 28rem),
  radial-gradient(circle at 85% 20%,rgba(138,99,255,.2),transparent 29rem),
  linear-gradient(150deg,#07090f 10%,#10172a 62%,#090b12); }
.jam45-home-hero:before { content:""; position:absolute; z-index:-2; inset:0; opacity:.27; background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px); background-size:62px 62px; mask-image:linear-gradient(to bottom,#000,transparent 84%); }
.jam45-home-hero-grid { display:grid; grid-template-columns:minmax(0,1.03fr) minmax(390px,.97fr); align-items:center; gap:clamp(2.5rem,6vw,7rem); }
.jam45-home-hero-copy { position:relative; z-index:2; }
.jam45-home-hero-copy h1 { max-width:810px; margin:0; font-size:clamp(3.2rem,7.8vw,7rem); line-height:.91; letter-spacing:-.075em; text-wrap:balance; background:linear-gradient(105deg,#fff 8%,#a9d7ff 55%,#bca8ff 100%); -webkit-background-clip:text; background-clip:text; color:transparent; -webkit-text-fill-color:transparent; text-shadow:none; filter:drop-shadow(0 14px 34px rgba(0,0,0,.38)); }
.jam45-home-hero-copy>p { max-width:680px; margin:1.45rem 0 0; color:#c1c8d8; font-size:clamp(1.04rem,1.5vw,1.24rem); line-height:1.72; }
.jam45-hero-actions { margin-top:1.75rem; display:flex; flex-wrap:wrap; gap:.75rem; }
.jam45-hero-trust { margin-top:1.5rem; display:flex; flex-wrap:wrap; gap:.7rem 1.1rem; color:var(--jam45-muted); font-size:.83rem; font-weight:700; }
.jam45-hero-trust span { display:flex; align-items:center; gap:.45rem; }
.jam45-hero-trust i { width:7px; height:7px; border-radius:50%; background:var(--jam45-good); box-shadow:0 0 14px rgba(54,211,153,.72); }
.jam45-cover-stack { position:relative; min-height:540px; perspective:1400px; transform-style:preserve-3d; }
.jam45-cover-stack-card { position:absolute; left:50%; top:50%; width:clamp(230px,28vw,390px); aspect-ratio:1; overflow:hidden; border:1px solid rgba(255,255,255,.14); border-radius:clamp(20px,3vw,34px); background:#111520; box-shadow:0 35px 100px rgba(0,0,0,.55); transform-origin:center; transition:transform .28s ease,filter .28s ease; }
.jam45-cover-stack-card img { width:100%; height:100%; display:block; object-fit:cover; }
.jam45-cover-stack-card:hover { filter:brightness(1.08); }
.jam45-cover-1 { z-index:5; transform:translate(-45%,-51%) rotate(4deg); }
.jam45-cover-1:hover { transform:translate(-45%,-53%) rotate(2deg) scale(1.025); }
.jam45-cover-2 { z-index:4; transform:translate(-75%,-58%) rotate(-12deg) scale(.82); opacity:.84; }
.jam45-cover-3 { z-index:3; transform:translate(-11%,-60%) rotate(15deg) scale(.78); opacity:.78; }
.jam45-cover-4 { z-index:2; transform:translate(-82%,-22%) rotate(-20deg) scale(.65); opacity:.48; }
.jam45-cover-5 { z-index:1; transform:translate(2%,-18%) rotate(22deg) scale(.62); opacity:.43; }
.jam45-cover-stack-play { position:absolute; left:50%; top:50%; width:78px; height:78px; display:grid; place-items:center; transform:translate(-50%,-50%); border:1px solid rgba(255,255,255,.28); border-radius:50%; color:#fff; background:linear-gradient(135deg,rgba(39,136,255,.92),rgba(138,99,255,.92)); box-shadow:0 18px 42px rgba(0,0,0,.45); backdrop-filter:blur(12px); }
.jam45-cover-stack-placeholder { position:absolute; left:50%; top:50%; width:min(390px,80vw); aspect-ratio:1; padding:2rem; display:grid; place-content:center; text-align:center; transform:translate(-50%,-50%) rotate(4deg); border:1px solid var(--jam45-border); border-radius:34px; background:linear-gradient(145deg,#151b2a,#0c1018); box-shadow:var(--jam45-shadow); }
.jam45-cover-stack-placeholder span,.jam45-cover-stack-placeholder strong { font-size:5rem; line-height:.8; letter-spacing:-.08em; }
.jam45-cover-stack-placeholder strong { color:var(--jam45-blue-2); }
.jam45-cover-stack-placeholder small { margin-top:1.5rem; color:var(--jam45-muted); }
.jam45-hero-orb { position:absolute; z-index:-1; border-radius:50%; filter:blur(4px); opacity:.6; animation:jam45Float 9s ease-in-out infinite; }
.jam45-hero-orb-one { width:220px; height:220px; right:3%; top:12%; background:radial-gradient(circle at 30% 30%,rgba(102,179,255,.42),rgba(39,136,255,.04) 70%); }
.jam45-hero-orb-two { width:140px; height:140px; left:47%; bottom:15%; background:radial-gradient(circle at 35% 35%,rgba(180,155,255,.36),rgba(138,99,255,.02) 72%); animation-delay:-4s; }
.jam45-hero-curve { position:absolute; left:-3%; right:-3%; bottom:-1px; height:clamp(75px,11vw,150px); border-radius:50% 50% 0 0/100% 100% 0 0; background:var(--jam45-bg); }
@keyframes jam45Float { 50% { transform:translate3d(0,-18px,0) scale(1.05); } }

/* Home sections */
.jam45-home-section { position:relative; padding:clamp(3.8rem,8vw,7rem) 0; }
.jam45-home-section+.jam45-home-section { border-top:1px solid rgba(255,255,255,.035); }
.jam45-home-coverflow { padding-top:2rem; }
.jam45-home-coverflow .jam45-coverflow-section,.jam45-featured-home .jam45-slider-section,.jam45-artists-home .jam45-directory { width:100%; margin:0; }
.jam45-genre-section { background:radial-gradient(circle at 100% 50%,rgba(138,99,255,.12),transparent 27rem); }
.jam45-genre-cloud { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:.85rem; }
.jam45-genre-cloud a { position:relative; min-height:166px; padding:1rem; display:flex; align-items:flex-end; overflow:hidden; border:1px solid var(--jam45-border); border-radius:21px; color:#fff; text-decoration:none; isolation:isolate; background:linear-gradient(180deg,rgba(8,10,17,.18) 0%,rgba(8,10,17,.68) 56%,rgba(8,10,17,.94) 100%),var(--jam45-genre-image),linear-gradient(145deg,rgba(23,28,41,.96),rgba(11,15,24,.98)); background-position:center; background-size:cover; transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease,filter .2s ease; }
.jam45-genre-cloud a:before { content:""; position:absolute; inset:0; z-index:-1; background:radial-gradient(circle at 15% 15%,rgba(102,179,255,.18),transparent 28%),radial-gradient(circle at 82% 15%,rgba(188,168,255,.18),transparent 30%); }
.jam45-genre-cloud a.has-image:after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.16) 45%,rgba(0,0,0,.4) 100%); }
.jam45-genre-cloud a:hover { transform:translateY(-4px); filter:brightness(1.06); border-color:rgba(102,179,255,.6); box-shadow:0 18px 45px rgba(0,0,0,.28); }
.jam45-genre-card-content { display:flex; width:100%; flex-direction:column; gap:.45rem; }
.jam45-genre-cloud strong { font-size:1.04rem; font-weight:850; line-height:1.05; text-shadow:0 5px 20px rgba(0,0,0,.35); }
.jam45-genre-cloud small { align-self:flex-start; padding:.34rem .6rem; border:1px solid rgba(255,255,255,.12); border-radius:999px; color:#edf3ff; background:rgba(9,12,19,.58); backdrop-filter:blur(10px); }
.jam45-two-paths-section { overflow:hidden; background:
  radial-gradient(circle at 18% 20%,rgba(39,136,255,.11),transparent 26rem),
  radial-gradient(circle at 82% 80%,rgba(138,99,255,.11),transparent 25rem); }
.jam45-two-paths-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.jam45-path-card { position:relative; min-height:420px; padding:clamp(1.7rem,4vw,3rem); display:flex; flex-direction:column; align-items:flex-start; justify-content:flex-end; overflow:hidden; border:1px solid var(--jam45-border); border-radius:34px; background:linear-gradient(155deg,rgba(25,31,47,.97),rgba(10,13,21,.98)); box-shadow:0 24px 70px rgba(0,0,0,.22); }
.jam45-path-card:before { content:""; position:absolute; width:310px; height:310px; right:-80px; top:-100px; border-radius:50%; background:radial-gradient(circle,rgba(39,136,255,.28),transparent 68%); }
.jam45-path-card.is-artist:before { background:radial-gradient(circle,rgba(138,99,255,.28),transparent 68%); }
.jam45-path-card>* { position:relative; z-index:1; }
.jam45-path-card h2 { max-width:610px; margin:0; color:#fff; font-size:clamp(2rem,4vw,3.5rem); line-height:1.02; letter-spacing:-.055em; }
.jam45-path-card p { max-width:590px; margin:1rem 0 1.4rem; color:var(--jam45-muted); }
.jam45-home-page-content { padding-top:0; }

/* Pages and posts */
.jam45-page-hero { position:relative; padding:clamp(5rem,9vw,8rem) 0 clamp(2.6rem,5vw,4.5rem); overflow:hidden; background:radial-gradient(circle at 15% 0,rgba(39,136,255,.17),transparent 27rem); }
.jam45-page-hero:after { content:""; position:absolute; inset:auto -5% -60px; height:110px; border-radius:50% 50% 0 0; background:var(--jam45-bg); }
.jam45-page-hero h1 { max-width:1000px; margin:0; color:#fff; font-size:clamp(2.7rem,6vw,5.5rem); line-height:.98; letter-spacing:-.065em; }
.jam45-page-hero-compact { padding-top:clamp(4rem,7vw,6rem); }
.jam45-page-hero-compact:after { display:none; }
.jam45-content-layout { padding:clamp(3rem,6vw,6rem) 0; }
.jam45-content-surface,.jam45-article-content,.jam45-comments { margin-bottom:3rem; padding:clamp(1.4rem,4vw,3rem); border:1px solid var(--jam45-border); border-radius:28px; background:linear-gradient(145deg,rgba(23,28,41,.9),rgba(13,17,27,.92)); box-shadow:0 20px 60px rgba(0,0,0,.2); }
.jam45-plugin-page-content { min-height:60vh; padding:1.5rem 0 5rem; }
.jam45-plugin-page-content>.jam45-auth-shell,.jam45-plugin-page-content>.jam45-dashboard-shell,.jam45-plugin-page-content>.jam45-directory { margin-top:0; }
.jam45-post-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.jam45-post-card { overflow:hidden; border:1px solid var(--jam45-border); border-radius:24px; background:linear-gradient(145deg,rgba(23,28,41,.88),rgba(12,16,25,.94)); box-shadow:0 16px 45px rgba(0,0,0,.18); }
.jam45-post-card-image { aspect-ratio:16/10; display:block; overflow:hidden; }
.jam45-post-card-image img { width:100%; height:100%; display:block; object-fit:cover; transition:transform .35s ease; }
.jam45-post-card:hover .jam45-post-card-image img { transform:scale(1.035); }
.jam45-post-card-copy { padding:1.25rem; }
.jam45-post-card h2 { margin:.1rem 0 .6rem; font-size:1.55rem; line-height:1.12; }
.jam45-post-card h2 a { color:#fff; text-decoration:none; }
.jam45-entry-meta { color:var(--jam45-muted); font-size:.82rem; }
.jam45-post-excerpt { color:var(--jam45-muted); }
.jam45-card-link { font-weight:850; text-decoration:none; }
.jam45-single-hero { padding:clamp(4.5rem,8vw,7.5rem) 0 3rem; background:radial-gradient(circle at 80% 0,rgba(138,99,255,.16),transparent 30rem); }
.jam45-single-hero-inner { display:grid; grid-template-columns:minmax(0,1fr) minmax(320px,.8fr); align-items:center; gap:clamp(2rem,6vw,6rem); }
.jam45-single-hero h1 { margin:0; font-size:clamp(2.8rem,6vw,5.5rem); line-height:.98; letter-spacing:-.065em; }
.jam45-single-featured img { border-radius:30px; box-shadow:var(--jam45-shadow); }
.jam45-article-content { width:min(840px,calc(100% - 40px)); margin:3rem auto; }
.jam45-article-content>*+* { margin-top:1.25em; }
.jam45-article-content h2,.jam45-article-content h3 { color:#fff; line-height:1.14; }
.jam45-empty-state { padding:clamp(2rem,6vw,5rem); text-align:center; border:1px dashed var(--jam45-border-strong); border-radius:28px; background:rgba(255,255,255,.025); }
.jam45-empty-state .jam45-search-form { max-width:700px; margin:1.5rem auto 0; }
.navigation.pagination,.post-navigation { width:min(1320px,calc(100% - 40px)); margin:2rem auto; }
.nav-links { display:flex; flex-wrap:wrap; gap:.45rem; }
.page-numbers,.post-navigation a { padding:.7rem .9rem; border:1px solid var(--jam45-border); border-radius:12px; color:#fff; background:rgba(255,255,255,.035); text-decoration:none; }
.page-numbers.current { background:linear-gradient(135deg,var(--jam45-blue),var(--jam45-violet)); }
.jam45-error-page { position:relative; min-height:72vh; padding:7rem 0; display:grid; align-items:center; overflow:hidden; text-align:center; }
.jam45-error-code { display:block; color:transparent; font-size:clamp(7rem,22vw,17rem); font-weight:950; line-height:.7; letter-spacing:-.09em; -webkit-text-stroke:1px rgba(255,255,255,.13); }
.jam45-error-page h1 { max-width:900px; margin:.7rem auto; font-size:clamp(2.4rem,6vw,5rem); line-height:.98; }
.jam45-error-page p { max-width:640px; margin:1rem auto; color:var(--jam45-muted); }
.jam45-error-page .jam45-hero-actions { justify-content:center; }
.jam45-error-orbit { position:absolute; left:50%; top:50%; width:550px; height:550px; transform:translate(-50%,-50%); border:1px solid rgba(39,136,255,.14); border-radius:50%; box-shadow:0 0 120px rgba(39,136,255,.08); }

/* Footer */
.jam45-site-footer { position:relative; margin-top:auto; padding:clamp(5rem,9vw,8rem) 0 1.25rem; overflow:hidden; border-top:1px solid var(--jam45-border); background:linear-gradient(180deg,#0d111b,#07090e); }
.jam45-site-footer:before { content:""; position:absolute; left:-5%; right:-5%; top:-72px; height:125px; border-radius:0 0 50% 50%; background:var(--jam45-bg); }
.jam45-footer-glow { position:absolute; width:500px; height:500px; right:-150px; top:-210px; border-radius:50%; background:radial-gradient(circle,rgba(138,99,255,.16),transparent 68%); }
.jam45-footer-grid { position:relative; display:grid; grid-template-columns:1.35fr .75fr .75fr 1fr; gap:clamp(1.5rem,4vw,4rem); }
.jam45-footer-brand p { max-width:360px; color:var(--jam45-muted); }
.jam45-footer-socials { display:flex; flex-wrap:wrap; gap:.5rem; }
.jam45-footer-socials a { padding:.45rem .7rem; border:1px solid var(--jam45-border); border-radius:999px; color:#fff; font-size:.78rem; font-weight:780; text-decoration:none; background:rgba(255,255,255,.025); }
.jam45-footer-nav-section h2,.jam45-footer-heading { margin:0 0 1rem; color:#fff; font-size:.9rem; letter-spacing:.12em; text-transform:uppercase; }
.jam45-footer-menu,.jam45-legal-menu { margin:0; padding:0; display:grid; gap:.55rem; list-style:none; }
.jam45-footer-menu a,.jam45-legal-menu a { color:var(--jam45-muted); text-decoration:none; }
.jam45-footer-menu a:hover,.jam45-legal-menu a:hover { color:#fff; }
.jam45-footer-bottom { position:relative; margin-top:4rem; padding-top:1.2rem; display:flex; justify-content:space-between; gap:1rem; border-top:1px solid var(--jam45-border); color:var(--jam45-muted); font-size:.8rem; }
.jam45-footer-bottom p { margin:0; }
.jam45-legal-menu { display:flex; flex-wrap:wrap; gap:1rem; }

/* WooCommerce */
.jam45-commerce-main { padding:clamp(3rem,6vw,6rem) 0; }
.woocommerce .woocommerce-breadcrumb { margin-bottom:1.25rem; color:var(--jam45-muted); font-size:.82rem; }
.woocommerce .woocommerce-breadcrumb a { color:var(--jam45-blue-2); }
.woocommerce-products-header__title.page-title,.woocommerce h1.page-title { margin:0 0 1.5rem; color:#fff; font-size:clamp(2.7rem,6vw,5rem); line-height:.98; letter-spacing:-.06em; }
.woocommerce .woocommerce-result-count { color:var(--jam45-muted); }
.woocommerce .woocommerce-ordering select { min-height:44px; padding:.65rem 2.2rem .65rem .8rem; border:1px solid var(--jam45-border); border-radius:12px; color:#fff; background:#111520; }
.woocommerce ul.products { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; }
.woocommerce ul.products:before,.woocommerce ul.products:after { display:none; }
.woocommerce ul.products li.product { width:auto!important; margin:0!important; padding:.65rem; overflow:hidden; border:1px solid var(--jam45-border); border-radius:22px; background:linear-gradient(145deg,rgba(23,28,41,.9),rgba(11,15,24,.95)); box-shadow:0 16px 45px rgba(0,0,0,.18); transition:transform .2s ease,border-color .2s ease; }
.woocommerce ul.products li.product:hover { transform:translateY(-5px); border-color:rgba(102,179,255,.42); }
.woocommerce ul.products li.product a img { margin:0 0 .85rem!important; border-radius:16px; aspect-ratio:1; object-fit:cover; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { padding:0 .2rem; color:#fff; font-size:1.03rem; }
.woocommerce ul.products li.product .price { padding:0 .2rem; color:var(--jam45-blue-2); font-weight:850; }
.woocommerce ul.products li.product .button { width:100%; max-width:100%; box-sizing:border-box; margin-top:.6rem; border-radius:999px; text-align:center; }
.woocommerce span.onsale { min-width:auto; min-height:auto; padding:.45rem .65rem; border-radius:999px; line-height:1; background:linear-gradient(135deg,var(--jam45-blue),var(--jam45-violet)); }
.woocommerce-message,.woocommerce-info,.woocommerce-error { margin-bottom:1.25rem; padding:1rem 1.1rem 1rem 3.1rem; border:1px solid var(--jam45-border); border-top:1px solid var(--jam45-border); border-radius:16px; color:#fff; background:#111520; }
.woocommerce-message:before,.woocommerce-info:before { color:var(--jam45-good); }
.woocommerce-error:before { color:#ff6175; }
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit { min-height:44px; padding:.72rem 1rem; border-radius:999px; color:#fff; background:linear-gradient(135deg,var(--jam45-blue),var(--jam45-violet)); font-weight:850; }
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover { color:#fff; background:linear-gradient(135deg,#3e95ff,#9877ff); }
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.select2-container--default .select2-selection--single,.woocommerce form select { min-height:49px; padding:.72rem .85rem; border:1px solid var(--jam45-border); border-radius:13px; color:#fff; background:#0d111b; }
.select2-container--default .select2-selection--single .select2-selection__rendered { color:#fff; line-height:48px; }
.select2-dropdown { color:#fff; border-color:var(--jam45-border); background:#111520; }
.select2-search--dropdown .select2-search__field { color:#fff; background:#0d111b; }
.woocommerce table.shop_table { overflow:hidden; border:1px solid var(--jam45-border); border-radius:18px; background:rgba(17,21,32,.86); }
.woocommerce table.shop_table th,.woocommerce table.shop_table td { padding:1rem; border-color:var(--jam45-border); }
.woocommerce-cart .cart-collaterals .cart_totals,.woocommerce-checkout-review-order,.woocommerce-checkout #payment,.woocommerce-account .woocommerce-MyAccount-navigation,.woocommerce-account .woocommerce-MyAccount-content { padding:1.25rem; border:1px solid var(--jam45-border); border-radius:22px; background:linear-gradient(145deg,rgba(23,28,41,.9),rgba(12,16,25,.94)); }
.woocommerce-checkout #payment { color:#fff; background:#111520; }
.woocommerce-checkout #payment div.payment_box { color:#fff; background:#171c29; }
.woocommerce-checkout #payment div.payment_box:before { border-bottom-color:#171c29; }
.woocommerce-account .woocommerce { display:grid; grid-template-columns:250px minmax(0,1fr); gap:1rem; }
.woocommerce-account .woocommerce-MyAccount-navigation { float:none; width:auto; }
.woocommerce-account .woocommerce-MyAccount-content { float:none; width:auto; }
.woocommerce-MyAccount-navigation ul { margin:0; padding:0; display:grid; gap:.35rem; list-style:none; }
.woocommerce-MyAccount-navigation a { padding:.72rem .85rem; display:block; border-radius:11px; color:var(--jam45-muted); text-decoration:none; font-weight:780; }
.woocommerce-MyAccount-navigation .is-active a,.woocommerce-MyAccount-navigation a:hover { color:#fff; background:linear-gradient(135deg,rgba(39,136,255,.82),rgba(138,99,255,.72)); }
body.jam45-release-page .jam45-commerce-main { padding-top:2.5rem; }
body.jam45-release-page div.product { padding:clamp(1rem,2.5vw,2rem); border:1px solid var(--jam45-border); border-radius:32px; background:
  radial-gradient(circle at 12% 0,rgba(39,136,255,.14),transparent 25rem),
  linear-gradient(145deg,rgba(22,27,41,.92),rgba(9,12,19,.95)); box-shadow:var(--jam45-shadow); }

/* Plugin visual unification */
.jam45-theme .jam45-auth-shell,.jam45-theme .jam45-dashboard-shell,.jam45-theme .jam45-directory,.jam45-theme .jam45-slider-section,.jam45-theme .jam45-coverflow-section,.jam45-theme .jam45-artist-page { font-family:inherit; }
.jam45-theme .jam45-dashboard-shell { margin-top:0; }
.jam45-theme .jam45-auth-shell { border-radius:0; min-height:calc(100vh - var(--jam45-header-height)); }
.jam45-theme .jam45-section-heading h1,.jam45-theme .jam45-section-heading h2 { letter-spacing:-.055em; }
.jam45-theme .jam45-release-title { text-shadow:-1px -1px 0 rgba(255,255,255,.68),1px -1px 0 rgba(255,255,255,.68),-1px 1px 0 rgba(255,255,255,.68),1px 1px 0 rgba(255,255,255,.68),0 12px 35px rgba(39,136,255,.18); }

/* Accessibility and motion */
:focus-visible { outline:3px solid rgba(102,179,255,.82); outline-offset:3px; }
.jam45-reveal { opacity:0; transform:translateY(22px); transition:opacity .55s ease,transform .55s ease; }
.jam45-reveal.is-visible { opacity:1; transform:none; }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*:before,*:after { animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; } .jam45-reveal { opacity:1; transform:none; } }

@media (max-width:1180px) {
  .jam45-header-inner { grid-template-columns:auto auto minmax(0,1fr); }
  .jam45-menu-toggle { display:grid; place-items:center; }
  .jam45-primary-nav { position:fixed; top:calc(var(--jam45-header-height) + 10px); left:16px; right:16px; max-height:calc(100vh - 120px); padding:.75rem; visibility:hidden; opacity:0; overflow:auto; transform:translateY(-10px); border:1px solid var(--jam45-border); border-radius:22px; background:rgba(9,12,19,.98); box-shadow:var(--jam45-shadow); transition:.18s ease; }
  .jam45-primary-nav.is-open { visibility:visible; opacity:1; transform:none; }
  .jam45-menu { display:grid; border:0; border-radius:0; background:transparent; }
  .jam45-menu a { min-height:48px; border-radius:12px; }
  .jam45-menu .sub-menu { position:static; min-width:0; margin:.25rem 0 .25rem 1rem; visibility:visible; opacity:1; transform:none; border:0; box-shadow:none; background:rgba(255,255,255,.025); }
  .jam45-account-actions .is-ghost { display:none; }
  .jam45-home-hero-grid { grid-template-columns:minmax(0,1fr) minmax(320px,.8fr); gap:2rem; }
  .jam45-genre-cloud { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .jam45-post-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .woocommerce ul.products { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .jam45-footer-grid { grid-template-columns:1.2fr repeat(2,.8fr); }
  .jam45-footer-widgets { grid-column:1/-1; }
}
@media (max-width:782px) { body.admin-bar .jam45-site-header { top:46px; } }
@media (max-width:760px) {
  :root { --jam45-header-height:72px; }
  .jam45-container { width:min(100% - 24px,1320px); }
  .jam45-header-inner { width:calc(100% - 20px); grid-template-columns:auto auto 1fr; gap:.55rem; }
  .jam45-brand { min-width:0; }
  .custom-logo { max-width:125px; max-height:44px; }
  .jam45-header-actions { gap:.35rem; }
  .jam45-account-actions { display:none; }
  .jam45-icon-button { width:40px; height:40px; }
  .jam45-cart-link { display:grid; }
  .jam45-home-hero { min-height:auto; padding:4rem 0 8rem; }
  .jam45-home-hero-grid { grid-template-columns:1fr; }
  .jam45-home-hero-copy h1 { font-size:clamp(3rem,15vw,5rem); }
  .jam45-cover-stack { min-height:390px; margin-top:1rem; }
  .jam45-cover-stack-card { width:min(290px,70vw); }
  .jam45-cover-stack-play { width:62px; height:62px; }
  .jam45-hero-trust { display:grid; }
  .jam45-theme-section-heading { align-items:flex-start; flex-direction:column; }
  .jam45-genre-cloud { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .jam45-two-paths-grid,.jam45-single-hero-inner,.jam45-post-grid { grid-template-columns:1fr; }
  .jam45-path-card { min-height:360px; }
  .jam45-footer-grid { grid-template-columns:1fr 1fr; }
  .jam45-footer-brand { grid-column:1/-1; }
  .jam45-footer-bottom { align-items:flex-start; flex-direction:column; }
  .woocommerce ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:.65rem; }
  .woocommerce ul.products li.product { padding:.5rem; border-radius:18px; }
  .woocommerce-account .woocommerce { grid-template-columns:1fr; }
  .woocommerce-MyAccount-navigation ul { display:flex; overflow:auto; }
  .woocommerce-MyAccount-navigation li { flex:0 0 auto; }
  body.jam45-release-page div.product { padding:.75rem; border-radius:22px; }
}
@media (max-width:440px) {
  .jam45-search-toggle { display:none; }
  .jam45-genre-cloud { grid-template-columns:1fr 1fr; }
  .jam45-genre-cloud a { min-height:96px; }
  .woocommerce ul.products { grid-template-columns:1fr 1fr; }
  .jam45-footer-grid { grid-template-columns:1fr; }
  .jam45-footer-brand { grid-column:auto; }
}


/* Alpha 2 — release-page flow and third-party save-button unification. */
body.jam45-release-page div.product:after {
  content:"";
  display:table;
  clear:both;
}
body.jam45-release-page div.product .related.products,
body.jam45-release-page div.product .upsells.products {
  clear:both!important;
  float:none!important;
  width:100%!important;
  margin-top:2.25rem!important;
}
body.jam45-release-page .jam45-save-for-later,
body.jam45-release-page .summary .tinvwl_add_to_wishlist_button,
body.jam45-release-page .summary .yith-wcwl-add-to-wishlist-button,
body.jam45-release-page .summary .woosw-btn,
body.jam45-release-page .summary [class*="wishlist"] a.button {
  width:auto!important;
  min-height:42px!important;
  margin:.9rem 0 0!important;
  padding:.66rem 1rem!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:.5rem!important;
  border:1px solid rgba(102,179,255,.3)!important;
  border-radius:999px!important;
  color:#dcecff!important;
  font-size:.88rem!important;
  font-weight:800!important;
  line-height:1.1!important;
  text-decoration:none!important;
  background:rgba(39,136,255,.075)!important;
  box-shadow:none!important;
  transform:none!important;
  transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease!important;
}
body.jam45-release-page .jam45-save-for-later:hover,
body.jam45-release-page .jam45-save-for-later:focus-visible,
body.jam45-release-page .summary .tinvwl_add_to_wishlist_button:hover,
body.jam45-release-page .summary .yith-wcwl-add-to-wishlist-button:hover,
body.jam45-release-page .summary .woosw-btn:hover {
  color:#fff!important;
  border-color:rgba(138,99,255,.62)!important;
  background:linear-gradient(135deg,rgba(39,136,255,.18),rgba(138,99,255,.18))!important;
  transform:translateY(-1px)!important;
}
body.jam45-release-page .jam45-save-for-later:before {
  content:"♡";
  display:inline-grid;
  place-items:center;
  width:1.15rem;
  height:1.15rem;
  color:#87c5ff;
  font-size:1.05rem;
  line-height:1;
}

/* Alpha 3 — stable release grid, working commerce screens, and compact related music cards. */
body.jam45-release-page .jam45-commerce-main > .jam45-container { width:min(1380px,calc(100% - 28px)); }
body.jam45-release-page div.product {
  display:grid!important;
  grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);
  grid-template-areas:"gallery summary" "related related";
  align-items:start;
  gap:clamp(1.5rem,3.5vw,3.5rem);
}
body.jam45-release-page div.product:before,
body.jam45-release-page div.product:after { display:none!important; content:none!important; }
body.jam45-release-page div.product .jam45-release-gallery {
  grid-area:gallery;
  float:none!important;
  clear:none!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
body.jam45-release-page div.product .summary {
  grid-area:summary;
  float:none!important;
  clear:none!important;
  width:100%!important;
  min-width:0;
  margin:0!important;
  padding:clamp(.3rem,1vw,.8rem) 0 0!important;
}
body.jam45-release-page div.product .summary .product_title { margin:.25rem 0 .8rem!important; font-size:clamp(2.4rem,5vw,5.2rem)!important; line-height:.94!important; }
body.jam45-release-page div.product .jam45-related-releases { grid-area:related; min-width:0; }
body.jam45-release-page div.product > .related.products,
body.jam45-release-page div.product > .upsells.products { display:none!important; }
body.jam45-release-page .jam45-release-gallery-main { max-height:min(72vh,720px); }

body.jam45-release-page .jam45-related-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
body.jam45-release-page .jam45-related-card { border-color:rgba(255,255,255,.13); transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease; }
body.jam45-release-page .jam45-related-card:hover { transform:translateY(-3px); border-color:rgba(101,180,255,.48); box-shadow:0 20px 46px rgba(0,0,0,.32); }
body.jam45-release-page .jam45-related-actions .button { box-shadow:none!important; }
body.jam45-release-page .jam45-related-cart.button { padding:.62rem .78rem!important; white-space:nowrap; }

.jam45-commerce-page-surface { width:min(1220px,calc(100% - 28px)); min-height:55vh; margin:clamp(1.5rem,4vw,4rem) auto 8rem; padding:clamp(1rem,3vw,2.2rem); border:1px solid var(--jam45-border); border-radius:30px; background:radial-gradient(circle at 8% 0,rgba(39,136,255,.12),transparent 26rem),linear-gradient(145deg,rgba(22,27,41,.94),rgba(9,12,19,.97)); box-shadow:var(--jam45-shadow); }
.woocommerce-cart .woocommerce,.woocommerce-checkout .woocommerce { color:#fff; }
.woocommerce-cart .wc-block-cart,.woocommerce-checkout .wc-block-checkout { color:#fff; }
.woocommerce-cart .wc-block-components-sidebar,.woocommerce-checkout .wc-block-components-sidebar { border:1px solid var(--jam45-border); border-radius:22px; background:rgba(255,255,255,.035); }
.woocommerce-cart .wc-block-components-product-name,.woocommerce-checkout .wc-block-components-product-name { color:#fff; }

/* The close control lives at the top-right, away from WhatsApp/chat buttons. */
.jam45-theme .jam45-sticky-player { padding-right:4.35rem; }
.jam45-theme .jam45-player-close { top:10px; right:12px; }

@media(max-width:980px){
  body.jam45-release-page div.product { grid-template-columns:1fr; grid-template-areas:"gallery" "summary" "related"; gap:1.4rem; }
  body.jam45-release-page .jam45-release-gallery-main { max-height:none; }
  body.jam45-release-page .jam45-related-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:560px){
  body.jam45-release-page .jam45-related-grid { grid-template-columns:1fr 1fr; }
  body.jam45-release-page .jam45-related-actions { grid-template-columns:1fr; }
  body.jam45-release-page .jam45-related-cart.button { width:100%!important; }
  .jam45-commerce-page-surface { width:calc(100% - 12px); padding:.7rem; border-radius:22px; }
}

/* Alpha 4 — Music mega menu, archive player, and reliable catalog links. */
@media (min-width:1101px){
  .jam45-menu>li.jam45-music-mega{position:relative}
  .jam45-menu>li.jam45-music-mega>.sub-menu{
    left:50%;right:auto;width:min(1080px,calc(100vw - 48px));min-width:min(1080px,calc(100vw - 48px));
    display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-flow:row;gap:.25rem .45rem;
    padding:.85rem;transform:translate(-50%,7px);
  }
  .jam45-menu>li.jam45-music-mega:hover>.sub-menu,
  .jam45-menu>li.jam45-music-mega:focus-within>.sub-menu{transform:translate(-50%,0)}
  .jam45-menu>li.jam45-music-mega>.sub-menu>li{width:auto;min-width:0}
  .jam45-menu>li.jam45-music-mega>.sub-menu>li>a{height:100%;min-height:44px;white-space:normal;line-height:1.25}
  .jam45-menu>li.jam45-music-mega>.sub-menu .sub-menu{
    position:static;min-width:0;margin:.2rem 0 0;padding:.2rem;visibility:visible;opacity:1;transform:none;
    border:0;border-radius:10px;background:rgba(255,255,255,.025);box-shadow:none;
  }
  .jam45-menu>li.jam45-music-mega>.sub-menu .sub-menu a{min-height:34px;padding:.45rem .65rem;font-size:.8rem}
}

.woocommerce ul.products li.product .jam45-archive-play,
.woocommerce ul.products li.product .jam45-music-add-to-cart{
  width:100%;max-width:100%;min-height:44px;margin-top:.55rem!important;padding:.7rem .85rem!important;display:flex!important;
  box-sizing:border-box!important;align-items:center;justify-content:center;gap:.45rem;border-radius:999px!important;font-weight:850!important;text-decoration:none!important;
  border:1px solid rgba(102,179,255,.62)!important;color:#fff!important;background:rgba(39,136,255,.12)!important;cursor:pointer;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.02),0 10px 24px rgba(0,0,0,.14);
}
.woocommerce ul.products li.product .jam45-archive-play:hover,
.woocommerce ul.products li.product .jam45-archive-play.is-playing,
.woocommerce ul.products li.product .jam45-music-add-to-cart:hover,
.woocommerce ul.products li.product .jam45-music-add-to-cart:focus{border-color:transparent!important;background:linear-gradient(135deg,var(--jam45-blue),var(--jam45-violet))!important}
.woocommerce ul.products li.product .jam45-music-add-to-cart.added{border-color:transparent!important;background:linear-gradient(135deg,#1b9f71,#36d399)!important}
.woocommerce ul.products li.product .jam45-archive-play-icon{font-size:.82rem}

@media (max-width:1100px){
  .jam45-menu li.jam45-music-mega>.sub-menu{display:grid;grid-template-columns:1fr 1fr;gap:.15rem .4rem}
  .jam45-menu li.jam45-music-mega>.sub-menu .sub-menu{grid-column:1/-1}
}
@media (max-width:560px){
  .jam45-menu li.jam45-music-mega>.sub-menu{grid-template-columns:1fr}
  .woocommerce ul.products li.product .jam45-archive-play,
  .woocommerce ul.products li.product .jam45-music-add-to-cart{min-height:42px;padding:.62rem .45rem!important;font-size:.82rem!important}
}

@media (min-width:1101px){
  .jam45-header-inner{position:relative}
  .jam45-menu>li.jam45-music-mega{position:static!important}
  .jam45-menu>li.jam45-music-mega>.sub-menu{top:calc(100% + .55rem)}
}


/* Jam45 legal documents */
.jam45-legal-document{max-width:980px;margin:0 auto;color:#d4d9e5;font-size:1rem;line-height:1.78}
.jam45-legal-document h2{margin:2.6rem 0 .85rem;color:#fff;font-size:clamp(1.55rem,3vw,2.25rem);line-height:1.15;letter-spacing:-.035em}
.jam45-legal-document h3{margin:1.55rem 0 .55rem;color:#f5f7ff;font-size:1.12rem;line-height:1.3}
.jam45-legal-document p,.jam45-legal-document li{color:#c7cedd}
.jam45-legal-document a{color:var(--jam45-blue-2);text-underline-offset:.18em}
.jam45-legal-document ul,.jam45-legal-document ol{padding-left:1.4rem}
.jam45-legal-document li+li{margin-top:.5rem}
.jam45-legal-document section{scroll-margin-top:calc(var(--jam45-header-height) + 30px)}
.jam45-legal-updated{margin:0 0 1rem;color:var(--jam45-muted)!important;font-size:.9rem}
.jam45-legal-summary{margin:0 0 1.35rem;padding:1.25rem 1.35rem;border:1px solid rgba(102,179,255,.25);border-radius:18px;background:linear-gradient(145deg,rgba(39,136,255,.1),rgba(138,99,255,.07))}
.jam45-legal-summary p{margin:0;color:#e9efff!important;font-size:1.05rem}
.jam45-legal-toc{margin:1.25rem 0 2rem;padding:1.25rem 1.35rem;border:1px solid var(--jam45-border);border-radius:18px;background:rgba(9,12,19,.48)}
.jam45-legal-toc strong{display:block;margin-bottom:.7rem;color:#fff}
.jam45-legal-toc ol{margin:0;columns:2;column-gap:2rem}
.jam45-legal-toc li{break-inside:avoid;margin:.28rem 0}
@media(max-width:700px){.jam45-legal-toc ol{columns:1}.jam45-legal-document{font-size:.96rem}}


/* Music copyright education page */
.jam45-copyright-guide{max-width:1080px;margin:0 auto;color:#c9d0df;line-height:1.72}
.jam45-copyright-intro{position:relative;padding:clamp(1.4rem,4vw,3rem);overflow:hidden;border:1px solid rgba(102,179,255,.25);border-radius:28px;background:radial-gradient(circle at 12% 0,rgba(39,136,255,.2),transparent 25rem),radial-gradient(circle at 90% 100%,rgba(138,99,255,.18),transparent 24rem),linear-gradient(145deg,rgba(19,24,38,.96),rgba(8,11,18,.98));box-shadow:0 24px 70px rgba(0,0,0,.26)}
.jam45-copyright-intro:after{content:"♪";position:absolute;right:clamp(1rem,5vw,4rem);top:50%;transform:translateY(-50%) rotate(-8deg);color:rgba(126,174,255,.07);font-size:clamp(9rem,24vw,18rem);font-weight:900;line-height:1;pointer-events:none}
.jam45-copyright-intro>*{position:relative;z-index:1}
.jam45-copyright-kicker{display:block;margin-bottom:.75rem;color:var(--jam45-blue-2);font-size:.76rem;font-weight:900;letter-spacing:.15em}
.jam45-copyright-intro h2{max-width:850px;margin:0;color:#fff;font-size:clamp(2.25rem,5.5vw,4.6rem);line-height:.98;letter-spacing:-.06em}
.jam45-copyright-lead{max-width:800px;margin:1.25rem 0 0;color:#dbe3f3!important;font-size:clamp(1.02rem,1.6vw,1.2rem)}
.jam45-copyright-actions{margin-top:1.5rem;display:flex;flex-wrap:wrap;gap:.7rem}
.jam45-copyright-truth{margin:1rem 0 2.2rem;padding:1.15rem 1.3rem;border-left:4px solid var(--jam45-blue-2);border-radius:14px;background:rgba(39,136,255,.08)}
.jam45-copyright-truth strong{display:block;margin-bottom:.3rem;color:#fff;font-size:1.05rem}
.jam45-copyright-truth p{margin:0;color:#cdd6e8}
.jam45-copyright-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.jam45-copyright-card{position:relative;min-height:250px;padding:1.5rem;overflow:hidden;border:1px solid var(--jam45-border);border-radius:22px;background:linear-gradient(145deg,rgba(22,27,41,.94),rgba(10,14,22,.97));box-shadow:0 18px 45px rgba(0,0,0,.18)}
.jam45-copyright-number{display:inline-grid;place-items:center;width:44px;height:44px;margin-bottom:2.2rem;border:1px solid rgba(102,179,255,.3);border-radius:12px;color:var(--jam45-blue-2);background:rgba(39,136,255,.1);font-size:.78rem;font-weight:900}
.jam45-copyright-card h3{margin:0 0 .7rem;color:#fff;font-size:clamp(1.25rem,2.4vw,1.7rem);line-height:1.12;letter-spacing:-.03em}
.jam45-copyright-card p{margin:0;color:#bfc8d9}
.jam45-copyright-two-rights,.jam45-copyright-checklist,.jam45-copyright-myths{margin-top:clamp(3rem,7vw,5rem)}
.jam45-copyright-two-rights>div:first-child{max-width:820px}
.jam45-copyright-two-rights h2,.jam45-copyright-checklist h2,.jam45-copyright-myths h2,.jam45-copyright-cta h2{margin:.35rem 0 .8rem;color:#fff;font-size:clamp(2rem,4vw,3.25rem);line-height:1.02;letter-spacing:-.05em}
.jam45-copyright-rights-cards{margin-top:1.35rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.jam45-copyright-rights-cards article{padding:1.45rem;border:1px solid rgba(102,179,255,.25);border-radius:20px;background:linear-gradient(145deg,rgba(39,136,255,.09),rgba(138,99,255,.07))}
.jam45-copyright-rights-cards strong{display:block;margin-bottom:.55rem;color:#fff;font-size:1.28rem}
.jam45-copyright-rights-cards p{margin:0}
.jam45-copyright-note{margin:1rem 0 0;padding:1rem 1.1rem;border-radius:14px;background:rgba(255,255,255,.035);font-size:.94rem}
.jam45-copyright-guide a:not(.jam45-theme-button){color:var(--jam45-blue-2);text-underline-offset:.18em}
.jam45-copyright-checklist{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:clamp(1.5rem,5vw,4rem);align-items:start}
.jam45-copyright-checklist ol{margin:0;padding:0;counter-reset:jam45-copyright-steps;display:grid;gap:.7rem;list-style:none}
.jam45-copyright-checklist li{position:relative;padding:1rem 1rem 1rem 3.7rem;border:1px solid var(--jam45-border);border-radius:16px;background:rgba(17,21,32,.72)}
.jam45-copyright-checklist li:before{counter-increment:jam45-copyright-steps;content:counter(jam45-copyright-steps);position:absolute;left:1rem;top:1rem;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;color:#08101f;background:linear-gradient(135deg,var(--jam45-blue-2),#bca8ff);font-size:.78rem;font-weight:900}
.jam45-copyright-checklist li strong{color:#fff}
.jam45-copyright-myth-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}
.jam45-copyright-myth-grid article{padding:1.2rem;border:1px solid var(--jam45-border);border-radius:18px;background:rgba(10,13,21,.72)}
.jam45-copyright-myth-grid strong{display:block;margin-bottom:.45rem;color:#fff;font-size:1.04rem}
.jam45-copyright-myth-grid p{margin:0;color:#bfc8d9;font-size:.94rem}
.jam45-copyright-cta{margin-top:clamp(3rem,7vw,5rem);padding:clamp(1.5rem,4vw,2.5rem);display:flex;align-items:center;justify-content:space-between;gap:1.5rem;border:1px solid rgba(138,99,255,.3);border-radius:26px;background:radial-gradient(circle at 100% 50%,rgba(138,99,255,.17),transparent 24rem),linear-gradient(145deg,rgba(23,28,43,.94),rgba(9,12,20,.98))}
.jam45-copyright-cta>div{max-width:720px}
.jam45-copyright-cta p{margin:0}
.jam45-copyright-cta>.jam45-theme-button{flex:0 0 auto}
.jam45-copyright-disclaimer{margin:1.25rem 0 0;padding-top:1rem;border-top:1px solid var(--jam45-border);color:var(--jam45-muted)!important;font-size:.85rem}
@media(max-width:800px){.jam45-copyright-grid,.jam45-copyright-rights-cards,.jam45-copyright-myth-grid{grid-template-columns:1fr}.jam45-copyright-checklist{grid-template-columns:1fr}.jam45-copyright-cta{align-items:flex-start;flex-direction:column}.jam45-copyright-card{min-height:0}.jam45-copyright-number{margin-bottom:1.35rem}}
