.banner-slider .elementor-swiper-button{
    width:40px;
    height:40px;
    border-radius:50%;
    background:#D9D9D9CC;
    display:flex;
    align-items:center;
    justify-content:center;
    transition:.3s;
}

.banner-slider .elementor-swiper-button svg{
    width:18px;
    height:18px;
    fill:#000;
}


.logo-grid .elementor-widget-image{
    background: #fff;
    border: 1px solid #e5e5e5;
    border-radius: 12px;
    height: 140px;
    display: flex;
    align-items: center;
    justify-content: center;
/*     padding: 10px; */
    transition: .3s;
}

.logo-grid .elementor-widget-image img{
    max-width: 100%;
    max-height: 130px;
    width: auto;
    height: auto;
    object-fit: contain;
}

.logo-grid .elementor-widget-image:hover{
    border-color: #BA0C2F;
    box-shadow: 0 8px 25px rgba(0,0,0,.08);
}




.brand-logo .elementor-widget-image{

    height:110px;
    display:flex;
    justify-content:center;
    align-items:center;
    transition:.3s;
		padding:10px;
}

.brand-logo .elementor-widget-image:hover{
    transform:translateY(-6px);
    border-color:#00AFF0;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
}

.brand-logo .elementor-widget-image img{
    max-width:100%;
    max-height:75px;
    width:auto;
    height:auto;
    object-fit:contain;
}


.banner-slider {
	height: 100%;
    max-height: 400px;
}
.banner-slider img{
	  height: auto;
    max-height: 400px;
    max-width: 600px;
    width: 100%;
}

/* Desktop */
.ekit-wid-con img {
    width: 100% !important;
    height: 200px !important;
/*     object-fit: fit; */
/*     object-position: center; */
    display: block;
}

/* Tablet */
@media (max-width: 1024px) {
    .ekit-wid-con img {
        width: 100% !important;
        height: 200px !important;
    }
}

/* Mobile */
@media (max-width: 767px) {
    .ekit-wid-con img {
        width: 100% !important;
        height: 150px !important;
    }
}

/* Small Mobile */
@media (max-width: 480px) {
    .ekit-wid-con img {
        width: 100% !important;
        height: 140px !important;
    }
}


/* ==================================================
   CONTACT FORM 7 - BASE & OVERRIDES
   ================================================== */

.wpcf7 br {
    display: none !important;
}

.custom-cf7-form p {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

.custom-cf7-form .wpcf7-form-control-wrap {
    display: block !important;
    width: 100% !important;
}

/* Container Layout */
.custom-cf7-form {
    margin: 0px !important;
    font-family: 'Manrope', sans-serif !important;
}

.custom-cf7-form .cf7-row {
    display: flex !important;
    flex-wrap: wrap !important;
    margin-bottom: 40px !important;
    gap: 20px !important;
}

.custom-cf7-form .cf7-row:last-child {
    margin-bottom: 0 !important;
}

.custom-cf7-form .cf7-col-6 {
    flex: 1 1 calc(50% - 10px) !important;
    width: calc(50% - 10px) !important;
    display: flex !important;
    flex-direction: column !important;
}

.custom-cf7-form .cf7-col-12 {
    flex: 1 1 100% !important;
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
}

/* Label Styling */
.custom-cf7-form label {
    font-weight: 700 !important;
    font-size: 20px !important;
    font-family: 'Manrope', sans-serif !important;
    margin-bottom: 8px !important;
    color: #111111 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    display: block !important;
}

/* Input Fields, Select, and Textarea Styling */
.custom-cf7-form input[type="text"],
.custom-cf7-form input[type="email"],
.custom-cf7-form input[type="tel"],
.custom-cf7-form select,
.custom-cf7-form textarea {
    width: 100% !important;
    height: 60px !important;
    background-color: #f3f4f6 !important;
    border: none !important;
    padding: 10px 16px !important;
    font-size: 18px !important;
    font-family: 'Manrope', sans-serif !important;
    color: #333333 !important;
    border-radius: 0px !important;
    box-sizing: border-box !important;
    outline: none !important;
    box-shadow: none !important;
    line-height: normal !important;
}

.custom-cf7-form input:focus,
.custom-cf7-form select:focus,
.custom-cf7-form textarea:focus {
    background-color: #e9ecef !important;
}

/* Textarea Height Specifics */
.custom-cf7-form textarea {
    height: 150px !important;
    resize: vertical !important;
}

/* Placeholder Styling */
.custom-cf7-form ::placeholder,
.custom-cf7-form textarea::placeholder,
.custom-cf7-form textarea::-moz-placeholder,
.custom-cf7-form textarea:-ms-input-placeholder {
    color: #999999 !important;
    font-size: 20px !important;
    font-family: 'Manrope', sans-serif !important;
    opacity: 1 !important;
    font-weight: 400 !important;
}

/* Dropdown / Select Arrow Styling */
.custom-cf7-form select {
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%22%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23333333%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 15px top 50% !important;
    background-size: 12px auto !important;
    cursor: pointer !important;
}

/* Submit Button Styling */
.custom-cf7-form input[type="submit"] {
    background-color: #be0d32 !important;
    color: #ffffff !important;
    border: 2px solid #be0d32 !important;
    padding: 16px 32px !important;
    font-family: 'Manrope', sans-serif !important;
    font-size: 20px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0px !important;
    cursor: pointer !important;
    width: auto !important;
    display: inline-block !important;
    border-radius: 0px !important;
    transition: all 0.3s ease !important;
}

/* Hover Effect */
.custom-cf7-form input[type="submit"]:hover {
    background-color: #ffffff !important;
    color: #be0d32 !important;
    border: 2px solid #be0d32 !important;
    border-radius: 0px !important;
}


/* ==================================================
   RESPONSIVE MEDIA QUERIES
   ================================================== */

/* ==================================================
   RESPONSIVE MEDIA QUERIES (UPDATED)
   ================================================== */

/* --- Tablet Devices (768px se 1024px) --- */
/* Yahan 2 Columns Layout bilkul Desktop ki tarah intact rahega */
@media (min-width: 768px) and (max-width: 1024px) {
    .custom-cf7-form .cf7-row {
        margin-bottom: 30px !important;
        gap: 15px !important;
    }
    
    /* Ensuring 2-column structure stays intact */
    .custom-cf7-form .cf7-col-6 {
        flex: 1 1 calc(50% - 8px) !important;
        width: calc(50% - 8px) !important;
    }

    .custom-cf7-form label {
        font-size: 18px !important;
    }

    .custom-cf7-form input[type="text"],
    .custom-cf7-form input[type="email"],
    .custom-cf7-form input[type="tel"],
    .custom-cf7-form select {
        height: 55px !important;
        font-size: 16px !important;
    }

    .custom-cf7-form ::placeholder,
    .custom-cf7-form textarea::placeholder {
        font-size: 17px !important;
    }

    .custom-cf7-form input[type="submit"] {
        font-size: 18px !important;
        padding: 14px 28px !important;
    }
}

/* --- Mobile Devices Only (Under 767px) --- */
/* Sirf Mobile screen par single column layout convert hoga */
@media (max-width: 767px) {
    .custom-cf7-form .cf7-row {
        margin-bottom: 24px !important;
        gap: 15px !important;
    }

    /* Convert 2 columns to 1 full-width column (Only on Phones) */
    .custom-cf7-form .cf7-col-6 {
        flex: 1 1 100% !important;
        width: 100% !important;
    }

    .custom-cf7-form label {
        font-size: 16px !important;
        margin-bottom: 6px !important;
    }

    .custom-cf7-form input[type="text"],
    .custom-cf7-form input[type="email"],
    .custom-cf7-form input[type="tel"],
    .custom-cf7-form select {
        height: 50px !important;
        font-size: 15px !important;
        padding: 8px 12px !important;
    }

    .custom-cf7-form textarea {
        height: 120px !important;
    }

    .custom-cf7-form ::placeholder,
    .custom-cf7-form textarea::placeholder {
        font-size: 15px !important;
    }

    .custom-cf7-form input[type="submit"] {
        width: 100% !important;
        font-size: 16px !important;
        padding: 14px 20px !important;
        text-align: center !important;
    }
}
/* --- Mobile Devices (Under 767px) --- */
@media (max-width: 767px) {
    .custom-cf7-form .cf7-row {
        margin-bottom: 24px !important;
        gap: 15px !important;
    }

    /* Convert 2 columns to 1 full-width column */
    .custom-cf7-form .cf7-col-6 {
        flex: 1 1 100% !important;
        width: 100% !important;
    }

    .custom-cf7-form label {
        font-size: 16px !important;
        margin-bottom: 6px !important;
    }

    .custom-cf7-form input[type="text"],
    .custom-cf7-form input[type="email"],
    .custom-cf7-form input[type="tel"],
    .custom-cf7-form select {
        height: 50px !important;
        font-size: 15px !important;
        padding: 8px 12px !important;
    }

    .custom-cf7-form textarea {
        height: 120px !important;
    }

    .custom-cf7-form ::placeholder,
    .custom-cf7-form textarea::placeholder {
        font-size: 15px !important;
    }

    /* Button full width on small screens for better UI */
    .custom-cf7-form input[type="submit"] {
        width: 100% !important;
        font-size: 16px !important;
        padding: 14px 20px !important;
        text-align: center !important;
    }
}








/* Popup */
.gallery-popup{
    position:fixed;
    inset:0;
    width:100%;
    height:100%;
    display:none;
    align-items:center;
    justify-content:center;
    z-index:999999;
}

.gallery-popup.active{
    display:flex;
}

.gallery-popup-overlay{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.75);
}

.gallery-popup-content{
    position:relative;
    width:90%;
    max-width:1200px;
    max-height:100vh;
    overflow-y:auto;
    background:#fff;
    padding:30px;
    border-radius:8px;
    z-index:2;
}

.gallery-close{
    position:absolute;
    top:15px;
    right:20px;
    font-size:32px;
    cursor:pointer;
    line-height:1;
}

#gallery-title{
    margin-bottom:25px;
    font-size:30px;
    font-weight:700;
		font-family: Manrope;
}

.gallery-images{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px;
}

.gallery-images .item{
    text-decoration:none;
    color:#222;
}

.gallery-images img{
    width:100%;
    aspect-ratio:4/3;
    object-fit:cover;
    display:block;
    border-radius:0px;
    transition:.3s;
}

.gallery-images img:hover{
    transform:scale(1.05);
}

.gallery-images .item{
    position:relative;
    overflow:hidden;
    border-radius:0px;
}

.gallery-images img{
    width:100%;
    display:block;
    aspect-ratio:4/3;
    object-fit:cover;
}

.item-overlay{
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    padding:15px 15px 15px;
    background:linear-gradient(
        to top,
        rgba(0,0,0,.75) 0%,
        rgba(0,0,0,.35) 50%,
        transparent 100%
    );
}

.item-caption{
    color:#fff;
    font-size:20px;
    font-weight:700;
		font-family: Manrope;
}

@media(max-width:992px){
    .gallery-images{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:576px){
    .gallery-images{
        grid-template-columns:1fr;
    }

    .gallery-popup-content{
        padding:20px;
    }
}

.gallery-btn{
    cursor:pointer;
    display:inline-block;
    transition:.3s;
}

.gallery-btn:hover{
    transform:translateX(6px);
}

.single-post .ast-container {
    max-width: 1920px !important;
		padding: 0px !important; 
}

/* =========================================
   ElementsKit Blog - Image + Title Same Row
========================================= */

.ekit-wid-con #post-items--0a3bd67 .post-item .elementskit-blog-block-post .row.no-gutters {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    width: 100% !important;
}

/* IMAGE COLUMN */
.ekit-wid-con #post-items--0a3bd67 .post-item .elementskit-blog-block-post .row.no-gutters > .order-1 {
    display: block !important;
    flex: 0 0 50% !important;
    width: 50% !important;
    max-width: 50% !important;
    float: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* TITLE COLUMN */
.ekit-wid-con #post-items--0a3bd67 .post-item .elementskit-blog-block-post .row.no-gutters > .order-2 {
    display: block !important;
    flex: 0 0 50% !important;
    width: 50% !important;
    max-width: 50% !important;
    float: none !important;
    padding-left: 10px !important;
    padding-right: 0 !important;
}

/* IMAGE */
.single-post .ekit-wid-con #post-items--0a3bd67 .post-item img {
    display: block !important;
    width: 100% !important;
    height: 70px !important;
    object-fit: cover !important;
	object-position: center !important;
}

/* TITLE */
.ekit-wid-con #post-items--0a3bd67 .entry-title {
    margin: 0 !important;
    font-size: 16px;
    line-height: 1.35;
}
/* Image column */
.ekit-wid-con #post-items--0a3bd67 .post-item .row.no-gutters > .order-1 {
    flex: 0 0 25% !important;
    width: 25% !important;
    max-width: 25% !important;
}

/* Title column */
.ekit-wid-con #post-items--0a3bd67 .post-item .row.no-gutters > .order-2 {
    flex: 0 0 75% !important;
    width: 75% !important;
    max-width: 75% !important;
}

/* =========================================
   TABLET
========================================= */

@media (max-width: 1024px) {

    .ekit-wid-con #post-items--0a3bd67 .post-item .elementskit-blog-block-post .row.no-gutters {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
    }

    .ekit-wid-con #post-items--0a3bd67 .post-item .elementskit-blog-block-post .row.no-gutters > .order-1 {
        flex: 0 0 30% !important;
        width: 30% !important;
        max-width: 30% !important;
    }

    .ekit-wid-con #post-items--0a3bd67 .post-item .elementskit-blog-block-post .row.no-gutters > .order-2 {
        flex: 0 0 70% !important;
        width: 70% !important;
        max-width: 70% !important;
    }

    .single-post .ekit-wid-con #post-items--0a3bd67 .post-item img {
        height: 70px !important;
    }
}


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

@media (max-width: 767px) {

    .ekit-wid-con #post-items--0a3bd67 .post-item .elementskit-blog-block-post .row.no-gutters {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
    }

    .ekit-wid-con #post-items--0a3bd67 .post-item .elementskit-blog-block-post .row.no-gutters > .order-1 {
        flex: 0 0 30% !important;
        width: 30% !important;
        max-width: 30% !important;
    }

    .ekit-wid-con #post-items--0a3bd67 .post-item .elementskit-blog-block-post .row.no-gutters > .order-2 {
        flex: 0 0 70% !important;
        width: 70% !important;
        max-width: 70% !important;
        padding-left: 8px !important;
    }

    .single-post .ekit-wid-con #post-items--0a3bd67 .post-item img {
        height: 60px !important;
    }

    .ekit-wid-con #post-items--0a3bd67 .entry-title {
        font-size: 16px !important;
        line-height: 1.3 !important;
        margin: 0 !important;
    }
}



.blog-post-sidebar{
    position: sticky;
    top: 30px;
    align-self: flex-start;
}


.wpcf7-response-output {
	margin: 0px !important;
}

/* Desktop */
.search-results .site-content {
    padding: 30px 60px;
}


/* Tablet */
@media (max-width: 1024px) {
    .search-results .site-content {
        padding: 25px 40px;
    }
}


/* Mobile */
@media (max-width: 767px) {
    .search-results .site-content {
        padding: 20px 20px;
    }
}


.ast-scroll-to-top-right {
    bottom: 80px;
}

/* =========================================
   CUSTOM SUBSCRIBE FORM
   Only for .custom-subscribe-form
   ========================================= */

.custom-subscribe-form {
    width: 100%;
}

.custom-subscribe-form .subscribe-form-row {
    display: flex;
    width: 100%;
    margin: 0;
    padding: 0;
    align-items: stretch;
}

/* CF7 generated paragraph */
.custom-subscribe-form .subscribe-form-row p {
    display: flex;
    width: 100%;
    margin: 0;
    padding: 0;
    align-items: stretch;
}

/* Email field wrapper generated by CF7 */
.custom-subscribe-form .wpcf7-form-control-wrap {
    flex: 1;
    display: block;
    width: 100%;
}

/* Email input */
.custom-subscribe-form input.subscribe-email {
    display: block;
    width: 100%;
    height: 60px;
    padding: 0 36px;
    margin: 0;
    border: none;
    border-radius: 0;
    background: #f1f1f1;
    color: #555;
    font-size: 20px;
    font-family: inherit;
    line-height: 1;
    outline: none;
    box-sizing: border-box;
}

/* Placeholder */
.custom-subscribe-form input.subscribe-email::placeholder {
    color: #a7a7a7;
    opacity: 1;
}

/* Subscribe button */
.custom-subscribe-form input.subscribe-submit {
    display: block;
    width: 262px;
    min-width: 262px;
    height: 60px;
    padding: 0 30px;
    margin: 0;
    border: none;
    border-radius: 0;
    background: #c9002b;
    color: #ffffff;
    font-size: 22px;
    font-weight: 600;
    font-family: inherit;
    line-height: 1;
    cursor: pointer;
    text-transform: uppercase;
    box-sizing: border-box;
    transition: background 0.3s ease;
}

/* Hover */
.custom-subscribe-form input.subscribe-submit:hover {
    background: #a90024;
}

/* Hide CF7 spinner */
.custom-subscribe-form .wpcf7-spinner {
    display: none !important;
}

/* Remove unwanted CF7 spacing */
.custom-subscribe-form br {
    display: none;
}

.custom-subscribe-form p {
    margin: 0;
}


/* =========================================
   TABLET
   ========================================= */

@media (max-width: 991px) {

    .custom-subscribe-form input.subscribe-email {
        height: 50px;
        padding: 0 25px;
        font-size: 20px;
    }

    .custom-subscribe-form input.subscribe-submit {
        width: 220px;
        min-width: 220px;
        height: 50px;
        font-size: 19px;
    }
}


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

@media (max-width: 767px) {

    .custom-subscribe-form .subscribe-form-row,
    .custom-subscribe-form .subscribe-form-row p {
        display: flex;
        flex-direction: column;
        width: 100%;
    }

    .custom-subscribe-form .wpcf7-form-control-wrap {
        width: 100%;
    }

    .custom-subscribe-form input.subscribe-email {
        width: 100%;
        height: 50px;
        padding: 0 20px;
        font-size: 17px;
    }

    .custom-subscribe-form input.subscribe-submit {
        width: 100%;
        min-width: 100%;
        height: 58px;
        font-size: 17px;
    }
}


/* ==================================================
   NEW SIMPLE CONTACT FORM (NON-CONFLICTING)
   ================================================== */

/* Remove default BR tags inside this form only */
.simple-contact-form p {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

.simple-contact-form .wpcf7-form-control-wrap {
    display: block !important;
    width: 100% !important;
}

/* Container */
.simple-contact-form {
    max-width: 100%;
    margin: 0 auto;
    font-family: 'Manrope', sans-serif !important;
}

.simple-contact-form .simple-cf7-row {
    margin-bottom: 16px !important;
    width: 100% !important;
}

.simple-contact-form .simple-cf7-row:last-child {
    margin-bottom: 0 !important;
}

/* Input Fields & Textarea Styling */
.simple-contact-form input[type="text"],
.simple-contact-form input[type="email"],
.simple-contact-form input[type="tel"],
.simple-contact-form textarea {
    width: 100% !important;
    height: 52px !important;
    background-color: #ffffff !important;
    border: 1px solid #e2e2e2 !important;
    border-radius: 4px !important;
    padding: 12px 16px !important;
    font-size: 16px !important;
    font-family: 'Manrope', sans-serif !important;
    color: #333333 !important;
    box-sizing: border-box !important;
    outline: none !important;
    box-shadow: none !important;
    transition: border-color 0.3s ease !important;
}

/* Active/Focus Border */
.simple-contact-form input:focus,
.simple-contact-form textarea:focus {
    border-color: #be0d32 !important;
}

/* Textarea Height */
.simple-contact-form textarea {
    height: 130px !important;
    resize: vertical !important;
}

/* Placeholder Styling */
.simple-contact-form ::placeholder,
.simple-contact-form textarea::placeholder {
    color: #333333 !important;
    font-size: 16px !important;
    font-family: 'Manrope', sans-serif !important;
    opacity: 0.9 !important;
}

/* Rounded Pill Button Styling */
.simple-contact-form input[type="submit"] {
    width: 100% !important;
    background-color: #be0d32 !important;
    color: #ffffff !important;
    border: 2px solid #be0d32 !important;
    padding: 14px 28px !important;
    font-family: 'Manrope', sans-serif !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    border-radius: 50px !important; /* Fully Rounded Pill Style */
    cursor: pointer !important;
    display: block !important;
    text-align: center !important;
    transition: all 0.3s ease !important;
    margin-top: 10px !important;
}

/* Button Hover Effect */
.simple-contact-form input[type="submit"]:hover {
    background-color: #ffffff !important;
    color: #be0d32 !important;
    border: 2px solid #be0d32 !important;
}