/**
Theme Name: Astra Child
Theme URI: https://wpastra.com/
Description: Child theme for Astra WordPress Theme
Author: Brainstorm Force
Author URI: https://wpastra.com/
Template: astra
Version: 1.0.0
Text Domain: astra-child
*/


/* hover show underline */
.elementor-icon-box-title a:hover {
    text-decoration: underline;
}

/* header border code */
.ast-theme-transparent-header #masthead {
        position: unset;
    }

header#masthead::before {
    content: '';
    display: block;
    height: 5px;
    width: 100%;
    background: linear-gradient(
        to right,
        #7dc52a 0%,
        #7dc52a 33.33%,
        #ffbf23 33.33%,
        #ffbf23 66.66%,
        #1d4c90 66.66%,
        #1d4c90 100%
    );
    position: absolute;
    top: 0;
    left: 0;
    z-index: 100;
}

/* Disable all interaction on last breadcrumb */
.hfe-breadcrumbs-item.hfe-breadcrumbs-last {
    pointer-events: none;
    cursor: default;
}

/* header{
    background-image:
        linear-gradient(
            to right,
            #7dc52a 0%,
            #7dc52a 33.33%,
            #ffbf23 33.33%,
            #ffbf23 66.66%,
            #1d4c90 66.66%,
            #1d4c90 100%
        );
    background-size: 100% 5px;
    background-repeat: no-repeat;
    background-position: top left;
} */

header nav ul li a{
    color: #777777 !important;
}

header nav ul li.current_page_item a:active, header nav ul li a:hover, .ast-builder-menu-1 .menu-item.current-menu-item > .menu-link{
    color: #ffbf23 !important;
}
.banner-top-links {
    display: flex;
    gap: 10px;
    justify-content: center;
	flex-wrap: wrap;
}

footer .site-primary-footer-wrap{
    display: none !important;
}
.partnership-container{
        position: relative;
}
.partnership-container-image{
        position: absolute;
    right: 50px;
    bottom: 50px;
}
.featured-container-dot::before{
    z-index: 1;
}
.spec-home-sec-2{
        height: calc(100vh - 21.5em);
        position: relative;
}

.spec-home-sec-2-image{
    position: absolute;
    top: 15.5em;
}

/* impact */
/* Parent */
.flip-card {
  position: relative;
  perspective: 1200px;
  min-height: 260px;
}

/* Front & Back */
.flip-front,
.flip-back {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  backface-visibility: hidden;
  transition: transform 0.6s ease, box-shadow 0.4s ease;

}

/* Front */
.flip-front {
  transform: rotateY(0deg);
  background: #ffffff;
  z-index: 2;
}

/* Back */
.flip-back {
  transform: rotateY(180deg);
  background: #fff7e0;
}

/* Hover */
.flip-card:hover .flip-front {
  transform: rotateY(-180deg);
}

.flip-card:hover .flip-back {
  transform: rotateY(0deg);
}

/* impact */

/*contact page map fixing */
/* ===== Fix: Map height matches Contact Form column height ===== */

/* Make the parent container stretch children equally */
.elementor-element-5dfc136 > .e-con-inner {
    align-items: stretch !important;
}

/* Left column (form side) */
.elementor-element-91bc190 {
    display: flex !important;
    flex-direction: column !important;
}

/* Right column (map side) - stretch to full height */
.elementor-element-e314807 {
    display: flex !important;
    flex-direction: column !important;
    align-self: stretch !important;
}

/* Map widget fills the entire right column */
.elementor-element-e314807 .elementor-widget-google_maps,
.elementor-element-e314807 .elementor-widget-container,
.elementor-element-e314807 .elementor-custom-embed {
    flex: 1 !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
}

/* The iframe itself stretches to fill */
.elementor-element-e314807 .elementor-custom-embed iframe {
    width: 100% !important;
    height: 100% !important;
    min-height: 400px !important;
    flex: 1 !important;
}


/* CONTACT FORM STYLES */

/* ===== Modern Form ===== */
.modern-form {
  background: #ffffff;
  padding: 24px 24px 0 24px;
  border-radius: 12px;
  box-shadow: 0 6px 30px rgba(0, 0, 0, 0.08);
}
.modern-form p  { margin: 0 !important; padding: 0 !important; }
.modern-form br { display: none !important; }

/* Form Groups */
.form-group { margin-bottom: 12px !important; }

/* Labels */
.modern-form label {
  display: block !important;
  font-weight: 500;
  font-size: 16px;
  color: #777777;
}


/* All inputs, textarea, select */
.modern-form .wpcf7-form-control {
  display: block !important;
  width: 100% !important;
  padding: 8px 10px !important;
  box-sizing: border-box !important;
  font-size: 14px;
  border: 1px solid #d0d0d0;
  color: #777777;
  background: #fff;
  transition: border-color 0.2s;
	font-weight: 300;
}

/* Textarea */
.modern-form textarea {
  height: 120px !important;
  resize: none !important;
}

/* Inline error messages */
.cf7-custom-error {
  display: none;
  margin-top: 4px !important;
  font-size: 13px;
  color: #e02020;
  font-weight: 500;
}

/* Submit button *//* Submit button */
.modern-form .form-submit input[type="submit"] {
  background: #7dc52a !important;
  color: #004376 !important;
  padding: 16px 24px !important;
  border: none;
	font-weight:500;
  border-radius: 0px;
  font-size: 16px !important;
  margin-top: 15px !important;
  cursor: pointer;
  transition: 0.3s ease;
  width: 120px !important;
	font-family: "Montserrat", Sans-serif;
    fill: #004376;   
}
.modern-form .form-submit input[type="submit"]:hover {
  background: #ffbf23 !important;
  color: #fff !important;
}
/* Hide CF7 default inline error tip — use only custom errors */
.modern-form .wpcf7-not-valid-tip {
  display: none !important;
}

/* But show captcha default error with custom style */
.modern-form .wpcf7-recaptcha-container .wpcf7-not-valid-tip,
.modern-form [data-name="cf7sr-recaptcha"] .wpcf7-not-valid-tip {
  display: block ;
  margin-top: 4px ;
  font-size: 13px ;
  color: #e02020;
  font-weight: 500 ;
  background: none ;
  border: none ;
  padding: 0 ;
}

/* Captcha mobile fix */
.modern-form .cf7sr-g-recaptcha {
  transform-origin: left top;
}
.modern-form .form-group label span {
  color: #e53935; /* modern red */
}
/* 
footer */
.mobile-break {
  display: none;
}




@media (min-width: 768px) and (max-width: 1024px) {
    .banner-top-links {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        gap: 8px;
    }

    .banner-top-links span.separator {
        display: inline-block;
    }
}

@media (max-width: 767px) {
	
	@media (max-width: 767px) {
  .mobile-break {
    display: block;
  }
}

  .ast-footer-copyright {
    order: 1;
    width: 100%;
    text-align: center;
    margin-bottom: 10px;
  }

  .footer-social-wrap,
  .ast-footer-social-wrap {
    order: 2;
    width: 100%;
    text-align: center;
  }

  .site-footer .ast-builder-grid-row {
    display: flex;
    flex-direction: column;
  }

    .elementor-element-e314807 .elementor-custom-embed iframe {
        height: 350px !important;
        min-height: 350px !important;
    }
	.banner-top-links {
    flex-direction: column;
		gap:0;
}
	
	.banner-top-links span.separator {
    display: none;
}


   .flip-card {
        min-height: 260px !important;
        height: 260px !important;        /* ADD THIS */
    }

    .flip-front,
    .flip-back {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        height: 100% !important;
    }

	.flip-card.flipped .flip-front {
        transform: rotateY(-180deg);
    }
    .flip-card.flipped .flip-back {
        transform: rotateY(0deg);
    }

}

@media (min-width: 768px) and (max-width: 991px) {

.ast-builder-grid-row-container.ast-builder-grid-row-tablet-2-lheavy .ast-builder-grid-row {
        grid-template-columns: 3fr 1fr;
    }
}


@media (max-width: 900px) {
  .modern-form {
    padding: 16px 12px 0 12px !important;
  }
}


@media (min-width: 360px) and (max-width: 390px) {
  .modern-form .cf7sr-g-recaptcha {
    transform: scale(0.82);
    margin-bottom: -14px;
  }
}

@media (max-width: 359px) {
  .modern-form .cf7sr-g-recaptcha {
    transform: scale(0.75);
    margin-bottom: -20px;
  }
}

