/*
Theme Name: Fondazione Carispezia
Author: Emotion Design
Author URI: https://www.emotiondesign.it/
Description: Tema per la piattaforma fondazionecarispezia.it
Version: 1.3
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Requires PHP: 7.0
Tested up to: 7.0
Tags: one-column, two-columns, right-sidebar, custom-header, custom-menu, editor-style, featured-images, sticky-post, translation-ready
Text Domain: fondazionecarispezia

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
*/

/*-----------------------------------------------------------------------------
Fonts
-----------------------------------------------------------------------------*/
@font-face {
    font-family: 'hl';
    src: url('assets/fonts/helveticaneueltstd-lt-webfont.eot');
    src: url('assets/fonts/helveticaneueltstd-lt-webfont.eot?#iefix') format('embedded-opentype'),
        url('assets/fonts/helveticaneueltstd-lt-webfont.woff') format('woff'),
        url('assets/fonts/helveticaneueltstd-lt-webfont.ttf') format('truetype'),
        url('assets/fonts/helveticaneueltstd-lt-webfont.svg#HelveticaNeueLTStd45Light') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'hb';
    src: url('assets/fonts/helveticaneueltstd-bd-webfont.eot');
    src: url('assets/fonts/helveticaneueltstd-bd-webfont.eot?#iefix') format('embedded-opentype'),
        url('assets/fonts/helveticaneueltstd-bd-webfont.woff') format('woff'),
        url('assets/fonts/helveticaneueltstd-bd-webfont.ttf') format('truetype'),
        url('assets/fonts/helveticaneueltstd-bd-webfont.svg#helveticaneuelt_stdbold') format('svg');
    font-weight: normal;
    font-style: normal;
}

/*-----------------------------------------------------------------------------
Generali
-----------------------------------------------------------------------------*/
/*Globali*/
:root {
    /*Generali*/
    --fs-primary: #004b80;
    --fs-primary-darker: #174c80;
    --fs-font-primary: 'hl', sans-serif;
    --fs-font-secondary: 'hb', sans-serif;
    --fs-font-italic: 'EB Garamond', sans-serif;
    /*Ambiti interesse*/
    --welfare: #00a0a0;
    --volontariato: #f9b224;
    --cultura: #e5287c;
    --formazione: #cb8839;
    --salutePubblica: #009bc9;
    --sport: #00953e;
}

/*Font*/
.fs-font-primary { font-family: var(--fs-font-primary); }
.fs-font-secondary { font-family: var(--fs-font-secondary); }

/*Content*/
body { font-family: var(--fs-font-primary); background: #004b80 url('/wp-content/themes/fondazione-carispezia/assets/images/fondazione-carispezia-background.gif') no-repeat; background-position: top center; }

/*Bold*/
strong, b { font-family: var(--fs-font-secondary); }

/*Heading*/
h1,h2,h3,h4,h5,h6 { font-family: var(--fs-font-secondary); margin-bottom: 24px; line-height: 1.3; }

/*Link*/
a { color: var(--fs-primary-darker); text-decoration: none; cursor: pointer; }
a:active, a:hover { color: var(--fs-primary-darker); }

/*Semplice Animazione*/
.animate{ -webkit-transition:all 0.4s; -moz-transition:all 0.4; transition:all 0.4s }

/*Bilanciamento del testo*/
.text-balance { text-wrap: balance; }

/*Background*/
.bg-primary-hover:hover { background: #003459; }
.bg-white-hover:hover { background: rgba(255, 255, 255, .4); }
.page-cover { object-fit: cover; height: 350px; }
/*Tablet e mobile*/
@media (max-width: 991px) {
    .page-cover { height: 200px; }
    .page-cover.hide-cover-mobile { display: none; }
}

/*Dimensioni*/
.h-300 iframe { height: 300px !important; }
.w-20 { width: 20% !important; }
.w-80 { width: 80% !important; }

/*Carosello*/
.carousel .carousel-indicators { margin-bottom: 0; }
.carousel .carousel-indicators button { width: 10px; height: 10px; border-radius: 100%; }
.carousel .carousel-indicators button.active { background-color: var(--fs-primary); }

/*Sfondi*/
.bg-primary { background: var(--fs-primary) !important; }
.bg-welfare { background: var(--welfare) !important; }
.bg-volontariato { background: var(--volontariato) !important; }
.bg-cultura { background: var(--cultura) !important; }
.bg-formazione { background: var(--formazione) !important; }
.bg-salutePubblica { background: var(--salutePubblica) !important; }
.bg-sport { background: var(--sport) !important; }
.bg-grey { background: #EBEBEB; }
.bg-grey-overlay { background: rgba(214, 214, 214, 70%) !important; }
.bg-primary-overlay { background: rgba(0, 75, 128, 90%) !important; }

/*Testi*/
.color-primary { color: var(--fs-primary) !important; }

/*CTA (STANDARD)*/
.fc-cta { color: #fff; padding: 12px 24px !important; background: var(--fs-primary); border-color: var(--fs-primary); font-family: var(--fs-font-secondary); border-radius: 5px; } 
.fc-cta:hover { color: #fff; }

/*CTA (FULL)*/
.fw-cta { display: block; color: #fff; font-family: var(--fs-font-secondary); text-align: right; padding: 4px 16px; border-radius: 5px; }
.fw-cta i { font-size: 18px; margin-left: 8px; }
.fw-cta:hover { color: #fff; }
.fw-cta.bigger { font-size: 22px; }
.fw-cta.bigger i { font-size: 25px; }
/*Tablet e mobile*/
@media (max-width: 991px) {
    .fw-cta.bigger { font-size: 20px; }
    .fw-cta.bigger i { font-size: 22px; }
}

/*CTA (Gutemberg)*/
.btn-icon,
.btn-icon figure { margin: 0 !important; line-height: 1; }

/*Titolo*/
.title-play-overlay { position: absolute; left: 0; bottom: 0; right: 0; font-size: 20px; margin-bottom: 0; font-family: var(--fs-font-secondary); color: #fff; background: linear-gradient(0deg, black, transparent); padding: 48px 16px 16px; display: flex; gap: 14px; align-items: center; line-height: 1; }
.title-play-overlay::before { content: ''; background-image: url('/wp-content/themes/fondazione-carispezia/assets/images/icons/fondazione-carispezia-video.png'); background-color: var(--fs-primary); background-size: 50%; background-position: 60%; background-repeat: no-repeat; border-radius: 100%; padding: 0 0 0 2px; height: 35px; width: 35px; display: flex; align-items: center; justify-content: center; }

/*Video*/
.fc-video { height: 600px; }
/*Tablet e mobile*/
@media (max-width: 991px) {
    .fc-video { height: 320px; }
}

/*Icone custom*/
.fc-custom-icon { display: inline-block; width: 24px; height: 24px; background-size: cover; background-size: contain; background-position: center; background-repeat: no-repeat; }
.fc-custom-icon.play { background-image: url('/wp-content/themes/fondazione-carispezia/assets/images/icons/fondazione-carispezia-video.png'); }
.fc-custom-icon.camera { background-image: url('/wp-content/themes/fondazione-carispezia/assets/images/icons/fondazione-carispezia-camera.png'); }

/*-----------------------------------------------------------------------------
Navbar
-----------------------------------------------------------------------------*/
.navbar { padding: 0; flex-wrap: wrap; }
.navbar .container { max-width: 1600px !important; }
.navbar .navbar-social-container { width: 100%; border-bottom: 1px solid #376591; }
.navbar .navbar-social-container .navbar-social { display: flex; gap: 8px; justify-content: flex-end; margin-left: auto; padding: 8px 24px; }
.navbar .navbar-menu-container { padding-top: 24px; padding-bottom: 24px; width: 100%; }
.navbar .navbar-menu-container .navbar-menu { display: flex; justify-content: space-between; flex-wrap: wrap; padding: 0 24px; }
.navbar .navbar-menu-container .navbar-menu .nav-link { font-family: var(--fs-font-secondary), sans-serif; font-size: 14px; text-transform: uppercase; padding: 10px; color: #fff; }
.navbar .navbar-menu-container .navbar-menu .dropdown-toggle::after { display: none; }
.navbar .navbar-menu-container .navbar-menu .navbar-nav .dropdown-menu { background: #6693b3; padding: 0; border-radius: 0; border: 1px solid rgba(0, 0, 0, .15); border-left: 0; border-bottom: 1px solid rgba(255, 255, 255, .3); box-shadow: 0 6px 12px rgba(0, 0, 0, .175); }
.navbar .navbar-menu-container .navbar-menu .navbar-nav .dropdown-menu .dropdown-item { font-family: var(--fs-font-primary); font-size: 12px; color: #fff; text-transform: uppercase; padding: 12px 10px; border-bottom: 1px solid rgba(255, 255, 255, .3); }
.navbar .navbar-menu-container .navbar-menu .navbar-nav .dropdown-menu .dropdown-item:hover,
.navbar .navbar-menu-container .navbar-menu .navbar-nav .dropdown-menu .dropdown-item.active { background: var(--fs-primary-darker); }
.navbar .navbar-menu-container .navbar-menu .navbar-nav .dropdown-menu li:last-child .dropdown-item { border-bottom: 0; }
.navbar .navbar-menu-container .navbar-menu .navbar-toggler { padding: 0; border: 0; }
.navbar .navbar-menu-container .navbar-menu .navbar-social-container { display: none; }
/*Barra di ricerca*/
.navbar .searchform-container { position: relative; }
.navbar .searchform-container.opened .searchform-trigger .search { display: none; }
.navbar .searchform-container.closed .searchform-trigger .close { display: none; }
.navbar .searchform-container .searchform-trigger { font-size: 20px; margin-left: 16px; }
.navbar .searchform-container .searchform { position: absolute; top: 42px; right: 0px; width: 205px; z-index: 1; }
.navbar .searchform-container .searchform div { display: flex; background: #6693b3; }
.navbar .searchform-container .searchform div button,
.navbar .searchform-container .searchform div input { background: transparent; margin-top: 0; padding: 6px 8px; border: 0; color: #fff; outline: 0!important; }
.navbar .searchform-container .searchform div input::placeholder { color: #fff; opacity: .6; }
.navbar .searchform-container .searchform div input::-ms-input-placeholder { color: #fff; opacity: .6; }
/*Tra desktop e mobile*/
@media (min-width: 1200px) and (max-width: 1365px) {
    .navbar .navbar-menu-container .navbar-menu .nav-link { font-size: 12px; padding: 10px 6px; }
}
/*Tablet e mobile*/
@media (max-width: 1199px) {
    /*-----------------------------------------------------------------------------
    Navbar
    -----------------------------------------------------------------------------*/
    .navbar .navbar-social-container { display: none; }
    .navbar .navbar-menu-container .navbar-menu { padding: 0 4%; }
    .navbar .navbar-menu-container .navbar-menu .nav-link { font-family: var(--fs-font-primary); border-top: 1px solid rgba(255, 255, 255, .2); padding: 15px 0px; }
    .navbar .navbar-menu-container .navbar-menu .dropdown-toggle::after { display: inline-block; position: absolute; right: 6px; top: 8px; content: '+'; border: 0; font-size: 24px; }
    .navbar .navbar-menu-container .navbar-menu .navbar-collapse ul { margin-top: 24px; margin-bottom: 0 !important; }
    .navbar .navbar-menu-container .navbar-menu .navbar-collapse ul.dropdown-menu { margin-top: 0; }
    .navbar .navbar-menu-container .navbar-menu .navbar-social-container { display: flex; border-top: 1px solid #376591; border-bottom: 0; padding: 15px 0; }
    .navbar .navbar-menu-container .navbar-menu .navbar-social-container .navbar-social { justify-content: flex-start; padding: 0px 0px; }
    /*Barra di ricerca*/
    .navbar .searchform-container { display: none; }
}

/*-----------------------------------------------------------------------------
Footer
-----------------------------------------------------------------------------*/
footer { padding: 70px 0 50px; }
footer p { margin-bottom: 0; }
footer hr { margin: 0; border-color: #e0e0e0; opacity: 1; }
footer .container { max-width: 1600px !important; }
/*FAQ*/
footer .out-of-box { position: absolute; top: -114px; left: 0; }
footer .fc_faq { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 40px 60px; min-height: 114px; max-width: 1180px; margin: 0 auto; }
footer .fc_faq h2 { font-size: 27px; margin-bottom: 0; color: var(--fs-primary-darker); }
footer .fc_faq a { font-family: var(--fs-font-secondary); font-size: 17px; color: #004b80; }
/*Marchi*/
footer .fc_brand { display: flex; align-items: center; justify-content: center; gap: 30px; padding: 20px 60px; }
footer .fc_brand img { height: 60px; }
/*About*/
footer .fc_about { display: flex; align-items: center; justify-content: space-between; padding: 20px 60px; max-width: 1180px; margin: 0 auto; }
footer .fc_about p { font-size: 15px; font-family: var(--fs-font-secondary); color: var(--fs-primary-darker); text-align: right; padding-left: 1rem; }
/*Menu*/
footer .fc_menu { display: flex; justify-content: space-between; padding: 20px 60px; }
footer .fc_menu .fc_menu_col { color: var(--fs-primary-darker); border-right: 1px solid #e0e0e0; width: 25%; }
footer .fc_menu .fc_menu_col:not(:first-child) { padding-left: 20px; padding-right: 10px; }
footer .fc_menu .fc_menu_col:last-child { border-right: 0; }
footer .fc_menu .fc_menu_col ul { list-style: none; padding-left: 0; }
footer .fc_menu .fc_menu_col ul li { font-size: 11px; margin-bottom: 6px; text-transform: uppercase; }
footer .fc_menu .fc_menu_col ul li:last-child { margin-bottom: 0; }
footer .fc_menu .fc_menu_col p { font-size: 14px; color: #000; margin-bottom: 24px; }
/*Titolo del menu*/
footer .fc_menu .fc_menu_col ul li.menu_title { font-size: 11px; font-family: var(--fs-font-secondary); margin-bottom: 5px; pointer-events: none; cursor: default; }
/*Social*/
footer .fc_social { display: flex; align-items: center; justify-content: center; gap: 10px; font-size: 26px; color: #fff; padding: 20px 0; }
footer .fc_social i { background: var(--fs-primary); width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; border-radius: 100%; }
footer .fc_social a { line-height: 1; }
footer .fc_social p { font-size: 16px; font-weight: bold; margin-right: 4px; margin-bottom: 0; }
/*Tablet e mobile*/
@media (max-width: 991px) {
    /*-----------------------------------------------------------------------------
    Footer
    -----------------------------------------------------------------------------*/
    footer { padding: 50px 0 8px; }
    /*FAQ*/
    footer .out-of-box { position: relative; top: 0; }
    footer .fc_faq { flex-direction: column; align-items: flex-start; gap: 0; padding: 16px; text-align: center; margin-bottom: 40px; }
    footer .fc_faq h2 { width: 100%; font-size: 26px; margin-bottom: 16px; }
    footer .fc_faq a { width: 100%; }
    /*Marchi*/
    footer .fc_brand { flex-wrap: wrap; padding-left: 16px; padding-right: 16px; gap: 15px 30px; }
    /*About*/
    footer .fc_about { flex-direction: column; padding-left: 16px; padding-right: 16px; text-align: center; }
    footer .fc_about p { margin-top: 12px; margin-top: 12px; text-align: center; padding-left: 0; }
    /*Menu*/
    footer .fc_menu { text-align: center; }
    footer .fc_menu .fc_menu_col { width: 100%; }
    footer .fc_menu .fc_menu_col:not(:last-child) { display: none; }
}

/*-----------------------------------------------------------------------------
Page Templates
-----------------------------------------------------------------------------*/
/*Canvas*/
.page-template-canvas main { padding: 0; background: inherit; }

/*-----------------------------------------------------------------------------
Content (Generali)
-----------------------------------------------------------------------------*/
/*Dimensioni container container*/
@media (max-width: 991px) { .container { max-width: unset !important; } }
@media (min-width: 992px) { .container { max-width: unset; } }
@media (min-width: 1200px){ .container { max-width: 1180px; } }

/*Contenitore pagina*/
main { background: #fff; }

/*Titolo delle pagine*/
.page-title { color: #fff; border-top: 1px solid #376591; border-bottom: 1px solid #376591; }
.page-title h1,
.page-title h2 { color: #fff; margin-bottom: 0; padding: 24px 0; font-size: 29px; }
@media (max-width: 991px) {
    /*Titolo delle pagine*/
    .page-title h1,
    .page-title h2 { margin-bottom: 0; padding: 8px 0; font-size: 25px; }
}

/*-----------------------------------------------------------------------------
Pagine singole
-----------------------------------------------------------------------------*/
main { padding-bottom: 220px; }
main .content { padding: 30px 40px 0px; }
@media (max-width: 991px) {
    main { padding-bottom: 0; }
    main .content { padding: 30px 3%; }
}

/*Home page*/
body.home main { padding: 0; }
body.home main .content { padding: 0; }
body.home .page-title { display: none; }
/* body.home .navbar { border-bottom: 1px solid #376591; } */

/*-----------------------------------------------------------------------------
Blog
-----------------------------------------------------------------------------*/
.article-container { display: flex; flex-wrap: wrap; gap: 2rem; padding: 30px 40px 0px; }
.article-container .article-link { color: #fff; display: block; width: calc(50% - 1rem); }
.article-container article { color: #fff; min-height: 270px; display: flex; align-items: flex-end; }
.article-container article .article-data { position: relative; background: linear-gradient(rgba(0,0,0,0), rgba(0,0,0,1)); width: 100%; padding: 15px 30px 15px 65px; }
.article-container article .article-data .term_badge { width: 30px; height: 30px; border-radius: 100%; position: absolute; top: 10px; left: 20px; margin-bottom: 4px; display: flex; align-items: center; justify-content: center; line-height: 1; font-size: 20px; }
.article-container article .article-data .term_badge i { width: 16px; height: 16px; }
.article-container article .article-data .term_badge i.play { margin-right: -3px; }
.article-container article .article-data span { font-size: 15px; text-transform: uppercase; font-family: var(--fs-font-secondary); }
.article-container article .article-data h2 { font-size: 17px; font-family: var(--fs-font-secondary); margin-bottom: 0; margin-bottom: 4px; }
.article-container article .article-data p { text-transform: uppercase; font-size: 12px; margin-bottom: 0; }
/*Tablet e mobile*/
@media (max-width: 991px) {
    .article-container { padding: 30px 3%; }
    .article-container .article-link { width: 100%; }
    .article-container article { min-height: 270px; }
    .article-container article .article-data span { font-size: 13px; }
    .article-container article .article-data h2 { font-size: 15px; }
}

/*-----------------------------------------------------------------------------
Blog (Singolo articolo)
-----------------------------------------------------------------------------*/
.single-article-container { padding: 30px 40px 0px; }
.single-article-container .single-article-date { color: #888; font-size: 12px; text-transform: uppercase; margin-bottom: 0; }
.single-article-container .single-article-title { color: var(--fs-primary); font-size: 38px; border-bottom: 1px solid #e6e6e6; padding-bottom: 16px; line-height: 1.1; }
/*Tablet e mobile*/
@media (max-width: 991px) {
    .single-article-container { padding: 30px 3% 8px 3%; }
    .single-article-container .single-article-title { font-size: 32px; }
}

/*-----------------------------------------------------------------------------
Aside (Singolo articolo)
-----------------------------------------------------------------------------*/
aside { margin-top: 30px !important; padding: 0px 40px 0px 30px !important; border-left: 1px solid #004b81; }
.sidebar-article-container { padding: 30px 40px 0px; display: flex; flex-wrap: wrap; gap: 0 40px; }
.sidebar-article-container .sidebar-article-title { font-size: 30px; color: var(--fs-primary); width: 100%; margin-bottom: 24px; }
.sidebar_last_posts { margin-bottom: 24px; position: relative; width: calc(33.3% - 26.5px); }
.sidebar_last_posts .news_image { width: 100%; height: 180px; background-size: cover !important; background-position: center !important; display: flex; justify-content: center; align-items: center; }
.sidebar_last_posts .news_image i { height: 58px; width: 58px; opacity: .5; }
.sidebar_last_posts .news_data { position: relative; padding-left: 30px; margin-top: 15px; }
.sidebar_last_posts .news_data .term_badge { width: 20px; height: 20px; border-radius: 100%; position: absolute; top: 0; left: 0; display: flex; justify-content: center; align-items: center; }
.sidebar_last_posts .news_data .term_badge i { font-size: 12px; color: #fff; line-height: 1; }
.sidebar_last_posts .news_data a { color: #000; }
.sidebar_last_posts .news_data span { font-size: 15px; text-transform: uppercase; font-family: var(--fs-font-secondary); }
.sidebar_last_posts .news_data h3 { margin-bottom: 0; font-size: 19px; font-family: var(--fs-font-secondary); }
.sidebar_last_posts .news_data p { font-size: 12px; color: #888; text-transform: uppercase; margin-bottom: 0; }
.sidebar_last_posts_view_all { margin-top: 24px; }
/*Tablet e mobile*/
@media (max-width: 991px) {
    aside { margin-top: 0 !important; border: 0; padding: 0px 3% 0px 3% !important; }
    .sidebar-article-container { padding: 30px 3% 8px 3%; }
    .sidebar_last_posts { width: 100%; }
    .sidebar_last_posts_view_all { margin-bottom: 40px; }
}

/*-----------------------------------------------------------------------------
SEARCH PAGE
-----------------------------------------------------------------------------*/
.search-container { padding: 30px 40px 0px; }
.search-container .article-data { border-bottom: 1px solid #e6e6e6; padding: 24px 0; }
.search-container .article-data span { display: inline-block; font-size: 12px; background: #e6e6e6; margin-bottom: 8px; padding: 2px 8px; border-radius: 5px; font-family: var(--fs-font-secondary); }
.search-container .article-data h2 { font-size: 17px; margin-bottom: 8px; }
.search-container .article-data p { font-size: 15px; color: #000; margin-bottom: 0; }
/*Tablet e mobile*/
@media (max-width: 991px) {
    .search-container { padding: 0px 3% 0px 3%; }
}

/*-----------------------------------------------------------------------------
Archive dei progetti
-----------------------------------------------------------------------------*/
.projects-container { padding: 30px 40px 0px; }
.project-description { margin-bottom: 80px; }
.project-cover img { width: calc(100% + 80px); margin-left: -40px; margin-top: -30px; margin-bottom: 24px; max-width: unset; }
/*Blocchi con categorie (gestito con shortcode)*/
.single-project-main-title { font-size: 37px; color: var(--fs-primary); margin-bottom: 32px; }
.projects-block-container { width: calc(100% + 80px); margin-left: -40px; padding: 40px 40px 64px 40px; display: flex; justify-content: space-between; flex-wrap: wrap; gap: 2rem; }
.projects-block-container .projects-category-title { margin-bottom: 0; font-size: 29px; width: 100%; }
.projects-block-container .single-project-container { width: calc(50% - 1rem); height: 400px; }
.projects-block-container .single-project-image { height: 100%; background-color: #e5e5e5; background-size: cover; background-position: center; position: relative; }
.projects-block-container .single-project-title-icon { display: flex; align-items: flex-end; justify-content: space-between; gap: 2rem; background: linear-gradient(0deg, black, transparent); position: absolute; left: 0; bottom: 0; right: 0; min-height: 120px; padding: 20px; }
.projects-block-container .single-project-title-icon .single-project-title { color: #fff; margin-top: 12px; margin-bottom: 0; font-size: 20px; }
.projects-block-container .single-project-title-icon .single-project-icon { color: #fff; font-size: 24px; margin-top: 4px; line-height: 1; }
.projects-block-container .project-cta { width: 100%; border: 0; border-radius: 5px; font-size: 19px; padding: 8px 20px; color: #fff; background: rgba(255, 255, 255, .1); font-family: var(--fs-font-secondary); text-align: right; }
.projects-block-container .project-cta i { font-size: 22px; margin-left: 6px; }
/*Nascosto*/
.projects-block-container.all-projects-visible .show-preview-projects { display: block; }
.projects-block-container.all-projects-visible .show-all-projects { display: none; }
.projects-block-container .show-preview-projects { display: none; }
/*Tablet e mobile*/
@media (max-width: 991px) {
    .projects-container { padding: 30px 3%; }
    .project-cover img { width: calc(100% + 6%); margin-left: -3%; margin-top: -30px; }
    /*Blocchi con categorie*/
    .projects-block-container { width: calc(100% + 6%); margin-left: -3%; }
    .projects-block-container .single-project-container { width: 100%; height: 300px; }
    .projects-block-container .single-project-image { min-height: 300px; }
}

/*-----------------------------------------------------------------------------
Progetto singolo
-----------------------------------------------------------------------------*/
.single-project-page-container { padding: 30px 40px 0px; }
/*Downloads*/
.single-project-page-downloads { display: flex; flex-wrap: wrap; gap: 24px; padding: 30px 40px 0px; }
.single-project-page-downloads a { padding: 8px 20px; background: #EBEBEB; font-family: var(--fs-font-secondary); border-radius: 5px; display: flex; align-items: center; gap: 10px; justify-content: space-between; }
.single-project-page-downloads a::after { content: '\F119'; font-size: 18px; font-family: 'bootstrap-icons'; }
.single-project-page-downloads em { width: 100%; font-size: 12px; font-style: normal; color: #212529; }
/*Media*/
.single-project-page-media { display: flex; flex-wrap: wrap; gap: 40px; padding: 30px 40px 0px; }
.single-project-page-media .media-preview-container { width: calc(33% - 23px); }
/*CTA*/
.single-project-link-esterno { padding: 40px 40px 0px; }
.single-project-vedi-progetti { padding: 60px 40px 0px; }
/*Tablet e mobile*/
@media (max-width: 991px) {
    .single-project-page-container { padding: 30px 3% 8px 3%; }
    .sidebar-project { padding: 0 3% 0 3% !important; }
    /*Downloads*/
    .single-project-page-downloads { flex-direction: column; padding: 16px 3% 8px 3%; }
    /*Media*/
    .single-project-page-media { padding: 30px 3% 8px 3%; }
    .single-project-page-media .media-preview-container { width: 100%; }
    /*CTA*/
    .single-project-link-esterno { padding: 40px 4% 0px; }
    .single-project-vedi-progetti { padding: 0 4% 60px; }
}

/*-----------------------------------------------------------------------------
Archive delle valutazioni
-----------------------------------------------------------------------------*/
.reviews-container { padding: 30px 40px 0px; }
/*Box*/
.reviews-container .reviews-intervent-box { display: flex; align-items: center; justify-content: center; gap: 1rem; margin-top: 40px; }
.reviews-container .reviews-intervent-box a { color: #fff; width: 20%; text-align: center; padding: 3rem 1rem; }
.reviews-container .reviews-intervent-box h2 { margin-bottom: 0; font-size: 28px; font-family: var(--fs-font-italic); font-style: italic; font-weight: 400; }
/*Riepilogo*/
.fc-reviews-for-year-container { border-bottom: 1px solid #e6e6e6; padding-bottom: 32px; margin-bottom: 40px; }
.fc-reviews-for-year-container h2 { font-size: 28px; border-bottom: 1px solid; padding-bottom: 8px; }
.fc-reviews-for-year-container h3 { font-size: 22px; }
.fc-reviews-for-year-container ul { padding-left: 24px; list-style: none; }
.fc-reviews-for-year-container ul li { font-size: 20px; text-transform: uppercase; font-family: var(--fs-font-secondary); position: relative; margin-bottom: 1rem; }
.fc-reviews-for-year-container ul li::after { content: ''; position: absolute; left: -24px; top: 8px; width: 12px; height: 12px; border-radius: 100%; }
.fc-reviews-for-year-container .fc-reviews-for-year-types { display: flex; }
.fc-reviews-for-year-container .fc-reviews-for-year-types .fc-reviews-for-year-projects { width: 50%; padding-right: 1rem; border-right: 1px solid #e6e6e6; }
.fc-reviews-for-year-container .fc-reviews-for-year-types .fc-reviews-for-year-announcement { width: 50%; padding-left: 1rem; }
.fc-reviews-for-year-show-all { border-radius: 5px; display: flex; align-items: center; justify-content: flex-end; color: #fff; font-family: var(--fs-font-secondary); padding: .4rem .6rem; margin-top: 40px; }
.fc-reviews-for-year-show-all:hover { color: #fff; }
.fc-reviews-for-year-show-all i { margin-left: 8px; font-size: 20px; }
/*Tablet e mobile*/
@media (max-width: 991px) {
    .reviews-container { padding: 30px 3%; }
    /*Riepilogo*/
    .fc-reviews-for-year-container .fc-reviews-for-year-types { flex-wrap: wrap; }
    .fc-reviews-for-year-container .fc-reviews-for-year-types .fc-reviews-for-year-projects { width: 100%; padding: 0; border-right: 0; }
    .fc-reviews-for-year-container .fc-reviews-for-year-types .fc-reviews-for-year-announcement { width: 100%; padding: 24px 0 0 0; border-top: 1px solid #e6e6e6; margin-top: 16px; }
    /*Box*/
    .reviews-container .reviews-intervent-box { flex-wrap: wrap; }
    .reviews-container .reviews-intervent-box a { width: calc(50% - .5rem); }
}

/*-----------------------------------------------------------------------------
Singola valutazione
-----------------------------------------------------------------------------*/
.single-review-page-container { padding: 30px 40px 0px; }
.single-review-page-container .review-sub-title { color: #999; font-family: var(--fs-font-secondary); font-size: 17px; text-transform: uppercase; }
/*Risultati*/
.review-section-title { font-size: 26px; border-bottom: 1px solid; padding-bottom: 10px; }
.review-results-box { padding-bottom: 24px; margin-bottom: 32px; border-bottom: 1px solid #e6e6e6; }
.review-results-box .results-list { margin-top: 24px; }
.review-results-box .results-list ul { list-style: none; padding-left: 0; display: flex; flex-wrap: wrap; gap: 0.8rem; }
.review-results-box .results-list ul li { color: #fff; background: var(--ambito_di_intervento_color); width: 24%; display: flex; flex-direction: column; justify-content: flex-start; padding: 20px; font-size: 24px; font-family: var(--fs-font-secondary); min-height: 120px; }
.review-results-box .results-list ul li strong { display: block; text-transform: uppercase; font-size: 14px; opacity: .6; }
.review-impact-box { padding-bottom: 24px; margin-bottom: 32px; border-bottom: 1px solid #e6e6e6; }
.review-impact-box .highlight { margin-top: 16px; padding: 20px; border: 1px solid; }
.review-impact-box .highlight h3 { color: #616161; font-size: 18px; margin-bottom: 8px; }
.review-impact-box .download h3 { color: #616161; border-top: 1px solid #f2f2f2; padding-top: 16px; margin-top: 20px; margin-bottom: 8px; font-size: 17px; text-transform: uppercase; }
.review-impact-box .download a { font-size: 18px; font-family: var(--fs-font-secondary); color: #000; }
.review-impact-box .download a i { margin-left: 8px; }
.review-materials-box { padding-bottom: 24px; margin-bottom: 32px; border-bottom: 1px solid #e6e6e6; }
.review-materials-box h3 { color: #616161; margin-bottom: 8px; font-size: 17px; text-transform: uppercase; }
.review-materials-box .review-materials-description { margin: 8px 0 10px; }
.review-materials-box .review-materials-documents { display: flex; flex-wrap: wrap; gap: 40px; }
.review-materials-box a { font-size: 18px; font-family: var(--fs-font-secondary); color: #000;  }
.review-materials-box a i { margin-left: 8px; }
.review-materials-box .review-photo-and-video { display: flex; flex-wrap: wrap; gap: 40px; margin-top: 30px; }
.review-materials-box .review-photo-and-video .media-preview-container { width: calc(33% - 23px); }
/*Vai al bando/progetto*/
.single-review-page-container .fc-see-announcement { display: block; text-align: center; color: #fff; padding: 15px; text-transform: uppercase; font-family: var(--fs-font-secondary); border-radius: 5px; width: 100%; font-size: 20px; }
.single-review-page-container .fc-see-announcement i { margin-left: 8px; font-size: 24px; }
/*Tablet e mobile*/
@media (max-width: 991px) {
    .single-review-page-container { padding: 30px 3% 8px 3%; }
    /*Risultati*/
    .review-results-box .results-list ul li { width: 100%; min-height: unset; } 
    .review-materials-box .review-photo-and-video .media-preview-container { width: 100%; }
    .review-materials-box .review-materials-documents { gap: 8px; }
    /*Vai al bando/progetto*/
    .single-review-page-container .fc-see-announcement { margin-bottom: 48px; }
}

/*-----------------------------------------------------------------------------
Bandi attivi (Shortcode)
-----------------------------------------------------------------------------*/
.bandi-block-container { margin-bottom: 60px; }
.bandi-block-container .bandi-block-protocollo { font-family: var(--fs-font-secondary); text-transform: uppercase; padding-left: 32px; position: relative; font-size: 24px; line-height: 1; }
.bandi-block-container .bandi-block-protocollo span { display: block; height: 20px; width: 20px; border-radius: 100%; position: absolute; top: 0; left: 0; }
.bandi-block-container .bandi-block-ambito { font-family: var(--fs-font-italic); font-style: italic; color: #fff; font-size: 28px; padding: 2px 32px; margin-bottom: 28px; }
.bandi-block-container .bandi-block-description { display: flex; justify-content: space-between; }
.bandi-block-container .bandi-block-description .bandi-block-title { font-size: 32px; padding-left: 32px; margin-bottom: 0; max-width: 720px; line-height: 1.2; }
.bandi-block-container .bandi-block-description .bandi-block-date { font-size: 17px; font-family: var(--fs-font-secondary); padding-right: 16px; text-align: right; }
.bandi-block-container .bandi-block-description .bandi-block-date p { margin-bottom: 4px; }
.bandi-block-container .bandi-block-link { display: block; width: 100%; font-family: var(--fs-font-secondary); font-size: 22px; border-radius: 5px; text-align: right; padding: 4px 16px; margin-top: 24px; }
.bandi-block-container .bandi-block-link i { font-size: 24px; margin-left: 8px; }
/*Tablet e mobile*/
@media (max-width: 991px) {
    .bandi-block-container { margin-bottom: 40px; }
    .bandi-block-container .bandi-block-protocollo { font-size: 19px; }
    .bandi-block-container .bandi-block-ambito { font-size: 26px; margin-bottom: 20px; }
    .bandi-block-container .bandi-block-description { flex-direction: column; padding-left: 32px; }
    .bandi-block-container .bandi-block-description .bandi-block-title { font-size: 24px; padding-left: 0; margin-bottom: 16px; margin-bottom: 12px; }
    .bandi-block-container .bandi-block-description .bandi-block-date { text-align: left; }
    .bandi-block-container .bandi-block-link { font-size: 19px; margin-top: 20px; }
}

/*-----------------------------------------------------------------------------
Bando singolo
-----------------------------------------------------------------------------*/
.single-bando-page-container { padding: 30px 40px 0px; }
.single-bando-informazioni-aggiuntive { padding: 48px 40px 0px; display: flex; flex-wrap: wrap; gap: 16px; }
.single-bando-informazioni-aggiuntive .single-bando-info-box { width: calc(25% - .75rem); padding: 24px 18px; font-family: var(--fs-font-secondary); }
.single-bando-informazioni-aggiuntive .single-bando-info-box p:first-child { text-transform: uppercase; font-size: 15px; line-height: 1.1; margin-bottom: 15px; }
.single-bando-informazioni-aggiuntive .single-bando-info-box p:last-child { font-size: 18px; line-height: 1.2; margin-bottom: 0; }
.single-bando-vai-al-rol { padding: 30px 40px 0px; }
.single-bando-vai-al-rol .fw-cta { padding: 10px 16px; text-align: center; }
.single-bando-vedi-bandi-attivi { padding: 40px 40px 0px; }
.single-bando-download { font-family: var(--fs-font-secondary); font-size: 24px; margin-bottom: 40px; }
.single-bando-download h2 { border-bottom: 1px solid #e7e7e7; margin-bottom: 0; padding-bottom: 15px; margin-top: 32px; font-size: 24px; text-transform: capitalize; }
.single-bando-download h2:first-child { margin-top: 0; }
.single-bando-download a { font-size: 17px; display: flex; align-items: center; padding: 15px 42px 15px 0px; border-bottom: 1px solid #e7e7e7; position: relative; }
.single-bando-download a::after { content: '\F119'; font-size: 25px; font-family: 'bootstrap-icons'; position: absolute; right: 0; }
.single-bando-info { font-size: 15px; background: #f2f2f2; padding: 14px; margin-top: 40px; }
.single-bando-info i { display: block; text-align: center; font-size: 24px; opacity: .3; }
/*Bando chiuso*/
.single-bando-chiuso-title { color: #fff; font-size: 24px; padding: 8px 20px; }
.single-bando-chiuso-documenti { display: flex; gap: 16px; margin-top: 32px; }
.single-bando-chiuso-documenti a { width: 100%; font-size: 18px; }
.single-bando-chiuso-documenti a i { font-size: 18px; }
/*Tablet e mobile*/
@media (max-width: 991px) {
    .single-bando-page-container { padding: 30px 3% 8px 3%; }
    .single-bando-informazioni-aggiuntive { padding: 24px 3% 0px; }
    .single-bando-vai-al-rol { padding: 30px 3% 8px 3%; }
    .single-bando-vedi-bandi-attivi { padding: 0 3% 60px 3%; }
    .single-bando-informazioni-aggiuntive .single-bando-info-box { width: 200% }
    /*Bando chiuso*/
    .single-bando-chiuso-documenti { flex-direction: column; margin-bottom: 32px; }
}

/*-----------------------------------------------------------------------------
Bando archive (Shortcode)
-----------------------------------------------------------------------------*/
.bandi-container { padding: 30px 40px 0px; }
.bandi-container h2 { color: var(--fs-primary); border-bottom: 1px solid var(--fs-primary); padding-bottom: 8px; margin-bottom: 0; }
.bando-archivio-anno { margin-bottom: 40px; }
.bando-archivio-anno .bando-archivio-data { padding: 24px 0 24px 30px; display: flex; justify-content: space-between; align-items: center; position: relative; border-bottom: 1px solid #e6e6e6; }
.bando-archivio-anno .bando-archivio-data .bando-archivio-badge { position: absolute; top: 28px; left: 0; height: 20px; width: 20px; border-radius: 100%; }
.bando-archivio-anno .bando-archivio-data .bando-archivio-protocollo { font-size: 20px; text-transform: uppercase; margin-bottom: 0; }
.bando-archivio-anno .bando-archivio-data .bando-archivio-protocollo span { font-family: var(--fs-font-secondary); }
.bando-archivio-anno .bando-archivio-data .bando-archivio-titolo { font-family: var(--fs-font-secondary); line-height: 1.3; text-transform: uppercase; font-size: 26px; margin-bottom: 0; }
.bando-archivio-anno .bando-archivio-data .bando-archivio-pubblicazione { font-size: 14px; margin-bottom: 0; }
.bando-archivio-anno .bando-archivio-info { max-width: 70%; padding-right: 60px; }
.bando-archivio-anno .bando-archivio-links { display: flex; gap: 24px; }
.bando-archivio-anno .bando-archivio-links a { display: flex; justify-content: flex-end; align-items: center; gap: 8px; font-family: var(--fs-font-secondary); text-transform: uppercase; min-width: 178px; }
.bando-archivio-anno .bando-archivio-links a i { font-size: 18px; }
.bando-archivio-anno .bando-archivio-links .bando-link-spacer { display: block; width: 178px; }
/*Tablet e mobile*/
@media (max-width: 991px) {
    .bandi-container { padding: 30px 3% 8px 3%; }
    .bando-archivio-anno .bando-archivio-data { flex-direction: column; justify-content: flex-start; align-items: flex-start; }
    .bando-archivio-anno .bando-archivio-data .bando-archivio-titolo { font-size: 22px; }
    .bando-archivio-anno .bando-archivio-info { max-width: unset; padding: 0; }
    .bando-archivio-anno .bando-archivio-links { flex-direction: column; gap: 0; margin-top: 16px; }
    .bando-archivio-anno .bando-archivio-links a { justify-content: flex-start; }
}

/*-----------------------------------------------------------------------------
Comunicati stampa (Archive)
-----------------------------------------------------------------------------*/
.comunicato-stampa-container { padding: 30px 40px 0px; }
.comunicato-stampa-container .comunicato-stampa-titolo-anno { font-size: 30px; color: var(--fs-primary); border-bottom: 1px solid #E6E6E6; padding-bottom: 28px; margin-bottom: 0; }
.comunicato-stampa-container .article-data { position: relative; padding: 28px 0; border-bottom: 1px solid #E6E6E6; display: flex; align-items: center; padding-right: 40px; }
.comunicato-stampa-container .article-data::after { content: '\F134'; font-family: 'bootstrap-icons'; position: absolute; right: 0; font-size: 24px; }
.comunicato-stampa-container .article-data .article-image { min-width: 190px; min-height: 126px; background-size: cover !important; background-position: center !important; }
.comunicato-stampa-container .article-data .article-info { margin-left: 30px; }
.comunicato-stampa-container .article-data .article-info h2 { font-size: 21px; color: var(--fs-primary); margin-bottom: 4px; }
.comunicato-stampa-container .article-data .article-info p { font-size: 14px; color: #999999; text-transform: uppercase; margin-bottom: 0; }
/*Sidebar*/
.comunicato-stampa-sidebar { border: 0; }
.comunicato-stampa-sidebar h2 { font-size: 18px; color: var(--fs-primary); border-bottom: 1px solid #E6E6E6; padding-bottom: 12px; text-align: center; margin-top: 31px; }
.comunicato-stampa-sidebar a { display: block; background: #EBEBEB; text-align: center; padding: 16px; font-size: 18px; font-family: var(--fs-font-secondary); border-radius: 5px; line-height: 1; margin-bottom: 10px; }
.comunicato-stampa-sidebar a.active { background: var(--fs-primary); color: #fff; }
/*Tablet e mobile*/
@media (max-width: 991px) {
    .comunicato-stampa-container { padding: 30px 3% 8px 3%; }
    .comunicato-stampa-container .article-data { align-items: flex-start; }
    .comunicato-stampa-container .article-data .article-image { min-width: 100px; min-height: 64px; }
    .comunicato-stampa-container .article-data .article-info { margin-left: 24px; }
    .comunicato-stampa-container .article-data .article-info h2 { font-size: 18px; }
}

/*-----------------------------------------------------------------------------
Comunicati stampa (Singolo)
-----------------------------------------------------------------------------*/
.singolo-comunicato-stampa-scarica { padding: 8px 20px; background: #EBEBEB; font-family: var(--fs-font-secondary); border-radius: 5px; display: flex; align-items: center; gap: 10px; justify-content: space-between; max-width: 240px; margin-top: 32px; margin-bottom: 32px; }
.singolo-comunicato-stampa-scarica::after { content: '\F119'; font-size: 18px; font-family: 'bootstrap-icons'; }
.singolo-comunicato-stampa-indietro { background: var(--fs-primary); margin-top: 60px; }
/*Tablet e mobile*/
@media (max-width: 991px) {
    .singolo-comunicato-stampa-indietro { margin: 40px 0 30px; }
}

/*-----------------------------------------------------------------------------
Elenco obiettivi (Shortcode)
-----------------------------------------------------------------------------*/
.fc_goals_container { display: flex; align-items: center; gap: 16px; padding: 20px; margin: 52px 40px 0; background: #EBEBEB; }
.fc_goals_container h2 { width: 100%; font-size: 18px; color: var(--fs-primary); margin-bottom: 4px; max-width: 300px; }
.fc_goals_container .fc_goals_icons { display: flex; flex-wrap: wrap; gap: 16px; }
.fc_goals_container .fc_goals_icons img { max-width: 120px; }
.fc_goals_container a { font-family: var(--fs-font-secondary); font-size: 18px; display: flex; margin-left: auto; padding-left: 16px; }
.fc_goals_container a i { margin-left: 4px; }
/*Tablet e mobile*/
@media (max-width: 991px) {
    .fc_goals_container { flex-direction: column; padding: 20px 3%; margin: 52px 3% 40px; }
    .fc_goals_container h2 { font-size: 18px; text-align: center; }
    .fc_goals_container .fc_goals_icons { justify-content: center; }
    .fc_goals_container .fc_goals_icons img { max-width: 100px; }
    .fc_goals_container a { margin: 8px auto 0; padding-left: 0; }
}

/*-----------------------------------------------------------------------------
Condividi elemento (Shortcode)
-----------------------------------------------------------------------------*/
.share_box { display: flex; justify-content: flex-end; align-items: center; border-top: 1px solid #e0e0e0; border-bottom: 1px solid #e0e0e0; padding: 30px 0px; margin: 50px 0px 0px; }
.share_box i { color: #77787a; font-size: 16px; }
.share_box i.circle { border: 1px solid #77787a; height: 24px; width: 24px; display: flex; align-items: center; justify-content: center; border-radius: 100%; }
.share_box i.circle.bg-fill { background: #77787a; color: #fff; }
.share_box i.circle.fix { font-size: 24px; border-radius: 100%; overflow: hidden; border: 0; }
.share_box .share { display: flex; align-items: center; gap: 8px; font-size: 18px; color: var(--fs-primary); font-family: var(--fs-font-secondary); }
.share_box .print_send { display: flex; align-items: center; gap: 8px; font-size: 12px; text-transform: uppercase; }
.share_box .print_send p { display: flex; align-items: center; gap: 8px; margin-bottom: 0; }
/*Tablet e mobile*/
@media (max-width: 991px) {
    .share_box .print_send p:first-child { display: none; }
}

/*-----------------------------------------------------------------------------
Profili in FAQ (Shortcode)
-----------------------------------------------------------------------------*/
.fs_faq_profile_container { margin-bottom: 24px; }
.fs_faq_profile_container br { display: none; }
.fs_faq_profile { display: inline-block; width: 25%; padding-right: 5%; }
.fs_faq_profile.col-50 { width: 50%; padding-right: 5%; }
.fs_faq_profile_box { display: flex; align-items: flex-start; margin-bottom: 16px; }
.fs_faq_profile_box .fs_faq_profile_photo { margin-right: 16px; max-width: 150px; }
.fs_faq_profile_box .fs_faq_profile_role { font-size: 15px; color: var(--fs-primary); padding-bottom: 2%; margin: 0; }
.fs_faq_profile_box .fs_faq_profile_name { font-size: 16px; font-family: var(--fs-font-secondary); color: var(--fs-primary); padding-bottom: 4px; margin-bottom: 0; }
.fs_faq_profile_box .fs_faq_profile_description { color: var(--fs-primary); font-size: 14px; margin: 0; }
.fs_faq_profile_box .fs_faq_profile_contacts { font-size: 15px; color: #77787a; margin-bottom: 0; }
.fs_faq_profile_box .fs_faq_profile_link { font-size: 13px; font-family: var(--fs-font-secondary); color: #77787a; }
@media (max-width: 991px) {
    .fs_faq_profile { width: 50%; }
    .fs_faq_profile.col-50 { width: 100%; padding-right: 5%; }
    .fs_faq_profile_box .fs_faq_profile_photo { max-width: 120px; }
}

/*-----------------------------------------------------------------------------
News in evidenza (Shortcode)
-----------------------------------------------------------------------------*/
.home_featured_posts { margin-bottom: 30px; }
.home_featured_posts .news_image { background-size: cover !important; background-position: center !important; min-height: 304px; display: flex; align-items: flex-end; color: #fff; }
.home_featured_posts .news_data { width: 100%; background: linear-gradient(0, black, transparent); padding: 15px 30px 15px 65px; position: relative; }
.home_featured_posts .news_data span { text-transform: uppercase; font-family: var(--fs-font-secondary); font-size: 15px; }
.home_featured_posts .news_data h3 { font-size: 21px; margin-bottom: 0; }
.home_featured_posts .news_data p { font-size: 13px; text-transform: uppercase; margin-bottom: 0; }
.home_featured_posts .news_data .term_badge { position: absolute; width: 30px; height: 30px; border-radius: 100%; top: 12px; left: 20px; display: flex; justify-content: center; align-items: center; line-height: 1; font-size: 20px; }
.home_featured_posts .news_data .term_badge i { width: 16px; height: 16px; }
.home_featured_posts .news_data .term_badge i.play { margin-right: -3px; }
.home_featured_all_news { font-family: var(--fs-font-secondary); font-size: 17px; padding-top: 20px; margin-bottom: 16px; border-top: 1px solid #e5e5e5; line-height: 1; }
.home_featured_all_news i { margin-left: 6px; }
@media (max-width: 991px) {
    .home_featured_posts .news_image { min-height: 194px; }
    .home_featured_posts .news_data h3 { font-size: 18px; }
}

/*-----------------------------------------------------------------------------
Anteprime Video e Gallerie (Multi pagina)
-----------------------------------------------------------------------------*/
.media-preview-container { width: 33%; cursor: pointer; }
.media-preview-container .media-preview-image { display: flex; justify-content: center; align-items: center; background-color: #EBEBEB; background-size: cover; background-position: center; min-height: 196px; }
.media-preview-container .media-preview-image i { height: 58px; width: 58px; opacity: .5; }
.media-preview-container .media-preview-category-title { padding-left: 32px; position: relative; }
.media-preview-container .media-preview-category-title .media-preview-category { text-transform: uppercase; margin-bottom: 0; font-family: var(--fs-font-secondary); font-size: 15px; margin-top: 8px; margin-bottom: 4px; }
.media-preview-container .media-preview-category-title .media-preview-category span { display: block; position: absolute; left: 0; top: 0; height: 20px; width: 20px; border-radius: 100%; }
.media-preview-container .media-preview-category-title .media-preview-title { font-size: 17px; color: #000; margin-bottom: 0; }

/*-----------------------------------------------------------------------------
Woocommerce
-----------------------------------------------------------------------------*/
/*Minicart*/
.nav-wrap .grid{position: relative;}
.minicart { list-style-type: none; margin: 0px; width: 270px; max-height: 0px; overflow: hidden; position: absolute; z-index: 2; top: 62px; right: 25px; background: #ffffff; box-shadow: 0 10px 15px rgba(0,0,0,0.15); }
.minicart__inside { padding: 20px; position: relative;}
.minicart .widget { margin-bottom: 0; }
.minicart .widget li { position: relative; margin-top: 5px!important; }
.minicart .widget a { border: none; padding: 0px 0 0 0; color:#000 }
.minicart .widget a.button { padding: 10px; }
.minicart .widget_shopping_cart .total{ border-top: 1px solid #dddddd; margin-top: 10px; padding-top: 20px; }
.minicart .woocommerce-mini-cart__buttons { margin-bottom: 0; }
.cart-icon { display: block; width: 40px; height: 40px; }
.cart-icon .cart-contents { background: #ffffff; line-height: 40px; text-align: center; cursor: pointer; color: #333333; width: 40px; height: 40px; border-radius: 100px; font-size: 22px; line-height: 40px; position: relative; background: #eeeeee; }
.cart-icon .cart-contents__number { position: absolute; height: 20px; width: 20px; line-height: 22px; border-radius: 20px; text-align: center; font-size: 10px; right: -5px; bottom: -4px; font-weight: bold; background: #fe316d; color: #ffffff; }
.cart--open { min-height: 50px; max-height: 600px; }
.woocommerce-mini-cart__buttons { margin-bottom: 0; }

/*Fix Checkout Woocommerce + BS5*/
.woocommerce-billing-fields .form-row, .woocommerce-shipping-fields .form-row,.woocommerce form .form-row { display: block; }
.woocommerce .col2-set .col-1, .woocommerce-page .col2-set .col-1,.woocommerce .col2-set .col-2, .woocommerce-page .col2-set .col-2 { max-width: unset; }

/*Tablet e mobile*/
@media (max-width: 991px) {
    .cart-icon { position: absolute; top: 16px; right: 90px; z-index: 30; }
}

/*-----------------------------------------------------------------------------
(Plugin)
-----------------------------------------------------------------------------*/
/*FAQ*/
.uagb-faq-questions .uagb-question { font-family: var(--fs-font-secondary); }
/*Slider*/
.splide__slide img { width: 100%; height: 100%; object-fit: cover; }  
.splide__slide { opacity: 1; }
.splide__slide.is-active { opacity: 1; }
.splide__track--nav>.splide__list>.splide__slide.is-active { border-color: #fff; }
.splide__arrow { opacity: 0 !important; }
#image-carousel:hover .splide__arrow { opacity: 1 !important; }
#image-carousel:hover .splide__arrow:disabled { opacity: .3 !important; }
#single-image-carousel:hover .splide__arrow { opacity: 1 !important; }
#single-image-carousel:hover .splide__arrow:disabled { opacity: .3 !important; }
/*Next Gen*/
.sl-wrapper .sl-counter { display: none !important; }
.sl-overlay { background-color: rgba(0,75,128,.7); opacity: 1; }
.sl-wrapper .sl-close,
.sl-wrapper .sl-navigation button { color: #fff; }
/*Area riservata*/
.reserved_area_grid { margin-bottom: 0; }
.reserved_area_grid .wp-block-column { max-width: 310px; width: 100%; flex-basis: unset !important; flex-grow: unset !important; }
.fc_reserved_area_cta { width: 100%; }
.fc_reserved_area_cta .wp-block-button__link { justify-content: space-between; min-height: 112px; }
.fc_reserved_area_cta .uagb-button__link { text-align: left; }
/*Tablet e mobile*/
@media (max-width: 781px) {
    .reserved_area_grid { gap: 0; margin-bottom: 0; }
    .reserved_area_grid .wp-block-column { max-width: 100%; width: 100%; }
    .fc_reserved_area_cta .wp-block-button__link { justify-content: space-between; min-height: 80px; }
}

/*Widget*/
.fc_widget_container { display: flex; flex-wrap: wrap; gap: 18px 30px; }
.fc_widget_block { height: auto; width: calc(50% - 15px); }
.fc_widget_block img { width: 100%; }
/*Tablet e mobile*/
@media (max-width: 991px) {
    .fc_widget_block { width: calc(33.3% - 20px); }
}
/*Mobile*/
@media (max-width: 767px) {
    .fc_widget_container { justify-content: space-between; gap: 18px 0%; }
    .fc_widget_block { width: calc(50% - 2%); }
}

/*Modale*/
#mediaModal { background: rgba(0,75,128,.7); }
#mediaModal .modal-content { border: 0; background: transparent; }
#mediaModal .modal-fullscreen { width: 100vw; height: 100vh; margin: 0; } 
#mediaModal .modal-fullscreen .modal-content { height: 100%; }
#mediaModal .btn-fullscreen,
#mediaModal .btn-closeModal { border: 0; background: transparent; color: #fff; opacity: .5; font-size: 20px; }
#mediaModal .btn-fullscreen { font-size: 18px; margin-right: 8px; }
#mediaModal .btn-fullscreen:hover,
#mediaModal .btn-closeModal:hover { opacity: 1; }
#mediaModal .modal-body { background-image: url(/wp-content/themes/fondazione-carispezia/assets/images/icons/fondazione-loader.gif); background-position: center; background-size: 64px; background-repeat: no-repeat; min-height: 400px; width: 100%; }

/*-----------------------------------------------------------------------------
WordPress Default Styles
-----------------------------------------------------------------------------*/
/* Pagination */
.pagination { background: #e6e6e6; font-size: 14px; color: #000; width: 100%; text-transform: uppercase; padding: 24px; justify-content: center; gap: 8px; }
.pagination span { max-width: 24px; text-align: center; text-decoration: underline; }
.pagination a { color: #000 !important; width: auto !important; text-align: center; }

/* Gallery */
.gallery { float: left; margin: 20px 0 20px 0; width: 103.55%; }
.gallery-item { float: left; width: 33.333333%; text-align: center; }
.gallery img { margin: 0 10% 0 0; width: 90%; height: auto; border: none!important; }
.gallery-caption { width: 90%;margin:10px 0 0 0;}

/* Image */
.alignleft { float: left; margin-right: 20px; margin-bottom: 10px; max-width: 97%; height: auto; }
.alignright { float: right; margin-bottom: 10px; margin-left: 20px; max-width: 97%; height: auto; }
.aligncenter { display: block; margin: 0 auto; max-width: 97%; height: auto; }
.alignnone { max-width: 97%; height: auto; }
.alignfull { margin-left: calc( -100vw / 2 + 100% / 2 ); margin-right: calc( -100vw / 2 + 100% / 2 ); max-width: 100vw; /*width: 100vw;*/ }
/*Tablet e mobile*/
@media (max-width: 767px) {
    img.alignright { float: none; margin-left: 0; }
}

/* img responsive */
.img-res{width: 100%;height: auto;}

/* video responsive */
.video-container { position: relative; padding-bottom: 56.25%; /* 16:9 */ padding-top: 25px; height: 0; }
.video-container iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

/* Table */
th, td {border-bottom: none;}

/* Image Caption */
.wp-caption { margin-top: 1.5rem;margin-bottom: 0px; padding: 10px; max-width: 97%; border: 1px solid #ddd; text-align: center; }
.wp-caption img { margin: 0; padding: 0; width: 100%!important; height: auto; border: 0 none; }
.wp-caption p.wp-caption-text { margin: 0; padding: 8px; font-size: 1em; line-height: 17px; }
.wp-block-image figcaption { color: #666b7c; font-size: 12px; text-align: center; margin-top: 16px; }

/* Stiky */
.sticky { border-right: 3px solid #eee; border-bottom: 3px solid #ddd; }

/* Search */
.search-form {background: #eee;}
.search-form input[type=text]{ width: 80%; color: #333; }
.search-form button{float:right;padding:10px 15px 0 0;border: none; background: none;padding: 11px;}

/* Contact Form 7 */
.wpcf7 label{width:100%}

/* Comments */
.comment-form-author,
.comment-form-email,
.comment-form-url { float: left; margin-top: 20px; margin-right: 3%; width: 30.3333333%; }
.comment-form-author input,
.comment-form-email input,
.comment-form-url input { width: 100%; }
ol.commentlist { margin: 0 0 1em; padding: 0; list-style: none; text-indent: 0; }
ol.commentlist li.comment { padding: 1em; border-top: 1px solid #eee; }
ol.commentlist li.comment div.vcard cite.fn { text-transform: uppercase; font-size: 14px; }
ol.commentlist li.comment div.vcard img.avatar { float: left; margin: 6px 1em 1em 0; border-radius: 50px; }
ol.commentlist li.comment div.comment-meta { font-size: 12px; }
ol.commentlist li.comment ul { margin: 0 0 1em 2em; }
ol.commentlist li.comment div.reply { margin-left: 80px; font-size: 11px; }
ol.commentlist li.comment div.reply a { font-weight: bold; }
ol.commentlist li.comment ul.children { margin: 1em 0 0; list-style: none; text-indent: 0; }
ol.commentlist li.comment ul.children li.depth-2 { margin: 0 0 .25em .25em; border-left: 1px solid #eee; }
ol.commentlist li.comment ul.children li.depth-3 { margin: 0 0 .25em .25em; border-left: 1px solid #eee; }
ol.commentlist li.comment ul.children li.depth-4 { margin: 0 0 .25em .25em; border-left: 1px solid #eee; }
ol.commentlist li.even { background: #fff; }
ol.commentlist li.odd { /* background: #f9f9f9; */  }
ol.commentlist li.parent { border-left: 1px solid #eee; }
ol.commentlist li.bypostauthor .fn { font-weight: bold; }
ol.commentlist li img{max-width: 97%;}

/*Campi*/
input[type=text],
input[type=email] { width: 98%;margin-right: 10px; padding: 10px; border: none; background: #eee; -webkit-appearance: none;border-radius: 0;font-size: 14px;}
textarea { padding: 10px; width: 98%; border: none; background: #eee; -webkit-appearance: none;border-radius: 0;font-size: 14px;}
input[type=submit] { margin-top: 10px; padding: 15px 20px; color: #fff; text-transform: uppercase; background: #333; border:none; font-size: 14px;}
#comments { width: 100%; }

/* Calendar Widget */
#wp-calendar { width: 100%; }
#wp-calendar a { padding: 0; border: none; }
#wp-calendar caption,
.screen-reader-text { padding-bottom: 10px; color: #000; text-align: left; text-transform: uppercase; font-weight: 700; font-size: 14px; }
#wp-calendar thead { font-size: 10px; }
#wp-calendar thead th { padding-bottom: 10px; }
#wp-calendar tbody { color: #aaa; }
#wp-calendar tbody td { padding: 8px; border: 1px solid #fff; background: #f5f5f5; text-align: center; }
#wp-calendar tbody td:hover { background: #fff; }
#wp-calendar tbody .pad { background: none; }
#wp-calendar tfoot #next { text-align: right; text-transform: uppercase; font-size: 10px; }
#wp-calendar tfoot #prev { padding-top: 10px; text-transform: uppercase; font-size: 10px; }

/* Youtube Video */
.wp-embed-aspect-16-9.wp-has-aspect-ratio iframe { height: 420px; }
/*Tablet e mobile*/
@media (max-width: 991px) {
    .wp-embed-aspect-16-9.wp-has-aspect-ratio iframe { height: 220px; }
	.bando-candidature{padding: 0px 15px !important;}
}

/*Altri FIX*/
.video_germogliazioni_2025 iframe,video {height: 80vh !important; width: auto; display: block; margin: 0 auto; background: #fbb82d;}

/*--------------------------------------------------------------------
Aggiornamenti 2026
--------------------------------------------------------------------*/
/*Struttura*/
html, body { overflow-x: hidden; }
body { font-family: var(--fs-font-primary); background: #004b80; background-repeat: no-repeat, no-repeat; background-size: 372px, 372px; }
body {
    background-position: calc(50% - 776px) 244px, calc(50% + 776px) 308px;
    background-image:
            url("/wp-content/themes/fondazione-carispezia/assets/images/fondazione-carispezia-background-pages-left.svg"),
            url("/wp-content/themes/fondazione-carispezia/assets/images/fondazione-carispezia-background-pages-right.svg");
}
body.home {
    background-position: calc(50% - 776px) 156px, calc(50% + 776px) 220px;
    background-image:
            url("/wp-content/themes/fondazione-carispezia/assets/images/fondazione-carispezia-background-home-left.svg"),
            url("/wp-content/themes/fondazione-carispezia/assets/images/fondazione-carispezia-background-home-right.svg");
}

/*Ambiti in home page*/
.fc-ambiti-full-box:after { content: ''; width: calc(100% + 400px); min-height: 180px; position: absolute; }
.fc-ambiti-full-box.welfare::after { background: linear-gradient(90deg, #004b80 0%, var(--welfare) 50%); }
.fc-ambiti-full-box.volontariato::after { background: linear-gradient(270deg, #004b80 0%, var(--volontariato) 50%); }
.fc-ambiti-full-box.cultura::after { background: linear-gradient(90deg, #004b80 0%, var(--cultura) 50%); }
.fc-ambiti-full-box.formazione::after { background: linear-gradient(270deg, #004b80 0%, var(--formazione) 50%); }
.fc-ambiti-full-box.salutePubblica::after { background: linear-gradient(90deg, #004b80 0%, var(--salutePubblica) 50%); }
.fc-ambiti-full-box.sport::after { background: linear-gradient(270deg, #004b80 0%, var(--sport) 50%); }
.fc-ambiti-full-box.to-left::after { left: -400px; }
.fc-ambiti-full-box.to-right::after { right: -400px; }
@media (max-width: 1199px) {
    .fc-ambiti-full-box:after { width: 100%; }
    .fc-ambiti-full-box.to-left::after,
    .fc-ambiti-full-box.to-right::after { left: 0; right: 0; top: 0; bottom: 0; min-height: unset; }
}

/*Pagina progetto*/
.projects-block-container { position: relative; }
.projects-block-container::after { content: ""; position: absolute; bottom: 0; height: 1px; background: #ffffff; width: calc(100% - 80px); }
.projects-block-container:last-child::after { display: none; }
.projects-block-container .single-project-title-icon { background: linear-gradient(0deg, var(--fs-primary), transparent)  }
.project-description { margin-top: 0; margin-bottom: 72px; }
.fc-progetti-svg { margin-bottom: 40px; }
.projects-block-container .projects-category-title { text-transform: uppercase; }
.projects-container { padding: 30px 80px 0; }
.project-description { font-size: 18px; text-align: justify; }
@media (max-width: 1199px) {
    .project-description { margin-top: 40px; margin-bottom: 40px; }
    .fc-progetti-svg { margin-bottom: 8px; }
}
@media (max-width: 991px) {
    .projects-container { padding: 30px 4%; }
    .project-cover img { width: calc(100% + 10%); margin-left: -5%; margin-top: -30px; }
    .projects-block-container { width: calc(100% + 10%); margin-left: -5%; padding: 40px 4% 64px; }
    .projects-block-container .projects-category-title { font-size: 23px; line-height: 1.2; }
    .projects-block-container::after { width: calc(100% - 8%); }
}