@font-face{font-family:'Big Shoulders Display';font-style:normal;font-weight:600;font-display:swap;src:url(/skrifter/big-shoulders-display-latin-600-normal.woff2) format('woff2')}@font-face{font-family:'Big Shoulders Display';font-style:normal;font-weight:800;font-display:swap;src:url(/skrifter/big-shoulders-display-latin-800-normal.woff2) format('woff2')}@font-face{font-family:'Outfit';font-style:normal;font-weight:400;font-display:swap;src:url(/skrifter/outfit-latin-400-normal.woff2) format('woff2')}@font-face{font-family:'Outfit';font-style:normal;font-weight:600;font-display:swap;src:url(/skrifter/outfit-latin-600-normal.woff2) format('woff2')}@font-face{font-family:'Outfit';font-style:normal;font-weight:800;font-display:swap;src:url(/skrifter/outfit-latin-800-normal.woff2) format('woff2')}
:root{
    --clr-primary:#fec425;
    --clr-pop:#18e184;
    --clr-accent-strong:#13bd6e;
    --clr-base-plane:#060a07;
    --clr-above:#0e1611;
    --clr-letters:#ffffff;
    --clr-subtle:#bfbfbf;
    --clr-divider:#1d2a22;
    --clr-stroke-heavy:#2f4438;
    --clr-gradient-light:#8bf3bc;
    --clr-gradient-mid:#42ec9e;
    --clr-age-band:#be123c;
    --clr-gold-ink:#0b120d;
    --clr-gold-ink-soft:#2a2410;
    --clr-cta-plane:#121308;
    --clr-warn-plane:#170a0a;
    --gut-2xs:5px;
    --gut-xs:10px;
    --gut-sm:15px;
    --gut-md:25px;
    --gut-lg:40px;
    --gut-xl:60px;
    --gut-2xl:90px;
    --gut-3xl:140px;
    --rd-2xs:2px;
    --rd-xs:0;
    --rd-sm:4px;
    --rd-md:12px;
    --rd-lg:24px;
    --rd-xl:32px;
    --rd-2xl:40px;
    --rd-3xl:56px;
    --rd-pill:9999px;
    --rd-dot:50%;
    --typ-display:'Big Shoulders Display','Arial Narrow',sans-serif;
    --typ-base:'Outfit','Helvetica Neue',Arial,sans-serif;
    --sz-display-1:36px;
    --sz-h2:26px;
    --sz-lg-2:20px;
    --sz-md-2:17px;
    --sz-minor:14px;
    --sz-micro-head:12px;
    --sz-base:15px;
    --sz-fine:12px;
    --sz-tiny:9px;
    --ld-tight:1.1;
    --ld-base:1.5;
    --ld-roomy:1.65;
    --wt-plain:400;
    --wt-half:600;
    --wt-bold:800;
    --ls-close:-0.02em;
    --ls-regular:0;
    --ls-open:0.06em;
    --sh-2xs:0 1px 1px rgba(0,0,0,.18);
    --sh-xs:0 1px 0 rgba(0,0,0,.10);
    --sh-sm:0 2px 8px rgba(0,0,0,.07);
    --sh-md:0 6px 16px rgba(0,0,0,.10);
    --sh-lg:0 12px 32px rgba(0,0,0,.14);
    --sh-xl:0 18px 44px rgba(0,0,0,.20);
    --sh-2xl:0 26px 60px rgba(0,0,0,.26);
    --sh-3xl:0 34px 80px rgba(0,0,0,.32);
    --dur-short:150ms;
    --dur-regular:310ms;
    --dur-easy:520ms;
    --ease-land:cubic-bezier(0.19,0.9,0.25,0.94);
    --ease-swing:cubic-bezier(0.44,0.06,0.6,0.89);
    --ease-overshoot:cubic-bezier(0.21,1,0.53,1.05);
    --cont-page:1280px;
    --cont-column:540px;
    --cont-padding-desktop:32px;
    --cont-pad-md:24px;
    --cont-inset-mobile:16px;
    --str-fine:1px;
    --str-mid:2px;
    --str-bold:4px;
    --hd-height-desktop:64px;
    --hd-h-sm:56px;
    --pv-shell:88px;
    --pv-band:32px;
}

*,*::before,*::after{
    box-sizing:border-box;
}

html,body{
    overflow-x:clip;
}

html{
    background:var(--clr-base-plane);
    -webkit-text-size-adjust:100%;
}

body{
    margin:0;
    margin-block-start:var(--pv-shell);
    background:var(--clr-base-plane);
    color:var(--clr-letters);
    font-family:var(--typ-base);
    font-size:var(--sz-base);
    font-weight:var(--wt-plain);
    line-height:var(--ld-base);
}

img{
    max-width:100%;
}

[hidden]{
    display:none !important;
}

[id]{
    scroll-margin-block-start:calc(var(--pv-shell) + 16px);
}

h1,h2,h3,h4,h5,h6{
    overflow-wrap:anywhere;
    margin:0;
}

h1{
    font-family:var(--typ-display);
    font-size:var(--sz-display-1);
    font-weight:var(--wt-bold);
    letter-spacing:var(--ls-close);
    line-height:var(--ld-tight);
    text-transform:uppercase;
}

h2{
    font-family:var(--typ-display);
    font-size:var(--sz-h2);
    font-weight:var(--wt-half);
    letter-spacing:var(--ls-regular);
    line-height:var(--ld-tight);
}

h3{
    font-family:var(--typ-base);
    font-size:var(--sz-lg-2);
    font-weight:var(--wt-half);
    line-height:var(--ld-tight);
}

h4{
    font-family:var(--typ-base);
    font-size:var(--sz-md-2);
    font-weight:var(--wt-half);
    line-height:var(--ld-base);
}

h5{
    font-family:var(--typ-base);
    font-size:var(--sz-minor);
    font-weight:var(--wt-half);
    letter-spacing:var(--ls-open);
    line-height:var(--ld-base);
    text-transform:uppercase;
}

h6{
    font-family:var(--typ-base);
    font-size:var(--sz-micro-head);
    font-weight:var(--wt-half);
    letter-spacing:var(--ls-open);
    line-height:var(--ld-base);
    text-transform:uppercase;
}

p{
    margin:0;
}

ul,ol{
    margin:0;
    padding:0;
}

table{
    border-collapse:collapse;
}

a{
    color:var(--clr-pop);
    text-decoration:none;
}

button{
    font:inherit;
    color:inherit;
}

:focus-visible{
    outline:3px solid var(--clr-primary);
    outline-offset:2px;
}

.skipJump{
    position:absolute;
    left:16px;
    z-index:400;
    padding:10px 18px;
    background:var(--clr-primary);
    border-radius:var(--rd-sm);
    color:var(--clr-gold-ink);
    font-size:var(--sz-fine);
    font-weight:var(--wt-half);
}

.skipJump:not(:focus){
    top:-200px !important;
}

.skipJump:focus{
    top:calc(var(--pv-shell) + 8px);
}

.srOnly{
    position:absolute;
    width:1px;
    height:1px;
    padding:0;
    overflow:hidden;
    clip:rect(0,0,0,0);
    white-space:nowrap;
    border:0;
}

@keyframes pvEnter{
    from{
        opacity:0;
    }
    to{
        opacity:1;
    }
}

/* ── shell: rg band + header ─────────────────────────── */
.elementDisplay{
    position:fixed;
    inset-block-start:0;
    inset-inline:0;
    z-index:120;
    background:#0a110c;
    border-block-end:0;
    transition:transform var(--dur-regular) var(--ease-land);
}

.elementDisplay.isTucked{
    transform:translateY(-100%);
}

.elementDisplayGuard{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:var(--gut-xs);
    min-height:var(--pv-band);
    padding:6px var(--cont-inset-mobile);
    background:var(--clr-age-band);
    color:#ffffff;
    font-size:var(--sz-fine);
    font-weight:var(--wt-half);
    letter-spacing:var(--ls-regular);
    line-height:1.3;
    text-align:center;
}

.elementDisplayGuardStep{
    color:#ffffff;
    text-decoration:underline;
}

.elementDisplayGuardStep:hover{
    color:#ffffff;
    text-decoration:none;
}

.elementDisplayCore{
    display:flex;
    align-items:center;
    gap:var(--gut-sm);
    width:100%;
    max-width:calc(var(--cont-page) + 2 * var(--cont-padding-desktop));
    height:var(--hd-h-sm);
    margin-inline:auto;
    padding-inline:var(--cont-inset-mobile);
}

.elementDisplayTap{
    display:inline-flex;
    flex-direction:column;
    flex-shrink:0;
    align-items:center;
    justify-content:center;
    gap:6px;
    width:46px;
    height:46px;
    padding:0;
    background:none;
    border:0;
    border-radius:var(--rd-sm);
    cursor:pointer;
}

.elementDisplayTapMark{
    display:block;
    width:24px;
    height:2px;
    background:var(--clr-letters);
    border-radius:var(--rd-2xs);
    transition:transform var(--dur-short) var(--ease-land);
}

.elementDisplayTap[aria-expanded='true'] .elementDisplayTapMark:first-child{
    transform:translateY(4px) rotate(45deg);
}

.elementDisplayTap[aria-expanded='true'] .elementDisplayTapMark:last-child{
    transform:translateY(-4px) rotate(-45deg);
}

.elementDisplayIndex{
    display:none;
    flex:1 1 auto;
    min-width:0;
    overflow:visible;
}

.elementDisplaySet{
    position:relative;
    display:flex;
    align-items:center;
    gap:var(--gut-lg);
    min-width:0;
    overflow:hidden;
    list-style:none;
}

.elementDisplayCell{
    position:relative;
    flex:0 0 auto;
}

.elementDisplayCell + .elementDisplayCell::before{
    content:'';
    position:absolute;
    inset-block-start:50%;
    inset-inline-start:calc(-1 * var(--gut-md));
    width:1px;
    height:14px;
    background:var(--clr-stroke-heavy);
    transform:translateY(-50%);
}

.elementDisplayStep{
    display:inline-block;
    padding-block:4px;
    color:var(--clr-letters);
    font-size:14px;
    font-weight:400;
    letter-spacing:var(--ls-open);
    text-transform:uppercase;
    white-space:nowrap;
    transition:color var(--dur-short) var(--ease-land);
}

.elementDisplayStep::after{
    content:'';
    display:block;
    width:0;
    height:2px;
    margin-block-start:3px;
    background:var(--clr-pop);
    transition:width var(--dur-short) var(--ease-land);
}

.elementDisplayStep:hover{
    color:var(--clr-pop);
}

.elementDisplayStep:hover::after{
    width:100%;
}

.elementDisplayStep[aria-current='page']{
    font-weight:var(--wt-bold);
    color:var(--clr-primary);
}

.elementDisplayHeap{
    display:none;
    flex-direction:column;
    flex:0 0 auto;
    align-items:center;
    justify-content:center;
    gap:4px;
    width:38px;
    height:38px;
    padding:0;
    background:none;
    border:0;
    border-radius:var(--rd-sm);
    cursor:pointer;
}

.elementDisplayHeapMark{
    display:block;
    width:18px;
    height:2px;
    background:var(--clr-subtle);
    border-radius:var(--rd-2xs);
}

.elementDisplayPane{
    position:absolute;
    inset-block-start:calc(100% + 10px);
    inset-inline-end:0;
    z-index:140;
    min-width:220px;
    max-height:60vh;
    padding:var(--gut-sm);
    overflow-y:auto;
    background:var(--clr-above);
    border:var(--str-fine) solid var(--clr-stroke-heavy);
    border-radius:var(--rd-md);
    box-shadow:var(--sh-lg);
    list-style:none;
}

.elementDisplayPane .elementDisplayCell{
    display:block;
}

.elementDisplayPane .elementDisplayCell + .elementDisplayCell::before{
    display:none;
}

.elementDisplayPane .elementDisplayStep{
    display:block;
    padding-block:8px;
}

.elementDisplayActs{
    display:flex;
    flex-shrink:0;
    align-items:center;
    gap:var(--gut-sm);
    margin-inline-start:auto;
}

.elementDisplayAction{
    display:inline-flex;
    flex-shrink:0;
    align-items:center;
    justify-content:center;
    height:44px;
    padding-inline:var(--gut-sm);
    background:var(--clr-pop);
    border:0;
    border-radius:var(--rd-xs);
    color:var(--clr-base-plane);
    font-family:var(--typ-display);
    font-size:var(--sz-minor);
    font-weight:var(--wt-bold);
    letter-spacing:var(--ls-open);
    text-decoration:none;
    text-transform:uppercase;
    white-space:nowrap;
}

.elementDisplayAction:hover{
    background:var(--clr-accent-strong);
    color:var(--clr-base-plane);
}

.elementDisplaySign{
    display:inline-flex;
    flex:0 1 auto;
    min-width:0;
    align-items:center;
}

.elementDisplaySign img{
    display:block;
    width:auto;
    height:34px;
    max-width:100%;
    object-fit:contain;
}

.elementDisplayDock{
    display:none;
    max-height:calc(100vh - var(--pv-shell));
    padding:var(--gut-sm) var(--cont-inset-mobile) var(--gut-md);
    overflow-y:auto;
    background:#0a110c;
    border-block-start:var(--str-fine) solid var(--clr-divider);
}

.elementDisplayDock.isOpen{
    display:block;
}

.elementDisplayDockSet{
    display:block;
    list-style:none;
}

.elementDisplayDockStep{
    display:block;
    padding-block:14px;
    border-block-end:var(--str-fine) solid var(--clr-divider);
    color:var(--clr-letters);
    font-size:var(--sz-minor);
    font-weight:var(--wt-half);
    letter-spacing:var(--ls-open);
    text-transform:uppercase;
}

.elementDisplayDockStep:hover{
    color:var(--clr-pop);
}

.elementDisplayDockStep[aria-current='page']{
    color:var(--clr-primary);
}

/* ── generic section frame ───────────────────────────── */
.cellBlock,
.sheetGroup,
.stubSpan,
.zoneSet,
.cratePanel,
.chipSet,
.stubBlock,
.annexDisplay,
.plateLane,
.dartLane,
.stallList,
.hubTrack,
.plateSpan{
    padding-block:var(--gut-lg) var(--gut-xl);
}

.cellBlockCore,
.sheetGroupCore,
.stubSpanCore,
.zoneSetCore,
.cratePanelCore,
.chipSetCore,
.stubBlockShell,
.annexDisplayCore,
.plateLaneCore,
.dartLaneCore,
.stallListCore,
.hubTrackCore,
.plateSpanShell,
.shellRegionCore,
.shellRegionBar{
    width:100%;
    max-width:calc(var(--cont-page) + 2 * var(--cont-padding-desktop));
    margin-inline:auto;
    padding-inline:var(--cont-inset-mobile);
}

/* ── hero HERO-03 ────────────────────────────────────── */
.cellBlock{
    position:relative;
    padding-block:var(--gut-xl) var(--gut-xl);
    background-color:var(--clr-base-plane);
    background-image:linear-gradient(180deg,rgba(6,10,7,.86),rgba(6,10,7,.97)),url('/static/postcard.webp');
    background-position:center;
    background-repeat:no-repeat;
    background-size:cover;
}

.cellBlockCore{
    animation:pvEnter var(--dur-easy) var(--ease-land) backwards;
    text-align:center;
}

.cellBlockChip{
    display:block;
    margin-block-end:var(--gut-sm);
    color:var(--clr-pop);
    font-size:var(--sz-tiny);
    font-weight:var(--wt-half);
    letter-spacing:var(--ls-open);
    text-transform:uppercase;
}

.cellBlockSecond{
    max-width:var(--cont-column);
    margin-block:var(--gut-md);
    margin-inline:auto;
    color:var(--clr-subtle);
    font-size:var(--sz-base);
    line-height:var(--ld-roomy);
}

.cellBlockHook{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:var(--gut-xs);
    margin-block-start:var(--gut-md);
}

.cellBlockFine{
    color:var(--clr-subtle);
    font-size:var(--sz-tiny);
    font-weight:var(--wt-half);
    letter-spacing:var(--ls-open);
    text-transform:uppercase;
}

/* ── offer plug shared by inline call-outs ───────────── */
.stubBlockHook{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:var(--gut-xs);
    margin-block-start:var(--gut-lg);
    padding:var(--gut-md);
    background:var(--clr-cta-plane);
    border:var(--str-fine) solid var(--clr-stroke-heavy);
    border-radius:var(--rd-md);
}

.stubBlockHookProse{
    color:var(--clr-subtle);
    font-size:var(--sz-fine);
    line-height:var(--ld-base);
}

.stubBlockFine{
    color:var(--clr-subtle);
    font-size:var(--sz-tiny);
    font-weight:var(--wt-half);
    letter-spacing:var(--ls-open);
    text-transform:uppercase;
}

/* ── page header PHEAD-02 ────────────────────────────── */
.sheetGroup{
    padding-block:var(--gut-lg) var(--gut-lg);
    background:var(--clr-base-plane);
}

.sheetGroupCore{
    text-align:center;
}

.sheetGroupRule{
    width:64px;
    height:var(--str-bold);
    margin-block:var(--gut-sm);
    margin-inline:auto;
    background:var(--clr-primary);
    border:0;
}

.sheetGroupSecond{
    max-width:var(--cont-column);
    margin-inline:auto;
    color:var(--clr-subtle);
    font-size:var(--sz-base);
    line-height:var(--ld-roomy);
}

/* ── prose PROSE-18 ──────────────────────────────────── */
.stubSpanHdr{
    margin-block:var(--gut-lg) var(--gut-md);
    padding:var(--gut-sm) var(--gut-md);
    border:var(--str-fine) solid var(--clr-stroke-heavy);
    border-radius:var(--rd-md);
    color:var(--clr-letters);
    font-size:var(--sz-h2);
    font-weight:var(--wt-half);
    text-align:start;
}

.stubSpanCore > *:first-child{
    margin-block-start:0;
}

.stubSpanProse{
    margin-block-end:var(--gut-sm);
    color:var(--clr-subtle);
    font-size:var(--sz-base);
    line-height:var(--ld-roomy);
}

.stubSpanProse strong{
    color:var(--clr-letters);
    font-weight:var(--wt-half);
}

.stubSpanSet{
    margin-block-end:var(--gut-md);
    padding-inline-start:22px;
    color:var(--clr-subtle);
    font-size:var(--sz-base);
    line-height:var(--ld-roomy);
}

.stubSpanSet li{
    margin-block-end:var(--gut-2xs);
}

.stubSpanSet li::marker{
    color:var(--clr-pop);
}

.stubSpanSet strong{
    color:var(--clr-letters);
    font-weight:var(--wt-half);
}

.stubSpanStep{
    background-image:linear-gradient(var(--clr-pop),var(--clr-pop));
    background-position:0 100%;
    background-repeat:no-repeat;
    background-size:0 1px;
    color:var(--clr-pop);
    transition:background-size var(--dur-regular) var(--ease-land);
}

.stubSpanStep:hover{
    background-size:100% 1px;
    color:var(--clr-pop);
}

.stubSpanShot{
    display:block;
    margin-block:var(--gut-md);
}

.stubSpanShot img{
    display:block;
    width:100%;
    height:auto;
    border-radius:var(--rd-md);
}

.stubSpanShotTall{
    max-width:320px;
}

.stubSpanShotWide{
    max-width:560px;
}

.stubSpanShotChip{
    display:block;
    margin-block-start:var(--gut-2xs);
    color:var(--clr-subtle);
    font-size:var(--sz-fine);
}

/* ── items grid GRID-13 ──────────────────────────────── */
.zoneSetBanner{
    margin-block-end:var(--gut-md);
}

.zoneSetSet{
    display:grid;
    grid-template-columns:1fr;
    gap:var(--gut-md);
    list-style:none;
}

.zoneSetCell{
    padding:var(--gut-md);
    background:var(--clr-above);
    border:var(--str-fine) solid var(--clr-divider);
    border-radius:var(--rd-lg);
    transition:transform var(--dur-regular) var(--ease-land);
}

.zoneSetCell:hover{
    transform:translateY(-3px);
}

.zoneSetShot{
    display:block;
    width:32px;
    height:32px;
    fill:var(--clr-pop);
}

.zoneSetHdr{
    margin-block-start:var(--gut-sm);
    color:var(--clr-letters);
    font-family:var(--typ-display);
    font-size:var(--sz-minor);
    font-weight:var(--wt-half);
    letter-spacing:var(--ls-open);
    text-transform:uppercase;
}

.zoneSetProse{
    margin-block-start:var(--gut-xs);
    color:var(--clr-subtle);
    font-size:var(--sz-fine);
    line-height:var(--ld-roomy);
}

/* ── reviews REV-09 ──────────────────────────────────── */
.chipSetBanner{
    margin-block-end:var(--gut-md);
    text-align:center;
}

.chipSetSet{
    list-style:none;
}

.chipSetCell{
    max-width:var(--cont-column);
    margin-inline:auto;
    padding-block:var(--gut-lg);
    text-align:center;
}

.chipSetCell blockquote{
    margin:0;
    color:var(--clr-letters);
    font-family:var(--typ-display);
    font-size:var(--sz-lg-2);
    font-style:italic;
    line-height:var(--ld-tight);
}

.chipSetExtra{
    margin-block-start:var(--gut-sm);
    color:var(--clr-subtle);
    font-size:var(--sz-fine);
    letter-spacing:var(--ls-open);
    text-transform:uppercase;
}

.chipSetTime{
    color:var(--clr-subtle);
}

.chipSetBar{
    display:inline-block;
    margin-inline-start:var(--gut-xs);
    color:var(--clr-primary);
    font-weight:var(--wt-half);
}

.chipSetRule{
    width:80px;
    height:1px;
    margin-inline:auto;
    background:var(--clr-stroke-heavy);
    border:0;
}

/* ── FAQ-01 ──────────────────────────────────────────── */
.cratePanelBanner{
    margin-block-end:var(--gut-md);
}

.cratePanelSet{
    margin:0;
}

.cratePanelCell{
    padding-block:var(--gut-sm);
    border-block-end:var(--str-fine) solid var(--clr-divider);
}

.cratePanelCell dt{
    margin:0;
}

.cratePanelHdr{
    margin:0;
    font-size:var(--sz-minor);
}

.cratePanelTap{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:var(--gut-sm);
    width:100%;
    padding:0;
    background:none;
    border:0;
    color:var(--clr-letters);
    cursor:pointer;
    font-family:var(--typ-base);
    font-size:var(--sz-minor);
    font-weight:var(--wt-bold);
    text-align:left;
}

.cratePanelTap:hover{
    color:var(--clr-pop);
}

.cratePanelShot{
    flex-shrink:0;
    width:24px;
    color:var(--clr-pop);
    font-size:var(--sz-lg-2);
    line-height:1;
    text-align:center;
}

.cratePanelStuff{
    margin:0;
    padding-block-start:var(--gut-xs);
}

.cratePanelStuff p{
    color:var(--clr-subtle);
    font-size:var(--sz-base);
    line-height:var(--ld-roomy);
}

/* ── data table TABLE-07 ─────────────────────────────── */
.annexDisplayBanner{
    margin-block-end:var(--gut-md);
}

.annexDisplayChip{
    display:block;
    margin-block-end:var(--gut-xs);
    color:var(--clr-subtle);
    font-size:var(--sz-fine);
}

.annexDisplayScroll{
    overflow-x:auto;
}

.annexDisplayBar{
    width:100%;
    min-width:520px;
    border:var(--str-fine) solid var(--clr-divider);
    font-size:var(--sz-fine);
}

.annexDisplayBar thead th{
    padding:var(--gut-sm) var(--gut-xs);
    background:var(--clr-primary);
    color:var(--clr-gold-ink);
    font-family:var(--typ-base);
    font-size:var(--sz-fine);
    font-weight:var(--wt-half);
    letter-spacing:var(--ls-open);
    text-align:left;
    text-transform:uppercase;
}

.annexDisplayBar td{
    padding:var(--gut-sm) var(--gut-xs);
    border-block-start:var(--str-fine) solid var(--clr-divider);
    color:var(--clr-subtle);
    line-height:var(--ld-base);
    vertical-align:top;
}

.annexDisplayBar td:nth-child(even){
    background:#101a13;
}

.annexDisplayBar td:first-child{
    color:var(--clr-letters);
    font-weight:var(--wt-half);
}

/* ── cta block CTA-02 ────────────────────────────────── */
.stubBlockCore{
    max-width:var(--cont-column);
    margin-inline:auto;
    padding:var(--gut-md);
    background:var(--clr-cta-plane);
    border:var(--str-fine) solid var(--clr-stroke-heavy);
    border-radius:var(--rd-lg);
    text-align:center;
}

.stubBlockBanner{
    color:var(--clr-letters);
}

.stubBlockProse{
    margin-block:var(--gut-sm);
    color:var(--clr-subtle);
    font-size:var(--sz-base);
    line-height:var(--ld-roomy);
}

.stubBlockActs{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:var(--gut-xs);
}

/* ── legal LEGAL-01 ──────────────────────────────────── */
.plateLaneLede{
    color:var(--clr-letters);
    font-size:var(--sz-minor);
    line-height:var(--ld-base);
}

.plateLaneTime{
    display:block;
    margin-block:var(--gut-sm) var(--gut-lg);
    color:var(--clr-subtle);
    font-size:var(--sz-tiny);
    font-weight:var(--wt-half);
    letter-spacing:var(--ls-open);
    text-transform:uppercase;
}

.plateLaneCell{
    padding-block-start:var(--gut-md);
    border-block-start:var(--str-fine) solid var(--clr-divider);
}

.plateLaneCell:first-of-type{
    padding-block-start:0;
    border-block-start:0;
}

.plateLaneHdr{
    margin-block:var(--gut-md) var(--gut-sm);
    font-family:var(--typ-display);
    font-size:var(--sz-lg-2);
    font-weight:var(--wt-bold);
}

.plateLaneCell:first-of-type .plateLaneHdr{
    margin-block-start:0;
}

.plateLaneProse{
    margin-block-end:var(--gut-sm);
    color:var(--clr-subtle);
    font-size:var(--sz-base);
    line-height:var(--ld-roomy);
}

.plateLaneBox{
    margin-block-start:var(--gut-lg);
    padding:var(--gut-md);
    background:var(--clr-above);
    border-radius:var(--rd-md);
}

.plateLaneSet{
    margin-block-start:var(--gut-sm);
    padding-inline-start:20px;
    color:var(--clr-subtle);
    font-size:var(--sz-fine);
    line-height:var(--ld-roomy);
}

.plateLaneStep{
    color:var(--clr-pop);
}

.plateLaneStep:hover{
    color:var(--clr-accent-strong);
}

.plateLaneNote{
    margin-block-start:var(--gut-lg);
    padding:var(--gut-sm) var(--gut-md);
    background:var(--clr-warn-plane);
    border-inline-start:3px solid var(--clr-age-band);
    border-radius:var(--rd-2xs);
    color:var(--clr-subtle);
    font-size:var(--sz-fine);
    line-height:var(--ld-roomy);
}

/* ── contact form FORM-05 ────────────────────────────── */
.dartLaneBanner{
    margin-block-end:var(--gut-sm);
}

.dartLaneLede{
    margin-block-end:var(--gut-md);
    color:var(--clr-subtle);
    font-size:var(--sz-base);
    line-height:var(--ld-roomy);
}

.dartLaneShell{
    padding:var(--gut-md);
    border:var(--str-mid) solid var(--clr-pop);
    border-radius:var(--rd-md);
}

.dartLaneControl{
    display:block;
    margin-block-end:var(--gut-md);
}

.dartLaneChip{
    display:block;
    margin-block-end:var(--gut-2xs);
    color:var(--clr-subtle);
    font-size:var(--sz-fine);
    letter-spacing:var(--ls-open);
    text-transform:uppercase;
}

.dartLaneControl input,
.dartLaneControl textarea{
    display:block;
    width:100%;
    padding-block:var(--gut-xs);
    background:none;
    border:0;
    border-block-end:var(--str-fine) solid var(--clr-stroke-heavy);
    border-radius:var(--rd-xs);
    color:var(--clr-letters);
    font-family:var(--typ-base);
    font-size:var(--sz-minor);
}

.dartLaneControl textarea{
    min-height:120px;
    resize:vertical;
}

.dartLaneAction{
    display:inline-flex;
    position:relative;
    align-items:center;
    justify-content:center;
    min-height:46px;
    padding-inline:var(--gut-md);
    overflow:hidden;
    background:var(--clr-pop);
    border:0;
    border-radius:var(--rd-pill);
    color:var(--clr-base-plane);
    cursor:pointer;
    font-family:var(--typ-display);
    font-size:var(--sz-minor);
    font-weight:var(--wt-bold);
    letter-spacing:var(--ls-open);
    text-transform:uppercase;
}

.dartLaneAction::before{
    content:'';
    position:absolute;
    inset:0;
    z-index:0;
    background:var(--clr-accent-strong);
    transform:scaleX(0);
    transform-origin:left center;
    transition:transform var(--dur-regular) var(--ease-land);
}

.dartLaneAction:hover{
    background:var(--clr-pop);
    color:var(--clr-base-plane);
}

.dartLaneAction:hover::before{
    transform:scaleX(1);
}

.dartLaneActionChip{
    position:relative;
    z-index:1;
}

.dartLaneLine{
    margin-block-start:var(--gut-md);
    padding:var(--gut-sm) var(--gut-md);
    background:var(--clr-above);
    border-inline-start:3px solid var(--clr-pop);
    border-radius:var(--rd-2xs);
    color:var(--clr-letters);
    font-size:var(--sz-fine);
    line-height:var(--ld-roomy);
}

/* ── author card AUTH-06 ─────────────────────────────── */
.stallList{
    padding-block:var(--gut-xl) var(--gut-xl);
    background-color:var(--clr-base-plane);
    background-image:linear-gradient(135deg,rgba(254,196,37,.16),rgba(6,10,7,1) 62%);
}

.stallListCore{
    display:grid;
    grid-template-columns:1fr;
    gap:var(--gut-md);
    align-items:start;
}

.stallListPhoto{
    width:100%;
    max-width:280px;
    aspect-ratio:4 / 5;
    overflow:hidden;
    border-radius:var(--rd-lg);
    box-shadow:var(--sh-lg);
}

.stallListPhoto img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center top;
}

.stallListChip{
    display:block;
    margin-block-end:var(--gut-xs);
    color:var(--clr-pop);
    font-size:var(--sz-fine);
    font-weight:var(--wt-half);
    letter-spacing:var(--ls-open);
    text-transform:uppercase;
}

.stallListByname{
    font-size:clamp(34px,6vw,64px);
}

.stallListProse{
    margin-block-start:var(--gut-sm);
    color:var(--clr-letters);
    font-size:var(--sz-minor);
    line-height:var(--ld-base);
}

.stallListSet{
    display:flex;
    flex-wrap:wrap;
    gap:var(--gut-xs);
    margin-block-start:var(--gut-md);
    list-style:none;
}

.stallListCell{
    padding:6px 14px;
    background:var(--clr-above);
    border:var(--str-fine) solid var(--clr-stroke-heavy);
    border-radius:var(--rd-pill);
    color:var(--clr-subtle);
    font-size:var(--sz-fine);
}

.stallListMore{
    grid-column:1 / -1;
    margin-block-start:var(--gut-lg);
}

.stallListMoreSet{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:var(--gut-sm);
    margin-block-start:var(--gut-sm);
    list-style:none;
}

.stallListMoreCell{
    padding:var(--gut-sm) var(--gut-md);
    background:var(--clr-above);
    border:var(--str-fine) solid var(--clr-divider);
    border-radius:var(--rd-md);
}

.stallListMoreStep{
    color:var(--clr-letters);
    font-size:var(--sz-minor);
    font-weight:var(--wt-half);
}

.stallListMoreStep:hover{
    color:var(--clr-pop);
}

.stallListMoreProse{
    margin-block-start:var(--gut-2xs);
    color:var(--clr-subtle);
    font-size:var(--sz-fine);
    line-height:var(--ld-base);
}

/* ── byline BYLINE-01 ────────────────────────────────── */
.hubTrack{
    padding-block:var(--gut-md);
}

.hubTrackCore{
    display:flex;
    align-items:center;
    gap:var(--gut-sm);
}

.hubTrackPhoto{
    display:block;
    flex-shrink:0;
    width:48px;
    height:48px;
    overflow:hidden;
    border-radius:var(--rd-dot);
}

.hubTrackPhoto img{
    display:block;
    width:48px;
    height:48px;
    object-fit:cover;
    object-position:center top;
}

.hubTrackProse{
    color:var(--clr-subtle);
    font-size:var(--sz-base);
}

.hubTrackByname{
    color:var(--clr-pop);
    text-decoration:underline;
}

.hubTrackByname:hover{
    color:var(--clr-accent-strong);
}

.hubTrackRole{
    margin-block-start:var(--gut-2xs);
    color:var(--clr-subtle);
    font-size:var(--sz-fine);
    font-style:italic;
}

.hubTrackTime{
    color:var(--clr-subtle);
}

/* ── error ERR-06 ────────────────────────────────────── */
.plateSpan{
    padding-block:var(--gut-xl) var(--gut-xl);
}

.plateSpanCore{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:var(--gut-sm);
    max-width:var(--cont-column);
    margin-inline:auto;
    padding:var(--gut-md);
    background:var(--clr-above);
    border:var(--str-mid) solid var(--clr-pop);
    border-radius:var(--rd-lg);
    box-shadow:var(--sh-md);
    text-align:center;
}

.plateSpanProse{
    color:var(--clr-subtle);
    font-size:var(--sz-base);
    line-height:var(--ld-roomy);
}

.plateSpanAction{
    display:inline-flex;
    position:relative;
    align-items:center;
    justify-content:center;
    min-height:46px;
    padding-inline:var(--gut-md);
    overflow:hidden;
    background:var(--clr-primary);
    border-radius:var(--rd-pill);
    color:var(--clr-gold-ink);
    font-family:var(--typ-display);
    font-size:var(--sz-minor);
    font-weight:var(--wt-bold);
    letter-spacing:var(--ls-open);
    text-transform:uppercase;
}

.plateSpanAction::before{
    content:'';
    position:absolute;
    inset:0;
    z-index:0;
    background:var(--clr-gradient-light);
    transform:scaleX(0);
    transform-origin:left center;
    transition:transform var(--dur-regular) var(--ease-land);
}

.plateSpanAction:hover{
    background:var(--clr-primary);
    color:var(--clr-gold-ink);
}

.plateSpanAction:hover::before{
    transform:scaleX(1);
}

.plateSpanActionChip{
    position:relative;
    z-index:1;
}

/* ── cookie banner COOK-15 ───────────────────────────── */
.precinctCarousel{
    display:none;
    position:fixed;
    inset-block-start:var(--pv-shell);
    inset-block-end:0;
    inset-inline-end:0;
    z-index:150;
    flex-direction:column;
    justify-content:flex-end;
    width:min(360px,100vw);
    padding:var(--gut-md);
    background:var(--clr-above);
    border-inline-start:var(--str-fine) solid var(--clr-stroke-heavy);
}

.precinctCarousel.isOpen{
    display:flex;
}

.precinctCarouselLine{
    color:var(--clr-letters);
    font-size:var(--sz-fine);
    line-height:var(--ld-roomy);
}

.precinctCarouselActs{
    display:flex;
    flex-direction:column;
    gap:var(--gut-xs);
    margin-block-start:var(--gut-sm);
}

.precinctCarouselApprove,
.precinctCarouselDeny{
    display:block;
    width:100%;
    min-height:44px;
    padding-inline:var(--gut-sm);
    border-radius:var(--rd-sm);
    cursor:pointer;
    font-family:var(--typ-base);
    font-size:var(--sz-fine);
    font-weight:var(--wt-half);
}

.precinctCarouselApprove{
    background:var(--clr-pop);
    border:0;
    color:var(--clr-base-plane);
}

.precinctCarouselApprove:hover{
    background:var(--clr-accent-strong);
    color:var(--clr-base-plane);
}

.precinctCarouselDeny{
    background:var(--clr-above);
    border:var(--str-fine) solid var(--clr-stroke-heavy);
    color:var(--clr-subtle);
}

.precinctCarouselDeny:hover{
    background:var(--clr-base-plane);
    color:var(--clr-letters);
}

/* ── footer FOOT-01 ──────────────────────────────────── */
.shellRegion{
    background:var(--clr-primary);
    color:var(--clr-gold-ink);
}

.shellRegionCore{
    display:grid;
    grid-template-columns:1fr;
    gap:var(--gut-md);
    padding-block:var(--gut-lg);
}

.shellRegionTrack{
    min-width:0;
}

.shellRegionSign{
    display:inline-flex;
}

.shellRegionSign img{
    display:block;
    width:auto;
    height:56px;
}

.shellRegionProse{
    margin-block-start:var(--gut-xs);
    color:var(--clr-gold-ink-soft);
    font-size:var(--sz-fine);
    line-height:var(--ld-base);
}

.shellRegionHdr{
    margin-block-end:var(--gut-sm);
    color:var(--clr-gold-ink);
    font-family:var(--typ-display);
    font-size:var(--sz-micro-head);
    font-weight:var(--wt-bold);
    letter-spacing:var(--ls-open);
    text-transform:uppercase;
}

.shellRegionSet{
    display:flex;
    flex-direction:column;
    gap:var(--gut-sm);
    list-style:none;
}

.shellRegionStep{
    color:var(--clr-gold-ink-soft);
    font-size:var(--sz-fine);
    font-weight:var(--wt-plain);
    transition:color var(--dur-short) var(--ease-land);
}

.shellRegionStep:hover{
    color:var(--clr-gold-ink);
}

.shellRegionBar{
    padding-block:var(--gut-sm);
}

.shellRegionBarCore{
    border-block-start:var(--str-fine) solid rgba(11,18,13,.22);
    padding-block-start:var(--gut-sm);
    color:var(--clr-gold-ink-soft);
    font-size:var(--sz-tiny);
    font-weight:var(--wt-half);
    letter-spacing:var(--ls-open);
    text-align:center;
    text-transform:uppercase;
}

/* ── tablet and up ───────────────────────────────────── */
@media (min-width:380px){
    .elementDisplayCore{
        gap:var(--gut-xs);
    }

    .elementDisplaySign img{
        height:44px;
    }
}

@media (min-width:488px){
    .zoneSetSet{
        grid-template-columns:repeat(2,1fr);
    }

    .stallListSet{
        gap:var(--gut-sm);
    }
}

@media (min-width:832px){
    :root{
        --sz-display-1:60px;
        --sz-h2:34px;
        --sz-lg-2:24px;
        --sz-md-2:19px;
        --sz-minor:16px;
        --sz-micro-head:14px;
        --sz-base:16px;
        --sz-fine:13px;
        --sz-tiny:10px;
    }

    .elementDisplayCore{
        padding-inline:var(--cont-pad-md);
    }

    .elementDisplayAction{
        padding-inline:var(--gut-md);
    }

    .cellBlockCore,
    .sheetGroupCore,
    .stubSpanCore,
    .zoneSetCore,
    .cratePanelCore,
    .chipSetCore,
    .stubBlockShell,
    .annexDisplayCore,
    .plateLaneCore,
    .dartLaneCore,
    .stallListCore,
    .hubTrackCore,
    .plateSpanShell,
    .shellRegionCore,
    .shellRegionBar{
        padding-inline:var(--cont-pad-md);
    }

    .cellBlock,
    .sheetGroup,
    .stubSpan,
    .zoneSet,
    .cratePanel,
    .chipSet,
    .stubBlock,
    .annexDisplay,
    .plateLane,
    .dartLane,
    .stallList,
    .plateSpan{
        padding-block:var(--gut-lg) var(--gut-xl);
    }

    .zoneSetSet{
        grid-template-columns:repeat(3,1fr);
    }

    .stallListCore{
        grid-template-columns:280px 1fr;
        gap:var(--gut-lg);
    }

    .shellRegionCore{
        grid-template-columns:repeat(3,1fr);
        gap:var(--gut-lg);
        padding-block:var(--gut-xl);
    }

    .stubBlockHook{
        flex-direction:row;
        align-items:center;
        justify-content:space-between;
        gap:var(--gut-md);
    }

    .stubBlockHookText{
        flex:1 1 auto;
    }

    .precinctCarousel{
        padding:var(--gut-lg) var(--gut-md);
    }

    .dartLaneShell{
        padding:var(--gut-lg);
    }

    .stubBlockCore{
        padding:var(--gut-lg);
    }

    .plateSpanCore{
        padding:var(--gut-lg);
    }

    .zoneSetCell{
        padding:var(--gut-md);
    }

    .annexDisplayBar{
        font-size:var(--sz-fine);
    }
}

@media (min-width:1136px){
    .elementDisplayCore{
        height:64px;
        padding-inline:var(--cont-padding-desktop);
    }

    .elementDisplayTap{
        display:none;
    }

    .elementDisplayIndex{
        display:block;
    }

    .elementDisplaySign{
        flex-shrink:0;
    }

    .elementDisplaySign img{
        height:60px;
    }

    .elementDisplayDock{
        display:none !important;
    }

    .cellBlockCore,
    .sheetGroupCore,
    .stubSpanCore,
    .zoneSetCore,
    .cratePanelCore,
    .chipSetCore,
    .stubBlockShell,
    .annexDisplayCore,
    .plateLaneCore,
    .dartLaneCore,
    .stallListCore,
    .hubTrackCore,
    .plateSpanShell,
    .shellRegionCore,
    .shellRegionBar{
        padding-inline:var(--cont-padding-desktop);
    }

    .cellBlock{
        padding-block:var(--gut-xl) var(--gut-xl);
    }

    .stubSpanShotTall{
        float:inline-start;
        max-width:300px;
        margin-inline-end:var(--gut-md);
    }
}

@media (max-width:719px){
    .precinctCarousel{
        inset-block-start:auto;
        inset-inline:0;
        width:100vw;
        height:auto;
        padding:12px 14px;
        border-inline-start:0;
        border-block-start:var(--str-fine) solid var(--clr-stroke-heavy);
        font-size:13px;
        line-height:1.35;
    }

    .precinctCarouselLine{
        font-size:13px;
        line-height:1.35;
    }

    .precinctCarouselActs{
        flex-direction:row;
        gap:8px;
    }

    .precinctCarouselApprove,
    .precinctCarouselDeny{
        min-height:36px;
        padding:8px 14px;
        font-size:12px;
    }
}

@media (prefers-reduced-motion:reduce){
    *,*::before,*::after{
        animation:none !important;
        transition:none !important;
        scroll-behavior:auto !important;
    }
}
.molipe-hit{display:inline-flex;align-items:center;justify-content:center;padding:0 var(--gut-md);min-height:44px;border-radius:var(--rd-xs);border:0;font-size:var(--sz-minor);font-weight:var(--wt-bold);letter-spacing:var(--ls-open)}
.molipe-hit{
  background:#7C3AED;color:#FFFFFF;text-decoration:none;text-transform:uppercase;
  transition:background 0.16s cubic-bezier(.2,.7,.3,1),box-shadow 0.16s cubic-bezier(.2,.7,.3,1);}
.molipe-hit.molipe-hit{color:#FFFFFF;text-decoration:none;}
.molipe-hit:hover{background:#6D28D9;color:#FFFFFF;animation:none}
.molipe-hit.molipe-hit:hover{color:#FFFFFF;text-decoration:none}
.molipe-hit:hover::after{animation:none}
.molipe-hit:active{background:#5B21B6;color:#FFFFFF}
.molipe-hit:focus-visible{outline:3px solid #060A07;outline-offset:3px}
.molipe-hit{animation:molipe-glow 1.79s linear infinite}
@keyframes molipe-glow{0%{transform:scale(1);animation-timing-function:cubic-bezier(.25,.8,.35,1)}17.318%{transform:scale(1.055);animation-timing-function:cubic-bezier(.45,.05,.55,.95)}55.307%,100%{transform:scale(1)}}
@media (prefers-reduced-motion:reduce){.molipe-hit,.molipe-hit::after{animation:none!important;transition:none!important}}
.molipe-row{display:flex;flex-direction:column;align-items:center;gap:12px;padding:var(--gut-md);background:var(--clr-cta-plane);border-radius:var(--rd-md);border:var(--str-fine) solid var(--clr-stroke-heavy);text-align:center;margin:var(--gut-lg,24px) 0}
.molipe-terms.molipe-terms{margin:0;border:0;padding:0;font-weight:600;font-size:0.9em}
.molipe-legal.molipe-legal{margin:0;border:0;padding:0;font-size:0.9em;opacity:.75}

@media (max-width: 1168px) {
  .elementDisplayIndex,
  .elementDisplaySet,
  .elementDisplayStep { display: none !important; }
  .elementDisplayTap { display: flex !important; }
}
