::-webkit-scrollbar{
    width:10px;
}
::-webkit-scrollbar-track{
    background:#f1f1f1;
}
::-webkit-scrollbar-thumb{
    background:#1D4F9B;
}
::selection{
    background:rgba(0,123,255,0.3);
}
.relative{
    position: relative;
}
.navbar-expand-lg .navbar-nav .nav-link {
    white-space: nowrap;
}
.menu-list .current>a{
    color: #1D4F9B !important
}
.menu-list .current .sottocurrent{
    color: #fff !important
}
.navbarMain{
    /*max-width: 1250px;*/
    width: 100%;
    margin:auto;
    padding:0;
}
.nav-container{
    position:sticky;
    top: 0;
    width:100%;
    z-index:2;
    padding:0;
    transition: all 1s ease;
    background-color: #ffffffdb;
}
.nav-container.sticky{
    background:#ffffffe8;
    padding:10px 0;
    box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.1);
}
.nav-container.sticky .titolo-sito,
.nav-container.sticky .imgDxTop{
    display: none !important;
}
.nav-container.sticky .logo img{
    max-width: 130px;
    padding: 0;
}

.nav-container .nav-containerMain{
    display:flex;
    align-items:center;
    justify-content:space-between;
}
.nav-container .logo img{
    padding: 12px 0;
    max-width: 132px;
}
.nav-container .logo a{
    color:#fff;
    font-size: 30px;
    font-weight: 600;
    text-decoration: none;
    display: block;
}
.nav-container .menu-list{
    display: inline-flex;
    align-items: center;
}

.menu-list li{
    list-style: none;
}
.dropend .dropdown-toggle::after{
    right: 7px;
    position: absolute;
    top: 8.5px;
}
.dropend:hover .dropdown-toggle::after {
    top: 14.5px;
}
.menu-list.navbar-nav li a{
    border-right: 0;
    position: relative;
}
.menu-list.menu-sx-logout li a{
    border-right: 1px solid;
}
.menu-list.navbar-nav li.sottomenu>a::after {
    display: inline-block;
    margin-left: 0.255em;
    vertical-align: 0.255em;
    content: "";
    border-top: 0.3em solid;
    border-right: 0.3em solid transparent;
    border-bottom: 0;
    border-left: 0.3em solid transparent;
}
.navbar-nav .sottomenu .nav-link.active:not(:last-child):before, .navbar-nav .nav-link:hover:not(:last-child):before {
    /*    content: "";
         border-bottom: solid 2px #000000; 
        border-width: 1px;
        border-style: solid;
        border-image: linear-gradient(to right, #1d4f9b85, #1d4f9b) 1;
        width: calc(77% - 0px);
        display: block;
        position: absolute;
        bottom: 1px;
        z-index: 1;*/
}
.navbar-nav .nav-link.active::before, .navbar-nav .sottomenu .nav-link:hover::before {
    /*width: calc(80% - 0px);*/
}
.navbar-nav .nav-link.active, .navbar-nav .show>.nav-link {
    color: #1D4F9B;
}
.menu-list li a{
    color:#1D4F9B;
    font-size: 18px;
    font-weight: 400;
    padding: 0 12.5px;
    text-decoration: none;
    text-transform: uppercase;
    transition:all 0.3s ease;
    transition: all .5s;
    border-right: 1px solid #1D4F9B;
}
.br-none{
    border-right: transparent !important;
}
.nav-dx-end{
    position: absolute;
    right: 12px;
    bottom: 16px;
}
.nav-dx-end .menu-list li a{
    font-size: 12px;
    border-right: 0;
    padding-left: 0px;
    font-weight: 500;
}
.menu-sx-logout .menu-list>li:first-child a{
    padding-left: 0;
    border-right: 1px solid #1D4F9B;
}
.menu-dx-logato.menu-list li:first-child a,
.menu-sx-logout .menu-list li:first-child a{
    position: relative;
    border-right: 1px solid #1D4F9B;
}
.menu-dx-logato.menu-list .sottomenu>a,
.menu-sx-logout .menu-list .sottomenu>a{
        margin-top: -3px;
}
.menu-list>li:first-child a{
    padding-left: 0!important;
}
.menu-list li:last-child a{
    border-right: none;
}
.menu-list li a:hover{
    color:#1D4F9B;
}

.menu-list.nav-nl{
    margin-top: -9.5px;
}
.navbar-expand-lg {
    flex-wrap: nowrap;
    justify-content: flex-start;
}
.navbar-nav{
    margin-top: 24px;
    margin-left: 0;
}
.menu-list.nav-nl>li:nth-of-type(1) a,
.navbar-nav li:nth-of-type(1) a{
    padding-left: 0;
}
.menu-dx-logato{
    margin-top: -10px
}

.banner{
    background:url("assets/images/slide/studio-notaio-matteo-verzi.webp") no-repeat;
    height:100vh;
    background-size:cover;
    background-position:center;
    background-attachment: fixed;
}
.about{
    padding:30px 0;
}
.about .title{
    font-size: 38px;
    font-weight: 700;
}
.about p{
    padding-top:20px;
    text-align: justify;
}
.menu-list .cancel-btn{
    position:absolute;
    right:30px;
    top:20px;
}

.iscrizione {
    min-width: 20rem;
    color: #1D4F9B;
    width: 20rem;
    right: 30px;
}
.iscrizione form {
    margin: 0 auto;
    width: 90%;
}
.iscrizione .form-group{
    margin-bottom: 0;
}
.iscrizione legend {
    text-align: center;
    margin-top: 1rem;
    font-weight: bolder;
}
.iscrizione input{
    color: #1D4F9B !important;
}
.iscrizione.show{
    transform: translate3d(-290px, 27px, 0px) !important;
    box-shadow: 0 0 17px 0 rgba(0,0,0,.25);
}
.menu-container,
.search-container{
    width: 100%;
}
.search{
    position: relative;
    top: 14px;
    width: 100%;
    max-width: 497px;
    left: -2px;
    align-self: start;
}
.navbar-expand-lg.navbarMain .navbar-collapse.no-logato{
    padding-top: 10px !important;
}
.no-logato .search {
    top: 16.5px;
}
.passworddimenticata a{
    color: #1D4F9B !important;
    font-weight: 300 !important;
}
.passworddimenticata a:hover{
    font-weight: 400 !important;
    transition: all 0.4s ease;
}
.btn-blu,.btn-blu-1,
.iscrizione .entra {
    background: #1D4F9B !important;
    border-color: #1D4F9B !important;
    color: #fff;
}
.btn-blu-1:hover,
.iscrizione a.btn:hover, .iscrizione button:hover {
    background: #e9ecef !important;
    border-color: #1D4F9B !important;
    color: #1D4F9B !important;
}

.header-top {
    position: relative;
    padding: 0px;
    background-color: #1D4F9B;
    width: 100%;
}
.header-top .header-info-list {
    position: relative;
}
.header-top .header-info-list li a {
    color: #fff;
    font-weight: 100;
    padding: 0 0 0 15px;
    
}
.header-top .header-info-list li a:hover {
    color: #ffffffa6;
}
.header-top .header-info-list li {
    position: relative;
    color: #FFF;
    font-size: 16px;
    margin-right: 24px;
    display: inline-block;
}
.header-top .header-info-list li.logoff {
    margin-right: 0;
}
.header-top .header-info-list li .iconResp {
    position: relative;
    color: #FFF;
    font-size: 18px;
    margin-right: 8px;
    display: inline-block;
}
.titolo-sito {
    font-size: 4.2rem;
}
.btn-group.dropend{
    display: block !important;
}
.btn-group.dropend ul{
    padding: 0 !important;
    margin-left: -3px;
    top: 0;
    left: 100%;
}
.btn-group.dropend ul li a{
    color:#1d4f9b;
}
.dropend .dropdown-toggle::after {
    right: 7px;
    position: absolute;
    top: 8.5px;
}
.dropend .dropdown-toggle::after {
    vertical-align: 0;
}
.dropend .dropdown-toggle::after {
    display: inline-block;
    margin-left: 0.255em;
    vertical-align: 0.255em;
    content: "";
    border-top: 0.3em solid transparent;
    border-right: 0;
    border-bottom: 0.3em solid transparent;
    border-left: 0.3em solid;
}
.user-log-text{
    color:#1d4f9b;
    text-align: right;
    position: absolute;
    right: 55px;
    top: 22px;
    font-size: 10px;
    font-weight: 700;
}
.nav-item.utente .input-group-text {
    width: 42px;
    height: 32px;
}
.nav-item.utente .input-group-append #pwshow.btn {
    height: 32px;
    line-height: 32px;
    padding: 0 20px;    
    background-color: #1D4F9B;      
    border-color: #1D4F9B !important;
    border-left: 0 !important;
    color: #fff !important;
}
.nav-item.utente .input-group-append #pwshow.btn:hover {    
    border: 1px solid #ced4da !important;
    border-color: #ced4da !important;
    border-radius: 0 0.25rem 0.25rem 0;
    color: #fff !important;
    
}
.nav-item.utente [data-popper] {
    right: 0;
    left: initial;
}
.nav-item.utente .nav-link::after {
    display: none;
}
.dropend>span,
.dropend>a{
    position: relative;
    display: block;
    transition: all .5s;
}
.dropend>span::after,
.dropend>a::after{
    display: inline-block;
    margin-left: 0.255em;
    vertical-align: 0.255em;
    content: "";
    color: #fff;
    position: absolute;
    right: 4px;
    line-height: 25px;
    top: calc(50% - 3px);
    bottom: 25px;
    border-top: 0.3em solid transparent;
    border-right: 0;
    border-bottom: 0.3em solid transparent;
    border-left: 0.3em solid;
}
.dropend:hover span::after,
.dropend:hover a::after{
    color:#1D4F9B;    
}
li.sottomenu>a::after {
    display: inline-block;
    margin-left: 0.255em;
    vertical-align: 0.255em;
    content: "";
    border-top: 0.3em solid;
    border-right: 0.3em solid transparent;
    border-bottom: 0;
    border-left: 0.3em solid transparent;
}
nav ul li.sottomenu ul.sottomenu-item li{
    position: relative;
    transition: all .5s;
}
nav ul li.sottomenu ul.sottomenu-item li ul{
    display: none;
    position: absolute;
    transition: all .5s;
}
nav ul li.sottomenu ul.sottomenu-item li:hover ul {
    display: block;
}
nav ul li.sottomenu ul.sottomenu-item li a,
nav ul li.sottomenu ul.sottomenu-item li span{
    display: block;
    color: #fff;
    padding: 1px 10px;
    margin: 0;
    font-size: 11px;
    border-top: 0.7px solid white;
    line-height: 2;
    cursor: pointer;
}
nav ul li.sottomenu ul.sottomenu-item li.sottocurrent>a,
nav ul li.sottomenu ul.sottomenu-item li:hover span,
nav ul li.sottomenu ul.sottomenu-item li:hover a{
    color: #1D4F9B;
    padding: 7px 17px;
    margin: 0;
    background-color: #ededed;
    transition: all 0.4s ease;
}

nav ul li.sottomenu ul.sottomenu-item .dropend li a{
    color: #1D4F9B;
    padding: 3px 17px;
    margin: 0;
    background-color: #FFF;
    transition: all 0.4s ease;
}

nav ul li.sottomenu ul.sottomenu-item .dropend li:hover a{
    padding: 7px 17px;
    background-color: #ededed;
}
nav ul li.sottomenu ul.sottomenu-item {
    -webkit-transition: 0.5s ease-in-out;
    -moz-transition: 0.5s ease-in-out;
    -o-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
    opacity:0;
    display: none;
    background-color: #1D4F9B;
    position: relative;
    min-width: 121px;
    z-index: 99;
    padding: 0;
    white-space: nowrap;
    border-radius: 5px;
    transition: all .5s;
}
nav ul li.sottomenu:hover ul.sottomenu-item {
    opacity:1;
    display: block;
    position: absolute;
    min-width: 170px;
    margin: 0;
}
.nav-link .fa-cart-shopping{
    font-size: .95rem
}
.menu-sx-logout{
    margin-top: 9px;
}
.menu-dx-logato .dropdown-toggle::after{
    display: inline-block;
    margin-left: 0.255em;
    vertical-align: 0.255em;
    content: "";
    border-top: 0.3em solid;
    border-right: 0.3em solid transparent;
    border-bottom: 0;
    border-left: 0.3em solid transparent;
}

.dropend:hover { 
    display: block;
}
li.nav-item.utente.dropdown.login {
    display: none;
}
@media (min-width: 992px){
    .navbar-expand-lg.navbarMain .navbar-collapse {
        flex-direction: column;
        padding-top: 0;
        padding-left: 2px;
    }
    .navbarMain{
        margin-left: 0;
    }
    .navbar-expand-lg.navbarMain .navbar-collapse.menu-sx-logout {
        flex-direction: row;
        padding-top: 63px;
        padding-left: 0;
    }
    .nav-dx{
        display: flex;
        position: relative;
        top: 43px;
        justify-content: flex-end;
        left: -12px;
    }

    .dp-sm{
        display: none;
    }
    .dp-lg{
        display: block;
    }
}


@media (max-width:1874px){
    .navbar-nav {
        margin-left: 0;
    }
    .search {
        max-width: 437px;
    }
    .menu-list li a {
        font-size: 15px;
    }
}
@media (max-width:1588px){
    .menu-list li a {
        font-size: 12.7px;
    }
    .search {
        max-width: 372px;
    }
    .navbar-expand-lg .navbar-nav .nav-link {
        padding-right: 0.3rem;
    }    
}
@media (max-width:1384px){
    .nav-box{
        padding-right: 0;
    }
    .menu-list li a {
        font-size: 0.75rem;
    }
    .search {
        max-width: 352px;
    }
    .navbar-expand-lg .navbar-nav .nav-link {
        padding-right: 0.2rem;
    }
}
@media (max-width:1279px){
    .container, .container-fluid, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
        width: 100%;
    }
    .container-fluid.px-5{
        padding: 0 20px !important;
    }
}
@media (max-width:1230px){
    .nav-container .logo img {
        width: 110px;
    }
    .navbar-expand-lg.navbarMain .navbar-collapse {
        padding-top: 18px;
    }
    .nav-dx {
        top: 57px;
    }
    .search {
        top: 4px;
    }

}
@media (max-width:1177px){
    .container-fluid.px-5,
    #gallery-home .container-fluid{
        padding: 0 !important;
    }
    .menu-list li a {
        font-size: 0.62rem;
    }
    .search {
        max-width: 307px;
    }    
    .navbar-expand-lg .navbar-nav .nav-link {
        padding-right: 0.15rem;
    }
}
@media (max-width:991px){    
    
    .menu-list.navbar-nav li a{
        padding-left: 0;
    }
    .logo.text-center {
        padding-left: 3rem;
        text-align: start !important;
    }
    .nav-container .logo img {
        width: 114px;
    }  
    .container-fluid.px-5.RagSoc_text{
        padding-top: 25px !important;
    } 
    .RagSoc_text .logo img{width: 95px}
    .RagSoc_text li.nav-item.utente.logout{
        top: 62px !important;
    }
    .container-fluid.px-5.RagSoc_text .navbar .navbar-toggler,
    .container-fluid.px-5.RagSoc_text .cart-sm {
        top: -79px;
    }
    .user-log-text {
        right: 40px;
        top: 7px !important;
        font-size: 9px;
        line-height: 1.3;
    }
    .header-top {
        position: absolute;
        background: transparent;
    }
    .header-top .top-md-hide{
        display: none !important;
    }
    .header-top .header-info-list li.utente a{
        color: #1D4F9B;        
    }
    li.nav-item.utente {
        position: absolute;
        top: 49px;
        font-size: 1.2rem;
        right: 80px;
    }
    li.nav-item.utente.logout{
        right: 108px;
    }
    li.nav-item.utente.login{
        display: none;;
    }
    .iscrizione.show {
        position: fixed !important;
        left: 50%  !important;
        top: 50% !important;
        right: unset;
        transform: translate(-50%, -50%) !important;
        min-width: 25rem;
        min-height: 231px;
        display: flex;
        align-items: center;
    }
    .box-logo{ 
        order: -1;
       /* margin-left: 50%;
        margin-right: 50%;
        transform: translate(-50%);*/
    }
    .dp-lg{
        display: none;
    }
    .dp-sm{
        display: block;
    }
    .cart-sm{
        position: absolute;
        top: -85px;
        right: 88px;
        color: #1D4F9B;
        font-size: 1.2rem;
    }
    .navbar{
        position: relative;
        top: 0;
        right: 0px;
    }
    .navbar .navbar-toggler{
        position: absolute;
        top: -85px;
        right: 30px;
    }
    .nav-box{
        display: flex;
        padding: 0;
        order: 2;
        width: 100%;
        flex: 1 0 100%;
        max-width: 100%;
    }
    .navbar-toggler{
        border: 0;
        color:#1D4F9B;
        outline: none !important;
        border: 0 !important;
    }
    .navbar-toggler:focus{
        outline: none !important;
        border: 0 !important;
        box-shadow: none;
    }
    .navbar {
        justify-content: end !important;
    }
    
    .titolo-sito {
        font-size: 2rem;
    }
    .titolo-sito, .imgDxTop{
        display: none !important;
    }
    .nav-md-hide{
        display: none;
    }
    /*nav ul li.sottomenu ul.sottomenu-item {display: none !important; opacity: 1; visibility: hidden;}*/
    nav ul li.sottomenu ul.sottomenu-item{
        position: relative !important;
        margin-top: 15px !important;
    }
    nav ul li.sottomenu ul.sottomenu-item li{
        margin-top: 0;
    }
    .navbar-expand-lg.navbarMain .navbar-collapse{
        background-color: white;
        padding-bottom: 20px;
        height: calc(100vh - 129px);
        overflow-y: auto;
    }
    .navbar-expand-lg.navbarMain .navbar-collapse.menu-sx-logout{
        height: auto !important;
        background-color: transparent;
    }
    .menu-sx-logout .menu-list>li:first-child a {
         padding: 0 12.5px!important;
    }
    .menu-list li a{
        border-right: 0;
    }
    .search {
        top: 0;
        left: 25px;
    }
    body.disabled{
        overflow: hidden;
    }
    .nav-container .col {
        flex: 1 0 100%;
    }
    .nav-container>div{
        padding: 0 !important;
    }
    .nav-container>div.container-fluid>.row{
        margin: 0 !important;        
        display: flex;
        justify-content: space-between;
    }
    .nav-container .menu-list{
        display:block;
        text-align: left;
        padding:0;
        margin:0;
        padding-left: 50px;
        transition:all 0.3s ease;
    }
    .nav-container.show .menu-list{
        left:0%;
    }
    li.sottomenu .dropend span{
        pointer-events: none !important;
    }
    li.sottomenu .dropend ul{
        position: relative !important;
        width: 100%;
        max-height: 200px;
        overflow-y:auto; 
        left: 3px;
        top: 0;
        z-index: 99;
    }
    nav ul li.sottomenu ul.sottomenu-item li a, nav ul li.sottomenu ul.sottomenu-item li span {
        padding: 7px 10px;
    }
    nav ul li.sottomenu ul.sottomenu-item li.sottocurrent>a, nav ul li.sottomenu ul.sottomenu-item li:hover span, nav ul li.sottomenu ul.sottomenu-item li:hover a {
        padding: 15px 17px;
    }
    .nav-container .menu-list li{
        margin-top:12.5px;
    }
    .nav-container .menu-list li a{
        font-size: 23px;
        transition:0.6s cubic-bezier(0.68, -0.55,0.265,1.55);
    }
    .nav-container.show .menu-list li a{
        margin-left:0;
    }
    .menu-list.menu-sx-logout li a{
        border-right: 0;
    }
    /*.navbar .navbar-toggler.logoff {
        top: -77px !important;
    }
    li.nav-item.utente.logoff {
        top: 45px;
    }*/
}
@media (max-width:575px){
    ol.breadcrumb {
        padding: 0.5rem 10px 0;
    }
    .logo.text-center {
        padding-left: 25px;
    }
    .nav-container .menu-list li a {
        font-size: 18px;
    }
    .nav-container .menu-list {
        padding: 0 20px 0 20px;
    }
    .search {
        left: 35px;
    }
    .user-log-text {
        right: 40px;
        top: 3px;
        font-size: 8px;
    }
}
@media (max-width:450px){
    .navbar .navbar-toggler {
        top: -88px;
        font-size: 1.5rem;
    }    
    .search {
        width: 82%;
    }
    .iscrizione.show{
        min-width: 20rem;
    }
    
    .container-fluid.px-5.RagSoc_text .navbar .navbar-toggler {
        top: -82px;
    }
}
@media (max-width:380px){
    .nav-container .logo a{
        font-size: 27px;
    }
    .nav-container .logo img {
        width: 84px;
    }
    .navbar .navbar-toggler {
        top: -76px;
        right: 10px;
        z-index: 99999;
    }
    .cart-sm {
        top: -72px;
        right: 80px;
    }
    li.nav-item.utente {
        top: 32px;
    }
    .container-fluid.px-5.RagSoc_text .cart-sm {
        top: -68px;
    }
    .container-fluid.px-5.RagSoc_text .navbar .navbar-toggler {
        top: -71px;
    }
    
}


