/*
 Theme Name:   Vexiro Child
 Theme URI:    http://klbtheme.com/vexiro/
 Description:  Vexiro Child Theme
 Author:       KlbTheme
 Author URI:   http://themeforest.net/user/KlbTheme
 Template:     vexiro
 Version:      1.0.1
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Tags:         light, dark, two-columns, right-sidebar, responsive-layout, accessibility-ready
 Text Domain:  vexiro-child

/* Hero section form call to action */
/* 1. Layout Container (Flexbox for side-by-side) */
.callback-form-group {
  display: flex;
  /* Aligns input and button side-by-side */
  align-items: stretch;
  /* Makes both elements the same height */
  overflow: hidden;
  max-width: 600px;
}

/* --- Layout Fixes for CF7 HTML Structure --- */
.callback-form-group p {
  margin: 0;
  /* Remove default paragraph margin */
  padding: 0;
  /* Remove default paragraph padding */
  display: flex;
  /* Makes the paragraph act as a flex item */
  flex-grow: 1;
}

.callback-form-group .wpcf7-form-control-wrap {
  display: flex;
  /* Makes the wrap play nice with flex */
  flex-grow: 1;
}

/* 2. Mobile Input Field Styling */
.callback-form-group .callback-input {
  flex-grow: 1;
  border: none !important;
  box-shadow: none;
  background: #fff;
  /* Ensure white background */

  /* Your Custom Styling */
  padding: 28px;
  /* Large padding for height */
  border-radius: 9px 0 0 9px;
  /* Rounded only on the left side */
  font-family: montserrat;
  color: #2c2c2c;
  font-size: 15px;
  font-weight: 500;
}

/* Ensure the placeholder text looks correct */
.callback-form-group .callback-input::placeholder {
  color: #8e8e8e;
  opacity: 1;
}

/* 3. Button Styling (Includes "Send" hide fix) */
.callback-form-group .callback-button {
  width: 60px;
  min-height: 56px;
  border: none;
  cursor: pointer;
  padding: 0;
  margin: 0;
  position: relative;
  border-radius: 0 9px 9px 0;
  /* Rounded only on the right side */

  /* *** THE FIX: HIDE DEFAULT TEXT *** */
  text-indent: -9999px;
  /* Safer way to hide text */
  font-size: 0;
  line-height: 0;
  /* ********************************* */
}


/* --- FIX 2: SVG Icon Implementation --- */

.callback-form-group .callback-button {
  /* 1. Set the SVG as a background image */
  background-image: url('https://ndis360.com.au/wp-content/themes/vexiro-child/hero-icon-white.svg');

  /* 2. Positioning and Sizing */
  background-repeat: no-repeat;
  background-position: center center;
  /* Center the icon */
  background-size: 43%;
}

.callback-form-group .callback-button:hover {
  background-image: url('https://ndis360.com.au/wp-content/themes/vexiro-child/phone-solid-full-arrow.svg');

}

/* Remove any leftover icon font pseudo-element styles */
.callback-form-group .callback-button::after {
  content: none !important;
}

/* Optional: Hover effect for the button */
.callback-form-group .callback-button:hover {
  -webkit-transition: background-image 0.3s ease;
  background-color: #033a22;
  -webkit-transition: background-color 0.3s ease;
}

/* --- FIX 3: Spinner Spacing Fix --- */

.hero-call-form .wpcf7-spinner {
  position: absolute;
  top: 50%;
  left: 106%;
  transform: translate(-50%, -50%);
  margin: 0;
  /* Removes default margin/spacing */
  /* Ensure it is truly hidden when not active: */
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s;
}

/* This is the class CF7 adds when submitting, making the spinner appear */
.hero-call-form .wpcf7-form-control-wrap.wpcf7-in-loading .wpcf7-spinner {
  opacity: 1;
  visibility: visible;
}

.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output {
  border: none;
  font-family: montserrat;
  font-size: 13px;
  color: red;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
  border: none;
  color: red;
}

.wpcf7 form.sent .wpcf7-response-output {
  background: #1D643B;
  color: #d1ecdf;
  border: 0px;
  border-radius: 4px;
  box-shadow: 1px 5px 17px rgba(0, 0, 0, 0.4);
  text-align: center;
  font-weight: 700;
}

/* price section content */
.price-section-content .pricing-table-price .price {
  font-size: 3.25rem !important;
  font-weight: 700 !important;
  color: #1d643b;
}

.price-section-content .pricing-table-footer {
  display: none;
}

/* price section form */
.price-contact-form .wpcf7-checkbox .wpcf7-list-item {
  margin: 0px !important;
}

.price-contact-form .wpcf7-checkbox .wpcf7-list-item input {
  width: 21px;
  margin-right: 5px;
  transform: scale(1.2);
}

.price-contact-form .wpcf7-submit {
  z-index: 9;
}

button:not(.unset).button-lime:not(.button-outline),
.button:not(.unset).button-lime:not(.button-outline),
input[type=submit]:not(.unset).button-lime:not(.button-outline),
.submit:not(.unset).button-lime:not(.button-outline),
.btn:not(.unset).button-lime:not(.button-outline) {
  color: #ffffff;
  background-color: #1d643b;
}

button:not(.unset).button-lime:not(.button-outline):hover,
.button:not(.unset).button-lime:not(.button-outline):hover,
input[type=submit]:not(.unset).button-lime:not(.button-outline):hover,
.submit:not(.unset).button-lime:not(.button-outline):hover,
.btn:not(.unset).button-lime:not(.button-outline):hover {
  color: #ffffff;
  background-color: #163724;
}

.price-section-heading-switcher .site-switch {
  display: none;
}

/* header top button */
.klb-header-button {
  background: #1d643b !important;
  color: white !important;
  border: none !important;
}

.price-contact-form input,
.price-contact-form textarea {
  color: #161616;
  font-weight: 400;
  line-height: 22px;
}

.wpcf7-submit {
  font-weight: 700 !important;
}

@media (max-width: 600px) {

  /* Responsive adjustments for mobile view */
  .hero-call-form input {
    font-size: 12px !important;
    font-family: montserrat !important;
  }

  .hero-heading-widget h2 {
    padding-top: 30px !important;
  }
}