/* ============================================================
   HYL'S STUDIO · base.css
   Socle commun a toutes les pages (accueil + pages legales) :
   tokens, reset, conteneur, logo de nav, pied de page unifie.
   Charge en premier ; home.css et legal.css completent/surchargent.
   ============================================================ */

/* ---- Polices auto-hebergees (RGPD : plus aucun appel a Google Fonts) ----
   Fichiers dans /assets/fonts/ · subset latin (couvre les accents FR).
   font-display:swap = texte visible tout de suite, pas d'ecran blanc.   */
@font-face{
  font-family:"Anton";
  font-style:normal;font-weight:400;font-display:swap;
  src:url("../fonts/anton-400.woff2") format("woff2");
}
@font-face{
  font-family:"Instrument Serif";
  font-style:normal;font-weight:400;font-display:swap;
  src:url("../fonts/instrument-serif-400.woff2") format("woff2");
}
@font-face{
  font-family:"Instrument Serif";
  font-style:italic;font-weight:400;font-display:swap;
  src:url("../fonts/instrument-serif-400-italic.woff2") format("woff2");
}
@font-face{
  font-family:"Plus Jakarta Sans";
  font-style:normal;font-weight:400;font-display:swap;
  src:url("../fonts/plus-jakarta-sans-400.woff2") format("woff2");
}
@font-face{
  font-family:"Plus Jakarta Sans";
  font-style:normal;font-weight:500;font-display:swap;
  src:url("../fonts/plus-jakarta-sans-500.woff2") format("woff2");
}
@font-face{
  font-family:"Plus Jakarta Sans";
  font-style:normal;font-weight:600;font-display:swap;
  src:url("../fonts/plus-jakarta-sans-600.woff2") format("woff2");
}
@font-face{
  font-family:"Plus Jakarta Sans";
  font-style:normal;font-weight:700;font-display:swap;
  src:url("../fonts/plus-jakarta-sans-700.woff2") format("woff2");
}

:root{
  --ink:#08090C;
  --ink-2:#0E1016;
  --bone:#F4F1EB;
  --bone-dim:#B8B4AA;
  --gold:#C8A24B;
  --gold-soft:#E0C888;
  --line:rgba(244,241,235,.12);
  --ff-display:"Anton","Arial Narrow",sans-serif;
  --ff-serif:"Instrument Serif",Georgia,serif;
  --ff-sans:"Plus Jakarta Sans",system-ui,sans-serif;
  --ease:cubic-bezier(.22,1,.36,1);
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
/* overflow-x:clip sur html ET body : sur mobile, un overflow-x:hidden pose
   uniquement sur body force body en "overflow:hidden auto" (conteneur de scroll)
   et casse la propagation vers le viewport, qui continue de scroller
   horizontalement. clip bloque le pan lateral sans creer de conteneur de scroll
   (ne gene ni le sticky ni le smooth-scroll Lenis). */
html{scroll-behavior:auto;-webkit-text-size-adjust:100%;overflow-x:clip}
body{
  font-family:var(--ff-sans);
  background:var(--ink);
  color:var(--bone);
  line-height:1.6;
  overflow-x:clip;
  -webkit-font-smoothing:antialiased;
}
img,video{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
::selection{background:var(--gold);color:var(--ink)}

/* Conteneur (les pages legales le resserrent a 880px via legal.css) */
.wrap{width:min(1240px,90vw);margin-inline:auto}

/* Logo de nav, partage par toutes les navs */
.nav__logo{font-family:var(--ff-display);font-size:1.15rem;letter-spacing:.04em;flex:0 0 auto}
.nav__logo b{color:var(--gold);font-weight:400}

/* ============ PIED DE PAGE UNIFIE ============ */
.foot{border-top:1px solid var(--line);background:#050609;color:var(--bone-dim);font-size:.84rem}
.foot__inner{display:flex;flex-wrap:wrap;gap:24px 40px;justify-content:space-between;align-items:flex-start;padding:44px 0}
.foot__logo{font-family:var(--ff-display);color:var(--bone);font-size:1.2rem}
.foot__logo b{color:var(--gold);font-weight:400}
.foot__tag{margin-top:8px;max-width:36ch}
.foot__note{margin-top:8px;max-width:42ch;font-size:.78rem;opacity:.75}
.foot__meta{text-align:right}
.foot__meta p{margin:6px 0 0}
.foot__meta p:first-child{margin:0}
.foot__legal{opacity:.65}
.foot__legal a{opacity:1}
.foot a{color:var(--bone-dim)}
.foot a:hover{color:var(--gold)}
@media(max-width:600px){.foot__inner{flex-direction:column}.foot__meta{text-align:left}}
