/* Continental — feuille de style
   Crème, bordeaux et encre, comme une belle carte de brasserie. Une touche d'azulejo en pied de page. */

@font-face { font-family: "EB Garamond"; src: url("/assets/fonts/eb-garamond-latin-400-normal.woff2") format("woff2"); font-weight: 400; font-display: swap; }
@font-face { font-family: "EB Garamond"; src: url("/assets/fonts/eb-garamond-latin-400-italic.woff2") format("woff2"); font-weight: 400; font-style: italic; font-display: swap; }
@font-face { font-family: "EB Garamond"; src: url("/assets/fonts/eb-garamond-latin-500-normal.woff2") format("woff2"); font-weight: 500; font-display: swap; }
@font-face { font-family: "EB Garamond"; src: url("/assets/fonts/eb-garamond-latin-500-italic.woff2") format("woff2"); font-weight: 500; font-style: italic; font-display: swap; }
@font-face { font-family: "Jost"; src: url("/assets/fonts/jost-latin-300-normal.woff2") format("woff2"); font-weight: 300; font-display: swap; }
@font-face { font-family: "Jost"; src: url("/assets/fonts/jost-latin-400-normal.woff2") format("woff2"); font-weight: 400; font-display: swap; }
@font-face { font-family: "Jost"; src: url("/assets/fonts/jost-latin-500-normal.woff2") format("woff2"); font-weight: 500; font-display: swap; }

:root {
  --creme: #F4EFE4;
  --creme-fonce: #EBE4D5;
  --papier: #FBF8F2;
  --encre: #2B2422;
  --gris: #6F655C;
  --filet: #D8CDBA;
  --bordeaux: #7A2C2C;
  --bordeaux-nuit: #5A1F20;
  --vert: #3F6B4A;

  --serif: "EB Garamond", "Garamond", "Times New Roman", serif;
  --sans: "Jost", "Futura", "Century Gothic", sans-serif;

  --largeur: 74rem;
  --marge: clamp(1.1rem, 5vw, 3.5rem);
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
html { overflow-x: clip; }
body {
  margin: 0; background: var(--creme); color: var(--encre);
  font: 400 1.0625rem/1.65 var(--sans);
  padding-bottom: 4.6rem; /* barre d'appel sur mobile */
}
img { max-width: 100%; display: block; }
a { color: var(--bordeaux); text-decoration-thickness: 1px; text-underline-offset: 0.2em; }
a:hover { color: var(--bordeaux-nuit); }
:focus-visible { outline: 2px solid var(--bordeaux); outline-offset: 3px; }
h1, h2, h3 { margin: 0; font-weight: 500; }
p { margin: 0 0 0.9em; }
address { font-style: normal; }
.evitement { position: absolute; left: -999px; top: 0; background: var(--bordeaux); color: var(--creme); padding: 0.5rem 1rem; z-index: 50; }
.evitement:focus { left: 0.5rem; }
.visuellement-cache { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* ---------- Titres maison : une ligne droite, une ligne en italique bordeaux ---------- */
.titre { font: 400 clamp(1.9rem, 4.8vw, 2.9rem)/1.08 var(--serif); color: var(--encre); letter-spacing: -0.005em; }
.titre__droit, .titre__italique { display: block; }
.titre__italique { font-style: italic; color: var(--bordeaux); }
.titre--une { font-size: clamp(2.15rem, 8.6vw, 4.9rem); line-height: 1; }
.titre--une .titre__italique { white-space: nowrap; }
.surtitre {
  font: 500 0.78rem/1.2 var(--sans); letter-spacing: 0.16em; text-transform: uppercase;
  color: var(--bordeaux); margin-bottom: 1rem;
}

/* ---------- En-tête ---------- */
.entete { border-bottom: 1px solid var(--filet); background: var(--creme); }
.entete__barre {
  max-width: var(--largeur); margin: 0 auto; padding: 0.9rem var(--marge) 0;
  display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 0.4rem 1.5rem;
}
.logo { display: block; width: 9.5rem; padding-bottom: 0.4rem; }
.logo img { width: 100%; height: auto; }
.entete .entete__tel { display: none; }
.nav { grid-column: 1 / -1; margin: 0 calc(var(--marge) * -1); }
.nav ul {
  list-style: none; margin: 0; padding: 0 var(--marge); display: flex; gap: 1.5rem;
  overflow-x: auto; scrollbar-width: none;
}
.nav ul::-webkit-scrollbar { display: none; }
.nav a {
  display: block; padding: 0.75rem 0 0.7rem; white-space: nowrap;
  font: 400 0.95rem var(--sans); color: var(--encre); text-decoration: none;
  border-bottom: 1px solid transparent;
}
.nav a:hover { color: var(--bordeaux); }
.nav a[aria-current="page"] { color: var(--bordeaux); border-bottom-color: var(--bordeaux); }

main { max-width: var(--largeur); margin: 0 auto; padding: 0 var(--marge); }

/* ---------- Boutons et liens ---------- */
.bouton {
  display: inline-flex; align-items: center; justify-content: center; min-height: 3rem;
  padding: 0.75rem 1.4rem; font: 500 0.95rem/1 var(--sans); letter-spacing: 0.02em;
  text-decoration: none; border: 1px solid var(--bordeaux);
}
.bouton--plein { background: var(--bordeaux); color: var(--creme); }
.bouton--plein:hover { background: var(--bordeaux-nuit); border-color: var(--bordeaux-nuit); color: var(--creme); }
.bouton--contour { color: var(--bordeaux); background: transparent; }
.bouton--contour:hover { background: var(--bordeaux); color: var(--creme); }
.lien { font-weight: 500; text-decoration-color: rgba(122, 44, 44, 0.4); }
.lien:hover { text-decoration-color: currentColor; }

/* ---------- Statut d'ouverture ---------- */
.statut { display: flex; gap: 0.6rem; align-items: baseline; font-size: 0.98rem; color: var(--gris); }
.statut:empty { display: none; }
.statut::before { content: ""; flex: none; width: 0.5rem; height: 0.5rem; border-radius: 50%; background: var(--filet); transform: translateY(-0.1rem); }
.statut--ouvert::before { background: var(--vert); }
.statut--ferme::before { background: var(--bordeaux); }

/* ---------- Sections ---------- */
.section { padding: 3.5rem 0; border-top: 1px solid var(--filet); }
.section__tete { display: grid; gap: 1rem; margin-bottom: 2rem; }
.section__aside { color: var(--gris); max-width: 22rem; font-size: 0.95rem; }
.section__lien { margin-top: 1.75rem; }

/* La une */
.une { display: grid; gap: 1.75rem; padding: 2.75rem 0 2.5rem; }
.une__texte { max-width: 30rem; }
.une__texte > p:first-child { font-size: 1.1rem; }
.une__actions { display: none; flex-wrap: wrap; gap: 0.75rem; margin-top: 1.4rem; }

/* Photos */
.photo { margin: 0; }
.photo img, .photo__attente { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; background: var(--creme-fonce); }
.photo--large { margin: 0 calc(var(--marge) * -1) 0; }
.photo--large img, .photo--large .photo__attente { aspect-ratio: 4 / 3; }
.photo--large img { object-position: 50% 30%; }

/* Rangée de photos : défile au doigt sur téléphone, trois colonnes sur grand écran */
.galerie {
  display: grid; grid-auto-flow: column; grid-auto-columns: 72%; gap: 0.75rem;
  overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none;
  margin: 0 calc(var(--marge) * -1) 2.5rem; padding: 0 var(--marge);
}
.galerie::-webkit-scrollbar { display: none; }
.galerie__photo { scroll-snap-align: center; }
.galerie__photo img { aspect-ratio: 3 / 4; }
.salle .galerie { grid-column: 1 / -1; margin-bottom: 0; }
.photo__attente {
  display: flex; align-items: center; justify-content: center; text-align: center;
  background: var(--creme-fonce); border: 1px solid var(--filet);
}
.photo__attente span { font: italic 400 1.15rem var(--serif); color: var(--gris); padding: 1rem; }

/* ---------- Le menu du jour, comme une carte imprimée ---------- */
.jour { display: grid; gap: 2rem; }
.jour__intro .titre { margin-bottom: 1.1rem; }
.jour__intro p { max-width: 28rem; }
.panneau {
  background: var(--papier); border: 1px solid var(--filet);
  outline: 1px solid var(--filet); outline-offset: -10px;
  padding: 2.25rem clamp(1.25rem, 5vw, 3rem) 2rem; text-align: center;
}
.panneau__date { font: italic 400 1.6rem/1.2 var(--serif); color: var(--bordeaux); margin-bottom: 1.25rem; }
.panneau__date::first-letter { text-transform: uppercase; }
.panneau__section { padding: 0.9rem 0; }
.panneau__section + .panneau__section::before {
  content: ""; display: block; width: 2.5rem; height: 1px; background: var(--bordeaux); margin: 0 auto 1.4rem; opacity: 0.6;
}
.panneau__section h3 { font: 500 0.78rem var(--sans); letter-spacing: 0.16em; text-transform: uppercase; color: var(--gris); margin-bottom: 0.5rem; }
.panneau__section ul { list-style: none; margin: 0; padding: 0; }
.panneau__section li { font: 400 1.3rem/1.4 var(--serif); }
.panneau__perime { font: italic 400 1.35rem/1.4 var(--serif); }
.panneau__note { margin-top: 1rem; font: italic 400 1.2rem var(--serif); color: var(--bordeaux); }
.panneau__sous-note { margin: 0.4rem 0 0; color: var(--gris); font-size: 0.95rem; }
.formules { list-style: none; margin: 1.25rem 0 0; padding: 1.25rem 0 0; border-top: 1px solid var(--filet); text-align: left; }
.formules li { display: flex; justify-content: space-between; gap: 1rem; padding: 0.3rem 0; }
.formules__note { margin: 0.75rem 0 0; color: var(--gris); font-size: 0.95rem; text-align: left; }
.formules b { font: 400 1.3rem var(--serif); color: var(--bordeaux); white-space: nowrap; }

/* Avertissement de brouillon (disparaît quand les vraies données sont là) */
.brouillon {
  margin-bottom: 1.25rem !important;
  margin: 1.25rem 0 0; padding: 0.5rem 0.8rem; text-align: left;
  background: #F6E9C9; border: 1px dashed #B08D57; color: #5B4520; font-size: 0.9rem;
}

/* ---------- La carte ---------- */
.onglets__liste { display: flex; gap: 0 2rem; border-bottom: 1px solid var(--filet); margin-bottom: 0.5rem; overflow-x: auto; scrollbar-width: none; }
.onglets__liste[hidden] { display: none; }
.onglets__liste button {
  appearance: none; background: none; border: 0; cursor: pointer; white-space: nowrap;
  padding: 0.6rem 0 0.75rem; font: 400 1rem var(--sans); color: var(--gris);
  border-bottom: 1px solid transparent; margin-bottom: -1px;
}
.onglets__liste button:hover { color: var(--encre); }
.onglets__liste button[aria-selected="true"] { color: var(--encre); border-bottom: 2px solid var(--bordeaux); }
.onglets--actif .rubrique__titre { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }

.rubrique { padding: 0.5rem 0 1rem; }
.rubrique__titre { font: 500 clamp(1.7rem, 4.5vw, 2.2rem)/1.1 var(--serif); margin: 1rem 0 0.25rem; }
h3.rubrique__titre { font-size: 1.6rem; }
.rubrique__note { color: var(--gris); }
.plats { list-style: none; margin: 0; padding: 0; display: grid; column-gap: 3.5rem; }
.plat {
  display: grid; grid-template-columns: 1fr auto; column-gap: 1rem; align-items: baseline;
  padding: 1.1rem 0 1rem; border-bottom: 1px solid var(--filet);
}
.plat__nom { font: 400 1.35rem/1.25 var(--serif); }
.plat__pt { font-style: italic; color: var(--gris); font-size: 0.82em; white-space: nowrap; }
.plat__prix { font: 400 1.25rem var(--serif); color: var(--bordeaux); white-space: nowrap; }
.plat__desc { grid-column: 1 / -1; color: var(--gris); font-size: 0.95rem; margin-top: 0.2rem; }

.carte { margin-bottom: 3.5rem; }
.carte__intro { color: var(--gris); }
.carte__pied { margin: 2rem 0 0; color: var(--gris); font-size: 0.95rem; }
.carte--boissons { padding-top: 3rem; border-top: 1px solid var(--filet); }
.carte--boissons > .titre { margin-bottom: 1rem; }
.carte--boissons .plat { padding: 0.75rem 0 0.7rem; }
.carte--boissons .plat__nom { font-size: 1.3rem; }
.carte--boissons .plat__prix { font-size: 1.2rem; }
.carte__titre { font: 400 clamp(1.9rem, 4.8vw, 2.5rem)/1.1 var(--serif); margin-bottom: 0.5rem; }

/* ---------- Bande pizzas ---------- */
.bande-pizzas { background: var(--bordeaux-nuit); color: var(--creme); margin: 0 calc(50% - 50vw); }
.bande-pizzas__interieur { max-width: var(--largeur); margin: 0 auto; padding: 4rem var(--marge); display: grid; gap: 2.25rem; }
.bande-pizzas .titre, .bande-pizzas a { color: var(--creme); }
.bande-pizzas .titre__italique { color: #E7C9B9; }
.bande-pizzas .surtitre { color: #E7C9B9; }
.bande-pizzas .titre { margin-bottom: 1.1rem; }
.bande-pizzas p { max-width: 30rem; }
.bande-pizzas .trio { margin: 1.75rem 0 1.5rem; }

/* Pizza détourée, posée sur le fond */
.photo--detouree img { aspect-ratio: auto; object-fit: contain; background: none; filter: drop-shadow(0 18px 28px rgba(0, 0, 0, 0.35)); }
.bande-pizzas__photo { width: min(80%, 22rem); justify-self: center; margin-top: -1rem; }
.tete-pizzas { display: grid; }
.tete-pizzas__photo { width: min(75%, 20rem); justify-self: center; margin: -0.5rem 0 2rem; }
.tete-pizzas__photo img { filter: drop-shadow(0 16px 22px rgba(43, 36, 34, 0.25)); }

.trio { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); }
.trio li { display: grid; align-content: start; gap: 0.25rem; padding: 0 0.75rem; }
.trio li:first-child { padding-left: 0; }
.trio li + li { border-left: 1px solid rgba(244, 239, 228, 0.3); }
.trio b { font: 400 clamp(2.2rem, 8vw, 3.4rem)/1 var(--serif); }
.trio span { font-size: 0.92rem; line-height: 1.3; }
.trio small { font-size: 0.85rem; opacity: 0.75; }
.trio--grand { padding: 2rem 0; border-top: 1px solid var(--filet); border-bottom: 1px solid var(--filet); }
.trio--grand li + li { border-left-color: var(--filet); }
.trio--grand b { color: var(--bordeaux); }

/* ---------- Bar et salle ---------- */
.duo { display: grid; gap: 3rem; border-top: 0; }
.duo__titre { font: 400 2rem/1.1 var(--serif); margin: 1.25rem 0 0.6rem; }

/* ---------- Soirées ---------- */
.soirees { display: grid; }
.soiree {
  display: grid; grid-template-columns: 4.5rem 1fr; gap: 0.5rem 1.5rem;
  padding: 1.5rem 0; border-top: 1px solid var(--filet);
}
.soiree:last-of-type { border-bottom: 1px solid var(--filet); }
.soiree__date { margin: 0; display: grid; align-content: start; justify-items: start; gap: 0.2rem; line-height: 1; color: var(--bordeaux); }
.soiree__jour { font: 400 3.2rem/0.9 var(--serif); }
.soiree__mois { font: italic 400 1.3rem var(--serif); }
.soiree h3 { font: 400 1.9rem/1.1 var(--serif); margin-bottom: 0.3rem; }
.soiree__quand { color: var(--gris); font-size: 0.95rem; margin-bottom: 0.5rem; }
.soiree__infos { font-weight: 500; color: var(--bordeaux); }
.soiree__affiche { grid-column: 2; }
.soiree__affiche img { max-height: 30rem; width: auto; margin-top: 0.5rem; }
.soirees__vide { padding: 1.5rem 0; font: italic 400 1.4rem/1.4 var(--serif); border-top: 1px solid var(--filet); border-bottom: 1px solid var(--filet); }
.soirees__resa { margin: 2rem 0 3.5rem; }

/* ---------- Infos pratiques ---------- */
.pratique { display: grid; gap: 2.25rem; }
.pratique__titre { font: 400 1.75rem var(--serif); margin-bottom: 0.75rem; }
.pratique__note { color: var(--gris); font-size: 0.95rem; margin-top: 0.75rem; }
.horaires { margin: 0; }
.horaires div { display: flex; justify-content: space-between; gap: 1rem; padding: 0.45rem 0; border-bottom: 1px solid var(--filet); }
.horaires dd { margin: 0; white-space: nowrap; font-variant-numeric: tabular-nums; }

/* ---------- Pages intérieures ---------- */
.tete { padding: 3rem 0 2.5rem; max-width: 46rem; }
.tete .titre { font-size: clamp(2.5rem, 7vw, 4.3rem); margin-bottom: 1.1rem; }
.chapo { font-size: 1.1rem; max-width: 36rem; }

.prix-pizzas { margin-bottom: 3rem; }
.prix-pizzas__commande { margin-top: 1.25rem; }
.pizzas { width: 100%; border-collapse: collapse; margin-bottom: 1rem; }
.pizzas thead th { font: 400 0.85rem var(--sans); color: var(--gris); text-align: right; padding: 0.5rem 0 0.6rem 0.75rem; border-bottom: 1px solid var(--encre); }
.pizzas thead th:first-child { text-align: left; padding-left: 0; }
.pizzas tbody th { text-align: left; font-weight: 400; padding: 1rem 0; }
.pizzas td { text-align: right; font: 400 1.2rem var(--serif); color: var(--bordeaux); padding: 1rem 0 1rem 0.75rem; white-space: nowrap; vertical-align: top; }
.pizzas tbody tr { border-bottom: 1px solid var(--filet); }
.pizzas__nom { display: block; font: 400 1.5rem/1.2 var(--serif); }
.pizzas__ingr { display: block; color: var(--gris); font-size: 0.95rem; }
.bloc { display: grid; gap: 1.5rem; align-items: center; padding: 3rem 0; border-top: 1px solid var(--filet); }
.bloc h2 { font: 400 2rem/1.1 var(--serif); margin-bottom: 0.75rem; }

.menu-page { display: grid; gap: 2.5rem; margin-bottom: 3.5rem; }
.menu-page__aside h2 { font: 400 1.75rem var(--serif); margin-bottom: 0.6rem; }

.bar-page { display: grid; gap: 2.5rem; margin-bottom: 3rem; }
.bar-page h2 { font: 400 1.75rem var(--serif); margin-bottom: 0.75rem; }
.bar-page .statut { margin-top: 1rem; }

.salle { display: grid; gap: 2.75rem; margin-bottom: 3.5rem; }
.salle h2 { font: 400 1.9rem var(--serif); margin-bottom: 1rem; }
.occasions { list-style: none; margin: 0; padding: 0; }
.occasions li { font: italic 400 1.45rem/1.5 var(--serif); padding: 0.35rem 0; border-bottom: 1px solid var(--filet); }
.etapes { margin: 0; padding: 0; list-style: none; counter-reset: etape; display: grid; gap: 1.25rem; }
.etapes li { counter-increment: etape; display: grid; grid-template-columns: 2.5rem 1fr; gap: 0.75rem; }
.etapes li::before { content: counter(etape); font: italic 400 2.2rem/1 var(--serif); color: var(--bordeaux); }
.etapes p { margin: 0.15rem 0 0; }
.etapes b { display: block; font-weight: 500; }

.contact { display: grid; gap: 2.75rem; margin-bottom: 3.5rem; }
.contact h2 { font: 400 1.9rem var(--serif); margin-bottom: 0.75rem; }
.contact h3 { font: 500 0.8rem var(--sans); letter-spacing: 0.16em; text-transform: uppercase; color: var(--gris); margin: 1.5rem 0 0.4rem; }
.gros-tel { display: inline-block; font: 500 clamp(2.2rem, 9vw, 3rem)/1.1 var(--serif); color: var(--bordeaux); text-decoration: none; margin-bottom: 0.3rem; }
.raisons { padding-left: 1.1rem; margin-top: 1rem; }
.contact__note { color: var(--gris); margin-top: 1rem; font-size: 0.95rem; }

.texte-legal { max-width: 44rem; margin-bottom: 3.5rem; }
.texte-legal h2 { font: 400 1.6rem var(--serif); margin: 2rem 0 0.5rem; }
.liens-404 { font: italic 400 1.5rem/1.6 var(--serif); margin-bottom: 3.5rem; }

/* ---------- Menus à prix fixe ---------- */
.menus-fixes { padding: 3rem 0 3.5rem; border-top: 1px solid var(--filet); }
.menus-fixes__jour { display: grid; gap: 1rem; }
.menus-fixes__jour[hidden] { display: none; }
.menu-fixe { background: var(--papier); border: 1px solid var(--filet); padding: 1.5rem 1.5rem 1.25rem; }
.menu-fixe__prix { font: 400 2.4rem/1 var(--serif); color: var(--bordeaux); margin-bottom: 0.9rem; }
.menu-fixe ul { list-style: none; margin: 0; padding: 0; }
.menu-fixe li { font: 400 1.3rem/1.3 var(--serif); padding: 0.45rem 0; border-top: 1px solid var(--filet); }
.menu-fixe li i { color: var(--gris); font-size: 0.85em; }
.menus-fixes__dimanche { margin-top: 1rem; color: var(--gris); }

/* ---------- Pied de page ---------- */
.pied { background: var(--bordeaux-nuit); color: var(--creme); margin-top: 1rem; font-size: 0.95rem; }
.frise { height: 28px; background: url("/assets/img/azulejo-bordeaux.svg") 0 0 / 28px 28px repeat-x; }
.pied__grille { max-width: var(--largeur); margin: 0 auto; padding: 3rem var(--marge) 3rem; display: grid; gap: 2rem; }
.pied__marque img { width: 11rem; height: auto; margin-bottom: 1.25rem; }
.pied a { color: var(--creme); text-decoration-color: rgba(244, 239, 228, 0.4); }
.pied a:hover { color: #fff; text-decoration-color: currentColor; }
.pied__titre { font: italic 400 1.35rem var(--serif); color: #E7C9B9; margin-bottom: 0.5rem; }
.pied .horaires div { border-bottom-color: rgba(244, 239, 228, 0.18); }
.pied__note { margin-top: 0.75rem; opacity: 0.8; }

/* ---------- Barre d'appel (mobile) ---------- */
.appel {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 20;
  display: grid; grid-template-columns: 1.4fr 1fr; gap: 0.5rem;
  padding: 0.6rem 0.75rem calc(0.6rem + env(safe-area-inset-bottom));
  background: var(--creme); border-top: 1px solid var(--filet);
}

/* ---------- Écrans plus larges ---------- */
@media (min-width: 720px) {
  .menus-fixes__jour { grid-template-columns: repeat(3, 1fr); }
  .onglets__liste { flex-wrap: wrap; overflow: visible; gap: 0 1.75rem; }
  .une { padding: 4rem 0 3rem; }
  .une__texte { max-width: 34rem; }
  .section__tete { grid-template-columns: 1fr auto; align-items: end; }
  .section__aside { text-align: right; }
  .plats { grid-template-columns: 1fr 1fr; }
  .duo { grid-template-columns: 1fr 1fr; gap: 3.5rem; }
  .pratique { grid-template-columns: repeat(3, 1fr); gap: 3rem; }
  .pied__grille { grid-template-columns: 1.3fr 1fr 1fr 0.8fr; gap: 2.5rem; }
  .bande-pizzas__interieur { grid-template-columns: 1fr 1fr; align-items: center; gap: 4rem; }
  .bande-pizzas__photo { order: 2; width: 100%; max-width: 30rem; margin: -5.5rem 0 -5.5rem; transform: rotate(-8deg); }
  .tete-pizzas { grid-template-columns: 1.4fr 1fr; align-items: center; gap: 3rem; }
  .tete-pizzas__photo { width: 100%; max-width: 24rem; margin: 1rem 0 0; transform: rotate(6deg); }
  .bloc { grid-template-columns: 1fr 1fr; gap: 3rem; }
  .contact { grid-template-columns: 1fr 1fr; }
  .contact__horaires { grid-column: 1 / -1; max-width: 34rem; }
  .salle { grid-template-columns: 1fr 1fr; }
  .photo--large img, .photo--large .photo__attente { aspect-ratio: 16 / 7; }
  .photo--large img { object-position: 50% 45%; }
  .galerie { grid-auto-flow: row; grid-template-columns: repeat(3, 1fr); overflow: visible; margin-left: 0; margin-right: 0; padding: 0; gap: 1rem; }
  .salle__photo { grid-column: 1 / -1; }
  .salle__photo img, .salle__photo .photo__attente { aspect-ratio: 21 / 9; }
  .soiree { grid-template-columns: 6rem 1fr; }
}

@media (min-width: 1000px) {
  body { padding-bottom: 0; }
  .appel { display: none; }
  .entete__barre { grid-template-columns: auto 1fr auto; padding: 1rem var(--marge); }
  .logo { width: 11rem; padding: 0; }
  .nav { grid-column: auto; margin: 0; justify-self: end; }
  .nav ul { padding: 0; gap: 1.6rem; }
  .entete .entete__tel { display: inline-flex; }
  .une__actions { display: flex; }
  .photo--large { margin: 0; }
  .jour { grid-template-columns: 1fr 1.15fr; gap: 4.5rem; align-items: center; }
  .menu-page { grid-template-columns: minmax(0, 1.4fr) 1fr; align-items: start; gap: 4rem; }
  .bar-page { grid-template-columns: 1fr 1.2fr; align-items: start; gap: 4rem; }
  .soirees--page { max-width: 50rem; }
}

/* Le titre d'accueil et son texte côte à côte seulement sur grand écran */
@media (min-width: 1280px) {
  .une { grid-template-columns: 1.7fr 1fr; align-items: end; gap: 3rem; padding: 4.5rem 0 3.5rem; }
}

@media (prefers-reduced-motion: reduce) {
  * { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}
