@font-face {
    font-display: swap;
    font-family: "Open Sans";
    font-style: normal;
    font-weight: 400;
    src: url("/type/opensans-400.woff2") format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215;
}
@font-face {
    font-display: swap;
    font-family: "Open Sans";
    font-style: normal;
    font-weight: 400;
    src: url("/type/opensans-ext-400.woff2") format("woff2");
    unicode-range: U+0100-02BA, U+1E00-1EFF, U+2020, U+20A0-20AB, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
    font-display: swap;
    font-family: "Open Sans";
    font-style: normal;
    font-weight: 500;
    src: url("/type/opensans-500.woff2") format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215;
}
@font-face {
    font-display: swap;
    font-family: "Open Sans";
    font-style: normal;
    font-weight: 500;
    src: url("/type/opensans-ext-500.woff2") format("woff2");
    unicode-range: U+0100-02BA, U+1E00-1EFF, U+2020, U+20A0-20AB, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
    font-display: swap;
    font-family: "Open Sans";
    font-style: normal;
    font-weight: 600;
    src: url("/type/opensans-600.woff2") format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215;
}
@font-face {
    font-display: swap;
    font-family: "Open Sans";
    font-style: normal;
    font-weight: 600;
    src: url("/type/opensans-ext-600.woff2") format("woff2");
    unicode-range: U+0100-02BA, U+1E00-1EFF, U+2020, U+20A0-20AB, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

:root {
    --col-main: #422d7c;
    --col-accent: #d42913;
    --col-accent-pressed: #b2160d;
    --col-surface: #fcfcfc;
    --col-layer: #f2f0f9;
    --col-front: #1f2b39;
    --col-soft-text: #000000;
    --col-quiet: #55607a;
    --col-line: #e3dff1;
    --col-border-strong: #bcb3dc;
    --col-fade-top: #f37c78;
    --col-ramp-end: #ee342f;
    --col-notice: #b02a37;
    --col-on-main: #ffffff;
    --col-on-main-soft: #ded8ee;

    --st-hair: 4px;
    --st-tiny: 8px;
    --st-snug: 12px;
    --st-base: 16px;
    --st-wide: 24px;
    --st-roomy: 40px;
    --st-vast: 64px;
    --st-huge: 96px;

    --crn-hair: 2px;
    --crn-tiny: 4px;
    --crn-snug: 6px;
    --crn-base: 10px;
    --crn-wide: 16px;
    --crn-roomy: 22px;
    --crn-vast: 28px;
    --crn-huge: 36px;
    --crn-pill: 9999px;
    --crn-dot: 50%;

    --sh-hair: none;
    --sh-tiny: none;
    --sh-snug: 0 1px 3px rgba(28, 18, 56, 0.05);
    --sh-base: 0 4px 12px rgba(28, 18, 56, 0.09);
    --sh-wide: 0 8px 24px rgba(28, 18, 56, 0.13);
    --sh-roomy: 0 14px 34px rgba(28, 18, 56, 0.16);
    --sh-vast: 0 20px 48px rgba(28, 18, 56, 0.18);
    --sh-huge: 0 28px 64px rgba(28, 18, 56, 0.2);

    --bd-hair: 1px;
    --bd-base: 2px;
    --bd-heavy: 3px;

    --typ-heading: "Open Sans", "Segoe UI", Arial, sans-serif;
    --typ-reading: "Open Sans", "Segoe UI", Arial, sans-serif;

    --ts-display-1: 38px;
    --ts-display-2: 30px;
    --ts-display-3: 24px;
    --ts-h4: 20px;
    --ts-h5: 17px;
    --ts-h6: 15px;
    --ts-reading: 17px;
    --ts-petite: 15px;
    --ts-xs: 13px;

    --ld-dense: 1.25;
    --ld-regular: 1.6;
    --ld-airy: 1.8;

    --fw-regular: 400;
    --fw-half: 500;
    --fw-heavy: 600;

    --ls-narrow: 0;
    --ls-even: 0;
    --ls-loose: 0.01em;

    --dur-brisk: 221ms;
    --dur-mid: 400ms;
    --dur-long: 772ms;
    --bz-land: cubic-bezier(0.19, 0.59, 0.26, 0.92);
    --bz-in: cubic-bezier(0.45, 0.05, 1, 1);
    --bz-in-out: cubic-bezier(0.5, 0.04, 0.35, 0.98);
    --bz-overshoot: cubic-bezier(0.42, 1.45, 0.73, 1.1);

    --shl-main: 1000px;
    --shl-prose: 1000px;
    --shl-brief: 600px;
    --shl-pad-lg: 40px;
    --shl-pad-md: 24px;
    --shl-edge-narrow: 16px;

    --hd-height-desktop: 96px;
    --hd-height-mobile: 72px;
    --pv-shell: 146px;
    --pv-rail: 320px;
}

@media (max-width: 819px) {
    :root {
        --ts-display-1: 28px;
        --ts-display-2: 24px;
        --ts-display-3: 20px;
        --ts-h4: 18px;
        --ts-h5: 16px;
        --ts-h6: 14px;
        --ts-reading: 16px;
        --ts-petite: 14px;
        --ts-xs: 12px;
        --pv-rail: 268px;
    }
}

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

html,
body {
    overflow-x: clip;
}

html {
    -webkit-text-size-adjust: 100%;
    scroll-behavior: smooth;
}

body {
    background: var(--col-surface);
    color: var(--col-front);
    font-family: var(--typ-reading);
    font-size: var(--ts-reading);
    font-weight: var(--fw-regular);
    line-height: var(--ld-airy);
    margin: 0;
    margin-block-start: var(--pv-shell);
    padding: 0;
}

.page-flow {
    animation: pv-enter var(--dur-long) var(--bz-land) both;
    display: block;
}

@keyframes pv-enter {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

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

h1,
h2,
h3 {
    font-family: var(--typ-heading);
    font-weight: var(--fw-heavy);
    letter-spacing: var(--ls-even);
    line-height: var(--ld-dense);
}

h4,
h5,
h6 {
    font-family: var(--typ-reading);
    font-weight: var(--fw-half);
}

p {
    margin: 0;
}

img {
    height: auto;
    max-width: 100%;
}

a {
    color: var(--col-main);
    transition: color var(--dur-brisk) var(--bz-land);
}

a:hover {
    color: var(--col-accent-pressed);
}

:target {
    scroll-margin-block-start: calc(var(--pv-shell) + var(--st-base));
}

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

.sr-only {
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px;
}

.skip-jump {
    background: var(--col-main);
    border-radius: var(--crn-snug);
    color: var(--col-on-main);
    inset-inline-start: var(--st-base);
    padding: var(--st-snug) var(--st-base);
    position: fixed;
    text-decoration: none;
    z-index: 90;
}

.skip-jump:not(:focus) {
    top: -200px;
}

.skip-jump:focus {
    top: var(--st-snug);
}

/* header — HEAD-PILL */
.xapakis-shell {
    background: var(--col-surface);
    inset-block-start: 0;
    padding-block-end: var(--st-snug);
    inset-inline: 0;
    position: fixed;
    transition: transform var(--dur-mid) var(--bz-land);
    z-index: 60;
}

.xapakis-shell.is-away {
    transform: translateY(-104%);
}

.xapakis-guard {
    background: var(--col-layer);
    border-block-end: var(--bd-hair) solid var(--col-line);
}

.xapakis-guard-wrap {
    align-items: center;
    display: flex;
    gap: var(--st-snug);
    margin-inline: auto;
    max-width: calc(var(--shl-main) + 2 * var(--shl-pad-lg));
    padding-block: var(--st-tiny);
    padding-inline: 56px var(--shl-pad-md);
}

.xapakis-badge {
    align-items: center;
    background: var(--col-notice);
    border-radius: var(--crn-snug);
    color: #ffffff;
    display: inline-flex;
    flex-shrink: 0;
    font-size: var(--ts-xs);
    font-weight: var(--fw-heavy);
    justify-content: center;
    letter-spacing: var(--ls-loose);
    min-height: 26px;
    min-width: 40px;
    padding-inline: var(--st-tiny);
}

.xapakis-guard-para {
    color: var(--col-front);
    font-size: var(--ts-xs);
    line-height: var(--ld-regular);
}

.xapakis-guard-href {
    color: var(--col-main);
    text-underline-offset: 2px;
}

.xapakis-guard-href:hover {
    color: var(--col-accent-pressed);
}

.xapakis {
    background: var(--col-main);
    border-radius: var(--crn-pill);
    box-shadow: var(--sh-wide);
    margin: var(--st-snug) auto 0;
    z-index: 2;
    max-width: calc(var(--shl-main) + 2 * var(--shl-pad-lg));
    position: relative;
    width: calc(100% - 2 * var(--st-snug));
}

.xapakis-wrap {
    align-items: center;
    display: flex;
    gap: var(--st-base);
    height: 96px;
    margin-inline: auto;
    max-width: calc(var(--shl-main) + 2 * var(--shl-pad-lg));
    padding-block: var(--st-snug);
    padding-inline: 30px;
}

.xapakis-mark {
    align-items: center;
    display: flex;
    flex-shrink: 0;
    order: 1;
}

.xapakis-shot {
    display: block;
    flex-shrink: 0;
    height: 72px;
    width: auto;
}

.xapakis-index {
    flex: 1 1 auto;
    min-width: 0;
    order: 2;
}

.xapakis-roll {
    align-items: center;
    background: var(--col-main);
    display: flex;
    flex-wrap: nowrap;
    gap: var(--st-snug);
    list-style: none;
    margin: 0;
    padding: 0;
}

.xapakis-node {
    align-items: center;
    display: flex;
    flex-shrink: 0;
    gap: var(--st-snug);
    position: relative;
}

.xapakis-node + .xapakis-node::before {
    background: rgba(255, 255, 255, 0.3);
    content: "";
    display: block;
    height: 14px;
    width: 1px;
}

.xapakis-href {
    color: #eae5f7;
    display: inline-block;
    font-size: 14px;
    font-weight: 400;
    line-height: var(--ld-dense);
    padding-block: var(--st-snug);
    text-decoration: none;
    transition: color var(--dur-brisk) var(--bz-land), transform var(--dur-brisk) var(--bz-land);
    white-space: nowrap;
}

.xapakis-href:hover {
    color: #ffffff;
    transform: translateY(-3px);
}

.xapakis-href.is-here {
    color: #ffffff;
    font-weight: var(--fw-heavy);
}

.xapakis-roll > .xapakis-node:nth-child(n+8) {
    display: none;
}

.xapakis-node-extra {
    position: relative;
}

.xapakis-more {
    background: #543c94;
    border: var(--bd-hair) solid rgba(255, 255, 255, 0.3);
    border-radius: var(--crn-pill);
    color: #ffffff;
    cursor: pointer;
    font-family: var(--typ-reading);
    font-size: 14px;
    min-height: 44px;
    padding-inline: var(--st-base);
    white-space: nowrap;
}

.xapakis-more:hover {
    background: #654bab;
    color: #ffffff;
}

.xapakis-pane {
    background: var(--col-main);
    border: var(--bd-hair) solid rgba(255, 255, 255, 0.24);
    border-radius: var(--crn-wide);
    box-shadow: var(--sh-wide);
    inset-block-start: calc(100% + var(--st-tiny));
    inset-inline-end: 0;
    max-height: 64vh;
    min-width: 220px;
    overflow-y: auto;
    padding: var(--st-snug);
    position: absolute;
    z-index: 5;
}

.xapakis-pane-roll {
    display: flex;
    flex-direction: column;
    gap: var(--st-hair);
    list-style: none;
    margin: 0;
    padding: 0;
}

.xapakis-pane-roll .xapakis-node {
    display: block;
}

.xapakis-pane-roll .xapakis-node::before {
    display: none;
}

.xapakis-pane-roll .xapakis-href {
    display: block;
    padding: var(--st-tiny) var(--st-snug);
    white-space: nowrap;
}

.xapakis-pane-roll .xapakis-href:hover {
    transform: none;
}

.xapakis-acts {
    align-items: center;
    display: flex;
    flex-shrink: 0;
    gap: var(--st-snug);
    order: 3;
}

.xapakis-flag {
    background: linear-gradient(180deg, #ffffff 0 50%, #d4213d 50% 100%);
    border-radius: var(--crn-hair);
    box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.45);
    display: block;
    flex-shrink: 0;
    height: 15px;
    width: 22px;
}

.xapakis-quiet {
    align-items: center;
    background: var(--col-main);
    border: var(--bd-hair) solid rgba(255, 255, 255, 0.55);
    border-radius: var(--crn-pill);
    color: #ffffff;
    display: inline-flex;
    flex-shrink: 0;
    font-size: 14px;
    min-height: 44px;
    padding-inline: var(--st-base);
    text-decoration: none;
    transition: background var(--dur-brisk) var(--bz-land), color var(--dur-brisk) var(--bz-land);
    white-space: nowrap;
}

.xapakis-quiet:hover {
    background: #543c94;
    color: #ffffff;
}

.xapakis-act {
    align-items: center;
    display: inline-flex;
    flex-shrink: 0;
    justify-content: center;
    min-height: 44px;
    text-decoration: none;
    white-space: nowrap;
}

.xapakis-lever {
    align-items: center;
    background: transparent;
    border: 0;
    cursor: pointer;
    display: none;
    flex-shrink: 0;
    gap: 5px;
    justify-content: center;
    min-height: 44px;
    min-width: 44px;
    order: 4;
    padding: 0;
}

.xapakis-dot {
    background: #ffffff;
    border-radius: var(--crn-dot);
    display: block;
    height: 5px;
    width: 5px;
}

.xapakis-sheet {
    background: var(--col-main);
    border-radius: var(--crn-wide);
    box-shadow: var(--sh-wide);
    display: none;
    inset-block-start: calc(100% - var(--st-tiny));
    inset-inline: var(--st-snug);
    max-height: 68vh;
    overflow-y: auto;
    padding: var(--st-base);
    position: absolute;
    z-index: 4;
}

.xapakis-sheet.is-open {
    display: block;
}

.xapakis-sheet-roll {
    display: flex;
    flex-direction: column;
    list-style: none;
    margin: 0;
    padding: 0;
}

.xapakis-sheet-node {
    display: block;
}

.xapakis-sheet-href {
    color: #eae5f7;
    display: block;
    font-size: var(--ts-petite);
    padding-block: var(--st-snug);
    text-decoration: none;
}

.xapakis-sheet-href:hover {
    color: #ffffff;
}

@media (max-width: 819px) {
    .xapakis-guard-wrap {
        padding-inline: var(--shl-edge-narrow);
    }

    .xapakis-wrap {
        gap: var(--st-tiny);
        height: var(--hd-height-mobile);
        padding-inline: var(--st-base);
    }

    .xapakis-act.lunase-hit {
        font-size: var(--ts-petite);
        padding-inline: var(--st-snug);
    }

    .xapakis-shot {
        height: 52px;
    }

    .xapakis-index {
        display: none;
    }

    .xapakis-lever {
        display: inline-flex;
        order: 0;
    }

    .xapakis-mark {
        order: 1;
    }

    .xapakis-acts {
        margin-inline-start: auto;
        order: 2;
    }

    .xapakis-quiet {
        display: none;
    }
}

@media (max-width: 519px) {
    .xapakis-flag {
        display: none;
    }

    .xapakis-wrap {
        padding-inline: var(--st-snug);
    }

    .xapakis-shot {
        height: 44px;
    }

    .xapakis-act.lunase-hit {
        font-size: var(--ts-xs);
        padding-inline: var(--st-tiny);
    }
}

@media (min-width: 820px) {
    .xapakis-sheet {
        display: none;
    }
}

/* breadcrumbs — BREAD-02 */
.mutyd {
    padding-block: var(--st-base);
}

.mutyd-wrap {
    margin-inline: auto;
    max-width: calc(var(--shl-main) + 2 * var(--shl-pad-lg));
    padding-inline: 56px var(--shl-pad-md);
}

.mutyd-roll {
    display: flex;
    flex-wrap: wrap;
    gap: var(--st-tiny);
    list-style: none;
    margin: 0;
    padding: 0;
}

.mutyd-node {
    display: block;
}

.mutyd-href,
.mutyd-here {
    border-radius: var(--crn-pill);
    display: inline-block;
    font-size: var(--ts-xs);
    letter-spacing: var(--ls-loose);
    padding: var(--st-hair) var(--st-snug);
    text-transform: uppercase;
}

.mutyd-href {
    background: var(--col-layer);
    color: var(--col-quiet);
    text-decoration: none;
}

.mutyd-href:hover {
    background: var(--col-accent);
    color: #ffffff;
}

.mutyd-here {
    background: #e0daf0;
    color: var(--col-front);
}

/* hero — HERO-09 */
.rone {
    padding-block: var(--st-vast) var(--st-roomy);
}

.rone-wrap {
    display: grid;
    gap: var(--st-vast);
    grid-template-columns: 60% 1fr;
    margin-inline: auto;
    max-width: calc(var(--shl-main) + 2 * var(--shl-pad-lg));
    padding-inline: 56px var(--shl-pad-md);
}

.rone-content {
    padding-block: var(--st-wide);
}

.rone-kicker {
    color: var(--col-accent);
    display: block;
    font-size: var(--ts-xs);
    font-weight: var(--fw-heavy);
    letter-spacing: var(--ls-loose);
    margin-block-end: var(--st-snug);
    text-transform: uppercase;
}

.rone-lede {
    font-size: var(--ts-display-1);
    margin-block-end: var(--st-base);
}

.rone-para {
    color: var(--col-front);
    font-size: var(--ts-reading);
    line-height: var(--ld-airy);
    margin-block-end: var(--st-wide);
    max-width: var(--shl-brief);
}

.rone-act {
    align-items: center;
    display: inline-flex;
    justify-content: center;
    min-height: 48px;
    text-decoration: none;
}

.rone-roll {
    display: flex;
    flex-direction: column;
    gap: var(--st-base);
    justify-content: center;
    list-style: none;
    margin: 0;
    padding: 0;
}

.rone-node {
    align-items: center;
    background: var(--col-layer);
    border-radius: var(--crn-base);
    display: flex;
    gap: var(--st-snug);
    padding: var(--st-base);
}

.rone-num {
    color: var(--col-accent);
    flex-shrink: 0;
    font-family: var(--typ-heading);
    font-size: var(--ts-display-3);
    font-weight: var(--fw-heavy);
    line-height: 1;
}

.rone-head {
    display: block;
    font-family: var(--typ-heading);
    font-size: var(--ts-reading);
    font-weight: var(--fw-heavy);
    line-height: var(--ld-dense);
}

@media (max-width: 819px) {
    .rone {
        padding-block: var(--st-roomy) var(--st-wide);
    }

    .rone-wrap {
        gap: var(--st-wide);
        grid-template-columns: 1fr;
        padding-inline: var(--shl-edge-narrow);
    }

    .rone-content {
        padding-block: 0;
    }
}

/* page header — PHEAD-02 */
.mobo {
    padding-block: var(--st-roomy);
    text-align: center;
}

.mobo-wrap {
    margin-inline: auto;
    max-width: calc(var(--shl-main) + 2 * var(--shl-pad-lg));
    padding-inline: 56px var(--shl-pad-md);
}

.mobo-lede {
    font-size: var(--ts-display-1);
}

.mobo-rule {
    background: var(--col-accent);
    display: block;
    height: 3px;
    margin: var(--st-base) auto;
    width: 72px;
}

.mobo-para {
    color: var(--col-quiet);
    margin-inline: auto;
    max-width: var(--shl-prose);
}

.mobo-when {
    color: var(--col-quiet);
    font-size: var(--ts-xs);
    margin-block-start: var(--st-snug);
}

/* prose — PROSE-12 */
.nyri {
    padding-block: var(--st-roomy);
}

.nyri-wrap {
    counter-reset: seg;
    margin-inline: auto;
    max-width: calc(var(--shl-main) + 2 * var(--shl-pad-lg));
    padding-inline: 56px var(--shl-pad-md);
}

.nyri-block {
    counter-increment: seg;
    margin-block-start: var(--st-roomy);
    max-width: var(--shl-prose);
}

.nyri-block:first-child {
    margin-block-start: 0;
}

.nyri-lede {
    align-items: flex-start;
    display: flex;
    font-size: var(--ts-display-2);
    gap: var(--st-base);
    margin-block: var(--st-snug) var(--st-base);
}

.nyri-lede::before {
    align-items: center;
    background: var(--col-main);
    border-radius: var(--crn-snug);
    color: #ffffff;
    content: counter(seg);
    display: flex;
    flex: 0 0 auto;
    font-size: var(--ts-h5);
    font-weight: var(--fw-heavy);
    height: 44px;
    justify-content: center;
    width: 44px;
}

.nyri-para {
    margin-block-end: var(--st-base);
    max-width: var(--shl-prose);
}

.nyri-roll {
    margin-block: 0 var(--st-base);
    padding-inline-start: var(--st-wide);
}

.nyri-node {
    margin-block-end: var(--st-tiny);
}

.nyri-figure {
    margin: 0 0 var(--st-wide);
}

.nyri-shot {
    border-radius: var(--crn-base);
    display: block;
    max-height: 460px;
    object-fit: cover;
    width: 100%;
}

.nyri-figure-side {
    float: inline-end;
    margin-block: var(--st-tiny) var(--st-base);
    margin-inline-start: var(--st-wide);
    max-width: 340px;
}

.nyri-figure-side .nyri-shot {
    max-height: 300px;
}

@media (max-width: 819px) {
    .nyri-wrap {
        padding-inline: var(--shl-edge-narrow);
    }

    .nyri-lede::before {
        font-size: var(--ts-h6);
        height: 34px;
        width: 34px;
    }

    .nyri-figure-side {
        float: none;
        margin-inline-start: 0;
        max-width: 100%;
    }
}

/* items grid — GRID-09 */
.vaveze {
    padding-block: var(--st-roomy);
}

.vaveze-wrap {
    margin-inline: auto;
    max-width: calc(var(--shl-main) + 2 * var(--shl-pad-lg));
    padding-inline: 56px var(--shl-pad-md);
}

.vaveze-lede {
    font-size: var(--ts-display-2);
    margin-block-end: var(--st-wide);
}

.vaveze-rail {
    display: flex;
    gap: var(--st-base);
    overflow-x: auto;
    padding-block-end: var(--st-snug);
    scroll-snap-type: x proximity;
}

.vaveze-card {
    background: var(--col-surface);
    border: var(--bd-hair) solid var(--col-line);
    border-radius: var(--crn-base);
    flex-shrink: 0;
    min-height: 200px;
    padding: var(--st-base);
    scroll-snap-align: start;
    transition: transform var(--dur-brisk) var(--bz-land), box-shadow var(--dur-brisk) var(--bz-land);
    width: var(--pv-rail);
}

.vaveze-card:hover {
    box-shadow: var(--sh-base);
    transform: translateY(-3px);
}

.vaveze-glyph {
    align-items: center;
    background: var(--col-layer);
    border-radius: var(--crn-snug);
    color: var(--col-main);
    display: inline-flex;
    height: 40px;
    justify-content: center;
    margin-block-end: var(--st-snug);
    width: 40px;
}

.vaveze-sign {
    fill: currentColor;
    height: 20px;
    width: 20px;
}

.vaveze-head {
    font-size: var(--ts-h5);
    margin-block-end: var(--st-tiny);
}

.vaveze-para {
    color: var(--col-quiet);
    font-size: var(--ts-petite);
    line-height: var(--ld-regular);
}

.vaveze-hint {
    color: var(--col-quiet);
    font-size: var(--ts-xs);
    margin-block-start: var(--st-snug);
}

@media (max-width: 819px) {
    .vaveze-wrap {
        padding-inline: var(--shl-edge-narrow);
    }
}

/* reviews — REV-09 */
.lizadal {
    padding-block: var(--st-roomy);
}

.lizadal-wrap {
    margin-inline: auto;
    max-width: calc(var(--shl-main) + 2 * var(--shl-pad-lg));
    padding-inline: 56px var(--shl-pad-md);
}

.lizadal-lede {
    font-size: var(--ts-display-2);
    margin-block-end: var(--st-wide);
    text-align: center;
}

.lizadal-node {
    margin: 0;
    padding-block: var(--st-roomy);
    text-align: center;
}

.lizadal-quote {
    font-family: var(--typ-heading);
    font-size: var(--ts-display-3);
    font-style: italic;
    line-height: var(--ld-dense);
    margin: 0 auto;
    max-width: var(--shl-brief);
}

.lizadal-sign {
    align-items: center;
    color: var(--col-quiet);
    display: flex;
    flex-wrap: wrap;
    font-size: var(--ts-petite);
    gap: var(--st-tiny);
    justify-content: center;
    letter-spacing: var(--ls-loose);
    margin-block-start: var(--st-base);
    text-transform: uppercase;
}

.lizadal-score {
    color: var(--col-accent);
    font-weight: var(--fw-heavy);
}

.lizadal-rule {
    background: var(--col-line);
    border: 0;
    height: 1px;
    margin: 0 auto;
    width: 80px;
}

@media (max-width: 819px) {
    .lizadal-wrap {
        padding-inline: var(--shl-edge-narrow);
    }

    .lizadal-node {
        padding-block: var(--st-wide);
    }
}

/* faq — FAQ-07 */
.bisagok {
    padding-block: var(--st-roomy);
}

.bisagok-wrap {
    margin-inline: auto;
    max-width: calc(var(--shl-main) + 2 * var(--shl-pad-lg));
    padding-inline: 56px var(--shl-pad-md);
}

.bisagok-lede {
    font-size: var(--ts-display-2);
    margin-block-end: var(--st-base);
}

.bisagok-roll {
    display: flex;
    flex-direction: column;
    gap: var(--st-snug);
}

.bisagok-node {
    border-block-end: 1px solid rgba(66, 45, 124, 0.12);
    padding-block-end: var(--st-tiny);
}

.bisagok-quiz {
    align-items: center;
    cursor: pointer;
    display: flex;
    gap: var(--st-snug);
    justify-content: space-between;
    list-style: none;
    padding-block: var(--st-tiny);
}

.bisagok-quiz::-webkit-details-marker {
    display: none;
}

.bisagok-quiz::after {
    color: var(--col-accent);
    content: "+";
    font-size: var(--ts-h4);
    font-weight: var(--fw-heavy);
    line-height: 1;
}

.bisagok-node[open] .bisagok-quiz::after {
    content: "–";
}

.bisagok-head {
    font-size: var(--ts-petite);
    font-weight: var(--fw-half);
    line-height: var(--ld-regular);
}

.bisagok-para {
    animation: pv-open var(--dur-mid) var(--bz-land) both;
    color: var(--col-quiet);
    font-size: var(--ts-petite);
    line-height: var(--ld-regular);
    padding-block: var(--st-tiny);
}

.bisagok-para p {
    margin-block-end: var(--st-tiny);
}

@keyframes pv-open {
    from {
        opacity: 0;
        transform: translateY(-4px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (max-width: 819px) {
    .bisagok-wrap {
        padding-inline: var(--shl-edge-narrow);
    }
}

/* data table — TABLE-02 */
.fusafod {
    padding-block: var(--st-roomy);
}

.fusafod-wrap {
    margin-inline: auto;
    max-width: calc(var(--shl-main) + 2 * var(--shl-pad-lg));
    padding-inline: 56px var(--shl-pad-md);
}

.fusafod-lede {
    font-size: var(--ts-display-2);
    margin-block-end: var(--st-tiny);
}

.fusafod-cap {
    color: var(--col-quiet);
    font-size: var(--ts-petite);
    margin-block-end: var(--st-base);
}

.fusafod-scroll {
    overflow-x: auto;
}

.fusafod-board {
    border-collapse: collapse;
    min-width: 640px;
    width: 100%;
}

.fusafod-board th {
    border-block-end: 2px solid var(--col-accent);
    color: var(--col-front);
    font-family: var(--typ-heading);
    font-size: var(--ts-petite);
    font-weight: var(--fw-heavy);
    letter-spacing: var(--ls-loose);
    padding-block: var(--st-base);
    padding-inline: var(--st-snug);
    text-align: start;
    text-transform: uppercase;
}

.fusafod-board td {
    border-block-end: 1px solid rgba(66, 45, 124, 0.1);
    color: var(--col-quiet);
    font-size: var(--ts-petite);
    padding: var(--st-snug);
    vertical-align: top;
}

.fusafod-board td:first-child {
    color: var(--col-front);
    font-weight: var(--fw-half);
}

.fusafod-board tr:last-child td {
    border-block-end: 0;
}

@media (max-width: 819px) {
    .fusafod-wrap {
        padding-inline: var(--shl-edge-narrow);
    }

    .fusafod-board {
        min-width: 560px;
    }
}

/* cta block — CTA-04 */
.tife {
    padding-block: var(--st-roomy);
    text-align: center;
}

.tife-wrap {
    margin-inline: auto;
    max-width: calc(var(--shl-main) + 2 * var(--shl-pad-lg));
    padding-inline: 56px var(--shl-pad-md);
}

.tife-head {
    font-size: var(--ts-h4);
    font-weight: var(--fw-heavy);
}

.tife-para {
    color: var(--col-quiet);
    line-height: var(--ld-airy);
    margin: var(--st-base) auto;
    max-width: var(--shl-prose);
}

.tife-act {
    align-items: center;
    display: inline-flex;
    justify-content: center;
    min-height: 48px;
    text-decoration: none;
}

.tife-fine {
    color: var(--col-quiet);
    font-size: var(--ts-xs);
    margin-block-start: var(--st-base);
}

@media (max-width: 819px) {
    .tife-wrap {
        padding-inline: var(--shl-edge-narrow);
    }
}

/* inline cta — INLINE-CTA-06 */
.fimoba {
    display: block;
    padding-block: var(--st-base);
}

.fimoba-wrap {
    display: flex;
    flex-direction: column;
    gap: var(--st-snug);
    margin-inline: auto;
    max-width: var(--shl-brief);
    text-align: center;
}

.fimoba-para {
    color: var(--col-quiet);
    font-size: var(--ts-petite);
}

.fimoba-acts {
    display: flex;
    flex-wrap: wrap;
    gap: var(--st-snug);
    justify-content: center;
}

.fimoba-act {
    align-items: center;
    display: inline-flex;
    justify-content: center;
    min-height: 46px;
    text-decoration: none;
}

.fimoba-ghost {
    align-items: center;
    background: transparent;
    border: var(--bd-hair) solid var(--col-border-strong);
    border-radius: var(--crn-pill);
    color: var(--col-front);
    display: inline-flex;
    justify-content: center;
    min-height: 46px;
    padding-inline: var(--st-wide);
    text-decoration: none;
    transition: border-color var(--dur-brisk) var(--bz-land), background var(--dur-brisk) var(--bz-land);
}

.fimoba-ghost:hover {
    background: var(--col-layer);
    border-color: var(--col-main);
    color: var(--col-front);
}

@media (max-width: 819px) {
    .fimoba-acts {
        align-items: center;
        flex-direction: column;
    }

    .fimoba-act,
    .fimoba-ghost {
        max-width: 100%;
        width: auto;
    }
}

/* legal — LEGAL-04 */
.sodeva {
    padding-block: var(--st-roomy);
}

.sodeva-wrap {
    margin-inline: auto;
    max-width: calc(var(--shl-main) + 2 * var(--shl-pad-lg));
    padding-inline: 56px var(--shl-pad-md);
}

.sodeva-box {
    background: var(--col-layer);
    border: var(--bd-hair) solid var(--col-line);
    border-radius: var(--crn-wide);
    box-shadow: var(--sh-snug);
    padding: var(--st-roomy);
    position: relative;
}

.sodeva-lede {
    font-size: var(--ts-display-3);
    margin-block: var(--st-wide) var(--st-snug);
}

.sodeva-lede:first-child {
    margin-block-start: 0;
}

.sodeva-para {
    margin-block-end: var(--st-base);
    max-width: var(--shl-prose);
}

.sodeva-roll {
    margin-block: 0 var(--st-base);
    padding-inline-start: var(--st-wide);
}

.sodeva-node {
    margin-block-end: var(--st-tiny);
}

.sodeva-fine {
    border-block-start: var(--bd-hair) solid var(--col-line);
    color: var(--col-quiet);
    font-size: var(--ts-petite);
    margin-block-start: var(--st-wide);
    padding-block-start: var(--st-base);
}

@media (max-width: 819px) {
    .sodeva-wrap {
        padding-inline: var(--shl-edge-narrow);
    }

    .sodeva-box {
        padding: var(--st-base);
    }
}

/* contact form — FORM-04 */
.vimunif {
    padding-block: var(--st-wide);
}

.vimunif-wrap {
    margin-inline: auto;
    max-width: calc(var(--shl-main) + 2 * var(--shl-pad-lg));
    padding-inline: 56px var(--shl-pad-md);
}

.vimunif-lede {
    font-size: var(--ts-display-3);
    margin-block-end: var(--st-snug);
}

.vimunif-para {
    color: var(--col-quiet);
    margin-block-end: var(--st-base);
    max-width: var(--shl-prose);
}

.vimunif-bar {
    align-items: end;
    display: flex;
    flex-wrap: wrap;
    gap: var(--st-snug);
}

.vimunif-line {
    display: flex;
    flex: 1 1 220px;
    flex-direction: column;
    gap: var(--st-hair);
}

.vimunif-tag {
    color: var(--col-quiet);
    font-size: var(--ts-xs);
}

.vimunif-input {
    background: #ffffff;
    border: var(--bd-hair) solid var(--col-border-strong);
    border-radius: var(--crn-pill);
    color: var(--col-front);
    font-family: var(--typ-reading);
    font-size: var(--ts-petite);
    min-height: 46px;
    padding-inline: var(--st-base);
    width: 100%;
}

.vimunif-input:focus {
    border-color: var(--col-main);
    outline: 2px solid rgba(66, 45, 124, 0.25);
}

.vimunif-send {
    background: var(--col-main);
    border: 0;
    border-radius: var(--crn-pill);
    color: #ffffff;
    cursor: pointer;
    font-family: var(--typ-reading);
    font-size: var(--ts-petite);
    font-weight: var(--fw-half);
    min-height: 46px;
    padding-inline: var(--st-wide);
    transition: background var(--dur-brisk) var(--bz-land);
}

.vimunif-send:hover {
    background: #33215f;
    color: #ffffff;
}

.vimunif-done {
    background: var(--col-layer);
    border-radius: var(--crn-base);
    color: var(--col-front);
    margin-block-start: var(--st-base);
    padding: var(--st-snug) var(--st-base);
}

@media (max-width: 819px) {
    .vimunif-wrap {
        padding-inline: var(--shl-edge-narrow);
    }

    .vimunif-send {
        width: 100%;
    }
}

/* author card — AUTH-05 */
.boradek {
    display: block;
    padding-block: var(--st-wide);
}

.boradek-wrap {
    margin-inline: auto;
    max-width: calc(var(--shl-main) + 2 * var(--shl-pad-lg));
    padding-inline: 56px var(--shl-pad-md);
}

.boradek-card {
    background: var(--col-layer);
    border-radius: var(--crn-base);
    display: flex;
    gap: var(--st-snug);
    max-width: 480px;
    padding: var(--st-base);
}

.boradek-pic {
    border-radius: var(--crn-dot);
    display: block;
    flex-shrink: 0;
    height: 56px;
    overflow: hidden;
    width: 56px;
}

.boradek-shot {
    display: block;
    height: 56px;
    object-fit: cover;
    object-position: center top;
    width: 56px;
}

.boradek-copy {
    display: flex;
    flex-direction: column;
    gap: var(--st-hair);
}

.boradek-role {
    color: var(--col-accent);
    font-size: var(--ts-xs);
    letter-spacing: var(--ls-loose);
    text-transform: uppercase;
}

.boradek-who {
    font-size: var(--ts-reading);
    font-weight: var(--fw-heavy);
}

.boradek-bio {
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    color: var(--col-quiet);
    display: -webkit-box;
    font-size: var(--ts-petite);
    line-height: var(--ld-regular);
    overflow: hidden;
}

.boradek-reads,
.boradek-skills {
    margin-block-start: var(--st-wide);
}

.boradek-lede {
    font-size: var(--ts-display-3);
    margin-block-end: var(--st-snug);
}

.boradek-roll {
    display: flex;
    flex-direction: column;
    gap: var(--st-tiny);
    list-style: none;
    margin: 0;
    padding: 0;
}

.boradek-node {
    border-block-end: var(--bd-hair) solid var(--col-line);
    padding-block: var(--st-tiny);
}

.boradek-href {
    color: var(--col-main);
    text-decoration: none;
}

.boradek-href:hover {
    color: var(--col-accent-pressed);
    text-decoration: underline;
}

@media (max-width: 819px) {
    .boradek-wrap {
        padding-inline: var(--shl-edge-narrow);
    }
}

/* byline — BYLINE-01 */
.gasefu {
    display: block;
    padding-block: var(--st-base);
}

.gasefu-wrap {
    align-items: center;
    display: flex;
    gap: var(--st-snug);
    margin-inline: auto;
    max-width: calc(var(--shl-main) + 2 * var(--shl-pad-lg));
    padding-inline: 56px var(--shl-pad-md);
}

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

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

.gasefu-copy {
    display: block;
}

.gasefu-para {
    color: var(--col-quiet);
}

.gasefu-href {
    color: var(--col-main);
}

.gasefu-role {
    color: var(--col-quiet);
    font-size: var(--ts-petite);
    font-style: italic;
    margin-block-start: var(--st-hair);
}

@media (max-width: 819px) {
    .gasefu-wrap {
        padding-inline: var(--shl-edge-narrow);
    }
}

/* cookie — COOK-11 */
.ryfem {
    display: block;
    padding-block: var(--st-wide);
}

.ryfem-wrap {
    align-items: center;
    background: var(--col-layer);
    border: var(--bd-hair) solid var(--col-line);
    border-radius: var(--crn-base);
    display: grid;
    gap: var(--st-wide);
    grid-template-columns: 1fr auto;
    margin-inline: auto;
    max-width: calc(var(--shl-main) + 2 * var(--shl-pad-lg));
    padding: var(--st-wide);
}

.ryfem-copy {
    color: var(--col-front);
    font-size: var(--ts-petite);
    line-height: var(--ld-regular);
}

.ryfem-acts {
    display: flex;
    gap: var(--st-tiny);
}

.ryfem-confirm,
.ryfem-skip {
    border-radius: var(--crn-pill);
    cursor: pointer;
    font-family: var(--typ-reading);
    font-size: var(--ts-petite);
    min-height: 44px;
    padding-inline: var(--st-wide);
    white-space: nowrap;
}

.ryfem-confirm {
    background: var(--col-main);
    border: 0;
    color: #ffffff;
}

.ryfem-confirm:hover {
    background: #33215f;
    color: #ffffff;
}

.ryfem-skip {
    background: #ffffff;
    border: var(--bd-hair) solid var(--col-border-strong);
    color: var(--col-front);
}

.ryfem-skip:hover {
    background: #ede9f7;
    color: var(--col-front);
}

.ryfem.is-gone {
    display: none;
}

@media (max-width: 720px) {
    .ryfem-wrap {
        font-size: 13px;
        gap: var(--st-tiny);
        grid-template-columns: 1fr;
        line-height: 1.35;
        margin-inline: var(--shl-edge-narrow);
        padding: 12px 14px;
    }

    .ryfem-acts {
        display: grid;
        gap: var(--st-tiny);
        grid-template-columns: 1fr 1fr;
    }

    .ryfem-confirm,
    .ryfem-skip {
        font-size: 12px;
        min-height: 36px;
        padding-inline: var(--st-snug);
    }
}

/* error — ERR-03 */
.baneby {
    padding-block: var(--st-vast);
}

.baneby-wrap {
    margin-inline: auto;
    max-width: var(--shl-brief);
    padding-inline: var(--shl-edge-narrow);
    text-align: center;
}

.baneby-head {
    font-size: var(--ts-display-2);
}

.baneby-para {
    color: var(--col-quiet);
    line-height: var(--ld-airy);
    margin-block: var(--st-base);
}

.baneby-back {
    align-items: center;
    background: var(--col-main);
    border-radius: var(--crn-pill);
    color: #ffffff;
    display: inline-flex;
    height: 44px;
    justify-content: center;
    padding-inline: var(--st-wide);
    text-decoration: none;
}

.baneby-back:hover {
    background: #33215f;
    color: #ffffff;
}

/* footer — FOOT-01 */
.dynonek {
    background: var(--col-main);
    color: var(--col-on-main);
    margin-block-start: var(--st-roomy);
}

.dynonek-wrap {
    display: grid;
    gap: var(--st-roomy);
    grid-template-columns: repeat(3, 1fr);
    margin-inline: auto;
    max-width: calc(var(--shl-main) + 2 * var(--shl-pad-lg));
    padding-block: var(--st-vast);
    padding-inline: 56px var(--shl-pad-md);
}

.dynonek-col {
    display: block;
}

.dynonek-mark {
    display: inline-block;
}

.dynonek-shot {
    display: block;
    height: 72px;
    width: auto;
}

.dynonek-slogan {
    color: var(--col-on-main-soft);
    font-size: var(--ts-petite);
    line-height: var(--ld-regular);
    margin-block-start: var(--st-snug);
}

.dynonek-fine {
    color: var(--col-on-main-soft);
    font-size: var(--ts-xs);
    margin-block-start: var(--st-snug);
}

.dynonek-lede {
    color: var(--col-on-main);
    font-family: var(--typ-heading);
    font-size: var(--ts-h6);
    font-weight: var(--fw-heavy);
    letter-spacing: var(--ls-loose);
    margin-block-end: var(--st-base);
    text-transform: uppercase;
}

.dynonek-roll {
    display: flex;
    flex-direction: column;
    gap: var(--st-snug);
    list-style: none;
    margin: 0;
    padding: 0;
}

.dynonek-node {
    display: block;
}

.dynonek-href {
    color: var(--col-on-main-soft);
    font-size: var(--ts-petite);
    text-decoration: none;
    transition: color var(--dur-brisk) var(--bz-land);
}

.dynonek-href:hover {
    color: #ffffff;
}

.dynonek-base {
    border-block-start: var(--bd-hair) solid rgba(255, 255, 255, 0.16);
    padding-block: var(--st-base);
    text-align: center;
}

.dynonek-base .dynonek-fine {
    color: var(--col-on-main-soft);
    display: block;
    margin-block-start: 0;
}

@media (max-width: 1179px) {
    .dynonek-wrap {
        grid-template-columns: 1fr 1fr;
    }

    .dynonek-col-brand {
        grid-column: 1 / -1;
    }
}

@media (max-width: 519px) {
    .dynonek-wrap {
        grid-template-columns: 1fr;
        padding-inline: var(--shl-edge-narrow);
    }
}

@media (max-width: 819px) {
    .dynonek-wrap {
        padding-block: var(--st-roomy);
        padding-inline: var(--shl-edge-narrow);
    }
}

.dynonek-col-index,
.dynonek-col-legal {
    display: block;
}

.dynonek-col-index .dynonek-roll {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.lizadal-when {
    color: var(--col-quiet);
}

/* shared containers on tablet */
@media (max-width: 1179px) and (min-width: 820px) {
    .mutyd-wrap,
    .rone-wrap,
    .mobo-wrap,
    .nyri-wrap,
    .vaveze-wrap,
    .lizadal-wrap,
    .bisagok-wrap,
    .fusafod-wrap,
    .tife-wrap,
    .sodeva-wrap,
    .vimunif-wrap,
    .boradek-wrap,
    .gasefu-wrap,
    .dynonek-wrap,
    .xapakis-guard-wrap {
        padding-inline: var(--shl-pad-md);
    }
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation: none !important;
        scroll-behavior: auto !important;
        transition-duration: 1ms !important;
    }
}
.lunase-hit{display:inline-flex;align-items:center;justify-content:center;padding:0 var(--st-wide);min-height:46px;border-radius:var(--crn-pill);border:var(--bd-hair) solid var(--col-border-strong);font-weight:600}
.lunase-hit{
  background:#059669;color:#000000;text-decoration:none;
  transition:background 0.18s linear,color 0.18s linear,transform 0.18s linear;}
.lunase-hit.lunase-hit{color:#000000;text-decoration:none;}
.lunase-hit:hover{background:#047857;color:#FFFFFF;animation:none}
.lunase-hit.lunase-hit:hover{color:#FFFFFF;text-decoration:none}
.lunase-hit:hover::after{animation:none}
.lunase-hit:active{background:#065F46;color:#FFFFFF}
.lunase-hit:focus-visible{outline:3px solid #000000;outline-offset:3px}
.lunase-hit{animation:lunase-flare 2.37s linear infinite}
@keyframes lunase-flare{0%{transform:scale(1);animation-timing-function:cubic-bezier(.25,.8,.35,1)}17.300%{transform:scale(1.085);animation-timing-function:cubic-bezier(.45,.05,.55,.95)}49.367%,100%{transform:scale(1)}}

/* header pill shrink on scroll */
.xapakis-wrap {
    transition: height var(--dur-mid) var(--bz-land);
}

.xapakis.is-small .xapakis-wrap {
    height: 76px;
}

.xapakis.is-small .xapakis-shot {
    height: 60px;
}

.xapakis-act.lunase-hit {
    box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.6);
}

@media (max-width: 859px) {
  .xapakis-index,
  .xapakis-roll,
  .xapakis-href,
  .xapakis-quiet { display: none !important; }
  .xapakis-lever { display: flex !important; }
}

/* nojs guard 28.09.2026: без JS контент виден */
html.no-js .bisagok-para{opacity:1!important;transform:none!important;visibility:visible!important;clip-path:none!important}
