/* Base de style : fiche Refero « Lamanna » (grandes bandes de couleur franche qui alternent sans blanc entre elles, titres compacts
   en capitales très grasses à interlignage serré, badge en étoile, pleine largeur). L'orange vif devient un terracotta de four,
   le jaune un jaune de semoule, le rose un pêche ; une bande vert sapin calme l'ensemble. Sections recomposées pour Manofica. */
@font-face{font-family:BigShoulders;src:url(fonts/bigshoulders.woff2?v=1) format("woff2");font-weight:700 900;font-display:swap}
@font-face{font-family:Albert;src:url(fonts/albert.woff2?v=1) format("woff2");font-weight:400 700;font-display:swap}
:root{
  --terra:#b8262b;--terra2:#97191e;--jaune:#efe5cb;--peche:#ebe1c7;--peche2:#ddd0ae;--vert:#1d5a34;--vert2:#133d24;--creme:#f4ecd6;--encre:#1f2a20;--sec:#3f4a3f;
  --titre:BigShoulders,Impact,"Arial Narrow",sans-serif;--corps:Albert,system-ui,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--peche);color:var(--encre);font-family:var(--corps);font-size:17px;line-height:1.65;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(--vert2);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(--vert);color:var(--creme);border-bottom:1px solid rgba(246,220,198,.3)}
.bar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:66px;width:min(100% - 40px,1360px);margin-inline:auto}
.marque{font-family:var(--titre);font-weight:900;font-size:32px;letter-spacing:.02em;text-transform:uppercase;text-decoration:none;color:var(--jaune);padding:6px 0}
.nav{display:none;gap:30px;margin-left:auto;margin-right:26px}
.nav a{font-size:14px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;padding:16px 0;border-bottom:2px solid transparent}
.nav a:hover,.nav a.on{border-bottom-color:var(--jaune)}
.pilule{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 26px;border-radius:9999px;background:var(--jaune);color:var(--encre);font-family:var(--corps);font-size:16px;font-weight:700;text-decoration:none;border:2px solid var(--encre);transition:background .3s,color .3s}
.pilule:hover{background:var(--encre);color:var(--jaune)}
.pilule-petite{min-height:42px;padding:0 20px;font-size:14.5px}
.pilule-vert{background:var(--vert);color:var(--creme);border-color:var(--vert)}
.pilule-vert:hover{background:transparent;color:var(--vert)}
.pilule-contour{background:transparent;color:var(--encre)}
.pilule-contour:hover{background:var(--encre);color:var(--peche)}
.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;border-bottom:2px solid currentColor;padding:12px 0 3px;display:inline-block}
.lien-fonce{margin-top:26px}
.mini{font-size:13px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;margin:0 0 16px;color:var(--creme)}
.mini-fonce{color:var(--terra2)}
h1,h2{font-family:var(--titre);font-weight:900;text-transform:uppercase;margin:0;line-height:.88;letter-spacing:.005em}
h2{font-size:clamp(46px,9vw,100px);margin-bottom:26px}
/* Héros terracotta */
.hero{background:var(--vert);color:var(--creme);overflow:hidden}
.hero-in{width:min(100% - 40px,1360px);margin-inline:auto;padding:48px 0 0}
h1{font-size:clamp(76px,24vw,300px);color:var(--jaune);line-height:.82;margin:0 0 22px;letter-spacing:-.005em}
.hero-sous{font-size:19px;max-width:28em;margin:0 0 28px;color:var(--creme)}
.hero-photo{position:relative;margin:44px 0 0}
.hero-photo img{width:100%;aspect-ratio:4/3;object-fit:cover}
.hero-photo figcaption{position:absolute;left:0;bottom:0;background:var(--vert2);color:var(--creme);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;padding:6px 12px}
.badge{position:absolute;right:14px;top:-34px;width:110px;height:110px;display:grid;place-items:center;text-align:center;background:var(--terra);color:var(--creme);font-family:var(--titre);font-weight:900;font-size:21px;line-height:.95;text-transform:uppercase;clip-path:polygon(50% 0,61% 14%,79% 9%,82% 27%,100% 32%,90% 49%,100% 66%,82% 72%,79% 91%,61% 86%,50% 100%,39% 86%,21% 91%,18% 72%,0 66%,10% 49%,0 32%,18% 27%,21% 9%,39% 14%);transform:rotate(-10deg)}
/* Carte pêche */
.carte{background:var(--peche);padding:88px 20px 76px}
.carte-in{width:min(100%,1240px);margin-inline:auto}
.plats{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 14px}
.plats li{font-family:var(--titre);font-weight:800;font-size:clamp(30px,5.6vw,60px);line-height:1;text-transform:uppercase;color:var(--terra2)}
.plats li::after{content:"•";margin-left:14px;color:var(--vert)}
.plats li:last-child::after{content:""}
.note{font-size:14.5px;color:var(--sec);margin:30px 0 0;max-width:46em}
/* Trio */
.trio{background:var(--terra);display:grid;gap:12px;padding:12px}
.trio figure{margin:0;position:relative}
.trio img{width:100%;aspect-ratio:4/3;object-fit:cover}
.trio figcaption{position:absolute;left:0;bottom:0;background:var(--jaune);color:var(--encre);font-family:var(--titre);font-weight:900;font-size:24px;text-transform:uppercase;padding:4px 14px}
.legende{font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:#f1d6cf;text-align:center;margin:2px 0 4px}
/* Quai */
.quai{background:var(--vert);color:var(--creme);padding:84px 20px}
.quai-in{width:min(100%,1240px);margin-inline:auto;display:grid;gap:32px}
.quai h2{color:var(--jaune)}
.quai-texte p{max-width:34em;margin:0 0 22px;color:#e4d3bd}
.liste{list-style:none;margin:0;padding:0;max-width:36em}
.liste li{padding:13px 0;border-top:1px solid rgba(246,220,198,.3);font-size:16px}
.liste li:last-child{border-bottom:1px solid rgba(246,220,198,.3)}
/* Avis */
.avis{background:var(--peche2)}
.avis-in{width:min(100% - 40px,1240px);margin-inline:auto;padding:84px 0}
.avis-grille{display:grid;margin-top:8px;border-top:2px solid var(--encre)}
.avis blockquote{margin:0;padding:26px 0;border-bottom:1px solid rgba(42,23,16,.4)}
.avis blockquote p{font-family:var(--titre);font-weight:800;font-size:clamp(28px,3.4vw,40px);line-height:1;text-transform:uppercase;margin:0 0 12px}
.avis footer{font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--sec)}
/* Réservation */
.resa{background:var(--terra);color:var(--creme);text-align:center;padding:90px 20px}
.resa-in{width:min(100%,900px);margin-inline:auto}
.resa-in h2{font-size:clamp(54px,12vw,132px);color:var(--jaune);margin-bottom:14px}
.resa-in p{margin:0 0 26px;font-size:19px}
/* Infos */
.infos{background:var(--peche)}
.infos-in{width:min(100% - 40px,1240px);margin-inline:auto;display:grid;gap:64px;padding:84px 0}
.infos h2{font-size:clamp(40px,6vw,76px)}
.horaires{width:100%;max-width:560px;border-collapse:collapse}
.horaires th,.horaires td{text-align:left;padding:13px 0;border-bottom:1px solid rgba(42,23,16,.4);font-weight:400}
.horaires th{font-weight:700;width:30%}
.horaires tr.today{background:rgba(184,38,43,.14)}
.horaires tr.today th::after{content:" · aujourd'hui";font-weight:400;color:var(--terra2)}
address{font-style:normal;margin:0 0 24px;font-size:19px;line-height:1.7}
.pied{background:var(--vert2);color:#c9d5c4;text-align:center;padding:52px 20px 44px;font-size:14px}
.pied-marque{font-family:var(--titre);font-weight:900;font-size:clamp(54px,12vw,120px);text-transform:uppercase;color:var(--jaune);margin:0 0 12px;line-height:.9}
.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(--terra);color:var(--creme);font-weight:700;font-size:16px;text-decoration:none;border-top:2px solid var(--vert2)}
.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){
  body{padding-bottom:0}.callbar{display:none}.nav{display:flex}
  .hero-in{padding-top:72px;display:grid;grid-template-columns:1.15fr 1fr;column-gap:56px;align-items:end}
  .hero-in > .mini,.hero-in > h1,.hero-in > .hero-sous,.hero-in > .actions{grid-column:1}
  .hero-photo{grid-column:2;grid-row:1 / span 4;margin:0;align-self:end}
  .hero-photo img{aspect-ratio:4/5}
  .hero-in > .actions{padding-bottom:72px}
  h1{font-size:clamp(100px,13.4vw,230px)}
  .badge{width:150px;height:150px;font-size:28px;top:-44px;right:-10px}
  .trio{grid-template-columns:1fr 1fr 1fr;padding:16px;gap:16px}
  .trio img{aspect-ratio:1/1}
  .legende{grid-column:1 / -1}
  .quai-in{grid-template-columns:1fr 1fr;gap:96px;align-items:center}
  .avis-grille{grid-template-columns:repeat(3,1fr);gap:40px;border-top:0}
  .avis blockquote{border-top:2px solid var(--encre);border-bottom:0}
  .infos-in{grid-template-columns:1fr 1fr;gap:110px}
}
.tricolore{height:10px;background:linear-gradient(90deg,#1d5a34 0 33.34%,#efe5cb 33.34% 66.67%,#b8262b 66.67% 100%)}
.tricolore-large{height:18px}
.pied .tricolore{margin:-52px -20px 40px}
