@font-face{font-family:"Bricolage";src:url("fonts/bricolage-latin.woff2") format("woff2");font-weight:200 800;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Bricolage";src:url("fonts/bricolage-latin-ext.woff2") format("woff2");font-weight:200 800;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Grandstander";src:url("fonts/grandstander-800.woff2") format("woff2");font-weight:800;font-display:swap}
@font-face{font-family:"Fraunces";src:url("fonts/fraunces-italic.woff2") format("woff2");font-weight:100 900;font-style:italic;font-display:swap}
@font-face{font-family:"Baloo";src:url("fonts/baloo-arabic.woff2") format("woff2");font-weight:400 800;font-display:swap;unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}
:root{--bg:#F1EEE9;--ink:#16302A;--ink-soft:#4A5650;--green:#1E4A3A;--gold:#F2C96B;--card:#FFFFFF;--sage:#DCEBDD;--sage-fg:#1F5A3E;--amber:#FBEBC8;--amber-fg:#6B4400;--coral:#F6D3CA;--coral-fg:#8A2A14;--sky:#D6E9F2;--line:#E4DED3;--hero:#A8CDB0}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.6 "Bricolage",system-ui,-apple-system,"Segoe UI",sans-serif}
[dir=rtl] body,[dir=rtl] .btn,[dir=rtl] .badge{font-family:"Baloo","Bricolage",system-ui,sans-serif}
a{color:var(--green);text-underline-offset:3px}
a:focus-visible,.btn:focus-visible{outline:3px solid var(--gold);outline-offset:2px;border-radius:8px}
.wrap{max-width:1040px;margin:0 auto;padding:0 20px}
.narrow{max-width:760px}
header.top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 0}
.logo{font-family:"Grandstander",sans-serif;font-weight:800;font-size:28px;color:var(--green);text-decoration:none;letter-spacing:-.5px;display:flex;align-items:center;gap:10px}
.logo img{width:40px;height:40px;border-radius:12px}
.langs{display:flex;flex-wrap:wrap;gap:6px}
.langs a{font-size:14px;font-weight:700;text-decoration:none;color:var(--ink);padding:6px 10px;border-radius:12px;background:var(--card);border:1.5px solid var(--line)}
.langs .short{display:none}
.langs a[aria-current]{background:var(--green);color:#fff;border-color:var(--green)}
.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;align-items:center;background:var(--hero);border-radius:36px;padding:40px;margin-top:8px;overflow:hidden}
.hero h1{margin:0 0 12px;font-size:clamp(34px,5.2vw,56px);line-height:1.05;font-weight:800;letter-spacing:-1.2px}
.accent{font-family:"Fraunces",Georgia,serif;font-style:italic;font-weight:600;font-variation-settings:"SOFT" 100,"WONK" 1;color:var(--green)}
[dir=rtl] .accent{font-family:"Baloo",sans-serif;font-style:normal;font-weight:800}
.hero p.lead{font-size:19px;margin:0 0 20px;color:#1d3b31;max-width:34ch}
.hero .art{display:flex;justify-content:center}
.hero .art img{width:100%;max-width:380px;height:auto}
.badges{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px;padding:0;list-style:none}
.badge{background:rgba(255,255,255,.75);color:var(--sage-fg);font-weight:800;font-size:14px;padding:8px 14px;border-radius:14px}
.btn{display:inline-flex;align-items:center;gap:10px;min-height:52px;padding:0 22px;border-radius:20px;background:var(--green);color:#fff;font:inherit;font-weight:800;font-size:17px;text-decoration:none;border:0}
.btn[aria-disabled=true]{opacity:.9;cursor:default}
.btn .dot{width:10px;height:10px;border-radius:5px;background:var(--gold)}
section{margin:48px 0}
h2.section-title{font-size:clamp(26px,3.4vw,34px);letter-spacing:-.6px;margin:0 0 8px}
.intro{margin:0 0 20px;color:var(--ink-soft);font-size:18px;max-width:60ch}
.features{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.feature{background:var(--card);border-radius:28px;padding:16px 16px 22px}
.feature img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;border-radius:22px;display:block}
.feature h3{font-size:22px;margin:14px 4px 4px}
.feature p{margin:0 4px;color:var(--ink-soft)}
.privacy-card{display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:center;background:var(--green);color:#fff;border-radius:32px;padding:28px}
.privacy-card img{width:150px;height:150px;flex-shrink:0;border-radius:26px;object-fit:cover}
.privacy-card h2{margin:0 0 8px;font-size:28px;letter-spacing:-.4px}
.privacy-card p{margin:0 0 12px;color:#D9E6DF}
.privacy-card a{color:var(--gold);font-weight:800}
.note{display:flex;gap:12px;align-items:flex-start;background:var(--amber);color:#4A3A22;border-radius:22px;padding:16px 18px;font-size:15px}
.note img{width:40px;height:40px;border-radius:12px;flex-shrink:0}
.faq{display:flex;flex-direction:column;gap:10px}
.faq details{background:var(--card);border-radius:22px;padding:0 20px}
.faq summary{cursor:pointer;list-style:none;min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:800;font-size:18px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:"Grandstander",sans-serif;font-size:24px;color:var(--green);flex-shrink:0}
.faq details[open] summary::after{content:"−"}
.faq summary:focus-visible{outline:3px solid var(--gold);outline-offset:2px;border-radius:8px}
.faq details p{margin:0 0 18px;color:var(--ink-soft)}
footer{margin:56px 0 0;padding:28px 0 40px;border-top:1.5px solid var(--line);font-size:14px;color:var(--ink-soft)}
footer nav{display:flex;flex-wrap:wrap;gap:8px 18px;margin-bottom:10px}
footer nav a{color:var(--ink);font-weight:700}
/* pages légales */
.doc h1{font-size:clamp(32px,4.6vw,46px);line-height:1.1;letter-spacing:-1px;margin:18px 0 8px}
.doc .meta{color:var(--ink-soft);font-size:15px;margin:0 0 20px}
.box{border-radius:24px;padding:20px 22px;margin:20px 0}
.box h2{margin:0 0 8px;font-size:21px}
.box.sage{background:var(--sage)}
.box.coral{background:var(--coral);color:#3d1509}
.box ul{margin:0;padding-inline-start:20px}
.doc section.part{background:var(--card);border-radius:24px;padding:6px 22px 10px;margin:14px 0}
.doc section.part h2{font-size:21px;margin:16px 0 6px;letter-spacing:-.2px}
.doc section.part p,.doc section.part li{color:#2b3d36}
.doc .trans{font-size:14px;color:var(--ink-soft);font-style:italic}
.back{display:inline-block;margin-top:10px;font-weight:700}
.notfound{text-align:center;padding:40px 0}
.notfound img{width:240px;max-width:70%}
@media (max-width:820px){
 .hero{grid-template-columns:1fr;padding:28px 22px;text-align:start}
 .hero .art{order:-1}
 .hero .art img{max-width:240px}
 .features{grid-template-columns:1fr}
 .feature{display:grid;grid-template-columns:110px 1fr;gap:14px;align-items:center;padding:12px}
 .feature img{border-radius:18px}
 .feature h3{margin:0 0 2px;font-size:20px}
 .feature p{margin:0}
 .privacy-card{grid-template-columns:1fr;padding:22px}
 .privacy-card img{width:96px;height:96px}
}
@media (max-width:560px){.langs .full{display:none}.langs .short{display:inline}.langs a{min-width:40px;text-align:center}}
@media (max-width:420px){.wrap{padding:0 16px}.logo{font-size:24px}}
