/* 
Theme Name: Veronica Pavan
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Michele Gaito
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.0
Text Domain: hello-elementor-child
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
*/


/* GENERAL */

@media screen and (max-width: 768px) {   
    .mobile-overflow{
        overflow-wrap: break-word;
        word-break: break-word;
    }
}

/* HOMEPAGE */

.sfondo-blur{
    backdrop-filter: blur(4px) !important; 
}

.gallery-home .gallery img{
    height: 250px;
    object-fit: cover;
}

/* BLOG FILTER */

    .filter-btn {
        padding: 8px 18px;
        background: #fff;
        color: var(--e-global-color-text);
        border: 1px solid #ddd;
        cursor: pointer;
        transition: all 0.3s ease;
        border-radius: 20px; 
        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);
    }
    .filter-btn.active, .filter-btn:hover {
        background: var(--e-global-color-accent);
        color: #fff;
        border-color: var(--e-global-color-accent);
    }

    .filter-btn:focus{
        background-color: var(--e-global-color-primary);
    }
    
    /* --- GRIGLIA RESPONSIVE --- */
    .filter-grid-layout {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
        gap: 30px;
        transition: opacity 0.3s ease;
        padding: 20px 0; /* Spazio per l'ombra */
    }

    /* --- STILE SPECIFICO CARD ARTICOLO (image_0.png) --- */
    .post-card-ajax {
        background: #fff;
        border-radius: 16px; /* Angoli arrotondati morbidi */
        box-shadow: 0px 4px 15px rgba(0,0,0,0.08); /* Ombra morbida esterna */
        overflow: hidden; /* Importante per i bordi dell'immagine */
        display: flex;
        flex-direction: column;
        transition: transform 0.2s, box-shadow 0.2s;
    }

    /* Contenitore Immagine con Overlay */
    .card-image-container {
        position: relative;
        width: 100%;
        height: auto;
        aspect-ratio: 16/11; /* Un po' più alto dello standard 16/9 */
        overflow: hidden;
    }
    .card-image-container img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    /* Etichetta Categoria Sovrapposta */
    .category-badge-overlay {
        position: absolute;
        top: 15px;
        left: 15px;
        background-color: var(--e-global-color-accent); /* Colore marrone caldo */
        color: #fff;
        padding: 6px 14px;
        border-radius: 20px;
        font-size: 0.75rem;
        font-weight: bold;
        text-transform: uppercase;
        letter-spacing: 0.5px;
        z-index: 9;
    }

    /* Contenuto Testuale */
    .card-content {
        padding: 25px;
        text-align: left;
        display: flex;
        flex-direction: column;
        flex-grow: 1;
        row-gap: 15px;
    }

    .post-card-ajax h3, .post-card-ajax h3 a {
        margin: 0px;
        color: var(--e-global-color-text);
        font-family: var(--e-global-typography-9e4a2aa-font-family), Sans-serif;
        font-size: var(--e-global-typography-9e4a2aa-font-size);
        font-weight: var(--e-global-typography-9e4a2aa-font-weight);
    }

    .post-card-ajax .excerpt {
        color: #777; /* Testo secondario grigio */
        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);
    }

    /* Link "Leggi tutto" a sinistra con freccia */
    .post-card-ajax .read-more {
        margin-top: auto;
        font-weight: bold;
        text-decoration: none;
        color: #8b6b4f;
        text-transform: uppercase;
        letter-spacing: 0.5px;
        font-size: 0.85rem;
        align-self: flex-start; /* Allinea a sinistra */
        transition: color 0.2s;
    }
    .post-card-ajax .read-more:after {
        content: ' →';
        transition: margin 0.2s;
    }
    .post-card-ajax .read-more:hover {
        color: #6d543e;
    }
    .post-card-ajax .read-more:hover:after {
        margin-left: 5px;
    }

    .elementor-widget.elementor-widget-theme-post-content h3, .elementor-widget.elementor-widget-theme-post-content h4{
        font-family: var(--e-global-typography-6f567b3-font-family), Sans-serif;
        line-height: var(--e-global-typography-6f567b3-line-height);
        color: var(--e-global-color-text);
        font-weight: var(--e-global-typography-primary-font-weight);
    }

    .elementor-widget.elementor-widget-theme-post-content hr{
        height:20px;
        border:none;
    }

    .spinner { width: 30px; height: 30px; border: 3px solid #f3f3f3; border-top: 3px solid #8b6b4f; border-radius: 50%; animation: spin 1s linear infinite; display: inline-block; }
    @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }

/* MAPPA CONTATTI */

    @media screen and (min-width: 768px) {    
        .google-map-contatti{
            height: 600px;
        }
    }

    @media screen and (max-width: 767px) {    
        .google-map-contatti{
            height: 300px;
        }
    }

/* CONTATTI EMAIL */

.email-break{
    overflow-wrap: break-word;
}

/* SCROLL MENU ANCORE */

@media screen and (min-width: 768px) {    
    :target {
        scroll-margin-top: 80px;
    }
}

/* COOKIEBOT */

@media screen and (min-width: 768px) {
    .CybotMultilevel.CybotCookiebotDialogActive#CybotCookiebotDialog{
        position: fixed;
        top: unset;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
    }
}
