@font-face {
    font-family: "Montserrat";
    src: url("/cache/type/mont-600.woff2") format("woff2");
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Montserrat";
    src: url("/cache/type/mont-800.woff2") format("woff2");
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Inter";
    src: url("/cache/type/inter-400.woff2") format("woff2");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Inter";
    src: url("/cache/type/inter-600.woff2") format("woff2");
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

:root {
    --t-prime: #0c7bd2;
    --t-action: #3ac059;
    --t-accent-pressed: #319c44;
    --t-bg: #0d1023;
    --t-panel: #161a33;
    --t-letters: #FFFFFF;
    --t-quiet: #c0c0c0;
    --t-rule: #272c4b;
    --t-line-strong: #3c4470;
    --t-gradient-light: #96e0a4;
    --t-fade-bottom: #5ccc70;
    --t-age-band: #c1272d;
    --t-deep: #0b6ab8;
    --t-raise: #1b2140;

    --g-step-0: 4px;
    --g-step-1: 7px;
    --g-step-2: 11px;
    --g-step-3: 17px;
    --g-step-4: 26px;
    --g-step-5: 40px;
    --g-step-6: 60px;
    --g-step-7: 90px;

    --r-stadium: 9999px;
    --r-round-full: 50%;
    --r-step-0: 3px;
    --r-step-1: 4px;
    --r-step-2: 10px;
    --r-step-3: 16px;
    --r-step-4: 28px;
    --r-step-5: 36px;
    --r-step-6: 44px;
    --r-step-7: 56px;

    --f-lead: "Montserrat", "Trebuchet MS", sans-serif;
    --f-text: "Inter", "Segoe UI", sans-serif;

    --z-xxl: 60px;
    --z-xl-2: 34px;
    --z-lg-2: 24px;
    --z-md-2: 19px;
    --z-sm-2: 16px;
    --z-micro-head: 14px;
    --z-reading: 16px;
    --z-petite: 13px;
    --z-xs: 10px;

    --l-tight: 1.1;
    --l-normal: 1.5;
    --l-airy: 1.65;

    --w-base: 400;
    --w-medium: 600;
    --w-thick: 800;

    --e-narrow: -0.02em;
    --e-base: 0;
    --e-airy: 0.06em;

    --d-step-0: 0 1px 2px rgba(0, 0, 0, 0.05);
    --d-step-1: 0 2px 4px rgba(0, 0, 0, 0.06);
    --d-step-2: 0 4px 10px rgba(0, 0, 0, 0.08);
    --d-step-3: 0 10px 28px rgba(0, 0, 0, 0.12);
    --d-step-4: 0 20px 48px rgba(0, 0, 0, 0.16);
    --d-step-5: 0 26px 60px rgba(0, 0, 0, 0.22);
    --d-step-6: 0 32px 72px rgba(0, 0, 0, 0.28);
    --d-step-7: 0 40px 90px rgba(0, 0, 0, 0.34);

    --t-swift: 200ms;
    --t-steady: 340ms;
    --t-easy: 665ms;

    --x-out: cubic-bezier(0.31, 0.75, 0.55, 0.93);
    --x-take-off: cubic-bezier(0.57, 0.04, 0.58, 0.98);
    --x-smooth: cubic-bezier(0.57, 0.04, 0.58, 0.98);
    --x-elastic: cubic-bezier(0.24, 1.55, 0.54, 1.3);

    --v-full: 1200px;
    --v-narrow: 470px;
    --v-inset-desktop: 64px;
    --v-pad-md: 32px;
    --v-inset-mobile: 20px;

    --b-thin: 1px;
    --b-base: 2px;
    --b-strong: 3px;

    --h-size-desktop: 72px;
    --h-h-sm: 64px;

    --sec-y: 44px;
    --edge: 150px;
}

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

html,
body {
    overflow-x: clip;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    background: var(--t-bg);
    color: var(--t-letters);
    font-family: var(--f-text);
    font-size: var(--z-reading);
    font-weight: var(--w-base);
    line-height: var(--l-normal);
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    -webkit-font-smoothing: antialiased;
}

img {
    max-width: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    overflow-wrap: anywhere;
    margin: 0 0 var(--g-step-2);
}

h1 {
    font-family: var(--f-lead);
    font-weight: var(--w-thick);
    font-size: clamp(30px, 6.4vw, var(--z-xxl));
    line-height: var(--l-tight);
    letter-spacing: var(--e-narrow);
    text-transform: uppercase;
}

h2 {
    font-family: var(--f-lead);
    font-weight: var(--w-medium);
    font-size: clamp(24px, 3.1vw, var(--z-xl-2));
    line-height: var(--l-tight);
    letter-spacing: var(--e-base);
}

h3 {
    font-family: var(--f-text);
    font-weight: var(--w-medium);
    font-size: var(--z-lg-2);
    line-height: var(--l-tight);
}

h4 {
    font-family: var(--f-text);
    font-weight: var(--w-medium);
    font-size: var(--z-md-2);
    line-height: var(--l-tight);
}

h5,
h6 {
    font-family: var(--f-text);
    font-weight: var(--w-medium);
    font-size: var(--z-sm-2);
    letter-spacing: var(--e-airy);
    text-transform: uppercase;
}

p {
    margin: 0 0 var(--g-step-3);
}

a {
    color: var(--t-gradient-light);
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
    transition: color var(--t-swift) var(--x-out);
}

a:hover {
    color: var(--t-fade-bottom);
}

strong {
    font-weight: var(--w-medium);
    color: var(--t-letters);
}

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

.skip-href {
    position: absolute;
    left: var(--g-step-3);
    z-index: 200;
    background: var(--t-action);
    color: var(--t-bg);
    padding: var(--g-step-2) var(--g-step-4);
    border-radius: var(--r-step-2);
    font-weight: var(--w-medium);
    text-decoration: none;
}

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

.skip-href:focus {
    top: var(--g-step-2);
}

.sheet {
    flex: 1 0 auto;
    display: block;
}

/* header — HEAD-BURGER */

.dumibup {
    position: sticky;
    top: 0;
    z-index: 100;
    background: var(--t-bg);
    box-shadow: var(--d-step-3);
    transition: box-shadow var(--t-steady) var(--x-out);
}

.dumibup-rail {
    height: 72px;
    max-width: 1440px;
    margin-inline: auto;
    padding-inline: var(--g-step-3);
    display: flex;
    align-items: center;
    gap: var(--g-step-3);
    transition: height var(--t-steady) var(--x-out);
}

.dumibup.is-shrunk .dumibup-rail {
    height: 60px;
}

.dumibup-glyph {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    padding: var(--g-step-0) var(--g-step-2);
    border: var(--b-thin) solid var(--t-line-strong);
    border-radius: var(--r-stadium);
    background: var(--t-panel);
    color: var(--t-letters);
    text-decoration: none;
}

.dumibup-figure {
    display: block;
    height: 52px;
    width: auto;
    flex-shrink: 0;
    transition: height var(--t-steady) var(--x-out);
}

.dumibup.is-shrunk .dumibup-figure {
    height: 42px;
}

.dumibup-menu-lever {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    gap: var(--g-step-2);
    min-height: 44px;
    padding: var(--g-step-1) var(--g-step-2);
    border: 0;
    border-radius: var(--r-step-0);
    background: var(--t-bg);
    color: var(--t-letters);
    font-family: var(--f-lead);
    font-size: 15px;
    font-weight: 600;
    letter-spacing: var(--e-airy);
    text-transform: uppercase;
    cursor: pointer;
}

.dumibup-menu-lever:hover {
    background: var(--t-panel);
    color: var(--t-letters);
}

.dumibup-lines {
    position: relative;
    display: block;
    width: 22px;
    height: 2px;
    background: var(--t-action);
}

.dumibup-lines::before,
.dumibup-lines::after {
    content: "";
    position: absolute;
    left: 0;
    width: 22px;
    height: 2px;
    background: var(--t-action);
    transition: transform var(--t-swift) var(--x-out);
}

.dumibup-lines::before {
    top: -7px;
}

.dumibup-lines::after {
    top: 7px;
}

.dumibup-word {
    display: inline-block;
}

.dumibup-bar {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: var(--g-step-2);
}

.dumibup-push {
    flex-shrink: 0;
    white-space: nowrap;
}

.dumibup-rail .dumibup-push {
    border-radius: var(--r-step-0);
    padding: 0 var(--g-step-4);
    font-size: var(--z-petite);
}

.dumibup-flyout {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    pointer-events: none;
    background: var(--t-panel);
    border-block-start: var(--b-thin) solid var(--t-rule);
    box-shadow: var(--d-step-4);
    max-height: min(70vh, 540px);
    overflow-y: auto;
}

.dumibup-flyout.is-open {
    display: block;
    pointer-events: auto;
}

.dumibup-menu {
    display: block;
    max-width: 1440px;
    margin-inline: auto;
    padding: var(--g-step-2) var(--g-step-3) var(--g-step-4);
}

.dumibup-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.dumibup-unit {
    display: block;
}

.dumibup-href {
    display: block;
    padding: var(--g-step-2) var(--g-step-1);
    border-block-end: var(--b-thin) solid var(--t-rule);
    color: var(--t-quiet);
    font-size: var(--z-petite);
    letter-spacing: var(--e-airy);
    text-transform: uppercase;
    text-decoration: none;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: color var(--t-swift) var(--x-out);
}

.dumibup-href:hover {
    color: var(--t-gradient-light);
}

.dumibup-href[aria-current="page"] {
    color: var(--t-action);
    font-weight: var(--w-medium);
}

/* 18+ strip — RG-02 */

.pledge-band {
    margin: 0;
    padding: var(--g-step-1) var(--v-inset-mobile);
    background: var(--t-age-band);
    color: #FFFFFF;
    font-size: var(--z-petite);
    line-height: var(--l-normal);
    text-align: center;
    display: block;
}

.pledge-band-href {
    color: #FFFFFF;
    font-weight: var(--w-medium);
    text-decoration: underline;
}

.pledge-band-href:hover {
    color: #FFFFFF;
}

/* shared section shell */

.fakygy-guts,
.virego-guts,
.lalafy-guts,
.kubivu-guts,
.kanul-guts,
.betad-guts,
.kisilu-guts,
.vylyteb-guts,
.zefale-guts,
.lulapat-guts,
.luxy-guts,
.somed-guts,
.sudy-guts,
.toby-guts,
.vimo-guts,
.pavyla-guts {
    width: 100%;
    max-width: calc(var(--v-full) + 2 * var(--v-inset-desktop));
    margin-inline: auto;
    padding-inline: var(--v-inset-desktop);
    display: block;
}

.virego,
.lalafy,
.kubivu,
.kanul,
.betad,
.kisilu,
.vylyteb,
.zefale,
.lulapat,
.luxy,
.somed,
.toby {
    padding-block: var(--sec-y);
}

/* hero — HERO-07 */

.fakygy {
    padding-block: 0;
    display: block;
}

.fakygy-frame {
    margin: 0;
    display: block;
    position: relative;
}

.fakygy-figure {
    display: block;
    width: 100%;
    height: 400px;
    object-fit: cover;
}

.fakygy-frame::after {
    content: "";
    position: absolute;
    inset-inline: 0;
    inset-block-end: 0;
    height: 140px;
    background: linear-gradient(to bottom, rgba(13, 16, 35, 0), var(--t-bg));
    pointer-events: none;
}

.fakygy-matter {
    padding-block: var(--sec-y);
}

.fakygy-brow {
    display: inline-block;
    margin-block-end: var(--g-step-2);
    padding: var(--g-step-0) var(--g-step-2);
    background: var(--t-panel);
    color: var(--t-gradient-light);
    border-radius: var(--r-step-0);
    font-size: var(--z-xs);
    letter-spacing: var(--e-airy);
    text-transform: uppercase;
}

.fakygy-lead {
    max-width: var(--v-narrow);
    color: var(--t-quiet);
    font-size: var(--z-md-2);
    line-height: var(--l-airy);
}

.fakygy-facts {
    display: block;
    margin-block-end: var(--g-step-4);
    color: var(--t-quiet);
    font-size: var(--z-petite);
}

.fakygy-push {
    display: inline-flex;
}

/* page header — PHEAD-10 */

.virego {
    background: var(--t-bg);
    padding-block: var(--sec-y);
    text-align: center;
}

.virego-dot {
    display: block;
    margin-block: var(--g-step-2);
    color: var(--t-action);
    font-size: var(--z-xl-2);
    line-height: 1.2;
}

.virego-words {
    max-width: var(--v-narrow);
    margin-block-end: 0;
    margin-inline: auto;
    color: var(--t-quiet);
    font-family: var(--f-lead);
    font-size: var(--z-md-2);
    font-style: italic;
}

/* items grid — GRID-09 */

.lalafy-head {
    margin-block-end: var(--g-step-4);
}

.lalafy-rail {
    display: flex;
    gap: var(--g-step-3);
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    padding-block-end: var(--g-step-3);
    margin-inline: calc(-1 * var(--g-step-2));
    padding-inline: var(--g-step-2);
}

.lalafy-brick {
    flex: 0 0 320px;
    min-height: 200px;
    scroll-snap-align: start;
    padding: var(--g-step-4);
    background: var(--t-panel);
    border: var(--b-thin) solid var(--t-rule);
    border-radius: var(--r-step-4);
    color: var(--t-letters);
    transition: transform var(--t-steady) var(--x-out), border-color var(--t-steady) var(--x-out);
}

.lalafy-brick:hover {
    transform: translateY(-6px);
    border-color: var(--t-action);
}

.lalafy-mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    margin-block-end: var(--g-step-2);
    background: var(--t-raise);
    border: var(--b-thin) solid var(--t-line-strong);
    border-radius: var(--r-round-full);
    color: var(--t-action);
}

.lalafy-mark svg {
    width: 20px;
    height: 20px;
    fill: currentColor;
}

.lalafy-lede {
    margin-block-end: var(--g-step-2);
    font-size: var(--z-md-2);
    color: var(--t-letters);
}

.lalafy-copy {
    color: var(--t-quiet);
    font-size: var(--z-petite);
    line-height: var(--l-airy);
}

.lalafy-dots {
    display: flex;
    gap: var(--g-step-1);
    justify-content: center;
    margin-block-start: var(--g-step-3);
}

.lalafy-dot {
    width: 8px;
    height: 8px;
    border-radius: var(--r-round-full);
    background: var(--t-line-strong);
}

.lalafy-dot.is-live {
    background: var(--t-action);
}

/* reviews — REV-03 */

.kanul-head {
    margin-block-end: var(--g-step-4);
}

.kanul-rail {
    display: flex;
    gap: var(--g-step-3);
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    padding-block-end: var(--g-step-3);
    margin-inline: calc(-1 * var(--g-step-2));
    padding-inline: var(--g-step-2);
}

.kanul-brick {
    flex: 0 0 360px;
    min-height: 240px;
    scroll-snap-align: start;
    display: flex;
    flex-direction: column;
    gap: var(--g-step-2);
    padding: var(--g-step-4);
    background: var(--t-bg);
    border: var(--b-thin) solid var(--t-rule);
    border-radius: var(--r-step-4);
    color: var(--t-letters);
}

.kanul-file {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: var(--g-step-2);
}

.kanul-author {
    font-family: var(--f-lead);
    font-weight: var(--w-medium);
    font-size: var(--z-sm-2);
    color: var(--t-letters);
}

.kanul-time {
    color: var(--t-quiet);
    font-size: var(--z-petite);
}

.kanul-score {
    color: var(--t-gradient-light);
    font-size: var(--z-petite);
    letter-spacing: var(--e-airy);
}

.kanul-gauge {
    width: 60%;
    height: 4px;
    background: var(--t-line-strong);
    border-radius: var(--r-stadium);
    overflow: hidden;
}

.kanul-fill {
    display: block;
    height: 4px;
    background: var(--t-action);
}

.kanul-words {
    margin: 0;
    color: var(--t-quiet);
    font-size: var(--z-petite);
    line-height: var(--l-airy);
}

/* faq — FAQ-08 */

.kubivu-head {
    margin-block-end: var(--g-step-4);
}

.kubivu-box {
    padding: var(--g-step-5);
    background: var(--t-panel);
    border: var(--b-thin) solid var(--t-rule);
    border-radius: var(--r-step-4);
}

.kubivu-unit {
    padding-inline-start: var(--g-step-3);
    padding-block: var(--g-step-2);
    border-block-end: var(--b-thin) solid var(--t-rule);
    box-shadow: inset 4px 0 0 var(--t-action);
}

.kubivu-unit:last-child {
    border-block-end: 0;
}

.kubivu-ask {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: var(--g-step-3);
    padding-block: var(--g-step-2);
    cursor: pointer;
    list-style: none;
    color: var(--t-letters);
}

.kubivu-ask::-webkit-details-marker {
    display: none;
}

.kubivu-lede {
    margin: 0;
    font-size: var(--z-md-2);
    color: var(--t-letters);
}

.kubivu-mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border: var(--b-thin) solid var(--t-line-strong);
    border-radius: var(--r-round-full);
    color: var(--t-action);
    font-size: var(--z-micro-head);
    transition: transform var(--t-steady) var(--x-out);
}

.kubivu-unit[open] .kubivu-mark {
    transform: rotate(45deg);
}

.kubivu-copy {
    padding-block-end: var(--g-step-2);
    color: var(--t-quiet);
    font-size: var(--z-reading);
    line-height: var(--l-airy);
}

.kubivu-copy p {
    margin: 0;
}

.kubivu-unit[open] .kubivu-copy {
    animation: kubivu-unroll var(--t-steady) var(--x-out);
}

@keyframes kubivu-unroll {
    from {
        opacity: 0;
        max-height: 0;
    }
    to {
        opacity: 1;
        max-height: 600px;
    }
}

/* cta strip — CTA-01 */

.betad {
    background: var(--t-action);
    color: var(--t-bg);
    padding-block: var(--sec-y);
}

.betad-guts {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--g-step-5);
}

.betad-words {
    display: block;
}

.betad-lede {
    margin: 0 0 var(--g-step-2);
    max-width: var(--v-narrow);
    color: var(--t-bg);
    font-family: var(--f-lead);
    font-weight: var(--w-thick);
    letter-spacing: var(--e-narrow);
    text-transform: uppercase;
}

.betad-copy {
    margin: 0;
    color: var(--t-bg);
    font-size: var(--z-reading);
    line-height: var(--l-normal);
}

.betad-push {
    flex-shrink: 0;
}

/* prose — PROSE-27 */

.kisilu-guts {
    counter-reset: kisilu;
}

.kisilu-part {
    position: relative;
    counter-increment: kisilu;
    padding-block-end: var(--g-step-7);
    margin-block-end: var(--g-step-4);
}

.kisilu-part::after {
    content: counter(kisilu) ".";
    position: absolute;
    inset-block-end: 0;
    inset-inline-start: 0;
    font-family: var(--f-lead);
    font-weight: var(--w-thick);
    font-size: 6em;
    line-height: 0.82;
    color: var(--t-gradient-light);
    opacity: 0.14;
    pointer-events: none;
}

.kisilu-head {
    margin-block-end: var(--g-step-3);
}

.kisilu-words {
    margin-block-end: var(--g-step-3);
    color: var(--t-quiet);
    line-height: var(--l-airy);
}

.kisilu-list {
    margin: 0 0 var(--g-step-3);
    padding-inline-start: var(--g-step-4);
    color: var(--t-quiet);
    line-height: var(--l-airy);
}

.kisilu-unit {
    margin-block-end: var(--g-step-1);
}

.kisilu-href {
    color: var(--t-gradient-light);
}

.kisilu-frame {
    margin: 0 0 var(--g-step-4);
    display: block;
    max-width: 640px;
}

.kisilu-figure {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
    border-radius: var(--r-step-3);
}

.kisilu-frame--even {
    max-width: 480px;
}

.kisilu-frame--tall {
    max-width: 340px;
}

.kisilu-frame--wide {
    max-width: 660px;
}

.kisilu-cap {
    margin-block-start: var(--g-step-1);
    color: var(--t-quiet);
    font-size: var(--z-petite);
}

/* data table — TABLE-06 */

.vylyteb-cap {
    margin-block-end: var(--g-step-3);
    color: var(--t-quiet);
    font-family: var(--f-lead);
    font-size: var(--z-md-2);
    font-style: italic;
    text-align: center;
}

.vylyteb-cap::before {
    content: "";
    display: block;
    width: 40px;
    height: 2px;
    margin: 0 auto var(--g-step-2);
    background: var(--t-action);
}

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

.vylyteb-grid {
    width: 100%;
    min-width: 560px;
    border-collapse: collapse;
    color: var(--t-letters);
}

.vylyteb-file {
    border-block-end: var(--b-thin) solid var(--t-rule);
}

.vylyteb-head {
    padding: var(--g-step-2) var(--g-step-3);
    background: var(--t-raise);
    color: var(--t-letters);
    font-family: var(--f-lead);
    font-size: var(--z-petite);
    letter-spacing: var(--e-airy);
    text-align: start;
    text-transform: uppercase;
}

.vylyteb-cell {
    padding: var(--g-step-3);
    background: var(--t-bg);
    color: var(--t-quiet);
    font-size: var(--z-petite);
    line-height: var(--l-normal);
    overflow-wrap: break-word;
    vertical-align: top;
}

/* legal — LEGAL-07 */

.zefale-brow {
    display: block;
    margin-block-end: var(--g-step-2);
    color: var(--t-gradient-light);
    font-size: var(--z-xs);
    letter-spacing: var(--e-airy);
    text-transform: uppercase;
}

.zefale-lede {
    margin-block-end: var(--g-step-5);
    color: var(--t-letters);
    font-family: var(--f-lead);
    font-size: var(--z-md-2);
    font-style: italic;
    line-height: var(--l-normal);
}

.zefale-part {
    margin-block-end: var(--g-step-5);
}

.zefale-head {
    margin-block-end: 0;
    font-family: var(--f-lead);
    font-style: italic;
    font-size: var(--z-lg-2);
}

.zefale-rule {
    width: 80px;
    height: 2px;
    margin: var(--g-step-2) 0 var(--g-step-3);
    border: 0;
    margin-inline: 0;
    background: var(--t-action);
}

.zefale-words {
    color: var(--t-quiet);
    line-height: var(--l-airy);
}

.zefale-part > .zefale-words:first-of-type::first-letter {
    float: left;
    margin-inline-end: var(--g-step-1);
    color: var(--t-action);
    font-family: var(--f-lead);
    font-size: 3em;
    line-height: 0.9;
}

.zefale-list {
    margin: 0 0 var(--g-step-3);
    padding-inline-start: var(--g-step-4);
    color: var(--t-quiet);
    line-height: var(--l-airy);
}

.zefale-unit {
    margin-block-end: var(--g-step-1);
}

.zefale-note {
    padding: var(--g-step-4);
    background: var(--t-panel);
    border: var(--b-thin) solid var(--t-rule);
    border-radius: var(--r-step-3);
    color: var(--t-quiet);
    font-size: var(--z-petite);
    line-height: var(--l-airy);
}

/* contact form — FORM-06 */

.lulapat-head {
    margin-block-end: var(--g-step-3);
}

.lulapat-copy {
    max-width: 720px;
    color: var(--t-quiet);
    line-height: var(--l-airy);
}

.lulapat-form {
    display: flex;
    flex-wrap: wrap;
    gap: var(--g-step-3);
    max-width: 720px;
}

.lulapat-box {
    position: relative;
    flex: 1 1 260px;
}

.lulapat-box--wide {
    flex: 1 1 100%;
}

.lulapat-input,
.lulapat-area {
    width: 100%;
    padding: var(--g-step-4) var(--g-step-3) var(--g-step-2);
    background: var(--t-panel);
    border: var(--b-thin) solid var(--t-line-strong);
    border-radius: var(--r-step-3);
    color: var(--t-letters);
    font-family: var(--f-text);
    font-size: var(--z-reading);
}

.lulapat-area {
    min-height: 150px;
    resize: vertical;
}

.lulapat-chip {
    position: absolute;
    top: 50%;
    left: var(--g-step-3);
    transform: translateY(-50%);
    color: var(--t-quiet);
    font-size: var(--z-petite);
    pointer-events: none;
    transition: top var(--t-swift) var(--x-out), font-size var(--t-swift) var(--x-out);
}

.lulapat-area + .lulapat-chip {
    top: var(--g-step-4);
    transform: translateY(0);
}

.lulapat-input:focus + .lulapat-chip,
.lulapat-input:not(:placeholder-shown) + .lulapat-chip,
.lulapat-area:focus + .lulapat-chip,
.lulapat-area:not(:placeholder-shown) + .lulapat-chip {
    top: var(--g-step-1);
    transform: translateY(0);
    color: var(--t-gradient-light);
    font-size: var(--z-xs);
}

.lulapat-push {
    min-height: 48px;
    padding: 0 var(--g-step-5);
    background: var(--t-action);
    border: 0;
    border-radius: var(--r-step-3);
    color: var(--t-bg);
    font-family: var(--f-lead);
    font-weight: var(--w-thick);
    font-size: var(--z-petite);
    letter-spacing: var(--e-airy);
    text-transform: uppercase;
    cursor: pointer;
    transition: background var(--t-swift) var(--x-out);
}

.lulapat-push:hover {
    background: var(--t-gradient-light);
    color: var(--t-bg);
}

.lulapat-done {
    display: none;
    margin-block-start: var(--g-step-3);
    padding: var(--g-step-3);
    background: var(--t-panel);
    border: var(--b-thin) solid var(--t-action);
    border-radius: var(--r-step-3);
    color: var(--t-letters);
}

.lulapat-done.is-live {
    display: block;
}

/* author card — AUTH-01 */

.luxy-brick {
    display: grid;
    grid-template-columns: 160px 1fr;
    gap: var(--g-step-5);
    padding: var(--g-step-5) var(--g-step-4);
    background: var(--t-panel);
    border-radius: var(--r-step-4);
    box-shadow: var(--d-step-2);
}

.luxy-avatar {
    display: block;
    width: 160px;
    height: 160px;
    border-radius: var(--r-round-full);
    overflow: hidden;
    align-self: start;
}

.luxy-figure {
    display: block;
    width: 160px;
    height: 160px;
    object-fit: cover;
    object-position: center top;
}

.luxy-matter {
    display: flex;
    flex-direction: column;
    gap: var(--g-step-3);
}

.luxy-job {
    color: var(--t-gradient-light);
    font-family: var(--f-text);
    font-weight: var(--w-medium);
    font-size: var(--z-petite);
    letter-spacing: var(--e-airy);
    text-transform: uppercase;
}

.luxy-copy {
    margin: 0;
    color: var(--t-quiet);
    line-height: var(--l-airy);
}

.luxy-tags {
    display: flex;
    flex-wrap: wrap;
    gap: var(--g-step-1);
    list-style: none;
    margin: 0;
    padding: 0;
}

.luxy-tag {
    padding: var(--g-step-0) var(--g-step-2);
    background: var(--t-deep);
    color: var(--t-letters);
    border-radius: var(--r-stadium);
    font-size: var(--z-xs);
    letter-spacing: var(--e-airy);
    text-transform: uppercase;
}

.luxy-slate {
    margin-block-start: var(--g-step-5);
}

.luxy-head {
    margin-block-end: var(--g-step-3);
    font-size: var(--z-lg-2);
}

.luxy-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--g-step-2);
}

.luxy-unit {
    display: block;
}

.luxy-href {
    display: block;
    padding: var(--g-step-2) var(--g-step-3);
    background: var(--t-panel);
    border: var(--b-thin) solid var(--t-rule);
    border-radius: var(--r-step-2);
    color: var(--t-gradient-light);
    font-size: var(--z-petite);
    text-decoration: none;
}

.luxy-href:hover {
    border-color: var(--t-action);
    color: var(--t-fade-bottom);
}

/* byline — BYLINE-02 */

.somed {
    padding-block: var(--g-step-4);
}

.somed-brick {
    max-width: var(--v-narrow);
    margin-inline: auto;
    display: flex;
    gap: var(--g-step-3);
    padding: var(--g-step-4);
    background: var(--t-panel);
    border: var(--b-thin) solid var(--t-rule);
    border-radius: var(--r-step-3);
}

.somed-avatar {
    flex-shrink: 0;
    display: block;
    width: 64px;
    height: 64px;
    border-radius: var(--r-round-full);
    overflow: hidden;
}

.somed-figure {
    display: block;
    width: 64px;
    height: 64px;
    object-fit: cover;
    object-position: center top;
}

.somed-matter {
    display: block;
}

.somed-chip {
    display: block;
    color: var(--t-quiet);
    font-size: var(--z-xs);
    letter-spacing: var(--e-airy);
    text-transform: uppercase;
}

.somed-author {
    margin: var(--g-step-0) 0;
    font-family: var(--f-lead);
    font-weight: var(--w-thick);
    font-size: var(--z-md-2);
}

.somed-author a {
    color: var(--t-letters);
    text-decoration: none;
}

.somed-author a:hover {
    color: var(--t-gradient-light);
    text-decoration: underline;
}

.somed-job {
    margin: 0 0 var(--g-step-1);
    color: var(--t-quiet);
    font-size: var(--z-petite);
}

.somed-copy {
    margin: 0 0 var(--g-step-1);
    color: var(--t-quiet);
    line-height: var(--l-normal);
}

.somed-time {
    display: block;
    margin-block-end: var(--g-step-1);
    color: var(--t-quiet);
    font-size: var(--z-xs);
    letter-spacing: var(--e-airy);
    text-transform: uppercase;
}

.somed-href {
    color: var(--t-gradient-light);
    font-size: var(--z-petite);
    letter-spacing: var(--e-airy);
    text-transform: uppercase;
    text-decoration: none;
}

.somed-href:hover {
    color: var(--t-fade-bottom);
    text-decoration: underline;
}

/* inline cta — INLINE-CTA-02 */

.toby {
    padding-block: var(--g-step-4);
}

.toby-brick {
    max-width: var(--v-narrow);
    margin-inline: auto;
    padding: var(--g-step-5) var(--g-step-4);
    background: var(--t-panel);
    border: var(--b-thin) solid var(--t-line-strong);
    border-radius: var(--r-step-3);
    text-align: center;
}

.toby-head {
    margin-block-end: var(--g-step-2);
    font-family: var(--f-lead);
    font-weight: var(--w-thick);
    font-size: var(--z-md-2);
}

.toby-copy {
    margin-block-end: var(--g-step-3);
    color: var(--t-quiet);
    font-size: var(--z-petite);
    line-height: var(--l-airy);
}

.toby-push {
    display: inline-flex;
}

/* error — ERR-05 */

.sudy {
    padding-block: var(--g-step-7);
    display: flex;
    flex-direction: column;
    justify-content: center;
    flex: 1 0 auto;
}

.sudy-lede {
    position: relative;
    color: var(--t-letters);
}

.sudy-lede::before,
.sudy-lede::after {
    content: attr(data-text);
    position: absolute;
    inset: 0;
    color: var(--t-action);
    opacity: 0.6;
}

.sudy-lede::before {
    transform: translate(2px, -2px);
}

.sudy-lede::after {
    transform: translate(-2px, 2px);
    color: var(--t-accent-pressed);
}

.sudy-copy {
    max-width: var(--v-narrow);
    color: var(--t-quiet);
    line-height: var(--l-airy);
}

.sudy-push {
    display: inline-flex;
    align-items: center;
    min-height: 48px;
    padding: 0 var(--g-step-5);
    background: var(--t-action);
    border-radius: var(--r-step-3);
    color: var(--t-bg);
    font-family: var(--f-lead);
    font-weight: var(--w-thick);
    font-size: var(--z-petite);
    letter-spacing: var(--e-airy);
    text-transform: uppercase;
    text-decoration: none;
}

.sudy-push:hover {
    background: var(--t-gradient-light);
    color: var(--t-bg);
}

/* footer — FOOT-02 */

.vimo {
    background: var(--t-bg);
    border-block-start: var(--b-thin) solid var(--t-rule);
    padding-block: var(--g-step-5);
}

.vimo-file {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--g-step-4);
}

.vimo-file--top {
    flex-wrap: wrap;
}

.vimo-file--base {
    margin-block-start: var(--g-step-3);
    padding-block-start: var(--g-step-3);
    border-block-start: var(--b-thin) solid var(--t-rule);
    flex-wrap: wrap;
}

.vimo-glyph {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
}

.vimo-figure {
    display: block;
    height: 56px;
    width: auto;
}

.vimo-menu {
    display: block;
}

.vimo-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: var(--g-step-1) var(--g-step-3);
    justify-content: flex-end;
}

.vimo-unit {
    display: block;
}

.vimo-href {
    color: var(--t-quiet);
    font-size: var(--z-petite);
    text-decoration: none;
}

.vimo-href:hover {
    color: var(--t-letters);
}

.vimo-small {
    color: var(--t-quiet);
    font-size: var(--z-xs);
    letter-spacing: var(--e-airy);
    text-transform: uppercase;
}

.vimo-legal {
    display: block;
}

/* cookie — COOK-02 */

.pavyla {
    position: fixed;
    inset-block-end: 0;
    inset-inline: 0;
    z-index: 90;
    background: var(--t-deep);
    border-block-start: var(--b-thin) solid var(--t-line-strong);
    padding-block: var(--g-step-3);
    opacity: 1;
    transform: translateY(0);
    transition: transform var(--t-steady) var(--x-out), opacity var(--t-steady) var(--x-out);
}

.pavyla.is-gone {
    transform: translateY(115%);
    opacity: 0;
    pointer-events: none;
}

.pavyla.is-dismissed {
    display: none;
}

.pavyla-guts {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--g-step-3);
}

.pavyla-copy {
    flex: 1;
    margin: 0;
    color: #FFFFFF;
    font-size: var(--z-petite);
    line-height: var(--l-normal);
}

.pavyla-bar {
    flex-shrink: 0;
    display: flex;
    gap: var(--g-step-2);
}

.pavyla-allow,
.pavyla-reject {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 0 var(--g-step-4);
    border: var(--b-thin) solid var(--t-line-strong);
    border-radius: var(--r-step-3);
    font-family: var(--f-lead);
    font-size: var(--z-petite);
    font-weight: var(--w-medium);
    letter-spacing: var(--e-airy);
    text-transform: uppercase;
    cursor: pointer;
    white-space: nowrap;
}

.pavyla-allow {
    background: #FFFFFF;
    color: #0d1023;
}

.pavyla-allow:hover {
    background: var(--t-gradient-light);
    color: #0d1023;
}

.pavyla-reject {
    background: #0d1023;
    color: #FFFFFF;
}

.pavyla-reject:hover {
    background: var(--t-panel);
    color: #FFFFFF;
}

/* reveal on scroll */

[data-cue] {
    opacity: 0;
    transform: translateY(20px) scaleY(0.985);
    transform-origin: top center;
    transition: opacity var(--t-easy) var(--x-out), transform var(--t-easy) var(--x-out);
}

[data-cue].revealed {
    opacity: 1;
    transform: none;
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation: none !important;
        transition: none !important;
        scroll-behavior: auto !important;
    }

    [data-cue] {
        opacity: 1;
        transform: none;
    }
}

/* tablet */

@media (max-width: 1136px) {
    .fakygy-guts,
    .virego-guts,
    .lalafy-guts,
    .kubivu-guts,
    .kanul-guts,
    .betad-guts,
    .kisilu-guts,
    .vylyteb-guts,
    .zefale-guts,
    .lulapat-guts,
    .luxy-guts,
    .somed-guts,
    .sudy-guts,
    .toby-guts,
    .vimo-guts,
    .pavyla-guts {
        padding-inline: var(--v-pad-md);
    }

    .betad-guts {
        gap: var(--g-step-4);
    }

    .kubivu-box {
        padding: var(--g-step-4);
    }
}

@media (max-width: 832px) {
    :root {
        --z-xxl: 36px;
        --z-xl-2: 26px;
        --z-lg-2: 20px;
        --z-md-2: 17px;
        --z-sm-2: 14px;
        --z-micro-head: 12px;
        --z-reading: 15px;
        --z-petite: 12px;
        --z-xs: 9px;
        --sec-y: 34px;
    }

    .dumibup-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .betad-guts {
        flex-direction: column;
        align-items: stretch;
    }

    .betad-push {
        align-self: stretch;
        justify-content: center;
    }

    .luxy-brick {
        grid-template-columns: 1fr;
        justify-items: center;
        text-align: center;
    }

    .luxy-avatar,
    .luxy-figure {
        width: 120px;
        height: 120px;
    }

    .luxy-list {
        grid-template-columns: 1fr;
    }

    .fakygy-figure {
        height: 260px;
    }

    .kisilu-part::after {
        font-size: 3.4em;
    }

    .kisilu-part {
        padding-block-end: var(--g-step-6);
    }

    .vimo-file--top,
    .vimo-file--base {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .vimo-list {
        justify-content: center;
    }
}

@media (max-width: 720px) {
    .pavyla,
    .pavyla-guts {
        padding: 12px 14px !important;
        gap: 8px !important;
        font-size: 13px !important;
        line-height: 1.35 !important;
    }

    .pavyla-guts {
        flex-direction: column;
        align-items: stretch;
    }

    .pavyla-bar {
        justify-content: stretch;
    }

    .pavyla-allow,
    .pavyla-reject {
        flex: 1;
        padding: 8px 14px !important;
        font-size: 12px !important;
        min-height: 36px !important;
    }
}

@media (max-width: 488px) {
    .fakygy-guts,
    .virego-guts,
    .lalafy-guts,
    .kubivu-guts,
    .kanul-guts,
    .betad-guts,
    .kisilu-guts,
    .vylyteb-guts,
    .zefale-guts,
    .lulapat-guts,
    .luxy-guts,
    .somed-guts,
    .sudy-guts,
    .toby-guts,
    .vimo-guts,
    .pavyla-guts {
        padding-inline: var(--v-inset-mobile);
    }

    .dumibup-rail {
        height: 64px;
        gap: var(--g-step-2);
        padding-inline: var(--v-inset-mobile);
    }

    .dumibup.is-shrunk .dumibup-rail {
        height: 60px;
    }

    .dumibup-figure,
    .dumibup.is-shrunk .dumibup-figure {
        height: 34px;
    }

    .dumibup-word {
        display: none;
    }

    .dumibup-rail .dumibup-push {
        padding: 0 var(--g-step-2);
        font-size: 11px;
        letter-spacing: 0.06em;
    }

    .dumibup-list {
        grid-template-columns: 1fr;
    }

    .fakygy-figure {
        height: 220px;
    }

    .lalafy-brick {
        flex: 0 0 258px;
    }

    .kanul-brick {
        flex: 0 0 272px;
    }

    .kubivu-box {
        padding: var(--g-step-3);
    }

    .somed-brick {
        flex-direction: column;
    }

    .vylyteb-grid {
        min-width: 520px;
    }

    .lulapat-box {
        flex: 1 1 100%;
    }

    .kisilu-frame {
        max-width: 100%;
    }
}
.poki-lead{display:inline-flex;align-items:center;justify-content:center;padding:0 var(--g-step-5);min-height:48px;border-radius:var(--r-step-3);font-size:var(--z-petite);font-weight:var(--w-thick);letter-spacing:var(--e-airy)}
.poki-lead{
  background:#C026D3;color:#FFFFFF;text-decoration:none;text-transform:uppercase;
  transition:background 0.26s linear,transform 0.26s linear;}
.poki-lead.poki-lead{color:#FFFFFF;text-decoration:none;}
.poki-lead:hover{background:#A21CAF;color:#FFFFFF;animation:none}
.poki-lead.poki-lead:hover{color:#FFFFFF;text-decoration:none}
.poki-lead:hover::after{animation:none}
.poki-lead:active{background:#86198F;color:#FFFFFF}
.poki-lead:focus-visible{outline:3px solid #0D1023;outline-offset:3px}
@keyframes poki-ripple{0%{transform:rotate(0)}20.313%{transform:rotate(0.8deg)}40.625%,100%{transform:rotate(0)}}
.poki-lead{animation:poki-ripple 1.6s cubic-bezier(.50,.65,.85,1) infinite;transform-origin:50% 90%}

.poki-lead.poki-lead:focus-visible {
    outline-color: #FFFFFF;
}

.betad-guts .betad-push {
    box-shadow: 0 0 0 3px var(--t-bg);
}

.zefale-href {
    color: var(--t-gradient-light);
}

.sheet:has(> .sudy) {
    display: flex;
    flex-direction: column;
}

@media (max-width: 360px) {
    .dumibup-rail {
        gap: var(--g-step-1);
        padding-inline: var(--g-step-2);
    }

    .dumibup-glyph {
        padding-inline: var(--g-step-0);
    }

    .dumibup-figure,
    .dumibup.is-shrunk .dumibup-figure {
        height: 28px;
    }

    .dumibup-menu-lever {
        padding-inline: var(--g-step-0);
    }

    .dumibup-rail .dumibup-push {
        padding: 0 var(--g-step-1);
        font-size: 10px;
        letter-spacing: 0.02em;
    }
}

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