/**
 * Stili Exobyte – logo e tagline hero sincronizzati su tutte le pagine.
 * Modificare solo questo file per aggiornare logo e tagline su tutto il sito.
 */

/* Limite dimensioni logo Exobyte (ridotto del 60% rispetto a 48px) */
.exobyte-logo,
.header-logo img,
.header-logo-2 img,
.offcanvas__logo img,
.search_logo img,
.footer-left-content a img[src*="logo.png"] {
    max-height: 19px;
    width: auto;
    object-fit: contain;
}

/* Tagline hero: si adatta al viewport senza andare a capo su PC */
.hero-1 .hero-content .hero-tagline {
    font-size: clamp(1.25rem, 2.2vw, 2.5rem) !important;
    white-space: nowrap;
}

@media (max-width: 991px) {
    .hero-1 .hero-content .hero-tagline {
        white-space: normal;
    }
}

/* Nasconde il badge reCAPTCHA in basso a destra (testo Privacy/ToS nel form sostituisce l’informativa) */
.grecaptcha-badge {
    visibility: hidden !important;
}

/* Sezione che contiene il form: il modal si posiziona sopra di essa (non al centro pagina) */
.exobyte-form-section {
    position: relative;
    overflow: visible;
}
.exobyte-form-section .exobyte-modal {
    position: absolute;
    inset: 0;
    z-index: 9999;
}
/* Modal Privacy & ToS Exobyte: centrato nel viewport se fuori da .exobyte-form-section, altrimenti sopra il form */
.exobyte-modal {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
}
.exobyte-form-section .exobyte-modal {
    position: absolute;
    inset: 0;
    z-index: 9999;
}
.exobyte-modal.is-open {
    opacity: 1;
    visibility: visible;
}
.exobyte-modal-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.6);
    cursor: pointer;
}
.exobyte-modal-box {
    position: relative;
    max-width: 560px;
    width: 100%;
    max-height: 85vh;
    overflow: hidden;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.2);
    display: flex;
    flex-direction: column;
}
.exobyte-modal-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid #eee;
    flex-shrink: 0;
}
.exobyte-modal-header h2 {
    margin: 0;
    font-size: 1.25rem;
}
.exobyte-modal-close {
    background: none;
    border: none;
    font-size: 1.75rem;
    line-height: 1;
    cursor: pointer;
    color: #666;
    padding: 0 0.25rem;
}
.exobyte-modal-close:hover {
    color: #000;
}
.exobyte-modal-tabs {
    display: flex;
    gap: 0;
    padding: 0 1rem;
    border-bottom: 1px solid #eee;
    flex-shrink: 0;
}
.exobyte-tab {
    padding: 0.75rem 1rem;
    background: none;
    border: none;
    border-bottom: 2px solid transparent;
    cursor: pointer;
    font-size: 0.95rem;
    color: #666;
}
.exobyte-tab:hover { color: #333; }
.exobyte-tab.active {
    color: #000;
    border-bottom-color: #000;
    font-weight: 600;
}
.exobyte-modal-body {
    overflow-y: auto;
    padding: 1.25rem;
    flex: 1;
}
.exobyte-tab-pane {
    display: none;
}
.exobyte-tab-pane.active {
    display: block;
}
.exobyte-tab-pane h3 {
    margin-top: 0;
    font-size: 1.1rem;
}
.exobyte-tab-pane p {
    margin-bottom: 1rem;
    font-size: 0.95rem;
    line-height: 1.5;
}
.exobyte-tab-pane p:last-child { margin-bottom: 0; }
/* Footer modal esito invio (pulsante Chiudi) */
.exobyte-modal-footer.exobyte-esito-footer {
    padding: 1rem 1.25rem;
    border-top: 1px solid #eee;
    flex-shrink: 0;
}
.form-privacy-tos a { text-decoration: underline; }

/* Immagini team: dimensioni fisse 382×421 */
.team-section .team-wrapper .team-card-items .team-image {
    width: 382px;
    max-width: 100%;
    height: 421px;
    overflow: hidden;
}
.team-section .team-wrapper .team-card-items .team-image img {
    width: 382px;
    max-width: 100%;
    height: 421px;
    object-fit: cover;
}
@media (max-width: 450px) {
    .team-section .team-wrapper .team-card-items .team-image,
    .team-section .team-wrapper .team-card-items .team-image img {
        width: 100%;
        height: auto;
        aspect-ratio: 382 / 421;
    }
}
