/*--------------------------------------------------------------------- File Name: style.css ---------------------------------------------------------------------*/

/*--------------------------------------------------------------------- skeleton ---------------------------------------------------------------------*/

* {
    box-sizing: border-box !important;
}

html {
    scroll-behavior: smooth;
}

body {
    color: #666666;
    font-size: 14px;
    line-height: 1.80857;
    font-weight: normal;
    overflow-x: hidden;
    font-family: 'Raleway', sans-serif;
}

a, .btn, .box_main {
    transition: all 0.3s ease-in-out;
    text-decoration: none !important;
    outline: none !important;
}

a {
    color: #222222;
}

h1, h2, h3, h4, h5, h6 {
    letter-spacing: 0;
    position: relative;
    padding: 0 0 10px 0;
    font-weight: normal;
    line-height: normal;
    color: #111111;
    margin: 0;
}

h1 { font-size: 24px; }
h2 { font-size: 22px; }
h3 { font-size: 18px; }

ul, li, ol {
    margin: 0;
    padding: 0;
    list-style: none;
}

p {
    margin: 20px;
    font-weight: 300;
    font-size: 15px;
    line-height: 24px;
}

img {
    max-width: 100%;
    height: auto;
}

button {
    border: 0;
    margin: 0;
    padding: 0;
    cursor: pointer;
}

.layout_padding { padding-top: 90px; padding-bottom: 0px; }

/* header top section start */

.header_top_section {
    width: 100%;
    display: flex;
    background-color: #07092f;
    padding: 20px 0px;
}

.header_top_main {
    display: flex;
    align-items: center;
    gap: 25px;
}

.call_text, .call_text_2 {
    width: 100%;
    float: left;
    font-size: 16px;
    color: #ffffff;
}

.call_text { text-align: left; margin-right: 20px; }
.call_text_2 { text-align: center; }

.call_text a, .call_text_2 a { color: #ffffff; }
.call_text a:hover, .call_text_2 a:hover { color: #fda417; }

/* header section start */

.header_section {
    position: relative;
    width: 100%;
    min-height: 85vh;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.header_section .navbar {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 10;
}

.hero-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    z-index: 0;
}

.header_content {
    position: relative;
    z-index: 2;
    flex: 1;
    display: flex;
    align-items: center;
}

.bg-light { background-color: transparent !important; }
.logo { width: 250px; height: auto; }
.ml-auto { margin-left: auto!important; }

.navbar-expand-lg .navbar-nav .nav-link {
    padding-right: 10px;
    padding-left: 10px;
    font-size: 20px;
    color: #0400fd;
    text-transform: uppercase;
    font-weight: 500;
}

.navbar-light .navbar-nav .nav-link:hover,
.navbar-light .navbar-nav .active>.nav-link,
.navbar-light .navbar-nav .nav-link.active {
    color: #e99612;
}

.navbar { align-items: flex-start; }

/* banner section start */

.banner_section {
    position: relative;
    z-index: 2;
    padding-top: 140px;
}
.banner_taital_main { width: 80%; float: right; }

.banner_taital, .banner_text {
    width: 100%;
    font-family: 'Poppins', sans-serif;
    text-shadow: 2px 2px 8px rgba(0, 0, 0, 1); 
    background-color: rgba(46, 43, 43, 0.4);
    display: inline-block;
    border-radius: 5px;
}

.banner_taital {
    float: left;
    font-size: 60px;
    color: #ffffff;
    text-transform: uppercase;
    font-weight: bold;
    padding-bottom: 0px;
    line-height: 70px;
}

.banner_text {
    font-size: 22px;
    color: hsl(0, 0%, 100%);
    font-weight: 500;
    margin-left: 0;
    float: center;
}

.btn_main { width: 100%; display: flex; justify-content: right;}

.started_text { width: 180px; margin-right: 20px; margin-top: 30px; }
.started_text a {
    width: 100%;
    float: right;
    padding: 10px;
    color: #ffffff;
    background-color: #0b0b0b;
    text-align: center;
    font-size: 20px;
    border-radius: 40px;
    text-transform: uppercase;
    font-weight: bold;
}

.started_text a:hover, .started_text.active a { background-color: #fda417; }

/* about section start */

.about_section { width: 100%; float: left; padding: 90px 0px 0px 0px; }
.about_taital { width: 100%; float: left; font-size: 40px; color: #3b3a3a; font-weight: bold; padding-top: 40px; }
.about_text { width: 100%; float: left; font-size: 18px; color: #5a5959; font-weight: 500; margin-left: 0;}

/* services section start */

.services_section { width: 100%; float: left; }
.services_taital { width: 100%; float: left; font-size: 40px; color: #1b1b1b; font-weight: bold; text-align: center; }
.services_text_1, .services_text { width: 100%; font-size: 16px; color: #1b1b1b; padding-top: 20px; }
.services_text_1 { margin: 0 auto; text-align: center; }
.services_text {
    width: 100%;
    font-size: 14px;
    margin: 0px;
    color: #1b1b1b;
    padding-top: 20px;
}

.services_section_2 { width: 90%; margin: 0 auto; padding-top: 30px; }
.services_section_2 .row { display: flex; justify-content: center; flex-wrap: wrap; gap: 30px; }

.box_main { width: 100%; background-color: #ffffff; padding: 40px 20px; border-radius: 20px; margin-top: 30px; }
.box_main:hover, .box_main.active { box-shadow: 0px 0px 20px 0px; }

.service_img { width: 30%; min-height: 71px; }
.development_text { width: 100%; font-size: 24px; color: #1b1b1b; font-weight: bold; padding-top: 20px; text-transform: uppercase; min-height: 80px; }

/* testimonial section start */

.testimonial_section { width: 100%; float: left; background-color: #252525; padding: 90px 0 150px 0; background-size: 100%; }
.testimonial_taital { width: 100%; float: left; font-size: 40px; color: #ffffff; text-align: center; font-weight: bold; font-family: 'Poppins', sans-serif; }
.image_testimonial { display: block; min-width: 290px; max-height: 550px; }

/* contact section start */

/* contact section start */

.contact_taital { 
    width: 100%; 
    float: left; 
    font-size: 40px; 
    color: #333333; 
    padding-left: 0; /* Changed from 100px to fix alignment */
    font-weight: bold; 
    font-family: 'Poppins', sans-serif; 
    text-align: center; /* Centers the heading above the form/image */
    margin-top: 50px
}

.contact_section_2 { 
    width: 100%; 
    float: left; 
    padding: 0 0 90px 80px; 
}

.mail_section_1 { 
    width: 100%; 
    float: left; 
    padding: 30px 0 0 0; /* Removed 85px left padding */
}

.mail_text, .massage-bt { 
    width: 100%; 
    float: left; 
    border: 0; 
    background-color: transparent; 
    box-shadow: 0px 0px 10px 0px #cfcfcf; 
}

.mail_text { 
    font-size: 16px; 
    color: #050505; 
    padding: 8px 15px; 
    margin-bottom: 40px; 
}

.massage-bt { 
    height: 110px; 
    font-size: 18px; 
    padding: 15px 15px 0 15px; /* Adjusted padding for better text alignment */
}

.send_bt {
    width: 170px; 
    float: left; 
    text-align: center; 
    font-size: 18px; 
    color: #000000;
    background-color: #fda417; 
    padding: 12px; 
    text-transform: uppercase;
    margin-top: 30px; 
    display: block; 
    font-weight: bold; 
    border-radius: 40px;
}

.send_bt:hover { background-color: #252525; color: #fff; }

.contact_img { 
    width: 100%; 
    display: flex;
    align-items: center;
    justify-content: center;
}

.contact_img img {
    max-width: 100%;
    height: auto;
}

/* footer section start */

/* footer section start */

.alamat-kanan { float: right; text-align: right; }

.footer_section { 
    width: 100%; 
    float: left; 
    background-color: #1f1f1f; 
    padding-bottom: 50px; 
}

.useful_text { 
    font-size: 24px; 
    color: #ffffff; 
    font-weight: bold; 
    text-transform: uppercase; 
    font-family: 'Poppins', sans-serif; 
}

.lorem_text { 
    width: 100%; 
    float: left; 
    font-size: 16px; 
    color: #ffffff; 
    padding-left: 400px; 
    font-family: 'Poppins', sans-serif; 
}

.location_text { 
    width: 100%; 
    margin: 0 auto; 
    text-align: center; 
}

.location_text ul { display: inline-block; }

.location_text li { 
    float: left; 
    font-size: 16px; 
    color: #ffffff; 
    padding: 0 120px 30px 120px; 
    line-height: 30px; 
    font-family: 'Poppins', sans-serif; 
}

.location_text li a { color: #ffffff; }
.location_text li a:hover { color: #fda417; }

/* Fixed Quick Links for 2 Rows */
.footer_menu { 
    width: 77%; 
    display: flex; 
    flex-wrap: wrap; 
}

.footer_menu ul { 
    display: flex; 
    flex-wrap: wrap; 
    width: 100%;
}

.footer_menu li { 
    font-size: 16px; 
    color: #ffffff; 
    padding-top: 5px; 
    flex-basis: 50%; /* This creates the 2-column effect */
}

.footer_menu li a { color: #ffffff; }
.footer_menu li a:hover { color: #fda417; }

/* copyright section start */

.copyright_section { width: 100%; float: left; background-color: #ffffff; }
.copyright_text { width: 100%; float: left; font-size: 16px; margin: 15px 0; color: #252525; text-align: center; }
.copyright_text a { color: #252525; }