:root{
--ink-950:#14171a;--ink-900:#1c2024;--ink-800:#282d31;--ink-700:#3d4348;--ink-600:#565d63;--ink-500:#6b7278;--ink-400:#868d92;--ink-300:#a4aab0;--ink-200:#c7cbce;--ink-100:#e4e7e9;--ink-50:#f0f1f2;
--paper:#faf9f6;--surface:#ffffff;--surface-soft:#f3f2ee;--hairline:#e4e2dc;--hairline-strong:#d3d0c7;
--teal-700:#0b5c53;--teal-600:#0f766e;--teal-500:#16938a;--teal-400:#3fb0a7;--teal-100:#e3f2ef;--teal-50:#f2f9f7;
--petrol-700:#215a6b;
--amber-700:#9c4d21;--amber-600:#c2622a;--amber-500:#d17d43;--amber-100:#f5e4d6;--amber-50:#faf0e7;
--success:#1a7f5a;--error:#b3392c;--error-100:#f6e2df;
--on-ink:#ffffff;--on-teal:#ffffff;--on-amber:#ffffff;
--text-primary:var(--ink-950);--text-secondary:var(--ink-600);--text-tertiary:var(--ink-400);--text-on-dark:#ffffff;--text-on-dark-muted:#a9adb0;
--bg-page:var(--paper);--bg-surface:var(--surface);--bg-surface-soft:var(--surface-soft);--bg-inverse:var(--ink-950);
--border-default:var(--hairline);--border-strong:var(--hairline-strong);
--accent:var(--teal-600);--accent-hover:var(--teal-700);--accent-tint:var(--teal-100);
--brand-symbol:var(--petrol-700);--accent-2:var(--amber-600);--brand-dot:var(--amber-600);--accent-2-tint:var(--amber-100);
}

:root{--font-display:'Hedvig Letters Serif',Georgia,serif;--font-sans:'Archivo',-apple-system,BlinkMacSystemFont,sans-serif;}
:root{
--text-hero:400 64px/1.05 var(--font-display);--text-hero-tracking:-0.02em;
--text-h1:400 48px/1.1 var(--font-display);--text-h1-tracking:-0.02em;
--text-h2:400 36px/1.15 var(--font-display);--text-h2-tracking:-0.015em;
--text-h3:400 28px/1.25 var(--font-display);
--text-h4:600 20px/1.35 var(--font-sans);
--text-eyebrow:600 13px/1.3 var(--font-sans);--text-eyebrow-tracking:0.08em;
--text-body-lg:400 19px/1.6 var(--font-sans);
--text-body:400 16px/1.6 var(--font-sans);
--text-body-sm:400 14px/1.55 var(--font-sans);
--text-caption:500 13px/1.4 var(--font-sans);
--text-stat:400 44px/1.05 var(--font-display);--text-stat-tracking:-0.01em;
--text-button:600 15px/1.2 var(--font-sans);
--text-nav:500 15px/1.3 var(--font-sans);
}
:root{--space-xxs:4px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:64px;--space-4xl:96px;--space-5xl:128px;--container-max:1180px;--container-pad:24px;}
:root{--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--radius-pill:999px;}
:root{--shadow-sm:0 1px 2px rgba(20,23,26,.07);--shadow-md:0 4px 16px rgba(20,23,26,.08);--shadow-lg:0 16px 40px -12px rgba(20,23,26,.20);
--ease-standard:cubic-bezier(.4,0,.2,1);/* @kind other */
--duration-fast:150ms;/* @kind other */
--duration-base:220ms;/* @kind other */
}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
body{background:var(--bg-page);color:var(--text-primary);font:var(--text-body);margin:0;}
a{color:var(--accent);text-decoration:none;}
a:hover{color:var(--accent-hover);text-decoration:underline;}
nav a:hover,footer a:hover,.ds-button:hover{text-decoration:none;}
nav > div > a:hover,.ds-button[style*="var(--ink-950)"]:hover{background:var(--ink-800) !important;color:#fff !important;}
erminia-logo-anim svg{width:100%;height:auto;display:block;}
.contact-form{display:flex;flex-direction:column;gap:20px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-xl);padding:var(--space-3xl);box-sizing:border-box;}
.contact-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:20px;}
.contact-form label{display:flex;flex-direction:column;gap:8px;font:var(--text-body-sm);font-weight:600;color:var(--text-primary);}
.contact-form label small{font:inherit;font-weight:400;color:var(--text-tertiary);}
.contact-form input,.contact-form textarea{font:var(--text-body);font-weight:400;color:var(--text-primary);background:var(--bg-page);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:13px 14px;width:100%;box-sizing:border-box;transition:border-color .15s,box-shadow .15s,background .15s;-webkit-appearance:none;appearance:none;}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--text-tertiary);}
.contact-form textarea{resize:vertical;min-height:132px;}
.contact-form input:hover,.contact-form textarea:hover{border-color:var(--border-strong);}
.contact-form input:focus,.contact-form textarea:focus{outline:none;background:var(--bg-surface);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint);}
.contact-form-footer{display:flex;align-items:center;gap:16px;flex-wrap:wrap;}
.contact-form button{font:var(--text-button);padding:14px 24px;border-radius:var(--radius-md);background:var(--ink-950);color:#fff;border:0;cursor:pointer;transition:background .15s;}
.contact-form button:hover{background:var(--ink-800);}
.contact-form button:focus-visible{outline:2px solid var(--accent);outline-offset:2px;}
.contact-form button[disabled]{opacity:.6;cursor:wait;}
.contact-form-status{font:var(--text-body-sm);margin:0;}
.contact-form-note{font:var(--text-caption);color:var(--text-tertiary);margin:0;padding-top:16px;border-top:1px solid var(--border-default);}
@media (max-width: 600px){.contact-form{padding:24px;}}
img{max-width:100%;height:auto;}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto;}}
/* Responsive : la barre de navigation du design system n'a pas de menu mobile. */
@media (max-width: 860px){
  nav > div > div:first-child{display:none !important;}
}
@media (max-width: 600px){
  :root{--container-pad:20px;--space-4xl:64px;--space-5xl:72px;--space-3xl:40px;}
  h1{font-size:40px !important;}
  h2{font-size:30px !important;}
  nav{padding:14px var(--container-pad) !important;}
  nav > div > a{padding:9px 14px !important;}
  erminia-logo-anim{width:220px !important;}
}
