/* ============================================================
   DOOR.64 — style.css
   Univers : noir profond, crème, doré, bois. Club privé.
   Règle d'or : TOUT le contenu est visible par défaut (no-js).
   Les états "cachés pour animation" n'existent que sous html.js
   ============================================================ */

:root{
  --noir:#0A0807;
  --ink:#14100C;
  --creme:#F2EDE3;
  --creme-dim:#CFC8B8;
  --or:#C9A24B;
  --or-clair:#E3C887;
  --or-sombre:#8A6C2E;
  --bois:#3B2A1A;
  --bois-soft:#5C432C;
  --bordeaux:#6E2012;
  --ease:cubic-bezier(0.16,1,0.3,1);
  --ease-soft:cubic-bezier(0.4,0,0.1,1);
  --maxw:1440px;
  --pad:clamp(20px,5vw,80px);
}

*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;scroll-behavior:smooth}
body{
  background:var(--noir);
  color:var(--creme);
  font-family:'Inter',system-ui,sans-serif;
  font-weight:300;
  line-height:1.55;
  overflow-x:hidden;
}
/* Curseur custom uniquement si JS actif + souris précise */
html.js body{cursor:none}
@media (pointer:coarse){html.js body{cursor:auto}}

a{color:inherit;text-decoration:none}
img,svg,canvas{display:block;max-width:100%}
::selection{background:var(--or);color:var(--noir)}

/* ---------- Typographie ---------- */
.serif{font-family:'Fraunces',Georgia,serif}
.display{font-family:'Fraunces',Georgia,serif;font-weight:500;letter-spacing:-0.015em;line-height:1.02}
h2{font-family:'Fraunces',Georgia,serif;font-weight:500;font-size:clamp(1.9rem,4.4vw,3.6rem);line-height:1.08;letter-spacing:-0.01em}
.sec-num{font-family:'Archivo',sans-serif;font-weight:600;font-size:.72rem;letter-spacing:.34em;text-transform:uppercase;color:var(--or)}
.sec-head{margin-bottom:clamp(2rem,4vw,3.5rem)}
.sec-head h2{margin-top:1.1rem}
.sec-sub{max-width:46ch;color:var(--creme-dim);margin-top:1.2rem;font-size:.95rem}

/* ---------- Curseur personnalisé ---------- */
.cursor,.cursor-dot{display:none}
html.js .cursor,html.js .cursor-dot{display:block;position:fixed;top:0;left:0;pointer-events:none;z-index:9999;mix-blend-mode:difference}
html.js .cursor{width:34px;height:34px;border:1px solid var(--creme);border-radius:50%;transform:translate(-50%,-50%);transition:width .35s var(--ease),height .35s var(--ease),background .35s var(--ease),opacity .3s}
html.js .cursor-dot{width:5px;height:5px;background:var(--creme);border-radius:50%;transform:translate(-50%,-50%)}
html.js .cursor.is-hover{width:74px;height:74px;background:rgba(242,237,227,.12);border-color:transparent}
@media (pointer:coarse){html.js .cursor,html.js .cursor-dot{display:none}}

/* ---------- Préchargeur ----------
   Caché par défaut (no-js) ; sous html.js il s'affiche, MAIS un
   failsafe CSS pur l'évacue après 3,5 s même si script.js plante. */
#loader{display:none}
html.js #loader{
  display:flex;position:fixed;inset:0;z-index:10000;background:var(--noir);
  align-items:center;justify-content:center;flex-direction:column;
  animation:loaderFailsafe .8s var(--ease) 3.5s forwards;
}
html.js #loader.done{animation:loaderOut .7s var(--ease) forwards}
@keyframes loaderFailsafe{to{transform:translateY(-100%);opacity:0;visibility:hidden}}
@keyframes loaderOut{to{transform:translateY(-100%);opacity:0;visibility:hidden}}
#loader .l-logo{font-family:'Fraunces',Georgia,serif;font-weight:500;font-size:clamp(2rem,7vw,4.5rem);letter-spacing:-.02em;color:var(--creme);opacity:0;animation:loaderIn 1s var(--ease) .1s forwards}
#loader .l-logo .dot{color:var(--or)}
#loader .l-sub{font-family:'Archivo',sans-serif;font-size:.7rem;letter-spacing:.4em;text-transform:uppercase;color:var(--or);margin-top:1.2rem;opacity:0;animation:loaderIn 1s var(--ease) .35s forwards}
@keyframes loaderIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
#loader .l-bar{position:absolute;bottom:8%;left:50%;transform:translateX(-50%);width:min(220px,40vw);height:1px;background:rgba(242,237,227,.18)}
#loader .l-bar span{position:absolute;inset:0;width:0;background:var(--or);transition:width .2s linear}
#loader .l-pct{position:absolute;bottom:calc(8% + 18px);left:50%;transform:translateX(-50%);font-family:'Archivo';font-size:.65rem;letter-spacing:.3em;color:var(--creme-dim)}

/* ---------- Navigation ---------- */
#nav{
  position:fixed;top:0;left:0;right:0;z-index:900;
  display:flex;align-items:center;justify-content:space-between;
  padding:1.1rem var(--pad);
  mix-blend-mode:difference;
}
#nav .brand{font-family:'Fraunces',Georgia,serif;font-weight:500;font-size:1.25rem;letter-spacing:-.01em}
#nav .brand .dot{color:var(--or)}
.nav-links{display:flex;gap:2.2rem}
.nav-links a{font-family:'Archivo',sans-serif;font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;opacity:.85;transition:opacity .3s}
.nav-links a:hover{opacity:1}
.nav-cta{
  font-family:'Archivo',sans-serif;font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;
  border:1px solid rgba(242,237,227,.4);border-radius:99px;padding:.65rem 1.3rem;
  transition:background .35s var(--ease),color .35s var(--ease),border-color .35s;
}
.nav-cta:hover{background:var(--creme);color:var(--noir);border-color:var(--creme)}
@media (max-width:760px){.nav-links{display:none}}

/* ---------- Sections ---------- */
section{position:relative}
.wrap{max-width:var(--maxw);margin:0 auto;padding:clamp(5rem,11vw,10rem) var(--pad)}

/* ---------- HERO ---------- */
#hero{min-height:100svh;display:flex;align-items:center;justify-content:center;overflow:hidden}
.hero-glow{
  position:absolute;width:70vmax;height:70vmax;border-radius:50%;
  background:radial-gradient(circle,rgba(201,162,75,.16),rgba(201,162,75,.05) 40%,transparent 70%);
  top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;
}
.board-wrap{position:absolute;inset:-6%;display:flex;align-items:center;justify-content:center;opacity:.5}
#boardHolder{width:min(1100px,100%);height:100%;}
#boardHolder svg{width:100%;height:100%}
.hero-vignette{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 55%,transparent 30%,rgba(10,8,7,.88) 78%),linear-gradient(180deg,rgba(10,8,7,.5),transparent 25%,transparent 70%,var(--noir))}
.hero-content{position:relative;z-index:2;text-align:center;padding:0 var(--pad)}
.hero-eyebrow{font-family:'Archivo',sans-serif;font-weight:600;font-size:.68rem;letter-spacing:.4em;text-transform:uppercase;color:var(--or);margin-bottom:1.6rem}
#heroTitle{
  font-family:'Fraunces',Georgia,serif;font-weight:500;
  font-size:clamp(4rem,14vw,11.5rem);
  line-height:.95;letter-spacing:-0.02em;color:var(--creme);
}
#heroTitle .dot{color:var(--or);font-style:italic;font-weight:400}
.hero-sub{margin-top:1.6rem;font-family:'Fraunces',Georgia,serif;font-style:italic;font-weight:300;font-size:clamp(1rem,2.2vw,1.45rem);color:var(--creme-dim)}
.hero-actions{margin-top:2.6rem;display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}
.scroll-hint{position:absolute;bottom:2rem;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:.7rem;font-family:'Archivo';font-size:.6rem;letter-spacing:.3em;text-transform:uppercase;color:var(--creme-dim)}
.scroll-hint .line{width:1px;height:44px;background:linear-gradient(var(--or),transparent)}
html.js .scroll-hint .line{animation:scrollPulse 2.2s var(--ease-soft) infinite}
@keyframes scrollPulse{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}}

/* ---------- Boutons ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  font-family:'Archivo',sans-serif;font-size:.72rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;
  padding:1.05rem 2.1rem;border-radius:99px;border:1px solid rgba(242,237,227,.35);
  color:var(--creme);position:relative;overflow:hidden;
  transition:color .4s var(--ease),border-color .4s,background .4s var(--ease),transform .4s var(--ease);
}
.btn:hover{border-color:var(--or);color:var(--or-clair)}
.btn.solid{background:var(--or);border-color:var(--or);color:var(--noir)}
.btn.solid:hover{background:var(--or-clair);border-color:var(--or-clair);color:var(--noir)}

/* ---------- Révélations (gérées par JS ; visibles par défaut) ---------- */
.reveal-line{overflow:hidden}
.reveal-line>span{display:inline-block}
html.js .fade-up{opacity:0;transform:translateY(40px);transition:opacity 1s var(--ease),transform 1s var(--ease)}
html.js .fade-up.in{opacity:1;transform:none}
/* Filet de sécurité pur CSS : si l'IntersectionObserver ne tourne jamais,
   tout réapparaît après 4 s. */
html.js .fade-up{animation:fadeFailsafe .1s linear 4s forwards}
@keyframes fadeFailsafe{to{opacity:1;transform:none}}

/* ---------- CONCEPT ---------- */
#concept{background:linear-gradient(180deg,var(--noir),var(--ink) 50%,var(--noir))}
.concept-grid{display:grid;grid-template-columns:minmax(180px,.8fr) 1.6fr;gap:clamp(2rem,6vw,6rem);align-items:center}
.big-64{
  font-family:'Fraunces',Georgia,serif;font-weight:600;font-style:italic;
  font-size:clamp(7rem,18vw,17rem);line-height:.85;
  background:linear-gradient(160deg,var(--or-clair),var(--or) 45%,var(--or-sombre));
  -webkit-background-clip:text;background-clip:text;color:transparent;
  display:block;
}
.concept-copy{max-width:54ch;color:var(--creme-dim);margin-top:1.4rem;font-size:1rem}
.concept-copy strong{color:var(--creme);font-weight:500}
.concept-copy em{color:var(--or-clair);font-style:italic}
.concept-pillars{display:flex;gap:clamp(1.5rem,4vw,3.5rem);margin-top:2.6rem;border-top:1px solid rgba(242,237,227,.12);padding-top:1.8rem}
.pillar{display:flex;flex-direction:column;gap:.4rem}
.pillar .p-num{font-family:'Fraunces',serif;font-style:italic;color:var(--or);font-size:1.1rem}
.pillar .p-lbl{font-family:'Archivo';font-size:.68rem;letter-spacing:.26em;text-transform:uppercase;color:var(--creme-dim)}
@media (max-width:860px){.concept-grid{grid-template-columns:1fr}.big-64{font-size:clamp(6rem,28vw,10rem)}}

/* ---------- EXPÉRIENCE ---------- */
.exp-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(2.5rem,6vw,6rem);align-items:center}
.exp-lines p{font-family:'Fraunces',Georgia,serif;font-weight:400;font-size:clamp(1.7rem,3.6vw,3rem);line-height:1.18}
.exp-lines .em{font-style:italic;color:var(--or)}
.exp-copy{max-width:52ch;color:var(--creme-dim);font-size:.98rem;margin-top:2.4rem}
.exp-copy .lead{color:var(--creme);font-weight:400}
.exp-visual{border-radius:8px;overflow:hidden;aspect-ratio:4/5;border:1px solid rgba(201,162,75,.18)}
.exp-visual canvas{width:100%;height:100%;object-fit:cover}
@media (max-width:860px){.exp-grid{grid-template-columns:1fr}.exp-visual{aspect-ratio:16/10}}

/* ---------- Marquee ---------- */
.marquee{overflow:hidden;border-top:1px solid rgba(242,237,227,.1);border-bottom:1px solid rgba(242,237,227,.1);padding:1.4rem 0;background:var(--ink)}
.marquee .track{display:flex;gap:2.5rem;white-space:nowrap;width:max-content}
.marquee span{font-family:'Fraunces',Georgia,serif;font-size:clamp(1.3rem,3vw,2.2rem);color:var(--creme-dim)}
.marquee span.f{font-style:italic;color:var(--or)}
html.js .marquee .track{animation:mq 26s linear infinite}
@keyframes mq{to{transform:translateX(-50%)}}

/* ---------- LE CERCLE ---------- */
.circle-track{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem}
.cclub{
  position:relative;border:1px solid rgba(242,237,227,.1);border-radius:8px;overflow:hidden;
  aspect-ratio:3/4.1;display:flex;flex-direction:column;justify-content:flex-end;
  transition:border-color .5s var(--ease),transform .6s var(--ease);
  background:var(--ink);
}
.cclub:hover{border-color:rgba(201,162,75,.5);transform:translateY(-6px)}
.cclub canvas.grad{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.85;transition:transform .8s var(--ease)}
.cclub:hover canvas.grad{transform:scale(1.06)}
.cclub .num{position:absolute;top:1rem;right:1.1rem;font-family:'Fraunces',serif;font-style:italic;color:rgba(242,237,227,.55);font-size:.95rem;z-index:2}
.cclub .cc-body{position:relative;z-index:2;padding:1.2rem;background:linear-gradient(transparent,rgba(10,8,7,.92) 55%)}
.cclub .cc-tag{font-family:'Archivo';font-size:.6rem;letter-spacing:.28em;text-transform:uppercase;color:var(--or);display:block;transition:.5s var(--ease)}
html.js .cclub .cc-tag{opacity:0;transform:translateY(8px)}
html.js .cclub:hover .cc-tag{opacity:1;transform:none}
.cclub h3{font-family:'Fraunces',Georgia,serif;font-weight:500;font-size:1.15rem;margin-top:.4rem;line-height:1.2}
.cclub p{font-size:.82rem;color:var(--creme-dim);margin-top:.45rem;transition:.55s var(--ease)}
html.js .cclub p{max-height:0;overflow:hidden;opacity:0}
html.js .cclub:hover p{max-height:5em;opacity:1}
@media (max-width:1100px){.circle-track{grid-template-columns:repeat(3,1fr)}}
@media (max-width:680px){.circle-track{grid-template-columns:repeat(2,1fr)}.cclub p{max-height:none;opacity:1}html.js .cclub p{max-height:none;opacity:1}html.js .cclub .cc-tag{opacity:1;transform:none}}
@media (max-width:430px){.circle-track{grid-template-columns:1fr}.cclub{aspect-ratio:16/9}}

/* ---------- PLATEAU INTERACTIF ---------- */
#jeu{background:linear-gradient(180deg,var(--noir),#120D08 50%,var(--noir))}
.play-head{text-align:center;margin-bottom:3rem}
.play-title{font-size:clamp(2rem,5.5vw,4.4rem);margin-top:1rem}
.play-stage{
  position:relative;max-width:980px;margin:0 auto;aspect-ratio:9/5;
  border:1px solid rgba(201,162,75,.25);border-radius:10px;overflow:hidden;
  background:linear-gradient(160deg,#1A120A,#241709 55%,#150E07);
  box-shadow:0 40px 120px rgba(0,0,0,.5), inset 0 0 80px rgba(0,0,0,.45);
}
#playBoardHolder{width:100%;height:100%}
#playBoardHolder svg{width:100%;height:100%}
.dice-readout{position:absolute;top:1rem;right:1rem;display:flex;gap:.6rem;z-index:3}
.die{
  width:44px;height:44px;border-radius:9px;background:var(--creme);position:relative;
  box-shadow:0 6px 18px rgba(0,0,0,.45), inset 0 -3px 0 rgba(0,0,0,.15);
  transition:transform .4s var(--ease);
}
.die:hover{transform:rotate(12deg)}
.die i{position:absolute;width:7px;height:7px;border-radius:50%;background:var(--noir);transform:translate(-50%,-50%)}
.play-caption{text-align:center;margin-top:1.6rem;font-family:'Fraunces',serif;font-style:italic;color:var(--creme-dim);font-size:1.05rem;transition:opacity .25s}
@media (max-width:680px){.play-stage{aspect-ratio:4/3}.die{width:34px;height:34px}.die i{width:5px;height:5px}}

/* ---------- ÉVÉNEMENTS ---------- */
.events-list{border-top:1px solid rgba(242,237,227,.12)}
.event-row{
  display:grid;grid-template-columns:3.5rem 1fr auto 2rem;align-items:center;gap:1.2rem;
  padding:1.6rem .4rem;border-bottom:1px solid rgba(242,237,227,.12);
  transition:background .4s var(--ease),padding .4s var(--ease);
}
.event-row:hover{background:rgba(201,162,75,.05);padding-left:1rem}
.event-row .e-idx{font-family:'Fraunces',serif;font-style:italic;color:var(--or);font-size:.95rem}
.event-row .e-name{font-family:'Fraunces',Georgia,serif;font-weight:500;font-size:clamp(1.25rem,2.6vw,1.9rem)}
.event-row .e-meta{font-family:'Archivo';font-size:.68rem;letter-spacing:.22em;text-transform:uppercase;color:var(--creme-dim)}
.event-row .e-arrow{font-size:1.2rem;color:var(--or);transition:.5s var(--ease)}
html.js .event-row .e-arrow{opacity:0;transform:translateX(-12px)}
html.js .event-row:hover .e-arrow{opacity:1;transform:none}
.e-hoverimg{position:fixed;width:300px;height:200px;border-radius:6px;overflow:hidden;pointer-events:none;opacity:0;z-index:50;transform:translate(-50%,-50%) scale(.9);transition:opacity .4s,transform .4s;border:1px solid rgba(201,162,75,.35)}
@media (max-width:680px){.event-row{grid-template-columns:2.4rem 1fr;grid-template-rows:auto auto}.event-row .e-meta{grid-column:2}.event-row .e-arrow{display:none}}

/* ---------- GALERIE ---------- */
.masonry{columns:4 220px;column-gap:1rem}
.masonry .tile{break-inside:avoid;margin-bottom:1rem;position:relative;border-radius:6px;overflow:hidden;border:1px solid rgba(242,237,227,.08)}
.masonry .tile .inner{transition:transform .7s var(--ease)}
.masonry .tile:hover .inner{transform:scale(1.05)}
.masonry .tile canvas{width:100%}
.masonry .tile .cap{
  position:absolute;left:0;bottom:0;right:0;padding:1rem;
  font-family:'Archivo';font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;color:var(--creme);
  background:linear-gradient(transparent,rgba(10,8,7,.85));transition:.5s var(--ease);
}
html.js .masonry .tile .cap{opacity:0;transform:translateY(10px)}
html.js .masonry .tile:hover .cap{opacity:1;transform:none}
@media (pointer:coarse){html.js .masonry .tile .cap{opacity:1;transform:none}}

/* ---------- MANIFESTE ---------- */
#manifeste .wrap{max-width:1000px}
.manifesto-text{
  font-family:'Fraunces',Georgia,serif;font-weight:400;
  font-size:clamp(1.6rem,3.6vw,2.9rem);line-height:1.35;text-align:center;
}
.manifesto-text .w{color:rgba(242,237,227,.22);transition:color .4s}
.manifesto-text .w.lit{color:var(--creme)}
.manifesto-text .w.accent.lit{color:var(--or);font-style:italic}
html.no-js .manifesto-text{color:var(--creme)}

/* ---------- ADHÉSION ---------- */
#adhesion{background:linear-gradient(180deg,var(--noir),var(--ink))}
#adhesion .wrap{text-align:center;max-width:880px}
.adhesion-title{margin-top:1.5rem}
.door-scene{
  position:relative;width:min(210px,52vw);aspect-ratio:10/16;margin:2.5rem auto 0;
  perspective:900px;
}
html.js .door-scene{cursor:none}
.door-frame{position:absolute;inset:0;border:2px solid var(--bois-soft);border-radius:4px 4px 0 0;background:var(--ink)}
.door-light{position:absolute;inset:6px;background:radial-gradient(circle at 50% 40%,var(--or-clair),var(--or-sombre) 75%);opacity:0;transition:opacity 1.2s var(--ease)}
html.no-js .door-light{opacity:.85}
.door-scene.open .door-light{opacity:.9}
.door-panel{
  position:absolute;inset:6px;background:linear-gradient(170deg,var(--bois-soft),var(--bois) 60%,#2A1D10);
  transform-origin:left center;transition:transform 1.2s var(--ease);
  display:flex;align-items:center;justify-content:center;
  border-radius:2px 2px 0 0;
}
html.no-js .door-panel{transform:rotateY(-58deg)}
.door-scene.open .door-panel{transform:rotateY(-58deg)}
.door-panel .d64{font-family:'Fraunces',serif;font-style:italic;font-size:2rem;color:var(--or);opacity:.9}
.door-panel .knob{position:absolute;right:10px;top:50%;width:9px;height:9px;border-radius:50%;background:var(--or);box-shadow:0 0 12px rgba(201,162,75,.7)}
.door-hint{margin-top:1.2rem;font-family:'Archivo';font-size:.62rem;letter-spacing:.3em;text-transform:uppercase;color:var(--creme-dim)}
.m-sub{max-width:46ch;margin:1.4rem auto 0;color:var(--creme-dim)}
.m-form{margin-top:2.6rem;display:grid;grid-template-columns:1fr 1fr;gap:1rem;text-align:left}
.m-form input{
  background:transparent;border:1px solid rgba(242,237,227,.22);border-radius:6px;
  color:var(--creme);font-family:'Inter',sans-serif;font-size:.92rem;padding:1.05rem 1.2rem;
  transition:border-color .35s;width:100%;
}
.m-form input::placeholder{color:rgba(207,200,184,.55)}
.m-form input:focus{outline:none;border-color:var(--or)}
.m-form input[name="ville"]{grid-column:1/-1}
.m-form button{grid-column:1/-1;justify-self:center;min-width:240px}
.m-form .hp{display:none}
@media (max-width:620px){.m-form{grid-template-columns:1fr}}

/* ---------- FOOTER ---------- */
footer{border-top:1px solid rgba(242,237,227,.1);background:var(--noir)}
footer .wrap{padding-top:clamp(4rem,8vw,7rem);padding-bottom:2.5rem}
.footer-cta{text-align:center;margin-bottom:clamp(3.5rem,7vw,6rem)}
.footer-cta .big{
  font-family:'Fraunces',Georgia,serif;font-weight:500;display:inline-block;
  font-size:clamp(2.2rem,7.5vw,6.2rem);letter-spacing:-0.015em;line-height:1;
  transition:color .4s var(--ease);
}
.footer-cta .big:hover{color:var(--or-clair)}
.footer-cta .dot{color:var(--or)}
.footer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;font-size:.85rem;color:var(--creme-dim)}
.footer-grid .col{display:flex;flex-direction:column;gap:.55rem}
.footer-grid .lab{font-family:'Archivo';font-size:.62rem;letter-spacing:.28em;text-transform:uppercase;color:var(--or);margin-bottom:.4rem}
.footer-grid a:hover{color:var(--creme)}
.footer-bottom{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-top:3.5rem;padding-top:1.6rem;border-top:1px solid rgba(242,237,227,.08);font-size:.72rem;color:rgba(207,200,184,.6)}
.footer-bottom .ig{font-family:'Fraunces',serif;font-style:italic;color:var(--or)}
@media (max-width:680px){.footer-grid{grid-template-columns:1fr 1fr}}

/* ---------- Accessibilité / mouvement réduit ---------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  html.js body{cursor:auto}
  html.js .cursor,html.js .cursor-dot{display:none}
  html.js #loader{animation-delay:.6s}
  html.js .marquee .track{animation:none}
  html.js .scroll-hint .line{animation:none}
  .reveal-line>span{transform:none!important}
  html.js .fade-up{opacity:1!important;transform:none!important;transition:none}
  *{transition-duration:.01ms!important}
}
