/*!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!*/
/*!!!!!!!!!!!!!!!!!!!!!!! GLOBAL & RESET STYLES START !!!!!!!!!!!!!!!!!!!!*/
/*!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!*/
:root {
  --white: #ffffff;
  --white-rgb: 255,255,255;
  --black: #000000;
  --primary: #1e6f5c;
  --secondary: #f4a261;
  --tertiary: #e76f51;
  --dark: #020e28;
  --headings-color: #1e2a3a;
  --body-color: #4a5568;
  --border-color: #e2e8f0;
  --shade: #f8f9fa;
  --mute: #a0aec0;
  --font-family-base: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
  --font-family-btn: 'Inter', system-ui, sans-serif;
  --font-size-base: 1rem;
  --font-weight-base: 400;
  --line-height-base: 1.5;
}

* { margin: 0; padding: 0; box-sizing: border-box; }

body {
  font-family: var(--font-family-base);
  background: #fefcf5;
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-base);
  line-height: var(--line-height-base);
  color: var(--body-color);
}

.display-6 { font-size: 1.25rem; font-weight: 600; line-height: 1.3; }
.display-5 { font-size: 1.5rem; font-weight: 600; line-height: 1.2; }
.display-4 { font-size: 2rem; font-weight: 600; line-height: 1.2; }
.display-2 { font-size: 3rem; font-weight: 700; line-height: 1.2; }
.h6 { font-size: 1rem; font-weight: 500; }
.overly { position: relative; z-index: 1; }
.round { border-radius: 30px; }
.rounded-4 { border-radius: 20px !important; }
.rounded-2 { border-radius: 10px !important; }
.icon-xs { width: 38px; height: 38px; display: inline-flex; align-items: center; justify-content: center; }
.icon-md { width: 52px; height: 52px; display: inline-flex; align-items: center; justify-content: center; }
.icon-lg { width: 60px; height: 60px; display: inline-flex; align-items: center; justify-content: center; }
.bg-primary { background-color: var(--primary) !important; }
.bg-secondary { background-color: var(--secondary) !important; }
.btn-secondary { background-color: var(--secondary); border-color: var(--secondary); color: #fff; transition: 0.2s; }
.btn-secondary:hover { background-color: #e76f51; border-color: #e76f51; color: white; }
.btn { border-radius: 40px; font-weight: 600; padding: 10px 28px; font-size: 15px; text-transform: capitalize; transition: all 0.4s ease-in-out; }
.btn i.fa-arrow-right { transform: rotate(-30deg); transition: all 0.4s ease-in-out; }
.btn:hover i.fa-arrow-right { transform: rotate(0deg); }
.text-dark { color: #1e2a3a !important; }
.text-info { color: var(--white) !important; }
.container.ct-container { max-width: 1300px; margin: 0 auto; padding-left: 24px; padding-right: 24px; }
.container-fluid.ct-container { max-width: 1400px; margin: 0 auto; padding-left: 24px; padding-right: 24px; }
@media (max-width: 768px) { .container.ct-container, .container-fluid.ct-container { padding-left: 16px; padding-right: 16px; } }
@media (min-width: 1200px) { .container { max-width: 1290px; } }
/*!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! GLOBAL & RESET STYLES END !!!!!!!!!!!!!!!!!!!!!!!!!!!*/

/*AAAAAAAAAAAAAAAAAAAAAAA!!! HEADER STYLES STARTS !!!AAAAAAAAAAAAAAAAAAA*/
.header { position: relative; z-index: 9; }
.header .header-wrapper { position: absolute; width: 100%; top: 0; left: 0; right: 0; background-color: var(--white); }
.header-middle { background-color: var(--primary); padding: 8px 0; }
@media (max-width: 1199px) { .header-middle { padding: 8px 0; } }
.header-connect { max-width: 950px; margin-left: auto; display: flex; justify-content: space-between; gap: 20px; }
@media (max-width: 1199px) { .header-connect { margin: 0 auto; justify-content: space-evenly; flex-wrap: wrap; } }
.single-conn { position: relative; }
.conn-txt small { display: block; color: rgba(var(--white-rgb), 0.7); font-size: 0.8rem; }
.conn-txt a, .conn-txt span { font-size: 1.25rem; font-weight: 600; color: var(--white); text-decoration: none; }
.single-conn::before { content: ""; position: absolute; width: 2px; height: 52px; top: 50%; transform: translateY(-50%); left: 130%; background: rgba(255,255,255,0.2); }
.single-conn:last-child::before { display: none; }
@media (max-width: 991px) { .single-conn::before { display: none; } }

.header.header-1 { height: auto; }
@media (max-width: 1199px) { .header.header-1 { height: auto; } }
.header.header-1 nav.navbar { position: absolute; left: 0; width: 100%; padding: 0; bottom: -30px; background: transparent; }
@media (max-width: 1199px) { .header.header-1 nav.navbar { background-color: var(--white); padding: 10px 0px; bottom: auto; position: relative; } }
.header.header-1 .offcanvas-body { background-color: var(--white); border-radius: 50px; padding: 0 15px; }
@media (max-width: 1199px) { .header.header-1 .offcanvas-body { border-radius: 0; } }
.navbar .navbar-nav > li a.nav-link { padding: 21px 18px; font-weight: 600; color: var(--headings-color); transition: 0.2s; }
.navbar .navbar-nav > li a.nav-link:hover { color: var(--secondary); }

.header-nav-wrapper.header-sticky.scroll-on { position: fixed; left: 0; top: 0; right: 0; z-index: 99; background: var(--white); box-shadow: 0 0.25rem 1.25rem rgba(0,0,0,0.07); animation: headerSlideDown 1.3s ease forwards; }
@keyframes headerSlideDown { 0% { margin-top: -6.25rem; } to { margin-top: 0; } }

.dropdown-menu { border: none; border-radius: 12px; box-shadow: -2px 2px 70px -25px rgba(0,0,0,0.2); padding: 12px 0; }
.dropdown-item { font-weight: 500; padding: 8px 20px; transition: 0.2s; }
.dropdown-item:hover { background-color: #f8f9fa; color: var(--secondary); padding-left: 26px !important; }
.dropdown-submenu { position: relative; }
.dropdown-submenu .dropdown-menu { top: 0; left: 100%; margin-top: -8px; }
@media (max-width: 1199px) { .dropdown-submenu .dropdown-menu { position: static; float: none; width: auto; margin-top: 0; background-color: #f8f9fa; box-shadow: none; padding-left: 20px; } }
.navbar .dropdown-toggle::after { content: "\f107"; font-family: "Font Awesome 6 Free"; font-weight: 900; border: 0; margin-left: 6px; vertical-align: middle; }

.offcanvas-nav .offcanvas-header { border-bottom: 1px solid #dee2e6; }
.btn-close { background: transparent; position: relative; opacity: 1; }
.btn-close:before { font-family: "Font Awesome 6 Free"; content: "\f00d"; font-weight: 900; color: var(--primary); }
.nav-cta .burger-menu { background-color: var(--white); border: 1px solid #ddd; width: 48px; height: 48px; border-radius: 30px; transition: 0.2s; }
.burger-menu svg path { fill: #020e28; }
.burger-menu:hover { background-color: var(--secondary); border-color: var(--secondary); }
.burger-menu:hover svg path { fill: white; }
.search-btn { background: #f1f5f9; }
.nav-end span a { color: var(--primary); font-weight: 600; text-decoration: none; }
@media (max-width: 1199px) { .navbar .navbar-nav > li a.nav-link { padding: 15px 18px; } .nav-cta .btn { padding: 8px 20px; } }
@media (max-width: 576px) { .header-socials { width: 100%; justify-content: center; } .header-top p { display: none; } .single-conn .conn-txt a, .single-conn .conn-txt span { font-size: 0.9rem; } }
.social-share a { color: #4a5568; margin-left: 12px; font-size: 1rem; transition: 0.2s; }
.social-share a:hover { color: var(--secondary); }
/*AAAAAAAAAAAAAAAAAAAAAAA!!! HEADER STYLES ENDS !!!AAAAAAAAAAAAAAAAAAAAA*/

/*AAAAAAAAAAAAAAAAAAAAAAA!!! SLIDER STYLES STARTS !!!AAAAAAAAAAAAAAAAAAA*/
.slider-sec { overflow: hidden; position: relative; width: 100%; }
.slider-sec .anim-alt { position: absolute; z-index: 2; max-height: 165px; pointer-events: none; }
.slider-sec .anim-alt.right-bottom { right: 0; bottom: 0; }
.slider-sec .anim-img { position: absolute; z-index: 2; pointer-events: none; }
.slider-sec .anim-img.center { left: 50%; bottom: 50px; transform: translateX(-50%); }
.slider-sec .anim-img.right-top { top: 100px; right: 30px; animation: zoom 8s ease infinite; }
.slider-sec .anim-img.right-bottom { bottom: 50px; right: 30px; animation: jumping2 8s ease infinite; }
@keyframes zoom { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.1); } }
@keyframes jumping2 { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-20px); } }

.slide-item { position: relative; min-height: 100vh; width: 100%; display: flex; align-items: center; padding: 180px 0; }
.slide-item .slide-bg { position: absolute; left: 0; top: 0; width: 100%; height: 100%; background-size: cover; background-position: center; background-repeat: no-repeat; }
.parallax-overly { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(98deg, rgba(2,14,40,0.75) 0%, rgba(30,111,92,0.65) 100%); z-index: 1; }
.slide-item .slide-content { position: relative; z-index: 2; max-width: 650px; padding: 0 20px; margin-top: -30px; }
.slide-item .slide-content h1 { color: var(--white); font-weight: 800; margin: 15px 0 20px; font-size: 70px; line-height: 1.2; }
.slide-item .slide-content h1 img { width: 50px; display: inline-block; margin-left: 10px; }
.slide-item .slide-content p { color: var(--white); font-size: 1.1rem; }
.slide-item .slide-content .play-btn { animation: animate_pulse 3s linear infinite; height: 56px; width: 56px; margin-left: 30px; display: inline-flex; align-items: center; justify-content: center; text-decoration: none; }
.sub-title.single { font-size: 1rem; letter-spacing: 1px; font-style: italic; background: rgba(255,255,255,0.2); display: inline-block; padding: 6px 20px; border-radius: 40px; margin-bottom: 20px; color: var(--secondary) !important; }
.text-secondary { color: var(--secondary) !important; }
.btn-primary { background-color: var(--primary); border-color: var(--primary); color: #fff; border-radius: 40px; font-weight: 600; padding: 16px 32px; transition: 0.2s; text-decoration: none; display: inline-flex; align-items: center; gap: 8px; }
.btn-primary:hover { background-color: var(--secondary); border-color: var(--secondary); color: white; }
.btn-primary:hover i.fa-arrow-right { transform: rotate(0deg); }
@keyframes animate_pulse { 0% { box-shadow: 0 0 0 0 rgba(244,162,97,0.7); } 70% { box-shadow: 0 0 0 15px rgba(244,162,97,0); } 100% { box-shadow: 0 0 0 0 rgba(244,162,97,0); } }
.hero-slider1 .slide-bg { transform: scale(1); transition: transform 6.3s ease-out; }
.hero-slider1 .swiper-slide-active .slide-bg { animation: zoomBg 6.3s ease-out forwards; }
@keyframes zoomBg { from { transform: scale(1); } to { transform: scale(1.12); } }
.swiper-slide .anim1, .swiper-slide .anim2, .swiper-slide .anim3 { opacity: 0; }
.swiper-slide.swiper-slide-active .anim1 { animation: fadeInLeft 0.9s forwards; animation-delay: 0.2s; }
.swiper-slide.swiper-slide-active .anim2 { animation: fadeInLeft 1s forwards; animation-delay: 0.4s; }
.swiper-slide.swiper-slide-active .anim3 { animation: fadeInLeft 1.2s forwards; animation-delay: 0.6s; }
@keyframes fadeInLeft { from { opacity: 0; transform: translateX(-35px); } to { opacity: 1; transform: translateX(0); } }
@media (max-width: 991px) { .slide-item { padding: 100px 0; } .slide-item .slide-content { margin-top: -20px; } .slide-item .slide-content h1 { font-size: 45px; } }
@media (max-width: 576px) { .slide-item { padding: 80px 0; } .slide-item .slide-content h1 { font-size: 36px; } }
/*AAAAAAAAAAAAAAAAAAAAAAA!!! SLIDER STYLES ENDS !!!AAAAAAAAAAAAAAAAAAAAA*/

/*AAAAAAAAAAAAAAAAAAAAAAA!!! ABOUT SECTION STYLES STARTS !!!AAAAAAAAAAAAAAAAAAA*/
.sec-padding { padding: 120px 0; }
@media (max-width: 991px) { .sec-padding { padding: 70px 0; } }
.sec-title { font-size: 3rem; font-weight: 700; margin-bottom: 20px; line-height: 1.2; }
@media (max-width: 991px) { .sec-title { font-size: 40px; } }
@media (max-width: 576px) { .sec-title { font-size: 36px; } }
.sub-title { font-family: 'Caveat', cursive; display: inline-block; color: var(--secondary); font-size: 28px; margin-bottom: 15px; position: relative; z-index: 1; }
@media (max-width: 576px) { .sub-title { font-size: 26px; } }
.sec-intro { margin: 0 0 60px; max-width: 700px; }
.about-media { position: relative; }
.about-feat { overflow: hidden; border-radius: 30px; }
.about-feat img { width: 100%; border-radius: 30px; transition: transform 0.6s ease; }
.about-feat:hover img { transform: scale(1.05); }
.about-stat { position: absolute; bottom: 30px; left: 30px; background-color: var(--primary); padding: 20px 30px; border-radius: 30px; text-align: center; }
.about-stat .display-2 { font-size: 2.5rem; color: white; font-weight: 700; margin-bottom: 5px; }
.about-stat p { color: rgba(255,255,255,0.8); margin-bottom: 0; }
.ab-img { position: absolute; bottom: -30px; right: -30px; max-width: 120px; }
.about-features { background-repeat: no-repeat; background-position: center; background-size: contain; padding: 20px 0; }
.af-item { margin-bottom: 25px; }
.af-item span img { width: 60px; }
.af-item h3 { font-size: 1.5rem; font-weight: 700; margin-bottom: 10px; }
.quick-call { display: flex; align-items: center; gap: 15px; }
.quick-call .bg-secondary { background-color: var(--secondary); border-radius: 20px; }
.quick-call .conn-txt small { color: #6c757d; }
.quick-call .conn-txt a { color: var(--headings-color); text-decoration: none; font-weight: 600; font-size: 1.2rem; }
p.lead { font-size: 18px; line-height: 1.6; font-weight: 500; }
.about-footer { gap: 30px; }
.position-absolute { position: absolute; }
.end-0 { right: 0; }
.bottom-0 { bottom: 0; }
.left-bottom { left: 0; bottom: 0; }
/*AAAAAAAAAAAAAAAAAAAAAAA!!! ABOUT SECTION STYLES ENDS !!!AAAAAAAAAAAAAAAAAAAAA*/

/*AAAAAAAAAAAAAAAAAAAAAAA!!! RECENT PROJECT STYLES STARTS !!!AAAAAAAAAAAAAAAAAAA*/
.recent-project { position: relative; overflow: hidden; }
.recent-project .anim-img { position: absolute; animation: moveY 7s ease-in-out infinite; z-index: 1; }
.recent-project .anim-img.moveY { animation: moveY 7s ease-in-out infinite; }
@keyframes moveY { 0% { transform: translateY(-80px); } 50% { transform: translateY(60px); } 100% { transform: translateY(-80px); } }
.zoom-th { overflow: hidden; border-radius: 30px; }
.zoom-th img { transform: scale(1); transition: all 0.6s linear; width: 100%; border-radius: 30px; }
.zoom-th:hover img { transform: scale(1.05); }
.project-entry2 { background-color: var(--white); border-radius: 30px; overflow: hidden; box-shadow: 0 10px 30px rgba(0,0,0,0.05); transition: all 0.3s ease; position: relative; z-index: 1; }
.project-entry2::before { content: ""; position: absolute; background: url('img/project-bg.png') no-repeat bottom left; background-size: contain; width: 100%; height: 112px; left: 0; bottom: 0; z-index: -1; pointer-events: none; }
.project-entry2:hover { transform: translateY(-10px); box-shadow: 0 20px 40px rgba(0,0,0,0.1); }
.project-entry2 .project-txt { padding: 25px; position: relative; z-index: 2; background: var(--white); border-bottom-left-radius: 30px; border-bottom-right-radius: 30px; }
.project-entry2 .project-txt h3 a { color: var(--headings-color); text-decoration: none; transition: all 0.3s ease; }
.project-entry2 .project-txt h3 a:hover { color: var(--secondary); }
.project-entry2 .project-txt small a { color: var(--secondary); text-decoration: none; font-size: 14px; text-transform: uppercase; letter-spacing: 1px; }
.project-entry2 .project-txt small a:hover { color: var(--primary); }
@media (max-width: 768px) { .project-entry2 .project-txt { padding: 20px; } .project-entry2 .project-txt h3 { font-size: 1.3rem; } .project-entry2::before { height: 80px; } }
/*AAAAAAAAAAAAAAAAAAAAAAA!!! RECENT PROJECT STYLES ENDS !!!AAAAAAAAAAAAAAAAAAAAA*/

/*AAAAAAAAAAAAAAAAAAAAAAA!!! FOOTER STYLES STARTS !!!AAAAAAAAAAAAAAAAAAA*/
.footer { padding-top: 120px; background-color: var(--tertiary); background-blend-mode: multiply; position: relative; z-index: 1; background-size: cover; background-position: center; }
@media (max-width: 576px) { .footer { padding-top: 70px; } }
.footer:before { content: ""; position: absolute; background: url('img/footer-sh1.png') no-repeat 100% 100%; width: 250px; height: 272px; left: auto; right: 0; top: auto; bottom: 0; background-size: contain; z-index: 1; pointer-events: none; }
@media (max-width: 1400px) { .footer:before { width: 130px; } }
@media (max-width: 576px) { .footer:before { display: none; } }
.footer .copy-right a { font-weight: 600; color: var(--secondary); text-decoration: none; }
.footer-top { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; }
.footer-top .subs-widget { flex: 0 0 450px; }
@media (max-width: 1200px) { .footer-top .subs-widget { flex: 0 0 300px; } }
@media (max-width: 768px) { .footer-top .subs-widget { margin: 30px 0; flex: 0 0 100%; } }
.footer-top .subs-widget form { position: relative; }
.footer-top .subs-widget form input { border-radius: 30px; background-color: var(--white); color: var(--body-color); padding-left: 30px; border: 1px solid rgba(255,255,255,0.2); width: 100%; height: 56px; font-size: 16px; }
.footer-top .subs-widget form input::placeholder { color: var(--body-color); }
.footer-top .subs-widget form button { border: 0; color: var(--white); width: 96px; height: 52px; font-size: 20px; right: 2px; top: 50%; transform: translateY(-50%); position: absolute; border-radius: 30px; }
.footer-top h2.display-4 { font-size: 40px; color: white; }
@media (max-width: 1200px) { .footer-top h2.display-4 { font-size: 28px; } }
.footer-top .subs-head p { margin: 0; color: #829592; }
.footer-widgets { margin-top: 60px; padding: 60px 0 50px; border-top: 1px solid rgba(255,255,255,0.2); }
@media (max-width: 991px) { .footer-widgets { margin-bottom: 20px; } }
@media (max-width: 576px) { .footer-widgets { margin-bottom: 0; } }
.footer-widget { margin-bottom: 30px; }
.footer-widget .f-logo { margin-bottom: 35px; }
.footer-widget .widget-title { font-size: 1.5rem; margin-bottom: 45px; color: var(--white); position: relative; z-index: 1; }
.footer-widget .widget-title::before { content: ""; position: absolute; width: 150px; height: 1px; background-color: var(--secondary); top: 38px; left: 0; }
.footer-widget .widget-title::after { position: absolute; content: ""; width: 15px; height: 3px; background-color: var(--white); opacity: 0.8; top: 36.5px; left: 0; z-index: -1; animation: moveXS 5s ease-in-out infinite; }
@keyframes moveXS { 0% { left: 0; } 50% { left: 150px; } 100% { left: 0; } }
@media (max-width: 1200px) { .footer-widget .widget-title::after { animation: none; } }
.footer-widget ul { list-style: none; padding-left: 20px; }
.footer-widget ul li { margin-bottom: 12px; position: relative; }
.footer-widget ul li::before { content: "\f105"; background-color: transparent; font-family: "Font Awesome 6 Free"; font-weight: 900; color: var(--secondary); left: -20px; top: 0; position: absolute; width: 25px; height: 25px; transition: all 0.3s ease; }
.footer-widget ul li a { color: var(--mute); text-decoration: none; }
.footer-widget ul li:hover a { color: var(--secondary); }
.footer-widget p { color: var(--mute); }
.footer-widget.rc-widget { flex: 0 0 325px; padding-left: 30px; }
@media (max-width: 768px) { .footer-widget.rc-widget { padding-left: 0; } }
.footer-widget.rc-widget .ls-entry { display: flex; margin-bottom: 20px; }
.footer-widget.rc-widget .ls-entry > img { height: 80px; width: auto; border-radius: 10px; }
.footer-widget.rc-widget .ls-entry .ls-info { text-align: left; }
.footer-widget.rc-widget .ls-entry .ls-info a, .footer-widget.rc-widget .ls-entry .ls-info span { color: var(--white); text-decoration: none; }
.footer-widget.rc-widget .ls-entry .ls-info h6 { margin-top: 5px; font-size: 16px; font-weight: 500; line-height: 26px; }
.footer-widget.rc-widget .ls-entry:hover h6 a { color: var(--secondary); }
.footer-widget .footer-info { margin-top: 30px; }
.footer-widget .footer-info .single-conn { margin-bottom: 20px; display: flex; align-items: center; }
.footer-widget .footer-info .single-conn .icon { width: 50px; height: 50px; display: inline-flex; align-items: center; justify-content: center; border-radius: 15px; color: var(--white); font-size: 18px; }
.footer-widget .footer-info .single-conn:nth-child(1) .icon { background-color: var(--primary); }
.footer-widget .footer-info .single-conn:nth-child(2) .icon { background-color: var(--secondary); }
.footer-widget .footer-info .conn-txt small { display: block; color: var(--mute); }
.footer-widget .footer-info .conn-txt a { font-size: 1rem; color: var(--white); font-weight: 500; text-decoration: none; }
.footer-bottom { background-color: var(--primary); padding: 15px 0; }
.footer-nav ul { list-style: none; display: flex; flex-wrap: wrap; margin: 0; padding: 0; }
.footer-nav ul li { position: relative; display: inline-block; }
.footer-nav ul li::before { content: ""; width: 1px; height: 19px; background-color: #20937f; position: absolute; top: 50%; transform: translateY(-50%); left: 0; }
.footer-nav ul li:first-child::before { display: none; }
.footer-nav ul li a { color: var(--white); display: block; padding: 5px 20px; text-decoration: none; }
.footer-nav ul li:last-child a { padding-right: 0; }
.footer-nav ul li:hover a { color: var(--secondary); }
@media (max-width: 768px) { .footer-nav ul li:first-child a { padding-left: 0; } }
/*AAAAAAAAAAAAAAAAAAAAAAA!!! FOOTER STYLES ENDS !!!AAAAAAAAAAAAAAAAAAAAA*/



/*AAAAAAAAAAAAAAAAAAAAAAA!!! HEADER MIDDLE IMAGE HEIGHT FIX STARTS !!!AAAAAAAAAAAAAAAAAAA*/
.header-middle .single-conn img {
  width: 18px !important;
  height: 18px !important;
}

.header-middle .single-conn {
  padding: 32px 0 !important;
}
/*AAAAAAAAAAAAAAAAAAAAAAA!!! HEADER MIDDLE IMAGE HEIGHT FIX ENDS !!!AAAAAAAAAAAAAAAAAAAAA*/
}


/*AAAAAAAAAAAAAAAAAAAAAAA!!! PROJECT SECTION BACKGROUND FIX STARTS !!!AAAAAAAAAAAAAAAAAAA*/
.project-entry2 {
  background: transparent !important;
}

.project-entry2 .project-txt {
  background: transparent !important;
}

.project-entry2::before {
  background: url('img/project-bg.png') no-repeat bottom left !important;
  background-size: contain !important;
  z-index: 0 !important;
  height: 112px !important;
  top: auto !important;
  bottom: 0 !important;
  opacity: 1 !important;
}

.project-entry2 .project-txt {
  position: relative !important;
  z-index: 1 !important;
}
/*AAAAAAAAAAAAAAAAAAAAAAA!!! PROJECT SECTION BACKGROUND FIX ENDS !!!AAAAAAAAAAAAAAAAAAAAA*/


/*AAAAAAAAAAAAAAAAAAAAAAA!!! ABOUT SECTION BACKGROUND IMAGE FIX STARTS !!!AAAAAAAAAAAAAAAAAAA*/
.about-sec .about-media {
  position: relative !important;
}

.about-sec .about-media:before {
  content: "" !important;
  position: absolute !important;
  background: url('img/about-sh1.png') no-repeat top left / contain !important;
  width: 100% !important;
  height: 100% !important;
  left: -30% !important;
  top: -50px !important;
  z-index: -1 !important;
  pointer-events: none !important;
}
/*AAAAAAAAAAAAAAAAAAAAAAA!!! ABOUT SECTION BACKGROUND IMAGE FIX ENDS !!!AAAAAAAAAAAAAAAAAAAAA*/






/*AAAAAAAAAAAAAAAAAAAAAAA!!! COMPLETE PROJECTS SECTION BACKGROUND IMAGE STARTS !!!AAAAAAAAAAAAAAAAAAA*/
.recent-project {
  background: url('img/cause-bg.jpg') no-repeat center center !important;
  background-size: cover !important;
  position: relative !important;
}

.recent-project::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  background: rgba(255, 255, 255, 0.85) !important;
  z-index: 0 !important;
}

.recent-project .container {
  position: relative !important;
  z-index: 1 !important;
}
/*AAAAAAAAAAAAAAAAAAAAAAA!!! COMPLETE PROJECTS SECTION BACKGROUND IMAGE ENDS !!!AAAAAAAAAAAAAAAAAAAAA*/


/*AAAAAAAAAAAAAAAAAAAAAAA!!! FOOTER IMAGE + COLOR BOTH VISIBLE STARTS !!!AAAAAAAAAAAAAAAAAAA*/
.footer {
  background: url('img/footer-bg.jpg') no-repeat center center !important;
  background-size: cover !important;
  background-color: #122f2a !important;
  background-blend-mode: multiply !important;
  position: relative !important;
}

.footer::before {
  display: none !important;
}
/*AAAAAAAAAAAAAAAAAAAAAAA!!! FOOTER IMAGE + COLOR BOTH VISIBLE ENDS !!!AAAAAAAAAAAAAAAAAAAAA*/


/*AAAAAAAAAAAAAAAAAAAAAAA!!! GALLERY SECTION STYLES STARTS !!!AAAAAAAAAAAAAAAAAAA*/
.gallery-item {
  position: relative;
  overflow: hidden;
  border-radius: 20px;
  cursor: pointer;
}

.gallery-item img {
  transition: transform 0.5s ease;
  height: 260px;
  object-fit: cover;
}

.gallery-item:hover img {
  transform: scale(1.08);
}

.gallery-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(30, 111, 92, 0.8);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: 0.3s;
}

.gallery-item:hover .gallery-overlay {
  opacity: 1;
}

.gallery-overlay i {
  font-size: 40px;
  color: white;
}

.gallery-modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.9);
  z-index: 9999;
  cursor: pointer;
}

.modal-content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-width: 80%;
  max-height: 80%;
  border-radius: 10px;
}

.close-modal {
  position: absolute;
  top: 20px;
  right: 35px;
  color: white;
  font-size: 45px;
  font-weight: bold;
  cursor: pointer;
}

.close-modal:hover {
  color: var(--secondary);
}
/*AAAAAAAAAAAAAAAAAAAAAAA!!! GALLERY SECTION STYLES ENDS !!!AAAAAAAAAAAAAAAAAAAAA*/

/*AAAAAAAAAAAAAAAAAAAAAAA!!! GET IN TOUCH SECTION STYLES STARTS !!!AAAAAAAAAAAAAAAAAAA*/
.touch-sec {
  background: var(--shade);
}

.touch-card {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 25px;
  background: white;
  border-radius: 20px;
  box-shadow: 0 5px 20px rgba(0,0,0,0.05);
  transition: 0.3s;
}

.touch-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 30px rgba(0,0,0,0.1);
}

.touch-icon {
  width: 60px;
  height: 60px;
  background: var(--primary);
  border-radius: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  font-size: 24px;
}

.touch-card h4 {
  font-size: 1.2rem;
  margin-bottom: 5px;
  color: var(--headings-color);
}

.touch-card p {
  margin: 0;
  color: var(--body-color);
}

.touch-form {
  background: white;
  padding: 40px;
  border-radius: 30px;
  box-shadow: 0 5px 30px rgba(0,0,0,0.05);
}

.touch-form .form-control {
  border-radius: 30px;
  padding: 12px 20px;
  border: 1px solid #e2e8f0;
}

.touch-form .form-control:focus {
  border-color: var(--primary);
  box-shadow: none;
}

@media (max-width: 768px) {
  .touch-form { padding: 25px; }
  .touch-card { padding: 18px; }
}
/*AAAAAAAAAAAAAAAAAAAAAAA!!! GET IN TOUCH SECTION STYLES ENDS !!!AAAAAAAAAAAAAAAAAAAAA*/


/* ========== START: Navbar Menu Text Single Line Fix ========== */
.navbar-nav .nav-link,
.navbar-nav .dropdown-toggle {
    white-space: nowrap !important;
    font-size: 16px !important;  /* pehle 15px tha, ab 16px */
    font-weight: 500 !important;
    padding: 8px 14px !important;  /* thoda padding badhaya */
}

.navbar-nav .dropdown-menu .dropdown-item {
    white-space: nowrap !important;
    font-size: 15px !important;  /* pehle 14px tha, ab 15px */
    font-weight: 500 !important;
}

/* Tablet view ke liye - chhoti screen pe normal wrap */
@media (max-width: 1199px) {
    .navbar-nav .nav-link,
    .navbar-nav .dropdown-toggle {
        white-space: normal !important;
        font-size: 15px !important;
        padding: 8px 12px !important;
    }
}

/* Desktop large ke liye extra adjust */
@media (min-width: 1200px) {
    .navbar-nav {
        flex-direction: row !important;
    }
    .navbar-nav .nav-item {
        margin: 0 3px !important;
    }
}
/* ========== END: Navbar Menu Text Single Line Fix ========== */


/* ========== START: Auto Adjust Image Size Fix ========== */

/* Project / Product Section Images */
.project-entry2 .project-thumb {
    width: 100%;
    height: 280px !important;
    overflow: hidden !important;
    position: relative !important;
    display: block !important;
}

.project-entry2 .project-thumb img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    display: block !important;
    transition: transform 0.3s ease !important;
}

/* Gallery Section Images */
.gallery-sec .gallery-item {
    width: 100%;
    height: 280px !important;
    overflow: hidden !important;
    position: relative !important;
    cursor: pointer;
}

.gallery-sec .gallery-item img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    display: block !important;
    transition: transform 0.3s ease !important;
}

.gallery-sec .gallery-item:hover img {
    transform: scale(1.05) !important;
}

/* About Section Images */
.about-media .about-feat {
    width: 100%;
    height: auto;
    overflow: hidden;
}

.about-media .about-feat img {
    width: 100% !important;
    height: auto !important;
    object-fit: cover !important;
}

.about-stat {
    width: 180px !important;
    height: auto !important;
}

.about-stat img {
    width: 100% !important;
    height: auto !important;
}

/* Footer Recent Posts Images */
.rc-widget .ls-entry img {
    width: 80px !important;
    height: 80px !important;
    object-fit: cover !important;
    border-radius: 8px !important;
}

/* Slider Images (if any) */
.slide-bg {
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}

/* Responsive for Mobile */
@media (max-width: 768px) {
    .project-entry2 .project-thumb {
        height: 220px !important;
    }
    
    .gallery-sec .gallery-item {
        height: 220px !important;
    }
    
    .rc-widget .ls-entry img {
        width: 70px !important;
        height: 70px !important;
    }
}

@media (max-width: 576px) {
    .project-entry2 .project-thumb {
        height: 200px !important;
    }
    
    .gallery-sec .gallery-item {
        height: 200px !important;
    }
}

/* ========== END: Auto Adjust Image Size Fix ========== */

/* ========== MARK: LOGO SIZE FIX START ========== */

/* Header Logo - Perfect Size */
.header .logo img,
.header-middle .logo img,
.navbar-brand img,
.offcanvas-header img {
    max-width: 140px !important;
    width: 100% !important;
    height: auto !important;
}

/* Desktop logo */
.d-xl-flex .logo img {
    max-width: 130px !important;
    width: 100% !important;
}

/* Mobile logo */
.d-xl-none .logo img {
    max-width: 120px !important;
    width: 100% !important;
}

/* Offcanvas menu logo */
.offcanvas-header img {
    max-width: 130px !important;
}

/* Footer Logo */
.footer .f-logo img,
footer .f-logo img {
    max-width: 130px !important;
    width: 100% !important;
    height: auto !important;
}

/* Logo link styling */
.logo {
    display: inline-block;
    line-height: 1;
}

.logo a {
    display: inline-block;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .header .logo img,
    .header-middle .logo img {
        max-width: 110px !important;
    }
    
    .offcanvas-header img {
        max-width: 110px !important;
    }
    
    .footer .f-logo img,
    footer .f-logo img {
        max-width: 110px !important;
    }
}

/* ========== MARK: LOGO SIZE FIX END ========== */

/* SLIDER SECTION STARTS */
.slider-sec {
  position: relative;
  padding: 100px 0;
  background: linear-gradient(135deg, #0B2B26 0%, #1A4A3A 100%);
  overflow: hidden;
}

/* Simple Decorative Circles */
.slider-sec::before {
  content: '';
  position: absolute;
  top: -80px;
  right: -80px;
  width: 300px;
  height: 300px;
  background: rgba(241, 90, 36, 0.1);
  border-radius: 50%;
}

.slider-sec::after {
  content: '';
  position: absolute;
  bottom: -100px;
  left: -80px;
  width: 350px;
  height: 350px;
  background: rgba(241, 90, 36, 0.08);
  border-radius: 50%;
}

/* Banner Content */
.banner-content {
  text-align: center;
  max-width: 800px;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}

/* Sub Title - About Us Badge */
.sub-title {
  display: inline-block;
  font-size: 1rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 3px;
  color: #F15A24;
  margin-bottom: 20px;
  background: rgba(241, 90, 36, 0.15);
  padding: 6px 20px;
  border-radius: 50px;
}

/* Main Title */
.slide-title {
  font-size: 3.5rem;
  font-weight: 800;
  line-height: 1.2;
  margin-bottom: 20px;
  color: #FFFFFF;
}

.slide-title span {
  color: #F15A24;
}

/* Description */
.lead {
  font-size: 1.1rem;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.85);
  margin-bottom: 30px;
}

/* Buttons */
.btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 12px 35px;
  font-weight: 600;
  text-decoration: none;
  border-radius: 50px;
  transition: all 0.3s ease;
  border: none;
  cursor: pointer;
  font-size: 1rem;
}

.btn-primary {
  background: #F15A24;
  color: #FFFFFF;
}

.btn-primary:hover {
  background: #D44A18;
  transform: translateY(-2px);
}

.btn-outline-light {
  background: transparent;
  color: #FFFFFF;
  border: 2px solid rgba(255, 255, 255, 0.3);
}

.btn-outline-light:hover {
  background: rgba(255, 255, 255, 0.1);
  border-color: #F15A24;
}

.play-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 55px;
  height: 55px;
  text-decoration: none;
  transition: all 0.3s ease;
  background: #F15A24;
}

.play-btn:hover {
  transform: scale(1.1);
}

.play-btn span {
  font-size: 1.2rem;
  color: white;
}

.button-group {
  display: flex;
  justify-content: center;
  gap: 20px;
  flex-wrap: wrap;
}

/* Responsive */
@media (max-width: 768px) {
  .slider-sec {
    padding: 60px 20px;
  }
  
  .slide-title {
    font-size: 2rem;
  }
  
  .lead {
    font-size: 1rem;
  }
  
  .btn {
    padding: 10px 25px;
    font-size: 0.9rem;
  }
  
  .play-btn {
    width: 45px;
    height: 45px;
  }
}

@media (max-width: 480px) {
  .slide-title {
    font-size: 1.6rem;
  }
  
  .sub-title {
    font-size: 0.85rem;
  }
  
  .button-group {
    gap: 12px;
  }
}
/* SLIDER SECTION ENDS */

/* PRODUCT SPECIFICATIONS SECTION STARTS */
.product-spec-section {
  padding: 80px 0;
  background: #f8f9fa;
  position: relative;
  overflow: hidden;
}

.product-spec-section .sec-intro {
  margin-bottom: 50px;
}

.product-spec-section .sub-title {
  display: inline-block;
  font-size: 1rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 3px;
  color: #F15A24;
  margin-bottom: 15px;
  background: rgba(241, 90, 36, 0.1);
  padding: 5px 20px;
  border-radius: 50px;
}

.product-spec-section .sec-title {
  font-size: 2.5rem;
  font-weight: 700;
  color: #0B2B26;
  margin-bottom: 15px;
}

.product-spec-section .sec-desc {
  color: #666;
  max-width: 600px;
  margin: 0 auto;
}

/* Product Image */
.product-image-wrapper {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
}

.product-image-wrapper img {
  width: 100%;
  height: auto;
  display: block;
  transition: transform 0.5s ease;
}

.product-image-wrapper:hover img {
  transform: scale(1.05);
}

/* Specs Table */
.specs-table-wrapper {
  background: white;
  border-radius: 20px;
  padding: 30px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
  height: 100%;
}

.specs-title {
  font-size: 1.8rem;
  font-weight: 700;
  color: #0B2B26;
  margin-bottom: 10px;
}

.specs-subtitle {
  color: #F15A24;
  font-size: 1rem;
  margin-bottom: 25px;
  padding-bottom: 15px;
  border-bottom: 2px solid #f0f0f0;
}

.specs-table {
  width: 100%;
  margin-bottom: 25px;
}

.specs-table tr {
  border-bottom: 1px solid #f0f0f0;
}

.specs-table td {
  padding: 12px 0;
  vertical-align: top;
}

.specs-table td:first-child {
  width: 40%;
  font-weight: 600;
  color: #0B2B26;
}

.specs-table td:last-child {
  width: 60%;
  color: #555;
}

/* Bulk Order Info */
.bulk-order-info {
  background: #FFF8F0;
  border-left: 4px solid #F15A24;
  padding: 20px;
  border-radius: 12px;
  margin-top: 20px;
}

.bulk-order-info h4 {
  font-size: 1.1rem;
  font-weight: 700;
  color: #0B2B26;
  margin-bottom: 10px;
}

.bulk-order-info h4 i {
  color: #F15A24;
  margin-right: 8px;
}

.bulk-order-info p {
  color: #555;
  margin-bottom: 5px;
  font-size: 0.9rem;
}

.bulk-order-info .varieties {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 10px;
}

.bulk-order-info .varieties span {
  background: white;
  padding: 5px 12px;
  border-radius: 20px;
  font-size: 0.8rem;
  font-weight: 500;
  color: #F15A24;
  border: 1px solid #F15A24;
}

/* Responsive */
@media (max-width: 991px) {
  .product-spec-section {
    padding: 60px 0;
  }
  
  .product-spec-section .sec-title {
    font-size: 2rem;
  }
  
  .specs-table-wrapper {
    margin-top: 30px;
    padding: 20px;
  }
  
  .specs-title {
    font-size: 1.5rem;
  }
}

@media (max-width: 768px) {
  .product-spec-section {
    padding: 40px 0;
  }
  
  .specs-table td {
    padding: 10px 0;
  }
  
  .specs-table td:first-child {
    width: 45%;
    font-size: 0.9rem;
  }
  
  .specs-table td:last-child {
    width: 55%;
    font-size: 0.9rem;
  }
  
  .bulk-order-info {
    padding: 15px;
  }
  
  .bulk-order-info .varieties span {
    font-size: 0.75rem;
    padding: 4px 10px;
  }
}

@media (max-width: 480px) {
  .product-spec-section .sec-title {
    font-size: 1.5rem;
  }
  
  .specs-title {
    font-size: 1.3rem;
  }
  
  .specs-table td {
    display: block;
    width: 100%;
    padding: 8px 0;
  }
  
  .specs-table td:first-child {
    width: 100%;
    padding-bottom: 0;
  }
  
  .specs-table td:last-child {
    width: 100%;
    padding-top: 0;
  }
}
/* PRODUCT SPECIFICATIONS SECTION ENDS */

