/* 
Theme Name: IMX Child Theme
Template: Divi
Description: IMX theme 2026
Version: 1.1
Author: Zigma
*/



/* =========================================================
   IMX — Contact Form 7 styling to match the Divi form modules
   (Repairs / Parts pages)

   Brand tokens used on the rest of the site:
   Navy   #002E70   Blue   #007CD9   Blue-dark #0063AE
   Blue-lt #E9F4FD  Amber  #FFB800   Ink    #0A0A0A
   BG     #F7F9FB   Border #E3E9EF   Secondary text #5B6573
   Headings: Poppins (700/800)   Body/labels/buttons: Inter (400/600)

   HOW TO USE
   1. Paste this into Divi → Theme Options → Custom CSS
      (or Appearance → Customize → Additional CSS).
   2. Wrap the [contact-form-7 ...] shortcode in a div with the
      class below, so it gets the white "card" treatment the
      Divi contact_form() rows used:

        <div class="imx-form-card">
          [contact-form-7 id="123" title="Repair Request"]
        </div>

      If you'd rather not touch the page HTML, delete the
      ".imx-form-card" wrapper rules below and the card look
      will just apply everywhere on your CF7 forms instead.
   ========================================================= */

/* Card wrapper — matches CARD_COL from the Divi build */
.imx-form-card {
  background-color: #FFFFFF;
  border: 1px solid #E3E9EF;
  border-radius: 14px;
  padding: 30px 24px 30px 24px;
}

/* Optional heading above the form, if you add one:
   <h2 class="imx-form-heading">Request a repair</h2> */
.imx-form-heading {
  font-family: 'Poppins', sans-serif;
  font-weight: 800;
  color: #002E70;
  font-size: 34px;
  text-align: center;
  margin: 0 0 12px;
}

/* Field spacing */
.wpcf7-form p {
  margin-bottom: 18px;
}

.wpcf7-form label {
  display: block;
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: 14.5px;
  color: #002E70;
  margin-bottom: 8px;
  line-height: 1.5em;
}

/* Text / email / tel / textarea / select inputs */
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form input[type="number"],
.wpcf7-form textarea,
.wpcf7-form select {
  width: 100%;
  font-family: 'Inter', sans-serif;
  font-size: 15px;
  color: #0A0A0A;
  background-color: #F7F9FB;
  border: 1px solid #E3E9EF;
  border-radius: 8px;
  padding: 12px 14px;
  box-sizing: border-box;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.wpcf7-form textarea {
  min-height: 130px;
  resize: vertical;
}

/* Focus state */
.wpcf7-form input[type="text"]:focus,
.wpcf7-form input[type="email"]:focus,
.wpcf7-form input[type="tel"]:focus,
.wpcf7-form textarea:focus,
.wpcf7-form select:focus {
  outline: none;
  border-color: #007CD9;
  box-shadow: 0 0 0 3px rgba(0, 124, 217, 0.15);
  background-color: #FFFFFF;
}

/* Select arrow area needs a touch more right padding */
.wpcf7-form select {
  padding-right: 34px;
  appearance: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%235B6573'><path d='M7 10l5 5 5-5z'/></svg>");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 18px;
}

/* File upload fields (photo-1 .. photo-5) */
.wpcf7-form input[type="file"] {
  font-family: 'Inter', sans-serif;
  font-size: 14px;
  color: #5B6573;
  border: 1px dashed #E3E9EF;
  border-radius: 8px;
  padding: 10px 12px;
  background-color: #F7F9FB;
  width: 100%;
  box-sizing: border-box;
  margin-bottom: 8px;
}

.wpcf7-form input[type="file"]:last-of-type {
  margin-bottom: 0;
}

/* Submit button — matches the Divi btn("...","blue") style */
.wpcf7-form input[type="submit"],
.wpcf7-form .wpcf7-submit {
  display: inline-block;
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: 16px;
  color: #FFFFFF;
  background-color: #007CD9;
  border: none;
  border-radius: 10px;
  padding: 12px 26px;
  cursor: pointer;
  transition: background-color 0.15s ease;
}

.wpcf7-form input[type="submit"]:hover,
.wpcf7-form .wpcf7-submit:hover {
  background-color: #0063AE;
}

.wpcf7-form input[type="submit"]:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

/* Validation error text (CF7 tip) */
.wpcf7-not-valid-tip {
  font-family: 'Inter', sans-serif;
  font-size: 13px;
  color: #C0392B;
  margin-top: 6px;
}

.wpcf7-form-control.wpcf7-not-valid {
  border-color: #C0392B !important;
}

/* Success / sent message */
.wpcf7-response-output {
  font-family: 'Inter', sans-serif;
  font-size: 14.5px;
  border-radius: 8px;
  padding: 14px 16px;
  margin-top: 20px;
}

.wpcf7 .wpcf7-mail-sent-ok {
  color: #0A0A0A;
  background-color: #E9F4FD;
  border: 1px solid #007CD9;
}

.wpcf7 .wpcf7-validation-errors,
.wpcf7 .wpcf7-mail-sent-ng,
.wpcf7 .wpcf7-aborted {
  color: #0A0A0A;
  background-color: #FDECEC;
  border: 1px solid #C0392B;
}

/* Spinner color to match brand blue */
.wpcf7-form .ajax-loader {
  filter: hue-rotate(190deg) saturate(3);
}

/* Mobile tightening */
@media (max-width: 767px) {
  .imx-form-card {
    padding: 22px 18px 24px 18px;
  }
  .imx-form-heading {
    font-size: 26px;
  }
}


.imx-shop-page .woocommerce-table--order-details .order-actions--heading,
.imx-shop-page .woocommerce-table--order-details .order-actions--heading + td {
  display: none;
}

.imx-shop-page .woocommerce-info, .imx-shop-page .woocommerce-message {
  color:#000!important; border-top-color:#007CD9!important; background:#fff; border-radius:10px; padding:14px 18px;
}


.woocommerce-info a {
  color:#007CD9!important;
  
}

@media (max-width: 800px) {
 .imx-shop-page table.shop_table td {
  display: table-cell;
 }
}
