/* Brixene — black and mustard ticket storefront */
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700&family=Barlow:wght@400;600;700&display=swap');
:root {
    --bx-sans: "Barlow", "Helvetica Neue", sans-serif;
    --bx-cond: "Barlow Condensed", "Arial Narrow", sans-serif;
    --bx-black: #141414;
    --bx-mustard: #e2b33c;
    --bx-cream: #f3efe4;
    --bx-max: 1120px;
}
body.brixene-theme { margin: 0; font-family: var(--bx-sans); color: var(--bx-black); background: var(--bx-cream); }
body.brixene-theme * { box-sizing: border-box; }
body.brixene-theme a { color: inherit; text-decoration: none; }
body.brixene-theme img { max-width: 100%; display: block; }
body.brixene-theme .container-wide { width: min(var(--bx-max), 100% - 32px); margin: 0 auto; }
body.brixene-theme .bx-header { background: var(--bx-black); color: #fff; display: flex; align-items: center; gap: 22px; padding: 0 22px; min-height: 72px; }
body.brixene-theme .bx-wordmark { font-family: var(--bx-cond); font-size: 34px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--bx-mustard); }
body.brixene-theme .bx-nav { display: flex; gap: 18px; flex: 1; }
body.brixene-theme .bx-nav a { font-family: var(--bx-cond); letter-spacing: 0.12em; text-transform: uppercase; font-size: 18px; color: #fff; }
body.brixene-theme .bx-nav a.active { color: var(--bx-mustard); }
body.brixene-theme .bx-search input { background: #2a2a2a; border: 0; color: #fff; padding: 8px 12px; font: inherit; width: 160px; }
body.brixene-theme .bx-cart { background: var(--bx-mustard); color: var(--bx-black); border: 0; font-family: var(--bx-cond); letter-spacing: 0.08em; text-transform: uppercase; font-size: 18px; padding: 8px 14px; cursor: pointer; }
body.brixene-theme .menu-toggle { display: none; background: none; border: 0; color: #fff; }
body.brixene-theme .bx-stripe { background: var(--bx-mustard); color: var(--bx-black); text-align: center; font-family: var(--bx-cond); letter-spacing: 0.18em; text-transform: uppercase; padding: 7px; }
body.brixene-theme .bx-hero { display: grid; grid-template-columns: 1.2fr 0.8fr; margin: 28px auto; width: min(var(--bx-max), 100% - 32px); border: 3px solid var(--bx-black); }
body.brixene-theme .bx-hero-copy { padding: 56px 40px; background: #fff; }
body.brixene-theme .bx-hero h1 { font-family: var(--bx-cond); font-size: clamp(64px, 8vw, 96px); line-height: 0.85; letter-spacing: 0.02em; text-transform: uppercase; margin: 0 0 12px; }
body.brixene-theme .bx-hero p { font-size: 18px; max-width: 380px; }
body.brixene-theme .bx-stub { background: var(--bx-black); color: var(--bx-mustard); padding: 36px 28px; display: flex; flex-direction: column; justify-content: flex-end; font-family: var(--bx-cond); letter-spacing: 0.08em; text-transform: uppercase; font-size: 28px; }
body.brixene-theme .bx-btn { display: inline-flex; background: var(--bx-black); color: var(--bx-mustard); padding: 12px 16px; font-family: var(--bx-cond); letter-spacing: 0.12em; text-transform: uppercase; font-size: 18px; }
body.brixene-theme .collection-layout { display: block !important; width: 100%; }
body.brixene-theme .filter-panel { display: none !important; }
body.brixene-theme .product-grid { display: grid !important; grid-template-columns: repeat(3, minmax(0,1fr)) !important; gap: 16px !important; width: 100%; }
body.brixene-theme .product-price { color: #8a6a12; font-weight: 700; }
body.brixene-theme .page-title-bar h1 { font-family: var(--bx-cond); text-transform: uppercase; letter-spacing: 0.06em; }
body.brixene-theme .bx-footer { background: var(--bx-black); color: #ddd; padding: 40px 22px 18px; }
body.brixene-theme .bx-footer-grid { max-width: var(--bx-max); margin: 0 auto; display: grid; grid-template-columns: repeat(4,1fr); gap: 18px; }
body.brixene-theme .bx-footer-grid h4 { color: var(--bx-mustard); font-family: var(--bx-cond); letter-spacing: 0.1em; text-transform: uppercase; margin: 0 0 10px; font-size: 18px; }
body.brixene-theme .bx-footer-grid a, body.brixene-theme .bx-footer-grid p { display: block; color: #cfcfcf; margin: 0 0 8px; font-size: 14px; }
body.brixene-theme .bx-footer-bottom { max-width: var(--bx-max); margin: 16px auto 0; padding-top: 12px; border-top: 1px solid #333; font-size: 12px; letter-spacing: 0.08em; text-transform: uppercase; }
body.brixene-theme .btn-shop, body.brixene-theme .add-to-cart-btn { background: var(--bx-black) !important; color: var(--bx-mustard) !important; border-radius: 0 !important; }
@media (max-width: 800px) {
    body.brixene-theme .bx-nav, body.brixene-theme .bx-search { display: none; }
    body.brixene-theme .menu-toggle { display: inline-flex; }
    body.brixene-theme .bx-hero, body.brixene-theme .bx-footer-grid { grid-template-columns: 1fr; }
    body.brixene-theme .product-grid { grid-template-columns: 1fr 1fr !important; }
}
