/*
Theme Name: Divi - GoEden Fresh
Template: Divi
Author: GoEdenPH
Version: 0.11.20
*/

/* ------------------------------------------------------------------------------------ */

h1 {
  font-size: 3rem;
  /* font-weight: 700; */
}
h2 {
  font-size: 2.75rem;
  /* font-weight: 700; */
}
h3 {
  font-size: 2.5rem;
  /* font-weight: 700; */
}
h4 {
  font-size: 2.25rem;
  /* font-weight: 700; */
}
h5 {
  font-size: 2rem;
  /* font-weight: 700; */
}
h6 {
  font-size: 1.75rem;
  /* font-weight: 700; */
}

a {
  /* color: #179901; */
  color: #6a9272;
}
p:empty {
  padding-bottom: 0;
}
input[type=text]:focus,
input[type=email]:focus,
input[type=tel]:focus,
/* input[type=number]:focus, */
textarea:focus {
  /* border-color:#179901; */
  border-color: #6a9272;
}

.divi-row-login > .et_pb_column_0_tb_body {
  padding: 2rem;
  /* background-color: #173701;
  color: #fff;
  background-image: url(img/login-bg.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover; */
}
.divi-row-login .et_pb_column_0_tb_body .et_pb_module_heading {
  color: #fff;
}
.divi-row-login .et_pb_column_0_tb_body > div {
  margin: 0;
}
@media only screen and (min-width: 981px) {
  .page-height {
    min-height: calc( 100vh - 60px );
  }
  body.admin-bar .page-height {
    min-height: calc( 100vh - 60px - 32px );
  }
  /* .divi-row-main-content {
    max-height: calc( 100vh - 32px - 70px );
    overflow-y: auto;
  } */
  .divi-row-login > .et_pb_column_0_tb_body {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100vh;
    overflow-y: auto;
  }
  body.admin-bar .divi-row-login > .et_pb_column_0_tb_body {
    height: calc( 100vh - 32px );
  }
}

.display-block {
  display: block;
}
.display-inline-block {
  display: inline-block;
}
.link-flex {
  display: flex;
  align-items: center;
  gap: .5rem;
}

.text-link {
  border: 1px solid #1e3d34;
  padding: 0 .5rem;
  border-radius: .5rem;
  color: #fff;
  background-color: #1e3d34;
  transition: background-color .2s ease, border .2s ease;
}
.text-link:hover {
  border: 1px solid #6a9272;
  background-color: #6a9272;
}
input.text-link {
  padding: .4rem 1rem;
  font-size: 1rem;
}
input.text-link:hover {
  background-color: #fff;
  color: #1e3d34;
  border: 1px solid #1e3d34;
}

.custom-header-banner {
  background-color: #1e3d34;
}

/* ------------------------------------------------------------------------------------ */

/* modifications for plugin: User Registration & Membership */

.user-registration {
  width: 100%;
}
.user-registration p {
  padding-bottom: 0;
}
body.user-registration-page .page-registration-right .user-registration:not(.user-registration-MyAccount),
body.user-registration-page .page-registration-right #user-registration:not(.user-registration-MyAccount) {
  margin: 0 auto;
  box-shadow: none;
}
body.user-registration-page .user-registration.ur-frontend-form {
  /* padding: 2rem 1.375rem; */
  padding: 2rem;
}

/* position dropdown - other */
.ur-frontend-form .ur-form-row .ur-form-grid .ur-field-item.goedenfresh-position {
  margin-bottom: 0;
}
.goedenfresh-position-other {
  display: none;
}
.goedenfresh-position-other.show {
  display: block;
}

/* remember me */
.user-registration-form__label-for-checkbox > span {
  vertical-align: middle;
  /* color: #466731; */
  color: #6a9272;
}

/* input borders */
body.user-registration-page .page-registration-right .user-registration:not(.user-registration-MyAccount) .ur-form-row .ur-form-grid .ur-field-item .input-wrapper input {
  border: 1px solid #ccc;
}
.ur-frontend-form .ur-form-row .ur-form-grid select,
body.user-registration-page .page-registration-right #user-registration:not(.user-registration-MyAccount) .ur-frontend-form .user-registration-form .ur-form-row .ur-form-grid .user-registration-form-row .input-wrapper input,
body.user-registration-page .page-registration-right .user-registration:not(.user-registration-MyAccount) .ur-frontend-form .user-registration-form .ur-form-row .ur-form-grid .user-registration-form-row .input-wrapper input {
  border: 1px solid #ccc;
}

/* input borders: focus */
body.user-registration-page .page-registration-right .user-registration:not(.user-registration-MyAccount) .ur-form-row .ur-form-grid .ur-field-item .input-wrapper input:focus {
  /* border-color: #179901; */
  border-color: #6a9272;
}
.ur-frontend-form .ur-form-row .ur-form-grid select:focus,
body.user-registration-page .page-registration-right #user-registration:not(.user-registration-MyAccount) .ur-frontend-form .user-registration-form .ur-form-row .ur-form-grid .user-registration-form-row .input-wrapper input:focus,
body.user-registration-page .page-registration-right .user-registration:not(.user-registration-MyAccount) .ur-frontend-form .user-registration-form .ur-form-row .ur-form-grid .user-registration-form-row .input-wrapper input:focus {
  /* border-color: #179901; */
  border-color: #6a9272;
}

/* buttons */
body.user-registration-page .page-registration-right #user-registration:not(.user-registration-MyAccount) .ur-frontend-form .user-registration-form .ur-form-row .ur-form-grid > div .user-registration-Button,
body.user-registration-page .page-registration-right .user-registration:not(.user-registration-MyAccount) .ur-frontend-form .user-registration-form .ur-form-row .ur-form-grid > div .user-registration-Button {
  /* background: #466731; */
  background: #1e3d34;
  /* border-color: #466731; */
  border-color: #1e3d34;
}
form.register .ur-submit-button {
  /* background: #466731; */
  background: #1e3d34;
}

/* buttons: hover */
body.user-registration-page .page-registration-right #user-registration:not(.user-registration-MyAccount) .ur-frontend-form .user-registration-form .ur-form-row .ur-form-grid > div .user-registration-Button:hover,
body.user-registration-page .page-registration-right .user-registration:not(.user-registration-MyAccount) .ur-frontend-form .user-registration-form .ur-form-row .ur-form-grid > div .user-registration-Button:hover {
  /* background: #173701; */
  background: #6a9272;
  /* border-color: #173701; */
  border-color: #6a9272;
}
form.register .ur-submit-button:hover {
  /* background: #173701; */
  background: #6a9272;
}

/* links */
body.user-registration-page .page-registration-right #user-registration:not(.user-registration-MyAccount) .ur-frontend-form .user-registration-form .ur-form-row .ur-form-grid .user-registration-before-login-btn .user-registration-LostPassword a,
body.user-registration-page .page-registration-right .user-registration:not(.user-registration-MyAccount) .ur-frontend-form .user-registration-form .ur-form-row .ur-form-grid .user-registration-before-login-btn .user-registration-LostPassword a {
  /* color: #466731; */
  color: #6a9272;
}
body.user-registration-page .page-registration-right #user-registration:not(.user-registration-MyAccount) .ur-frontend-form .user-registration-form .ur-form-row .ur-form-grid .user-registration-register a,
body.user-registration-page .page-registration-right .user-registration:not(.user-registration-MyAccount) .ur-frontend-form .user-registration-form .ur-form-row .ur-form-grid .user-registration-register a {
  /* color: #466731; */
  color: #6a9272;
}

/* font size */
body.user-registration-page .page-registration-right .user-registration:not(.user-registration-MyAccount) .ur-form-row .ur-form-grid .ur-field-item label:not(.user-registration-error) {
  font-size: 1.125rem;
}
body.user-registration-page .page-registration-right #user-registration:not(.user-registration-MyAccount) .ur-frontend-form .user-registration-form .ur-form-row .ur-form-grid .user-registration-form-row label,
body.user-registration-page .page-registration-right .user-registration:not(.user-registration-MyAccount) .ur-frontend-form .user-registration-form .ur-form-row .ur-form-grid .user-registration-form-row label {
  font-size: 1.125rem;
}

/* ------------------------------------------------------------------------------------ */

/* login / registration / lost password */

body.user-registration-page.wp-child-theme-divi-goedenfresh .user-registration:not(.user-registration-MyAccount) .ur-button-container .ur-submit-button {
  background-color: #1e3d34;
  border: 1px solid #1e3d34;
}
body.user-registration-page.wp-child-theme-divi-goedenfresh .user-registration:not(.user-registration-MyAccount) .ur-button-container .ur-submit-button:hover {
  background-color: #6a9272;
  border: 1px solid #6a9272;
}

body.wp-child-theme-divi-goedenfresh .ur-frontend-form.login .ur-reset-password-btn {
  background-color: #1e3d34;
  border: 1px solid #1e3d34;
}
body.wp-child-theme-divi-goedenfresh .ur-frontend-form.login .ur-reset-password-btn:hover {
  background-color: #6a9272;
  border: 1px solid #6a9272;
}

/* ------------------------------------------------------------------------------------ */

/* welcome page */

/* h4.welcome-to-your-page {
  color: #21321b;
} */
h4.welcome-to-your-page span {
  color: #6a9272;
}
h4.we-are-goeden-fresh {
  color: #1e3d34;
}

.welcome-page-button {
  width: 365px;
  text-align: center;
  margin: 0 auto;
  /* line-height: 1.25 !important; */
}
.et_pb_button_module_wrapper > a.welcome-page-button {
  display: block;
}

/* ------------------------------------------------------------------------------------ */

/* product category pages */

.woocommerce .products ul li.product ul,
.woocommerce ul.products li.product ul {
  padding-left: 1.5em;
}
.woocommerce .products ul li.product ul li,
.woocommerce ul.products li.product ul li {
  list-style: disc;
  text-align: left;
  font-size: .9rem;
}

/* product grid images */
.woocommerce ul.products li.product a img,
.woocommerce-page ul.products li.product a img {
  margin-left: auto !important;
  margin-right: auto !important;
  width: 260.4px;
  height: 260.4px;
  object-fit: cover;
}

/* short description */
/* .woocommerce ul.products li.product .short-description-wrap {
  cursor: pointer;
} */
.woocommerce ul.products li.product .short-description-wrap ul {
  margin-bottom: 0;
}
.woocommerce ul.products li.product .short-description {
  /* height: 4.2rem; */
  min-height: 4.9rem;
  overflow: hidden;
  position: relative;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 3; /* number of lines to show */
          line-clamp: 3;
  -webkit-box-orient: vertical;
}
.woocommerce ul.products li.product .short-description.expand {
  /* height: auto; */
  display: block;
  -webkit-line-clamp: unset; /* number of lines to show */
          line-clamp: unset;
  -webkit-box-orient: unset;
}
.woocommerce ul.products li.product .short-description strong {
  display: unset;
}
/* .woocommerce ul.products li.product .short-description-expand {
  display: block;
  color: #173701;
}
.woocommerce ul.products li.product .short-description-wrap:hover .short-description-expand {
  color: #1e3d34;
} */

/* View cart link after adding to cart */
body.tax-product_cat.woocommerce a.added_to_cart.wc-forward {
  display: block;
}

/* side cart */
a.xoo-wsc-ft-btn.xoo-wsc-ft-btn-checkout,
.xoo-wsc-container .xoo-wsc-btn.xoo-wsc-ft-btn-checkout {
  display: none;
}

/* ------------------------------------------------------------------------------------ */

/* navigation */

.bottom-menu {
  display: flex;
  align-items: center;
  gap: .5rem;
}
.bottom-menu a {
  display: block;
}
.bottom-menu a img {
  display: block;
}

/* ------------------------------------------------------------------------------------ */

/* finalize cart page */

.section-finalize-cart input[type=text],
.section-finalize-cart input[type=number] {
  padding: .8rem;
  border-radius: .5rem;
  text-align: center;
  font-size: 1rem;
  width: 120px;
}
.section-finalize-cart input[type=number] {
  border: 1px solid #bbb;
  caret-color: transparent;
  cursor: default;
}
/* .section-finalize-cart input[type=number]:focus {
  border-color: #1e3d34;
} */
.section-finalize-cart input[name="crop_variety[]"] {
  width: 360px;
}
.section-finalize-cart input[type=text]:focus {
  border-color: #6a9272;
}
.section-finalize-cart select:focus {
  border-color: #6a9272;
}
.section-finalize-cart input[name="delivery_address"],
.section-finalize-cart input[name="order_notes"] {
  width: 100%;
  text-align: left;
}
.icon-add {
  width: 1.5rem;
}
.section-finalize-cart h6 {
  background-color: #1e3d34;
  border-radius: 2rem;
  padding: .5rem 1.25rem;
  display: inline-block;
  margin-bottom: 1rem;
  font-weight: 600;
  font-size: 24px;
  color: #fff;
}

/* place order button */
/* .custom-place-order img {
  margin-top: 1rem;
} */

/* delivery time */
.custom-delivery-time {
  width: 120px;
  padding: .8rem;
  border-radius: .5rem;
  text-align: center;
  background-color: #fff;
  font-size: 1rem;
}

/* delivery day */
.preferred-delivery-day {
  padding: 1rem;
  background-color: #eee;
  border-radius: 1rem;
  margin-bottom: 1rem;
}
.custom-delivery-day {
  display: flex;
  gap: .5rem;
  flex-wrap: wrap;
}
.custom-delivery-day-item {
  width: 120px;
  padding: .5rem;
  border-radius: .5rem;
  text-align: center;
  border: 1px solid #bbb;
  background-color: #fff;
}
.custom-delivery-day-item:hover {
  cursor: pointer;
  border: 1px solid #6a9272;
}
.custom-delivery-day-item.active {
  color: #fff;
  background-color: #6a9272;
  border: 1px solid #6a9272;
}

/* select2 */
/* not in use? */
/* table.custom-checkout-table {
  border-collapse: separate;
  border-spacing: .5rem;
}
.custom-checkout-table .select2-container {
  height: 50px;
  width: 300px !important;
}
.custom-checkout-table .select2-container .select2-selection {
  border-radius: .5rem;
  height: 50px;
}
.custom-checkout-table .select2-container .select2-selection--single .select2-selection__rendered {
  padding: .8rem;
  padding-right: 1.8rem;
} */

/* product dropdown */
.custom-checkout-table tr.item-row td {
  position: relative;
}
/* .custom-checkout-table-input-name {
  width: 100%;
  position: relative;
} */
input[name="crop_variety[]"] {
  position: relative;
}
/* .custom-checkout-table input[type="text"]:focus {
  border-color: #106814;
} */
.custom-checkout-table-delete {
  margin-left: 1rem;
}
.custom-checkout-table .product-suggestions {
  position: absolute;
  left: 0;
  /* right: 0; */
  bottom: 0;
  transform: translateY(100%);
  z-index: 99;
  max-height: 55vh;
  overflow-y: auto;
  box-shadow: 0 0 16px 8px #0006;
  width: 100%;
  min-width: 320px;
  max-width: 80vw;
  font-size: .9rem;
  line-height: 1.5em;
}
/* @media only screen and (min-width: 981px) {
  .custom-checkout-table .product-suggestions {
    width: 100%;
  }
} */
.custom-checkout-table .product-suggestion {
  border: 1px solid #ccc;
  border-top: none;
  cursor: pointer;
  padding: 5px;
  background-color: #fff;
  display: flex;
  align-items: center;
}
.custom-checkout-table .product-suggestion-right {
  flex: 1;
}
.custom-checkout-table .no-product-suggestion {
  padding: 8px;
  background-color: #fff;
}
.custom-checkout-table .product-suggestion:hover {
  background-color: #eee;
}
.product-suggestions-overlay {
  position: fixed;
  z-index: 97;
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  overflow: auto;
}
.product-suggestion-thumbnail {
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 48px;
  height: 48px;
  margin-right: 5px;
}
.custom-checkout-table-input-qty {
  width: 60px;
}

/* timepicker */
.ui-timepicker-container {
  z-index: 1000 !important;
  font-size: .9rem;
  line-height: 1.5em;
}

/* additional delivery days */
.add-additional-preferred-day-wrap {
  margin-top: 1rem;
}
.additional-delivery-day {
  display: flex;
  gap: .5rem;
  align-items: center;
  margin-bottom: .5rem;
}
.additional-delivery-day:last-child {
  margin-bottom: 0;
}
.additional-delivery-day-day {
  padding: .8rem;
  border-radius: .5rem;
  text-align: center;
  font-size: 1rem;
  width: 120px;
}
.additional-delivery-day-day option {
  text-align: center;
}

/* datepicker */
/* .custom-cart-sidebar-options label {
  display: block;
} */
.ui-datepicker {
  width: 100%;
}
.custom-cart-sidebar > div:not(:first-child) {
  margin-top: 1rem;
}
.custom-cart-sidebar-datepicker .ui-state-active,
.custom-cart-sidebar-datepicker .ui-widget-content .ui-state-active {
  background-color: #6a9272;
  background-image: none;
  color: #fff;
}

/* delivery address */
.delivery-address-flex {
  display: flex;
  gap: 1rem;
  margin-bottom: 1.25rem;
}
.delivery-address-flex-item {
  flex: 1;
}
.delivery-address .select2-container .select2-selection {
  border: 1px solid #bbb;
}
.delivery-address .select2-container--open .select2-selection {
  border: 1px solid #1e3d34;
}
.select2-container .select2-dropdown {
  border: 1px solid #1e3d34;
}
.delivery-address .select2-selection__clear {
  display: none;
}

/* ------------------------------------------------------------------------------------ */

/* product spotlight */

.product-spotlight a.et_pb_button {
  margin-bottom: 1rem;
}

/* ------------------------------------------------------------------------------------ */

/* request produce */

/* .request-produce table {
  border-collapse: separate;
  border-spacing: .5rem;
} */
.request-produce input[type=text] {
  padding: 1rem;
  border-radius: .5rem;
  max-width: 100%;
  width: 240px;
}
.request-produce input[type=text].short {
  width: 120px;
}
.request-produce input[type=text].long {
  width: 300px;
}

/* ------------------------------------------------------------------------------------ */

/* my account page */

.woocommerce .woocommerce-MyAccount-content a.button {
  font-size: 1rem;
  margin-right: .25rem;
}
.woocommerce .woocommerce-MyAccount-content a.button:last-child {
  margin-right: 0;
}
.woocommerce .woocommerce-MyAccount-content .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions a {
  padding-top: .1rem;
  padding-bottom: .1rem;
}
.woocommerce .woocommerce-MyAccount-content a.button.woocommerce-button::after {
  font-size: 1.6rem;
}

/* ------------------------------------------------------------------------------------ */

/* cf7 contact form 7 */

input[type="text"].wpcf7-text,
input[type="email"].wpcf7-email,
input[type="tel"].wpcf7-tel,
textarea.wpcf7-textarea {
  width: 100%;
  padding: 10px;
  font-size: .8rem;
}
.wpcf7-form-row {
  display: flex;
  gap: 1rem;
  margin-bottom: 1rem;
  flex-direction: column;
}
@media only screen and (min-width: 981px) {
  .wpcf7-form-row {
    flex-direction: row;
  }
}
.wpcf7-form-col {
  flex: 1;
}

/* ------------------------------------------------------------------------------------ */

/* thank you page */
.thank-you-blurbs {
  display: flex;
  align-items: stretch;
}
.thank-you-blurbs > div > div {
  height: 100%;
  display: flex;
  align-items: center;
}

/* ------------------------------------------------------------------------------------ */

/* Ensure table stretches to fit the container */
.custom-checkout-table {
  width: 100%;
  table-layout: fixed; /* This forces the columns to resize evenly */
  border-collapse: collapse;
}

/* Allow table cells to scale */
.custom-checkout-table td, .custom-checkout-table th {
  word-wrap: break-word;
  text-overflow: ellipsis;
  /* overflow: hidden; */ /* need visible overflow for custom dropdown */
  padding: 10px;
  max-width: 100%; /* Prevent cells from overflowing */
}

/* Hide long text or overflow content */
.custom-checkout-table input {
  max-width: 100%;
  box-sizing: border-box;
}

/* Add a horizontal scroll for mobile devices */
@media (max-width: 768px) {
  .custom-checkout-table {
    display: block;
    overflow-x: auto;
    white-space: nowrap; /* Prevent wrapping of content */
  }

  .custom-checkout-table td, .custom-checkout-table th {
    display: inline-block;
    width: auto;
    padding: 5px; /* Adjust padding on smaller screens */
  }

  .custom-checkout-table input {
    width: 100%; /* Make inputs responsive */
  }
}
