/* Shared Hub structure and commerce components. */
.tk-drawer[hidden], .tk-drawer-backdrop[hidden] { display:none!important; }
.woocommerce-notices-wrapper:has(.woocommerce-error), .woocommerce-error, .wc-block-components-notice-banner.is-error { display:block!important; }
.tk-video-wall .tk-reveal, .tk-catalogue .tk-reveal, footer .tk-reveal { opacity:1; transform:none; clip-path:none; }
.tk-header--refined { padding: .85rem 1.5rem; background: rgba(10,10,12,.92); }
.tk-header__inner { display:flex; align-items:center; gap:clamp(1rem,3vw,3rem); max-width:1280px; margin:auto; }
.tk-header__inner .tk-brand { flex:none; }
.tk-primary-nav { display:flex; align-items:center; justify-content:center; gap:clamp(1rem,2vw,1.8rem); margin-left:auto; }
.tk-primary-nav a { font-size:.76rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; text-decoration:none; white-space:nowrap; padding:.75rem 0; }
.tk-primary-nav a[aria-current] { color:var(--wp--preset--color--gold); box-shadow:0 2px currentColor; }
.tk-header-actions { display:flex; align-items:center; gap:.35rem; padding-left:.75rem; border-left:1px solid #333; }
.tk-header-actions a,.tk-header-actions button { display:inline-flex; align-items:center; justify-content:center; position:relative; inset:auto; z-index:auto; width:42px; height:42px; padding:9px; border:0; border-radius:0; color:var(--wp--preset--color--contrast); background:transparent; box-shadow:none; cursor:pointer; }
.tk-header-actions svg,.tk-menu-toggle svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.6; }
.tk-header-actions .tk-basket__count { position:absolute; right:0; top:0; min-width:15px; height:15px; font-size:.62rem; line-height:15px; color:#111; background:var(--wp--preset--color--gold); border-radius:50%; }
.tk-menu-toggle { display:none; }
.tk-header-cart:hover,.tk-header-account:hover { color:var(--wp--preset--color--gold); transform:none; }
.tk-size-picker { border:0; margin:1.75rem 0; padding:0; display:flex; flex-wrap:wrap; gap:.6rem; }
.tk-size-picker legend { margin-bottom:.7rem; font-size:.9rem; font-weight:700; }
.tk-size-picker label { position:relative; cursor:pointer; }
.tk-size-picker input { position:absolute; opacity:0; width:1px; height:1px; }
.tk-size-picker span { display:flex; align-items:center; justify-content:center; min-width:48px; min-height:46px; padding:.4rem .7rem; border:1px solid #57575d; font-weight:700; font-size:.85rem; }
.tk-size-picker input:checked+span { border-color:var(--wp--preset--color--gold); background:var(--wp--preset--color--gold); color:#111; }
.tk-size-picker input:focus-visible+span { outline:2px solid var(--wp--preset--color--contrast); outline-offset:4px; }
.tk-size-picker input:disabled+span { opacity:.35; text-decoration:line-through; cursor:not-allowed; }
form.variations_form table[hidden] { display:none; }
.woocommerce ul.products,.woocommerce ul.products:has(>li.product:only-child) { grid-template-columns:repeat(4,minmax(0,1fr)); justify-content:start; gap:1.5rem; }
.woocommerce ul.products li.product { padding:0 0 1rem; background:transparent; }
.woocommerce ul.products li.product:hover { transform:none; box-shadow:none; }
.woocommerce ul.products li.product a img { width:100%; aspect-ratio:1/1; object-fit:contain; background:#e8e7e3; margin:0 0 .9rem; max-height:320px; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-size:1.2rem; line-height:1.3; padding:.2rem 0 .4rem; }
.woocommerce ul.products li.product .price { margin-bottom:.45rem; font-size:1rem; }
.woocommerce ul.products li.product .button { margin-top:.6rem; padding:.7rem 1rem!important; font-size:.7rem!important; }
.tk-product-options { color:var(--wp--preset--color--muted); font-size:.8rem; margin:.3rem 0; }
.tk-store-switcher { margin-bottom:1.5rem; padding-bottom:1.25rem; border-bottom:1px solid #303036; gap:1.8rem; }
.tk-store-switcher a { padding:.5rem 0!important; border:0; border-bottom:2px solid transparent; background:none!important; border-radius:0; }
.tk-store-switcher a[aria-current] { border-color:var(--wp--preset--color--gold); }
.tk-shop-head { display:flex; justify-content:space-between; align-items:flex-end; gap:2rem; margin:2rem 0; }
.tk-shop-head h1 { font-size:clamp(2.3rem,5vw,4rem); margin:.4rem 0 .6rem; }
.tk-shop-head p { margin:.35rem 0; max-width:600px; }
.tk-shop-head__logo { width:90px; height:120px; object-fit:contain; flex:none; }
.tk-shop-intro { color:var(--wp--preset--color--muted); font-size:.95rem; }
.tk-shop-policies { display:flex; flex-wrap:wrap; gap:.75rem 2rem; border-block:1px solid #303036; margin:2.5rem 0 1.5rem; padding:1rem 0; color:var(--wp--preset--color--muted); font-size:.8rem; }
.single-product h1.wp-block-post-title { font-size:clamp(2rem,4vw,3.25rem); line-height:1.1; }
.single-product .wc-block-components-product-summary p { margin:0 0 .8rem; }
.single-product .woocommerce-product-gallery { max-width:560px; }
.single-product .flex-control-thumbs li { width:68px!important; }
.single-product .flex-control-thumbs { display:flex; flex-wrap:wrap; gap:.5rem; margin-top:.5rem!important; }
.tk-page-intro { max-width:700px; color:var(--wp--preset--color--muted); font-size:1rem; }
.tk-channel-doors { display:grid; grid-template-columns:1fr 1fr; gap:1.5rem; margin:2rem 0; }
.tk-channel-door { display:flex; flex-direction:column; align-items:flex-start; gap:.35rem; padding:1.75rem; border:1px solid #383228; border-top:3px solid var(--wp--preset--color--gold); background:#17150f; text-decoration:none; background-image:none!important; transition:background .2s ease; }
.tk-channel-door--hubxtra { border-color:#a8d7ff; background:#111c26; }
.tk-channel-door h2,.tk-channel-door h3 { margin:.3rem 0 .7rem; font-size:2rem; }
.tk-channel-door p { color:#b8b5ad; margin:.5rem 0; font-size:.9rem; }
.tk-channel-door>span { font-size:.8rem; color:var(--wp--preset--color--gold); }
.tk-channel-door--hubxtra>span { color:#a8d7ff; }
.tk-channel-door .tk-channel-door__eyebrow { font-size:.65rem; letter-spacing:.12em; text-transform:uppercase; }
.tk-channel-door .tk-channel-door__cta { margin-top:auto; padding-top:1.25rem; font-weight:600; }
.tk-channel-door:hover { background:#211e16; }
.tk-channel-door--hubxtra:hover { background:#162736; }
.tk-channel-door:focus-visible,.tk-store-link:focus-visible { outline:2px solid var(--wp--preset--color--gold); outline-offset:5px; }
.tk-channel-section { margin-top:3rem; padding-top:1.5rem; border-top:2px solid var(--wp--preset--color--gold); }
.tk-channel-section--hubxtra { border-color:#a8d7ff; }
.tk-channel-section__head { display:flex; align-items:baseline; gap:1rem; justify-content:space-between; margin-bottom:1.5rem; }
.tk-channel-section__head h2 { margin:0; font-size:2.2rem; }
.tk-channel-section__head p { margin:.7rem 0 0; font-size:.9rem; color:var(--wp--preset--color--muted); }
.tk-video-library>.tk-video-card--hero { max-width:980px; }
.tk-channel-section .tk-video-card--hero .tk-video-thumb { aspect-ratio:16/9; }
.tk-channel-section .tk-video-info { position:static!important; padding:1rem 0!important; background:none!important; }
.tk-channel-section .tk-video-wall { margin-top:1.5rem; }
.tk-channel-section .tk-video-title { font-size:clamp(1.15rem,2.5vw,1.7rem); }
.tk-channel-section .tk-video-card--hero .tk-play { width:68px; height:68px; }
.tk-store-links { display:grid; grid-template-columns:1fr 1fr; gap:1.5rem; }
.tk-store-link { display:flex; align-items:center; gap:1.5rem; padding:1.25rem; border:1px solid #34343b; background:#121214; text-decoration:none; background-image:none!important; transition:border-color .2s ease; }
.tk-store-link:hover { border-color:var(--wp--preset--color--gold); }
.tk-store-link img { flex:none; display:block; width:clamp(100px,12vw,160px); aspect-ratio:1; height:auto; object-fit:contain; background:#e8e7e3; }
.tk-store-link h3 { margin:0 0 .4rem; font-size:1.5rem; }
.tk-store-link p { margin:0; font-size:.85rem; color:var(--wp--preset--color--muted); }
.tk-store-link__eyebrow { display:block; margin-bottom:.75rem; color:var(--wp--preset--color--muted); font-size:.6rem; text-transform:uppercase; letter-spacing:.14em; }
.tk-store-link__cta { display:block; font-size:.8rem; margin-top:1rem; color:var(--wp--preset--color--gold); }
.single-tk_artist .wp-block-post-featured-image img { height:auto; max-height:620px; object-fit:contain; object-position:top; }
.tk-artist-role { color:var(--wp--preset--color--gold); font-size:.85rem; letter-spacing:.08em; text-transform:uppercase; }
@media(max-width:1100px) {
 .woocommerce ul.products,.woocommerce ul.products:has(>li.product:only-child) { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .tk-header__inner { gap:1rem; }
 .tk-primary-nav { gap:1rem; }
 .tk-primary-nav a { font-size:.7rem; }
 .tk-header-actions { padding-left:.4rem; }
}
@media(max-width:800px) {
 .tk-header--refined { padding:.65rem 1rem; }
 .tk-header__inner { flex-wrap:wrap; gap:.5rem; }
 .tk-menu-toggle { display:flex; align-items:center; gap:.4rem; margin-left:auto; color:inherit; border:0; background:none; padding:.5rem; min-height:44px; font-size:.75rem; }
 .tk-primary-nav { display:none; order:4; width:100%; margin:0; padding:.75rem 0; border-top:1px solid #333; }
 .tk-primary-nav.is-open { display:grid; grid-template-columns:1fr 1fr; gap:.3rem 1rem; }
 .tk-primary-nav a { font-size:.85rem; padding:.75rem; }
 .tk-header-actions { margin-left:.2rem; }
 .woocommerce ul.products,.woocommerce ul.products:has(>li.product:only-child) { grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
 .tk-shop-head { align-items:flex-start; }
 .tk-channel-doors,.tk-store-links { gap:1rem; }
}
@media(max-width:520px) {
 .tk-brand__logo { width:92px; height:42px; }
 .tk-header-actions a,.tk-header-actions button { width:38px; height:42px; }
 .woocommerce ul.products li.product a img { max-height:220px; }
 .woocommerce ul.products li.product .woocommerce-loop-product__title { font-size:1rem; }
 .woocommerce ul.products li.product .button { font-size:.6rem!important; letter-spacing:.06em!important; padding:.7rem .65rem!important; }
 .tk-shop-head__logo { width:65px; height:95px; }
 .tk-shop-head { gap:1rem; }
 .tk-channel-doors,.tk-store-links { grid-template-columns:1fr; }
 .tk-channel-door { padding:1.25rem; }
 .tk-channel-section__head { align-items:flex-start; flex-direction:column; }
}

.tk-product-brand { color:var(--wp--preset--color--muted); font-size:.68rem; text-transform:uppercase; letter-spacing:.12em; }
.tk-catalogue-count { font-size:.8rem; color:var(--wp--preset--color--muted); margin-bottom:1.2rem; }

body.home .tk-cinema { min-height:560px; height:72vh; max-height:800px; }
.tk-release-strip .wp-block-post-template>li { flex-basis:clamp(230px,25vw,320px); }
@media(max-width:520px) { body.home .tk-cinema { min-height:480px; height:66vh; } }

.tk-cart-error { color:#ffc2b5; font-size:.85rem; margin:0 1.5rem; }
.tk-cart-error:empty { display:none; }

.tk-catalogue ul.products li.product { display:flex; flex-direction:column; align-items:flex-start; }
.tk-catalogue ul.products li.product>a.woocommerce-LoopProduct-link { width:100%; }
.tk-catalogue ul.products li.product .woocommerce-loop-product__title { min-height:2.6em; }
.tk-catalogue ul.products li.product .button { margin-top:auto; }
.tk-catalogue .tk-product-options { margin-bottom:1rem; }

.tk-haze--footer { padding-top:3rem!important; }
.tk-footer-grid { margin-top:2.5rem; gap:2rem; }
.tk-footer-logo { width:220px; }
.tk-footer-nav a { font-size:1.2rem; }
.tk-footer-nav__no { display:none; }

/* Portrait-led collective, with names and roles always visible. */
.tk-artist-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:2rem 1.5rem; list-style:none; padding:0; margin:2rem 0 0; }
.tk-artist-card { min-width:0; margin:0; }
.tk-artist-card>a { display:flex; height:100%; flex-direction:column; text-decoration:none; background-image:none!important; border-bottom:1px solid #34343b; }
.tk-artist-card__portrait { position:relative; overflow:hidden; aspect-ratio:4/5; background:#18181c; }
.tk-artist-card__portrait img { display:block; width:100%; height:100%; object-fit:cover; object-position:50% 38%; filter:saturate(.85); transition:transform .3s ease,filter .3s ease; }
.tk-artist-card__arrow { display:flex; align-items:center; justify-content:center; position:absolute; bottom:.8rem; right:.8rem; width:34px; height:34px; background:#0a0a0ce6; color:#f4f1e8; border:1px solid #ffffff50; border-radius:50%; font-size:1.2rem; transition:background .2s ease,color .2s ease; }
.tk-artist-card__body { padding:1rem 0 1.15rem; }
.tk-artist-card h2 { margin:0 0 .55rem; color:var(--wp--preset--color--contrast); font-size:clamp(1.4rem,2.5vw,2rem); line-height:1.12; overflow-wrap:anywhere; opacity:1!important; transform:none!important; clip-path:none!important; }
.tk-artist-card p { margin:0; color:var(--wp--preset--color--muted); font-size:.75rem; line-height:1.5; }
.tk-artist-card>a:hover,.tk-artist-card>a:focus-visible { border-color:var(--wp--preset--color--gold); }
.tk-artist-card>a:hover img,.tk-artist-card>a:focus-visible img { transform:scale(1.025); filter:saturate(1); }
.tk-artist-card>a:hover .tk-artist-card__arrow,.tk-artist-card>a:focus-visible .tk-artist-card__arrow { background:var(--wp--preset--color--gold); color:#0a0a0c; }
.tk-artist-card>a:focus-visible { outline:2px solid var(--wp--preset--color--gold); outline-offset:5px; }
.tk-artist-card__monogram { display:grid; place-items:center; height:100%; font:6rem var(--wp--preset--font-family--anton); color:var(--wp--preset--color--gold); }
.tk-collective__next { margin-top:2.5rem; padding-top:1.25rem; border-top:1px solid #34343b; font-size:.85rem; color:var(--wp--preset--color--muted); }
@media(max-width:1100px) { .tk-artist-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:700px) {
 .tk-artist-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.5rem 1rem; }
 .tk-artist-card h2 { font-size:1.4rem; }
 .tk-artist-card__body { padding:.8rem 0 1rem; }
 .tk-artist-card__arrow { bottom:.5rem; right:.5rem; width:30px; height:30px; }
}
@media(prefers-reduced-motion:reduce) { .tk-artist-card__portrait img,.tk-artist-card__arrow { transition:none; } }
