/*
Theme Name: Hello Biz Child
Theme URI: https://github.com/elementor/hello-biz-child/
Description: Hello Biz Child is a child theme of Hello Biz, created by Elementor team
Author: Elementor Team
Template: hello-biz
Author URI: https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
Version: 1.0.0
Stable tag: 1.0.0
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 7.4
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Text Domain: hello-biz-child
Tags: flexible-header, custom-colors, custom-menu, custom-logo, featured-images, rtl-language-support, threaded-comments, translation-ready, style-variations
*/

/*
 * Includiamo tutti gli sili del tema in uno @scope per escluderlo dalle zone Filament
 */
@scope (html) to (.theme-excluded) {
  body,
  html {
    margin: 0;
    padding: 0;
    overflow-x: hidden; /* Evita lo scroll orizzontale se Elementor calcola male 1px */
  }

  /* Variabili globali necessarie per sincronizzare le librerie dei colori fra i widget "standard" e quelli Atomic in Elementor */
  :root,
  body {
    --primary: var(--e-global-color-primary);
    --secondary: var(--e-global-color-secondary);
    --text: var(--e-global-color-text);
    --accent: var(--e-global-color-accent);
    --dark: var(--e-global-color-deb9c02);
    --light: var(--e-global-color-cb2f25b);
    --accent2: var(--e-global-color-8da716c);
    --borders: var(--e-global-color-8a43620);
    --agrifood: var(--e-global-color-1844544);
    --agrifood-dark: var(--e-global-color-7e3e649);
    --manufacturing: var(--e-global-color-f99d3a1);
    --manufacturing-dark: var(--e-global-color-57e4b38);
    --health: var(--e-global-color-425bd4d);
    --health-dark: var(--e-global-color-06fbb86);
    --cultura: var(--e-global-color-af2436f);
    --cultura-dark: var(--e-global-color-f93df08);
    --living: var(--e-global-color-1258129);
    --living-dark: var(--e-global-color-9ccf011);
    --destinazione: var(--e-global-color-b0afa25);
    --destinazione-dark: var(--e-global-color-b1bfbe4);
  }

  :root {
    scroll-padding-top: 67px;
  }

  /* classi di utilità */
  .mb-0 p {
    margin-bottom: 0;
    margin-block-end: 0 !important;
  }

  .mr-1 {
    margin-right: 0.25rem !important;
  }

  .w-100 {
    width: 100% !important;
  }

  /* link nei post content*/
  .elementor-widget-theme-post-content a,
  .contenuto-post a,
  .elementor-widget-text-editor p a {
    text-decoration: underline;
    text-underline-offset: 2px;
  }

  .elementor-widget-theme-post-content .wp-block-button a strong,
  .elementor-widget-theme-post-content .wp-block-button a {
    text-decoration: underline;
    color: var(--primary);
    background-color: white;
    padding: 1rem 0;
  }
  /* fix scroll degli anchor nei post content */
  .elementor-widget-theme-post-content span.elementor-menu-anchor,
  .contenuto-post span.elementor-menu-anchor {
    scroll-margin-top: 90px;
  }

  /* spacer utilizzato nei post content */
  @media (max-width: 768px) {
    .wp-block-spacer {
      height: 25px !important;
    }
  }

  /* Font Awesome */
  .fa,
  .fab,
  .fas,
  .far,
  .fal,
  .fad {
    font-family: 'Font Awesome Kit', 'Font Awesome 7 Pro', 'Font Awesome 7 Brands';
  }

  /* Icone */
  .elementor-icon-wrapper {
    line-height: 1;
  }

  /* Buttons */
  /* Rimuove la sottolineatura globale al passaggio del mouse */
  a.elementor-button:hover {
    text-decoration: none !important;
  }

  /* Applica la sottolineatura solo al testo, escludendo l'icona */
  a.elementor-button:hover .elementor-button-text {
    text-decoration: underline !important;
  }

  /* Skip link */
  .skip-link.screen-reader-text:focus {
    position: fixed !important; /* Lo tiene sopra a tutto */
    top: 10px;
    left: 50%;
    transform: translateX(-50%);
    font-weight: bold;
    background: var(--primary);
    color: #ffffff;
    outline: 3px solid #ffcc00;
  }

  /* HEADER */
  /* btn Accedi area personale */
  #iv-topbar .topbar-menu a:focus-visible {
    outline: 3px solid #fff !important;
    outline-offset: 3px;
  }

  /* menu main */
  /* Applichiamo un padding extra a tutte le voci che hanno sottomenu */
  .elementor-nav-menu .menu-item-has-children > a {
    padding-right: 28px !important;
    position: relative;
  }

  /* Posizioniamo l'icona in modo assoluto così non "sposta" il testo quando appare */
  .elementor-nav-menu .sub-arrow {
    position: absolute !important;
    right: 6px;
    top: 30%;
  }

  .elementor-nav-menu--main .menu-item-has-children > a {
    color: var(--text);
  }

  .elementor-nav-menu--main .menu-item-has-children > a:hover {
    text-decoration: none;
    cursor: default;
  }

  /* menu active */
  .elementor-nav-menu--main .current-menu-parent.menu-item-has-children > a {
    color: var(--primary) !important;

    span svg {
      fill: var(--primary) !important;
    }
  }

  /* menu sticky */
  .iv-sticky-menu.elementor-sticky--active {
    box-shadow: 0 3px 6px rgba(36, 36, 36, 0.1);
  }

  .iv-sticky-menu.elementor-sticky--active > div {
    padding-bottom: 0;
  }

  /* immagine in sticky header */
  .img-sticky-header img {
    display: none;
  }

  .elementor-sticky--effects .img-sticky-header img {
    display: block;
    margin-left: 10px;
  }

  /* Breadcrumb */
  .elementor-widget-breadcrumbs #breadcrumbs a {
    text-decoration: underline;
  }

  /* POPUP */
  .elementor-popup-modal .dialog-lightbox-widget-content {
    border-top: 10px solid;
    border-image: linear-gradient(to right, var(--dark), var(--primary)) 1;
  }

  /* FOOTER */
  footer .footer-container a {
    text-decoration: underline !important;
    color: #d4d4d4 !important;

    span {
      color: #d4d4d4 !important;
    }
  }

  footer .footer-container a:hover {
    color: white !important;

    span {
      color: white !important;
    }
  }

  /* focus custom per il footer */
  footer a:focus-visible {
    outline: 3px solid #fff !important;
    outline-offset: 3px;
  }

  /* ICONA HEADER PAGE */
  .iv-container-header-page .elementor-widget-shortcode {
    transition: transform 0s;
  }

  .iv-container-header-page .icona-header-page i {
    font-size: clamp(10em, 12vw, 12em);
    color: #cfdeeb;
  }

  .page.contacts .iv-container-header-page .icona-header-page i,
  .page.contatti .iv-container-header-page .icona-header-page i,
  .page.area-media .iv-container-header-page .icona-header-page i {
    font-size: 10em;
    margin-bottom: -10px;
  }

  .page.registrazione .iv-container-header-page .icona-header-page i,
  .page.login .iv-container-header-page .icona-header-page i,
  .page.piattaforma-di-monitoraggio-s3-veneto .iv-container-header-page .icona-header-page i,
  .page.normativa .iv-container-header-page .icona-header-page i {
    font-size: 10em;
  }

  /* HOME */
  /* cards Cerca partner */
  .carca-partner-card:hover {
    text-decoration: none !important;
  }

  .carca-partner-card:hover h3 {
    text-decoration: underline;
    text-decoration-thickness: 2px;
    text-underline-offset: 4px;
  }

  /* form newsletter */
  .form-newsletter .elementor-form-fields-wrapper {
    justify-content: flex-end;
  }

  .form-newsletter button:hover {
    text-decoration: underline;
  }

  /* CONTATTI */
  .supporto-container .supporto-link a:hover .elementor-icon-list-text {
    text-decoration: underline;
    text-decoration-color: white;
  }

  .contatto-istituzionale ul li span.elementor-icon-list-text {
    overflow-wrap: anywhere;
  }

  /* lista RIR */
  .ambito-s3-smart-agrifood {
    --current-color: var(--agrifood);
    --current-dark: var(--agrifood-dark);
  }

  .ambito-s3-smart-manufacturing {
    --current-color: var(--manufacturing);
    --current-dark: var(--manufacturing-dark);
  }

  .ambito-s3-smart-health {
    --current-color: var(--health);
    --current-dark: var(--health-dark);
  }

  .ambito-s3-cultura-e-creativita {
    --current-color: var(--cultura);
    --current-dark: var(--cultura-dark);
  }

  .ambito-s3-smart-living-energy {
    --current-color: var(--living);
    --current-dark: var(--living-dark);
  }

  .ambito-s3-destinazione-intelligente {
    --current-color: var(--destinazione);
    --current-dark: var(--destinazione-dark);
  }

  .ambito-rir a:hover {
    filter: brightness(0.8);
  }

  .page.rir [class*='ambito-s3'] {
    h3.elementor-heading-title {
      color: var(--current-dark) !important;
    }
  }

  /* dettaglio RIR */
  [class*='ambito-s3'] {
    .header-rir {
      background-color: var(--current-color) !important;

      .elementor-post-info__terms-list-item {
        display: inline-block;
        color: var(--current-dark);
        border: 1px solid var(--current-dark);
      }

      img {
        border-color: var(--current-dark) !important;
      }

      a.rir-dynamic-link {
        color: var(--current-dark) !important;
        border-color: var(--current-dark);
      }

      a.rir-dynamic-link:hover {
        background-color: var(--current-dark) !important;
        color: var(--current-color) !important;
      }
    }
  }

  /* Stili per i TAG */
  .elementor-post-info__terms-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px; /* Spazio tra i tag*/
    color: transparent; /* "Spegne" il colore della virgola di testo */
  }

  .rir-dynamic-link,
  span.elementor-post-info__terms-list .elementor-post-info__terms-list-item {
    height: 24px;
    font-size: 14px;
    font-weight: 600;
    padding: 0 8px 2px;
    text-decoration: none;
    color: var(--secondary) !important;
    border: 1px solid var(--secondary);
    border-radius: 12px;
    transition: all 0.05s;
  }

  .rir-dynamic-link:hover,
  span.elementor-post-info__terms-list a.elementor-post-info__terms-list-item:hover {
    background-color: var(--secondary);
    color: #fff !important;
    border-color: var(--secondary);
    text-decoration: none !important;
  }

  /* DISTRETTI INDUSTRIALI */
  .distretto-industrial .contatti-distretto a {
    overflow-wrap: break-word;
  }

  /* CARD */
  /* per card evidenza news */
  .img-evidenza-news .elementor-widget-theme-post-featured-image {
    height: 100% !important;
  }
  /* per card evidenza innovazioni */
  .card-evidenza-innovazioni .elementor-widget-theme-post-featured-image a {
    width: 100%;
  }
  /* per titoli in card news e riassunto in card storie di innovazione */
  .card-news-container .card-news-titolo a,
  .category-storie-di-innovazione .il-progetto {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
  }

  .etichetta-card-search {
    font-size: 16px;
    font-weight: 600;
    color: var(--text);
  }

  /* STORIE E PROGETTI */
  .adw-toggle.js-adw-toggle:focus,
  .adw-toggle.js-adw-toggle:hover {
    background-color: var(--light);
  }
  .tag-innovazioni.elementor-widget-post-info span.elementor-post-info__item-prefix {
    display: block;
    margin-bottom: 7px;
  }
  /* grafico */
  .elementor-widget-grafico_finanziamento_widget .grafico-finanziamento {
    height: 200px;
  }
  @media (max-width: 768px) {
    .elementor-widget-grafico_finanziamento_widget .grafico-finanziamento {
      height: 150px;
    }
  }
  /* immagine in Altre informazioni delle Storie */
  .altre-info-storie img {
    width: 100px;
    height: auto;
    float: left;
    margin-right: 15px;
  }
  /* link in Informazioni progetto */
  .info-progetto a {
    overflow-wrap: break-word;
  }

  /* ISCRIZIONE MANAGER E FORNITORE */
  div.info-iscrizione-fornitore a,
  div.info-iscrizione-manager a {
    color: white;
    text-decoration: underline;
  }

  @media (max-width: 992px) {
    div.info-trova-manager,
    div.info-iscrizione-manager {
      position: relative;
      margin-bottom: 20px;
      margin-left: 10px;
    }
  }

  p a.link-guide {
    display: block;
    margin-top: 15px;
    line-height: 20px;
    background-color: var(--secondary) !important;
    color: white !important;
    text-decoration: none;
    border: 2px solid white;
    border-radius: 3px;
  }

  p a.link-guide::before {
    content: '\f15c';
    font-family: 'Font Awesome 7 Pro';
    margin-right: 10px;
  }

  p a.link-guide:hover {
    text-decoration: underline !important;
  }

  /* VIDEO IN POST CONTENT */
  /* Mantiene il rapporto 16:9 sia per il placeholder Complianz che per l'iframe attivo */
  .wp-block-embed-youtube .wp-block-embed__wrapper,
  .wp-block-embed-youtube iframe {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16 / 9 !important;
  }

  @media (min-width: 768px) {
    .wp-block-embed-youtube .wp-block-embed__wrapper,
    .wp-block-embed-youtube iframe {
      min-width: 350px !important;
    }
  }

  .cmplz-blocked-content-container .cmplz-blocked-content-notice {
    z-index: 29 !important;
  }

  /* ACCORDION IN POST CONTENT */
  /* Fix CSS necessario per mostrare/nascondere il pannello */
  .wp-block-accordion-item .wp-block-accordion-panel {
    margin-block-start: 5px;
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition:
      max-height 0.2s ease-in-out,
      opacity 0.2s ease-in-out;
  }

  .wp-block-accordion-item.is-open .wp-block-accordion-panel {
    opacity: 1;
    /* La max-height viene iniettata dinamicamente in linea dal JS */
  }
  /* Rotazione icona + / - */
  .wp-block-accordion-item.is-open .wp-block-accordion-heading__toggle-icon {
    transform: rotate(45deg);
  }
  .wp-block-accordion-heading button.wp-block-accordion-heading__toggle {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 18px;
    background-color: #f0f0f0;
    color: var(--primary);
    border: none;
    white-space: break-spaces;
    text-align: start;
  }
  .wp-block-accordion-heading button.wp-block-accordion-heading__toggle:focus,
  .wp-block-accordion-heading button.wp-block-accordion-heading__toggle:hover {
    background-color: #e0e0e0;
    color: var(--primary);
  }
  .wp-block-accordion .wp-block-file {
    margin-top: 8px !important;
    margin-bottom: 8px !important;
    text-align: center;
  }
  .wp-block-accordion .wp-block-file a {
    background-color: var(--primary);
    color: white;
    padding: 6px 12px;
    border-radius: 4px;
    text-decoration: none;
  }
  .wp-block-accordion .wp-block-file a::before {
    content: '\f0ab';
    font-family: 'Font Awesome 7 Pro';
    margin-right: 8px;
    display: inline-block; /* per evitare la sottolineatura */
  }

  /* LISTE PERSONALIZZATE */
  /* aggiungere la classe .iv-lista */
  .iv-lista ul {
    list-style: none;
    padding-left: 0;
  }

  .iv-lista li {
    position: relative;
    padding-left: 25px;
    margin-bottom: 12px;
    line-height: 1.6;
  }

  .iv-lista li::before {
    content: '-';
    margin-right: 5px;
    color: var(--primary);
    font-weight: bold;
  }

  .iv-lista-2 ul {
    list-style: inside;
    padding-left: 0;
  }

  .iv-lista-2 li {
    position: relative;
    margin-bottom: 12px;
    line-height: 1.6;
  }

  .iv-lista-2 li::marker {
    color: var(--primary);
  }

  /* Titolo risultati ricerca */
  .titolo-risultati-ricerca span {
    display: block;
    font-size: 24px;
    font-weight: 400;
    margin-top: 15px;
  }

  .archivio-risultati .iv-card-category {
    display: inline-flex;
    justify-content: flex-start;
    margin-bottom: 10px;
  }

  .archivio-risultati .iv-card-category span {
    display: inline-block; /* per evitare la sottolineatura */
    background-color: var(--light);
    padding: 6px 16px;
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
    font-size: 16px;
    font-weight: 600;
    margin-left: -30px;
  }

  .archivio-risultati .iv-card-category span:hover {
    text-decoration: none !important;
  }

  /* SCHEDA MANAGER e FORNITORE*/
  .info-fornitore-container .info-fornitore-header,
  .info-manager-container .info-manager-header {
    position: relative;
    margin-bottom: 30px;
  }

  .info-fornitore-container.fornitore-contatti .info-fornitore-header,
  .info-fornitore-container.fornitore-ambito-operativo .info-fornitore-header,
  .info-manager-container.manager-contatti .info-manager-header,
  .info-manager-container.manager-ambito-operativo .info-manager-header {
    margin-bottom: 20px;
  }

  .info-fornitore-container.info-fornitore-header > h3::after,
  .info-fornitore-container .info-fornitore-header > h3::after,
  .info-manager-container.info-manager-header > h3::after,
  .info-manager-container .info-manager-header > h3::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -10px;
    width: 50px;
    height: 4px;
    background-color: var(--primary);
  }
}

/* PAGINA SITEMAP HTML */
.kwayy-html-sitemap-wrapper h2 {
  margin-bottom: 10px;
}

.kwayy-html-sitemap-wrapper h2:not(:first-of-type) {
  margin-top: 30px;
}

/* Stili per la stampa */
@media print {
  header,
  footer,
  .elementor-location-header,
  .elementor-location-footer,
  .toc-sidebar {
    display: none !important;
  }
  .elementor-widget-post-content {
    width: 100% !important;
  }
  /* Rimuove la visualizzazione degli URL accanto ai link */
  a[href]::after {
    content: none !important;
  }
}
