/*
Theme Name: Astra Child
Theme URI: https://wpastra.com/
Template: astra
Author: Brainstorm Force
Author URI: https://wpastra.com/about/?utm_source=theme_preview&utm_medium=author_link&utm_campaign=astra_theme
Description: Astra is fast, fully customizable &amp; beautiful WordPress theme suitable for blog, personal portfolio, business website and WooCommerce storefront. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with Schema.org code integrated and is Native AMP ready so search engines will love your site. It offers special features and templates so it works perfectly with all page builders like Elementor, Beaver Builder, Visual Composer, SiteOrigin, Divi, etc. Some of the other features: # WooCommerce Ready # Responsive # RTL &amp; Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained &amp; Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and WooCommerce ready theme that you can use for building any kind of website!
Tags: custom-menu,custom-logo,entertainment,one-column,two-columns,left-sidebar,e-commerce,right-sidebar,custom-colors,editor-style,featured-images,full-width-template,microformats,post-formats,rtl-language-support,theme-options,threaded-comments,translation-ready,blog
Version: 4.7.3.1722859794
Updated: 2024-08-05 12:09:54

*/
  /* General Styles */
  .home-banner-sec .custom-owl-carousel {
         width: 100%;
         height: 95vh;
         position: relative;
         overflow: hidden;
         margin: 0; 
         padding: 0;
   }

   .home-banner-sec .custom-owl-carousel .slide {
       position: relative;
       height: 95vh;
   }

   .home-banner-sec .custom-owl-carousel .slide img {
       width: 100%;
    height: 100%;
    object-fit: cover; /* Ensures the image covers the container */
    /*transition: transform 30s ease-in-out;*/
   }

   .home-banner-sec .owl-item.active img {
       transform: scale(1.1);
   }

   /* Center content vertically and horizontally */
   .home-banner-sec .custom-owl-carousel .content {
       position: absolute; 
       top: 55%;
       left: 8%;
       transform: translateY(30px) translateY(-50%);
       opacity: 0;
       color: #fff;
       max-width: 650px;
       text-align: left;
       z-index: 2;
       padding: 0px;
       /*border-radius: 10px;*/
       transition: all 1s ease;
   }

   /* Animation for active content */
  .home-banner-sec .owl-item.active .content {
       transform: translateY(0) translateY(-60%);
       opacity: 1;
   }

   /* Content text styles */
  .home-banner-sec .custom-owl-carousel .content h2 {
       font-size:45px;
       margin: 0 0 10px;
       color: #fff;
       text-transform: capitalize;
   }

   .home-banner-sec .owl-carousel .content p {
       max-width: 585px;
       font-size: 1.2em;
       color: #fff;
       margin: 10px 0 20px;
   }

  .home-banner-sec .custom-owl-carousel .content .btn {
       display: inline-block;
       padding: 8px 20px;
       font-size: 1.1em;
       color: #fff;
       background-color: #e60023;
       text-decoration: none;
       border-radius: 5px;
       border: 1px solid #CA2628;
       transition: background-color 0.3s ease;
   }
   .home-banner-sec .custom-owl-carousel .content .btn:hover {
       color: #CA2628;
       background-color: #FFFFFF;
       border: 1px solid #CA2628;
   }

   /* Positioning navigation arrows */
  .home-banner-sec .owl-nav button {
       position: absolute;
       top: 50%; /* Center vertically */
       transform: translateY(-50%);
       background-color: rgba(0, 0, 0, 0.5);
       color: white;
       border: none;
       padding: 15px;
       cursor: pointer;
       z-index: 3;
       font-size: 20px;
   }

   /* Left and right navigation arrows */
   .home-banner-sec .owl-nav .owl-prev {
       left: 10px; /* Left of the screen */
   }

   .home-banner-sec .owl-nav .owl-next {
       right: 10px; /* Right of the screen */
   }

   /* Customize dot navigation */
  .home-banner-sec  .owl-dots {
       position: absolute;
       bottom: 20px; /* Move dots to the bottom */
       left: 50%;
       transform: translateX(-50%);
       z-index: 4;
   }

  .home-banner-sec .owl-dots button {
       background: transparent;
       border: none;
       outline: none;
   }

   .home-banner-sec .owl-dots button span {
       background-color: white;
       width: 12px;
       height: 12px;
       display: block;
       border-radius: 50%;
       margin: 5px;
       transition: background-color 0.3s ease;
   }

  .home-banner-sec .owl-dots .owl-dot.active span {
       background-color: #e60023;
   }

   /* Image Zoom Animation */
   @keyframes zoomInImage {
       0% {
           transform: scale(1);
       }
       50% {
           transform: scale(1.05);
       }
       100% {
           transform: scale(1.1);
       }
   }

   @keyframes zoomOutImage {
       0% {
           transform: scale(1);
       }
       50% {
           transform: scale(1.1);
       }
       100% {
           transform: scale(1.2);
       }
   }

   .zoomInImage {
       animation: zoomInImage 5s ease-in-out forwards;
   }

   .zoomOutImage {
       animation: zoomOutImage 5s ease-in-out forwards;
   }
   .home-banner-sec .owl-nav .owl-prev, .home-banner-sec .owl-nav .owl-next{
        width: 30px!important;
        background: #fff !important;
        height: 30px!important;
        color: #000!important;
   }
   .home-banner-sec .owl-nav .owl-prev span, .home-banner-sec .owl-nav .owl-next span{
       font-size: 30px;
   }

@media only screen and (max-width: 1200px) {
.home-banner-sec .custom-owl-carousel{
    max-height:650px !important;
}
.home-banner-sec .custom-owl-carousel .content{
    top: 25% !important;
}
}
@media only screen and (max-width: 767px) {
.home-banner-sec .custom-owl-carousel .content{
        top: 45% !important;
}
 .home-banner-sec .custom-owl-carousel .slide {
    position: relative;
    height: 450px;
}
.home-banner-sec .custom-owl-carousel .content {
    right: 0px;
    left: 0px;
    max-width: 85%;
    margin: auto;
}
.home-banner-sec .owl-nav .owl-prev {
    left: 2px;
}
.home-banner-sec .owl-nav .owl-next {
    right: 2px;
}
.home-banner-sec .custom-owl-carousel {
        max-height: 450px !important;
    }
.home-banner-sec .custom-owl-carousel .content h2{
        font-size:25px !important;
    }

}

.single-sevice-page .custom-container {
    display: grid; 
    grid-template-columns: repeat(auto-fill, minmax(275px, 1fr)); 
    gap: 20px; 
    padding: 20px;
       justify-content: center;
}
.single-sevice-page .box {
    padding: 20px;
    background-color: #fff;
    border-radius: 12px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    overflow: hidden;
    transition: transform 0.3s ease;
}
.single-sevice-page .box:hover{
    transform: scale(1.05);
}
 .single-sevice-page .box h3 {
     padding: 20px 0 0;
    font-size: 1.5em;
    margin: 16px 0;
}
.single-sevice-page h2.widget-title {
    font-size: 40px;
    text-align: center;
    font-weight: 700;
    margin-bottom:10px;
}
.single-sevice-page .bg-light{
    background:#F0F0F0;
}
/* Responsive Adjustments */
@media (max-width: 768px) {
    .single-service-page .custom-container {
        grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); /* Adjust for smaller screens */
    }
}
.single-sevice-page .features-container {
    display: flex;
    align-items: normal;
    justify-content: space-between;
    max-width: 1200px;
    margin: 0 auto;
    gap: 20px;
    flex-wrap: wrap; /* Ensure wrapping on smaller screens */
}

.single-sevice-page .image-container {
    flex: 1;
    max-width: 40%;
    text-align: center;
}

.single-sevice-page .image-container img {
    width: 100%;
    height: auto;
    border-radius: 12px; /* Add rounded corners */
}

.single-sevice-page .content-container {
    flex: 1;
    max-width: 55%;
}

.single-sevice-page .content-container h2 {
    font-size: 2.5em;
    color: #0d365b; /* Dark blue color */
    margin-bottom: 10px;
}

.single-sevice-page .content-container p {
    color: #555;
    margin-bottom: 10px;
    font-size: 16px !important;
    margin-top: 10px;
}

.single-sevice-page .features-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

.single-sevice-page .feature-box {
    flex-wrap:wrap;
    display: flex;
    align-items: center;
    background-color: #fff;
    border-radius: 12px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    padding: 15px 20px;
    transition: transform 0.3s ease;
}

.single-sevice-page .feature-box:hover {
    transform: scale(1.05); /* Slight scaling on hover */
}

.single-sevice-page .feature-number {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    /*background-color: #d8345f; */
    color: #fff;
    flex-wrap: wrap;
    font-weight: bold;
    border-radius: 50%;
    margin-right: 15px;
}

.single-sevice-page .feature-title {
    font-size: 1.2em;
    color: #0d365b; /* Dark blue color */
}

/* Responsive Adjustments */
@media (max-width: 1024px) {
   .single-sevice-page  .features-container {
        flex-direction: column;
    }
    
    .single-sevice-page .image-container, .single-sevice-page .content-container {
        max-width: 100%;
    }

    .single-sevice-page .content-container h2 {
        font-size: 2em;
        text-align: center;
    }

    .single-sevice-page .content-container p {
        text-align: center;
    }
    
   .single-sevice-page .features-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 600px) {
   .single-sevice-page .features-grid {
        grid-template-columns: 1fr; /* Single column on mobile */
    }
    .single-sevice-page .content-container p {
        text-align: left;
    }
    .about-sec ul, .about-sec ol{ margin-left: 25px;}
    .single-sevice-page .feature-box {
        justify-content: left;
    }
}

/* Banner Section */
.banner-section {
    position: relative;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    min-height: 500px; /* Adjust as needed */
    display: flex;
    align-items: center;
    justify-content: center;
}
.single-sevice-page .about-sec h2.widget-title {
    font-size: 40px;
    text-align: left;
    font-weight: 700;
    margin-bottom: 0px;
}
.divider-line{
    max-width:230px;
    margin-bottom:15px; 
}
.divider-line-2 {
    display: flex;
    justify-content: center;
    margin: auto;
    max-width: 230px;
    margin-bottom: 15px;
}
.banner-overlay {
    background: rgba(255, 255, 255, 0.8); /* Semi-transparent overlay */
    padding: 50px;
    border-radius: 12px;
    width: 80%; /* Adjust width to fit content */
    max-width: 1000px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.breadcrumb {
    font-size: 0.9em;
    color: #666;
    margin-bottom: 10px;
}

.breadcrumb a {
    color: #333;
    text-decoration: none;
}

.breadcrumb a:hover {
    text-decoration: underline;
}

.banner-overlay h1 {
    font-size: 2.5em !important;
    color: #000;
    margin: 0;
}
.custom-btn{
         font-family: "Helvetica", Sans-serif;
    font-size: 16px;
    font-weight: 700;
    fill: #CA2628;
    color: #CA2628;
    /* background-color: #CA2628; */
    /* border-style: solid; */
    /* border-width: 1px 1px 1px 1px; */
    /* border-color: #CA2628; */
    border-radius: 5px 5px 5px 5px;
    text-align: center;
    transition: all .3s;
    /* padding: 8px 24px; */
    text-decoration: none !important;
 }
 .custom-btn:hover{
    background-color: #fff;
    color: #CA2628;
    background-color: transparent;
    text-decoration: underline !important;
    }
    .custom-btn2{
    font-size: 16px;
    font-weight: 700;
    fill: #fff;
    color: #fff;
    background-color: #CA2628;
    border-style: solid;
    border-width: 1px 1px 1px 1px;
    border-color: #CA2628;
    border-radius: 5px 5px 5px 5px;
    text-align: center;
    transition: all .3s;
    padding: 10px 24px;
    text-decoration: none !important;
 }
 .custom-btn2:hover{
    background-color: #fff;
    color: #CA2628;
    border-style: solid;
    border-radius: 8px;
    border-width: 1px 1px 1px 1px;
    border-color: #CA2628;
    text-decoration: none !important;
    }
    .new-service-sec p, .new-service-sec h2{
        margin-bottom: 10px !important;
        color:#fff;
    }
    .new-service-sec p{
        margin-bottom: 20px !important; 
    }
.single-sevice-page .feature-title h4{
       font-size:18px;
        text-transform: capitalize;
}
@media (max-width: 768px) {
    .banner-section {
        min-height: 300px; /* Adjust for smaller screens */
    }
    .banner-overlay {
        width: 90%;
        padding: 15px;
    }

   .banner-overlay h1 {
        font-size: 2em;
    }
}

@media (max-width: 480px) {
    .banner-overlay h1 {
        font-size: 1.5em;
    }

    .breadcrumb {
        display:none;
        font-size: 0.8em;
    }
    .single-sevice-page h2.widget-title {
    font-size: 25px !important;
}
    .banner-section {
        min-height: 300px;
        background-size: cover !important;
        background-position: center !important;
        display: flex;
    }
}
.partner_inner_sec .benefits-grid{
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 10px; /* Added some gap for better spacing */
}

.partner_inner_sec .benefit-item{
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    transition: transform 0.3s ease; /* Smooth hover effect */
}

.partner_inner_sec .benefit-item:hover {
    transform: translateY(-5px); /* Lift up on hover */
}

.partner_inner_sec .benefit-item i {
    margin-bottom: 0px;
    padding: 10px;
}

.partner_inner_sec .benefit-item img {
    max-width: 100%; /* Ensure the image fits within the container */
    height: auto;
}

section.section.bg-white {
    background: #fff;
}
.new-service-sec{
    position:relative;
}
.new-service-sec .col-sm-12::before {
    overflow: hidden;
    position: absolute;
    background: #0b3d5c78;
    content: '';
    width: 100%;
    height: 100%;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index:1;
    border-radius: 8px;
}


.new-service-sec .col-sm-12 .content{
    z-index:2;
}
.event-info .inline-list{
    display: flex;
    justify-content: space-between;
    padding-left: 0px;
    margin: 0;
    list-style: none !important;
}
.event-info p{
    font-weight:400 !important;
    color:#6c757d !important;
}
.ekit_search-button i {
    color: #fff !important;
}
.service_banner_description {
    font-weight: 600  !important;
    color: #000000A6 !important;
}
@media (max-width: 767px) {
    .testimonial-quote{
        padding:0px !important;
    }
    .testimonial-quote::before, .testimonial-quote::after{
       display:none !important;
    }
    .testimonial-slider .testimonial-item .testimonial-content{
        padding: 15px!important;
        margin: 10px!important;
    }
    .single-sevice-page .image-container img {
    object-fit: cover;
    max-height: 300px;
    object-position: center;
}
.home_service .partner_inner_sec .benefits-grid{
        grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
}
.light-bg{
    min-height:auto !important;
}
.home_service div#counter_1  .col-sm-4 {
    width: 33.33% !important;
}
.home_service span.plus{
	font-size: 20px;
}
.home_service span.count1, .home_service span.count2, .home_service span.count3{
	font-size: 20px;
}
.hm-services-we-offer .item h5.text {
    font-size: 12px !important;
}
.banner-overlay {
        width: 100%;
    }
    .banner-overlay h1 {
    font-size: 1.5em !important;
    }
    .single-sevice-page .content-container h2{
        text-align:left;
        font-size: 25px;
    }
        .single-sevice-page .feature-box {
        justify-content: left;
    }
   .home-banner-sec .owl-nav{
       display:none;
   }
   .ekit-wid-con .elementor-icon-list-icon{
       display:none !important;
   }
   .elementskit-submenu-panel{
       box-shadow: none !important;
       background:#fff !important;
   }
   .elementor-14475 .elementor-element.elementor-element-415dc15{
        box-shadow: none !important;
   }
}
@media (max-width: 559px) {
	.home-banner-sec .custom-owl-carousel .slide img{
		    object-position: 85%;
	}
	.home-banner-sec .custom-owl-carousel .slide::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #01223e8c; 
    z-index: 1; 
    transition: background 0.3s ease; 
}
}