:root{--bg:#F5F0E8;--bg2:#ECE4D8;--ink:#231A26;--muted:#5E5262;--line:#CFC3B4;--accent:#8E4A3C;--plum:#3A2944;--onplum:#F5F0E8;--onplum-muted:#CDBFD3;--onplum-accent:#E2B3A5;--btn:#231A26;--onbtn:#F5F0E8;--r:0px}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:'Jost',system-ui,sans-serif;font-weight:300;-webkit-font-smoothing:antialiased}
.site{min-height:100vh;overflow-x:hidden}
img{max-width:100%}
a{color:inherit}
a:hover{color:var(--accent)}
.ul{text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:3px}
.btn:hover{opacity:.88;color:var(--onbtn)}
.ghost{transition:background .2s,color .2s}
.ghost:hover{background:var(--ink);color:var(--bg)}
.lead{flex:1 1 24px;min-width:24px;border-bottom:1px dotted var(--muted);transform:translateY(-6px)}
.lead + span{white-space:nowrap}
.dt{font-size:11.5px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--muted)}
.lbl{display:block;font-size:11.5px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--muted)}
.field{width:100%;background:transparent;border:0;border-bottom:1px solid var(--muted);border-radius:0;padding:12px 0;font:300 17px 'Jost',system-ui,sans-serif;color:var(--ink);outline:none;box-shadow:0 0 0 0 var(--accent);transition:border-color .25s,box-shadow .25s}
.field::placeholder{color:var(--muted);opacity:.75;transition:opacity .25s}
.field:focus,.field:focus-visible{outline:none;border-bottom-color:var(--accent);box-shadow:0 1px 0 0 var(--accent)}
.field:focus::placeholder{opacity:.35}
.lbl{transition:color .25s}
:focus-within > .lbl{color:var(--accent)}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
[tabindex="-1"]:focus{outline:none}
[hidden]{display:none!important}

/* En-tête */
.site-header{border-bottom:1px solid var(--line);background:var(--bg);position:sticky;top:0;z-index:50}
.site-header__in{max-width:1240px;margin:0 auto;padding:22px 32px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px 32px}
.brand{display:flex;align-items:center;gap:14px;text-decoration:none}
.brand img{width:40px;height:40px;border-radius:50%}
.brand span{font-family:'Cormorant Garamond',serif;font-size:26px;font-weight:500;letter-spacing:.01em}
.brand em{color:var(--accent)}
.site-nav{display:flex;flex-wrap:wrap;align-items:center;gap:10px 28px;font-size:12.5px;font-weight:400;letter-spacing:.14em;text-transform:uppercase}
.site-nav a{text-decoration:none}
.site-nav a[aria-current="page"]{color:var(--accent)}
.nav-cta{border:1px solid var(--ink);border-radius:var(--r);padding:12px 20px;transition:background .2s,color .2s}
.nav-cta:hover,.site-nav a.nav-cta[aria-current="page"]{background:var(--ink);color:var(--bg)}
.nav-toggle{display:none;background:none;border:1px solid var(--ink);border-radius:var(--r);color:var(--ink);font:500 12px 'Jost',system-ui,sans-serif;letter-spacing:.18em;text-transform:uppercase;padding:12px 18px;cursor:pointer;min-height:44px}
@media (max-width: 960px){
  .site-header__in{padding:16px 20px}
  .brand span{font-size:22px}
  .nav-toggle{display:block}
  .site-nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0;padding:8px 0 4px}
  .site-nav.open{display:flex}
  .site-nav a{padding:14px 0;border-top:1px solid var(--line)}
  .site-nav a.nav-cta{margin-top:12px;text-align:center;border-top:1px solid var(--ink)}
}
@media (max-width: 640px){
  main [style*="max-width: 1240px"], main [style*="max-width: 860px"], main [style*="max-width: 760px"]{padding-left:20px!important;padding-right:20px!important}
  main [style*="padding: 56px 48px"], main [style*="padding: 64px 56px"], main [style*="padding: 56px 52px"]{padding:40px 24px!important}
  main [style*="border-right: 1px solid var(--line)"]{border-right:0!important}
  main [style*="padding: 48px 48px 52px 0"], main [style*="padding: 48px 0 52px 48px"], main [style*="padding: 44px 40px"]{padding:36px 0!important;border-bottom:1px solid var(--line)}
}
