.elementor-19430 .elementor-element.elementor-element-0c7021c{--display:flex;}.pp-tooltip.pp-tooltip-{{ID}} .pp-tooltip-content{font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-heading .elementor-heading-title{font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-19430 .elementor-element.elementor-element-34bc1e5{--display:flex;}.elementor-19430 .elementor-element.elementor-element-0f19d96{--swiper-slides-to-display:1;--swiper-slides-gap:10px;--arrow-prev-left-align:0%;--arrow-prev-translate-x:0px;--arrow-prev-left-position:0px;--arrow-prev-top-align:50%;--arrow-prev-translate-y:-50%;--arrow-prev-top-position:0px;--arrow-next-right-align:0%;--arrow-next-translate-x:0%;--arrow-next-right-position:0px;--arrow-next-top-align:50%;--arrow-next-translate-y:-50%;--arrow-next-top-position:0px;}.elementor-19430 .elementor-element.elementor-element-0f19d96 .swiper-slide > .elementor-element{height:100%;}.elementor-19430 .elementor-element.elementor-element-e005eeb{--display:flex;}.elementor-widget-search{--e-search-input-color:var( --e-global-color-text );}.elementor-widget-search.e-focus{--e-search-input-color:var( --e-global-color-text );}.elementor-widget-search .elementor-pagination{font-weight:var( --e-global-typography-primary-font-weight );}.elementor-19430 .elementor-element.elementor-element-55aad36 .e-search-input{background-color:var( --e-global-color-accent );font-family:"Arial", Sans-serif;font-size:15px;font-weight:400;line-height:1.2em;border-style:solid;border-width:1px 1px 1px 1px;border-color:#B8C9D8;box-shadow:0px 10px 25px 0px rgba(16.00000000000001, 37.999999999999986, 66, 0.08);border-radius:10px 10px 10px 10px;}.elementor-19430 .elementor-element.elementor-element-55aad36.e-focus .e-search-input{background-color:var( --e-global-color-accent );border-style:solid;border-color:#255491;}.elementor-19430 .elementor-element.elementor-element-55aad36 .e-search-submit{background-color:#255491;border-style:none;}.elementor-19430 .elementor-element.elementor-element-55aad36 .e-search-submit:hover{background-color:#15345A;--e-search-submit-color:var( --e-global-color-accent );}.elementor-19430 .elementor-element.elementor-element-55aad36 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-19430 .elementor-element.elementor-element-55aad36{--e-search-results-columns:1;--e-search-placeholder-color:#768393;--e-search-input-color:#111827;--e-search-icon-label-color:#255491;--e-search-input-padding-block-start:15px;--e-search-input-padding-inline-start:18px;--e-search-input-padding-block-end:15px;--e-search-input-padding-inline-end:18px;--e-search-icon-label-size:20px;--e-search-input-gap:10px;--e-search-submit-margin-inline-start:8px;--e-search-icon-clear-size:16px;--e-search-icon-clear-color:#566474;--e-search-submit-color:#FFFFFF;--e-search-submit-border-radius:7px 7px 7px 7px;--e-search-submit-padding:14px 20px 14px 20px;}.elementor-19430 .elementor-element.elementor-element-55aad36.e-focus{--e-search-input-color:#111827;}.elementor-19430 .elementor-element.elementor-element-55aad36 .e-search-input-wrapper > svg:hover{--e-search-icon-clear-color:#255491;}.elementor-19430 .elementor-element.elementor-element-55aad36 .e-search-input-wrapper > i:hover{--e-search-icon-clear-color:#255491;}.elementor-19430 .elementor-element.elementor-element-55aad36 .e-search-submit span{font-family:"Arial", Sans-serif;font-size:15px;font-weight:800;}.elementor-widget-nested-tabs.elementor-widget-n-tabs > .elementor-widget-container > .e-n-tabs[data-touch-mode='false'] > .e-n-tabs-heading > .e-n-tab-title[aria-selected="false"]:hover{background:var( --e-global-color-accent );}.elementor-widget-nested-tabs.elementor-widget-n-tabs > .elementor-widget-container > .e-n-tabs > .e-n-tabs-heading > .e-n-tab-title[aria-selected="true"], .elementor-widget-nested-tabs.elementor-widget-n-tabs > .elementor-widget-container > .e-n-tabs[data-touch-mode='true'] > .e-n-tabs-heading > .e-n-tab-title[aria-selected="false"]:hover{background:var( --e-global-color-accent );}.elementor-widget-nested-tabs.elementor-widget-n-tabs > .elementor-widget-container > .e-n-tabs > .e-n-tabs-heading > :is( .e-n-tab-title > .e-n-tab-title-text, .e-n-tab-title ){font-weight:var( --e-global-typography-accent-font-weight );}.elementor-19430 .elementor-element.elementor-element-ff846f8{--display:flex;--margin-top:0px;--margin-bottom:28px;--margin-left:0px;--margin-right:0px;}.elementor-19430 .elementor-element.elementor-element-e779c1b{--display:flex;}.elementor-19430 .elementor-element.elementor-element-733f9ca > .elementor-widget-container{margin:0px 0px 12px 0px;}.elementor-19430 .elementor-element.elementor-element-733f9ca{text-align:center;}.elementor-19430 .elementor-element.elementor-element-733f9ca .elementor-heading-title{font-size:28px;font-weight:700;line-height:1.6em;color:#102943;}.elementor-widget-text-editor{font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-19430 .elementor-element.elementor-element-50571b3{text-align:start;font-size:18px;font-weight:400;line-height:1.6em;color:#102943;}.elementor-widget-loop-grid .elementor-button{background-color:var( --e-global-color-accent );font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-loop-grid .elementor-pagination{font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-loop-grid .e-load-more-message{font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-19430 .elementor-element.elementor-element-1e145f2{--grid-columns:3;--load-more-button-align:center;}.elementor-19430 .elementor-element.elementor-element-1e145f2 .elementor-loop-container{grid-auto-rows:1fr;}.elementor-19430 .elementor-element.elementor-element-1e145f2 .e-loop-item > .elementor-section, .elementor-19430 .elementor-element.elementor-element-1e145f2 .e-loop-item > .elementor-section > .elementor-container, .elementor-19430 .elementor-element.elementor-element-1e145f2 .e-loop-item > .e-con, .elementor-19430 .elementor-element.elementor-element-1e145f2 .e-loop-item .elementor-section-wrap  > .e-con{height:100%;}.elementor-19430 .elementor-element.elementor-element-fddba46{--display:flex;}.elementor-19430 .elementor-element.elementor-element-e4aa277{--display:flex;}.elementor-19430 .elementor-element.elementor-element-9ee3c67 > .elementor-widget-container{margin:0px 0px 12px 0px;}.elementor-19430 .elementor-element.elementor-element-9ee3c67{text-align:center;}.elementor-19430 .elementor-element.elementor-element-9ee3c67 .elementor-heading-title{font-size:28px;font-weight:700;line-height:1.6em;color:#102943;}.elementor-19430 .elementor-element.elementor-element-800c607{text-align:start;font-size:18px;font-weight:400;line-height:1.6em;color:#102943;}.elementor-19430 .elementor-element.elementor-element-12b2ccc{--grid-columns:3;--load-more-button-align:center;}.elementor-19430 .elementor-element.elementor-element-12b2ccc .elementor-loop-container{grid-auto-rows:1fr;}.elementor-19430 .elementor-element.elementor-element-12b2ccc .e-loop-item > .elementor-section, .elementor-19430 .elementor-element.elementor-element-12b2ccc .e-loop-item > .elementor-section > .elementor-container, .elementor-19430 .elementor-element.elementor-element-12b2ccc .e-loop-item > .e-con, .elementor-19430 .elementor-element.elementor-element-12b2ccc .e-loop-item .elementor-section-wrap  > .e-con{height:100%;}.elementor-19430 .elementor-element.elementor-element-43a0a22{--display:flex;}.elementor-19430 .elementor-element.elementor-element-52e4807{--display:flex;}.elementor-19430 .elementor-element.elementor-element-93a39ea > .elementor-widget-container{margin:0px 0px 12px 0px;}.elementor-19430 .elementor-element.elementor-element-93a39ea{text-align:center;}.elementor-19430 .elementor-element.elementor-element-93a39ea .elementor-heading-title{font-size:28px;font-weight:700;line-height:1.6em;color:#102943;}.elementor-19430 .elementor-element.elementor-element-25ea62d{text-align:start;font-size:18px;font-weight:400;line-height:1.6em;color:#102943;}.elementor-19430 .elementor-element.elementor-element-302ebf2{--grid-columns:3;--load-more-button-align:center;}.elementor-19430 .elementor-element.elementor-element-302ebf2 .elementor-loop-container{grid-auto-rows:1fr;}.elementor-19430 .elementor-element.elementor-element-302ebf2 .e-loop-item > .elementor-section, .elementor-19430 .elementor-element.elementor-element-302ebf2 .e-loop-item > .elementor-section > .elementor-container, .elementor-19430 .elementor-element.elementor-element-302ebf2 .e-loop-item > .e-con, .elementor-19430 .elementor-element.elementor-element-302ebf2 .e-loop-item .elementor-section-wrap  > .e-con{height:100%;}.elementor-19430 .elementor-element.elementor-element-f2adee4{--display:flex;}.elementor-19430 .elementor-element.elementor-element-7c78fbc{--display:flex;}.elementor-19430 .elementor-element.elementor-element-b7fc06e > .elementor-widget-container{margin:0px 0px 12px 0px;}.elementor-19430 .elementor-element.elementor-element-b7fc06e{text-align:center;}.elementor-19430 .elementor-element.elementor-element-b7fc06e .elementor-heading-title{font-size:28px;font-weight:700;line-height:1.6em;color:#102943;}.elementor-19430 .elementor-element.elementor-element-dbaa7e4{text-align:start;font-size:18px;font-weight:400;line-height:1.6em;color:#102943;}.elementor-19430 .elementor-element.elementor-element-f0cd3a9{--grid-columns:3;--load-more-button-align:center;}.elementor-19430 .elementor-element.elementor-element-f0cd3a9 .elementor-loop-container{grid-auto-rows:1fr;}.elementor-19430 .elementor-element.elementor-element-f0cd3a9 .e-loop-item > .elementor-section, .elementor-19430 .elementor-element.elementor-element-f0cd3a9 .e-loop-item > .elementor-section > .elementor-container, .elementor-19430 .elementor-element.elementor-element-f0cd3a9 .e-loop-item > .e-con, .elementor-19430 .elementor-element.elementor-element-f0cd3a9 .e-loop-item .elementor-section-wrap  > .e-con{height:100%;}.elementor-19430 .elementor-element.elementor-element-5a200ae{--display:flex;}.elementor-19430 .elementor-element.elementor-element-fd4a1a3{--display:flex;}.elementor-19430 .elementor-element.elementor-element-e88917c > .elementor-widget-container{margin:0px 0px 12px 0px;}.elementor-19430 .elementor-element.elementor-element-e88917c{text-align:center;}.elementor-19430 .elementor-element.elementor-element-e88917c .elementor-heading-title{font-size:28px;font-weight:700;line-height:1.6em;color:#102943;}.elementor-19430 .elementor-element.elementor-element-cd8c6a6{text-align:start;font-size:18px;font-weight:400;line-height:1.6em;color:#102943;}.elementor-19430 .elementor-element.elementor-element-b563e26{--grid-columns:3;--load-more-button-align:center;}.elementor-19430 .elementor-element.elementor-element-b563e26 .elementor-loop-container{grid-auto-rows:1fr;}.elementor-19430 .elementor-element.elementor-element-b563e26 .e-loop-item > .elementor-section, .elementor-19430 .elementor-element.elementor-element-b563e26 .e-loop-item > .elementor-section > .elementor-container, .elementor-19430 .elementor-element.elementor-element-b563e26 .e-loop-item > .e-con, .elementor-19430 .elementor-element.elementor-element-b563e26 .e-loop-item .elementor-section-wrap  > .e-con{height:100%;}.elementor-19430 .elementor-element.elementor-element-b08791c{--display:flex;}.elementor-19430 .elementor-element.elementor-element-39036df{--display:flex;}.elementor-19430 .elementor-element.elementor-element-a6ff2dd > .elementor-widget-container{margin:0px 0px 12px 0px;}.elementor-19430 .elementor-element.elementor-element-a6ff2dd{text-align:center;}.elementor-19430 .elementor-element.elementor-element-a6ff2dd .elementor-heading-title{font-size:28px;font-weight:700;line-height:1.6em;color:#102943;}.elementor-19430 .elementor-element.elementor-element-64ce13f{text-align:start;font-size:18px;font-weight:400;line-height:1.6em;color:#102943;}.elementor-19430 .elementor-element.elementor-element-16494d9{--grid-columns:3;--load-more-button-align:center;}.elementor-19430 .elementor-element.elementor-element-16494d9 .elementor-loop-container{grid-auto-rows:1fr;}.elementor-19430 .elementor-element.elementor-element-16494d9 .e-loop-item > .elementor-section, .elementor-19430 .elementor-element.elementor-element-16494d9 .e-loop-item > .elementor-section > .elementor-container, .elementor-19430 .elementor-element.elementor-element-16494d9 .e-loop-item > .e-con, .elementor-19430 .elementor-element.elementor-element-16494d9 .e-loop-item .elementor-section-wrap  > .e-con{height:100%;}.elementor-19430 .elementor-element.elementor-element-175671d{--n-tabs-heading-wrap:wrap;--n-tabs-heading-overflow-x:initial;--n-tabs-title-white-space:initial;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-19430 .elementor-element.elementor-element-0f19d96{--swiper-slides-to-display:2;}.elementor-19430 .elementor-element.elementor-element-1e145f2{--grid-columns:2;}.elementor-19430 .elementor-element.elementor-element-12b2ccc{--grid-columns:2;}.elementor-19430 .elementor-element.elementor-element-302ebf2{--grid-columns:2;}.elementor-19430 .elementor-element.elementor-element-f0cd3a9{--grid-columns:2;}.elementor-19430 .elementor-element.elementor-element-b563e26{--grid-columns:2;}.elementor-19430 .elementor-element.elementor-element-16494d9{--grid-columns:2;}}@media(max-width:767px){.elementor-19430 .elementor-element.elementor-element-0f19d96{--swiper-slides-to-display:1;}.elementor-19430 .elementor-element.elementor-element-1e145f2{--grid-columns:1;}.elementor-19430 .elementor-element.elementor-element-12b2ccc{--grid-columns:1;}.elementor-19430 .elementor-element.elementor-element-302ebf2{--grid-columns:1;}.elementor-19430 .elementor-element.elementor-element-f0cd3a9{--grid-columns:1;}.elementor-19430 .elementor-element.elementor-element-b563e26{--grid-columns:1;}.elementor-19430 .elementor-element.elementor-element-16494d9{--grid-columns:1;}}/* Start custom CSS for container, class: .elementor-element-0c7021c *//* ============================================================
   ASINT — SERVIZI ANTEPRIMA | v1.2
   Solo grafica: non modifica query, link, autoplay o AJAX.

   INSTALLAZIONE
   Incollare tutto in Advanced > Custom CSS del contenitore
   principale della NUOVA pagina (con CSS ID asint-services).
   Non sostituire i CSS della pagina News.

   COLLEGAMENTI NECESSARI (senza # o . nei campi Elementor)
   Contenitore principale, CSS ID: asint-services
   Loop Carousel, CSS ID: asint-services-carousel
   Tabs, CSS Classes: asint-services-tabs
   Contenitore del modello Scheda servizio, CSS Classes:
     asint-service-card
   Contenitore del modello Servizio in evidenza, CSS Classes:
     asint-service-featured-card
   Contenitore titolo + descrizione in ogni tab, CSS Classes:
     asint-service-intro (non includere il Loop Grid)

   Nei due modelli: Image, Heading e Button direttamente nel
   contenitore; supportato anche il wrapper .e-con-inner boxed.
   Immagine/titolo/link restano collegati ai Dynamic Tags.

   TABS: Content > Breakpoint = None; Horizontal Scroll = No.
   LOOP GRID: 3 colonne desktop / 2 tablet / 1 mobile;
   Equal Height = Yes; Masonry = No (impostazioni native).
   I breakpoint qui sotto sono quelli standard 1024 / 767 px.
   ============================================================ */

/* 01 — SFONDO, LARGHEZZA E SPAZI DELLA NUOVA SEZIONE */
#asint-services {
  --asint-navy: #102943;
  --asint-blue: #255491;
  --asint-light: #eaf3fc;
  --asint-border: #cfdae4;
  --content-width: 1400px;
  --gap: 32px;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  min-height: 0 !important;
  padding: 48px 24px 64px !important;
  gap: 32px;
  color: var(--asint-navy);
  background: radial-gradient(ellipse at 85% 5%, #e5eff9 0%, transparent 55%),
              linear-gradient(180deg, #f9fbfd 0%, #f1f6fb 100%) !important;
}

#asint-services > .e-con-inner {
  width: 100%;
  max-width: 1400px;
  min-width: 0;
  margin-inline: auto;
  gap: 32px;
}

#asint-services > .elementor-element {
  width: 100%;
  max-width: 1400px;
  margin-inline: auto;
}

#asint-services .e-con,
#asint-services .e-con-inner,
#asint-services .elementor-widget,
#asint-services .elementor-widget-container,
#asint-services .e-loop-item {
  min-width: 0;
}

#asint-services h1.elementor-heading-title {
  margin: 0;
  color: var(--asint-navy) !important;
  font-size: clamp(32px, 3.3vw, 48px) !important;
  font-weight: 700;
  line-height: 1.12;
  letter-spacing: -0.025em;
  overflow-wrap: anywhere;
}

/* 02 — CAROSELLO: IMMAGINE A SINISTRA, TESTO A DESTRA
   Non sovrascrivere width/transform delle slide o del wrapper
   Swiper: restano interamente gestiti da Elementor. */
#asint-services #asint-services-carousel {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

#asint-services #asint-services-carousel .asint-service-featured-card {
  display: grid !important;
  grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
  grid-template-rows: 1fr auto;
  gap: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0;
  min-height: 380px !important;
  height: 100%;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden;
  border: 1px solid #cfdae4;
  border-radius: 22px;
  color: #fff;
  background: linear-gradient(135deg, #153658, #0e243d) !important;
}

#asint-services #asint-services-carousel .asint-service-featured-card > .e-con-inner {
  display: contents !important;
}

#asint-services #asint-services-carousel .asint-service-featured-card .elementor-widget-image {
  grid-column: 1;
  grid-row: 1 / span 2;
  width: 100% !important;
  min-height: 380px;
  height: 100%;
  margin: 0 !important;
  padding: 20px !important;
  align-self: stretch;
  background: #fff;
}

#asint-services #asint-services-carousel .asint-service-featured-card .elementor-widget-image .elementor-widget-container {
  display: grid;
  place-items: center;
  height: 100%;
}

#asint-services #asint-services-carousel .asint-service-featured-card .elementor-widget-image a {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
}

#asint-services #asint-services-carousel .asint-service-featured-card .elementor-widget-image img {
  display: block;
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  max-height: 380px;
  object-fit: contain !important;
  object-position: center;
  border-radius: 12px;
}

#asint-services #asint-services-carousel .asint-service-featured-card .elementor-widget-heading {
  grid-column: 2;
  grid-row: 1;
  width: 100% !important;
  margin: 0 !important;
  padding: 40px 48px 24px !important;
  align-self: end;
}

#asint-services #asint-services-carousel .asint-service-featured-card .elementor-heading-title,
#asint-services #asint-services-carousel .asint-service-featured-card .elementor-heading-title a {
  margin: 0;
  color: #fff !important;
  font-size: clamp(24px, 2.3vw, 32px) !important;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -0.02em;
  text-decoration: none;
  white-space: normal;
  overflow-wrap: anywhere;
}

#asint-services #asint-services-carousel .asint-service-featured-card .elementor-widget-button {
  grid-column: 2;
  grid-row: 2;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 48px 48px !important;
  align-self: start;
}

#asint-services #asint-services-carousel .asint-service-featured-card .elementor-button-wrapper {
  text-align: left;
}

#asint-services #asint-services-carousel .asint-service-featured-card .elementor-button {
  min-height: 48px;
  max-width: 100%;
  padding: 14px 22px;
  border: 1px solid #fff;
  border-radius: 999px;
  color: #153658 !important;
  background: #fff !important;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.3;
  white-space: normal;
  transition: background-color 180ms ease, color 180ms ease;
}

#asint-services #asint-services-carousel .asint-service-featured-card .elementor-button:hover {
  background: #eaf3fc !important;
}

/* 03 — FRECCE E INDICATORI; VISIBILITA NATIVA PRESERVATA */
#asint-services #asint-services-carousel .elementor-swiper-button {
  width: 40px;
  height: 40px;
  padding: 11px;
  border: 1px solid #cfdae4;
  border-radius: 50%;
  color: #255491 !important;
  background: #fff;
  font-size: 16px;
  box-shadow: 0 4px 14px rgba(16, 41, 67, 0.12);
}

#asint-services #asint-services-carousel .elementor-swiper-button-prev { left: 12px; }
#asint-services #asint-services-carousel .elementor-swiper-button-next { right: 12px; }
#asint-services #asint-services-carousel .elementor-swiper-button svg { fill: currentColor; }
#asint-services #asint-services-carousel .swiper-pagination-bullet { background: #255491; }
#asint-services #asint-services-carousel .swiper-pagination-progressbar-fill { background: #255491; }

/* 04 — SEI ARGOMENTI DISTRIBUITI SU TUTTA LA RIGA
   Breakpoint None / Horizontal Scroll No nelle opzioni Tabs.
   Non forzare display dei pannelli: quelli inattivi restano chiusi. */
#asint-services .asint-services-tabs {
  --n-tabs-title-color: #255491;
  --n-tabs-title-color-hover: #255491;
  --n-tabs-title-color-active: #fff;
  --n-tabs-title-background-color: #fff;
  --n-tabs-title-background-color-hover: #eaf3fc;
  --n-tabs-title-background-color-active: #255491;
  --n-tabs-gap: 0px;
  width: 100% !important;
  max-width: 100%;
}

#asint-services .asint-services-tabs .e-n-tabs-heading {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px !important;
  width: 100%;
  padding: 0 !important;
  margin: 0 0 28px !important;
  overflow: visible;
}

#asint-services .asint-services-tabs .e-n-tabs-heading > .e-n-tab-title {
  width: 100% !important;
  max-width: 100%;
  min-width: 0;
  min-height: 58px;
  margin: 0 !important;
  padding: 12px 14px !important;
  border: 1px solid #cfdae4 !important;
  border-radius: 14px !important;
  color: #255491 !important;
  background: #fff !important;
  justify-content: center;
  text-align: center;
  cursor: pointer;
  transition: background-color 180ms ease, border-color 180ms ease;
}

#asint-services .asint-services-tabs .e-n-tabs-heading .e-n-tab-title-text {
  color: inherit !important;
  font-size: 14px !important;
  font-weight: 700;
  line-height: 1.3;
  white-space: normal !important;
  overflow-wrap: anywhere;
}

#asint-services .asint-services-tabs .e-n-tabs-heading > .e-n-tab-title:hover {
  border-color: #9bbedd !important;
  background: #eaf3fc !important;
}

#asint-services .asint-services-tabs .e-n-tabs-heading > .e-n-tab-title[aria-selected="true"] {
  border-color: #255491 !important;
  color: #fff !important;
  background: #255491 !important;
}

#asint-services .asint-services-tabs .e-n-tabs-content {
  padding: 0 !important;
  background: transparent !important;
}

#asint-services .asint-services-tabs .e-n-tabs-content > .e-con {
  min-width: 0;
  min-height: 0 !important;
  padding: 0 !important;
}

/* 04B — INTRODUZIONI: TITOLI CENTRATI E RISERVA COMUNE
   Altezza MINIMA, non fissa: nessun testo viene troncato.
   200 px desktop / 240 px tablet; telefono senza riserva.
   Se una descrizione supera la riserva, aumentare min-height
   qui (e nella sezione 11) dopo il controllo in anteprima.
   Il margine inferiore e separato dall'altezza riservata. */
#asint-services .asint-services-tabs .asint-service-intro {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch;
  justify-content: flex-start;
  box-sizing: border-box;
  width: 100% !important;
  max-width: 1000px !important;
  min-width: 0;
  min-height: 200px !important;
  height: auto !important;
  flex-shrink: 0;
  padding: 0 !important;
  margin: 0 auto 28px !important;
  gap: 12px !important;
  overflow: visible !important;
}

#asint-services .asint-services-tabs .asint-service-intro > .e-con-inner {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch;
  justify-content: flex-start;
  width: 100%;
  max-width: 100%;
  height: auto !important;
  padding: 0 !important;
  margin: 0 !important;
  gap: 12px !important;
}

#asint-services .asint-services-tabs .asint-service-intro .elementor-widget,
#asint-services .asint-services-tabs .asint-service-intro .elementor-widget-container {
  width: 100% !important;
  max-width: 100%;
  min-width: 0;
  padding: 0 !important;
  margin: 0 !important;
}

#asint-services .asint-services-tabs .asint-service-intro .elementor-heading-title {
  margin: 0 !important;
  color: #102943 !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  font-style: normal;
  line-height: 1.25 !important;
  letter-spacing: -0.015em;
  text-align: center !important;
  white-space: normal;
  overflow-wrap: anywhere;
}

#asint-services .asint-services-tabs .asint-service-intro .elementor-widget-text-editor,
#asint-services .asint-services-tabs .asint-service-intro .elementor-widget-text-editor .elementor-widget-container,
#asint-services .asint-services-tabs .asint-service-intro .elementor-widget-text-editor p {
  color: #102943 !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  font-style: normal !important;
  line-height: 1.6 !important;
  text-align: left !important;
  white-space: normal;
  overflow-wrap: anywhere;
}

#asint-services .asint-services-tabs .asint-service-intro .elementor-widget-text-editor p {
  margin: 0 0 12px !important;
}

#asint-services .asint-services-tabs .asint-service-intro .elementor-widget-text-editor p:last-child {
  margin-bottom: 0 !important;
}

/* Evita che il gap nativo del pannello si sommi ai 28 px.
   Non cambia display/visibilita dei pannelli delle Tabs. */
#asint-services .asint-services-tabs .e-n-tabs-content > .e-con:has(> .asint-service-intro),
#asint-services .asint-services-tabs .e-n-tabs-content > .e-con:has(> .e-con-inner > .asint-service-intro),
#asint-services .asint-services-tabs .e-n-tabs-content > .e-con > .e-con-inner:has(> .asint-service-intro) {
  gap: 0 !important;
}

#asint-services .asint-services-tabs .asint-service-intro + .elementor-widget-loop-grid {
  margin-top: 0 !important;
}

/* 05 — GRIGLIE: SI MANTENGONO COLONNE E PAGINAZIONE NATIVE */
#asint-services .asint-services-tabs .elementor-loop-container {
  align-items: stretch;
  row-gap: 28px !important;
  column-gap: 24px !important;
}

/* 06 — CARD FISSE: CONTENITORE E IMMAGINE PROPORZIONATA */
#asint-services .asint-service-card {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 0 !important;
  height: 100%;
  padding: 0 !important;
  margin: 0 !important;
  gap: 0 !important;
  overflow: hidden;
  border: 1px solid #cfdae4;
  border-radius: 18px;
  background: #fff !important;
  box-shadow: 0 8px 26px rgba(16, 41, 67, 0.055);
  transition: background-color 200ms ease, border-color 200ms ease,
              box-shadow 200ms ease, transform 200ms ease;
}

#asint-services .asint-service-card > .e-con-inner {
  display: flex !important;
  flex-direction: column !important;
  width: 100%;
  max-width: 100%;
  height: 100%;
  padding: 0 !important;
  gap: 0 !important;
}

#asint-services .asint-service-card .elementor-widget {
  width: 100% !important;
  min-height: 0;
  margin-bottom: 0 !important;
}

#asint-services .asint-service-card .elementor-widget-image {
  /* Rientro dai bordi; sotto resta la spaziatura del titolo. */
  box-sizing: border-box;
  padding: 12px 12px 0 !important;
  margin: 0 !important;
  background: transparent;
}

#asint-services .asint-service-card .elementor-widget-image a { display: block; }

#asint-services .asint-service-card .elementor-widget-image img {
  display: block;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  aspect-ratio: 3 / 2;
  object-fit: contain !important;
  object-position: center;
  border-radius: 10px;
}

/* 07 — TITOLI COMPLETI E PULSANTI ALLINEATI IN FONDO */
#asint-services .asint-service-card .elementor-widget-heading {
  margin: 0 !important;
  padding: 24px 24px 18px !important;
}

#asint-services .asint-service-card .elementor-heading-title,
#asint-services .asint-service-card .elementor-heading-title a {
  color: #102943 !important;
  font-size: 22px !important;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -0.015em;
  text-decoration: none;
  white-space: normal;
  overflow-wrap: anywhere;
}

#asint-services .asint-service-card .elementor-widget-button {
  margin: auto 0 0 !important;
  padding: 0 24px 24px !important;
}

#asint-services .asint-service-card .elementor-button-wrapper { text-align: left; }

#asint-services .asint-service-card .elementor-button {
  min-height: 46px;
  max-width: 100%;
  padding: 12px 18px;
  border: 1px solid #cfdae4;
  border-radius: 999px;
  color: #255491 !important;
  background: #eaf3fc !important;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
  white-space: normal;
  transition: background-color 180ms ease, color 180ms ease;
}

#asint-services .asint-service-card .elementor-button:hover {
  border-color: #255491;
  color: #fff !important;
  background: #255491 !important;
}

/* 08 — CONTENUTI PRIVI DI IMMAGINE: FONDO GEOMETRICO DISCRETO
   Non crea un'immagine reale e non modifica la Featured Image.
   :has e supportato dai browser moderni; senza supporto la card
   resta leggibile ma non riceve questo segnaposto decorativo. */
#asint-services .asint-service-card:not(:has(.elementor-widget-image img))::before {
  content: "";
  display: block;
  flex: 0 0 auto;
  width: calc(100% - 24px);
  margin: 12px 12px 0;
  border-radius: 10px;
  aspect-ratio: 3 / 2;
  background: linear-gradient(135deg, transparent 48%, rgba(37, 84, 145, 0.12) 49%, rgba(37, 84, 145, 0.12) 67%, transparent 68%),
              linear-gradient(45deg, #edf4fb 40%, #d9e8f6 40%, #d9e8f6 64%, #edf4fb 64%);
}

#asint-services #asint-services-carousel .asint-service-featured-card:not(:has(.elementor-widget-image img))::before {
  content: "";
  display: block;
  grid-column: 1;
  grid-row: 1 / span 2;
  min-height: 380px;
  background: linear-gradient(135deg, transparent 45%, rgba(37, 84, 145, 0.15) 46%, rgba(37, 84, 145, 0.15) 66%, transparent 67%),
              linear-gradient(45deg, #eaf3fc 40%, #cfdfef 40%, #cfdfef 64%, #eaf3fc 64%);
}

#asint-services #asint-services-carousel .asint-service-featured-card .elementor-widget-image:not(:has(img)) {
  padding: 0 !important;
  background: transparent;
}

/* 09 — HOVER AZZURRINO SOLO SU DISPOSITIVI CON MOUSE */
@media (hover: hover) and (pointer: fine) {
  #asint-services .asint-service-card:hover {
    border-color: #9bbedd;
    background: #eaf3fc !important;
    box-shadow: 0 12px 30px rgba(16, 41, 67, 0.1);
    transform: translateY(-3px);
  }
}

#asint-services .asint-service-card:focus-within {
  border-color: #9bbedd;
  background: #eaf3fc !important;
}

#asint-services .asint-service-card a:focus-visible,
#asint-services #asint-services-carousel a:focus-visible,
#asint-services #asint-services-carousel .elementor-swiper-button:focus-visible,
#asint-services .asint-services-tabs .e-n-tab-title:focus-visible,
#asint-services .asint-services-tabs .e-loop__load-more .elementor-button:focus-visible {
  outline: 3px solid #70abd8;
  outline-offset: 3px;
}

/* 10 — MOSTRA ALTRI: COLORI E ROTELLINA DENTRO IL PULSANTE
   Nessun display/visibility forzato sul wrapper o sull'indicatore:
   Elementor puo nasconderli quando i risultati sono terminati. */
#asint-services .asint-services-tabs .e-loop__load-more {
  margin-top: 32px;
  text-align: center;
}

#asint-services .asint-services-tabs .e-loop__load-more .elementor-button {
  position: relative;
  min-height: 48px;
  max-width: 100%;
  padding: 14px 28px;
  margin: 0;
  border: 1px solid #255491;
  border-radius: 999px;
  color: #fff !important;
  background: #255491 !important;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.3;
  white-space: normal;
  transition: background-color 180ms ease, color 180ms ease;
}

#asint-services .asint-services-tabs .e-loop__load-more .elementor-button:hover {
  background: #173d6c !important;
}

#asint-services .asint-services-tabs .e-load-more-pagination-loading .e-loop__load-more .elementor-button {
  color: #255491 !important;
  background: #eaf3fc !important;
  cursor: progress;
}

#asint-services .asint-services-tabs .e-loop__load-more .e-load-more-spinner {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: 0 !important;
  transform: translate(-50%, -50%);
  color: inherit !important;
}

#asint-services .asint-services-tabs .e-loop__load-more .e-load-more-spinner svg { fill: currentColor; }

/* 11 — TABLET */
@media (max-width: 1024px) {
  #asint-services { padding: 36px 24px 48px !important; }
  #asint-services .asint-services-tabs .e-n-tabs-heading { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  #asint-services .asint-services-tabs .asint-service-intro { min-height: 240px !important; }
  #asint-services #asint-services-carousel .asint-service-featured-card .elementor-widget-heading { padding: 28px 40px 20px !important; }
  #asint-services #asint-services-carousel .asint-service-featured-card .elementor-widget-button { padding: 0 40px 28px !important; }
  #asint-services .asint-service-card .elementor-heading-title,
  #asint-services .asint-service-card .elementor-heading-title a { font-size: 20px !important; }
}

/* 12 — TELEFONO: NESSUNO SCORRIMENTO ORIZZONTALE DELLA PAGINA */
@media (max-width: 767px) {
  #asint-services { padding: 28px 16px 40px !important; gap: 24px; }
  #asint-services > .e-con-inner { gap: 24px; }
  #asint-services .asint-services-tabs .e-n-tabs-heading {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px !important;
    margin-bottom: 22px !important;
  }
  #asint-services .asint-services-tabs .e-n-tabs-heading > .e-n-tab-title { min-height: 54px; padding: 10px !important; }
  #asint-services .asint-services-tabs .e-n-tabs-heading .e-n-tab-title-text { font-size: 13px !important; }
  #asint-services .asint-services-tabs .asint-service-intro {
    min-height: 0 !important;
    margin-bottom: 24px !important;
  }
  #asint-services .asint-services-tabs .asint-service-intro .elementor-heading-title { font-size: 24px !important; }
  #asint-services #asint-services-carousel .asint-service-featured-card {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto auto auto;
    min-height: 0 !important;
    border-radius: 18px;
  }
  #asint-services #asint-services-carousel .asint-service-featured-card .elementor-widget-image {
    grid-column: 1;
    grid-row: 1;
    height: auto;
    min-height: 0;
    padding: 12px !important;
  }
  #asint-services #asint-services-carousel .asint-service-featured-card .elementor-widget-image .elementor-widget-container,
  #asint-services #asint-services-carousel .asint-service-featured-card .elementor-widget-image a { height: auto; }
  #asint-services #asint-services-carousel .asint-service-featured-card .elementor-widget-image img {
    height: auto !important;
    max-height: none;
    aspect-ratio: 3 / 2;
  }
  #asint-services #asint-services-carousel .asint-service-featured-card .elementor-widget-heading {
    grid-column: 1;
    grid-row: 2;
    padding: 24px 24px 18px !important;
  }
  #asint-services #asint-services-carousel .asint-service-featured-card .elementor-widget-button {
    grid-column: 1;
    grid-row: 3;
    padding: 0 24px 28px !important;
  }
  #asint-services #asint-services-carousel .asint-service-featured-card:not(:has(.elementor-widget-image img))::before {
    grid-column: 1;
    grid-row: 1;
    min-height: 0;
    aspect-ratio: 3 / 2;
  }
  #asint-services .asint-service-card .elementor-widget-heading { padding: 20px 20px 18px !important; }
  #asint-services .asint-service-card .elementor-widget-button { padding: 0 20px 20px !important; }
  #asint-services .asint-services-tabs .elementor-loop-container { row-gap: 22px !important; }
  #asint-services .asint-services-tabs .e-loop__load-more { margin-top: 26px; }
}

/* 13 — ACCESSIBILITA: RISPETTA LA RIDUZIONE DEI MOVIMENTI
   Questo CSS disattiva solo gli effetti grafici aggiunti qui.
   L'autoplay nativo va gestito nelle impostazioni del carosello. */
@media (prefers-reduced-motion: reduce) {
  #asint-services .asint-service-card,
  #asint-services .asint-service-card .elementor-button,
  #asint-services #asint-services-carousel .asint-service-featured-card .elementor-button,
  #asint-services .asint-services-tabs .e-n-tab-title,
  #asint-services .asint-services-tabs .e-loop__load-more .elementor-button { transition: none !important; }
  #asint-services .asint-service-card:hover { transform: none !important; }
}/* End custom CSS */