/*
        Theme Name: Argoverse - Hello Elementor Child
        Theme URI: https://github.com/elementor/hello-theme-child/
        Description: Hello Elementor Child is a child theme of Hello Elementor
        Author: Argoverse Team
        Author URI: https://argoverse.it
        Template: hello-elementor
        Version: 2.0.0
        Text Domain: bitec-child
        Domain Path: /languages
        License: GNU General Public License v3 or later.
        License URI: https://www.gnu.org/licenses/gpl-3.0.html
        Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

/*************************  HEADER  *************************/
.cf7-cond[hidden] { display: none !important; }

.custom-nav .menu-item a {
    border-radius: 5px;
    transition: all 0.1s;
}
.custom-nav .menu-item .sub-menu a,
.elementor-nav-menu--dropdown a {
    border-radius: 0px!important;
}
.elementor-nav-menu--dropdown{
    overflow: hidden;
}
.elementor-nav-menu--dropdown li:first-child a,
.elementor-nav-menu--dropdown li:first-child a:hover{
    padding-top: 20px!important
}
.elementor-nav-menu--dropdown li:last-child a,
.elementor-nav-menu--dropdown li:last-child a:hover{
    padding-bottom: 20px!important
}
.elementor-nav-menu--dropdown .current-menu-item a:hover {
    background-color: #e67701!important;
}
.custom-nav .menu-item a:hover {
    color: white!important;
    background-color: #e67701;
    transition: all 0.1s;
}
.custom-nav .menu-item a:hover svg,
a.highlighted svg{
    fill: white;
    transition: all 0.1s;
}
.elementor-nav-menu--dropdown .elementor-sub-item {
    font-size: 13px!important
}
/* Sottomenu al click: affordance sui voci padre */
.elementor-nav-menu li.menu-item-has-children > a.elementor-item {
    cursor: pointer;
}
.menu-item-1752-en, .catalogo-mobile, .cerca-mobile {
    display: none!important;
}
.catalogo-mobile a.elementor-item,
.cerca-mobile a.elementor-item {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    overflow: visible !important;
}
.catalogo-mobile a.elementor-item::after {
    content: "\00a0" !important; 
    display: inline-block !important;
    position: relative !important; 
    left: auto !important;
    top: auto !important;
    bottom: auto !important;
    right: auto !important;
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    min-height: 20px !important;
    flex-shrink: 0 !important;
    margin-left: 8px !important; 
    background-image: url("/wp-content/uploads/2026/06/custom_dowload_blu.svg") !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    transition: all 0.1s !important;
    visibility: visible !important;
    opacity: 1 !important;
}
.cerca-mobile a.elementor-item::after {
    content: "\00a0" !important; 
    display: inline-block !important;
    position: relative !important; 
    left: auto !important;
    top: auto !important;
    bottom: auto !important;
    right: auto !important;
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    min-height: 20px !important;
    flex-shrink: 0 !important;
    margin-left: 8px !important; 
    background-image: url("/wp-content/uploads/2026/07/lens.svg") !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    transition: all 0.1s !important;
    visibility: visible !important;
    opacity: 1 !important;
}
.catalogo-mobile a.elementor-item:hover::after {
    background-image: url("/wp-content/uploads/2026/06/custom_dowload.svg") !important;
    transition: all 0.1s !important;
}
.cerca-mobile a.elementor-item:hover::after {
    background-image: url("/wp-content/uploads/2026/07/lens-white.svg") !important;
    transition: all 0.1s !important;
}
/************************* CUSTOM FORM 7 *************************/
.cf7-custom-grid {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.cf7-field p {
   margin-bottom: 0px!important
}
/* Configurazione layout a due colonne (Nome e Azienda) */
.cf7-cols-2 {
    display: flex;
    gap: 20px ; 
}
.cf7-cols-2 .cf7-field {
    flex: 1;
}
/* --- Stile dei campi di testo e Textarea --- */
.cf7-custom-grid input[type="text"],
.cf7-custom-grid textarea,
.cf7-custom-grid input[type="email"],
.cf7-custom-grid input[type="date"],
.cf7-custom-grid input[type="tel"],
.wpcf7-form-control-wrap select {
    width: 100% !important;
    padding: 18px 24px !important;
    border: none !important;
    border-radius: 8px !important;
    background-color: #ffffff !important;
    font-size: 16px !important;
    color: #0071b9 !important; /* Colore dell'input */
    box-sizing: border-box !important;
    box-shadow: 0 2px 5px rgba(0,0,0,0.02); /* Leggera ombra per dare profondità */
}
.white-bg-form .cf7-custom-grid input[type="text"],
.white-bg-form .cf7-custom-grid textarea,
.white-bg-form .cf7-custom-grid input[type="email"],
.white-bg-form .cf7-custom-grid input[type="date"],
.white-bg-form .cf7-custom-grid input[type="tel"],
.white-bg-form .wpcf7-form-control-wrap select  {
    background-color: #f5f5f5!important;
    box-shadow: 0 2px 5px rgba(0,0,0,0);
}
.cf7-custom-grid input[type="date"] {
    padding: 14px !important;
}
/* Altezza della Textarea (Messaggio) */
.cf7-custom-grid textarea {
    height: 200px !important;
    resize: vertical;
}
/* --- Colore personalizzato dei Placeholder (Azzurro come in foto) --- */
.cf7-custom-grid ::-webkit-input-placeholder { color: #0071b9 !important; !important; opacity: 1; }
.cf7-custom-grid ::-moz-placeholder { color: #0071b9 !important; opacity: 1; }
.cf7-custom-grid :-ms-input-placeholder { color: #0071b9 !important; opacity: 1; }
.cf7-custom-grid ::placeholder { color: #0071b9 !important; opacity: 1; }

/* --- Box Privacy Policy --- */

/* --- Nasconde le label, ma devono restare per Accessibilità (pattern standard sr-only) --- */
.cf7-custom-grid p > label {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    clip-path: inset(50%);
    white-space: nowrap;
    border: 0;
}

.cf7-row.cf7-input-file {
    padding: 15px 26px;
    background-color: #fff;
    color: #0071b9;
    border-radius: 10px;
}

.white-bg-form .cf7-row.cf7-input-file {
    background-color: #f5f5f5;
}

.cf7-custom-grid .privacy-box {
    color: #0071b9;
    font-size: 16px;
}
.cf7-custom-grid .privacy-box label {
    display: flex;
    align-items: baseline;
    cursor: pointer;
}
.cf7-custom-grid .privacy-box input[type="checkbox"] {
    margin-right: 10px;
    transform: scale(1.1);
}
.cf7-custom-grid .privacy-box a {
    color: #0071b9;
    text-decoration: underline;
}
.wpcf7-list-item {
	margin: 0;
}

/* Sovrascrivo impostazioni Tom Select 2 */
.ts-control {
    border: none!important;
    border-radius: 10px!important;
    box-shadow: none;
    cursor:pointer!important;
    padding: 3px!important;
    box-sizing: border-box !important;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.02);
}

.ts-control,
.ts-control input,
.ts-dropdown {
    color: #0071b9!important;
    font-family: inherit;
    font-size: 14px;
    line-height: 18px;
    border: none!important;
}

.ts-control,
.ts-wrapper.single.input-active .ts-control {
    background: #fff;
    cursor:pointer!important;
    min-height: 60px;
}

.ts-wrapper.multi .ts-control>div {
    height: 24px!important;
    color: #fff!important;
    background-color: #0071c0!important;
}

/* Filtri referenze (archivio settore): due Tom Select AFFIANCATI, look allineato
   alla select nativa "ordina" (.argo-sort__select). Tutto scoping sotto .argo-filter
   per NON toccare lo stile Tom Select di Contact Form 7 (regole globali .ts-* sopra). */
.argo-filter {
    display: flex;
    flex-wrap: nowrap;      /* fianco a fianco, non impilati */
    align-items: center;
    gap: 10px;
}
.argo-filter .ts-wrapper {
    margin: 0;
    flex: 1 1 0;            /* si dividono lo spazio e non vanno a capo */
    min-width: 0;          /* consente lo shrink + l'ellissi sul testo lungo */
    max-width: 280px;
}
/* Il control imita .argo-sort__select: bordo 2px #0071b9, raggio 5px, font Archivo 17px */
.argo-filter .ts-control {
    min-height: 0 !important;
    border: 2px solid #0071b9 !important;
    border-radius: 5px !important;
    background: #fff !important;
    box-shadow: none !important;
    padding: 7px 32px 7px 10px !important;   /* spazio a destra per il caret */
    cursor: pointer !important;
    overflow: hidden;
}
.argo-filter .ts-control,
.argo-filter .ts-control input,
.argo-filter .ts-dropdown,
.argo-filter .ts-dropdown .option {
    color: #0071b9 !important;
    font-family: "Archivo-Semi-Condensed-400-500-600-700-italic", Sans-serif !important;
    font-size: 17px !important;
    line-height: 1.25 !important;
}
/* Nome selezionato su una riga, con ellissi (nomi prodotto lunghi) */
.argo-filter .ts-control > .item {
    max-width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
/* Caret coerente col bordo (ridefinito qui: una sola freccia, colore #0071b9) */
.argo-filter .ts-wrapper.single .ts-control:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 13px;
    left: auto;
    margin-top: -2px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 5px 0 5px;
    border-color: #0071b9 transparent transparent transparent !important;
}
/* Dropdown con stesso bordo/colore e voce attiva evidenziata */
.argo-filter .ts-dropdown {
    border: 2px solid #0071b9 !important;
    border-radius: 5px !important;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.10);
    margin-top: 4px;
    overflow: hidden;
}
.argo-filter .ts-dropdown .active {
    background: #0071b9 !important;
    color: #fff !important;
}
/* Mobile: impila i due filtri a tutta larghezza */
@media (max-width: 480px) {
    .argo-filter { flex-wrap: wrap; }
    .argo-filter .ts-wrapper { flex-basis: 100%; max-width: none; }
}
.argo-filter--placeholder {
    padding: 10px 14px;
    border: 1px dashed #c3c4c7;
    border-radius: 10px;
    color: #646970;
    font-size: 13px;
}
/* Filtro senza opzioni: Tom Select disabilitata (segnaposto "Nessun…"), così la riga
   "filtra per:" resta sempre coerente invece di lasciare l'etichetta orfana. */
.argo-filter .ts-wrapper.disabled .ts-control {
    background: #f6f7f7 !important;
    border-color: #c3c4c7 !important;
    color: #8c8f94 !important;
    cursor: not-allowed !important;
    opacity: 1 !important; /* annulla l'opacity:.5 del CSS Tom Select vendorizzato */
}
.argo-filter .ts-wrapper.disabled .ts-control:after {
    border-top-color: #8c8f94 !important; /* caret grigio quando disabilitato */
}

/* --- Pulsante Arancione "INVIA RICHIESTA" --- */
.cf7-custom-btn,
.soluzioni-grid a.elementor-button {
    font-family:"Archivo-Semi-Condensed-400-500-600-700-italic", Sans-serif!important;
    background-color: #e47b00 !important;
    color: #ffffff !important;
    border: none !important;
    padding: 20px 45px !important;
    font-size: 17px !important;
    font-weight: bold !important;
    border-radius: 8px !important;
    line-height: 0;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    text-transform: uppercase;
    transition: background-color 0.3s ease, transform 0.2s ease;
    position: relative;
    transition: all 0.3s;
}

/* freccia dopo il testo */
.cf7-custom-btn::after {
    content: "";
    display: block;
    position: relative;
    width: 30px;
    height: 18px;
    margin-left: 12px;
    background-image: url("/wp-content/uploads/2026/06/custom_arrow_white.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    transition: all 0.2s;
    left: 0;
}
.cf7-custom-btn:hover,
.soluzioni-grid a.elementor-button:hover{
    background-color: #cc6e00 !important;
    transition: all 0.2s;
}
.cf7-custom-btn:hover::after{
    left: 10px;
    transition: all 0.2s;
}

/* --- Ottimizzazione per dispositivi Mobile --- */
@media (max-width: 768px) {
    .cf7-cols-2 {
        flex-direction: column;
    }
}
/*************************  BUTTONS  *************************/
.header-btn a {
    width: 100%;
}
.icon-btn svg{
    width: 30px!important;
    position: relative;
    transition: all 0.2s;
    left:0;
}
.icon-btn:hover svg {
    left: 8px;
    transition: all 0.2s;
}
.orange-btn:hover,
.header-btn a:hover{
    background-color: #d65609!important
}
.white-btn .elementor-button:hover {
    background:rgba(255,255,255, 0.25)!important;
}
.soluzioni-grid a.elementor-button {
    padding: 27px 45px !important; 
}
/*************************  CAROUSEL REFERENZE  *************************/
.ref-carousel .swiper-slide img {
    transition: all 0.2s;
}
.ref-carousel .swiper-slide:hover img {
    scale:1.1;
    transition: all 0.3s;
}
/*************************  FOOTER  *************************/

.footer-menu .menu-item a:hover {
    color: #e67701!important;
}
/*********************  PAG. REFERENZA SINGOLA  *********************/
.referenza-tag ul li span.elementor-icon-list-text {
    color: white!important;
    background-color: #0071b9!important;
    padding: 2px 15px;
    border-radius: 4px;
}
.elementor-widget-theme-post-content h2,
.elementor-widget-theme-post-content h3,
.elementor-widget-theme-post-content h4 {
    font-family: "Sinkin-Sans-400-500-600-700", sans-serif;
    color: #0071b9;
    display: inline-block!important;
}
.elementor-widget-theme-post-content h2 {
    font-weight: 700;
    font-size: 26px;
    padding-bottom: 6px;
    margin-bottom: 12px;
    border-bottom: solid 2px #e67701!important;
    display: inline-block!important;
}
.elementor-widget-theme-post-content h3 {
    font-weight: 600;
    font-size: 22px;
    padding-bottom: 5px;
    margin-bottom: 10px;
    border-bottom: solid 2px #e67701!important;
    display: inline-block!important;
}
.elementor-widget-theme-post-content h4 {
    font-weight: 600;
    font-size: 18px;
    padding-bottom: 4px;
    margin-bottom: 8px;
    display: inline-block!important;
}

.elementor-widget-theme-post-content a,
.elementor-widget-theme-post-content p,
.elementor-widget-theme-post-content ul{
    font-family: "Archivo-Semi-Condensed-400-500-600-700-italic", sans-serif;
    font-weight: 400;
    font-size: 18px;
    color: #454545;
}

.elementor-widget-theme-post-content a{
    font-weight: 500;
    color: #e67701;
}
.elementor-widget-theme-post-content a:hover {
    font-weight: 600;
}

.referenza .e-loop__load-more{
    margin-top: 60px!important;
}
.referenza-simile-settore a {
    padding: 6px 12px!important;
    border: solid 2px white;
    border-radius: 8px;
    transition: all 0.2s;
}
.referenza-simile-settore a:hover {
    background-color: #ffffff!important;
    color: #0071b9!important;
    transition: all 0.2s;
}
/************************* GALLERIA REFERENZA (shortcode [argo_referenza_galleria]) *************************/
.argo-galleria {
    display: grid;
    gap: 12px;
}

/* TILE COMUNE (anchor) */
.argo-galleria__item {
    position: relative;
    display: block;
    line-height: 0;
    overflow: hidden;
    border-radius: 6px;
    cursor: pointer;
}

.argo-galleria-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
/* Select di ordinamento (widget Argo) */
.argo-sort__select {
    cursor: pointer;
    border: 2px solid #0071b9!important;
    font-family:"Archivo-Semi-Condensed-400-500-600-700-italic", Sans-serif!important;
    font-size: 17px;
    color: #0071b9!important;
    margin-left: 5px;
    border-radius: 5px;
}
.argo-sort__select option {
    font-family:"Archivo-Semi-Condensed-400-500-600-700-italic", Sans-serif!important;
    color: #0071b9!important;
}
/************************* LAYOUT GRIGLIA UNIFORME *************************/
.argo-galleria--grid {
    grid-template-columns: repeat(var(--argo-galleria-col, 3), 1fr);
}

.argo-galleria--grid .argo-galleria-img {
    aspect-ratio: 1 / 1;
}

/* --- LAYOUT MASONRY (1 grande + 4 miniature) --- */
.argo-galleria--masonry {
    grid-template-columns: 1fr 1fr;
    align-items: stretch;
}

.argo-galleria--masonry.argo-galleria--single {
    grid-template-columns: 1fr;
}

/* IMMAGINE GRANDE: riempie l'altezza del blocco miniature */
.argo-galleria__big {
    height: 100%;
}

.argo-galleria__big .argo-galleria-img {
    height: 100%;
    min-height: 220px;
}

/* GRIGLIA 2x2 DELLE MINIATURE */
.argo-galleria__thumbs {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.argo-galleria__thumbs .argo-galleria-img {
    aspect-ratio: 1 / 1;
    height: auto;
}

/* OVERLAY "+N" SULLA 5ª TILE */
.argo-galleria__more::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.55);
    z-index: 1;
}

.argo-galleria__more-count {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1;
}

/* ANCHOR NASCOSTI: solo per il lightbox, fuori dal layout */
.argo-galleria__item.is-hidden {
    display: none;
}

/* FIX: LAYOUT SHOWCASE (featured grande + striscia di miniature sotto) */
.argo-galleria--showcase {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/* FEATURED: bottone a tutta larghezza, click apre il lightbox */
/* DISABILITA CSS BUTTON */
button.argo-galleria__featured:focus,
button.argo-galleria__featured:hover,
button.argo-galleria__thumb:focus,
button.argo-galleria__thumb:hover{
    background-color: #fff;
    color: #fff;
    text-decoration: none;
}

.argo-galleria__featured {
    display: block;
    width: 100%;
    padding: 0;
    margin: 0;
    border: 0;
    background: none;
    line-height: 0;
    overflow: hidden;
    border-radius: 6px;
    cursor: zoom-in;
}

.argo-galleria__featured-img {
    width: 100%;
    height: auto;
    aspect-ratio: 4 / 3; /* box stabile tra immagini di proporzioni diverse: niente salti allo swap */
    object-fit: cover;
    display: block;
}

/* STRISCIA MINIATURE: scroll orizzontale, --argo-thumbs = quante visibili */
.argo-galleria__strip-wrap {
    position: relative; /* le frecce sono in overlay e non sottraggono larghezza alla striscia */
}

.argo-galleria__strip {
    display: flex;
    gap: 12px;
    overflow-x: auto;
    scroll-behavior: smooth;
    -ms-overflow-style: none; /* Edge legacy */
    scrollbar-width: none;    /* Firefox: nessuna scrollbar */
}
/* Chrome/Safari: nessuna scrollbar (lo scroll resta solo via frecce/touch) */
.argo-galleria__strip::-webkit-scrollbar {
    display: none;
}

.argo-galleria__thumb {
    flex: 0 0 calc((100% - (var(--argo-thumbs, 5) - 1) * 12px) / var(--argo-thumbs, 5));
    padding: 0;
    margin: 0;
    border: 2px solid transparent;
    background: none;
    line-height: 0;
    overflow: hidden;
    border-radius: 6px;
    cursor: pointer;
    transition: border-color 0.1s ease;
}

.argo-galleria__thumb-img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    display: block;
}

.argo-galleria__thumb.is-active {
    border-color: #e47b00; /* arancione brand */
}

.argo-galleria__thumb:hover {
    border-color: #d65609;
}

/* FOCUS VISIBILE (a11y WCAG 2.2) */
.argo-galleria__featured:focus-visible,
.argo-galleria__thumb:focus-visible,
.argo-galleria__nav:focus-visible {
    outline: 2px solid #0071b9;
    outline-offset: 2px;
}

/* FRECCE IN OVERLAY SULLA STRISCIA (non occupano spazio: le thumbnail usano tutta la larghezza) */
.argo-galleria__nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
    width: 36px;
    height: 36px;
    padding: 0;
    border: 1px solid #d0d0d0;
    border-radius: 50%;
    background: #fff;
    color: #0071b9;
    font-size: 18px;
    line-height: 1; /* il box flex centra il glifo (align/justify) */
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.25); /* stacco dalle immagini sottostanti */
    transition: background-color 0.1s ease, color 0.1s ease;
}

.argo-galleria__nav--prev {
    left: 6px;
}

.argo-galleria__nav--next {
    right: 6px;
}

.argo-galleria__nav:hover:not(:disabled) {
    background: #0071b9;
    color: #fff;
}

.argo-galleria__nav[hidden] {
    display: none;
}

.argo-galleria__nav:disabled {
    opacity: 0.35;
    cursor: default;
}

/* PALLINI DI STATO/PAGINAZIONE (sotto le thumbnail) */
.argo-galleria__dots {
    display: flex;
    justify-content: center;
    gap: 0;
    margin-top: 6px;
}

.argo-galleria__dots[hidden] {
    display: none;
}
.argo-galleria__dot {
    box-sizing: content-box;
    width: 10px;
    height: 10px;
    border: 0;
    padding: 10px;
    border-radius: 50%;
    background: #cfcfcf; 
    background-clip: content-box;
    cursor: pointer;
    transition: background-color 0.1s ease;
}
.argo-galleria__dot.is-active,
.argo-galleria__dot.is-active:hover {
    box-sizing: content-box;
    width: 10px;
    height: 10px;
    border: 0;
    padding: 10px;
    border-radius: 50%;
    background: #0071b9; 
    background-clip: content-box;
    cursor: pointer;
    transition: background-color 0.1s ease;
}
.argo-galleria__dots button:hover {
    background-color: #8f8f8f;
}
.argo-galleria__dot:focus-visible {
    outline: 2px solid #0071b9;
    outline-offset: 2px;
}

/************************* RESPONSIVE *************************/

@media (max-width: 1024px) {
.menu-item-1752-en, .catalogo-mobile, .cerca-mobile {
    display: block!important;
}
}
@media (max-width: 767px) {
    .argo-galleria--grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .argo-galleria--masonry {
        grid-template-columns: 1fr;
    }
}

/************************* CONTENT WITH TABS (widget Argo) *************************/

/* Progressive enhancement: senza JS i pannelli restano visibili e la lista e' un
   indice di ancore; assets/js/argo-content-tabs.js promuove al pattern ARIA tabs. */

.argo-tabs {
    margin: 0 0 1.5rem;
}

.argo-tabs__intro {
    margin-bottom: 1.5rem;
}

.argo-tabs__list {
    list-style: none;
    margin: 0 0 1rem;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem;
    border-bottom: 1px solid #d5d5d5;
}

.argo-tabs__item {
    margin: 0;
}

.argo-tabs__tab {
    display: inline-flex;
    align-items: center;
    min-height: 44px; /* target ampio (WCAG 2.5.8, comodo al tocco) */
    padding: 0.5rem 1rem;
    text-decoration: none;
    color: #333;
    font-weight: 600;
    line-height: 1.2;
    border: 1px solid transparent;
    border-bottom: none;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    background: transparent;
    cursor: pointer;
}

.argo-tabs__tab:hover {
    color: #0071b9;
}

.argo-tabs__tab:focus-visible {
    outline: 2px solid #0071b9;
    outline-offset: 2px;
}

/* Stato attivo (solo dopo l'enhancement JS, che imposta aria-selected). */
.argo-tabs__tab[aria-selected="true"] {
    position: relative;
    color: #0071b9;
    background: #fff;
    border-color: #d5d5d5;
}

.argo-tabs__tab[aria-selected="true"]::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    height: 3px;
    background: #0071b9;
}

.argo-tabs__panel {
    margin: 0;
}

.argo-tabs__panel[hidden] {
    display: none;
}

.argo-tabs__panel:focus-visible {
    outline: 2px solid #0071b9;
    outline-offset: 2px;
}

/* Placeholder mostrato solo nell'editor di Elementor quando manca contenuto. */
.argo-tabs__placeholder {
    padding: 1rem;
    border: 1px dashed #b5b5b5;
    color: #666;
    font-style: italic;
}

@media (prefers-reduced-motion: no-preference) {
    .argo-tabs__tab {
        transition: color 0.15s ease;
    }
}

@media (max-width: 767px) {
    /* I tab restano in una riga sola e scorrono in orizzontale. overflow-y: hidden
       esplicito evita che l'asse verticale diventi scrollabile (la scrollbar
       verticale "fantasma" che comparirebbe con il solo overflow-x). padding-block
       lascia spazio all'anello di focus, cosi' non viene tagliato. */
    .argo-tabs__list {
        flex-wrap: nowrap;
        overflow-x: auto;
        overflow-y: hidden;
        scroll-behavior: smooth;
        -webkit-overflow-scrolling: touch;
        padding-block: 4px;
        /* Scrollbar nascosta: si scorre con touch/drag o cliccando i tab. */
        scrollbar-width: none; /* Firefox */
        -ms-overflow-style: none; /* Edge/IE legacy */
    }
    .argo-tabs__list::-webkit-scrollbar {
        display: none; /* WebKit/Blink */
    }
    .argo-tabs__tab {
        white-space: nowrap;
        font-size: 0.9rem;
        padding: 0.5rem 0.7rem;
    }
    /* La barretta del tab attivo non deve sporgere sotto: eviterebbe overflow
       verticale e verrebbe comunque tagliata da overflow-y: hidden. */
    .argo-tabs__tab[aria-selected="true"]::after {
        bottom: 0;
    }
}

/************************* DATI TECNICI (widget Argo) *************************/

.argo-datatec__block + .argo-datatec__block {
    margin-top: 32px;
}

.argo-datatec__title {
    font-family: "Sinkin-Sans-400-500-600-700", sans-serif;
    font-weight: 700;
    font-size: 22px!important;
    color: #0071b9;
    margin: 0 0 14px;
    padding-bottom: 6px;
    border-bottom: solid 2px #e67701;
    display: inline-block;
}

/* Tabella specifiche: <dl> impaginato in flex, niente <table>. */
.argo-datatec__table {
    margin: 0;
    border-top: 1px solid #e2e2e2;
}

.argo-datatec__row {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 24px;
    padding: 10px 0;
    border-bottom: 1px solid #e2e2e2;
}

.argo-datatec__key,
.argo-datatec__val {
    font-family: "Archivo-Semi-Condensed-400-500-600-700-italic", sans-serif;
    font-size: 18px;
    margin: 0;
    line-height: 1.4;
}

.argo-datatec__key {
    flex: 0 0 40%;
    max-width: 40%;
    font-weight: 600;
    color: #0071b9;
}

.argo-datatec__val {
    flex: 1 1 50%;
    color: #454545;
}

@media (max-width: 600px) {
    .argo-datatec__key,
    .argo-datatec__val {
        flex: 1 1 100%;
        max-width: 100%;
    }
    .argo-datatec__val {
        font-weight: 500;
    }
}