/* ================= LOGO AND MENU START ================= */

/* Logo */
.logo img{
  max-height:55px;
}
.logo-name img{
  max-height:81px;
}

/* Navbar */
.navbar ul{
  display:flex;
  align-items:center;
  gap:30px;
  margin:0;
  padding:0;
  list-style:none;
}

.navbar a{
  color:#fff;
  text-decoration:none;
  font-size:16px;
  font-weight:500;
  transition:0.3s;
}

.navbar a:hover,
.navbar .active{
  color:#0d6efd;
}

/* Mobile Icon */
.mobile-nav-toggle{
  display:none;
  color:#fff;
  font-size:30px;
  cursor:pointer;
}

/* Logo Area */

.logo-area{
  /* padding:12px 25px; */
  padding: 5px 0px 0px 25px;
  background:#fff;
}

.logo-area img{
  height:63px;
}

/* ================= DESKTOP MENU ================= */

.custom-navbar ul{
  display:flex;
  margin:0;
  padding:0;
  list-style:none;
}

.custom-navbar ul li{
  position:relative;
}

.custom-navbar ul li a{
  display:flex;
  align-items:center;
  justify-content:center;
  height:70px;
  padding:0 25px;
  text-decoration:none;
  text-transform:uppercase;
  letter-spacing:2px;
  font-size:12px;
  /* font-weight:700; */
  color:#444;
  background:#f3f3f3;
  transition:0.4s;
  position:relative;
  overflow:hidden;
}

/* Active & Hover */

.custom-navbar ul li a.active,
.custom-navbar ul li a:hover{
  background:#FF9933;
  color:#fff;
}

/* Hover Animation */

.custom-navbar ul li a::before{
  content:"";
  position:absolute;
  width:100%;
  height:0%;
  left:0;
  bottom:0;
  background:rgba(255,255,255,0.12);
  transition:0.4s;
}

.custom-navbar ul li a:hover::before{
  height:100%;
}

/* ================= MOBILE TOGGLE ================= */

.mobile-toggle{
  width:70px;
  height:90px;
  display:none;
  align-items:center;
  justify-content:center;
  background:#FF9933;
  cursor:pointer;
}

.mobile-toggle i{
  color:#fff;
  font-size:34px;
}

/* ================= MOBILE MENU ================= */

.mobile-menu{
  position:fixed;
  top:0;
  right:-320px;
  width:320px;
  height:100vh;
  background:#fff;
  z-index:9999;
  transition:0.4s;
  overflow-y:auto;
  box-shadow:-5px 0 20px rgba(0,0,0,0.15);
}

.mobile-menu.active{
  right:0;
}

/*   */

.mobile-menu-header{
  height:80px;
  background:#FF9933;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 20px;
}

.mobile-menu-header h5{
  margin:0;
  color:#fff;
  font-weight:700;
}

.close-menu{
  cursor:pointer;
}

.close-menu i{
  color:#fff;
  font-size:24px;
}

/* Breadcrumb */

.mobile-breadcrumb{
  background:#fff4e8;
  padding:15px 20px;
  font-size:14px;
  border-bottom:1px solid #eee;
}

.mobile-breadcrumb span{
  color:#666;
}

.mobile-breadcrumb strong{
  color:#FF9933;
  margin-left:5px;
}

/* Mobile Links */

.mobile-menu ul{
  list-style:none;
  margin:0;
  padding:0;
}

.mobile-menu ul li{
  border-bottom:1px solid #eee;
}

.mobile-menu ul li a{
  display:block;
  padding:18px 20px;
  text-decoration:none;
  color:#333;
  font-weight:lighter;
  transition:0.3s;
}

.mobile-menu ul li a:hover,
.mobile-menu ul li a.active{
  background:#FF9933;
  color:#fff;
}

/* Overlay */

.menu-overlay{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,0.5);
  opacity:0;
  visibility:hidden;
  transition:0.4s;
  z-index:9998;
}

.menu-overlay.active{
  opacity:1;
  visibility:visible;
}

/* ================= RESPONSIVE ================= */

@media(max-width:991px){

  .custom-navbar{
    display:none;
  }

  .mobile-toggle{
    display:flex;
  }

  .logo-area img{
    height:48px;
  }
}

/* ================= LOGO AND MENU END ================= */

/* ================= SLIDER START ================= */

.hero-slider{
  width:100%;
  overflow:hidden;
  margin-bottom: -50px;
  margin-top: 15px;
}

/* Fixed Height */
.carousel-item{
  height:500px;
  position:relative;
}

/* Background Image */
.slider-bg{
  width:100%;
  height:500px;
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  animation:zoomEffect 8s ease-in-out infinite;
}

/* Dark Overlay */
.carousel-item::before{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(229, 155, 58, 0.308);
  z-index:1;
  opacity: 50%;
}

/* Caption */
.custom-caption{
  position:absolute;
  top:50%;
  left:8%;
  transform:translateY(-50%);
  z-index:2;
  max-width:650px;
  bottom:auto;
}

/* Main Heading */
.static-line{
  font-size:52px;
  font-weight:800;
  line-height:1.2;
  color:#fff;
}

/* Gradient Highlight */
.highlight{
  background:linear-gradient(270deg,#ffffff,#FF9933,#d97a1b);
  background-size:400% 400%;
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  animation:gradientMove 4s ease infinite;
}

/* Typing Text */
.word-animate{
  margin-top:18px;
  font-size:24px;
  font-weight:600;
  color:#fff;
  min-height:40px;
}

/* Paragraph */
.fade-line{
  margin-top:15px;
  font-size:16px;
  color:#f1f1f1;
}

/* Button */
.hero-btn{
  margin-top:20px;
  padding:12px 30px;
  border-radius:50px;
  background:#0d6efd;
  color:#fff;
  font-weight:600;
  border:none;
  transition:0.3s;
}

.hero-btn:hover{
  background:#fff;
  color:#000;
}

/* Indicators */
.carousel-indicators [data-bs-target]{
  width:12px;
  height:12px;
  border-radius:50%;
}

/* ================= ANIMATION ================= */

@keyframes zoomEffect{

  0%{
    transform:scale(1);
  }

  50%{
    transform:scale(1.08);
  }

  100%{
    transform:scale(1);
  }
}

@keyframes gradientMove{

  0%{
    background-position:0% 50%;
  }

  50%{
    background-position:100% 50%;
  }

  100%{
    background-position:0% 50%;
  }
}

/* ================= RESPONSIVE ================= */

@media(max-width:991px){

  .navbar ul{
    display:none;
  }

  .mobile-nav-toggle{
    display:block;
  }

  .static-line{
    font-size:34px;
  }

  .word-animate{
    font-size:18px;
  }

  .fade-line{
    font-size:14px;
  }

  .custom-caption{
    left:5%;
    right:5%;
    max-width:100%;
  }
}

/* ================= SLIDER END ================= */


/* ================= HERO SECTION START ================= */
/* PREMIUM MINIMAL TECH CARD STYLE */

.service-card {
    position: relative;
    background: #ffffff;
    border-radius: 14px;
    padding: 45px 28px;
    overflow: hidden;
    transition: all 0.45s ease;
    border: 1px solid rgba(0,0,0,0.06);
    box-shadow:0 10px 35px rgba(0,0,0,0.05);
    z-index: 1;
}

/* HOVER EFFECT */

.service-card:hover {
    transform: translateY(-12px);
    border-color: rgba(255,153,51,0.25);
    box-shadow:
        0 25px 60px rgba(0,0,0,0.1);
}

/* ICON */

.service-icon {
    width: 85px;
    height: 85px;
    border-radius: 14px;
    background: linear-gradient(
        135deg,
        #ff9933,
        #ffb366
    );
    display: flex;
    align-items: center;
    justify-content: center;
    margin: auto;
    margin-bottom: 28px;
    position: relative;
    transition: 0.45s ease;
    box-shadow:
        0 12px 28px rgba(255,153,51,0.3);
}

.service-icon i {
    font-size: 38px;
    color: #fff;
    transition: 0.4s ease;
}

/* ICON ANIMATION */

.service-card:hover .service-icon {
    transform: rotate(-8deg) scale(1.08);
}

/* TITLE */

.service-content h4 {
    font-size: 1.15rem;
    font-weight: 700;
    color: #111;
    margin-bottom: 16px;
    letter-spacing: 0.5px;
}

/* DESCRIPTION */

.service-content p {
    font-size: 0.96rem;
    line-height: 1.9;
    color: #666;
    margin-bottom: 0;
}

/* BOTTOM LINE */

.service-line {
    width: 45px;
    height: 4px;
    border-radius: 30px;
    background: #ff9933;
    margin: 24px auto 0;
    transition: 0.4s ease;
}

.service-card:hover .service-line {
    width: 90px;
}

/* RESPONSIVE */

@media (max-width: 991px) {

    .service-card {
        padding: 38px 24px;
    }

    .service-content h4 {
        font-size: 1.05rem;
    }

    .service-content p {
        font-size: 0.92rem;
    }
}

@media (max-width: 576px) {

    .service-card {
        padding: 32px 20px;
        border-radius: 24px;
    }

    .service-icon {
        width: 75px;
        height: 75px;
    }

    .service-icon i {
        font-size: 32px;
    }
}
/* ================= HERO SECTION END ================= */

/* ================= ABOUT SECTION START ================= */

.about-section {
    position: relative;
    /* padding: 120px 0; */
    background: #fff;
    overflow: hidden;
}

/* BACKGROUND GLOW */

.about-section::before {
    content: "";
    position: absolute;
    width: 450px;
    height: 450px;
    background: rgba(255,153,51,0.08);
    border-radius: 50%;
    top: -180px;
    right: -180px;
    filter: blur(90px);
}

/* SECTION TITLE */

/* .section-title {
    margin-bottom: 80px;
} */

.sub-title {
    display: inline-block;
    padding: 10px 20px;
    border-radius: 10px;
    background: rgba(255,153,51,0.12);
    color: #ff9933;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1px;
    margin-bottom: 18px;
}

.section-title h2 {
    font-size: 3rem;
    font-weight: 800;
    color: #111;
    margin-bottom: 20px;
    line-height: 1.3;
}

.section-title p {
    max-width: 820px;
    margin: auto;
    font-size: 1.05rem;
    line-height: 2;
    color: #666;
}

/* ABOUT CARD */

.about-card {
    background: #fff;
    border-radius: 20px;
    padding: 50px;
    box-shadow:
        0 20px 60px rgba(0,0,0,0.06);
    border: 1px solid rgba(0,0,0,0.05);
    position: relative;
    overflow: hidden;
}

.about-card::before {
    content: "";
    position: absolute;
    width: 220px;
    height: 220px;
    background: rgba(255,153,51,0.08);
    border-radius: 50%;
    top: -90px;
    right: -90px;
}

.mini-tag {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #ff9933;
    font-weight: 700;
    margin-bottom: 22px;
}

.about-card h3 {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.5;
    color: #111;
    margin-bottom: 22px;
}

.about-card p {
    font-size: 1rem;
    line-height: 2;
    color: #666;
}

/* POINTS */

.about-points {
    margin-top: 35px;
}

.point-item {
    display: flex;
    gap: 18px;
    margin-bottom: 28px;
}

.point-icon {
    width: 55px;
    height: 55px;
    min-width: 55px;
    border-radius: 18px;
    background: rgba(255,153,51,0.12);
    display: flex;
    align-items: center;
    justify-content: center;
}

.point-icon i {
    color: #ff9933;
    font-size: 22px;
}

.point-item h5 {
    font-size: 1.1rem;
    font-weight: 700;
    margin-bottom: 8px;
    color: #111;
}

.point-item p {
    margin: 0;
    font-size: 0.95rem;
}

/* BUTTON */

.about-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 15px 32px;
    border-radius: 10px;
    background: #ff9933;
    color: #fff;
    text-decoration: none;
    font-weight: 600;
    margin-top: 18px;
    transition: 0.4s ease;
    /* box-shadow: 0 12px 30px rgba(255,153,51,0.28); */
}

.about-btn:hover {
    background: #111;
    color: #fff;
    transform: translateY(-5px);
}

/* IMAGE */

.about-image-wrapper {
    position: relative;
}

.about-image-wrapper img,
.team-image img {
    border-radius: 20px;
    width: 100%;
    object-fit: cover;
    box-shadow:
        0 25px 60px rgba(0,0,0,0.12);
}

/* FLOATING EXPERIENCE */

.experience-box {
    position: absolute;
    bottom: 30px;
    left: -20px;
    background: #111;
    color: #fff;
    padding: 24px 28px;
    border-radius: 24px;
    box-shadow:
        0 15px 40px rgba(0,0,0,0.2);
}

.experience-box h4 {
    font-size: 2rem;
    font-weight: 800;
    color: #ff9933;
    margin-bottom: 4px;
}

.experience-box p {
    margin: 0;
    font-size: 0.95rem;
}

/* CONTENT BOX */

.content-box h3 {
    font-size: 2.1rem;
    font-weight: 700;
    line-height: 1.5;
    margin: 18px 0 22px;
    color: #111;
}

.content-box p {
    font-size: 1rem;
    line-height: 2;
    color: #666;
}

/* SERVICE GRID */

.service-grid {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 20px;
    margin-top: 40px;
}

.service-item {
    display: flex;
    align-items: center;
    gap: 14px;
    background: #fff;
    padding: 18px 22px;
    border-radius: 10px;
    border: 1px solid rgba(0,0,0,0.06);
    box-shadow:
        0 10px 25px rgba(0,0,0,0.04);
    transition: 0.4s ease;
}

.service-item:hover {
    transform: translateY(-6px);
    border-color: rgba(255,153,51,0.35);
}

.service-item i {
    width: 48px;
    height: 48px;
    border-radius: 14px;
    background: rgba(255,153,51,0.12);
    color: #ff9933;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
}

.service-item span {
    font-weight: 600;
    color: #222;
}

/* RESPONSIVE */

@media (max-width: 991px) {

    .about-section {
        padding: 90px 0;
    }

    .section-title h2 {
        font-size: 2.2rem;
    }

    .about-card {
        padding: 35px;
    }

    .about-card h3,
    .content-box h3 {
        font-size: 1.7rem;
    }

    .experience-box {
        left: 20px;
    }

    .service-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 576px) {

    .section-title h2 {
        font-size: 1.8rem;
    }

    .about-card {
        padding: 28px 22px;
        border-radius: 24px;
    }

    .about-card h3,
    .content-box h3 {
        font-size: 1.4rem;
    }

    .point-item {
        flex-direction: column;
    }

    .experience-box {
        position: relative;
        left: 0;
        bottom: 0;
        margin-top: 20px;
        width: fit-content;
    }
}

/* ================= ABOUT SECTION END ================= */

/* ================= SERVICE SECTION START ================= */

/* =====================================
        MODERN SERVICES V2
===================================== */

.services-modern {
    position: relative;
    /* padding: 120px 0; */
    background: #fff;
    overflow: hidden;
}

/* BACKGROUND */

.services-modern::before {
    content: "";
    position: absolute;
    width: 550px;
    height: 550px;
    background: rgba(255,153,51,0.08);
    border-radius: 50%;
    top: -250px;
    left: -250px;
    filter: blur(100px);
}

/* HEADER */

.services-header {
    margin-bottom: 25px;
}

.mini-title {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 12px 22px;
    border-radius: 10px;
    background: rgba(255,153,51,0.12);
    color: #ff9933;
    font-weight: 700;
    font-size: 14px;
    margin-bottom: 22px;
}

.services-header h2 {
    font-size: 3rem;
    font-weight: 800;
    color: #111;
    line-height: 1.3;
    margin-bottom: 20px;
}

.services-header h2 span {
    color: #ff9933;
}

.services-header p {
    max-width: 760px;
    margin: auto;
    line-height: 2;
    color: #666;
    font-size: 1.05rem;
}

/* SERVICES WRAPPER */

.services-wrapper {
    display: flex;
    flex-direction: column;
    gap: 28px;
}

/* CARD */

.service-item-card {
    position: relative;
    display: flex;
    align-items: center;
    gap: 35px;
    padding: 40px;
    border-radius: 20px;
    background: #fff;
    border: 1px solid rgba(0,0,0,0.06);

    transition: 0.4s ease;

    box-shadow:
        0 15px 45px rgba(0,0,0,0.04);
}

.service-item-card:hover {
    transform: translateY(-8px);
    box-shadow:
        0 25px 60px rgba(0,0,0,0.08);
}

/* ACTIVE CARD */

.active-card {
        background: linear-gradient(135deg, #ff9933, #ffb15c);  
        
}

.active-card h3,
.active-card p,
.active-card span {
    color: #fff !important;
}

/* LEFT */

.service-left {
    position: relative;
}

.service-icon-box {
    width: 110px;
    height: 110px;
    border-radius: 20px;
    background: rgba(255,153,51,0.12);

    display: flex;
    align-items: center;
    justify-content: center;
}

.active-card .service-icon-box {
    background: rgb(255 251 251 / 54%);
}

.service-icon-box i {
    font-size: 48px;
    color: #ff9933;
}

/* CONTENT */

.service-content {
    flex: 1;
}

.service-tag {
    display: inline-block;
    margin-bottom: 16px;
    color: #ff9933;
    font-weight: 700;
    font-size: 14px;
    letter-spacing: 1px;
}

.service-content h3 {
    font-size: 1.8rem;
    font-weight: 700;
    color: #111;
    margin-bottom: 16px;
}

.service-content p {
    color: #666;
    line-height: 1.9;
    margin-bottom: 25px;
}

/* LIST */

.service-list {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
}

.service-list span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    border-radius: 10px;
    background: rgba(255,153,51,0.10);
    color: #333;
    font-size: 14px;
    font-weight: 600;
}

.active-card .service-list span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    border-radius: 10px;
    background: rgb(249 249 249 / 48%);
    color: #fff;
    font-size: 14px;
    font-weight: 600;
}

.service-list span i {
    color: #ff9933;
}

/* CTA */

.services-bottom {
    margin-top: 40px;
}

.bottom-content {
    padding: 40px 40px;
    border-radius: 20px;
    background:
        linear-gradient(
            135deg,
            #ff9933,
            #ffb15c
        );

    color: #fff;

    position: relative;
    overflow: hidden;
}

.bottom-content::before {
    content: "";
    position: absolute;
    width: 400px;
    height: 400px;
    background: rgba(255,255,255,0.08);
    border-radius: 50%;
    top: -200px;
    right: -150px;
}

.bottom-tag {
    display: inline-block;
    padding: 12px 22px;
    border-radius: 10px;
    background: rgba(255,255,255,0.15);
    margin-bottom: 24px;
    font-weight: 600;
}

.bottom-content h3 {
    font-size: 2.5rem;
    font-weight: 800;
    margin-bottom: 18px;
}

.bottom-content p {
    max-width: 700px;
    margin: auto auto 35px;
    line-height: 2;
    color: rgba(255,255,255,0.9);
}

.contact-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 16px 38px;
    border-radius: 60px;
    background: #ff9933;
    color: #fff;
    text-decoration: none;
    font-weight: 600;

    transition: 0.4s ease;
}

.contact-btn:hover {
    background: #fff;
    color: #111;
    transform: translateY(-5px);
}

/* RESPONSIVE */

@media (max-width: 991px) {

    .services-modern {
        padding: 90px 0;
    }

    .services-header h2 {
        font-size: 2.3rem;
    }

    .service-item-card {
        flex-direction: column;
        align-items: flex-start;
    }

    .bottom-content h3 {
        font-size: 2rem;
    }
}

@media (max-width: 576px) {

    .services-header h2 {
        font-size: 1.8rem;
    }

    .service-item-card {
        padding: 28px 22px;
        border-radius: 25px;
        gap: 24px;
    }

    .service-icon-box {
        width: 85px;
        height: 85px;
        border-radius: 24px;
    }

    .service-icon-box i {
        font-size: 36px;
    }

    .service-content h3 {
        font-size: 1.4rem;
    }

    .bottom-content {
        padding: 60px 24px;
        border-radius: 30px;
    }

    .bottom-content h3 {
        font-size: 1.6rem;
    }
}
/* ================= SERVICE SECTION END ================= */

/* ================= CONTACT SECTION START ================= */

/* ====================================
        PREMIUM CONTACT SECTION
==================================== */

.contact-modern {
    position: relative;
    /* padding: 120px 0; */
    background:
        linear-gradient(
            180deg,
            #fff,
            #fff7ef
        );
    overflow: hidden;
}

/* BACKGROUND EFFECT */

.contact-modern::before {
    content: "";
    position: absolute;
    width: 550px;
    height: 550px;
    background: rgba(255,153,51,0.08);
    border-radius: 50%;
    top: -250px;
    right: -250px;
    filter: blur(100px);
}

/* LEFT SIDE */

.contact-left {
    position: relative;
}

.contact-badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;

    padding: 12px 24px;
    border-radius: 10px;

    background: rgba(255,153,51,0.12);

    color: #ff9933;
    font-size: 14px;
    font-weight: 700;

    margin-bottom: 28px;
}

.contact-left h2 {
    font-size: 3rem;
    font-weight: 800;
    line-height: 1.3;
    color: #111;
    margin-bottom: 24px;
}

.contact-left h2 span {
    color: #ff9933;
}

.contact-left p {
    color: #666;
    line-height: 2;
    margin-bottom: 40px;
    font-size: 1.05rem;
}

/* CONTACT INFO CARD */

.contact-info-card {
    display: flex;
    align-items: center;
    gap: 20px;

    padding: 24px;
    margin-bottom: 20px;

    border-radius: 12px;

    background: #fff;

    border: 1px solid rgba(0,0,0,0.05);

    box-shadow:
        0 15px 40px rgba(0,0,0,0.04);

    transition: 0.4s ease;
}

.contact-info-card:hover {
    transform: translateY(-6px);
}

.contact-icon {
    width: 70px;
    height: 70px;

    border-radius: 20px;

    background: rgba(255,153,51,0.12);

    display: flex;
    align-items: center;
    justify-content: center;
}

.contact-icon i {
    font-size: 30px;
    color: #ff9933;
}

.skype-icon {
    background: rgba(0,173,247,0.12);
}

.skype-icon i {
    color: #00adf7;
}

.contact-content span {
    display: block;
    font-size: 14px;
    color: #999;
    margin-bottom: 8px;
}

.contact-content a {
    color: #111;
    text-decoration: none;
    font-weight: 700;
    font-size: 1.05rem;
}

/* RIGHT CARD */

.contact-card {
    position: relative;
    padding: 50px;
    border-radius: 15px;
    background: #fff;
    border: 1px solid rgba(0,0,0,0.05);
    box-shadow:
        0 25px 60px rgba(0,0,0,0.05);
}

/* TOP */

.contact-card-top {
    margin-bottom: 20px;
}

.mini-text {
    display: inline-block;

    color: #ff9933;
    font-weight: 700;
    font-size: 14px;

    margin-bottom: 16px;
}

.contact-card-top h3 {
    font-size: 2rem;
    font-weight: 800;
    color: #111;
    margin-bottom: 18px;
}

.contact-card-top p {
    color: #666;
    line-height: 1.9;
}

/* INPUT BOX */

.input-box {
    position: relative;
}

.input-box input,
.input-box textarea {

    width: 100%;

    padding:
        18px 22px;

    padding-right: 55px;

    border-radius: 18px;

    border: 1px solid rgba(0,0,0,0.08);

    background: #f9f9f9;

    font-size: 15px;

    transition: 0.3s ease;

    outline: none;
}

.input-box textarea {
    resize: none;
}

.input-box input:focus,
.input-box textarea:focus {

    border-color: #ff9933;
    background: #fff;

    box-shadow:
        0 0 0 5px rgba(255,153,51,0.08);
}

.input-box i {
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    color: #999;
    font-size: 20px;
}

.textarea-box i {
    top: 25px;
    transform: none;
}

/* BUTTON */

.contact-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 18px 40px;
    border: none;
    outline: none;
    border-radius: 10px;
    background:#ff9933;
    color: #fff;
    font-weight: 700;
    font-size: 15px;
    transition: 0.4s ease;
    /* box-shadow:0 15px 35px rgba(255,153,51,0.3); */
}

.contact-btn:hover {
    transform: translateY(-5px);
    background:#000;
    color: #fff;
}
.get-started-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 18px 40px;
    border: none;
    outline: none;
    border-radius: 10px;
    background:#000;
    color: #fff;
    font-weight: 700;
    font-size: 15px;
    transition: 0.4s ease;
    text-decoration: none;
    /* box-shadow:0 15px 35px rgba(255,153,51,0.3); */
}

.get-started-btn:hover {
    transform: translateY(-5px);
    background:#fff;
    color: #000;
}


/* RESPONSIVE */

@media (max-width: 991px) {

    .contact-modern {
        padding: 90px 0;
    }

    .contact-left h2 {
        font-size: 2.3rem;
    }

    .contact-card {
        padding: 40px 30px;
    }
}

@media (max-width: 576px) {

    .contact-left h2 {
        font-size: 1.8rem;
    }

    .contact-card {
        padding: 30px 20px;
        border-radius: 25px;
    }

    .contact-card-top h3 {
        font-size: 1.5rem;
    }

    .contact-info-card {
        padding: 20px;
        gap: 15px;
    }

    .contact-icon {
        width: 60px;
        height: 60px;
    }

    .contact-icon i {
        font-size: 26px;
    }

    .why-choose-us{
        margin-top: 20px;
    }
    .about-section{
        padding: 40px 0;
    }
    .services-modern {
        padding: 40px 0;
    }
    .contact-modern {
        padding: 40px 0;
    }
}

/* ================= CONTACT SECTION END ================= */

/* ================= FOOTER START ================= */

/* ===================================
        MODERN MINIMAL FOOTER
=================================== */

.modern-footer {

    background:
        linear-gradient(
            135deg,
            #111111,
            #1a1a1a
        );

    position: relative;

    overflow: hidden;
}

/* ORANGE GLOW */

.modern-footer::before {

    content: "";

    position: absolute;

    width: 450px;
    height: 450px;

    background:
        rgba(255,153,51,0.08);

    border-radius: 50%;

    top: -220px;
    left: -180px;

    filter: blur(120px);
}

/* MAIN */

.footer-main {

    padding: 50px 0 70px;

    position: relative;
}

/* LOGO */

.footer-logo h2 {

    color: #000;

    font-size: 2.5rem;
    font-weight: 800;

    line-height: 1.2;

    margin-bottom: 24px;
}

.footer-logo h2 span {

    display: block;

    color: #ff9933;
}

/* TEXT */

.footer-text {

    color:
        rgba(0, 0, 0, 0.7);

    line-height: 2;

    margin-bottom: 40px;

    max-width: 520px;
}

/* CONTACT WRAP */

.footer-contact-wrap {

    display: flex;
    flex-direction: column;
    gap: 18px;
}

/* CONTACT CARD */

.footer-contact-card {

    display: flex;
    align-items: center;
    gap: 18px;

    padding: 20px 24px;

    background:
        rgba(255,255,255,0.05);

    border:
        1px solid rgba(255,255,255,0.06);

    border-radius: 22px;

    text-decoration: none;

    transition: 0.4s ease;
}

.footer-contact-card:hover {

    transform:
        translateY(-6px);

    background:
        rgba(255,153,51,0.10);

    border-color:
        rgba(255,153,51,0.25);
}

/* ICON */
.g-recaptcha {
    margin: 20px 0;
}
.contact-btn:disabled {
    opacity: 0.7;
    cursor: not-allowed;
    pointer-events: none;
}
.btn-loader i {
    font-size: 20px;
    animation: rotateLoader 1s linear infinite;
}
@keyframes rotateLoader {
    100% {
        transform: rotate(360deg);
    }
}
.footer-contact-icon {
    width: 60px;
    height: 60px;
    border-radius: 18px;
    background:
        rgba(255,153,51,0.12);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.footer-contact-icon i {

    color: #ff9933;

    font-size: 28px;
}

/* TEXT */

.footer-contact-card span {

    display: block;

    color:
        #000;

    font-size: 14px;

    margin-bottom: 6px;
}

.footer-contact-card h5 {

    margin: 0;

    color: #000;

    font-size: 1rem;
    font-weight: 600;
}

/* LINKS */

.footer-links h4 {

    color: #000;

    font-size: 1.4rem;
    font-weight: 700;

    margin-bottom: 35px;

    position: relative;
}

.footer-links h4::after {

    content: "";

    position: absolute;

    left: 0;
    bottom: -12px;

    width: 45px;
    height: 3px;

    border-radius: 30px;

    background: #ff9933;
}

.footer-links ul {

    list-style: none;

    padding: 0;
    margin: 0;
}

.footer-links ul li {

    margin-bottom: 18px;
}

.footer-links ul li a {

    color:
       #000;

    text-decoration: none;

    transition: 0.3s ease;

    position: relative;

    padding-left: 18px;
}

.footer-links ul li a::before {

    content: "";

    position: absolute;

    left: 0;
    top: 50%;

    width: 6px;
    height: 6px;

    border-radius: 50%;

    background: #ff9933;

    transform: translateY(-50%);
}

.footer-links ul li a:hover {

    color: #000;

    padding-left: 24px;
}

/* BOTTOM */

.footer-bottom {

    border-top:
        1px solid rgba(255,255,255,0.08);

    padding: 25px 0;
}

.footer-bottom-flex {

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 20px;

    flex-wrap: wrap;
}

.footer-bottom p {

    margin: 0;

    color:#000;
       
}

.footer-bottom span {

    color: #ff9933;

    font-weight: 700;
}

/* SOCIALS */

.footer-socials {

    display: flex;
    align-items: center;
    gap: 14px;
}

.footer-socials a {

    width: 46px;
    height: 46px;

    border-radius: 14px;

    background:
        rgba(255,255,255,0.06);

    display: flex;
    align-items: center;
    justify-content: center;

    text-decoration: none;

    color: #000;

    transition: 0.4s ease;
}

.footer-socials a:hover {

    background: #ff9933;

    transform:
        translateY(-5px);
}

/* RESPONSIVE */

@media (max-width: 991px) {

    .footer-main {

        padding: 80px 0 50px;
    }

    .footer-logo h2 {

        font-size: 2rem;
    }
}

@media (max-width: 576px) {

    .footer-main {

        padding: 70px 0 40px;
    }

    .footer-logo h2 {

        font-size: 1.7rem;
    }

    .footer-links {

        margin-top: 10px;
    }

    .footer-bottom-flex {

        justify-content: center;

        text-align: center;
    }

    .footer-contact-card {

        padding: 18px;
    }
}

/* ================= FOOTER END ================= */


html{
    scroll-behavior:smooth;
}

#hero,
#about,
#services,
#contact{
    scroll-margin-top:80px;
}


.contact-btn{

    position:relative;
    overflow:hidden;
    min-width:230px;
    height:58px;

}

.btn-loader{

    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;

}

/* HIDE */

.d-none{
    display:none !important;
}

/* FANCY LOADER */

.loader-ring{

    width:22px;
    height:22px;
    border:3px solid
    rgba(255,255,255,0.3);

    border-top:3px solid #fff;

    border-radius:50%;

    animation:spin 0.8s linear infinite;

}

@keyframes spin{

    100%{
        transform:rotate(360deg);
    }

}

/* BUTTON LOADING EFFECT */

.contact-btn.loading{

    pointer-events:none;

    opacity:0.9;

    transform:scale(0.98);

}