/* =====================================================================================
   Game launch (format 31): the Launch kit. Ports of _local/hero-fx-ref/launch-kit/launch-poster-gta.html (look "poster")
   and launch-temple-zelda.html (look "temple"); markup Formats/_launch.cshtml, motion /web/js/hero/launch.js +
   launch-look-{look}.js. Printed before home_hero.css, so every rule uses .hs .hs-slide.hsf-launch specificity.
   THE FIRST PAINT IS THE FINISHED SLIDE (rest state = final state): the Poster shows the key art (the LCP picture) with
   the cut-out exactly over it in the same box (the cut-out is exported at the art's size), the box, the words and the
   price; the Temple shows a CSS sky, arch and pedestal with the cover on it. The canvases fade in after load + idle.
   Pictures are never tinted or filtered (one exception kept from the Zelda board: the character dims a little at dusk).
   Sizes follow the boards: cqw / cqh of the backdrop and the front layer (size containers on the whole slide), and cqw
   of the content frame for the words (1 cqw = 12 design px on the 1200 canvas, 3.6 px on a 360 phone).
   ARABIC: the scene mirrors as the boards do (the art box and the cut-out flip; the box moves to the other side).
   ===================================================================================== */

/* The boards' title fonts, self-hosted (SIL OFL, /web/fonts/launch/OFL-LICENSE.txt), Latin only: Anton (Poster title +
   countdown tiles) and Cinzel (Temple pre-line + gold name). This file loads only on pages with a launch slide, and a
   browser fetches a font only when an element uses it, so no other page pays for them. Arabic keeps the site's font. */
@font-face {
    font-family: "Launch Anton";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("../../fonts/launch/anton-latin-400.woff2") format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
    font-family: "Launch Cinzel";
    font-style: normal;
    font-weight: 400 900;
    font-display: swap;
    src: url("../../fonts/launch/cinzel-latin-var.woff2") format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

.hs .hs-slide.hsf-launch {
    --hsf-rtl-mirror: 1;
    --hsf-cx: 0;
    --hsf-cw: 520;
    --hsf-cx-rtl: 0;
    --hsf-tl: 5.5cqw;
    --hsf-tw: 40cqw;
    --hsf-tt: 0;
    --hsf-tb: 0;
    --lnc-lime: #bcd767;
    --lnc-lime-ink: #14200a;
    /* The buttons keep their own width on phones too, as in the boards (fix 1). */
    --hs-btn-grow: 0;
    background: #1a0826;
}

.hs .hs-slide.hsf-launch[data-hs-llook="temple"] {
    --hsf-tl: 6cqw;
    --hsf-tw: 42cqw;
    background: #06100d;
}

/* The kit owns the text motion (launch.js): the stage's text entrances stay off. */
.hs .hs-slide.hsf.hsf-launch .hs-anim {
    animation: none !important;
    opacity: 1;
}

/* ---- the scene: backdrop (behind the words) and front layer (over them; never takes a click but the box and the note) ---- */
.hs .hs-slide.hsf-launch .lnc-bd,
.hs .hs-slide.hsf-launch .lnc-front {
    position: absolute;
    inset: 0;
    container-type: size;
    overflow: hidden;
    pointer-events: none;
}

.hs .hs-slide.hsf-launch .lnc-bd { z-index: 0; }
.hs .hs-slide.hsf-launch .lnc-front { z-index: 3; }

.hs .hs-slide.hsf-launch .lnc-layer {
    position: absolute;
    inset: 0;
    transform-origin: 50% 60%;
    will-change: transform;
}

.hs .hs-slide.hsf-launch .lnc-hero { z-index: 2; transform-origin: 50% 100%; }
.hs .hs-slide.hsf-launch .lnc-fronds { z-index: 4; }

.hs .hs-slide.hsf-launch .lnc-cv {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    display: block;
    pointer-events: none;
}

/* The front layer's stack: the staff (1), the neon frame (1), the box (2), sparks and light (3), the note (4), the flash (5). */
.hs .hs-slide.hsf-launch .lnc-front .lnc-mid { z-index: 1; }
.hs .hs-slide.hsf-launch .lnc-front .lnc-top { z-index: 3; }

.hs .hs-slide.hsf-launch .lnc-cv--fade {
    opacity: 0;
    transition: opacity .6s ease;
}

.hs .hs-slide.hsf-launch .lnc-cv--fade.is-on { opacity: 1; }

/* ---- Poster: the key art and the cut-out share one box (the art's shape) ---- */
.hs .hs-slide.hsf-launch .lnc-bd--poster {
    --lnc-art-h: 62cqh;
    background: linear-gradient(90deg, var(--lnc-edge-l, #2a0f3a), var(--lnc-edge-r, #2a0f3a));
}

/* The box is as wide as the picture's own shape at that height (width auto), so it never stretches; the characters'
   opaque box (--lnc-x0 .. --lnc-x1, shares of the picture, read by the server) is placed with a translate in % of it. */
.hs .hs-slide.hsf-launch .lnc-art {
    position: absolute;
    height: var(--lnc-art-h);
    width: auto;
    top: calc(100cqh - var(--lnc-art-h));
    left: 50cqw;
    translate: calc((var(--lnc-x0, .27) + var(--lnc-x1, .89)) * -50%) 0;
}

.hs .hs-slide.hsf-launch[dir="rtl"] .lnc-art {
    left: auto;
    right: 50cqw;
    translate: calc((var(--lnc-x0, .27) + var(--lnc-x1, .89)) * 50%) 0;
}

.hs .hs-slide.hsf-launch .lnc-art .hsf-pic,
.hs .hs-slide.hsf-launch .lnc-art img {
    display: block;
    width: auto;
    height: 100%;
    max-width: none;
}
.hs .hs-slide.hsf-launch[dir="rtl"] .lnc-art img { scale: -1 1; }

/* The plate canvas (art with the people taken out, painted by launch-look-poster.js) replaces the sharp art picture. */
.hs .hs-slide.hsf-launch .lnc-bd.is-plated .lnc-world .lnc-art { visibility: hidden; }

.hs .hs-slide.hsf-launch .lnc-scrim {
    position: absolute;
    inset: 0;
    z-index: 3;
    background: linear-gradient(180deg, rgba(26, 8, 38, .86) 0%, rgba(26, 8, 38, .62) 40%, rgba(26, 8, 38, 0) 60%);
}

.hs .hs-slide.hsf-launch .lnc-floor {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 20%;
    z-index: 3;
    background: linear-gradient(180deg, rgba(26, 8, 38, 0), rgba(26, 8, 38, .55));
}

/* ---- Temple: the CSS first paint (sky, arch, pedestal); the painted scene fades in over it ---- */
.hs .hs-slide.hsf-launch .lnc-bd--temple {
    --lnc-sky-top: #0b2a24;
    --lnc-sky-mid: #1d5a48;
    --lnc-ground: #123026;
    --lnc-glow: rgba(191, 240, 216, .45);
    --lnc-win-a: #e9fff4;
    --lnc-win-b: #9fe3c4;
    --lnc-stone: #4f5b51;
    --lnc-cx: 50cqw;
    --lnc-cov-h: 34cqh;
    --lnc-ped-top: 88.5cqh;
    --lnc-arch-w: calc(var(--lnc-cov-h) * .61 * 2.15);
    --lnc-arch-top: 44cqh;
    --lnc-ground-y: 93cqh;
    --lnc-ch: 20cqh;
    --lnc-char-x: 17cqw;
    --lnc-feet: 92.5cqh;
    background: #06100d;
}

.hs .hs-slide.hsf-launch[data-hs-lera="dusk"] .lnc-bd--temple {
    --lnc-sky-top: #1a1030;
    --lnc-sky-mid: #55243a;
    --lnc-ground: #1d1018;
    --lnc-glow: rgba(255, 176, 112, .45);
    --lnc-win-a: #ffd6a0;
    --lnc-win-b: #d8573e;
    --lnc-stone: #5d4e4c;
}

.hs .hs-slide.hsf-launch .lnc-sky,
.hs .hs-slide.hsf-launch .lnc-arch,
.hs .hs-slide.hsf-launch .lnc-ped {
    position: absolute;
    transition: opacity .6s ease;
}

.hs .hs-slide.hsf-launch .lnc-sky {
    inset: 0;
    background:
        radial-gradient(60cqw 60cqh at var(--lnc-cx) calc(var(--lnc-arch-top) + var(--lnc-arch-w) * .5), var(--lnc-glow), transparent 70%),
        linear-gradient(180deg, var(--lnc-sky-top) 0%, var(--lnc-sky-mid) 62%, var(--lnc-ground) 100%);
}

.hs .hs-slide.hsf-launch .lnc-arch {
    left: calc(var(--lnc-cx) - var(--lnc-arch-w) * .5);
    width: var(--lnc-arch-w);
    top: var(--lnc-arch-top);
    height: calc(var(--lnc-ground-y) - var(--lnc-arch-top));
    border: calc(var(--lnc-arch-w) * .1) solid var(--lnc-stone);
    border-bottom: 0;
    border-radius: calc(var(--lnc-arch-w) * .5) calc(var(--lnc-arch-w) * .5) 0 0;
    background: linear-gradient(180deg, var(--lnc-win-a), var(--lnc-win-b) 70%, var(--lnc-sky-mid));
    box-sizing: border-box;
}

.hs .hs-slide.hsf-launch .lnc-ped {
    left: calc(var(--lnc-cx) - var(--lnc-cov-h) * .61 * .775);
    width: calc(var(--lnc-cov-h) * .61 * 1.55);
    top: var(--lnc-ped-top);
    height: 5cqh;
    border-radius: 3px;
    background: linear-gradient(180deg, #5d6a5f, #2b332d);
}

.hs .hs-slide.hsf-launch .lnc-bd--temple.is-painted .lnc-sky,
.hs .hs-slide.hsf-launch .lnc-bd--temple.is-painted .lnc-arch,
.hs .hs-slide.hsf-launch .lnc-bd--temple.is-painted .lnc-ped {
    opacity: 0;
}

.hs .hs-slide.hsf-launch .lnc-bd--temple .lnc-scrim {
    z-index: 1;
    background: linear-gradient(180deg, rgba(4, 10, 8, .8) 0%, rgba(4, 10, 8, .55) 40%, rgba(4, 10, 8, 0) 60%);
}

.hs .hs-slide.hsf-launch .lnc-char {
    position: absolute;
    z-index: 3;
    height: var(--lnc-ch);
    width: calc(var(--lnc-ch) * var(--lnc-car, .54));
    left: calc(var(--lnc-char-x) - var(--lnc-ch) * var(--lnc-car, .54) * .5);
    top: calc(var(--lnc-feet) - var(--lnc-ch));
    transform-origin: 50% 100%;
    transition: filter 1.4s ease;
}

.hs .hs-slide.hsf-launch[dir="rtl"] .lnc-char { left: calc(100cqw - var(--lnc-char-x) - var(--lnc-ch) * var(--lnc-car, .54) * .5); }
.hs .hs-slide.hsf-launch .lnc-char .hsf-pic,
.hs .hs-slide.hsf-launch .lnc-char img { width: 100%; height: 100%; object-fit: contain; }
.hs .hs-slide.hsf-launch[dir="rtl"] .lnc-char img { scale: -1 1; }
/* The one filter kept from the Zelda board: the character (never the cover) dims a little at dusk. */
.hs .hs-slide.hsf-launch .lnc-char.is-dusk { filter: brightness(.8) saturate(.9) sepia(.12); }

/* ---- the box (the product's cover, its own shape), the glint and the note button ---- */
.hs .hs-slide.hsf-launch .lnc-front {
    --lnc-cov-h: 25cqh;
    --lnc-cov-cx: 80cqw;
    --lnc-cov-bottom: 90cqh;
    --lnc-cov-w: calc(var(--lnc-cov-h) * var(--lnc-cov-ar, .75));
}

.hs .hs-slide.hsf-launch[dir="rtl"] .lnc-front { --lnc-cov-cx: 20cqw; }

.hs .hs-slide.hsf-launch[data-hs-llook="temple"] .lnc-front {
    --lnc-cov-h: 34cqh;
    --lnc-cov-cx: 50cqw;
    --lnc-cov-bottom: 87.3cqh;
}

.hs .hs-slide.hsf-launch .lnc-cover {
    position: absolute;
    z-index: 2;
    height: var(--lnc-cov-h);
    width: var(--lnc-cov-w);
    left: calc(var(--lnc-cov-cx) - var(--lnc-cov-w) * .5);
    top: calc(var(--lnc-cov-bottom) - var(--lnc-cov-h));
    border-radius: 5px;
    overflow: hidden;
    box-shadow: 0 22px 46px rgba(30, 0, 40, .6), 0 0 0 1px rgba(255, 255, 255, .1);
    pointer-events: auto;
    will-change: transform;
}

.hs .hs-slide.hsf-launch[data-hs-llook="temple"] .lnc-cover {
    border-radius: 6px;
    box-shadow: 0 18px 40px rgba(0, 0, 0, .55), 0 0 0 1px rgba(255, 255, 255, .06);
}

/* Prompt 8 fix 1: every block is printed once and switched here (the preview patches the attributes, no redraw). */
.hs .hs-slide.hsf-launch .lnc-ttl--slam .lnc-carve,
.hs .hs-slide.hsf-launch .lnc-ttl--slam .lnc-gold,
.hs .hs-slide.hsf-launch .lnc-ttl--gold .lnc-fill { display: none; }
.hs .hs-slide.hsf-launch[data-hs-lsnd="0"] .lnc-snd,
.hs .hs-slide.hsf-launch[data-hs-lcount="0"] .lnc-count { display: none; }
/* Look "plain" (any other background): the slide's own background shows behind the title and the box. */
.hs .hs-slide.hsf-launch[data-hs-llook="plain"] { background: transparent; }

/* Prompt 8: the second edition, behind the hero box and a little smaller, toward the words (the Classic "Overlap fan"). */
.hs .hs-slide.hsf-launch .lnc-cover--2 {
    z-index: 1;
    width: calc(var(--lnc-cov-h) * var(--lnc-cov2-ar, .75));
    transform: translateX(-46%) translateY(-3%) scale(.84) rotate(-4deg);
    will-change: auto;
}

.hs .hs-slide.hsf-launch[dir="rtl"] .lnc-cover--2 { transform: translateX(46%) translateY(-3%) scale(.84) rotate(4deg); }

.hs .hs-slide.hsf-launch .lnc-picker {
    position: static;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 10px;
}

.hs .hs-slide.hsf-launch .lnc-cover .hsf-pic,
.hs .hs-slide.hsf-launch .lnc-cover img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.hs .hs-slide.hsf-launch .lnc-glint {
    position: absolute;
    top: -10%;
    bottom: -10%;
    left: 0;
    width: 22%;
    opacity: 0;
    pointer-events: none;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, .42), rgba(255, 255, 255, 0));
    mix-blend-mode: screen;
}

.hs .hs-slide.hsf-launch .lnc-snd {
    all: unset;
    position: absolute;
    z-index: 4;
    box-sizing: border-box;
    width: 9cqw;
    height: 9cqw;
    min-width: 30px;
    min-height: 30px;
    /* The boards' corner, under the box (fix 1), never over it. */
    right: 3.5cqw;
    bottom: 3.5cqw;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: rgba(26, 8, 38, .5);
    border: 1px solid rgba(255, 255, 255, .25);
    color: #ffd0e6;
    cursor: pointer;
    pointer-events: auto;
}

.hs .hs-slide.hsf-launch[dir="rtl"] .lnc-snd {
    right: auto;
    left: 3.5cqw;
}

.hs .hs-slide.hsf-launch[data-hs-llook="temple"] .lnc-snd {
    right: 3.5cqw;
    left: auto;
    bottom: 3.5cqw;
    background: rgba(8, 16, 13, .55);
    border-color: rgba(255, 255, 255, .18);
    color: #f3dc8f;
}

.hs .hs-slide.hsf-launch[data-hs-llook="temple"][dir="rtl"] .lnc-snd { right: auto; left: 3.5cqw; }
.hs .hs-slide.hsf-launch .lnc-snd svg { width: 46%; height: 46%; }
.hs .hs-slide.hsf-launch .lnc-snd:hover { background: rgba(40, 14, 60, .8); }
.hs .hs-slide.hsf-launch .lnc-snd:focus-visible { outline: 2px solid var(--lnc-lime); outline-offset: 2px; }

.hs .hs-slide.hsf-launch .lnc-flash {
    position: absolute;
    inset: 0;
    z-index: 5;
    opacity: 0;
    pointer-events: none;
    background: radial-gradient(60% 80% at 60% 45%, rgba(255, 236, 220, .9), rgba(255, 160, 200, .35) 45%, rgba(255, 160, 200, 0) 75%);
}

.hs .hs-slide.hsf-launch .lnc-staff {
    position: absolute;
    inset: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    overflow: visible;
    pointer-events: none;
}

/* ---- the words (phone first: on top of the scene) ---- */
.hs .hs-slide.hsf-launch .hsf-frame {
    display: flex;
    flex-direction: column;
}

.hs .hs-slide.hsf-launch .hs-text { order: 1; }
.hs .hs-slide.hsf-launch .hsf-view { order: 2; }
/* Phone: the boards' scene under the words (390 x 380 of their 390 x 660 phone), so the art and the box get their room (fix 1). */
.hs .hs-slide.hsf-launch .hsf-view { aspect-ratio: 390 / 380; }

.hs .hs-slide.hsf-launch .hs-text {
    display: grid;
    grid-template-columns: max-content minmax(0, 1fr);
    align-items: center;
    justify-items: start;
    align-content: start;
    column-gap: 2.4cqw;
    row-gap: 2cqw;
    width: auto;
    margin: 0;
    padding: 5cqw 7cqw 0;
    color: #ffffff;
}

.hs .hs-slide.hsf-launch .hs-text > * {
    grid-column: 1 / -1;
    margin: 0;
}

.hs .hs-slide.hsf-launch .hs-badge { order: 0; }
.hs .hs-slide.hsf-launch .hs-kicker { order: 1; }
.hs .hs-slide.hsf-launch .lnc-ttl { order: 2; }
.hs .hs-slide.hsf-launch .hsf-extra { order: 3; }
.hs .hs-slide.hsf-launch .hs-sub { order: 4; }
.hs .hs-slide.hsf-launch .hs-text > .hs-price { order: 5; grid-column: 1; margin: 0; }
.hs .hs-slide.hsf-launch .hs-text > .hs-buttons { order: 6; grid-column: 2; margin: 0; }
.hs .hs-slide.hsf-launch.hs-noprice .hs-text > .hs-buttons,
.hs .hs-slide.hsf-launch .hs-text:not(:has(> .hs-price)) > .hs-buttons { grid-column: 1 / -1; }

.hs .hs-slide.hsf-launch .hs-kicker {
    display: flex;
    align-items: center;
    gap: 1.6cqw;
    font-family: ui-monospace, Menlo, Consolas, monospace;
    font-weight: 700;
    font-size: 2.6cqw;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: #ffd0e6;
}

.hs .hs-slide.hsf-launch .hs-kicker::before {
    content: "";
    flex: 0 0 auto;
    width: 1.6cqw;
    height: 1.6cqw;
    border-radius: 50%;
    background: #ff5fa8;
    box-shadow: 0 0 2.6cqw #ff5fa8;
    animation: lnc-pulse 1.6s ease-in-out infinite;
}

.hs .hs-slide.hsf-launch[dir="rtl"] .hs-kicker { font-family: "Tajawal", system-ui, sans-serif; letter-spacing: 0; font-size: 3.2cqw; }

@keyframes lnc-pulse { 50% { opacity: .35; } }

/* home_hero.css gives EVERY element of a slide the site font and no capitals (.hs .hs-slide *): the inner spans of the
   kicker words, the title parts and the tiles take their block's font, capitals and tracking instead (fix 1). */
.hs .hs-slide.hsf-launch .hs-kicker *,
.hs .hs-slide.hsf-launch .lnc-pre *,
.hs .hs-slide.hsf-launch .lnc-main *,
.hs .hs-slide.hsf-launch .lnc-tile * {
    font-family: inherit;
    font-weight: inherit;
    text-transform: inherit;
    letter-spacing: inherit;
}

.hs .hs-slide.hsf-launch .lnc-ttl {
    display: grid;
    gap: 0;
    line-height: .92;
    max-width: 100%;
}

.hs .hs-slide.hsf-launch .lnc-pre {
    display: block;
    font-family: "Launch Anton", Impact, sans-serif;
    font-weight: 400;
    font-size: 7.4cqw;
    letter-spacing: .02em;
    text-transform: uppercase;
    color: #ffffff;
    text-shadow: 0 .2cqw 1cqw rgba(40, 0, 50, .45);
}

.hs .hs-slide.hsf-launch[dir="rtl"] .lnc-pre { font-family: "Tajawal", system-ui, sans-serif; font-weight: 900; font-size: 7.6cqw; line-height: 1.2; letter-spacing: 0; }

.hs .hs-slide.hsf-launch .lnc-main {
    position: relative;
    display: inline-block;
    justify-self: start;
    font-family: "Launch Anton", Impact, sans-serif;
    font-weight: 400;
    font-size: 19cqw;
    line-height: .95;
    letter-spacing: 0;
    transform-origin: 30% 60%;
}

/* Arabic: the big Latin part ("VI") stays Anton as in the board; Arabic letters fall back to Tajawal 900 (Anton covers
   Latin only), and Anton itself is never faux-bolded. */
.hs .hs-slide.hsf-launch[dir="rtl"] .lnc-main { transform-origin: 70% 60%; font-family: "Launch Anton", "Tajawal", system-ui, sans-serif; font-weight: 900; font-synthesis: none; letter-spacing: 0; }
.hs .hs-slide.hsf-launch .lnc-size-2 .lnc-main { font-size: 12cqw; }
.hs .hs-slide.hsf-launch .lnc-size-3 .lnc-main { font-size: 9cqw; line-height: 1.02; }

/* Title slam: the sunset colours slide through the name every few seconds (launch.js), never on the art. */
.hs .hs-slide.hsf-launch .lnc-fill {
    display: block;
    background-image: linear-gradient(100deg, #ffb36b 0%, #ff6aa2 34%, #c06bff 62%, #ffb36b 100%);
    background-size: 240% 100%;
    background-position: 0 0;
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    -webkit-text-fill-color: transparent;
    filter: drop-shadow(0 .3cqw 1.2cqw rgba(255, 90, 160, .4));
}

.hs .hs-slide.hsf-launch[data-hs-llook="temple"] .lnc-fill {
    background-image: linear-gradient(100deg, #a8761e 0%, #f3cf6a 30%, #fff6c9 46%, #f0c255 58%, #9d6d1a 100%);
    background-size: 220% 100%;
    filter: drop-shadow(0 0 .5cqw rgba(255, 214, 120, .35));
}

/* Gold title: cut in dark stone, then gold fills it from the reading side (launch.js; at rest it is full gold). */
.hs .hs-slide.hsf-launch .lnc-carve {
    display: block;
    color: #3a3420;
    text-shadow: 0 1px 0 rgba(255, 240, 190, .16), 0 -1px 0 rgba(0, 0, 0, .7);
}

.hs .hs-slide.hsf-launch .lnc-gold {
    position: absolute;
    inset: 0;
    display: block;
    background-image: linear-gradient(100deg, #a8761e 0%, #f3cf6a 30%, #fff6c9 46%, #f0c255 58%, #9d6d1a 100%);
    background-size: 220% 100%;
    background-position: 0 0;
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    -webkit-text-fill-color: transparent;
    clip-path: inset(0 0 0 0);
    filter: drop-shadow(0 0 .5cqw rgba(255, 214, 120, .35));
}

/* Temple names: Cinzel 800 for Latin (as the board), the site's Arabic font in Arabic. */
.hs .hs-slide.hsf-launch[data-hs-llook="temple"] .lnc-main {
    font-family: "Launch Cinzel", Georgia, serif;
    font-weight: 800;
    font-size: 9.6cqw;
    line-height: 1.02;
    letter-spacing: .01em;
}

.hs .hs-slide.hsf-launch[data-hs-llook="temple"][dir="rtl"] .lnc-main { font-family: "Tajawal", system-ui, sans-serif; font-weight: 800; font-size: 11cqw; line-height: 1.15; text-transform: none; }
.hs .hs-slide.hsf-launch[data-hs-llook="temple"] .lnc-size-2 .lnc-main { font-size: 7.4cqw; }
.hs .hs-slide.hsf-launch[data-hs-llook="temple"] .lnc-size-3 .lnc-main { font-size: 6cqw; }

/* Temple: the slide's kicker is the small line over the gold name (Cinzel 600, as the board), no dot. */
.hs .hs-slide.hsf-launch[data-hs-llook="temple"] .hs-kicker {
    font-family: "Launch Cinzel", Georgia, serif;
    text-transform: none;
    font-weight: 600;
    font-size: 3.6cqw;
    letter-spacing: .32em;
    color: #d9cfa8;
}

.hs .hs-slide.hsf-launch[data-hs-llook="temple"] .hs-kicker::before { display: none; }
.hs .hs-slide.hsf-launch[data-hs-llook="temple"][dir="rtl"] .hs-kicker { font-family: "Tajawal", system-ui, sans-serif; letter-spacing: 0; font-size: 4.6cqw; }

/* Prompt 11 fix 1: a Temple title with a first line (a line break in Title, e.g. the Zelda kit) = the board's two parts:
   the small Cinzel line over the gold name, and the kicker goes back to the board's small mono label. */
.hs .hs-slide.hsf-launch[data-hs-llook="temple"] .lnc-pre {
    font-family: "Launch Cinzel", Georgia, serif;
    font-weight: 600;
    font-size: 3.6cqw;
    letter-spacing: .32em;
    text-transform: none;
    color: #d9cfa8;
    text-shadow: none;
}

.hs .hs-slide.hsf-launch[data-hs-llook="temple"][dir="rtl"] .lnc-pre { font-family: "Tajawal", system-ui, sans-serif; letter-spacing: 0; font-size: 4.6cqw; }

.hs .hs-slide.hsf-launch[data-hs-llook="temple"] .hs-text:has(.lnc-pre) > .hs-kicker {
    font-family: ui-monospace, Menlo, Consolas, monospace;
    font-weight: 700;
    font-size: 2.6cqw;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: #bfe6c9;
}

.hs .hs-slide.hsf-launch[data-hs-llook="temple"][dir="rtl"] .hs-text:has(.lnc-pre) > .hs-kicker { font-family: "Tajawal", system-ui, sans-serif; letter-spacing: 0; font-size: 3.2cqw; }

/* The countdown: flip tiles + "N days to launch · 19 Nov". */
.hs .hs-slide.hsf-launch .lnc-count {
    display: flex;
    align-items: center;
    gap: 1.6cqw;
    font-size: 3cqw;
    font-weight: 600;
    color: #ffe2ef;
}

.hs .hs-slide.hsf-launch[dir="rtl"] .lnc-count { font-family: "Tajawal", system-ui, sans-serif; font-size: 3.5cqw; }
.hs .hs-slide.hsf-launch .lnc-tiles { display: flex; gap: .8cqw; direction: ltr; }

.hs .hs-slide.hsf-launch .lnc-tile {
    position: relative;
    display: grid;
    place-items: center;
    width: 5.6cqw;
    height: 7.4cqw;
    overflow: hidden;
    border-radius: 1cqw;
    background: rgba(20, 8, 34, .78);
    border: 1px solid rgba(255, 140, 200, .4);
    font-family: "Launch Anton", Impact, sans-serif;
    font-weight: 400;
    font-size: 5cqw;
    color: #ffffff;
    font-variant-numeric: tabular-nums;
}

.hs .hs-slide.hsf-launch .lnc-tile > span { display: block; }

.hs .hs-slide.hsf-launch .lnc-tile::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    height: 1px;
    background: rgba(0, 0, 0, .45);
}

.hs .hs-slide.hsf-launch[data-hs-llook="temple"] .lnc-count { color: #f3e6b8; }
.hs .hs-slide.hsf-launch[data-hs-llook="temple"] .lnc-tile { background: rgba(8, 20, 16, .78); border-color: rgba(255, 220, 140, .4); }

.hs .hs-slide.hsf-launch .hs-sub {
    font-size: 3.3cqw;
    line-height: 1.5;
    color: #f6eaf4;
    max-width: none;
}

.hs .hs-slide.hsf-launch[dir="rtl"] .hs-sub { font-size: 3.8cqw; }
.hs .hs-slide.hsf-launch[data-hs-llook="temple"] .hs-sub { color: #cfd8cf; }

.hs .hs-slide.hsf-launch .hs-price {
    font-size: 6.4cqw;
    font-weight: 700;
    color: #ffffff;
}

.hs .hs-slide.hsf-launch .hs-buttons {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 2.4cqw;
}

.hs .hs-slide.hsf-launch .hs-btn,
.hs .hs-slide.hsf-launch .hs-btn2 {
    height: auto;
    padding: 2.2cqw 4.4cqw;
    border-radius: 99px;
    font-size: 3.3cqw;
    font-weight: 600;
    line-height: 1.2;
    transition: box-shadow .5s ease;
}

.hs .hs-slide.hsf-launch .hs-btn {
    background: var(--lnc-lime);
    border-color: var(--lnc-lime);
    color: var(--lnc-lime-ink);
}

.hs .hs-slide.hsf-launch .hs-btn2 {
    display: none;
    background: rgba(26, 8, 38, .25);
    border: 1px solid rgba(255, 255, 255, .3);
    color: #ffffff;
}

/* The Temple board keeps its second button on phones (the Poster board hides it). */
.hs .hs-slide.hsf-launch[data-hs-llook="temple"] .hs-btn2 { display: inline-flex; }

.hs .hs-slide.hsf-launch[dir="rtl"] .hs-btn,
.hs .hs-slide.hsf-launch[dir="rtl"] .hs-btn2 { font-weight: 800; }

.hs .hs-slide.hsf-launch .hs-btn.lnc-lit { box-shadow: 0 0 0 .3cqw rgba(188, 215, 103, .25), 0 0 2.6cqw rgba(255, 250, 220, .6); }
.hs .hs-slide.hsf-launch[data-hs-llook="temple"] .hs-btn.lnc-lit { box-shadow: 0 0 0 .3cqw rgba(188, 215, 103, .25), 0 0 2.4cqw rgba(170, 240, 255, .55); }

/* ---- wide variants (tablet / desktop): the boards' desktop layout ---- */
@media (min-width: 576px) {
    /* Prompt 11 fix 1: COVER. The art (and the cut-out, same box) is at least the slide's height and width, so a wide
       stage never shows a flat band beside it. The characters' left edge stays on the anchor as far as the cover allows
       (clamped so no edge shows); the art keeps its bottom (the water line) unless that would cut the characters' heads
       (--lnc-y0, read by the server), then it moves up just enough. The plate canvas measures this box, so it follows. */
    .hs:not(.hs--forced) .hs-slide.hsf-launch .lnc-bd--poster { --lnc-art-h: max(102cqh, calc(100cqw / var(--lnc-ar, 1.7778))); }

    .hs:not(.hs--forced) .hs-slide.hsf-launch .lnc-art {
        --lnc-art-w: calc(var(--lnc-art-h) * var(--lnc-ar, 1.7778));
        left: clamp(calc(100cqw - var(--lnc-art-w)), calc(var(--lnc-anchor, 40) * 1cqw - var(--lnc-x0, .27) * var(--lnc-art-w)), 0px);
        top: clamp(calc(100cqh - var(--lnc-art-h)), calc(2cqh - var(--lnc-y0, 0) * var(--lnc-art-h)), 0px);
        translate: none;
    }

    .hs:not(.hs--forced) .hs-slide.hsf-launch[dir="rtl"] .lnc-art {
        left: auto;
        right: clamp(calc(100cqw - var(--lnc-art-w)), calc(var(--lnc-anchor, 40) * 1cqw - var(--lnc-x0, .27) * var(--lnc-art-w)), 0px);
        translate: none;
    }

    .hs:not(.hs--forced) .hs-slide.hsf-launch .lnc-scrim { background: linear-gradient(90deg, rgba(26, 8, 38, .82) 0%, rgba(26, 8, 38, .6) 30%, rgba(26, 8, 38, 0) 50%); }
    .hs:not(.hs--forced) .hs-slide.hsf-launch[dir="rtl"] .lnc-scrim { background: linear-gradient(270deg, rgba(26, 8, 38, .82) 0%, rgba(26, 8, 38, .6) 30%, rgba(26, 8, 38, 0) 50%); }
    .hs:not(.hs--forced) .hs-slide.hsf-launch .lnc-bd--temple .lnc-scrim { background: linear-gradient(90deg, rgba(4, 10, 8, .78) 0%, rgba(4, 10, 8, .55) 34%, rgba(4, 10, 8, 0) 56%); }
    .hs:not(.hs--forced) .hs-slide.hsf-launch[dir="rtl"] .lnc-bd--temple .lnc-scrim { background: linear-gradient(270deg, rgba(4, 10, 8, .78) 0%, rgba(4, 10, 8, .55) 34%, rgba(4, 10, 8, 0) 56%); }

    .hs:not(.hs--forced) .hs-slide.hsf-launch .lnc-bd--temple {
        --lnc-cx: 73cqw;
        --lnc-cov-h: 58cqh;
        --lnc-ped-top: 85cqh;
        --lnc-arch-w: calc(var(--lnc-cov-h) * .61 * 2.5);
        --lnc-arch-top: 5cqh;
        --lnc-ground-y: 90cqh;
        --lnc-ch: 50cqh;
        --lnc-char-x: 54cqw;
        --lnc-feet: 89.5cqh;
    }

    .hs:not(.hs--forced) .hs-slide.hsf-launch[dir="rtl"] .lnc-bd--temple { --lnc-cx: 27cqw; }

    .hs:not(.hs--forced) .hs-slide.hsf-launch .lnc-front { --lnc-cov-h: 56cqh; --lnc-cov-cx: 88.5cqw; --lnc-cov-bottom: 88cqh; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch[dir="rtl"] .lnc-front { --lnc-cov-cx: 11.5cqw; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch[data-hs-llook="temple"] .lnc-front { --lnc-cov-h: 58cqh; --lnc-cov-cx: 73cqw; --lnc-cov-bottom: 83.8cqh; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch[data-hs-llook="temple"][dir="rtl"] .lnc-front { --lnc-cov-cx: 27cqw; }
    /* The board's corner (fix 1): under the box (its bottom is 88cqh, the button's top is 100cqh - 4.8cqw = 88cqh), never over it. */
    .hs:not(.hs--forced) .hs-slide.hsf-launch .lnc-snd { width: 3.2cqw; height: 3.2cqw; right: 1.6cqw; left: auto; bottom: 1.6cqw; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch[dir="rtl"] .lnc-snd { right: auto; left: 1.6cqw; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch[data-hs-llook="temple"] .lnc-snd { right: 1.6cqw; left: auto; bottom: 1.6cqw; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch[data-hs-llook="temple"][dir="rtl"] .lnc-snd { right: auto; left: 1.6cqw; }

    .hs:not(.hs--forced) .hs-slide.hsf-launch .hs-text { padding: 0; row-gap: .95cqw; column-gap: 1.6cqw; align-content: center; justify-content: start; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch[data-hs-llook="temple"] .hs-text { row-gap: 1.1cqw; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch .hs-kicker { font-size: 1cqw; gap: .7cqw; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch .hs-kicker::before { width: .6cqw; height: .6cqw; box-shadow: 0 0 1cqw #ff5fa8; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch[dir="rtl"] .hs-kicker { font-size: 1.25cqw; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch .lnc-pre { font-size: 3.1cqw; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch[dir="rtl"] .lnc-pre { font-size: 3.3cqw; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch .lnc-main { font-size: 9.4cqw; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch .lnc-size-2 .lnc-main { font-size: 6.2cqw; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch .lnc-size-3 .lnc-main { font-size: 4.6cqw; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch[data-hs-llook="temple"] .lnc-main { font-size: 4.6cqw; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch[data-hs-llook="temple"][dir="rtl"] .lnc-main { font-size: 5.2cqw; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch[data-hs-llook="temple"] .lnc-size-2 .lnc-main { font-size: 3.6cqw; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch[data-hs-llook="temple"] .lnc-size-3 .lnc-main { font-size: 2.9cqw; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch[data-hs-llook="temple"] .hs-kicker { font-size: 1.55cqw; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch[data-hs-llook="temple"][dir="rtl"] .hs-kicker { font-size: 2cqw; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch[data-hs-llook="temple"] .hs-text > .lnc-ttl .lnc-pre { font-size: 1.55cqw; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch[data-hs-llook="temple"][dir="rtl"] .hs-text > .lnc-ttl .lnc-pre { font-size: 2cqw; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch[data-hs-llook="temple"] .hs-text:has(.lnc-pre) > .hs-kicker { font-size: 1cqw; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch[data-hs-llook="temple"][dir="rtl"] .hs-text:has(.lnc-pre) > .hs-kicker { font-size: 1.25cqw; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch .lnc-count { font-size: 1.05cqw; gap: .6cqw; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch[dir="rtl"] .lnc-count { font-size: 1.25cqw; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch .lnc-tiles { gap: .25cqw; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch .lnc-tile { width: 2.1cqw; height: 2.8cqw; font-size: 1.9cqw; border-radius: .4cqw; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch .hs-sub { font-size: 1.25cqw; max-width: 31cqw; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch[data-hs-llook="temple"] .hs-sub { max-width: 34cqw; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch[dir="rtl"] .hs-sub { font-size: 1.45cqw; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch .hs-price { font-size: 2.6cqw; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch .hs-buttons { gap: 1cqw; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch .hs-btn,
    .hs:not(.hs--forced) .hs-slide.hsf-launch .hs-btn2 { padding: .85cqw 1.7cqw; font-size: 1.15cqw; }
    .hs:not(.hs--forced) .hs-slide.hsf-launch .hs-btn2 { display: inline-flex; }
}

/* The builder's forced tablet / desktop: the same values (no media query there). */
.hs.hs--force-tablet .hs-slide.hsf-launch .lnc-bd--poster,
.hs.hs--force-desktop .hs-slide.hsf-launch .lnc-bd--poster { --lnc-art-h: max(102cqh, calc(100cqw / var(--lnc-ar, 1.7778))); }

.hs.hs--force-tablet .hs-slide.hsf-launch .lnc-art,
.hs.hs--force-desktop .hs-slide.hsf-launch .lnc-art {
    --lnc-art-w: calc(var(--lnc-art-h) * var(--lnc-ar, 1.7778));
    left: clamp(calc(100cqw - var(--lnc-art-w)), calc(var(--lnc-anchor, 40) * 1cqw - var(--lnc-x0, .27) * var(--lnc-art-w)), 0px);
    top: clamp(calc(100cqh - var(--lnc-art-h)), calc(2cqh - var(--lnc-y0, 0) * var(--lnc-art-h)), 0px);
    translate: none;
}

.hs.hs--force-tablet .hs-slide.hsf-launch[dir="rtl"] .lnc-art,
.hs.hs--force-desktop .hs-slide.hsf-launch[dir="rtl"] .lnc-art {
    left: auto;
    right: clamp(calc(100cqw - var(--lnc-art-w)), calc(var(--lnc-anchor, 40) * 1cqw - var(--lnc-x0, .27) * var(--lnc-art-w)), 0px);
    translate: none;
}

.hs.hs--force-tablet .hs-slide.hsf-launch .lnc-scrim,
.hs.hs--force-desktop .hs-slide.hsf-launch .lnc-scrim { background: linear-gradient(90deg, rgba(26, 8, 38, .82) 0%, rgba(26, 8, 38, .6) 30%, rgba(26, 8, 38, 0) 50%); }

.hs.hs--force-tablet .hs-slide.hsf-launch[dir="rtl"] .lnc-scrim,
.hs.hs--force-desktop .hs-slide.hsf-launch[dir="rtl"] .lnc-scrim { background: linear-gradient(270deg, rgba(26, 8, 38, .82) 0%, rgba(26, 8, 38, .6) 30%, rgba(26, 8, 38, 0) 50%); }

.hs.hs--force-tablet .hs-slide.hsf-launch .lnc-bd--temple .lnc-scrim,
.hs.hs--force-desktop .hs-slide.hsf-launch .lnc-bd--temple .lnc-scrim { background: linear-gradient(90deg, rgba(4, 10, 8, .78) 0%, rgba(4, 10, 8, .55) 34%, rgba(4, 10, 8, 0) 56%); }

.hs.hs--force-tablet .hs-slide.hsf-launch[dir="rtl"] .lnc-bd--temple .lnc-scrim,
.hs.hs--force-desktop .hs-slide.hsf-launch[dir="rtl"] .lnc-bd--temple .lnc-scrim { background: linear-gradient(270deg, rgba(4, 10, 8, .78) 0%, rgba(4, 10, 8, .55) 34%, rgba(4, 10, 8, 0) 56%); }

.hs.hs--force-tablet .hs-slide.hsf-launch .lnc-bd--temple,
.hs.hs--force-desktop .hs-slide.hsf-launch .lnc-bd--temple {
    --lnc-cx: 73cqw;
    --lnc-cov-h: 58cqh;
    --lnc-ped-top: 85cqh;
    --lnc-arch-w: calc(var(--lnc-cov-h) * .61 * 2.5);
    --lnc-arch-top: 5cqh;
    --lnc-ground-y: 90cqh;
    --lnc-ch: 50cqh;
    --lnc-char-x: 54cqw;
    --lnc-feet: 89.5cqh;
}

.hs.hs--force-tablet .hs-slide.hsf-launch[dir="rtl"] .lnc-bd--temple,
.hs.hs--force-desktop .hs-slide.hsf-launch[dir="rtl"] .lnc-bd--temple { --lnc-cx: 27cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch .lnc-front,
.hs.hs--force-desktop .hs-slide.hsf-launch .lnc-front { --lnc-cov-h: 56cqh; --lnc-cov-cx: 88.5cqw; --lnc-cov-bottom: 88cqh; }

.hs.hs--force-tablet .hs-slide.hsf-launch[dir="rtl"] .lnc-front,
.hs.hs--force-desktop .hs-slide.hsf-launch[dir="rtl"] .lnc-front { --lnc-cov-cx: 11.5cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch[data-hs-llook="temple"] .lnc-front,
.hs.hs--force-desktop .hs-slide.hsf-launch[data-hs-llook="temple"] .lnc-front { --lnc-cov-h: 58cqh; --lnc-cov-cx: 73cqw; --lnc-cov-bottom: 83.8cqh; }

.hs.hs--force-tablet .hs-slide.hsf-launch[data-hs-llook="temple"][dir="rtl"] .lnc-front,
.hs.hs--force-desktop .hs-slide.hsf-launch[data-hs-llook="temple"][dir="rtl"] .lnc-front { --lnc-cov-cx: 27cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch .lnc-snd,
.hs.hs--force-desktop .hs-slide.hsf-launch .lnc-snd { width: 3.2cqw; height: 3.2cqw; right: 1.6cqw; left: auto; bottom: 1.6cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch[dir="rtl"] .lnc-snd,
.hs.hs--force-desktop .hs-slide.hsf-launch[dir="rtl"] .lnc-snd { right: auto; left: 1.6cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch[data-hs-llook="temple"] .lnc-snd,
.hs.hs--force-desktop .hs-slide.hsf-launch[data-hs-llook="temple"] .lnc-snd { right: 1.6cqw; left: auto; bottom: 1.6cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch[data-hs-llook="temple"][dir="rtl"] .lnc-snd,
.hs.hs--force-desktop .hs-slide.hsf-launch[data-hs-llook="temple"][dir="rtl"] .lnc-snd { right: auto; left: 1.6cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch .hs-text,
.hs.hs--force-desktop .hs-slide.hsf-launch .hs-text { padding: 0; row-gap: .95cqw; column-gap: 1.6cqw; align-content: center; justify-content: start; }

.hs.hs--force-tablet .hs-slide.hsf-launch[data-hs-llook="temple"] .hs-text,
.hs.hs--force-desktop .hs-slide.hsf-launch[data-hs-llook="temple"] .hs-text { row-gap: 1.1cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch .hs-kicker,
.hs.hs--force-desktop .hs-slide.hsf-launch .hs-kicker { font-size: 1cqw; gap: .7cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch .hs-kicker::before,
.hs.hs--force-desktop .hs-slide.hsf-launch .hs-kicker::before { width: .6cqw; height: .6cqw; box-shadow: 0 0 1cqw #ff5fa8; }

.hs.hs--force-tablet .hs-slide.hsf-launch[dir="rtl"] .hs-kicker,
.hs.hs--force-desktop .hs-slide.hsf-launch[dir="rtl"] .hs-kicker { font-size: 1.25cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch .lnc-pre,
.hs.hs--force-desktop .hs-slide.hsf-launch .lnc-pre { font-size: 3.1cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch[dir="rtl"] .lnc-pre,
.hs.hs--force-desktop .hs-slide.hsf-launch[dir="rtl"] .lnc-pre { font-size: 3.3cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch .lnc-main,
.hs.hs--force-desktop .hs-slide.hsf-launch .lnc-main { font-size: 9.4cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch .lnc-size-2 .lnc-main,
.hs.hs--force-desktop .hs-slide.hsf-launch .lnc-size-2 .lnc-main { font-size: 6.2cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch .lnc-size-3 .lnc-main,
.hs.hs--force-desktop .hs-slide.hsf-launch .lnc-size-3 .lnc-main { font-size: 4.6cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch[data-hs-llook="temple"] .lnc-main,
.hs.hs--force-desktop .hs-slide.hsf-launch[data-hs-llook="temple"] .lnc-main { font-size: 4.6cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch[data-hs-llook="temple"][dir="rtl"] .lnc-main,
.hs.hs--force-desktop .hs-slide.hsf-launch[data-hs-llook="temple"][dir="rtl"] .lnc-main { font-size: 5.2cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch[data-hs-llook="temple"] .hs-text > .lnc-ttl .lnc-pre,
.hs.hs--force-desktop .hs-slide.hsf-launch[data-hs-llook="temple"] .hs-text > .lnc-ttl .lnc-pre { font-size: 1.55cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch[data-hs-llook="temple"][dir="rtl"] .hs-text > .lnc-ttl .lnc-pre,
.hs.hs--force-desktop .hs-slide.hsf-launch[data-hs-llook="temple"][dir="rtl"] .hs-text > .lnc-ttl .lnc-pre { font-size: 2cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch[data-hs-llook="temple"] .hs-text:has(.lnc-pre) > .hs-kicker,
.hs.hs--force-desktop .hs-slide.hsf-launch[data-hs-llook="temple"] .hs-text:has(.lnc-pre) > .hs-kicker { font-size: 1cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch[data-hs-llook="temple"][dir="rtl"] .hs-text:has(.lnc-pre) > .hs-kicker,
.hs.hs--force-desktop .hs-slide.hsf-launch[data-hs-llook="temple"][dir="rtl"] .hs-text:has(.lnc-pre) > .hs-kicker { font-size: 1.25cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch[data-hs-llook="temple"] .lnc-size-2 .lnc-main,
.hs.hs--force-desktop .hs-slide.hsf-launch[data-hs-llook="temple"] .lnc-size-2 .lnc-main { font-size: 3.6cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch[data-hs-llook="temple"] .lnc-size-3 .lnc-main,
.hs.hs--force-desktop .hs-slide.hsf-launch[data-hs-llook="temple"] .lnc-size-3 .lnc-main { font-size: 2.9cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch[data-hs-llook="temple"] .hs-kicker,
.hs.hs--force-desktop .hs-slide.hsf-launch[data-hs-llook="temple"] .hs-kicker { font-size: 1.55cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch[data-hs-llook="temple"][dir="rtl"] .hs-kicker,
.hs.hs--force-desktop .hs-slide.hsf-launch[data-hs-llook="temple"][dir="rtl"] .hs-kicker { font-size: 2cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch .lnc-count,
.hs.hs--force-desktop .hs-slide.hsf-launch .lnc-count { font-size: 1.05cqw; gap: .6cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch[dir="rtl"] .lnc-count,
.hs.hs--force-desktop .hs-slide.hsf-launch[dir="rtl"] .lnc-count { font-size: 1.25cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch .lnc-tiles,
.hs.hs--force-desktop .hs-slide.hsf-launch .lnc-tiles { gap: .25cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch .lnc-tile,
.hs.hs--force-desktop .hs-slide.hsf-launch .lnc-tile { width: 2.1cqw; height: 2.8cqw; font-size: 1.9cqw; border-radius: .4cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch .hs-sub,
.hs.hs--force-desktop .hs-slide.hsf-launch .hs-sub { font-size: 1.25cqw; max-width: 31cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch[data-hs-llook="temple"] .hs-sub,
.hs.hs--force-desktop .hs-slide.hsf-launch[data-hs-llook="temple"] .hs-sub { max-width: 34cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch[dir="rtl"] .hs-sub,
.hs.hs--force-desktop .hs-slide.hsf-launch[dir="rtl"] .hs-sub { font-size: 1.45cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch .hs-price,
.hs.hs--force-desktop .hs-slide.hsf-launch .hs-price { font-size: 2.6cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch .hs-buttons,
.hs.hs--force-desktop .hs-slide.hsf-launch .hs-buttons { gap: 1cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch .hs-btn,
.hs.hs--force-desktop .hs-slide.hsf-launch .hs-btn,
.hs.hs--force-tablet .hs-slide.hsf-launch .hs-btn2,
.hs.hs--force-desktop .hs-slide.hsf-launch .hs-btn2 { padding: .85cqw 1.7cqw; font-size: 1.15cqw; }

.hs.hs--force-tablet .hs-slide.hsf-launch .hs-btn2,
.hs.hs--force-desktop .hs-slide.hsf-launch .hs-btn2 { display: inline-flex; }

/* ---- the hero holds still off screen and in a hidden tab; reduced motion = the finished slide ---- */
.hs.hs-paused .hs-slide.hsf-launch,
.hs.hs-paused .hs-slide.hsf-launch * {
    animation-play-state: paused !important;
}

@media (prefers-reduced-motion: reduce) {
    .hs .hs-slide.hsf-launch *,
    .hs .hs-slide.hsf-launch *::before {
        animation: none !important;
        transition: none !important;
    }
}
