/* Coquelicot webfonts.
   SUBSTITUTION NOTE: no font binaries were provided with the brand assets.
   The wordmark's engraved lowercase serif is matched with Cormorant Garamond;
   the UI sans is Manrope. Both are served from Google Fonts. Replace these
   @import lines with local @font-face rules once real binaries exist. */
/* Polices chargées via <link> dans index.html (découverte plus rapide). */
:root{
/* --- Base ramps ------------------------------------------------------ */
/* Coquelicot red — sampled from the poppy petals of the logo */
--red-950:#3D040F;--red-900:#5C0616;--red-800:#75081D;--red-700:#8A0B22;--red-600:#A8122D;--red-500:#C4243C;--red-300:#E39098;--red-100:#F6E0E1;--red-50:#FCF3F2;
/* Gold — sampled from the engraved leaf & wordmark foil */
--gold-900:#5E4720;--gold-800:#77592A;--gold-700:#8A6A34;--gold-600:#A98442;--gold-500:#C3A568;--gold-400:#D6BC86;--gold-300:#E2CFA6;--gold-200:#EDDFC1;--gold-100:#F5EDDC;--gold-50:#FAF5EA;
/* Leaf green — the horticultural accent */
--green-900:#26361F;--green-800:#33492B;--green-700:#3F5B3A;--green-600:#55764C;--green-500:#6E8F62;--green-300:#A6BE9A;--green-100:#E1EADB;--green-50:#F1F6EE;
/* Warm neutrals — the pressed-paper ground of the logo */
--paper-0:#FFFDF8;--paper-50:#FAF6EE;--paper-100:#F3ECDF;--paper-200:#E8DFCD;--paper-300:#D8CDB7;
--ink-900:#221A14;--ink-800:#33271E;--ink-700:#4A3B2F;--ink-600:#63513F;--ink-500:#7E6C59;--ink-400:#9E8C79;--ink-300:#BCAD9A;
/* Support hues used only inside semantic aliases */
--amber-600:#B0761C;--amber-100:#FBEED4;--sky-700:#2F5F6E;--sky-100:#DCEBEF;

/* --- Semantic surfaces ---------------------------------------------- */
--surface-page:var(--paper-50);
--surface-card:var(--paper-0);
--surface-sunken:var(--paper-100);
--surface-inverse:var(--red-900);
--surface-accent:var(--red-700);
--surface-accent-soft:var(--red-50);
--surface-gold-soft:var(--gold-100);
--surface-green-soft:var(--green-50);
--surface-overlay:rgba(34,26,20,.48);
--surface-glass:rgba(255,253,248,.78);

/* --- Semantic text --------------------------------------------------- */
--text-strong:var(--ink-900);
--text-body:var(--ink-700);
--text-muted:var(--ink-500);
--text-faint:var(--ink-400);
--text-on-accent:var(--paper-0);
--text-accent:var(--red-700);
--text-gold:var(--gold-800);
--text-green:var(--green-700);
--text-link:var(--red-700);
--text-link-hover:var(--red-900);

/* --- Borders & lines ------------------------------------------------- */
--border-hairline:var(--paper-200);
--border-strong:var(--paper-300);
--border-gold:var(--gold-400);
--border-gold-soft:var(--gold-200);
--border-accent:var(--red-700);
--rule-gold:linear-gradient(90deg,transparent,var(--gold-400) 18%,var(--gold-500) 50%,var(--gold-400) 82%,transparent);

/* --- Semantic status ------------------------------------------------- */
--status-success-fg:var(--green-700);--status-success-bg:var(--green-100);
--status-warning-fg:var(--amber-600);--status-warning-bg:var(--amber-100);
--status-danger-fg:var(--red-600);--status-danger-bg:var(--red-100);
--status-info-fg:var(--sky-700);--status-info-bg:var(--sky-100);

/* --- Brand gradients / washes --------------------------------------- */
--wash-petal:linear-gradient(158deg,var(--red-700) 0%,var(--red-900) 62%,var(--red-950) 100%);
--wash-foil:linear-gradient(100deg,var(--gold-700) 0%,var(--gold-400) 38%,var(--gold-600) 66%,var(--gold-300) 100%);
--wash-paper:radial-gradient(120% 90% at 50% 0%,var(--paper-0) 0%,var(--paper-50) 55%,var(--paper-100) 100%);
}
:root{
--font-display:"Cormorant Garamond","Cormorant",Georgia,serif;
--font-sans:"Manrope","Helvetica Neue",system-ui,sans-serif;
--font-mono:ui-monospace,"SFMono-Regular",Menlo,monospace;

--weight-light:300;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-heavy:800;

/* Display — Cormorant Garamond, tight leading, generous tracking on caps */
--type-display-1-size:44px;--type-display-1-line:48px;--type-display-1-track:-0.4px;
--type-display-2-size:34px;--type-display-2-line:38px;--type-display-2-track:-0.3px;
--type-display-3-size:26px;--type-display-3-line:30px;--type-display-3-track:-0.2px;
--type-serif-quote-size:20px;--type-serif-quote-line:29px;

/* UI sans */
--type-title-size:20px;--type-title-line:26px;--type-title-track:-0.2px;
--type-subtitle-size:17px;--type-subtitle-line:23px;--type-subtitle-track:-0.1px;
--type-body-size:15px;--type-body-line:23px;--type-body-track:0px;
--type-body-sm-size:13.5px;--type-body-sm-line:20px;
--type-label-size:12.5px;--type-label-line:16px;--type-label-track:0.2px;
--type-caption-size:11.5px;--type-caption-line:15px;
--type-eyebrow-size:10.5px;--type-eyebrow-line:14px;--type-eyebrow-track:1.4px;

--eyebrow-transform:uppercase; /* @kind other */
}
:root{
--space-2:2px;--space-4:4px;--space-6:6px;--space-8:8px;--space-10:10px;--space-12:12px;--space-14:14px;--space-16:16px;--space-20:20px;--space-24:24px;--space-28:28px;--space-32:32px;--space-40:40px;--space-48:48px;--space-64:64px;
/* Mobile layout rules */
--gutter-screen:20px;
--gap-card:14px;
--gap-section:28px;
--pad-card:16px;
--pad-card-lg:20px;
--tap-min:44px;
--tabbar-height:76px;
--appbar-height:56px;
--safe-bottom:22px;
--width-mobile:390px;
--height-mobile:844px;
}
:root{
--radius-xs:6px;--radius-sm:10px;--radius-md:14px;--radius-lg:20px;--radius-xl:26px;--radius-2xl:32px;--radius-pill:999px;
--radius-card:var(--radius-lg);
--radius-field:var(--radius-md);
--radius-chip:var(--radius-pill);
--radius-sheet:26px;
--border-width-hair:1px;
--border-width-foil:1.5px;
}
:root{
/* Warm-tinted shadows only — never neutral black */
--shadow-none:none;
--shadow-hair:0 1px 0 rgba(34,26,20,.04);
--shadow-card:0 1px 2px rgba(34,26,20,.05),0 6px 18px -8px rgba(34,26,20,.14);
--shadow-raised:0 2px 4px rgba(34,26,20,.06),0 14px 32px -12px rgba(34,26,20,.20);
--shadow-sheet:0 -8px 40px -12px rgba(34,26,20,.28);
--shadow-accent:0 8px 20px -10px rgba(138,11,34,.55);
--shadow-inset-foil:inset 0 0 0 1px var(--gold-200);
--focus-ring:0 0 0 3px rgba(195,165,104,.45);
--blur-glass:saturate(1.1) blur(14px); /* @kind other */
}
:root{
--ease-standard:cubic-bezier(.32,.72,.28,1); /* @kind other */
--ease-out-soft:cubic-bezier(.16,.84,.44,1); /* @kind other */
--ease-in-soft:cubic-bezier(.5,0,.75,.4); /* @kind other */
--duration-instant:90ms; /* @kind other */
--duration-fast:160ms; /* @kind other */
--duration-base:240ms; /* @kind other */
--duration-slow:380ms; /* @kind other */
--duration-sheet:420ms; /* @kind other */
--press-scale:.975; /* @kind other */
--hover-lift:-1px; /* @kind other */
}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--surface-page);color:var(--text-body);font-family:var(--font-sans);font-size:var(--type-body-size);line-height:var(--type-body-line);-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:var(--font-display);color:var(--text-strong);font-weight:var(--weight-semibold);margin:0}
a{color:var(--text-link);text-decoration:none}
a:hover{color:var(--text-link-hover);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}
button{font-family:inherit}
::selection{background:var(--gold-200);color:var(--ink-900)}
