/* ============================================================
   Double Impact — Base : polices, reset, typographie de fond
   Polices self-hostées WOFF2 (cf. fonts/). Licence Quadrant à
   confirmer (droit de self-host) — cf. brand-da.md.
   ============================================================ */

/* — @font-face — */
@font-face{
  font-family:"Open Sauce Two"; font-style:normal; font-weight:300;
  font-display:swap; src:url("../fonts/OpenSauceTwo-Light.woff2") format("woff2");
}
@font-face{
  font-family:"Open Sauce Two"; font-style:normal; font-weight:400;
  font-display:swap; src:url("../fonts/OpenSauceTwo-Regular.woff2") format("woff2");
}
@font-face{
  font-family:"Open Sauce Two"; font-style:normal; font-weight:500;
  font-display:swap; src:url("../fonts/OpenSauceTwo-Medium.woff2") format("woff2");
}
@font-face{
  font-family:"Open Sauce Two"; font-style:normal; font-weight:600;
  font-display:swap; src:url("../fonts/OpenSauceTwo-SemiBold.woff2") format("woff2");
}
@font-face{
  font-family:"Open Sauce Two"; font-style:normal; font-weight:700;
  font-display:swap; src:url("../fonts/OpenSauceTwo-Bold.woff2") format("woff2");
}
@font-face{
  font-family:"Quadrant"; font-style:normal; font-weight:400;
  font-display:swap; src:url("../fonts/Quadrant-Regular.woff2") format("woff2");
}
@font-face{
  font-family:"Quadrant"; font-style:italic; font-weight:400;
  font-display:swap; src:url("../fonts/Quadrant-Italic.woff2") format("woff2");
}

/* — Reset léger — */
*,*::before,*::after{ box-sizing:border-box; }
*{ margin:0; }
html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth; }
@media (prefers-reduced-motion:reduce){ html{ scroll-behavior:auto; } }

body{
  font-family:var(--font-text);
  font-weight:300;
  font-size:var(--fs-base);
  line-height:var(--lh-body);
  color:var(--ink);
  background:var(--paper);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
}

img,svg,video{ display:block; max-width:100%; height:auto; }
img{ background:var(--taupe); } /* évite le flash blanc clinique au load */

a{ color:inherit; text-decoration:none; }
button{ font:inherit; color:inherit; background:none; border:none; cursor:pointer; }
ul{ list-style:none; padding:0; }

/* — Titres : Quadrant — */
h1,h2,h3{
  font-family:var(--font-display);
  font-weight:400;
  line-height:var(--lh-tight);
  letter-spacing:var(--tracking-tight);
}

/* — Sur-titre / kicker en capitales espacées (Open Sauce) — */
.kicker{
  font-family:var(--font-text);
  font-weight:500;
  font-size:var(--fs-xs);
  letter-spacing:var(--tracking-label);
  text-transform:uppercase;
}

/* — Citation / ligne poétique en Quadrant italique — */
.serif-italic{ font-family:var(--font-display); font-style:italic; font-weight:400; }

/* — Accessibilité — */
:focus-visible{ outline:2px solid currentColor; outline-offset:3px; }
.visually-hidden{
  position:absolute; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0;
}
.skip-link{
  position:absolute; left:var(--sp-2); top:-3rem; z-index:200;
  background:var(--ink); color:var(--paper); padding:.6rem 1rem;
  transition:top var(--dur-fast) var(--ease);
}
.skip-link:focus{ top:var(--sp-2); }
