html {
    scroll-behavior: smooth;
    scroll-padding-top: 6rem;
}

h1 {
    font-size: 3rem;
    line-height: 4rem;
    letter-spacing: 0px;
    font-weight: 700;
    color: #fff;
}

h2 {
    font-size: 2rem;
    line-height: 2.5rem;
    letter-spacing: 0px;
    font-weight: 700;
    color: #fff;
}

h3 {
    font-size: 1.5rem;
    line-height: 1.75rem;
    letter-spacing: 0px;
    font-weight: 700;
    color: #fff;
}

.bg-grey {
    background-color: rgba(87,86,86,1);
}

.bg-white h2,
.bg-white h3 {
    color: #020b12;
}

.bg-dark h2,
.bg-dark h3 {
    color: #fff;
}

.bg-dark ul {
    color: #f7f7f7;
}

.bg-white + .bg-white {
    border-top: 1px solid rgba(0,0,0,0.1);
}

.text-center {
    text-align: center;
}

    .text-center .sub::after,
    .text-center.sub::after {
        margin-left: 50%;
        transform: translateX(-50%);
    }

.sub::after {
    content: "";
    display: block;
    width: 32px;
    padding-top: 3px;
    border-bottom: 5px solid #f08900;
}

.inverted-box .sub::after {
    border-bottom: 5px solid #020b12;
}

label {
    color: #fff;
}

ul.list {
    color: #6a6a6a;
    line-height: 1.8em;
}

.rounded {
    border-radius: 3px;
}

.shadow {
    -webkit-box-shadow: 0 1px 4px rgb(0 0 0 / 20%);
    -o-box-shadow: 0 1px 4px rgba(0,0,0,.2);
    box-shadow: 0 1px 4px rgb(0 0 0 / 20%);
}

.d-block {
    display: block;
}

.d-inline {
    display: inline-block;
}

.w-100 {
    width: 100%;
}

.h-100 {
    height: 100%;
}

section#head {
    padding: 6rem 0;
}

section {
    padding: 2rem 0;
}

    section.cta-cat {
        padding: 2rem 0;
    }

button:not(.close-navbar),
a.btn:not(.close-navbar) {
    background-color: #f08900;
    border: 2px solid #f08900;
    border-radius: 3px;
    padding: 0.3rem 2rem;
    color: #051829;
    font-size: 1.5rem;
    font-weight: 600;
    -webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -o-transition: all 0.2s;
    -ms-transition: all 0.2s;
    transition: all 0.2s;
    line-height: 1.75rem;
}

    button:not(.close-navbar):hover,
    a.btn:not(.close-navbar):hover {
        background-color: #020b12;
        color: #fff;
    }

button[disabled] {
    opacity: 0.5;
}

    button[disabled]:hover {
        background-color: #f08900 !important;
        color: #051829;
    }

#head {
    background: url(/img/header-taglio-laser-overlay.jpg) no-repeat center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

#form-block {
    background-color: rgba(87,86,86,0.8);
    padding: 1rem 1.5rem;
    border-radius: 3px;
}

form input {
    margin-bottom: 1rem;
    border-radius: 3px;
    border-color: #fff !important;
    border: none;
    padding: 0.5rem;
    line-height: 0;
    font-size: 1rem;
    font-weight: 400;
    color: #020b12;
}

.cat-box.inverted-box {
    border: 2px solid #020b12;
    border-radius: 3px;
    padding: 1.25rem 1rem;
    background-color: #f08900;
}

.cat-box {
    border: 2px solid #f08900;
    border-radius: 3px;
    padding: 1.25rem 1rem;
    background-color: #020b12;
}

    .cat-box ul {
        font-size: 1.175rem;
        line-height: 2.25rem;
    }

ul:not(.contact-info) {
    list-style-position: outside;
    margin-left: 2rem;
}

.floating-bar {
    width: 100%;
    bottom: 0;
    position: fixed;
    background-color: #f08900;
    color: #020b12;
    font-size: 1.5rem;
    font-weight: 600;
    padding: 0.3rem 2rem;
    z-index: 1000;
}

    .floating-bar a {
        color: #020b12;
        font-size: 1.5rem;
        font-weight: 600;
    }

footer {
    padding-bottom: 40px;
}

.back-to-top {
    background-color: rgba(240, 137, 0, 0.9);
    z-index: 1001;
    border: 1px solid black;
}

    .back-to-top:hover {
        background-color: rgba(240, 137, 0, 1);
    }

.site-footer .about-widget ul li i,
.site-footer .copyright-info a {
    color: rgba(240, 137, 0, 1);
}

.mb-30{
    margin-bottom: 2rem;
}

#lightbox {
    position: fixed;
    top: 0!important;
    left: 50%!important;
    transform: translate(-50%,50%)
}

.flex-center {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: space-evenly;
}

@media screen and (max-width: 1199px) {
    .mb-30-md {
        margin-bottom: 30px;
    }
}

@media screen and (max-width: 991px) {
    .mb-30-sm {
        margin-bottom: 30px;
    }

    .d-none-sm{
        display: none;
    }
    
    .text-center-sm{
        text-align: center;
    }
}

@media screen and (max-width: 575px) {
    h1 {
        font-size: 2.25rem;
        line-height: 3rem;
    }
}