    /*
    Theme Name: DG Lands & Construction
    Author: Subuhan Lathif
    Author URI: https://subuhanbca.netlify.app/
    Description: A custom WordPress child theme for DG Lands & Construction, built to safely customize design and functionality while maintaining performance, stability, and easy parent theme updates.
    Version: 1.0
    Template: hello-elementor

    This is the child theme for Hello Elementor theme, generated with Generate Child Theme plugin by catchthemes.

    (optional values you can add: Theme URI, Author URI, License, License URI, Tags, Text Domain)
    */

    .page-header {display:none !important;}
    #site-header, #site-footer {display:none;}
    .mb-0 p {margin-bottom: 0 !important;}
    .word-wrap p{word-break: break-word;}
html {
  scroll-behavior: smooth;
}
    .wipe-img {
    position: relative;
    overflow: hidden;
    }

    .wipe-img img {
    width: 100%;
    display: block;
    }

    /* COMMON MASK */
    .wipe-img::after {
    content: "";
    position: absolute;
    inset: 0;
    background: #fff;
    z-index: 2;
    /*   transition: transform 1s cubic-bezier(0.77, 0, 0.175, 1); */
    transition: transform 2s cubic-bezier(0.22, 1, 0.36, 1);
    will-change: transform;
    }

    /* RIGHT → LEFT */
    .wipe-rtl::after {
    transform: translateX(0%);
    }
    .wipe-rtl.reveal::after {
    transform: translateX(-100%);
    }

    /* LEFT → RIGHT */
    .wipe-ltr::after {
    transform: translateX(0%);
    }
    .wipe-ltr.reveal::after {
    transform: translateX(100%);
    }

    /* Wrapper */
    .reveal-text {
    overflow: hidden;
    }

    /* Actual text */
    .reveal-text span {
    display: inline-block;
    transform: translateY(120%);
    transition: transform 2s cubic-bezier(0.22, 1, 0.36, 1);
    will-change: transform;
    font-size:2.5rem;
    line-height: normal;
    }

    /* When visible */
    .reveal-text.reveal span {
    transform: translateY(0%);
    }

    .banner-h1, .section-heading {font-family: "Lato", sans-serif; font-weight: 300;}
    .banner-h1 {
        font-size: 90px !important;
        font-weight: 300;
        color: #006838;}

    .small-heading p {margin-bottom:0 !important;position:relative;}
    .small-heading p:after {position: absolute;
        content: "";
        /* background: #FA3E3E; */
        background: #006838;
        width: 100px;
        height: 1px;
        margin-left: 8px;transform:translatey(-50%);top:50%;}

    /*team card css*/
    .team-profile-card {position: relative !important;}
    .team-profile-card .elementor-image-box-content {position: absolute;bottom:-70px;transition: all 0.3s ease;padding:0.6rem 1.5rem;transform: translateX(-50%);left:50%;width: auto !important;}
    .team-profile-card:hover .elementor-image-box-content {bottom: -15px;background-color:#006838;color:#ffffff !important;}
    .team-profile-card .elementor-image-box-content h5 {white-space: nowrap !important;margin:0;}
    .team-profile-card:hover .elementor-image-box-content p {color:#fff !important;}
    .team-profile-card img {width: 100% !important;}
    /*--//--*/

    /*red-hover-card css*/
    .red-hover-card:hover p,
    .red-hover-card:hover h3
    {color: #fff !important;}
    .red-hover-card:hover .title {border-color: #fff !important;}
    /*--//--*/

    /*slider gallery*/
    .gallery-slider {
    height: auto;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    }
    .gallery-slider figure {overflow:hidden;line-height:0 !important;}
    .gallery-slider figure img {transition:all 0.5s ease;width:475px;height:305px;object-fit:cover;}
    .gallery-slider figure:hover img {scale:1.2;}
    .gallery-slider .elementor-swiper-button-prev {top: unset !important;left: 0 !important;bottom:-80px !important;}

    .gallery-slider .elementor-swiper-button-next {top: unset !important;left: 55px !important;bottom:-80px !important;right: unset !important;}

    .gallery-slider .elementor-swiper-button-prev ,
    .gallery-slider .elementor-swiper-button-next {border: 1px solid #0005;transition: all 0.3s ease;width:45px;height:45px;display:flex;justify-content:center;align-items:center;}

	.gallery-slider .elementor-swiper-button-next svg,
.gallery-slider .elementor-swiper-button-prev svg {width:15px !important;}

    .gallery-slider .elementor-swiper-button-next:hover,
    .gallery-slider .elementor-swiper-button-prev:hover {background: #006838;border: 1px solid #006838;}
    .gallery-slider .elementor-swiper-button-next:hover svg,
    .gallery-slider .elementor-swiper-button-prev:hover svg
    {filter: invert(1);}

    /*before footer*/
    .reveal-text.b-footer {text-align: center;}
    .reveal-text.b-footer .section-heading {    font-family: "Lato", sans-serif;
        font-weight: 300;
        font-size: 3rem;color:#006838;}

        .ps-abs-x-50 {left: 50% !important;
        transform: translateX(-50%);}

    /*home page styles*/
        
		/*video banner css*/
		.video-banner .elementor-widget-video, .video-banner video, .video-banner .e-hosted-video {height:100vh !important;width:100% !important;}
		.video-banner video {object-fit:cover !important;}
		.video-banner .video-banner-content {height:100vh;top:0 !important;}
		/* .video-banner .video-banner-content .e-con-inner:before {height:0;width:1px;background:#fff !important;content: "";left:0px;animation: growLine 1.2s ease-out forwards;transition-delay: 5s;position: absolute;} */

        @keyframes growLine {
        from {
        height: 0;
        }
        to {
        height: 100%;
        }
        }

		.video-banner-content .e-con-inner {justify-content: center !important;}
		.video-banner .small-heading p:after{background:#fff;height:2px;width:200px;}
		.video-banner .section-heading {font-size:3.5rem;color:#fff !important;}

        /* .video-container video {top:0 !important;height:100vh !important} */
        .section-4 .wipe-img img {width:100% !important;height:500px;object-fit:cover;}
        .abs-top-50 {top:50% !important;transform:translateY(-50%) !important;}

	
		.scroll-indicator {
			position: relative;
			width: 100px;
			height: 100px;    
			background: #006838;
			border-radius: 50%;
		}

		/* Rotating circular text */
		.scroll-text {
			width: 100%;
			height: 100%;
			animation: rotateText 10s linear infinite;
			padding: 0.5rem;
		}

		/* Center black circle */
		.center-circle {
			position: absolute;
			top: 50%;
			left: 50%;
			transform: translate(-50%, -50%);
			display: flex;
			justify-content: center;
			align-items: center;
		}
		.center-circle a {line-height:0;}
		.center-circle img {width:35px;}
		/* Down arrow */
		.arrow {
			width: 12px;
			height: 12px;
			border-right: 2px solid #fff;
			border-bottom: 2px solid #fff;
			transform: rotate(45deg);
		}

		/* Rotation animation */
		@keyframes rotateText {
			from {
				transform: rotate(0deg);
			}
			to {
				transform: rotate(360deg);
			}
		}


        /*project-card*/
        .project-card {height: auto;height: fit-content !important;}
        /* .project-card:nth-child(2) {margin-top: 5rem;}
        .project-card:nth-child(odd):not(:first-child) {
        margin-top: -5rem;
        } */

        .project-card figure {overflow: hidden;}
        .project-card figure img {transition:scale 5s ease;width: 100% !important;}
        .project-card:hover figure img {scale:1.2;transition:scale 5s ease;}
        .project-card .elementor-image-box-content {position: absolute;
        bottom: 6px;
        padding: 2rem;
        left: 0;
        width:fit-content !important;background: #006838;}
        .project-card .elementor-image-box-content span {font-size: 1.5rem;
        font-weight: 200;
        text-transform: uppercase;
        color: #fff;}
        

        /*testimonial-two*/
        #testimonial-two .swiper-button-next, 
        #testimonial-two .swiper-button-prev
        {top: unset;bottom: 0;left:0 !important;}
        #testimonial-two .swiper-button-next,
        #all-projects-slider .swiper-button-next
        {margin-left:55px !important;}

        #testimonial-two .swiper-button-next, 
        #testimonial-two .swiper-button-prev,
        #all-projects-slider .swiper-button-next,
        #all-projects-slider .swiper-button-prev
        {border: 1px solid #fff;
        width: 45px !important;
        height: 45px !important;}
        #testimonial-two .swiper-button-next svg,
        #testimonial-two .swiper-button-prev svg,
        #all-projects-slider .swiper-button-next svg,
        #all-projects-slider .swiper-button-prev svg
        {
        filter: invert(1);
        width: 15px !important;
        }

        #testimonial-two .swiper-button-next:hover,
        #testimonial-two .swiper-button-prev:hover,
        #all-projects-slider .swiper-button-next:hover,
        #all-projects-slider .swiper-button-prev:hover
        {background: #fff !important;}
        #testimonial-two .swiper-button-next:hover svg,
        #testimonial-two .swiper-button-prev:hover svg,
        #all-projects-slider .swiper-button-next:hover svg,
        #all-projects-slider .swiper-button-prev:hover svg {filter:unset !important;}

        #all-projects-slider .single-project .right {overflow: hidden;}
        #all-projects-slider .single-project .right img {transition: scale 0.5s ease;}
        #all-projects-slider .single-project .right:hover img {scale: 1.2;}


        #all-projects-slider .swiper-button-next, 
        #all-projects-slider .swiper-button-prev
        {top: unset;bottom: 0;left:0 !important;margin-bottom: 20px !important;}

        #all-projects-slider .right {
        position: relative;
        overflow: hidden;
        }

        #all-projects-slider .right::after {
        content: "";
        position: absolute;
        inset: 0;
        background: #006838; /* match section bg */
        transform: translateX(0%);
        transition:
        transform 2.2s cubic-bezier(0.22, 1, 0.36, 1);
        transition-delay: 0.25s; /* ⏱ delay before start */
        will-change: transform;
        z-index: 2;
        }

        /* 🔥 PURE CSS TRIGGER */
        #all-projects-slider
        .swiper-slide-active:has(.right)
        .right::after {
        transform: translateX(-100%);
        }


    @media (max-width: 1024px) {
    .banner-h1 {
        font-size: 70px !important;
    }
    .gallery-slider figure img {width: 100% !important;height: 350px;}
    }


    @media (max-width: 767px) {
    .reveal-text.b-footer .section-heading {
        font-size: 2.5rem;
    }
        .abs-top-50 {position:relative !important;top:0 !important;transform:translateY(0%) !important;}

        
        #all-projects-slider .swiper-button-next, 
        #all-projects-slider .swiper-button-prev
        {margin-bottom: 0px !important;}

          #testimonial-two .swiper-button-next,
        #all-projects-slider .swiper-button-next
        {margin-left:50px !important;}
    }

    @media (max-width: 576px) {
    div.e-grid.g-576 {--e-con-grid-template-columns:repeat(1, 1fr) !important}
    }

    @media (max-width:480px) {
    .banner-h1 {
        font-size: 50px !important;
    margin-top:15px;
    }
    .reveal-text.b-footer .section-heading {
        font-size: 2rem;
    }

        .video-container {min-height:250px !important;}

        .project-card figure img{height:550px !important;}
        .project-card .elementor-image-box-content {padding: 1.5rem;}
        .project-card .elementor-image-box-content span {font-size:1.2rem;}

        #testimonial-two .swiper-button-next, #testimonial-two .swiper-button-prev,
        #all-projects-slider .swiper-button-next, #all-projects-slider .swiper-button-prev,
		.gallery-slider .elementor-swiper-button-prev, .gallery-slider .elementor-swiper-button-next
        {width: 40px !important;height: 40px !important;}
		.gallery-slider .elementor-swiper-button-next svg, .gallery-slider .elementor-swiper-button-prev svg,
		#testimonial-two .swiper-button-next svg, #testimonial-two .swiper-button-prev svg, #all-projects-slider .swiper-button-next svg,
		#all-projects-slider .swiper-button-prev svg
		{width:13px !important;}

        .video-banner .elementor-widget-video, .video-banner video, .video-banner .e-hosted-video, .video-banner .video-banner-content {height:90vh !important;}
		.video-banner .section-heading {font-size:2.9rem;}
		.video-banner .small-heading p:after {width:120px;}
		

    }


    @media (max-width:380px) {
    .reveal-text.b-footer .section-heading {
        font-size: 1.8rem;
    }
        .project-card figure img{height:400px !important;}
.video-banner .section-heading {font-size:2.4rem;}
		.video-banner .small-heading p:after {width:100px;}
		.video-banner .small-heading p {font-size:0.8rem !important;}

    }
