/* Brasserie Mireille — vert bouteille et laiton, Bodoni Moda + Source Sans 3 */
@font-face{font-family:"Bodoni Moda";src:url(fonts/bodoni.woff2?v=1) format("woff2");font-weight:400 700;font-style:normal;font-display:swap}
@font-face{font-family:"Source Sans 3";src:url(fonts/source-sans.woff2?v=1) format("woff2");font-weight:400 700;font-style:normal;font-display:swap}
:root{--papier:#f2eddf;--papier2:#e3dbc3;--encre:#18241d;--sec:#4a5750;--accent:#1f5a43;--accent2:#143f2e;--clair:#d4b46a;--creme:#f7f2e6;--sombre:#14291f;--titre:"Bodoni Moda",Georgia,serif;--corps:"Source Sans 3",system-ui,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--papier);color:var(--encre);font-family:var(--corps);font-size:18px;line-height:1.7;padding-bottom:64px}
img{display:block;max-width:100%;height:auto}a{color:inherit}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.annonce{background:var(--sombre);color:var(--creme);text-align:center;font-size:12px;letter-spacing:.1em;text-transform:uppercase;padding:7px 12px}
.site-header{position:sticky;top:0;z-index:30;background:var(--papier);border-bottom:1px solid rgba(0,0,0,.25)}
.bar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:68px;width:min(100% - 40px,1360px);margin-inline:auto}
.marque{font-family:var(--titre);font-size:28px;letter-spacing:.03em;text-decoration:none;padding:8px 0}
.nav{display:none;gap:30px;margin-left:auto;margin-right:26px}
.nav a{font-size:15px;font-weight:600;text-decoration:none;padding:16px 0;border-bottom:2px solid transparent}
.nav a:hover,.nav a.on{border-bottom-color:var(--accent);color:var(--accent2)}
.pilule{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 28px;border-radius:2px;background:var(--accent);color:var(--creme);font-family:var(--corps);font-size:16px;font-weight:700;text-decoration:none;border:2px solid var(--accent);transition:background .25s,color .25s}
.pilule:hover{background:transparent;color:var(--accent2)}
.pilule-petite{min-height:42px;padding:0 20px;font-size:15px}
.pilule-encre{background:var(--encre);border-color:var(--encre);color:var(--papier)}.pilule-encre:hover{background:transparent;color:var(--encre)}
.pilule-contour{background:transparent;border-color:var(--encre);color:var(--encre)}.pilule-contour:hover{background:var(--encre);color:var(--papier)}
.pilule-clair{background:var(--creme);border-color:var(--creme);color:var(--sombre)}.pilule-clair:hover{background:transparent;color:var(--creme)}
.actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 26px;margin:0}.actions-centre{justify-content:center}
.lien{font-weight:700;text-decoration:none;color:var(--accent2);border-bottom:2px solid currentColor;padding:12px 0 3px;display:inline-block}
.mini{font-size:13px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;margin:0 0 16px;color:var(--accent2)}
h1,h2,h3{font-family:var(--titre);font-weight:500;margin:0;line-height:1.08;}
h2{font-size:clamp(32px,5.2vw,58px);margin-bottom:26px}
h1 em,h2 em{font-style:italic;color:var(--accent2)}
.hero-in{width:min(100% - 40px,1360px);margin-inline:auto;display:grid;gap:34px;padding:44px 0 58px}
h1{font-size:clamp(42px,11vw,98px);line-height:1.02;margin:0 0 22px}
.hero-sous{font-size:20px;max-width:27em;margin:0 0 28px;color:var(--sec)}
.hero-photo{margin:0}.hero-photo img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:2px}
.cuisine{background:var(--papier2);padding:88px 20px 70px;border-top:1px solid rgba(0,0,0,.18)}
.cuisine-in{width:min(100%,1240px);margin-inline:auto}
.trois{display:grid;gap:0;border-top:1px solid rgba(0,0,0,.35);margin-top:10px}
.trois article{padding:26px 0;border-bottom:1px solid rgba(0,0,0,.35)}
.trois b{font-family:var(--titre);font-size:15px;color:var(--accent2);letter-spacing:.1em}
.trois h3{font-size:29px;margin:4px 0 8px}.trois p{margin:0;color:var(--sec);max-width:25em}
.formules{margin-top:54px;max-width:640px}
.formules ul{list-style:none;margin:0;padding:0;border-top:1px solid rgba(0,0,0,.35)}
.formules li{display:flex;justify-content:space-between;gap:16px;padding:15px 0;border-bottom:1px solid rgba(0,0,0,.35);font-size:19px}
.formules li b{font-family:var(--titre);font-size:26px;color:var(--accent2)}
.note{font-size:14.5px;color:var(--sec);margin:18px 0 0;max-width:46em}
.galerie{padding:84px 20px}.galerie-in{width:min(100%,1300px);margin-inline:auto}
.mosaique{display:grid;gap:12px;grid-template-columns:1fr 1fr}
.mosaique figure{margin:0;position:relative;overflow:hidden;border-radius:2px;background:var(--papier2)}
.mosaique img{width:100%;height:100%;object-fit:cover;aspect-ratio:1/1}
.mosaique figcaption{position:absolute;left:0;right:0;bottom:0;padding:26px 12px 10px;font-size:13px;letter-spacing:.04em;color:#f2ece0;background:linear-gradient(transparent,rgba(0,0,0,.72))}
.g1{grid-column:1/-1}.g1 img{aspect-ratio:16/10}
.lieu{background:var(--sombre);color:var(--creme);padding:88px 20px}
.lieu-in{width:min(100%,1240px);margin-inline:auto;display:grid;gap:34px}
.lieu .mini{color:var(--clair)}.lieu h2 em{color:var(--clair)}
.lieu p{max-width:32em;margin:0 0 22px;color:#d9d2c2}
.liste{list-style:none;margin:0;padding:0;max-width:36em}
.liste li{padding:13px 0;border-top:1px solid rgba(242,236,224,.3);font-size:16.5px}.liste li:last-child{border-bottom:1px solid rgba(242,236,224,.3)}
.resa{background:var(--accent2);color:var(--creme);text-align:center;padding:90px 20px}
.resa-in{width:min(100%,760px);margin-inline:auto}.resa-in h2{font-size:clamp(38px,8vw,80px);margin-bottom:12px}.resa-in p{margin:0 0 26px;font-size:20px}
.infos-in{width:min(100% - 40px,1240px);margin-inline:auto;display:grid;gap:60px;padding:86px 0}
.infos h2{font-size:clamp(32px,4.8vw,54px)}
.horaires{width:100%;max-width:580px;border-collapse:collapse}
.horaires th,.horaires td{text-align:left;padding:12px 0;border-bottom:1px solid rgba(0,0,0,.3);font-weight:400}.horaires th{font-weight:700;width:32%}
.horaires tr.today{background:rgba(0,0,0,.07)}.horaires tr.today th::after{content:" · aujourd'hui";font-weight:400;color:var(--accent2)}
.lieu-photo{margin:0 0 28px}.lieu-photo img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:2px}
.grand{font-size:21px;max-width:24em;margin:0}
address{font-style:normal;margin:0 0 24px;font-size:20px;line-height:1.7}
.pied{background:var(--sombre);color:#c3bcab;text-align:center;padding:52px 20px 44px;font-size:14px}
.pied-marque{font-family:var(--titre);font-size:clamp(38px,9vw,80px);color:var(--creme);margin:0 0 12px;line-height:1.05}
.pied p{margin:0 0 10px}.pied a{color:var(--creme);display:inline-block;padding:13px 0}.petit{font-size:12.5px;max-width:62em;margin-inline:auto!important}
.callbar{position:fixed;left:0;right:0;bottom:0;z-index:40;display:flex;align-items:center;justify-content:center;min-height:58px;background:var(--sombre);color:var(--creme);font-weight:700;font-size:16px;text-decoration:none;border-top:2px solid var(--clair)}
.reveal{opacity:0;transform:translateY(20px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1)}.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.pilule{transition:none}}
@media (min-width:900px){.hero-in{grid-template-columns:1fr 1.1fr;align-items:center;gap:76px;padding:80px 0 92px}h1{font-size:clamp(52px,5.4vw,90px)}.hero-photo img{aspect-ratio:5/4}}
@media (min-width:900px){body{padding-bottom:0}.callbar{display:none}.nav{display:flex}
.trois{grid-template-columns:repeat(3,1fr);border-top:0;gap:46px}.trois article{border-top:1px solid rgba(0,0,0,.35);border-bottom:0}
.mosaique{grid-template-columns:repeat(4,1fr);grid-auto-rows:260px}.mosaique img{aspect-ratio:auto}.g1{grid-column:span 2;grid-row:span 2}.g1 img{aspect-ratio:auto}
.lieu-in{grid-template-columns:1fr 1.1fr;gap:96px}.infos-in{grid-template-columns:1fr 1fr;gap:110px}
.mosaique.n2{grid-template-columns:1fr 1fr;grid-auto-rows:460px}.mosaique.n2 .g1{grid-column:auto;grid-row:auto}
.mosaique.n3,.mosaique.n6{grid-template-columns:repeat(3,1fr);grid-auto-rows:380px}.mosaique.n4,.mosaique.n8{grid-template-columns:repeat(4,1fr);grid-auto-rows:340px}
.mosaique.n3 .g1,.mosaique.n4 .g1,.mosaique.n6 .g1,.mosaique.n8 .g1{grid-column:auto;grid-row:auto}}
.mosaique.n2 .g1 img,.mosaique.n3 .g1 img,.mosaique.n4 .g1 img,.mosaique.n6 .g1 img,.mosaique.n8 .g1 img{aspect-ratio:1/1}
.pilule{letter-spacing:.03em}.mosaique{gap:14px}.resa{background:var(--sombre)}.resa .pilule-clair{background:var(--clair);border-color:var(--clair);color:#14291f}.mini::before{content:"✦";color:var(--clair);margin-right:.6em;font-size:.8em}
