@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300..800;1,300..800&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Work+Sans:ital,wght@0,100..900;1,100..900&display=swap');


.open-sans-font {
  font-family: "Open Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-variation-settings:
    "wdth" 100;
}

/*all shared items*/
.display-flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.btn-primary{
    background-color: #FF900E;
    font-size: 1.3rem;
    font-weight: 500;
    color: white;
    border: none;
    border-radius: 10px;
}
.font-primary {
    color: #FF900E;
    font-weight: 600;
}
.font-black {
    color: black;
    font-weight: 600;
}
.font-gray{
    color: #727272;
    font-weight: 400;
}
.font-vbig {
    font-size: 3rem;
    font-weight: bold;
}
.font-big{
    font-size: 2.5rem;
    font-weight: bold;
}
.font-small{
    font-size: 1rem;
    font-weight: 300;
}


/*header section*/
header {
    background-color: rgba(255, 144, 14, 0.1);
}
header nav, header section {
    width: 85vw;
    margin: 0 auto;
}
header .nav-right a{
    text-decoration: none;
    color: black;
}
header .nav-right li {
    list-style: none;
}
header .nav-right a{
    margin: 1.5vw;
}

header section {
    text-align: center;
}
header section .section-img img{
    width: 100%;
    margin-top: 8vh;
    margin-bottom: 2vh;
}

/*main section*/
main > section , footer > section{
    width: 85vw;
    margin: 20vh auto;
}
main .first-section .image-collage {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.8rem;
    margin: auto 5vw;
}
main .first-section .image-collage img {
    width: 100%;
}
main .first-section .feature-intro {
    margin-right: 8vw;
    width: 30rem;
}


/*second section*/
.second-section {
    align-items: center;
}
.second-section .section-intro {
    width: 50vw;
    margin-right: 5vw;
}
.second-section .section-intro .intro .intro-card {
    margin: 3vh auto;
    box-shadow: 2px 2px 5px 5px gray;
    padding: 10px 20px;
}
.second-section .section-intro .intro .intro-card h5, .second-section .section-intro .intro .intro-card p {
    margin: 0;
}
.second-section .section-intro .intro .intro-card h5{
    font-size: 1.5rem;
}



.second-section .section-imgM {
    position: relative;
    margin-left: 5vw;
}
.second-section .section-imgM .img-intro {
    position: absolute;
    bottom: -4vh;
    left: -5vw;
}
.second-section .section-imgM img{
    width: 100%;
}

/*third section*/
.third-section .section-cards {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 6vw;
}
.third-section .section-cards .section-card {
    border: 1px solid #FF900E;
    text-align: center;
}
.third-section .section-cards .section-card h3, .third-section .section-cards .section-card p {
    margin-top: 0;
    margin-bottom: 0;
}

/*fourth section*/
.fourth-section .section-intro h1, .fourth-section .section-intro p {
    text-align: center;
}
.fourth-section .fourth-section-img {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 5vw;
    margin: 5vw auto;
}
.fourth-section .fourth-section-img img {
    width: 100%;
    filter: grayscale(100%);
}

/*footer*/
footer section div {
    position: relative;
    height: 20vh;
    background-color: #FFF4E7;
    border-radius: 20px;
}
footer section p {
    top: 50%;
    position: absolute;
    text-align: center;
    width: 100%;
    transform: translateY(-50%);
    margin: 0;
}

/*responsive for mobile devices*/
@media screen and (max-width:575px) {
    main > section , footer > section{
    width: 98vw;
    margin: 8vh auto;
}
    header nav, main .first-section, main .second-section {
        flex-direction: column;
    }
    main .third-section .section-cards {
        grid-template-columns: repeat(2,1fr);
    }
    .fourth-section .fourth-section-img {
        grid-template-columns: repeat(3, 1fr);
    }
    main .first-section .image-collage {
        grid-template-columns: 1fr;
    }
    footer section div{
        height: 8vh;
    }
    main .first-section .feature-intro{
        width: auto;
    }
}

/*responsive for tablet devices*/
@media screen and (min-width:575.1px) and (max-width: 992px) {
    main > section , footer > section{
    width: 98vw;
    margin: 8vh auto;
}
    header nav .nav-right {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }
    main .first-section, main .second-section {
        flex-direction: column;
    }
    .second-section .section-intro .intro {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 10vw;
    }
    .third-section .section-cards {
        grid-template-columns: repeat(2, 1fr);
    }
}