@import url('https://fonts.googleapis.com/css2?family=Josefin+Sans:ital,wght@0,100..700;1,100..700&display=swap');

:root{
    --sfondo-menu: rgba(0,0,0,.75);
    /* --bgc-card: #212123; */
    --bgc-card: transparent;
    --bgc-nero: #000000;
    --bg-semitransparent: rgba(0,0,0,.85);
    --bg-red: #ed0a0a;
    --bgc-rosso: #ed0a0a;
    --red-standard: #d40303;
    --red-suNero: #ef6141;
    --bs-btn-bg: #ff0000 !important;
    --bg-dark: #0e0e0e !important;
}
.testo-rosso{ 
    color: var(--red-standard);
}

/* GENERAL */

html, body {
    height: 100%;
}
body {
    width: 100vw;
    padding: 0 !important;
    overflow-x: hidden !important;
    background-color: #000000 !important;
}
:target::before {
    content: "";
    display: block;
    height: 87px;
    margin: -87px 0 0 0;
}
*:focus {
    box-shadow: none !important;
}
.empty {
    display: grid !important;
    place-content: center !important;
    /* min-height: 400px; */
    min-height: 100px;
    margin: 100px auto 0 auto;
}
.empty_lower {
    display: grid !important;
    place-content: center !important;
    min-height: 400px;
    margin: 0 auto;
}
.empty_inner {
    display: grid !important;
    place-content: center !important;
    min-height: 300px;
    margin: 100px auto -100px auto;
    width: 94%;
}
.empty.empty-low {
    margin: 20px 0;
}
#scrollToTop {
    position: fixed;
    bottom: 0;
    width: 50px;
    height: 50px;
    background-color: #ff0000  ;
    font-size: 25px;
    text-align: center;
    padding: 5px 15px;
    color: #ffffff;
    transition: .45s linear all;
    cursor: pointer;
    opacity: 0;
    z-index: 999 !important;
}
.scrollToTop_scrolled {
    opacity: 1 !important;
}
#scrollToTop:hover {
    background-color: #ffffff;
    color: #ff0000;
    transition: .45s linear all;
}
.ripple-surface {
    display: block !important;
}
.sitemap_dot {
    position: fixed;
    top: 5px;
    left: 5px;
    z-index: 99999999 !important;
}
.sticky-top {
    top:80px;
}
.modal-dialog.modal-frame.modal-top {
    width: 100% !important;
    max-width: unset;
    border-radius: 0;
    top: 0;
    margin: 0 auto;
}
.modal-content {
    border-radius: 0 !important;
}
.modal button.btn-close {
    /* position: absolute;
    right: 20px;
    width: 40px;
    height: 40px;
    opacity: 1;
    background: red;
    color: #ffffff;
    padding: 0;
    border-radius: 0; */
}

.modal-open .modal {
    overflow-x: hidden;
    /*overflow-y: scroll;*/
}
.modal-open .fixed-top, .modal-open .fixed-top .container {
    padding-right: 0 !important;
}
.modal-open nav#main_navbar {
    padding-right: 0 !important;
}
.modal-header.text-center.justify-content-center {
    position: fixed;
    z-index: 111;
    left: 0;
    top: 0;
    width: calc(100% - 17px);
    background: #030303;
    border-radius: 0;
    transition: none;
}
.modal-body {
    margin-top: 75px;
}
.alphabet_wrapper {
    line-break: anywhere !important;
}
#open_filter {
    display: none;
}
.gallery_image {
    cursor: pointer;
    position: relative;
    display: inline;
}
.gallery_image_off {
    cursor: default;
    position: relative;
    display: inline;
}
hr {
    margin: .7rem 0;
}
.hairstylists_scrolling {
    position: relative;
    margin: 0 auto;
    z-index: 111;
}
img.lazy.m-2.p-2.border.border-light.img-fluid {
    cursor: pointer !important;
}
.container-fluid:not(.navbar-container-fluid) {
    overflow-x: hidden;
}
#home {
    overflow: hidden;
}
.clsPaginatoreContenitorePrincipale a.clsPaginatoreCasellaSelezionata {
    border-radius: 0 !important;
}
.clsPaginatoreContenitorePrincipale a:hover:not(.clsPaginatoreCasellaSelezionata) {
    background-color: #ddd;
    border-radius: 0 !important;
}
.offcanvas_btn {
    position: fixed;
    top: 40px;
    right: 40px;
    width: 50px;
    height: 50px;
    line-height: 50px;
    z-index: 999;
    transition: .3s linear all;
}
.offcanvas_btn:hover {
    background-color: #ffffff !important;
    color: #ff0000 !important;
    transition: .3s linear all;
}
.img-link {
    position: relative;
    width: fit-content;
    float: none;
    display: inline-block;
}
/*
.img-link::before {
    content: "\f0c1";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    position: absolute;
    color: #ffffff;
    background-color: rgba(0,0,0,.7);
    border-radius: 50%;
    width: 50px;
    height: 50px;
    font-size: 20px;
    text-align: center;
    line-height: 50px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
    border-radius: 50%;
}
*/
.breadcrumb-conatiner {
    position: relative;
    min-height: 20vh;
    margin-top: 97px !important;
}
.border-light {
    border-color: rgba(255,255,255,.25) !important;
}
.previous-next-btn {
    min-width: 90px;
    opacity:  1;
}
.previous-next-btn:hover {
    background-color: #cc0000 !important;
    color:#ffffff !important;
}

/* TYPOGRAPHY */

h1, h2, h3, h4, h5, h6, p {
    font-family: "Josefin Sans", sans-serif !important;
}
h1.fs-1 {
    font-size: 3rem !important;
}
h2.text-white.mb-0 {
    font-size: 1.5rem;
}
h2.text-white a {
    color: #ff0000;
    font-size: 1rem;
    vertical-align: middle;
    transition: .3s linear all;
}
h2.text-white a:hover {
    color: #ffffff;
    transition: .3s linear all;
}
.fa-long-arrow-alt-right {
    opacity: 0;
    animation: arrowFade 2s infinite;
}
@keyframes arrowFade {
    0% {
        opacity: 0;
    }
    50% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}
p.text-uppercase.fw-normal.alphabet.bg-dark-semitransparent.mb-0 {
    background: rgba(0, 0, 0, .85);
}
a.page-link {
    font-size: calc(1.3rem + .6vw) !important;
    border-radius: 0 !important;
    color: #ffffff;
}
li.page-item.active {
    background-color: #212121 !important;
}
.page-item.active a.page-link {
    font-size: calc(1.3rem + .6vw) !important;
    background-color: #212121 !important;
    z-index: 3;
    color: #ffffff !important;
    border-color: #ffffff !important;
}
a.page-link:hover {
    border-radius: 0 !important;
}
h5.alphabet a {
    font-size: 26px;
    background: #ffffff;
    color: #212121;
    font-weight: 600;
    text-align: center;
    width: 34px !important;
    height: 34px;
    padding-top: 5px;
    transition: .3s linear all;
    margin: 5px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 34px;
}
h5.alphabet a:hover {
    background: #212121;
    color: #ffffff;
    transition: .3s linear all;
}
h5.alphabet a.active {
    font-size: 26px;
    background: #212121;
    color: #ffffff;
    font-weight: 600;
    text-align: center;
    width: 34px !important;
    height: 34px;
    padding-top: 5px;
    transition: .3s linear all;
    margin: 5px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 34px;
}
h5.alphabet a.active:hover {
    background: #ffffff;
    color: #212121 !important;
    transition: .3s linear all;
}
.modal-body a:hover {
    color: #ffffff;
    transition: .3s linear all;
}
span.icon-first, span.icon-last {
    font-size: 1.5rem;
}
h5.alphabet a.letteraOFF {
    background: rgba(255,255,255,.5) !important;
    color: #575757 !important;
    width: 30px !important;
    padding: 0 5px;
    margin: 0 2px;
    pointer-events: none;
    cursor: default;
}
p.hoverParagraphText:hover {
    transition: .3s linear all;
}
p.hoverParagraphText:hover {
    color: #ff0000 !important;
    transition: .3s linear all;
}
.page-footer a, .page-footer i {
    color: #ff0000 !important;
}
a:hover {
    color: #ff0000 !important;
}
h2.letter_page {
    width: max-content;
    float: none;
    margin: 0 auto;
}
i.fa-solid.fa-arrow-right {
    display: none;
}
#contatti i.fab.fa-facebook-square.fa-lg, #contatti i.fab.fa-instagram-square.fa-lg {
    font-size: 3rem;
    margin-top: 20px;
    margin-left: 6px;
    margin-right: 6px;
}
a:hover {
    color: #ffffff !important;
}

/* SCROLL DOWN */

#scroll-down {
    display: block;
    position: relative;
    padding-top: 79px;
    text-align: center;
}
.arrow-down {
    display: block;
    margin: 0 auto;
    width: 10px;
    height: 38px;
}
.arrow-down:before {
    content: '';
    display: block;
    margin: 0;
    padding: 0;
    width: 8px;
    height: 8px;
    border-top: 2px solid #ff0000;
    border-right: 2px solid #ff0000;
    transform: rotate(135deg);
}
#scroll-title {
    text-transform: uppercase;
    color: #ff0000;
    font-family: Helvetica Neue, Helvetica, Arial;
    font-size: 14px;
    font-weight: bold;
    letter-spacing: 0.1em;
}
#scroll-down::after {
    /*animation: elasticus 1.2s cubic-bezier(1, 0, 0, 1) infinite;*/
    position: absolute;
    top: -3px;
    left: 50%;
    margin-left: -2px;
    width: 2px;
    height: 90px;
    background: #ff0000;
    content: ' ';
}
/*@keyframes elasticus {
    0% {
        transform-origin: 0% 0%;
        transform: scale(1, 0);
    }
    50% {
        transform-origin: 0% 0%;
        transform: scale(1, 1);
    }
    50.1% {
        transform-origin: 0% 100%;
        transform: scale(1, 1);
    }
    100% {
        transform-origin: 0% 100%;
        transform: scale(1, 0);
    }
}*/

/* COLOR SCHEMA */

.bg-black {
    background-color: rgba(0,0,0,.75) !important;
}
.container.bg-semitransparent {
    background-color: var(--bg-semitransparent) !important;
    border: 1px solid rgba(255, 255, 255, .2);
}
.btn-red, button.btn.bg-red.text-white.rounded-0 {
    background: red;
    background-color: var(--bg-red) !important;
    color: #ffffff;
    font-weight: bold;
}
.text-red {
    color: #ff0000;
}
.bg-red, .sticky-top .bg-red {
    background-color: #ff0000;
}
p a, #contatti a, footer a {
    color: #ff0000;
    transition: .3s linear all;
}
p.alphabet a:hover, #contatti a:hover, footer a:hover {
    color: #ffffff;
    transition: .3s linear all;
}
.waves-effect.waves-wahite .waves-ripple {
    background-color: rgba(255,255,255,1);
}
button#btnSearch {
    margin: 0 auto !important;
    height: 36px;
}
button#btnSearch:active,button#btnSearch:focus {
    background-color: #5a5a5a;
    color: #ffffff;
}
button.btn.bg-red.text-white.rounded-0.ripple-surface {
    background-color: var(--bg-red) !important;
    color: #ffffff;
    border: none !important;
}
input[type="search"].form-control {
    outline: 1px solid #ffffff;
    height: 36px;
}
input[type="search"].form-control:focus {
    outline: none;
    box-shadow: none !important;
}
.input-group .form-outline:not(:last-child), .input-group .form-outline:not(:last-child) .form-notch-trailing, .form-notch .form-notch-middle, .form-notch .form-notch-leading {
    border-radius: 0 !important;
}
.hairstylists-search {
    border-top: 1px solid #ff0000 !important;
    border-bottom: 1px solid #ff0000 !important;
    border-left: 1px solid #ff0000 !important;
}
.form-outline .form-control:focus~.form-notch .form-notch-leading {
    border-top: 1px solid #ff0000 !important;
    border-bottom: 1px solid #ff0000 !important;
    border-left: 1px solid #ff0000 !important;
    border-radius: 0 !important;
}
.form-outline .form-control:focus~.form-notch .form-notch-middle {
    border-bottom: 1px solid;
    border-color: #ff0000;
    border-radius: 0 !important;
}
.form-outline .form-control:focus~.form-notch .form-notch-trailing {
    border-top: 1px solid #ff0000;
    border-bottom: 1px solid #ff0000;
    border-right: 1px solid #ff0000;
    border-radius: 0 !important;
}
.form-outline .form-control~.form-label {
    /*color: #ff0000 !important;
    background: #000000;
    padding: 0 3px 0 5px;*/
    display: block;
    transition: .2s linear all;
}
.form-outline .form-control:focus~.form-notch {
    /*color: #ff0000 !important;
    background: #000000;
    padding: 0 3px 0 5px;*/
    display: block;
    transition: .2s linear all;
}
.form-outline .form-control:focus~.form-label, .form-outline .form-control:focus~.form-notch {
    /*color: #ff0000 !important;
    background: #000000;
    padding: 0 3px 0 5px;*/
    display: none;
    transition: .2s linear all;
}
.form-outline .form-control.active~.form-label, .form-outline .form-control:focus~.form-label {
    transform: none !important;
}
a.btn.btn-dark.mx-auto.rounded-0.mt-1.ripple-surface {
    width: fit-content;
}
.bg-dark {
    background-color: var(--bg-dark) !important;
}

/* NEW SEARCH FORM */

input.form-control.rounded-0 {
    height: 36px;
    /* border: 1px solid #ff0000;
    outline: 1px solid #ff0000; */
}
input[type="search"].form-control:focus {
    /* outline: 1px solid #ff0000; */
    box-shadow: none !important;
    /* border: 1px solid #ff0000 !important; */
}

/* OFFCANVAS MENU */

.offcanvas:not(#aboutOffcanvas) {
    max-width: 300px;
    z-index: 9999999 !important;
}
.offcanvas-sm .offcanvas-header {
    display: flex;
}
.offcanvas_close_btn {
    width: 50px;
    height: 50px;
    line-height: 40px;
}
ul.list-group.list-group-flush.bg-transparent.list-style-square {
    list-style: square !important;
    color: #ffffff !important;
}
.offcanvas ul li a {
    display: flex;
    align-items: center;
    transition: .3s linear all !important;
}
.offcanvas ul li a:hover {
    color: #ff0000 !important;
    transition: .3s linear all !important;
}
i.fa-sharp.fa-solid.fa-square.small {
    font-size: 8px;
}
.border-light-semitransparent {
    border-color: rgba(255,255,255,.25) !important;
}

/* NAVBAR */

.no-pointer-action {
    pointer-events: none !important;
}
#main_navbar.navbar {
    /* background-color: transparent !important; */
    /*border-bottom: 1px solid rgba(255,255,255,0);*/
    transition: 0s linear all;
    background-color: var(--sfondo-menu);
}
#main_navbar.navbar_scrolled {
    background-color:#000000 !important;
    /*border-bottom: 1px solid rgba(255,255,255,.2);*/
    transition: 0s linear all;
}
.navbar-brand {
    width: 110px;
}
.nav-link {
    /* font-family: 'Roboto Condensed', sans-serif; */
    font-family: "Josefin Sans", sans-serif !important;
}
.navbar .navbar-nav .nav-item .dropdown-menu {
    background-color: rgba(0,0,0,.7);
    padding: 0 !important;
    border-radius: 0;
}
.dropdown-menu>li:first-child, .dropdown-menu>li:first-child .dropdown-item, .dropdown-menu>li:last-child, .dropdown-menu>li:last-child .dropdown-item {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}
.navbar .navbar-nav .nav-item .dropdown-menu a {
    font-family: 'Roboto Condensed', sans-serif;
    color: #ffffff;
    padding: 10px;
    text-align: left;
    font-size: 1rem;
}
.navbar .navbar-nav .nav-item .dropdown-menu a:hover, .navbar .navbar-nav .nav-item .dropdown-menu a.active {
    color: #ff0000 !important;
    background: rgba(255, 255, 255, .6);
}
.dropdown:hover>.dropdown-menu {
    display: block;
}
.dropdown>.dropdown-toggle:active {
    pointer-events: none;
}
.dropdown-menu {
    background-color: #fafafa;
    border-radius: 0 !important;
    border: none;
    z-index: 9999;
}
.navbar_scrolled .dropdown-menu {
    background-color: #262626 !important;
}
.navbar_scrolled .navbar-nav .nav-item .dropdown-menu a {
    font-family: 'Roboto Condensed', sans-serif;
    color: #ffffff;
    padding: 10px;
    text-align: left;
    font-size: 1rem;
}
.nav-item .dropdown-item:hover a:not(.active)::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background: #bfbfbf29;
    display: block;
    transition: .35s linear all
}
a.dropdown-item {
    line-height: 20px;
    vertical-align: middle !important;
}
.navbar_icons_wrapper {
    padding-bottom: 0;
    font-size: 30px !important;
}
.form-control {
    border-radius: 0;
}
.input-group.ms-auto {
    height: 40px;
    margin-top: 4px;
}
.form-outline .form-control~.form-label {
    font-family: 'Roboto Condensed', sans-serif;
    color: #202020 !important;
    font-size: .9rem;
}
.form-outline.w-auto.rounded-0 {
    background: #ffffff;
}
.form-control {
    color: #202020 !important;
}
.input:focus {
    outline: none !important;
    border: 1px solid red !important;
    box-shadow: 0 0 10px #719ECE;
}
.search_btn {
    color: #ffffff !important;
    background-color: #5b5959;
    border-radius: 0;
    width: auto;
    height: 50px;
    font-weight: bold;
    display: none;
}
.search_btn:hover, .search_btn:focus {
    color: #ffffff !important;
    background-color: #505050;
    border-radius: 0;
    width: auto;
    height: 50px;
}
.search_btn .fa-lg {
    font-size: 1.2rem;
    line-height: 25px;
    vertical-align: -0.075em;
    margin-left: -7px;
}
.searchModal.modal-body.pt-0 {
    margin-top: 0;
}
.input-group.position-relative {
    display: inline-table !important;
}
.nav-link{
    color: white !important;
}

/* ANIMATED YOGGLER BUTTON */

button.navbar-toggler {
    position: relative;
    transition: .5s ease-in-out;
    background-color: #ff0000;
    border-radius: 0;
    width: 50px;
    height: 50px;
}
.navbar-toggler, .navbar-toggler:focus, .navbar-toggler:active, .navbar-toggler-icon:focus {
    outline: none;
    box-shadow: none;
    border: 0;
}
.navbar-toggler span {
    margin: 0;
    padding: 0;
}
.toggler-icon {
    position: absolute;
    display: block;
    height: 3px;
    width: 70% !important;
    left: 15%;
    background: #ffffff;
    border-radius: 1px;
    opacity: 1;
    transform: rotate(0deg);
    transition: .25s ease-in-out;
}
.middle-bar {
    margin-top: 0px;
}
.navbar-toggler .top-bar {
    margin-top: 0px;
    transform: rotate(135deg);
}
.navbar-toggler .middle-bar {
    opacity: 0;
    filter: alpha(opacity=0);
}
.navbar-toggler .bottom-bar {
    margin-top: 0px;
    transform: rotate(-135deg);
}
.navbar-toggler.collapsed .top-bar {
    margin-top: -15px;
    transform: rotate(0deg);
}
.navbar-toggler.collapsed .middle-bar {
    opacity: 1;
    filter: alpha(opacity=100);
}
.navbar-toggler.collapsed .bottom-bar {
    margin-top: 15px;
    transform: rotate(0deg);
}
.navbar-toggler.collapsed .toggler-icon {
    background-color: #ffffff;
}

/* INDEX STYLES */

.slogan {
    position: absolute;
    left: 50px;
    top: 50%;
    transform: translateY(-50%);
    width: fit-content;
    z-index: 1;
}
.slogan .img-fluid {
    max-width: 65%;
}
.alphabet_list p a {
    padding-left: 3px;
    padding-right: 3px;
    text-decoration: none;
}
.modal-open .navbar-expand-xl {
    padding-right: 16px !important;
}

a {
    text-decoration: none !important;
}
.lower-gardient-content {
    background: linear-gradient(0deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, .4) 100%);
    z-index: 1;
    display: block;
    width: 100%;
    min-height: 100px; 
}

/* INNER SECTIONS */

#home {
    position: fixed;
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 0;
    display: block;
    object-fit: cover !important;
    box-sizing: border-box;
    filter: contrast(1.2) brightness(90%) saturate(1.2) !important;
    opacity: .5 !important;
    z-index: -1;
}
#collections .container, #contatti .container {
    background-color: rgba(0,0,0,.85);
    border: 1px solid rgba(255,255,255,.2);
}
section#collections {
    margin-top: 0px;
}
section#collections .container.bg-red {
    background-color: #ff0000;
    /* border-bottom: 1px solid rgba(255,255,255,1); */
    filter: drop-shadow(2px 0px 3px rgba(0,0,0,1));
}
.image_container .gallery_image::after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f00e";
    position: absolute;
    top: 50%;
    transform: translateY(-50%) !important;
    left: 50%;
    width: 40px;
    margin-left: -20px;
    align-content: center;
    justify-content: center;
    color: #ffffff;
    filter: drop-shadow(1px 1px 2px rgba(0,0,0,0));
    font-size: 2rem;
    text-align: center;
    z-index: 3;
    display: block;
    opacity: 0;
    transition: .3s linear all;
}
.image_container .gallery_image:hover::after {
    opacity: 1;
    transition: .3s linear all;
}
#all_hairstylists {
    margin-top: 90px;
}
.accordion-button {
    max-height: 36px;
    background-color: #cc0000 !important;
}
.form-check-input[type=checkbox]:checked {
    background-image: none;
    background-color: #cccccc !important;
}
.form-switch .form-check-input:checked[type=checkbox]:after {
    background-color: #cc0000 !important;
}
.accordion-button:focus, .accordion-button:hover {
    background-color: #990000;
}

/* CARDS */

.card_overlay {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    height: 100%;
}

/* BUTTONS */

button.contact_btn {
    font-family: 'Roboto Condensed', sans-serif !important;
    color: #ffffff !important;
    font-weight: bold;
    transition: .3s linear all;
}
button.contact_btn:hover, button.contact_btn:focus {
    background-color: #ffffff;
    color: #cc0000 !important;
    transition: .3s linear all;
}
button.enter_btn {
    font-family: 'Roboto Condensed', sans-serif !important;
    color: #ffffff !important;
    font-size: 1.5rem !important;
    font-weight: bold;
    transition: .3s linear all;
    background-color: var(--bg-red);
    text-decoration: none !important;

}
button.enter_btn:hover, button.enter_btn:focus {
    background-color: #ffffff;
    color: #cc0000 !important;
    transition: .3s linear all;
}
button.be_updated_btn {
    width: 144px;
    font-family: 'Roboto Condensed', sans-serif !important;
    color: #ffffff !important;
    font-size: 1.2rem !important;
    font-weight: bold;
    line-height: 22px;
    float: left;
    transition: .3s linear all;
}
button.be_updated_btn:hover, button.be_updated_btn:focus {
    background-color: #ffffff;
    color: #cc0000 !important;
    transition: .3s linear all;
}

/* LIGHTGALLERY STYLES */

.lg-outer .lg-thumb-outer, .lg-outer .lg-toogle-thumb {
    background-color: #700000;
}
body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-item.lg-complete .lg-object {
    border: 1px solid rgba(255,255,255,.25);
}
.lg-backdrop {
    z-index: 9999;
}
.lg-outer {
    z-index: 99999;
}

/* CONTACT */

#map_main {
    position: relative !important;
    margin: 0 auto;
    width: 100%;
    height: 400px;
    max-height: 400px;
    z-index: 99;
}
.leaflet-touch .leaflet-control-attribution, .leaflet-touch .leaflet-control-layers, .leaflet-touch .leaflet-bar {
    box-shadow: none;
}
.leaflet-bottom.leaflet-right {
    display: none;
}
.leaflet-popup-content {
    margin: 13px 19px;
    line-height: 1.4;
    font-family: Roboto, sans-serif;
    text-align: center;
    color: black;
    font-weight: bold !important;
}
footer p.text-white {
    line-height: .9em;
}
.page-footer .footer-copyright {
    display: block !important;
}
a.leaflet-control-zoom-out, a.leaflet-control-zoom-in {
    color: black !important;
}
footer.page-footer .footer-copyright {
    overflow: hidden;
    height: 50px;
    line-height: inherit;
    color: rgba(255,255,255,.8);
    background-color: rgba(0,0,0,.2);
    text-align: center;
}
.page-footer small {
    color: rgba(255,255,255,.8);
}
.footer-copyright {
    position: absolute;
    width: 100%;
    padding: 0;
}

/* FOOTER */

.footer .navbar .nav {
    margin: 0px auto !important;
    padding: 0;
    height: 20px;
    float: none;
    list-style-type: none;
    text-align: center;
    position: relative;
}

/* BACKGROUND ANIMATION */

.cb-slideshow, .cb-slideshow:after {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
    z-index: 0;
    list-style: none;
    padding: 0;
}
.cb-slideshow:after {
    content: '';
    background: transparent url(https://hairfashion.sm/img/general/pattern.png) repeat top left;
}
.cb-slideshow li span:nth-child(1) {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
    color: transparent;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: none;
    opacity: 0;
    z-index: 0;
	-webkit-backface-visibility: hidden;
}
.cb-slideshow li span:nth-child(2) {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
    color: transparent;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: none;
    opacity: 0;
    z-index: 0;
    -webkit-backface-visibility: hidden;
}
.cb-slideshow li span:nth-child(3) {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
    color: transparent;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: none;
    opacity: 0;
    z-index: 0;
	-webkit-backface-visibility: hidden;
}
.cb-slideshow li:nth-child(1) span {
    background-image:;
    url(https://hairfashion.sm/img/general/img_01.jpg);
    animation: imageAnimation_1 12s linear infinite 0s;
    -webkit-animation: imageAnimation_1 12s linear infinite 0s;
}
.cb-slideshow li:nth-child(2) span {
    background-image: url(https://hairfashion.sm/img/general/img_02.jpg);
    animation: imageAnimation_2 12s linear infinite 0s;
    animation-delay: 4s;
}
.cb-slideshow li:nth-child(3) span {
    background-image: url(https://hairfashion.sm/img/general/img_03.jpg);
    animation: imageAnimation_3 12s linear infinite 0s;
    animation-delay: 8s;
}
.cb-slideshow li div {
    z-index: 1000;
    position: absolute;
    bottom: 40px;
    right: 50px;
    width: 100%;
    text-align: right;
    opacity: 0;
    animation: titleAnimation 12s linear infinite 0s;
}
.cb-slideshow li:nth-child(2) div {
    animation: titleAnimation 12s linear infinite 0s;
    animation-delay: 4s;
}
.cb-slideshow li:nth-child(3) div {
    animation: titleAnimation 12s linear infinite 0s;
    animation-delay: 8s;
}
.cb-slideshow li div h6 {
    font-size: 1rem;
    padding: 0;
    line-height: inherit;
    color: #ffffff;
    margin-bottom: 0;
}

/* Animation for the slideshow images */

@keyframes imageAnimation_1 {
	0% {
	    opacity: 0;
	    animation-timing-function: ease-in;
	}
	8% {
	    opacity: 1;
	    transform: scale(1.05);
	    animation-timing-function: ease-out;
	}
	17% {
	    opacity: 1;
	    transform: scale(1.1);
	}
	25% {
	    opacity: 1;
	    transform: scale(1.1);
	}
    50% {
        opacity: 0;
	    transform: scale(1.1);
    }
	100% { opacity: 0 }
}
@keyframes imageAnimation_2 {
	0% {
	    opacity: 0;
        transform: scale(1) rotate(0deg);
	    animation-timing-function: ease-in;
	}
	8% {
	    opacity: 1;
	    transform: scale(1.05) rotate(0deg);
	    animation-timing-function: ease-out;
	}
	17% {
	    opacity: 1;
	    transform: scale(1.1) rotate(0deg);
	}
	25% {
	    opacity: 1;
	    transform: scale(1.5) rotate(5deg);
	}
    50% {
        opacity: 0;
	    transform: scale(1.8) rotate(10deg);
    }
    75% {
        opacity: 0;
	    transform: scale(2.1) rotate(15deg);
    }
	100% { opacity: 0 }
}
@keyframes imageAnimation_3 {
	0% {
        transform: scale(1.5);
	    opacity: 0;
	    animation-timing-function: ease-in;
	}
	8% {
	    opacity: 1;
	    animation-timing-function: ease-out;
	}
	17% {
	    opacity: 1;
	    transform: scale(1.1);
	}
	25% {
	    opacity: 1;
	    transform: scale(1.1);
	}
    50% {
        opacity: 0;
	    transform: scale(1.1);
    }
	100% { opacity: 0 }
}

/* Animation of slideshow titles */

@keyframes titleAnimation {
	0% {
	    opacity: 0;
	    animation-timing-function: ease-in;
	}
	8% {
	    opacity: 1;
	    animation-timing-function: ease-out;
	}
	17% {
	    opacity: 1;
	}
	25% {
	    opacity: 1;
	}
    50% {
        opacity: 0;
    }
	100% { opacity: 0 }
}

.no-cssanimations .cb-slideshow li span{
    opacity: 1;
}
@media screen and (max-width: 1140px) {
    .cb-slideshow li div h3 { font-size: 100px }
}
@media screen and (max-width: 600px) {
    .cb-slideshow li div h3 { font-size: 50px }
}

/* VIDEO BACKGROUND */

.slider_wrapper {
    position: relative;
    width: 100%;
    margin: 0 auto;
}
.bg-video-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
}
.bg-video-wrapper::after {
    content: '';
    position: fixed;
    left: 0;
    top: 0;
    width: 100vw;
    height: 100vh;
    background-image: url(../../img/general/pattern.png);
    background-repeat: repeat;
    z-index: 0;
}
#bg-video {
    position: fixed;
    width: 100vw;
    height: auto;
    z-index: -1;
}

/* CONTACT US  */

.swal2-popup #swal2-content {
    color: #000000;
}
.swal2-popup span, .swal2-popup small {
    font-family: 'Roboto Condensed';
}
.swal2-popup .swal2-actions {
    align-items: center;
    justify-content: center;
    margin: 0 auto !important;
    z-index: 1;
}
.swal2-popup .swal2-styled:focus {
    outline: 0;
    box-shadow: none !important;
}
.swal2-icon {
    position: relative;
    justify-content: center;
    width: 5em;
    height: 5em;
    margin: 1.25em auto 1.25em;
}
.image-banner {
    padding: 0px;
}
.bigtitle {
    position: fixed;
    top: 30px;
    background: rgba(33, 33, 33, 0.8705882352941177);
    margin-left: -15px;
    padding: 10px;
    font-weight: 300;
}
#contact input[type="text"],
#contact input[type="email"],
#contact input[type="tel"],
#contact input[type="url"],
#contact textarea,
#contact button[type="submit"] {
    font-family: 'Roboto Condensed';
    font-size: .8rem;
    color: #000000;
    font-weight: 600;
}
.swal2-popup .swal2-styled.swal2-confirm {
    display: none !important;
}
.swal2-popup .swal2-styled.swal2-cancel {
    position: absolute;
    top: 20px;
    right: 20px;
    border: 0;
    background: initial !important;
    background-color: transparent !important;
    color: #a1a1a1 !important;
    font-size: 1.5rem !important;
    border-radius: .25rem !important;
    padding: 0 !important;
}
.swal2-popup .swal2-styled.swal2-confirm:hover {
    opacity: 0.8;
    cursor: pointer;
    color: #242424 !important;
}
#contact h3 {
    display: block;
    font-size: 30px;
    font-weight: 300;
    margin-bottom: 10px;
}
#contact h4 {
    margin: 5px 0 15px;
    display: block;
    font-size: 13px;
    font-weight: 400;
}
fieldset {
    border: medium none !important;
    margin: 0 0 10px;
    min-width: 100%;
    padding: 0;
    width: 100%;
}
#contact input[type="text"],
#contact input[type="email"],
#contact input[type="tel"],
#contact input[type="url"],
#contact textarea {
    width: 100%;
    border: 1px solid #ccc;
    background: #FFF;
    margin: 0 0 5px;
    padding: 10px;
}
#contact input[type="text"]:hover,
#contact input[type="email"]:hover,
#contact input[type="tel"]:hover,
#contact input[type="url"]:hover,
#contact textarea:hover {
    -webkit-transition: border-color 0.3s ease-in-out;
    -moz-transition: border-color 0.3s ease-in-out;
    transition: border-color 0.3s ease-in-out;
    border: 1px solid #aaa;
}
.swal2-icon.swal2-info {
    border-color: #ff0000 !important;
    color: #ff0000 !important;
}
.swal2-container.swal2-shown {
    background-color: rgba(0, 0, 0, 0.71) !important;
}
#contact textarea, #lavora textarea {
    height: 100px;
    max-width: 100%;
    resize: none;
}
#contact button[type="submit"] {
    cursor: pointer;
    width: 100%;
    border: none;
    background: #ff0000;
    color: #FFF;
    margin: 0 0 5px;
    padding: 10px;
    font-size: 15px;
}
#contact button[type="submit"]:hover {
    background: #cc0000;
    -webkit-transition: background 0.3s ease-in-out;
    -moz-transition: background 0.3s ease-in-out;
    transition: background-color 0.3s ease-in-out;
}
#contact button[type="submit"]:active {
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.5);
}
.copyright {
    text-align: center;
}
.logo-azienda-desc {
    min-height: 70px;
    max-width: 100%;
    margin-right: 20px;
    float: left;
}
#contact input:focus, #contact textarea:focus {
    outline: 0;
    border: 1px solid #aaa;
}
#contact button[type="button"] {
    cursor: pointer;
    width: 100%;
    border: none;
    background: #ff0000;
    color: #ffffff !important;
    margin: 0 0 5px;
    padding: 10px;
    font-size: 15px;
}
#contact button[type="button"]:hover {
    background: #cc0000;
    color: #ffffff !important;
}
.swal2-popup .swal2-content {
    color: #545454;
    font-size: 1em !important;
    font-weight: 300;
    line-height: normal;
    word-wrap: break-word;
}
a.nav-link.dropdown-toggle {
    text-transform: uppercase;
}
div#browserOutdated {
    position: fixed;
    bottom: 0px;
    left: 0px;
    z-index: 9999999999999;
    color: white;
    font-size: 20px;
    width: 100%;
    background: #333333;
    display:none;
    border-top: 1px solid grey;
    padding:15px;
    text-align: center;
}
div#browserOutdated img{
    width:200px;
}
.closeBanner{
    cursor: pointer;
    position: absolute;
    top: 10px;
    right: 15px;
    color: red;
}
li.separator{
    display: none;
}
#contact select  {
    width: 100%;
    padding: 10px;
    border: 1px solid #cacaca;
    color: #828282;
}
#wrapHairstylists, #wrapHairstylistsNoLink {
    position: fixed;
    overflow-y: auto;
    top: 0;
    width: 100%;
    height: 100vh;
    left: 0;
    background-color: #000000;
    z-index: 999999;
    overflow: auto;
}
#wrapHairstylists.popupON, #wrapHairstylistsNoLink.popupON {
    display: block;
}
#wrapHairstylists.popupOFF, #wrapHairstylistsNoLink.popupOFF {
    display: none;
}
.popupHeader {
    position: fixed;
    width: calc(100% - 17px);
    height: auto;
    background-color: #000000;
    padding: 1.2rem;
    text-align: center;
    z-index: 999999999;
}
.hairstylists_inner {
    position: relative;
    width: 80%;
    margin: 85px auto 0 auto;
    background-color: rgba(255,255,255,.05);
    padding: 2rem;
    text-align: justify;
}
#closePopup, #closePopupDue {
    position: absolute;
    top: 20px;
    right: 20px;
    background: #ff0000;
    padding: 5px 10px;
    color: #ffffff;
    cursor: pointer;
    transition: .3s lienar all;
}
#closePopup:hover, #closePopupDue:hover {
    transition: .3s lienar all;
    background: #ffffff;
    color: #ff0000;
}
#wrapHairstylists p a:hover {
    color: #ffffff;
}

@media (max-width: 500px){
    .hairstylists_inner {
        width: 96%;
    }
}

/* MEDIA */

@media (max-width:1500px){
    .cb-slideshow li:nth-child(1) span {
        background-image: url(https://hairfashion.sm/img/general/img_01_1440.jpg)
    }
    .cb-slideshow li:nth-child(2) span {
        background-image: url(https://hairfashion.sm/img/general/img_02_1440.jpg);
    }
    .cb-slideshow li:nth-child(3) span {
        background-image: url(https://hairfashion.sm/img/general/img_03_1440.jpg);
    }
}
@media (max-width: 1400px){
    .slogan {
        width: fit-content;
    }
    .slogan img.img-fluid {
        max-width: 60%;
    }
    .slogan h1, .slogan h2 {
        font-size: 1.5rem !important;
    }
}
@media (max-width:1300px){
    .slogan {
        width: 40%;
    }
    .slogan img.img-fluid {
        max-width: 70%;
    }
    .cb-slideshow li:nth-child(1) span {
        background-image: url(https://hairfashion.sm/img/general/img_01_1280.jpg)
    }
    .cb-slideshow li:nth-child(2) span {
        background-image: url(https://hairfashion.sm/img/general/img_02_1280.jpg);
    }
    .cb-slideshow li:nth-child(3) span {
        background-image: url(https://hairfashion.sm/img/general/img_03_1280.jpg);
    }
    .slogan img.img-fluid {
        max-width: 90%;
    }
    .search_btn {
        display: block;
    }
    button#btnSearch {
        margin: 20px auto 0 auto !important;
    }
}
@media (max-width: 1200px){
    html {
        scroll-padding-top: 70px !important;
        scroll-behavior: smooth;
    }
    .cb-slideshow li:nth-child(1) span {
        background-image: url(https://hairfashion.sm/img/general/img_01_1100.jpg)
    }
    .cb-slideshow li:nth-child(2) span {
        background-image: url(https://hairfashion.sm/img/general/img_02_1100.jpg);
    }
    .cb-slideshow li:nth-child(3) span {
        background-image: url(https://hairfashion.sm/img/general/img_03_1100.jpg);
    }
    .slogan {
        width: 40%;
    }
    .slogan img.img-fluid {
        max-width: 80%;
    }
    .slogan h1.text-white.fs-2.mt-3.mb-3 {
        font-size: calc(1rem + .9vw)!important;
    }
    button.enter_btn {
        font-size: 1.2rem !important;
    }
    .alphabet_list.mt-3 {
        width: 80% !important;
    }
    h5.alphabet a {
        line-height: 30px;
    }
    .navbar .navbar-nav .nav-item .dropdown-menu a {
        color: #ff0000;
    }
    .modal-dialog.modal-frame.modal-top {
        /*width: calc(100% - 17px) !important;*/
        overflow-x: hidden !important;
    }
    .cb-slideshow li:nth-child(1) span {
        background-image: url(https://hairfashion.sm/img/general/img_01_770.jpg)
    }
    .cb-slideshow li:nth-child(2) span {
        background-image: url(https://hairfashion.sm/img/general/img_02_770.jpg);
    }
    .cb-slideshow li:nth-child(3) span {
        background-image: url(https://hairfashion.sm/img/general/img_03_770.jpg);
    }
    #main_navbar.navbar {
        background-color: rgba(0,0,0,1) !important;
    }
    #main_navbar.navbar.bg-transparent {
        background-color: rgba(0,0,0,.6) !important;
    }
    ul.navbar-nav * {
        text-align: center !important;
    }
    .navbar .navbar-nav .nav-item .dropdown-menu {
        position: relative !important;
        display: block;
        text-align: center !important;
        float: none !important;
        width: 100% !important;
        background-color: transparent !important;
    }
    ul.navbar-nav.d-flex.flex-row.me-1 {
        -webkit-box-orient: vertical !important;
        display: block !important;
        text-align: center;
    }
    li.nav-item.me-3.me-lg-0.navbar_icons_wrapper {
        margin-right: 0 !important;
    }
    .alphabet_list.mt-3 {
        width: 85% !important;
    }
    .input-group.ms-auto {
        justify-content: center;
    }
    img.lazy.m-2.p-2.border.border-light.img-fluid {
        max-width: 12% !important;
    }
    hr {
        margin: .4rem 0;
    }
}
@media (max-width: 1000px){
    img.lazy.m-2.p-2.border.border-light.img-fluid {
        max-width: 17% !important;
    }
}
@media (max-width:600px){
    /* Hero mobile: il video occupa la prima schermata e scorre con la pagina. */
    .upper_content,
    .upper_content .slider_wrapper,
    .upper_content .bg-video-wrapper {
        width: 100vw !important;
        min-height: 100dvh !important;
        height: 100dvh !important;
    }
    .upper_content .bg-video-wrapper {
        position: relative !important;
        inset: auto !important;
        overflow: hidden !important;
    }
    .upper_content #bg-video {
        position: absolute !important;
        inset: 0 !important;
        width: 100% !important;
        height: 100% !important;
        max-width: none !important;
        object-fit: cover !important;
        object-position: center center !important;
        z-index: 0 !important;
    }
    .upper_content .bg-video-wrapper::after {
        position: absolute !important;
        inset: 0 !important;
        width: 100% !important;
        height: 100dvh !important;
    }
    button.btn.btn-red.btn-lg.rounded-0.d-block.enter_btn {
        float: none;
        display: block;
        margin: 0 auto;
    }
    .gallery_image {
        text-align: center;
        justify-content: center;
    }
    .gallery_image img.lazy {
        max-width: 45%;
        height: auto;
        float: none;
        display: inline-flex;
    }
    .gallery_image img.lazy {
        max-width: 42%;
    }
    .text-black.text-center.fw-bold.mb-0 {
        margin-top: 4px;
    }
    h1.fs-1 {
        font-size: 2rem !important;
        margin-bottom: 30px !important;
    }
    #navbar_top {
        padding-top: 5px;
        padding-bottom: 5px;
    }
    a.nav-link {
        font-size: 1.1rem;
    }
    .navbar-dark .navbar-nav .nav-link {
        color: #ffffff;
    }
    .navbar .navbar-nav .nav-item .dropdown-menu a {
        color: #ff0000;
    }
    i.fas.fa-chevron-down {
        color: #ff0000;
    }
    .empty {
        /* height: 30vh; */
        min-height: unset;
        /* padding-top: 10px; */
    }
    .empty.empty-low {
        margin: 50px auto 0 auto;
    }
    .slogan {
        width: 96%;
        top: 60%;
        left: 2%;
        text-align: center;
    }
    .slogan img.img-fluid {
        max-width: 50%;
    }
    button.enter_btn {
        font-size: 1rem !important;
    }
    .alphabet_list.mt-3 {
        width: 96% !important;
    }
    .alphabet_list.mt-3 {
        width: 96% !important;
        font-size: 1.5rem;
    }
    .cb-slideshow li:nth-child(1) span {
        background-image: url(https://hairfashion.sm/img/general/img_01_450.jpg)
    }
    .cb-slideshow li:nth-child(2) span {
        background-image: url(https://hairfashion.sm/img/general/img_02_450.jpg);
    }
    .cb-slideshow li:nth-child(3) span {
        background-image: url(https://hairfashion.sm/img/general/img_03_450.jpg);
    }
    h2.text-white.fs-3.mt-3.mb-0 {
        margin-top: 0 !important;
    }
    a.page-link {
        font-size: calc(1rem + .5vw) !important;
    }
    .page-item.active a.page-link {
        font-size: calc(1rem + .5vw) !important;
    }
    .icon-last:before {
        content: "\ea22";
        font-size: calc(1rem + 0vw);
    }
    .icon-first:before {
        content: "\ea21";
        font-size: calc(1rem + 0vw);
    }
    .sticky-top {
        padding-top: 95px !important;
    }
    #collections .container.bg-red {
        height: 50px;
        overflow: hidden !important;
        /* transition: 1s linear all; */
    }
    .bg_red_clicked {
        height: auto !important;
        overflow: visible !important;
        /* transition: 1s linear all; */
    }
    #open_filter, #open_filter_cell {
        padding: 0 10px;
        font-size: 20px;
        font-weight: 600;
    }
    .alphabet_wrapper {
        margin-top: 20px !important;
        line-break: anywhere !important;
    }
    .image_container {
        align-items: center;
        justify-content: center;
        text-align: center;
    }
    img.lazy.m-2.p-2.border.border-light.img-fluid {
        max-width: 45% !important;
        margin: .3rem !important;
    }
    .no-pointer-action {
        pointer-events: initial !important;
    }
    .be_updated_btn {
        display: none;
    }
    .navbar_icons_wrapper {
        width: fit-content;
        display: inline-block;
        margin-left: 5px;
        margin-right: 5px;
    }
    section#collections .container.bg-red {
        height: auto;
        filter: drop-shadow(2px 0px 3px rgba(0,0,0,0)) !important;
    }
    section#collections .container.mt-0.bg-red.pt-2.pb-2 {
        height: auto !important;
    }
    .empty-lower-height {
        margin-top: 85px;
    }
    .alphabet-btn {
        font-size: 9px !important;
    }
    p.choose-letter, p.choose-letter span {
        font-size: 12px !important;
    }
    section#collections .container.bg-red {
        border-bottom: none;
    }
    .search-wrapper {
        width: 100% !important;
    }
    .search-form-field {
        width: calc(100% - 64px);
    }
}

@media (min-width: 1250px){
    img.lazy.m-2.p-2.border.border-light.img-fluid {
        max-width: 10% !important;
    }
    img.lazy.m-2.p-2.border.border-light.img-fluid.img_with_description {
        max-width: 100% !important;
    }
}

/* OFFICIAL WEB + PRIVACY */

#linkToSiteWrapper {
    position: fixed !important;
    width: 70px !important;
    height: auto !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    padding-left: 0px;
    padding-bottom: 0px !important;
    right: 0 !important;
    z-index: 9999 !important;
}
#linkToSite {
    position: relative !important;
    margin: 0px auto;
    width: 100% !important;
    height: auto !important;
    padding-left: 0px;
    padding-top: 5px;
    padding-bottom: 10px !important;
    background-color: #9b0000 !important;
    box-shadow: 0px 0px 3px rgba(0, 0, 0, 1);
}
#linkToSite a {
    text-decoration: none !important;
}
#linkToSite:hover {
    background: rgb(122, 0, 0) !important;
}
.siteLink {
    font-family: Verdana, Arial, Tahoma, Helvetica, sans-serif, Tahoma;
    text-shadow: 3px 3px 4px #000;
    color: white;
    text-align: center;
    font-size: 11px;
    margin-left: 10px !important;
    margin-top: 7px !important;
    margin-right: 15px;
    margin-bottom: 10px;
}
@media screen and (max-width:993px) {
    #linkToSite {
        top: auto !important;
        bottom: 0 !important;
        width: auto !important;
        height: auto !important;
        /*            padding: 5px 0px!important;*/
        box-shadow: 0px 0px 3px rgba(0, 0, 0, 1);
    }
}
.privacy {
    font-family: sans-serif !important;
    text-align: center;
    background: rgba(0, 0, 0, 0.4);
    padding: 5px;
    font-size: 12px;
    border: 2px solid white;
    margin-bottom: -10px;
    transition: all .3s;
    color: white !important;
    font-weight: normal;
    display: block;
    text-decoration: none !important;
}
.privacy:hover {
    background: rgba(0, 0, 0, 1);
}
.privacy a:link, .privacy a:visited, .privacy a:active {
    color: #ffffff !important;
}
#closeHP {
    position: relative;
    margin: 0px auto 15px auto;
    text-align: center;
    padding-bottom: 0px;
}
#closeHP p {
    font-family: sans-serif !important;
    color: #9b0000 !important;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    line-height: 0px;
    text-shadow: 0px 0px 3px rgba(0, 0, 0, 1);
    cursor: pointer;
    transition: all .3s;
}
#closeHP p:hover {
    color: #ffffff !important;
    transition: all .3s;
}
@media (max-width:600px) {
    .navbar, .navbar>.container, .navbar>.container-fluid, .navbar>.container-lg, .navbar>.container-md, .navbar>.container-sm, .navbar>.container-xl, .navbar>.container-xxl {
        justify-content: unset;
    }
    .search-button-for-mobile {
        max-width: 50% !important;
    }
    .search-button-for-mobile input#txtSearch_2 {
        font-size: .85rem;
    }
    h5.text-black.text-md-center.text-start.fw-bold.mb-0 {
        line-height: 35px;
    }
    #linkToSiteWrapper {
        display: none !important;
        top: 100% !important;
    }
    #linkToSite {
        position: fixed !important;
        bottom: 0px !important;
        display: block !important;
    }
    #closeHP {
        position: fixed;
        bottom: 85px;
        float: none !important;
        display: block !important;
        margin: 0px auto !important;
        text-align: center;
        padding-bottom: 0px;
        left: 50% !important;
        margin-left: -5px !important;
    }
    a.navbar-brand {
        max-width: 25%;
    }
    .sitemap_dot {
        display: none !important;
    }
    .modal.show .navbar-expand-xl {
        padding-right: 0px !important;
    }
    .clsPaginatoreTasti.mt-4 {
        margin-top: 0 !important;
    }
    i.fa-solid.fa-arrow-right {
        display: inline-block;
    }
}
@media (max-width: 450px) {
    .sticky-top {
        padding-top: 87px !important;
    }
}
@media (max-width: 400px) {
    .sticky-top {
        padding-top: 78px !important;
    }
}
@media (max-width:330px){
    h1.fs-1 {
        font-size: 1.3rem !important;
    }
    .alphabet_wrapper {
        margin-top: 15px !important;
    }
    h5.text-black.text-md-center.text-start.fw-bold.mb-0 {
        line-height: 35px;
        font-size: 1.1rem;
    }
}

/* INDEX PAGE FIXED NAVBAR */

.fixed-right-navbar {
    position: fixed;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    z-index: 333;
}
.fixed-right-navbar .list-group-item {
    border: none !important;
}
.fixed-right-navbar .list-group-item::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,.3) !important;
    z-index: -2;
    display: block;
}
.fixed-right-navbar .list-group-item::after {
    content: '';
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255,0,0,1);
    transform: scaleX(.8%);
    transform-origin: left;
    z-index: -1;
    display: block;
    transition: .25s linear all !important;
}
.fixed-right-navbar .list-group-item:hover::after {
    content: '';
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255,0,0,1);
    transform: scaleX(100%) !important;
    transform-origin: left;
    z-index: -1;
    display: block;
    transition: .25s linear all !important;
}
.fixed-right-navbar .lh-lg {
    line-height: 2.5!important;
}

/* OTHER STYLES */

#myUL {
    list-style: none;
    padding-left: 0;
}
#myUL li{
    background-color: var(--bgc-card);
    padding: 5px;
    margin: 10px 0 10px 0;
    padding-left: 15px;
}
.bgc-card { 
    background-color: var(--bgc-card); 
}
.mt-100px { 
    margin-top: 100px; 
}
.bgc-nero { 
    background-color: var(--bgc-nero); 
}
.bgc-rosso { 
    background-color: var(--bgc-rosso) !important; 
}
article.clsOscura { 
    opacity: 0.1; 
}
article.clsOscura::after {
    content: '\2716';
    position: absolute;
    width: 100%;
    margin: auto auto;
    font-size: 250px;
    font-weight: 900;
    text-align: center;
    color: #ff0000;
    display: block;
    z-index: 9999999991;
    top: 50%;
    transform: translateY(-50%);
}
.clsOscura::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,.1);
    display: block;
    z-index: 9999999990;
}

/* SIZES */

@media (min-width: 500px){
    .w-md-70 {
        width: 70%;
    }
}
@media (max-width: 499px){
    .bgc-card {
        flex-direction: column;
    }
    .w-md-70 {
        width: 100% !important;
    }
}

/* BOOTSTRAP SIZE BUGS */

@media (min-width: 1201px) {
    .row-cols-xl-1>.col {
        flex: 0 0 auto;
        width: 100%;
    }
    .row-cols-xl-2>.col {
        flex: 0 0 auto;
        width: 50%;
    }
    .row-cols-xl-3>.col {
        flex: 0 0 auto;
        width: 33.333333%;
    }
    .row-cols-xl-4>.col {
        flex: 0 0 auto;
        width: 20%;
    }
    .row-cols-xl-5>.col {
        flex: 0 0 auto;
        width: 20%;
    }
    .row-cols-xl-6>.col {
        flex: 0 0 auto;
        width: 16.666666%;
    }
    .row-cols-xl-7>.col {
        flex: 0 0 auto;
        width: 14.285714%;
    }
    .row-cols-xl-8>.col {
        flex: 0 0 auto;
        width: 12.5%;
    }
    .row-cols-xl-9>.col {
        flex: 0 0 auto;
        width: 11.111111%;
    }
    .row-cols-xl-10>.col {
        flex: 0 0 auto;
        width: 10%;
    }
    .row-cols-xl-11>.col {
        flex: 0 0 auto;
        width: 9.090909%;
    }
    .row-cols-xl-12>.col {
        flex: 0 0 auto;
        width: 8.3%;
    }
}
@media (min-width: 993px) and (max-width: 1200px) {
    .row-cols-lg-1>.col {
        flex: 0 0 auto;
        width: 100%;
    }
    .row-cols-lg-2>.col {
        flex: 0 0 auto;
        width: 50%;
    }
    .row-cols-lg-3>.col {
        flex: 0 0 auto;
        width: 33.333333%;
    }
    .row-cols-lg-4>.col {
        flex: 0 0 auto;
        width: 20%;
    }
    .row-cols-lg-5>.col {
        flex: 0 0 auto;
        width: 20%;
    }
    .row-cols-lg-6>.col {
        flex: 0 0 auto;
        width: 16.666666%;
    }
    .row-cols-lg-7>.col {
        flex: 0 0 auto;
        width: 14.285714%;
    }
    .row-cols-lg-8>.col {
        flex: 0 0 auto;
        width: 12.5%;
    }
    .row-cols-lg-9>.col {
        flex: 0 0 auto;
        width: 11.111111%;
    }
    .row-cols-lg-10>.col {
        flex: 0 0 auto;
        width: 10%;
    }
    .row-cols-lg-11>.col {
        flex: 0 0 auto;
        width: 9.090909%;
    }
    .row-cols-lg-12>.col {
        flex: 0 0 auto;
        width: 8.3%;
    }
}
@media (min-width: 767px) and (max-width: 992px) {
    .row-cols-md-1>.col {
        flex: 0 0 auto;
        width: 100%;
    }
    .row-cols-md-2>.col {
        flex: 0 0 auto;
        width: 50%;
    }
    .row-cols-md-3>.col {
        flex: 0 0 auto;
        width: 33.333333%;
    }
    .row-cols-md-4>.col {
        flex: 0 0 auto;
        width: 20%;
    }
    .row-cols-md-5>.col {
        flex: 0 0 auto;
        width: 20%;
    }
    .row-cols-md-6>.col {
        flex: 0 0 auto;
        width: 16.666666%;
    }
    .row-cols-md-7>.col {
        flex: 0 0 auto;
        width: 14.285714%;
    }
    .row-cols-md-8>.col {
        flex: 0 0 auto;
        width: 12.5%;
    }
    .row-cols-md-9>.col {
        flex: 0 0 auto;
        width: 11.111111%;
    }
    .row-cols-md-10>.col {
        flex: 0 0 auto;
        width: 10%;
    }
    .row-cols-md-11>.col {
        flex: 0 0 auto;
        width: 9.090909%;
    }
    .row-cols-md-12>.col {
        flex: 0 0 auto;
        width: 8.3%;
    }
}

@media (min-width: 577px) and (max-width: 767px) {
    .row-cols-sm-1>.col {
        flex: 0 0 auto;
        width: 100%;
    }
    .row-cols-sm-2>.col {
        flex: 0 0 auto;
        width: 50%;
    }
    .row-cols-sm-3>.col {
        flex: 0 0 auto;
        width: 33.333333%;
    }
    .row-cols-sm-4>.col {
        flex: 0 0 auto;
        width: 20%;
    }
    .row-cols-sm-5>.col {
        flex: 0 0 auto;
        width: 20%;
    }
    .row-cols-sm-6>.col {
        flex: 0 0 auto;
        width: 16.666666%;
    }
}

@media (min-width: 0px) and (max-width: 576px){
    .row-cols-1>.col {
        flex: 0 0 auto;
        width: 100%; !important
    }
    .row-cols-2>.col {
        flex: 0 0 auto;
        width: 50% !important;
    }
    .row-cols-3>.col {
        flex: 0 0 auto;
        width: 33.333333% !important;
    }
    .row-cols-4>.col {
        flex: 0 0 auto;
        width: 20%;
    }
    .row-cols-5>.col {
        flex: 0 0 auto;
        width: 20%;
    }
    .row-cols-6>.col {
        flex: 0 0 auto;
        width: 16.666666%;
    }
}

/* VOTING MODAL ADJUSTMENTS */

#votingModal .modal-body {
    margin-top: 0 !important;
}
