/* =========================================================
   GENESIS EVENTOS — Eventos infantiles
   Base blanca + paleta de colores llamativos
   ========================================================= */

:root{
  --k-coral:   #f95f44;
  --k-yellow:  #ffd962;
  --k-green:   #a6ec8a;
  --k-blue:    #7bd7f2;
  --k-purple:  #b65bc7;

  --k-ink:     #221F2B;
  --k-body:    #5C5768;
  --k-muted:   #8A8496;
  --k-white:   #FFFFFF;
  --k-tint:    #FBF9FC;
  --k-line:    #EBE7F0;

  --k-font:    "Fredoka", "Trebuchet MS", sans-serif;
  --k-body-font: "ABeeZee", -apple-system, "Segoe UI", sans-serif;

  --k-container: 1180px;
  --k-header-h:  78px;
  --k-ease:      cubic-bezier(.22,.61,.36,1);
  --k-bounce:    cubic-bezier(.34,1.56,.64,1);
}

*,*::before,*::after{ box-sizing:border-box; }
html{ scroll-behavior:smooth; scroll-padding-top:calc(var(--k-header-h) + 16px); }
body{
  margin:0;
  background:var(--k-white);
  color:var(--k-body);
  font-family:var(--k-body-font);
  font-size:16.5px;
  line-height:1.72;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{ max-width:100%; display:block; }
a{ color:inherit; text-decoration:none; }
h1,h2,h3,h4{ margin:0; font-family:var(--k-font); color:var(--k-ink); line-height:1.15; }
p{ margin:0 0 1rem; }
ul{ margin:0; padding:0; list-style:none; }
button{ font:inherit; }
::selection{ background:var(--k-yellow); color:var(--k-ink); }

.kcontainer{
  width:100%;
  max-width:var(--k-container);
  margin-inline:auto;
  padding-inline:24px;
}

/* ---------- Tipografía ---------- */
.keyebrow{
  display:inline-block;
  font-family:var(--k-font);
  font-size:.8rem;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--k-purple);
  margin:0 0 .9rem;
}
.kh2{
  font-size:clamp(2.1rem,4.6vw,3.4rem);
  font-weight:600;
  letter-spacing:-.015em;
  margin-bottom:1.1rem;
}
.kh2--center{ text-align:center; }

/* subrayado tipo marcador */
.underline-doodle{
  position:relative;
  display:inline-block;
  z-index:0;
}
.underline-doodle::after{
  content:"";
  position:absolute;
  left:-.06em; right:-.06em; bottom:.06em;
  height:.34em;
  background:var(--k-yellow);
  border-radius:40px;
  z-index:-1;
  transform:rotate(-.6deg);
}

.ksection{ padding:clamp(64px,8.5vw,112px) 0; }
.ksection--tint{ background:var(--k-tint); }
.ksection__head{
  max-width:680px;
  margin:0 auto clamp(38px,5vw,62px);
  text-align:center;
}
.ksection__lead{ color:var(--k-muted); margin:0; }

/* ---------- Botones ---------- */
.kbtn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.5rem;
  padding:.78rem 1.6rem;
  border:2px solid transparent;
  border-radius:60px;
  font-family:var(--k-font);
  font-size:.94rem;
  font-weight:600;
  cursor:pointer;
  transition:transform .3s var(--k-bounce), box-shadow .3s var(--k-ease), background .3s var(--k-ease), color .3s var(--k-ease);
  white-space:nowrap;
}
.kbtn--coral{
  background:var(--k-coral);
  color:var(--k-white);
  box-shadow:0 10px 22px -10px rgba(249,95,68,.85);
}
.kbtn--coral:hover{ transform:translateY(-3px); box-shadow:0 16px 30px -10px rgba(249,95,68,.9); }
.kbtn--outline{
  border-color:var(--k-ink);
  color:var(--k-ink);
  background:var(--k-white);
}
.kbtn--outline:hover{ background:var(--k-ink); color:var(--k-white); transform:translateY(-3px); }
.kbtn--lg{ padding:1rem 2.1rem; font-size:1.02rem; }
.kbtn--block{ width:100%; margin-top:1.2rem; }

/* =========================================================
   HEADER
   ========================================================= */
.kheader{
  position:fixed;
  inset:0 0 auto 0;
  z-index:100;
  background:rgba(255,255,255,.9);
  backdrop-filter:blur(14px);
  transition:box-shadow .35s var(--k-ease), border-color .35s var(--k-ease);
  border-bottom:1px solid transparent;
}
.kheader.is-stuck{ border-bottom-color:var(--k-line); box-shadow:0 8px 26px -20px rgba(34,31,43,.5); }
.kheader__bar{
  height:var(--k-header-h);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1.6rem;
}
.kbrand img{ height:30px; width:auto; }
.knav{ display:flex; gap:1.7rem; }
.knav__link{
  position:relative;
  font-family:var(--k-font);
  font-size:.94rem;
  font-weight:500;
  color:var(--k-body);
  transition:color .25s var(--k-ease);
}
.knav__link::after{
  content:"";
  position:absolute;
  left:0; bottom:-5px;
  width:0; height:3px;
  border-radius:3px;
  background:var(--k-coral);
  transition:width .3s var(--k-ease);
}
.knav__link:hover{ color:var(--k-ink); }
.knav__link:hover::after, .knav__link.is-active::after{ width:100%; }
.knav__link--back{ color:var(--k-purple); }
.knav__link--back::after{ background:var(--k-purple); }

.kheader__actions{ display:flex; align-items:center; gap:.9rem; }
.kburger{
  display:none;
  flex-direction:column;
  justify-content:center;
  gap:5px;
  width:42px; height:42px;
  background:var(--k-white);
  border:2px solid var(--k-line);
  border-radius:14px;
  cursor:pointer;
}
.kburger span{
  display:block;
  width:17px; height:2.5px;
  margin-inline:auto;
  border-radius:3px;
  background:var(--k-ink);
  transition:.3s var(--k-ease);
}
.kburger.is-open span:nth-child(1){ transform:translateY(7.5px) rotate(45deg); }
.kburger.is-open span:nth-child(2){ opacity:0; }
.kburger.is-open span:nth-child(3){ transform:translateY(-7.5px) rotate(-45deg); }

/* =========================================================
   HERO
   ========================================================= */
.khero{
  position:relative;
  padding:calc(var(--k-header-h) + 66px) 0 clamp(60px,8vw,96px);
  overflow:hidden;
}
.khero__blobs{ position:absolute; inset:0; pointer-events:none; }
.blob{
  position:absolute;
  border-radius:50%;
  filter:blur(6px);
  opacity:.42;
}
.blob--1{ width:290px; height:290px; background:var(--k-yellow); top:-70px; left:-90px; }
.blob--2{ width:230px; height:230px; background:var(--k-blue); top:38%; right:-80px; }
.blob--3{ width:170px; height:170px; background:var(--k-green); bottom:-60px; left:28%; }
.blob--4{ width:130px; height:130px; background:var(--k-purple); top:14%; left:44%; opacity:.22; }

.khero__grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:clamp(34px,5vw,68px);
  align-items:center;
}
.kpill{
  display:inline-block;
  padding:.42rem 1.1rem;
  background:var(--k-white);
  border:2px solid var(--k-line);
  border-radius:60px;
  font-family:var(--k-font);
  font-size:.88rem;
  font-weight:500;
  color:var(--k-ink);
  margin:0 0 1.3rem;
}
.khero__title{
  font-size:clamp(2.6rem,6.2vw,4.5rem);
  font-weight:700;
  letter-spacing:-.03em;
  margin-bottom:1.2rem;
}
.wiggle{
  display:inline-block;
  color:var(--k-coral);
  animation:wiggle 3.2s ease-in-out infinite;
}
@keyframes wiggle{
  0%,100%{ transform:rotate(-3deg); }
  50%{ transform:rotate(3deg); }
}
.khero__text{
  max-width:500px;
  font-size:1.08rem;
  margin-bottom:1.9rem;
}
.khero__actions{ display:flex; flex-wrap:wrap; gap:.9rem; margin-bottom:1.9rem; }

.kchips{ display:flex; flex-wrap:wrap; gap:.6rem; }
.kchip{
  padding:.4rem 1rem;
  border-radius:60px;
  font-family:var(--k-font);
  font-size:.86rem;
  font-weight:500;
  color:var(--k-ink);
}
.kchip--yellow{ background:rgba(255,217,98,.42); }
.kchip--green{ background:rgba(166,236,138,.42); }
.kchip--blue{ background:rgba(123,215,242,.42); }
.kchip--purple{ background:rgba(182,91,199,.2); }

/* ---------- Collage de fotos ---------- */
.khero__photos{
  position:relative;
  display:grid;
  grid-template-columns:1fr 1fr;
  grid-template-rows:auto auto;
  gap:1rem;
}
.kphoto{ margin:0; overflow:hidden; border-radius:26px; border:5px solid var(--k-white); box-shadow:0 22px 44px -22px rgba(34,31,43,.45); }
.kphoto img{ width:100%; height:100%; object-fit:cover; }
.kphoto--a{ grid-column:1 / -1; aspect-ratio:16/10; transform:rotate(-1.4deg); }
.kphoto--b{ aspect-ratio:1/1.06; transform:rotate(2deg); }
.kphoto--c{ aspect-ratio:1/1.06; transform:rotate(-2.2deg); }

/* =========================================================
   FRANJA DE DATOS
   ========================================================= */
.kstrip{
  background:var(--k-ink);
  padding:clamp(34px,4.4vw,48px) 0;
}
.kstrip__grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:1.5rem;
  text-align:center;
}
.kstat b{
  display:block;
  font-family:var(--k-font);
  font-size:clamp(1.8rem,3.4vw,2.7rem);
  font-weight:600;
  line-height:1.1;
}
.kstat:nth-child(1) b{ color:var(--k-yellow); }
.kstat:nth-child(2) b{ color:var(--k-coral); }
.kstat:nth-child(3) b{ color:var(--k-green); }
.kstat:nth-child(4) b{ color:var(--k-blue); }
.kstat span{
  font-size:.86rem;
  color:rgba(255,255,255,.72);
}

/* =========================================================
   TARJETAS
   ========================================================= */
.kcards{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(255px,1fr));
  gap:1.3rem;
}
.kcard{
  padding:2rem 1.7rem;
  background:var(--k-white);
  border:2px solid var(--k-line);
  border-radius:26px;
  transition:transform .4s var(--k-bounce), box-shadow .4s var(--k-ease), border-color .4s var(--k-ease);
}
.kcard__emoji{
  display:grid;
  place-items:center;
  width:56px; height:56px;
  border-radius:20px;
  font-size:1.6rem;
  margin-bottom:1.1rem;
  transition:transform .45s var(--k-bounce);
}
.kcard h3{ font-size:1.24rem; font-weight:600; margin-bottom:.5rem; }
.kcard p{ font-size:.94rem; margin:0; }
.kcard em{ color:var(--k-muted); }
.kcard:hover{ transform:translateY(-6px); box-shadow:0 22px 40px -22px rgba(34,31,43,.42); }
.kcard:hover .kcard__emoji{ transform:rotate(-9deg) scale(1.08); }

.kcard--yellow .kcard__emoji{ background:rgba(255,217,98,.4); }
.kcard--yellow:hover{ border-color:var(--k-yellow); }
.kcard--coral .kcard__emoji{ background:rgba(249,95,68,.18); }
.kcard--coral:hover{ border-color:var(--k-coral); }
.kcard--green .kcard__emoji{ background:rgba(166,236,138,.4); }
.kcard--green:hover{ border-color:var(--k-green); }
.kcard--blue .kcard__emoji{ background:rgba(123,215,242,.4); }
.kcard--blue:hover{ border-color:var(--k-blue); }
.kcard--purple .kcard__emoji{ background:rgba(182,91,199,.18); }
.kcard--purple:hover{ border-color:var(--k-purple); }

/* =========================================================
   FEATURE (juegos)
   ========================================================= */
.kfeature{ padding:clamp(56px,7vw,96px) 0; }
.kfeature__grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:clamp(34px,5vw,72px);
  align-items:center;
}
.kfeature__media{ position:relative; }
.kfeature__media img{
  width:100%;
  aspect-ratio:4/3.2;
  object-fit:cover;
  border-radius:30px;
  border:6px solid var(--k-white);
  box-shadow:0 26px 50px -26px rgba(34,31,43,.5);
}
.ksticker{
  position:absolute;
  right:-10px; bottom:-16px;
  padding:.6rem 1.2rem;
  background:var(--k-yellow);
  border-radius:60px;
  font-family:var(--k-font);
  font-weight:600;
  color:var(--k-ink);
  box-shadow:0 12px 24px -12px rgba(34,31,43,.5);
  transform:rotate(-4deg);
}
.kcheck{ display:grid; gap:.7rem; margin-top:1.6rem; }
.kcheck li{
  position:relative;
  padding-left:2rem;
  font-family:var(--k-font);
  font-weight:500;
  color:var(--k-ink);
}
.kcheck li::before{
  content:"✓";
  position:absolute;
  left:0; top:.06em;
  display:grid;
  place-items:center;
  width:22px; height:22px;
  border-radius:50%;
  background:var(--k-green);
  color:var(--k-ink);
  font-size:.78rem;
  font-weight:600;
}

/* =========================================================
   PRECIOS
   ========================================================= */
.kprices{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:1.4rem;
  align-items:start;
}
.kprice{
  position:relative;
  padding:2.2rem 1.9rem;
  background:var(--k-white);
  border:2px solid var(--k-line);
  border-radius:28px;
  text-align:center;
}
.kprice--star{
  border-color:var(--k-coral);
  box-shadow:0 24px 44px -24px rgba(249,95,68,.6);
}
.kprice__ribbon{
  position:absolute;
  top:-14px; left:50%;
  transform:translateX(-50%);
  padding:.3rem 1.1rem;
  background:var(--k-coral);
  color:var(--k-white);
  border-radius:60px;
  font-family:var(--k-font);
  font-size:.78rem;
  font-weight:600;
  white-space:nowrap;
}
.kprice__tag{
  font-family:var(--k-font);
  font-size:.92rem;
  font-weight:500;
  color:var(--k-muted);
  margin-bottom:.5rem;
}
.kprice__num{
  font-family:var(--k-font);
  font-size:clamp(2.1rem,4vw,2.7rem);
  font-weight:700;
  color:var(--k-ink);
  line-height:1.1;
  margin-bottom:.5rem;
}
.kprice__num--sm{ color:var(--k-purple); }
.kprice__note{ font-size:.9rem; color:var(--k-muted); margin:0; }
.kprice__list{
  display:grid;
  gap:.5rem;
  margin-top:1.2rem;
  padding-top:1.2rem;
  border-top:2px dashed var(--k-line);
  font-size:.88rem;
  text-align:left;
}
.kprice__list li{ position:relative; padding-left:1.2rem; }
.kprice__list li::before{
  content:"";
  position:absolute;
  left:0; top:.68em;
  width:7px; height:7px;
  border-radius:50%;
  background:var(--k-purple);
}
.kdisclaimer{
  text-align:center;
  margin:2rem 0 0;
  font-size:.9rem;
  color:var(--k-muted);
}

/* =========================================================
   HORARIOS Y EXTRAS
   ========================================================= */
.kduo{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1.4rem;
  margin-bottom:1.4rem;
}
.kbox{
  padding:2.1rem 1.9rem;
  border-radius:28px;
  border:2px solid var(--k-line);
}
.kbox--hours{ background:rgba(123,215,242,.16); border-color:rgba(123,215,242,.55); }
.kbox--extras{ background:rgba(255,217,98,.2); border-color:rgba(255,217,98,.75); }
.kbox__title{ font-size:1.3rem; font-weight:600; margin-bottom:1.2rem; }
.kbox__foot{ font-size:.88rem; color:var(--k-body); margin:1.2rem 0 0; }

.khours{ display:grid; gap:.7rem; }
.khours li{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  padding:.75rem 1.1rem;
  background:var(--k-white);
  border-radius:16px;
}
.khours span{ font-size:.92rem; }
.khours b{ font-family:var(--k-font); color:var(--k-ink); }

.kextras{ display:flex; flex-wrap:wrap; gap:.6rem; }
.kextras li{
  padding:.5rem 1.1rem;
  background:var(--k-white);
  border-radius:60px;
  font-family:var(--k-font);
  font-size:.92rem;
  font-weight:500;
  color:var(--k-ink);
}

.krules{
  padding:1.6rem 1.9rem;
  background:rgba(249,95,68,.1);
  border:2px dashed var(--k-coral);
  border-radius:24px;
}
.krules h3{ font-size:1.1rem; font-weight:600; margin-bottom:.35rem; }
.krules p{ margin:0; font-size:.95rem; }

/* =========================================================
   GALERÍA
   ========================================================= */
.kgallery{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  grid-auto-rows:200px;
  gap:1rem;
}
.kgitem{
  margin:0;
  overflow:hidden;
  border-radius:24px;
  border:4px solid var(--k-white);
  box-shadow:0 16px 34px -20px rgba(34,31,43,.45);
  cursor:zoom-in;
}
.kgitem--tall{ grid-row:span 2; }
.kgitem--wide{ grid-column:span 2; }
.kgitem img{
  width:100%; height:100%;
  object-fit:cover;
  transition:transform .7s var(--k-ease);
}
.kgitem:hover img{ transform:scale(1.07); }

/* ---------- Visor ---------- */
.klightbox{
  position:fixed;
  inset:0;
  z-index:200;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:1rem;
  padding:clamp(16px,4vw,48px);
  background:rgba(34,31,43,.94);
  backdrop-filter:blur(8px);
  animation:klbIn .28s var(--k-ease);
}
.klightbox[hidden]{ display:none; }
@keyframes klbIn{ from{ opacity:0; } to{ opacity:1; } }
.klightbox__img{
  grid-column:2;
  max-width:100%;
  max-height:86vh;
  margin-inline:auto;
  border-radius:20px;
  border:5px solid var(--k-white);
}
.klightbox__nav,
.klightbox__close{
  display:grid;
  place-items:center;
  background:var(--k-white);
  border:none;
  color:var(--k-ink);
  border-radius:50%;
  cursor:pointer;
  transition:.28s var(--k-bounce);
}
.klightbox__nav{ width:52px; height:52px; font-size:2rem; line-height:0; padding-bottom:5px; }
.klightbox__nav--prev{ grid-column:1; }
.klightbox__nav--next{ grid-column:3; }
.klightbox__close{
  position:absolute;
  top:clamp(16px,3vw,32px); right:clamp(16px,3vw,32px);
  width:44px; height:44px;
  font-size:1.7rem;
  line-height:0;
  padding-bottom:4px;
}
.klightbox__nav:hover,
.klightbox__close:hover{ background:var(--k-coral); color:var(--k-white); transform:scale(1.08); }
.klightbox__counter{
  position:absolute;
  left:50%; bottom:clamp(14px,3vw,26px);
  transform:translateX(-50%);
  margin:0;
  font-family:var(--k-font);
  font-size:.86rem;
  color:rgba(255,255,255,.75);
}

/* =========================================================
   CTA
   ========================================================= */
.kcta{
  padding:clamp(70px,9vw,118px) 0;
  background:
    radial-gradient(circle at 12% 20%,rgba(255,217,98,.5),transparent 42%),
    radial-gradient(circle at 88% 76%,rgba(123,215,242,.5),transparent 42%),
    radial-gradient(circle at 62% 8%,rgba(182,91,199,.24),transparent 40%),
    var(--k-white);
  text-align:center;
}
.kcta__balloons{ display:block; font-size:2.3rem; margin-bottom:.8rem; }
.kcta__inner > p{ max-width:520px; margin:0 auto 2rem; }
.kcta__actions{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:.9rem;
  margin-bottom:1.8rem;
}
.kcta__addr{
  font-family:var(--k-font);
  font-size:.92rem;
  color:var(--k-ink);
  margin:0;
}

/* =========================================================
   FOOTER
   ========================================================= */
.kfooter{ background:var(--k-ink); color:rgba(255,255,255,.68); padding-top:clamp(52px,6.5vw,78px); }
.kfooter__grid{
  display:grid;
  grid-template-columns:1.6fr 1fr 1fr 1fr;
  gap:2.2rem;
  padding-bottom:clamp(38px,5vw,56px);
}
.kfooter__logo{ height:28px; margin-bottom:1.1rem; filter:invert(1) brightness(1.7); }
.kfooter p{ font-size:.9rem; max-width:290px; }
.kfooter__col h4{
  color:var(--k-yellow);
  font-size:.95rem;
  font-weight:600;
  margin-bottom:1rem;
}
.kfooter__col a,
.kfooter__col p{
  display:block;
  font-size:.9rem;
  margin-bottom:.5rem;
  transition:color .25s var(--k-ease);
}
.kfooter__col a:hover{ color:var(--k-yellow); }
.kfooter__bottom{ border-top:1px solid rgba(255,255,255,.12); padding-block:1.4rem; }
.kfooter__bottom p{ margin:0; font-size:.8rem; text-align:center; color:rgba(255,255,255,.42); }

/* ---------- WhatsApp flotante ---------- */
.kwa{
  position:fixed;
  right:22px; bottom:22px;
  z-index:90;
  width:54px; height:54px;
  display:grid; place-items:center;
  background:#25D366;
  border-radius:50%;
  box-shadow:0 12px 28px -8px rgba(37,211,102,.7);
  transition:transform .3s var(--k-bounce);
}
.kwa svg{ width:28px; height:28px; fill:var(--k-white); }
.kwa:hover{ transform:scale(1.1); }

/* ---------- Animación de entrada ---------- */
.kreveal{
  opacity:0;
  transform:translateY(24px);
  transition:opacity .75s var(--k-ease), transform .75s var(--k-ease);
}
.kreveal.is-visible{ opacity:1; transform:none; }

/* =========================================================
   RESPONSIVE
   ========================================================= */
@media (max-width:980px){
  .khero__grid{ grid-template-columns:1fr; }
  .khero__photos{ max-width:520px; }
  .kfeature__grid{ grid-template-columns:1fr; }
  .kduo{ grid-template-columns:1fr; }
  .kfooter__grid{ grid-template-columns:1fr 1fr; }
}

@media (max-width:820px){
  .knav{
    position:fixed;
    inset:var(--k-header-h) 0 auto 0;
    flex-direction:column;
    gap:0;
    background:var(--k-white);
    border-bottom:2px solid var(--k-line);
    padding:.8rem 24px 1.4rem;
    transform:translateY(-125%);
    transition:transform .42s var(--k-ease);
  }
  .knav.is-open{ transform:none; }
  .knav__link{ padding:.9rem 0; border-bottom:1px solid var(--k-line); }
  .knav__link::after{ display:none; }
  .kburger{ display:flex; }

  .kstrip__grid{ grid-template-columns:1fr 1fr; gap:1.8rem 1rem; }

  .kgallery{ grid-template-columns:repeat(2,1fr); grid-auto-rows:165px; }
  .kgitem--wide{ grid-column:1 / -1; }
  .kgitem--tall{ grid-row:span 1; }

  .klightbox{ grid-template-columns:1fr; }
  .klightbox__img{ grid-column:1; max-height:74vh; }
  .klightbox__nav{ position:absolute; bottom:clamp(48px,9vw,72px); width:46px; height:46px; }
  .klightbox__nav--prev{ left:18px; }
  .klightbox__nav--next{ right:18px; }

  .kfooter__grid{ grid-template-columns:1fr; gap:1.8rem; }
}

@media (max-width:480px){
  .kcontainer{ padding-inline:18px; }
  .kheader__actions .kbtn{ padding:.6rem 1.15rem; font-size:.85rem; }
  .khero__actions .kbtn{ flex:1 1 auto; }
  .kphoto--a{ aspect-ratio:16/11; }
  .kcta__actions .kbtn{ width:100%; }
}

@media (prefers-reduced-motion:reduce){
  *{ animation-duration:.01ms !important; transition-duration:.01ms !important; }
  html{ scroll-behavior:auto; }
  .kreveal{ opacity:1; transform:none; }
}
