:root{--cream:#F4EDE2;--ink:#23201A;--olive:#5C6B3E;--terr:#B0542E;--mut:#6A6456;--line:#D8CDB8}
*{margin:0;padding:0;box-sizing:border-box}
body{background:var(--cream);color:var(--ink);font-family:'Inter',sans-serif;line-height:1.65}
::selection{background:var(--terr);color:var(--cream)}
img{display:block;max-width:100%}
.demo-bar{background:var(--ink);color:var(--cream);font-size:.78rem;text-align:center;padding:8px;letter-spacing:.04em}
.demo-bar a{color:#E8B98A}
.wrap{max-width:1100px;margin:0 auto;padding:0 28px}
header{padding:22px 0;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(244,237,226,.94);backdrop-filter:blur(6px);z-index:20}
.nav{display:flex;justify-content:space-between;align-items:center}
.logo{font-family:'Fraunces',serif;font-size:1.5rem;font-weight:600;letter-spacing:.02em;text-decoration:none;color:var(--ink)}
nav a{font-size:.84rem;text-decoration:none;color:var(--ink);margin-left:24px;letter-spacing:.04em;padding-bottom:3px;border-bottom:1px solid transparent}
nav a:hover{color:var(--terr)}
nav a.actif{border-bottom-color:var(--terr);color:var(--terr)}
.burger{display:none;background:none;border:1px solid var(--line);padding:8px 12px;font-size:.8rem;cursor:pointer}
h1{font-family:'Fraunces',serif;font-weight:400;line-height:1.04}
h2{font-family:'Fraunces',serif;font-weight:400}
.btn{display:inline-block;background:var(--terr);color:var(--cream);text-decoration:none;padding:13px 28px;font-size:.86rem;letter-spacing:.04em;border-radius:2px;transition:background .2s}
.btn:hover{background:#923f1f}
.btn.ghost{background:none;border:1px solid var(--ink);color:var(--ink)}
.btn.ghost:hover{background:var(--ink);color:var(--cream)}
.page-hero{padding:70px 0 50px;text-align:center;border-bottom:1px solid var(--line)}
.page-hero .eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:.72rem;color:var(--terr);margin-bottom:16px}
.page-hero h1{font-size:clamp(2.4rem,5vw,3.8rem);margin-bottom:14px}
.page-hero p{color:var(--mut);max-width:50ch;margin:0 auto}
section{padding:64px 0}
.titre-sec{font-family:'Fraunces',serif;font-size:2.2rem;font-weight:400;margin-bottom:36px;text-align:center}
footer{background:var(--ink);color:#C9C0AD;padding:50px 0 30px}
.fgrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px;margin-bottom:30px}
footer .logo{color:var(--cream);font-size:1.4rem}
footer h4{font-family:'Inter';font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;color:#E8B98A;margin-bottom:12px}
footer a{color:#C9C0AD;text-decoration:none;display:block;font-size:.9rem;margin-bottom:6px}
footer a:hover{color:var(--cream)}
.copy{border-top:1px solid rgba(255,255,255,.12);padding-top:20px;font-size:.78rem;color:#8C8576;text-align:center}
@media(max-width:760px){
  nav{position:absolute;top:64px;left:0;right:0;background:var(--cream);border-bottom:1px solid var(--line);flex-direction:column;padding:14px 28px;display:none}
  nav.open{display:flex}
  nav a{margin:8px 0}
  .burger{display:block}
  .fgrid{grid-template-columns:1fr;gap:24px}
}
