:root {
    --sfondo: #ffffff;
    --rosso: #b02020;
    --blu: #1b3070;
    --white-trasparent: #ffffff82;
    --white: #ffffff;
}

body {
    font-family: "Inter", sans-serif;

}

.link-box {
    text-decoration: none;
    color: black
}


.divider {
    padding: 0.2em;
    background-color: var(--rosso);
}

.back-bianco {
    background-color: var(--white);
}

.relative {
    position: relative;
}

.header-lavorazioni {
    height: 80dvh;
    background-image: url("../img/gallery/header.jpg");
    background-size: cover;
    background-position: top;
}

.slider-carpenteria {
    aspect-ratio: 4/3;
    background-size: cover;
    background-position: center;
}

.shadow {
    min-height: 28vh;
    box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}

.btn-blu {
    color: var(--blu);
    text-decoration: none;

}

.row-icon {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
}

.box-icon {

    cursor: pointer;
}

.box-icon:hover>div {
    transition: 0.3s;
    color: var(--sfondo);
    background-color: var(--blu);
}

.box-icon:hover .btn-blu {
    color: var(--sfondo);
}

.carousel-cornice {
    position: absolute;
    left: 19%;
    top: 16%;
}

.blu {
    color: var(--blu)
}

.back-white {
    background-color: var(--sfondo);
}

.logo-nav {
    max-width: 200px;
}

.navbar-collapse {
    justify-content: end;
}

.header {
    max-height: 90dvh;
}

.shadowed {
    box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
}

.relative {
    position: relative;
}

.sottotitolo {
    font-size: calc(14px + (28 - 14) * ((100vw - 300px) / (2560 - 300)));
}

.bordered-bottom {
    border-bottom: 6px solid var(--rosso)
}

.bordered-top {
    border-top: 6px solid var(--rosso)
}

.white {
    color: var(--sfondo)
}

.box {
    padding: 8vh;
    padding-left: 20vh;
    padding-right: 20vh;
    padding-bottom: 0vh;
}

.box-text {
    padding: 8vh;
    padding-top: 8vh;
    padding-bottom: 8vh;
    padding-left: 22vh;
}

.box-side {

    padding-top: 9vh;
    padding-bottom: 9vh;
    padding-left: 12vh;
    padding-right: 6vh;
}

#video-background {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.back-white-trasparent {
    background: rgb(255, 255, 255);
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.8575805322128851) 46%, rgba(255, 255, 255, 0.38699229691876746) 74%);
}

.h-form {
    margin-top: 0.70rem;
}

input[type="text"],
input[type="tel"],
input[type="email"] {
    padding: 1em;
    border: 4px solid var(--rosso);
}

input::placeholder,
.txt-area::placeholder {
    font-weight: 800;
    text-transform: uppercase;
}

input[type="checkbox"]:checked {
    background-color: var(--rosso);
    box-shadow: unset;
}

input[type="text"]:focus,
input[type="tel"]:focus,
input[type="email"]:focus {
    border-color: var(--rosso);
    box-shadow: unset;
}

.txt-area {
    border: 4px solid var(--rosso);
}

.txt-area:focus {
    border-color: var(--rosso);
    box-shadow: unset;
}

.title {
    color: var(--sfondo);
    border-top-right-radius: 50px;
    border-top-left-radius: 50px;
    text-transform: uppercase;
    font-size: calc(35px + (70 - 35) * ((100vw - 300px) / (2560 - 300)));
    line-height: 2.5rem;
}

.payof {

    font-size: calc(22px + (35 - 22) * ((100vw - 300px) / (2560 - 300)));
    text-transform: lowercase;
    line-height: 0.5rem;
}

.sfumatura-scura {
    background: rgb(255, 255, 255);
    background: linear-gradient(90deg, rgba(255, 255, 255, 0) 24%, rgba(77, 74, 74, 0.6558998599439776) 68%);
}

.sfumatura-scura-invertita {
    background: rgb(77, 74, 74);
    background: linear-gradient(90deg, rgba(77, 74, 74, 0.39539565826330536) 48%, rgba(255, 255, 255, 0) 87%);
}

.col-ferro {
    min-height: 65vh;
    padding-top: 10vh;
    padding-bottom: 10vh;
}

.col-carpenteria {
    min-height: 45vh;
    padding-top: 10vh;
    padding-bottom: 10vh;
}

.back-sfondo-3 {

    background-image: url('../img/3.jpg');
    background-size: cover;
    background-position: center;
}

.back-sfondo-1 {

    background-image: url('../img/1.jpg');
    background-size: cover;
    background-position: center;
}

.back-rosso {
    background-color: var(--rosso);
}

.back-cancelli {
    background-image: url("../img/back-cancelli.svg");
}

.spacing {
    padding-top: 16vh;
}

.row-professionisti {
    flex-direction: row-reverse;
}

.box-foto {
    aspect-ratio: 4/3;
    object-fit: cover;
    border-radius: 100px;
}

.dropdown-menu {
    background-color: #f8f9fa;
    border-radius: 0;
    margin-top: 0;
    border: 0;
}

.back-blu {
    background-color: var(--blu);

}

.line {
    width: 30%;

    padding: 0.15em;
}

.dropdown-menu>li a:hover {
    color: var(--rosso);
}

.subtitle,
.subtitle-contatti,
.subtitle-form {

    font-weight: 600;
    color: var(--sfondo);
    font-size: calc(22px + (33 - 22) * ((100vw - 300px) / (2560 - 300)));
}

.subtitle-contatti {
    color: var(--blu);
}

.subtitle-form {
    font-size: calc(22px + (44 - 22) * ((100vw - 300px) / (2560 - 300)));
}

.rosso {
    color: var(--rosso);
}

.text {
    font-size: calc(18px + (22 - 18) * ((100vw - 300px) / (2560 - 300)));
}

.nav-link {
    border-bottom: 2px solid #f8f9fa;
    font-weight: 600;
    font-size: calc(18px + (22 - 18) * ((100vw - 300px) / (2560 - 300)));
}

.nav-link:hover {
    color: var(--rosso);
    border-bottom: 2px solid var(--rosso);
}

.brd-left {
    border-left: 6px solid var(--rosso);
}

.brd-right,
.col-right {
    border-right: 6px solid var(--rosso);
}

.back-sfondo {
    background-image: url("../img/5.jpg");
    background-size: cover;

    background-position: center;
}

.btn,
.call-btn {
    padding: 0.75em;
    margin-bottom: 1rem;
    background-color: var(--rosso);
    color: var(--sfondo);
    border: 2px solid var(--rosso);
}

.btn:hover {
    border: 2px solid var(--rosso);
    background-color: var(--sfondo);
    color: var(--rosso);
}

.bottone,
.call-bottone {
    margin-bottom: 0.4rem;
    background-color: var(--rosso);
    color: var(--sfondo);
    border: 2px solid var(--rosso);
    border-radius: 5px;
    height: 3rem;
}

.bottone:hover {
    border: 2px solid var(--rosso);
    background-color: var(--sfondo);
    color: var(--rosso);
}

.bottone_2,
.call-bottone_2 {
    margin-bottom: 0.4rem;
    background-color: var(--rosso);
    color: var(--sfondo);
    border: 2px solid var(--rosso);
    border-radius: 5px;
    height: 3rem;
}

.bottone_2 {
    position: absolute;
    top: 1.7rem;
    right: 5rem;
}

.bottone_2:hover {
    border: 2px solid var(--rosso);
    background-color: var(--sfondo);
    color: var(--rosso);
}

.call-blu {
    margin-bottom: 1rem;
    padding: 0.75em;
    background-color: var(--blu);
    color: var(--sfondo);
    border: 2px solid var(--blu);
    white-space: nowrap;
    border-radius: 10px;
    text-decoration: none;
}

.call-blu:hover {
    margin-bottom: 1rem;
    padding: 0.75em;
    background-color: var(--white);
    color: var(--blu);
    border: 2px solid var(--blu);

}

#sendBtn {
    background-color: var(--rosso);
    color: var(--sfondo);
    border: 2px solid var(--rosso);
}

#sendBtn:hover {
    border: 2px solid var(--rosso);
    background-color: var(--sfondo);
    color: var(--rosso);
}

.text-footer {
    color: var(--white);
    font-size: calc(17px + (18 - 17) * ((100vw - 300px) / (2560 - 300)));
}

.link-footer {
    text-decoration: none;
    color: var(--white);
}

.link-footer:hover {
    text-decoration: none;
    color: #1a1a1a;
}

.back-1,
.back-2,
.back-3,
.back-4 {
    background-image: url("../img/slider/1.jpg");
    background-size: cover;
    aspect-ratio: 1/1;
    background-position: center;
}

.col-carousel {
    position: absolute;
}

.back-2 {
    background-image: url("../img/slider/2.jpg");
    background-position: 15%;
}

.back-3 {
    background-image: url("../img/slider/3.jpg");
}

.back-4 {
    background-image: url("../img/slider/4.jpg");
}

.form-check-label {
    color: white;
}

.form-check {
    margin-left: 1rem;
}

.dropdown-item:active {
    background-color: #f8f9fa;
}

#carpenteria,
#cancelli,
#ferro,
#strutture_telai,
#manutenzione,
#serrande,
#tettoie,
#strutture_parapetti {
    scroll-margin-top: 100px;
}

@media only screen and (max-width:2560px) {
    .box-ombra {
        min-height: 30vh;
        padding: 3vh;
    }
}

@media only screen and (max-width:1920px) {

    .back-1,
    .back-2,
    .back-3,
    .back-4 {
        aspect-ratio: 4/3;
    }

    .box {
        padding: 3vh;
    }

    .box-ombra {
        min-height: 40vh;
        padding: 3vh;
    }

    .form-check {
        padding-left: 3em;
    }

    #sendBtn {
        padding-left: 1em;
    }
}

@media only screen and (max-width:1830px) {
    .box-ombra {
        min-height: 45vh;
        padding: 3vh;
    }
}

@media only screen and (max-width:1444px) {
    .box {
        padding: 3vh;
    }

    .box-ombra {
        min-height: 43vh;
        padding: 3vh;
    }

    .box-side {
        padding-left: 1vh;
    }
}

@media only screen and (max-width:1024px) {
    .box-ombra {
        min-height: 36vh;
        padding: 3vh;
    }

    .col-carpenteria {
        padding-top: 2vh;
        padding-bottom: 2vh;
    }
}

@media only screen and (max-width:590px) {
    .sottotitolo {
        font-size: calc(13px + (22 - 13) * ((100vw - 300px) / (2560 - 300)));
    }

    .header-lavorazioni {
        height: 45dvh;
        padding-top: 2em;


    }

    #map {
        height: 30vh;
    }

    .payof {
        font-size: calc(17px + (35 - 17) * ((100vw - 300px) / (2560 - 300)));

    }

    .box-text {
        padding: 3vh;

    }

    .back-sfondo-3 {
        background-size: cover;
        background-position: 20% 50%;
    }

    .box-side {
        padding-left: 3vh;
        padding-top: 2vh;

    }

    .box {
        padding: 0.75em;
    }

    .header {
        max-height: 100dvh;
    }

    .back-blu {
        background-color: var(--blu);
    }

    .title {

        font-size: calc(26px + (30 - 26) * ((100vw - 300px) / (2560 - 300)));
    }

    .sottotitolo {
        font-size: calc(13px + (22 - 12) * ((100vw - 300px) / (2560 - 300)));
    }

    #video-background {
        position: relative;
        z-index: -1;
        top: 1rem;
        height: 45dvh;
    }

    .row-right {
        text-align: left !important;
    }

    .col-right {
        border-right: unset;
        border-left: 6px solid var(--rosso);
    }

    .box-foto {
        border-radius: unset;
    }

    .shadowed {
        box-shadow: unset;
    }

    .nav-link {
        width: 35vw;
        margin-left: 1.1rem;
    }


}

@media only screen and (max-width:400px) {
    .logo-nav {
        width: 150px;
    }

    .sottotitolo {
        font-size: calc(12px + (18 - 12) * ((100vw - 300px) / (2560 - 300)));
    }

    .title {
        line-height: 2.0rem;
    }

    .bottone_2 {
        top: 1.1rem;
        font-size: 0.9rem;
        right: 4rem;
    }

}