/* start global rules */
* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    
    box-sizing: border-box;
    padding: 0;
    margin: 0;
}

:root {
    --main-color: #19c8fa;
}

html {
    scroll-behavior: smooth;
}

body {

    font-family: 'Open Sans', sans-serif;
}

ul {
    list-style: none;
}

.container {
    padding-left: 15px;
    padding-right: 15px;
    margin-left: auto;
    margin-right: auto;
}

/* small */
@media (min-width:768px) {
    .container {
        width: 750px;
    }

}

/* medium */
@media (min-width:992px) {
    .container {
        width: 970px;
    }

}

/* large */
@media (min-width:1200px) {
    .container {
        width: 1170px;
    }

}


/* End global rules */
/* Start Header */
header {
    position: absolute;
    left: 0;
    width: 100%;
    z-index: 21;
}

header .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    min-height: 99.4px;
}

header .container::after {
    height: 1px;
    background-color: #a2a2a2;
    content: "";
    position: absolute;
    bottom: 0;
    width: calc(100% - 30px);
    left: 15px;


}

header .logo img {
    height: 30px;
}

header nav {
    flex: 1;
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

header nav .menu {
    color: white;
}

@media (min-width:768px) {
    header nav .menu {
        display: none;
    }
}

header ul {
    display: flex;
    text-decoration: none;
}

header ul li {}

header ul li a {
    display: block;
    padding: 40px 10px;
    color: white;
    text-decoration: none;
}

header ul li a.active,
header ul li a:hover {

    color: var(--main-color);
    border-bottom: 1px solid var(--main-color);
    /* position: absolute; */
    position: relative;
    z-index: 3;

}

@media (max-width:767px) {
    header ul {
        display: none;
    }
}

header nav .menu:hover+ul {

    display: flex;
    flex-direction: column;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background-color: rgb(0 0 0/50%);


}

header nav .menu:hover+ul li a {
    padding: 15px;
}


header .form {

    width: 30px;
    height: 40px;
    position: relative;
    margin-left: 30px;
    border-left: 1px solid white;

}

header .form i {
    
    color: white;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
}






/* End Header */

/* Start Landing */

.landing {
    background-image: url('../img/slider/bg2.jpg');
    min-height: 100vh;
    background-size: cover;
    position: relative;
}

.landing .overlay {
    background-color: rgb(0 0 0/50%);
    position: absolute;
    z-index: 1;
    width: 100%;
    height: 100%;
}

.landing .text {
    background-color: rgb(15 116 143 /70%);
    position: absolute;
    z-index: 2;
    top: 50%;
    left: 0;
    width: 50%;
    padding: 50px;
    transform: translateY(-50%);
    color: white;
    display: flex;
    justify-content: flex-end;
}

.landing .content {
    max-width: 500px;
}

.landing .text h2 {
    font-size: 30px;
    font-weight: normal;
    line-height: 1.5;
    margin-bottom: 15px;

}

.landing .text p {

    font-size: 14px;
    line-height: 2;

}

.landing .iconL {
    position: absolute;
    display: flex;
    justify-content: space-between;
    top: 50%;
    left: 15px;
    border: 1px solid white;
    padding: 10px;
    transform: translateY(-50%);
    color: white;
    z-index: 2;
}

.landing .iconR {
    position: absolute;
    display: flex;
    justify-content: space-between;
    top: 50%;
    right: 15px;
    border: 1px solid white;
    padding: 10px;
    transform: translateY(-50%);
    color: white;
    z-index: 2;
}

@media (max-width:767px) {
    .landing .text {
        width: 100%;
    }

    .landing .content {
        max-width: 100%;
    }

    .landing .iconR,
    .landing .iconL {
        display: none;
    }
}

.landing .bullets {
    position: absolute;
    z-index: 2;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    flex-direction: row;
}

.landing .bullets li {

    border: 1px solid white;
    border-radius: 50%;
    width: 15px;
    height: 15px;
    margin-right: 4px;



}

.landing .bullets li.active {

    border-color: var(--main-color);
    background-color: var(--main-color);



}




.section-header {
    margin-top: 100px;
}

.section-header .header {

    width: 100%;
    /* position: relative; */
    justify-content: center;
    z-index: 5;
    text-align: center;

}

.section-header h2 {
    font-weight: normal;
    position: relative;
    justify-content: center;
    text-transform: uppercase;
    color: rgba(0, 0, 0, 0.562);
    margin-bottom: 70px;
    font-size: 40px;



}

.section-header h2::after {
    position: absolute;
    content: "";
    height: 1px;
    width: 100px;
    background-color: #333;
    bottom: -30px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 5;
}

.section-header h2::before {
    position: absolute;
    content: "";
    height: 15px;
    width: 15px;
    border: 1px solid #333;
    background-color: white;
    border-radius: 50%;
    bottom: -38px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 6;
}



.section-header p {
    width: 40%;
    margin: 0 auto 60px;
    line-height: 2;
    font-size: 12px;
    color: #777;
    /* text-align: center;*/
    text-align: center;

    /* display: block; */
    justify-content: center;

}

@media (max-width:767px) {
    .section-header p {
        width: 80%;
    }
}

.services {}

@media (min-width:767px) {
    .services {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(calc(40%), 1fr));
        margin: auto auto 100px;
        gap: 30px;

    }
}

.services .service {
    display: flex;

    align-items: center;
    margin-bottom: 30px;
}



.services .service i {

    margin-right: 50px;
}

@media (max-width:767px) {
    .services .service {

        flex-direction: column;
        text-align: center;
    }

    .services .service i {
        margin-right: 0;
        margin-bottom: 20px;
    }
}

.services .service h3 {
    color: var(--main-color);
    margin-bottom: 30px;
}

.services .service p {
    color: #777;
    line-height: 2;
}

/* End header section */

/* Start our design */

.our-design {
    overflow: hidden;
    position: relative;
    background-color: #333;
    display: flex;
    height: 500px;
    /* margin-bottom: 300px; */
}

.our-design .img .one {
    display: flex;
    flex: 2;
    position: absolute;
    bottom: 0;
    left: 20%;
}

.our-design .img .two {
    display: flex;
    flex: 2;
    position: absolute;
    bottom: -10px;
    left: 15%;

}



/* .our-design .test {
    position: relative;
} */


.our-design .text {
    flex: 1;

    background-color: rgb(15 116 143 /70%);
    position: absolute;
    z-index: 2;
    top: 50%;
    right: 0;
    width: 50%;
    padding: 50px;
    transform: translateY(-50%);
    color: white;
    display: flex;
    justify-content: flex-start;
}

@media (max-width:767px) {
    .our-design {
        /* flex-direction: column; */
        display: block;
        height: 800px;
        padding-top: 50px;
    }

    .our-design .text {
        top: 30%;
        width: 100%;
    }

    .our-design .img .one {

        left: 50%;
        transform: translateX(-50%);
    }

    .our-design .img .two {

        left: 40%;
        transform: translateX(-50%);

    }
}

.our-design .text .content h2 {
    margin-bottom: 10px;
    font-size: 20px;
    font-weight: normal;
}

.our-design ul li {
    font-weight: normal;
    margin-bottom: 10px;
    font-size: 20px;
}

.our-design ul li i {
    margin-right: 10px;
    font-size: 20px;
}

/* End our design */

/* Start portfolio */

.category {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.category ul li {
    display: inline;
    padding: 10px 10px;
}

.category ul li.active,
.category ul li:hover {
    background-color: var(--main-color);
    border-radius: 20px;
    padding: 10px 20px;
    color: white;
    cursor: none;
}

.porto-box {
    position: relative;
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
    padding-top: 30px;
    flex-basis: 25%;
}

.porto-box .box {
    position: relative;
    overflow: hidden;
}



@media (max-width:767px) {
    .porto-box .box {
        flex-basis: 100%;
    }
}

@media (min-width:768px) {
    .porto-box .box {
        flex-basis: 50%;
    }
}

@media (min-width:1200px) {
    .porto-box .box {
        flex-basis: 25%;
    }
}





.porto-box .box .image img {
    width: 100%;
    transition: 0.5s;

    /* width: 100%; */
}

.porto-box .box .text {
    background-color: white;
    position: absolute;
    bottom: -100%;
    transition: 0.5s;
    width: 100%;
    padding: 20px 10px;
}

.porto-box .box:hover .text {
    bottom: 0;

}

.porto-box .box:hover .image img {
    transform: rotate(3deg) scale(1.1);

}

.porto-box .box:hover::after {
    font-family: "Font Awesome 5 Free";
    content: "\f055";
    font-weight: 900;
    color: var(--main-color);
    font-size: 80px;
    position: absolute;
    top: 10%;
    left: 50%;
    transition: 0.3s;
    transform: translate(-50%);

}

.porto-box .box:hover .text h4 {
    padding: 0 30px 10px;
}

.porto-box .box:hover .text p {
    padding: 0 30px 10px;
    color: var(--main-color);
    font-weight: bold;
}


/* End portfolio */

/* Start about us */


.about-as {
    display: flex;
    justify-content: center;
}

@media (max-width:767px) {
    .about-as img {
        width: 90%;
    }
}


/* End about us */

/* Start Static */

.static {
    padding-top: 100px;
    padding-bottom: 100px;
    /* height: 500px; */
    background-color: #333;


}

.static .box {

    background-color: rgb(15 116 143 /70%);
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
    padding: 30px;
    /* margin:30px auto ; */
}

@media (max-width:767px) {
    .static .box {
        flex-direction: column;
        flex-wrap: nowrap;
        justify-content: center;
        padding-left: 100px;
        padding-right: 100px;
    }
}

.static .box .card {

    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 30px;
    /* margin:30px auto ; */
}

.static .box .card i {
    display: flex;
    width: 60px;
    height: 60px;
    font-size: 30px;
    justify-content: center;
    align-items: center;
    border: 1px solid black;
    color: white;
    border-radius: 50%;
    /* margin:30px auto ; */
}

.static .box .card h2 {
    font-size: 40px;
    color: white;
    margin: 10px auto;

}

.static .box .card p {
    color: white;
    font-size: 13px;
}

/* End Static */

/* Start OurSkill && TESTIMONIALS  */
.part-contatiner {
   
    display: flex;
    flex-direction: row;
    /* height: 500px; */
}
.part-contatiner .out-skill {
    flex-basis: 50%;
    position: relative;
}
.part-contatiner .section-header p {
    width: 60%;
}
.part-contatiner .section-header h2::after , 
.part-contatiner .section-header h2::before {
    content: 'A';
    width: 0;
    color: white;
    background-color: white;
    height: 0;
    position: absolute;
    top: 0;
    left: 0;
    padding: -30px;
}
.part-contatiner .out-test {
    
    position: relative;
    flex-basis: 50%;
}
.part-contatiner .out-test .box {
    
    /* display: flex;
    flex-direction: column; */
    position: absolute;
    overflow: hidden;
    max-width: 100%;
    justify-content: center;
    align-items: center;
    left: 50%;
    transform: translateX(-50%);
    margin: auto;
    
    
}

.part-contatiner .out-test .box .card {
    overflow: hidden;
    display: flex;
    flex: 1;
    flex-direction: row;
    flex-basis: 100%;

    
    /* margin: 0 20px 30px 150px; */
    /* margin: auto; */
    
    
}

.part-contatiner .out-test .box .container-box {
    display: block;
}

.part-contatiner .out-test .box .card img {
    width: 130px;
    height: 130px;
    margin-right: 30px;
    
    
}

.part-contatiner .out-test .box .card p {
    /* width: 50%; */
    /* height: 100px; */
    /* padding-right: 30px; */
    width: 300px;
    line-height: 2;
}

@media (max-width:768px) {
    .part-contatiner .out-test {
        height: 1200px;
        flex-basis: 100%;
    }
    .part-contatiner .out-skill {
        padding-top: 500px;
        flex-basis: 100%;
    }
    .part-contatiner {
        flex-direction: column;
        
    }
    .part-contatiner .out-test .box {
        text-align: center;
        flex-direction: column;
        height: 2000px;
        /* justify-content: center; */
        /* width: 100%; */
    }
    .part-contatiner .out-test .box .card  {
        display: flex;
        flex-direction: column;
        justify-content: center;
        padding-bottom: 30px;
        margin-right: 10;
        
        
    }
    .part-contatiner .out-test .box .card .img {
        width: 100%;
        display: flex;
        justify-content: center;
    }
    .part-contatiner .out-test .box .card p {
        width: 350px;
        display: flex;
        justify-content: center;
    }
}

.out-skill .lines {

}

.out-skill .lines div {
    display: flex;
    position: relative;
    justify-content: start;
    padding-bottom: 30px;
    margin-bottom: 30px;


}
.out-skill .lines div p {
    padding-left: 10%;
}
.out-skill .lines .one::after {
    text-align: center;
    position: absolute;
    content: "";
    height: 20px;
    width: 80%;
    background-color: rgba(175, 168, 168, 0.767);
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
    
    
}
.out-skill .lines .one::before {
    position: absolute;
    content: "";
    height: 20px;
    width: 75%;
    background-color: var(--main-color);
    bottom: 0;
    left: 10%;
    
    z-index: 2;
    
    
}

.out-skill .lines .two::after {
    position: absolute;
    content: "";
    height: 20px;
    width: 80%;
    background-color: rgba(175, 168, 168, 0.767);
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
    
}
.out-skill .lines .two::before {
    position: absolute;
    content: "";
    height: 20px;
    width: 70%;
    background-color: var(--main-color);
    bottom: 0;
    left: 10%;
    
    z-index: 2;
    
}

.out-skill .lines .three::after {
    position: absolute;
    content: "";
    height: 20px;
    width: 80%;
    background-color: rgba(175, 168, 168, 0.767);
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
    
}
.out-skill .lines .three::before {
    position: absolute;
    content: "";
    height: 20px;
    width: 65%;
    padding-left: -15%;
    background-color: var(--main-color);
    bottom: 0;
    left: 10%;
    
    z-index: 2;
    
}

.out-skill .lines .four::after {
    position: absolute;
    content: "";
    height: 20px;
    width: 80%;
    background-color: rgba(175, 168, 168, 0.767);
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
    
    
}
.out-skill .lines .four::before {
    position: absolute;
    content: "";
    height: 20px;
    width: 70%;
    
    background-color: var(--main-color);
    bottom: 0;
    left: 10%;
    /* transform: translateX(-50%); */
    z-index: 2;
    
}





/* End OurSkill && TESTIMONIALS  */

/* Start Discriptions */
.description {
    text-align: center;
    display: flex;
    justify-content: center;
    flex-direction: column;
    background-color: #333;
    padding: 50px;
    color: white;
}

@media (max-width:767px) {
    .description h1 {
        font-size: 16px;
    }
    
}
/* End Discriptions */

/* Start Pricing */


.pric-box {
    display: grid;
    grid-template-columns: repeat(auto-fill,minmax(25%,1fr));
}
@media (max-width:767px) {
    .pric-box {
        grid-template-columns: repeat(auto-fill,minmax(100%,1fr));

    }
}

@media (min-width:768px) {
    .pric-box {
        grid-template-columns: repeat(auto-fill,minmax(50%,1fr));

    }
}

@media (min-width:992px) {
    .pric-box {
        grid-template-columns: repeat(auto-fill,minmax(25%,1fr));

    }
}

.pric-box .box {
    /* border: 1px solid var(--main-color); */
    margin-right: 30px;
    margin-bottom: 40px;
    text-align: center;
    height: 500px;
    transition:  0.3s;
    /* background-color: red; */
}

.pric-box .box:hover {
    transform: scale(1.1,1.1);
}

.pric-box .price-col {
    padding: 30px 0;
    
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border-top: 1px solid var(--main-color);
    border-bottom: 1px solid var(--main-color);
}
.pric-box .price-col p.bas {
    font-size: 30px;
    
}
.pric-box .price-col .price-row {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 90px;
    width: 50px;
}

.pric-box .price-col .price-row p:first-child {
    display: flex;
    justify-self: top;
    position: absolute;
    top: 10px;
    left: -20px;
}

.pric-box .price-col .price-row p:last-child {
    display: flex;
    justify-self: top;
    position: absolute;
    bottom: 5px;
    right:-40px;
}

.pric-box .price-col .price-row .pr {
    font-size: 60px;
    font-weight: bold;
}

.pric-box .fea {
   
    width: 100%;
    display: flex;
    justify-content: center;
    flex-direction: column;
    border-bottom: 1px solid var(--main-color);
}

.pric-box .fea p {
    
    margin: 8px auto;
    padding: 12px 0;
    width: 50%;
    border-bottom: 1px solid var(--main-color);
}

.pric-box .fea p:last-child {

    border-bottom: 0px solid var(--main-color);
}

.pric-box button {
    background-color: transparent;
    margin-top: 30px;
    padding: 10px 30px;
    border: 1px solid var(--main-color);
}

.Contact-us {
    margin: 30px auto;
    text-align: center;

}

.Contact-us p {
    font-size: 30px;
    margin-bottom: 10px;
    /* color: red; */
}

.Contact-us button {
    background-color: var(--main-color);
    outline: 0px;
    border: 0px;
    color: white;
    padding: 10px 25px;
}

/* End Pricing */


/* Start Subscribe */

.subscribe {
    padding: 50px;
    display: flex;
    /* height: 500px; */
    justify-content: center;
    align-items: center;
    background-color: #333;
}

.subscribe .left {
    display: inline;
    flex-basis: 50%;
    padding-right: 25px;
}

.subscribe .left .input {
    flex: 1;
    border: 1px solid white;
    background-color: #333;
    min-width: 100%;
    height: 50px;
    display: flex;
    justify-content: space-between;
}

.subscribe .left .input input {
    background-color: #333;
    color: white;
    border: 0;
    flex-basis: 60%;
    
}

.subscribe .left .input input:focus {
    
    border: 0;
    flex-basis: 60%;
    outline: 0;
    
}

.subscribe .left .input i {
    display: flex;
    justify-content: center;
    align-items: center;
    color: white;
    flex-basis: 10%;
}

.subscribe .left .input button {
    border: 0;
    padding: 10px 30px;
    flex-basis: 30%;
    color: white;
    /* margin: 5px; */
    background-color: var(--main-color);
}

.subscribe .right {
    display: inline;
    flex-basis: 30%;
}

.subscribe .right p {
    color: white;
    line-height: 1.7;
    font-size: 12px;
}

@media (max-width:767px) {
    .subscribe {
        padding: 30px 10px;
        display: block;
        text-align: center;
    }
    .subscribe .left {
        
        padding-right: 0;
        margin-bottom: 20px;
    }
    .subscribe .left .input {
        
       margin-bottom: 30px;
       height: 40px;

    }
    .subscribe .left .input button {
        border: 0;
        padding: 5px 20px;
       
    }
    
}


/* End Subscribe */
/* Start Contact us */

.con-us {
    
    padding: 0 30px;
    display: flex;
    flex-wrap: wrap;
    box-sizing: border-box;
}

.con-us .field-resp {
    flex-basis: calc(50% - 20px);
    margin: 10px;
}

@media (max-width:767px) {
    .con-us .field-resp {
        flex-basis: calc(100% - 20px);
        margin: 10px;
    }
}

.con-us .field-full {
    flex-basis: calc(100% - 20px);
    margin: 10px;   
}

.con-us  input {
    border: 1px solid rgba(180, 177, 177, 0.76);
    height: 50px;
    width: 100%;
    
    
}
.con-us   textarea {
    padding: 10px;
    border: 1px solid rgba(180, 177, 177, 0.76);
    height: 200px;
    width: 100%;
    
    
}

.con-us .field-full input {
    text-align: start;
    
}

.con-us button {
    border: 0;
    padding: 10px 30px;
    width: 100%;
    color: white;
    /* margin: 5px; */
    background-color: var(--main-color);
}



/* End Contact us */

/* Start Fotter */

footer {
    background-color: black;
    margin-top: 100px;
    padding: 50px;
    /* height: 500px; */
    display: flex;
    justify-content: center;
    align-items: center;
    color: white;
    text-align: center;
}
fotter .box {
   
    
}
footer .logo {
    margin-bottom: 30px;
}

footer h2 {
    margin: 30px 0;
}

footer hr {
    /* display: block;
    width: 100px; */
}

footer ul {
    margin: 30px;
    display: flex;
    justify-content: center;
}

footer li {
    padding-right: 20px;
    color: white;
}

footer li i {
    
    color: white;
}

footer .copy span {
    color: var(--main-color);
    font-weight: bold;
}
@media (max-width:767px) {
    footer .copy {
        font-size: 12px;
        line-height: 1.5;
    }
    
}