@import url('https://fonts.googleapis.com/css2?family=Alfa+Slab+One&family=Anton&family=Archivo+Narrow:wght@400;700&family=Baloo+2:wght@700;800&family=Bangers&family=Barlow+Condensed:wght@700;900&family=Bebas+Neue&family=Black+Ops+One&family=Chakra+Petch:wght@700&family=Chewy&family=Fredoka:wght@700&family=Graduate&family=Kanit:wght@700;900&family=League+Gothic&family=Luckiest+Guy&family=Orbitron:wght@700;900&family=Oswald:wght@700&family=Oxanium:wght@700;800&family=Permanent+Marker&family=Rajdhani:wght@700&family=Roboto+Condensed:wght@700;900&family=Russo+One&family=Special+Elite&family=Staatliches&family=Teko:wght@700&display=swap');
:root{
    --bg:#05080d;
    --bg-2:#090d15;
    --panel:#10151f;
    --panel-2:#151a24;
    --border:#232a38;
    --border-soft:#1a2130;
    --text:#ffffff;
    --muted:#a8afbd;
    --soft:#d9dce4;
    --accent:#6b5cff;
    --accent-2:#8b6dff;
    --accent-dark:#3827d9;
    --shadow:0 24px 80px rgba(0,0,0,.48);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    margin:0;
    min-height:100vh;
    color:var(--text);
    background:
        radial-gradient(circle at 68% 8%, rgba(86,92,132,.24), transparent 34%),
        radial-gradient(circle at 15% 35%, rgba(91,92,240,.12), transparent 28%),
        linear-gradient(180deg,#070b12 0%,#03060a 100%);
    font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    overflow-x:hidden;
}
body:before{
    content:"";
    position:fixed;
    inset:0;
    pointer-events:none;
    background:
        linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),
        linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px);
    background-size:120px 120px;
    mask-image:linear-gradient(to bottom,rgba(0,0,0,.85),transparent 75%);
}
a{color:inherit;text-decoration:none}
.site-shell{
    width:min(1540px,100%);
    margin:0 auto;
    min-height:100vh;
    border-left:1px solid rgba(255,255,255,.05);
    border-right:1px solid rgba(255,255,255,.05);
    position:relative;
}
.nav{
    width:min(1320px,calc(100% - 48px));
    margin:0 auto;
    padding:22px 0;
    display:flex;
    align-items:center;
    gap:28px;
    position:relative;
    z-index:5;
}
.logo{
    display:inline-block;
    font-weight:900;
    line-height:.82;
    letter-spacing:-.05em;
    border:3px solid #fff;
    border-radius:8px;
    padding:8px 9px 10px;
    font-size:18px;
    box-shadow:0 0 0 1px rgba(255,255,255,.12),0 14px 40px rgba(0,0,0,.28);
    position:relative;
}
.logo:after{
    content:"";
    position:absolute;
    right:16px;
    bottom:-10px;
    width:16px;
    height:16px;
    background:var(--bg);
    border-right:3px solid #fff;
    border-bottom:3px solid #fff;
    transform:rotate(45deg);
}
.nav-links{
    margin-left:auto;
    display:flex;
    align-items:center;
    gap:2px;
    padding:8px;
    background:rgba(10,14,22,.72);
    border:1px solid var(--border-soft);
    border-radius:24px;
    backdrop-filter:blur(18px);
}
.nav-links a{padding:13px 18px;color:#f2f4f8;font-weight:800;font-size:14px;border-radius:16px}
.nav-links a:hover{background:rgba(255,255,255,.06)}
.nav-dot,.chev{color:var(--muted);font-weight:900}
.nav-actions{display:flex;align-items:center;gap:12px}
.icon-btn,.cart-btn{
    width:50px;height:50px;border-radius:16px;border:1px solid var(--border-soft);
    display:grid;place-items:center;background:rgba(10,14,22,.72);font-size:24px;font-weight:900;
}
.cart-btn{font-size:17px;position:relative}
.cart-btn span{
    position:absolute;right:8px;top:4px;background:var(--accent);font-size:10px;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;
}
.btn{
    display:inline-flex;align-items:center;justify-content:center;gap:12px;
    min-height:54px;padding:0 28px;border-radius:16px;
    border:1px solid rgba(139,109,255,.75);
    color:#fff;font-weight:900;
    background:linear-gradient(180deg,#7b68ff 0%,#5238ff 100%);
    box-shadow:0 16px 42px rgba(88,63,255,.34),inset 0 1px 0 rgba(255,255,255,.22);
    transition:.2s ease;
}
.btn:hover{transform:translateY(-2px);filter:brightness(1.08)}
.btn-small{min-height:54px;padding:0 30px}
.btn.ghost{background:rgba(8,12,18,.58);border-color:#3a4252;box-shadow:none;color:#f4f6fb}
.hero{
    width:min(1320px,calc(100% - 48px));
    margin:0 auto;
    min-height:650px;
    padding:56px 0 54px;
    display:grid;
    grid-template-columns:minmax(420px,560px) minmax(0,1fr);
    gap:48px;
    align-items:center;
    position:relative;
    overflow:hidden;
    border-radius:0 0 34px 34px;
}
.hero:before{
    content:"";
    position:absolute;
    inset:0 -58px 0 28%;
    background:
        linear-gradient(90deg,rgba(5,8,13,.98) 0%,rgba(5,8,13,.62) 22%,rgba(5,8,13,.08) 48%,rgba(5,8,13,.74) 100%),
        linear-gradient(180deg,rgba(5,8,13,.08),rgba(5,8,13,.22)),
        url('../img/homepage_main_image.webp') center right / cover no-repeat;
    z-index:-2;
    border-radius:30px;
    box-shadow:inset 0 0 110px rgba(0,0,0,.72);
}
.hero:after{
    content:"";
    position:absolute;
    inset:0;
    background:
        radial-gradient(circle at 76% 38%,rgba(139,109,255,.10),transparent 26%),
        linear-gradient(90deg,rgba(5,8,13,.92) 0%,rgba(5,8,13,.48) 34%,transparent 58%);
    pointer-events:none;
    z-index:-1;
}
.hero-copy{
    position:relative;
    z-index:1;
}
.eyebrow{
    margin:0 0 10px;
    text-transform:uppercase;
    color:var(--accent-2);
    font-size:13px;
    font-weight:900;
    letter-spacing:.09em;
}
.pill{
    display:inline-flex;align-items:center;gap:10px;
    padding:12px 18px;border:1px solid rgba(107,92,255,.38);border-radius:999px;
    background:rgba(91,92,240,.08);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.hero h1,.page-head h1{
    margin:16px 0 18px;
    font-family:Inter,system-ui,sans-serif;
    font-size:clamp(64px,7.25vw,118px);
    line-height:.86;
    letter-spacing:-.075em;
    font-weight:900;
    color:#f8f8fb;
    text-shadow:0 4px 0 rgba(255,255,255,.08),0 18px 60px rgba(0,0,0,.8);
}
.lead{margin:0;color:#d2d6df;font-size:20px;line-height:1.45;font-weight:500}
.actions{display:flex;gap:20px;flex-wrap:wrap;margin-top:28px}
.social-proof{margin-top:30px;display:flex;align-items:center;gap:14px;color:#f6f1e6;font-weight:700}
.social-proof strong{color:#ffbf24;letter-spacing:2px}.social-proof span{color:#e9edf5}
.avatars{display:flex}.avatars i{width:32px;height:32px;margin-right:-9px;border:2px solid #10141d;border-radius:50%;background:linear-gradient(135deg,#f2c49a,#583a2b 55%,#111)}
.avatars i:nth-child(2){background:linear-gradient(135deg,#d6e4ff,#765443 55%,#1a1d24)}
.avatars i:nth-child(3){background:linear-gradient(135deg,#f2b1a5,#564945 55%,#10131a)}
.avatars i:nth-child(4){background:linear-gradient(135deg,#d7dce8,#98745d 55%,#151820)}
.section{width:min(1320px,calc(100% - 48px));margin:0 auto;padding:34px 0}.category-panel,.popular-panel{border:1px solid var(--border);border-radius:28px;background:linear-gradient(180deg,rgba(12,17,25,.82),rgba(7,10,15,.58));box-shadow:var(--shadow);padding:28px 30px;margin-top:10px;backdrop-filter:blur(16px)}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px}.section h2{margin:0;font-size:30px;line-height:1.1;letter-spacing:-.04em}.text-link{color:var(--accent-2);font-weight:900}.grid{display:grid;gap:16px}.cards{grid-template-columns:repeat(6,minmax(0,1fr))}.quotes{grid-template-columns:repeat(4,minmax(0,1fr))}.card,.quote-card{border:1px solid var(--border);background:linear-gradient(180deg,rgba(23,28,38,.98),rgba(12,16,23,.98));border-radius:16px;box-shadow:0 18px 40px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.04);transition:.2s ease}.card:hover,.quote-card:hover{transform:translateY(-4px);border-color:rgba(139,109,255,.7);box-shadow:0 22px 50px rgba(0,0,0,.42),0 0 0 1px rgba(107,92,255,.08)}
.category-card{min-height:170px;padding:20px}.category-card h3{margin:13px 0 12px;font-size:18px}.category-card p{margin:7px 0;color:#c2c8d4;font-size:13px}.category-card span{display:inline-block;margin-top:14px;color:var(--accent-2);font-size:14px;font-weight:900}.icon{width:62px;height:62px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 25%,rgba(139,109,255,.25),rgba(255,255,255,.04));border:1px solid rgba(255,255,255,.06);box-shadow:inset 0 0 24px rgba(107,92,255,.12);color:var(--accent-2);font-size:30px}.center{text-align:center;margin-top:18px}.popular-panel{margin-top:14px;margin-bottom:30px}.quote-card{min-height:190px;padding:18px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;position:relative}.quote-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 10%,rgba(255,255,255,.08),transparent 50%);opacity:.75}.quote-card strong{position:relative;font-family:'Bebas Neue',Impact,sans-serif;font-size:44px;line-height:.88;letter-spacing:.015em;color:#f4f4f4;text-shadow:0 3px 0 rgba(255,255,255,.08)}.quote-card span{position:relative;color:var(--muted);font-weight:800}.page-head,.product,.admin-form,.auth,.section:not(.category-panel):not(.popular-panel){max-width:1320px}.footer{width:min(1320px,calc(100% - 48px));margin:0 auto;padding:36px 0 54px;color:#747d8f;font-size:14px}
input,select,textarea{width:100%;background:#10131a;border:1px solid var(--border);border-radius:12px;color:#fff;padding:14px}textarea{min-height:110px}.admin-form,.auth form{display:grid;gap:14px;max-width:520px}.error{color:#ff8787}
@media(max-width:1100px){
    .hero{grid-template-columns:1fr;gap:10px;min-height:680px;align-items:start}
    .hero:before{inset:210px -90px 0 0;background-position:center bottom;background-size:cover}
    .hero:after{background:linear-gradient(180deg,rgba(5,8,13,.98) 0%,rgba(5,8,13,.78) 38%,rgba(5,8,13,.18) 100%)}
    .cards{grid-template-columns:repeat(3,1fr)}
    .quotes{grid-template-columns:repeat(2,1fr)}
    .nav-links{display:none}
}
@media(max-width:720px){
    .nav{width:calc(100% - 32px)}
    .nav-actions .icon-btn,.nav-actions .cart-btn{display:none}
    .hero,.section,.footer{width:calc(100% - 32px)}
    .hero{padding:24px 0 330px;min-height:0;border-radius:0 0 24px 24px}
    .hero:before{inset:300px -180px 0 -120px;background-position:center bottom;opacity:.86}
    .hero:after{background:linear-gradient(180deg,rgba(5,8,13,.98) 0%,rgba(5,8,13,.86) 50%,rgba(5,8,13,.25) 100%)}
    .hero h1{font-size:72px}
    .lead{font-size:17px}
    .actions{gap:12px}
    .btn{width:100%}
    .social-proof{align-items:flex-start;flex-direction:column;gap:8px}
    .category-panel,.popular-panel{padding:22px 18px;border-radius:24px}
    .cards,.quotes{grid-template-columns:1fr}
    .section-head{align-items:flex-start}
    .desktop-only{display:none}
    .quote-card strong{font-size:38px}
}

/* POD product previews */
.product-detail-grid{display:grid;grid-template-columns:minmax(320px,520px) 1fr;gap:24px;align-items:stretch}.product-preview-hero,.product-info-card{border:1px solid var(--border);border-radius:28px;background:linear-gradient(180deg,rgba(23,28,38,.98),rgba(10,14,21,.98));box-shadow:var(--shadow);padding:24px}.product-info-card h2{font-size:36px;margin:4px 0 12px;letter-spacing:-.04em}.product-info-card p{color:var(--muted);line-height:1.55}.pod-products-panel{border:1px solid var(--border);border-radius:28px;background:linear-gradient(180deg,rgba(12,17,25,.82),rgba(7,10,15,.58));box-shadow:var(--shadow);padding:28px 30px;margin-top:18px}.homepage-products{margin-bottom:14px}.pod-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.home-product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.pod-product-card{overflow:hidden;border:1px solid var(--border);border-radius:22px;background:linear-gradient(180deg,rgba(23,28,38,.98),rgba(10,14,21,.98));box-shadow:0 18px 44px rgba(0,0,0,.32);transition:.2s ease}.pod-product-card:hover{transform:translateY(-4px);border-color:rgba(139,109,255,.7)}.pod-product-mockup{display:block;padding:20px;min-height:280px;background:radial-gradient(circle at 50% 0,rgba(139,109,255,.2),transparent 48%),linear-gradient(180deg,#111722,#090d14)}.pod-mockup{min-height:245px;display:grid;place-items:center;position:relative}.pod-shirt-body{position:relative;width:190px;height:218px;border-radius:52px 52px 22px 22px;background:linear-gradient(90deg,#050608,#171a20 48%,#050608);box-shadow:inset 0 0 24px rgba(255,255,255,.04),0 30px 50px rgba(0,0,0,.45)}.pod-shirt-body:before,.pod-shirt-body:after{content:"";position:absolute;top:28px;width:52px;height:138px;background:linear-gradient(#12161e,#07090e);border-radius:28px;z-index:0}.pod-shirt-body:before{left:-42px;transform:rotate(13deg)}.pod-shirt-body:after{right:-42px;transform:rotate(-13deg)}.pod-type-hoodie .pod-shirt-body{height:228px;border-radius:68px 68px 24px 24px}.pod-type-hoodie .pod-shirt-body:before,.pod-type-hoodie .pod-shirt-body:after{top:52px}.pod-type-hoodie .pod-shirt-body:after{box-shadow:inset 0 34px 0 rgba(255,255,255,.035)}.pod-type-sweatshirt .pod-shirt-body{height:220px;border-radius:45px 45px 22px 22px}.pod-type-mug .pod-shirt-body{width:180px;height:150px;border-radius:22px 22px 38px 38px;background:linear-gradient(90deg,#e9ebf2,#ffffff 50%,#d0d5e1);box-shadow:0 28px 45px rgba(0,0,0,.38)}.pod-type-mug .pod-shirt-body:before{display:none}.pod-type-mug .pod-shirt-body:after{right:-48px;top:34px;width:54px;height:72px;border:15px solid #e4e7ef;border-left:0;background:transparent;border-radius:0 42px 42px 0;transform:none}.pod-type-mug .pod-quote-text{color:#0b0d12;text-shadow:none;top:48%;font-size:22px}.pod-type-sticker .pod-shirt-body{width:190px;height:145px;border-radius:28px;background:#f2f4fa;transform:rotate(-3deg)}.pod-type-sticker .pod-shirt-body:before,.pod-type-sticker .pod-shirt-body:after{display:none}.pod-type-sticker .pod-quote-text{color:#0b0d12;text-shadow:none;font-size:24px}.pod-quote-text{position:absolute;z-index:2;left:18px;right:18px;top:46%;transform:translateY(-50%);text-align:center;color:#f6f6f6;font-family:'Bebas Neue',Impact,sans-serif;font-size:28px;line-height:.9;letter-spacing:.02em;text-wrap:balance;word-break:normal;overflow-wrap:normal;hyphens:none;text-shadow:0 2px 0 rgba(255,255,255,.1)}.pod-product-meta{padding:18px}.pod-product-meta h3{margin:0 0 8px;font-size:18px;letter-spacing:-.02em}.pod-product-meta small{display:block;color:var(--muted);font-weight:800;margin-bottom:12px}.pod-price-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px}.pod-price-row strong{font-size:24px;letter-spacing:-.04em}.pod-price-row span,.pod-product-meta p{color:var(--muted);font-size:13px;font-weight:800}.pod-product-meta p{margin:10px 0 0}@media(max-width:1100px){.pod-product-grid,.home-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-detail-grid{grid-template-columns:1fr}}@media(max-width:720px){.pod-products-panel{padding:22px 18px}.pod-product-grid,.home-product-grid{grid-template-columns:1fr}.pod-product-mockup{min-height:250px}.pod-price-row{align-items:flex-start;flex-direction:column}}

/* Premium horizontal product preview section */
.shop-preview-panel{
    position:relative;
    overflow:hidden;
    border:1px solid var(--border);
    border-radius:28px;
    padding:30px 32px;
    margin-top:18px;
    margin-bottom:18px;
    background:
        radial-gradient(circle at 8% 8%,rgba(107,92,255,.18),transparent 28%),
        radial-gradient(circle at 100% 88%,rgba(139,109,255,.16),transparent 24%),
        linear-gradient(180deg,rgba(9,14,24,.94),rgba(5,8,13,.88));
    box-shadow:var(--shadow);
}
.shop-preview-bg{
    position:absolute;
    inset:0;
    pointer-events:none;
    background:
        linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),
        linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px);
    background-size:120px 120px;
    opacity:.38;
    mask-image:linear-gradient(to bottom,rgba(0,0,0,.9),transparent 95%);
}
.shop-preview-head,
.product-filter-pills,
.shop-preview-list{position:relative;z-index:1}
.shop-preview-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:18px}
.shop-preview-head h2{margin:8px 0 6px;font-size:clamp(32px,4vw,54px);line-height:1;letter-spacing:-.07em}
.shop-preview-head h2 span{color:var(--accent-2);text-shadow:0 0 32px rgba(139,109,255,.55)}
.shop-preview-subtitle{margin:0;color:var(--muted);font-size:18px;font-weight:600}
.mini-pill{font-size:12px;padding:9px 16px;margin-bottom:4px}
.discover-link{white-space:nowrap;font-size:18px}
.product-filter-pills{display:flex;flex-wrap:wrap;gap:14px;margin:16px 0 22px}
.product-filter-pill{display:inline-flex;align-items:center;gap:9px;padding:13px 18px;border:1px solid var(--border);border-radius:11px;background:rgba(18,24,36,.72);color:#e7eaf2;font-weight:800;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.product-filter-pill.active{background:linear-gradient(180deg,#7b68ff 0%,#5238ff 100%);border-color:rgba(139,109,255,.8);box-shadow:0 12px 34px rgba(88,63,255,.24)}
.shop-preview-list{display:grid;gap:16px}
.shop-preview-card{display:grid;grid-template-columns:300px 1fr 370px;min-height:214px;border:1px solid var(--border);border-radius:20px;background:linear-gradient(90deg,rgba(18,25,39,.92),rgba(8,12,22,.96));box-shadow:0 20px 48px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,255,255,.04);overflow:hidden;transition:.2s ease}
.shop-preview-card:hover{transform:translateY(-3px);border-color:rgba(139,109,255,.7);box-shadow:0 26px 70px rgba(0,0,0,.45),0 0 0 1px rgba(139,109,255,.08)}
.shop-product-art{position:relative;display:grid;place-items:center;min-height:214px;padding:14px;background:radial-gradient(circle at 30% 15%,rgba(107,92,255,.22),transparent 35%),linear-gradient(180deg,#141b2c,#0a0f19);border-right:1px solid var(--border)}
.shop-type-icon{position:absolute;top:22px;left:22px;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;color:#bba9ff;background:rgba(107,92,255,.18);border:1px solid rgba(139,109,255,.22);font-size:20px;z-index:3}
.shop-product-art .pod-mockup{min-height:188px;width:100%}
.shop-product-art .pod-shirt-body{transform:scale(.78)}
.shop-product-content{padding:28px 28px 22px;display:flex;flex-direction:column;justify-content:center;min-width:0}
.product-kicker{margin:0 0 8px;text-transform:uppercase;letter-spacing:.12em;color:var(--accent-2);font-size:12px;font-weight:900}
.shop-product-content h3{margin:0 0 12px;font-size:26px;line-height:1.1;letter-spacing:-.045em}
.shop-feature-row{display:flex;flex-wrap:wrap;gap:10px 18px;color:#c8cedb;font-size:14px;font-weight:700;margin-bottom:18px}
.shop-feature-row span:before{content:"✦";color:var(--accent-2);font-size:11px;margin-right:8px}
.shop-quote-box{display:flex;align-items:center;gap:14px;border:1px solid var(--border);border-radius:11px;background:linear-gradient(180deg,rgba(17,23,36,.9),rgba(10,15,24,.9));padding:16px 18px;box-shadow:inset 0 1px 0 rgba(255,255,255,.035)}
.shop-quote-box span{color:var(--accent-2);font-size:30px;line-height:1;font-weight:900}
.shop-quote-box strong{font-size:15px;line-height:1.25;letter-spacing:.035em;font-weight:800;color:#f4f6fb}
.shop-profession-label{display:block;color:var(--muted);font-weight:900;margin-top:12px}
.shop-buy-panel{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-content:center;padding:28px 22px 24px;border-left:1px solid var(--border);background:linear-gradient(180deg,rgba(12,18,31,.76),rgba(7,10,18,.84))}
.shop-buy-panel > div{min-width:0}.buy-label{display:block;text-transform:uppercase;letter-spacing:.11em;color:var(--muted);font-size:11px;font-weight:900;margin-bottom:8px}.shop-buy-panel strong{display:block;font-size:30px;letter-spacing:-.045em}.shop-buy-panel b{display:block;font-size:18px;line-height:1.2}.shop-buy-panel small{display:block;margin-top:7px;color:#b9c0cf;font-size:13px;font-weight:700}.shop-btn{grid-column:1/-1;min-height:58px;border-radius:9px;justify-content:center;width:100%;padding:0 18px}.shop-btn span{margin-left:auto;border-left:1px solid rgba(255,255,255,.22);padding-left:18px}.quote-products-panel{margin-top:22px}
@media(max-width:1120px){.shop-preview-card{grid-template-columns:240px 1fr}.shop-buy-panel{grid-column:1/-1;grid-template-columns:1fr 1fr auto;border-left:0;border-top:1px solid var(--border)}.shop-btn{grid-column:auto;min-width:220px}.shop-product-art{min-height:210px}}
@media(max-width:760px){.shop-preview-panel{padding:22px 16px;border-radius:24px}.shop-preview-head{align-items:flex-start;flex-direction:column}.discover-link{font-size:15px}.product-filter-pills{gap:9px}.product-filter-pill{font-size:13px;padding:10px 12px}.shop-preview-card{grid-template-columns:1fr}.shop-product-art{border-right:0;border-bottom:1px solid var(--border);min-height:250px}.shop-product-content{padding:22px 18px}.shop-buy-panel{grid-template-columns:1fr;gap:16px;padding:20px 18px}.shop-btn{width:100%;min-width:0}.shop-feature-row{gap:8px 12px}.shop-quote-box{align-items:flex-start}.shop-preview-head h2{font-size:36px}}

/* Lucide icon system: category, profession and product icons */
.nav-icon{width:17px;height:17px;vertical-align:-3px;margin-right:6px;color:var(--muted)}
.icon-btn svg,.cart-btn svg{width:22px;height:22px}.cart-btn svg{width:20px;height:20px}
.icon:before{content:none!important}.icon svg{width:31px;height:31px;stroke:currentColor;filter:drop-shadow(0 0 10px rgba(139,109,255,.35))}.category-card .icon{transition:.2s ease}.category-card:hover .icon,.profession-card:hover .icon{background:radial-gradient(circle at 35% 25%,rgba(139,109,255,.45),rgba(255,255,255,.06));border-color:rgba(139,109,255,.38);transform:translateY(-2px)}
.profession-card{min-height:190px;padding:20px}.profession-card h3{margin:13px 0 12px;font-size:20px;line-height:1.05}.profession-card p{margin:7px 0;color:#c2c8d4;font-size:14px}.profession-card span{display:inline-block;margin-top:14px;color:var(--accent-2);font-size:14px;font-weight:900}.icon-profession{width:58px;height:58px}.icon-profession svg{width:29px;height:29px}
.page-head-icon{width:78px;height:78px;border-radius:24px;display:grid;place-items:center;margin-bottom:16px;color:var(--accent-2);background:radial-gradient(circle at 35% 25%,rgba(139,109,255,.28),rgba(255,255,255,.04));border:1px solid rgba(139,109,255,.2);box-shadow:inset 0 0 30px rgba(107,92,255,.14),0 22px 46px rgba(0,0,0,.22)}.page-head-icon svg{width:39px;height:39px;stroke:currentColor}
.product-filter-pill svg{width:18px;height:18px;color:currentColor}.shop-type-icon svg{width:22px;height:22px;stroke:currentColor}.shop-feature-row span:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent-2);margin-right:9px;vertical-align:2px;box-shadow:0 0 10px rgba(139,109,255,.5)}
@media(max-width:900px){.page-head-icon{width:66px;height:66px;border-radius:20px}.page-head-icon svg{width:34px;height:34px}}

/* Icon cleanup: single large Lucide icon, no legacy pseudo glyphs */
.icon,
.page-head-icon,
.shop-type-icon{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 32% 20%,rgba(188,169,255,.30),transparent 30%),
        linear-gradient(135deg,rgba(116,82,255,.58),rgba(64,48,124,.72));
    border:1px solid rgba(169,145,255,.22);
    color:#c7b8ff;
    box-shadow:inset 0 0 22px rgba(255,255,255,.055),0 18px 42px rgba(74,44,160,.22);
}
.icon:before,
.icon:after,
.page-head-icon:before,
.page-head-icon:after,
.shop-type-icon:before,
.shop-type-icon:after{content:none!important;display:none!important}
.icon svg,
.page-head-icon svg,
.shop-type-icon svg{
    display:block;
    stroke:currentColor;
    filter:drop-shadow(0 0 9px rgba(184,163,255,.48));
}
.icon{width:64px;height:64px;font-size:0}
.icon svg{width:34px!important;height:34px!important}
.icon-profession{width:60px;height:60px}
.icon-profession svg{width:32px!important;height:32px!important}
.page-head-icon{width:82px;height:82px;border-radius:26px}
.page-head-icon svg{width:43px!important;height:43px!important}
.category-card,.profession-card{text-align:left}

/* Mobile hero overlay: keep the model visible in the upper-right, behind the text */
@media(max-width:720px){
    .hero{
        display:block;
        width:calc(100% - 28px);
        margin:0 auto;
        padding:24px 0 34px;
        min-height:0;
        border-radius:0 0 26px 26px;
        overflow:hidden;
        isolation:isolate;
    }
    .hero:before{
        inset:12px -54px auto auto;
        width:48%;
        height:230px;
        opacity:.46;
        background:
            linear-gradient(90deg,rgba(5,8,13,.26),rgba(5,8,13,.03) 45%,rgba(5,8,13,.28)),
            linear-gradient(180deg,rgba(5,8,13,.08),rgba(5,8,13,.48)),
            url('../img/homepage_main_image.webp') 58% 18% / 235% auto no-repeat;
        border-radius:0;
        box-shadow:none;
        z-index:-2;
        pointer-events:none;
    }
    .hero:after{
        background:
            linear-gradient(90deg,rgba(5,8,13,.98) 0%,rgba(5,8,13,.90) 54%,rgba(5,8,13,.52) 100%),
            radial-gradient(circle at 82% 18%,rgba(139,109,255,.17),transparent 30%);
        z-index:-1;
    }
    .hero-copy{
        position:relative;
        z-index:1;
        max-width:100%;
        padding-bottom:0;
    }
    .hero h1{
        max-width:74%;
    }
    .lead{
        max-width:100%;
    }
    .social-proof{
        margin-top:26px;
        margin-bottom:0;
    }
}

@media(max-width:440px){
    .hero{
        width:calc(100% - 24px);
        padding-bottom:32px;
    }
    .hero:before{
        top:8px;
        right:-62px;
        width:50%;
        height:205px;
        opacity:.42;
        background-position:57% 14%;
        background-size:255% auto;
    }
    .hero h1{
        max-width:72%;
        font-size:clamp(58px,18vw,72px);
    }
}

/* T-shirt configurator */
.tshirt-configurator{
    display:grid;
    grid-template-columns:minmax(320px,1.05fr) minmax(320px,.95fr);
    gap:24px;
    align-items:stretch;
    margin-top:20px;
}
.config-preview-card,.config-panel,.cart-panel{
    border:1px solid var(--border);
    border-radius:28px;
    background:linear-gradient(180deg,rgba(23,28,38,.98),rgba(8,12,19,.98));
    box-shadow:var(--shadow);
    overflow:hidden;
}
.config-preview-stage{
    min-height:620px;
    display:grid;
    place-items:center;
    padding:34px;
    background:
        radial-gradient(circle at 50% 10%,rgba(139,109,255,.24),transparent 42%),
        linear-gradient(180deg,#111724,#070b12);
}
.config-shirt{
    --shirt-color:#050608;
    position:relative;
    width:min(390px,74vw);
    height:455px;
    border-radius:92px 92px 36px 36px;
    background:linear-gradient(90deg,color-mix(in srgb,var(--shirt-color),#000 30%),var(--shirt-color) 52%,color-mix(in srgb,var(--shirt-color),#fff 8%));
    box-shadow:inset 0 0 34px rgba(255,255,255,.06),0 38px 90px rgba(0,0,0,.55);
}
.config-shirt:before,.config-shirt:after{
    content:"";
    position:absolute;
    top:60px;
    width:118px;
    height:275px;
    background:linear-gradient(180deg,color-mix(in srgb,var(--shirt-color),#fff 4%),color-mix(in srgb,var(--shirt-color),#000 28%));
    border-radius:48px;
    z-index:0;
}
.config-shirt:before{left:-88px;transform:rotate(14deg)}
.config-shirt:after{right:-88px;transform:rotate(-14deg)}
.config-shirt-neck{
    position:absolute;
    top:0;
    left:50%;
    width:128px;
    height:58px;
    transform:translateX(-50%);
    border-radius:0 0 70px 70px;
    background:rgba(255,255,255,.08);
    box-shadow:inset 0 -16px 28px rgba(0,0,0,.18);
}
.config-shirt-print-area{
    position:absolute;
    inset:126px 62px 82px;
    display:grid;
    place-items:center;
    z-index:2;
}
.config-shirt-quote{
    width:100%;
    font-family:'Bebas Neue',Impact,sans-serif;
    font-size:40px;
    line-height:.92;
    letter-spacing:.02em;
    color:#fff;
    text-align:center;
    text-wrap:balance;
    word-break:normal;
    overflow-wrap:normal;
    hyphens:none;
    text-shadow:0 3px 0 rgba(255,255,255,.08);
}
.config-preview-note{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    padding:18px 22px;
    color:var(--muted);
    font-weight:800;
    font-size:13px;
    border-top:1px solid var(--border-soft);
}
.config-preview-note span{display:inline-flex;align-items:center;gap:8px}
.config-panel{padding:28px;display:grid;gap:18px}
.config-panel-head h2{margin:4px 0 8px;font-size:36px;letter-spacing:-.05em}
.config-panel-head p{margin:0;color:var(--muted);line-height:1.55}
.config-panel label{display:grid;gap:8px;color:#f4f6fb;font-weight:900}
.config-panel label span{color:#bfc6d4;font-size:13px;text-transform:uppercase;letter-spacing:.08em}
.config-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.swatch-row{display:flex;flex-wrap:wrap;gap:10px}
.color-swatch{
    width:44px;height:44px;border-radius:14px;border:2px solid rgba(255,255,255,.16);
    background:var(--swatch);cursor:pointer;box-shadow:inset 0 0 0 1px rgba(0,0,0,.24),0 10px 24px rgba(0,0,0,.22)
}
.color-swatch.active{outline:3px solid rgba(139,109,255,.85);outline-offset:3px}
.config-summary{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:1px;
    overflow:hidden;
    border:1px solid var(--border);
    border-radius:18px;
    background:var(--border);
}
.config-summary div{padding:16px;background:rgba(12,17,25,.88)}
.config-summary span{display:block;color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;margin-bottom:5px}
.config-summary strong{font-size:18px}
.config-add-btn{width:100%}
.config-message{min-height:22px;margin:0;color:var(--muted);font-weight:800}.config-message a{color:var(--accent-2)}.config-message.is-success{color:#8ff0bd}.config-message.is-error{color:#ff9c9c}.config-message.is-loading{color:#c8c9ff}
.compact-shirt-card .shop-product-art{min-height:220px}.tshirt-only-products .shop-preview-card{grid-template-columns:250px 1fr 390px}
.cart-panel{padding:26px}.empty-cart-card{padding:28px}.cart-list{display:grid;gap:16px}.cart-item-card{display:grid;grid-template-columns:110px 1fr auto;gap:18px;align-items:center;border:1px solid var(--border);border-radius:20px;background:rgba(14,19,29,.9);padding:14px}.cart-item-card img{width:110px;height:110px;object-fit:contain;background:#0c111a;border-radius:16px}.cart-item-card h3{margin:0 0 6px}.cart-item-card p{margin:0 0 8px;color:#f5f5f5;font-weight:900}.cart-item-card small{color:var(--muted)}.cart-item-card strong{font-size:22px}
@media(max-width:1100px){.tshirt-configurator{grid-template-columns:1fr}.tshirt-only-products .shop-preview-card{grid-template-columns:220px 1fr}.tshirt-only-products .shop-buy-panel{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:14px}}
@media(max-width:720px){.tshirt-configurator{gap:16px}.config-preview-stage{min-height:430px;padding:24px}.config-shirt{width:270px;height:326px;border-radius:68px 68px 28px 28px}.config-shirt:before,.config-shirt:after{top:48px;width:82px;height:198px}.config-shirt:before{left:-60px}.config-shirt:after{right:-60px}.config-shirt-neck{width:92px;height:42px}.config-shirt-print-area{inset:92px 42px 58px}.config-shirt-quote{font-size:30px}.config-panel{padding:22px}.config-two,.config-summary{grid-template-columns:1fr}.tshirt-only-products .shop-preview-card{grid-template-columns:1fr}.cart-item-card{grid-template-columns:86px 1fr}.cart-item-card strong{grid-column:2}.cart-item-card img{width:86px;height:86px}}

/* Configurator V2 polish */
.quote-config-head{padding-bottom:8px}.quote-config-head h1{font-family:'Bebas Neue',Impact,sans-serif;line-height:.88;max-width:980px;letter-spacing:.01em;text-transform:uppercase}.configurator-v2{grid-template-columns:minmax(360px,.95fr) minmax(420px,1.05fr);gap:28px;align-items:start}.configurator-v2 .config-preview-card{position:sticky;top:24px;overflow:hidden;background:linear-gradient(180deg,rgba(20,25,36,.98),rgba(6,9,15,.98));border-color:rgba(139,109,255,.24)}.config-preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 24px;border-bottom:1px solid var(--border-soft);background:linear-gradient(90deg,rgba(139,109,255,.13),transparent 58%)}.config-preview-toolbar h2{margin:3px 0 0;font-size:26px;letter-spacing:-.04em}.mini-eyebrow{margin:0;font-size:11px}.preview-status{display:inline-flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid rgba(139,109,255,.32);border-radius:999px;background:rgba(139,109,255,.12);color:#d7d1ff;font-size:12px;font-weight:900;white-space:nowrap}.preview-status svg{width:16px;height:16px}.configurator-v2 .config-preview-stage{position:relative;min-height:610px;padding:44px;background:radial-gradient(circle at 50% 8%,rgba(139,109,255,.3),transparent 34%),radial-gradient(circle at 50% 64%,rgba(255,255,255,.05),transparent 34%),linear-gradient(180deg,#111827 0%,#060910 100%)}.config-shirt-shadow{position:absolute;left:50%;bottom:48px;width:54%;height:44px;transform:translateX(-50%);border-radius:50%;background:rgba(0,0,0,.55);filter:blur(18px)}.configurator-v2 .config-shirt{width:min(390px,62vw);height:455px}.configurator-v2 .config-panel{gap:18px;padding:0;background:transparent;border:0;box-shadow:none;overflow:visible}.configurator-v2 .config-panel-head,.config-step,.configurator-v2 .config-summary{border:1px solid var(--border);border-radius:24px;background:linear-gradient(180deg,rgba(23,28,38,.94),rgba(9,13,20,.94));box-shadow:0 18px 56px rgba(0,0,0,.24)}.configurator-v2 .config-panel-head{padding:24px}.configurator-v2 .config-panel-head h2{font-size:34px}.config-step{padding:20px;display:grid;gap:16px}.config-step-title{display:flex;align-items:flex-start;gap:14px}.config-step-title>span{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;border-radius:14px;background:linear-gradient(135deg,var(--accent),var(--accent-2));box-shadow:0 14px 32px rgba(107,92,255,.3);font-weight:950}.config-step-title h3{margin:0 0 4px;font-size:19px;letter-spacing:-.03em}.config-step-title p{margin:0;color:var(--muted);font-size:13px;line-height:1.45}.configurator-v2 .config-panel label{gap:9px}.configurator-v2 .config-panel select{width:100%;min-height:52px;border:1px solid var(--border);border-radius:16px;padding:0 16px;background:#0c111a;color:#fff;font-weight:900;outline:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.02)}.configurator-v2 .config-panel select:focus{border-color:rgba(139,109,255,.72);box-shadow:0 0 0 4px rgba(139,109,255,.14)}.config-hidden-select-label{display:none!important}.option-swatch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.option-swatch{display:flex;align-items:center;gap:9px;min-height:48px;border:1px solid var(--border);border-radius:16px;padding:10px 12px;background:rgba(12,17,25,.88);color:#fff;font-weight:900;cursor:pointer}.option-swatch span{width:22px;height:22px;border-radius:999px;background:var(--swatch);box-shadow:inset 0 0 0 1px rgba(255,255,255,.18),0 7px 18px rgba(0,0,0,.3)}.option-swatch.active{border-color:rgba(139,109,255,.92);background:rgba(139,109,255,.16);box-shadow:0 0 0 4px rgba(139,109,255,.1)}.configurator-v2 .color-swatch{width:46px;height:46px;border-radius:16px}.configurator-v2 .config-summary{grid-template-columns:1.15fr .85fr;padding:0;overflow:hidden}.configurator-v2 .config-summary div{padding:18px;background:rgba(12,17,25,.72)}.configurator-v2 .config-summary strong{display:block;line-height:1.2}.configurator-v2 .config-add-btn{min-height:58px;border-radius:18px;font-size:16px;box-shadow:0 18px 42px rgba(107,92,255,.24)}.configurator-v2 .config-message{padding:0 4px}.configurator-v2 .config-preview-note{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;padding:0;background:var(--border-soft)}.configurator-v2 .config-preview-note span{padding:16px;background:rgba(11,15,23,.94);justify-content:center;text-align:center}.configurator-v2 .config-preview-note code{font-size:11px;color:#d9d6ff;background:rgba(139,109,255,.12);border:1px solid rgba(139,109,255,.22);border-radius:8px;padding:2px 5px}.configurator-v2 .config-shirt-print-area{display:flex;align-items:center;justify-content:center}.configurator-v2 .config-shirt-quote{max-width:100%;}
@media(max-width:1180px){.configurator-v2{grid-template-columns:1fr}.configurator-v2 .config-preview-card{position:relative;top:auto}.configurator-v2 .config-preview-stage{min-height:560px}.option-swatch-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.option-swatch{justify-content:center;font-size:0}.option-swatch span{width:24px;height:24px}}
@media(max-width:760px){.quote-config-head h1{font-size:clamp(48px,15vw,76px)}.configurator-v2{gap:16px;margin-top:12px}.config-preview-toolbar{padding:18px;align-items:flex-start}.preview-status{padding:8px 10px;font-size:0}.preview-status svg{width:18px;height:18px}.configurator-v2 .config-preview-stage{min-height:440px;padding:24px 18px}.configurator-v2 .config-shirt{width:270px;height:326px;border-radius:68px 68px 28px 28px}.configurator-v2 .config-shirt:before,.configurator-v2 .config-shirt:after{top:48px;width:82px;height:198px}.configurator-v2 .config-shirt:before{left:-60px}.configurator-v2 .config-shirt:after{right:-60px}.configurator-v2 .config-shirt-neck{width:92px;height:42px}.configurator-v2 .config-shirt-print-area{inset:92px 42px 58px}.configurator-v2 .config-shirt-quote{font-size:30px}.configurator-v2 .config-preview-note{grid-template-columns:1fr}.configurator-v2 .config-preview-note span{justify-content:flex-start;text-align:left}.configurator-v2 .config-panel-head,.config-step{padding:18px;border-radius:20px}.configurator-v2 .config-panel-head h2{font-size:30px}.config-step-title>span{flex-basis:36px;width:36px;height:36px;border-radius:12px}.option-swatch-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.option-swatch{font-size:0;min-height:48px}.configurator-v2 .config-summary{grid-template-columns:1fr}.configurator-v2 .config-summary div{padding:16px}.configurator-v2 .config-add-btn{position:sticky;bottom:12px;z-index:8}}
@media(max-width:420px){.configurator-v2 .config-preview-stage{min-height:390px}.configurator-v2 .config-shirt{transform:scale(.88)}.option-swatch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.option-swatch{font-size:13px;justify-content:flex-start}.configurator-v2 .config-panel select{min-height:50px}.configurator-v2 .swatch-row{gap:8px}.configurator-v2 .color-swatch{width:40px;height:40px}}

/* Approved T-shirt design configurator */
.design-choice-configurator{grid-template-columns:minmax(360px,.9fr) minmax(360px,1.1fr)}.approved-design-preview .shirt-mockup-stage{min-height:560px;display:grid;place-items:center;border-radius:24px;background:radial-gradient(circle at 50% 35%,rgba(139,109,255,.18),transparent 38%),linear-gradient(180deg,#111722,#070a10);border:1px solid rgba(255,255,255,.08);overflow:hidden}.shirt-mockup{--shirt-color:#050608;position:relative;width:min(78%,420px);aspect-ratio:.82;background:var(--shirt-color);clip-path:polygon(24% 0,38% 0,41% 8%,59% 8%,62% 0,76% 0,100% 21%,86% 39%,77% 31%,77% 100%,23% 100%,23% 31%,14% 39%,0 21%);filter:drop-shadow(0 30px 55px rgba(0,0,0,.52))}.shirt-neck{position:absolute;top:0;left:40%;width:20%;height:13%;border-radius:0 0 999px 999px;background:rgba(255,255,255,.07)}.shirt-print-window{container-type:inline-size;position:absolute;left:22%;top:21%;width:56%;height:56%;border:1px dashed rgba(255,255,255,.22);border-radius:10px}.frontend-design-elements{position:absolute;inset:0;container-type:inline-size}.frontend-design-el{position:absolute;white-space:nowrap;text-transform:uppercase;line-height:.9;letter-spacing:.03em;text-wrap:balance}.frontend-design-el.has-bg{border-radius:.02em}.frontend-design-el-icon{aspect-ratio:1;display:grid;place-items:center}.frontend-design-el-icon svg{width:100%;height:100%}.design-template-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.design-template-option{text-align:left;border:1px solid rgba(255,255,255,.12);background:rgba(10,15,24,.72);color:#fff;border-radius:16px;padding:14px;cursor:pointer;transition:.18s ease}.design-template-option span{display:block;font-weight:900}.design-template-option small{display:block;color:#aeb7c9;margin-top:4px}.design-template-option:hover,.design-template-option.active{border-color:rgba(139,109,255,.62);background:linear-gradient(180deg,rgba(109,92,255,.24),rgba(10,15,24,.72));box-shadow:0 0 0 3px rgba(109,92,255,.1)}@media(max-width:980px){.design-choice-configurator{grid-template-columns:1fr}.approved-design-preview .shirt-mockup-stage{min-height:460px}.shirt-mockup{width:min(72%,360px)}}@media(max-width:620px){.approved-design-preview .shirt-mockup-stage{min-height:380px}.shirt-mockup{width:min(84%,310px)}.design-template-grid{grid-template-columns:1fr}}

/* Frontend approved design effects + custom typography controls */
.frontend-design-el{white-space:pre-line;overflow:visible}
.frontend-design-elements.design-effect{position:absolute;isolation:isolate}
.frontend-design-elements.design-effect:after{content:"";position:absolute;inset:-4%;pointer-events:none;opacity:var(--effect-opacity,.35);mix-blend-mode:destination-out;z-index:20}
.frontend-design-elements.design-effect-distressed:after{background-image:radial-gradient(circle at 12% 18%,#000 0 1px,transparent 2px),radial-gradient(circle at 67% 32%,#000 0 1.5px,transparent 3px),radial-gradient(circle at 38% 79%,#000 0 1px,transparent 2.4px),linear-gradient(105deg,transparent 0 44%,rgba(0,0,0,.8) 45%,transparent 47%);background-size:17px 19px,23px 29px,31px 37px,170px 80px;filter:contrast(130%)}
.frontend-design-elements.design-effect-vintage:after{background-image:linear-gradient(180deg,rgba(0,0,0,.72),transparent 18%,transparent 82%,rgba(0,0,0,.72)),radial-gradient(circle at 50% 50%,transparent 0 55%,rgba(0,0,0,.85) 80%)}
.frontend-design-elements.design-effect-rough-ink:after{background-image:radial-gradient(ellipse at 20% 40%,#000 0 1px,transparent 3px),radial-gradient(ellipse at 72% 60%,#000 0 2px,transparent 4px),repeating-linear-gradient(92deg,transparent 0 12px,rgba(0,0,0,.5) 13px,transparent 15px);background-size:14px 15px,26px 22px,100px 100px;filter:blur(.2px)}
.frontend-design-elements.design-effect-speckled:after{background-image:radial-gradient(circle,#000 0 1px,transparent 1.7px),radial-gradient(circle,#000 0 .8px,transparent 1.5px);background-position:0 0,9px 11px;background-size:13px 13px,19px 19px}
.frontend-design-elements.design-effect-cracked:after{background-image:linear-gradient(26deg,transparent 0 48%,rgba(0,0,0,.8) 49%,transparent 51%),linear-gradient(136deg,transparent 0 52%,rgba(0,0,0,.66) 53%,transparent 55%),linear-gradient(88deg,transparent 0 63%,rgba(0,0,0,.55) 64%,transparent 65%);background-size:160px 130px,210px 170px,130px 90px;background-position:8px 12px,60px 40px,20px 80px}
@supports not (mix-blend-mode:destination-out){.frontend-design-elements.design-effect:after{mix-blend-mode:multiply;background-blend-mode:multiply}}

/* Frontend configurator: preview cutout text. The exported PNG uses real transparent cutouts. */
.frontend-design-el.has-bg.is-cutout{
  color: rgba(5,7,11,.96) !important;
  -webkit-text-fill-color: rgba(5,7,11,.96);
  text-shadow: none !important;
}

/* Uploaded image based T-shirt configurator */
.uploaded-design-configurator { grid-template-columns: minmax(360px, .95fr) minmax(360px, 1.05fr); }
.uploaded-shirt-stage { min-height: 600px; display:grid; place-items:center; border-radius:24px; background: radial-gradient(circle at 50% 36%, rgba(139,109,255,.18), transparent 42%), linear-gradient(180deg,#111722,#070a10); border:1px solid rgba(255,255,255,.08); overflow:hidden; }
.uploaded-shirt-mockup { width:min(78%,430px); }
.uploaded-print-window { display:grid; place-items:center; border: 1px dashed rgba(255,255,255,.18); }
.uploaded-print-window img, .pod-uploaded-design { width: 90%; height: 90%; object-fit: contain; filter: drop-shadow(0 10px 18px rgba(0,0,0,.26)); }
.missing-uploaded-design { height:100%; display:grid; place-items:center; text-align:center; color:#aeb7c9; padding:24px; gap:8px; }
.missing-uploaded-design svg { width: 44px; height:44px; opacity:.62; }
.config-warning { display:flex; align-items:flex-start; gap:10px; padding:14px 16px; border-radius:16px; background:rgba(255,184,107,.12); color:#ffd6a3; border:1px solid rgba(255,184,107,.22); font-weight:700; }
.size-button-grid { display:grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap:10px; }
.size-option { border:1px solid rgba(255,255,255,.12); border-radius:14px; background:rgba(9,13,21,.76); color:#fff; min-height:54px; padding:9px 8px; font-weight:900; cursor:pointer; }
.size-option small { display:block; margin-top:3px; color:#a78bff; font-size:11px; }
.size-option.active, .size-option:hover { border-color: rgba(139,109,255,.7); background: linear-gradient(180deg,rgba(109,92,255,.35),rgba(9,13,21,.82)); box-shadow:0 0 0 3px rgba(109,92,255,.12); }
.uploaded-config-summary { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.compact-shirt-card .pod-uploaded-design { width: 72%; height: 72%; object-fit: contain; align-self:center; justify-self:center; }
@media(max-width:980px){.uploaded-design-configurator{grid-template-columns:1fr}.uploaded-shirt-stage{min-height:480px}.uploaded-shirt-mockup{width:min(74%,370px)}}
@media(max-width:620px){.uploaded-shirt-stage{min-height:390px}.uploaded-shirt-mockup{width:min(86%,315px)}.size-button-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.uploaded-config-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* Uploaded quote design cards + cleaner PDP configurator sizing */
.quote-card.has-uploaded-design{
    min-height:260px;
    padding:14px;
    justify-content:space-between;
    gap:12px;
}
.quote-card.has-uploaded-design:before{
    background:radial-gradient(circle at 50% 16%,rgba(139,109,255,.22),transparent 48%);
}
.quote-card-design-preview{
    position:relative;
    z-index:1;
    flex:1;
    min-height:190px;
    display:grid;
    place-items:center;
    border-radius:14px;
    background:
        radial-gradient(circle at 50% 38%,rgba(255,255,255,.08),transparent 42%),
        linear-gradient(180deg,rgba(8,12,18,.96),rgba(4,7,12,.96));
    border:1px solid rgba(255,255,255,.06);
    overflow:hidden;
}
.quote-card-design-preview:after{
    content:"";
    position:absolute;
    inset:auto 18% 13% 18%;
    height:16px;
    border-radius:50%;
    background:rgba(0,0,0,.38);
    filter:blur(12px);
}
.quote-card-design-preview img{
    position:relative;
    z-index:1;
    width:86%;
    height:86%;
    max-height:210px;
    object-fit:contain;
    filter:drop-shadow(0 14px 22px rgba(0,0,0,.34));
}
.quote-card.has-uploaded-design span{
    z-index:2;
    color:#c8c7ff;
}

/* PDP uploaded design preview: keep artwork inside a realistic print area */
.uploaded-shirt-stage{
    min-height:640px;
    padding:30px;
}
.uploaded-shirt-mockup{
    width:min(72%,390px);
    max-height:560px;
}
.uploaded-print-window{
    left:26%;
    top:24%;
    width:48%;
    height:48%;
    border-color:rgba(255,255,255,.16);
    background:rgba(255,255,255,.015);
}
.uploaded-print-window img{
    width:82%;
    height:82%;
    max-width:82%;
    max-height:82%;
    object-fit:contain;
    object-position:center;
}

/* More subtle size selector chips */
.size-button-grid{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}
.size-option{
    min-height:36px;
    min-width:46px;
    padding:7px 10px;
    border-radius:999px;
    font-size:13px;
    line-height:1;
    background:rgba(10,14,22,.86);
    border-color:rgba(255,255,255,.14);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
.size-option small{
    display:inline;
    margin:0 0 0 4px;
    font-size:10px;
    color:#b9a8ff;
}
.size-option.active{
    border-color:rgba(139,109,255,.9);
    background:linear-gradient(180deg,rgba(109,92,255,.38),rgba(19,22,34,.9));
}

@media(max-width:980px){
    .uploaded-shirt-stage{min-height:520px;padding:24px;}
    .uploaded-shirt-mockup{width:min(70%,350px);}
    .quote-card.has-uploaded-design{min-height:235px;}
    .quote-card-design-preview{min-height:168px;}
}
@media(max-width:620px){
    .uploaded-shirt-stage{min-height:420px;padding:20px;}
    .uploaded-shirt-mockup{width:min(82%,300px);}
    .uploaded-print-window{left:25%;top:24%;width:50%;height:48%;}
    .size-button-grid{display:flex;}
    .size-option{min-width:42px;padding:7px 9px;}
    .quote-card.has-uploaded-design{min-height:220px;}
    .quote-card-design-preview{min-height:155px;}
}

/* Product color image mockups on uploaded-design PDP */
.uploaded-shirt-mockup{position:relative;display:grid;place-items:center;background:transparent;box-shadow:none;overflow:visible}.uploaded-shirt-mockup.has-product-image{width:min(92%,560px);height:min(76vw,620px);max-height:620px}.uploaded-shirt-mockup.has-product-image:before,.uploaded-shirt-mockup.has-product-image:after,.uploaded-shirt-mockup.has-product-image .shirt-neck{display:none}.product-color-image{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 28px 60px rgba(0,0,0,.45));z-index:1}.product-color-placeholder{position:absolute;inset:8%;display:grid;place-items:center;text-align:center;border:1px dashed rgba(148,163,184,.28);border-radius:28px;color:#9aa7bd;background:radial-gradient(circle at 50% 15%,rgba(139,109,255,.16),rgba(4,7,12,.24));z-index:1}.product-color-placeholder svg{width:54px;height:54px;color:#8b6dff}.product-color-placeholder strong{display:block;color:#fff;margin-top:8px}.product-color-placeholder span{display:block;font-size:13px;margin-top:4px}.uploaded-shirt-mockup.has-product-image .uploaded-print-window{z-index:3;left:31%;top:28%;width:38%;height:35%;border-color:rgba(255,255,255,.12);background:transparent}.uploaded-shirt-mockup.has-product-image .uploaded-print-window img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain}.uploaded-shirt-mockup:not(.has-product-image) .uploaded-print-window{z-index:3}.size-button-grid{display:flex;flex-wrap:wrap;gap:8px}.size-option{min-height:36px;min-width:46px;padding:7px 10px;border-radius:999px;font-size:13px;line-height:1;background:rgba(10,14,22,.86);border:1px solid rgba(255,255,255,.14);box-shadow:inset 0 1px 0 rgba(255,255,255,.04);color:#fff;font-weight:900}.size-option small{display:inline;margin:0 0 0 4px;font-size:10px;color:#b9a8ff}.size-option.active{border-color:rgba(139,109,255,.9);background:linear-gradient(180deg,rgba(109,92,255,.38),rgba(19,22,34,.9));box-shadow:0 0 0 3px rgba(139,109,255,.12)}@media(max-width:980px){.uploaded-shirt-mockup.has-product-image{width:min(96%,480px);height:min(82vw,560px)}.uploaded-shirt-mockup.has-product-image .uploaded-print-window{left:30%;top:28%;width:40%;height:35%}}@media(max-width:620px){.uploaded-shirt-mockup.has-product-image{width:100%;height:430px}.uploaded-shirt-mockup.has-product-image .uploaded-print-window{left:29%;top:29%;width:42%;height:34%}.product-color-placeholder{inset:5%}}

/* Category landing hero with right-side category image */
.category-hero-with-image{
    position:relative;
    display:block;
    min-height:430px;
    padding:54px 0 46px;
    overflow:hidden;
    isolation:isolate;
}
.category-hero-with-image .page-head-icon{display:none!important}
.category-hero-copy{
    position:relative;
    z-index:3;
    width:min(64%, 900px);
    min-width:0;
    padding-right:26px;
}
.category-hero-copy .eyebrow{margin:0 0 16px}
.category-hero-copy h1{
    max-width:100%;
    margin:0 0 20px;
    font-size:clamp(58px, 7.2vw, 118px);
    line-height:.84;
    letter-spacing:-.08em;
    text-wrap:balance;
    overflow-wrap:normal;
    word-break:normal;
}
.category-hero-copy .lead{max-width:760px}
.category-hero-art{
    position:absolute;
    z-index:1;
    top:0;
    right:0;
    bottom:0;
    width:min(58%, 920px);
    border-radius:0;
    overflow:hidden;
    background:
        var(--category-hero-image) center right / cover no-repeat;
    box-shadow:inset 0 0 130px rgba(0,0,0,.68);
}
.category-hero-art:before{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(90deg,
            rgba(5,8,13,1) 0%,
            rgba(5,8,13,.96) 12%,
            rgba(5,8,13,.72) 28%,
            rgba(5,8,13,.28) 48%,
            rgba(5,8,13,.06) 68%,
            rgba(5,8,13,.18) 100%),
        radial-gradient(circle at 35% 42%,rgba(139,109,255,.16),transparent 42%),
        linear-gradient(180deg,rgba(5,8,13,.04),rgba(5,8,13,.36));
    pointer-events:none;
}
.category-hero-art:after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(0deg,rgba(5,8,13,.52) 0%,transparent 22%,transparent 78%,rgba(5,8,13,.42) 100%);
    pointer-events:none;
}
.category-hero-with-image:after{
    content:"";
    position:absolute;
    z-index:2;
    top:0;
    right:42%;
    bottom:0;
    width:180px;
    background:linear-gradient(90deg,rgba(5,8,13,.98),rgba(5,8,13,.72),rgba(5,8,13,0));
    pointer-events:none;
}
@media(max-width:1100px){
    .category-hero-with-image{
        min-height:390px;
        padding:44px 0 38px;
    }
    .category-hero-copy{width:min(66%, 760px)}
    .category-hero-art{width:56%;background-position:center right}
    .category-hero-copy h1{font-size:clamp(52px, 8vw, 92px)}
}
@media(max-width:760px){
    .category-hero-with-image{
        min-height:520px;
        padding:34px 0 30px;
    }
    .category-hero-copy{
        width:100%;
        padding:0;
    }
    .category-hero-copy h1{
        font-size:clamp(50px, 15vw, 76px);
        max-width:100%;
    }
    .category-hero-copy .lead{max-width:92%}
    .category-hero-art{
        top:auto;
        left:0;
        right:0;
        bottom:0;
        width:100%;
        height:330px;
        background-position:center bottom;
        background-size:cover;
        opacity:.92;
    }
    .category-hero-art:before{
        background:
            linear-gradient(180deg,rgba(5,8,13,.98) 0%,rgba(5,8,13,.82) 26%,rgba(5,8,13,.35) 58%,rgba(5,8,13,.12) 100%),
            linear-gradient(90deg,rgba(5,8,13,.56),rgba(5,8,13,.06));
    }
    .category-hero-with-image:after{display:none}
}

/* Category hero image refinement: softer blend, brighter subject, top-biased crop */
.category-hero-art{
    top:-14px;
    right:0;
    bottom:-8px;
    width:min(66%, 1080px);
    background:
        var(--category-hero-image) right top / cover no-repeat;
    filter:brightness(1.18) contrast(1.08) saturate(1.04);
    box-shadow:none;
    opacity:1;
}
.category-hero-art:before{
    background:
        linear-gradient(90deg,
            rgba(5,8,13,1) 0%,
            rgba(5,8,13,.98) 8%,
            rgba(5,8,13,.88) 19%,
            rgba(5,8,13,.52) 36%,
            rgba(5,8,13,.16) 58%,
            rgba(5,8,13,.04) 78%,
            rgba(5,8,13,.10) 100%),
        radial-gradient(circle at 42% 45%,rgba(139,109,255,.14),transparent 46%),
        linear-gradient(180deg,
            rgba(5,8,13,.12) 0%,
            rgba(5,8,13,.02) 24%,
            rgba(5,8,13,.04) 64%,
            rgba(5,8,13,.62) 100%);
}
.category-hero-art:after{
    background:
        linear-gradient(90deg,rgba(5,8,13,.96) 0%,rgba(5,8,13,.58) 18%,rgba(5,8,13,0) 42%),
        linear-gradient(180deg,rgba(5,8,13,.10) 0%,rgba(5,8,13,0) 58%,rgba(5,8,13,.72) 100%);
}
.category-hero-with-image:after{
    right:48%;
    width:260px;
    background:linear-gradient(90deg,rgba(5,8,13,1) 0%,rgba(5,8,13,.86) 36%,rgba(5,8,13,.34) 70%,rgba(5,8,13,0) 100%);
}
.category-hero-copy{
    width:min(58%, 900px);
}
.category-hero-copy h1{
    position:relative;
    z-index:4;
}
@media(max-width:1100px){
    .category-hero-art{
        width:64%;
        background-position:right top;
    }
    .category-hero-copy{width:min(62%, 760px)}
    .category-hero-with-image:after{right:46%;width:230px}
}
@media(max-width:760px){
    .category-hero-art{
        top:auto;
        bottom:-10px;
        height:350px;
        width:100%;
        background-position:center top;
        filter:brightness(1.15) contrast(1.06) saturate(1.04);
    }
    .category-hero-art:before{
        background:
            linear-gradient(180deg,rgba(5,8,13,.98) 0%,rgba(5,8,13,.82) 22%,rgba(5,8,13,.30) 55%,rgba(5,8,13,.68) 100%),
            linear-gradient(90deg,rgba(5,8,13,.58),rgba(5,8,13,.06),rgba(5,8,13,.38));
    }
    .category-hero-art:after{
        background:linear-gradient(180deg,rgba(5,8,13,.24) 0%,rgba(5,8,13,0) 44%,rgba(5,8,13,.82) 100%);
    }
}

/* Category hero image fit refinement: keep full image inside the right visual area */
.category-hero-art{
    top:0;
    right:0;
    bottom:0;
    width:min(62%, 980px);
    background:
        var(--category-hero-image) right center / contain no-repeat;
    filter:brightness(1.22) contrast(1.08) saturate(1.05);
}
.category-hero-art:before{
    background:
        linear-gradient(90deg,
            rgba(5,8,13,1) 0%,
            rgba(5,8,13,.96) 12%,
            rgba(5,8,13,.78) 28%,
            rgba(5,8,13,.34) 50%,
            rgba(5,8,13,.06) 74%,
            rgba(5,8,13,.08) 100%),
        radial-gradient(circle at 42% 46%,rgba(139,109,255,.13),transparent 48%),
        linear-gradient(180deg,rgba(5,8,13,.10) 0%,rgba(5,8,13,0) 60%,rgba(5,8,13,.48) 100%);
}
.category-hero-art:after{
    background:
        linear-gradient(90deg,rgba(5,8,13,.98) 0%,rgba(5,8,13,.62) 20%,rgba(5,8,13,0) 48%),
        linear-gradient(180deg,rgba(5,8,13,.06) 0%,rgba(5,8,13,0) 58%,rgba(5,8,13,.62) 100%);
}
.category-hero-with-image:after{
    right:50%;
    width:300px;
    background:linear-gradient(90deg,rgba(5,8,13,1) 0%,rgba(5,8,13,.90) 34%,rgba(5,8,13,.38) 72%,rgba(5,8,13,0) 100%);
}
@media(max-width:1100px){
    .category-hero-art{
        width:58%;
        background-position:right 12%;
        background-size:contain;
    }
    .category-hero-with-image:after{right:47%;width:240px;}
}
@media(max-width:760px){
    .category-hero-art{
        top:auto;
        left:0;
        right:0;
        bottom:0;
        width:100%;
        height:360px;
        background-position:center bottom;
        background-size:contain;
        filter:brightness(1.18) contrast(1.06) saturate(1.04);
    }
}

/* Mobile category hero polish: stack copy and image so they do not overlap */
@media (max-width: 760px) {
    .category-hero-with-image {
        display: flex;
        flex-direction: column;
        min-height: auto;
        padding: 34px 0 24px;
        overflow: visible;
        gap: 18px;
    }

    .category-hero-copy {
        width: 100%;
        padding: 0;
        z-index: 3;
    }

    .category-hero-copy .eyebrow {
        margin-bottom: 14px;
    }

    .category-hero-copy h1 {
        font-size: clamp(48px, 15vw, 72px);
        line-height: .86;
        letter-spacing: -.075em;
        max-width: 92%;
        margin-bottom: 14px;
    }

    .category-hero-copy .lead {
        max-width: 95%;
        font-size: 17px;
        line-height: 1.35;
        margin-bottom: 0;
    }

    .category-hero-art {
        position: relative;
        inset: auto;
        width: 100%;
        height: clamp(245px, 72vw, 360px);
        margin: 0;
        border-radius: 22px;
        overflow: hidden;
        background-position: center top;
        background-size: cover;
        filter: brightness(1.18) contrast(1.06) saturate(1.04);
        box-shadow: inset 0 0 90px rgba(0,0,0,.62), 0 24px 60px rgba(0,0,0,.28);
    }

    .category-hero-art:before {
        background:
            linear-gradient(90deg, rgba(5,8,13,.92) 0%, rgba(5,8,13,.44) 28%, rgba(5,8,13,.04) 62%, rgba(5,8,13,.18) 100%),
            linear-gradient(180deg, rgba(5,8,13,.10) 0%, rgba(5,8,13,0) 46%, rgba(5,8,13,.78) 100%),
            radial-gradient(circle at 45% 40%, rgba(139,109,255,.16), transparent 48%);
    }

    .category-hero-art:after {
        background:
            linear-gradient(180deg, rgba(5,8,13,.08) 0%, rgba(5,8,13,0) 54%, rgba(5,8,13,.72) 100%);
    }
}

@media (max-width: 430px) {
    .category-hero-with-image {
        gap: 16px;
        padding-top: 30px;
    }

    .category-hero-copy h1 {
        font-size: clamp(45px, 16vw, 64px);
        max-width: 100%;
    }

    .category-hero-copy .lead {
        font-size: 16px;
    }

    .category-hero-art {
        height: 292px;
        border-radius: 20px;
        background-position: center top;
    }
}

/* Mobile category hero poster: image becomes a soft background behind the text */
@media (max-width: 760px) {
    .category-hero-with-image {
        display: block;
        position: relative;
        min-height: clamp(430px, 92vw, 560px);
        padding: 32px 0 36px;
        overflow: hidden;
        isolation: isolate;
        border-radius: 0;
        gap: 0;
    }

    .category-hero-with-image .category-hero-art {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        margin: 0;
        border-radius: 0;
        background-position: right top;
        background-size: cover;
        background-repeat: no-repeat;
        filter: brightness(1.16) contrast(1.06) saturate(1.05);
        box-shadow: none;
        opacity: 1;
        z-index: 1;
    }

    .category-hero-with-image .category-hero-art::before {
        content: "";
        position: absolute;
        inset: 0;
        background:
            linear-gradient(90deg,
                rgba(5,8,13,.98) 0%,
                rgba(5,8,13,.92) 34%,
                rgba(5,8,13,.66) 58%,
                rgba(5,8,13,.24) 100%),
            linear-gradient(180deg,
                rgba(5,8,13,.22) 0%,
                rgba(5,8,13,.08) 46%,
                rgba(5,8,13,.78) 100%),
            radial-gradient(circle at 62% 28%, rgba(139,109,255,.18), transparent 44%);
        pointer-events: none;
    }

    .category-hero-with-image .category-hero-art::after {
        content: "";
        position: absolute;
        inset: 0;
        background:
            linear-gradient(90deg,
                rgba(5,8,13,.96) 0%,
                rgba(5,8,13,.58) 46%,
                rgba(5,8,13,0) 100%),
            linear-gradient(0deg,
                rgba(5,8,13,.70) 0%,
                rgba(5,8,13,0) 34%);
        pointer-events: none;
    }

    .category-hero-with-image::after {
        display: none;
    }

    .category-hero-copy {
        position: relative;
        z-index: 3;
        width: min(82%, 390px);
        padding: 0;
    }

    .category-hero-copy .eyebrow {
        margin-bottom: 14px;
    }

    .category-hero-copy h1 {
        max-width: 100%;
        margin-bottom: 16px;
        font-size: clamp(46px, 15vw, 74px);
        line-height: .84;
        letter-spacing: -.075em;
        hyphens: auto;
        overflow-wrap: break-word;
        word-break: normal;
        text-wrap: balance;
    }

    .category-hero-copy .lead {
        max-width: 100%;
        margin: 0;
        font-size: 17px;
        line-height: 1.38;
        text-shadow: 0 2px 14px rgba(0,0,0,.55);
    }
}

@media (max-width: 430px) {
    .category-hero-with-image {
        min-height: 455px;
        padding-top: 28px;
        padding-bottom: 32px;
    }

    .category-hero-with-image .category-hero-art {
        background-position: 68% top;
    }

    .category-hero-copy {
        width: min(88%, 360px);
    }

    .category-hero-copy h1 {
        font-size: clamp(44px, 15.8vw, 66px);
        line-height: .85;
    }

    .category-hero-copy .lead {
        font-size: 16px;
    }
}

/* Category hero mobile crop: poster image ends at hero bottom, without photo shade */
@media (max-width: 760px) {
    .category-hero-with-image {
        height: clamp(345px, 82vw, 430px);
        min-height: 0;
        padding: 28px 20px 26px;
        overflow: hidden;
        border-radius: 0;
        background: #080d18;
    }

    .category-hero-with-image .category-hero-art {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        margin: 0;
        border-radius: 0;
        background-size: cover;
        background-position: right top;
        background-repeat: no-repeat;
        filter: brightness(1.08) contrast(1.04) saturate(1.02);
        opacity: 1;
        box-shadow: none;
        z-index: 1;
    }

    .category-hero-with-image .category-hero-art::before,
    .category-hero-with-image .category-hero-art::after,
    .category-hero-with-image::after {
        display: none !important;
        content: none !important;
    }

    .category-hero-copy {
        position: relative;
        z-index: 3;
        width: min(78%, 380px);
        padding: 0;
    }

    .category-hero-copy h1 {
        font-size: clamp(44px, 15vw, 70px);
        line-height: .84;
        letter-spacing: -.075em;
        margin-bottom: 14px;
        hyphens: auto;
        overflow-wrap: break-word;
        word-break: normal;
        text-shadow: 0 4px 0 rgba(20,28,42,.95), 0 14px 34px rgba(0,0,0,.55);
    }

    .category-hero-copy .lead {
        max-width: min(78vw, 360px);
        text-shadow: 0 2px 14px rgba(0,0,0,.72);
    }
}

@media (max-width: 430px) {
    .category-hero-with-image {
        height: clamp(330px, 92vw, 405px);
        padding: 26px 18px 24px;
    }

    .category-hero-with-image .category-hero-art {
        background-position: 72% top;
    }

    .category-hero-copy {
        width: min(82%, 360px);
    }

    .category-hero-copy h1 {
        font-size: clamp(42px, 15.4vw, 64px);
        line-height: .85;
    }

    .category-hero-copy .lead {
        font-size: 16px;
        max-width: min(84vw, 360px);
    }
}

/* Mobile category hero title refinement: fixed Work/Shirts line breaks and better image visibility */
.category-hero-title .category-title-name,
.category-hero-title .category-title-work,
.category-hero-title .category-title-shirts{
    display:inline;
}
@media (max-width:760px){
    .category-hero-with-image{
        height:clamp(318px, 76vw, 378px);
        padding:24px 18px 22px;
    }
    .category-hero-with-image .category-hero-art{
        background-position:74% top;
        filter:brightness(1.12) contrast(1.04) saturate(1.03);
    }
    .category-hero-copy{
        width:min(58%, 250px);
    }
    .category-hero-copy h1.category-hero-title{
        font-size:clamp(38px, 12.8vw, 58px);
        line-height:.86;
        letter-spacing:-.07em;
        max-width:100%;
        margin-bottom:12px;
        hyphens:auto;
        overflow-wrap:normal;
        word-break:normal;
        text-wrap:auto;
    }
    .category-hero-title .category-title-name,
    .category-hero-title .category-title-work,
    .category-hero-title .category-title-shirts{
        display:block;
    }
    .category-hero-title .category-title-name{
        overflow-wrap:anywhere;
        hyphens:auto;
    }
    .category-hero-copy .lead{
        max-width:min(78vw, 360px);
        font-size:16px;
        line-height:1.34;
    }
}
@media (max-width:430px){
    .category-hero-with-image{
        height:clamp(305px, 84vw, 360px);
        padding:22px 16px 20px;
    }
    .category-hero-with-image .category-hero-art{
        background-position:76% top;
    }
    .category-hero-copy{
        width:min(56%, 230px);
    }
    .category-hero-copy h1.category-hero-title{
        font-size:clamp(36px, 12.2vw, 52px);
        line-height:.86;
    }
    .category-hero-copy .lead{
        font-size:15px;
        max-width:min(86vw, 360px);
    }
}

/* Fix: keep the balanced mobile category title, but restore desktop category hero title spacing/wrapping */
@media (min-width: 761px) {
    .category-hero-copy {
        width: min(64%, 900px);
    }

    .category-hero-copy h1.category-hero-title {
        display: block;
        max-width: 760px;
        font-size: clamp(58px, 7.2vw, 118px);
        line-height: .84;
        letter-spacing: -.08em;
        white-space: normal;
        overflow-wrap: normal;
        word-break: normal;
        hyphens: none;
    }

    .category-hero-title .category-title-name,
    .category-hero-title .category-title-work,
    .category-hero-title .category-title-shirts {
        display: inline;
    }

    .category-hero-title .category-title-name::after,
    .category-hero-title .category-title-work::after {
        content: " ";
    }
}

/* Category cards with subtle category image background */
.category-card-visual{
    position:relative;
    overflow:hidden;
    min-height:230px;
    padding:28px 22px 24px;
    isolation:isolate;
    border-radius:18px;
    background:
        radial-gradient(circle at 18% 16%,rgba(139,109,255,.16),transparent 28%),
        linear-gradient(180deg,rgba(18,24,36,.96),rgba(9,13,20,.98));
}
.category-card-visual:before{
    content:"";
    position:absolute;
    inset:0;
    background-image:var(--category-card-image);
    background-repeat:no-repeat;
    background-size:auto 112%;
    background-position:right 12%;
    opacity:.46;
    filter:brightness(1.18) contrast(1.08) saturate(1.02);
    transform:scale(1.01);
    transform-origin:right bottom;
    transition:transform .24s ease, opacity .24s ease, filter .24s ease;
    z-index:-3;
}
.category-card-visual:after{
    content:"";
    position:absolute;
    inset:0;
    background:
        radial-gradient(circle at 24% 18%,rgba(139,109,255,.26),transparent 26%),
        linear-gradient(90deg,rgba(7,10,18,.96) 0%,rgba(8,12,21,.84) 44%,rgba(8,12,21,.22) 100%),
        linear-gradient(180deg,rgba(5,8,13,.05) 0%,rgba(5,8,13,.82) 100%);
    z-index:-2;
    pointer-events:none;
}
.category-card-visual .icon,
.category-card-visual h3,
.category-card-visual p,
.category-card-visual span{
    position:relative;
    z-index:2;
}
.category-card-visual .icon{
    width:70px;
    height:70px;
    margin-bottom:28px;
    background:
        radial-gradient(circle at 34% 23%,rgba(222,213,255,.32),transparent 30%),
        linear-gradient(135deg,rgba(126,86,255,.82),rgba(58,43,129,.90));
    color:#ddd4ff;
    box-shadow:0 18px 46px rgba(105,72,255,.30),inset 0 0 22px rgba(255,255,255,.06);
}
.category-card-visual h3{
    margin:0 0 13px;
    font-size:22px;
    letter-spacing:-.04em;
    text-shadow:0 4px 22px rgba(0,0,0,.72);
}
.category-card-visual p{
    font-size:15px;
    line-height:1.3;
    color:#d6dbea;
    text-shadow:0 3px 18px rgba(0,0,0,.7);
}
.category-card-visual span{
    margin-top:24px;
    font-size:16px;
    text-shadow:0 3px 18px rgba(0,0,0,.7);
}
.category-card-visual:hover:before{
    opacity:.58;
    filter:brightness(1.28) contrast(1.12) saturate(1.06);
    transform:scale(1.055);
}
@media(max-width:1100px){
    .category-card-visual{min-height:220px}
    .category-card-visual:before{background-size:auto 108%;opacity:.42}
}
@media(max-width:720px){
    .category-card-visual{min-height:210px;padding:24px 20px}
    .category-card-visual:before{background-size:auto 104%;background-position:right 12%;opacity:.40}
    .category-card-visual:after{background:linear-gradient(90deg,rgba(7,10,18,.98) 0%,rgba(7,10,18,.84) 52%,rgba(7,10,18,.24) 100%),linear-gradient(180deg,rgba(5,8,13,.05),rgba(5,8,13,.76))}
    .category-card-visual .icon{width:64px;height:64px;margin-bottom:22px}
    .category-card-visual h3{font-size:21px}
}

/* Category card image polish: wider 4-column desktop layout with clearer people backgrounds */
.category-panel .cards{
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:20px;
}
.category-card-visual{
    min-height:275px;
    padding:30px 22px 26px;
    border-radius:20px;
    border-color:rgba(139,109,255,.28);
    background:linear-gradient(180deg,rgba(18,24,36,.94),rgba(8,12,20,.98));
}
.category-card-visual:before{
    background-size:auto 116%;
    background-position:right 12%;
    opacity:.82;
    filter:brightness(1.42) contrast(1.14) saturate(1.15);
    transform:scale(1.01);
}
.category-card-visual:after{
    background:
        radial-gradient(circle at 17% 17%,rgba(139,109,255,.32),transparent 25%),
        linear-gradient(90deg,rgba(6,9,17,.92) 0%,rgba(6,9,17,.68) 38%,rgba(6,9,17,.16) 70%,rgba(6,9,17,.08) 100%),
        linear-gradient(180deg,rgba(5,8,13,.02) 0%,rgba(5,8,13,.62) 100%);
}
.category-card-visual .icon{
    width:72px;
    height:72px;
    margin-bottom:38px;
    box-shadow:0 18px 48px rgba(105,72,255,.42),inset 0 0 22px rgba(255,255,255,.08);
}
.category-card-visual h3{
    font-size:25px;
    margin-bottom:14px;
}
.category-card-visual p{
    font-size:16px;
    color:#e1e5ef;
}
.category-card-visual span{
    margin-top:30px;
    font-size:17px;
}
.category-card-visual:hover:before{
    opacity:.94;
    filter:brightness(1.55) contrast(1.18) saturate(1.22);
    transform:scale(1.055);
}
.category-card-visual:hover:after{
    background:
        radial-gradient(circle at 17% 17%,rgba(139,109,255,.38),transparent 25%),
        linear-gradient(90deg,rgba(6,9,17,.88) 0%,rgba(6,9,17,.58) 36%,rgba(6,9,17,.08) 76%,rgba(6,9,17,.04) 100%),
        linear-gradient(180deg,rgba(5,8,13,.02) 0%,rgba(5,8,13,.54) 100%);
}
@media(max-width:1180px){
    .category-panel .cards{grid-template-columns:repeat(2,minmax(0,1fr));}
    .category-card-visual{min-height:260px;}
    .category-card-visual:before{background-size:auto 112%;opacity:.78;}
}
@media(max-width:720px){
    .category-panel .cards{grid-template-columns:1fr;}
    .category-card-visual{min-height:240px;padding:26px 20px 24px;}
    .category-card-visual:before{background-size:auto 108%;background-position:right 12%;opacity:.74;}
    .category-card-visual:after{
        background:
            radial-gradient(circle at 18% 18%,rgba(139,109,255,.35),transparent 26%),
            linear-gradient(90deg,rgba(6,9,17,.94) 0%,rgba(6,9,17,.68) 48%,rgba(6,9,17,.10) 100%),
            linear-gradient(180deg,rgba(5,8,13,.02),rgba(5,8,13,.64));
    }
    .category-card-visual .icon{width:68px;height:68px;margin-bottom:30px;}
    .category-card-visual h3{font-size:24px;}
}

/* Category cards final: 4 wide cards per row, clearer image backgrounds (matches requested mockup) */
#categories.category-panel{
    width:min(1540px,calc(100% - 48px));
}
#categories.category-panel .grid.cards,
#categories.category-panel .cards{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:18px!important;
}
#categories .category-card.category-card-visual{
    min-height:245px!important;
    padding:24px 22px 22px!important;
    overflow:hidden!important;
    border-radius:18px!important;
    border:1px solid rgba(139,109,255,.32)!important;
    background:#080d16!important;
    box-shadow:0 18px 44px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.04)!important;
}
#categories .category-card.category-card-visual:before{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    background-image:var(--category-card-image)!important;
    background-repeat:no-repeat!important;
    background-size:auto 115%!important;
    background-position:right 12%!important;
    opacity:.88!important;
    filter:brightness(1.45) contrast(1.10) saturate(1.12)!important;
    transform:scale(1.01)!important;
    transition:transform .24s ease, opacity .24s ease, filter .24s ease!important;
    z-index:-3!important;
}
#categories .category-card.category-card-visual:after{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    background:
        radial-gradient(circle at 19% 20%,rgba(139,109,255,.35),transparent 24%),
        linear-gradient(90deg,rgba(5,8,15,.95) 0%,rgba(5,8,15,.76) 39%,rgba(5,8,15,.22) 74%,rgba(5,8,15,.06) 100%),
        linear-gradient(180deg,rgba(5,8,13,.02) 0%,rgba(5,8,13,.60) 100%)!important;
    z-index:-2!important;
}
#categories .category-card.category-card-visual .icon{
    width:64px!important;
    height:64px!important;
    margin-bottom:24px!important;
}
#categories .category-card.category-card-visual .icon svg{
    width:31px!important;
    height:31px!important;
}
#categories .category-card.category-card-visual h3{
    font-size:23px!important;
    margin:0 0 12px!important;
    line-height:1.05!important;
}
#categories .category-card.category-card-visual p{
    font-size:15px!important;
    margin:7px 0!important;
    line-height:1.25!important;
    color:#e2e7f2!important;
}
#categories .category-card.category-card-visual span{
    margin-top:24px!important;
    font-size:16px!important;
}
#categories .category-card.category-card-visual:hover:before{
    opacity:.98!important;
    filter:brightness(1.58) contrast(1.14) saturate(1.18)!important;
    transform:scale(1.055)!important;
}
#categories .category-card.category-card-visual:hover:after{
    background:
        radial-gradient(circle at 19% 20%,rgba(139,109,255,.38),transparent 24%),
        linear-gradient(90deg,rgba(5,8,15,.90) 0%,rgba(5,8,15,.62) 37%,rgba(5,8,15,.12) 76%,rgba(5,8,15,.04) 100%),
        linear-gradient(180deg,rgba(5,8,13,.01) 0%,rgba(5,8,13,.50) 100%)!important;
}
@media(max-width:1180px){
    #categories.category-panel .grid.cards,
    #categories.category-panel .cards{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
    #categories .category-card.category-card-visual{min-height:250px!important;}
}
@media(max-width:720px){
    #categories.category-panel{width:min(100% - 28px,1540px);}
    #categories.category-panel .grid.cards,
    #categories.category-panel .cards{grid-template-columns:1fr!important;}
    #categories .category-card.category-card-visual{min-height:230px!important;padding:22px 20px!important;}
    #categories .category-card.category-card-visual:before{background-size:auto 108%!important;opacity:.82!important;}
    #categories .category-card.category-card-visual .icon{width:60px!important;height:60px!important;margin-bottom:22px!important;}
}

/* SEO route/category-card final polish: keep faces visible in category cards */
#categories .category-card.category-card-visual:before{
    background-size:auto 122%!important;
    background-position:right top!important;
    opacity:.96!important;
    filter:brightness(1.65) contrast(1.16) saturate(1.18)!important;
}
#categories .category-card.category-card-visual:after{
    background:
        radial-gradient(circle at 18% 21%,rgba(139,109,255,.36),transparent 24%),
        linear-gradient(90deg,rgba(5,8,15,.90) 0%,rgba(5,8,15,.64) 38%,rgba(5,8,15,.12) 78%,rgba(5,8,15,.04) 100%),
        linear-gradient(180deg,rgba(5,8,13,.02) 0%,rgba(5,8,13,.44) 100%)!important;
}
#categories .category-card.category-card-visual:hover:before{
    opacity:1!important;
    filter:brightness(1.78) contrast(1.18) saturate(1.24)!important;
}
@media(max-width:720px){
    #categories .category-card.category-card-visual:before{
        background-size:auto 116%!important;
        background-position:right top!important;
    }
}

/* Category SEO intro / shirt options block */
.category-intro-section{padding-top:0!important;margin-top:-8px;}
.category-intro-card{
    display:grid;
    grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);
    gap:20px;
    border:1px solid rgba(139,109,255,.22);
    border-radius:26px;
    background:
        radial-gradient(circle at 88% 20%,rgba(139,109,255,.14),transparent 32%),
        linear-gradient(180deg,rgba(18,24,36,.84),rgba(7,10,16,.72));
    box-shadow:0 24px 70px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.04);
    padding:26px;
    overflow:hidden;
}
.category-intro-card h2{font-size:clamp(24px,3vw,40px);line-height:1.02;margin:6px 0 12px;letter-spacing:-.03em;}
.category-intro-card p{color:#cbd5e1;font-size:17px;line-height:1.68;margin:0;max-width:880px;}
.category-options-card{
    border:1px solid rgba(148,163,184,.14);
    border-radius:22px;
    background:rgba(5,8,14,.52);
    padding:20px;
}
.category-options-card p{font-size:15px;line-height:1.58;}
.category-options-card ul{display:grid;grid-template-columns:1fr;gap:9px;margin:16px 0 0;padding:0;list-style:none;color:#e5e7eb;font-weight:800;}
.category-options-card li{display:flex;align-items:center;gap:9px;}
.category-options-card li:before{content:"";width:7px;height:7px;border-radius:999px;background:var(--accent-2);box-shadow:0 0 14px rgba(139,109,255,.7);}
@media(max-width:900px){.category-intro-card{grid-template-columns:1fr;padding:20px}.category-intro-card p{font-size:15px}.category-options-card{padding:16px}}

/* Auto chest-placement for uploaded print designs. The value is calculated on upload
   from the artwork height and stored as --design-top. Small designs sit higher,
   larger designs slightly lower. This same value is stored for Printify placement. */
.uploaded-print-window{
    position:absolute;
    overflow:hidden;
}
.uploaded-print-window > img#uploaded-design-image,
.uploaded-print-window > img:not(.product-color-image){
    position:absolute;
    top:var(--design-top, 15%);
    left:50%;
    width:90%;
    height:auto;
    max-width:90%;
    max-height:calc(96% - var(--design-top, 15%));
    transform:translateX(-50%);
    object-fit:contain;
    object-position:center top;
}
.pod-uploaded-design{
    position:absolute;
    top:var(--design-top, 15%);
    left:50%;
    width:72%;
    height:auto;
    max-height:calc(96% - var(--design-top, 15%));
    transform:translateX(-50%);
    object-fit:contain;
    object-position:center top;
}
.quote-card-design-preview{
    position:relative;
    overflow:hidden;
}
.quote-card-design-preview img{
    position:absolute;
    top:var(--design-top, 15%);
    left:50%;
    width:82%;
    height:auto;
    max-height:calc(96% - var(--design-top, 15%));
    transform:translateX(-50%);
    object-fit:contain;
    object-position:center top;
}
.quote-design-status img{
    object-fit:contain;
    object-position:center top;
}
.split-design-current img[style*="--design-top"]{
    object-position:center top;
}

/* T-shirt size guide and made-to-order messaging */
.made-to-order-note{display:flex;gap:12px;align-items:flex-start;border:1px solid rgba(139,109,255,.22);background:linear-gradient(180deg,rgba(109,92,255,.14),rgba(8,12,20,.72));border-radius:16px;padding:14px;margin:16px 0;color:#dbe2f0}.made-to-order-note svg{width:20px;height:20px;color:#a78bfa;flex:0 0 auto;margin-top:2px}.made-to-order-note strong{display:block;color:#fff;font-size:14px;margin-bottom:3px}.made-to-order-note span{display:block;color:#aeb7c9;font-size:13px;line-height:1.45}.shirt-spec-card{border:1px solid rgba(255,255,255,.11);background:rgba(7,11,18,.62);border-radius:18px;padding:16px;margin:16px 0}.shirt-spec-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:8px}.shirt-spec-head h3{margin:2px 0 0;font-size:18px}.shirt-spec-head>span{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);border-radius:999px;padding:4px 9px;color:#cbd5e1;font-size:12px;font-weight:800;text-transform:uppercase}.shirt-spec-help{margin:0 0 12px;color:#aeb7c9;font-size:13px;line-height:1.45}.shirt-spec-table-wrap{overflow-x:auto;border-radius:14px;border:1px solid rgba(255,255,255,.08)}.shirt-spec-table{width:100%;border-collapse:collapse;min-width:520px;background:rgba(3,6,12,.35)}.shirt-spec-table th,.shirt-spec-table td{padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.08);text-align:left;font-size:13px}.shirt-spec-table th{color:#cbd5e1;background:rgba(255,255,255,.04);font-size:11px;text-transform:uppercase;letter-spacing:.07em}.shirt-spec-table td:first-child{font-weight:900;color:#fff}.shirt-spec-table tr:last-child td{border-bottom:0}@media(max-width:620px){.shirt-spec-card{padding:13px}.shirt-spec-table th,.shirt-spec-table td{padding:9px 10px}.made-to-order-note{padding:12px}}

/* Clean PDP shirt preview: show only the shirt/mockup and uploaded print. */
.uploaded-design-preview .shirt-mockup-stage,
.uploaded-shirt-stage{
    background:radial-gradient(circle at 50% 28%, rgba(139,109,255,.12), transparent 42%), linear-gradient(180deg,#111722,#070a10);
}
.uploaded-design-preview .product-color-placeholder,
.uploaded-shirt-stage .product-color-placeholder{
    display:none!important;
}
.uploaded-shirt-mockup:not(.has-product-image){
    display:block;
    width:min(74%,430px);
    aspect-ratio:.72;
    background:var(--shirt-color,#050608);
    clip-path:polygon(21% 0,38% 0,41% 8%,59% 8%,62% 0,79% 0,100% 18%,84% 38%,76% 31%,76% 100%,24% 100%,24% 31%,16% 38%,0 18%);
    filter:drop-shadow(0 32px 60px rgba(0,0,0,.55));
    overflow:visible;
    box-shadow:inset 0 0 42px rgba(255,255,255,.06), inset 0 -80px 80px rgba(0,0,0,.24);
}
.uploaded-shirt-mockup:not(.has-product-image):before,
.uploaded-shirt-mockup:not(.has-product-image):after{
    display:none!important;
}
.uploaded-shirt-mockup:not(.has-product-image) .shirt-neck{
    display:block;
    position:absolute;
    z-index:1;
    top:0;
    left:41%;
    width:18%;
    height:11%;
    border-radius:0 0 999px 999px;
    background:rgba(255,255,255,.075);
}
.uploaded-print-window,
.uploaded-shirt-mockup.has-product-image .uploaded-print-window,
.uploaded-shirt-mockup:not(.has-product-image) .uploaded-print-window{
    z-index:4;
    left:27%;
    top:22%;
    width:46%;
    height:48%;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    overflow:hidden;
    box-shadow:none!important;
}
.uploaded-print-window img,
.uploaded-print-window > img#uploaded-design-image,
.uploaded-print-window > img:not(.product-color-image){
    background:transparent!important;
    padding:0!important;
    filter:drop-shadow(0 10px 18px rgba(0,0,0,.22));
}
.uploaded-shirt-mockup.has-product-image .uploaded-print-window{
    left:30%;
    top:24%;
    width:40%;
    height:42%;
}
.uploaded-shirt-mockup.has-product-image .uploaded-print-window img{
    width:100%;
    height:auto;
    max-width:100%;
    max-height:calc(98% - var(--design-top, 10%));
}
.config-preview-note{
    display:none!important;
}
@media(max-width:980px){
    .uploaded-shirt-mockup:not(.has-product-image){width:min(74%,380px)}
}
@media(max-width:620px){
    .uploaded-shirt-mockup:not(.has-product-image){width:min(82%,310px)}
    .uploaded-print-window,
    .uploaded-shirt-mockup:not(.has-product-image) .uploaded-print-window{left:26%;top:23%;width:48%;height:47%}
}


/* Quote PDP shirt preview polish: brighter stage + reliable color switching */
.uploaded-design-preview .shirt-mockup-stage,
.uploaded-shirt-stage{
    background:
        radial-gradient(circle at 50% 22%, rgba(210,214,230,.24), transparent 34%),
        radial-gradient(circle at 50% 64%, rgba(139,109,255,.18), transparent 42%),
        linear-gradient(180deg, #252b3a 0%, #171d2a 48%, #0e131d 100%) !important;
}
.uploaded-shirt-mockup:not(.has-product-image){
    background: var(--shirt-color, #050608) !important;
}
.option-swatch,
.size-option{
    user-select:none;
}
.option-swatch[hidden],
.option-swatch:disabled{
    display:none !important;
}


/* Restore dual print variants + improve preview contrast */
.quote-card-design-preview{
    background:
        radial-gradient(circle at 70% 25%, rgba(255,255,255,.96), rgba(235,238,244,.92) 28%, rgba(25,29,38,.92) 29%, rgba(6,9,15,.96) 76%) !important;
    border-color:rgba(255,255,255,.12) !important;
}
.quote-card-design-preview img{
    filter:drop-shadow(0 14px 24px rgba(0,0,0,.34)) !important;
}
.uploaded-design-preview .shirt-mockup-stage,
.uploaded-shirt-stage{
    background:
        radial-gradient(circle at 50% 22%, rgba(255,255,255,.42), transparent 35%),
        radial-gradient(circle at 50% 65%, rgba(139,109,255,.16), transparent 46%),
        linear-gradient(180deg, #3b4354 0%, #252c3a 46%, #171d28 100%) !important;
}
.uploaded-shirt-mockup:not(.has-product-image){
    filter:drop-shadow(0 32px 60px rgba(0,0,0,.48));
}
.dual-design-upload-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;}
.quote-design-variant-card{border:1px solid rgba(255,255,255,.1);border-radius:18px;background:rgba(6,10,18,.55);padding:14px;display:grid;gap:12px;}
.quote-design-file-drop small{display:block;color:#b9a8ff;margin-top:3px;}
.light-check-bg{background:linear-gradient(135deg,#f3f4f6 0 49%,#111827 50% 100%);padding:10px;border-radius:14px;}
.mini-select{width:100%;min-height:36px;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:rgba(8,12,20,.92);color:#e5e7eb;padding:7px 9px;font-weight:800;font-size:12px;}
@media(max-width:760px){.dual-design-upload-grid{grid-template-columns:1fr;}}

/* PDP preview cleanup: use the uploaded color mockup as the actual preview, no CSS shirt cutout behind it. */
.uploaded-design-configurator{
    align-items:start;
}
.uploaded-design-preview{
    align-self:start;
}
.uploaded-shirt-stage{
    position:relative;
    min-height:620px;
    padding:0!important;
    display:grid;
    place-items:center;
    background:
        radial-gradient(circle at 50% 18%, rgba(255,255,255,.48), transparent 34%),
        radial-gradient(circle at 50% 65%, rgba(139,109,255,.16), transparent 48%),
        linear-gradient(180deg,#4a5263 0%,#303848 46%,#202733 100%) !important;
}
.uploaded-shirt-mockup.has-product-image{
    position:relative!important;
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    max-height:none!important;
    aspect-ratio:auto!important;
    display:block!important;
    background:transparent!important;
    clip-path:none!important;
    filter:none!important;
    box-shadow:none!important;
    overflow:hidden!important;
}
.uploaded-shirt-mockup.has-product-image:before,
.uploaded-shirt-mockup.has-product-image:after,
.uploaded-shirt-mockup.has-product-image .shirt-neck{
    display:none!important;
}
.uploaded-shirt-mockup.has-product-image .product-color-image{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    object-position:center center!important;
    filter:drop-shadow(0 24px 42px rgba(0,0,0,.22))!important;
    z-index:1!important;
}
.uploaded-shirt-mockup.has-product-image .uploaded-print-window{
    z-index:3!important;
    left:50%!important;
    top:18%!important;
    width:34%!important;
    height:34%!important;
    transform:translateX(-50%)!important;
    border:0!important;
    background:transparent!important;
    overflow:visible!important;
    box-shadow:none!important;
    pointer-events:none!important;
}
.uploaded-shirt-mockup.has-product-image .uploaded-print-window img{
    width:100%!important;
    height:100%!important;
    max-width:100%!important;
    max-height:100%!important;
    object-fit:contain!important;
    object-position:center top!important;
    background:transparent!important;
    padding:0!important;
    filter:drop-shadow(0 8px 14px rgba(0,0,0,.18))!important;
}
@media (min-width:981px){
    .uploaded-design-preview{
        position:sticky;
        top:24px;
        max-height:calc(100vh - 48px);
        overflow:auto;
    }
}
@media (max-width:980px){
    .uploaded-shirt-stage{min-height:560px;}
    .uploaded-shirt-mockup.has-product-image .uploaded-print-window{top:18%;width:36%;height:34%;}
}
@media (max-width:620px){
    .uploaded-shirt-stage{min-height:440px;}
    .uploaded-shirt-mockup.has-product-image .uploaded-print-window{top:19%;width:38%;height:34%;}
}


/* Measurement guide overlay for PDP size chart */
.uploaded-shirt-stage{position:relative;}
.shirt-measure-overlay{
    position:absolute;
    inset:0;
    pointer-events:none;
    z-index:8;
    opacity:0;
    transition:opacity .16s ease;
}
.shirt-measure-overlay.is-visible{opacity:1;}
.measure-line{
    position:absolute;
    display:none;
    color:#fff;
    text-shadow:0 2px 10px rgba(0,0,0,.55);
}
.shirt-measure-overlay.show-all .measure-line,
.shirt-measure-overlay.show-chest .measure-chest,
.shirt-measure-overlay.show-length .measure-length,
.shirt-measure-overlay.show-sleeve .measure-sleeve,
.shirt-measure-overlay.show-shoulder .measure-shoulder{display:block;}
.measure-line:before,
.measure-line:after{content:"";position:absolute;background:#8b6dff;box-shadow:0 0 18px rgba(139,109,255,.75);}
.measure-line span{
    position:absolute;
    display:flex;
    align-items:center;
    gap:6px;
    background:rgba(9,13,23,.88);
    border:1px solid rgba(139,109,255,.58);
    color:#fff;
    font-size:11px;
    font-weight:900;
    letter-spacing:.04em;
    text-transform:uppercase;
    padding:5px 8px;
    border-radius:999px;
    white-space:nowrap;
}
.measure-line span strong{font:inherit;color:#fff;}
.measure-line span em{
    font-style:normal;
    color:#d9d1ff;
    background:rgba(139,109,255,.20);
    border:1px solid rgba(139,109,255,.30);
    padding:2px 6px;
    border-radius:999px;
}
.measure-chest{left:31%;top:36%;width:38%;height:0;}
.measure-chest:before{left:0;right:0;top:0;height:3px;border-radius:99px;}
.measure-chest:after{left:0;right:0;top:-5px;height:13px;background:linear-gradient(90deg,#8b6dff 0 2px,transparent 2px calc(100% - 2px),#8b6dff calc(100% - 2px));box-shadow:none;}
.measure-chest span{left:50%;top:-38px;transform:translateX(-50%);}
.measure-length{left:71%;top:19%;height:62%;width:0;}
.measure-length:before{top:0;bottom:0;left:0;width:3px;border-radius:99px;}
.measure-length:after{top:0;bottom:0;left:-5px;width:13px;background:linear-gradient(180deg,#8b6dff 0 2px,transparent 2px calc(100% - 2px),#8b6dff calc(100% - 2px));box-shadow:none;}
.measure-length span{left:16px;top:50%;transform:translateY(-50%);}
.measure-sleeve{left:17%;top:25%;width:24%;height:0;transform:rotate(-34deg);transform-origin:left center;}
.measure-sleeve:before{left:0;right:0;top:0;height:3px;border-radius:99px;}
.measure-sleeve:after{left:0;right:0;top:-5px;height:13px;background:linear-gradient(90deg,#8b6dff 0 2px,transparent 2px calc(100% - 2px),#8b6dff calc(100% - 2px));box-shadow:none;}
.measure-sleeve span{left:50%;top:-38px;transform:translateX(-50%) rotate(34deg);}
.measure-shoulder{left:34%;top:17%;width:32%;height:0;}
.measure-shoulder:before{left:0;right:0;top:0;height:3px;border-radius:99px;}
.measure-shoulder:after{left:0;right:0;top:-5px;height:13px;background:linear-gradient(90deg,#8b6dff 0 2px,transparent 2px calc(100% - 2px),#8b6dff calc(100% - 2px));box-shadow:none;}
.measure-shoulder span{left:50%;top:-36px;transform:translateX(-50%);}
.shirt-spec-table tbody tr{cursor:pointer;transition:background .15s ease;}
.shirt-spec-table tbody tr:hover{background:rgba(139,109,255,.12);}
.shirt-spec-table tbody td[data-measure]:hover{background:rgba(139,109,255,.20);color:#fff;}
.measurement-admin-settings{margin-top:16px;align-items:end;}
.measurement-admin-note{align-self:center;}
@media(max-width:620px){
    .shirt-measure-overlay{display:none;}
}

/* Consistent print placement across desktop, tablet and mobile.
   Use one anchor point so the shirt artwork no longer jumps upward on smaller screens. */
.uploaded-shirt-mockup,
.uploaded-shirt-mockup.has-product-image{
    --design-print-y: 34%;
}
.uploaded-shirt-mockup.has-product-image .uploaded-print-window{
    top: var(--design-print-y) !important;
    left: 29% !important;
    width: 42% !important;
    height: 33% !important;
}
.uploaded-shirt-mockup.has-product-image .uploaded-print-window img{
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
}
@media(max-width:980px){
    .uploaded-shirt-mockup.has-product-image .uploaded-print-window{
        top: var(--design-print-y) !important;
        left: 29% !important;
        width: 42% !important;
        height: 33% !important;
    }
}
@media(max-width:620px){
    .uploaded-shirt-mockup.has-product-image .uploaded-print-window{
        top: var(--design-print-y) !important;
        left: 29% !important;
        width: 42% !important;
        height: 33% !important;
    }
}

/* Fix uploaded print placement inside product mockup images.
   The previous rules allowed the print image to overflow the placement window,
   which made designs appear too far left/up on desktop and mobile. Keep one
   stable chest placement for all breakpoints and clip the print inside it. */
.uploaded-shirt-mockup.has-product-image .uploaded-print-window{
    left:50%!important;
    top:22%!important;
    width:36%!important;
    height:32%!important;
    transform:translateX(-50%)!important;
    overflow:hidden!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    pointer-events:none!important;
}
.uploaded-shirt-mockup.has-product-image .uploaded-print-window > img,
.uploaded-shirt-mockup.has-product-image .uploaded-print-window > img#uploaded-design-image,
.uploaded-shirt-mockup.has-product-image .uploaded-print-window > img:not(.product-color-image){
    position:absolute!important;
    inset:0!important;
    top:0!important;
    left:0!important;
    width:100%!important;
    height:100%!important;
    max-width:100%!important;
    max-height:100%!important;
    transform:none!important;
    object-fit:contain!important;
    object-position:center center!important;
    background:transparent!important;
    padding:0!important;
    filter:drop-shadow(0 8px 14px rgba(0,0,0,.16))!important;
}
@media (max-width:980px){
    .uploaded-shirt-mockup.has-product-image .uploaded-print-window{
        top:22%!important;
        width:36%!important;
        height:32%!important;
    }
}
@media (max-width:620px){
    .uploaded-shirt-mockup.has-product-image .uploaded-print-window{
        top:22%!important;
        width:36%!important;
        height:32%!important;
    }
}

/* Admin quote design resolution labels */
.quote-design-status .design-resolution{
    display:block;
    margin-top:.35rem;
    font-size:.72rem;
    line-height:1.2;
    color:var(--muted,#9aa8c7);
    white-space:nowrap;
}
.quote-design-status .design-resolution-excellent{ color:#8ef6b1; }
.quote-design-status .design-resolution-good{ color:#c8f58f; }
.quote-design-status .design-resolution-low{ color:#ffd36e; }
.quote-design-status .design-resolution-too-low{ color:#ff8a8a; }

/* Mobile PDP configurator UX polish: compact sticky preview, scrollable options and sticky add-to-cart. */
.shirt-spec-mobile-toggle{display:none;}
@media (max-width: 760px){
    .quote-config-head{padding-bottom:4px;margin-bottom:0;}
    .quote-config-head h1{font-size:clamp(42px,14vw,66px);max-width:100%;}
    .quote-config-head .lead{font-size:15px;line-height:1.45;}

    .tshirt-configurator.uploaded-design-configurator{
        display:grid;
        grid-template-columns:1fr;
        gap:14px;
        margin-top:10px;
        padding-bottom:96px;
    }
    .uploaded-design-preview{
        position:sticky!important;
        top:0!important;
        z-index:30;
        border-radius:22px;
        overflow:hidden;
        max-height:none!important;
        box-shadow:0 18px 50px rgba(0,0,0,.42);
    }
    .uploaded-design-preview .config-preview-toolbar{
        padding:10px 14px;
        min-height:0;
    }
    .uploaded-design-preview .config-preview-toolbar .eyebrow{font-size:10px;}
    .uploaded-design-preview .config-preview-toolbar h2{font-size:18px;margin:1px 0 0;}
    .uploaded-design-preview .preview-status{display:none;}
    .uploaded-shirt-stage{
        height:300px!important;
        min-height:300px!important;
        max-height:42vh;
        padding:0!important;
        border-radius:0 0 20px 20px;
    }
    .uploaded-shirt-mockup.has-product-image .product-color-image{
        object-fit:contain!important;
        object-position:center center!important;
    }
    .uploaded-shirt-mockup.has-product-image .uploaded-print-window{
        top:22%!important;
        left:50%!important;
        width:36%!important;
        height:32%!important;
        transform:translateX(-50%)!important;
    }
    .uploaded-design-preview .config-preview-note{display:none!important;}

    .uploaded-config-panel,
    .configurator-v2 .config-panel{
        display:grid;
        gap:12px;
        padding:0!important;
        width:100%;
        overflow:visible;
    }
    .uploaded-config-panel .config-panel-head{
        padding:16px!important;
        border-radius:20px!important;
    }
    .uploaded-config-panel .config-panel-head h2{font-size:26px;margin:2px 0 6px;}
    .uploaded-config-panel .config-panel-head p{font-size:14px;}
    .config-step{
        padding:14px!important;
        border-radius:18px!important;
        gap:12px!important;
    }
    .config-step-title{gap:10px;align-items:center;}
    .config-step-title>span{
        width:34px!important;height:34px!important;flex-basis:34px!important;border-radius:12px!important;font-size:14px;
    }
    .config-step-title h3{font-size:18px;}
    .config-step-title p{font-size:12px;line-height:1.35;}
    .configurator-v2 .config-panel select,
    .uploaded-config-panel select{
        min-height:48px;
        max-width:100%;
    }

    .size-button-grid{
        display:flex!important;
        flex-wrap:nowrap!important;
        gap:8px!important;
        overflow-x:auto;
        -webkit-overflow-scrolling:touch;
        padding:2px 2px 8px;
        scrollbar-width:none;
    }
    .size-button-grid::-webkit-scrollbar{display:none;}
    .size-option{
        flex:0 0 auto;
        min-width:48px;
        min-height:38px;
        padding:8px 12px;
        white-space:nowrap;
    }

    .option-swatch-grid{
        display:flex!important;
        grid-template-columns:none!important;
        flex-wrap:nowrap!important;
        overflow-x:auto;
        gap:8px!important;
        padding:2px 2px 10px;
        -webkit-overflow-scrolling:touch;
        scrollbar-width:none;
    }
    .option-swatch-grid::-webkit-scrollbar{display:none;}
    .option-swatch{
        flex:0 0 auto;
        min-width:88px;
        min-height:42px;
        padding:8px 10px;
        border-radius:14px;
        font-size:13px!important;
        justify-content:flex-start!important;
        white-space:nowrap;
    }
    .option-swatch span{width:20px;height:20px;}

    .uploaded-config-summary{
        position:sticky;
        bottom:76px;
        z-index:24;
        display:grid!important;
        grid-template-columns:1fr 72px 94px!important;
        border-radius:18px!important;
        backdrop-filter:blur(18px);
        box-shadow:0 -12px 34px rgba(0,0,0,.38),0 0 0 1px rgba(139,109,255,.16);
    }
    .uploaded-config-summary div{padding:10px 12px!important;}
    .uploaded-config-summary div:nth-child(4){display:none;}
    .uploaded-config-summary span{font-size:10px;margin-bottom:3px;}
    .uploaded-config-summary strong{font-size:14px;line-height:1.18;}
    .config-add-btn{
        position:sticky!important;
        bottom:12px!important;
        z-index:25!important;
        min-height:54px!important;
        border-radius:16px!important;
        box-shadow:0 -14px 40px rgba(0,0,0,.45),0 16px 44px rgba(107,92,255,.35)!important;
    }

    .made-to-order-note{padding:12px;border-radius:16px;}
    .made-to-order-note span{font-size:12px;}

    .shirt-spec-card{padding:0!important;overflow:hidden;}
    .shirt-spec-mobile-toggle{
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:12px;
        width:100%;
        border:0;
        color:#fff;
        background:linear-gradient(180deg,rgba(23,28,38,.95),rgba(9,13,20,.95));
        padding:14px;
        cursor:pointer;
        text-align:left;
        font:inherit;
    }
    .shirt-spec-mobile-toggle span{
        color:#9f8cff;
        font-size:11px;
        font-weight:950;
        letter-spacing:.08em;
        text-transform:uppercase;
    }
    .shirt-spec-mobile-toggle strong{font-size:14px;}
    .shirt-spec-content{display:none;padding:14px;}
    .shirt-spec-card.is-open .shirt-spec-content{display:block;}
    .shirt-spec-table{min-width:480px;}

    .shop-preview-panel.quote-products-panel{display:none;}
}
@media (max-width: 420px){
    .uploaded-shirt-stage{height:270px!important;min-height:270px!important;}
    .uploaded-config-summary{grid-template-columns:1fr 60px 84px!important;}
    .uploaded-config-summary div{padding:9px 10px!important;}
    .uploaded-config-summary strong{font-size:13px;}
    .option-swatch{min-width:82px;}
}

/* Patch: clean white preview backgrounds for uploaded T-shirt design cards */
.quote-card-design-preview{
    background:
        linear-gradient(135deg, rgba(255,255,255,.98) 0%, rgba(246,248,252,.98) 58%, rgba(238,241,247,.98) 100%) !important;
    border-color: rgba(255,255,255,.24) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.75), 0 14px 28px rgba(0,0,0,.20) !important;
}
.quote-card-design-preview:before,
.quote-card-design-preview:after{
    display:none !important;
    content:none !important;
}
.quote-card-design-preview img{
    filter: drop-shadow(0 10px 18px rgba(0,0,0,.22)) !important;
}

/* Desktop sticky navigation: compact full-width bar after scrolling */
@media (min-width: 981px){
    .nav{
        position:sticky;
        top:0;
        width:100%;
        max-width:none;
        margin:0;
        padding:18px clamp(24px,4vw,48px);
        z-index:1000;
        transition:padding .2s ease, background .2s ease, box-shadow .2s ease, border-color .2s ease;
    }
    .nav.nav-scrolled{
        padding-top:8px;
        padding-bottom:8px;
        background:rgba(7,10,16,.88);
        border-bottom:1px solid rgba(139,109,255,.22);
        box-shadow:0 18px 50px rgba(0,0,0,.35);
        backdrop-filter:blur(22px);
        -webkit-backdrop-filter:blur(22px);
    }
    .nav.nav-scrolled .logo{
        font-size:14px;
        padding:6px 7px 8px;
        border-width:2px;
        border-radius:7px;
    }
    .nav.nav-scrolled .logo:after{
        width:12px;
        height:12px;
        bottom:-8px;
        border-right-width:2px;
        border-bottom-width:2px;
    }
    .nav.nav-scrolled .nav-links{
        padding:6px;
        border-radius:20px;
        background:rgba(9,13,21,.84);
    }
    .nav.nav-scrolled .nav-links a{
        padding:10px 15px;
        font-size:13px;
    }
    .nav.nav-scrolled .icon-btn,
    .nav.nav-scrolled .cart-btn{
        width:42px;
        height:42px;
        border-radius:14px;
    }
    .nav.nav-scrolled .btn-small{
        min-height:42px;
        padding:0 22px;
        border-radius:14px;
    }
}

/* About page */
.about-hero{padding-top:58px;padding-bottom:18px}
.about-hero h1{max-width:980px;font-size:clamp(48px,7vw,96px);line-height:.9;letter-spacing:-.07em;margin:10px 0 18px;text-shadow:0 4px 0 rgba(255,255,255,.08)}
.about-hero .lead{max-width:900px;color:#d6dbea}
.about-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;background:transparent;box-shadow:none;padding:0;margin-top:12px}
.about-copy-card,.contact-section{border:1px solid var(--border);border-radius:28px;background:linear-gradient(180deg,rgba(23,28,38,.96),rgba(10,14,21,.92));box-shadow:var(--shadow);padding:28px 30px}
.about-copy-card h2{font-size:32px;line-height:1.05;letter-spacing:-.04em;margin:8px 0 14px}
.about-copy-card p,.contact-intro{color:var(--muted);line-height:1.65;font-weight:600}
.about-list{margin:14px 0 0;padding:0;list-style:none;display:grid;gap:10px;color:#d7dceb;font-weight:700}
.about-list li{position:relative;padding-left:28px}.about-list li:before{content:'✓';position:absolute;left:0;top:0;color:var(--accent-2);font-weight:900}
.contact-section{margin-top:18px}.contact-form{display:grid;gap:14px;max-width:880px}.form-row.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.contact-form label span{display:block;color:#b8c7ef;text-transform:uppercase;font-size:12px;letter-spacing:.08em;font-weight:900;margin:0 0 8px}.contact-form textarea{min-height:170px;resize:vertical}.captcha-field{max-width:360px}.notice{border-radius:16px;padding:14px 16px;margin:0 0 16px;font-weight:800}.notice-success{border:1px solid rgba(56,211,159,.35);background:rgba(56,211,159,.12);color:#a7f3d0}.notice-error{border:1px solid rgba(255,135,135,.35);background:rgba(255,135,135,.12);color:#fecaca}.hp-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
.footer a{color:var(--accent-2);font-weight:900}
@media(max-width:820px){.about-grid,.form-row.two{grid-template-columns:1fr}.about-copy-card,.contact-section{padding:22px 18px}.about-hero{padding-top:32px}.about-hero h1{font-size:clamp(42px,13vw,72px)}}


/* Final print placement correction.
   Keep preview consistent across desktop/tablet/mobile and place the artwork lower
   on the chest, matching the Printify placement values below. */
.uploaded-shirt-mockup.has-product-image .uploaded-print-window{
    top:30%!important;
    left:50%!important;
    width:34%!important;
    height:31%!important;
    transform:translateX(-50%)!important;
    overflow:hidden!important;
}
.uploaded-shirt-mockup.has-product-image .uploaded-print-window > img,
.uploaded-shirt-mockup.has-product-image .uploaded-print-window > img#uploaded-design-image,
.uploaded-shirt-mockup.has-product-image .uploaded-print-window > img:not(.product-color-image){
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    max-width:100%!important;
    max-height:100%!important;
    object-fit:contain!important;
    object-position:center center!important;
}
@media(max-width:980px){
    .uploaded-shirt-mockup.has-product-image .uploaded-print-window{top:30%!important;width:34%!important;height:31%!important;}
}
@media(max-width:620px){
    .uploaded-shirt-mockup.has-product-image .uploaded-print-window{top:30%!important;width:34%!important;height:31%!important;}
}

/* Size guide inside Choose size + corrected sleeve guide placement */
.config-step-size{
    gap:14px!important;
}
.config-step-title-with-action{
    align-items:center;
}
.shirt-spec-card.shirt-spec-inline{
    margin:4px 0 0!important;
    padding:0!important;
    border-radius:18px!important;
    overflow:hidden!important;
    background:rgba(7,11,18,.56)!important;
    border:1px solid rgba(139,109,255,.18)!important;
    box-shadow:none!important;
}
.shirt-spec-inline .shirt-spec-mobile-toggle{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    width:100%!important;
    border:0!important;
    padding:13px 15px!important;
    color:#fff!important;
    background:linear-gradient(180deg,rgba(17,22,34,.92),rgba(8,12,20,.88))!important;
    cursor:pointer!important;
    text-align:left!important;
}
.shirt-spec-inline .shirt-spec-mobile-toggle span{
    color:#9f8cff!important;
    font-size:11px!important;
    font-weight:950!important;
    letter-spacing:.08em!important;
    text-transform:uppercase!important;
}
.shirt-spec-inline .shirt-spec-mobile-toggle strong{
    margin-right:auto!important;
    font-size:14px!important;
}
.shirt-spec-inline .shirt-spec-mobile-toggle svg,
.shirt-spec-inline .shirt-spec-mobile-toggle i{
    width:18px!important;
    height:18px!important;
    color:#b7a8ff!important;
    transition:transform .18s ease!important;
}
.shirt-spec-inline.is-open .shirt-spec-mobile-toggle svg,
.shirt-spec-inline.is-open .shirt-spec-mobile-toggle i{
    transform:rotate(180deg)!important;
}
.shirt-spec-inline .shirt-spec-content{
    display:none!important;
    padding:16px!important;
    background:rgba(5,8,14,.36)!important;
}
.shirt-spec-inline.is-open .shirt-spec-content{
    display:block!important;
}
.shirt-spec-inline .shirt-spec-head{
    align-items:center!important;
    margin-bottom:10px!important;
}
.shirt-spec-inline .shirt-spec-head h3{
    font-size:16px!important;
}
.shirt-spec-inline .shirt-spec-help{
    font-size:12px!important;
    margin-bottom:12px!important;
}
.shirt-spec-inline .shirt-spec-table-wrap{
    max-height:330px!important;
    overflow:auto!important;
}
.shirt-spec-inline .shirt-spec-table{
    min-width:520px!important;
}

/* The sleeve measurement line should sit on the visible sleeve, not across the collar. */
.measure-sleeve{
    left:16%!important;
    top:29%!important;
    width:24%!important;
    transform:rotate(-34deg)!important;
    transform-origin:left center!important;
}
.measure-sleeve span{
    left:50%!important;
    top:-40px!important;
    transform:translateX(-50%) rotate(34deg)!important;
}

/* Preserve the chosen print baseline from the current app.css: 27%. */
.uploaded-shirt-mockup.has-product-image .uploaded-print-window{
    top:27%!important;
}
@media(max-width:980px){
    .uploaded-shirt-mockup.has-product-image .uploaded-print-window{top:27%!important;}
}
@media(max-width:620px){
    .uploaded-shirt-mockup.has-product-image .uploaded-print-window{top:27%!important;}
    .shirt-spec-inline .shirt-spec-content{padding:12px!important;}
    .shirt-spec-inline .shirt-spec-table{min-width:480px!important;}
}

/* Cart redesign + add-to-cart confirmation */
.cart-hero .lead{max-width:760px}.cart-redesign{padding:0;background:transparent;border:0}.cart-layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:24px;align-items:start}.cart-item-premium{grid-template-columns:116px minmax(0,1fr) auto;padding:18px;border-radius:24px;background:linear-gradient(145deg,rgba(17,24,39,.96),rgba(8,12,20,.96));box-shadow:0 24px 80px rgba(0,0,0,.24)}.cart-shirt-thumb{width:116px;height:116px;border-radius:20px;background:radial-gradient(circle at 50% 14%,rgba(255,255,255,.22),transparent 46%),linear-gradient(145deg,var(--cart-shirt-bg,#f7f3e9),var(--cart-shirt-bg-2,#fff));display:grid;place-items:center;border:1px solid rgba(255,255,255,.12);box-shadow:inset 0 0 0 1px rgba(15,23,42,.08)}.cart-shirt-thumb.is-light-print-preview{border-color:rgba(255,255,255,.1);box-shadow:inset 0 0 24px rgba(255,255,255,.04),inset 0 0 0 1px rgba(255,255,255,.06)}.cart-shirt-thumb.is-dark-print-preview{border-color:rgba(255,255,255,.35)}.cart-shirt-thumb img{width:88px;height:88px;object-fit:contain;background:transparent;border-radius:0}.cart-item-main h3{margin:2px 0 4px;font-size:20px}.cart-design-title{margin:0 0 14px;color:#fff;font-weight:900}.cart-meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.cart-meta-grid span{border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:9px 10px;color:var(--muted);font-size:13px}.cart-meta-grid b{display:block;color:#fff;font-size:11px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:2px}.cart-item-actions{display:flex;align-items:center;gap:14px;margin-top:14px}.cart-item-actions form{margin:0}.cart-edit-link,.cart-remove-link{border:0;background:transparent;color:#fff;font-weight:900;text-decoration:none;padding:0;cursor:pointer}.cart-remove-link{color:#fda4af}.cart-item-price{font-size:22px;white-space:nowrap}.cart-summary-card{position:sticky;top:96px;border:1px solid var(--border);border-radius:26px;padding:24px;background:linear-gradient(160deg,rgba(14,19,29,.98),rgba(7,10,17,.98));box-shadow:0 28px 90px rgba(0,0,0,.32)}.cart-summary-head h2{margin:2px 0 18px}.cart-total-row{display:flex;justify-content:space-between;gap:16px;padding:16px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.cart-total-row strong{font-size:20px}.cart-pod-note{display:flex;gap:12px;margin:18px 0;padding:16px;border-radius:18px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}.cart-pod-note svg{width:22px;height:22px}.cart-pod-note p{margin:6px 0 0;color:var(--muted);font-size:14px}.paypal-checkout-box{display:grid;gap:12px}.paypal-brand{border-radius:18px;padding:14px 16px;background:#fff;color:#111827;display:flex;justify-content:space-between;align-items:center;gap:10px}.paypal-brand span{font-size:24px;font-weight:1000;color:#003087;letter-spacing:-.04em}.paypal-brand small{font-weight:900;color:#111827}.paypal-checkout-btn{width:100%;justify-content:center}.cart-alert{display:flex;gap:10px;align-items:center;margin-bottom:16px;border:1px solid rgba(251,191,36,.3);background:rgba(251,191,36,.08);color:#fde68a;border-radius:18px;padding:14px 16px;font-weight:800}.premium-empty-cart{text-align:center;max-width:680px;margin:auto}.cart-empty-icon{width:64px;height:64px;border-radius:22px;margin:0 auto 16px;display:grid;place-items:center;background:rgba(255,255,255,.06)}.add-cart-modal{position:fixed;inset:0;z-index:1000;display:none;place-items:center;padding:20px}.add-cart-modal.is-open{display:grid}.add-cart-backdrop{position:absolute;inset:0;background:rgba(2,6,12,.72);backdrop-filter:blur(10px)}.add-cart-dialog{position:relative;width:min(440px,100%);border-radius:28px;border:1px solid rgba(255,255,255,.12);background:linear-gradient(160deg,#121a28,#070b12);box-shadow:0 40px 120px rgba(0,0,0,.55);padding:30px;text-align:center}.add-cart-close{position:absolute;right:14px;top:12px;width:36px;height:36px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.04);color:#fff;font-size:24px;cursor:pointer}.add-cart-icon{width:58px;height:58px;border-radius:20px;margin:0 auto 16px;display:grid;place-items:center;background:rgba(34,197,94,.16);color:#86efac;font-size:28px;font-weight:1000}.add-cart-dialog h2{margin:0 0 8px}.add-cart-dialog p{margin:0 0 20px;color:var(--muted)}.add-cart-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.add-cart-actions .btn{justify-content:center}.cart-modal-open{overflow:hidden}
@media(max-width:900px){.cart-layout{grid-template-columns:1fr}.cart-summary-card{position:static}.cart-meta-grid{grid-template-columns:1fr 1fr}.cart-item-premium{grid-template-columns:92px 1fr}.cart-shirt-thumb{width:92px;height:92px}.cart-item-price{grid-column:2}.add-cart-actions{grid-template-columns:1fr}.paypal-brand{display:grid;text-align:center}}
@media(max-width:560px){.cart-item-premium{grid-template-columns:1fr;text-align:left}.cart-shirt-thumb{width:100%;height:150px}.cart-meta-grid{grid-template-columns:1fr}.cart-item-price{grid-column:auto}.cart-item-actions{justify-content:space-between}}

/* Privacy, cookie consent and legal pages */
.legal-hero .lead{max-width:860px}.legal-updated{color:var(--muted);font-weight:800}.legal-content{display:grid;gap:18px}.legal-card{border:1px solid var(--border);border-radius:24px;padding:24px;background:linear-gradient(160deg,rgba(17,24,39,.92),rgba(8,12,20,.94));box-shadow:0 22px 70px rgba(0,0,0,.22)}.legal-card h2{margin:0 0 12px;font-size:28px}.legal-card p{color:#c2c8d4;line-height:1.7}.legal-card li{margin:8px 0;color:#c2c8d4;line-height:1.55}.legal-card a{color:var(--accent-2);font-weight:900}.cookie-consent{position:fixed;z-index:2000;left:0;right:0;bottom:0;padding:18px;display:grid;place-items:center;pointer-events:none}.cookie-consent[hidden]{display:none!important}.cookie-consent-panel{pointer-events:auto;width:min(1040px,100%);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center;border:1px solid rgba(255,255,255,.14);border-radius:28px;padding:22px;background:linear-gradient(160deg,rgba(17,24,39,.98),rgba(6,9,15,.98));box-shadow:0 28px 110px rgba(0,0,0,.62);backdrop-filter:blur(16px)}.cookie-consent-panel h2{margin:2px 0 8px;font-size:26px}.cookie-consent-panel p{margin:0;color:#c2c8d4;line-height:1.55}.cookie-links{margin-top:8px!important;font-size:13px}.cookie-links a{color:var(--accent-2);font-weight:900}.cookie-consent-actions{display:flex;gap:10px;align-items:center}.cookie-consent-actions .btn{white-space:nowrap;min-height:52px}.footer-cookie-link{border:0;background:transparent;color:var(--accent-2);font:inherit;font-weight:900;padding:0;cursor:pointer}.cookie-settings-inline{width:auto;margin-top:8px}
@media(max-width:760px){.cookie-consent{padding:12px}.cookie-consent-panel{grid-template-columns:1fr;border-radius:22px;padding:18px}.cookie-consent-actions{display:grid;grid-template-columns:1fr;gap:10px}.cookie-consent-actions .btn{width:100%}.legal-card{padding:20px;border-radius:20px}.legal-card h2{font-size:24px}}

/* Phase 1 SEO + AI search content blocks */
.ai-knowledge-section,
.faq-section{
    padding-top: clamp(18px, 4vw, 42px);
}
.ai-knowledge-card,
.faq-card{
    border: 1px solid rgba(255,255,255,.10);
    background: linear-gradient(135deg, rgba(255,255,255,.075), rgba(255,255,255,.025));
    border-radius: 26px;
    box-shadow: 0 24px 80px rgba(0,0,0,.30);
}
.ai-knowledge-card{
    padding: clamp(22px, 4vw, 42px);
    max-width: 980px;
}
.ai-knowledge-card h2,
.faq-card h3{
    margin-top: 0;
}
.ai-knowledge-card p{
    max-width: 760px;
    color: rgba(255,255,255,.72);
    line-height: 1.75;
}
.faq-grid{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}
.faq-card{
    padding: 22px;
}
.faq-card h3{
    font-size: 1.02rem;
    margin-bottom: 10px;
}
.faq-card p{
    margin: 0;
    color: rgba(255,255,255,.70);
    line-height: 1.65;
}
@media (max-width: 760px){
    .faq-grid{grid-template-columns: 1fr;}
    .ai-knowledge-card,.faq-card{border-radius: 20px;}
}

/* Brand logo image system */
.logo{
    display:inline-flex!important;
    align-items:center!important;
    border:0!important;
    border-radius:0!important;
    padding:0!important;
    font-size:0!important;
    line-height:0!important;
    letter-spacing:0!important;
    box-shadow:none!important;
    position:relative;
    text-decoration:none;
}
.logo:after{display:none!important;content:none!important;}
.logo img{
    display:block;
    width:216px;
    height:auto;
    max-height:58px;
    object-fit:contain;
    filter:drop-shadow(0 16px 34px rgba(0,0,0,.38)) drop-shadow(0 0 18px rgba(139,44,255,.18));
}
@media(max-width:700px){
    .logo img{width:164px;max-height:48px;}
}
@media(min-width:981px){
    .nav.nav-scrolled .logo{padding:0!important;border-radius:0!important;box-shadow:none!important;}
    .nav.nav-scrolled .logo:after{display:none!important;}
    .nav.nav-scrolled .logo img{width:190px;max-height:52px;}
}

.cart-alert.cart-success{
    border-color:rgba(60,220,130,.35);
    background:rgba(24,140,74,.12);
    color:#d9ffe8;
}

/* Checkout address form */
.checkout-address-form{display:grid;gap:18px;margin-top:18px}
.checkout-form-section{border:1px solid rgba(143,124,255,.20);border-radius:18px;background:rgba(7,10,18,.45);padding:18px;display:grid;gap:12px}
.checkout-form-section h3{margin:0 0 4px;font-size:1.05rem;color:#fff}
.checkout-form-section label{display:grid;gap:7px;color:#d8dcf0;font-weight:800;font-size:.82rem;letter-spacing:.01em}
.checkout-form-section label small{font-weight:700;color:#8f98b8}
.checkout-form-section input{width:100%;border:1px solid rgba(147,158,190,.25);background:#070b13;color:#fff;border-radius:13px;padding:12px 13px;font:inherit;font-weight:750;outline:none}
.checkout-form-section input:focus{border-color:#8b5cf6;box-shadow:0 0 0 3px rgba(139,92,246,.18)}
.checkout-field-grid{display:grid;gap:10px}
.checkout-field-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.checkout-field-grid.three{grid-template-columns:1.4fr .6fr .9fr}
.checkout-check{display:flex!important;grid-template-columns:none!important;align-items:center;gap:10px;cursor:pointer}
.checkout-check input{width:auto;accent-color:#7c3aed}
.billing-fields{display:grid;gap:12px;margin-top:10px}
@media (max-width:720px){.checkout-field-grid.two,.checkout-field-grid.three{grid-template-columns:1fr}.checkout-form-section{padding:14px}}

/* Checkout flat-rate shipping + desktop layout upgrade */
.cart-layout{grid-template-columns:1fr!important;gap:22px!important}
.checkout-desktop-grid{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:24px;align-items:start}
.checkout-main-card{border:1px solid var(--border);border-radius:26px;padding:24px;background:linear-gradient(160deg,rgba(14,19,29,.98),rgba(7,10,17,.98));box-shadow:0 28px 90px rgba(0,0,0,.28)}
.checkout-main-head{margin-bottom:16px}.checkout-main-head h2{margin:2px 0 8px}.checkout-intro{margin:0;color:var(--muted);max-width:720px;line-height:1.55}.cart-summary-compact{position:sticky;top:96px}.shipping-free-note{margin:10px 0 0;color:#a7f3d0;font-weight:900;font-size:13px}.cart-grand-total{margin-top:12px;border-top:1px solid rgba(255,255,255,.16);border-bottom:0;padding-top:18px}.cart-grand-total strong{font-size:24px}.checkout-submit-bar{display:grid;grid-template-columns:260px minmax(220px,1fr);gap:14px;align-items:center;margin-top:4px}.checkout-submit-bar .paypal-brand{height:100%}.checkout-submit-bar .paypal-checkout-btn{min-height:58px}.cart-list{display:grid;gap:14px}.checkout-form-section{background:rgba(255,255,255,.035)}
@media(max-width:980px){.checkout-desktop-grid{grid-template-columns:1fr}.cart-summary-compact{position:static;order:-1}.checkout-submit-bar{grid-template-columns:1fr}.cart-item-premium{grid-template-columns:92px 1fr}.cart-shirt-thumb{width:92px;height:92px}.cart-item-price{grid-column:2}}
@media(max-width:560px){.checkout-main-card,.cart-summary-card{padding:18px;border-radius:22px}.checkout-submit-bar{gap:10px}.cart-item-price{grid-column:auto}}
