.hcm-td-shell,
.hcm-td-promo-bar,
.hcm-td-toast,
.hcm-td-alerts {
    --hcm-td-accent: #ff2a2a;
    --hcm-td-bg: #080808;
    --hcm-td-surface: #151515;
    --hcm-td-text: #f7f7f7;
    --hcm-td-muted: #b7b7b7;
    --hcm-td-line: rgba(255,255,255,.11);
    --hcm-td-shadow: 0 22px 70px rgba(0,0,0,.38);
    box-sizing: border-box;
}
.hcm-td-shell *,
.hcm-td-promo-bar *,
.hcm-td-toast *,
.hcm-td-alerts * { box-sizing: border-box; }
.hcm-td-shell {
    width: 100%;
    max-width: 1500px;
    margin: 0 auto;
    padding: 24px clamp(14px, 3vw, 44px) 72px;
    color: var(--hcm-td-text);
    background:
        radial-gradient(circle at 12% 4%, color-mix(in srgb, var(--hcm-td-accent) 25%, transparent), transparent 34%),
        linear-gradient(180deg, #101010 0%, var(--hcm-td-bg) 30%, #050505 100%);
    border-radius: 28px;
    overflow: hidden;
}
.hcm-td-shell a { color: inherit; text-decoration: none; }
.hcm-td-intro {
    min-height: 340px;
    display: grid;
    align-items: end;
    padding: clamp(28px, 6vw, 82px);
    margin-bottom: 28px;
    border: 1px solid var(--hcm-td-line);
    border-radius: 24px;
    background:
        linear-gradient(115deg, rgba(0,0,0,.92), rgba(0,0,0,.45)),
        repeating-linear-gradient(135deg, transparent 0 14px, rgba(255,255,255,.02) 14px 15px);
    position: relative;
    overflow: hidden;
}
.hcm-td-intro::after {
    content: "DROP / CLAIM / REPEAT";
    position: absolute;
    right: -30px;
    top: 28px;
    font-size: clamp(52px, 9vw, 132px);
    line-height: .82;
    font-weight: 950;
    letter-spacing: -.08em;
    color: rgba(255,255,255,.035);
    transform: rotate(-4deg);
    pointer-events: none;
}
.hcm-td-kicker,
.hcm-td-section-head span {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .16em;
    color: #fff;
    text-transform: uppercase;
}
.hcm-td-kicker::before,
.hcm-td-section-head span::before {
    content: "";
    width: 30px;
    height: 3px;
    background: var(--hcm-td-accent);
}
.hcm-td-intro h1 {
    margin: 14px 0 8px;
    color: #fff;
    font-size: clamp(56px, 10vw, 142px);
    line-height: .84;
    letter-spacing: -.065em;
    font-weight: 950;
}
.hcm-td-intro p {
    max-width: 670px;
    margin: 20px 0 0;
    color: #dedede;
    font-size: clamp(16px, 2vw, 22px);
    line-height: 1.55;
}
.hcm-td-section { margin-top: 34px; }
.hcm-td-section-head {
    display: flex;
    justify-content: space-between;
    gap: 24px;
    align-items: end;
    flex-wrap: wrap;
    margin-bottom: 18px;
}
.hcm-td-section-head > :first-child {
    max-width: 760px;
}
.hcm-td-section-head h2 {
    margin: 7px 0 0;
    color: #fff;
    font-size: clamp(28px, 4vw, 52px);
    line-height: 1;
    letter-spacing: -.045em;
}
.hcm-td-section-head p { color: var(--hcm-td-muted); margin: 0; max-width: 470px; }
.hcm-td-hero-grid,
.hcm-td-campaign-grid,
.hcm-td-upcoming-grid,
.hcm-td-product-grid,
.hcm-td-archive-grid {
    display: grid;
    gap: 18px;
}
.hcm-td-hero-grid { 
    grid-template-columns: repeat(12, minmax(0, 1fr));
    align-items: start;
}
.hcm-td-hero-grid > .hcm-td-featured { grid-column: span 7; }
.hcm-td-hero-grid > .hcm-td-standard { grid-column: span 5; }
.hcm-td-hero-grid > .hcm-td-standard:nth-child(n+3) { grid-column: span 6; }
.hcm-td-hero-grid.is-single {
    grid-template-columns: minmax(0, 1fr);
    max-width: 1180px;
    margin-inline: auto;
}
.hcm-td-hero-grid.is-single > .hcm-td-featured {
    grid-column: 1 / -1;
}
.hcm-td-campaign-grid { 
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
}
.hcm-td-campaign-grid.is-single {
    grid-template-columns: minmax(0, 820px);
    justify-content: center;
}
.hcm-td-campaign-card {
    min-width: 0;
    border: 1px solid var(--hcm-td-line);
    border-radius: 24px;
    overflow: hidden;
    background: linear-gradient(180deg, color-mix(in srgb, var(--hcm-td-surface) 92%, white 8%), var(--hcm-td-surface));
    box-shadow: var(--hcm-td-shadow);
}
.hcm-td-campaign-visual {
    position: relative;
    min-height: 330px;
    overflow: hidden;
    background: #0c0c0c;
}
.hcm-td-featured .hcm-td-campaign-visual { min-height: 520px; }
.hcm-td-campaign-visual img {
    width: 100%;
    height: 100%;
    min-height: inherit;
    object-fit: cover;
    display: block;
    transition: transform .55s ease, filter .55s ease;
}
.hcm-td-campaign-card:hover .hcm-td-campaign-visual img { transform: scale(1.025); filter: contrast(1.04); }
.hcm-td-campaign-visual::after {
    content: "";
    position: absolute;
    inset: auto 0 0;
    height: 42%;
    background: linear-gradient(transparent, rgba(0,0,0,.82));
    pointer-events: none;
}
.hcm-td-placeholder {
    min-height: inherit;
    display: grid;
    place-items: center;
    background: repeating-linear-gradient(135deg, #131313 0 18px, #0b0b0b 18px 36px);
}
.hcm-td-placeholder span { color: rgba(255,255,255,.12); font-size: 100px; font-weight: 950; }
.hcm-td-badge,
.hcm-td-discount,
.hcm-td-lock {
    position: absolute;
    z-index: 2;
    top: 18px;
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding: 8px 12px;
    font-size: 11px;
    font-weight: 950;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #fff;
    background: rgba(0,0,0,.74);
    border: 1px solid rgba(255,255,255,.18);
    backdrop-filter: blur(8px);
}
.hcm-td-badge { left: 18px; }
.hcm-td-discount { right: 18px; background: var(--hcm-td-accent); border-color: var(--hcm-td-accent); }
.hcm-td-campaign-body { padding: clamp(18px, 3vw, 30px); }
.hcm-td-campaign-copy {
    display: flex;
    gap: 22px;
    align-items: start;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 20px;
}
.hcm-td-campaign-copy > h3,
.hcm-td-campaign-copy > p {
    flex: 1 1 320px;
}
.hcm-td-hero-grid.is-single .hcm-td-products-in-campaign {
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}
.hcm-td-campaign-copy h3 {
    margin: 0 0 7px;
    color: #fff;
    font-size: clamp(25px, 3vw, 42px);
    line-height: .98;
    letter-spacing: -.04em;
}
.hcm-td-campaign-copy p { margin: 0; color: var(--hcm-td-muted); line-height: 1.5; }
.hcm-td-countdown { flex: 0 0 auto; color: #fff; }
.hcm-td-countdown-label { display: block; margin-bottom: 6px; color: var(--hcm-td-muted); font-size: 11px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.hcm-td-countdown strong { display: flex; align-items: baseline; gap: 4px; white-space: nowrap; }
.hcm-td-countdown b { min-width: 28px; font-size: 25px; color: #fff; font-variant-numeric: tabular-nums; }
.hcm-td-countdown small { margin-right: 5px; color: var(--hcm-td-accent); font-size: 10px; font-weight: 900; }
.hcm-td-countdown.is-expired strong { opacity: .55; }
.hcm-td-products-in-campaign,
.hcm-td-product-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}
.hcm-td-product-card {
    display: grid;
    grid-template-columns: 116px minmax(0, 1fr);
    min-width: 0;
    border: 1px solid var(--hcm-td-line);
    background: rgba(255,255,255,.035);
    border-radius: 16px;
    overflow: hidden;
}
.hcm-td-product-image { min-height: 152px; background: #fff; overflow: hidden; }
.hcm-td-product-image img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .3s ease; }
.hcm-td-product-card:hover .hcm-td-product-image img { transform: scale(1.04); }
.hcm-td-product-info { padding: 14px; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; min-width: 0; }
.hcm-td-product-info h4 { margin: 0 0 7px; color: #fff; font-size: 16px; line-height: 1.2; }
.hcm-td-product-info h4 a { color: #fff; }
.hcm-td-price { margin-bottom: 10px; color: #fff; font-size: 16px; font-weight: 850; }
.hcm-td-price del { color: #898989; font-weight: 500; }
.hcm-td-price ins { color: #fff; text-decoration: none; }
.hcm-td-button,
.hcm-td-add,
.hcm-td-add-variable {
    width: 100%;
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 9px 12px;
    border: 0;
    border-radius: 9px;
    background: var(--hcm-td-accent);
    color: #fff !important;
    font: inherit;
    font-size: 11px;
    font-weight: 950;
    letter-spacing: .08em;
    text-transform: uppercase;
    cursor: pointer;
    transition: transform .15s ease, filter .15s ease, opacity .15s ease;
}
.hcm-td-button:hover { transform: translateY(-1px); filter: brightness(1.09); }
.hcm-td-button:disabled { cursor: not-allowed; opacity: .45; }
.hcm-td-button.is-loading { opacity: .7; }
.hcm-td-button.is-added { background: #228c4a; }
.hcm-td-variable-form { width: 100%; display: grid; gap: 7px; }
.hcm-td-variable-form label { display: grid; gap: 4px; }
.hcm-td-variable-form label > span { color: #d5d5d5; font-size: 10px; font-weight: 850; text-transform: uppercase; letter-spacing: .08em; }
.hcm-td-variable-form select {
    width: 100%;
    min-height: 34px;
    padding: 5px 28px 5px 8px;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 8px;
    background: #090909;
    color: #fff;
    font-size: 12px;
}
.hcm-td-sold-out { display: inline-flex; padding: 7px 9px; border: 1px solid rgba(255,255,255,.18); color: #b8b8b8; font-size: 11px; font-weight: 900; }
.hcm-td-product-card.is-sold-out { opacity: .64; }
.hcm-td-upcoming-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.hcm-td-upcoming-card { border: 1px solid var(--hcm-td-line); border-radius: 18px; overflow: hidden; background: var(--hcm-td-surface); }
.hcm-td-upcoming-visual { position: relative; min-height: 270px; overflow: hidden; background: #111; }
.hcm-td-upcoming-visual img { width: 100%; height: 100%; min-height: 270px; object-fit: cover; filter: grayscale(.82) brightness(.5) blur(2px); transform: scale(1.02); }
.hcm-td-lock { left: 50%; top: 50%; transform: translate(-50%, -50%); white-space: nowrap; }
.hcm-td-upcoming-copy { padding: 18px; display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.hcm-td-upcoming-copy h3 { margin: 0; color: #fff; font-size: 21px; }
.hcm-td-archive-grid { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.hcm-td-archive-card h3 { margin: 10px 0 0; color: #e8e8e8; font-size: 14px; }
.hcm-td-archive-image { position: relative; aspect-ratio: 1/1.16; border-radius: 14px; overflow: hidden; background: #111; }
.hcm-td-archive-image img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(1) contrast(.9) brightness(.65); }
.hcm-td-archive-image span { position: absolute; left: 10px; bottom: 10px; padding: 6px 8px; color: #fff; background: rgba(0,0,0,.75); border: 1px solid rgba(255,255,255,.18); font-size: 9px; font-weight: 950; letter-spacing: .1em; }
.hcm-td-empty { padding: 70px 24px; text-align: center; border: 1px dashed rgba(255,255,255,.18); border-radius: 22px; background: rgba(255,255,255,.025); }
.hcm-td-empty span { color: var(--hcm-td-accent); font-size: 11px; font-weight: 950; letter-spacing: .15em; }
.hcm-td-empty h2 { margin: 10px 0; color: #fff; font-size: 38px; }
.hcm-td-empty p { color: var(--hcm-td-muted); }
.hcm-td-promo-bar {
    position: relative;
    z-index: 999;
    width: 100%;
    background: var(--hcm-td-accent);
    color: #fff;
}
.hcm-td-promo-bar > a {
    min-height: 50px;
    max-width: 1480px;
    margin: 0 auto;
    padding: 8px 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    color: #fff !important;
    text-decoration: none;
}
.hcm-td-promo-bar strong { font-size: 14px; }
.hcm-td-promo-bar > a > span { padding: 4px 7px; background: #fff; color: #111; font-size: 9px; font-weight: 950; letter-spacing: .08em; text-transform: uppercase; }
.hcm-td-promo-bar .hcm-td-countdown strong { gap: 2px; }
.hcm-td-promo-bar .hcm-td-countdown b { min-width: 20px; font-size: 15px; }
.hcm-td-promo-bar .hcm-td-countdown small { color: rgba(255,255,255,.72); font-size: 8px; }
.hcm-td-promo-bar > a > b { font-size: 11px; letter-spacing: .08em; }
.hcm-td-toast {
    position: fixed;
    right: 20px;
    bottom: 20px;
    z-index: 100000;
    max-width: min(360px, calc(100vw - 40px));
    padding: 14px 17px;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 12px;
    color: #fff;
    background: #1b1b1b;
    box-shadow: 0 18px 50px rgba(0,0,0,.45);
    transform: translateY(24px);
    opacity: 0;
    pointer-events: none;
    transition: .2s ease;
}
.hcm-td-toast.is-visible { opacity: 1; transform: translateY(0); }
.hcm-td-toast.is-error { background: #7c1717; }
@media (max-width: 1120px) {
    .hcm-td-hero-grid > .hcm-td-featured,
    .hcm-td-hero-grid > .hcm-td-standard,
    .hcm-td-hero-grid > .hcm-td-standard:nth-child(n+3) { grid-column: span 12; }
    .hcm-td-featured .hcm-td-campaign-visual { min-height: 440px; }
    .hcm-td-upcoming-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .hcm-td-archive-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 780px) {
    .hcm-td-shell { padding: 12px 12px 48px; border-radius: 18px; }
    .hcm-td-intro { min-height: 280px; padding: 28px 20px; border-radius: 18px; }
    .hcm-td-intro h1 { font-size: clamp(48px, 20vw, 86px); }
    .hcm-td-section-head,
    .hcm-td-campaign-copy { align-items: flex-start; flex-direction: column; }
    .hcm-td-campaign-grid,
    .hcm-td-upcoming-grid { grid-template-columns: 1fr; }
    .hcm-td-products-in-campaign,
    .hcm-td-product-grid { grid-template-columns: 1fr; }
    .hcm-td-campaign-visual,
    .hcm-td-featured .hcm-td-campaign-visual { min-height: 330px; }
    .hcm-td-archive-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .hcm-td-promo-bar > a { justify-content: space-between; flex-wrap: wrap; gap: 6px 10px; }
    .hcm-td-promo-bar > a > span { display: none; }
}
@media (max-width: 460px) {
    .hcm-td-product-card { grid-template-columns: 98px minmax(0, 1fr); }
    .hcm-td-product-image { min-height: 145px; }
    .hcm-td-campaign-body { padding: 15px; }
    .hcm-td-countdown b { font-size: 20px; }
    .hcm-td-upcoming-copy { align-items: flex-start; flex-direction: column; }
}
.hcm-td-lookbook { margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--hcm-td-line); }
.hcm-td-lookbook-head { margin-bottom: 12px; display: flex; justify-content: space-between; align-items: end; gap: 14px; }
.hcm-td-lookbook-head span { color: var(--hcm-td-accent); font-size: 10px; font-weight: 950; letter-spacing: .14em; }
.hcm-td-lookbook-head strong { color: #fff; font-size: 25px; letter-spacing: -.03em; }
.hcm-td-lookbook-grid { display: grid; grid-template-columns: repeat(12,minmax(0,1fr)); grid-auto-rows: 170px; gap: 9px; }
.hcm-td-lookbook-item { margin: 0; grid-column: span 4; overflow: hidden; border-radius: 13px; background: #0b0b0c; }
.hcm-td-lookbook-item:first-child { grid-column: span 7; grid-row: span 2; }
.hcm-td-lookbook-item:nth-child(2) { grid-column: span 5; grid-row: span 2; }
.hcm-td-lookbook-item img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .4s ease; }
.hcm-td-lookbook-item:hover img { transform: scale(1.025); }
@media (max-width: 780px) {
    .hcm-td-lookbook-grid { grid-template-columns: repeat(2,minmax(0,1fr)); grid-auto-rows: 190px; }
    .hcm-td-lookbook-item,
    .hcm-td-lookbook-item:first-child,
    .hcm-td-lookbook-item:nth-child(2) { grid-column: span 1; grid-row: span 1; }
    .hcm-td-lookbook-item:first-child { grid-column: span 2; }
}

/* ========================================================================
   HCM Tee Drops v1.1 — editorial / lookbook redesign
   Less boxed UI, more full-bleed campaign storytelling.
   ======================================================================== */
.hcm-td-shell {
    width: 100vw;
    max-width: 100vw;
    margin-inline: calc(50% - 50vw);
    padding: 0 0 clamp(70px, 8vw, 130px);
    border-radius: 0;
    overflow: clip;
    background:
        radial-gradient(circle at 14% 10%, color-mix(in srgb, var(--hcm-td-accent) 18%, transparent), transparent 26%),
        radial-gradient(circle at 88% 38%, rgba(255,255,255,.035), transparent 26%),
        linear-gradient(180deg, #090909 0%, var(--hcm-td-bg) 42%, #050505 100%);
}
.hcm-td-shell > .hcm-td-section,
.hcm-td-shell > .hcm-td-empty {
    width: min(1420px, calc(100% - clamp(32px, 6vw, 110px)));
    margin-inline: auto;
}
.hcm-td-intro {
    width: 100%;
    max-width: none;
    min-height: clamp(470px, 66vh, 760px);
    margin: 0 0 clamp(54px, 7vw, 110px);
    padding-block: clamp(70px, 10vw, 150px);
    padding-inline: max(clamp(24px, 6vw, 80px), calc((100vw - 1420px) / 2));
    align-items: center;
    border: 0;
    border-radius: 0;
    background:
        linear-gradient(90deg, rgba(0,0,0,.95) 0%, rgba(0,0,0,.72) 42%, rgba(0,0,0,.18) 100%),
        repeating-linear-gradient(120deg, transparent 0 18px, rgba(255,255,255,.018) 18px 19px),
        radial-gradient(circle at 80% 40%, color-mix(in srgb, var(--hcm-td-accent) 35%, #111), #060606 58%);
}
.hcm-td-intro::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, transparent 70%, #090909 100%),
        linear-gradient(90deg, transparent 68%, rgba(255,255,255,.025) 68% 69%, transparent 69%);
    pointer-events: none;
}
.hcm-td-intro::after {
    right: clamp(-30px, 1vw, 20px);
    top: 12%;
    font-size: clamp(62px, 12vw, 185px);
    color: rgba(255,255,255,.045);
}
.hcm-td-intro > div { position: relative; z-index: 2; }
.hcm-td-intro h1 {
    max-width: 950px;
    font-size: clamp(68px, 11vw, 170px);
    line-height: .78;
}
.hcm-td-intro p {
    max-width: 760px;
    font-size: clamp(17px, 1.8vw, 24px);
}
.hcm-td-section { margin-top: clamp(70px, 9vw, 140px); }
.hcm-td-section-head {
    position: relative;
    margin-bottom: clamp(26px, 4vw, 58px);
    padding-bottom: 18px;
    border-bottom: 1px solid rgba(255,255,255,.11);
}
.hcm-td-section-head::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -1px;
    width: clamp(90px, 12vw, 180px);
    height: 3px;
    background: var(--hcm-td-accent);
}
.hcm-td-section-head h2 {
    font-size: clamp(42px, 6vw, 86px);
    line-height: .9;
}
.hcm-td-section-head p {
    max-width: 540px;
    font-size: 14px;
    line-height: 1.65;
}
.hcm-td-hero-grid,
.hcm-td-campaign-grid {
    display: block;
    max-width: none;
}
.hcm-td-hero-grid.is-single,
.hcm-td-campaign-grid.is-single {
    max-width: none;
}
.hcm-td-campaign-card,
.hcm-td-hero-grid.is-single > .hcm-td-featured {
    display: grid;
    grid-template-columns: minmax(0, 1.16fr) minmax(360px, .84fr);
    grid-template-areas: "visual body" "lookbook lookbook";
    gap: clamp(30px, 5vw, 86px);
    align-items: center;
    margin: 0;
    padding: clamp(28px, 5vw, 76px) 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    overflow: visible;
}
.hcm-td-campaign-card + .hcm-td-campaign-card {
    border-top: 1px solid rgba(255,255,255,.1);
}
.hcm-td-hero-grid .hcm-td-campaign-card:nth-child(even),
.hcm-td-campaign-grid .hcm-td-campaign-card:nth-child(even) {
    grid-template-areas: "body visual" "lookbook lookbook";
    grid-template-columns: minmax(360px, .84fr) minmax(0, 1.16fr);
}
.hcm-td-campaign-visual {
    grid-area: visual;
    min-height: clamp(470px, 56vw, 760px);
    aspect-ratio: 1 / 1.04;
    border-radius: clamp(2px, .5vw, 10px);
    box-shadow: 0 38px 100px rgba(0,0,0,.44);
}
.hcm-td-featured .hcm-td-campaign-visual { min-height: clamp(500px, 58vw, 800px); }
.hcm-td-campaign-visual::before {
    content: "";
    position: absolute;
    z-index: 1;
    inset: 0;
    border: 1px solid rgba(255,255,255,.12);
    pointer-events: none;
}
.hcm-td-campaign-visual::after {
    height: 34%;
    background: linear-gradient(transparent, rgba(0,0,0,.62));
}
.hcm-td-badge,
.hcm-td-discount {
    top: 22px;
    min-height: 40px;
    padding: 9px 13px;
    border-radius: 0;
}
.hcm-td-badge { left: 22px; }
.hcm-td-discount { right: 22px; }
.hcm-td-campaign-body {
    grid-area: body;
    padding: 0;
    min-width: 0;
}
.hcm-td-campaign-mode-label {
    margin-bottom: 20px;
    display: grid;
    gap: 5px;
}
.hcm-td-campaign-mode-label span {
    color: var(--hcm-td-accent);
    font-size: 10px;
    font-weight: 950;
    letter-spacing: .18em;
}
.hcm-td-campaign-mode-label strong {
    color: #fff;
    font-size: clamp(14px, 1.4vw, 20px);
    letter-spacing: .04em;
}
.hcm-td-campaign-copy {
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
    margin-bottom: clamp(26px, 4vw, 48px);
}
.hcm-td-campaign-copy > h3,
.hcm-td-campaign-copy > p { flex: none; }
.hcm-td-campaign-copy h3 {
    margin: 0;
    max-width: 800px;
    font-size: clamp(46px, 5.5vw, 88px);
    line-height: .88;
    letter-spacing: -.06em;
}
.hcm-td-campaign-copy p {
    max-width: 620px;
    font-size: clamp(15px, 1.3vw, 19px);
    line-height: 1.65;
}
.hcm-td-countdown {
    margin-top: 8px;
    padding-top: 18px;
    border-top: 1px solid rgba(255,255,255,.12);
}
.hcm-td-countdown strong { gap: 7px; }
.hcm-td-countdown b { min-width: 36px; font-size: clamp(27px, 3vw, 42px); }
.hcm-td-countdown small { margin-right: 8px; }
.hcm-td-products-in-campaign,
.hcm-td-hero-grid.is-single .hcm-td-products-in-campaign {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
    border-top: 1px solid rgba(255,255,255,.12);
}
.hcm-td-product-card {
    min-height: 132px;
    padding: 15px 0;
    display: grid;
    grid-template-columns: 104px minmax(0, 1fr);
    gap: 16px;
    align-items: center;
    border: 0;
    border-bottom: 1px solid rgba(255,255,255,.1);
    border-radius: 0;
    background: transparent;
    overflow: visible;
}
.hcm-td-product-image {
    min-height: 104px;
    aspect-ratio: 1 / 1;
    border-radius: 8px;
    background: #f3f3f3;
    overflow: hidden;
}
.hcm-td-product-image img { object-fit: contain; }
.hcm-td-product-info {
    padding: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    column-gap: 18px;
    align-items: center;
}
.hcm-td-product-info h4,
.hcm-td-price { grid-column: 1; }
.hcm-td-product-info h4 {
    margin-bottom: 5px;
    font-size: clamp(16px, 1.4vw, 21px);
}
.hcm-td-price { margin-bottom: 0; }
.hcm-td-product-info > .hcm-td-button,
.hcm-td-product-info > .hcm-td-variable-form,
.hcm-td-product-info > .hcm-td-sold-out {
    grid-column: 2;
    grid-row: 1 / span 2;
}
.hcm-td-button,
.hcm-td-add,
.hcm-td-add-variable {
    width: auto;
    min-width: 142px;
    min-height: 44px;
    border-radius: 0;
}
.hcm-td-variable-form { min-width: 190px; }
.hcm-td-lookbook {
    grid-area: lookbook;
    margin: clamp(20px, 4vw, 58px) 0 0;
    padding: 0;
    border: 0;
}
.hcm-td-lookbook-head {
    margin-bottom: 18px;
    padding-top: 18px;
    border-top: 1px solid rgba(255,255,255,.1);
}
.hcm-td-lookbook-head strong { font-size: clamp(28px, 4vw, 54px); }
.hcm-td-lookbook-grid {
    grid-auto-rows: clamp(190px, 22vw, 360px);
    gap: clamp(8px, 1vw, 16px);
}
.hcm-td-lookbook-item {
    border-radius: 0;
    box-shadow: 0 22px 65px rgba(0,0,0,.28);
}
.hcm-td-lookbook-item:first-child { grid-column: span 8; }
.hcm-td-lookbook-item:nth-child(2) { grid-column: span 4; }
.hcm-td-last-chance {
    position: relative;
    padding-block: clamp(35px, 5vw, 72px);
}
.hcm-td-last-chance::before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 50%;
    top: 0;
    width: 100vw;
    height: 100%;
    transform: translateX(-50%);
    background:
        linear-gradient(90deg, color-mix(in srgb, var(--hcm-td-accent) 12%, #080808), #080808 58%),
        repeating-linear-gradient(135deg, transparent 0 28px, rgba(255,255,255,.012) 28px 29px);
}
.hcm-td-upcoming-grid {
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: clamp(18px, 2vw, 32px);
}
.hcm-td-upcoming-card {
    border: 0;
    border-radius: 0;
    background: transparent;
}
.hcm-td-upcoming-visual { min-height: 360px; border-radius: 6px; }
.hcm-td-upcoming-copy { padding: 18px 0 0; }
.hcm-td-archive-grid {
    grid-template-columns: repeat(5, minmax(0,1fr));
    gap: clamp(15px, 2vw, 28px);
}
.hcm-td-archive-image { border-radius: 4px; }
.hcm-td-archive-card h3 { font-size: 15px; }
.hcm-td-gone-forever-campaign .hcm-td-campaign-visual::before {
    border-color: color-mix(in srgb, var(--hcm-td-accent) 65%, white 10%);
}
.hcm-td-gone-forever-notice {
    margin: 22px 0;
    padding: 18px 20px;
    display: grid;
    gap: 5px;
    border-left: 4px solid var(--hcm-td-accent, #ff2a2a);
    background: #111;
    color: #fff;
}
.hcm-td-gone-forever-notice strong { font-size: 16px; }
.hcm-td-gone-forever-notice span { color: #c1c1c1; line-height: 1.5; }
.hcm-td-gone-forever-product-badge {
    position: absolute;
    z-index: 5;
    left: 10px;
    top: 10px;
    padding: 7px 9px;
    background: #111;
    color: #fff;
    border-left: 3px solid #ff2a2a;
    font-size: 9px;
    font-weight: 950;
    letter-spacing: .11em;
}
@media (max-width: 1120px) {
    .hcm-td-campaign-card,
    .hcm-td-hero-grid .hcm-td-campaign-card:nth-child(even),
    .hcm-td-campaign-grid .hcm-td-campaign-card:nth-child(even) {
        grid-template-columns: minmax(0, 1fr) minmax(320px, .82fr);
    }
    .hcm-td-archive-grid { grid-template-columns: repeat(4, minmax(0,1fr)); }
}
@media (max-width: 900px) {
    .hcm-td-shell {
        width: 100%;
        max-width: 100%;
        margin-inline: 0;
    }
    .hcm-td-shell > .hcm-td-section,
    .hcm-td-shell > .hcm-td-empty { width: calc(100% - 28px); }
    .hcm-td-intro {
        min-height: 480px;
        padding-inline: 24px;
    }
    .hcm-td-campaign-card,
    .hcm-td-hero-grid .hcm-td-campaign-card:nth-child(even),
    .hcm-td-campaign-grid .hcm-td-campaign-card:nth-child(even) {
        grid-template-columns: 1fr;
        grid-template-areas: "visual" "body" "lookbook";
        gap: 28px;
    }
    .hcm-td-campaign-visual,
    .hcm-td-featured .hcm-td-campaign-visual {
        min-height: 0;
        aspect-ratio: 4 / 4.5;
    }
    .hcm-td-upcoming-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .hcm-td-archive-grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
}
@media (max-width: 620px) {
    .hcm-td-intro { min-height: 420px; }
    .hcm-td-intro h1 { font-size: clamp(58px, 23vw, 96px); }
    .hcm-td-section { margin-top: 68px; }
    .hcm-td-section-head h2 { font-size: clamp(38px, 13vw, 58px); }
    .hcm-td-campaign-copy h3 { font-size: clamp(42px, 14vw, 66px); }
    .hcm-td-product-card { grid-template-columns: 82px minmax(0,1fr); }
    .hcm-td-product-image { min-height: 82px; }
    .hcm-td-product-info {
        grid-template-columns: 1fr;
        gap: 9px;
    }
    .hcm-td-product-info > .hcm-td-button,
    .hcm-td-product-info > .hcm-td-variable-form,
    .hcm-td-product-info > .hcm-td-sold-out {
        grid-column: 1;
        grid-row: auto;
    }
    .hcm-td-button,
    .hcm-td-add,
    .hcm-td-add-variable { width: 100%; }
    .hcm-td-lookbook-grid {
        grid-template-columns: 1fr;
        grid-auto-rows: 270px;
    }
    .hcm-td-lookbook-item,
    .hcm-td-lookbook-item:first-child,
    .hcm-td-lookbook-item:nth-child(2) {
        grid-column: span 1;
        grid-row: span 1;
    }
    .hcm-td-upcoming-grid { grid-template-columns: 1fr; }
    .hcm-td-archive-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
.hcm-td-last-chance { isolation: isolate; }
.woocommerce ul.products li.product { position: relative; }

/* v1.2.0 — Stable promo bar and top-aligned editorial campaign */
.hcm-td-promo-bar > a {
    min-height: 58px;
    display: grid;
    grid-template-columns: auto auto auto;
    align-items: center;
    justify-content: center;
    column-gap: clamp(16px, 2.4vw, 34px);
    row-gap: 0;
    padding: 8px 18px;
}
.hcm-td-promo-copy {
    min-width: 0;
    display: inline-flex;
    align-items: center;
    gap: 13px;
    white-space: nowrap;
}
.hcm-td-promo-copy strong {
    margin: 0;
    color: #fff;
    font-size: 15px;
    line-height: 1.1;
}
.hcm-td-promo-copy em {
    display: inline-flex;
    align-items: center;
    min-height: 27px;
    padding: 5px 9px;
    background: #fff;
    color: #111;
    font-size: 9px;
    font-style: normal;
    font-weight: 950;
    line-height: 1;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.hcm-td-promo-bar .hcm-td-countdown {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    display: flex;
    align-items: center;
    align-self: center;
}
.hcm-td-promo-bar .hcm-td-countdown strong {
    min-height: 27px;
    margin: 0;
    display: inline-flex;
    align-items: baseline;
    gap: 3px;
    line-height: 1;
}
.hcm-td-promo-bar .hcm-td-countdown b {
    min-width: 22px;
    margin: 0;
    color: #fff;
    font-size: 16px;
    line-height: 1;
}
.hcm-td-promo-bar .hcm-td-countdown small {
    margin: 0 3px 0 0;
    color: rgba(255,255,255,.78);
    font-size: 8px;
    line-height: 1;
}
.hcm-td-promo-cta {
    color: #fff;
    font-size: 11px;
    font-weight: 950;
    line-height: 1;
    letter-spacing: .08em;
    white-space: nowrap;
}
.hcm-td-campaign-card,
.hcm-td-hero-grid.is-single > .hcm-td-featured {
    align-items: start;
}
.hcm-td-campaign-body {
    padding-top: clamp(2px, .6vw, 10px);
}
@media (max-width: 760px) {
    .hcm-td-promo-bar > a {
        grid-template-columns: minmax(0, 1fr) auto;
        justify-content: stretch;
        column-gap: 12px;
        min-height: 54px;
        padding-inline: 14px;
    }
    .hcm-td-promo-copy {
        overflow: hidden;
    }
    .hcm-td-promo-copy strong {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        font-size: 13px;
    }
    .hcm-td-promo-copy em,
    .hcm-td-promo-cta {
        display: none;
    }
}
@media (max-width: 440px) {
    .hcm-td-promo-bar .hcm-td-countdown small {
        display: none;
    }
    .hcm-td-promo-bar .hcm-td-countdown b {
        min-width: 19px;
        font-size: 14px;
    }
}
.hcm-td-promo-bar > a > .hcm-td-promo-copy,
.hcm-td-promo-bar > a > .hcm-td-promo-cta {
    min-height: 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: #fff;
    text-transform: none;
}

/* ========================================================================
   HCM Tee Drops v1.3.0 — stable promo row, upcoming subscriptions and
   frontoffice admin actions.
   ======================================================================== */
.hcm-td-promo-bar > a.hcm-td-promo-link {
    width: min(1480px, 100%);
    min-height: 58px;
    margin: 0 auto;
    padding: 8px clamp(14px, 2vw, 28px);
    display: flex !important;
    flex-flow: row nowrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: clamp(14px, 2.2vw, 34px) !important;
    color: #fff !important;
    text-decoration: none !important;
    line-height: 1 !important;
}
.hcm-td-promo-bar > a.hcm-td-promo-link > * {
    margin: 0 !important;
    align-self: center !important;
}
.hcm-td-promo-link .hcm-td-promo-copy {
    display: inline-flex !important;
    align-items: center !important;
    gap: 12px !important;
    min-width: 0;
    white-space: nowrap;
}
.hcm-td-promo-link .hcm-td-promo-copy strong,
.hcm-td-promo-link .hcm-td-promo-copy em,
.hcm-td-promo-link .hcm-td-promo-cta {
    margin: 0 !important;
    line-height: 1 !important;
}
.hcm-td-promo-link .hcm-td-countdown-compact {
    flex: 0 0 auto;
    min-width: 0;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
}
.hcm-td-promo-link .hcm-td-countdown-compact strong {
    min-height: 28px;
    margin: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 3px !important;
    line-height: 1 !important;
}
.hcm-td-promo-link .hcm-td-countdown-compact b,
.hcm-td-promo-link .hcm-td-countdown-compact small {
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
    vertical-align: middle !important;
}
.hcm-td-promo-link .hcm-td-countdown-compact b {
    min-width: 21px;
    color: #fff;
    font-size: 16px;
    font-variant-numeric: tabular-nums;
}
.hcm-td-promo-link .hcm-td-countdown-compact small {
    margin-right: 3px !important;
    color: rgba(255,255,255,.76);
    font-size: 8px;
    font-weight: 900;
}

.hcm-td-campaign-card > .hcm-td-campaign-visual,
.hcm-td-campaign-card > .hcm-td-campaign-body {
    align-self: start;
}
.hcm-td-campaign-body {
    padding-top: 0 !important;
}

.hcm-td-upcoming-card {
    display: flex;
    min-width: 0;
    flex-direction: column;
}
.hcm-td-upcoming-date {
    display: block;
    margin-bottom: 8px;
    color: var(--hcm-td-accent);
    font-size: 10px;
    font-weight: 950;
    letter-spacing: .12em;
    text-transform: uppercase;
}
.hcm-td-upcoming-copy {
    align-items: flex-start;
}
.hcm-td-upcoming-copy .hcm-td-countdown {
    margin: 0;
    padding: 0;
    border: 0;
}
.hcm-td-upcoming-copy .hcm-td-countdown b {
    min-width: 27px;
    font-size: 22px;
}
.hcm-td-upcoming-form {
    margin-top: 22px;
    padding-top: 20px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px;
    border-top: 1px solid rgba(255,255,255,.13);
}
.hcm-td-upcoming-email {
    display: grid;
    gap: 7px;
}
.hcm-td-upcoming-email > span {
    color: #fff;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.hcm-td-upcoming-email input {
    width: 100%;
    min-height: 48px;
    padding: 10px 13px;
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 0;
    outline: 0;
    background: rgba(255,255,255,.055);
    color: #fff;
    font: inherit;
}
.hcm-td-upcoming-email input:focus {
    border-color: var(--hcm-td-accent);
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--hcm-td-accent) 28%, transparent);
}
.hcm-td-upcoming-submit {
    min-height: 48px;
    align-self: end;
    padding: 10px 16px;
    border: 0;
    border-radius: 0;
    background: var(--hcm-td-accent);
    color: #fff;
    font: inherit;
    font-size: 10px;
    font-weight: 950;
    letter-spacing: .08em;
    cursor: pointer;
    white-space: nowrap;
}
.hcm-td-upcoming-submit:disabled {
    cursor: wait;
    opacity: .68;
}
.hcm-td-upcoming-consent {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: 18px minmax(0, 1fr);
    gap: 9px;
    align-items: start;
    color: #a9a9a9;
    font-size: 11px;
    line-height: 1.5;
}
.hcm-td-upcoming-consent input {
    width: 16px;
    height: 16px;
    margin: 1px 0 0;
    accent-color: var(--hcm-td-accent);
}
.hcm-td-upcoming-consent a {
    color: #fff;
    text-decoration: underline;
}
.hcm-td-upcoming-status {
    grid-column: 1 / -1;
    min-height: 18px;
    margin: 0;
    color: #bdbdbd;
    font-size: 12px;
    line-height: 1.45;
}
.hcm-td-upcoming-status.is-success { color: #71dda0; }
.hcm-td-upcoming-status.is-error { color: #ff8e8e; }
.hcm-td-upcoming-honeypot {
    position: absolute !important;
    left: -10000px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
}

.hcm-td-front-admin {
    position: fixed;
    z-index: 99990;
    right: 20px;
    bottom: 20px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px;
    border: 1px solid rgba(255,255,255,.18);
    background: rgba(8,8,8,.96);
    box-shadow: 0 18px 55px rgba(0,0,0,.45);
    backdrop-filter: blur(12px);
}
.hcm-td-front-admin > span {
    padding: 0 7px;
    color: #8e8e8e;
    font-size: 9px;
    font-weight: 950;
    letter-spacing: .12em;
}
.hcm-td-front-admin a {
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    padding: 8px 12px;
    color: #fff !important;
    font-size: 11px;
    font-weight: 900;
    text-decoration: none !important;
}
.hcm-td-front-admin-primary { background: var(--hcm-td-accent); }
.hcm-td-front-notice {
    position: relative;
    z-index: 4;
    width: min(1420px, calc(100% - clamp(32px, 6vw, 110px)));
    margin: 18px auto;
    padding: 15px 18px;
    border-left: 4px solid #73d59b;
    background: #121b15;
    color: #fff;
    font-size: 14px;
    line-height: 1.5;
}
.hcm-td-front-notice.is-error {
    border-left-color: #ff4242;
    background: #231010;
}

@media (max-width: 760px) {
    .hcm-td-promo-bar > a.hcm-td-promo-link {
        min-height: 54px;
        justify-content: space-between !important;
        gap: 10px !important;
    }
    .hcm-td-promo-link .hcm-td-promo-copy {
        flex: 1 1 auto;
        overflow: hidden;
    }
    .hcm-td-promo-link .hcm-td-promo-copy strong {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .hcm-td-promo-link .hcm-td-promo-copy em,
    .hcm-td-promo-link .hcm-td-promo-cta {
        display: none !important;
    }
    .hcm-td-upcoming-form {
        grid-template-columns: 1fr;
    }
    .hcm-td-upcoming-submit,
    .hcm-td-upcoming-consent,
    .hcm-td-upcoming-status {
        grid-column: 1;
    }
    .hcm-td-front-admin {
        right: 10px;
        bottom: 10px;
    }
    .hcm-td-front-admin > span,
    .hcm-td-front-admin a:not(.hcm-td-front-admin-primary) {
        display: none;
    }
}

/* ========================================================================
   v1.4.0 — inline admin controls, drop navigation, global alerts & mini-cart
   ======================================================================== */
.hcm-td-front-admin {
    position: relative !important;
    inset: auto !important;
    z-index: 4;
    width: 100%;
    margin: 0 0 12px;
    padding: 8px 10px;
    justify-content: flex-end;
    border: 1px solid rgba(255,255,255,.12);
    background: rgba(10,10,10,.78);
    box-shadow: none;
    backdrop-filter: blur(10px);
}
.hcm-td-front-admin > span { margin-right: auto; }

.hcm-td-front-nav {
    position: relative;
    z-index: 4;
    width: 100%;
    margin: 0 0 16px;
    padding: 0 2px 12px;
    display: flex;
    align-items: center;
    gap: clamp(12px, 2vw, 28px);
    overflow-x: auto;
    border-bottom: 1px solid rgba(255,255,255,.12);
    scrollbar-width: thin;
}
.hcm-td-front-nav a {
    flex: 0 0 auto;
    padding: 10px 0;
    color: #d8d8d8 !important;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .09em;
    text-transform: uppercase;
    text-decoration: none !important;
}
.hcm-td-front-nav a:hover,
.hcm-td-front-nav a:focus { color: #fff !important; }
.hcm-td-front-nav-alert {
    margin-left: auto;
    padding: 10px 14px !important;
    background: var(--hcm-td-accent);
    color: #fff !important;
}

.hcm-td-alerts {
    position: relative;
    z-index: 2;
    margin: 28px 0 42px;
    padding: clamp(24px, 4vw, 48px);
    display: grid;
    grid-template-columns: minmax(250px, .8fr) minmax(340px, 1.2fr);
    gap: clamp(24px, 5vw, 72px);
    align-items: center;
    overflow: hidden;
    background:
        linear-gradient(115deg, color-mix(in srgb, var(--hcm-td-accent) 34%, #170606), #0b0b0b 68%);
}
.hcm-td-alerts::after {
    content: "ALERT / ALERT / ALERT";
    position: absolute;
    right: -18px;
    bottom: -26px;
    color: rgba(255,255,255,.035);
    font-size: clamp(58px, 8vw, 128px);
    font-weight: 950;
    letter-spacing: -.06em;
    white-space: nowrap;
    pointer-events: none;
}
.hcm-td-alerts-copy,
.hcm-td-global-alert-form { position: relative; z-index: 1; }
.hcm-td-alerts-copy > span {
    color: #fff;
    font-size: 10px;
    font-weight: 950;
    letter-spacing: .16em;
}
.hcm-td-alerts-copy h2 {
    margin: 10px 0 12px;
    color: #fff;
    font-size: clamp(30px, 4vw, 56px);
    line-height: .95;
    letter-spacing: -.045em;
}
.hcm-td-alerts-copy p {
    max-width: 510px;
    margin: 0;
    color: #d0d0d0;
    line-height: 1.55;
}
.hcm-td-global-alert-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
}
.hcm-td-global-alert-form > label:first-child {
    display: grid;
    gap: 7px;
}
.hcm-td-global-alert-form label > span {
    color: #fff;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.hcm-td-global-alert-form input[type="email"] {
    width: 100%;
    min-height: 52px;
    padding: 11px 14px;
    border: 1px solid rgba(255,255,255,.24);
    border-radius: 0;
    outline: 0;
    background: rgba(0,0,0,.32);
    color: #fff;
    font: inherit;
}
.hcm-td-global-alert-form input[type="email"]:focus {
    border-color: #fff;
    box-shadow: 0 0 0 2px rgba(255,255,255,.12);
}
.hcm-td-global-alert-consent {
    display: grid;
    grid-template-columns: 18px minmax(0,1fr);
    gap: 9px;
    align-items: start;
    color: #bdbdbd;
    font-size: 11px;
    line-height: 1.45;
}
.hcm-td-global-alert-consent input { margin: 2px 0 0; accent-color: var(--hcm-td-accent); }
.hcm-td-global-alert-consent span { color: #c8c8c8 !important; font-size: 11px !important; font-weight: 500 !important; letter-spacing: 0 !important; text-transform: none !important; }
.hcm-td-global-alert-consent a { color: #fff; text-decoration: underline; }
.hcm-td-alert-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.hcm-td-alert-actions button {
    min-height: 46px;
    padding: 10px 16px;
    border: 1px solid var(--hcm-td-accent);
    background: var(--hcm-td-accent);
    color: #fff;
    font: inherit;
    font-size: 10px;
    font-weight: 950;
    letter-spacing: .08em;
    cursor: pointer;
}
.hcm-td-alert-actions button.is-secondary {
    border-color: rgba(255,255,255,.28);
    background: transparent;
}
.hcm-td-alert-actions button:disabled { opacity: .6; cursor: wait; }
.hcm-td-global-alert-status {
    min-height: 18px;
    margin: 0;
    color: #d0d0d0;
    font-size: 12px;
}
.hcm-td-global-alert-status.is-success { color: #85e4aa; }
.hcm-td-global-alert-status.is-error { color: #ff9b9b; }

.hcm-td-section-empty {
    padding: clamp(24px, 4vw, 48px) 0;
    display: grid;
    gap: 8px;
    border-top: 1px solid rgba(255,255,255,.12);
    border-bottom: 1px solid rgba(255,255,255,.12);
}
.hcm-td-section-empty strong { color: #fff; font-size: clamp(20px, 3vw, 34px); }
.hcm-td-section-empty span { color: var(--hcm-td-muted); }

.hcm-td-mini-cart-wrap { position: relative; z-index: 100010; }
.hcm-td-mini-cart-overlay {
    position: fixed;
    inset: 0;
    z-index: 100010;
    background: rgba(0,0,0,.62);
    opacity: 0;
    visibility: hidden;
    transition: opacity .24s ease, visibility .24s ease;
}
.hcm-td-mini-cart {
    position: fixed;
    z-index: 100011;
    top: 0;
    right: 0;
    width: min(440px, 94vw);
    height: 100dvh;
    transform: translateX(104%);
    background: #101010;
    color: #fff;
    box-shadow: -24px 0 70px rgba(0,0,0,.48);
    transition: transform .28s ease;
}
.hcm-td-mini-cart-wrap.is-open .hcm-td-mini-cart-overlay { opacity: 1; visibility: visible; }
.hcm-td-mini-cart-wrap.is-open .hcm-td-mini-cart { transform: translateX(0); }
body.hcm-td-cart-open { overflow: hidden; }
.hcm-td-mini-cart-inner {
    height: 100%;
    padding: 24px;
    display: flex;
    flex-direction: column;
}
.hcm-td-mini-cart-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(255,255,255,.14);
}
.hcm-td-mini-cart-head span { color: var(--hcm-td-accent); font-size: 9px; font-weight: 950; letter-spacing: .15em; }
.hcm-td-mini-cart-head h2 { margin: 6px 0 0; color: #fff; font-size: 30px; }
.hcm-td-mini-cart-head h2 b {
    display: inline-grid;
    place-items: center;
    min-width: 28px;
    height: 28px;
    margin-left: 6px;
    background: var(--hcm-td-accent);
    font-size: 13px;
    border-radius: 50%;
}
.hcm-td-mini-cart-close {
    width: 42px;
    height: 42px;
    border: 1px solid rgba(255,255,255,.18);
    background: transparent;
    color: #fff;
    font-size: 27px;
    line-height: 1;
    cursor: pointer;
}
.hcm-td-mini-cart-items {
    flex: 1 1 auto;
    overflow-y: auto;
    padding: 10px 0;
}
.hcm-td-mini-cart-item {
    display: grid;
    grid-template-columns: 76px minmax(0,1fr) 30px;
    gap: 12px;
    align-items: center;
    padding: 12px 0;
    border-bottom: 1px solid rgba(255,255,255,.1);
}
.hcm-td-mini-cart-item img { width: 76px; height: 88px; object-fit: cover; background: #fff; }
.hcm-td-mini-cart-item strong { display: block; margin-bottom: 6px; color: #fff; font-size: 14px; }
.hcm-td-mini-cart-item span { color: #b9b9b9; font-size: 12px; }
.hcm-td-mini-cart-item > a { color: #ff7a7a !important; font-size: 22px; text-align: center; }
.hcm-td-mini-cart-empty { flex: 1; display: grid; place-content: center; gap: 8px; text-align: center; }
.hcm-td-mini-cart-empty strong { color: #fff; font-size: 25px; }
.hcm-td-mini-cart-empty span { color: #aaa; }
.hcm-td-mini-cart-total {
    padding: 18px 0;
    display: flex;
    justify-content: space-between;
    gap: 18px;
    border-top: 1px solid rgba(255,255,255,.14);
    color: #bcbcbc;
}
.hcm-td-mini-cart-total strong { color: #fff; font-size: 20px; }
.hcm-td-mini-cart-buttons { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; }
.hcm-td-mini-cart-buttons a {
    min-height: 48px;
    display: grid;
    place-items: center;
    padding: 10px;
    border: 1px solid rgba(255,255,255,.22);
    color: #fff !important;
    font-size: 10px;
    font-weight: 950;
    letter-spacing: .07em;
    text-align: center;
}
.hcm-td-mini-cart-buttons a.is-primary { border-color: var(--hcm-td-accent); background: var(--hcm-td-accent); }

@media (max-width: 760px) {
    .hcm-td-front-admin { justify-content: flex-start; overflow-x: auto; }
    .hcm-td-front-admin > span { display: inline-flex; }
    .hcm-td-front-admin a:not(.hcm-td-front-admin-primary) { display: inline-flex; }
    .hcm-td-front-nav-alert { margin-left: 0; }
    .hcm-td-alerts { grid-template-columns: 1fr; }
    .hcm-td-mini-cart-inner { padding: 18px; }
    .hcm-td-mini-cart-buttons { grid-template-columns: 1fr; }
}

/* ========================================================================
   v1.5.0 — readable in-page navigation
   ======================================================================== */
.hcm-td-shell > .hcm-td-front-nav,
.hcm-td-shell > .hcm-td-front-admin {
    width: min(1420px, calc(100% - clamp(32px, 6vw, 110px)));
    margin-inline: auto;
}
.hcm-td-front-nav {
    padding: 8px 2px 14px;
    scroll-padding-inline: 8px;
    overscroll-behavior-inline: contain;
}
.hcm-td-front-nav a:first-child {
    margin-left: 0;
}
.hcm-td-front-nav-alert {
    margin-left: auto;
}
.hcm-td-shell > .hcm-td-alerts {
    width: min(1420px, calc(100% - clamp(32px, 6vw, 110px)));
    margin-inline: auto;
}
@media (max-width: 900px) {
    .hcm-td-shell > .hcm-td-front-nav,
    .hcm-td-shell > .hcm-td-front-admin,
    .hcm-td-shell > .hcm-td-alerts {
        width: calc(100% - 28px);
    }
    .hcm-td-front-nav {
        padding-inline: 4px;
    }
    .hcm-td-front-nav-alert {
        margin-left: 0;
    }
}

/* v1.5.0 navigation contrast refinement */
.hcm-td-front-nav {
    min-height: 58px;
    padding: 8px 16px 10px;
    justify-content: flex-start;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 8px;
    background: rgba(8,8,9,.92);
    box-shadow: 0 12px 38px rgba(0,0,0,.2);
}
.hcm-td-front-nav a {
    color: #ffffff !important;
    font-size: 12px;
    line-height: 1;
    opacity: .9;
}
.hcm-td-front-nav a:hover,
.hcm-td-front-nav a:focus-visible {
    color: #ffffff !important;
    opacity: 1;
}
.hcm-td-front-nav a::after {
    content: "";
    display: block;
    width: 0;
    height: 2px;
    margin-top: 8px;
    background: var(--hcm-td-accent, #ff2a2a);
    transition: width .18s ease;
}
.hcm-td-front-nav a:hover::after,
.hcm-td-front-nav a:focus-visible::after {
    width: 100%;
}
.hcm-td-front-nav-alert::after {
    display: none !important;
}
@media (max-width: 620px) {
    .hcm-td-front-nav {
        min-height: 54px;
        padding-inline: 12px;
        gap: 20px;
    }
}

/* ========================================================================
   v1.6.0 — Keep the website header/dropdowns above Tee Drops navigation
   ======================================================================== */
body.hcm-td-page-active .hcm-td-shell {
    position: relative;
    z-index: 0 !important;
    isolation: isolate;
}
body.hcm-td-page-active .hcm-td-front-nav,
body.hcm-td-page-active .hcm-td-front-admin {
    z-index: 1 !important;
}
body.hcm-td-page-active .site-header,
body.hcm-td-page-active #masthead,
body.hcm-td-page-active .header-wrapper,
body.hcm-td-page-active .main-header,
body.hcm-td-page-active .elementor-location-header,
body.hcm-td-page-active .et-l--header {
    z-index: 99950 !important;
}
body.hcm-td-page-active .site-header .sub-menu,
body.hcm-td-page-active #masthead .sub-menu,
body.hcm-td-page-active .header-wrapper .sub-menu,
body.hcm-td-page-active .main-header .sub-menu,
body.hcm-td-page-active .elementor-location-header .sub-menu,
body.hcm-td-page-active .et-l--header .sub-menu,
body.hcm-td-page-active .nav-dropdown,
body.hcm-td-page-active .dropdown-menu {
    z-index: 99960 !important;
}

/* ========================================================================
   v1.7.0 — Nu live campaign browser + configurable catalog views
   ======================================================================== */
.hcm-td-campaign-browser {
    --hcm-td-browser-cols: 4;
    --hcm-td-browser-cols-tablet: 3;
    --hcm-td-browser-cols-mobile: 1;
}
.hcm-td-browser-heading {
    margin-bottom: 24px;
}
.hcm-td-live-strip {
    width: 100%;
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(230px, 1fr);
    gap: 12px;
    padding: 2px 2px 16px;
    overflow-x: auto;
    scroll-snap-type: x proximity;
    scrollbar-width: thin;
    scrollbar-color: var(--hcm-td-accent) rgba(255,255,255,.08);
}
.hcm-td-live-strip::-webkit-scrollbar { height: 6px; }
.hcm-td-live-strip::-webkit-scrollbar-track { background: rgba(255,255,255,.06); }
.hcm-td-live-strip::-webkit-scrollbar-thumb { background: var(--hcm-td-accent); }
.hcm-td-live-strip-item {
    position: relative;
    min-width: 0;
    min-height: 116px;
    padding: 0;
    display: grid;
    grid-template-columns: 96px minmax(0, 1fr);
    align-items: stretch;
    overflow: hidden;
    scroll-snap-align: start;
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 10px;
    background: linear-gradient(145deg, rgba(255,255,255,.055), rgba(255,255,255,.018));
    color: #fff;
    text-align: left;
    cursor: pointer;
    box-shadow: 0 14px 36px rgba(0,0,0,.22);
    transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
.hcm-td-live-strip-item:hover,
.hcm-td-live-strip-item:focus-visible {
    transform: translateY(-2px);
    border-color: rgba(255,255,255,.34);
    outline: none;
}
.hcm-td-live-strip-item.is-active {
    border-color: var(--hcm-td-accent);
    background: linear-gradient(145deg, color-mix(in srgb, var(--hcm-td-accent) 22%, #151515), #0d0d0d);
    box-shadow: 0 0 0 1px var(--hcm-td-accent), 0 18px 46px rgba(0,0,0,.32);
}
.hcm-td-live-strip-item.is-active::after {
    content: "";
    position: absolute;
    inset: auto 0 0;
    height: 4px;
    background: var(--hcm-td-accent);
}
.hcm-td-live-strip-item:disabled { cursor: wait; opacity: .72; }
.hcm-td-strip-image {
    min-width: 0;
    background: #090909;
    overflow: hidden;
}
.hcm-td-strip-image img,
.hcm-td-strip-image .hcm-td-placeholder {
    width: 100%;
    height: 100%;
    min-height: 116px;
    display: block;
    object-fit: cover;
}
.hcm-td-strip-image .hcm-td-placeholder span { font-size: 24px; }
.hcm-td-strip-copy {
    min-width: 0;
    padding: 13px 14px 12px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 4px;
}
.hcm-td-strip-copy > small {
    color: var(--hcm-td-accent);
    font-size: 8px;
    font-weight: 950;
    letter-spacing: .12em;
    text-transform: uppercase;
}
.hcm-td-strip-copy > strong {
    overflow: hidden;
    color: #fff;
    font-size: 15px;
    line-height: 1.12;
    text-overflow: ellipsis;
}
.hcm-td-strip-copy > em {
    overflow: hidden;
    color: #aaa;
    font-size: 10px;
    line-height: 1.3;
    font-style: normal;
    white-space: nowrap;
    text-overflow: ellipsis;
}
.hcm-td-strip-copy > span {
    color: #bcbcbc;
    font-size: 10px;
}
.hcm-td-strip-copy > span b { color: #fff; }
.hcm-td-strip-copy .hcm-td-countdown-compact {
    margin-top: 3px;
    padding-top: 0;
    display: flex;
    align-items: baseline;
    gap: 3px;
    color: #fff;
    border: 0;
}
.hcm-td-strip-copy .hcm-td-countdown-compact b { font-size: 12px; }
.hcm-td-strip-copy .hcm-td-countdown-compact small { color: var(--hcm-td-accent); font-size: 7px; }
.hcm-td-strip-compact .hcm-td-live-strip-item { grid-template-columns: 72px minmax(0,1fr); min-height: 92px; }
.hcm-td-strip-compact .hcm-td-strip-image img,
.hcm-td-strip-compact .hcm-td-strip-image .hcm-td-placeholder { min-height: 92px; }
.hcm-td-strip-minimal .hcm-td-live-strip-item { grid-template-columns: minmax(0,1fr); min-height: 92px; }

.hcm-td-browser-stage {
    position: relative;
    margin-top: 26px;
    padding-top: clamp(24px, 4vw, 44px);
    border-top: 1px solid rgba(255,255,255,.14);
}
.hcm-td-browser-toolbar {
    margin-bottom: 24px;
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 24px;
}
.hcm-td-browser-toolbar > div:first-child > span {
    color: var(--hcm-td-accent);
    font-size: 9px;
    font-weight: 950;
    letter-spacing: .15em;
}
.hcm-td-browser-toolbar h3 {
    margin: 5px 0 5px;
    color: #fff;
    font-size: clamp(28px, 4vw, 52px);
    line-height: .95;
    letter-spacing: -.045em;
}
.hcm-td-browser-toolbar p { margin: 0; color: #aaa; font-size: 12px; }
.hcm-td-browser-toolbar p b { color: #fff; }
.hcm-td-browser-controls {
    display: flex;
    align-items: end;
    flex-wrap: wrap;
    gap: 12px;
}
.hcm-td-browser-controls label { display: grid; gap: 5px; }
.hcm-td-browser-controls label span {
    color: #aaa;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .09em;
    text-transform: uppercase;
}
.hcm-td-browser-sort {
    min-width: 190px;
    min-height: 40px;
    padding: 7px 34px 7px 11px;
    border: 1px solid rgba(255,255,255,.17);
    border-radius: 6px;
    background: #111;
    color: #fff;
}
.hcm-td-view-switcher { display: flex; gap: 5px; }
.hcm-td-view-switcher button {
    width: 42px;
    height: 40px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 6px;
    background: #111;
    color: #bbb;
    font-size: 18px;
    cursor: pointer;
}
.hcm-td-view-switcher button:hover,
.hcm-td-view-switcher button.is-active {
    border-color: var(--hcm-td-accent);
    background: var(--hcm-td-accent);
    color: #fff;
}
.hcm-td-browser-panel { min-height: 240px; transition: opacity .16s ease; }
.hcm-td-campaign-browser.is-loading .hcm-td-browser-panel { opacity: .28; pointer-events: none; }
.hcm-td-campaign-browser.is-loading .hcm-td-browser-stage::after {
    content: "CAMPAGNE LADEN…";
    position: absolute;
    z-index: 20;
    left: 50%;
    top: 180px;
    transform: translateX(-50%);
    padding: 12px 16px;
    border: 1px solid rgba(255,255,255,.2);
    background: #111;
    color: #fff;
    font-size: 10px;
    font-weight: 950;
    letter-spacing: .12em;
}
.hcm-td-browser-product-grid {
    display: grid;
    grid-template-columns: repeat(var(--hcm-td-browser-cols), minmax(0,1fr));
    gap: clamp(14px, 1.6vw, 24px);
}
.hcm-td-browser-empty {
    min-height: 220px;
    display: grid;
    place-content: center;
    gap: 7px;
    text-align: center;
    border-top: 1px solid rgba(255,255,255,.12);
    border-bottom: 1px solid rgba(255,255,255,.12);
}
.hcm-td-browser-empty strong { color: #fff; font-size: 25px; }
.hcm-td-browser-empty span { color: #aaa; }

.hcm-td-catalog-card {
    position: relative;
    min-width: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 18px;
    background: linear-gradient(180deg, #111 0%, #1b1b1b 100%);
    color: #fff;
    box-shadow: 0 14px 38px rgba(0,0,0,.24);
    transition: transform .18s ease, border-color .18s ease;
}
.hcm-td-catalog-card:hover {
    transform: translateY(-3px);
    border-color: color-mix(in srgb, var(--hcm-td-accent) 58%, white 8%);
}
.hcm-td-catalog-card.is-sold-out { opacity: .62; }
.hcm-td-catalog-image {
    position: relative;
    aspect-ratio: 1 / 1.05;
    display: block;
    overflow: hidden;
    background: #090909;
}
.hcm-td-catalog-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
    transition: transform .35s ease;
}
.hcm-td-catalog-card:hover .hcm-td-catalog-image img { transform: scale(1.025); }
.hcm-td-catalog-sale {
    position: absolute;
    z-index: 3;
    right: 12px;
    top: 12px;
    max-width: calc(100% - 24px);
    padding: 7px 9px;
    border-radius: 999px;
    background: var(--hcm-td-accent);
    color: #fff;
    font-size: 9px;
    font-weight: 950;
    line-height: 1.15;
    letter-spacing: .06em;
    text-align: center;
    overflow-wrap: anywhere;
}
.hcm-td-catalog-info {
    flex: 1;
    padding: 15px 14px 14px;
    display: flex;
    flex-direction: column;
}
.hcm-td-catalog-info h4 {
    margin: 0 0 8px;
    color: #fff;
    font-size: 15px;
    line-height: 1.15;
}
.hcm-td-catalog-info h4 a { color: #fff !important; }
.hcm-td-catalog-price {
    margin-bottom: 12px;
    color: #fff;
    font-size: 14px;
    font-weight: 900;
}
.hcm-td-catalog-price del { color: #8a8a8a; font-weight: 500; }
.hcm-td-catalog-price ins { color: #fff; text-decoration: none; }
.hcm-td-catalog-options { margin: 2px 0 12px; }
.hcm-td-catalog-options > div:first-child {
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    gap: 8px;
}
.hcm-td-catalog-options > div:first-child span {
    color: #aaa;
    font-size: 9px;
    font-weight: 950;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.hcm-td-catalog-options > div:first-child em {
    padding: 3px 6px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--hcm-td-accent) 35%, #222);
    color: #fff;
    font-size: 7px;
    font-weight: 950;
    font-style: normal;
}
.hcm-td-catalog-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.hcm-td-catalog-chips a,
.hcm-td-catalog-chips button {
    min-width: 48px;
    min-height: 40px;
    padding: 5px 7px;
    display: grid;
    place-items: center;
    gap: 1px;
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 8px;
    background: rgba(255,255,255,.025);
    color: #fff !important;
    text-align: center;
}
.hcm-td-catalog-chips a:hover,
.hcm-td-catalog-chips button:hover { border-color: var(--hcm-td-accent); }
.hcm-td-catalog-chips button { font: inherit; cursor: pointer; }
.hcm-td-catalog-chips button.is-active {
    border-color: var(--hcm-td-accent);
    background: color-mix(in srgb, var(--hcm-td-accent) 16%, #111);
    box-shadow: 0 0 0 1px color-mix(in srgb, var(--hcm-td-accent) 40%, transparent);
}
.hcm-td-catalog-chips button:focus-visible {
    outline: 2px solid var(--hcm-td-accent);
    outline-offset: 2px;
}
.hcm-td-catalog-chips b { font-size: 10px; }
.hcm-td-catalog-chips small { color: #ddd; font-size: 7px; }
.hcm-td-catalog-stock { margin: auto 0 12px; color: #ff8b8b; font-size: 10px; font-weight: 950; }
.hcm-td-catalog-cta {
    width: 100%;
    min-height: 42px;
    margin-top: auto;
    padding: 9px 11px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 9px;
    background: rgba(255,255,255,.045);
    color: #fff !important;
    font: inherit;
    font-size: 9px;
    font-weight: 950;
    letter-spacing: .06em;
    text-transform: uppercase;
    cursor: pointer;
}
.hcm-td-catalog-cta:hover { border-color: var(--hcm-td-accent); background: var(--hcm-td-accent); }
.hcm-td-catalog-cta:disabled { opacity: .45; cursor: not-allowed; }
.hcm-td-catalog-cta.is-loading { opacity: .6; }
.hcm-td-catalog-cta.is-added { border-color: #26864b; background: #26864b; }

.hcm-td-view-compact { grid-template-columns: repeat(var(--hcm-td-browser-cols), minmax(0,1fr)); }
.hcm-td-view-compact .hcm-td-catalog-card { border-radius: 10px; }
.hcm-td-view-compact .hcm-td-catalog-image { aspect-ratio: 1 / .82; }
.hcm-td-view-compact .hcm-td-catalog-options { display: none; }
.hcm-td-view-compact .hcm-td-catalog-info { padding: 12px; }
.hcm-td-view-list { grid-template-columns: 1fr; gap: 10px; }
.hcm-td-view-list .hcm-td-catalog-card {
    min-height: 150px;
    display: grid;
    grid-template-columns: 150px minmax(0,1fr);
    border-radius: 10px;
}
.hcm-td-view-list .hcm-td-catalog-image { aspect-ratio: auto; min-height: 150px; }
.hcm-td-view-list .hcm-td-catalog-info {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    column-gap: 20px;
    align-items: center;
}
.hcm-td-view-list .hcm-td-catalog-info h4,
.hcm-td-view-list .hcm-td-catalog-price,
.hcm-td-view-list .hcm-td-catalog-options { grid-column: 1; }
.hcm-td-view-list .hcm-td-catalog-cta,
.hcm-td-view-list .hcm-td-catalog-stock { grid-column: 2; grid-row: 1 / span 3; min-width: 160px; }
.hcm-td-view-classic { grid-template-columns: repeat(2, minmax(0,1fr)); }
.hcm-td-view-classic .hcm-td-product-card {
    padding: 14px;
    grid-template-columns: 112px minmax(0,1fr);
    gap: 14px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 12px;
    background: #151515;
}

@media (max-width: 1080px) {
    .hcm-td-browser-product-grid { grid-template-columns: repeat(var(--hcm-td-browser-cols-tablet), minmax(0,1fr)); }
    .hcm-td-live-strip { grid-auto-columns: minmax(220px, 42vw); }
}
@media (max-width: 760px) {
    .hcm-td-browser-toolbar { align-items: flex-start; flex-direction: column; }
    .hcm-td-browser-controls { width: 100%; align-items: stretch; }
    .hcm-td-browser-controls label { flex: 1 1 190px; }
    .hcm-td-browser-sort { width: 100%; }
    .hcm-td-live-strip { grid-auto-columns: minmax(215px, 82vw); }
    .hcm-td-browser-product-grid { grid-template-columns: repeat(var(--hcm-td-browser-cols-mobile), minmax(0,1fr)); gap: 12px; }
    .hcm-td-view-classic { grid-template-columns: 1fr; }
    .hcm-td-view-list .hcm-td-catalog-card { grid-template-columns: 105px minmax(0,1fr); min-height: 125px; }
    .hcm-td-view-list .hcm-td-catalog-image { min-height: 125px; }
    .hcm-td-view-list .hcm-td-catalog-info { display: flex; }
    .hcm-td-view-list .hcm-td-catalog-options { display: none; }
    .hcm-td-view-list .hcm-td-catalog-cta { min-width: 0; }
}
@media (max-width: 440px) {
    .hcm-td-catalog-info { padding: 12px 10px 10px; }
    .hcm-td-catalog-info h4 { font-size: 13px; }
    .hcm-td-catalog-chips a,
.hcm-td-catalog-chips button { min-width: 42px; }
    .hcm-td-view-switcher button { width: 38px; }
}

/* ========================================================================
   v1.7.1 — reliable mobile swipe for the live campaign selector
   ======================================================================== */
.hcm-td-live-strip {
    display: flex !important;
    flex-flow: row nowrap;
    align-items: stretch;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
    scroll-snap-type: x proximity;
    scroll-padding-inline: 2px;
    touch-action: pan-x pan-y;
    cursor: grab;
    user-select: none;
    -webkit-user-select: none;
}
.hcm-td-live-strip.is-dragging {
    cursor: grabbing;
    scroll-snap-type: none;
}
.hcm-td-live-strip-item {
    flex: 0 0 clamp(230px, 27vw, 360px);
    width: auto;
    max-width: min(360px, 88vw);
    touch-action: pan-x pan-y;
    user-select: none;
    -webkit-user-select: none;
    -webkit-tap-highlight-color: transparent;
}
.hcm-td-live-strip-item img,
.hcm-td-live-strip-item .hcm-td-placeholder,
.hcm-td-live-strip-item span {
    -webkit-user-drag: none;
}
@media (max-width: 1080px) {
    .hcm-td-live-strip-item {
        flex-basis: min(42vw, 330px);
    }
}
@media (max-width: 760px) {
    .hcm-td-live-strip {
        margin-inline: 0;
        padding: 2px 2px 18px;
        scroll-snap-type: x proximity;
        touch-action: pan-x pan-y;
    }
    .hcm-td-live-strip-item {
        flex-basis: min(82vw, 320px);
        max-width: min(82vw, 320px);
        scroll-snap-align: start;
        scroll-snap-stop: normal;
    }
}
@media (max-width: 420px) {
    .hcm-td-live-strip-item {
        flex-basis: min(84vw, 304px);
        max-width: min(84vw, 304px);
    }
}

/* v1.7.4 — native mobile swipe fallback */
.hcm-td-campaign-browser,
.hcm-td-browser-heading,
.hcm-td-browser-shell {
    min-width: 0;
    max-width: 100%;
}
.hcm-td-live-strip {
    position: relative;
    contain: layout paint;
    scroll-behavior: smooth;
    -ms-overflow-style: none;
}
.hcm-td-live-strip::-webkit-scrollbar {
    height: 4px;
}
@media (hover: none) and (pointer: coarse) {
    .hcm-td-live-strip {
        cursor: auto;
        touch-action: pan-x pan-y !important;
        scroll-behavior: auto;
        overscroll-behavior-inline: contain;
    }
    .hcm-td-live-strip-item {
        touch-action: pan-x pan-y !important;
    }
}
