.elementor-kit-5{--e-global-color-primary:#040404;--e-global-color-secondary:#E5E6D7;--e-global-color-text:#8D8989;--e-global-color-accent:#FF4E45;--e-global-typography-primary-font-family:"Helvetica";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Spinnaker";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Sedan";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Konkhmer Sleokchher";--e-global-typography-accent-font-weight:500;background-color:#E5E3DD;font-family:"Helvetica", Sans-serif;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-kit-5 a{font-family:"Helvetica", Sans-serif;}.elementor-kit-5 h2{font-family:"Helvetica", Sans-serif;}.elementor-kit-5 img{opacity:1;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;--container-default-padding-top:-9px;--container-default-padding-right:-9px;--container-default-padding-bottom:-9px;--container-default-padding-left:-9px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header{padding-inline-end:64px;padding-inline-start:64px;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:900px;}.e-con{--container-max-width:900px;}.site-header{padding-inline-end:35px;padding-inline-start:35px;}}@media(max-width:768px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}.site-header{padding-inline-end:16px;padding-inline-start:16px;}}/* Start custom CSS *//* 1) Forza il range TABLET: 768–1024 px */
@media (min-width: 768px) and (max-width: 1024px){
  /* contenitori allineati come tablet */
  .ml-latest-events .ev-wrap,
  .ml-events-manual .ev-wrap {
    max-width: 900px;   /* coerente con Site Settings tablet */
    margin-left: auto;
    margin-right: auto;
  }

  /* header / logo più stabili su tablet */
  .site-header { position: sticky; top: 0; }
  .site-header .logo,
  .elementor-widget-site-logo { display: flex; align-items: center; justify-content: center; }
  .site-header .logo img,
  .elementor-widget-site-logo img { max-height: 48px; height: auto; }

  /* sezioni a colonna unica se serve (togli se non vuoi) */
  .ml-events-manual .ev { grid-template-columns: 1fr; }
}

/* 2) iPad orizzontale “grande”: tratta come tablet se il device è touch (coarse) */
@media (max-width: 1366px) and (pointer: coarse){
  .ml-latest-events .ev-wrap,
  .ml-events-manual .ev-wrap {
    max-width: 900px;
    margin-inline: auto;
  }
}

/* 3) Fix per sezioni full screen: usa unità viewport stabili su iPad */
@media (min-width: 768px) and (max-width: 1366px){
  /* sostituisci i selettori con i tuoi hero/sezioni full-bleed */
  .hero, .section-full, [data-hero="full"]{
    min-height: 100vh;
  }
  @supports (height: 100svh){
    .hero, .section-full, [data-hero="full"]{ min-height: 100svh; }
  }
  /* evita tagli: niente overflow hidden su wrapper critici a tablet */
  .hero, .section-full, .elementor-section { overflow: visible; }
}

/* 4) Confine 1024px: se da qualche parte hai min-width:1024, neutralizza su tablet */
@media (max-width: 1024px){
  /* esempi di reset “anti-desktop” a 1024 */
  .site-header { transform: none; left: auto; right: auto; }
  .elementor-section { transform: none; }
}
/* === VARIANTE B: gestione doppia hero === */
/* Stato di base: desktop visibile, mobile nascosta */
.hero--desktop{ display:block; }
.hero--mobile{ display:none; }

/* Tablet 768–1024px: mostra la mobile, nascondi la desktop */
@media (min-width: 768px) and (max-width: 1024px){
  .hero--desktop{ display:none !important; }
  .hero--mobile{ display:block !important; }
}

/* iPad orizzontale fino a 1366px (solo device touch): usa comunque la mobile */
@media (max-width: 1366px) and (pointer: coarse){
  .hero--desktop{ display:none !important; }
  .hero--mobile{ display:block !important; }
}

/* Evita il taglio su iPad: niente height fissa, usa svh */
.hero--mobile{ height:auto !important; min-height:100vh; }
@supports (min-height: 100svh){
  .hero--mobile{ min-height:100svh; }
}

/* Se la hero aveva wrapper che tagliano, rendi visibile su tablet */
@media (min-width: 768px) and (max-width: 1366px){
  .hero--mobile, .hero--mobile *{ overflow: visible !important; }
}
/* === VISIBILITÀ HERO (unificata) ================================== */
/* Base: MOBILE visibile */
#home-mmf-hero{ display:block !important; }
#ipad-hero, #hero-layout{ display:none !important; }

/* Desktop >= 1025: DESKTOP visibile */
@media (min-width: 1025px){
  #hero-layout{ display:grid !important; }
  #home-mmf-hero, #ipad-hero{ display:none !important; }
}

/* Tablet “vero” (marcato dal JS): mostra l’iPad-hero */
html.is-tablet #ipad-hero{ display:block !important; }
html.is-tablet #home-mmf-hero, 
html.is-tablet #hero-layout{ display:none !important; }

/* Ma su iPad in ORIZZONTALE vogliamo la tastiera DESKTOP */
@media (orientation: landscape){
  html.is-ipad #hero-layout{ display:grid !important; }
  html.is-ipad #ipad-hero, html.is-ipad #home-mmf-hero{ display:none !important; }
}

/* === Altezza sicura e anti-taglio tastiera ======================== */
#hero-layout, #home-mmf-hero, #ipad-hero{ height:auto !important; min-height:100vh; }
@supports (min-height: 100svh){
  #hero-layout, #home-mmf-hero, #ipad-hero{ min-height:100svh; }
}

/* Evita clipping della colonna tastiera su iPad landscape */
@media (min-width:1025px) and (max-width:1366px){
  #hero-layout .col-right{ overflow: visible !important; margin-left: 0 !important; }
  #hero-layout #tastiera-svg{ max-width:100%; height:auto; }
}

/* Addolcisci la traslazione della tastiera su iPad orizzontale */
@media (min-width:1025px) and (max-width:1366px) and (orientation: landscape){
  #hero-layout{
    --kbd-w: clamp(560px, 48vw, 720px);
    --kbd-shift-y: clamp(-32px, -5vh, 0px);
  }
}
/* ===== KILL-SWITCH VISIBILITÀ HERO ===== */

/* Stato base: mobile (fallback sicuro) */
#home-mmf-hero{ display:block !important; }
#ipad-hero, #hero-layout{ display:none !important; }

/* Tablet portrait (768–1024): usa SEMPRE l’iPad hero */
@media (min-width:768px) and (max-width:1024px) and (orientation: portrait){
  #ipad-hero{ display:block !important; }
  #home-mmf-hero, #hero-layout{ display:none !important; }
}

/* Landscape >=1025 (iPad orizzontale incluso): usa SEMPRE la hero DESKTOP */
@media (min-width:1025px) and (orientation: landscape){
  #hero-layout{ display:grid !important; }
  #ipad-hero, #home-mmf-hero{ display:none !important; }
}

/* Altezza stabile ovunque (niente tagli) */
#hero-layout, #home-mmf-hero, #ipad-hero{ height:auto !important; min-height:100vh; }
@supports (min-height: 100svh){
  #hero-layout, #home-mmf-hero, #ipad-hero{ min-height:100svh; }
}

/* Evita clipping tastiera in landscape */
@media (min-width:1025px) and (max-width:1366px) and (orientation: landscape){
  #hero-layout .col-right{ overflow: visible !important; margin-left: 0 !important; }
  #hero-layout #tastiera-svg{ max-width:100%; height:auto; }
  /* Tastiera meno “su” su schermi bassi */
  #hero-layout{
    --kbd-w: clamp(560px, 48vw, 720px);
    --kbd-shift-y: clamp(-32px, -5vh, 0px);
  }
}/* End custom CSS */