/*
 Theme Name:     Divi Child
 Theme URI:      https://www.elegantthemes.com/gallery/divi/
 Description:    Divi Child Theme
 Author:         Elegant Themes
 Author URI:     https://www.elegantthemes.com
 Template:       Divi
 Version:        1.0.0
*/


/* =Theme customization starts here
------------------------------------------------------- */



@media (max-width: 991px) {
  .inverse {
      display: flex;
      flex-direction: column-reverse;
  }
}

@media (min-width: 1024px) {
  .center-text-image {
      display: flex;
      align-items: center;
  }
}

/* ============================================
   CF7 FORM — REFINED LAYOUT
   ============================================ */

/* Row layout */
.cf7-row {
  display: flex;
  gap: 16px;
  margin-bottom: 0;
}

/* Columns */
.cf7-col {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.cf7-col.full {
  flex: 1 1 100%;
}

/* Labels */
.cf7-col label {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #888;
}

/* ============================================
   INPUTS / SELECT / TEXTAREA
   ============================================ */

.cf7-col input:not([type="submit"]),
.cf7-col select,
.cf7-col textarea {
  width: 100%;
  padding: 11px 14px;
  background: #fafafa;
  border: 1.5px solid #e0e0e0;
  border-radius: 6px;
  font-size: 14px;
  color: #2c2c2c;
  line-height: 1.5;
  transition: border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
  outline: none;
  -webkit-appearance: none;
  appearance: none;
}

.cf7-col input:not([type="submit"]):focus,
.cf7-col select:focus,
.cf7-col textarea:focus {
  border-color: #dd5e1a;
  background: #fff;
  box-shadow: 0 0 0 3px rgba(221, 94, 26, 0.1);
}

/* Placeholder */
.cf7-col input::placeholder,
.cf7-col textarea::placeholder {
  color: #bbb;
  font-size: 13px;
}

/* Select arrow */
.cf7-col select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23999' d='M6 8L0 0h12z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 14px center;
  padding-right: 36px;
  cursor: pointer;
}

/* Textarea */
.cf7-col textarea {
  min-height: 110px;
  resize: vertical;
}

/* ============================================
   SUBMIT BUTTON
   ============================================ */

.cf7-col input[type="submit"] {
  width: 100%;
  padding: 13px 24px;
  background: #dd5e1a;
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  transition: background 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease;
  box-shadow: 0 3px 10px rgba(221, 94, 26, 0.25);
}

.cf7-col input[type="submit"]:hover {
  background: #c45216;
  transform: translateY(-1px);
  box-shadow: 0 5px 16px rgba(221, 94, 26, 0.35);
}

.cf7-col input[type="submit"]:active {
  transform: translateY(0);
  box-shadow: 0 2px 6px rgba(221, 94, 26, 0.2);
}

/* ============================================
   CF7 VALIDATION STATES
   ============================================ */

.cf7-col .wpcf7-not-valid {
  border-color: #e05c5c !important;
  background: #fff8f8 !important;
}

.cf7-col .wpcf7-not-valid-tip {
  font-size: 11px;
  color: #e05c5c;
  margin-top: 4px;
}

.wpcf7-response-output {
  margin-top: 12px !important;
  padding: 10px 14px !important;
  border-radius: 6px !important;
  font-size: 13px !important;
  border: none !important;
}

.wpcf7-mail-sent-ok {
  background: #edf7f0 !important;
  color: #2e7d50 !important;
}

.wpcf7-validation-errors,
.wpcf7-mail-sent-ng {
  background: #fff0f0 !important;
  color: #c0392b !important;
}

/* ============================================
   SPACING BETWEEN ROWS
   ============================================ */

.cf7-row + .cf7-row {
  margin-top: 16px;
}

/* ============================================
   DIVI MOBILE MENU — BRAND ACCENTS
   ============================================ */

.mobile_menu_bar:before,
.mobile_menu_bar:after,
#top-menu li.current-menu-ancestor > a,
#top-menu li.current-menu-item > a {
  color: #dd5e1a;
}

.et_mobile_menu {
  border-top: 3px solid #dd5e1a;
}

/* ============================================
   RESPONSIVE
   ============================================ */

@media (max-width: 767px) {
  .cf7-row {
    flex-direction: column;
    gap: 0;
  }

  .cf7-row + .cf7-row {
    margin-top: 12px;
  }

  .cf7-col input:not([type="submit"]),
  .cf7-col select,
  .cf7-col textarea {
    font-size: 16px; /* prevents iOS auto-zoom */
  }
}

