/* Strofilia : pages intérieures (galerie, contact, business, évènements, /menu/, réservation). */

.cache-partout { display: none !important; }

/* ---------------------------------------------------------------- galerie */
.s-galerie-page { --fd: row; --ai: center; --pt: 40px; --pb: 80px; --pl: 0px; --pr: 0px; background-color: var(--noir); }
.galerie-page-in { --g: 0px; --pt: 25px; --pb: 25px; --pl: 100px; --pr: 100px; }
.galerie-page-in > .dedans > * { width: 100%; }
@media (max-width: 1024px) { .galerie-page-in { --pt: 0px; --pb: 0px; --pl: 0px; --pr: 0px; } }
@media (max-width: 767px) {
  .s-galerie-page { --pt: 40px; --pb: 40px; }
  .galerie-page-in { --g: 40px; --pt: 25px; --pb: 25px; --pl: 25px; --pr: 25px; }
}
/* onglets (widget Onglets d'Elementor) */
.onglets-titres { display: flex; }
.onglet { margin: 0; padding: 20px 25px; border: 1px solid transparent; border-bottom: 0; border-radius: 0; background: transparent; cursor: pointer;
  font-family: var(--inter); font-size: 14px; font-weight: 400; line-height: 1; text-transform: uppercase; color: #fff; white-space: nowrap; }
.onglet.actif { color: var(--accent); background-color: var(--texte); border-color: var(--texte); }
.onglets-contenus { background-color: var(--texte); border: 1px solid var(--texte); }
.onglet-contenu { padding: 20px; color: #fff; font-family: var(--inter); }
.onglet-contenu p { margin-bottom: .9rem; }
.onglet-mobile { display: none; width: 100%; text-align: left; border: 1px solid var(--texte); }
@media (max-width: 767px) {
  .onglets-titres { display: none; }
  .onglet-mobile { display: block; padding: 10px; border: 0; border-top: 1px solid var(--texte); line-height: 1.5; }
  .onglets-contenus { border: 0; }
  .onglet-contenu { padding: 10px; border-top: 1px solid var(--texte); }
}

/* ---------------------------------------------------------------- contact */
.s-contact { --fd: row; --ai: center; --pt: 0px; --pb: 100px; --pl: 0px; --pr: 0px; background-color: var(--noir); }
.contact-infos { --cw: 600px; --pt: 0px; --pb: 0px; --pl: 0px; --pr: 0px; overflow: hidden; }
.tf-contact { --tf-titre: 77%; --tf-filets-m: 20%; }
.espace-contact { --h: 10px; }
.boite-icone { display: flex; flex-direction: column; align-items: center; gap: 15px; text-align: center; }
.boite-icone .ico { width: 24px; height: 24px; fill: var(--jaune); }
.boite-icone h3 { margin: .5rem 0 1rem; font-family: var(--inter); font-size: 16px; font-weight: 400; line-height: 1.2; color: #fff; }
.contact-form-cadre { --cw: 600px; --g: 0px; --pt: 0px; --pb: 0px; --pl: 0px; --pr: 0px; border-radius: 25px; overflow: hidden; }
.contact-form { --pt: 50px; --pb: 50px; --pl: 50px; --pr: 50px; background-color: #fff; border-radius: 25px; }
.contact-form-titre { font-family: var(--quicksand); font-size: 28px; font-weight: 600; text-transform: uppercase; color: var(--texte); text-align: center; }
.s-contact-maps { --fd: row; --ai: center; --pt: 80px; --pb: 0px; --pl: 0px; --pr: 0px; background-color: var(--noir); }
.contact-maps-in { --g: 40px; }
.contact-maps-in > .dedans > * { width: 100%; }
.tf-maps-contact { --tf-titre: 40%; --tf-filets-m: 20%; }
.page-contact .maps { border-radius: 25px; }
.page-contact .maps iframe { height: 450px; }
.s-contact-insta { --fd: row; --ai: center; --pt: 80px; --pb: 80px; --pl: 0px; --pr: 0px; background-color: var(--noir); }
.contact-insta-in { --g: 40px; }
.tf-insta { --tf-titre: 35%; --tf-filets-m: 20%; }
.contact-insta-boutons { --fd: row; --jc: center; }
.bouton-contour-jaune { display: inline-flex; align-items: center; gap: 5px; background-color: transparent; color: var(--jaune); border-color: var(--jaune); }
.bouton-contour-jaune .ico { width: 1em; height: 1em; fill: var(--jaune); }
@media (max-width: 767px) {
  .s-contact { --pt: 25px; --pb: 25px; --pl: 25px; --pr: 25px; }
  .contact-infos { --g: 0px; }
  .espace-contact { --h: 30px; }
  .tf-contact, .tf-maps-contact, .tf-insta { gap: 0; padding: 0; }
  .boite-icone h3 { font-size: 14px; }
  .contact-form { --pt: 20px; --pb: 20px; --pl: 20px; --pr: 20px; }
  .s-contact-maps { --pt: 40px; }
  .page-contact .maps iframe { height: 300px; }
  .s-contact-insta { --pt: 40px; --pb: 0px; }
}

/* ---------------------------------------------------------------- business, évènements, events */
.s-zones { --fd: row; --g: 20px; --pt: 0px; --pb: 40px; --pl: 0px; --pr: 0px; --cw: 1400px; background-color: var(--noir); }
.zone { --w: 33%; --pt: 25px; --pb: 25px; --pl: 25px; --pr: 25px; background-color: var(--texte); border-radius: 25px; }
.zone .liste-ico li { justify-content: center; text-align: center; }
.zone .liste-ico span { color: #fff; font-family: var(--inter); font-size: 14px; }
.zone .zone-titre span { font-weight: 700; }
.zone .liste-ico li + li { margin-top: 2.5px; }
.zone .liste-ico li:not(:last-child) { padding-bottom: 2.5px; }
.zone-items a, .zone-items li > span { text-transform: uppercase; }
.zone-items a, .zone-items a span { line-height: 1.1em; }
@media (max-width: 1024px) {
  .s-zones { display: none; }
}
.s-ev { --g: 20px; --pt: 0px; --pb: 87px; --pl: 0px; --pr: 0px; background-color: var(--noir); }
.s-ev-business { --pt: 80px; --pb: 80px; background: var(--noir) url(/wp-content/uploads/2023/11/68fb896cb9f1d44bcf913ecb2153d854.jpeg) center / cover; }
.s-ev-business::before { background-color: var(--texte); opacity: .75; }
.tf-business { --tf-titre: 17%; }
.tf-evenements { --tf-titre: 25%; }
.tf-demande { --tf-titre: 100%; }
.ev-rangee { --fd: row; --jc: center; --ai: center; }
.ev-texte { --w: 45%; --pt: 0px; --pb: 0px; --pl: 0px; --pr: 100px; }
.s-ev:not(.s-ev-business) .ev-texte { --pl: 100px; --pr: 0px; }
.ev-titre { font-family: var(--inter); font-size: 17px; font-weight: 600; text-transform: uppercase; color: var(--accent); }
.ev-p { color: #fff; font-size: 16px; }
.ev-image { --w: 55%; }
.ev-image img, .ev-photo img { display: block; border-radius: 25px; }
.s-demande { --g: 20px; --pt: 50px; --pb: 50px; --pl: 0px; --pr: 0px; background-color: var(--noir); }
.s-demande-ev { --pt: 0px; }
.ev-photo { --w: 55%; }
.ev-form { --w: 45%; --pt: 0px; --pb: 0px; --pl: 0px; --pr: 0px; }
@media (max-width: 1024px) { .ev-texte, .s-ev:not(.s-ev-business) .ev-texte { --pl: 0px; --pr: 0px; } }
@media (max-width: 767px) {
  .s-ev { --g: 40px; --pt: 50px; --pb: 50px; --pl: 15px; --pr: 15px; }
  .s-ev-business .ev-rangee { --fd: column-reverse; }
  .tf-business { gap: 20px; }
  .tf-evenements, .tf-demande { gap: 0; }
  .tf-demande { --tf-filets-m: 20%; }
  .tf-evenements { --tf-filets-m: 20%; }
  .ev-titre { font-size: 14px; }
  .ev-p { font-size: 14px; }
  .ev-image { --pt: 0px; --pb: 0px; --pl: 0px; --pr: 0px; }
  .s-demande { --g: 40px; --pt: 50px; --pb: 50px; --pl: 15px; --pr: 15px; }
  .ev-photo { --pt: 0px; --pb: 0px; --pl: 0px; --pr: 0px; }
}

/* ---------------------------------------------------------------- /menu/ (maquette gardée telle quelle) */
.s-menu-intro { --pt: 10px; --pb: 10px; background-color: var(--noir); }
.menu-intro-gauche { --cw: 600px; --fd: row; --g: 0px; --mt: -90px; --pt: 0px; --pb: 0px; --pl: 0px; --pr: 0px; border-radius: 25px; overflow: hidden; }
/* --fwm: nowrap : en colonne avec retour à la ligne, Chrome sous-évalue la hauteur de la boîte icône + titre au mobile,
   et le titre chevauche le texte (relevé par Fable le 10/11). */
.menu-carte-blanche { --g: 0px; --pt: 25px; --pb: 25px; --pl: 25px; --pr: 25px; --fwm: nowrap; background-color: #E9C051; border-radius: 25px; }
.boite-image-icone { display: flex; align-items: center; text-align: left; }
.boite-image-icone figure { margin: 0 10px 0 0; width: 20%; flex-shrink: 0; line-height: 0; }
.boite-image-icone h3 { margin: 0; font-family: var(--quicksand); font-size: 20px; font-weight: 700; line-height: 1.2; color: var(--texte); flex-grow: 1; }
.menu-carte-blanche .texte-el { color: var(--texte); }
.menu-carte-blanche .texte-el p { margin-block: 0 .9rem; }
.menu-carte-blanche .bouton-boite { text-align: left; }
.menu-carte-blanche .bouton-jaune { background: transparent; border: 0; padding: 0; font-weight: 600; color: var(--texte); }
.menu-intro-droite { --fd: row; --g: 0px; --pt: 0px; --pb: 0px; --pl: 0px; --pr: 0px; overflow: hidden; }
.carrousel-citations { width: 100%; }
.carrousel-citations .carrousel-fenetre { width: calc(100% - 40px); margin: 0 auto; }
.carrousel-citations .diapo { padding: 20px 0 20px 40px; text-align: right; }
.carrousel-citations .avis-texte { font-size: 16px; }
.carrousel-citations .avis-pied { justify-content: flex-end; padding: 0; margin-top: 15px; }
.carrousel-citations .avis-nom { font-size: 13px; }
.carrousel-citations .carrousel-fleche { font-size: 20px; color: #fff; }
.s-menu-plats { --g: 20px; --pt: 80px; --pb: 87px; --pl: 0px; --pr: 0px; background-color: var(--noir); }
.tf-menu-page { --tf-titre: 13%; }
.menu-rangee { --fd: row; }
.menu-plat { --g: 5px; }
.boite-image { margin: 0; line-height: 0; }
.menu-plat .boite-image img { display: block; width: 100%; border-radius: 25px; }
.boite-image-texte h3 { margin: .5rem 0 0; font-family: var(--inter); font-size: 17px; font-weight: 600; line-height: 1.2; text-transform: uppercase; color: #fff; }
.boite-image-texte p { margin: 0; font-family: var(--inter); font-size: 14px; color: #fff; }
.note-etoiles { display: flex; gap: 5px; color: var(--jaune); font-size: 18px; }
.note-etoiles .ico { width: 1em; height: 1em; fill: currentColor; }
.s-menu-chefs { --fd: row; --ai: center; --pt: 80px; --pb: 80px; --pl: 0px; --pr: 0px; background: var(--noir) url(/wp-content/uploads/2023/11/Rectangle-27.png); }
.menu-chefs-image { --fd: row; --jc: center; --fw: wrap; }
.menu-chefs-texte { --g: 80px; --pt: 25px; --pb: 25px; --pl: 100px; --pr: 100px; }
.tf-chefs { --tf-titre: 100%; --tf-filet: 100%; --tf-filets-m: 35%; }
.menu-chefs-p { text-align: center; font-size: 16px; color: #fff; }
@media (max-width: 1024px) { .menu-chefs-texte { --pt: 0px; --pb: 0px; --pl: 0px; --pr: 0px; } }
@media (max-width: 767px) {
  .s-menu-intro { --pt: 25px; --pb: 25px; --pl: 25px; --pr: 25px; }
  .menu-carte-blanche .texte-el { text-align: center; font-size: 14px; }
  .boite-image-icone { flex-direction: column; text-align: center; }
  .boite-image-icone h3 { width: 100%; margin: 0 0 3.2px; } /* positions mesurées sur l'original à 375 px */
  .boite-image-icone figure { margin: 0 0 14px; width: 20%; }
  .menu-carte-blanche .bouton-boite { text-align: center; }
  .menu-carte-blanche .bouton-jaune { font-size: 15px; }
  .menu-intro-droite { --fd: column; }
  .carrousel-citations .diapo { text-align: center; }
  .carrousel-citations .avis-pied { justify-content: center; }
  .tf-menu-page { --tf-filets-m: 100%; }
  .s-menu-plats { --g: 40px; --pt: 50px; --pb: 50px; }
  .s-menu-chefs { --pt: 40px; --pb: 40px; }
  .menu-chefs-image { --pt: 40px; --pb: 40px; --pl: 40px; --pr: 40px; }
  .menu-chefs-texte { --g: 40px; --pt: 25px; --pb: 25px; --pl: 25px; --pr: 25px; }
  .tf-chefs { gap: 0; padding: 0; }
  .menu-chefs-p { font-size: 14px; }
}

/* ---------------------------------------------------------------- réservation (gabarit de page : contenu pleine largeur) */
.page-reservation .page-content > section { max-width: 100%; }
.titre-resa .titre-page-sous { font-size: 1rem; }
.s-resa-cadre { --pt: 0px; --pb: 100px; --pl: 0px; --pr: 0px; background-color: var(--noir); }
.s-resa-cadre iframe { display: block; width: 100%; height: 1000px; border: 0; }
.s-resa-fin { background-color: var(--noir); }
@media (max-width: 767px) {
  .s-resa-cadre { --pt: 10px; --pb: 10px; --pl: 10px; --pr: 10px; }
}
