/**
 * Plus Jakarta Sans Font
 * Loading from Google Fonts CDN
 * Available weights: 200, 300, 400, 500, 600, 700, 800
 */

/* Import Plus Jakarta Sans and Roboto from Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@200;300;400;500;600;700;800&family=Roboto:wght@300;400;500;700&display=swap');

/* Set Plus Jakarta Sans as the base font family */
body,
* {
    font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
}

/* Prevent horizontal scroll */
html,
body {
    overflow-x: hidden;
    max-width: 100%;
}

.bg-primary {

    background-color: #FFF !important;
}

header.it-header-wrapper {
    display: none;
}

a.back-to-top.shadow.back-to-top-show {
    display: none;
}

.row>* {
    padding: 0 !important;
}

ul {
    list-style: none;
    padding: 0;
}

.container-xxl .row {
    margin: 0 auto;
}

:focus:not(.focus--mouse),
.form-check .toggles label:has(input[type=checkbox]:focus:not(.focus--mouse)),
.form-check [type=checkbox]:focus+label,
.form-check [type=radio]:focus+label,
.toggles label input[type=checkbox]:focus+.lever,
.it-carousel-wrapper .splide__pagination button:focus:not(.focus--mouse),
.upload:focus:not(.focus--mouse)+label,
.upload-dragdrop-input:focus[type=file]:not(.focus--mouse)+label,
.avatar-upload:focus-within:not(.focus--mouse),
.rating input:focus:not(.focus--mouse)+label svg {
    border-color: unset;
    box-shadow: none;
    outline: unset;
    outline-offset: 0;
}

/* singolo percorso */
.percorso-share {
    text-align: end;
}

.percorso-share-button {
    color: #03826B;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
    text-transform: uppercase;
    text-decoration: none;
}

.percorso-share-button:hover {
    color: #03826B;
}

.percorso-title {
    color: #016050;
    font-size: 30px;
    font-style: normal;
    font-weight: 700;
    line-height: 36px;
    margin-bottom: 12px;
}

.percorso-sotto-titolo {
    color: #000;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    margin-bottom: 19px;
}

.percorso-image {
    margin-bottom: 35px;
}

.percorso-image img {
    border-radius: 15px;
    max-width: 100%;
    width: 100%;
    height: auto;
}

.percorso-description-title,
.percorso-area-title,
.percorso-tematica-title,
.percorso-essential-info-title,
.percorso-languages-title,
.percorso-indicazioni-title,
.store-sponsor-title,
.percorso-orari-title,
.percorso-premi-title {
    color: #000;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
    max-width: 100%;
    width: 100%;
    margin-top: 12px;
}

.percorso-store-sponsor {
    margin-bottom: 30px;
}

.percorso-description-title,
.percorso-tematica-title {
    margin-bottom: 0;
}

.percorso-premi-title {
    margin: 0;
}

.percorso-premi-text {
    color: #000;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
}

.percorso-indicazioni-title,
.percorso-orari-title {
    font-size: 16px;
}

.percorso-indicazioni {
    margin-bottom: 7px;
}

.percorso-orari {
    margin-bottom: 20px;
}

.indicazioni-content,
.orari-content {
    color: #000;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
}

.tematica-title {
    color: #000;
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 20px;
}

.percorso-read-more,
.store-body-read-more {
    color: #03826B !important;
    font-size: 18px !important;
    font-style: normal !important;
    font-weight: 700 !important;
    line-height: 24px !important;
    margin: 30px 0 0 !important;
}

.percorso-description-content,
.percorso-area,
.percorso-tematica,
.percorso-languages,
.percorso-mini-map {
    border-bottom: 2px solid #03826B;
}

.percorso-mini-map-internal-wrapper {
    background-image: url(/sites/default/files/2025-12/map%20container%402x.jpg);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    margin-bottom: 15px;
    min-height: 195px;
    position: relative;
    border-radius: 6px;
    display: flex;
}

.percorso-description-content,
.percorso-area-content p {
    color: #000;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
}

.percorso-description-content {
    padding-bottom: 20px;
}

.percorso-tematica,
.percorso-languages {
    display: flex;
    flex-wrap: wrap;
    gap: 0 10px;
}

.tematica-item,
.language-item {
    display: flex;
    max-width: 48%;
    width: 100%;
    align-items: center;
    gap: 8px;
    padding: 17px 0;
}

.tematica-icon,
.language-flag {
    border-radius: 50%;
    width: 32px;
    height: 32px;
    object-fit: cover;
    background: #D8F9C5;
    padding: 5px;
}

.info-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.info-card {
    max-width: 48%;
    width: 100%;
    padding: 8px 13px;
}

.info-label {
    position: relative;
    color: #03826B;
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: 20px;
    padding-left: 10px;
}

.info-value {
    color: #000;
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: 28px;
    display: flex;
    gap: 0 3px;
}

.info-label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 6px;
    height: 6px;
    background-color: #F98933;
    border-radius: 50%;
    top: 50%;
    transform: translateY(-50%);
}

.percorso-mini-map a {
    color: #000;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 22px;
    text-decoration: none;
    text-align: center;
    flex: 1;
}

.mini-map-link {
    position: absolute;
    width: 100%;
    bottom: 70px;
}

.percorso-feedback {
    border-radius: 12px;
    border: 1px solid #ED6F2B;
    background: #FBF8E8;
    padding: 15px 22px;
    margin-top: 20px;
}

.percorso-feedback-title {
    color: #000;
    text-align: center;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
    margin-bottom: 4px;
}

.percorso-feedback-text {
    color: #000;
    text-align: center;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    margin-bottom: 4px;
}

.percorso-feedback-link a {
    color: #03826B;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
}

.percorso-feedback-link {
    text-align: center;
    margin: 0;
}

.percorso-premi-section {
    padding-top: 30px;
}


@media (min-width: 1400px) {

    .container-xxl,
    .container-xl,
    .container-lg,
    .container-md,
    .container-sm,
    .container {
        max-width: 500px !important;
    }
}

#block-italiagov-menufooter {
    position: fixed;
    bottom: 0;
    width: 100%;
    left: 0;
    border-radius: 24px 24px 0 0;
    border-top: 1px solid #FFF;
    background: #FFF;
    box-shadow: 0 -3px 9.7px 0 rgba(1, 96, 80, 0.13);
    z-index: 999;
}

.user-anonymous li.profilo-utente.menu-informazioni-personali {
    display: none;
}

footer .focus--mouse:not(.btn) {
    border-color: #FFFFFF19 !important;
}

#block-italiagov-menufooter .link-list-wrapper .link-list {
    display: flex;
    padding: 8px 16px 12px;
    margin: 0;
    justify-content: space-between;
}

#block-italiagov-menufooter .link-list-wrapper .link-list a,
#block-italiagov-menufooter .link-list-wrapper .link-list a span {
    padding: 0;
    color: #016050;
    font-size: 10px !important;
    font-style: normal;
    font-weight: 500 !important;
    line-height: 18px;
}

#block-italiagov-menufooter .link-list-wrapper .link-list a:hover span {
    text-decoration: none !important;
}

#block-italiagov-menufooter .link-list-wrapper .link-list a {
    height: 100%;
}

#block-italiagov-menufooter .link-list-wrapper .link-list a span {
    margin: 0;
}

#block-italiagov-menufooter .link-list li {
    max-width: 85px;
    width: 100%;
    height: 51px;
}

#block-italiagov-menufooter .link-list-wrapper .link-list a::before {
    content: ' ';
    width: 24px;
    height: 24px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    position: absolute;
    top: 7px;
    left: 50%;
    transform: translateX(-50%);
}

/*
#block-italiagov-menufooter .link-list-wrapper .link-list a.active {
    background: #016050;
    color: #fff;
    border-radius: 10px;
}

#block-italiagov-menufooter .link-list-wrapper .link-list a.active span {
    color: #fff;
    text-decoration: none;
}*/

#block-italiagov-menufooter .link-list-wrapper .link-list a.home::before {
    background-image: url(/sites/default/files/2025-12/icon-homepage%402x.png);
}

.path-frontpage #block-italiagov-menufooter .link-list-wrapper .link-list a.home::before {
    background-image: url(/sites/default/files/2025-12/icon-homepage-bianco%402x.png);
}




#block-italiagov-menufooter .link-list-wrapper .link-list a.catalogo::before {
    background-image: url(/sites/default/files/2025-12/icon-catalogo%402x.png);
}


.path-percorsi-list #block-italiagov-menufooter .link-list-wrapper .link-list a.catalogo::before {
    background-image: url(/sites/default/files/2025-12/icon-catalogo-bianco%402x.png);

}

.path-percorsi-list #block-italiagov-menufooter .link-list-wrapper .link-list a.catalogo,
.path-frontpage #block-italiagov-menufooter .link-list-wrapper .link-list a.home,
.path-i-miei-percorsi #block-italiagov-menufooter .link-list-wrapper .link-list a.percorsi,
.page-informazioni-personali #block-italiagov-menufooter .link-list-wrapper .link-list a.profilo-utente,
.path-user #block-italiagov-menufooter .link-list-wrapper .link-list a.profilo-utente {
    background: #016050;
    color: #fff;
    border-radius: 10px;
}

.path-percorsi-list #block-italiagov-menufooter .link-list-wrapper .link-list a.catalogo span,
.path-frontpage #block-italiagov-menufooter .link-list-wrapper .link-list a.home span,
.path-i-miei-percorsi #block-italiagov-menufooter .link-list-wrapper .link-list a.percorsi span,
.page-informazioni-personali #block-italiagov-menufooter .link-list-wrapper .link-list a.profilo-utente span,
.path-user #block-italiagov-menufooter .link-list-wrapper .link-list a.profilo-utente span {
    color: #fff;
    text-decoration: none;
}









#block-italiagov-menufooter .link-list-wrapper .link-list a.percorsi::before {
    background-image: url(/sites/default/files/2025-12/icon-i-tuoi-percorsi%402x.png);
}

.path-i-miei-percorsi #block-italiagov-menufooter .link-list-wrapper .link-list a.percorsi::before {
    background-image: url(/sites/default/files/2025-12/icon-i-tuoi-percorsi-bianco%402x.png);
}



#block-italiagov-menufooter .link-list-wrapper .link-list a.profilo-utente::before {
    background-image: url(/sites/default/files/2025-12/icon-profilo%402x.png);
}

.page-informazioni-personali #block-italiagov-menufooter .link-list-wrapper .link-list a.profilo-utente::before,
.path-user #block-italiagov-menufooter .link-list-wrapper .link-list a.profilo-utente::before {
    background-image: url(/sites/default/files/2025-12/icon-profilo-bianco%402x.png);
}



#block-italiagov-menufooter .link-list-wrapper .link-list a span {
    margin: 0;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 1px;
    width: 100%;
    text-align: center;
}

.menu-user-edit-page {
    display: none;
}

.user-logged-in.path-user .menu-informazioni-personali {
    display: none;
}

.user-logged-in.path-user .menu-user-edit-page {
    display: block;
}

.social-links {
    max-width: 196px;
    width: 100%;
    margin: 0 auto;
}

.social-links ul {
    padding: 0;
    list-style: none;
    margin: 0;
    display: flex;
    justify-content: space-between;
    gap: 0 55px;
}



.social-links ul a span {
    color: #FFF;
    text-align: center;
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 21px;
    margin-top: 8px;
}

.social-links ul a {
    text-decoration: none;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.social-links ul a img {
    max-width: 40px;
    height: auto;
    width: 100%;
}

/*
#it-block-italiagov-content,
#it-block-italiagov-bloccoperilquiz {
    padding-bottom: 80px;
}*/


.store-sponsor-content {
    display: flex;
    gap: 0 15px;
}

.store-sponsor-image {
    max-width: 65px;
}

.store-sponsor-image img {
    width: 100%;
}

.store-body p {
    color: #000;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
}



.it-footer-main section {
    padding: 0;
}

footer nav ul {
    padding: 0;
    list-style: none;
    margin-bottom: 30px;
}

.ragione-sociale {
    max-width: 354px;
    margin: 110px auto 0;
}

.ragione-sociale a {
    text-decoration: none;
}

.ragione-sociale p {
    color: #FFF;
    text-align: center;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
}

.it-footer-main {
    background: #016050;
}

footer nav ul a {
    color: #FFF;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    text-decoration: none;
    max-width: 100%;
    width: 100%;
    display: block;
}

footer nav ul li {
    border-bottom: 1px solid #FFFFFF19;
    padding: 12px 0;
}


#it-block-italiagov-footer {
    padding-top: 20px;
    padding-bottom: 100px;
}

.before-content__wrapper {
    position: sticky;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 1030;
    background: #fff;
    transition: transform 0.3s ease-in-out;
}

.before-content__wrapper.header-hidden {
    transform: translateY(-100%);
}



#it-region-before-content-fourth {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0 13px;
    padding: 15px 0 30px;
}

#it-block-italiagov-logo {
    max-width: 100%;
    width: 100%;
}

#it-block-italiagov-logo div {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

#it-block-italiagov-logo .logo {
    max-width: 80px;
    width: 100%;
}

#it-block-italiagov-logo .logo img {
    width: 100%;
    height: auto;
}

#it-block-italiagov-logo .search-icon {
    max-width: 24px;
    width: 100%;
}

#it-block-italiagov-logo .search-icon img {
    width: 100%;
    height: auto;
}

.btn-informazioni-personali:hover {
    box-shadow: none !important;
}

.btn-informazioni-personali span.navbar-toggler-icon span {
    display: block;
    width: 22px;
    height: 3px;
    background-color: #0D141C;
    border-radius: 2px;
}

.btn-informazioni-personali span.navbar-toggler-icon {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 4px;
    width: 24px;
    height: 24px;
    /* padding: 2px; */
}

.btn-informazioni-personali {
    box-shadow: none;
    border: 0;
    padding: 0;
}

/*
.link-list-wrapper.informazioni-personali ul li a span,
.link-list-wrapper.informazioni-personali ul li a {
    color: #000;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 24px;
    padding: 0;
    margin: 0;
    text-align: left;
}

.link-list-wrapper.informazioni-personali ul li a:hover span {
    color: #03826B;
    text-decoration: none;
}

.link-list-wrapper.informazioni-personali ul li {
    padding-bottom: 20px;
    border-bottom: 2px solid var(--verde-scuro, #03826B);
    margin-bottom: 30px;
}

.link-list-wrapper.informazioni-personali ul li a {
    position: relative;
}

.link-list-wrapper.informazioni-personali ul li a::after {
    position: absolute;
    content: '';
    width: 6px;
    height: 12px;
    background-image: url(/sites/default/files/2025-11/Vector%209.png);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}*/
.link-list-wrapper.informazioni-personali ul li a,
.link-list-wrapper.informazioni-personali ul li a span,
.language-switcher-inline .lang-item a {
    padding: 0;
    color: #000;
    text-align: right;
    font-family: Roboto;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    text-transform: uppercase;
    margin: 0;

}

.language-switcher-inline .lang-item a {
    text-decoration: none;
}

.link-list-wrapper.informazioni-personali ul li a:hover span {
    color: #000;
    text-decoration: none;
}

.language-switcher-inline {
    text-align: right;
}

.language-switcher-inline .lang-item a {
    font-weight: 400;
}

.language-switcher-inline .lang-item.active a {
    font-weight: 700;
}

.link-list-wrapper.informazioni-personali ul li a {
    margin-bottom: 30px;
}

#offcanvas-block-italiagov-informazionipersonali .offcanvas-header {
    justify-content: end;
}

#offcanvas-block-italiagov-informazionipersonali .offcanvas-header button {
    opacity: 1;
}






.success-content-tappa.completed h2 {
    color: #016050;
    text-align: center;
    font-size: 30px;
    font-style: normal;
    font-weight: 700;
    line-height: 36px;
}

.success-content-tappa.completed {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.success-content-tappa.completed img.bird-image {
    max-width: 300px;
}

.premio-description {
    margin-top: 20px;
}

#quiz-container p {
    color: #000;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
}

#quiz-container .testo-sotto-telecamera {
    color: #000;
    text-align: center;
    font-size: 20px;
    font-style: normal;
    font-weight: 500;
    line-height: 24px;
    margin: 20px auto;
    max-width: 318px;
    width: 100%;
}

#quiz-container .hai-completato-percorso-wrapper p {
    text-align: center;
}

#quiz-container .premio-read-more {
    color: #03826B;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
    margin: 10px 0 0;
}

.views-view-tappe-map {
    left: 50%;
    right: 50%;
    width: 100vw;
    margin-left: -50vw;
    margin-right: -50vw;
    position: relative;
    margin-top: 15px;
}

.views-view-tappe-map .views-field-views-conditional-field-1,
.percorsi-mappa-wrapper .views-field-views-conditional-field-1,
.popup-tappa-percorso .ore {
    color: #FFF;
    text-align: center;
    font-size: 10px;
    font-style: normal;
    font-weight: 400;
    line-height: 16px;
    border-radius: 30px;
    background: #03826B;
    padding: 2px;
}

.modal-link-wrapper {
    margin: 27px 0;
}


.tappa-map-title {
    color: #000;
    font-size: 10px;
    font-style: normal;
    font-weight: 700;
    line-height: unset;
    margin: 0 !important;
}

.popup-tappa-percorso {
    text-decoration: none;
}

.tappa-map-link {
    margin: 0 0 6px !important;
}

.view-tappe-map .views-field.views-field-field-tematica {
    color: #016050;
    font-size: 10px;
    font-style: normal;
    font-weight: 700;
    line-height: 16px;
    text-transform: uppercase;
}


.tappa-map-link a,
.tappa-map-link {
    color: #000;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    text-decoration: none;
    line-height: unset;
}

.views-view-tappe-map .views-field-field-tematica,
.percorsi-mappa-wrapper .views-field-field-tematica,
.popup-tappa-percorso .tematica {
    color: #016050;
    font-size: 10px;
    font-style: normal;
    font-weight: 700;
    line-height: 16px;
    text-transform: uppercase;
    margin-bottom: 4px;
}


.tappa-title,
.quiz-page-title {
    color: #016050;
    text-align: center;
    font-size: 25px;
    font-style: normal;
    font-weight: 700;
    line-height: 23px;
    margin: 20px 0;
}

.tappa-image img {
    width: 100%;
    height: auto;
    border-radius: 15px;
}

.tappa-image {
    margin-bottom: 20px;
}

.tappa-descrizione * {
    color: #000;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    margin-bottom: 48px;
}

.tappa-descrizione-title {
    font-weight: 500;
    margin: 0
}

.hai-completato-percorso-wrapper {
    padding-bottom: 200px;
}

.tappa-sponsor-title {
    color: #000;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
    margin-bottom: 12px;
}

.tappa-sponsor-content {
    display: flex;
    gap: 8px;
}

.tappa-sponsor-image {
    flex: 0 0 77px;
    height: 77px;
    display: flex;
}

.tappa-sponsor-image img {
    width: 100%;
    border-radius: 16px;
    object-fit: cover;
}

.tappa-sponsor-text {
    color: #000;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
}

.tappa-sponsor-section {
    margin-bottom: 45px;
}

.page-node-type--quiz-elaborazione-di-immagini #block-italiagov-menufooter,
.page-node-type--quiz-elaborazione-di-immagini footer,
.page-node-type--quiz-risposta-aperta #block-italiagov-menufooter,
.page-node-type--quiz-risposta-aperta footer,
.page-node-type--quiz-finale #block-italiagov-menufooter,
.page-node-type--quiz-finale footer,
.page-node-type--quiz-scelta-singola #block-italiagov-menufooter,
.page-node-type--quiz-scelta-singola footer {
    display: none;
}

input#edit-submit.button--primary,
#edit-cancel,
.user-form #edit-delete {
    background: #03826B;
    color: #fff;
    margin: 0 auto !important;
    display: block;
    text-align: center;
    font-size: 15.5px;
    font-style: normal;
    font-weight: 500;
    line-height: 22px;
    text-transform: uppercase;
    border: 2px solid #016050;
    padding: 10px 12px;
    max-width: 314px;
    width: 100%;
    border-radius: 9999px;
    text-decoration: none;
}

.user-form #edit-actions {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

#edit-cancel {
    background: #8F8D8D;
    border-color: #8F8D8D;
    margin-top: 10px !important;
}


/*homepage*/
.homepage-top-logo-motion {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 30px;
    gap: 10px;
}

.homepage-top-logo {
    max-width: 50%;
    width: 100%;
}

.homepage-top-logo img {
    width: 100%;
    height: auto;
}

.homepage-top-motion {
    max-width: 50%;
    width: 100%;
}

.homepage-top-motion img {
    width: 100%;
    height: auto;
}

.homepage-title {
    display: flex;
    justify-content: space-between;
}

.homepage-title h1 {
    color: #016050;
    font-size: 27px;
    font-style: normal;
    font-weight: 700;
    line-height: 30px;
    margin-bottom: 15px;
}

.homepage-description {
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 24px;
}

.homepage-come-funziona-title {
    color: #016050;
    font-size: 22px;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
}

.homepage-come-funziona-subtitle {
    color: #016050;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
}

.homepage-come-funziona-video video {
    border-radius: 6px;
}

.homepage-come-funziona-button .button-indizia,
.homepage-percorsi-inizia-giocare-button a,
.homepage-leggi-piu a,
.user-profile-page .logout-section a {
    color: #FFF;
    text-align: center;
    font-size: 15.5px;
    font-style: normal;
    font-weight: 500;
    line-height: 22px;
    text-transform: uppercase;
    border-radius: 62px;
    border: 2px solid #016050;
    background: #03826B;
    max-width: 100%;
    width: 100%;
    display: block;
    padding: 10px;
    text-decoration: none;
    margin-top: 22px;
    margin-bottom: 22px;
}

.homepage-come-funziona-button .button-indizia:hover,
.homepage-come-funziona-button .button-indizia:active,
.homepage-percorsi-inizia-giocare-button a:hover,
.homepage-percorsi-inizia-giocare-button a:active,
.homepage-leggi-piu a:hover,
.homepage-leggi-piu a:active,
.user-profile-page .logout-section a:hover,
.user-profile-page .logout-section a:active {
    border: 2px solid #016050;
    background: #FFF;
    color: #016050;
}


.homepage-percorsi-inizia-registrami-link a {
    color: #03826B;
    font-family: Roboto;
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 22px;
}

.homepage-percorsi-inizia-registrami-link {
    text-align: center;
}

.homepage-saperne-piu-progetto {
    color: #016050;
    font-size: 22px;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
    margin-top: 15px;
}

p.homepage-ente-promuovere-territorio.green-text {
    color: #016050;
    font-size: 17px;
    font-style: normal;
    font-weight: 700;
    line-height: 21px;
    margin-top: 20px;
}

#it-block-italiagov-homepagecomefunziona video {
    max-width: 100%;
    width: 100%;
}

#goback img {
    width: 7px;
    height: 13px;
}

#goback {
    color: #000;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 24px;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 0 7px;
    margin-bottom: 25px;
}



.block-go-back-history {
    height: auto;
    width: auto;
    background: transparent;
    border-radius: 0;
    position: static;
}

.block-go-back-history .go-back-history-btn {
    position: static;
    background: none;
    color: #000;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 24px;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 0 7px;
}

.block-go-back-history .go-back-history-btn img {
    width: 7px;
    height: 13px;
}

.percorso-actions-wrapper {
    display: flex;
    justify-content: space-between;
    margin-bottom: 25px;
    position: relative;
}

video#premio-video {
    margin-top: 12px;
}

.tappe-login-button-container {
    /* position: absolute; */
    /* bottom: 75px; */
    /* z-index: 999; */
    /* left: 50%; */
    /* transform: translateX(-50%); */
    /* max-width: 314px; */
    /* width: 100%; */
    margin: 30px 0;
}

.user-anonymous.path-user header {
    display: none;
}

#page-user-login,
#page-user-register,
#page-user-password {
    background-color: #FFF !important;
}

.form-group small.form-text,
.form-group .form-text.small {
    padding: 0;
}

#page-user-login .form-title,
#page-user-register .form-title,
.user-edit-form-title {
    color: #016050;
    text-align: center;
    font-size: 25px;
    font-style: normal;
    font-weight: 700;
    line-height: 23px;
}

.user-edit-form-title {
    margin: 30px 0
}

#page-user-login form#user-login-form,
#page-user-register form#user-register-form,
#page-user-password form#user-pass {
    max-width: 366px;
    width: 100%;
    margin: 0 auto;
    padding-bottom: 100px;
}

#page-user-login #it-region-content,
#page-user-register #it-region-content,
#page-user-password #it-region-content {
    padding: 0 12px;
}

#page-user-login .form-subtitle,
#page-user-register .form-subtitle {
    color: #000;
    text-align: center;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 24px;
}

#page-user-register .form-required-notice,
.path-user .form-required-notice {
    color: #5c6f82;
    text-align: center;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    margin-bottom: 1rem;
}

#page-user-login .form-group label,
#page-user-register .form-group label,
#page-user-password .form-group label,
#page-user-login .select-wrapper label,
#page-user-register .select-wrapper label,
.user-logged-in.path-user label:not(.user-logged-in.path-user .field--widget-boolean-checkbox label),
#webform-submission-feedback-percorso-add-form label:not(#webform-submission-feedback-percorso-add-form .js-form-type-checkbox label),
#webform-submission-contatti-node-86-add-form label:not(#webform-submission-contatti-node-86-add-form .js-form-type-checkbox label) {
    all: unset;
    color: #000;
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 20px;
}

.views-exposed-form label,
.views-exposed-form .form-group label {
    all: unset;
    color: #000;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 23px;
}

.form-check [type=checkbox]:not(:checked)+label::after {
    border-color: #03826B;
    margin: 0
}

.form-check [type=checkbox]:checked+label::before {
    top: 0px;
    left: -3px;
}

.form-check [type=checkbox]:checked+label::after {
    margin: 0;
}

.user-logged-in.path-user .field--widget-boolean-checkbox label,
.user-logged-in.path-user .field--widget-boolean-checkbox label a,
.user-anonymous.path-user .js-form-type-checkbox label,
.user-anonymous.path-user .js-form-type-checkbox label a,
#webform-submission-feedback-percorso-add-form .js-form-type-checkbox label,
#webform-submission-feedback-percorso-add-form .js-form-type-checkbox label a,
#webform-submission-contatti-node-86-add-form .js-form-type-checkbox label,
#webform-submission-contatti-node-86-add-form .js-form-type-checkbox label a {
    color: #000;
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 20px;
}


.user-logged-in.path-user details {
    display: none;
}

/* Style all inputs in user forms except submit buttons */
#page-user-password input[type="text"],
#page-user-password input[type="email"],
#page-user-password input[type="password"],
#page-user-password input[type="number"],
#page-user-password input[type="tel"],
#page-user-password textarea,
#page-user-password select,
#page-user-login input[type="text"],
#page-user-login input[type="email"],
#page-user-login input[type="password"],
#page-user-login input[type="number"],
#page-user-login input[type="tel"],
#page-user-login textarea,
#page-user-login select,
#page-user-register input[type="text"],
#page-user-register input[type="email"],
#page-user-register input[type="password"],
#page-user-register input[type="number"],
#page-user-register input[type="tel"],
#page-user-register textarea,
#page-user-register select,
.user-logged-in.path-user input[type="password"],
.user-logged-in.path-user input[type="text"],
.user-logged-in.path-user input[type="email"],
.user-logged-in.path-user input[type="number"],
.user-logged-in.path-user input[type="tel"],
.user-logged-in.path-user textarea,
.user-logged-in.path-user select,
#webform-submission-feedback-percorso-add-form input[type="text"],
#webform-submission-feedback-percorso-add-form input[type="email"],
#webform-submission-feedback-percorso-add-form input[type="number"],
#webform-submission-feedback-percorso-add-form input[type="tel"],
#webform-submission-feedback-percorso-add-form textarea,
#webform-submission-feedback-percorso-add-form select,
#webform-submission-contatti-node-86-add-form input[type="text"],
#webform-submission-contatti-node-86-add-form input[type="email"],
#webform-submission-contatti-node-86-add-form input[type="number"],
#webform-submission-contatti-node-86-add-form input[type="tel"],
#webform-submission-contatti-node-86-add-form textarea,
#webform-submission-contatti-node-86-add-form select,
.views-exposed-form select,
.views-exposed-form input[type="text"] {
    border-radius: 12px !important;
    border: 2px solid #03826B;
    background: #FBF8E8;
    height: 55px;
    margin-bottom: 12px;
}




#webform-submission-feedback-percorso-add-form textarea,
#webform-submission-contatti-node-86-add-form textarea {
    height: unset
}

/* Style for readonly nome-percorso input */
#webform-submission-feedback-percorso-add-form #edit-nome-percorso {
    border: 2px solid #929292 !important;
    background: #D9D9D9 !important;
}

input::placeholder,
textarea::placeholder {
    color: rgba(0, 0, 0, 0.50) !important;
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 20px;
}

select {
    color: #0D141C !important;
    font-size: 16px;
    font-style: normal;
    font-weight: 400 !important;
    line-height: 24px;
}

.path-user .focus--mouse:not(.btn) {
    border-color: #03826B !important;
}

.form-group {
    margin-bottom: unset;
}

#page-user-password .select-wrapper,
#page-user-login .select-wrapper,
#page-user-register .select-wrapper {
    position: relative;
}

#page-user-password a#edit-link,
#page-user-login a#edit-link,
#page-user-register a#edit-link {
    color: #03826B;
    font-size: 13px;
    font-weight: 500;
}

.forgot-password-link span {
    color: #000;
    font-size: 13px;
    font-weight: 500;
}

#page-user-password input#edit-submit,
#page-user-login input#edit-submit,
#page-user-register input#edit-submit,
#webform-submission-feedback-percorso-add-form #edit-actions-submit,
#webform-submission-contatti-node-86-add-form #edit-actions-submit,
.user-pass-reset #edit-submit {
    max-width: 314px;
    width: 100%;
    color: #FFF;
    text-align: center;
    font-size: 15.5px;
    font-style: normal;
    font-weight: 500;
    line-height: 22px;
    text-transform: uppercase;
    margin: 0 auto !important;
    border-radius: 62px;
    border: 2px solid #016050;
    background: #03826B;
}



#page-user-login #edit-actions,
#page-user-register #edit-actions,
#page-user-password #edit-actions,
#webform-submission-contatti-node-86-add-form #edit-actions,
.user-pass-reset #edit-actions,
#webform-submission-feedback-percorso-add-form #edit-actions {
    text-align: center;
}

.password-icon {
    right: 1px;
    background-color: unset;
}

.form-item-pass-pass1 .password-icon,
.js-form-type-password .password-icon {
    top: 50%;
}

.form-item-pass-pass2 .password-icon {
    top: 33%;
}

.user-logged-in.path-user .form-item-pass-pass2 .password-icon {
    top: 37%;
}

.user-logged-in.path-user .form-item-current-pass .password-icon {
    top: 23%;
}


/* reset freccia nativa */
#page-user-register .select-wrapper select,
.path-percorsi-list .views-exposed-form select,
.path-percorsi-mappa .views-exposed-form select,
.user-logged-in.path-user select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;

    cursor: pointer;

    /* spazio per le frecce */
    background-image: url("data:image/svg+xml,%3Csvg width='12' height='16' viewBox='0 0 12 16' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 0L12 6H0L6 0Z' fill='%230A8F6A'/%3E%3Cpath d='M6 16L0 10H12L6 16Z' fill='%230A8F6A'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 18px center;
}

.path-percorsi-mappa .views-exposed-form select,
.path-percorsi-list .views-exposed-form select,
.user-logged-in.path-user select {
    position: relative;
}


#edit-register-link,
#edit-login-link {
    max-width: 314px;
    width: 100%;
    display: block;
    color: #03826B;
    font-size: 15.5px;
    font-style: normal;
    font-weight: 500;
    line-height: 22px;
    text-transform: uppercase;
    text-decoration: none;
    border-radius: 43px;
    border: 1px solid #03826B;
    background: #FFF;
    text-align: center;
    padding: 10px;
    margin: 0 auto;
}

.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
    display: none;
}

#edit-mail--description {
    display: none;
}

#edit-pass--description {
    display: none;
}


.leaflet-popup-content {
    margin: 13px;
    padding-right: 5px;
}

.percorsi-navigation-wrapper {
    display: flex;
    border-radius: 40px;
    background-color: #016050;
    padding: 4px;
    overflow: hidden;
}

.percorsi-navigation-wrapper a {
    padding: 10px 30px;
    font-family: inherit;
    font-size: 16px;
    color: white;
    text-decoration: none;
    transition: 0.25s;
    border-radius: 40px;
    max-width: 50%;
    width: 100%;
    text-align: center;
}

.percorsi-navigation-wrapper a.active {
    background-color: white;
    color: #016050;
    font-weight: 600;
}

.percorsi-title-wrapper h1 {
    color: #016050;
    text-align: center;
    font-size: 25px;
    font-style: normal;
    font-weight: 700;
    line-height: 23px;
    margin-bottom: 20px;
}

.percorsi-title-wrapper h2 {
    color: #000;
    text-align: center;
    font-family: "Plus Jakarta Sans";
    font-size: 17px;
    font-style: normal;
    font-weight: 500;
    line-height: 16px;
    margin-bottom: 28px;
}

.percorsi-rows-wrapper {
    display: flex;
    gap: 22px 10px;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 20px;
}



.percorsi-rows-wrapper .detailed-info,
.view-homepage-percorsi .detailed-info {
    padding: 8px;
}

.percorsi-rows-wrapper .detailed-info .city,
.view-homepage-percorsi .detailed-info .city {
    color: #000;
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 16px;
}

.percorsi-rows-wrapper a,
.view-homepage-percorsi a {
    text-decoration: none;
    height: 100%;
    display: block;
}

.percorsi-rows-wrapper .views-field.views-field-nid,
.view-homepage-percorsi .views-field.views-field-nid {
    height: 100%;
}

.percorsi-rows-wrapper .detailed-info .title,
.view-homepage-percorsi .detailed-info .title {
    color: #000;
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: 24px;
    margin: 8px 0;
}

.percorsi-rows-wrapper .detailed-info .tematica,
.view-homepage-percorsi .tematica {
    color: #016050;
    font-size: 10px;
    font-style: normal;
    font-weight: 700;
    line-height: 16px;
    text-transform: uppercase;
}

.percorsi-rows-wrapper .views-row,
.view-homepage-percorsi .views-row {
    border-radius: 11px;
    border: 2px solid #016050;
    overflow: hidden;
    background: #FBF8E8;
    max-width: 170px;
    width: 100%;
}

.percorsi-rows-wrapper .views-row .area,
.view-homepage-percorsi .views-row .area {
    position: absolute;
    color: #FFF;
    font-size: 12px;
    font-style: normal;
    font-weight: 500;
    line-height: 16px;
    padding: 4px;
    border-radius: 6px 0;
    background: #016050;
}

.percorsi-rows-wrapper .views-row .area:empty,
.view-homepage-percorsi .views-row .area:empty {
    display: none;
}

.path-tappe-indoor .views-element-container {
    position: relative;
}





.view-id-percorsi_list .js-form-item-search-api-fulltext,
.view-id-percorsi_list .form-item-field-citta,
.view-id-percorsi_list .form-item-field-gratuito,
.view-id-percorsi_list .form-actions,
.view-id-percorsi_list .form-item-field-area,
.view-id-percorsi_list .form-item-field-regione,
.view-id-percorsi_list .form-item-field-tematica,
.view-id-percorsi_list .form-item-field-lingua-per-la-pagina-dei-f,
.view-id-percorsi_mappa .form-item-field-lingua-per-la-pagina-dei-f,
.view-id-percorsi_mappa .form-item-field-citta,
.view-id-percorsi_mappa .form-item-field-area,
.view-id-percorsi_mappa .form-item-field-regione,
.view-id-percorsi_mappa .form-item-field-tematica,
.view-id-percorsi_mappa .form-item-field-lingua-per-la-pagina-dei-f,
.view-id-percorsi_mappa .form-item-field-gratuito,
.view-id-percorsi_mappa .js-form-item-search-api-fulltext,
.view-id-percorsi_mappa .form-actions,
#views-exposed-form-percorsi-mappa-page-1 .form-actions,
#views-exposed-form-percorsi-mappa-page-1 .js-form-item-search-api-fulltext,
#views-exposed-form-percorsi-mappa-page-1 .form-item-field-citta,
#views-exposed-form-percorsi-mappa-page-1 .form-item-field-area,
#views-exposed-form-percorsi-mappa-page-1 .form-item-field-regione,
#views-exposed-form-percorsi-mappa-page-1 .form-item-field-tematica,
#views-exposed-form-percorsi-mappa-page-1 .form-item-field-lingua-per-la-pagina-dei-f,
#views-exposed-form-percorsi-mappa-page-1 .form-item-field-gratuito,
#views-exposed-form-percorsi-mappa-page-1 .js-form-item-field-citta1 {
    display: none;
}




#filters-modal .js-form-item-search-api-fulltext,
#filters-modal .form-item-field-gratuito,
#filters-modal .form-item-field-citta,
#filters-modal .form-actions,
#filters-modal .form-item-field-area,
#filters-modal .form-item-field-regione,
#filters-modal .form-item-field-tematica,
#filters-modal .form-item-field-lingua-per-la-pagina-dei-f {
    display: block;
}

.ajax-progress.ajax-progress-fullscreen {
    display: none;
}



.filters-modal .views-exposed-form .form-item-field-citta1 {
    display: none;
}

#filters-modal {
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background-color: white;
    z-index: 9999;
    padding: 20px;
    box-sizing: border-box;
    overflow-y: auto;
}

#close-filters-modal {
    background: white;
    border: none;
    text-align: end;
    text-decoration: none;
    color: black;
}

#open-filters-modal {
    color: #000;

    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 21px;
    text-decoration: none;
    border-radius: 38px;
    border: 1px solid #03826B;
    max-width: 177px;
    width: 100%;
    display: flex;
    justify-content: center;
    padding: 5px;
    align-items: center;
}

#open-filters-modal img {
    margin-right: 10px;
}

.view-id-percorsi_list .form-item-field-citta1 select {
    border-radius: 12px;
    border: 2px solid #03826B;
    background-color: #FFF;
    color: #0D141C;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
}


/* Tematica cards styling */
.tematica-cards-container {
    display: flex;
    gap: 0px 8px;
    max-width: 100%;
    flex-wrap: wrap;
    margin-bottom: 15px;
}

.tematica-card {
    border-radius: 12px;
    border: 2px solid #03826B;
    background: #FBF8E8;
    max-width: 160px;
    width: 100%;
    padding: 17px 20px;
    display: flex;
    gap: 9px;
    align-items: center;
    margin-top: 15px;
}

.tematica-card:hover {
    border-color: #026b5a;
    box-shadow: 0 2px 8px rgba(3, 130, 107, 0.2);
}

.tematica-card.selected {
    border-color: #03826B;
    border-width: 2px;
    background-color: rgba(3, 130, 107, 0.05);
}

.tematica-card-icon {
    border-radius: 50%;
    width: 32px;
    height: 32px;
    object-fit: cover;
    background: #D8F9C5;
    padding: 5px;
}

.views-exposed-form .form-item-field-area small#edit-field-area--2--description {
    color: #171212;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 23px;
}

.path-percorsi-list .views-exposed-form .js-form-item,
.path-percorsi-mappa .views-exposed-form .js-form-item {
    margin-bottom: 15px;
}

.tematica-card-icon-placeholder {
    color: #000;
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 20px;
}

.tematica-card-label {
    color: #000;
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 20px;
}

.tematica-card.selected .tematica-card-label {
    font-weight: 500;
    color: #03826B;
}

/* Hide the original select but keep it for form submission */
.tematica-cards-container+select[name="field_tematica[]"] {
    display: none !important;
}

p.filters-title {
    color: #016050;
    text-align: center;
    font-size: 21px;
    font-style: normal;
    font-weight: 700;
    line-height: 23px;
}

/* Gratuito toggle switch styling */
.gratuito-toggle-container {
    margin-top: 10px;
}

.gratuito-toggle-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
}

.gratuito-toggle-wrapper label {
    color: #171212;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
}

.gratuito-toggle-switch {
    position: relative;
    width: 50px;
    height: 28px;
    background-color: #E0E0E0;
    border-radius: 14px;
    cursor: pointer;
    transition: background-color 0.3s ease;
    flex-shrink: 0;
}

.gratuito-toggle-switch.active {
    background-color: #F98933;
}

.gratuito-toggle-knob {
    position: absolute;
    top: 2px;
    left: 2px;
    width: 24px;
    height: 24px;
    background-color: #FFFFFF;
    border-radius: 50%;
    transition: transform 0.3s ease;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.gratuito-toggle-switch.active .gratuito-toggle-knob {
    transform: translateX(22px);
}

.form-item-field-gratuito>label {
    display: none;
}



/* homepage percorsi */
.view-homepage-percorsi {
    display: flex;
    gap: 22px 10px;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 30px 0 35px;
}

.view-homepage-percorsi header {
    max-width: 100%;
    width: 100%;
    color: #016050;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
}

#it-block-italiagov-informazionipersonali-2 a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #000;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 24px;
    text-decoration: none;
}

#it-block-italiagov-informazionipersonali-2 li {
    padding-bottom: 20px;
    border-bottom: 2px solid #03826B;
    margin-bottom: 35px;
}

#it-block-italiagov-informazionipersonali-2 {
    margin-top: 40px;
}

.view-my-percorso h1 {
    color: #000;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 24px;
    margin-bottom: 12px;
}

.view-my-percorso .completed-tappa {
    display: flex;
}

.view-my-percorso .my-percorso-detail {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 12px;
    border-bottom: 2px solid #03826B;
    margin-bottom: 12px;
}

.view-my-percorso .title {
    color: #000;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
}

.view-my-percorso a {
    text-decoration: none;
}

.view-my-percorso .completed-tappa {
    color: rgba(0, 0, 0, 0.50);
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 16px;
}

.view-my-percorso .link {
    color: #03826B;
    text-align: right;
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 20px;
}

.view-my-percorso {
    margin-top: 40px;
}

#it-block-italiagov-comefunziona h1,
#it-block-italiagov-contattitop h1,
.view-id-obiettivi h1,
#it-block-italiagov-chisiamotop h1 {
    color: #016050;
    text-align: center;
    font-size: 25px;
    font-style: normal;
    font-weight: 700;
    line-height: 23px;
    margin-bottom: 36px;
}

#it-block-italiagov-comefunziona .benvenuto {
    color: #000;
    text-align: center;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 24px;
    margin-bottom: 28px;
}

#it-block-italiagov-comefunziona .come-funziona-detail h2 {
    color: #000;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 24px;
    margin-bottom: 20px;
}

#it-block-italiagov-comefunziona .come-funziona-detail li {
    display: flex;
    padding-bottom: 18px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.10);
    margin-bottom: 18px;
}

#it-block-italiagov-comefunziona .come-funziona-detail .image {
    width: 32px;
    height: 32px;
    margin-right: 8px;
    background: #F0F0F0;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
}

#it-block-italiagov-comefunziona .come-funziona-detail .image img {
    width: 20px;
    height: auto;
}

#it-block-italiagov-comefunziona .come-funziona-detail .title {
    color: #000;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    margin: 0;
}

#it-block-italiagov-comefunziona .come-funziona-detail .sub-title {
    color: rgba(0, 0, 0, 0.50);
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 16px;
    margin: 0;
}

.btn-general {
    border-radius: 62px;
    border: 2px solid #016050;
    background: #03826B;
    max-width: 314px;
    width: 100%;
    display: block;
    color: #FFF;
    text-align: center;
    font-size: 15.5px;
    font-style: normal;
    font-weight: 500;
    line-height: 22px;
    text-transform: uppercase;
    text-decoration: none;
    padding: 10px;
    margin: 0 auto;
}

.btn-general:hover {
    background: #FFF;
    color: #03826B;
}

.view-id-faq header h2 {
    color: #000;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 24px;
    margin: 0;
}

.view-id-faq header p {
    color: rgba(0, 0, 0, 0.50);
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 16px;
}

.view-id-faq {
    /*max-width: 336px;*/
    width: 100%;
    margin: 0 auto;
}

.view-id-faq .views-row {
    padding: 0px 30px;
}

.view-id-faq .accordion-button {
    color: #0F1417;
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 21px;
    text-decoration: none;
    padding-left: 0;
    padding-right: 0;
}

.accordion-header .accordion-button:after {
    content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M12,10.3l4.8,4.8c0.3,0.3,0.8,0.3,1.1,0c0.3-0.3,0.3-0.8,0-1l-4.8-4.8c-0.6-0.6-1.5-0.6-2.1,0L6.2,14c-0.3,0.3-0.3,0.8,0,1c0.3,0.3,0.8,0.3,1.1,0L12,10.3z'/%3E%3C/svg%3E");
    float: right;
    width: 1.5rem;
    transition: transform .3s;
    transform: scaleY(-1);
}

.view-id-faq .accordion-button:hover {
    text-decoration: none;
}

.accordion-header .accordion-button:not(.collapsed) {
    color: #0F1417;
}

.accordion-body {
    padding-left: 0;
    padding-right: 0;
}

.view-miei-ordini thead.table-dark tr th {
    font-size: 16px;
    background-color: #03826B;
    text-align: center;
}

.view-miei-ordinitbody tr td {
    font-size: 16px;
    text-align: center;
}

/* user profile page */
.username-header .nome-cognome {
    color: #000;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 24px;
    margin: 0;
}

.username-header .username {
    font-family: Roboto;
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 16px;
}

.user-profile-page .section-header {
    display: flex;
    justify-content: space-between;
}

.user-profile-page .section-header h1 {
    color: #000;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 24px;
}

.user-profile-page .section-header .edit-button {
    color: #03826B;
    font-size: 12px;
    font-style: normal;
    font-weight: 500;
    line-height: 22px;
    text-decoration: none;
    border-radius: 62px;
    border: 2px solid #03826B;
    width: 97px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5px;
    height: 26px;
}

.user-profile-page .section-header .chevron {
    font-size: 10px;
    font-weight: 900;
}

.personal-info-list .info-content .field-label {
    color: #000;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
}

.personal-info-list .info-content .field-value {
    color: rgba(0, 0, 0, 0.50);
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 16px;
}

.personal-info-list .info-item {
    padding-bottom: 12px;
    padding-top: 12px;
    border-bottom: 2px solid #03826B;
}

.delete-account-section a {
    color: #03826B;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    text-decoration: none;
}

.delete-account-section {
    margin-bottom: 34px;
}

.user-profile-page .logout-section {
    margin: 33px 0 45px;
}

/* feedback percorso */
#webform-submission-feedback-percorso-add-form h1 {
    color: #016050;
    text-align: center;
    font-size: 25px;
    font-style: normal;
    font-weight: 700;
    line-height: 23px;
    margin-bottom: 24px;
}

#webform-submission-feedback-percorso-add-form p {
    color: #0D141C;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    max-width: 334px;
    margin: 0 auto;
    margin-bottom: 24px;
}

#block-italiagov-contattitop p {
    color: #0D141C;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
}

.contact-us h2 {
    color: #0D141C;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 23px;
}

.contact-us p a {
    color: #0D141C;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    text-decoration: none;
}

#webform-submission-contatti-node-86-add-form #edit-markup p {
    max-width: 334px;
    color: #0D141C;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 23px;
}

#it-block-italiagov-contattisociallinks h2 {
    color: #0D141C;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 23px;
}

#it-block-italiagov-contattisociallinks .social-links {
    max-width: 334px;
    margin-bottom: 20px;
}

#it-block-italiagov-contattisociallinks .social-links ul {
    justify-content: center;
    background: #F7FAFC;
    padding: 10px 0;
}

#it-block-italiagov-contattisociallinks .social-links ul a span {
    color: #0D141C;
}

.chi-siamo-menvenuto {
    color: #000;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 24px;
}

.chi-siamo-descrizione {
    max-width: 334px;
    width: 100%;
    margin: 0 auto;
    color: #0F1417;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    margin-bottom: 20px;
}

.chi-siamo-obiettivi-title {
    color: #000;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 24px;
    margin: 0;
    max-width: 342px;
    width: 100%;
    margin: 0 auto;
}

.single-obiettivo-wrapper {
    display: flex;
    gap: 12px;
    padding: 16px 0 8px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.10);
}

.single-obiettivo-wrapper .title {
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 20px;
}

.single-obiettivo-wrapper .sub-title {
    color: #000;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
}

.single-obiettivo-wrapper .image {
    max-width: 80px;
    width: 100%;
}

.single-obiettivo-wrapper .text {
    max-width: 250px;
    width: 100%;
}

.view-obiettivi .views-row {
    max-width: 342px;
    margin: 0 auto;
}


#it-block-italiagov-chisiamocomefunziona h2 {
    color: #000;
    font-size: 22px;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
    max-width: 342px;
    margin: 30px auto 20px;
}

.why-indizia-created {
    color: #0F1417;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    max-width: 342px;
    margin: 0 auto 38px;
}

.site-mystery-house {
    display: flex;
    flex-wrap: wrap;
    gap: 0 12px;
    max-width: 342px;
    margin: 0 auto 32px;
}

.site-mystery-house h3 {
    color: #000;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 24px;
    max-width: 100%;
    width: 100%;
    margin-bottom: 16px;
}

.site-mystery-house .texts {
    max-width: 238px;
    width: 100%;
}

.site-mystery-house .title {
    color: #000;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 20px;
    margin: 0 0 10px;
}

.site-mystery-house .sub-title {
    color: #000;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 13px;
    margin: 0;
}

.site-mystery-house img {
    max-width: 92px;
    width: 100%;
    height: 46px;
    object-fit: cover;
}

.chi-siamo-promuovere {
    color: #000;
    text-align: center;
    font-family: "Plus Jakarta Sans";
    font-size: 24px;
    font-style: normal;
    font-weight: 500;
    line-height: 29px;
}

.chi-siamo-come-funziona-button,
.chi-siamo-come-contatti-button {
    max-width: 314px;
    margin: 0 auto;
}

.modal-content .js-form-submit:nth-child(1) {
    border-radius: 62px;
    border: 2px solid #016050;
    background: #03826B;
    color: #FFF;
    text-align: center;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 22px;
    padding: 10px;
    max-width: 169px;
    width: 100%;
}

.modal-content .js-form-submit:nth-child(2) {
    color: #03826B;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 22px;
    padding: 10px;
    max-width: 169px;
    width: 100%;
    border-radius: 43px;
    border: 2px solid #03826B;
}

#filters-modal .form-actions {
    display: flex;
    justify-content: space-between;
    gap: 5px;
}

/*cart and checkout page*/
.layout-region-checkout-secondary {
    float: unset;
    width: unset;
}

.commerce-checkout-flow h3 {
    color: #016050;
    text-align: center;
    font-size: 25px;
    font-style: normal;
    font-weight: 700;
    line-height: 23px;
    margin-bottom: 36px;
}

.commerce-checkout-flow #edit-actions-next,
.view-id-commerce_cart_form #edit-submit,
.view-id-commerce_cart_form #edit-checkout {
    max-width: 314px;
    width: 100%;
    color: #FFF;
    text-align: center;
    font-size: 15.5px;
    font-style: normal;
    font-weight: 500;
    line-height: 22px;
    text-transform: uppercase;
    margin: 0 auto !important;
    border-radius: 62px;
    border: 2px solid #016050;
    background: #03826B;
}

.layout-region-checkout-main,
.layout-region-checkout-footer {
    float: unset;
    width: unset;
    padding-right: unset;
}

.commerce-checkout-flow #edit-actions {
    text-align: center;
}

fieldset legend {
    padding: 0;
}

.view-id-commerce_cart_form #edit-actions {
    display: flex;
    flex-direction: column;
    gap: 20px;
    align-items: center;
    justify-content: center;
}

.view-commerce-cart-form .table-dark th {
    background: #016050;
}

.order-thank-you-message-title {
    color: #016050;
    text-align: center;
    font-size: 25px;
    font-style: normal;
    font-weight: 700;
    line-height: 23px;
}

.order-thank-you-message-text {
    color: #000;
    text-align: center;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 24px;
}


.order-thank-you-links a {
    color: #FFF;
    text-align: center;
    font-size: 15.5px;
    font-style: normal;
    font-weight: 500;
    line-height: 22px;
    text-transform: uppercase;
    border-radius: 62px;
    border: 2px solid #016050;
    background: #03826B;
    text-decoration: none;
    padding: 10px;
}

.order-thank-you-links {
    display: flex;
    flex-direction: column;
    margin: 50px auto;
    gap: 30px;
    max-width: 314px;
    width: 100%;
}

/* User Image Field Styling */
.user-form .field--name-field-user-image {
    margin-bottom: 24px;
}



.user-form .field--name-field-user-image .image-widget {
    display: flex;
    flex-direction: column;
    gap: 16px;
    align-items: flex-start;
}



/* Upload button label styling - target label that comes after file input */
.user-form .field--name-field-user-image input[type="file"].form-file+label,
.user-form .field--name-field-user-image label[for*="upload"] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 24px;
    border-radius: 12px;
    border: 2px solid #03826B;
    background: #FBF8E8;
    color: #03826B;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
    margin-bottom: 0;
}


.user-form .field--name-field-user-image input[type="file"].form-file+label svg,
.user-form .field--name-field-user-image label[for*="upload"] svg {
    width: 16px;
    height: 16px;
    fill: currentColor;
}


/* File card styling */
.user-form .field--name-field-user-image .file {
    padding: 10px;
}

.user-form .field--name-field-user-image .file .card-title {
    font-size: 14px;
    margin-bottom: 0;
}

.user-form .field--name-field-user-image .file .card-title a {
    color: #03826B;
    text-decoration: none;
}

.user-form .field--name-field-user-image .file .card-title a:hover {
    text-decoration: underline;
}

/* Remove button styling */
.user-form .field--name-field-user-image input[name*="remove-button"] {
    margin-top: 12px;
    padding: 10px 20px;
    border-radius: 12px;
    border: 2px solid #dc3545;
    background: transparent;
    color: #dc3545;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
}

.user-form .field--name-field-user-image input[name*="remove-button"]:hover {
    background: #dc3545;
    color: #FFF;
}

/* Description text styling */
.user-form .field--name-field-user-image .description {
    margin-top: 8px;
    color: rgba(0, 0, 0, 0.6);
    font-size: 12px;
    line-height: 18px;
}

.user-form .btn-outline-danger {
    border-radius: 62px;
}

.user-image-wrapper {
    width: 40px;
    height: 40px;
}

.user-image-wrapper img {
    object-fit: cover;
    width: 100%;
    height: 100%;
    border-radius: 40px;
}

.username-header {
    display: flex;
}

.username-header {
    display: flex;
    gap: 12px;
    align-items: center;
    margin-bottom: 30px;
}

.empty-search-result {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-bottom: 50px;
}

.empty-search-result img {
    max-width: 200px;
    height: auto;
}

.empty-search-result p {
    color: #000;
    text-align: center;
    font-size: 20px;
    font-style: normal;
    font-weight: 500;
    line-height: 24px;
    margin: 40px 0;
    max-width: 314px;
}

.empty-search-result a {
    color: #03826B;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 22px;
    text-decoration: none;
    border-radius: 43px;
    border: 2px solid #03826B;
    width: 170px;
    text-align: center;
    padding: 10px;
}

.green-text {
    color: #016050;
}

.orange-text {
    color: #ED6F2B;
}

iframe {
    max-width: 100%;
}

.geolocation-problem h1 {
    color: #016050;
    text-align: center;
    font-size: 30px;
    font-style: normal;
    font-weight: 700;
    line-height: 30px;
    padding-top: 30px;
}

.geolocation-problem h2 {
    color: #016050;
    font-size: 25px;
    font-style: normal;
    font-weight: 700;
    line-height: 23px;
}

.geolocation-problem a {
    overflow: hidden;
    color: #03826B;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 20px;
}

.geolocation-problem ul {
    list-style: unset;
    padding-left: 2rem;
}

.geo-help-box {
    margin: 40px 0;
}

.offcanvas-user-greeting p {
    color: #03826B;
    text-align: right;
    font-family: Roboto;
    font-size: 22px;
    font-style: normal;
    font-weight: 700;
    line-height: 74px;
}

.offcanvas-user-greeting {
    margin-bottom: -30px;
}

.iub__us-widget {
    display: none !important;
}

a.btn-buy-percorso {
    margin-top: 30px;
}

.field--entity-commerce-product-variation a {
    display: none !important;
}

/* Page loader (tappa / percorsi-mappa pages) */
#page-loader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: white;
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 9999;
}

#page-loader img {
    width: 185px;
}

a.link--previous {
    display: none !important;
}