/*
 Theme Name:   Divi Child
 Theme URI:    http://elegantthemes.com/
 Description:  Divi Child Theme
 Author:       ElegantThemes
 Author URI:   http://elegantthemes.com
 Template:     Divi
 Version:      0.1.1
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Tags: responsive-layout, one-column, two-columns, three-columns, four-columns, left-sidebar, right-sidebar, custom-background, custom-colors, featured-images, full-width-template, post-formats, rtl-language-support, theme-options, threaded-comments, translation-ready
 Text Domain:  divi-child-theme
*/

/* ==== Add your own styles below this line ====
 * -------------------------------------------- */
 
 
 /* =========================================================
   SECTION WRAPPER
========================================================= */
#toggle-section {
  background: linear-gradient(135deg, #f5f7fa 0%, #e8ecf1 100%);
  padding: 40px 20px;
}

/* =========================================================
   HEADING + SUBTEXT
========================================================= */
.et_pb_heading_0 h2 {
  font-size: 48px !important;
  font-weight: 700 !important;
  color: #1a1a1a !important;
  text-align: center;
  margin-bottom: 16px !important;
}

.et_pb_text_0 p {
  text-align: center;
  font-size: 20px !important;
  color: #64748b !important;
  margin-bottom: 40px !important;
}

/* =========================================================
   MODERN TOGGLE – SHORTER + CENTERED + CLEAN
========================================================= */

.et_pb_row_2 {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;

  width: 420px !important;  /* modern shorter width */
  background: #fff !important;
  border-radius: 50px !important;
  padding: 6px !important;
  border: 2px solid #e2e8f0 !important;
  margin: 0 auto 50px !important;
  box-shadow: 0 4px 15px rgba(0,0,0,0.07);
}

.et_pb_row_2 > .et_pb_column {
  padding: 0 !important;
  margin: 0 !important;
}

/* Toggle buttons */
.pricing-item-cursor {
  flex: 1 !important;
  text-align: center !important;
  padding: 14px 10px !important;
  border-radius: 50px !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  color: #64748b !important;
  background: transparent !important;
  cursor: pointer;
  transition: all 0.25s ease;
  white-space: nowrap !important;
}

.pricing-item-cursor:hover {
  color: #0ea5e9 !important;
}

/* ACTIVE BUTTON */
.active-pricing-plan {
  background: #0ea5e9 !important;
  color: #fff !important;
  box-shadow: 0 4px 14px rgba(14, 165, 233, 0.35) !important;
}

/* Clean yearly label text */
#pricing-plan-item-2 p span {
  font-weight: 700 !important;
}

/* Prevent “Save $xx” from breaking */
.et_pb_text_23 .et_pb_text_inner,
.et_pb_text_28 .et_pb_text_inner,
.et_pb_text_33 .et_pb_text_inner,
.et_pb_text_38 .et_pb_text_inner {
  white-space: nowrap !important;
}

/* =========================================================
   PRICING ROW – GAP 3PX
========================================================= */
.et_pb_row_3,
.et_pb_row_4 {
  display: flex !important;
  gap: 3px !important; /* EXACT requested */
  width: 100% !important;
  max-width: none !important;
  margin: 0 auto !important;
}

/* =========================================================
   INDIVIDUAL CARD
========================================================= */
.et_pb_column_1_4 {
  background: #fff !important;
  border-radius: 22px !important;
  padding: 32px 24px !important;
  border: 2px solid #e2e8f0 !important;
  box-shadow: 0 2px 10px rgba(0,0,0,0.06) !important;
  transition: all 0.25s ease !important;
  position: relative !important;
  animation: fadeInUp 0.6s ease forwards;
}

/* Hover effect */
.et_pb_column_1_4:hover {
  transform: translateY(-3px);
  border-color: #0ea5e9 !important;
  box-shadow: 0 14px 35px rgba(14,165,233,0.15) !important;
}

/* =========================================================
   MOST POPULAR CARD
========================================================= */
.et_pb_column_5,
.et_pb_column_9 {
  border-color: #0ea5e9 !important;
  box-shadow: 0 6px 25px rgba(14,165,233,0.15) !important;
}

.et_pb_column_5::before,
.et_pb_column_9::before {
  content: "⭐ MOST POPULAR";
  position: absolute;
  top: -12px;
  right: 20px;
  padding: 6px 16px;
  border-radius: 20px;
  background: #0ea5e9;
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.6px;
}

/* =========================================================
   ICONS
========================================================= */
.et_pb_main_blurb_image img {
  width: 80px !important;
  height: 80px !important;
  border-radius: 50%;
  margin: 0 auto 20px !important;
}

/* =========================================================
   TITLE
========================================================= */
.et_pb_blurb h4 {
  text-align: center !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #1a1a1a !important;
  margin-bottom: 14px !important;
}

/* =========================================================
   PRICE TEXT
========================================================= */
.text-4xl {
  font-size: 36px !important;
  font-weight: 700 !important;
  color: #1a1a1a !important;
}

.text-slate-600 {
  font-size: 14px !important;
  color: #64748b !important;
}

.text-green-600 {
  color: #10b981 !important;
  font-size: 13px !important;
  margin-top: 6px !important;
  font-weight: 600 !important;
}

/* =========================================================
   CAPACITY BOX
========================================================= */
.et_pb_text_5 .et_pb_text_inner,
.et_pb_text_10 .et_pb_text_inner,
.et_pb_text_15 .et_pb_text_inner,
.et_pb_text_20 .et_pb_text_inner,
.et_pb_text_25 .et_pb_text_inner,
.et_pb_text_30 .et_pb_text_inner,
.et_pb_text_35 .et_pb_text_inner,
.et_pb_text_40 .et_pb_text_inner {
  background: #f1f5f9 !important;
  border: 1px solid #e2e8f0 !important;
  padding: 14px !important;
  border-radius: 12px !important;
  margin-bottom: 16px !important;
}

/* =========================================================
   FEATURES
========================================================= */
.flex.items-start {
  display: flex !important;
  gap: 8px !important;
  margin-bottom: 9px !important;
}

.lucide-check {
  width: 18px !important;
  height: 18px !important;
  color: #10b981 !important;
  margin-top: 2px;
}

/* =========================================================
   JOIN BUTTONS
========================================================= */
.et_pb_button {
  width: 100% !important;
  padding: 14px !important;
  font-size: 14px !important;
  border-radius: 12px !important;
  font-weight: 700 !important;
  text-transform: uppercase;
  transition: all 0.25s ease !important;
  border: none !important;
}

/* Standard buttons */
.et_pb_button_0,
.et_pb_button_2,
.et_pb_button_3,
.et_pb_button_4,
.et_pb_button_6,
.et_pb_button_7 {
  background: #cbff26 !important;
  color: #1a1a1a !important;
}

/* Popular plan buttons */
.et_pb_button_1,
.et_pb_button_5 {
  background: #0ea5e9 !important;
  color: #fff !important;
  box-shadow: 0 4px 12px rgba(14,165,233,0.3) !important;
}

/* Hover */
.et_pb_button:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 14px rgba(0,0,0,0.15) !important;
}

/* =========================================================
   RESPONSIVE
========================================================= */
@media (max-width: 980px) {
  .et_pb_row_3,
  .et_pb_row_4 {
    flex-direction: column !important;
  }
  .et_pb_column_1_4 {
    width: 100% !important;
    margin-bottom: 20px;
  }
}

@media (max-width: 600px) {
  .et_pb_row_2 {
    width: 95% !important;
    padding: 6px !important;
  }
  .pricing-item-cursor {
    padding: 12px !important;
    font-size: 14px !important;
  }
}

.et_pb_button_module_wrapper.et_pb_button_5_wrapper.et_pb_button_alignment_center.et_pb_module {
    margin-top: 157px !important;
}
.et_pb_button_module_wrapper.et_pb_button_1_wrapper.et_pb_button_alignment_center.et_pb_module {
    margin-top: 38px !important;
}

.et_pb_button_module_wrapper.et_pb_button_6_wrapper.et_pb_button_alignment_center.et_pb_module {
    margin-top: 256px !important;
}
.et_pb_button_module_wrapper.et_pb_button_7_wrapper.et_pb_button_alignment_center.et_pb_module {
    margin-top: 167px !important;
}
.et_pb_button_module_wrapper.et_pb_button_4_wrapper.et_pb_button_alignment_center.et_pb_module {
    margin-top: 10px !important;
}

/* Desktop */
.et_pb_module.et_pb_text.et_pb_text_24.et_pb_text_align_left.et_pb_bg_layout_light {
    margin-top: -42px !important;
}

/* Mobile */
@media only screen and (max-width: 767px) {
  .et_pb_module.et_pb_text.et_pb_text_24.et_pb_text_align_left.et_pb_bg_layout_light {
      margin-top: -28px !important;
  }
}

/* * Desktop wider screens: add gentle breathing room */ 
@media (min-width: 1280px) {
  #toggle-section .et_pb_row,
  .et_pb_row_3,
  .et_pb_row_4 {
    padding-left: 1px !important;
    padding-right: 1px !important;
  }
}

/* =========================================================
   ANIMATION
========================================================= */
@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(30px); }
  to { opacity: 1; transform: translateY(0); }
} 
/* MEMBERPRESS */
/* ---------------------------------------------- */
/* MEMBERPRESS CLEAN FORM FIELDS (ALL INPUTS)     */
/* ---------------------------------------------- */

.mepr-form-input,
.mepr-select-field {
    background-color: #fff !important;
    border: 1px solid #d3d6dd !important;
    border-radius: 8px !important;
    padding: 12px 14px !important;
    font-size: 16px !important;
    width: 100% !important;
    height: 52px !important;
    line-height: 1.3 !important;
    color: #333 !important;
    box-shadow: none !important;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    transition: all 0.2s ease;
}

/* ---------------------------------------------- */
/* CUSTOM DROPDOWN ARROW (Country + State)        */
/* ---------------------------------------------- */

.mepr-select-field {
    background-image: url("data:image/svg+xml;utf8,");
    background-repeat: no-repeat;
    background-position: right 14px center;
    background-size: 16px;
}

/* ---------------------------------------------- */
/* REMOVE DEFAULT SPACING FIX                     */
/* ---------------------------------------------- */

.mp-form-row {
    margin-bottom: 18px !important;
}

/* Label styling */
.mp-form-label label {
    font-weight: 600 !important;
    margin-bottom: 6px !important;
    display: block !important;
}

/* Error message spacing */
.cc-error {
    margin-top: 4px !important;
}

/* Fix inside spacing for all custom fields */
.mepr_custom_field select,
.mepr_custom_field input {
    margin-top: 6px !important;
}

/* Force consistent password field height */
.mepr-password,
.mepr-password-confirm {
    height: 52px !important;
}





/* ---------------------------------------------- */
/* OPTIONAL: Smooth focus improvement             */
/* ---------------------------------------------- */

.mepr-form-input:focus,
.mepr-select-field:focus {
    border-color: #4c6fff !important;
    box-shadow: 0 0 0 3px rgba(76,111,255,0.25) !important;
    outline: none !important;
}