@charset "UTF-8";

/* ============================================================
   KRAJŠIE ZÁMKY - layout podstránky /krajsie-zamky
   Farby: #000 / #fff / #D6F74C (limetka) / #E0E0E0 (linky)
   Pravidlo: žiadna sekcia nemá vlastné pozadie
   ============================================================ */

.kz-page {
    --lime: #D6F74C;
    --line: #E0E0E0;
    --ghost: #F5F5F5;
    display: block;
    width: 100%;
    color: #000;
}

.kz-page section {display:block;width:100%;}

/* ---------- spoločné ---------- */

.kz-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2.4px;
    text-transform: uppercase;
    line-height: 1;
}

.kz-pulse {
    display: block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: var(--lime);
    box-shadow: 0 0 0 0 rgba(214,247,76,0.9);
    animation: kzPulse 2.2s ease-out infinite;
}

@keyframes kzPulse {
    0%   {box-shadow:0 0 0 0 rgba(214,247,76,0.9);}
    70%  {box-shadow:0 0 0 14px rgba(214,247,76,0);}
    100% {box-shadow:0 0 0 0 rgba(214,247,76,0);}
}

.kz-h2 {
    font-size: clamp(38px, 6vw, 74px);
    font-weight: 700;
    line-height: 1.02;
    letter-spacing: -1.5px;
}

.kz-h2 em {font-style:normal;font-weight:300;}

.kz-lead {
    font-size: clamp(17px, 1.5vw, 20px);
    font-weight: 300;
    line-height: 1.75;
    letter-spacing: 0.3px;
}

.kz-mark {
    position: relative;
    display: inline;
    background-image: linear-gradient(var(--lime), var(--lime));
    background-repeat: no-repeat;
    background-position: 0 88%;
    background-size: 0% 42%;
    transition: background-size 0.9s cubic-bezier(.22,1,.36,1) 0.25s;
}

.is-in .kz-mark {background-size:100% 42%;}

/* ---------- tlačidlá ---------- */

.kz-btn {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 12px;
    overflow: hidden;
    z-index: 0;
    padding: 20px 32px;
    border: 2px solid #000;
    border-radius: 4px;
    cursor: pointer;
    font-family: 'Chakra Petch', sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1.6px;
    text-transform: uppercase;
    color: #000;
    background-color: var(--lime);
    transition: transform 0.45s cubic-bezier(.22,1,.36,1), color 0.5s ease;
}

.kz-btn::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 0;
    background-color: #000;
    z-index: -1;
    transition: width 0.55s cubic-bezier(.22,1,.36,1);
}

.kz-btn:hover::before {width:100%;}
.kz-btn:hover {color:var(--lime);transform:translateY(-3px);}
.kz-btn svg {width:18px;height:18px;flex-shrink:0;stroke:currentColor;transition:transform 0.45s ease;}
.kz-btn:hover svg {transform:translateX(4px);}

.kz-btn-ghost {background-color:transparent;}
.kz-btn-ghost:hover {color:var(--lime);}

/* ---------- odhaľovanie pri scrollovaní ---------- */

.kz-reveal {
    opacity: 0;
    transform: translateY(46px);
    transition: opacity 0.9s cubic-bezier(.22,1,.36,1), transform 0.9s cubic-bezier(.22,1,.36,1);
    transition-delay: var(--d, 0s);
}

.kz-reveal.is-in {opacity:1;transform:none;}

/* ============================================================
   HERO
   ============================================================ */

/* horný odstup drží hero pod plávajúcim .hot-banner (fixed, top:140px, výška ~135px) */
.kz-hero {
    position: relative;
    padding: clamp(200px, 17vh, 240px) 0 clamp(60px, 9vh, 110px) 0;
}

.kz-fort {
    position: absolute;
    top: 50%;
    right: -60px;
    width: clamp(320px, 42vw, 620px);
    transform: translateY(-52%);
    pointer-events: none;
    z-index: -1;
}

.kz-fort svg {display:block;width:100%;height:auto;}
.kz-fort .kz-fort-spin {transform-origin:100px 100px;animation:kzSpin 90s linear infinite;}

.kz-fort path,
.kz-fort polygon,
.kz-fort circle {
    stroke-dasharray: 900;
    stroke-dashoffset: 900;
    animation: kzDraw 3.2s cubic-bezier(.22,1,.36,1) forwards;
}

.kz-fort .kz-fort-b {animation-delay:0.35s;}
.kz-fort .kz-fort-c {animation-delay:0.7s;}

@keyframes kzDraw {to {stroke-dashoffset:0;}}
@keyframes kzSpin {to {transform:rotate(360deg);}}

.kz-hero-eyebrow {margin-bottom:34px;opacity:0;animation:kzUp 1s cubic-bezier(.22,1,.36,1) 0.15s forwards;}

.kz-title {
    font-size: clamp(58px, 13.5vw, 178px);
    font-weight: 700;
    line-height: 0.88;
    letter-spacing: -4px;
    text-transform: uppercase;
}

.kz-title span {display:block;overflow:hidden;padding-bottom:0.06em;}
.kz-title span > em {display:block;font-style:normal;transform:translateY(105%);animation:kzMask 1.15s cubic-bezier(.22,1,.36,1) forwards;}
.kz-title span:nth-child(1) > em {animation-delay:0.25s;}
.kz-title span:nth-child(2) > em {animation-delay:0.4s;}

@keyframes kzMask {to {transform:translateY(0);}}
@keyframes kzUp {from {opacity:0;transform:translateY(20px);} to {opacity:1;transform:none;}}

.kz-underline {display:block;width:min(420px,74%);margin-top:-4px;}
.kz-underline path {
    fill: none;
    stroke: var(--lime);
    stroke-width: 9;
    stroke-linecap: round;
    stroke-dasharray: 460;
    stroke-dashoffset: 460;
    animation: kzDraw 1.3s cubic-bezier(.22,1,.36,1) 1.1s forwards;
}

.kz-hero-sub {
    max-width: 620px;
    margin-top: 38px;
    font-size: clamp(19px, 2.1vw, 27px);
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: 0.2px;
    opacity: 0;
    animation: kzUp 1s cubic-bezier(.22,1,.36,1) 1.15s forwards;
}

.kz-rot {
    display: inline-flex;
    position: relative;
    overflow: hidden;
    vertical-align: bottom;
    font-weight: 700;
    white-space: nowrap;
}

.kz-rot span {display:inline-block;}
.kz-rot .kz-rot-out {animation:kzRotOut 0.4s cubic-bezier(.55,0,.65,.35) forwards;}
.kz-rot .kz-rot-in {animation:kzRotIn 0.55s cubic-bezier(.22,1,.36,1) forwards;}

@keyframes kzRotOut {to {opacity:0;transform:translateY(-70%) skewY(-4deg);}}
@keyframes kzRotIn {from {opacity:0;transform:translateY(70%) skewY(4deg);} to {opacity:1;transform:none;}}

.kz-hero-cta {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin-top: 50px;
    opacity: 0;
    animation: kzUp 1s cubic-bezier(.22,1,.36,1) 1.35s forwards;
}

.kz-hero-stats {
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    margin-top: 90px;
    border-top: 1px solid var(--line);
    opacity: 0;
    animation: kzUp 1s cubic-bezier(.22,1,.36,1) 1.55s forwards;
}

.kz-stat {
    flex: 1 1 200px;
    padding: 34px 30px 0 0;
    position: relative;
}

.kz-stat::before {
    content: "";
    position: absolute;
    top: -1px;
    left: 0;
    width: 46px;
    height: 3px;
    background-color: var(--lime);
}

.kz-stat strong {display:block;font-size:clamp(32px,3.4vw,46px);font-weight:700;line-height:1;letter-spacing:-1px;}
.kz-stat span {display:block;margin-top:12px;font-size:14px;font-weight:300;line-height:1.5;letter-spacing:0.4px;}

/* ============================================================
   BEŽIACI PÁS
   ============================================================ */

.kz-marquee {
    margin: clamp(60px, 8vw, 110px) 0;
    padding: 26px 0;
    border-top: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
    overflow: hidden;
}

.kz-marquee-track {
    display: flex;
    width: max-content;
    animation: kzMarquee 34s linear infinite;
}

.kz-marquee:hover .kz-marquee-track {animation-play-state:paused;}

.kz-marquee-track span {
    display: flex;
    align-items: center;
    gap: 26px;
    padding-right: 26px;
    font-size: clamp(26px, 3.6vw, 48px);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -0.5px;
    text-transform: uppercase;
    white-space: nowrap;
}

.kz-marquee-track span:nth-child(2n) {
    color: transparent;
    -webkit-text-stroke: 1px #000;
}

.kz-marquee-track i {
    display: block;
    width: 14px;
    height: 14px;
    flex-shrink: 0;
    border-radius: 50%;
    background-color: var(--lime);
    -webkit-text-stroke: 0;
}

@keyframes kzMarquee {to {transform:translateX(-50%);}}

/* ============================================================
   SEKCIE - hlavička
   ============================================================ */

.kz-sec {margin:clamp(90px, 13vw, 190px) 0;}

.kz-sec-head {margin-bottom:clamp(50px, 6vw, 90px);}
.kz-sec-head .kz-eyebrow {margin-bottom:22px;}
.kz-sec-head p {margin-top:24px;max-width:640px;}

/* ============================================================
   ČO DOSTANEŠ - sticky stĺpec + zoznam
   ============================================================ */

.kz-split {display:flex;gap:8%;align-items:flex-start;}
.kz-split-left {flex:0 0 32%;position:sticky;top:60px;}
.kz-split-right {flex:1 1 auto;min-width:0;}

.kz-item {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 0 34px;
    padding: 46px 0;
    border-top: 1px solid var(--line);
}

.kz-item:last-child {border-bottom:1px solid var(--line);}

.kz-item b {
    grid-row: 1 / 3;
    font-size: clamp(46px, 5vw, 68px);
    font-weight: 700;
    line-height: 0.9;
    letter-spacing: -2px;
    color: transparent;
    -webkit-text-stroke: 1.5px #000;
    transition: color 0.5s ease, -webkit-text-stroke-color 0.5s ease;
}

.kz-item:hover b {color:var(--lime);-webkit-text-stroke-color:#000;}

.kz-item h3 {font-size:clamp(22px,2.4vw,30px);font-weight:700;line-height:1.25;letter-spacing:-0.4px;}
.kz-item p {margin-top:16px;font-size:16px;font-weight:300;line-height:1.75;letter-spacing:0.3px;}

/* ============================================================
   CENA - posuvník
   ============================================================ */

.kz-price {text-align:center;}
.kz-price .kz-eyebrow {margin-bottom:26px;}
.kz-price-amount {
    display: block;
    margin: 30px 0 6px 0;
    font-size: clamp(80px, 15vw, 200px);
    font-weight: 700;
    line-height: 1;
    letter-spacing: -6px;
    font-variant-numeric: tabular-nums;
}

.kz-price-amount u {text-decoration:none;color:var(--lime);-webkit-text-stroke:1.5px #000;}

.kz-price-msg {
    display: block;
    min-height: 34px;
    font-size: clamp(18px, 2vw, 24px);
    font-weight: 300;
    line-height: 1.4;
    letter-spacing: 0.3px;
}

.kz-slider {
    position: relative;
    width: min(760px, 100%);
    margin: 56px auto 0 auto;
}

.kz-slider input[type=range] {
    --p: 0%;
    -webkit-appearance: none;
    appearance: none;
    display: block;
    width: 100%;
    height: 34px;
    background: transparent;
    cursor: pointer;
}

.kz-slider input[type=range]::-webkit-slider-runnable-track {
    height: 4px;
    border-radius: 2px;
    background-image: linear-gradient(to right, #000 var(--p), var(--line) var(--p));
}

.kz-slider input[type=range]::-moz-range-track {
    height: 4px;
    border-radius: 2px;
    background-image: linear-gradient(to right, #000 var(--p), var(--line) var(--p));
}

.kz-slider input[type=range]::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: 34px;
    height: 34px;
    margin-top: -15px;
    border: 3px solid #000;
    border-radius: 50%;
    background-color: var(--lime);
    transition: transform 0.3s cubic-bezier(.22,1,.36,1);
}

.kz-slider input[type=range]::-moz-range-thumb {
    width: 30px;
    height: 30px;
    border: 3px solid #000;
    border-radius: 50%;
    background-color: var(--lime);
}

.kz-slider input[type=range]:hover::-webkit-slider-thumb,
.kz-slider input[type=range]:active::-webkit-slider-thumb {transform:scale(1.18);}

.kz-slider-legend {
    display: flex;
    justify-content: space-between;
    margin-top: 14px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1.4px;
    text-transform: uppercase;
}

.kz-price-note {
    max-width: 560px;
    margin: 44px auto 0 auto;
    font-size: 15px;
    font-weight: 300;
    line-height: 1.75;
    letter-spacing: 0.3px;
}

/* ============================================================
   ČASOVÁ OS
   ============================================================ */

.kz-timeline {position:relative;padding-left:clamp(40px, 6vw, 90px);}

.kz-tl-rail {
    position: absolute;
    top: 10px;
    bottom: 10px;
    left: clamp(9px, 1.4vw, 21px);
    width: 2px;
    background-color: var(--line);
}

.kz-tl-fill {
    position: absolute;
    inset: 0;
    background-color: #000;
    transform: scaleY(0);
    transform-origin: top;
}

.kz-step {position:relative;padding-bottom:clamp(46px, 5vw, 74px);}
.kz-step:last-child {padding-bottom:0;}

.kz-step::before {
    content: "";
    position: absolute;
    top: 8px;
    left: calc(clamp(40px, 6vw, 90px) * -1 + clamp(9px, 1.4vw, 21px) - 7px);
    width: 16px;
    height: 16px;
    border: 2px solid #000;
    border-radius: 50%;
    background-color: #fff;
    transition: background-color 0.5s ease, transform 0.5s cubic-bezier(.22,1,.36,1);
}

.kz-step.is-in::before {background-color:var(--lime);transform:scale(1.25);}

.kz-step strong {
    display: block;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2.4px;
    text-transform: uppercase;
    margin-bottom: 12px;
}

.kz-step h3 {font-size:clamp(24px,2.8vw,36px);font-weight:700;line-height:1.2;letter-spacing:-0.6px;}
.kz-step p {margin-top:14px;max-width:620px;font-size:16px;font-weight:300;line-height:1.75;letter-spacing:0.3px;}

/* ============================================================
   PRAVIDLÁ - karty
   ============================================================ */

.kz-rules {display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}

.kz-rule {
    position: relative;
    overflow: hidden;
    z-index: 0;
    padding: 38px 32px 42px 32px;
    border: 2px solid #000;
    border-radius: 6px;
    transition: transform 0.5s cubic-bezier(.22,1,.36,1);
}

.kz-rule::before {
    content: "";
    position: absolute;
    inset: auto 0 0 0;
    height: 0;
    background-color: var(--lime);
    z-index: -1;
    transition: height 0.55s cubic-bezier(.22,1,.36,1);
}

.kz-rule:hover::before {height:100%;}
.kz-rule:hover {transform:translateY(-6px);}

.kz-rule span {display:block;font-size:13px;font-weight:700;letter-spacing:2.4px;color:#000;}
.kz-rule strong {display:block;margin-top:26px;font-size:clamp(22px,2.2vw,28px);font-weight:700;line-height:1.2;letter-spacing:-0.4px;}
.kz-rule em {display:block;margin-top:10px;font-style:normal;font-size:15px;font-weight:300;line-height:1.6;}

/* ============================================================
   PRÍBEH
   ============================================================ */

.kz-story {max-width:820px;}
.kz-story p {margin-top:30px;font-size:clamp(18px,1.8vw,23px);font-weight:300;line-height:1.72;letter-spacing:0.3px;}
.kz-story p:first-child {margin-top:0;}
.kz-story h3 {margin-top:70px;font-size:clamp(26px,3vw,40px);font-weight:700;line-height:1.2;letter-spacing:-0.8px;}
.kz-story h3 + p {margin-top:22px;}

.kz-quote {
    margin: 70px 0 0 0;
    padding-left: 34px;
    border-left: 4px solid var(--lime);
    font-size: clamp(22px,2.6vw,32px);
    font-weight: 300;
    line-height: 1.45;
    letter-spacing: -0.2px;
}

/* ============================================================
   ZOZNAMY S FAJKOU
   ============================================================ */

.kz-cols {display:grid;grid-template-columns:1fr 1fr;gap:8%;}
.kz-cols h3 {margin-bottom:30px;font-size:clamp(22px,2.2vw,28px);font-weight:700;letter-spacing:-0.4px;line-height:1.25;}

.kz-check li {
    display: flex;
    gap: 16px;
    padding: 16px 0;
    border-bottom: 1px solid var(--line);
    font-size: 16px;
    font-weight: 300;
    line-height: 1.6;
    letter-spacing: 0.3px;
}

.kz-check svg {width:20px;height:20px;flex-shrink:0;margin-top:2px;}
.kz-check svg path {
    fill: none;
    stroke: var(--lime);
    stroke-width: 3;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-dasharray: 30;
    stroke-dashoffset: 30;
    transition: stroke-dashoffset 0.6s cubic-bezier(.22,1,.36,1);
}

.kz-check.is-in svg path {stroke-dashoffset:0;}
.kz-check.is-in li:nth-child(2) svg path {transition-delay:0.08s;}
.kz-check.is-in li:nth-child(3) svg path {transition-delay:0.16s;}
.kz-check.is-in li:nth-child(4) svg path {transition-delay:0.24s;}
.kz-check.is-in li:nth-child(5) svg path {transition-delay:0.32s;}
.kz-check.is-in li:nth-child(6) svg path {transition-delay:0.4s;}
.kz-check.is-in li:nth-child(7) svg path {transition-delay:0.48s;}

/* ============================================================
   FORMULÁR
   ============================================================ */

.kz-form {max-width:820px;margin:0 auto;text-align:left;}
.kz-field {position:relative;margin-bottom:44px;}

.kz-field label {
    display: block;
    margin-bottom: 12px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2.4px;
    text-transform: uppercase;
}

.kz-field input,
.kz-field textarea {
    display: block;
    width: 100%;
    padding: 0 0 16px 0;
    border: none;
    border-bottom: 2px solid var(--line);
    background: transparent;
    font-family: 'Chakra Petch', sans-serif;
    font-size: clamp(18px, 2vw, 24px);
    font-weight: 300;
    line-height: 1.5;
    color: #000;
    letter-spacing: 0.3px;
    transition: border-color 0.4s ease;
}

.kz-field textarea {min-height:190px;resize:vertical;}
.kz-field input:focus,
.kz-field textarea:focus {border-bottom-color:#000;}

.kz-field input::placeholder,
.kz-field textarea::placeholder {color:#BDBDBD;}

.kz-field-line {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 0;
    height: 2px;
    background-color: var(--lime);
    transition: width 0.5s cubic-bezier(.22,1,.36,1);
    pointer-events: none;
}

.kz-field:focus-within .kz-field-line {width:100%;}

.kz-form-row {display:grid;grid-template-columns:1fr 1fr;gap:0 40px;}

.kz-captcha {display:flex;flex-wrap:wrap;align-items:flex-end;gap:30px;margin-bottom:44px;}
.kz-captcha img {display:block;width:min(360px, 100%);height:auto;}
.kz-captcha .kz-field {flex:1 1 220px;margin-bottom:0;}

.kz-form-note {margin-top:34px;max-width:640px;font-size:13px;font-weight:300;line-height:1.7;color:#757575;letter-spacing:0.2px;}

/* ============================================================
   PODPIS
   ============================================================ */

/* .kz-page section {display:block} má vyššiu špecificitu, preto sem patrí .kz-page */
.kz-page .kz-sign {display:flex;flex-wrap:wrap;align-items:center;gap:clamp(30px,5vw,70px);}

.kz-avatar {position:relative;flex:0 0 auto;width:200px;height:200px;}
.kz-avatar img {position:absolute;top:26px;left:26px;width:148px;height:148px;border-radius:50%;object-fit:cover;}

.kz-ring {position:absolute;inset:0;width:100%;height:100%;animation:kzSpin 22s linear infinite;}
/* dĺžka textu (~525px) musí zostať pod obvodom kruhu (2πr = 540px), inak sa text prekryje */
.kz-ring text {font-size:12.5px;font-weight:700;letter-spacing:2.4px;text-transform:uppercase;fill:#000;}

.kz-sign-text {flex:1 1 320px;min-width:0;}
.kz-sign-text strong {display:block;font-size:clamp(28px,3vw,40px);font-weight:700;line-height:1.15;letter-spacing:-0.8px;}
.kz-sign-text span {display:block;margin-top:10px;font-size:13px;font-weight:700;letter-spacing:2.4px;text-transform:uppercase;}
.kz-sign-text p {margin-top:22px;max-width:560px;font-size:16px;font-weight:300;line-height:1.75;letter-spacing:0.3px;}

.kz-sign-links {display:flex;flex-wrap:wrap;gap:14px 34px;margin-top:26px;}
.kz-sign-links a {
    position: relative;
    font-size: clamp(18px,1.8vw,22px);
    font-weight: 700;
    color: #000;
    letter-spacing: 0.2px;
}

.kz-sign-links a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -4px;
    width: 100%;
    height: 3px;
    background-color: var(--lime);
    transform: scaleX(0);
    transform-origin: right;
    transition: transform 0.5s cubic-bezier(.22,1,.36,1);
}

.kz-sign-links a:hover::after {transform:scaleX(1);transform-origin:left;}

/* ============================================================
   ZÁVEREČNÁ VÝZVA
   ============================================================ */

.kz-final {text-align:center;margin-bottom:clamp(100px, 12vw, 180px);}
.kz-final h2 {font-size:clamp(40px,7vw,96px);font-weight:700;line-height:1.02;letter-spacing:-2.5px;}
.kz-final h2 em {font-style:normal;font-weight:300;}
.kz-final .kz-lead {margin:26px auto 60px auto;max-width:560px;}

/* ============================================================
   RESPONZÍVNE
   ============================================================ */

@media only screen and (max-width: 1023px) {
    .kz-rules {grid-template-columns:repeat(2,1fr);}
    .kz-split {flex-direction:column;gap:50px;}
    .kz-split-left {position:static;flex:1 1 auto;width:100%;}
    .kz-fort {right:-140px;opacity:0.55;}
}

@media only screen and (max-width: 767px) {
    /* banner je na mobile vyšší, hero musí začať nižšie */
    .kz-hero {padding-top:270px;}
    .kz-title {letter-spacing:-2px;}
    .kz-rules {grid-template-columns:1fr;}
    .kz-cols {grid-template-columns:1fr;gap:60px;}
    .kz-form-row {grid-template-columns:1fr;}
    .kz-hero-cta {gap:12px;}
    .kz-btn {width:100%;justify-content:center;padding:20px 24px;}
    .kz-hero-stats {margin-top:60px;}
    .kz-stat {flex:1 1 100%;padding:26px 0 0 0;border-top:1px solid var(--line);}
    .kz-stat:first-child {border-top:none;}
    .kz-item {grid-template-columns:1fr;gap:18px;}
    .kz-item b {grid-row:auto;}
    .kz-fort {top:auto;bottom:-40px;right:-120px;width:420px;transform:none;opacity:0.4;}
    .kz-price-amount {letter-spacing:-3px;}
    .kz-captcha {gap:20px;}
    .kz-sign {gap:34px;}
}

/* ============================================================
   MENEJ POHYBU
   ============================================================ */

@media (prefers-reduced-motion: reduce) {
    .kz-page *,
    .kz-page *::before,
    .kz-page *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
    .kz-reveal {opacity:1;transform:none;}
    .kz-title span > em {transform:none;}
    .kz-marquee-track {animation:none;}
}
