/* ============================================================
   SALÓN ALEX SESTELO — rediseño v2 "L'Édition"
   Portada de revista de moda francesa · Madrid × Paris
   Firma de marca: la onda dorada (luz LED del techo del salón)
   Paleta real: oro #B7A041 · negro · marfil
   ============================================================ */

:root{
  --ink:#0c0c0c;
  --ink-soft:#161616;
  --ink-2:#39383400;
  --txt:#2a2926;
  --mut:#8a857a;
  --line:#e4e0d6;
  --paper:#f6f3ec;     /* marfil cálido */
  --paper-2:#efebe1;
  --white:#fff;
  --gold:#b7a041;
  --gold-dk:#6c5e26;
  --gold-lt:#d9ca86;
  --serif:"Cormorant Garamond",Georgia,serif;
  --sans:"Montserrat",system-ui,sans-serif;
  --e:cubic-bezier(.19,1,.22,1);
  --pad:clamp(18px,5vw,90px);
}

*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  font-family:var(--sans);background:var(--paper);color:var(--txt);
  font-weight:300;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden;
}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
em{font-style:italic}
strong{font-weight:500;color:var(--ink)}
::selection{background:var(--gold);color:#fff}
.wave-def{position:absolute}

/* ---------- shared ---------- */
.kicker{font-size:.68rem;letter-spacing:.34em;text-transform:uppercase;color:var(--mut);font-weight:500;margin-bottom:1.6rem}
.kicker--gold{color:var(--gold-dk)}
.kicker--center{text-align:center}
.h2{font-family:var(--serif);font-weight:300;font-size:clamp(2.1rem,5.6vw,4.6rem);line-height:1.02;letter-spacing:-.012em;color:var(--ink)}
.h2 em{font-weight:400}
.p{font-size:clamp(1rem,1.25vw,1.16rem);color:var(--txt);max-width:46ch;line-height:1.8}
.more{font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--mut)}
.textlink{display:inline-flex;align-items:center;gap:.6rem;margin-top:2rem;font-size:.72rem;
  letter-spacing:.18em;text-transform:uppercase;color:var(--ink)}
.textlink span{position:relative}
.textlink span::after{content:"";position:absolute;left:0;bottom:-3px;width:100%;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--e)}
.textlink:hover span::after{transform:scaleX(1)}
.textlink i{color:var(--gold);font-style:normal;transition:transform .45s var(--e)}
.textlink:hover i{transform:translateX(6px)}

/* ---------- progress ---------- */
.progress{position:fixed;top:0;left:0;height:2px;width:0;background:var(--gold);z-index:130}

/* ---------- veil / loader ---------- */
.veil{position:fixed;inset:0;z-index:200;background:var(--ink);display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:.7rem}
.veil__wave{width:min(60vw,340px);height:30px;opacity:.9}
.veil__wave use{stroke-dasharray:560;stroke-dashoffset:560}
.veil__mark{font-family:var(--serif);font-size:clamp(2rem,7vw,4rem);color:var(--paper);font-weight:300;letter-spacing:.02em;opacity:0}
.veil__sub{font-size:.66rem;letter-spacing:.36em;text-transform:uppercase;color:var(--gold-lt);opacity:0}
.veil__count{position:absolute;right:var(--pad);bottom:calc(var(--pad) - 10px);font-family:var(--serif);
  font-size:clamp(3rem,12vw,8rem);color:#1c1c1c;line-height:1}
html:not(.js) .veil{display:none}

/* ---------- cursor ---------- */
.cursor{position:fixed;top:0;left:0;width:7px;height:7px;border-radius:50%;background:var(--gold);
  pointer-events:none;z-index:150;transform:translate(-50%,-50%);mix-blend-mode:difference;
  transition:width .35s var(--e),height .35s var(--e),opacity .3s}
.cursor.is-link{width:60px;height:60px;background:transparent;border:1px solid var(--gold)}
.cursor.is-hide{opacity:0}
.cursor__t{font-size:.52rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);opacity:0;transition:opacity .3s}
.cursor.is-link .cursor__t{opacity:1}
@media (hover:hover){html.js,html.js *{cursor:none !important}}
@media (hover:none){.cursor{display:none}}

/* ---------- topbar ---------- */
.topbar{position:fixed;top:0;left:0;width:100%;background:var(--ink);color:var(--paper);z-index:90;
  overflow:hidden;height:34px;display:flex;align-items:center}
.topbar__track{display:flex;white-space:nowrap;gap:1.3rem;animation:marq 46s linear infinite;
  font-size:.6rem;letter-spacing:.24em;text-transform:uppercase}
.topbar__track i{color:var(--gold);font-style:normal}
@keyframes marq{to{transform:translateX(-50%)}}

/* ---------- nav ---------- */
.nav{position:fixed;top:34px;left:0;width:100%;z-index:100;display:flex;justify-content:space-between;
  align-items:center;padding:1rem var(--pad);transition:background .5s var(--e),padding .5s var(--e),box-shadow .5s}
.nav.is-stuck{background:rgba(246,243,236,.85);backdrop-filter:blur(16px);padding:.6rem var(--pad);box-shadow:0 1px 0 var(--line)}
.nav__brand{font-family:var(--serif);font-size:1.5rem;letter-spacing:.01em;display:flex;gap:.32em;line-height:1}
.nav__brand-s{font-style:italic;color:var(--gold-dk)}
.nav__menu{display:flex;gap:2rem;align-items:center;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase}
.nav__menu a{opacity:.78;transition:opacity .3s}
.nav__menu a:hover{opacity:1}
.nav__menu a[data-inert]{cursor:default}
.nav__cta{border:1px solid currentColor;padding:.55rem 1.2rem;border-radius:40px;opacity:1!important;position:relative;overflow:hidden}
.nav__cta span{position:relative;z-index:2;transition:color .4s}
.nav__cta::after{content:"";position:absolute;inset:0;background:var(--gold);transform:translateY(101%);transition:transform .5s var(--e)}
.nav__cta:hover::after{transform:translateY(0)}
.nav__cta:hover span{color:#fff}
/* sobre hero (oscuro) */
.nav.is-hero .nav__brand,.nav.is-hero .nav__menu a{color:var(--paper)}
.nav.is-hero .nav__brand-s{color:var(--gold-lt)}
@media(max-width:820px){.nav__menu a:not(.nav__cta){display:none}}

/* ---------- buttons ---------- */
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:1rem 2.1rem;
  border-radius:40px;background:var(--ink);color:var(--paper);font-size:.72rem;letter-spacing:.18em;
  text-transform:uppercase;font-weight:500;overflow:hidden}
.btn span{position:relative;z-index:2;transition:color .45s}
.btn::after{content:"";position:absolute;inset:0;background:var(--gold);transform:translateY(101%);transition:transform .55s var(--e);z-index:1}
.btn:hover::after{transform:translateY(0)}
.btn:hover span{color:var(--ink)}
.btn--gold{background:var(--gold)}
.btn--gold span{color:var(--ink)}
.btn--gold::after{background:var(--ink)}
.btn--gold:hover span{color:var(--paper)}
.btn--linelt{background:transparent;color:var(--paper);box-shadow:inset 0 0 0 1px rgba(246,243,236,.55)}
.btn--linelt:hover span{color:var(--ink)}
.btn--lg{padding:1.2rem 2.8rem;font-size:.76rem}

/* =========================================================
   HERO — portada
   ========================================================= */
.hero{position:relative;height:100vh;min-height:640px;color:var(--paper);overflow:hidden;
  display:grid;grid-template-rows:1fr auto auto;padding:clamp(90px,14vh,150px) var(--pad) clamp(28px,5vh,56px)}
.hero__bg{position:absolute;inset:0;z-index:-2;overflow:hidden}
.hero__bg img{width:100%;height:100%;object-fit:cover;object-position:60% 28%;transform:scale(1.12)}
.hero__bg::after{content:"";position:absolute;inset:0;background:
  linear-gradient(180deg,rgba(8,8,8,.62) 0%,rgba(8,8,8,.12) 38%,rgba(8,8,8,.2) 60%,rgba(8,8,8,.8) 100%)}
.hero__noise{position:absolute;inset:0;z-index:-1;opacity:.05;pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.hero__meta{position:absolute;font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;
  display:flex;flex-direction:column;gap:.3rem;color:rgba(246,243,236,.82);z-index:3}
.hero__meta span:nth-child(2){color:var(--gold-lt)}
.hero__meta--tl{top:clamp(76px,12vh,120px);left:var(--pad)}
.hero__meta--tr{top:clamp(76px,12vh,120px);right:var(--pad);text-align:right}
.hero__meta--bl{bottom:clamp(28px,5vh,56px);left:var(--pad)}
@media(max-width:820px){.hero__meta--tr,.hero__meta--bl{display:none}}

.hero__center{grid-row:2;align-self:center;text-align:center;display:flex;flex-direction:column;align-items:center}
.hero__pre{font-family:var(--serif);font-style:italic;font-size:clamp(1.1rem,2.4vw,1.9rem);
  color:var(--gold-lt);margin-bottom:.4rem;opacity:0}
.hero__title{font-family:var(--serif);font-weight:300;line-height:.86;letter-spacing:-.01em}
.hero__l1,.hero__l3{display:block;font-size:clamp(3.4rem,15vw,12rem);font-weight:400}
.hero__l3{color:transparent;-webkit-text-stroke:1px var(--paper);text-stroke:1px var(--paper)}
.hero__l2{display:block;margin:-.06em 0}
.hero__l2 em{font-size:clamp(3.2rem,13.5vw,11rem);color:var(--gold-lt);font-weight:400}
[data-clip]{display:inline-block}

.hero__foot{grid-row:3;display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;flex-wrap:wrap}
.hero__tag{font-family:var(--serif);font-style:italic;font-size:clamp(1.05rem,1.8vw,1.5rem);
  line-height:1.3;text-align:right;color:rgba(246,243,236,.92);opacity:0}
.hero__scroll{position:absolute;left:50%;bottom:clamp(28px,5vh,56px);transform:translateX(-50%);
  display:flex;flex-direction:column;align-items:center;gap:.5rem;font-size:.58rem;letter-spacing:.24em;
  text-transform:uppercase;color:var(--gold-lt);opacity:0}
.hero__scroll i{width:1px;height:46px;background:linear-gradient(var(--gold-lt),transparent);animation:scr 2.1s var(--e) infinite}
@keyframes scr{0%{transform:scaleY(0);transform-origin:top}45%{transform:scaleY(1);transform-origin:top}55%{transform:scaleY(1);transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
@media(max-width:680px){.hero__foot{justify-content:center}.hero__tag{text-align:center}}

/* =========================================================
   BIG MARQUEE
   ========================================================= */
.bigmarq{background:var(--ink);color:var(--paper);overflow:hidden;padding:clamp(20px,3vw,40px) 0}
.bigmarq__track{display:flex;align-items:center;gap:2.4rem;white-space:nowrap;animation:marq 32s linear infinite;width:max-content}
.bigmarq__track span{font-family:var(--serif);font-size:clamp(2.4rem,7vw,6rem);font-weight:300}
.bigmarq__track span:nth-child(odd){font-style:italic;color:var(--gold-lt)}
.bigmarq__track b{color:var(--gold);font-size:clamp(1.2rem,3vw,2.4rem)}

/* =========================================================
   PRENSA
   ========================================================= */
.press{background:var(--ink);color:var(--paper);padding:clamp(40px,6vw,72px) var(--pad) clamp(56px,8vw,90px);text-align:center}
.press__head{display:flex;align-items:center;justify-content:center;gap:1.6rem;margin-bottom:2.8rem}
.press__head p{font-size:.66rem;letter-spacing:.34em;text-transform:uppercase;color:var(--gold-lt)}
.press__head .line{height:1px;width:clamp(30px,12vw,120px);background:rgba(246,243,236,.3);transform-origin:center;transform:scaleX(0)}
.press__row{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:clamp(26px,6vw,72px)}
.press__row img{height:clamp(26px,3.2vw,42px);width:auto;opacity:.6;filter:brightness(0) invert(1);transition:opacity .4s,transform .4s var(--e)}
.press__row img:hover{opacity:1;transform:translateY(-3px)}

/* =========================================================
   MANIFIESTO
   ========================================================= */
.manifesto{position:relative;padding:clamp(48px,6vw,80px) var(--pad);text-align:center}
.manifesto__inner{max-width:920px;margin:0 auto;display:flex;flex-direction:column;align-items:center}
.manifesto__txt{font-family:var(--serif);font-weight:300;font-size:clamp(1.7rem,4vw,3.3rem);
  line-height:1.22;letter-spacing:-.01em;color:var(--ink);margin-top:1.4rem}
.manifesto__sign{display:flex;align-items:center;gap:1.2rem;margin-top:clamp(18px,2.4vw,30px)}
.manifesto__sign span{font-family:var(--serif);font-style:italic;font-size:clamp(1.1rem,2vw,1.6rem);color:var(--gold-dk)}
.wave-mini{width:clamp(90px,14vw,180px);height:18px}
.wave-mini path{stroke-dasharray:240;stroke-dashoffset:240}

/* =========================================================
   GALERÍA (scroll horizontal)
   ========================================================= */
.collage{background:var(--ink);color:var(--paper);padding:clamp(60px,9vw,120px) var(--pad) clamp(70px,10vw,140px)}
.collage__head{text-align:center;margin-bottom:clamp(36px,5vw,68px)}
.collage__h{color:var(--paper)}
.collage__grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(6,1fr);
  grid-auto-rows:minmax(0,auto);gap:clamp(14px,1.8vw,26px)}
.cfig{position:relative;overflow:hidden;background:#1a1a1a;will-change:transform;transform:translateZ(0)}
.cfig img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--e);backface-visibility:hidden}
.cfig:hover img{transform:scale(1.05)}
.cfig::after{content:"";position:absolute;left:0;right:0;bottom:0;height:46%;
  background:linear-gradient(transparent,rgba(8,8,8,.8));pointer-events:none}
.cfig figcaption{position:absolute;left:18px;bottom:16px;z-index:2;color:#fff;
  font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;font-weight:500;
  display:flex;align-items:baseline;gap:.6rem}
.cfig figcaption b{color:var(--gold-lt);font-family:var(--serif);font-size:1.3rem;font-weight:400}
/* layout collage (pinwheel editorial, equilibrado) */
.collage__grid{grid-template-columns:repeat(10,1fr)}
.c1{grid-column:1/5;grid-row:1;aspect-ratio:4/5;margin-top:clamp(20px,3vw,42px)}
.c2{grid-column:5/11;grid-row:1;aspect-ratio:3/2}
.c3{grid-column:1/7;grid-row:2;aspect-ratio:3/2}
.c4{grid-column:7/11;grid-row:2;aspect-ratio:4/5;margin-top:clamp(-42px,-3vw,-20px)}
@media(max-width:760px){
  .collage__grid{grid-template-columns:repeat(2,1fr)}
  .c1,.c2,.c3,.c4{grid-column:auto;grid-row:auto;margin-top:0;aspect-ratio:1/1}
  .c1{grid-column:1/3;aspect-ratio:4/3}
}

/* =========================================================
   SERVICIOS (lista con imagen al cursor)
   ========================================================= */
.services{padding:clamp(70px,11vw,150px) var(--pad);background:var(--white)}
.services__head{display:flex;justify-content:space-between;align-items:flex-end;gap:1.5rem;flex-wrap:wrap;
  margin-bottom:clamp(28px,4vw,56px)}
.services__grid{display:grid;grid-template-columns:1.35fr .65fr;gap:clamp(30px,5vw,72px);align-items:start}
.srvlist{list-style:none;border-top:1px solid var(--line)}
.srvrow{position:relative;display:grid;grid-template-columns:54px 1fr auto;align-items:center;gap:clamp(14px,2.5vw,32px);
  padding:clamp(24px,3.2vw,44px) 0;border-bottom:1px solid var(--line);cursor:pointer;
  transition:padding-left .55s var(--e)}
.srvrow:hover,.srvrow.is-active{padding-left:18px}
.srvrow:hover .srvrow__t,.srvrow.is-active .srvrow__t{color:var(--gold-dk)}
.srvrow__n{font-family:var(--serif);font-size:1.05rem;color:var(--gold);align-self:start;padding-top:.5rem}
.srvrow__t{font-family:var(--serif);font-weight:400;font-size:clamp(1.5rem,3vw,2.6rem);line-height:1.05;transition:color .4s}
.srvrow__d{font-size:.9rem;color:var(--mut);max-width:48ch;margin-top:.6rem;line-height:1.6}
.srvrow__plus{font-family:var(--serif);font-size:1.7rem;color:var(--gold);transition:transform .5s var(--e);align-self:start;padding-top:.3rem}
.srvrow:hover .srvrow__plus,.srvrow.is-active .srvrow__plus{transform:rotate(90deg)}
/* preview lateral */
.srvpreview{position:sticky;top:120px;aspect-ratio:4/5;overflow:hidden;background:var(--paper-2)}
.srvpreview img{width:100%;height:100%;object-fit:cover;transition:opacity .25s var(--e),transform 1.2s var(--e)}
.srvpreview.swap img{opacity:0}
.srvpreview:not(.swap) img{transform:scale(1.02)}
@media(max-width:900px){.services__grid{grid-template-columns:1fr}.srvpreview{display:none}}
@media(max-width:760px){.srvrow{grid-template-columns:40px 1fr auto}}

/* =========================================================
   LUXURY
   ========================================================= */
.luxury{display:grid;grid-template-columns:1.05fr 1fr;background:var(--ink);color:var(--paper);
  align-items:stretch;height:clamp(520px,88vh,820px);overflow:hidden}
.luxury__media{position:relative;overflow:hidden;height:100%}
.luxury__media img{width:100%;height:100%;object-fit:cover}
.luxury__tag{position:absolute;top:22px;left:22px;font-family:var(--serif);font-style:italic;font-size:1.1rem;
  color:var(--ink);background:var(--gold);padding:.3rem 1rem;border-radius:30px}
.luxury__txt{padding:clamp(40px,5vw,90px) var(--pad);align-self:center}
.luxury__h{font-family:var(--serif);font-weight:300;font-size:clamp(2.1rem,4.6vw,3.9rem);line-height:1.04;color:var(--paper);margin-bottom:1.4rem}
.luxury__h em{color:var(--gold-lt)}
.luxury__txt .p{color:rgba(246,243,236,.82);margin-bottom:2rem}
@media(max-width:860px){.luxury{grid-template-columns:1fr;height:auto}.luxury__media{height:60vw;min-height:320px}}

/* =========================================================
   CIFRAS
   ========================================================= */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border-bottom:1px solid var(--line)}
.stat{background:var(--paper);padding:clamp(40px,6vw,80px) clamp(16px,2vw,30px);text-align:center}
.stat b{display:block;font-family:var(--serif);font-weight:400;font-size:clamp(2.6rem,6vw,5rem);line-height:1;color:var(--ink)}
.stat:nth-child(3) b,.stat:nth-child(4) b{font-style:italic;color:var(--gold-dk)}
.stat span{display:block;margin-top:.8rem;font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--mut)}
@media(max-width:760px){.stats{grid-template-columns:repeat(2,1fr)}}

/* =========================================================
   EQUIPO
   ========================================================= */
.team{padding:clamp(70px,11vw,150px) var(--pad);display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,6vw,90px);align-items:start}
.team__lead .h2{margin-bottom:1.6rem}
.team__list{list-style:none}
.team__list li{position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:baseline;gap:1.2rem;
  padding:1.5rem .4rem;border-bottom:1px solid var(--line);transition:padding-left .45s var(--e)}
.team__list li:first-child{border-top:1px solid var(--line)}
.team__list li:hover{padding-left:1.2rem}
.team__list b{font-family:var(--serif);font-size:.9rem;color:var(--gold);font-weight:400}
.team__list span{font-family:var(--serif);font-size:clamp(1.4rem,2.6vw,2.1rem);font-weight:400;transition:color .35s}
.team__list li:hover span{color:var(--gold-dk)}
.team__list i{font-style:normal;font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--mut);text-align:right}
@media(max-width:860px){.team{grid-template-columns:1fr}}
@media(max-width:480px){.team__list li{grid-template-columns:auto 1fr}.team__list i{grid-column:2;text-align:left;margin-top:.2rem}}

/* =========================================================
   CTA / CITA
   ========================================================= */
.cta{position:relative;padding:clamp(90px,15vw,200px) var(--pad);text-align:center;color:var(--paper);overflow:hidden}
.cta__bg{position:absolute;inset:0;z-index:-2}
.cta__bg img{width:100%;height:100%;object-fit:cover}
.cta__bg::after{content:"";position:absolute;inset:0;background:
  linear-gradient(180deg,rgba(8,8,8,.7) 0%,rgba(8,8,8,.66) 55%,rgba(12,12,12,1) 100%)}
.cta__inner{position:relative;z-index:1}
.cta__title{font-family:var(--serif);font-weight:300;line-height:.95;font-size:clamp(2.8rem,10vw,7.5rem);letter-spacing:-.02em;margin-bottom:2.4rem}
.cta__title span{display:block}
.cta__title em{color:var(--gold-lt)}
.cta__actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-bottom:2.4rem}
.cta__info{font-size:.86rem;letter-spacing:.04em;color:rgba(246,243,236,.82);line-height:2}
.cta__info a{border-bottom:1px solid var(--gold)}

/* =========================================================
   FOOTER
   ========================================================= */
.foot{background:var(--ink);color:var(--paper);padding:clamp(40px,6vw,70px) var(--pad) 2rem;overflow:hidden}
.foot__big{font-family:var(--serif);font-style:italic;font-weight:300;font-size:clamp(4rem,18vw,16rem);
  line-height:.9;margin-bottom:clamp(20px,4vw,40px);letter-spacing:-.02em;white-space:nowrap;
  background:linear-gradient(180deg,#3a352a,#181712);-webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent}
.foot__cols{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;padding-bottom:clamp(28px,5vw,52px);border-bottom:1px solid rgba(246,243,236,.14)}
.foot__cols span{display:block;font-size:.64rem;letter-spacing:.24em;text-transform:uppercase;color:var(--gold-lt);margin-bottom:1rem}
.foot__cols p{color:rgba(246,243,236,.8);font-size:.92rem;line-height:1.9}
.foot__cols a:hover{color:var(--gold-lt)}
.foot__bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.6rem;margin-top:1.6rem;font-size:.68rem;letter-spacing:.08em;color:rgba(246,243,236,.5)}
.foot__by a{color:var(--gold-lt)}
@media(max-width:680px){.foot__cols{grid-template-columns:1fr;gap:1.6rem}}

/* =========================================================
   ANIMATION HOOKS
   ========================================================= */
.js [data-fade]{opacity:0;transform:translateY(22px)}
.js [data-reveal]{opacity:0;transform:translateY(44px)}
.js .cfig{opacity:0}
.ln-wrap{display:block;overflow:hidden}
.ln-wrap>span{display:block;transform:translateY(110%)}
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important}
  .js [data-fade],.js [data-reveal],.js .cfig,.hero__pre,.hero__tag,.hero__scroll{opacity:1;transform:none}
  .ln-wrap>span{transform:none}
  .veil{display:none}
}
