/* Polices hébergées localement (aucune requête vers Google) */
@font-face{font-family:'DM Sans';font-weight:300;font-style:normal;font-display:swap;src:url(fonts/dm-sans-latin-300-normal.woff2) format('woff2')}
@font-face{font-family:'DM Sans';font-weight:400;font-style:normal;font-display:swap;src:url(fonts/dm-sans-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'DM Sans';font-weight:500;font-style:normal;font-display:swap;src:url(fonts/dm-sans-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'DM Sans';font-weight:600;font-style:normal;font-display:swap;src:url(fonts/dm-sans-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Playfair Display';font-weight:400;font-style:normal;font-display:swap;src:url(fonts/playfair-display-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Playfair Display';font-weight:400;font-style:italic;font-display:swap;src:url(fonts/playfair-display-latin-400-italic.woff2) format('woff2')}
@font-face{font-family:'Playfair Display';font-weight:500;font-style:normal;font-display:swap;src:url(fonts/playfair-display-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Playfair Display';font-weight:500;font-style:italic;font-display:swap;src:url(fonts/playfair-display-latin-500-italic.woff2) format('woff2')}
@font-face{font-family:'Playfair Display';font-weight:600;font-style:normal;font-display:swap;src:url(fonts/playfair-display-latin-600-normal.woff2) format('woff2')}

:root{
  --green:#2e6b45;--green-light:#4a8c62;--green-pale:#edf5f0;--green-dark:#1a4028;
  --gold:#c9a227;--gold-pale:#fdf6e3;
  --text:#1c1c1a;--text-mid:#555650;--text-soft:#7d7e77;
  --bg:#fff;--bg2:#f8f7f4;--bg3:#f0eee7;
  --border:rgba(0,0,0,.11);--border-soft:rgba(0,0,0,.07);
  --red:#b3321f;--red-pale:#fbeae7;--orange:#b86a0a;--orange-pale:#fdf0dc;
  --radius:14px;--radius-sm:9px;--radius-lg:20px;
  --shadow:0 1px 2px rgba(0,0,0,.05),0 8px 24px rgba(0,0,0,.06);
  --serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',system-ui,-apple-system,'Segoe UI',sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
*{margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{font-family:var(--sans);color:var(--text);background:var(--bg);line-height:1.6;font-size:15px;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
.ic{flex:none;vertical-align:-.2em}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
:focus-visible{outline:2.5px solid var(--gold);outline-offset:2px}
.hidden{display:none!important}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
