/*
 * Canonical Swiss Vaporium homepage. Enqueue after site.css on front page.
 * Product card styling remains owned by product-card-v2.css.
 */

.svn-home-v2 {
    --svh2-aluminium: #d8dad8;
    --svh2-aluminium-deep: #9b9e9d;
    --svh2-carbon: #171919;
    --svh2-foil: #f7f7f3;
    --svh2-card-width: clamp(280px, 30vw, 388px);
}

.svh2-hero {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(390px, .92fr);
    grid-template-rows: minmax(620px, calc(100svh - 170px)) auto;
    gap: 24px clamp(32px, 5vw, 84px);
    width: min(100%, var(--sv-max));
    min-height: calc(100svh - 92px);
    margin-inline: auto;
    padding: clamp(40px, 6vw, 88px) var(--sv-space) 28px;
    overflow: clip;
    isolation: isolate;
}

.svh2-hero--studio-soft {
    background: #f7f7f3;
}

.svh2-hero--swiss-grid {
    background-color: #f4f4f1;
    background-image:
        linear-gradient(rgba(17, 17, 17, .055) 1px, transparent 1px),
        linear-gradient(90deg, rgba(17, 17, 17, .055) 1px, transparent 1px);
    background-size: 34px 34px;
}

.svh2-hero--swiss-grid::before {
    border-radius: 0;
    background: linear-gradient(135deg, rgba(227, 6, 19, .14), rgba(227, 6, 19, 0) 62%);
    transform: rotate(-8deg);
}

.svh2-hero--color-wash {
    background:
        radial-gradient(circle at 80% 17%, rgba(227, 6, 19, .14), transparent 31%),
        radial-gradient(circle at 62% 86%, rgba(102, 169, 126, .18), transparent 34%),
        radial-gradient(circle at 16% 72%, rgba(244, 193, 85, .13), transparent 28%),
        #f7f5f1;
}

.svh2-hero--color-wash::before {
    opacity: .5;
}

.svh2-hero::before {
    position: absolute;
    z-index: -2;
    top: 8%;
    right: -12%;
    width: min(58vw, 780px);
    aspect-ratio: 1;
    border-radius: 50%;
    background: radial-gradient(circle at 45% 42%, #fff 0 15%, #e8e9e6 40%, rgba(216, 218, 216, 0) 72%);
    content: "";
}

.svh2-hero::after {
    position: absolute;
    z-index: -1;
    inset: auto 0 0;
    height: 1px;
    background: var(--sv-rule);
    content: "";
}

.svh2-hero__copy {
    position: relative;
    z-index: 4;
    align-self: center;
    max-width: 790px;
}

.svh2-hero__copy h1 {
    max-width: 11.5ch;
    margin: 0;
    font: 700 clamp(42px, 6.1vw, 92px)/.98 var(--sv-display);
    letter-spacing: -.04em;
    text-wrap: balance;
}

.svh2-hero__copy > p {
    max-width: 58ch;
    margin: 30px 0 0;
    color: #3f4244;
    font-size: clamp(17px, 1.35vw, 21px);
}

.svh2-hero__actions {
    margin-top: 36px;
}

.svh2-product-theatre {
    position: relative;
    display: grid;
    align-self: stretch;
    place-items: center;
    min-width: 0;
    perspective: 1400px;
}

.svh2-product-theatre::before {
    position: absolute;
    top: 50%;
    left: 50%;
    width: min(90%, 530px);
    height: 64%;
    border: 1px solid rgba(17, 17, 17, .16);
    border-radius: 50%;
    transform: translate(-50%, -45%) rotate(-9deg);
    content: "";
}

.svh2-product-theatre::after {
    position: absolute;
    right: 4%;
    bottom: 10%;
    left: 7%;
    height: 11%;
    border-radius: 50%;
    background: rgba(17, 17, 17, .28);
    filter: blur(30px);
    transform: rotate(-3deg);
    content: "";
}

.svh2-deck {
    position: relative;
    z-index: 2;
    width: min(100%, 570px);
    min-height: 590px;
    outline: none;
}

.svh2-deck:focus-visible {
    outline: 3px solid var(--sv-red);
    outline-offset: 8px;
}

.svh2-deck__well {
    position: relative;
    width: 100%;
    height: 540px;
    transform-style: preserve-3d;
}

.svh2-card {
    --card-accent: #e30613;
    --card-accent-soft: #ff6871;
    --svh2-light-x: 50%;
    --svh2-light-y: 28%;
    position: absolute;
    top: 50%;
    left: 50%;
    width: var(--svh2-card-width);
    aspect-ratio: .72;
    opacity: 0;
    transform: translate(-50%, -50%) translate3d(82px, 4px, -130px) rotateY(-13deg) rotateZ(5deg) scale(.86);
    transform-origin: 50% 82%;
    transform-style: preserve-3d;
    pointer-events: none;
    transition: transform var(--sv-motion-scene,600ms) cubic-bezier(.16, 1, .3, 1), opacity 420ms ease, filter 420ms ease;
}

.svh2-card.is-active {
    z-index: 5;
    opacity: 1;
    filter: none;
    transform: translate(-50%, -50%) translate3d(var(--svh2-tilt-x, 0), var(--svh2-tilt-y, 0), 46px) rotateX(var(--svh2-rotate-x, 0deg)) rotateY(var(--svh2-rotate-y, -4deg)) rotateZ(-1.5deg) scale(1);
    pointer-events: auto;
}

.svh2-card.is-before {
    z-index: 2;
    opacity: calc(.9 - (var(--deck-distance, 1) * .14));
    filter: none;
    transform: translate(-50%, -50%) translate3d(calc(-24px - (var(--deck-distance, 1) * 11px)), calc(7px + (var(--deck-distance, 1) * 3px)), calc(-88px - (var(--deck-distance, 1) * 34px))) rotateY(7deg) rotateZ(calc(-2deg - (var(--deck-distance, 1) * .4deg))) scale(calc(.95 - (var(--deck-distance, 1) * .03)));
}

.svh2-card.is-after {
    z-index: 3;
    opacity: calc(.92 - (var(--deck-distance, 1) * .13));
    filter: none;
    transform: translate(-50%, -50%) translate3d(calc(24px + (var(--deck-distance, 1) * 12px)), calc(8px + (var(--deck-distance, 1) * 3px)), calc(-74px - (var(--deck-distance, 1) * 38px))) rotateY(-7deg) rotateZ(calc(2deg + (var(--deck-distance, 1) * .4deg))) scale(calc(.96 - (var(--deck-distance, 1) * .03)));
}

.svh2-card--tone-1 {
    --card-accent: #e30613;
    --card-accent-soft: #ff6871;
}

.svh2-card--tone-2 {
    --card-accent: #e30613;
    --card-accent-soft: #ff6871;
}

.svh2-card--tone-3 {
    --card-accent: #e30613;
    --card-accent-soft: #ff6871;
}

.svh2-card__link {
    position: relative;
    display: block;
    height: 100%;
    color: var(--sv-ink);
    text-decoration: none;
}

.svh2-card:not(.is-active) .svh2-card__link::after {
    position: absolute;
    z-index: 20;
    inset: 0;
    border: 1px solid #d5d6d2;
    border-top: 4px solid var(--card-accent);
    border-radius: 14px;
    background:
        linear-gradient(118deg, rgba(255, 255, 255, .96), rgba(245, 245, 241, .98));
    box-shadow: 12px 20px 36px rgba(17, 17, 17, .13);
    content: "";
}

.svh2-card__face {
    position: relative;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto;
    width: 100%;
    height: 100%;
    padding: 4px;
    overflow: hidden;
    border: 1px solid #cfd0cd;
    border-top: 4px solid var(--card-accent);
    border-radius: 14px;
    background: #fff;
    box-shadow: 16px 28px 46px rgba(17, 17, 17, .18);
    transform: translateZ(0);
}

.svh2-card__face::before {
    position: absolute;
    z-index: 4;
    inset: 4px;
    border: 1px solid rgba(17, 17, 17, .06);
    border-radius: 10px;
    content: "";
    pointer-events: none;
}

.svh2-card__face::after {
    position: absolute;
    z-index: 3;
    inset: 4px 4px 27%;
    background: radial-gradient(circle at var(--svh2-light-x) var(--svh2-light-y), rgba(255, 255, 255, .78), transparent 31%);
    content: "";
    mix-blend-mode: soft-light;
    opacity: .66;
    transition: opacity 220ms ease;
    pointer-events: none;
}

.svh2-card.is-active:hover .svh2-card__face::after,
.svh2-card.is-active:focus-within .svh2-card__face::after {
    opacity: .95;
}

.svh2-card__brand {
    position: relative;
    z-index: 2;
    max-width: none;
    padding: 15px 48px 5px 17px;
    overflow: hidden;
    background: #fff;
    color: var(--card-accent);
    font: 700 10px/1.2 var(--sv-display);
    letter-spacing: .08em;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.svh2-card__media {
    position: relative;
    z-index: 1;
    display: grid;
    min-height: 0;
    width: calc(100% - 24px);
    aspect-ratio: 1;
    align-self: center;
    justify-self: center;
    place-items: center;
    margin: 0 12px 10px;
    padding: 0;
    overflow: hidden;
    border: 1px solid #ecece8;
    background: #fff;
}

.svh2-card__media::before {
    display: none;
}

.svh2-card__media::after {
    position: absolute;
    z-index: 3;
    right: 0;
    bottom: 0;
    left: 0;
    height: 18%;
    background: linear-gradient(to bottom, transparent, #fff 68%);
    content: "";
    pointer-events: none;
}

.svh2-card__media img {
    position: relative;
    z-index: 2;
    width: calc(100% + 24px);
    max-width: none;
    height: calc(100% + 24px);
    max-height: none;
    object-fit: contain;
    filter: none;
    mix-blend-mode: normal;
}

.svh2-card.has-limited-image .svh2-card__media img {
    width: calc(100% + 16px);
    height: calc(100% + 16px);
    filter: none;
}

.svh2-card__media-fallback {
    position: absolute;
    z-index: 1;
    display: none;
    place-items: center;
    text-align: center;
}

.svh2-card__media[data-quality="missing"] .svh2-card__media-fallback,
.svh2-card__media.is-broken .svh2-card__media-fallback {
    display: grid;
}

.svh2-card__media.is-broken img {
    display: none;
}

.svh2-card__media-fallback b {
    color: var(--card-accent);
    font: 700 clamp(82px, 9vw, 132px)/.8 var(--sv-display);
    letter-spacing: -.04em;
}

.svh2-card__media-fallback small {
    max-width: 20ch;
    margin-top: 14px;
    font-weight: 700;
}

.svh2-card__details {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 0;
    border: 0;
}

.svh2-card__details strong {
    display: -webkit-box;
    overflow: hidden;
    color: var(--sv-ink);
    font: 650 clamp(14px, 1.18vw, 18px)/1.16 var(--sv-display);
    letter-spacing: -.02em;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.svh2-card__details small {
    margin-top: 5px;
    overflow: hidden;
    color: #666a6b;
    font-size: 10px;
    letter-spacing: .04em;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.svh2-card__ticket {
    position: relative;
    z-index: 4;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: center;
    gap: 0;
    min-height: 82px;
    padding: 14px 16px 13px;
    border-top: 1px solid #d9dad7;
    background: #fff;
}

.svh2-card__cut {
    display: none;
}

.svh2-deck__console {
    position: absolute;
    right: auto;
    bottom: 0;
    left: 50%;
    z-index: 9;
    display: grid;
    grid-template-columns: 44px minmax(44px, 1fr) 44px 44px;
    align-items: center;
    width: 220px;
    min-height: 44px;
    color: rgba(17, 17, 17, .62);
    transform: translateX(-50%);
    transition: color 160ms ease;
}

.svh2-deck__console:hover,
.svh2-deck__console:focus-within {
    color: var(--sv-ink);
}

.svh2-deck__console button {
    display: grid;
    width: 44px;
    height: 44px;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--sv-ink);
    cursor: pointer;
    place-items: center;
}

.svh2-deck__console button:hover {
    color: var(--sv-red);
}

.svh2-deck__console button[aria-pressed="true"] {
    background: var(--sv-red);
    color: #fff;
}

.svh2-deck__console svg {
    width: 20px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: square;
    stroke-linejoin: miter;
    stroke-width: 1.8;
}

.svh2-deck__console p {
    margin: 0;
    text-align: center;
}

.svh2-deck__console [data-deck-status] {
    font: 650 10px var(--sv-display);
    letter-spacing: .03em;
}

.svh2-card--empty {
    position: relative;
    top: auto;
    left: auto;
    opacity: 1;
    transform: rotateY(-4deg) rotateZ(-1.5deg);
}

.svh2-card--empty .svh2-card__face {
    display: grid;
    place-items: center;
    text-align: center;
}

.svh2-card--empty strong {
    max-width: 18ch;
    font: 650 20px/1.3 var(--sv-display);
}

.svh2-card__empty-mark {
    color: var(--sv-red);
    font: 300 150px/.8 var(--sv-display);
}

.svh2-hero__facts {
    grid-column: 1 / -1;
    display: block;
    min-height: 1px;
    padding: 0;
    border-top: 1px solid var(--sv-rule);
}

@media (max-width: 1050px) {
    .svh2-hero {
        grid-template-columns: minmax(0, 1fr) minmax(340px, .82fr);
        gap: 20px;
    }

    .svh2-hero__copy h1 {
        font-size: clamp(39px, 5.8vw, 68px);
    }

    .svh2-deck {
        min-height: 550px;
    }

    .svh2-deck__well {
        height: 500px;
    }
}

@media (max-width: 800px) {
    .svh2-hero {
        grid-template-columns: 1fr;
        grid-template-rows: auto auto auto;
        gap: 20px;
        padding-top: 54px;
    }

    .svh2-hero__copy {
        max-width: 680px;
    }

    .svh2-hero__copy h1 {
        max-width: 12ch;
        font-size: clamp(40px, 9vw, 68px);
    }

    .svh2-product-theatre {
        min-height: 570px;
    }

    .svh2-deck {
        width: min(100%, 590px);
    }
}

@media (max-width: 520px) {
    .svn-home-v2 {
        --svh2-card-width: min(78vw, 310px);
    }

    .svh2-hero {
        min-height: auto;
        padding-top: 40px;
    }

    .svh2-hero__copy h1 {
        font-size: clamp(37px, 11.3vw, 52px);
    }

    .svh2-hero__copy > p {
        margin-top: 22px;
        font-size: 17px;
    }

    .svh2-hero__actions {
        align-items: stretch;
        margin-top: 28px;
    }

    .svh2-hero__actions .svn-button {
        width: 100%;
    }

    .svh2-product-theatre {
        min-height: 495px;
    }

    .svh2-product-theatre::before {
        width: 102%;
        height: 58%;
    }

    .svh2-deck {
        min-height: 485px;
    }

    .svh2-deck__well {
        height: 440px;
    }

    .svh2-card__face {
        padding: 4px;
    }

    .svh2-card__media {
        margin: 0;
    }

    .svh2-card__media img {
        max-height: 240px;
    }

}

@media (prefers-reduced-motion: reduce) {
    .svh2-card,
    .svh2-card__face::after {
        transition-duration: .01ms;
    }

    .svh2-deck__console [data-deck-pause] {
        display: none;
    }

    .svh2-card.is-active {
        transform: translate(-50%, -50%) translate3d(0, 0, 20px) rotateZ(-1deg);
    }
}

@media (forced-colors: active) {
    .svh2-card__face {
        border: 2px solid CanvasText;
        background: Canvas;
    }

    .svh2-product-theatre::before,
    .svh2-product-theatre::after,
    .svh2-card__face::after,
    .svh2-card__media::before {
        display: none;
    }
}

/* Dense homepage pass: proposition, shortcuts, products within first scan. */
.svn-home-v2{--svh2-card-width:clamp(238px,25vw,318px)}
.svh2-hero{grid-template-columns:minmax(0,1.08fr) minmax(330px,.92fr);grid-template-rows:510px auto;gap:18px clamp(26px,4vw,64px);min-height:0;padding:26px var(--sv-space) 18px}
.svh2-hero__copy h1{font-size:clamp(42px,5.2vw,76px);line-height:.96}.svh2-hero__copy>p{margin-top:20px;font-size:clamp(15px,1.15vw,18px)}.svh2-hero__actions{margin-top:24px}
.svh2-deck{min-height:495px}.svh2-deck__well{height:443px}.svh2-deck__console{bottom:-24px}
.svn-home-bridge{display:grid;grid-template-columns:minmax(170px,.52fr) minmax(0,1.8fr) auto;align-items:stretch;width:min(100%,var(--sv-max));margin-inline:auto;border-top:1px solid var(--sv-rule);border-bottom:1px solid var(--sv-rule);background:#fff;color:var(--sv-ink)}
.svn-home-bridge__eyebrow{display:flex;align-items:center;margin:0;padding:18px var(--sv-space);border-right:1px solid var(--sv-rule);color:var(--sv-red);font:700 10px/1.25 var(--sv-display);letter-spacing:.08em;text-transform:uppercase}
.svn-home-bridge ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none}.svn-home-bridge li{display:grid;grid-template-rows:auto auto;align-content:center;min-width:0;padding:14px 18px;border-right:1px solid var(--sv-rule)}.svn-home-bridge li>strong{overflow:hidden;font:700 11px/1.25 var(--sv-display);text-overflow:ellipsis;white-space:nowrap}.svn-home-bridge li>small{margin-top:3px;overflow:hidden;color:var(--sv-muted);font-size:10px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}
.svn-home-bridge>a{display:inline-flex;min-width:170px;min-height:64px;align-items:center;justify-content:center;gap:12px;padding:14px 20px;background:var(--sv-ink);color:#fff;font:700 10px/1.2 var(--sv-display);text-decoration:none;transition:background-color var(--sv-motion-fast) ease}.svn-home-bridge>a .svn-icon{width:17px;transform:rotate(90deg);transition:transform var(--sv-motion-fast) ease}.svn-home-bridge>a:hover,.svn-home-bridge>a:focus-visible{background:var(--sv-red)}.svn-home-bridge>a:hover .svn-icon,.svn-home-bridge>a:focus-visible .svn-icon{transform:translateY(3px) rotate(90deg)}
.svn-buying-path{display:grid;grid-template-columns:minmax(250px,.72fr) minmax(0,1.6fr);gap:clamp(30px,5vw,76px);padding:34px var(--sv-space);background:var(--sv-ink);color:#fff}
.svn-buying-path>header{align-self:center}.svn-buying-path h2{max-width:9ch;margin:0;font:700 clamp(34px,3.9vw,56px)/.96 var(--sv-display);letter-spacing:-.035em}.svn-buying-path>header p{max-width:38ch;margin:14px 0 0;color:#b9b9bd;font-size:12px;line-height:1.5}
.svn-buying-path nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid #3d3d42;border-left:1px solid #3d3d42}
.svn-buying-path nav a{display:grid;grid-template-columns:28px minmax(0,1fr) 18px;min-height:76px;align-items:center;gap:12px;padding:12px 16px;border-right:1px solid #3d3d42;border-bottom:1px solid #3d3d42;color:#fff;text-decoration:none;transition:background-color 160ms ease,color 160ms ease}
.svn-buying-path nav a>.svn-icon:first-child{width:24px;height:24px;color:#ff3541}.svn-buying-path nav a>.svn-icon:last-child{width:16px}.svn-buying-path nav span{display:grid;gap:4px;min-width:0}.svn-buying-path nav strong{font:700 13px var(--sv-display)}.svn-buying-path nav small{overflow:hidden;color:#9d9da2;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.svn-buying-path nav a:hover,.svn-buying-path nav a:focus-visible{background:var(--sv-red);color:#fff}.svn-buying-path nav a:hover>.svn-icon,.svn-buying-path nav a:focus-visible>.svn-icon,.svn-buying-path nav a:hover small,.svn-buying-path nav a:focus-visible small{color:#fff}
.svn-buying-path,.svn-products{scroll-margin-top:110px}.svn-products{padding-top:clamp(48px,5vw,72px);padding-bottom:clamp(64px,7vw,100px)}

.svn-products__all{display:inline-flex;min-height:42px;align-items:center;gap:14px;margin-bottom:36px!important;padding:10px 15px;border:1px solid var(--sv-ink);background:var(--sv-ink);color:#fff;font:700 11px var(--sv-display);text-decoration:none;transition:background-color 160ms ease,border-color 160ms ease,color 160ms ease}.svn-products__all .svn-icon{width:17px;height:17px;transition:transform 160ms ease}.svn-products__all:hover,.svn-products__all:focus-visible{border-color:var(--sv-red);background:var(--sv-red);color:#fff}.svn-products__all:hover .svn-icon,.svn-products__all:focus-visible .svn-icon{transform:translateX(3px)}
.svn-product-rail{overflow:hidden;padding-block:clamp(44px,4vw,52px) 0}.svn-product-rail+.svn-product-rail{margin-top:48px;padding-top:0;border-top:0}.svn-product-rail:last-child{padding-bottom:clamp(44px,4vw,52px)}.svn-product-rail>header{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:end;gap:12px}.svn-product-rail>header h2{margin-right:auto}.svn-product-rail__controls{display:flex;gap:6px;margin-bottom:36px}.svn-product-rail__controls button{display:grid;width:44px;height:44px;place-items:center;border:1px solid var(--sv-ink);background:#fff;color:var(--sv-ink);cursor:pointer;transition:background-color var(--sv-motion-fast) ease,color var(--sv-motion-fast) ease}.svn-product-rail__controls button .svn-icon{width:17px}.svn-product-rail__controls button:first-child .svn-icon{transform:rotate(180deg)}.svn-product-rail__controls button:hover,.svn-product-rail__controls button:focus-visible{background:var(--sv-red);color:#fff}.svn-product-rail__controls button:disabled{cursor:default;opacity:.28}.svn-product-rail__viewport{overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scroll-snap-type:x mandatory;scroll-behavior:smooth}.svn-product-rail__viewport:focus-visible{outline:3px solid var(--sv-red);outline-offset:3px}.svn-product-rail ul.products{display:grid!important;grid-auto-columns:calc((100% - 54px)/4);grid-auto-flow:column;grid-template-columns:none!important;gap:18px!important;width:max-content;min-width:100%;margin:0!important;padding:0 0 12px!important}.svn-product-rail ul.products>li.product{width:auto!important;min-width:0;scroll-snap-align:start}

.svn-restock{display:grid;grid-template-columns:minmax(270px,.55fr) minmax(0,1.45fr);padding:0 var(--sv-space);background:var(--sv-ink);color:#fff}.svn-restock__intro{display:flex;min-width:0;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(42px,5vw,72px) clamp(26px,4vw,58px) clamp(42px,5vw,72px) 0;border-right:1px solid #37373b}.svn-restock__intro>p{margin:0 0 16px;color:#ff3541;font:700 10px/1 var(--sv-display);letter-spacing:.09em;text-transform:uppercase}.svn-restock__intro h2{max-width:8ch;margin:0;font:700 clamp(38px,4.4vw,62px)/.94 var(--sv-display);letter-spacing:-.045em}.svn-restock__intro>span{max-width:36ch;margin-top:22px;color:#c7c7ca;font-size:14px;line-height:1.55}.svn-restock__intro>a{display:inline-flex;align-items:center;gap:10px;margin-top:30px;color:#fff;font:700 12px/1.2 var(--sv-body);text-decoration:none}.svn-restock__intro>a .svn-icon{width:17px;color:#ff3541;transition:transform 160ms ease}.svn-restock__intro>a:hover .svn-icon,.svn-restock__intro>a:focus-visible .svn-icon{transform:translateX(4px)}.svn-restock__products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:center;gap:1px;padding:clamp(26px,4vw,52px);background:#37373b}.svn-restock__product{position:relative;display:grid;grid-template-columns:80px minmax(0,1fr) 108px;grid-template-rows:1fr auto;min-width:0;min-height:154px;background:#fff;color:var(--sv-ink)}.svn-restock__media{grid-row:1/3;display:grid;place-items:center;padding:12px;border-right:1px solid var(--sv-rule);background:#f4f4f1}.svn-restock__media img{width:100%;height:100%;max-height:126px;object-fit:contain}.svn-restock__details{min-width:0;padding:18px 16px 8px}.svn-restock__details>p{margin:0 0 6px;overflow:hidden;color:var(--sv-red);font:700 9px/1.2 var(--sv-display);letter-spacing:.05em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.svn-restock__details h3{margin:0;font:700 14px/1.25 var(--sv-body);letter-spacing:-.02em}.svn-restock__details h3 a{display:-webkit-box;overflow:hidden;color:inherit;text-decoration:none;-webkit-box-orient:vertical;-webkit-line-clamp:2}.svn-restock__details>span{display:block;margin-top:6px;overflow:hidden;color:var(--sv-muted);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.svn-restock__commerce{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:8px;margin:0 16px;padding:8px 0 14px;border-top:1px solid var(--sv-rule)}.svn-restock__commerce>strong{min-width:0;color:var(--sv-red);font:800 13px/1.2 var(--sv-body);white-space:nowrap}.svn-restock__commerce>small{color:#176534;font:700 9px/1 var(--sv-body);white-space:nowrap}.svn-restock__buy{grid-column:3;grid-row:1/3;display:flex;align-items:center;justify-content:center;gap:8px;border:0;border-left:1px solid #313136;background:var(--sv-ink);color:#fff;cursor:pointer;font:700 11px/1.2 var(--sv-body);transition:background-color 160ms ease}.svn-restock__buy>span{color:#ff3541;font-size:18px}.svn-restock__buy:hover,.svn-restock__buy:focus-visible{background:var(--sv-red)}.svn-restock__buy:hover>span,.svn-restock__buy:focus-visible>span{color:#fff}.svn-restock__product.is-loading{opacity:.62}.svn-restock__product.is-loading .svn-restock__buy{cursor:wait}

@media(max-width:1050px){.svh2-hero{grid-template-columns:minmax(0,1fr) minmax(310px,.82fr);grid-template-rows:500px auto}.svh2-deck{min-height:475px}.svh2-deck__well{height:423px}}
@media(max-width:1050px){.svn-restock__products{grid-template-columns:1fr}.svn-restock__product{min-height:132px}}
@media(max-width:800px){.svh2-hero{grid-template-columns:1fr;grid-template-rows:auto auto auto;padding-top:42px}.svh2-product-theatre{min-height:470px}.svh2-deck{min-height:455px}.svh2-deck__well{height:403px}.svn-home-bridge{grid-template-columns:1fr auto}.svn-home-bridge__eyebrow{grid-column:1/-1;min-height:44px;padding-block:12px;border-right:0;border-bottom:1px solid var(--sv-rule)}.svn-home-bridge ul{grid-template-columns:1fr}.svn-home-bridge li{min-height:54px}.svn-home-bridge>a{min-width:150px}.svn-buying-path{grid-template-columns:1fr}.svn-buying-path h2{max-width:none}.svn-buying-path>header p{max-width:54ch}.svn-restock{grid-template-columns:1fr}.svn-restock__intro{padding-right:0;border-right:0;border-bottom:1px solid #37373b}.svn-restock__intro h2{max-width:none}.svn-restock__products{padding-inline:0}}
@media(max-width:800px){.svn-product-rail ul.products{grid-auto-columns:calc((100% - 18px)/2)}.svn-product-rail>header{align-items:center}.svn-product-rail__controls,.svn-product-rail .svn-products__all{margin-bottom:16px!important}}
@media(max-width:520px){.svn-home-v2{--svh2-card-width:min(70vw,265px)}.svh2-hero{padding-top:30px}.svh2-hero__copy h1{width:calc(100vw - 40px);max-width:calc(100vw - 40px);font-size:clamp(31px,8.2vw,36px)}.svh2-hero__copy>p{margin-top:17px;font-size:15px}.svh2-hero__actions{margin-top:22px}.svh2-product-theatre{min-height:435px}.svh2-deck{min-height:425px}.svh2-deck__well{height:373px}.svn-home-bridge{display:block}.svn-home-bridge__eyebrow{padding-inline:18px}.svn-home-bridge li{padding-inline:18px;border-right:0}.svn-home-bridge li+li{border-top:1px solid var(--sv-rule)}.svn-home-bridge>a{width:100%;min-height:48px}.svn-buying-path{gap:24px;padding:30px 18px}.svn-buying-path nav{grid-template-columns:1fr}.svn-buying-path nav a{min-height:68px}.svn-buying-path h2{font-size:34px}.svn-products{padding-top:44px}.svn-products__all{min-height:40px;margin-bottom:0!important;padding:9px 12px}.svn-restock{padding-inline:18px}.svn-restock__intro{padding-block:38px}.svn-restock__intro h2{font-size:36px}.svn-restock__products{padding-block:18px}.svn-restock__product{grid-template-columns:72px minmax(0,1fr);grid-template-rows:auto auto auto}.svn-restock__media{grid-column:1;grid-row:1/3}.svn-restock__details{grid-column:2;grid-row:1;padding:14px 12px 7px}.svn-restock__commerce{grid-column:2;grid-row:2;margin-inline:12px;padding-bottom:10px}.svn-restock__buy{grid-column:1/-1;grid-row:3;min-height:44px;border-top:1px solid #313136;border-left:0}.svn-restock__media img{max-height:102px}}
@media(max-width:520px){.svn-product-rail>header{grid-template-columns:minmax(0,1fr) auto}.svn-product-rail>header h2{grid-column:1/-1}.svn-product-rail__controls{grid-column:1}.svn-product-rail .svn-products__all{grid-column:2}.svn-product-rail ul.products{grid-auto-columns:82%;gap:12px!important}.svn-product-rail__viewport{margin-right:calc(var(--sv-space)*-1)}}

/* Flavor-jungle signature: low-cost CSS atmosphere around real product cards. */
.svh2-atmosphere{position:absolute;z-index:0;inset:0;overflow:hidden;pointer-events:none}.svh2-atmosphere i{position:absolute;width:clamp(90px,13vw,190px);aspect-ratio:1;border-radius:48% 52% 63% 37%;opacity:.2;filter:blur(1px);animation:svh2-float 8s ease-in-out infinite alternate}.svh2-atmosphere i:nth-child(1){top:9%;right:29%;background:radial-gradient(circle at 35% 35%,#ff2634,transparent 67%)}.svh2-atmosphere i:nth-child(2){top:29%;right:3%;background:radial-gradient(circle at 45% 45%,#ffb300,transparent 67%);animation-delay:-2s}.svh2-atmosphere i:nth-child(3){right:36%;bottom:7%;background:radial-gradient(circle at 50% 50%,#6fbe44,transparent 66%);animation-delay:-4s}.svh2-atmosphere i:nth-child(4){top:12%;left:45%;width:70px;background:#e30613;clip-path:polygon(50% 0,62% 37%,100% 50%,62% 63%,50% 100%,38% 63%,0 50%,38% 37%);opacity:.09}.svh2-atmosphere i:nth-child(5){right:8%;bottom:9%;width:55px;background:#171717;clip-path:polygon(50% 0,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 39%);opacity:.07}.svh2-atmosphere i:nth-child(6){top:45%;right:39%;width:34px;background:#e30613;opacity:.16}@keyframes svh2-float{to{transform:translate3d(14px,-18px,0) rotate(12deg) scale(1.08)}}
.svh2-card__brand-links{position:absolute;z-index:12;top:18px;left:22px;display:flex;max-width:calc(100% - 76px);gap:6px;overflow:hidden}.svh2-card__brand-links a{color:var(--card-accent);font:700 10px/1.2 var(--sv-display);letter-spacing:.06em;text-decoration:none;text-transform:uppercase;white-space:nowrap}.svh2-card__brand-links a+a:before{margin-right:6px;color:#999;content:'›'}.svh2-card__brand-links a:hover{text-decoration:underline}.svh2-card__brand{visibility:hidden}
.svn-buying-path__trust{display:grid;gap:7px;margin-top:18px}.svn-buying-path__trust span{display:flex;align-items:center;gap:8px;color:#ddd;font-size:10px}.svn-buying-path__trust .svn-icon{width:15px;color:#ff3541}
@media(prefers-reduced-motion:reduce){.svh2-atmosphere i{animation:none}}

/* Mixed 3D carousel: centered selected card with visible neighboring cards. */
.svh2-deck{width:min(100%,680px)}
.svh2-card.is-selected{z-index:5;opacity:1;filter:none;pointer-events:auto;transform:translate(-50%,-50%) translate3d(var(--svh2-tilt-x,0),var(--svh2-tilt-y,0),46px) rotateX(var(--svh2-rotate-x,0deg)) rotateY(var(--svh2-rotate-y,-2deg)) scale(1)}
.svh2-card.is-before{z-index:2;opacity:.68;transform:translate(calc(-50% - clamp(108px,9vw,146px)),-50%) translateZ(-92px) rotateY(24deg) scale(.78)}
.svh2-card.is-after{z-index:3;opacity:.72;transform:translate(calc(-50% + clamp(108px,9vw,146px)),-50%) translateZ(-82px) rotateY(-24deg) scale(.8)}
.svh2-card.is-far{opacity:0;visibility:hidden}
.svh2-card--promotion .svh2-card__brand,.svh2-card--collection .svh2-card__brand{visibility:visible}
.svh2-card--promotion .svh2-card__face{border-color:#222;border-top-color:var(--sv-red)}
.svh2-card--collection .svh2-card__face{border-top-width:6px}

@media(max-width:800px){
  .svh2-hero{grid-template-areas:"theatre" "copy" "facts";grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;gap:4px;padding-top:20px}
  .svh2-product-theatre{grid-area:theatre;min-height:455px}
  .svh2-hero__copy{grid-area:copy;align-self:start;padding-top:10px}
  .svh2-hero__facts{grid-area:facts}
  .svh2-deck{width:min(100%,620px);min-height:445px}
  .svh2-deck__well{height:393px}
  .svh2-card.is-before{transform:translate(calc(-50% - clamp(76px,20vw,118px)),-50%) translateZ(-70px) rotateY(22deg) scale(.76)}
  .svh2-card.is-after{transform:translate(calc(-50% + clamp(76px,20vw,118px)),-50%) translateZ(-66px) rotateY(-22deg) scale(.78)}
  .svh2-hero__copy h1{max-width:16ch}
  .svh2-hero__actions .svn-button{width:100%;justify-content:center}
}

@media(max-width:520px){
  .svn-home-v2{--svh2-card-width:min(61vw,236px)}
  .svh2-hero{padding-top:14px}
  .svh2-product-theatre{min-height:425px}
  .svh2-deck{min-height:425px}
  .svh2-deck__well{height:373px}
  .svh2-card.is-before{opacity:.58;transform:translate(calc(-50% - 68px),-50%) translateZ(-60px) rotateY(24deg) scale(.76)}
  .svh2-card.is-after{opacity:.62;transform:translate(calc(-50% + 68px),-50%) translateZ(-56px) rotateY(-24deg) scale(.78)}
  .svh2-deck__console button{min-width:44px;min-height:44px}
  .svh2-hero__copy{padding-top:6px}
  .svh2-hero__copy h1{width:auto;max-width:15ch;font-size:clamp(30px,9vw,38px)}
}

@media(prefers-reduced-motion:reduce){
  .svh2-card,.svh2-card.is-selected,.svh2-card.is-before,.svh2-card.is-after{transition:none}
}

/* Product rail sizing owner: fixed viewport, overflowing flex items. */
.svn-product-rail ul.products{display:flex!important;width:100%!important;min-width:0!important}
.svn-product-rail ul.products>li.product{flex:0 0 calc((100% - 54px)/4)!important}
@media(max-width:800px){.svn-product-rail ul.products>li.product{flex-basis:calc((100% - 18px)/2)!important}}
@media(max-width:520px){.svn-product-rail ul.products{gap:12px!important}.svn-product-rail ul.products>li.product{flex-basis:82%!important}}

/* Production-real e-liquid navigator. */
.svn-buying-path>header>small{display:block;margin-bottom:14px;color:#ff3541;font:700 9px/1.2 var(--sv-display);letter-spacing:.08em;text-transform:uppercase}
.svn-buying-path>header>a{display:inline-flex;min-height:44px;align-items:center;gap:10px;margin-top:24px;color:#fff;font:700 11px/1.2 var(--sv-body);text-decoration:none}.svn-buying-path>header>a .svn-icon{width:17px;color:#ff3541;transition:transform var(--sv-motion-fast) ease}.svn-buying-path>header>a:hover .svn-icon,.svn-buying-path>header>a:focus-visible .svn-icon{transform:translateX(4px)}
.svn-buying-path nav{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:auto}.svn-buying-path nav a{min-height:104px}
@media(max-width:1050px){.svn-buying-path nav{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.svn-buying-path nav{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto}.svn-buying-path nav a{min-height:82px}}
@media(max-width:520px){.svn-buying-path nav{grid-template-columns:1fr}.svn-buying-path nav a{min-height:68px}.svn-product-rail+.svn-product-rail{margin-top:32px}.svn-product-rail:last-child{padding-bottom:32px}}

/* Rail scrollbar stays functional but visually hidden; arrows and pause remain explicit. */
.svn-product-rail__viewport{scrollbar-width:none;-ms-overflow-style:none}.svn-product-rail__viewport::-webkit-scrollbar{display:none;width:0;height:0}.svn-product-rail__controls [data-rail-pause]{font:700 12px/1 var(--sv-display)}
.svh2-card--bogo.is-paired{width:min(calc(var(--svh2-card-width) + var(--svh2-card-width) + 44px),calc(100% - 8px));height:100%;aspect-ratio:auto}
.svh2-card--bogo.is-paired .svh2-card__link{height:100%}
.svh2-bogo-pair{display:grid;width:100%;height:100%;grid-template-columns:minmax(0,1fr) 36px minmax(0,1fr);align-items:center}
.svh2-bogo-card{display:grid;min-width:0;height:100%;align-self:stretch;grid-template-rows:auto minmax(0,1fr);gap:8px}
.svh2-bogo-role{display:block;min-width:0;padding:0 4px;color:var(--sv-ink);font:750 10px/1.2 var(--sv-display);letter-spacing:.07em;text-transform:uppercase;white-space:nowrap}
.svh2-bogo-card--gift .svh2-bogo-role{color:var(--sv-red)}
.svh2-bogo-operator{display:grid;width:36px;height:36px;place-items:center;color:var(--sv-red);font:700 30px/1 var(--sv-display)}
.svh2-bogo-pair .svh2-card__face{width:100%;height:auto;min-height:0;align-self:stretch;grid-template-rows:minmax(0,1fr) auto auto;aspect-ratio:auto}
.svh2-bogo-pair .svh2-card__face--gift{border-color:#d7a4a8;border-top-color:var(--sv-red)}
.svh2-bogo-pair .svh2-card__media{width:calc(100% - 18px);margin-right:9px;margin-left:9px}
.svh2-bogo-pair .svh2-card__ticket{min-height:54px;padding:9px 12px}
.svh2-bogo-pair .svh2-card__details strong{font-size:clamp(12px,1vw,15px)}
.svh2-bogo-pool__media{position:relative;z-index:1;display:block;min-height:0;width:calc(100% - 18px);height:100%;aspect-ratio:auto;align-self:stretch;justify-self:center;margin:0 9px 7px;overflow:hidden;border:1px solid #ecece8;background:linear-gradient(145deg,#f7f7f4,#fff)}
.svh2-bogo-pool__media>span{position:absolute;top:13%;left:4%;display:grid;width:56%;height:72%;place-items:center;padding:4px;overflow:hidden;background:#fff;border:1px solid #dedfdb;box-shadow:5px 8px 16px rgba(17,17,17,.11);transform:rotate(-4deg)}
.svh2-bogo-pool__media>span:nth-child(2){z-index:2;right:4%;left:auto;transform:rotate(3deg)}
.svh2-bogo-pool__media>span:nth-child(3){z-index:3;top:17%;left:22%;transform:rotate(-1deg)}
.svh2-bogo-pool__media img{width:100%;height:100%;object-fit:contain}
.svh2-bogo-pool .svh2-card__details small{color:var(--sv-red);font-weight:750}
@media(max-width:520px){.svh2-card--bogo.is-paired{width:calc(100% - 4px)}.svh2-bogo-pair{grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr)}.svh2-bogo-operator{width:24px;height:24px;font-size:22px}.svh2-bogo-role{padding:0 2px;font-size:8px;letter-spacing:.035em}.svh2-bogo-pair .svh2-card__ticket{min-height:62px;padding:8px}.svh2-bogo-pair .svh2-card__details strong{font-size:10px}.svh2-bogo-pair .svh2-card__media{width:calc(100% - 10px);margin-right:5px;margin-left:5px}}
