/* RESET */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
img {
    display: block;
}
ul {
    list-style-type: none;
}
a {
    text-decoration: none;
}
/* END OF RESET */
html {
    scroll-behavior: smooth;
    scroll-padding-top: 100px;
}
/* ROOT EMELENT */
:root {
    /* COLOR */
    --BG-COLOR: #F5F5F7;
    --PRIMARY-COLOR: #000000;
    --SECONDARY-COLOR: #FFFFFF;
    --THIRD-COLOR: #6E6E7E;
    --BTN-BG-COLOR: #0c40d1;
    /* FONT FAMILY */
    --PRIMARY-FONT: 'Montserrat';
    --SECONDARY-FONT: 'Open Sans';
}
/* END OF ROOT ELEMENT */
/* CLASS ELEMENT STYLE */
.header_one_style {
    font-size: 50px;
    font-family: var(--PRIMARY-FONT);
    line-height: 0.7;
}
.header_two_style {
    font-size: 36px;
    font-family: var(--PRIMARY-FONT);
}
.header_four_style {
    font-family: var(--SECONDARY-FONT);
    font-size: 16px;
}
.header_five_style {
    font-family: var(--SECONDARY-FONT);
    font-size: 16px;
    color: var(--THIRD-COLOR);
}
.header_about_style {
    font-family: var(--SECONDARY-FONT);
    font-size: 16px;
}
.btn_style {
    border: none;
    background-color: var(--BTN-BG-COLOR);
    color: var(--SECONDARY-COLOR);
    font-size: 13px;
    font-family: var(--SECONDARY-FONT);
    border: 1.5px solid var(--SECONDARY-COLOR);
    border-radius: 18px;
    width: 99px;
    height: 39px;
    text-align: center;
    cursor: pointer;
    transition: background-color 0.3s ease;
}
.btn_style:hover {
    color: var(--SECONDARY-COLOR);
    background-color: var(--PRIMARY-COLOR);
    border-color: var(--SECONDARY-COLOR);
}
.section {
    margin: 130px 0px;
}
/* END OF CLASS ELEMENT STYLE */
/* GENERAL STYLE */
/* BODY */
body {
    background-color: var(--BG-COLOR);
    position: relative;
    width: 1200px;
    max-width: 100%;
    margin: 0 auto;
}
/* HEADER */
header {
    height: 100px;
    width: 100%;
    position: sticky;
    top: 0;
    left: 0;
    background-color: var(--SECONDARY-COLOR); 
    padding: 0px 25px;
    z-index: 100;
}
header ul {
    display: none;
    width: 175px;
    height: 350px;
    background-color: var(--SECONDARY-COLOR);
    position: absolute;
    right: 0;
    top: 100;
    box-shadow: -3px 2px 4px rgba(0, 0, 0, 0.247);
}
header ul img {
    display: none;
}
header ul li {
    padding: 25px;
    width: 100%;
}
header ul li a {
    color: var(--PRIMARY-COLOR);
    font-family: var(--SECONDARY-FONT);
    font-size: 12px;
}
.logo-container {
    height: 100px;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: center;
}
.hamburger_bar {
    cursor: pointer;
}
.close_bar {
    cursor: pointer;
    display: none;
}
/* HERO */
.hero-container {
    padding-top: 70px;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    align-items: center;
    text-align: center;
}
.hero-container img {
    margin-bottom: 30px;
}
.hero-content p {
    font-size: 20px;
    font-family: var(--SECONDARY-FONT);
    width: 300px;
}
.hero_contact_container {
    margin: 30px 30px 0px 30px;
    display: flex;
    justify-content: space-around;
}
/* PORTFOLIO */
.portfolio-container h2 {
    text-align: center;
    /* margin-bottom: 45px; */
    color: var(--SECONDARY-COLOR);
    text-shadow: 3px 5px 5px black;
}
.header_portfolio_bg {
    background-image: url("img/banner_section_1.jpg");
    background-size: cover;
    height: 300px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.portfolio-content {
  display: grid;
  grid-template-columns: auto;
  gap: 1px;
  justify-content: center;
}
.portfolio-content img {
    width: 100%;
}
/* SERVICES */
.services-container {
    padding-top: 100px;
}
.services-container img {
    display: none;
}
.my-services-content {
    text-align: center;
}
.my-services-content h2 {
    margin-bottom: 20px;
}
.my-services-content li {
    font-family: var(--SECONDARY-FONT);
    font-size: 18px;
}
/* ABOUT */
.about-content {
    margin-top: 80px;
    text-align: center;
    align-items: center;
}
.about-content p {
    margin: 10px auto 30px;
    font-size: 16px;
    line-height: 1.5;
    font-family: var(--SECONDARY-FONT);
    width: 306px;
}
.my-social-media ul {
    margin: 10px auto;
    display: flex;
    width: 165px;
    justify-content: space-between;
    justify-items: center;
}
/* FOOTER */
footer {
    width: 100%;
    height: 100px;
    background-color: var(--SECONDARY-COLOR);
    text-align: center;
    padding-top: 30px ;
    margin-top: 200px;
}
footer span {
    font-family: var(--SECONDARY-FONT);
    font-size: 16px;
}
/* END OF GENERAL STYLE */

/* RESPONSIVE DESIGN */
/* MEDIUM */
    @media only screen and (min-width: 768px) {
    .portfolio-content {
    grid-template-columns: auto auto;
    }
    }

    /* LAPTOP SCREEN */
    @media only screen and (min-width: 1024px) {
        header {
            padding: 0px 25px;
            z-index: 100;
            display: flex;
            justify-content: center;
            align-items: center;
            background-image: linear-gradient(to right, #F5F5F7 , #fff, #fff, #fff, #F5F5F7);
        }

        .hamburger_bar {
            display: none;
        }
        header ul {
        display: flex;
        flex-flow: row nowrap;
        justify-content: center;
        align-items: center;
        height: 100%;
        position: relative;
        box-shadow: none;
        }
        header ul img {
        display: block;
        padding: 10px;
        }
        header ul li {
        width: 100%;
        padding: 10px;
        }
        .logo-container img {
        display: none;
        }
        .hero-container {
            padding-top: 100px;
            display: flex;
            column-gap: 0px;
            flex-direction: row;
            flex-flow: row nowrap;
            justify-content: space-evenly;
            align-items: start;
            text-align: left;
        }
        .hero-container img {
            margin-bottom: 30px;
            margin-left: 50px;
        }
        .hero-container h1 {
            font-size: 80px;
        }
        .hero-content p {
            width: 512px;
        }
        .hero_contact_container {
            margin-left: 0;
            display: block;
        }
        .portfolio-content {
            grid-template-columns: auto auto;
        }
        .services-container {
            padding-top: 0px;
            display: flex;
            flex-flow: row nowrap;
            justify-content: center;
            text-align: left;
            column-gap: 80px;
        }
        .services-container img {
            display: block;
        }
        .my-services-content {
            text-align: left;
        }
        .about-container {
            display: flex;
            flex-direction: row;
            justify-content: center;
            column-gap: 80px;
            text-align: center;
        }
        .about-content {
            margin: 30px 0px;
            text-align: center;
        }
        .about-content p {
            width: 350px;
        }
        .header_about_style {
            text-align: center;
        }
        .my-social-media ul {
            margin: 10px auto;
            display: flex;
            justify-items: center;
        }
        footer {
            padding: 40px 0px;
            margin-top: 0px;
            background-image: linear-gradient(to right, #F5F5F7 , #fff, #fff, #fff, #F5F5F7);
        }
    }