/* Design system « Le Seuil Scellé » (TOKENS.md, branding-hermitage), sans logo ni wordmark. */
@font-face{font-family:'IM Fell English';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/IMFellEnglish-400-normal.woff2) format('woff2')}
@font-face{font-family:'IM Fell English';font-style:italic;font-weight:400;font-display:swap;src:url(fonts/IMFellEnglish-400-italic.woff2) format('woff2')}
@font-face{font-family:'Spectral';font-style:normal;font-weight:300;font-display:swap;src:url(fonts/Spectral-300-normal.woff2) format('woff2')}
@font-face{font-family:'Spectral';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/Spectral-400-normal.woff2) format('woff2')}
@font-face{font-family:'Spectral';font-style:italic;font-weight:400;font-display:swap;src:url(fonts/Spectral-400-italic.woff2) format('woff2')}
@font-face{font-family:'Spectral';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/Spectral-600-normal.woff2) format('woff2')}

:root{
  --ink:#1A1A1A; --ink-soft:#2A2A2A; --paper:#FFFFFF; --paper-tint:#FAF8F5;
  --rule:#E5E0D8; --muted:#6B6B6B; --accent:#0F1E3D;
  --font-display:'IM Fell English','Times New Roman',serif;
  --font-body:'Spectral',Georgia,'Times New Roman',serif;
}
*{box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
html,body{margin:0;padding:0}
body{background:var(--paper);color:var(--ink-soft);font-family:var(--font-body);font-weight:300;font-size:17px;line-height:1.6}
.tete,.corps,.pied{max-width:760px;margin:0 auto;padding:0 16px}
.tete{padding-top:32px}
.surtitre{margin:0 0 6px;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
h1{font-family:var(--font-display);font-weight:400;font-size:28px;line-height:1.2;color:var(--ink);margin:0 0 14px}
h2{font-family:var(--font-display);font-weight:400;font-size:22px;color:var(--ink);margin:0 0 12px}
.filet{border:0;border-top:1.6pt solid var(--ink);margin:0 0 24px}
.filet::after{content:"";display:block;border-top:.5pt solid var(--ink);margin-top:2.2pt}
strong{font-weight:600;color:var(--ink)}
a{color:var(--accent)}
.pied{margin-top:48px;padding-bottom:40px;font-size:14px;color:var(--muted);border-top:.5pt solid var(--rule);padding-top:16px}
.discret{color:var(--muted);font-size:15px}
.bonjour{font-weight:600;color:var(--ink);margin-bottom:0}
.sortir{margin:0 0 18px}
.carte{background:var(--paper-tint);border:1px solid var(--rule);padding:20px 16px;margin:24px 0}
.etroite{max-width:340px}
.champ{margin:0 0 18px}
label,.libelle,legend{display:block;font-weight:400;color:var(--ink);margin-bottom:4px}
.sous{display:block;font-size:14px;color:var(--muted);margin-bottom:6px}
fieldset{border:0;padding:0;margin:0}
.option{display:flex;gap:10px;align-items:flex-start;font-weight:300;margin:4px 0}
.option input{margin-top:6px;flex:none;width:18px;height:18px;accent-color:var(--accent)}
.consentement{font-size:16px}
/* Le consentement cite une empreinte de 64 caractères sans espace : elle doit pouvoir se couper. */
.option > span{min-width:0;overflow-wrap:anywhere}
input[type=text],input[type=email],input:not([type]),input[inputmode],textarea{
  width:100%;font:inherit;font-weight:400;color:var(--ink);background:var(--paper);
  border:1px solid #CFC8BC;border-radius:0;padding:10px 12px}
input:focus,textarea:focus,button:focus,canvas:focus{outline:2px solid var(--accent);outline-offset:2px}
button{font:inherit;font-weight:600;background:var(--accent);color:var(--paper);border:0;padding:12px 22px;cursor:pointer}
button.lien{background:none;color:var(--accent);font-weight:400;padding:4px 0;text-decoration:underline}
.erreur{display:block;color:var(--ink);font-weight:600;border-left:3px solid var(--accent);padding-left:10px;margin-top:6px}
.en-erreur input,.en-erreur textarea{border-color:var(--ink)}
.message{background:var(--paper-tint);border-left:3px solid var(--accent);padding:10px 14px}
.etat{font-size:15px;color:var(--muted)}
.empreinte{font-family:ui-monospace,Consolas,monospace;font-size:13px;word-break:break-all;background:var(--paper-tint);padding:8px 10px;border:1px solid var(--rule)}
.pages{display:flex;flex-direction:column;gap:14px;margin:20px 0}
/* Hauteur réservée au format A4 : sans elle, le chargement à la demande fait sauter la page
   pendant qu'on descend vers le cadre de signature, et le tracé tombe hors du cadre. */
.pages img{width:100%;height:auto;aspect-ratio:210/297;background:var(--paper-tint);border:1px solid var(--rule);box-shadow:0 1px 2px rgba(26,26,26,.06)}
.toile{display:block;width:100%;height:auto;aspect-ratio:3/1;background:var(--paper);border:1px solid #CFC8BC;touch-action:none;cursor:crosshair}
@media (max-width:480px){body{font-size:16px}h1{font-size:24px}}
.langues{font-size:14px;text-align:right;margin:0 0 8px;color:var(--muted)}
.langues strong{font-weight:600;color:var(--ink)}
