/* XCOMM Burn: component styles. Every class here is exposed in the editor as a block style (Styles panel) or an Additional CSS class. */
:root{--xc-accent:var(--wp--preset--color--accent);--xc-bright:var(--wp--preset--color--accent-bright);--xc-char:var(--wp--preset--color--char);--xc-ink:var(--wp--preset--color--contrast);--xc-muted:var(--wp--preset--color--muted);--xc-line:var(--wp--preset--color--line);--xc-line-strong:var(--wp--preset--color--line-strong);--xc-surface:var(--wp--preset--color--surface);--xc-sunken:var(--wp--preset--color--sunken);--xc-rust:var(--wp--preset--color--rust);--xc-narrow:var(--wp--preset--font-family--narrow);--xc-display:var(--wp--preset--font-family--display)}
html{scroll-padding-top:96px}
body{overflow-x:hidden}
:focus-visible{outline:3px solid var(--xc-accent);outline-offset:2px}
.has-display-font-family,.xc-display{text-transform:uppercase;line-height:.92}

/* ---------- Buttons ---------- */
.wp-block-button__link{border-radius:var(--xc-radius,2px)!important;min-height:44px;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}
.wp-block-button.is-style-outline>.wp-block-button__link{background:transparent!important;color:var(--xc-ink)!important;border:2px solid var(--xc-line-strong)!important}
.wp-block-button.is-style-outline>.wp-block-button__link:hover{border-color:var(--xc-ink)!important;background:transparent!important}
.wp-block-button.is-style-xc-text>.wp-block-button__link{background:transparent!important;border-color:transparent!important;color:var(--xc-accent)!important;padding-left:0!important;padding-right:0!important;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
.wp-block-button.is-style-xc-text>.wp-block-button__link:hover{color:var(--xc-bright)!important}
.wp-block-button.xc-lg>.wp-block-button__link{font-size:16px;line-height:18px;padding:16px 24px;min-height:52px}
.wp-block-button.xc-sm>.wp-block-button__link{font-size:12px;line-height:14px;padding:8px 12px;min-height:40px}
.wp-block-button.xc-sold>.wp-block-button__link{opacity:.45;pointer-events:none}

/* ---------- Tags and badges (paragraph styles) ---------- */
.is-style-xc-tag{font-family:var(--xc-narrow);font-weight:700;font-size:12px!important;line-height:14px;letter-spacing:.1em;text-transform:uppercase;color:var(--xc-muted)}
p[class*="is-style-xc-badge"]{display:inline-flex;align-items:center;margin:0;font-family:var(--xc-narrow);font-weight:700;font-size:12px!important;line-height:14px;letter-spacing:.1em;text-transform:uppercase;padding:4px 8px;border:2px solid transparent;border-radius:var(--xc-radius,6px);white-space:nowrap;width:auto}
.is-style-xc-badge{background:var(--xc-ink);color:var(--wp--preset--color--base)}
.is-style-xc-badge-accent{background:var(--xc-accent);color:var(--xc-char)}
.is-style-xc-badge-outline{border-color:var(--xc-line-strong)!important;color:var(--xc-ink)}
.is-style-xc-badge-sold{border-color:var(--xc-line)!important;color:var(--xc-muted);text-decoration:line-through}
.is-style-xc-lead{font-size:clamp(18px,1.5vw,20px)!important;line-height:1.45;font-weight:500;max-width:36em}
.is-style-xc-muted{color:var(--xc-muted)}

/* ---------- Groups ---------- */
.is-style-xc-stripe{background-color:var(--xc-accent)!important;background-image:repeating-linear-gradient(-55deg,transparent 0 24px,var(--xc-rust) 24px 32px)!important;color:var(--xc-char);min-height:64px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.is-style-xc-stripe p,.is-style-xc-stripe a{font-family:var(--xc-display);font-size:clamp(20px,2.2vw,28px);line-height:1;text-transform:uppercase;background:var(--xc-accent);padding:8px 16px;color:var(--xc-char)!important;text-decoration:none;text-align:center;margin:0}
.is-style-xc-stripe a:hover{background:var(--xc-bright)}
.xc-stripe-thin{min-height:12px!important;height:12px;padding:0!important}
.is-style-xc-card{background:var(--xc-surface);padding:16px!important;display:flex;flex-direction:column;gap:12px}
.is-style-xc-card .wp-block-image img{width:100%;aspect-ratio:1/1;object-fit:cover;background:var(--xc-sunken)}
.is-style-xc-card .wp-block-buttons{margin-top:auto}
.is-style-xc-card.xc-soldout{opacity:.72}
.is-style-xc-panel{background:var(--xc-surface);padding:clamp(20px,2.4vw,32px)!important}
.is-style-xc-quote{border-top:4px solid var(--xc-accent);padding-top:24px!important}
.is-style-xc-quote p:first-child{font-size:clamp(22px,1.9vw,26px);line-height:1.25;font-weight:700}
.is-style-xc-ruled{border-top:2px solid var(--xc-line)}
.is-style-xc-row-divided{border-bottom:1px solid var(--xc-line);padding-top:16px!important;padding-bottom:16px!important}
.is-style-xc-row-divided:first-child{border-top:1px solid var(--xc-line)}
.xc-date-day{font-family:var(--xc-display);font-size:28px;line-height:1;text-transform:uppercase;min-width:170px}
.xc-date-city{font-weight:700;text-transform:uppercase;letter-spacing:.02em}

/* ---------- Lists ---------- */
ul.is-style-xc-rows,ol.is-style-xc-rows{list-style:none;padding:0;margin:0}
.is-style-xc-rows li{padding:12px 0;border-bottom:1px solid var(--xc-line)}
.is-style-xc-rows li:last-child{border-bottom:0}
.is-style-xc-rows strong{display:block}
.is-style-xc-rows li span,.is-style-xc-rows li em{font-size:14px;color:var(--xc-muted);font-style:normal}
ol.is-style-xc-tracks{list-style:none;padding:0;margin:0;counter-reset:trk}
.is-style-xc-tracks li{counter-increment:trk;display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--xc-line);font-weight:700}
.is-style-xc-tracks li::before{content:counter(trk,decimal-leading-zero);font-family:var(--xc-display);font-size:28px;line-height:1;color:var(--xc-muted)}
.is-style-xc-tracks li mark{background:var(--xc-accent)!important;color:var(--xc-char)!important;font-family:var(--xc-narrow);font-size:12px;letter-spacing:.1em;text-transform:uppercase;padding:4px 8px;border-radius:2px}

/* ---------- Tables (credits, line-up) ---------- */
.is-style-xc-credits table{border-collapse:collapse;width:100%}
.is-style-xc-credits td{border:0;border-bottom:1px solid var(--xc-line);padding:12px 0}
.is-style-xc-credits tr:last-child td{border-bottom:0}
.is-style-xc-credits td:first-child{color:var(--xc-muted);font-size:14px;font-family:var(--xc-narrow);font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.is-style-xc-credits td:last-child{font-weight:700;text-align:right}

/* ---------- Images ---------- */
.is-style-xc-sticker-left img,.is-style-xc-sticker-right img{height:auto}
.is-style-xc-sticker-left{transform:rotate(-7deg)}
.is-style-xc-sticker-right{transform:rotate(8deg)}
.is-style-xc-portrait img{width:100%;aspect-ratio:4/5;object-fit:cover}
.is-style-xc-wide img{width:100%;aspect-ratio:16/9;object-fit:cover}
.is-style-xc-square img{width:100%;aspect-ratio:1/1;object-fit:cover}
.wp-block-image figcaption,.wp-element-caption{font-size:14px;color:var(--xc-muted);text-align:left;margin-top:8px}
.wp-block-embed iframe{width:100%}
.wp-block-embed.is-type-video .wp-block-embed__wrapper{background:var(--xc-sunken)}
.xc-dsp iframe{width:100%;height:450px;border:0;border-radius:12px;display:block;background:var(--xc-surface)}

/* ---------- Header ---------- */
.xc-header{position:sticky;top:0;z-index:30;background:var(--wp--preset--color--base);border-bottom:2px solid var(--xc-line)}
.admin-bar .xc-header{top:32px}
@media (max-width:782px){.admin-bar .xc-header{top:46px}}
.xc-header .wp-block-site-logo img{width:124px;height:auto}
.xc-header .wp-block-navigation a:hover,.xc-footer .wp-block-navigation a:hover{color:var(--xc-accent)}
.xc-header .wp-block-navigation .current-menu-item>a{color:var(--xc-accent);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:8px}
.wp-block-navigation__responsive-container.is-menu-open{background:var(--wp--preset--color--base)!important;color:var(--xc-ink)!important}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{font-family:var(--xc-display);font-size:clamp(44px,13vw,64px);line-height:.95;text-transform:uppercase;letter-spacing:0}
.wp-block-navigation__responsive-container-open,.wp-block-navigation__responsive-container-close{border:2px solid var(--xc-line-strong);width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center}
@media (max-width:760px){.xc-header .wp-block-site-logo img{width:96px}.xc-hide-sm{display:none!important}}

/* ---------- Footer ---------- */
.xc-footer{border-top:2px solid var(--xc-line)}
.xc-footer .wp-block-navigation{display:grid!important;grid-template-columns:repeat(4,minmax(110px,auto));gap:12px 48px}
.xc-footer .wp-block-navigation__container{display:contents}
@media (max-width:760px){.xc-footer .wp-block-navigation{grid-template-columns:repeat(2,minmax(0,1fr))}}
.xc-legal a{color:var(--xc-muted)}

/* ---------- Layout helpers ---------- */
.xc-scroller{flex-wrap:nowrap!important}
@media (max-width:760px){.xc-scroller{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px!important;padding-bottom:8px}.xc-scroller>*{flex:0 0 78%!important;scroll-snap-align:start}}
.xc-art-first{}
@media (max-width:781px){.xc-art-first>.wp-block-column:last-child{order:-1}}
.wp-block-group.xc-sec-head{align-items:flex-end}

/* ---------- Sign-up form (shortcode [xcomm_signup]) ---------- */
.xc-signup{display:flex;flex-direction:column;gap:10px;max-width:560px}
.xc-signup.is-inline{padding-top:24px;border-top:1px solid var(--xc-line)}
.xc-signup label.xc-lbl{font-family:var(--xc-narrow);font-weight:700;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--xc-muted)}
.xc-signup .xc-row{display:flex;gap:8px}
.xc-signup input[type=email]{flex:1;min-width:0;height:52px;padding:0 16px;background:var(--xc-sunken);border:2px solid var(--xc-line-strong);border-radius:var(--xc-radius,2px);color:var(--xc-ink);font:inherit;font-size:16px}
.xc-signup input[type=email]::placeholder{color:#8a7f66}
.xc-signup button{font-family:var(--xc-narrow);font-weight:700;font-size:14px;letter-spacing:.08em;text-transform:uppercase;padding:0 20px;min-height:52px;border:2px solid var(--xc-accent);background:var(--xc-accent);color:var(--xc-char);border-radius:var(--xc-radius,2px);cursor:pointer}
.xc-signup.is-inline button{background:transparent;color:var(--xc-ink);border-color:var(--xc-line-strong)}
.xc-signup button:hover{background:var(--xc-bright);border-color:var(--xc-bright);color:var(--xc-char)}
.xc-signup .xc-fine{font-size:14px;line-height:20px;color:var(--xc-muted);margin:0}
.xc-signup .xc-hp{position:absolute;left:-5000px}
@media (max-width:460px){.xc-signup .xc-row{flex-direction:column}}

/* ---------- Share links (shortcode [xcomm_share]) ---------- */
.xc-share{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.xc-share a{font-family:var(--xc-narrow);font-weight:700;font-size:12px;letter-spacing:.1em;text-transform:uppercase;padding:8px 12px;border:2px solid var(--xc-line-strong);color:var(--xc-ink);text-decoration:none}
.xc-share a:hover{border-color:var(--xc-ink)}

/* ---------- Social links ---------- */
.wp-block-social-links.is-style-logos-only .wp-social-link{color:var(--xc-ink)}
.wp-block-social-links .wp-social-link:hover{color:var(--xc-accent)}

@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* ---------- Layout modules (from approved mockup) ---------- */
.xc-section{padding-top:var(--wp--preset--spacing--80)!important;padding-bottom:var(--wp--preset--spacing--80)!important}
.xc-hero{padding-top:clamp(40px,6.5vw,96px)!important;padding-bottom:clamp(40px,6.5vw,96px)!important}
.xc-hero-art img{width:100%;height:auto;aspect-ratio:1/1;object-fit:contain}
@media (max-width:781px){.xc-hero .wp-block-columns{flex-direction:column-reverse}}
.xc-badges{gap:8px!important}
.xc-actions{gap:12px!important}
/* Video poster: image block linked to YouTube, add class xc-video */
.wp-block-image.xc-video{position:relative;margin:0}
.wp-block-image.xc-video a{display:block;position:relative;aspect-ratio:16/9;overflow:hidden;background:var(--xc-sunken)}
.wp-block-image.xc-video img{width:100%;height:100%;object-fit:cover}
.wp-block-image.xc-video a::after{content:"";position:absolute;left:clamp(16px,2.2vw,32px);bottom:clamp(16px,2.2vw,32px);width:clamp(56px,6.6vw,96px);height:clamp(56px,6.6vw,96px);background:var(--xc-accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231f1708' stroke-width='2'%3E%3Cpath d='M7 4l13 8-13 8z'/%3E%3C/svg%3E") center/40% no-repeat}
.wp-block-image.xc-video a:hover::after{background-color:var(--xc-bright)}
.wp-block-image.xc-video.xc-video-sm a::after{width:48px;height:48px;left:12px;bottom:12px}
.xc-video-card{gap:8px!important}
.xc-video-card .wp-block-heading a{color:var(--xc-ink);text-decoration:none}
.xc-video-card .wp-block-heading a:hover{text-decoration:underline;text-decoration-thickness:2px}
/* Cards */
.is-style-xc-card .wp-block-heading{margin:0}
.xc-card-foot{margin-top:auto!important}
.xc-card-title{font-family:var(--wp--preset--font-family--sans)!important;text-transform:none!important;font-size:18px!important;line-height:24px!important;font-weight:700!important}
.xc-ph img{opacity:.35;padding:22%;background:var(--xc-sunken);border:1px dashed var(--xc-line-strong)}
/* Dates */
.xc-dates>*{margin:0!important}
.xc-date{display:grid!important;grid-template-columns:170px minmax(0,1fr) auto;gap:16px;align-items:center}
.xc-date>*{margin:0!important}
@media (max-width:760px){.xc-date{grid-template-columns:minmax(0,1fr) auto}.xc-date>.xc-date-day{grid-column:1/-1}}
/* Line-up */
.xc-lineup{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px;padding:24px 0!important;border-top:1px solid var(--xc-line);border-bottom:1px solid var(--xc-line)}
.xc-lineup.is-plain{border:0;padding:0!important}
.xc-lineup>*{margin:0!important}
.xc-lineup .xc-member-name{font-weight:700;margin-top:4px!important}
@media (max-width:460px){.xc-lineup{grid-template-columns:minmax(0,1fr)}}
/* Platforms */
.xc-platforms{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px!important}
.xc-platforms .wp-block-button,.xc-platforms .wp-block-button__link{width:100%}
@media (max-width:1024px){.xc-platforms{grid-template-columns:repeat(2,minmax(0,1fr))}}
.xc-release-art img{width:100%;height:auto;aspect-ratio:1/1;object-fit:contain}
/* Tracklist durations */
.is-style-xc-tracks li{grid-template-columns:48px minmax(0,1fr) auto auto}
.is-style-xc-tracks li .xc-dur{font-size:14px;color:var(--xc-muted);font-weight:400;font-variant-numeric:tabular-nums;min-width:3ch;text-align:right}
/* Also row */
.xc-also{padding-top:24px!important;margin-top:32px!important;border-top:1px solid var(--xc-line)}
/* Join block */
.xc-join{background:var(--xc-surface)}
/* Embeds pair */
.xc-embeds .xc-dsp{display:flex;flex-direction:column;gap:10px}
/* Pull quote inside prose */
.xc-prose{max-width:44em}
.xc-prose>*+*{margin-top:20px!important}
.xc-crumbs{font-size:14px;color:var(--xc-muted)}
.xc-crumbs a{color:var(--xc-muted)}
/* Footer bottom */
.xc-footer-bottom{border-top:1px solid var(--xc-line);font-size:14px;line-height:20px;color:var(--xc-muted)}
.xc-legal{gap:24px!important}
.xc-legal a{text-decoration:none}
.xc-legal a:hover{color:var(--xc-ink)}
/* Tracklist v2: type the title, bold = Single badge, italic = duration */
.is-style-xc-tracks li{display:flex!important;align-items:center;gap:12px}
.is-style-xc-tracks li::before{flex:0 0 48px}
.is-style-xc-tracks li strong{margin-left:auto;background:var(--xc-accent);color:var(--xc-char);font-family:var(--xc-narrow);font-size:12px;line-height:14px;letter-spacing:.1em;text-transform:uppercase;padding:4px 8px;border-radius:2px}
.is-style-xc-tracks li em{margin-left:auto;font-style:normal;font-weight:400;font-size:14px;color:var(--xc-muted);font-variant-numeric:tabular-nums;min-width:3ch;text-align:right}
.is-style-xc-tracks li strong+em{margin-left:0}
.xc-grid-4{gap:24px!important}
@media (max-width:1024px){.xc-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media (max-width:460px){.xc-grid-4{grid-template-columns:minmax(0,1fr)!important}}

/* ---------- Listen / Streaming ([xcomm_listen]) ---------- */
.xc-listen{display:flex;flex-direction:column;gap:16px;width:100%}
.xc-listen-btns button.wp-block-button__link{cursor:pointer;display:inline-flex;align-items:center;gap:10px;font:inherit}
.xc-listen-btns button::after{content:"";width:9px;height:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-3px) rotate(45deg);transition:transform .2s}
.xc-listen-btns button[aria-expanded=true]::after{transform:translateY(2px) rotate(-135deg)}
.xc-listen-panel{border:1px solid var(--xc-line-strong);background:var(--xc-surface);padding:16px;border-radius:4px}
.xc-listen-panel[hidden]{display:none}
.xc-tabs{display:flex;gap:4px;margin-bottom:12px;border-bottom:1px solid var(--xc-line)}
.xc-tabs button{background:none;border:0;border-bottom:3px solid transparent;color:var(--xc-muted);font-family:var(--xc-narrow);font-size:14px;letter-spacing:.08em;text-transform:uppercase;padding:10px 14px;cursor:pointer;margin-bottom:-1px}
.xc-tabs button[aria-selected=true]{color:var(--xc-ink);border-bottom-color:var(--xc-accent)}
.xc-tabs button:focus-visible{outline:2px solid var(--xc-accent);outline-offset:2px}
.xc-player iframe{display:block;width:100%;border:0;border-radius:12px;background:var(--xc-sunken)}
.xc-dsp-links ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.xc-dsp-links a{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border:1px solid var(--xc-line-strong);color:var(--xc-ink);text-decoration:none;font-weight:700;border-radius:2px}
.xc-dsp-links a::after{content:"\2197";color:var(--xc-muted);font-weight:400}
.xc-dsp-links a:hover{border-color:var(--xc-accent);color:var(--xc-accent)}
.xc-dsp-links .xc-all{grid-column:1/-1}
.xc-dsp-links .xc-all a{background:var(--xc-accent);border-color:var(--xc-accent);color:var(--xc-char)}
.xc-dsp-links .xc-all a::after{color:inherit}
@media (max-width:460px){.xc-dsp-links ul{grid-template-columns:minmax(0,1fr)}}
/* Embedded video */
.xc-embed-video{margin:0}
.xc-embed-video .wp-block-embed__wrapper{aspect-ratio:16/9;background:var(--xc-sunken)}
.xc-embed-video iframe{width:100%;height:100%}
/* Extra stickers */
.xc-sticker-float{position:relative}
.xc-sticker-float>.xc-sticker-abs{position:absolute;right:clamp(-12px,-1vw,0px);top:clamp(-40px,-3vw,-20px);z-index:2;pointer-events:none;margin:0!important}
@media (max-width:781px){.xc-sticker-float>.xc-sticker-abs{position:static;margin-top:16px!important}}
/* Listen / Stream / Buy: three separate buttons */
.xc-listen-btns{gap:12px!important;flex-wrap:wrap}
.xc-listen-btns .wp-block-button{margin:0}
@media (max-width:460px){.xc-listen-btns{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))}.xc-listen-btns button.wp-block-button__link{width:100%;justify-content:center;padding-left:12px;padding-right:12px}}

/* Rounded corners everywhere, matching the tags (2px) */
:root{--xc-radius:6px}
.wp-element-button,.wp-block-button__link,.wp-block-search__button,.wp-block-file__button,.wp-block-post-comments-form input[type=submit],.wp-block-query-pagination a,.xc-signup button,.xc-dsp-links a{border-radius:var(--xc-radius)!important}
/* Listen / Stream / Buy: real flex row so the gap separates them */
.wp-block-buttons.xc-listen-btns{display:flex!important;flex-wrap:wrap;gap:12px!important;align-items:center}
.xc-listen-btns>.wp-block-button{margin:0!important}
@media (max-width:460px){.wp-block-buttons.xc-listen-btns{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px!important}}

/* Radius v2: 6px on buttons, tags and inline badges; panels a touch rounder */
.is-style-xc-tracks li strong,.is-style-xc-tracks li mark{border-radius:var(--xc-radius)}
.xc-listen-panel{border-radius:calc(var(--xc-radius) + 4px)}

/* Album intro copy in the release header */
.xc-album-intro{max-width:40em}
.xc-album-intro>*{margin:0!important}
.xc-album-intro+*{margin-top:8px!important}

/* ---------- Shopify plugin skin (cards, collections, quick view, product page) ---------- */
.collection-grid__grid,.collection-grid{gap:24px!important}
.product-card,.collection-grid__product .product-card{background:var(--xc-surface)!important;border:1px solid var(--xc-line)!important;border-radius:calc(var(--xc-radius) + 4px)!important;padding:16px!important;display:flex!important;flex-direction:column;gap:12px;height:100%;box-shadow:none!important}
.product-card:hover{border-color:var(--xc-line-strong)!important}
.product-card__image-container{border-radius:var(--xc-radius);overflow:hidden;background:var(--xc-sunken);aspect-ratio:1/1}
.product-card__image-container img,.product-card shopify-media img{width:100%;height:100%;object-fit:cover}
.product-card a,.product__link{color:inherit!important;text-decoration:none!important}
.product-card__title,.product-card__title *{font-family:var(--wp--preset--font-family--sans,inherit)!important;text-transform:none!important;font-size:18px!important;line-height:24px!important;font-weight:700!important;letter-spacing:0!important;margin:0!important;color:var(--xc-ink)!important}
.product-card__price,.product-card__price *{color:var(--xc-muted)!important;font-size:16px!important;margin:4px 0 0!important}
.product-card[disabled],.product-card[disabled="true"]{opacity:.55}
.product-card[disabled] .product-card__title::after{content:"Sold out";display:inline-block;margin-left:8px;vertical-align:middle;font-family:var(--xc-narrow);font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding:3px 6px;border:2px solid var(--xc-line);border-radius:var(--xc-radius);color:var(--xc-muted)}
/* Buttons from the plugin, matched to theme buttons */
.product-card__hover-button,.product-modal__add-button,.product-modal__buy-button,.product-buy-now__button,.single-product__add-button,.single-product__buy-button,.pagination-button,.collection__slider-button{font-family:var(--xc-narrow)!important;font-weight:700!important;font-size:14px!important;line-height:16px!important;letter-spacing:.08em!important;text-transform:uppercase!important;border-radius:var(--xc-radius)!important;min-height:44px;padding:12px 20px!important;cursor:pointer;border:2px solid var(--xc-accent)!important;background:var(--xc-accent)!important;color:var(--xc-char)!important;box-shadow:none!important}
.product-card__hover-button:hover,.product-modal__add-button:hover,.single-product__add-button:hover{background:var(--wp--preset--color--accent-bright,var(--xc-bright))!important;border-color:var(--wp--preset--color--accent-bright,var(--xc-bright))!important}
.product-modal__buy-button,.product-buy-now__button,.single-product__buy-button,.pagination-button,.collection__slider-button{background:transparent!important;color:var(--xc-ink)!important;border-color:var(--xc-line-strong)!important}
.product-modal__buy-button:hover,.single-product__buy-button:hover,.pagination-button:hover{border-color:var(--xc-ink)!important}
.pagination-button[disabled]{opacity:.35}
/* Quick view */
.product-modal{border:1px solid var(--xc-line-strong)!important;border-radius:calc(var(--xc-radius) + 6px)!important;background:var(--xc-surface)!important;color:var(--xc-ink)!important;padding:0!important}
.product-modal::backdrop{background:rgba(10,8,4,.72)}
.product-modal__title,.single-product__title,.collection-title{font-family:"ATP Casualte",var(--xc-narrow),Impact,sans-serif!important;text-transform:uppercase;letter-spacing:.01em;line-height:.95!important;color:var(--xc-ink)!important}
.single-product__title{font-size:clamp(40px,5vw,72px)!important}
.product-modal__close{color:var(--xc-ink)!important;background:transparent!important;border-radius:var(--xc-radius)}
.product-modal__compare-price,.single-product__compare-price{color:var(--xc-muted)!important;text-decoration:line-through}
.product-modal__description-text,.single-product__description-text{color:var(--xc-ink)!important;opacity:.9}
.product-modal__details-link{color:var(--xc-accent)!important;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
/* Product page */
.single-product__main-image,.single-product__media img{border-radius:calc(var(--xc-radius) + 4px);background:var(--xc-sunken)}
.single-product__price,.single-product__price *{font-size:22px!important;color:var(--xc-ink)!important}
.single-product__incrementor{border:2px solid var(--xc-line-strong)!important;border-radius:var(--xc-radius)!important;background:transparent!important;color:var(--xc-ink)!important}
.single-product__accordion__item{border-color:var(--xc-line)!important}
.single-product__accordion__header{color:var(--xc-ink)!important;font-family:var(--xc-narrow);text-transform:uppercase;letter-spacing:.08em}
.xc-shop-main{min-height:50vh}
/* Variant selects */
.shopify-product-details select,.product-modal select,.single-product select{background:var(--xc-sunken)!important;color:var(--xc-ink)!important;border:2px solid var(--xc-line-strong)!important;border-radius:var(--xc-radius)!important;min-height:44px}
/* Cart link in header */
.xc-header .wp-block-create-block-shopify-cart-toggle-block .navigation__view-cart{display:inline-flex;align-items:center;gap:6px;color:var(--xc-ink);cursor:pointer}
.xc-header .navigation__view-cart__quantity{background:var(--xc-accent);color:var(--xc-char);border-radius:999px;min-width:20px;height:20px;padding:0 6px;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}
/* ---------- Shopify skin v2: dark panels, cream paper for product imagery ---------- */
:root{--xc-paper:var(--wp--preset--color--cream,#efe6cf)}
.xc-shop-main{padding-top:clamp(32px,4vw,56px)!important}
/* Product page layout */
.single-product-layout,.single-product,.shopify-product-details{background:transparent!important}
.single-product__container{display:grid!important;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(32px,4.5vw,64px)!important;align-items:start;padding:0!important;max-width:1440px;margin:0 auto;background:transparent!important}
@media (max-width:900px){.single-product__container{grid-template-columns:minmax(0,1fr)}}
.single-product__media{position:sticky;top:96px;background:var(--xc-paper)!important;border-radius:calc(var(--xc-radius) + 6px);overflow:hidden;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;padding:clamp(16px,3vw,40px)}
@media (max-width:900px){.single-product__media{position:static}}
.single-product__media img,.single-product__main-image,.single-product__media shopify-media img{background:transparent!important;width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;border-radius:0!important}
.single-product__details{background:transparent!important;padding:0!important;border-radius:0!important;gap:24px!important;color:var(--xc-ink)!important}
.single-product__title{color:var(--xc-ink)!important;font-weight:400!important;margin:0!important}
.single-product__price,.single-product__price shopify-money{color:var(--xc-ink)!important;font-size:24px!important;font-weight:700!important}
.single-product__compare-price,.product-modal__compare-price{display:none!important}
/* Variant selector (shadow parts) */
shopify-variant-selector{color:var(--xc-ink);font-family:inherit}
shopify-variant-selector::part(label),shopify-variant-selector::part(legend){color:var(--xc-muted);font-family:var(--xc-narrow);font-size:12px;letter-spacing:.1em;text-transform:uppercase}
shopify-variant-selector::part(radio){background:transparent!important;border:2px solid var(--xc-line-strong)!important;color:var(--xc-ink)!important;border-radius:var(--xc-radius)!important;padding:10px 16px!important;font-size:14px!important;font-weight:700!important;min-height:44px}
shopify-variant-selector::part(radio):hover{border-color:var(--xc-ink)!important;background:transparent!important;color:var(--xc-ink)!important}
shopify-variant-selector::part(radio-selected),shopify-variant-selector::part(radio-selected):hover{background:var(--xc-accent)!important;border:2px solid var(--xc-accent)!important;color:var(--xc-char)!important}
shopify-variant-selector::part(select){background:var(--xc-sunken)!important;color:var(--xc-ink)!important;border:2px solid var(--xc-line-strong)!important;border-radius:var(--xc-radius)!important;min-height:44px}
/* Quantity + buttons */
.single-product__buttons{gap:12px!important}
.single-product__add-to-cart{gap:12px!important}
.single-product__incrementor{border:2px solid var(--xc-line-strong)!important;border-radius:var(--xc-radius)!important;background:transparent!important}
.single-product__incrementor button{color:var(--xc-ink)!important;background:transparent!important}
.single-product__incrementor button:hover{background:var(--xc-surface)!important}
.single-product__count,.single-product__incrementor input{color:var(--xc-ink)!important;background:transparent!important;border:0!important}
.single-product__add-button{font-size:15px!important;min-height:52px}
.single-product__buy-button{background:transparent!important;color:var(--xc-ink)!important;border:2px solid var(--xc-line-strong)!important;min-height:52px}
.single-product__buy-button:hover{border-color:var(--xc-ink)!important}
/* Description accordion */
.single-product__accordion{border:0!important}
.single-product__accordion__item{border:0!important;border-top:1px solid var(--xc-line)!important;border-bottom:1px solid var(--xc-line)!important;border-radius:0!important;background:transparent!important}
.single-product__accordion__header{color:var(--xc-ink)!important;background:transparent!important;font-size:13px!important;padding-left:0!important}
.single-product__accordion__header::after{filter:invert(1) brightness(1.4)}
.single-product__accordion__content,.single-product__description-text{color:var(--xc-ink)!important;opacity:.88;font-size:16px!important;line-height:1.6!important;letter-spacing:0!important}
.single-product__description{border-color:var(--xc-line)!important}
/* You may also like */
.product-recommendations{background:transparent!important;margin-top:clamp(56px,7vw,96px)!important;padding:0!important}
.product-recommendations .collection-container,.product-recommendations .collection-layout{padding-left:0!important;padding-right:0!important;max-width:1440px!important}
.collection-title{color:var(--xc-ink)!important;font-size:clamp(28px,3.4vw,44px)!important;font-weight:400!important}
.collection__slider-button{border-radius:var(--xc-radius)!important;min-width:44px;padding:10px 14px!important}
.product-recommendations .collection-grid__product:has(.product-card[disabled]),.product-recommendations .collection-grid__product:has([disabled].product-card){display:none!important}
/* Product cards everywhere: cream paper media, dark card */
.product-card__image-container{background:var(--xc-paper)!important}
.product-card__image-container img,.product-card shopify-media img{mix-blend-mode:multiply;object-fit:contain!important;padding:8%}
.product-card[disabled] .product-card__title::after{content:none!important}
.product-card:is([disabled])::before{background:rgba(14,11,6,.55)!important;border-radius:inherit}
.product-card:is([disabled])::after{content:"Sold out"!important;color:var(--xc-ink)!important;font-family:var(--xc-narrow);font-size:14px!important;letter-spacing:.12em;text-transform:uppercase;top:38%!important}
/* Quick view */
.product-modal__content{background:var(--xc-surface)!important;color:var(--xc-ink)!important;border-radius:calc(var(--xc-radius) + 6px)!important}
.product-modal__media{background:var(--xc-paper)!important}
.product-modal__media img{mix-blend-mode:multiply}
.product-modal__title,.product-modal__price-container,.product-modal__price-container shopify-money{color:var(--xc-ink)!important}
#product-modal .product-modal__close{background:transparent!important;color:var(--xc-ink)!important;border:2px solid var(--xc-line-strong)!important;border-radius:var(--xc-radius)!important}
/* Cart drawer buttons */
shopify-cart::part(primary-button){background:var(--xc-accent)!important;color:var(--xc-char)!important;border-radius:var(--xc-radius)!important;font-family:var(--xc-narrow)!important;text-transform:uppercase;letter-spacing:.08em}
/* Header cart link: match the nav */
.xc-header .navigation__view-cart-link{color:inherit!important;font:inherit!important;text-decoration:none!important;cursor:pointer}
.xc-header .navigation__view-cart span{font:inherit;text-transform:uppercase;letter-spacing:inherit}
.xc-header .navigation__view-cart span::after{filter:invert(1) brightness(1.5);width:18px!important;height:18px!important;margin-right:0!important;margin-left:8px;vertical-align:-3px}
.xc-header .navigation__view-cart__quantity{position:absolute;right:-10px;top:-8px;bottom:auto!important;width:auto!important;height:18px!important;min-width:18px;padding:0 5px!important;font-size:11px!important}
.xc-header .navigation__view-cart__quantity:empty,.xc-header .navigation__view-cart__quantity[data-value="0"]{display:none!important}
/* Shopify skin v2.1: fix column overflow, full wide width, nav-matched cart link */
.single-product{max-width:none!important;width:100%!important;min-width:0!important}
.single-product__container{max-width:none!important;width:100%!important}
.single-product__media,.single-product__details{min-width:0!important;box-sizing:border-box!important;width:auto!important;flex:none!important}
.single-product__main-image,.single-product__media shopify-media{width:100%!important;max-width:100%!important;height:100%;display:flex;align-items:center;justify-content:center}
.xc-header .navigation__view-cart span{font-family:var(--xc-narrow)!important;font-size:14px!important;font-weight:700!important;letter-spacing:.08em!important;text-transform:uppercase!important}

/* Shopify skin v2.2: outline buttons beat the plugin's black !important borders */
body .single-product .single-product__buy-button,body .product-modal .product-modal__buy-button,body .product-modal .product-buy-now__button{border:2px solid var(--xc-line-strong)!important;color:var(--xc-ink)!important;background:transparent!important}
body .single-product .single-product__buy-button:hover,body .product-modal .product-modal__buy-button:hover{border-color:var(--xc-ink)!important}

/* Shopify skin v2.3: You may also like */
.product-recommendations .collection-grid__product[disabled]{display:none!important}
.product-recommendations:not(:has(.collection-grid__product:not([disabled]))){display:none!important}
.product-recommendations .collection-grid__product{color:var(--xc-ink)!important;text-align:left;background:transparent!important;border:0!important;padding:0!important;cursor:pointer}
.product-recommendations .single-product__image-container{background:var(--xc-paper)!important;border-radius:calc(var(--xc-radius) + 4px);overflow:hidden;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;position:relative}
.product-recommendations .single-product__image-container img{mix-blend-mode:multiply;object-fit:contain;width:100%;height:100%;padding:8%}
.product-recommendations .single-product__info{padding-top:12px}
.product-recommendations .single-product__info h3,.product-recommendations .single-product__info h3 *{color:var(--xc-ink)!important;font-family:var(--wp--preset--font-family--sans,inherit)!important;font-size:16px!important;line-height:22px!important;font-weight:700!important;text-transform:none!important;letter-spacing:0!important;margin:0!important}
.product-recommendations .single-product__price,.product-recommendations .single-product__price *{color:var(--xc-muted)!important;font-size:15px!important;font-weight:400!important}
.product-recommendations .single-product__hover-button{background:var(--xc-accent)!important;border-radius:var(--xc-radius)!important;box-shadow:none!important}
.product-recommendations .single-product__hover-button span{color:var(--xc-char)!important;font-family:var(--xc-narrow);letter-spacing:.08em}

/* Shopify skin v2.4: sharp thumbnails (drop Shopify's blurred placeholder), icon-only cart shown only with items */
shopify-media img{background-image:none!important}
.product-card shopify-media img,.product-card__image-container img,.product-recommendations .single-product__image-container img{padding:0!important}
.product-card__image-container,.product-recommendations .single-product__image-container{padding:8%!important;box-sizing:border-box}
.product-card__image-container shopify-media{display:block;width:100%;height:100%}
.xc-header .wp-block-create-block-shopify-cart-toggle-block{display:none!important}
.xc-header .wp-block-create-block-shopify-cart-toggle-block.xc-cart-has-items{display:flex!important;align-items:center}
.xc-header .navigation__view-cart span{font-size:0!important;letter-spacing:0!important;display:inline-flex;align-items:center}
.xc-header .navigation__view-cart span::after{width:22px!important;height:22px!important;margin:0!important}
.xc-header .navigation__view-cart-link:focus-visible{outline:2px solid var(--xc-accent);outline-offset:4px;border-radius:var(--xc-radius)}

/* cart badge v2.5 */
.xc-header .navigation-cart-block{position:relative;padding:4px 10px 0 0}
.xc-header .navigation__view-cart__quantity{right:-4px!important;top:-6px!important}

/* placeholder kill v2.6: Shopify injects .shopify-media-image-N{background-image:url(preview)!important}. A class + attribute + element selector outranks it. */
html body shopify-media img[class*="shopify-media-image-"],html body img.image[class*="shopify-media-image-"]{background-image:none!important;background-color:transparent!important;background:none!important}

/* cart badge v3: count sits beside the bag, never over it */
.xc-header .navigation-cart-block{padding:0!important;position:static!important}
.xc-header .navigation__view-cart{display:inline-flex!important;align-items:center!important;gap:6px!important;position:static!important}
.xc-header .navigation__view-cart shopify-context{display:contents!important}
.xc-header .navigation__view-cart>span{order:1;line-height:0}
.xc-header .navigation__view-cart span::after{width:20px!important;height:20px!important;margin:0!important;display:block!important;vertical-align:middle}
html body .xc-header .navigation__view-cart__quantity{order:2;position:static!important;inset:auto!important;transform:none!important;overflow:visible!important;box-sizing:border-box!important;width:auto!important;min-width:20px!important;height:20px!important;padding:0 6px!important;margin:0!important;border-radius:999px!important;background:var(--xc-accent)!important;color:var(--xc-char)!important;font-family:var(--xc-narrow)!important;font-size:12px!important;font-weight:700!important;line-height:20px!important;letter-spacing:0!important;text-align:center!important;display:inline-flex!important;align-items:center;justify-content:center}
html body .xc-header .navigation__view-cart__quantity *{font:inherit!important;color:inherit!important;line-height:inherit!important}

/* Product description v1: rich text from Shopify */
.xc-rich-desc,.product-modal__description-text{display:block;color:var(--xc-ink)!important;opacity:1!important;font-size:16px!important;line-height:1.6!important;letter-spacing:0!important;max-width:40em}
.xc-rich-desc>*,.xc-rich-desc shopify-data>*,.product-modal__description-text shopify-data>*{margin:0 0 16px!important}
.xc-rich-desc h1,.xc-rich-desc h2,.xc-rich-desc h3,.xc-rich-desc h4,.product-modal__description-text h3{font-family:var(--xc-narrow)!important;font-size:12px!important;line-height:14px!important;font-weight:700!important;letter-spacing:.1em!important;text-transform:uppercase!important;color:var(--xc-muted)!important;margin:28px 0 12px!important}
.xc-rich-desc h3 strong,.xc-rich-desc h2 strong{font-weight:inherit}
.xc-rich-desc p,.xc-rich-desc li{color:var(--xc-ink)!important}
.xc-rich-desc a{color:var(--xc-accent);text-decoration:underline;text-underline-offset:3px}
.xc-rich-desc ul{padding-left:1.2em}
.xc-desc-tracks{list-style:none;counter-reset:xct;padding:0!important;margin:0 0 16px!important;border-top:1px solid var(--xc-line)}
.xc-desc-tracks li{counter-increment:xct;display:flex;gap:12px;align-items:baseline;padding:10px 0;border-bottom:1px solid var(--xc-line);font-weight:700;font-size:15px;line-height:20px}
.xc-desc-tracks li::before{content:counter(xct,decimal-leading-zero);flex:0 0 28px;font-family:var(--xc-narrow);font-weight:700;font-size:12px;letter-spacing:.06em;color:var(--xc-muted)}
.single-product__accordion__content{padding:4px 0 8px!important}
/* ---------- Tour dates (Bandsintown) ---------- */
.xc-gigs{display:flex;flex-direction:column;gap:0}
.xc-gig-month{font-family:"ATP Casualte",var(--xc-narrow),Impact,sans-serif!important;font-size:clamp(24px,2.6vw,32px)!important;line-height:1!important;text-transform:uppercase;color:var(--xc-ink)!important;margin:40px 0 8px!important}
.xc-gig-month:first-child{margin-top:0!important}
.xc-gig-list{list-style:none;margin:0!important;padding:0!important;border-top:1px solid var(--xc-line)}
.xc-gig{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:20px;align-items:center;padding:18px 0;border-bottom:1px solid var(--xc-line);margin:0!important}
.xc-gig-date{display:flex;flex-direction:column;align-items:center;justify-content:center;width:72px;height:72px;border:2px solid var(--xc-line-strong);border-radius:calc(var(--xc-radius) + 4px);line-height:1;text-align:center}
.xc-gig-dow{font-family:var(--xc-narrow);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--xc-muted)}
.xc-gig-day{font-family:"ATP Casualte",var(--xc-narrow),Impact,sans-serif;font-size:30px;color:var(--xc-accent);margin:3px 0 2px}
.xc-gig-mon{font-family:var(--xc-narrow);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--xc-ink)}
.xc-gig-info{min-width:0}
.xc-gig-city{font-family:var(--wp--preset--font-family--sans,inherit)!important;font-size:20px!important;line-height:26px!important;font-weight:700!important;text-transform:none!important;letter-spacing:0!important;color:var(--xc-ink)!important;margin:0!important}
.xc-gig-meta{margin:4px 0 0!important;font-size:14px;line-height:20px;color:var(--xc-muted)}
.xc-gig-actions{display:flex!important;gap:8px!important;flex-wrap:nowrap;justify-content:flex-end;margin:0!important}
.xc-gig-actions .wp-block-button{margin:0!important}
.xc-gig-sold{display:inline-flex;align-items:center;min-height:40px;padding:0 12px;border:2px solid var(--xc-line);border-radius:var(--xc-radius);font-family:var(--xc-narrow);font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--xc-muted);text-decoration:line-through}
.xc-gig:hover .xc-gig-date{border-color:var(--xc-accent)}
.xc-gig-follow{display:flex;flex-wrap:wrap;gap:16px 24px;align-items:center;justify-content:space-between;margin-top:24px}
.xc-gig-follow p{margin:0!important;font-size:14px;max-width:34em}
.xc-gig-follow .wp-block-buttons{display:flex;gap:12px;flex-wrap:wrap;margin:0}
/* Empty / not-yet-authorised state */
.xc-gigs-empty{border:1px solid var(--xc-line-strong);border-radius:calc(var(--xc-radius) + 4px);background:var(--xc-surface);padding:clamp(20px,3vw,32px);gap:12px}
.xc-gigs-empty>p{margin:0!important}
.xc-gigs-count{font-family:"ATP Casualte",var(--xc-narrow),Impact,sans-serif;font-size:clamp(28px,3vw,40px);line-height:1;text-transform:uppercase;color:var(--xc-accent)}
.xc-gigs-empty .wp-block-buttons{display:flex;gap:12px;flex-wrap:wrap;margin:8px 0 0}
.xc-gigs-fans{font-size:14px}
@media (max-width:640px){
  .xc-gig{grid-template-columns:60px minmax(0,1fr);gap:14px;align-items:start}
  .xc-gig-date{width:60px;height:60px}.xc-gig-day{font-size:24px}
  .xc-gig-actions{grid-column:2;justify-content:flex-start}
}
/* Full, uncropped band photos */
.xc-band-photo img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain;border-radius:calc(var(--xc-radius) + 4px)}

/* Square band photo: fixed 1:1 so the layout never jumps while it loads */
.xc-band-square img{aspect-ratio:1/1;object-fit:cover;width:100%;height:auto}

/* footer label link */
.xc-footer-bottom .is-style-xc-muted a{color:inherit;text-decoration:underline;text-decoration-color:var(--xc-line-strong);text-underline-offset:3px}
.xc-footer-bottom .is-style-xc-muted a:hover{color:var(--xc-ink);text-decoration-color:var(--xc-accent)}

/* Buy panel v2: thumbnail rows */
.xc-buy-links{padding:12px!important}
.xc-buy-links ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.xc-buy-item{display:flex;align-items:center;gap:12px;padding:8px 12px 8px 8px;border:1px solid var(--xc-line-strong);border-radius:var(--xc-radius);color:var(--xc-ink);text-decoration:none;min-height:72px;transition:border-color .15s}
.xc-buy-item:hover,.xc-buy-item:focus-visible{border-color:var(--xc-accent)}
.xc-buy-item:hover .xc-buy-title{color:var(--xc-accent)}
.xc-buy-thumb{flex:0 0 56px;width:56px;height:56px;border-radius:calc(var(--xc-radius) - 2px);background:var(--xc-paper,#efe6cf);overflow:hidden;display:flex;align-items:center;justify-content:center}
.xc-buy-thumb img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;padding:4px;box-sizing:border-box}
.xc-buy-mark{font-family:"ATP Casualte",var(--xc-narrow),Impact,sans-serif;font-size:30px;line-height:1;color:var(--xc-char)}
.xc-buy-text{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.xc-buy-title{font-weight:700;font-size:15px;line-height:19px;color:var(--xc-ink);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.xc-buy-price{font-size:14px;color:var(--xc-muted)}
.xc-buy-item::after{content:"\203A";margin-left:auto;padding-left:8px;font-size:22px;line-height:1;color:var(--xc-muted)}
.xc-buy-sold{align-self:flex-start;font-family:var(--xc-narrow);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--xc-muted);border:1px solid var(--xc-line);border-radius:var(--xc-radius);padding:1px 6px}
.xc-buy-item.is-sold{opacity:.6}
@media (max-width:560px){.xc-buy-links ul{grid-template-columns:minmax(0,1fr)}}
/* Release page: artwork on top, text beneath */
.xc-release-stack>*{margin:0!important}
.xc-release-stack>*+*{margin-top:24px!important}
.xc-release-art-top{width:min(100%,640px);margin-bottom:16px!important}
.xc-release-art-top img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;border-radius:calc(var(--xc-radius) + 4px);display:block}
.xc-release-stack .xc-album-intro,.xc-release-stack .xc-listen{max-width:720px}
@media (max-width:640px){.xc-release-art-top{width:100%}}

/* Music index */
.xc-release-grid{gap:24px!important}
.xc-release-grid .is-style-xc-card .wp-block-heading a{color:inherit;text-decoration:none}
.xc-release-grid .is-style-xc-card .wp-block-heading a:hover{color:var(--xc-accent)}

/* ---------- Release template header ---------- */
.xc-release-head{display:grid;grid-template-columns:minmax(0,42fr) minmax(0,58fr);gap:clamp(32px,4.5vw,64px);align-items:start;margin:0 auto!important}
.xc-release-head__art{margin:0;position:sticky;top:96px}
.xc-release-head__img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;border-radius:calc(var(--xc-radius) + 4px);background:var(--xc-sunken)}
.xc-release-head__info{display:flex;flex-direction:column;gap:20px;min-width:0}
.xc-release-head__info>*{margin:0!important}
.xc-release-head__title{margin:0!important}
.xc-release-head .xc-album-intro{display:flex;flex-direction:column;gap:16px;max-width:40em}
.xc-release-head .xc-album-intro p{margin:0!important}
.xc-release-head__actions{margin-top:24px!important;max-width:720px}
@media (max-width:781px){
  .xc-release-head{grid-template-columns:minmax(0,1fr);gap:28px}
  .xc-release-head__art{position:static;order:0}
  .xc-release-head__info{order:1}
}
/* Video grids */
.xc-video-grid{gap:32px 24px!important}
.xc-video-grid .xc-video-card>*{margin:0!important}
.xc-video-grid .xc-video-card{display:flex;flex-direction:column;gap:10px}

/* Signup with phone */
.xc-signup.has-phone{display:flex;flex-direction:column;gap:10px;max-width:560px}
.xc-signup.has-phone .xc-field,.xc-signup.has-phone .xc-cc{min-height:52px;padding:0 16px;background:var(--xc-sunken);border:2px solid var(--xc-line-strong);border-radius:var(--xc-radius);color:var(--xc-ink);font:inherit;font-size:16px;width:100%;box-sizing:border-box}
.xc-signup.has-phone .xc-field:focus,.xc-signup.has-phone .xc-cc:focus{outline:none;border-color:var(--xc-accent)}
.xc-signup .xc-lbl-phone{margin-top:6px}
.xc-signup .xc-lbl-phone span{text-transform:none;letter-spacing:0;font-weight:400;color:var(--xc-muted)}
.xc-tel{display:grid;grid-template-columns:116px minmax(0,1fr);gap:8px}
.xc-signup.has-phone .xc-cc{padding:0 10px;cursor:pointer}
.xc-sms-consent{font-size:12px!important;line-height:17px!important;margin:0!important}
.xc-signup.has-phone .xc-submit{align-self:flex-start;min-height:52px;padding:0 28px;margin-top:6px;border:2px solid var(--xc-accent);background:var(--xc-accent);color:var(--xc-char);border-radius:var(--xc-radius);font-family:var(--xc-narrow);font-weight:700;font-size:14px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.xc-signup.has-phone .xc-submit:hover{background:var(--xc-bright);border-color:var(--xc-bright)}

/* Signup phone v2: hero (inline) variant + spacing guard */
.xc-signup.has-phone>br,.xc-tel>br{display:none}
.xc-signup.has-phone>p:empty,.xc-tel>p:empty{display:none}
.xc-signup.is-inline.has-phone .xc-submit{background:transparent;color:var(--xc-ink);border-color:var(--xc-line-strong)}
.xc-signup.is-inline.has-phone .xc-submit:hover{background:var(--xc-accent);border-color:var(--xc-accent);color:var(--xc-char)}

/* Join page alignment: one shared left edge for tag, heading, lead, form and sticker */
body.page-id-180 .xc-section.is-layout-constrained>*,.xc-section.is-layout-constrained:has(>form.xc-signup)>*{margin-left:0!important;margin-right:auto!important;text-align:left}
body.page-id-180 .xc-section.is-layout-constrained,.xc-section.is-layout-constrained:has(>form.xc-signup){max-width:calc(880px + 2 * var(--wp--style--root--padding-left,0px));margin-left:auto;margin-right:auto}
body.page-id-180 .xc-section .is-style-xc-lead{max-width:36em}
body.page-id-180 .xc-section form.xc-signup{max-width:560px;width:100%}

/* Home hero top-align (desktop): artwork top lines up with the LP / Out now tags */
@media (min-width:782px){
  .xc-hero:not(.xc-release-hero) .wp-block-columns{align-items:flex-start!important}
  .xc-hero:not(.xc-release-hero) .wp-block-columns>.wp-block-column{align-self:flex-start!important}
  .xc-hero:not(.xc-release-hero) .xc-hero-art{margin-top:0!important}
  .xc-hero:not(.xc-release-hero) .wp-block-column>.xc-badges:first-child{margin-top:0!important}
}

/* Signup row layout: email + phone side by side (Home hero) */
.xc-signup .xc-fields{display:flex;flex-direction:column;gap:10px}
.xc-signup .xc-f{display:flex;flex-direction:column;gap:10px;min-width:0}
.xc-signup .xc-f .xc-lbl-phone{margin-top:6px}
.xc-signup.is-row{max-width:none!important;width:100%}
.xc-signup.is-row .xc-sms-consent{max-width:72em}
@media (min-width:782px){
  .xc-signup.is-row .xc-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px 24px;align-items:end}
  .xc-signup.is-row .xc-f .xc-lbl-phone{margin-top:0}
}
.xc-hero-signup{margin-top:clamp(40px,5vw,64px)!important;padding-top:clamp(28px,3.5vw,40px);border-top:1px solid var(--xc-line)}

/* Signup row v2: Subscribe sits right of the phone box; disclaimers grouped beneath */
.xc-signup.is-row .xc-tel{grid-template-columns:116px minmax(0,1fr) auto}
.xc-signup.is-row .xc-tel .xc-submit{margin-top:0;align-self:stretch;white-space:nowrap}
.xc-signup.is-row .xc-sms-consent{margin-top:4px!important}
.xc-signup.is-row .xc-sms-consent+.xc-hp+.xc-fine,.xc-signup.is-row .xc-sms-consent+.xc-fine{margin-top:-4px!important;font-size:12px!important;line-height:17px!important}
@media (max-width:460px){.xc-signup.is-row .xc-tel{grid-template-columns:96px minmax(0,1fr)}.xc-signup.is-row .xc-tel .xc-submit{grid-column:1/-1}}

/* Signup spacing v3: neutralise wpautop paragraphs inside the form, tighter rhythm */
.xc-signup p:empty{display:none!important;margin:0!important}
.xc-signup p:not(.xc-fine){margin:0!important}
.xc-signup p:not(.xc-fine):has(>.xc-submit),.xc-signup p:not(.xc-fine):has(>button){display:contents}
.xc-signup.has-phone .xc-fields{gap:14px}
.xc-signup .xc-f{gap:8px}
.xc-signup .xc-f .xc-lbl-phone{margin-top:0}
.xc-signup.has-phone{gap:12px}
.xc-signup.has-phone:not(.is-row) .xc-submit{margin-top:4px}

/* Product description always open (no dropdown) */
.single-product__accordion.is-open .single-product__accordion__item{border:0!important;border-top:1px solid var(--xc-line)!important;border-radius:0!important;overflow:visible!important;padding-top:20px}
.single-product__accordion.is-open .single-product__accordion__content{max-height:none!important;overflow:visible!important;padding:0!important;transition:none!important}
.single-product__accordion.is-open .single-product__accordion__content>p{padding:0!important;margin:0!important}
.single-product__desc-label{font-family:var(--xc-narrow)!important;font-size:12px!important;line-height:14px!important;font-weight:700!important;letter-spacing:.1em!important;text-transform:uppercase!important;color:var(--xc-muted)!important;margin:0 0 12px!important}

/* Policy pages */
.xc-policy{max-width:44em}
.xc-policy h2,.xc-policy h3,.xc-policy-heading{font-family:var(--wp--preset--font-family--sans,inherit)!important;text-transform:none!important;font-size:20px!important;line-height:28px!important;letter-spacing:0!important;margin:32px 0 8px!important}
.xc-policy-heading{font-family:'ATP Casualte',var(--xc-narrow),Impact,sans-serif!important;text-transform:uppercase!important;font-size:clamp(26px,3vw,36px)!important;line-height:1!important;margin-top:48px!important}
.xc-policy p,.xc-policy li{font-size:16px;line-height:1.65}
.xc-policy a{color:var(--xc-accent)}

/* Consent banner */
.xc-consent{position:fixed;left:16px;right:16px;bottom:16px;z-index:9999;max-width:980px;margin:0 auto;background:var(--wp--preset--color--surface,#1f1708);color:var(--xc-ink);border:1px solid var(--xc-line-strong);border-radius:calc(var(--xc-radius) + 6px);box-shadow:0 12px 40px rgba(0,0,0,.55);padding:20px 22px;font-size:14px;line-height:20px}
.xc-consent[hidden]{display:none}
.xc-consent__inner{display:flex;gap:16px 28px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.xc-consent__text{flex:1 1 380px;min-width:0}
.xc-consent__text p{margin:0!important}
.xc-consent__title{font-family:var(--xc-narrow);font-weight:700;font-size:12px!important;letter-spacing:.1em;text-transform:uppercase;color:var(--xc-muted);margin-bottom:6px!important}
.xc-consent a{color:var(--xc-accent);text-decoration:underline;text-underline-offset:3px}
.xc-consent__actions{display:flex;gap:8px;flex-wrap:wrap}
.xc-c-btn{min-height:44px;padding:0 18px;border-radius:var(--xc-radius);font-family:var(--xc-narrow);font-weight:700;font-size:13px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border:2px solid var(--xc-accent);background:var(--xc-accent);color:var(--xc-char)}
.xc-c-btn:hover{background:var(--xc-bright);border-color:var(--xc-bright)}
.xc-c-ghost{background:transparent;color:var(--xc-ink);border-color:var(--xc-line-strong)}
.xc-c-ghost:hover{background:transparent;border-color:var(--xc-ink)}
.xc-c-btn:focus-visible{outline:2px solid var(--xc-ink);outline-offset:2px}
.xc-consent__prefs{margin-top:16px;padding-top:16px;border-top:1px solid var(--xc-line)}
.xc-consent__prefs fieldset{border:0;margin:0 0 14px;padding:0;display:grid;gap:8px}
.xc-c-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 12px;border:1px solid var(--xc-line);border-radius:var(--xc-radius);cursor:pointer}
.xc-c-row span{display:flex;flex-direction:column;gap:2px}
.xc-c-row em{font-style:normal;color:var(--xc-muted);font-size:13px}
.xc-c-row input{appearance:none;-webkit-appearance:none;flex:0 0 auto;width:44px;height:24px;border-radius:999px;background:var(--xc-sunken);border:2px solid var(--xc-line-strong);position:relative;cursor:pointer;transition:background .15s}
.xc-c-row input::after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--xc-muted);transition:transform .15s,background .15s}
.xc-c-row input:checked{background:var(--xc-accent);border-color:var(--xc-accent)}
.xc-c-row input:checked::after{transform:translateX(20px);background:var(--xc-char)}
.xc-c-row input:focus-visible{outline:2px solid var(--xc-ink);outline-offset:2px}
.xc-c-row.is-locked{opacity:.75;cursor:default}
@media (max-width:640px){.xc-consent{left:8px;right:8px;bottom:8px;padding:16px}.xc-consent__actions{width:100%}.xc-consent__inner .xc-consent__actions .xc-c-btn{flex:1 1 auto}}
/* Stripe band v2: one solid text box, real line height, phone-friendly size */
.is-style-xc-stripe{padding:14px 16px!important;min-height:64px}
.is-style-xc-stripe>p{display:block;max-width:min(100%,960px);line-height:1.15!important;padding:10px 18px!important;font-size:clamp(18px,4.6vw,28px)!important;position:relative;z-index:1;border-radius:var(--xc-radius);text-wrap:balance}
.is-style-xc-stripe>p a{display:inline;background:transparent!important;padding:0!important;font-size:inherit!important;line-height:inherit!important;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.is-style-xc-stripe>p:has(a:hover){background:var(--xc-bright)}
.is-style-xc-stripe>p:has(a:focus-visible){outline:2px solid var(--xc-char);outline-offset:3px}
@media (max-width:600px){.is-style-xc-stripe{padding:12px!important}.is-style-xc-stripe>p{padding:10px 14px!important}}

/* Sticky header v2: stick the template-part wrapper (the inner group cannot move inside an equal-height parent); clip instead of hidden so sticky works */
html,body{overflow-x:clip}
body{overflow-x:clip!important}
.wp-site-blocks>header.wp-block-template-part,body>.wp-site-blocks>header{position:sticky;top:0;z-index:40;margin-block-start:0}
.admin-bar .wp-site-blocks>header.wp-block-template-part{top:32px}
@media (max-width:782px){.admin-bar .wp-site-blocks>header.wp-block-template-part{top:46px}}
@media (max-width:600px){.admin-bar .wp-site-blocks>header.wp-block-template-part{top:0}}
.wp-site-blocks>header .xc-header{position:relative;top:auto}
.xc-header{transition:box-shadow .25s cubic-bezier(.2,.7,.2,1)}
.xc-header.is-scrolled{box-shadow:0 10px 24px -12px rgba(0,0,0,.75)}
