.elementor-129 .elementor-element.elementor-element-768207a{--display:flex;--gap:5px 5px;--row-gap:5px;--column-gap:5px;--margin-top:0px;--margin-bottom:10px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-129 .elementor-element.elementor-element-768207a:not(.elementor-motion-effects-element-type-background), .elementor-129 .elementor-element.elementor-element-768207a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}@media(max-width:390px){.elementor-129 .elementor-element.elementor-element-768207a{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}/* Start custom CSS for html, class: .elementor-element-d9f2142 */.elementor-129 .elementor-element.elementor-element-d9f2142 {
  color: #ffffff !important;
font-size: 12px;
    
}


.elementor-129 .elementor-element.elementor-element-d9f2142 a {
  color: #fff !important;
  text-decoration: none;
}

.elementor-129 .elementor-element.elementor-element-d9f2142 a:hover,
.elementor-129 .elementor-element.elementor-element-d9f2142 a:focus {
  color: #F0F0F2 !important;
}

.elementor-129 .elementor-element.elementor-element-d9f2142 a:active {
  color: #F0F0F2 !important;
}/* End custom CSS */
/* Start custom CSS *//* =========================
   BASE
========================= */

html {
  scroll-behavior: smooth;
}

.menu-qr {
  display: flex;
  flex-direction: column;
  gap: 10px;
  max-width: 480px;
  margin: 0 auto;
  padding: 0px;
}

/* =========================
   NAVIGATION STICKY
========================= */

.ta-menu-nav {
  position: sticky;
  top: 0;
  z-index: 9999;
  display: flex;
  gap: 16px;
  overflow-x: auto;
  white-space: nowrap;
  background: #fff;
  padding: 0px ;
  border-bottom: 1px solid rgba(0,0,0,0.08);
}

.ta-menu-nav::-webkit-scrollbar {
  display: none;
}

.ta-menu-nav a {
  flex-shrink: 0;
  text-decoration: none;
  font-size: 14px;
  font-weight: 600;
  color: #000;
  padding: 6px 0;
}

/* ACTIVE */
.ta-menu-nav a.is-active {
  font-weight: 800;
  text-decoration: underline;
  text-underline-offset: 5px;
}

/* =========================
   SECTIONS
========================= */

.menu-section,
.menu-subsection {
  scroll-margin-top: 90px;
}

.menu-section {
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(0,0,0,0.08);
}

.menu-section:last-child {
  border-bottom: none;
}

.menu-section-header {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 16px;
  margin-bottom: 6px;
}

.menu-section-title {
  margin: 0;
  font-size: 22px;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.menu-subsection .menu-section-title {
  font-size: 18px;
  text-transform: none;
}

.menu-section-price {
  font-size: 18px;
  font-weight: 700;
  white-space: nowrap;
}

.menu-section-description {
  margin: 8px 0px;
  font-size: 14px;
  color: #555;
  line-height: 1.4;
}

/* =========================
   PRODUITS
========================= */

.menu-produit {
  padding: 5px 0;
}

.menu-produit + .menu-produit {
  border-top: 1px dashed rgba(0,0,0,0.08);
}

.menu-produit-header {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 16px;
}

/* NOM + BADGES */
.menu-produit-nom {
  display: inline-flex;
  align-items: baseline;
  gap: 4px;
  flex-wrap: wrap;

  font-size: 16px;
  font-weight: 600;
  line-height: 1.25;
}

/* PRIX */
.menu-produit-prix {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.25;
  white-space: nowrap;
}

/* DESCRIPTION */
.menu-produit-description {
  margin: 4px 0 8px;
  font-size: 14px;
  color: #555;
  line-height: 1.4;
  max-width: 90%;
}

/* =========================
   BADGES INLINE (EMOJI)
========================= */

.menu-badge-inline {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  font-size: 16px;
  line-height: 1;

  margin-left: 2px;

  transform: translateY(1px);
}

/* Twemoji */
.menu-badge-inline img {
  width: 16px;
  height: 16px;
  display: block;
}

/* =========================
   VARIANTES
========================= */

.menu-variantes {
  margin-top: 6px;
  margin-left: 8px;
  margin-right: 100px;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.menu-variante {
  display: flex;
  align-items: baseline;
  gap: 6px;
  font-size: 14px;
  line-height: 1.3;
  color: #444;
}

.menu-variante-nom {
  opacity: 0.85;
}

.menu-variante-dots {
  flex: 1;
  border-bottom: 1px dotted rgba(0,0,0,0.35);
  transform: translateY(-3px);
}

.menu-variante-prix {
  white-space: nowrap;
  font-weight: 500;
}

.menu-variante-nom-seul {
  display: inline-block;
}

/* =========================
   SUPPLÉMENTS
========================= */

.menu-supplements {
  margin-top: 10px;
}

.menu-supplements-title {
  margin: 0 0 4px;
  font-size: 14px;
  font-weight: 700;
}

.menu-supplement {
  display: block;
  font-size: 14px;
  color: #444;
  line-height: 1.35;
}

.menu-supplement-inline {
  margin: 8px 0 0;
  font-size: 14px;
  font-style: italic;
  color: #333;
}
/* =========================
   BOISSONS
========================= */

.menu-section-boissons {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

/* =========================
   MOBILE
========================= */

@media (max-width: 480px) {

  .menu-section-title {
    font-size: 20px;
  }

  .menu-produit-nom,
  .menu-produit-prix {
    font-size: 15px;
  }

  .menu-variante,
  .menu-supplement {
    font-size: 13px;
  }
}


/* =========================
   ROTATION PORTRAIT
========================= */

@media screen and (orientation: landscape) and (max-width: 1024px) {

  body::before {
    content: "";

    position: fixed;
    inset: 0;
    z-index: 999999;

    background: #fff;
  }

  body::after {

    content: "📱AA Merci de repasser votreAtéléphone en mode portrait";

    white-space: pre-line;

    position: fixed;
    inset: 0;
    z-index: 1000000;

    display: flex;
    align-items: center;
    justify-content: center;

    text-align: center;

    font-size: 20px;
    font-weight: 600;
    line-height: 1.5;

    padding: 40px;

    animation: rotatePhone 1.6s ease-in-out infinite;
  }

  .menu-qr,
  .ta-menu-nav {
    display: none;
  }
}

/* Animation */
@keyframes rotatePhone {

  0% {
    transform: rotate(0deg);
  }

  20% {
    transform: rotate(0deg);
  }

  50% {
    transform: rotate(-90deg);
  }

  80% {
    transform: rotate(-90deg);
  }

  100% {
    transform: rotate(0deg);
  }
}

.menu-section-legende {
  margin-top: 12px;
  font-style: italic;
}


.ta-menu-nav-full {
  width: 100%;
  justify-content: space-between;
}

.elementor-widget-shortcode:has(.ta-menu-nav-full),
.elementor-widget-shortcode:has(.ta-menu-nav-full) .elementor-widget-container {
  width: 100%;
}

  .ta-menu-nav-full {
  width: 100%;
  justify-content: space-between;
  padding: 0 5px;
  box-sizing: border-box;
  }/* End custom CSS */