.elementor-kit-6{--e-global-color-primary:#F0F0F0;--e-global-color-secondary:#C7F741;--e-global-color-text:#0B0B0B;--e-global-color-accent:#2900D8;--e-global-color-3ff679b:#FFFFFF;--e-global-color-a33d604:#A3DD00;--e-global-typography-primary-font-family:"Outfit";--e-global-typography-primary-font-size:35px;--e-global-typography-primary-font-weight:500;--e-global-typography-primary-text-transform:uppercase;--e-global-typography-secondary-font-family:"Outfit";--e-global-typography-secondary-font-size:20px;--e-global-typography-secondary-font-weight:400;--e-global-typography-secondary-text-transform:uppercase;--e-global-typography-text-font-family:"Montserrat";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Montserrat";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:500;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-8b43627-font-family:"Montserrat";--e-global-typography-8b43627-font-size:80px;--e-global-typography-8b43627-font-weight:600;--e-global-typography-8b43627-text-transform:uppercase;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 h1{color:var( --e-global-color-accent );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-6 h2{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );text-transform:var( --e-global-typography-secondary-text-transform );}.elementor-kit-6 h3{color:var( --e-global-color-text );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );text-transform:var( --e-global-typography-secondary-text-transform );}.elementor-kit-6 h4{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-8b43627-font-family ), Sans-serif;font-size:var( --e-global-typography-8b43627-font-size );font-weight:var( --e-global-typography-8b43627-font-weight );text-transform:var( --e-global-typography-8b43627-text-transform );}.elementor-kit-6 h5{color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );}.elementor-kit-6 h6{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing: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 .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-6 h1{font-size:var( --e-global-typography-primary-font-size );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-6 h2{font-size:var( --e-global-typography-secondary-font-size );}.elementor-kit-6 h3{font-size:var( --e-global-typography-secondary-font-size );}.elementor-kit-6 h4{font-size:var( --e-global-typography-8b43627-font-size );}.elementor-kit-6 h5{font-size:var( --e-global-typography-accent-font-size );}.elementor-kit-6 h6{font-size:var( --e-global-typography-accent-font-size );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-6 h1{font-size:var( --e-global-typography-primary-font-size );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-6 h2{font-size:var( --e-global-typography-secondary-font-size );}.elementor-kit-6 h3{font-size:var( --e-global-typography-secondary-font-size );}.elementor-kit-6 h4{font-size:var( --e-global-typography-8b43627-font-size );}.elementor-kit-6 h5{font-size:var( --e-global-typography-accent-font-size );}.elementor-kit-6 h6{font-size:var( --e-global-typography-accent-font-size );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --rosso:#ff0000; }
/* Start custom CSS *//* =================================================================
   MAPS â€” CSS PILLAR "Nutrizione squadre sportive"  (v2, colori reali kit)
   Incollare in: Elementor -> Impostazioni sito -> CSS personalizzato
   Abbinato al JSON: 02-nutrizione-squadre-sportive-v6-home.json
   -----------------------------------------------------------------
   I colori arrivano gia' dai Colori globali del sito (Accent #2900D8,
   Secondary #C7F741, Text #0B0B0B, Primary #F0F0F0). Qui usiamo le
   variabili globali di Elementor, quindi restano sincronizzati.
   ================================================================= */

:root {
  --maps-radius: 14px;
  --maps-maxrow: 1180px;
}

/* -----------------------------------------------------------------
   1) DUE COLONNE â€” il fix principale.
   Nei container flex "row" di Elementor le colonne vanno forzate a
   dividersi lo spazio, altrimenti collassano a tutta larghezza.
   ----------------------------------------------------------------- */
.maps-row2 { align-items: center; gap: 40px; }
.maps-row2 > .e-con-inner,
.maps-row2 > .e-child {
  flex: 1 1 0 !important;
  min-width: 0 !important;
}
/* nelle sezioni testo|immagine diamo un filo piu' di respiro alla colonna testo */
.maps-row2 > .e-child:first-child { flex-grow: 1.1; }

/* tre colonne pacchetti */
.maps-row3 { align-items: stretch; gap: 30px; }
.maps-row3 > .e-con-inner,
.maps-row3 > .e-child {
  flex: 1 1 0 !important;
  min-width: 0 !important;
}

/* -----------------------------------------------------------------
   2) TITPOGRAFIA (i colori/pesi base arrivano da Stile del tema).
   Qui solo rifiniture coerenti con la home.
   ----------------------------------------------------------------- */
.elementor-widget-heading h1.elementor-heading-title { font-size: clamp(36px, 5vw, 60px); line-height: 1.05; }
.elementor-widget-heading h2.elementor-heading-title { font-size: clamp(28px, 3.6vw, 44px); line-height: 1.1; text-transform: uppercase; }

/* eyebrow (sopratitolo hero) e sottotitoli di sezione */
.maps-eyebrow .elementor-heading-title,
.maps-sub .elementor-heading-title {
  text-transform: uppercase;
  letter-spacing: .06em;
  font-size: 15px;
  font-weight: 600;
  margin-bottom: 6px;
}
/* prezzo card */
.maps-price .elementor-heading-title {
  text-transform: none;
  font-size: 20px;
  font-weight: 700;
  margin: 2px 0 8px;
}

/* -----------------------------------------------------------------
   3) SEZIONI SCURE (fondo blu accent): testo e link bianchi
   ----------------------------------------------------------------- */
.maps-dark .elementor-widget-text-editor,
.maps-dark .elementor-widget-text-editor p { color: #fff; }
.maps-dark .elementor-widget-text-editor a { color: var(--e-global-color-secondary); }
.maps-dark .elementor-widget-text-editor strong { color: #fff; }

/* -----------------------------------------------------------------
   4) PULSANTI â€” pill, coerenti con la home
   ----------------------------------------------------------------- */
.maps-btn .elementor-button {
  border-radius: 999px;
  padding: 14px 30px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .02em;
  background: var(--e-global-color-accent);   /* blu */
  color: #fff;
  transition: transform .15s ease, background .15s ease;
}
.maps-btn .elementor-button:hover { transform: translateY(-2px); background: #1e00a0; }

.maps-btn-lime .elementor-button { background: var(--e-global-color-secondary); color: var(--e-global-color-text); }
.maps-btn-lime .elementor-button:hover { background: #b4e625; color: var(--e-global-color-text); }

.maps-btn-white .elementor-button { background: #fff; color: var(--e-global-color-accent); }

.maps-cta-row { gap: 14px; flex-wrap: wrap; }

/* -----------------------------------------------------------------
   5) CARD PACCHETTI â€” come la home: niente scatola, colonne su lime
   con icona, titolo, prezzo, testo, divisore e lista con spunte.
   ----------------------------------------------------------------- */
.maps-pkg { gap: 8px; }
.maps-pkg-icon img { width: 64px; height: auto; margin-bottom: 8px; }
.maps-pkg .elementor-divider { padding-block: 10px; }
.maps-pkg .maps-btn { margin-top: auto; }   /* bottone in fondo, card allineate */

/* spunte lime come nella home */
.maps-checks .elementor-icon-list-icon svg,
.maps-checks .elementor-icon-list-icon i { fill: var(--e-global-color-accent); color: var(--e-global-color-accent); }
.maps-checks .elementor-icon-list-item { margin-bottom: 6px; align-items: flex-start; }
.maps-checks .elementor-icon-list-text { font-size: 15px; line-height: 1.45; }

/* -----------------------------------------------------------------
   6) TABELLA COMPARATIVA
   ----------------------------------------------------------------- */
.maps-table { width: 100%; border-collapse: separate; border-spacing: 0; border-radius: var(--maps-radius); overflow: hidden; box-shadow: 0 10px 30px rgba(0,0,0,.06); background: #fff; }
.maps-table thead th { background: var(--e-global-color-accent); color: #fff; text-align: left; padding: 14px 12px; font-weight: 600; }
.maps-table td { padding: 12px; border-bottom: 1px solid #eee; }
.maps-table tbody tr:nth-child(even) td { background: #faf9ff; }
.maps-table td strong { color: var(--e-global-color-text); }

/* -----------------------------------------------------------------
   7) ACCORDION (dettaglio pacchetti + FAQ)
   ----------------------------------------------------------------- */
.maps-acc .elementor-accordion-item { border: 1px solid #e6e6ef; border-radius: 12px; margin-bottom: 12px; overflow: hidden; background: #fff; }
.maps-acc .elementor-tab-title { font-weight: 600; padding: 18px 20px; }
.maps-acc .elementor-tab-title.elementor-active { background: #faf9ff; color: var(--e-global-color-accent); }
.maps-acc .elementor-tab-content { padding: 4px 20px 20px; line-height: 1.6; }

/* -----------------------------------------------------------------
   8) FORM
   ----------------------------------------------------------------- */
.maps-form .elementor-field { border: 1px solid #dcdce6 !important; border-radius: 10px !important; padding: 12px 14px !important; }
.maps-form .elementor-field:focus { border-color: var(--e-global-color-accent) !important; box-shadow: 0 0 0 3px rgba(41,0,216,.12) !important; }
.maps-form .elementor-button { background: var(--e-global-color-accent); border-radius: 999px; text-transform: uppercase; }
.maps-form .elementor-button:hover { background: #1e00a0; }

/* -----------------------------------------------------------------
   9) IMMAGINI
   ----------------------------------------------------------------- */
.maps-img img { width: 100%; height: auto; border-radius: var(--maps-radius); object-fit: cover; box-shadow: 0 12px 30px rgba(0,0,0,.10); }
.maps-img-hero img { box-shadow: 0 18px 45px rgba(0,0,0,.22); }

/* -----------------------------------------------------------------
   10) RESPONSIVE â€” colonne in verticale su mobile/tablet
   ----------------------------------------------------------------- */
@media (max-width: 1024px) {
  .maps-row3 { flex-direction: column !important; }
  .maps-row3 > .e-child { flex-basis: auto !important; }
}
@media (max-width: 767px) {
  .maps-row2 { flex-direction: column !important; }
  .maps-row2 > .e-child { flex-basis: auto !important; }
  .maps-table { font-size: 13px; }
  .maps-table thead th, .maps-table td { padding: 8px; }
  .maps-cta-row { flex-direction: column; align-items: stretch; }
}/* End custom CSS */