@import url('/fonts/fonts.css');

/*
  Biblyss, feuille unique.

  Le site reprend la palette de l'app : papier washi, encre, or. Pas de cadre
  visible, pas d'ombre portée, beaucoup de blanc. Quelqu'un peut ouvrir cette
  page au bureau ou dans le métro : elle doit avoir l'air d'un livre, pas d'une
  brochure de clinique.

  Aucune requête vers un serveur tiers, polices comprises. Ce n'est pas de la
  coquetterie : une app sur ce sujet ne peut pas envoyer l'adresse IP de ses
  visiteurs à Google au moment où ils lisent sa politique de confidentialité.
*/

:root {
  --papier: #f7f2e9;
  --papier-creux: #efe8da;
  --encre: #2a2520;
  --encre-douce: #6b6154;
  --encre-pale: #9a9083;
  --or: #b98f1f;
  --or-profond: #96741a;
  --or-voile: #f3e7c6;
  --trait: #e3dac6;
  --mesure: 34rem;
}

@media (prefers-color-scheme: dark) {
  :root {
    --papier: #17130d;
    --papier-creux: #1f1a12;
    --encre: #f0e9db;
    --encre-douce: #b3a894;
    --encre-pale: #7d7364;
    --or: #d9b44a;
    --or-profond: #e3c470;
    --or-voile: #382d12;
    --trait: #332b1c;
  }
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

body {
  margin: 0;
  background: var(--papier);
  color: var(--encre);
  font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-size: 1.0625rem;
  line-height: 1.72;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

.enveloppe {
  max-width: var(--mesure);
  margin: 0 auto;
  padding: 0 1.5rem;
}

/* ---------------------------------------------------------------- en-tête */

header.marque {
  padding: 5.5rem 0 1rem;
  text-align: center;
}

.mot {
  font-family: Fraunces, Georgia, serif;
  font-weight: 600;
  font-size: clamp(2.9rem, 11vw, 4.1rem);
  letter-spacing: -0.022em;
  line-height: 1;
  margin: 0;
}

.mot a {
  color: inherit;
  text-decoration: none;
}

.devise {
  font-family: Fraunces, Georgia, serif;
  font-size: 1.15rem;
  color: var(--or-profond);
  margin: 0.85rem 0 0;
  font-style: italic;
}

/* La veine d'or : un seul trait, la métaphore de l'app en une ligne. */
.veine {
  width: 100%;
  max-width: 12rem;
  height: 14px;
  margin: 2.2rem auto 0;
  display: block;
  overflow: visible;
}

.veine path {
  fill: none;
  stroke: var(--or);
  stroke-width: 2;
  stroke-linecap: round;
}

/* ---------------------------------------------------------------- contenu */

h1,
h2,
h3 {
  font-family: Fraunces, Georgia, serif;
  font-weight: 600;
  letter-spacing: -0.012em;
  line-height: 1.24;
}

h1 {
  font-size: clamp(1.85rem, 6vw, 2.4rem);
  margin: 0 0 1.4rem;
}

h2 {
  font-size: 1.42rem;
  margin: 3.4rem 0 0.9rem;
}

h3 {
  font-size: 1.08rem;
  margin: 2.2rem 0 0.5rem;
}

p {
  margin: 0 0 1.15rem;
}

.chapeau {
  font-size: 1.2rem;
  line-height: 1.66;
  color: var(--encre-douce);
}

.discret {
  color: var(--encre-douce);
  font-size: 0.95rem;
}

a {
  color: var(--or-profond);
  text-decoration-color: var(--trait);
  text-underline-offset: 0.18em;
}

a:hover {
  text-decoration-color: currentColor;
}

strong {
  font-weight: 600;
}

ul {
  padding-left: 1.15rem;
}

li {
  margin-bottom: 0.5rem;
}

/* Le bloc d'insistance : un filet d'or à gauche, jamais d'encadré. */
blockquote {
  margin: 2rem 0;
  padding: 0.15rem 0 0.15rem 1.3rem;
  border-left: 2px solid var(--or);
  font-family: Fraunces, Georgia, serif;
  font-size: 1.12rem;
  line-height: 1.62;
  color: var(--encre);
}

blockquote cite {
  display: block;
  margin-top: 0.55rem;
  font-family: Inter, sans-serif;
  font-size: 0.86rem;
  font-style: normal;
  color: var(--encre-pale);
}

section.bloc {
  padding-top: 0.4rem;
}

.retenue {
  background: var(--papier-creux);
  border-radius: 14px;
  padding: 1.35rem 1.5rem;
  margin: 2rem 0;
}

.retenue p:last-child {
  margin-bottom: 0;
}

.bientot {
  margin: 3.6rem 0 1rem;
  padding: 1.6rem 1.5rem;
  background: var(--or-voile);
  border: 1px solid var(--or);
  border-radius: 16px;
  text-align: center;
}

.bientot p:last-child {
  margin-bottom: 0;
}

/* -------------------------------------------------------------- pied */

footer {
  margin-top: 5rem;
  padding: 2.2rem 0 3.5rem;
  border-top: 1px solid var(--trait);
  text-align: center;
  font-size: 0.88rem;
  color: var(--encre-pale);
}

footer nav {
  margin-bottom: 0.9rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.4rem 1.1rem;
}

footer a {
  color: var(--encre-douce);
  text-decoration: none;
}

footer a:hover {
  text-decoration: underline;
}

.retour {
  display: inline-block;
  margin: 2.5rem 0 0;
  font-size: 0.9rem;
}

/* Tableaux des pages légales : lisibles sur téléphone, jamais de débordement. */
.tableau {
  overflow-x: auto;
  margin: 1.5rem 0;
}

table {
  border-collapse: collapse;
  width: 100%;
  font-size: 0.94rem;
}

th,
td {
  text-align: left;
  padding: 0.62rem 0.8rem 0.62rem 0;
  border-bottom: 1px solid var(--trait);
  vertical-align: top;
}

th {
  font-weight: 600;
  color: var(--encre-douce);
  font-size: 0.82rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

@media (max-width: 30rem) {
  header.marque {
    padding-top: 3.8rem;
  }
}
