/*
Theme Name: SudFood Child
Version: 2.2
Text Domain: sudfood
Template: sudfood
Description: Child theme – sistema tipografico unificato (Oswald titoli + Inter testi) senza blocchi su colori/dimensioni
*/

/* ===== CSS VARIABLES ===== */
:root{
  --font-primary: "Oswald", sans-serif;     /* Titoli */
  --font-secondary: "Inter", sans-serif;    /* Testi */

  /* Variabili colore (variabili ok; non “forzo” applicazione globale) */
  --color-primary: #B11226;
  --color-text: #111111;
  --qode-main-color: #111111;

  /* Aggiunte per coerenza (erano usate più sotto) */
  --color-white: #ffffff;
  --color-bg-light: #eeeeee;
}

/* ===== BASE ===== */
body{
  font-family: var(--font-secondary);
  font-size: 15px;
  line-height: 1.53333em;
  font-weight: 500;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* ===== PARAGRAFI E LINK ===== */
p{
  font-family: var(--font-secondary);
  font-size: 15px;
  font-weight: 400;
  line-height: 1.6;
  hyphens: none;
  -webkit-hyphens: none;
  -ms-hyphens: none;
  word-wrap: break-word;
  margin-bottom: 20px;
}

p a{
  color: cornflowerblue
  text-decoration: underline;
  transition: color .25s ease-out;
  cursor: pointer;
}
p a:hover{
  color: grey;
}

/* ===== HEADERS ===== */
h1,h2,h3,h4,h5,h6{
  margin: 0 0 12px;
  line-height: 1.15;
}

/* H1 */
h1,.qodef-h1{
  font-family: var(--font-primary);
  font-size: 44px;
  font-weight: 600;
  letter-spacing: -0.5px;
  line-height: 1;
}

/* H2 */
h2,.qodef-h2{
  font-family: var(--font-primary);
  font-size: 36px;
  font-weight: 600;
  letter-spacing: -0.5px;
  margin-top: 80px;
  margin-bottom: 32px;
}

/* H2 Widget titles */
h2.widgettitle{
  font-family: var(--font-secondary);
  font-size: 12px;
  letter-spacing: 0.5px;
  font-weight: 500;
  text-transform: uppercase;
}

/* H3 */
h3,.qodef-h3{
  font-family: var(--font-primary);
  font-weight: 500;
  font-size: 26px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-top: 32px;
  margin-bottom: 14px;
}

/* H4 (Inter, maiuscolo) */
h4,.qodef-h4{
  font-family: var(--font-secondary);
  font-size: 28px;
  font-weight: 600;
  text-transform: uppercase;
}

/* H5 */
h5,.qodef-h5{
  font-family: var(--font-secondary);
  font-size: 18px;
  font-weight: 600;
}

/* H6 */
h6,.qodef-h6{
  font-family: var(--font-secondary);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
  text-transform: uppercase;
}

/* ===== TITOLI POST / CARD (Elementor Posts: blog/magazine) =====
   NOTA: qui manteniamo Oswald. Abbiamo rimosso la duplicazione che li rimetteva in Inter. */
.elementor-widget-posts .elementor-post__title,
.elementor-widget-posts .elementor-post__title a,
.elementor-posts .elementor-post__card .elementor-post__title{
  font-family: var(--font-primary);
  font-weight: 600;
  letter-spacing: -0.3px;
}

/* ===== ELENCHI ===== */
ul,ol{
  font-family: var(--font-secondary);
  margin-left: 20px;
  padding-left: 10px;
}
ul li{ margin-bottom: 10px; }

/* ===== ELEMENTI SPECIFICI TEMA ===== */
.qodef-section-title .qodef-m-title .qodef-highlight-text,
.qodef-highlight-text,
.elementor-widget-heading .qodef-highlight-text,
.elementor-heading-title .qodef-highlight-text,
.qodef-m-title .qodef-highlight-text,
span.qodef-highlight-text{
  font-family: inherit;
  font-weight: 300;
  text-transform: none;
}

/* Spazio sopra i titoli sezione Qode */
.qodef-section-title .qodef-m-title{
  margin-top: 50px;
}

/* Footer */
.qodef-home-copy{
  font-family: var(--font-secondary);
  font-size: 12px;
  text-align: center;
  text-transform: none;
}

/* Slogan principale */
p.qodef-shortcode{
  font-family: "Tesla", serif;
  font-size: 75px;
  line-height: 1.2;
  hyphens: none;
  text-align: left;
  font-weight: 300;
}

/* ===== WOOCOMMERCE ===== */
#qodef-woo-page .quantity input[type="number"]{
  font-family: var(--font-secondary);
  font-weight: 700;
  color: var(--qode-main-color);
  font-size: 20px;
}

#qodef-woo-page.qodef--checkout .wc_payment_methods label{
  font-family: var(--font-secondary);
  font-weight: 700;
  font-size: 18px;
  line-height: initial;
}

.woocommerce-checkout label{
  font-family: var(--font-secondary);
  font-size: 15px;
}

#place_order{
  font-family: var(--font-secondary);
  font-size: 18px;
  font-weight: 700;
  text-transform: uppercase;
}

.widget_mediteraneo_core_woo_dropdown_cart .woocommerce-mini-cart-item a,
.widget_shopping_cart .woocommerce-mini-cart-item a{
  font-family: var(--font-secondary);
  font-size: 18px;
  line-height: 24px;
  font-weight: 500;
}

/* ===== MENU E NAVIGAZIONE ===== */
.qodef-header-navigation > ul > li > a{
  font-family: var(--font-secondary), sans-serif;
}
.qodef-header-navigation > ul > li.qodef-menu-item--narrow ul li > a{
  font-family: var(--font-secondary), sans-serif;
  font-size: 14px;
  font-weight: 400;
}
.qodef-mobile-header-navigation > ul > li > a{
  font-family: var(--font-secondary), sans-serif;
  font-size: 15px;
}
.qodef-mobile-header-navigation ul li ul li a{
  font-family: var(--font-secondary), sans-serif;
  font-size: 15px !important;
  font-weight: 500 !important;
}

/* ===== ELEMENTI SPECIFICI PAGINE ===== */
.faq-question{ font-size: 18px; }

.elementor-19879 .elementor-element.elementor-element-a1e57f7 .qodef-qi-section-title .qodef-m-title{
  font-weight: 700;
}

.page-id-21551 h6,
.page-id-21551 .qodef-h6{
  text-transform: none;
}

/* ===== RESPONSIVE ===== */
@media screen and (max-width: 768px){
  #fooevents_bookings_slot_date_val_trans_field label{
    font-size: 18px;
    font-weight: bold;
  }
  .woocommerce-cart-form__cart-item .qodef-quantity-buttons.quantity .input-text.qty.text.qodef-quantity-input{
    font-size: 16px;
  }
  .woocommerce-page .shop_table{ font-size: 14px; }
}

@media only screen and (max-width: 680px){
  #qodef-woo-page.qodef--checkout #customer_details h3{ font-size: 30px; }
}

@media screen and (max-width: 480px){
  h1,.qodef-h1{ font-size: 36px; }

  h2,.qodef-h2{
    font-size: 30px;
    margin-top: 48px;
    margin-bottom: 20px;
  }

  h3,.qodef-h3{ font-size: 22px; }
  .woocommerce-order-received .woocommerce-order h2{ font-size: 24px; }
  .elementor-posts .elementor-post__card .elementor-post__title{ font-size: 20px; }

  h4,.qodef-h4{ font-size: 22px; }
  h5,.qodef-h5{ font-size: 20px; }
  h6,.qodef-h6{ font-size: 18px; }

  p.qodef-shortcode{ font-size: 45px; }
}

.elementor-cta__title{ font-size: 23px !important; }

/* ===== ELEMENTI GRAFICI E COLORI ===== */
.elementor-widget-animated-headline .elementor-headline-dynamic-wrapper path,
.qodef-svg--menu-circle path,
.qodef-svg--highlight-circle path{
  stroke: var(--color-primary) !important;
}

.elementor-widget-animated-headline .elementor-headline-plain-text,
.elementor-widget-animated-headline .elementor-headline-dynamic-text,
.elementor-widget-animated-headline .elementor-headline{
  font-family: var(--font-primary) !important;
  font-weight: 700 !important;
  word-wrap: break-word !important;
  color: var(--color-text) !important;
}

.sfondo_nero{ background-color: var(--color-text) !important; }
.sfondo_bianco{ background-color: var(--color-white) !important; }
.sfondo_grigio{ background-color: var(--color-bg-light); }

.sfondo_scuro .qodef-separator .qodef-m-line{
  border-bottom: 1px solid var(--color-white);
}

.sfondo_nero,
.sfondo_nero .elementor-heading-title,
.sfondo_scuro{
  color: var(--color-white) !important;
}

/* ===== WOOCOMMERCE E PRODOTTI =====
   NOTA INCONGRUENZA RISOLTA: prima questi selettori coincidevano con i titoli post/card.
   Li rendiamo SHOP-specifici, così non toccano il magazine/blog. */

/* Titoli prodotti (solo aree shop/woocommerce) */
.woocommerce .elementor-widget-posts .elementor-post__title,
.woocommerce .elementor-widget-posts .elementor-post__title a,
.woocommerce .elementor-posts .elementor-post__card .elementor-post__title{
  font-family: var(--font-secondary) !important;
  font-weight: 700 !important;
  word-wrap: break-word !important;
  color: var(--color-text) !important;
  font-size: 21px !important;
  text-align: center !important;
  padding: 10px 20px !important;
  text-transform: uppercase !important;
}

/* Badge prodotti */
.woocommerce .elementor-widget-posts .elementor-post__card .elementor-post__badge{
  background-color: var(--color-primary) !important;
  font-family: var(--font-secondary) !important;
  font-weight: 400 !important;
}
.woocommerce .elementor-posts .elementor-post__badge{
  border-radius: 0px !important;
}

/* Meta data prodotti */
.woocommerce .elementor-posts .elementor-post__card .elementor-post__meta-data{
  font-family: var(--font-secondary) !important;
  font-weight: 400 !important;
}

/* Contenuto prodotti */
.qodef-woo-product-list .qodef-e-content{
  font-family: var(--font-secondary) !important;
  font-size: 21px !important;
  margin: 13px 0 32px !important;
}

/* Stock quantity */
li.product p.stock-quantity{
  font-family: var(--font-secondary) !important;
  background-color: lightgray !important;
  color: var(--color-primary) !important;
  padding: 5px 10px !important;
  margin-top: 10px !important;
  text-align: center !important;
  font-size: 18px !important;
  font-weight: 600 !important;
}

/* Pulsanti prodotti */
ul.products li.product .button{
  background-color: #000000 !important;
  font-family: var(--font-secondary) !important;
  font-size: 20px !important;
  font-weight: bold !important;
  text-transform: uppercase !important;
  padding: 25px 50px !important;
}

/* Prezzo prodotti */
.woocommerce-Price-amount.amount{ font-weight: bold !important; }
.woocommerce-Price-amount.amount bdi{
  font-size: 20px;
  font-weight: bold !important;
}
/* ===== FORM E CAMPI ===== */
.form-row.attendee-class {
  margin-top: 30px !important;
}

/* ===== FOOEVENTS ===== */
.fooevents-bookings-slot label {
  text-align: left;
  font-weight: 700;
}

#fooevents_bookings_slot_date_val_trans_field {
  display: block;
  clear: both;
  margin-top: 5px !important;
  width: 100%;
  float: left;
}

#fooevents_bookings_slot_date_val_trans_field label {
  font-family: var(--font-secondary) !important;
  font-size: 22px !important;
  font-weight: 700 !important;
}

.fooevents-variation-desc {
  display: none !important;
}

/* Pulsante add to cart */
button.single_add_to_cart_button {
  float: left;
  margin-top: 0;
}

.single_add_to_cart_button {
  margin-top: 25px !important;
  font-weight: 700;
  font-size: 16px;
}

/* ===== VARIAZIONI PRODOTTO ===== */
table.variations td {
  padding: 20px;
}

table.variations .select2-container--default {
  display: block !important;
  margin: 0 !important;
  width: 100% !important;
}

table.variations tr {
  border: none;
}

table.variations th,
table.variations td {
  padding: 5px 0;
  text-align: left;
  border-right: none;
}

.variations th.label {
  width: 30% !important;
}
.variations td.value {
  width: 70% !important;
}

.woocommerce-variation-availability,
.woocommerce-variation-price {
  display: inline-block;
}

.woocommerce-variation-availability {
  display: none !important;
}

.woocommerce-variation-description p {
  color: var(--color-primary) !important;
  font-weight: 700 !important;
}

.woocommerce-variation.single_variation .woocommerce-variation-price {
  margin-top: 5px;
  margin-bottom: 25px;
}

.reset_variations {
  font-size: 13px;
  line-height: 15px;
  color: #999;
  text-transform: uppercase;
  display: none !important;
}

/* ===== QUANTITÀ E CARRELLO ===== */
.qodef-quantity-buttons.quantity {
  height: 57px;
}

.qodef-quantity-buttons.quantity .input-text.qty.text.qodef-quantity-input {
  border: 1px solid var(--color-text);
  padding: 0 10px 0 25px !important;
  width: 100px !important;
  text-align: center !important;
}

/* Nota: era scritto "is(...)" senza ":" e senza "." su :is */
:is(.elementor-widget-woocommerce-product-add-to-cart,
    .woocommerce div.product .elementor-widget-woocommerce-product-add-to-cart,
    .elementor-widget-wc-add-to-cart,
    .woocommerce div.product .elementor-widget-wc-add-to-cart) .quantity .qty {
  vertical-align: middle;
  margin-right: 0 !important;
  text-align: center !important;
  padding: 0 25px !important;
}

/* ===== DEPOSITI E PAGAMENTI ===== */
.awcdp-deposits-wrapper .awcdp-deposits-option {
  border-radius: 0 !important;
  width: 100% !important;
  background: transparent !important;
  border: none !important;
}

.awcdp-deposits-wrapper .awcdp-deposits-option .awcdp-radio {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.awcdp-deposits-wrapper .awcdp-deposits-option .awcdp-radio .awcdp-deposits-description {
  margin-left: 35px !important;
  font-size: 13px;
  line-height: 1.53333em;
  color: var(--color-primary);
  font-weight: 400;
  margin-top: 5px;
  font-family: var(--font-secondary);
}

/* ===== ACCORDION E TABS ===== */
.elementor-widget-accordion .elementor-tab-content {
  font-family: var(--font-secondary);
  font-weight: 400;
  line-height: 1.6;
}

.elementor-widget-text-editor {
  font-family: var(--font-secondary);
  font-weight: 400;
  line-height: 1.6;
}

.woocommerce .elementor-widget-woocommerce-product-price .price {
  font-family: var(--font-secondary);
  font-weight: 600;
}

.elementor-widget-accordion .elementor-accordion-icon svg,
.elementor-widget-accordion .elementor-active .elementor-accordion-icon svg {
  fill: var(--color-primary) !important;
}

.elementor-widget-accordion .elementor-accordion-icon,
.elementor-widget-accordion .elementor-accordion-title,
.elementor-widget-accordion .elementor-active .elementor-accordion-icon,
.elementor-widget-accordion .elementor-active .elementor-accordion-title {
  font-size: 20px;
}

.elementor-accordion .elementor-tab-title {
  padding-left: 25px !important;
  padding-right: 25px !important;
}
.elementor-accordion .elementor-tab-content {
  padding: 25px !important;
}

.qodef-tabs.qodef-layout--simple .qodef-tabs-content {
  margin: 50px 0 0 !important;
}

/* ===== SOCIAL SHARE ===== */
.qodef-social-share ul {
  margin-top: 0;
}

.qodef-social-share li a {
  font-size: 25px;
}

.qodef-social-share.qodef-layout--list li {
  margin-right: 0;
  margin-left: 20px;
}

.qodef-social-share li a svg {
  width: auto !important;
  height: 25px !important;
  margin-top: 2px !important;
}

/* era "ahover" -> corretto */
.qodef-social-share li a:hover {
  color: var(--color-primary) !important;
}

/* ===== WIDGET CARRELLO ===== */
.widget_mediteraneo_core_woo_dropdown_cart .qodef-m-opener,
.widget_mediteraneo_core_woo_dropdown_cart .widgettitle,
.widget_shopping_cart .qodef-m-opener,
.widget_shopping_cart .widgettitle {
  font-family: var(--font-secondary);
  font-size: 12px;
  font-weight: 500;
  line-height: 1.53333em;
  color: var(--color-text);
  letter-spacing: 0.05em;
  text-transform: uppercase;

  /* FIX MOBILE */
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  touch-action: manipulation !important;
}

.qodef-header-sticky .widget_shopping_cart .widgettitle {
  color: var(--color-white);
}

/* ===== ICON LIST ===== */
.awcdp-deposits-wrapper .awcdp-deposits-option .awcdp-radio input[type="radio"] + .awcdp-radio-label,
.e-woo-select2-wrapper .select2-results__option,
.elementor-widget-icon-list .elementor-icon-list-item .elementor-icon-list-text,
.elementor-widget-icon-list .elementor-icon-list-item a,
.inclusi_nel_corso {
  font-family: var(--font-secondary);
  font-size: 15px;
  font-weight: 500;
  line-height: 1.53333em;
  text-transform: uppercase;
  color: var(--color-text);
}

.elementor-widget-icon-list .elementor-icon-list-icon svg {
  fill: var(--color-primary) !important;
}

.elementor-icon-list-text {
  width: 100% !important;
  font-weight: 400 !important;
}

.elementor-icon-list-text a {
  display: inline !important;
}

/* ===== BOTTONI ===== */
/* era "bodynot(...)" -> corretto in body:not(...) + aggiunto :not(...) corretto */
body:not(.woocommerce-block-theme-has-button-styles) .wc-block-components-button:not(.is-link),
.qodef-button.qodef-html--link {
  font-family: var(--font-secondary);
  font-weight: 500;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.05em;
  position: relative;
  display: inline-flex;
  vertical-align: middle;
  width: auto;
  margin: 0;
  text-decoration: none;
  text-transform: uppercase;
  border-radius: 0;
  outline: 0;
  transition: color .25s ease-out, background-color .25s ease-out, border-color .25s ease-out;
  padding: 19px 29px;
}

body:not(.woocommerce-block-theme-has-button-styles) .wc-block-components-button:not(.is-link) {
  color: var(--color-white);
  background-color: var(--color-text);
  border: 1px solid transparent;
  width: 100%;
}

.sfondo_nero .qodef-button {
  color: var(--color-white) !important;
  background-color: var(--color-primary) !important;
  margin: 26px 0 0;
}

/* era ".qodef-buttonhover" -> corretto hover */
.sfondo_nero .qodef-button:hover {
  color: var(--color-text) !important;
  background-color: var(--color-white) !important;
  margin: 26px 0 0;
}

.sfondo_nero .qodef-button:hover .qodef-m-text {
  color: var(--color-text) !important;
}

#place_order,
.checkout-button {
  background-color: var(--color-primary) !important;
  width: 100% !important;
  justify-content: center;
}
/* ===============================
   BACK TO TOP
================================ */
#qodef-back-to-top .qodef-back-to-top-icon {
  background-color: var(--color-primary);
  border: 1px solid var(--color-primary);
}

#qodef-back-to-top.qodef--predefined-hover .qodef-back-to-top-icon {
  color: var(--color-white);
  background-color: var(--color-primary);
  clip-path: circle(45%);
}

.btt-1,
.btt-2 {
  stroke: var(--color-white) !important;
}


/* ===============================
   PAGINE SPECIALI
================================ */
.qodef-page-title.qodef-title--breadcrumbs {
  display: none !important;
}

.annotazione_nota {
  background-color: var(--color-bg-light);
  padding: 10px;
  font-weight: 700;
  font-size: 13px;
}

.in_evidenza {
  padding: 2.5rem;
  background-color: var(--color-bg-light);
}

.annotazione_prezzo {
  font-size: 20px;
  font-weight: 700 !important;
}


/* ===============================
   COLONNE E LAYOUT
================================ */
.due_colonne {
  column-gap: 30px;
  columns: 2;
  column-fill: balance;
}

.inclusi_nel_corso .elementor-element-populated {
  padding: 0 !important;
}

.inclusi_nel_corso ul {
  list-style: none !important;
}

.inclusi_nel_corso {
  text-transform: none;
}


/* ===============================
   TEAM E IMMAGINI
================================ */
.qodef-team-list.qodef-item-layout--info-below .qodef-e-content {
  margin: 75px 0 -15px;
  background: var(--color-text);
  min-width: 300px;
  text-align: center;
  padding: 50px 25px;
  position: relative;
  z-index: 2;
}

/* Variabile di tema (border color) */
.qodef-team-list.qodef-item-layout--info-below .qodef-e .qodef-e-inner {
  --qode-border-color: var(--color-text);
}

.teamhover .sfondo_nero {
  background-color: var(--color-primary) !important;
}

.team img {
  max-width: 999px !important;
  width: calc(100% - 20px) !important;
  padding: 50px 20px;
  background-color: var(--color-bg-light);
}

.team .didascalia {
  padding: 30px;
}

.team .didascalia h6 {
  font-weight: 400 !important;
}

.team .didascalia p {
  font-size: 16px;
  line-height: 1.2;
}


/* ===============================
   CAROSELLI E SLIDER
================================ */
.swiper-pagination-bullets .swiper-pagination-bullet:hover,
.swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: var(--color-primary);
}

.elementor-image-carousel-caption {
  text-align: left !important;
  margin-top: 10px !important;
  font-family: var(--font-secondary) !important;
  font-size: 15px !important;
  line-height: 1.53333em !important;
  font-weight: 400 !important;
  color: var(--color-text) !important;
}

/* Immagini carousel */
.elementor-widget-image-carousel img {
  width: 100%;
  max-width: 100%;
  height: auto;
  object-fit: cover;
}

.elementor-widget-image-carousel .elementor-image-carousel-wrapper {
  overflow: hidden;
}

.elementor-widget-image-carousel .swiper-container {
  max-width: 100%;
  margin: 0 auto;
}

/* Colonne Elementor */
.elementor-column {
  max-width: 100%;
  overflow: hidden;
}


/* ===============================
   FOOTER
================================ */
#qodef-page-footer .qodef-alignment--center .widget img {
  margin-right: auto;
  margin-left: auto;
  height: 100px !important;
  width: auto !important;
  margin-bottom: 50px;
}

#qodef-page-footer-top-area {
  background-color: #c5cbc9;
}

.qodef-home-copy,
#qodef-page-footer .widget a {
  color: var(--color-text) !important;
}

#qodef-page-footer-top-area-inner .widget_mediteraneo_core_svg_icon {
  margin: 0 5px !important;
}


/* ===============================
   MENU E NAVIGAZIONE
================================ */
.max_mega_menu .qodef-drop-down-second .qodef-content-grid {
  width: 100% !important;
  padding: 0 25px;
}

/* ⚠️ Nota: nel file originale c’era un selettore “incollato” non valido.
   Qui metto una versione sensata (se non serve, la togliamo dopo test). */
.qodef-header-navigation ul li.qodef-menu-item--wide .qodef-drop-down-second-inner ul li a {
  font-weight: 700;
}

.qodef-header--divided #qodef-page-header .qodef-divided-header-right-wrapper .qodef-widget-holder {
  margin-left: 44px;
}

.qodef-header-navigation ul li a .qodef-menu-item-arrow {
  position: absolute;
  top: calc(50% - 6px);
  right: -10px;
  height: auto;
  display: block;
}

.qodef-header-navigation ul li.qodef-menu-item--narrow ul {
  left: 0;
}

/* Link “placeholder” nel mega menu (versione corretta del selettore rotto) */
.qodef-header-navigation ul li.qodef-menu-item--wide .qodef-drop-down-second-inner ul li ul li a[href="#"] {
  color: #999 !important;
}

/* Cerchio hover menu (selettore corretto del vecchio “qodef-header-navigationullia”) */
.qodef-header-navigation ul li a .qodef-menu-item-circle {
  min-height: 45px;
  position: absolute;
  place-self: center;
  width: calc(100% + 30px);
  height: calc(100% + 70%);
  opacity: 0;
  transition: opacity .25s ease-out;
  transition-delay: .8s;
  --qodef-svg-path-length: 225px;
}

/* Nasconde specifico item menu */
li.menu-item.menu-item-20818 {
  display: none !important;
}


/* ===============================
   MOBILE HEADER
================================ */
.qodef-mobile-header--standard #qodef-page-mobile-header-inner .qodef-mobile-header-logo-link {
  margin-right: 0;
}

#qodef-page-mobile-header .qodef-widget-holder .widget {
  margin: 0;
}

.qodef-mobile-header--standard #qodef-page-mobile-header-inner {
  justify-content: space-between;
}

.qodef-mobile-header-opener {
  font-size: 20px;
  margin-left: 0;
  width: 50px;
  height: 50px;
  text-align: right;
  display: flex !important;
  align-content: center;
  align-items: center;
  justify-content: flex-end;
}

.qodef-mobile-header-opener.qodef-opener-icon .qodef-m-icon.qodef--close {
  top: 50%;
  left: 50%;
  transform: translate(0, -50%);
}

.qodef-mobile-header-navigation ul li .qodef-menu-item-arrow {
  position: absolute;
  top: 8px;
  right: 0;
  height: auto;
  color: currentColor;
  z-index: 9;
  cursor: pointer;
  transition: color .25s ease-out, transform .25s ease-out;
  transform: rotate(0);
  box-sizing: border-box;
  width: 15px;
  height: 15px;
}

.qodef-mobile-header-navigation ul li {
  position: relative;
  margin: 5px 0;
  padding: 10px 0;
}


/* ===============================
   UTILITIES E SPACING
================================ */
.py_200 { padding-top: 200px !important; padding-bottom: 200px !important; }
.py_50  { padding-top: 50px !important;  padding-bottom: 50px !important; }

.pt_100, .py_100 { padding-top: 100px !important; }
.pb_100, .py_100 { padding-bottom: 100px !important; }

.mt_100, .my_100 { margin-top: 100px !important; }
.mb_100, .my_100 { margin-bottom: 100px !important; }

.px_5rem  { padding-left: 5rem !important;  padding-right: 5rem !important; }
.px_10rem { padding-left: 10rem !important; padding-right: 10rem !important; }

.mb_-100 { margin-bottom: -100px !important; }
.p_5     { padding: 5rem; }

.qodef-m-title { margin-bottom: 25px !important; }

.qodef-section-title p.qodef-m-text { margin-top: 10px !important; }

.qodef-shortcode.qodef-section-title .qodef-button { margin-top: 25px !important; }

/* ===============================
   WOOCOMMERCE CART & CHECKOUT
================================ */

/* Cart */
.woocommerce-loop-product__link {
  margin-left: 20px;
  margin-right: 20px;
}

.woocommerce-loop-product__link .attachment-woocommerce_thumbnail {
  margin-left: -20px;
}

.woocommerce-cart .ywgc_have_code {
  display: none;
}

/* Woo Blocks cart table */
.is-large.wc-block-cart .wc-block-cart-items th {
  padding: 8px 16px !important;
  white-space: nowrap;
}

.wc-block-cart-items tr {
  border: none;
}

.editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-product-name,
table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-product-name {
  display: block;
  line-height: 1.4;
  max-width: max-content;
  font-family: var(--font-primary) !important;
  font-size: 20px;
}

.wc-block-cart__submit-button {
  margin-top: 25px !important;
}

.components-button.wc-block-components-checkout-place-order-button {
  width: 50% !important;
}

#coupon_code {
  height: 52px;
}

/* Input fields (Woo Blocks + base inputs) */
.wc-block-components-form .wc-block-components-text-input,
.wc-block-components-text-input,
input[type="date"],
input[type="email"],
input[type="number"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="text"],
input[type="url"],
select,
textarea {
  margin: 0;
  outline: 0;
  padding: 0 !important;
  line-height: 50px;
  height: 52px;
  font-weight: 400;
}

/* Bordo input (Woo Blocks) */
.wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input,
.wc-block-components-form .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input,
.wc-block-components-form .wc-block-components-text-input input[type="email"],
.wc-block-components-form .wc-block-components-text-input input[type="number"],
.wc-block-components-form .wc-block-components-text-input input[type="tel"],
.wc-block-components-form .wc-block-components-text-input input[type="text"],
.wc-block-components-form .wc-block-components-text-input input[type="url"],
.wc-block-components-text-input input[type="email"],
.wc-block-components-text-input input[type="number"],
.wc-block-components-text-input input[type="tel"],
.wc-block-components-text-input input[type="text"],
.wc-block-components-text-input input[type="url"] {
  border-color: #AAA !important;
}

/* Checkout layout */
.woocommerce-billing-fields__field-wrapper {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 30px;
}

.woocommerce-page div.woocommerce form p.form-row-wide {
  flex: 100%;
}

/* Dati partecipante (2 colonne) */
.attendee-class.form-row-wide {
  width: calc(50% - 30px);
  float: left;
  margin-right: 30px !important;
}

.woocommerce-page div.woocommerce form p.form-row-first,
.woocommerce-page div.woocommerce form p.form-row-last {
  flex: calc(50% - 30px);
}

/* Col2-set */
.woocommerce-page div.woocommerce .col2-set {
  position: relative;
  display: flex;
  align-items: flex-start;
  margin: 0;
  gap: 50px;
  border-bottom: 1px solid var(--color-text);
  padding: 0;
  margin-bottom: 50px;
}

#order_comments {
  border-bottom: none;
}

/* Colonne */
.cart-collaterals,
.woocommerce-page div.woocommerce .col2-set.col-2 {
  flex: 30%;
}

.woocommerce-cart-form,
.woocommerce-page div.woocommerce .col2-set.col-1 {
  flex: 70%;
}

.cart-collaterals {
  flex: calc(30% - 50px);
}

.woocommerce-cart-form {
  flex: calc(70% - 50px);
}

/* Background pagine Woo */
.woocommerce-checkout #qodef-page-outer,
.woocommerce-cart #qodef-page-outer {
  background-color: var(--color-white);
}

/* Checkout labels */
.woocommerce-checkout label {
  font-family: var(--font-secondary);
  font-weight: 500;
  font-size: 12px;
  line-height: 1;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.woocommerce form .form-row .required {
  color: var(--color-primary) !important;
}

.woocommerce-billing-fields .fooevents-attendee-number {
  font-size: 25px !important;
}

.woocommerce-billing-fields .fooevents-eventname {
  display: none !important;
}


/* ===============================
   MESSAGGI E NOTIFICHE
================================ */
.woocommerce-error,
.woocommerce-info {
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
  padding: 20px;
  margin-bottom: 30px !important;
  border: 1px solid var(--color-text);
  list-style: none;
  gap: 0;
  background-color: var(--color-bg-light);
}

.woocommerce-message {
  display: flex;
  justify-content: center;
  flex-direction: row-reverse;
  align-items: center;
  padding: 20px;
  margin-bottom: 30px !important;
  border: 1px solid var(--color-text);
  list-style: none;
  gap: 0;
  background-color: var(--color-bg-light);
}

.woocommerce-error {
  background-color: var(--color-primary) !important;
  border: none;
}

.woocommerce-message .button.wc-forward {
  background-color: var(--color-primary);
}

.woocommerce-error li,
.woocommerce-info li,
.woocommerce-message li {
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  gap: 12px;
  align-content: center;
}

.woocommerce-error li {
  flex-direction: row;
  gap: 0;
  color: var(--color-white);
}

.woocommerce-error li strong {
  margin-right: 6px;
}


/* ===============================
   GIFT CARDS (YITH)
================================ */
.ywgc-amount-buttons,
.elementor-widget-woocommerce-product-content {
  font-size: 15px !important;
  line-height: 1.53333em !important;
  color: var(--color-text) !important;
  -webkit-font-smoothing: antialiased;
}

.ywgc-predefined-amount-button.selected_button {
  background-color: var(--color-primary) !important;
  border-color: var(--color-primary) !important;
  color: var(--color-white) !important;
}

.gift-card-content-editor.step-content h5 {
  font-family: var(--font-secondary) !important;
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 18px !important;
  text-transform: capitalize !important;
}

.gift-cards_form h3 {
  font-size: 25px;
  line-height: 1.07692em;
  margin: 25px 25px 25px 0;
  word-wrap: break-word;
  display: inline !important;
}

/* Correzione selettore rotto: era ".gift-cards_formh3" */
.gift-cards_form h3 {
  display: inline !important;
}

.ywgc-single-recipient {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  flex-wrap: nowrap;
}

.gift-card-content-editor.step-content input {
  float: none;
  width: 100%;
  max-width: 100% !important;
  padding: 0;
  margin: 0;
}

.ywgc-single-recipient div {
  width: 45%;
}

.gift-card-content-editor.step-content label {
  display: block;
  text-align: left;
  line-height: 1;
}

.ywgc-single-recipient .ywgc-recipient-name {
  margin-bottom: 0;
}

.ywgc-message {
  display: none !important;
}
/* ===============================
   ORDER RECEIVED (Thank you page)
================================ */
.woocommerce-order-received .woocommerce-order .woocommerce-thankyou-order-received{
  font-family: var(--font-primary);
  font-weight: 700;
  color: var(--qode-main-color);
  font-size: 48px;
  line-height: 1.07692em;
  margin: 5rem !important;
  text-align: center;
}

.woocommerce-order-received .woocommerce-order .woocommerce-order-overview{
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  border: 1px solid var(--color-text);
  margin-bottom: 25px;
  background-color: var(--color-bg-light);
  padding: 30px;
}

.woocommerce-order-received .woocommerce-order .woocommerce-order-overview li{
  position: relative;
  margin: 0;
  padding: 15px 0;
  flex: 100%;
  border: none;
  text-align: center;
}

.woocommerce-order-received .woocommerce-order .woocommerce-order-overview li strong{
  display: block;
}

/* Titolo sezione ordine (thank you) */
.woocommerce-order-received .woocommerce-order h2{
  font-size: 48px;
}

.woocommerce-bacs-bank-details,
.woocommerce-customer-details{
  background-color: var(--color-bg-light);
  padding: 30px;
  margin-top: 25px;
}

.woocommerce-order-details{
  border: 1px solid var(--color-text);
  padding: 30px;
}

.woocommerce-customer-details,
.woocommerce-table.woocommerce-table--custom-fields.shop_table.custom-fields{
  display: none;
}


/* ===============================
   CONTACT FORM 7
================================ */
.wpcf7-list-item{
  display: inline-block;
  margin: 0 1em 0 0;
}

label.half{
  width: 48%;
  float: left;
}

label.half.left{
  margin-right: 2%;
}

label.half.right{
  margin-left: 2%;
}

.qodef-contact-form-7 .wpcf7-form-control-wrap{
  margin: 0;
}

.wpcf7-not-valid-tip{
  font-size: 10px;
  text-transform: uppercase;
}


/* ===============================
   BLOG & POSTS
================================ */
.single-post #qodef-page-inner{
  margin-top: 100px;
  margin-bottom: 100px;
}

#qodef-page-comments{
  display: none !important;
}

.qodef-blog .qodef-e-content{
  text-align: left !important;
}

.solo_mobile{
  display: none;
}

.elementor-slideshow__title{
  display: none !important;
}

.elementor-lightbox .dialog-lightbox-close-button{
  z-index: 9999999;
}


/* ===============================
   404 PAGE
================================ */
#qodef-404-page{
  position: relative;
  display: inline-block;
  width: 100%;
  vertical-align: top;
  padding: 200px 10%;
  text-align: center;
}

#qodef-404-page .qodef-404-text{
  margin: 50px auto 0 !important;
}


/* ===============================
   PAGINATION / POSTS GRID
================================ */
.page-numbers.current{
  text-decoration: underline;
}

.elementor-20567 .elementor-element.elementor-element-5e0819b .elementor-pagination{
  background-color: var(--color-white) !important;
}

.elementor-card-shadow-yes .elementor-post__card{
  box-shadow: none !important;
}

.elementor-posts .elementor-post__card .elementor-post__meta-data,
.elementor-posts .elementor-post__card .elementor-post__text{
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-top: 0 !important;
}

.elementor-posts .elementor-post__card .elementor-post__excerpt,
.elementor-posts .elementor-post__card .elementor-post__title{
  margin-bottom: 0 !important;
}

.elementor-posts .elementor-post__card .elementor-post__meta-data{
  padding-top: 10px !important;
  margin-bottom: 0;
  border-top: none !important;
}

.elementor-posts .elementor-post__text{
  flex-grow: unset !important;
}


/* ===============================
   UTILITIES FINALI
================================ */
/* Nascondi reCAPTCHA badge */
.grecaptcha-badge{
  display: none !important;
}

/* Paragrafi specifici */
p.stock-quantity,
p.product-start-date{
  text-align: center !important;
}


/* ===============================
   RESPONSIVE DESIGN
================================ */

/* Tablet - max-width 1200px */
@media only screen and (max-width: 1200px){
  .solo_mobile{ display: block; }
}

/* Tablet - max-width 1512px */
@media only screen and (max-width: 1512px){
  .qodef-h3,
  h3{
    line-height: 50px;
  }
}

/* Desktop small - max-width 1280px */
@media screen and (max-width: 1280px){
  .elementor-841 .elementor-element.elementor-element-50b5ded{
    width: var(--container-widget-width, 80%) !important;
    max-width: 80% !important;
    --container-widget-width: 80% !important;
    --container-widget-flex-grow: 0;
  }
}

/* Tablet - max-width 1024px */
@media screen and (max-width: 1024px){

  /* Menu: riattiva item nascosto su desktop */
  li.menu-item.menu-item-20818{
    display: block !important;
  }

  /* Slogan responsive */
  p.qodef-shortcode{
    font-size: 36px !important;
    line-height: 0.8 !important;
    text-align: center !important;
  }

  /* Container adjustments */
  .e-con-full,
  .e-con.e-con-inner{
    padding-block-start: 0 !important;
    padding-block-end: 0 !important;
  }

  .sfondo_nero .e-con-inner,
  .sfondo_grigio .e-con-inner,
  .sfondo_scuro .e-con-inner,
  .sfondo_nero .elementor-container,
  .sfondo_grigio .elementor-container,
  .sfondo_scuro .elementor-container,
  .qodef-elementor-content-grid .e-con-boxed,
  .gestiscilarghezza .e-con-full .elementor-element,
  .sfondo_nero .e-con-inner .e-con-full,
  .mt_100 .e-con-boxed .e-con-inner,
  .qodef-elementor-content-grid .e-con-full,
  .gestiscilarghezza .elementor-container,
  .single-product .elementor-widget-image-carousel{
    width: 90% !important;
    max-width: 90% !important;
    margin-left: auto;
    margin-right: auto;
  }

  .qodef-elementor-content-grid .e-con-full.e-parent.e-child,
  .qodef-elementor-content-grid .e-con-full.e-parent.e-child.e-child,
  .gestiscilarghezza .e-con-full.e-parent.e-child,
  .elementor-widget-mediteraneo_core_section_title{
    width: 100% !important;
    max-width: 100% !important;
    padding: 0;
  }

  .sfondo_nero .elementor-container .elementor-element-populated,
  .sfondo_grigio .elementor-container .elementor-element-populated{
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .sfondo_nero .e-con-boxed.e-con-inner,
  .sfondo_grigio .e-con-boxed.e-con-inner,
  .sfondo_nero,
  .sfondo_grigio,
  div[data-element_type="container"].qodef-elementor-content-grid.elementor-container,
  div[data-element_type="container"].qodef-elementor-content-grid.elementor-element,
  section.qodef-elementor-content-grid.elementor-container,
  section.qodef-elementor-content-grid.elementor-element{
    width: 100% !important;
    max-width: 100% !important;
  }

  .sfondo_nero,
  .sfondo_grigio,
  .sfondo_scuro{
    width: 100vw !important;
    max-width: 100vw !important;
  }

  .qodef-grid-lines .qodef-grid-lines-holder{
    display: none;
  }

  /* Spacing adjustments */
  .py_200{
    padding-top: 100px !important;
    padding-bottom: 100px !important;
  }

  .pt_100, .py_100, .py_50{ padding-top: 50px !important; }
  .pb_100, .py_100, .py_50{ padding-bottom: 50px !important; }

  .mt_100, .my_100{ margin-top: 50px !important; }
  .mb_100, .my_100{ margin-bottom: 50px !important; }

  .px_5rem{
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .px_10rem{
    padding-left: 50px !important;
    padding-right: 50px !important;
  }

  .mb_-100{ margin-bottom: -50px !important; }

  .p_5{ padding: 50px; }

  .elementor-widget-mediteraneo_core_separator{
    display: none !important;
  }

  /* Product content */
  .qodef-woo-product-list .qodef-e-content{
    margin: -3px 0 12px !important;
  }
}

/* Tablet medium - max-width 768px */
@media screen and (max-width: 768px){

  .elementor-841 .elementor-element.elementor-element-50b5ded{
    width: var(--container-widget-width, 100%) !important;
    max-width: 100% !important;
    --container-widget-width: 100% !important;
    --container-widget-flex-grow: 0;
  }

  .px_5rem{
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* Product columns */
  .qodef-woo-product-list ul.products.columns-2,
  .qodef-woo-product-list ul.products.columns-3,
  .qodef-woo-product-list ul.products.columns-4,
  .qodef-woo-product-list ul.products.columns-5,
  .qodef-woo-product-list ul.products.columns-6,
  .qodef-woo-product-list ul.products.columns-7,
  .qodef-woo-product-list ul.products.columns-8{
    --qode-columns: 1 !important;
  }
}
/* ===============================
   RESPONSIVE EXTRA (pulito)
   Nota: qui NON tocchiamo più la gerarchia tipografica generale,
   perché è già gestita nel BLOCCO-1.
================================ */

/* Mobile / Tablet - max-width 768px (se questa era l’intenzione del blocco iniziale) */
@media screen and (max-width: 768px) {

  /* Checkout layout */
  #order_review {
    flex: 100%;
    display: block;
  }

  /* FooEvents mobile (solo label) */
  #fooevents_bookings_slot_date_val_trans_field label {
    font-size: 18px !important;
  }

  /* Slogan mobile (ok) */
  p.qodef-shortcode {
    font-size: 36px !important;
    line-height: 1.2 !important;
    text-align: center !important;
  }

  /* Product content mobile (coerente con altri blocchi) */
  .qodef-woo-product-list .qodef-e-content {
    margin: -3px 0 12px !important;
  }
}


/* Mobile - max-width 480px */
@media screen and (max-width: 480px) {

  /* Colonne -> 1 colonna */
  .due_colonne {
    column-count: 1 !important;
  }

  /* Form fields */
  .attendee-class.form-row-wide {
    width: 100% !important;
    float: none !important;
    margin-right: 0 !important;
  }

  .woocommerce-page div.woocommerce form p.form-row-first,
  .woocommerce-page div.woocommerce form p.form-row-last,
  .woocommerce-checkout-payment,
  .woocommerce-checkout-review-order-table,
  .woocommerce-page div.woocommerce .col2-set,
  .woocommerce-order-received .woocommerce-order .woocommerce-order-overview,
  #order_review {
    flex: 100%;
    display: block;
  }

  .woocommerce-order-received .woocommerce-order .woocommerce-thankyou-order-received {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  label.half {
    width: 100%;
    float: none;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .sfondo_nero .e-con.e-flex.e-con-inner {
    row-gap: 30px;
  }

  .equalize_1.didascalia {
    height: auto !important;
    padding: 25px !important;
    display: block;
    width: 100% !important;
  }

  .qodef-blog .qodef-e-content {
    text-align: left !important;
  }

  .single-post .qodef-e-text .elementor-widget-image {
    display: none !important;
  }

  .qodef-blog-top-content.qodef-e-top-holder .qodef-e-media {
    margin-bottom: 0;
  }

  .qodef-custom-font.qodef-slightly-rotate--yes {
    transform: none;
  }

  /* Spaziature “speciali” */
  .mb_-100 {
    margin-bottom: 40px !important;
    margin-top: 40px !important;
  }

  .qodef-parallax.qodef--parallax-row {
    --min-height: 300px !important;
  }

  .e-con.e-con.e-con-inner.elementor-widget,
  .elementor.elementor .e-con.elementor-widget {
    max-width: 100%;
    width: 100%;
  }

  /* ⚠️ RIMOSSA: bomba tipografica che settava TUTTI i titoli a 36px (questa era il problema) */

  /* Titolo homepage (solo se davvero serve) */
  .titolo_homepage h1 {
    font-size: 50px !important;
    line-height: 1em !important;
  }

  /* Widget cart title (selettore corretto) */
  .widget_shopping_cart .widgettitle {
    font-size: 12px !important;
    line-height: 1.53333em !important;
  }

  #qodef-back-to-top {
    display: none !important;
  }

  #qodef-page-mobile-header-inner {
    padding: 0 5%;
  }

  .sfondo_nero .e-con-inner,
  .sfondo_grigio .e-con-inner,
  .sfondo_scuro .e-con-inner,
  .sfondo_nero .elementor-container,
  .sfondo_grigio .elementor-container,
  .sfondo_scuro .elementor-container,
  .qodef-elementor-content-grid .e-con-boxed,
  .gestiscilarghezza .e-con-full .elementor-element,
  .sfondo_nero .e-con-inner .e-con-full,
  .mt_100 .e-con-boxed .e-con-inner,
  .qodef-elementor-content-grid .e-con-full,
  .gestiscilarghezza .elementor-container,
  .single-product .elementor-widget-image-carousel {
    max-width: 100% !important;
    width: 100% !important;
  }

  /* Spacing ultra mobile */
  .py_200 {
    padding-top: 50px !important;
    padding-bottom: 50px !important;
  }

  .pt_100,
  .py_100,
  .py_50 {
    padding-top: 25px !important;
  }

  .pb_100,
  .py_100,
  .py_50 {
    padding-bottom: 25px !important;
  }

  .mt_100,
  .my_100 {
    margin-top: 25px !important;
  }

  .mb_100,
  .my_100 {
    margin-bottom: 25px !important;
  }

  .px_5rem {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .px_10rem {
    padding-left: 25px !important;
    padding-right: 25px !important;
  }

  .mb_-100 {
    margin-bottom: -50px !important;
  }

  .p_5 {
    padding: 25px;
  }

  #qodef-page-footer-top-area-inner {
    padding-top: 25px;
    padding-bottom: 25px;
  }

  .qodef-content-grid,
  #qodef-page-footer-top-area-inner.qodef-content-grid {
    width: 100%;
  }

  .elementor-widget-woocommerce-breadcrumb {
    display: none;
  }

  .icona_cosafacciamo img {
    width: 75px !important;
    height: 75px !important;
  }

  /* Bottoni Woo blocks (selettore corretto) */
  body:not(.woocommerce-block-theme-has-button-styles) .wc-block-components-button:not(.is-link),
  .qodef-button.qodef-html--link {
    padding: 10px;
    width: 100%;
    text-align: center !important;
    margin: 0 auto !important;
    display: block;
  }

  .qodef-shortcode.qodef-section-title .qodef-button {
    margin-top: 12.5px !important;
  }

  .woocommerce-notices-wrapper {
    margin-top: 25px;
  }

  .qodef-m-title {
    margin-bottom: 0 !important;
  }

  .elementor-widget-icon-box.elementor-position-top .elementor-icon-box-wrapper {
    display: flex !important;
    text-align: left !important;
    flex-direction: row !important;
    align-items: flex-end !important;
    column-gap: 10px !important;
  }

  .elementor-widget-icon-box.elementor-position-top .elementor-icon-box-wrapper .elementor-icon {
    font-size: 30px;
  }

  .elementor-17600 .elementor-element.elementor-element-ec45f12 {
    --gap: 0 !important;
  }

  /* Selettore corretto :is(...) */
  :is(.elementor-section-wrap, [data-elementor-id]).e-con {
    --margin-left: auto;
    --margin-right: auto;
    max-width: min(99%, var(--width)) !important;
  }
}
/* ===== FINE CSS CHILD THEME ===== */
