:root {
    --primary: #1d376d;
    /* --pse: #1E9DBB; */
    --pse: #007994;
    /* --cvt: #1FBD70; */
    --cvt: #008945;
    --c_title: #1d376d;
}

.text-justify {
    text-align: justify;
}

.colore-primary {
    color: var(--primary);
}

.colore-pse {
    color: var(--pse);
}

.colore-cvt {
    color: var(--cvt);
}

.colore-tit {
    color: var(--c_title);
}

.border-primary {
    border-color: var(--primary) !important;
}

.border-pse {
    border-color: var(--pse) !important;
}

.border-cvt {
    border-color: var(--cvt) !important;
}

.btn-primary {
    border-color: var(--primary) !important;
    background-color: var(--primary) !important;
}

.btn-pse {
    border-color: var(--pse) !important;
    background-color: var(--pse) !important;
}

.btn-cvt {
    border-color: var(--cvt) !important;
    background-color: var(--cvt) !important;
}

.btn-primary:hover {
    border-color: var(--pse) !important;
    background-color: var(--pse) !important;
}

.border-bottom-dashed {
    border-left: 0;
    border-top: 0;
    border-right: 0;
    border-style: dashed !important;
}

.background-primary {
    background-color: var(--primary) !important;
}

.background-pse {
    background-color: var(--pse) !important;
}

.background-cvt {
    background-color: var(--cvt) !important;
}

.px-row-backg {
    padding-left: calc(var(--bs-gutter-x) * .5);
    padding-right: calc(var(--bs-gutter-x) * .5);
}

.column-count-2 {
    column-count: 2;
}

.box-shadow-focus-0:focus {
    box-shadow: none !important;
}

/* JCH optimize */
.owl-carousel .owl-item img.jch-lazyload {
    width: 1px;
    height: 1px;
}

/* Pagina full width */
body.fullwidth #sp-main-body>.container {
    max-width: 100%;
    width: 100%;
    padding-right: 0;
    padding-left: 0;
    margin-right: auto;
    margin-left: auto;
}

body.fullwidth #sp-main-body>.container>.container-inner>.row {
    margin-right: 0;
    margin-left: 0;
}

body.fullwidth #sp-main-body>.container>.container-inner>.row>.col-lg-12 {
    padding-right: 0;
    padding-left: 0;
}

/* Pagina landing */
body.landing .sticky-header-placeholder,
body.landing #sp-header-topbar,
body.landing #sp-header,
body.landing #sp-percorso,
body.landing #sp-section-3,
body.landing #sp-footer,
body.landing #sp-sub-footer {
    display: none !important
}

/* Body padding 0 */
body.pbody-0 #sp-main-body {
    padding: 0;
}

.article-details .article-can-edit {
    display: none !important;
}

/* Header */
#sp-header {
    background: transparent;
}

#sp-header.header-sticky {
    background: #f2f2f2;
    border-bottom: 3px solid #1e9ebb;
    height: 41px;
}

#sp-header-topbar {
    padding: 15px 0;
}

#sp-header-topbar .container-inner {
    border-bottom: none;
}

#sp-header.lg-header {
    box-shadow: none;
}

#sp-header .container-inner {
    background: #f2f2f2;
    border-bottom: 3px solid var(--pse);
}

@media (max-width:414px) {
    #mod-custom139 {
        background: transparent !important;
        padding: 0 10px !important;
        margin-left: 0 !important;
    }

    #mod-custom139 a {
        color: var(--pse) !important;
    }

    #sp-header .mod-finder__search input {
        max-width: 130px !important;
    }
}

@media (max-width:360px) {
    #sp-header .mod-finder__search input {
        max-width: 80px !important;
    }
}

@media (max-width:1199px) {
    #sp-header .mod-finder__search input {
        max-width: 100px;
    }
}

#sp-header form.mod-finder {
    margin-bottom: 0;
}

.sp-megamenu-parent {
    margin: 0 !important;
}

#sp-contact span.telefono,
#sp-intestazione-dx h3 {
    font-size: 20px;
    font-weight: 500;
}

#sp-contact :not(.icone-social) a {
    color: #3E3EA7;
}

@media (max-width: 991px) {
    #sp-header.lg-header #offcanvas-toggler.mega {
        display: flex !important;
    }

    #sp-header-topbar {
        margin: 0 !important;
        padding: 10px 0 !important;
    }
}

/* Menu */
.menu-servizi .sp-dropdown-mega {
    left: -15px !important;
    right: unset !important;
}

.sp-megamenu-parent>li>a,
.sp-megamenu-parent>li.active>a,
.sp-megamenu-parent>li>span,
.sp-megamenu-parent .sp-dropdown li.sp-menu-item>a,
.sp-megamenu-parent .sp-dropdown li.sp-menu-item.active>a {
    font-weight: 600;
    text-transform: uppercase;
}

.sp-megamenu-parent>li.active>a,
.sp-megamenu-parent>li.active:hover>a,
.sp-megamenu-parent>li:hover>a,
.sp-megamenu-parent .sp-dropdown li.sp-menu-item.active>a,
.sp-megamenu-parent .sp-dropdown li.sp-menu-item>a:hover {
    color: var(--pse);
}

header nav .sp-dropdown-mega.sp-menu-full {
    z-index: 999;
}

.menunav .h3 {
    color: var(--pse);
    font-size: 18px !important;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: normal;
}

.menunav ul {
    list-style-type: none;
    padding: 0;
}

.menunav ul li {
    font-size: 15px;
    border-bottom: 1px solid #e8e8e8;
}

.menunav ul li a {
    line-height: 24px;
    display: block;
}

.menunav .col-md-6 ul,
footer .col-md-6 ul {
    column-count: 3;
}

.menunav ul li a:before {
    font-family: "Font Awesome 6 Free";
    content: "\f105";
    font-weight: 900;
    margin-right: 8px;
}


.offcanvas-menu .menu-parent .menu-child {
    display: block !important;
    margin-bottom: 0px !important;
}

.offcanvas-menu .menu-parent .menu-toggler {
    display: none !important;
}

.offcanvas-menu .offcanvas-inner {
    padding: 0 25px 0 25px;
}

.offcanvas-menu .offcanvas-inner ul.menu li.active a {
    color: var(--pse);
    opacity: 1;
}


.mapgradient1 {
    background: rgb(255, 255, 255);
    background: -moz-linear-gradient(135deg, rgba(255, 255, 255, 0) 25%, rgba(100, 101, 143, 1) 85%, rgba(100, 101, 143, 1) 100%);
    background: -webkit-linear-gradient(135deg, rgba(255, 255, 255, 0) 25%, rgba(100, 101, 143, 1) 85%, rgba(100, 101, 143, 1) 100%);
    background: linear-gradient(135deg, rgba(255, 255, 255, 0) 25%, rgba(100, 101, 143, 1) 85%, rgba(100, 101, 143, 1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff", endColorstr="#64658f", GradientType=1);
    width: 145px;
    height: 38px;
    transform: translateX(60px);
    z-index: 0;
    margin-right: -20px;
}

.mapgradient1+.moduletable.sp-module {
    z-index: 1;
}

#mod-custom139 {
    background: rgb(255, 255, 255);
    background: -moz-linear-gradient(315deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 20%, rgba(24, 126, 149, 1) 20%, rgba(24, 126, 149, 1) 80%, rgba(255, 255, 255, 0) 80%, rgba(255, 255, 255, 0) 100%);
    background: -webkit-linear-gradient(315deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 20%, rgba(24, 126, 149, 1) 20%, rgba(24, 126, 149, 1) 80%, rgba(255, 255, 255, 0) 80%, rgba(255, 255, 255, 0) 100%);
    background: linear-gradient(315deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 20%, rgba(24, 126, 149, 1) 20%, rgba(24, 126, 149, 1) 80%, rgba(255, 255, 255, 0) 80%, rgba(255, 255, 255, 0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff", endColorstr="#ffffff", GradientType=1);
    padding: 0 48px;
    height: 38px;
    z-index: 1;
    align-items: center;
    display: flex;
}

#mod-custom139 a {
    color: #ffffff;
}

/* Home */
.blocchi-centro img {
    max-width: 100px;
}

.home-blocks .owl-carousel .owl-nav {
    position: absolute !important;
    margin-top: 0 !important;
    top: -43px !important;
    right: 0 !important;
    color: var(--primary) !important;
    transform: unset !important;
    width: auto !important;
    visibility: visible !important;
}

.home-blocks .owl-carousel .owl-nav .owl-prev {
    margin-right: 20px;
}

@media (max-width: 767px) {
    .home-blocks .owl-carousel .owl-nav {
        top: -38px !important;
    }

    .home-blocks .owl-carousel .owl-nav .owl-prev::before,
    .home-blocks .owl-carousel .owl-nav .owl-next::after {
        font-size: 20px !important;
    }
}

.servizi .h5 {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 70px;
}

@media (max-width: 991px) {
    .servizi .owl-stage-outer {
        display: flex !important;
        justify-content: center !important;
        overflow: unset !important;
        -webkit-transform: none !important;
    }

    .servizi .owl-stage {
        --bs-gutter-x: 1.5rem;
        --bs-gutter-y: 0;
        display: flex;
        flex-wrap: wrap;
        margin-top: calc(-1 * var(--bs-gutter-y));
        margin-right: calc(-.5 * var(--bs-gutter-x));
        margin-left: calc(-.5 * var(--bs-gutter-x));
        width: 100% !important;
        transform: unset !important;
        transition: unset !important;
        flex-direction: column !important;
    }

    .servizi .owl-stage .owl-item {
        padding-right: calc(var(--bs-gutter-x) * .5);
        padding-left: calc(var(--bs-gutter-x) * .5);
        width: 100% !important;
        margin: 0 0 calc(var(--bs-gutter-x)) 0 !important;
        -ms-touch-action: none;
        touch-action: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
    }

    .servizi .owl-item.cloned,
    .servizi .owl-nav {
        display: none !important;
    }
}

@media (min-width: 576px) and (max-width: 991px) {
    .servizi .owl-stage {
        flex-direction: row !important;
    }

    .servizi .owl-stage .owl-item {
        flex: 0 0 auto !important;
        width: 50% !important;
    }
}

/* Pagine */
#sp-main-body {
    padding: 50px 0;
}

/* Pagina vista blog Medici specialisti */
.body-innerwrapper {
    overflow: unset !important;
}


@media (min-width: 992px) {
    #lista-medici .card-header {
        pointer-events: none;
    }

    #lista-medici .accordion-button::after {
        display: none;
    }

    #offcanvas-toggler {
        display: none !important;
    }
}

#menu-servizi {
    z-index: 1;
}

#menu-servizi ul.menu-list {
    column-count: 2;
    padding: 0;
    list-style: none;
}

#menu-servizi .accordion-button:not(.collapsed) {
    box-shadow: none !important;
    color: var(--primary);
    background-color: #f5f5f5;
    border-color: #ddd;
    font-weight: bold;
}

#menu-servizi ul.menu-list {
    font-size: 15px;
}

#menu-servizi ul.menu-list li:not(:last-child) {
    border-bottom: 1px solid #ddd;
    line-height: 25px;
}

#menu-servizi ul.menu-list li i {
    font-size: 12px;
}

#menu-servizi ul.menu-list li {
    break-inside: avoid-column;
}

#menu-servizi ul.menu-list li,
#menu-servizi ul.menu-list li a {
    color: #333;
}

#menu-servizi ul.menu-list li:hover,
#menu-servizi ul.menu-list li:hover a {
    color: var(--pse);
}

@media (min-height: 600px) and (max-height: 799px) {
    #menu-servizi ul.menu-list li {
        line-height: 18px;
        font-size: 12px;
    }
}

/* Pagina articolo Medico*/
.img-doc {
    border: 6px solid #12a0bf;
    border-radius: 4px;
}

/* Servizio */
body.servizio-singolo.view-category main .category-desc ul {
    line-height: 40px;
    column-gap: 30px;
    list-style: none;
    padding: 0;
}

@media (min-width: 576px) {
    body.servizio-singolo.view-category main .category-desc ul {
        column-count: 2;
    }

    body.servizio-singolo.view-category main .category-desc ul li {
        break-inside: avoid-column;
    }
}

body.servizio-singolo.view-category main .category-desc ul li {
    border-bottom: 1px solid #e6e6e6 !important;
}

body.servizio-singolo.view-category main .category-desc ul li a::before {
    content: "\f054";
    font-family: "Font Awesome 6 Free";
    font-weight: 600;
    display: inline-block;
    margin-right: 10px;
}

body.servizio-singolo.view-category main .category-desc ul li>a {
    display: block;
    color: unset !important;
    padding: 0 15px;
}

body.servizio-singolo.view-category main .category-desc ul li>a:focus,
body.servizio-singolo.view-category main .category-desc ul li>a:hover {
    text-decoration: none;
    background-color: #eee;
}

body.servizio-singolo.view-category main .category-desc ul li i,
body.servizio-singolo.view-category main .category-desc ul li a::before {
    font-size: 12px;
    margin-right: 10px;
}

body.servizio-singolo.view-category .info-prenotazioni {
    z-index: 9;
}

@media (min-width: 992px) {
    #mod-custom109 {
        top: -200px;
    }
}

/* FAQ collapse */
#faq .accordion-button:not(.collapsed) {
    box-shadow: none !important;
}

#faq .accordion-button {
    font-size: 18px;
}

#faq .accordion-button {
    background-image: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"%3E%3Cpath fill="rgba(30, 157, 187, 1)" d="M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 448c-110.532 0-200-89.431-200-200 0-110.495 89.472-200 200-200 110.491 0 200 89.471 200 200 0 110.53-89.431 200-200 200zm107.244-255.2c0 67.052-72.421 68.084-72.421 92.863V300c0 6.627-5.373 12-12 12h-45.647c-6.627 0-12-5.373-12-12v-8.659c0-35.745 27.1-50.034 47.579-61.516 17.561-9.845 28.324-16.541 28.324-29.579 0-17.246-21.999-28.693-39.784-28.693-23.189 0-33.894 10.977-48.942 29.969-4.057 5.12-11.46 6.071-16.666 2.124l-27.824-21.098c-5.107-3.872-6.251-11.066-2.644-16.363C184.846 131.491 214.94 112 261.794 112c49.071 0 101.45 38.304 101.45 88.8zM298 368c0 23.159-18.841 42-42 42s-42-18.841-42-42 18.841-42 42-42 42 18.841 42 42z"/%3E%3C/svg%3E');
    background-repeat: no-repeat;
    background-size: 1.25rem;
    background-position: top 16px left 0px;
    padding: 1rem 1.25rem 1rem 2.2rem;
}

#faq .accordion-body {
    background-image: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"%3E%3Cpath fill="%23bbbbbb" d="M464 32H48C21.49 32 0 53.49 0 80v352c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V80c0-26.51-21.49-48-48-48zm-6 400H54a6 6 0 0 1-6-6V86a6 6 0 0 1 6-6h404a6 6 0 0 1 6 6v340a6 6 0 0 1-6 6zm-42-92v24c0 6.627-5.373 12-12 12H204c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h200c6.627 0 12 5.373 12 12zm0-96v24c0 6.627-5.373 12-12 12H204c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h200c6.627 0 12 5.373 12 12zm0-96v24c0 6.627-5.373 12-12 12H204c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h200c6.627 0 12 5.373 12 12zm-252 12c0 19.882-16.118 36-36 36s-36-16.118-36-36 16.118-36 36-36 36 16.118 36 36zm0 96c0 19.882-16.118 36-36 36s-36-16.118-36-36 16.118-36 36-36 36 16.118 36 36zm0 96c0 19.882-16.118 36-36 36s-36-16.118-36-36 16.118-36 36-36 36 16.118 36 36z"/%3E%3C/svg%3E');
    background-repeat: no-repeat;
    background-size: 1.25rem;
    background-position: top 20px left 0px;
    padding: 1rem 1.25rem 1rem 2.2rem;
}


/* Owl carousel */
.reparto .owl-theme .owl-nav {
    position: absolute;
    margin-top: 0;
    top: -50px;
    right: 0;
    color: var(--primary);
    transform: unset !important;
    width: auto !important;
    visibility: visible;
}

.reparto .owl-theme .owl-nav [class*="owl-"]:hover {
    background-color: transparent;
    color: var(--pse);
}

.reparto .item div {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
}

.reparto .owl-carousel .owl-nav .owl-prev::before,
.reparto .owl-carousel .owl-nav .owl-next::after {
    display: none !important;
}

/* Recensioni */
.rating {
    display: inline-block;
    position: relative;
}

.rating .fas.fa-star.icon {
    font-size: 40px;
    padding: 0 7px;
}

.rating label {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    cursor: pointer;
}

.rating label:last-child {
    position: static;
}

.rating label:nth-child(1) {
    z-index: 5;
}

.rating label:nth-child(2) {
    z-index: 4;
}

.rating label:nth-child(3) {
    z-index: 3;
}

.rating label:nth-child(4) {
    z-index: 2;
}

.rating label:nth-child(5) {
    z-index: 1;
}

.rating label input {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
}

.rating label .icon {
    float: left;
    color: transparent;
}

.rating label:last-child .icon {
    color: #f8f9fa;
    text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.5);
}

.rating:not(:hover) label input:checked~.icon,
.rating:hover label:hover input~.icon {
    color: #ffc107;
}

.rating label input:focus:not(:checked)~.icon:last-child {
    color: #000;
    text-shadow: 0 0 5px #09f;
}

@media (max-width:575px) {
    .rating .fas.fa-star.icon {
        font-size: 32px;
    }
}

/* Cerca */
ul[id^="awesomplete_list"] {
    display: none;
}

/* Form contatti */
div[id^="g-recaptcha-"]>div {
    margin: 0 auto;
}

/* WhatsApp button */
.whatsapp-bt {
    z-index: 9;
    position: fixed;
    bottom: 25px;
    right: 25px;
    border-radius: 60px;
    box-shadow: 0px 0px 2px #888;
    padding: 0.5em 0.6em;
    background: #25d366;
    color: #fff;
    font-size: 30px;
}

/* Footer */
#sp-footer {
    padding-right: calc(var(--bs-gutter-x) * .5);
    padding-left: calc(var(--bs-gutter-x) * .5);
}

#sp-footer .container-inner {
    border: 0 !important;
    padding: 0 !important;
}

footer ul {
    text-transform: uppercase;
    font-size: 12px;
    line-height: 25px;
    padding: 0;
    list-style: none;
}

footer ul:not(.social-icons) li::before {
    font-family: 'Font Awesome 6 Free';
    content: "\f054";
    font-weight: 600;
    padding-right: 5px;
    font-size: 8px;
}

footer ul li:hover,
footer ul li:hover a {
    color: var(--pse) !important;
}

footer .h3,
footer .h5 {
    position: relative;
    font-size: 17px;
    text-transform: uppercase;
    padding-bottom: 8px;
    margin-bottom: 12px;
}

footer .h3::after,
footer .h5::after {
    background: var(--pse);
    width: 100px;
    height: 2px;
    content: "";
    position: absolute;
    bottom: 0px;
    left: 0;
}

/* Sub Footer */
#sp-sub-footer a {
    color: #1e9dbb;
}

#sp-sub-footer a:hover {
    color: #156477;
}
