/*
 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
------------------------------------------------------- */

/* ==========================
   Headings (global defaults)
   ========================== */
h2, h3, h4, h5, h6 {
  font-family: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI",
               Roboto, "Helvetica Neue", Arial, sans-serif;
  line-height: 1;
  margin: 0 0 0.5em;
  font-weight: 600;
}

h2 { font-size: 2.5rem;   color: #273747; }   /* 40px */
h3 { font-size: 1.875rem; color: #273747; }   /* 30px */
h4 { font-size: 1.25rem;  color: #273747; }   /* 20px */
h5 { font-size: 1rem;     color: #273747; }   /* 16px */

/* Product Listing pages (scoped H6 override) */
.woocommerce ul.products li.product h6 {
  font-size: 1.125rem;  /* 18px */
  font-weight: 700;
  color: #3ddbce;
}

/* Sidebar widget spacing (category widget has no heading) */
.et_pb_widget { margin-bottom: 3%; }

/* ==========================
   WooCommerce cart table
   (hide price & subtotal cols)
   ========================== */
.woocommerce table.cart th.product-price,
.woocommerce table.cart td.product-price,
.woocommerce table.cart th.product-subtotal,
.woocommerce table.cart td.product-subtotal {
  display: none !important;
}

/* Fallback by column order (if template differs) */
.woocommerce table.cart td:nth-of-type(4),
.woocommerce table.cart th:nth-of-type(4),
.woocommerce table.cart td:nth-of-type(5),
.woocommerce table.cart th:nth-of-type(5) {
  display: none;
}

/* ==========================
   Divi Tabs – iconised headers
   ========================== */
.custom-tab-icons .et_pb_tabs_controls {
  display: flex;
  gap: 22px;
  background-color: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Remove default tab dividers & center labels */
.custom-tab-icons .et_pb_tabs_controls li {
  border: 0 !important;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}

/* Active tab underline (single source of truth) */
.custom-tab-icons .et_pb_tabs_controls li.et_pb_tab_active {
  border-bottom: 3px solid #53f4ca;
}

/* Icons above tab text */
.custom-tab-icons .et_pb_tabs_controls li::before {
  content: "";
  display: block;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: 50px;
  height: 50px;
  margin-bottom: 10px;
}

/* Per-tab icon mapping */
.custom-tab-icons .et_pb_tabs_controls li:nth-child(1)::before  { background-image: url('/wp-content/uploads/2023/11/graphics-03.png'); }
.custom-tab-icons .et_pb_tabs_controls li:nth-child(2)::before  { background-image: url('/wp-content/uploads/2023/11/graphics-02.png'); }
.custom-tab-icons .et_pb_tabs_controls li:nth-child(3)::before  { background-image: url('/wp-content/uploads/2023/11/graphics-01.png'); }
.custom-tab-icons .et_pb_tabs_controls li:nth-child(4)::before  { background-image: url('/wp-content/uploads/2023/11/graphics-05.png'); }
.custom-tab-icons .et_pb_tabs_controls li:nth-child(5)::before  { background-image: url('/wp-content/uploads/2024/02/vide_intercom.png'); }
.custom-tab-icons .et_pb_tabs_controls li:nth-child(6)::before  { background-image: url('/wp-content/uploads/2024/02/HPU_icon.png'); }
.custom-tab-icons .et_pb_tabs_controls li:nth-child(7)::before  { background-image: url('/wp-content/uploads/2023/11/graphics-04.png'); }
.custom-tab-icons .et_pb_tabs_controls li:nth-child(8)::before  { background-image: url('/wp-content/uploads/2023/11/graphics-06.png'); }
.custom-tab-icons .et_pb_tabs_controls li:nth-child(9)::before  { background-image: url('/wp-content/uploads/2023/11/graphics-08.png'); }
.custom-tab-icons .et_pb_tabs_controls li:nth-child(10)::before { background-image: url('/wp-content/uploads/2023/11/graphics-07-1.png'); }

/* Strip borders/backgrounds from tab wrappers */
.et_pb_tabs_controls,
.et_pb_tabs,
.et_pb_all_tabs,
.et_pb_tab,
.et_pb_tabs_controls::after,
.et_pb_tabs_controls::before {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* ==========================
   Gravity Forms – Optimised
   ========================== */

/* Top padding for the main error block */
.validation_error_wrapper { padding-top: 80px; }

/* Confirmation messages */
.gform_confirmation_wrapper { text-align: center; }
.gform_confirmation_wrapper .gform_confirmation_message.gform_confirmation_message_error {
  border-top-color: #b81c23 !important;
}

/* Section break spacing & title style */
.gform_wrapper .gsection { margin-top: 3em; }
.gform_wrapper .gsection .gsection_title { font-size: 1em; color: #000; }

/* Required asterisk & footnotes */
.gform_wrapper .gfield_label .gfield_required { color: #000; }
.gform_wrapper .gfield.custom_footnote .gfield_description,
.gform_wrapper .gfield.gfield_description.custom_footnote { color: #F16F72; }

/* Country select sizing */
.gform_wrapper .ginput_complex select { height: 2.5em; margin-bottom: 0; padding: 5px 4px; }

/* Product table header weight */
.gform_wrapper .gfield_list thead th { font-weight: 400; }

/* Checkbox/Radio spacing fixes */
.gform_wrapper ul.gfield_checkbox,
.gform_wrapper ul.gfield_radio { margin-top: 0; }
.gform_wrapper .ginput_container_checkbox,
.gform_wrapper .ginput_container_radio { margin-top: 0; }

/* Descriptions */
.gform_wrapper .gfield .gfield_description { padding-top: 4px; }

/* Section divider removal utility */
.gform_wrapper .gsection.remove_hr { border-bottom: 0; padding: 0; }
.hide_section { display: none; }

/* Redelivery block */
.redelivery_fix { font-size: 1em; }
.redelivery_fix #input_1_50_copy_values_option_container {
  margin: 6px 0; padding: 0; display: flex; align-items: flex-end;
}
.gform_wrapper .redelivery_fix input[type=checkbox]+label { font-size: 0.875em; }
.gform_wrapper .redelivery_fix input[type=checkbox]:checked+label { font-weight: 700; }

/* Hidden label inputs spacing */
.gform_wrapper li.hidden_label input { margin-top: 0; }

/* Table list bottom padding */
.gform_wrapper table.gfield_list tr:last-child td { padding-bottom: 0; }

/* Comment textarea width on desktop */
.gform_wrapper .gfield.additional_comment_message textarea { width: 50%; }
@media (max-width: 767px) {
  .gform_wrapper .gfield.additional_comment_message textarea { width: 100%; }
}

/* Hide Amex card icon */
.gform_wrapper .gform_card_icon.gform_card_icon_amex { display: none; }

/* Merchant details block */
.gform_wrapper .merchant_details { margin-bottom: 2.1em !important; }
.gform_wrapper .merchant_details h2.merchant_title {
  font-size: 1em; font-weight: 700; color: #000; margin-bottom: 1em;
}
.gform_wrapper .merchant_details .column_l { float: left; width: 24%; }
.gform_wrapper .merchant_details .column_r { float: left; width: 76%; }
.gform_wrapper .merchant_details p { margin-bottom: 0.5em; }
.gform_wrapper .merchant_details .row:after { content: ""; display: table; clear: both; }
@media (max-width: 767px) {
  .gform_wrapper .merchant_details .column_l,
  .gform_wrapper .merchant_details .column_r { width: 50%; }
}

/* Radios & Checkboxes – modern native styling */
.gform_wrapper input[type="radio"],
.gform_wrapper input[type="checkbox"] {
  accent-color: #5BFEC8;
  margin-top: 0; margin-bottom: 0;
}

/* Inline on wide screens, stack on small */
.gform_wrapper .ginput_container ul li { display: inline; }
.gform_wrapper .ginput_container ul li:first-child { padding-right: 2em; }

@media (max-width: 641px) {
  .gform_wrapper .gfield_checkbox li,
  .gform_wrapper .gfield_radio li { margin-bottom: 8px; }
  .gform_wrapper .ginput_container ul li { display: block; }
}

/* Form #10 specific colors (from your previous snippet) */
#gform_wrapper_10 .gsection .gsection_title { color: #5BFEC8; }
#gform_wrapper_10 .gfield .gfield_description { color: #999; }
#gform_wrapper_10 .gform_footer .gform_button { background: #FF6146; }

/* If using dark backgrounds behind forms, you can optionally scope:
.form-on-dark .gfield_label,
.form-on-dark .top_label .gsection_description,
.form-on-dark .gfield_checkbox label,
.form-on-dark .gfield_radio label { color: #fff; }
.form-on-dark .gfield_label .gfield_required { color: #eee; }
*/

/* Form #20 Pay Invoice Change colour of Price text & value*/
#gform_wrapper_20 .gform_body .gform_fields .gfield#field_20_4 div label {
color: #273747
}
