@import url('./reset.css');
@import url('./root.css');
@import url('./rows.css');
@import url('./form.css');
/* @import 'https://fonts.googleapis.com/css?family=Montserrat:400,700';
*/
@import url('https://fonts.googleapis.com/css2?family=Oxygen:wght@300;400;700&display=swap');

html {
    font-size: 16px; scroll-behavior: smooth; color: var(--text-primary);
}

body {
    font-family: var(--font-primary); font-weight: 400; font-style: normal; line-height: 1.6; color: var(--text-primary); font-size: 16px; font-weight: 400; background-color: var(--white);
}

a { text-decoration: none; color: inherit;}
ul { list-style: none;}
hgroup{ margin: 0; padding: var(--spacing-md) 0; }
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6
{ font-weight: 700; line-height: 1.2; margin: .5rem 0; padding: 0; }
h1, .h1{ font-size: 1.6rem; }
h2, .h2{ font-size: 1.4rem; }
h3, .h3{ font-size: 1.3rem; }
h4, .h4{ font-size: 1.6rem; }
h5, .h5{ font-size: 1.2rem; }
h6, .h6{ font-size: 1rem; }
.h{ font-weight: 700; line-height: 1.2; font-size: 1.5em;}
p, .p{ font-size: 1rem; line-height: 1.3; padding-bottom: 1.2em;}
strong, b { font-weight: 700; }

article ul, ol{ padding-left: var(--spacing-md); font-size: 1rem;}
article ul li, ol li{ list-style: disc; }


.titoli-separatori{ font-size: 1.5rem; font-weight: 700; line-height: 1; text-transform: uppercase; color: var(--text-on-accent); background-color: var(--bg-accent); padding: 0.5rem 1rem; margin: 0 0 var(--spacing-xs) 0; }
.titoli-separatori::before{ content: ''; display: block; width: 100%; height: 1px; background-color: var(--text-on-dark); margin-bottom: 0.5rem; }
.titoli-separatori::after{ content: ''; display: block; width: 100%; height: 1px; background-color: var(--text-on-dark); margin-top: 0.5rem; }

hgroup > * { margin: 0 0 var(--spacing-xs) 0; padding: 0; line-height: 1; }
hgroup > *:last-child { margin: 0; }



figure{ margin: 0; padding: 0; }

img { width: 100%; height: auto; object-fit: cover; margin: 0; padding: 0; display: block;}

a.cta, a.btn, a.button, button, .button, .btn, .cta {
    display: inline-block; padding: 0.75rem 1.5rem; background: var(--dark-color); color: var(--text-on-dark); border: 1px solid var(--text-on-dark);
    text-decoration: none; font-weight: 700; transition: all 0.3s ease-in-out; border-radius: 1.5rem;
    font-size: 0.9rem; line-height: 1; text-transform: uppercase;
}
a.cta:hover, a.btn:hover, a.button:hover, button:hover, .button:hover, .btn:hover, .cta:hover {
    background-color: var(--text-on-dark); color: var(--text-on-light);
}

.btn-min{ font-size: 0.65rem !important; padding: 0.5rem 1rem !important; }
.cta_container, .cta_cnt, .button_container, .btn_container {
    display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; width: 100%;
    padding: var(--spacing-sm) 0;
}

.margin-y{ margin-top: var(--spacing-md) !important; margin-bottom: var(--spacing-md) !important;}
.margin-y-sm{ margin-top: var(--spacing-sm) !important; margin-bottom: var(--spacing-sm) !important;}
.margin-y-lg{ margin-top: var(--spacing-lg) !important; margin-bottom: var(--spacing-lg) !important;}
.padding-y{ padding-top: var(--spacing-md) !important; padding-bottom: var(--spacing-md) !important;}
.padding-y-sm{ padding-top: var(--spacing-sm) !important; padding-bottom: var(--spacing-sm) !important;}
.padding-y-lg{ padding-top: var(--spacing-lg) !important; padding-bottom: var(--spacing-lg) !important;}

.flex {
    display: flex; align-items: flex-start; justify-content: space-between; flex-wrap: nowrap;
}
.flex.wrap {
    flex-wrap: wrap;
}
.flex.center {
    align-items: center; justify-content: center;
}
.flex.column {
    flex-direction: column; align-items: center; justify-content: center;
}
.flex-gap{ gap: var(--spacing-md); }
.gallery__content{ position: relative; }
.gallery_swiper{ position: relative; }

.txt-center, .text-center{ text-align: center; }
.txt-left, .text-left{ text-align: left; }
.txt-right, .text-right{ text-align: right; }

.alert{ border-radius: 10px; padding: var(--spacing-md); margin: var(--spacing-md) 0; padding: var(--spacing-md); }
.alert-info{ background-color: var(--bg-light); color: var(--text-on-light);  }
/* Stili per il menu di navigazione */
header.header{
    position: fixed; top: 0; left: 0; right: 0; z-index: 1000; padding: var(--spacing-sm); height: var(--site-header-height);
    /* background-color: var(--bg-primary);  */
    /* backdrop-filter: blur(10px); transition: background-color 0.3s ease-in-out, backdrop-filter 0.3s ease-in-out; */
}





.header-inner{ 
    display: flex; justify-content: space-between; align-items: center; 
    width: 100%; height: 100%; 
}
    .logo_header_link { max-height: 100%; height: 100%; z-index: 600; display: flex; align-items: center; justify-content: center; }
        .logo_header_link img { max-width: 100%; height: 100%; }

    .site_navbar_user{
        display: flex; justify-content: center; align-items: center; gap: var(--spacing-xs);
    }
.app_main_menu {
    position: fixed; top: 0; left: 0; right: 0; bottom: 0; background-color: var(--bg-light); color: var(--accent-color); z-index: 1050;
    transition: transform 0.3s ease-in-out; transform: translateX(-100%);
    padding: var(--spacing-sm);  overflow-y: auto;
    text-align: center; font-weight: 700; line-height: 1; z-index: 100; top: 0; left: 0;
    display: flex; flex-direction: column; align-items: center; justify-content: center;
    
}

    .app_main_menu.menu-visible {
        transform: translateX(0); transition: transform 0.3s ease-in-out; 
    }
    .app_main_menu ul { display: flex; flex-direction: column; align-items: center; justify-content: center; width: 100%; padding: 0; margin: 0; list-style: none; }
    .app_main_menu ul li{ margin: 1rem 0; width: 100%; }


    .menu-toggle{ display: block; cursor: pointer; width: 25px; height: 25px; position: fixed; top: 25px; right: 40px; padding: 0; z-index: 500;}
	.menu-toggle__bar { display: block; width: 25px; height: 3px; background-color: var(--dark-color); margin: 5px 0; position: relative; transition: all 0.3s ease-in-out;}
	.mobile-open .menu-toggle .menu-toggle__bar{ display: none; position: absolute; top: 5px; left: 0; background-color: var(--dark-color);}
	.mobile-open .menu-toggle .menu-toggle__bar:first-child {  display: block; transform: rotate(45deg);  }
	.mobile-open .menu-toggle .menu-toggle__bar:last-child { display: block; transform: rotate(-45deg); }

    .is-active .hamburger-inner, .is-active .hamburger-inner::before, .is-active .hamburger-inner::after{ background-color: var(--accent-color)}
    
#main_container{ width: 100%; max-width: 100vw; margin: 0 auto; padding: 0; margin-top: calc(var(--site-header-height) + calc(var(--spacing-sm) * 2)); background-color: var(--white);}
.myIn, .myInner, .header-inner{ max-width: var(--width-container); padding: 0 var(--spacing-md); margin: 0 auto;   }
.myInReader{ max-width: var(--width-reader);   }
.page-header, .post-header{
    padding: var(--spacing-md) var(--spacing-sm);  color: var(--text-accent); position: relative; text-align: center;
    background-color: var(--bg-very-light);
    /* background-color: var(--bg-light); */
}
.page-header *, .post-header *{ line-height: 1; }
/* .post-header-ricette{
    background-color: var(--bg-primary); color: var(--text-on-primary);
} */
.post-content{
    display: block; margin: 0; padding: var(--spacing-md) 0; gap: var(--spacing-md);
}

/* GRAPHICAL HEADER */

.graphical-header{ width: 100%; padding: 0; }
.graphical-header__image{ height: auto; aspect-ratio: 10 / 4; }
.graphical-header{ width: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; padding:0; gap: 0; margin: 0; width: 100%; position: relative; background-color: var(--bg-dark); color: var(--text-on-dark); }
.graphical-header__image{ width: 100%; height: auto; overflow: hidden; aspect-ratio: 4 / 3; }
.graphical-header__image figure{ width: 100%; height: 100%; }
.graphical-header__image img{ width: 100%; height: 100%; object-fit: cover; display: block; }
.graphical-header__text{ width: 100%; padding: 0; margin: 0; position: absolute; bottom: 0; left: 0; right: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center;
    background-image:linear-gradient(to top, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0.6) 50%, rgba(0, 0, 0, 0) 100%);
}
.row-header-pagina__text{ color: var(--text-on-dark); }

.graphical-header__text_inner{ width: 100%; max-width: var(--width-reader); padding: var(--spacing-lg) var(--spacing-sm); margin: 0; }
/* FINE GRAPHICAL HEADER */

.form_contatti_in{
    display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-start; text-align: left; gap: var(--spacing-md);
}



/* fine stili per i blocchi */ 



/* stili per POI */
.filters_cnt{margin: 0 0 var(--spacing-md) 0; padding: var(--spacing-sm) 0; background: var(--bg-light); }
.filters_cnt_inner{ padding: var(--spacing-md) 0; }
.search_form_row{ display: grid; grid-template-columns: 1fr auto auto; gap: var(--spacing-md); }
.search_form_item{ width: 100%; }
.search_form_item input{ width: 100%; height: 40px; border: 1px solid var(--accent-color); border-radius: 5px; }
.search_form_item select{ width: 100%; height: 40px; border: 1px solid var(--accent-color); border-radius: 5px; background-color: var(--white); }
.search_form_item button{ width: 100%; height: 40px; border: 1px solid var(--accent-color); }
.search_form_item button:hover{ background-color: var(--accent-color); color: var(--text-on-accent); border-color: var(--white); }


.view_switch_cnt_inner{ display: flex; flex-direction: row; align-items: center; justify-content: center; gap: var(--spacing-md); width: 100%; }
.view_switch_cnt_inner a{ font-weight: 700; line-height: 1; text-transform: uppercase; font-size: 16px; padding: 12px 22px; border-radius: 25px; background-color: var(--white); color: var(--text-on-light); border: 2px solid var(--accent-color); }
.view_switch_cnt_inner a:hover{ background-color: var(--accent-color); color: var(--white); }
.view_switch_cnt_inner a.active{ background-color: var(--accent-color); color: var(--white); }

.list-container{ padding: var(--spacing-lg) 0; }


.post_list_cards_cnt{ display: grid; grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)); gap: var(--spacing-md); padding: var(--spacing-sm) 0; }
    .card_listing_item{
        width: 100%;  height: auto; display: block;
        background-color: var(--bg-very-light); padding: 0; margin: 0; border-radius: 10px 10px 0 0; position: relative;
    }
        .card_listing_item_image{
            width: 100%; aspect-ratio: 16 / 9; margin: 0; padding: 0; display: block;
        }
        .card_listing_item_image figure{ width: 100%; height: 100%; }
        .card_listing_item_image img{ width: 100%; height: 100%; object-fit: cover; }
        .card_listing_item_content{
            padding: var(--spacing-sm);
        } 
        .card_listing_item_title, .card_listing_item_subtitle{
            font-weight: 700; line-height: 1; font-size: 1.4em;
        }

    .post-content-ricette__content{
        display: grid; grid-template-columns: 1fr 2fr; text-align: left; gap: var(--spacing-md);
    }
    .post-content-ricette__content__inner{
        display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-start; text-align: left; gap: var(--spacing-md);
    }
    .ingredients-list, .post-content-ricette__text{ width: 100%;}

        .ingredients-list ul, .ingredients-list ol,
        .post-content-ricette__text ul, .post-content-ricette__text ol{ padding-left: var(--spacing-sm); font-size: 1.5rem;}
        .ingredients-list ul li, .ingredients-list ol li,
        .post-content-ricette__text ul li, .post-content-ricette__text ol li{ list-style: none; padding-bottom: var(--spacing-xs); font-size: 1.2rem; position: relative; display: flex; align-items: center; justify-content: flex-start; gap: var(--spacing-xs); }
        .ingredients-list ul li::before, .ingredients-list ol li::before,
        .post-content-ricette__text ul li::before, .post-content-ricette__text ol li::before{ content: ''; display: block; width: 10px; height: 10px; background-color: var(--accent-color); border-radius: 50%; margin-right: var(--spacing-xs); }
   
        .post-content-ricette__text p{ padding: .1rem 0 .2rem 0;}
       
/* .poi_list_cards_cnt{ display: flex; flex-direction: row; align-items: stretch; justify-content: space-between; gap: var(--spacing-md); flex-wrap: wrap; } */
.poi_list_cards_cnt{ display: grid; grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)); gap: var(--spacing-md); padding: var(--spacing-sm) 0; }

    .poi_listing_item{
        width: 100%;  height: auto; display: block;
        background-color: var(--bg-very-light); padding: 0; margin: 0; border-radius: 10px 10px 0 0; position: relative;
    }
        .listing_item_content{ width: 100%; display: flex; flex-direction: column; align-items: stretch; justify-content: flex-start; text-align: left; gap: 0; padding: var(--spacing-sm); }
        .listing_item_info{
            display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-start; text-align: left; gap: var(--spacing-xs); width: 100%;
        }
        .poi_listing_item_title{
            font-weight: 700; line-height: 1; font-size: 1.2em;
        }
        .poi_listing_item_subtitle{
        font-weight: 700; line-height: 1; font-size: 1em;
        }
        .poi_listing_item_text{
            font-weight: 400; line-height: 1; font-size: 1em;
        }
        .poi_listing_item_no_image{
            border-radius: 10px 10px 0 0; overflow: hidden; background-color: var(--bg-accent);
            width: 100%; height: 200px; object-fit: cover; margin: 0; padding: 0; display: block;
        }
        .poi_listing_item_image{
            border-radius: 10px 10px 0 0; overflow: hidden; background-color: var(--bg-accent);
            width: 100%; height: 200px; object-fit: cover; margin: 0; padding: 0; display: block;
        }
        .poi_listing_item_image figure{ width: 100%; height: 100%; }
        .poi_listing_item_image img{ width: 100%; height: 100%; object-fit: cover; }

        .listing_item_text_cnt{
            display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-start; text-align: left; gap: var(--spacing-xs);
        }
        .listing_item_meta{
            display: flex; flex-direction: row; align-items: center; justify-content: flex-start; gap: 0; padding: var(--spacing-sm) 0; margin: 0;
        }
        .listing_item_meta_item{ font-size: 0.8rem; line-height: 1; }
        .listing_item_tags{
            position: absolute; top: .5rem; right: .5rem;
            display: flex; flex-direction: row; align-items: center; justify-content: flex-start; gap: var(--spacing-xs); padding: 0; margin: 0;
        }
        .listing_item_tags_item{ 
            font-size: 0.7rem; text-transform: uppercase; font-weight: 700; line-height: 1; border-radius: 0.4rem; padding: 0.4rem 10px; margin: 0; 
            background-color: var(--bg-dark); color: var(--text-white); 
        }
/* fine stili per POI */

/* stili per Percorsi */
.percorsi_list_cards_cnt{ display: grid; grid-template-columns: 1fr; gap: var(--spacing-md); padding: var(--spacing-sm) 0; }
    .percorsi_listing_item{
        width: 100%;  height: auto; display: block;
        background-color: var(--bg-very-light); padding: 0; margin: 0; border-radius: 10px 10px 0 0; position: relative;
        display: grid; grid-template-columns: 1fr; gap: var(--spacing-md);
    }
        .percorsi_listing_item_btn_content{
            width: 100%; height: 100%; display: block;
            background-color: var(--bg-very-light); padding: 0; margin: 0; border-radius: 10px 10px 0 0; position: relative;
        }
        .percorsi_listing_item_image, .percorsi_listing_item_no_image{
            width: 100%;  display: block; aspect-ratio: 5 / 3;
            background-color: var(--bg-accent); padding: 0; margin: 0; border-radius: 10px 10px 0 0; position: relative; overflow: hidden;
        }
        .percorsi_listing_item_image img{
            width: 100%; height: 100%; object-fit: cover;
        }
        .percorsi_listing_item_content{
            width: 100%; height: 100%; display: flex; flex-direction: column; align-items: flex-start; justify-content: space-between; text-align: left; gap: var(--spacing-md);
            background-color: var(--bg-very-light); padding: var(--spacing-md); margin: 0; position: relative;
        }
        .percorsi_listing_item_title{
            font-weight: 700; line-height: 1; font-size: 1.7em;
        }
        .percorsi_listing_item_subtitle{
            font-weight: 700; line-height: 1; font-size: 1.3em;
        }
        .percorsi_listing_item_text, .percorsi_listing_item_text p{
            font-weight: 400; line-height: 1; font-size: 1.1em;
        }
/* fine stili per Percorsi */
       
/* stili per POI e Percorsi */
.header-poi-detail, .header-percorso-detail{ background-color: var(--bg-very-light); color: var(--text-accent); }

.header-poi-detail__inner, .header-percorso-detail__inner{ display: flex; flex-direction: column; align-items: center; justify-content: center; gap: var(--spacing-xs); }
.header-poi-detail__inner hgroup, .header-percorso-detail__inner hgroup{ display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-start; gap: var(--spacing-xs); }
    .detail_item_tags{
        display: flex; flex-direction: row; align-items: center; justify-content: center; gap: var(--spacing-xs); padding: 0; margin: 0;
    }
    .detail_item_tags_item{ 
        font-size: .7rem; text-transform: uppercase; font-weight: 700; line-height: 1; border-radius: 0.4rem; padding: 0.4rem 10px; margin: 0; white-space: nowrap;
        background-color: var(--bg-accent); color: var(--text-white); 
    }

    .scheda-poi, .scheda-percorso{ display: flex; flex-direction: row; align-items: flex-start; justify-content: flex-start; gap: var(--spacing-md); padding: var(--spacing-lg) 0; }
    .scheda-poi-content, .scheda-percorso-content{ flex: 1; }
    .poi-sidebar, .percorso-sidebar{ width: 300px; }

    .scheda-percorso .poi-percorso-list{ display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-start; gap: var(--spacing-xs); padding: 0; margin: 0; }

        .scheda-percorso .poi-percorso-list .card{ border-bottom: 1px solid var(--accent-color); margin: 0 var(--spacing-sm) 0 0;  padding: var(--spacing-sm) var(--spacing-sm) var(--spacing-sm) 0; }
        .scheda-percorso .poi-percorso-list h5{font-weight: 700; line-height: 1; font-size: 1.3em; }
        .scheda-percorso .poi-percorso-list h6{font-weight: 700; line-height: 1; font-size: 1em; }
        .scheda-percorso .poi-percorso-list .poi-percorso-list-meta{display: flex; flex-direction: row; align-items: center; justify-content: flex-start; gap: var(--spacing-xs); padding: 0 0 var(--spacing-xs) 0; margin: 0; }
        .scheda-percorso .poi-percorso-list .tappa-meta_item{font-size: 0.8rem; line-height: 1; }
        
    
    .scheda-content{ width: 100%; }
    .scheda-content h2{ margin-bottom: var(--spacing-md); }
    .scheda-content h3{ margin-bottom: var(--spacing-md); }
    .scheda-main-image{ width: 100%; margin-bottom: var(--spacing-md); }

    .scheda-video{ width: 100%; margin-bottom: var(--spacing-md); }
    .scheda-video iframe{ width: 100%; height: auto; aspect-ratio: 16 / 9; }

    .scheda-poi .card, .scheda-percorso .card{ border-bottom: 1px solid var(--accent-color); margin: var(--spacing-sm) var(--spacing-sm) var(--spacing-sm) 0;  padding: var(--spacing-sm) var(--spacing-sm) var(--spacing-sm) 0; }
    .scheda-poi .card p, .scheda-percorso .card p{ font-size: 1rem !important;}
    #poi-map, #percorso-map{ height: 350px; width: 100%; }
    #poi-full-map{ height: 350px; width: 100%; }


/* Stili per il footer */
footer.footer {
    padding: var(--spacing-lg) 0; margin: 0; background-color: var(--accent-color); color: var(--text-on-dark);
}
.footer__logo{
    display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 0 0 var(--spacing-sm) 0;
}
.footer__logo a{
    display: flex; flex-direction: column; align-items: center; justify-content: center; gap: var(--spacing-sm); text-align: center; color: var(--text-on-dark);
}
.footer__logo img{
   max-width: 60px; width: 100%; height: auto; object-fit: contain;
}
.footer__logo_text{
    font-size: 1.2rem; font-weight: 300; line-height: 1;
}
.footer__content{
    display: flex; flex-direction: column; align-items: stretch; justify-content: space-between; gap: var(--spacing-md); text-align: center;
}
.footer__content > *{ border-top: 1px solid var(--white); padding-top: var(--spacing-md) !important; margin-top: var(--spacing-md) !important; }

.footer__content a:hover{
    opacity: 0.8;
}

ul.footer-nav-menu{ column-count: 2; text-align: left; }

.footer_social_cnt{
    display: flex; flex-direction: row; align-items: center; justify-content: center; gap: var(--spacing-xs); position: relative; padding: var(--spacing-sm) 0 0 0;
    display: none;
}
.footer_social_cnt::before{ content: 'Seguici su'; display: block; width: 100%;  position: absolute; top: 0; left: 0; font-size: 0.7rem; line-height: 1; padding: 0; margin: 0; text-transform: uppercase; font-weight: 700;  }
    .social_link{
        margin: 10px 0; padding: 0;
        display: block; width: 30px; height: 30px;
    }
   
    .social_link img{
        width: 100%; height: 100%; object-fit: contain;
    }
    .footer_info_contatti{ display: flex; flex-direction: column; align-items: center; justify-content: center; gap: var(--spacing-xs); font-size: 0.8rem; line-height: 1; padding: 0; margin: 0; }
    .app_description , .app_description p, .piva, .copy, .address{ font-size: 0.8rem; line-height: 1; padding: 0; margin: 0; }


.loghi_partner{ width: 100%; height: auto; object-fit: contain; }
.loghi_partner img{ width: auto; max-width: 100%; height: auto; object-fit: contain; }

.footer_out{ padding: var(--spacing-lg) 0; margin: 0; background-color: var(--white); color: var(--text-on-light); }
   
/* fine stili per il footer */

.testi-x2 p { font-size: 1.2rem;  }
.testi-x2 p { line-height: 1.2; }

.light{ background-color: var(--bg-light); color: var(--text-on-light); }
.dark{ background-color: var(--bg-dark); color: var(--text-on-dark); }

.hamburger {
    display: block;
}
.hero_gallery__caption{ background: linear-gradient(to top, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0.6) 50%, rgba(0, 0, 0, 0) 100%); backdrop-filter: none;}

@media screen and (max-width: 768px) {
    .mobile-center{ text-align: center; }
    .app_main_menu ul li a{ font-size: 1.2em; }
    /* header.header{  background-color: #FFFFFF; } */
    header.header{  background-color: var(--bg-very-light); }
    .header-inner .logo_header_link img{ height: 65%; }
    .app_main_menu.menu-visible{ padding: var(--spacing-xl); }
    .app_main_menu.menu-visible ul{ padding: var(--spacing-xl) var(--spacing-md); border-top: 2px solid var(--accent-color); border-bottom: 2px solid var(--accent-color); gap: var(--spacing-md); }
    .app_main_menu.menu-visible ul li a{ color: var(--accent-color); font-size: 1.5em; border-bottom: 1px solid var(--accent-color); padding: var(--spacing-sm) var(--spacing-sm);  }
    .hero_gallery__image{height: auto; aspect-ratio: 3 / 4; }


    .scheda-poi, .scheda-percorso{ flex-direction:column-reverse }
    .poi-sidebar, .percorso-sidebar{ width: 100%; }
    .scheda-poi-content, .scheda-percorso-content{ width: 100%; }
    #poi-map, #percorso-map{ height: 300px; width: 100%; }
    #poi-full-map{ height: 350px; width: 100%; }


    /* .search_form_row{ flex-direction: column; } */
    .search_form_item_input{ width: 100%; flex: 1; grid-column: span 3; }
    .search_form_item_select{ width: 100%; flex: 1; grid-column: span 2; }

    .post-content-ricette__content{
        display: flex; flex-direction: column; align-items: stretch; justify-content: flex-start; text-align: left; gap: var(--spacing-md);
    }
    ul.footer-nav-menu{ column-count: 2; text-align: center; }


}
@media screen and (min-width: 1024px) {
   .myIn, .myInner, .header-inner{padding: 0 var(--spacing-lg);   }
    .hamburger {  display: none; }
    

    h1, .h1{ font-size: 3.4rem;}
    h2, .h2{ font-size: 2.8rem; }
    h3, .h3{ font-size: 2.4rem; }
    h4, .h4{ font-size: 2rem; }
    h5, .h5{ font-size: 1.8rem; }
    h6, .h6{ font-size: 1.4rem; }
    p, .p{ font-size: 1.5rem; }
    article ul, ol{ padding-left: var(--spacing-md); font-size: 1.5rem;}
    article ul li, ol li{ list-style: disc; }
   


    header.header{transition: background-color 0.3s ease-in-out, backdrop-filter 0.3s ease-in-out; box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);  }
    .at-top header.header{ 
        background-color: #FFFFFF00; box-shadow: none; 
        backdrop-filter: none;
    }
    /* .at-top header.header .header-inner{  border-bottom: 1px solid #FFFFFF; } */
    .scrolled header.header{ box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1); background-color: #ffffff; backdrop-filter: none; }
    header.header:before { content: ''; position: absolute; left: 0px; top: 0; width: 100%; height: 5px; background: var(--bg-accent); opacity: 0; transition: all 0.3s ease-in-out; }
    header.header:after { content: ''; position: absolute; left: 0px; bottom: -5px; width: 100%; height: 6px; background: url(/assets/img/header-shape.png); opacity: 0; transition: all 0.3s ease-in-out; }

    .scrolled header.header:before { opacity: 1; }
    .scrolled header.header:after { opacity: 1; }

    .menu-toggle {display: none; }
    .header-inner .logo_header_link img{ height: 60%; }

        .app_main_menu { position:relative; width: auto; height: auto; background: transparent; z-index: 99; transform: none; padding: 0; overflow-y: visible; color: var(--text-on-dark); text-align: center; font-weight: 700; line-height: 1; }        
            .app_main_menu ul { display: flex; flex-direction: row; align-items: center; justify-content: center; width: 100%; padding: 0; gap: 0; margin: 0; list-style: none; }
            .app_main_menu ul li{ margin: 0 .5rem; width: 100%; }
            .app_main_menu ul li a{ white-space: nowrap; padding: .75rem .5rem; line-height: 1; font-weight: 700; color: var(--dark-color); transition: all 0.3s ease-in-out; }
            .app_main_menu ul li a:hover, .app_main_menu ul li a.is_current{ color: var(--accent-color);}
    
    .page-header, .post-header{ text-align: left; }
    .page-header{ margin-top: calc(calc(var(--site-header-height) + var(--spacing-md)) * -1); padding: calc(var(--site-header-height) + var(--spacing-md)) var(--spacing-sm)  var(--spacing-sm) var(--spacing-sm);}
    .page-header::after { background-image: url(/assets/img/uomo.png); background-size: contain; background-position: left bottom; background-repeat: no-repeat; content: ''; position: absolute; left: 0%; bottom: 0; width: 80px; height: 70%;}
    


    /* .header-poi-detail::before{ 
        content: ''; position: absolute; left: 0; top: 0; width: 100%; height: calc(var(--site-header-height) + var(--spacing-xl));  z-index: 9;
        background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.8) 0%, rgba(255, 255, 255, 0.4) 45%, rgba(255, 255, 255, 0.1) 80%,  rgba(255, 255, 255, 0) 100%); 
    } */
    .header-poi-detail__inner, .header-percorso-detail__inner{ flex-direction: row; align-items: flex-start; justify-content: space-between; gap: var(--spacing-xs); }
    .header-poi-detail__inner hgroup, .header-percorso-detail__inner hgroup{  width: 73%; }

        .detail_item_tags{ width: 25%; justify-content: flex-end; gap: var(--spacing-xs); padding-top: var(--spacing-md); }
        .detail_item_tags_item{ font-size: .9rem; white-space: nowrap; }



    /* GRAPHICAL HEADER */

    .graphical-header{ width: 100%; padding: 0; margin: calc(calc(var(--site-header-height) + var(--spacing-md)) * -1) 0 0 0; }
    .graphical-header::before{ 
        content: ''; position: absolute; left: 0; top: 0; width: 100%; height: calc(var(--site-header-height) + var(--spacing-xl));  z-index: 9;
        background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0.5) 50%, rgba(255, 255, 255, 0) 100%); 
    }
    .graphical-header__image{ height: auto; aspect-ratio: 10 / 4; }
    .graphical-header__text{ padding: calc(var(--site-header-height) + var(--spacing-md)) var(--spacing-sm)  var(--spacing-lg) var(--spacing-sm); }
    /* FINE GRAPHICAL HEADER */

    .row-header-pagina{ width: 100%; padding: 0; margin: calc(calc(var(--site-header-height) + var(--spacing-md)) * -1) 0 0 0; }
    .row-header-pagina::before{ 
        content: ''; position: absolute; left: 0; top: 0; width: 100%; height: calc(var(--site-header-height) + var(--spacing-xl));  z-index: 9;
        background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0.5) 50%, rgba(255, 255, 255, 0) 100%);
    }
    .row-header-pagina__text{ padding: calc(var(--site-header-height) + var(--spacing-md)) var(--spacing-sm)  var(--spacing-lg) var(--spacing-sm); }

    .img_strip__content{  display: flex; gap: var(--spacing-md); flex-wrap: wrap; justify-content: space-between; align-items: center; }
    .img_strip__item{ flex:1;  width: auto; max-width: 100%;  height: auto; }

    .poi_list_cards_cnt{ grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); }

    .scheda-poi, .scheda-percorso{ position: relative; }
    .poi-sidebar, .percorso-sidebar{ width: 300px; padding: 0 var(--spacing-md) 0 0; }
    .poi-sidebar__inner, .percorso-sidebar__inner{ 
        position: sticky;
    }

    #poi-map, #percorso-map{ height: 450px; width: 100%; }
    #poi-full-map{ height: 500px; width: 100%; }


    .percorsi_listing_item{
       border-radius: 10px 0 0 10px; display: grid; grid-template-columns: 33% auto; gap: var(--spacing-md);
    }
        .percorsi_listing_item_btn_content{
            width: 100%; height: 100%; border-radius: 10px 0 0 10px; 
        }
        .percorsi_listing_item_image, .percorsi_listing_item_no_image{
            width: 100%; display: block; aspect-ratio: 1 / 1; border-radius: 10px 0 0 10px;
        }
        .percorsi_listing_item .cta_cnt{
            flex-direction: row;  justify-content: flex-start; 
        }

    .testi-x2 p { font-size: 1.9rem; line-height: 1.3; }
    

    .footer__content{
        padding-top: var(--spacing-md);
        display: grid; grid-template-columns: 1fr 1fr 1fr; align-items: flex-start; justify-content: space-between; gap: var(--spacing-md);
    }
}

@media screen and (min-width: 1440px) {
    h1, .h1{ font-size: 3.4rem;}
    h2, .h2{ font-size: 3rem; }
    h3, .h3{ font-size: 2.8rem; }
    h4, .h4{ font-size: 2.1rem; }
    h5, .h5{ font-size: 2rem; }
    h6, .h6{ font-size: 1.6rem; }
    .app_main_menu { display: flex; justify-content: center; align-items: center; }
   .myIn, .myInner, .header-inner{padding: 0 var(--spacing-xl);   }
   .page-header{ margin-top: calc(calc(var(--site-header-height) + var(--spacing-md)) * -1); padding: calc(var(--site-header-height) + var(--spacing-xl)) var(--spacing-sm)  var(--spacing-lg) var(--spacing-sm);}

   .page-header::after { left: 2%; width: 130px; height: 70%; }


    .row-columns__grid-3{  grid-template-columns: repeat(auto-fill, minmax(350px, 1fr)); }

    .poi_list_cards_cnt{  grid-template-columns: repeat(auto-fill, minmax(350px, 1fr)); gap: var(--spacing-lg); }

    #poi-map, #percorso-map{ height: 550px; width: 100%; }
    #poi-full-map{ height: 600px; width: 100%; }


}

/* Stili per il contenuto principale */

