/* VERMEIL Paris — shared design tokens and base styles (index + proposition) */
:root{
  color-scheme:dark;
  --noir:#0B0507;        /* velours noir, red-biased */
  --noir-2:#170A0E;      /* raised surfaces */
  --noir-3:#22101A;      /* cards on noir-2 */
  --cerise:#E0002B;      /* signature lipstick red */
  --cerise-d:#8E0019;    /* deep red, shadows */
  --rose:#F6C4CF;        /* rose poudré ground */
  --ivoire:#FFF4F1;      /* text on dark, card ground */
  --muted:#B79AA1;       /* secondary text on dark */
  --muted-d:#6F4E56;     /* secondary text on light */
  --chrome-1:#F4F5F7;--chrome-2:#A9ACB4;--chrome-3:#55585F;
  --line:rgba(255,244,241,.14);
  --line-d:rgba(11,5,7,.14);
  --shade:#E0002B; --shade-ink:#FFF4F1;
  --f-display:"Gloock","Didot","Bodoni 72",Georgia,serif;
  --f-ital:"Instrument Serif","Didot",Georgia,serif;
  --f-body:"Manrope","Helvetica Neue",Arial,sans-serif;
  --t-mega:clamp(5rem,22vw,22rem);
  --t-hero:clamp(3.2rem,9.4vw,9.6rem);
  --t-h2:clamp(2.6rem,6.6vw,6.8rem);
  --t-h3:clamp(1.9rem,3.2vw,3rem);
  --t-label:.6875rem;
  --gutter:clamp(16px,4vw,56px);
  --ease-out:cubic-bezier(.16,1,.3,1);
}
html[lang="ar"]{--f-display:"Amiri","Gloock",Georgia,serif;--f-ital:"Amiri","Instrument Serif",Georgia,serif;--f-body:"Tajawal","Manrope",Arial,sans-serif}

*,*::before,*::after{box-sizing:border-box}
html{background:var(--noir);-webkit-text-size-adjust:100%}
body{margin:0;background:var(--noir);color:var(--ivoire);font-family:var(--f-body);font-size:1rem;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:clip}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
button{background:none;border:0;cursor:pointer;padding:0}
h1,h2,h3,h4{font-family:var(--f-display);font-weight:400;line-height:.9;letter-spacing:-.02em;margin:0;text-wrap:balance}
html[lang="ar"] h1,html[lang="ar"] h2,html[lang="ar"] h3{line-height:1.15;letter-spacing:0;font-weight:700}
em{font-family:var(--f-ital);font-style:italic;font-weight:400;letter-spacing:-.01em}
html[lang="ar"] em{font-style:normal;color:inherit}
p{margin:0}
.lbl{font-size:var(--t-label);letter-spacing:.2em;text-transform:uppercase;font-weight:700}
html[lang="ar"] .lbl{letter-spacing:0;font-size:.8rem}
:focus-visible{outline:2px solid var(--rose);outline-offset:3px;border-radius:4px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.nums{font-variant-numeric:tabular-nums}
[hidden]{display:none!important}
html[dir="rtl"] .nums,html[dir="rtl"] .sh-price,html[dir="rtl"] .pr,html[dir="rtl"] .sum span:last-child,html[dir="rtl"] .seg small,html[dir="rtl"] .fee-out b{direction:ltr;unicode-bidi:isolate}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;height:54px;padding:0 8px 0 26px;border-radius:999px;background:var(--cerise);color:var(--ivoire);
  font-size:var(--t-label);letter-spacing:.2em;text-transform:uppercase;font-weight:800;position:relative;overflow:hidden;isolation:isolate;white-space:nowrap;border:0;cursor:pointer;text-decoration:none}
html[lang="ar"] .btn{letter-spacing:0;font-size:.9rem;padding:0 26px 0 8px}
.btn .arr{width:38px;height:38px;border-radius:50%;background:var(--ivoire);color:var(--cerise);display:grid;place-items:center;font-size:1rem;flex:none;transition:transform .6s var(--ease-out)}
html[lang="ar"] .btn .arr{transform:scaleX(-1)}
.btn:hover .arr{transform:rotate(-45deg)}
html[lang="ar"] .btn:hover .arr{transform:scaleX(-1) rotate(-45deg)}
.btn::before{content:"";position:absolute;inset:0;background:var(--noir);transform:translateY(101%);transition:transform .6s var(--ease-out);z-index:-1}
.btn:hover::before{transform:none}
.btn.ghost{background:transparent;border:1px solid currentColor;color:inherit;padding:0 26px}
.btn.ghost::before{background:var(--cerise)}
.btn.ghost:hover{color:var(--ivoire);border-color:var(--cerise)}
.btn.ink{background:var(--noir)}.btn.ink::before{background:var(--cerise)}
.btn.sm{height:44px;padding:0 6px 0 18px;letter-spacing:.14em}
.btn.sm .arr{width:32px;height:32px}
html[lang="ar"] .btn.sm{padding:0 18px 0 6px}
