/*
 Theme Name:   DiviChild The Original Cupkeeper
 Description:  Cupkeeper Child Theme
 Author:       Dean
 Template:     Divi
 Version:      1.1
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Text Domain:  ck-child
*/

/* disable captcha badge */
body.et_pb_recaptcha_enabled .grecaptcha-badge { visibility: hidden; }


/* Checkout builder surface pass.
 *
 * Divi owns the checkout layout. These classes provide the shared Cupkeeper
 * surface and form-control language for WooCommerce modules inside that layout.
 */
body.woocommerce-checkout {
  --ck-checkout-ink: var(--ck-shop-ink, #173229);
  --ck-checkout-muted: var(--ck-shop-muted, #60746d);
  --ck-checkout-green: var(--ck-shop-green, var(--teal3, #026969));
  --ck-checkout-line: var(--ck-shop-line, rgba(23, 50, 41, .12));
  --ck-checkout-field-bg: var(--ck-commerce-field-background, rgba(245, 243, 236, .58));
  --ck-checkout-field-shadow: var(--ck-commerce-field-shadow, inset 0 2px 5px rgba(23, 50, 41, .09), inset 0 -1px 0 rgba(255, 255, 255, .72));
  --ck-checkout-field-radius: var(--ck-commerce-field-radius, 15px);
}

body.woocommerce-checkout .ck-commerce-login--checkout {
  margin: 0 0 22px;
}

/* Divi's Cart Notice module hard-codes its own login reminder. Keep the module
 * for checkout errors and notices, but leave login to the shared disclosure. */
body.woocommerce-checkout .et_pb_wc_cart_notice .woocommerce-form-login-toggle {
  display: none;
}

body.woocommerce-checkout .ck-shop-surface,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column {
  padding: clamp(22px, 3vw, 38px);
  border: 0;
  border-radius: var(--ck-commerce-surface-radius-responsive, 35px);
  background: var(--ck-commerce-surface-background, rgba(255, 255, 255, .94));
  box-shadow: var(--ck-commerce-surface-shadow, 0 22px 55px rgba(23, 50, 41, .12));
  color: var(--ck-checkout-ink);
}

body.woocommerce-checkout .ck-checkout-fields + .et_pb_column {
  align-self: flex-start;
}

@media (min-width: 981px) {
  body.woocommerce-checkout .ck-checkout-order-panel,
  body.woocommerce-checkout .ck-checkout-fields + .et_pb_column {
    position: sticky;
    top: 35px;
  }
}

body.woocommerce-checkout .ck-checkout-fields .ck-shop-surface {
  padding: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .et_pb_module,
body.woocommerce-checkout .ck-shop-surface .et_pb_module {
  margin-bottom: 22px;
}

body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .et_pb_module:last-child,
body.woocommerce-checkout .ck-shop-surface .et_pb_module:last-child {
  margin-bottom: 0;
}

body.woocommerce-checkout .ck-checkout-fields h3,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column h3,
body.woocommerce-checkout .ck-checkout-order-panel h3 {
  margin: 0 0 18px;
  color: var(--ck-checkout-ink);
  font-size: clamp(22px, 2.2vw, 28px);
  line-height: 1.1;
}

body.woocommerce-checkout .ck-checkout-order-heading {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 15px;
}

body.woocommerce-checkout .ck-checkout-edit-order {
  flex: 0 0 auto;
  color: var(--ck-checkout-green);
  font-size: 13px;
  font-weight: 800;
  line-height: 1.2;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

body.woocommerce-checkout .ck-checkout-edit-order:hover,
body.woocommerce-checkout .ck-checkout-edit-order:focus-visible {
  color: var(--ck-checkout-ink);
}

body.woocommerce-checkout .ck-checkout-fields .form-row {
  margin-bottom: 16px;
}

body.woocommerce-checkout .ck-checkout-fields label,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column label {
  color: var(--ck-checkout-ink);
  font-size: 13px;
  font-weight: 800;
}

body.woocommerce-checkout .ck-checkout-fields input.input-text,
body.woocommerce-checkout .ck-checkout-fields textarea,
body.woocommerce-checkout .ck-checkout-fields select,
body.woocommerce-checkout .ck-checkout-fields .select2-container--default .select2-selection--single {
  min-height: 50px;
  border: 0 !important;
  border-radius: var(--ck-checkout-field-radius);
  background: var(--ck-checkout-field-bg) !important;
  box-shadow: var(--ck-checkout-field-shadow);
  color: var(--ck-checkout-ink);
  font-size: 15px;
  transition: box-shadow .16s ease;
}

body.woocommerce-checkout .ck-checkout-fields input.input-text,
body.woocommerce-checkout .ck-checkout-fields textarea,
body.woocommerce-checkout .ck-checkout-fields select {
  padding: 14px 16px;
}

body.woocommerce-checkout .ck-checkout-fields textarea {
  min-height: 120px;
  border-radius: var(--ck-checkout-field-radius) !important;
  resize: vertical;
}

body.woocommerce-checkout .ck-checkout-fields label .required,
body.woocommerce-checkout .ck-checkout-fields label abbr.required {
  color: var(--ck-checkout-green) !important;
  text-decoration: none;
}

body.woocommerce-checkout .ck-checkout-fields #ship-to-different-address-checkbox {
  position: relative;
  width: 22px;
  height: 22px;
  margin: 0 9px 0 0;
  border: 0;
  border-radius: 999px;
  appearance: none;
  -webkit-appearance: none;
  background: var(--ck-checkout-field-bg);
  box-shadow: var(--ck-checkout-field-shadow);
  cursor: pointer;
  vertical-align: middle;
}

body.woocommerce-checkout .ck-checkout-fields #ship-to-different-address-checkbox::after {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 9px;
  height: 5px;
  border-bottom: 2px solid #fff;
  border-left: 2px solid #fff;
  content: "";
  opacity: 0;
  transform: translate(-50%, -62%) rotate(-45deg);
}

body.woocommerce-checkout .ck-checkout-fields #ship-to-different-address-checkbox:checked {
  background: var(--ck-checkout-green);
  box-shadow: inset 0 2px 5px rgba(23, 50, 41, .18), inset 0 -1px 0 rgba(255, 255, 255, .26);
}

body.woocommerce-checkout .ck-checkout-fields #ship-to-different-address-checkbox:checked::after {
  opacity: 1;
}

body.woocommerce-checkout .ck-checkout-fields #ship-to-different-address-checkbox:focus-visible {
  outline: 3px solid rgba(0, 120, 107, .16);
  outline-offset: 3px;
}

body.woocommerce-checkout .ck-checkout-fields .select2-container--default .select2-selection--single {
  display: flex;
  align-items: center;
  padding: 0 42px 0 16px;
}

body.woocommerce-checkout .ck-checkout-fields .select2-selection__rendered {
  padding: 0;
  color: var(--ck-checkout-ink) !important;
}

body.woocommerce-checkout .ck-checkout-fields input.input-text:focus,
body.woocommerce-checkout .ck-checkout-fields textarea:focus,
body.woocommerce-checkout .ck-checkout-fields select:focus,
body.woocommerce-checkout .ck-checkout-fields .select2-container--focus .select2-selection--single {
  outline: none;
  background: var(--ck-checkout-field-bg) !important;
  box-shadow: var(--ck-commerce-field-focus-shadow, inset 0 3px 8px rgba(23, 50, 41, .18), inset 0 -1px 0 rgba(255, 255, 255, .72));
}

body.woocommerce-checkout .ck-checkout-fields .woocommerce-invalid input.input-text,
body.woocommerce-checkout .ck-checkout-fields .woocommerce-invalid textarea,
body.woocommerce-checkout .ck-checkout-fields .woocommerce-invalid select,
body.woocommerce-checkout .ck-checkout-fields .woocommerce-invalid .select2-selection {
  box-shadow: 0 0 0 3px rgba(165, 58, 43, .12), var(--ck-checkout-field-shadow);
}

body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-checkout-review-order-table {
  display: grid;
  width: 100%;
  margin: 0;
  border: 0;
  border-collapse: separate;
  border-spacing: 0;
  background: transparent;
}

body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-checkout-review-order-table thead,
body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-checkout-review-order-table tbody,
body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-checkout-review-order-table tfoot,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-checkout-review-order-table thead,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-checkout-review-order-table tbody,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-checkout-review-order-table tfoot {
  width: 100%;
}

body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-checkout-review-order-table thead tr,
body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-checkout-review-order-table tbody tr,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-checkout-review-order-table thead tr,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-checkout-review-order-table tbody tr {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(80px, auto);
  width: 100%;
}

body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-checkout-review-order-table td {
  padding: 13px 0;
  border: 0;
  border-top: 1px solid rgba(23, 50, 41, .08);
  background: transparent;
  color: var(--ck-checkout-ink);
}

body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-checkout-review-order-table tr:first-child th,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-checkout-review-order-table tr:first-child td {
  border-top: 0;
}

body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-checkout-review-order-table thead,
body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-checkout-review-order-table thead tr,
body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-checkout-review-order-table thead th,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-checkout-review-order-table thead,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-checkout-review-order-table thead tr,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-checkout-review-order-table thead th {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-checkout-review-order-table thead th,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-checkout-review-order-table thead th {
  padding: 0 0 12px;
  color: var(--ck-checkout-muted);
  font-size: 12px;
  font-weight: 800;
}

body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-checkout-review-order-table th.product-total,
body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-checkout-review-order-table td.product-total,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-checkout-review-order-table th.product-total,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-checkout-review-order-table td.product-total {
  text-align: right;
}

body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-checkout-review-order-table tfoot,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-checkout-review-order-table tfoot {
  display: grid;
  gap: 10px;
  width: 100%;
  margin-top: 10px;
}

body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-checkout-review-order-table tfoot tr,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-checkout-review-order-table tfoot tr {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: baseline;
  gap: 15px;
  width: 100%;
  padding: 12px 0;
  border: 0;
  border-top: 1px solid rgba(23, 50, 41, .08);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-checkout-review-order-table tfoot th,
body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-checkout-review-order-table tfoot td,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-checkout-review-order-table tfoot th,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-checkout-review-order-table tfoot td {
  width: auto;
  padding: 0;
  border: 0;
  background: transparent;
}

body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-checkout-review-order-table tfoot td,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-checkout-review-order-table tfoot td {
  text-align: right;
}

body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-checkout-review-order-table .order-total th,
body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-checkout-review-order-table .order-total td,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-checkout-review-order-table .order-total th,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-checkout-review-order-table .order-total td {
  font-size: 18px;
  font-weight: 800;
}

body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals {
  grid-template-columns: minmax(0, 1fr);
  align-items: stretch;
  padding: 0;
  border-top: 0;
  background: transparent;
  box-shadow: none;
}

body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals > td,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals > td {
  width: 100%;
  text-align: left;
}

body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals > td::before,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals > td::before {
  content: none;
}

body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-checkout-review-order-table tfoot tr.cksr-customs-notice-row,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-checkout-review-order-table tfoot tr.cksr-customs-notice-row,
body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-checkout-review-order-table tfoot tr.cksr-mixed-cart-notice-row,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-checkout-review-order-table tfoot tr.cksr-mixed-cart-notice-row {
  grid-template-columns: minmax(0, 1fr);
  padding: 0;
  border-top: 0;
}

body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-checkout-review-order-table tr.cksr-customs-notice-row > td,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-checkout-review-order-table tr.cksr-customs-notice-row > td,
body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-checkout-review-order-table tr.cksr-mixed-cart-notice-row > td,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-checkout-review-order-table tr.cksr-mixed-cart-notice-row > td {
  width: 100%;
  text-align: left;
}

body.woocommerce-checkout .cksr-customs-notice {
	width: 100%;
	font-weight: 400;
}

body.woocommerce-checkout .cksr-mixed-cart-notice {
	width: 100%;
	font-weight: 700;
}

body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-shipping-methods,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-shipping-methods {
  display: grid;
  gap: 10px;
  width: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  list-style: none;
}

body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-shipping-methods li,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-shipping-methods li {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  width: 100%;
  margin: 0;
  padding: 12px 14px;
  border: 0;
  border-radius: var(--ck-checkout-field-radius);
  background: var(--ck-checkout-field-bg);
  box-shadow: var(--ck-checkout-field-shadow);
  cursor: pointer;
  transition: box-shadow .16s ease;
}

body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-shipping-methods li::before,
body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-shipping-methods li::after,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-shipping-methods li::before,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-shipping-methods li::after {
  display: none !important;
  content: none !important;
}

body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-shipping-methods input,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-shipping-methods input {
  margin: 0;
  accent-color: var(--ck-checkout-green);
}

body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-shipping-methods label,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-shipping-methods label,
body.woocommerce-checkout .ck-checkout-order-panel ul#shipping_method.woocommerce-shipping-methods label,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column ul#shipping_method.woocommerce-shipping-methods label {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  width: 100%;
  min-width: 0;
  padding: 0;
  color: var(--ck-checkout-ink);
  cursor: pointer;
}

body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-shipping-methods label .amount,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-shipping-methods label .amount {
  flex: 0 0 auto;
  margin-left: auto;
  text-align: right;
  white-space: nowrap;
}

body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-shipping-methods input[type="radio"] + label,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-shipping-methods input[type="radio"] + label {
  grid-column: 2;
}

body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-shipping-methods input[type="hidden"] + label,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-shipping-methods input[type="hidden"] + label {
  grid-column: 1 / -1;
}

body.woocommerce-checkout .ck-checkout-order-panel #payment ul.payment_methods,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column #payment ul.payment_methods {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  list-style: none;
}

body.woocommerce-checkout .ck-checkout-fields + .et_pb_column #payment ul.payment_methods li {
  position: relative;
  margin: 0;
  padding: 12px 14px;
  border: 0;
  border-radius: var(--ck-checkout-field-radius);
  background: var(--ck-checkout-field-bg);
  box-shadow: var(--ck-checkout-field-shadow);
  color: var(--ck-checkout-ink);
  cursor: pointer;
  transition: box-shadow .16s ease;
}

body.woocommerce-checkout .ck-checkout-fields + .et_pb_column #payment ul.payment_methods input {
  margin-right: 8px;
  accent-color: var(--ck-checkout-green);
}

body.woocommerce-checkout .ck-checkout-order-panel #payment ul.payment_methods label,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column #payment ul.payment_methods label {
  color: var(--ck-checkout-ink);
  cursor: pointer;
  font-weight: 800;
}

@media (hover: hover) {
  body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-shipping-methods li:hover,
  body.woocommerce-checkout .ck-checkout-order-panel .woocommerce-shipping-methods li:focus-within,
  body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-shipping-methods li:hover,
  body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .woocommerce-shipping-methods li:focus-within,
  body.woocommerce-checkout .ck-checkout-order-panel #payment ul.payment_methods li:hover,
  body.woocommerce-checkout .ck-checkout-order-panel #payment ul.payment_methods li:focus-within,
  body.woocommerce-checkout .ck-checkout-fields + .et_pb_column #payment ul.payment_methods li:hover,
  body.woocommerce-checkout .ck-checkout-fields + .et_pb_column #payment ul.payment_methods li:focus-within {
    box-shadow: inset 0 3px 8px rgba(23, 50, 41, .18), inset 0 -1px 0 rgba(255, 255, 255, .72);
  }
}

body.woocommerce-checkout .ck-checkout-order-panel .et_pb_wc_checkout_payment_info,
body.woocommerce-checkout .ck-checkout-order-panel #payment,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column .et_pb_wc_checkout_payment_info,
body.woocommerce-checkout .ck-checkout-fields + .et_pb_column #payment {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.woocommerce-checkout .ck-checkout-fields + .et_pb_column #payment div.payment_box {
  margin: 12px 0 0;
  padding: 12px 14px;
  border-radius: var(--ck-checkout-field-radius);
  background: rgba(255, 255, 255, .72);
  color: var(--ck-checkout-muted);
  font-size: 13px;
}

body.woocommerce-checkout .ck-checkout-fields + .et_pb_column #payment div.payment_box::before {
  display: none;
}

body.woocommerce-checkout .ck-checkout-fields + .et_pb_column #payment .place-order {
  padding: 0;
}

body.woocommerce-checkout .ck-checkout-fields + .et_pb_column #payment .woocommerce-privacy-policy-text {
  margin: 25px 0;
}

body.woocommerce-checkout #payment ul.payment_methods > li:has(> .woocommerce-info) {
  margin: 0;
  padding: 0 !important;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

body.woocommerce-checkout #payment .woocommerce-info {
  --ck-checkout-notice-accent: #c44738;

  margin: 0;
  padding: 14px 16px;
  border: 1px solid rgba(196, 71, 56, .22);
  border-left: 3px solid var(--ck-checkout-notice-accent);
  border-radius: 0;
  background: rgba(196, 71, 56, .08) !important;
  color: var(--ck-checkout-ink) !important;
  box-shadow: none;
}

body.woocommerce-checkout #payment .woocommerce-info::before {
  color: var(--ck-checkout-notice-accent);
}

body.woocommerce-checkout #place_order {
  width: 100%;
  min-height: 52px;
  float: none;
  border: 0 !important;
  border-radius: 999px;
  background: var(--ck-commerce-cta, var(--ck-checkout-ink)) !important;
  color: #fff !important;
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .18);
  font-weight: 800;
}

@media (hover: hover) {
  body.woocommerce-checkout #place_order:hover,
  body.woocommerce-checkout #place_order:focus-visible {
    background-color: var(--ck-commerce-cta-hover, #24453b) !important;
    box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .14);
  }
}

@media (max-width: 980px) {
  body.woocommerce-checkout {
    --ck-commerce-surface-radius-responsive: 26px;
  }

  body.woocommerce-checkout .ck-shop-surface,
  body.woocommerce-checkout .ck-checkout-fields + .et_pb_column {
    padding: 22px;
  }

  body.woocommerce-checkout .ck-checkout-order-panel,
  body.woocommerce-checkout .ck-checkout-fields + .et_pb_column {
    position: static;
    top: auto;
  }
}


/* Global Colors */

:root{
    --gray1 : #162707;
    --gray2: #2b3823;
    --gray3: #454e3c;
    --gray4: #5d6552;
    --gray5: #767c69;
    --gray6: #8d9281;
    --gray7: #a4a998;
    --gray8: #bbbeb1;
    --gray9: #d3d5c8;
    --gray10: #e7e9dd;
    --gray11: #f7f8f2;

    --green1: #336600;
    --green2: #5e9f04;
    --green3: #88cf17;
    --green4: #abe831; /* logo green */
    --green5: #baf259;
    --green6: #c9fa8f;
    --green7: #d8fbb7;
    --green8: #e6ffd6;

    --teal1: #002a2e;
    --teal2: #00474d;
    --teal3: #026969; /* logo teal */
    --teal4: #099090;
    --teal5: #29c2bc;
    --teal6: #7de8e0;
    --teal7: #b5fcf3;
    --teal8: #e5fffc;

    --shadow: rgba(141, 146, 129, 0.6);
    --dark-shadow: hsla(0, 0%, 0%, 0.6);

    --box-shadow: 0px 12px 25px -6px  var(--shadow);

    /* UI controls (carousel / scrollers) */
    --ck-control-bg: var(--gray11);
    --ck-control-bg-hover: var(--gray10);
    --ck-control-bg-active: var(--gray9);
    --ck-control-fg: var(--gray5);
    --ck-control-fg-hover: var(--gray2);
    --ck-control-fg-active: var(--gray1);
    --ck-control-shadow: 0px 10px 25px -18px var(--shadow);

    --transition: all .3s ease-in-out;
}

/* Image Module */
#page-container #et-boc .dark-section .ck-rounded-img .et_pb_image_wrap {
    box-shadow: 0px 12px 25px -6px var(--dark-shadow);
}


/* text module */
.ck-text h1,
.ck-text h2,
.ck-text h3,
.ck-text h4,
.ck-text h5,
.ck-text h6 {
    padding-bottom: .75em;
}

.ck-text h1:not(:first-child),
.ck-text h2:not(:first-child),
.ck-text h3:not(:first-child),
.ck-text h4:not(:first-child),
.ck-text h5:not(:first-child),
.ck-text h6:not(:first-child) {
    padding-top: 1.25em;
}

.ck-text ul li,
.ck-text ol li {
    padding-bottom: .5em;
    line-height: 1.8em;
}

.ck-text p:last-of-type {
    padding-bottom: 1em;
}

.ck-text p:last-child,
.ck-text ul:last-child,
.ck-text ul li:last-child,
.ck-text ol:last-child,
.ck-text ol li:last-child {
    padding-bottom: 0;
}

.ck-text blockquote p:last-of-type {
    padding-bottom: 0;
}

/* this shadow is different, might want to document */
.ck-text blockquote {
    position: relative;
    background: var(--green8);
    padding: 25px 35px;
    border-radius: 25px;
    margin-top: 1em;
    box-shadow: 0px 6px 15px -7px  var(--shadow);
}

.ck-text blockquote:before {
    content:'“';
    position: absolute;
    font-size: 5em;
    top: .15em;
    left: .15em;
    color: var(--green3)
}
.ck-text blockquote:after {
    content:'”';
    position: absolute;
    font-size: 5em;
    bottom: -.45em;
    right: 0.25em;
    color: var(--green3)
}

.ck-text.ck-light-text blockquote {
    background: #002a2e99; /* #1627077d (transparent gray) or #00474da6 (transparent teal2) #002a2e99 (trans teal1) */
    box-shadow: 0px 12px 25px -6px var(--dark-shadow);
}

.ck-text ul {
    list-style-type: none!important;
}

.ck-text ul li:before {
    content: '\4e';
    font-family: 'ETmodules';
    color: var(--green2);
    margin: 0 5px 0 -1.27em;
}

/* Link Styling Hover */
.ck-text a,
.et_pb_blurb a  {
    transition: all .3s ease-in-out;
    text-decoration: underline 0.1em transparent;
    text-underline-offset: 0.4em;
}

.ck-text a:hover,
.et_pb_blurb a:hover  {
    text-decoration-color: inherit;
    text-underline-offset: 0.1em;
}

@media (max-width: 980px) {
    .ck-text ul li:before {
        margin: 0 5px 0 -1.31em;
    }
}

@media (max-width: 767px) {
    .ck-text ul li:before {
        margin: 0 5px 0 -1.35em;
    }
}

/* NL Dutch header sizes for mobile -> are now found on the home page css*/


/* Home -  NL Dutch header sizes for mobile */
@media (max-width:980px) {
    body.page-id-9116 #page-container #et-boc .ck-text h1:lang(nl) {
        font-size: 12vw;
    }

    body.page-id-9116 #page-container #et-boc .ck-text h2:lang(nl) {
        font-size: 8vw;
    }
}


@media (max-width:767px) {
    body.page-id-9116 #page-container #et-boc .ck-text h1:lang(nl) {
        font-size: 13vw;
    }

    body.page-id-9116 #page-container #et-boc .ck-text h2:lang(nl) {
        font-size: 12vw;
    }
}


/* Home - FR French header sizes for mobile */
@media (max-width:980px) {
    body.page-id-9107 #page-container #et-boc .ck-text h1:lang(fr) {
        font-size: 11vw;
    }

    #page-container #et-boc .ck-text h2:lang(fr) {
        font-size: 8vw;
    }
}


@media (max-width:767px) {
    body.page-id-9107 #page-container #et-boc .ck-text h1:lang(fr) {
        font-size: 12vw;
    }

    body.page-id-9107 #page-container #et-boc .ck-text h2:lang(fr) {
        font-size: 12vw;
    }
}

/* Dutch Text Sizing
@media(max-width: 1119px) {
    #page-container #et-boc .ck-text h1:lang(nl) {
        font-size: 36px;
    }

    #page-container #et-boc .ck-text h2:lang(nl) {
        font-size: 36px;
    }

     #page-container #et-boc .ck-text h3:lang(nl) {
        font-size: 30px;
    }

    #page-container #et-boc .ck-text h4:lang(nl) {
        font-size: 24px;
    }

    #page-container #et-boc .ck-text h5:lang(nl) {
        font-size: 24px;
    }

    #page-container #et-boc .ck-text h6:lang(nl) {
        font-size: 20px;
    }
  }

  @media (max-width: 393px) {
    #page-container #et-boc .ck-text h1:lang(nl) {
        font-size: 30px;
    }

    #page-container #et-boc .ck-text h2:lang(nl) {
        font-size: 24px;
    }

     #page-container #et-boc .ck-text h3:lang(nl) {
        font-size: 20px;
    }

    #page-container #et-boc .ck-text h4:lang(nl) {
        font-size: 18px;
    }

    #page-container #et-boc .ck-text h5:lang(nl) {
        font-size: 18px;
    }

    #page-container #et-boc .ck-text h6:lang(nl) {
        font-size: 16px;
    }
  }
     */

/* FRENCH TEXT SIZING xD
@media(min-width: 980px) {
    #page-container #et-boc .ck-text h1:lang(fr) {
        font-size: 36px;
    }

    #page-container #et-boc .ck-text h2:lang(fr) {
        font-size: 36px;
    }

     #page-container #et-boc .ck-text h3:lang(fr) {
        font-size: 30px;
    }

    #page-container #et-boc .ck-text h4:lang(fr) {
        font-size: 24px;
    }

    #page-container #et-boc .ck-text h5:lang(fr) {
        font-size: 24px;
    }

    #page-container #et-boc .ck-text h6:lang(fr) {
        font-size: 20px;
    }
}

@media (max-width: 393px) {
    #page-container #et-boc .ck-text h1:lang(fr) {
        font-size: 30px;
    }

    #page-container #et-boc .ck-text h2:lang(fr) {
        font-size: 24px;
    }

     #page-container #et-boc .ck-text h3:lang(fr) {
        font-size: 20px;
    }

    #page-container #et-boc .ck-text h4:lang(fr) {
        font-size: 18px;
    }

    #page-container #et-boc .ck-text h5:lang(fr) {
        font-size: 18px;
    }

    #page-container #et-boc .ck-text h6:lang(fr) {
        font-size: 16px;
    }
}
*/
/*Dark Section - Light Text */
.dark-section .ck-text ul li:before {
    color: var(--green4);
}
/* No top space for text */
.no-top-space {
    padding-top: 0!important;
    margin-top: 0!important;
}

.no-bottom-space {
    padding-bottom: 0!important;
    margin-bottom: 0!important;
}

/* Text highlight color */
::-moz-selection {
    color: var(--gray11);
    background: var(--teal3);
    }

::selection {
    color: var(--gray11);
    background: var(--teal3);
    }

.dark-section ::-moz-selection {
    color: var(--teal4);
    background: var(--green4);
    }

.dark-section ::selection {
    color: var(--teal4);
    background: var(--green4);
    }

/* Toggle with ck-text styling */
.ck-text.et_pb_toggle h4.et_pb_toggle_title {
    line-height: 1.2em;
}

/* Buttons */
#page-container #et-boc .ck-btn.et_pb_button {
    line-height: 1!important;
}

/*  ===================
    ===== HEADER  =====
    =================== */

/* Match the shared Divi header's normal geometry before Divi's deferred
 * per-layout CSS arrives. Keep these values aligned with header layout 8603;
 * the existing sticky rules below still own the desktop scroll shrink. */
#ck-header {
    padding: 0 35px !important;
    background-color: rgba(0, 42, 46, 0.85) !important;
}

#ck-header .et_pb_row {
    width: 100%;
    max-width: 1200px;
    min-height: 100px;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

#ck-header .ck-logo {
    max-width: 150px;
    margin-bottom: -50px !important;
}

/* Keep the visible desktop navigation and CTA in their final Divi design from
 * the first paint. Divi 4 otherwise supplies these module rules in its
 * deferred per-layout stylesheet, after the generic menu/button defaults have
 * already been painted. */
#ck-header #ck-menu.et_pb_menu .et-menu > li > a {
    color: var(--green4) !important;
    font-family: "Barlow Condensed", Helvetica, Arial, Lucida, sans-serif;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

#ck-header #ck-menu.et_pb_menu .et-menu > li.current-menu-item > a {
    color: #fff !important;
}

body #page-container #ck-header a.ck-btn.et_pb_button {
    padding: 0.75em 1em !important;
    color: var(--teal2) !important;
    border-width: 3px !important;
    border-style: solid;
    border-color: var(--green4);
    border-radius: 50px;
    background-color: var(--green4);
    font-family: "Barlow Condensed", Helvetica, Arial, Lucida, sans-serif !important;
    font-size: 20px;
    font-weight: 700 !important;
    letter-spacing: 0.05em;
    text-transform: uppercase !important;
}

body #page-container #ck-header a.ck-btn.et_pb_button:hover {
    border-color: var(--green5) !important;
    background-color: var(--green5);
}

@media (max-width: 980px) {
    #ck-header {
        padding: 0 !important;
    }

    #ck-header .et_pb_row {
        width: 80%;
        min-height: 80px;
    }

    #ck-header .ck-logo {
        max-width: 120px;
        margin-bottom: -40px !important;
    }

    #ck-header .ck-logo .et_pb_image_wrap img {
        width: auto;
    }

    #page-container #ck-header #ck-menu.et_pb_menu ul li a,
    body #page-container #ck-header a.ck-btn.et_pb_button {
        font-size: 16px;
    }
}

@media (max-width: 767px) {
    #ck-header .et_pb_row {
        width: 90%;
        min-height: 61px;
    }

    #ck-header .ck-logo {
        max-width: 90px;
        margin-bottom: -30px !important;
    }
}

@media (min-width: 981px) {
    #ck-header.et_pb_sticky--top .et_pb_row {
        min-height: 80px;
    }
}


#page-container {
    overflow-x:hidden;
    overflow-y: auto;
}

/* Column Allignment */
#ck-header .et_pb_row {
    align-items: center;
}

#ck-header .et_pb_row .et_pb_column:first-child {
    align-self: flex-end;

}

/* Section Background Blur */
#ck-header {
    backdrop-filter: blur(7px);
    -webkit-backdrop-filter: blur(7px);
}

/* Logo Overlap (also in media queries)*/
#ck-header .ck-logo {
    transition: all .3s ease-in-out;
}

@media (min-width: 981px) {
    #page-container #ck-header.et_pb_sticky--top .ck-logo {
        margin-bottom: -40px!important;
        max-width: 120px;
    }
}

/*Menu Module */
#ck-header .et_pb_menu .et-menu > li {
    padding: 10px 20px
}

#ck-header .et_pb_menu .et-menu > li a:hover {
    opacity: 1;
    }

/* Submenu */
#ck-header .sub-menu {
    border: none;
    border-radius: 2px;
    padding: 20px;
    width: 200px;
    top: calc(100% + 4px);
    transition: all .3s ease-in-out;
}

#ck-header .sub-menu li {
    width:100%;
    padding:0;
}

#page-container #ck-header .sub-menu li a {
    padding: 0 0 10px;
    font-family: "Barlow Condensed", sans-serif;
    font-weight: 700;
    font-size: 16px;
    text-transform: none;
    letter-spacing: 0;
    background:none;
    transition: all .3s ease-in-out;
}

#page-container #ck-header .sub-menu li:last-child a {
    padding: 0;
}

#page-container #ck-header .sub-menu li a:hover{
    padding-left: 5px;
}

#page-container #ck-header .nav li.et-touch-hover>ul, #ck-header .nav li:hover>ul {
    top: calc(100% - 1px)
}

/* SVG Wave Hover Effect (testing) */
#ck-header .et_pb_menu .et-menu > li a {
    position: relative;
}
#ck-header .et_pb_menu .et-menu > li > a:before {
    content: '';
    display: block;
    position: absolute;
    bottom: -20px;
    left: 0;
    right: 0;
    height: 15px;
    background:url(img/wave.svg) repeat-x;
    background-size: 15px;
    animation: wavePlay 5s infinite linear;
    opacity: 0;
    transition: all .3s ease-in-out;
}

@keyframes wavePlay {
    0% {
        background-position: 0;
    }
    100% {
        background-position: -169px;
    }
}

#page-container #ck-header .et_pb_menu .et-menu > li > a:hover:before {
    opacity: 1;
    bottom: -10px;
}

@media (max-width: 1155px){
    #page-container #ck-header .et_pb_menu .et-menu > li {
        padding: 10px 15px
    }
    #page-container #ck-header .et_pb_menu .et-menu > li a {
        font-size: 18px;
    }
    #page-container #ck-header a.et_pb_button {
        font-size: 18px;
    }
}

@media (max-width: 980px) {
    #page-container #ck-header .ck-logo {
        margin-bottom: -30px;
    }

    #page-container #ck-header .et_pb_row {
        display: flex;
    }

    #page-container #ck-header .et_pb_menu__wrap {
        justify-content: flex-end;
    }

    #page-container #ck-header .et_pb_column{
        margin-bottom: 0px;
    }
    #page-container #ck-header .et_pb_column:nth-child(1){
        order: 1;
    }
    #page-container #ck-header .et_pb_column:nth-child(2){
        order: 3;
    }
    #page-container #ck-header .et_pb_column:nth-child(3){
        order: 2;
    }

    #page-container #ck-header .ck-logo {
        margin-bottom: auto;
    }
    #page-container #ck-header.et_pb_sticky--top .ck-logo {
        margin-bottom: -40px;
    }

    #page-container #ck-header .mobile_menu_bar::before {
        font-size: 45px;
        color: var(--green3);
        transition: all .3s ease-in-out;
    }
    #page-container #ck-header .opened .mobile_menu_bar::before {
        content:'\4d';

    }

    #ck-header #ck-menu .et_mobile_menu {
        position: fixed;
        display: block!important;
        margin: 0!important;
        height: 100%!important;
        min-height: 100vh;
        padding: 100px 0 0!important;
        right: -300px;
        left: auto;
        top:0;
        transition: all 1s ease-in-out;
        max-width: 300px;
        z-index: 39;
    }
    #page-container #ck-header .opened .et_mobile_menu {
        right: 0;
    }
    #page-container #ck-header .mobile_menu_bar {
        z-index: 41;
    }
    #page-container #ck-header .sub-menu li a,
    #page-container #ck-header .sub-menu li a:hover,
    #page-container #ck-header .sub-menu li:last-child a{
        padding: 10px 20px;
    }
}

@media (max-width: 398px){
    #page-container #ck-header .ck-btn {
        font-size: 14px!important;
    }
}

@media(max-width: 350px) {
        #page-container #ck-header .ck-btn {
        font-size: 12px!important;
    }
}

@media (max-width: 398px){
    #page-container #ck-header .et_pb_column:nth-child(1){
        display: none;
    }
    #page-container #ck-header .ck-btn {
        margin: 10px 0px;
    }
    #page-container #ck-header .et_pb_button_module_wrapper {
        text-align: left;
    }
}

@media (max-width: 530px) {
    #page-container #ck-header .et_pb_column:nth-child(1):not(:lang(en)) {
        display: none;
    }
    #page-container #ck-header .ck-btn:not(:lang(en)) {
        margin: 10px 0px;
    }
    #page-container #ck-header .et_pb_button_module_wrapper:not(:lang(en)) {
        text-align: left;
    }
}

@media (max-width: 303px){
    #page-container #ck-header .ck-btn {
        font-size: 12px!important;
    }
}

/* TESTING Mega Menu with Images

#ck-menu .et_pb_menu__menu>nav>ul>li>a {
    padding-bottom: 20px;
}


#ck-header {
    z-index:20;
}
#ck-menu li.mega-menu ul.sub-menu {
    width: 100vw;
    left:50%!important;
    transform: translateX(-50%);
    padding:0;
    background:transparent;
    }
*/



/*  ================
    ==== FOOTER ====
    ================
*/
#page-container #ck-footer .et-menu,
#page-container #ck-footer .et_pb_menu__wrap {
    display: block;
}

#page-container #ck-footer .et_pb_menu {
    display: inline-block;
    min-width: 200px;
}

/* SVG Wave Hover Effect (testing) */
#page-container #ck-footer .et_pb_menu .et-menu > li a {
    position: relative;
    transition: all .3s ease-in-out;
}
#ck-footer .et_pb_menu .et-menu > li > a:before {
    content: '';
    display: block;
    position: absolute;
    bottom: auto;
    left: -50px;
    right: auto;
    width: 40px;
    height: 15px;
    background:url(img/wave.svg) repeat-x;
    background-size: 15px;
    animation: wavePlay 5s infinite linear;
    opacity: 0;
    transition: all .3s ease-in-out;
}

#ck-footer .et_pb_menu .et-menu > li > a:hover:before {
    opacity: 1;
    left: -40px;
}

#ck-footer .et_pb_menu .et-menu > li > a:hover {
    padding-left: 10px;
}

/* Footer CTA Button Wave */
a.wave-footer-link {
    position: relative;
    transition: all .3s ease-in-out;
}

#page-container #ck-footer a.wave-footer-link:before {
    content: '';
    display: block!important;
    position: absolute;
    bottom: -40px;
    width: 550px;
    left: 30px;
    right: auto;
    height: 50px;
    background:url(img/wave2x.svg) repeat-x;
    background-size: 50px;
    animation: wavePlay2 1s infinite linear;
    opacity: 1;
    transition: all .3s ease-in-out;
    animation-play-state: paused;
}
@keyframes wavePlay2 {
    0% {
        background-position: 0;
    }
    100% {
        background-position: -50px;
    }
}

#page-container #ck-footer a.wave-footer-link:hover:before {
    animation-play-state: running;
}

/* Footer Mobile Menu & Column */

@media (max-width: 980px) {
    #page-container #ck-footer .et_mobile_nav_menu {
        display: none;
    }

    #page-container #ck-footer .et_pb_menu__menu,
    #page-container #ck-footer .et_pb_menu__wrap {
        display:block;
    }
}

@media (max-width: 398px){
        #page-container .ck-footer-column-padding {
        padding:35px;
    }
}

/*  =================
    === HOME PAGE ===
    =================
    */

/* Hero Section */
/* Video Code Module */
.ck-video video {
    border-radius: 25px;
    box-shadow: 0px 12px 25px -6px var(--shadow)!important ;
}

@media (max-width: 767px) {
    #ck-home-hero {
        padding-top: 35px;
    }
    #ck-home-hero .et_pb_row:first-of-type {
        width: 100%!important;
    }

    #ck-home-hero .et_pb_row:first-of-type .et_pb_column:nth-child(1) {
        padding: 0 5vw;

    }

    #ck-home-hero .ck-video video {
        border-radius: 0;
        width: 100vw;
    }
}

/*Responsiveness */
@media (min-width: 981px) and (max-width: 1198px){
    #page-container #ck-home-hero h1 {
        font-size: 48px;
    }
}

@media (min-width: 981px) {
    #page-container #ck-home-hero h1:lang(nl) {
        font-size: 48px;
    }
}

@media (max-width: 997px) {
    #page-container #ck-home-hero h5 {
      font-size: 24px;
    }
  }

/*wave-before svg edits*/
.ck-wave-before svg,
.ck-wave-after svg {
    width: 80px;
    height: auto;
    margin: 0 10px 5px -90px;
}

#page-container .ck-wave-before svg path,
#page-container .ck-wave-after svg path {
    stroke: var(--green3)!important;
}

#page-container .dark-wave svg path {
    stroke: var(--green2)!important;
}
/*
@media (max-width: 980px) {
    .ck-wave-before svg {
        width: 120px;
        margin-left: -140px;
    }
}

@media (max-width: 767px) {
    .ck-wave-before svg {
        width: 80px;
        margin-left: -90px;
        margin-right: 10px;
    }
}
    */

.et_pb_text_align_center .ck-wave-before svg {
    margin: 0 auto 40px;
    display: block;
}

/* HELPER CLASSES */
.highlight {
    background: linear-gradient(90deg, var(--green3), var(--green2));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.ck-light-text .highlight {
    background: linear-gradient(90deg, var(--green5), var(--green3));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* Custom Column Structure: reverse columns on tablet phone */
@media (max-width: 980px) {
    .ck-reverse-columns {
        display: flex;
        flex-direction: column-reverse;
    }

    /* Reset Divi’s bottom margin on both columns */
    .ck-reverse-columns > .et_pb_column {
        margin-bottom: 0;
    }

    /* Add consistent spacing between them */
    .ck-reverse-columns > .et_pb_column + .et_pb_column {
        margin-bottom: 30px;
    }

    .ck-header-column {
        margin-bottom: 22.5px;
    }

}

/*Vertically Align Columns in a row */
@media (min-width: 981px) {
    .vertical-align {
        display: flex;
        align-items: center;
    }
}

/* keep blurb columns on tablet */
@media (min-width: 884px) and (max-width: 980px) {
    .ck-blurb-row {
        display:flex;
    }

    .ck-blurb-row .et_pb_column:not(:last-of-type) {
        margin-right: 3%;
    }

    .ck-blurb-row:last-of-type .et_pb_column {
        margin-bottom: 0;
    }
}

@media(max-width: 883px) {
    .ck-blurb-row .et_pb_column:not(:last-of-type) {
        margin-bottom: 30px;
    }
}

@media (max-width: 767px) {
    .ck-blurb-row .et_pb_blurb_content {
        display: flex;
        align-items: center;
        margin: 0;
    }

    .ck-blurb-row .et_pb_main_blurb_image {
        margin: 0 20px 0 0;
        align-self:flex-start;

    }

    .ck-header-column {
        margin-bottom: 18px;
    }
}

@media (max-width: 400px) {
    .ck-blurb-row .et_pb_blurb_content {
        display: flex;
        flex-direction: column;
    }

    .ck-blurb-row .et_pb_main_blurb_image {
        margin: 0 0 10px 0;
    }
}

/* Full Height Image Column (from PA) -> add class to image module and set row to equal column heights */
/*this sets the height of the image module*/
.ck-full-height-image-column {
	height: 100%;
}
/*this sets the height of the image container*/
.ck-full-height-image-column .et_pb_image_wrap {
	height: 100%;
}
/*this sets the height and fit of the actual image*/
.ck-full-height-image-column img {
	object-fit: cover;
	height: 100%;
}

/*Home: Introducing The Original Cupkeeper (= products section) */

/* TABBED SECTIONS EXPERIMENT */
@media (min-width: 768px){
    .tab-wrapper {
        display: flex;
        flex-wrap: wrap;
        max-width: 1200px;
        margin: 0 auto;
/* if you'd like to color the "background"
        outline: var(--gray11) solid 100vw;
*/
    }

    [class*=tab-content] {
        flex-basis: 100%;
        order:10;
    }

    [class*=tab-title] {
        flex-basis: 25%;
        cursor:pointer;
    }

    #page-container [class*=tab-title].active-tab .et_pb_row {
        border-bottom: solid 3px var(--gray1);

    }
}


@media (min-width: 768px) and (max-width: 980px) {
    [class*=tab-content] .et_pb_row {
        display: flex;
        margin:  0 35px;
        justify-content: space-between;
        max-width: 1200px;
        width: calc(100vw - 70px);
        align-items: center;
    }

    [class*=tab-content] .et_pb_row .et_pb_column {
        margin-right: 35px;
    }
}

/* Possible Customizations for the active title tab */
#page-container [class*=tab-title] {
    display: flex;
}

#page-container [class*=tab-title] .et_pb_text {
    transition: all .3s ease-in-out;
}

/* #page-container [class*=tab-title].active-tab .et_pb_text {
    transform: translateY(30px);
} */

@media (max-width: 767px) {
    #page-container [class*=tab-content] .et_pb_row {
        display: flex;
        flex-direction: column-reverse;
    }

    #page-container [class*=tab-content] .et_pb_row .et_pb_column:nth-child(1) {
        margin-bottom: 0;
    }

    #page-container [class*=tab-content] .et_pb_row .et_pb_column:nth-child(2) {
        margin-bottom: 30px;
    }

    #page-container .tab-wrapper {
        display: flex;
        flex-wrap: wrap;
    }

    #page-container .tab-wrapper > div {
        display: none;
    }

    #page-container .tab-wrapper > div.active-tab {
        display: block;
    }

    .nav-arrow {
        cursor: pointer;
        user-select: none;
        z-index: 50;
    }

    #page-container [class*=tab-title].active-tab {
        flex-basis: 100%
    }
}



/* Products Piece */

/*Column Hover Transformation (simplebar products section) */
#ck-products ul.products img,
#ck-cups-upsells ul.products img {
    transition: all .3s ease-in-out;
}

#ck-products ul.products li:hover img,
#ck-cups-upsells ul.products li:hover img {
    transform: scale(1.10)
}

#ck-products .related > h2,
.ck-products .related > h2  {
    display: none;
}

 /* gradient control */
#page-container #ck-products,
#page-container .ck-products {
    background-image: linear-gradient(181deg,#ffffff 0%,#ffffff 30%,var(--green8) 30%,#ffffff 80%)!important;
}

#page-container #ck-products:has(.columns-3),
#page-container .ck-products:has(.columns-3) {
    background-image: linear-gradient(181deg,#ffffff 0%,#ffffff 35%,var(--green8) 35%,#ffffff 80%)!important;
}

#page-container #ck-products:lang(fr),
#page-container .ck-products:lang(fr) {
    background-image: linear-gradient(181deg,#ffffff 0%,#ffffff 25%,var(--green8) 25%,#ffffff 80%)!important;
}

@media (max-width: 1150px) {
    #page-container #ck-products,
    #page-container .ck-products {
        background-image: linear-gradient(181deg,#ffffff 0%,#ffffff 25%,var(--green8) 25%,#ffffff 80%)!important;
    }

    #page-container #ck-products:has(.columns-3),
    #page-container .ck-products:has(.columns-3) {
        background-image: linear-gradient(181deg,#ffffff 0%,#ffffff 30%,var(--green8) 30%,#ffffff 80%)!important;
    }
}

@media (max-width: 980px) {
    #page-container #et-boc #ck-products,
    #page-container #et-boc .ck-products {
        padding-left: 0!important;
        padding-right: 0;
        background-image: linear-gradient(181deg,#ffffff 0%,#ffffff 35%,var(--green8) 35%,#ffffff 80%)!important;
    }

    #page-container #et-boc #ck-products:has(.columns-3),
    #page-container #et-boc .ck-products:has(.columns-3) {
        background-image: linear-gradient(181deg,#ffffff 0%,#ffffff 40%,var(--green8) 40%,#ffffff 80%)!important;
    }

    #page-container #ck-products .woocommerce.columns-4,
    #page-container .ck-products .woocommerce.columns-4 {
        margin-left: 10vw;
    }

    #page-container #ck-products section.related.products,
    #page-container .ck-products section.products {
        margin-left: 10vw;
    }

}

@media (max-width: 767px) {
    #page-container #ck-products .woocommerce.columns-4,
    #page-container .ck-products .woocommerce.columns-4 {
        margin-left: 5vw;
    }

    #page-container #ck-products section.related.products,
    #page-container .ck-products section.products {
        margin-left: 5vw;
    }
}

@media (max-width: 500px) {
    #page-container #ck-products .woocommerce.columns-4,
    #page-container .ck-products .woocommerce.columns-4 {
        margin-top: 35px;
    }

    #page-container #ck-products section.related.products,
    #page-container .ck-products section.products {
        margin-top: 15px;
    }
}

/*  ====================
    === Contact Page ===
    ==================== */

.ck-form .et_pb_button {
    line-height: 1!important;
    align-self: center;
}

.ck-form .et_pb_contact p .et_contact_error {
    border: 2px solid #ff7272 !important;
}

.ck-contact-hero {
    display: flex;
    align-items: center;
}

@media (max-width: 980px) {
    .ck-contact-hero .et_pb_column.et_pb_column:nth-child(1) {
        width: 70%;
        margin-right: 25px
    }
}


@media (max-width: 620px) {
    .ck-contact-hero .et_pb_column.et_pb_column:nth-child(1) {
        width: 50%;
        margin-right: 15px;
        align-self: flex-start;
    }
}

@media (max-width: 540px) {
    .ck-contact-hero {
        display: block;
    }

    .ck-contact-hero .et_pb_column.et_pb_column:nth-child(1) {
        max-width: 35%;
        transform: translateX(-5px)
    }
}

/*  ====================
    === Single Post  ===
    ==================== */

/* Callout box */ /*
.ck-box {
	border-radius: 15px;
	margin: 25px 0 50px;
	padding: 50px;
	background-color: var(--green8);
	box-shadow: inset 2px 2px 18px -6px var(--green3);
}

@media (max-width: 980px) {
	.ck-box {
		padding: 35px;
		margin: 20px 0 35px;
	}
}

@media (max-width: 400px) {
	.ck-box {
		padding: 25px;
		margin: 15px 0 25px;
	}
} */
/* callout box for blog posts > just set a group and add class in advanced settings */
.wp-block-group.ck-callout {
    background: var(--green8);
    padding: 1.4em;
    border: solid var(--green2);
    border-radius: 15px;
}

/* making an image round so the shadow doesn't stay square around it... */
#ck-blog-content .ck-circle-img img {
    border-radius: 50%!important;
}

/* Columns Spacing when not last paragraph... suboptimal */
#ck-blog-content .wp-block-column:last-child p:last-child {
    padding-bottom: 1em!important;
 }

/* Blog Images spacing adjustments */
#ck-blog-content img {
    margin: 25px 0;
}

@media (max-width: 767px) {
    #ck-blog-content img {
        margin: 15px 0;
    }
}

/* Blog title responsiveness */
@media (max-width: 530px){
    #ck-blog-title.ck-text h1 {
        font-size: 30px;
    }
}

@media (max-width: 450px){
    #ck-blog-title.ck-text h1 {
        font-size: 24px;
    }
}

/* Mini Blurbs for Post Meta */
.ck-mini-blurb .et_pb_blurb_content {
    display: flex;
}

.ck-mini-blurb .et_pb_main_blurb_image {
    width: auto;
    margin: 0;
}

.ck-mini-blurb .et_pb_blurb_container {
    padding-left: 10px;
}

/* Post Header */
@media (max-width: 980px) {
    #ck-post-header .et_pb_column:first-child,
    #ck-post-header .et_pb_column:first-child .et_pb_image,
    #ck-post-header .et_pb_column:first-child .et_pb_image_wrap,
    #ck-post-header .et_pb_column:first-child img {
        height: 100%;
        width:100%;
    }

    #ck-post-header .et_pb_column:first-child img {
        object-fit: cover;
    }
}

/* Post Comments */
.ck-comments .comment a:not(.et_pb_button) {
    color: var(--green2);
    font-weight: 400;
    font-size: inherit;
}

.ck-comments h2,
.ck-comments h3 {
     padding-bottom: 1em;
}

.ck-comments input#wp-comment-cookies-consent {
    accent-color: var(--green2);
}


/* Reply Button */
#page-container .ck-comments #comment-wrap .comment-reply-link {
    background: transparent!important;
    color: var(--green2)!important;
    border-color: var(--green4)!important;
    transform: scale(0.8);
}

#page-container .ck-comments #comment-wrap .comment-reply-link:hover {
    border-color: var(--green2)!important;
}
/* Logged In Status Text Resize */
.ck-comments #comment-wrap form p,
#page-container .ck-comments p.comment-form-cookies-consent label {
    font-size: 18px;
}

@media (max-width: 980px) {
    .ck-comments #comment-wrap form p,
    .ck-comments p.comment-form-cookies-consent label {
        font-size: 16px;
    }
}

@media (max-width: 767px) {
    .ck-comments #comment-wrap form p,
    .ck-comments p.comment-form-cookies-consent label {
        font-size: 14px;
    }
}

/* Fields Sizing */
@media (min-width: 768px) {
    body:not(.logged-in).ck-comments p.comment-form-comment {
        width: 50%;
        float: right;
    }

    .ck-comments textarea#comment {
        max-height: 11.2em;
    }

    .ck-comments p.comment-form-cookies-consent {
        clear: both;
    }
}

/* More Posts Section */
.ck-mini-blog .et_pb_ajax_pagination_container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.ck-mini-blog article {
    width: 47.5%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}

.ck-mini-blog .entry-featured-image-url {
    width: 40%;
    margin-bottom: 0;
}

.ck-mini-blog .entry-title {
    width: calc(60% - 30px);
    padding: 0;

}

.ck-mini-blog .post-content {
    flex-basis: 100%;
}

.ck-mini-blog .et_pb_ajax_pagination_container > div:last-child {
    width: 100%;
}

/* if you want a border on the img, or any styling
.ck-mini-blog img {
    border-radius: 10px;
    box-shadow: 0px 12px 18px -9px #8d9281;
    border: solid 3px black;
}
    */

@media (max-width: 980px) {
    .ck-mini-blog .entry-title {
        width: calc(60% - 20px);
    }
}

@media (max-width: 800px) {
    .ck-mini-blog h2.entry-title a {
        font-size: 16px;
        line-height: 1em;
    }

    .ck-mini-blog .entry-title {
        width: calc(70% - 20px);
    }

    .ck-mini-blog .entry-featured-image-url {
        width: 30%;
    }
}

@media (max-width: 700px) {
    .ck-mini-blog .et_pb_ajax_pagination_container {
        display: block;
    }

    .ck-mini-blog article {
        width: 100%;
        margin-bottom: 0!important;
    }

    .ck-mini-blog .entry-title {
        width: calc(80% - 20px);
    }

    .ck-mini-blog .entry-featured-image-url {
        width: 20%;
    }
}

/*  =================
    === BLOG PAGE ===
    ================= */

#ck-blog .et_pb_ajax_pagination_container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    grid-gap: 50px;
}

@media (max-width: 980px) {
    #ck-blog .et_pb_ajax_pagination_container {
        grid-gap: 35px;
    }
}

#ck-blog article {
    background: white;
    margin-bottom: 0;
    padding-bottom: 25px;
    display: flex;
    flex-direction: column;
    border-radius: 25px;
    border: solid 0px black;
    box-shadow: 0px 12px 25px -6px var(--shadow);
    transition: all .3s ease-in-out;
}

#ck-blog article:hover {
    box-shadow: 0px 20px 45px -9px var(--shadow);
    transform: translateY(-10px);
}

#ck-blog .post-content {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: space-between;
}


#ck-blog article > :not(a.entry-featured-image-url) {
    padding-left: 25px;
    padding-right: 25px;
}

#ck-blog a.more-link {
    display: inline-block;
    padding: .5em 1em;
    line-height: 1;
    border: 3px solid var(--green4);
    border-radius: 50px;
    /* Push button to card bottom when post copy heights differ */
    margin-top: auto;
    transition: all .3s ease-in-out;
}

#ck-blog a.more-link:hover {
    background-color: var(--green8);
    border-color: var(--green8)
}

#ck-blog p.post-meta {
    padding-bottom: 25px;
}

/*Pagination Alignment */
#ck-blog .et_pb_ajax_pagination_container > div:last-child {
    grid-column: 1/-1
}

/* Image, overlay and hove effect */
#ck-blog article img {
    width: 100%;
    height: 250px;
    object-fit: cover;
    filter: grayscale(1);
    transition: all .3s ease-in-out;
}


#ck-blog a.entry-featured-image-url {
    overflow: hidden;
    border-radius: 25px 25px 0 0;
}

#ck-blog a.entry-featured-image-url:after {
    content:'';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: var(--green2);
    opacity: 0.5;
    transition: all .3s ease-in-out;
}

#ck-blog article:hover img {
    filter: grayscale(0);
    transform: scale(1.05);
}

#ck-blog article:hover .entry-featured-image-url:after {
    opacity: 0;
}

/* Horizontal Layout for single column */
@media (min-width: 467px) and (max-width: 816px) {
    #ck-blog a.entry-featured-image-url {
        position:absolute;
        width: 50%;
        height: 100%;
        border-radius: 25px 0 0 25px;
    }

    #ck-blog article img {
        height: 100%;
    }

    #ck-blog article > :not(a.entry-featured-image-url) {
        padding-left: calc(50% + 25px);
        padding-right: 25px;
    }

    #ck-blog .entry-title {
        padding-top: 25px;
    }
}

@media (min-width: 467px) and (max-width: 650px) {
    #ck-blog a.entry-featured-image-url {
        width: 30%;
    }

    #ck-blog article > :not(a.entry-featured-image-url) {
        padding-left: calc(30% + 25px);
        padding-right: 25px;
    }

    #ck-blog .entry-title {
        padding-top: 25px;
    }
}

@media (max-width: 479px) {
    #ck-blog p.post-meta {
        padding: 10px 0 15px;
    }

    #ck-blog .et_pb_ajax_pagination_container {
        grid-template-columns: 1fr;
    }
}

/* Add CTA into Blog */
.ck-blog-cta {
    margin: 0;
}
.ck-blog-cta .et_pb_column {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

/* CK Flower w Scroll effect */
@media (min-width: 450px) and (max-width: 767px) {
    img.wp-image-5170 {
       transform: translatex(20vw);
    }
}


/*  ==================
    === ABOUT PAGE ===
    ================== */

/*add content before number counter value*/
.ck-number-counter-countless .percent-value {
    font-size: 0!important;
}
.ck-number-counter-countless .percent-value:before {
	content: "Countless";
    font-size: 48px!important;
}

.ck-number-counter-countless .percent-value:lang(nl):before {
	content: "Ontelbaar";
}

.ck-number-counter-countless .percent-value:lang(fr):before {
	content: "Innombrables";
}

@media (max-width: 980px) {
    .ck-number-counter-countless .percent-value:before {
        font-size: 36px!important;
    }
}

@media (max-width: 767px) {
    .ck-number-counter-countless .percent-value:before {
        font-size: 30px!important;
    }
}


.ck-about-numbers .et_pb_row {
    display: flex;
}

@media(max-width: 600px) {
    .ck-about-numbers .et_pb_row {
        flex-wrap: wrap;
    }
    .ck-about-numbers .et_pb_row .et_pb_column {
        flex-basis: 50%;

    }
    .ck-about-numbers .et_pb_row .et_pb_column:last-child {
        flex-basis: 100%;
    }
}

/* First Row of Blurbs with images responsiveness */
@media (max-width: 980px) {
    .ck-about-blurbs-1 .et_pb_blurb_content {
        display: flex;
        align-items: center;
        margin: 0;
    }

    .ck-about-blurbs-1 .et_pb_main_blurb_image {
        margin: 0 20px 0 0;
        align-self:flex-start;
    }
    .ck-about-blurbs-1 .et_pb_column {
        margin-bottom: 50px;
    }
}

@media (max-width: 360px) {
    .ck-about-blurbs-1 .et_pb_blurb_content {
        flex-direction: column;
    }

    .ck-about-blurbs-1 .et_pb_main_blurb_image {
        margin: 20px 0;
    }

    .ck-about-blurbs-1 .et_pb_blurb_container {
        width: 100%;
    }
}

/* Products Slick Slider Styling */
.ck-slider .slick-list {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    background: white;
    box-shadow: 0px 12px 25px -6px var(--shadow);
    border-radius: 25px;
    z-index:-1;
}

.ck-slider .slick-prev {
    left: 15px;
    transform: scale(3);
}

.ck-slider .slick-next {
    right: 15px;
    transform: scale(3);
}

.ck-slider .slick-prev:before,
.ck-slider .slick-next:before {
    content: "";
    display: block;
    width: 20px;
    height: 20px;
    margin: auto;
    background: currentColor;
    color: var(--green2);
    font-family: inherit;
    font-size: 0;
    position: relative;
    z-index: 10;
    -webkit-mask-position: center;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-position: center;
    mask-repeat: no-repeat;
    mask-size: contain;
}

.ck-slider .slick-prev:before {
    -webkit-mask-image: url("img/icons/ck-et-arrow-left.svg");
    mask-image: url("img/icons/ck-et-arrow-left.svg");
}

.ck-slider .slick-next:before {
    -webkit-mask-image: url("img/icons/ck-et-arrow-right.svg");
    mask-image: url("img/icons/ck-et-arrow-right.svg");
}

.ck-slider .slick-list .et_pb_module {
    margin-bottom: 0px;
}

ul.slick-dots {
    transform: translateY(50px) scale(1.5);
}

.ck-slider .slick-dots button:before {
    content: "";
    top: 7px;
    left: 7px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: currentColor;
    font-family: inherit;
    transition: all .3s ease-in-out;
}

.ck-slider .slick-dots .slick-active button:before {
    transform: scale(2);
    color: var(--green2);
}

@media (max-width: 500px) {
    .ck-slider .slick-prev {
        left: 10px;
        transform: scale(2);
    }

    .ck-slider .slick-next {
        right: 10px;
        transform: scale(2);
    }

    ul.slick-dots {
        transform: translateY(40px) scale(1);
    }
}

/* Dark Section Slider */
.dark-section .ck-slider .slick-list {
    box-shadow: 0px 12px 25px -6px var(--dark-shadow);
}

.dark-section .ck-slider .slick-dots .slick-active button:before {
    color: var(--green4);
}

.dark-section .ck-slider .slick-dots button:before {
    color: white;
    opacity: .7
}

/*  ================
    === Products ===
    ================ */

/* products page row spacing*/
@media (max-width: 980px) {
    .ck-products-page-row.ck-reverse-columns .et_pb_column:nth-child(2),
    .ck-products-page-row .et_pb_column:nth-child(1) {
        margin-bottom: 70px;
        max-width: 500px;
    }
    .ck-products-page-row.ck-reverse-columns .et_pb_column:nth-child(1),
    .ck-products-page-row .et_pb_column:nth-child(2) {
        margin-bottom: 0px;
    }
}


/* Pop-up Functionality Popup with click event */
/* Show/hide the popup overlay wrapper when "is-visible" class changes, apply the CSS to frontend only */
body:not(.et-fb) .dl-popup-wrapper {
    position:fixed;
    z-index:990;
    top:0;
    right:0;
    bottom:0;
    left:0;
    transition: all .5s cubic-bezier(.14,.06,.41,1.39);
    opacity:0;
    visibility:hidden;
  }
  body:not(.et-fb) .dl-popup-wrapper.popup-is-visible {
    opacity:1;
    visibility:visible;
  }


  /* Allow the content inside the popup wrapper to scroll */
  .dl-popup-inside {
    height:100%;
    overflow-y: scroll;
  }


  /* Prevent Body from Scrolling when Popup is visible */
  body.dl-noscroll {
    overflow: hidden;
  }

  /* Center Align Popup Content inside the Section */
  .dl-popup-content {
    display:flex;
    flex-direction:column;
    justify-content: center;
  }
  .dl-popup-content .et_pb_row {
    margin-top:0;
    margin-bottom:0;
  }


  /* Adjust the position of the popup overlay for admin bar */
  @media (min-width: 600px) and (max-width: 782px) {
    body:not(.et-fb).admin-bar .dl-popup-wrapper {
      top:46px;
    }
  }
  @media (min-width: 783px) {
    body:not(.et-fb).admin-bar .dl-popup-wrapper {
      top:32px;
    }
  }

  /* Mave the popup on top of other elements */
  .et_builder_inner_content.popup-is-visible {
    z-index:99999;
  }

  /* Add a hand cursor to the close trigger element */
  .dl-popup-close {
    cursor:pointer;
  }

  /* Add Row animation when popup is triggered */
  .dl-popup-wrapper.popup-is-visible .et_pb_row:not(.dl-popup-close) {animation:scale-in .5s cubic-bezier(.14,.06,.41,1.39) both; animation-delay: .5s; }
  @keyframes scale-in{0%{transform:scale(0.3);opacity:0}100%{transform:scale(1);opacity:1}}


  /* Woo Gallery - Single Product Showcase Section1 */
.ck-woo-images img {
    border-radius: 15px;
    transition: all .3s ease-in-out;
}

.ck-woo-images .flex-active-slide img {
    border-radius: 25px;
}

.woocommerce-product-gallery .flex-viewport {
    border-radius: 25px;
    box-shadow: 0px 12px 25px -6px var(--dark-shadow);
    border: solid 3px var(--teal1);
}

.ck-woo-images .flex-control-nav {
    display: flex;
    justify-content: space-between

}

#page-container .ck-woo-images .flex-control-nav li {
    width: 150px;
    margin-right: 5px;
}

#page-container .ck-woo-images .flex-control-nav li:last-child {
    margin-right: 0px;
}

@media (max-width: 600px) {
    #page-container #ck-product-display .et_pb_column {
        padding: 35px;
    }
}

/* BLURBS - work in progress */
.et_pb_row.ck-products-blurbs h4 {
    padding-bottom: 0;
}
#page-container #et-boc .ck-products-blurbs {
    display: flex;
}
#page-container .ck-products-blurbs .et_pb_blurb_content {
    display: flex;
    flex-direction: column;
}
#page-container #et-boc .ck-products-blurbs .et_pb_column {
    margin-bottom: 0;
}

#page-container #et-boc .ck-products-blurbs .et_pb_blurb_container {
    padding-left: 0;
}

#page-container #et-boc .ck-products-blurbs .et_pb_blurb_content .et_pb_main_blurb_image {
    margin: 0 0 10px 0;
}

@media (max-width: 430px) {
    #page-container #et-boc .et_pb_row.ck-products-blurbs {
        display: block;
    }

    #page-container #et-boc .ck-products-blurbs .et_pb_column:not(:last-child) {
        margin-bottom: 35px;
    }
}

/* Features Section Responsiveness */
@media (max-width: 980px) {
    #ck-product-features .et_pb_row:nth-child(2n) .et_pb_column:nth-child(1) {
        margin-bottom: 0;
        padding-top: 30px;
    }
    #ck-product-features p {
        padding-bottom: 0;
    }
}

/* disable caption on the image lightbox */
#page-container .pswp__caption {
    display: none;
}

/*  ==================
    === Quote Form ===
    ================== */

.ck-form label:after,
.ck-form .et_pb_contact_field_options_title:after {
    color: var(--teal4);
}

#page-container .ck-form .input[type="radio"]:checked+label i:before {
    background-color: var(--green3);
}

#page-container .ck-form .input[type="checkbox"]:checked+label i:before {
    content: '\4e';
    color: var(--green3);
}

.ck-form .et_pb_html_field {
    margin-left: 0;
}

#page-container .ck-form .input[type="radio"]+label,
#page-container .ck-form .input[type="checkbox"]+label {
    color: var(--gray6);
}

#page-container .ck-form .input[type="radio"]:checked+label,
#page-container .ck-form .input[type="checkbox"]:checked+label {
    color: var(--gray4);
}

#page-container .ck-form .input[type="checkbox"]+label i {
    border-radius: 5px;
}

/* Language Switcher Styling */
.wpml-floating-language-switcher .wpml-ls-native {
    font-family: 'Barlow Condensed', 'sans-serif';
    font-weight: 700;
    letter-spacing: 0.05em;
    font-size: 16px;
    transition: var(--transition);
}

.wpml-floating-language-switcher a.wpml-ls-link:hover .wpml-ls-native {
    color: var(--green3);
}

.wpml-floating-language-switcher li a {
    transition: var(--transition);
}

.wpml-floating-language-switcher li:nth-child(1) a.wpml-ls-link:hover {
    background-color: var(--gray11)!important;
    border-radius: 9px 9px 0 0;
}

.wpml-floating-language-switcher li:nth-child(2) a.wpml-ls-link:hover {
    background-color: var(--gray11)!important;
    border-radius:  0 0 9px 9px;
}

/*  ========================================
    === Festival Cup Holder Landing Page ===
    ========================================
*/

#ck-festival-products {
    overflow: visible;
}

/* ck-logo-row -> infinite scrolling logo's section */
/* Animated Logos */
.ck-logo-row {
    overflow: hidden;
    position: relative;
    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 10%, #000 90%, transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0, #000 10%, #000 90%, transparent 100%);
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
  }

  .ck-logo-row .et_pb_column {
    display: flex;
    align-items: center;
  }

  body.et-fb .ck-logo-row .et_pb_column {
    flex-wrap: wrap;
  }

  body:not(.et-fb) .ck-logo-row .et_pb_column {
    animation: dl-logo-scroll 40s linear infinite;
    width: max-content !important;
    /*min-width: 100%; -> made them smaller for some reason :s */
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
  }

  body:not(.et-fb) .ck-logo-row .et_pb_module {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  body:not(.et-fb) .ck-logo-row .et_pb_column:hover {
    animation-play-state: paused;
  }

  @keyframes dl-logo-scroll {
    0% {
      transform: translateX(0)
    }

    100% {
      transform: translateX(-50%)
    }
  }

/* Responsive Settings */

/* logo section h2 sizing */
@media (max-width: 444px) {
    #ck-logo-section h2 {
        font-size: 24px;
    }
}

@media (max-width: 355px) {
    #ck-logo-section h2 {
        font-size: 20px;
    }
}

/* keep columns products section */
@media (min-width: 617px) and (max-width: 980px) {
    #ck-festival-products {
        display: flex;
    }

    #ck-festival-products .et_pb_column:first-of-type {
        margin-right: 5%;
        margin-bottom: 0!important;
    }
}

/* ===================
Reusable CUPS Update
=================== */

/* 4 blurb row styling on cups product pages */
.ck-4-blurbs.et_pb_row .et_pb_column {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 100px 35px;
  justify-content: center;
}

.ck-4-blurbs.et_pb_row .et_pb_column .et_pb_blurb {
    margin-bottom: 0;
}

@media (max-width: 980px) {
    .ck-4-blurbs.et_pb_row .et_pb_column {
        gap: 75px 20px;
    }
}

@media (max-width: 767px) {
    .ck-4-blurbs.et_pb_row .et_pb_column {
        gap: 50px 15px;
    }
}
@media (max-width: 657px) {
    .ck-4-blurbs.et_pb_row .et_pb_column {
        display: block;
    }

    .ck-4-blurbs.et_pb_row .et_pb_column .et_pb_blurb:not(:last-of-type) {
        margin-bottom: 50px;
    }
}

/* Cups product page feature blurbs */
/* Flexbox display for blurb content with pee aye help */
.ck-feature-blurb .et_pb_blurb_content {
    display: flex!important;
}

/* Flexbox display for blurb container */
.ck-feature-blurb .et_pb_blurb_container {
    display: flex!important;
    justify-content: center; /* Center align blurb container horizontally */
    flex-direction: column; /* Arrange blurb container content in a column */
}

/* Flexbox display for main blurb image */
.et-db #et-boc .et-l .ck-feature-blurb .et_pb_main_blurb_image {
    display: flex;
    width: auto!important; /* Ensure blurb image width adjusts automatically */
    margin-bottom: 0px!important; /* Remove bottom margin for better alignment */
}

.ck-feature-blurb h4 {
    padding-bottom: 0;
}

/* Keep the shop benefit icons and copy aligned to the top of each blurb. */
#page-container #et-boc .ck-shop-benefits .ck-feature-blurb .et_pb_blurb_container {
    justify-content: flex-start;
}

#page-container #et-boc .ck-shop-benefits .ck-feature-blurb .et_pb_main_blurb_image {
    align-self: flex-start;
}

/* related upsells styling */
#ck-cups-upsells .up-sells > h2 {
    display: none;
}

/* #ck-cups-upsells ul.products,
#ck-cups-upsells li.product {
    margin-bottom: 0;
} */

@media (max-width: 767px) {
    #ck-cups-upsells li.product {
        margin-right: 0!important;
        width: 100%!important;
    }

/* make single product layout first section full-width */
    #ck-product-section1 {
        padding:0;
    }

    #ck-product-section1 #ck-product-display {
        width: 100%;
        border-radius: 0;
    }

    #ck-product-section1  #ck-product-display .et_pb_column {
        padding: 50px 5vw;
    }
}

/* Linktree Styles */
#linktree {
    min-height: 100vh;
}

.linktree-btn {
    min-width: 100%;
}

/*  styling tables */
/* Comparison table */
.comparison-table {
  width: 100%;
  border-collapse: collapse;
  margin: 3em 0;
  font-size: 1em;
}

.comparison-table th,
.comparison-table td {
  padding: 1em 1.25em;
  border-bottom: 1px solid var(--gray9);
  vertical-align: middle;
}

/* Header */
.comparison-table .comparison-head {
  text-align: left;
  font-weight: 800;
  border-bottom: 2px solid var(--green5);
}

table {
  border-radius: 25px 25px 0 0;
}
thead {
  border-radius: 25px 25px 0 0;
  background-color: var(--green8);
}

th:nth-child(1) {
    border-radius: 25px 0px 0px 0px!important;
}

th:nth-last-child(1) {
    border-radius: 0px 25px 0px 0px;
}

/* First column */
.comparison-label {
  font-weight: 700;
  text-align: left;
  white-space: nowrap;
}

/* Highlight Cupkeeper column */
.comparison-highlight {
  font-weight: 700;
}

/* Subtle row separation for readability */
.comparison-table tbody tr:nth-child(even) {
  background-color: var(--gray11);
}

/* Mobile friendliness */
@media (max-width: 768px) {
  .comparison-table th,
  .comparison-table td {
    padding: 0.75rem;
  }

  .comparison-label {
    white-space: normal;
  }
}

/* Mobile stacked comparison */
@media (max-width: 768px) {
  .comparison-table thead {
    display: none;
  }

  .comparison-table,
  .comparison-table tbody,
  .comparison-table tr,
  .comparison-table td {
    display: block;
    width: 100%;
  }

  .comparison-table tr {
    margin-bottom: 2rem;
    border-bottom: 2px solid #eee;
  }

  .comparison-table td {
    display: flex;
    justify-content: space-between;
    align-items: center;
    text-align: right;
    padding: 0.75rem 0;
    border: none;
  }

  .comparison-table td::before {
    content: attr(data-label);
    font-weight: 700;
    text-align: left;
    padding-right: 1rem;
  }

  /* Feature name */
  .comparison-label {
    font-size: 1.1rem;
    font-weight: 700;
    padding: 1rem 0 0.5rem;
    border-bottom: 1px solid #ddd;
  }

  .comparison-label::before {
    content: "";
  }

  /* Highlight Cupkeeper */
  .comparison-highlight {
    font-weight: 700;
  }
}

/* ===================
    === NEw 2026 Home Page Updates ===
    ================== */

/* Comparison Grid with card blurbs and image */
/* Comparison Grid with card blurbs and image */
.ck-compare .et_pb_column {
  display:grid;
  grid-template-columns: 1fr 1fr 2fr;
  grid-template-rows: auto repeat(3, 1fr); /* header + 3 equal rows */
  gap:24px;
  align-items:stretch;
}

/* pills live in the header row */
.ck-compare .ck-pill-cardboard{ grid-column:1; grid-row:1; justify-self:start; }
.ck-compare .ck-pill-cupkeeper{ grid-column:2; grid-row:1; justify-self:start; }

/* cards auto-flow into the grid in order; keep them full height */
.ck-compare .ck-card{ height:100%; }

/* image sits in column 3, spanning all rows (header + cards) */
.ck-compare .ck-image{
  grid-column:3;
  grid-row:1 / span 4;
  height:100%;
}

.ck-compare .ck-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:24px;
}

@media (max-width: 980px) {

  /* Make the whole section stack: image on top, then comparison grid */
  .ck-compare .et_pb_column {
    grid-template-columns: 1fr 1fr;           /* keep 2 columns for comparison */
    grid-template-rows: auto auto auto auto;  /* header + 3 rows */
    gap: 16px;
  }
    .ck-compare .et_pb_column .et_pb_module {
        margin-bottom: 0px;
    }

  /* Put the image first, spanning both columns */
  #page-container .ck-compare .ck-image {
    grid-column: 1 / -1;
    grid-row: 1;
    height: auto; /* don't force stretch on mobile */
    margin-bottom: 25px;
  }

  /* Give the image a nice fixed ratio so it doesnâ€™t become huge */
  .ck-compare .ck-image .et_pb_image_wrap {
    height: auto;
    aspect-ratio: 3 / 2; /* tweak: 1/1, 16/9, 3/2 */
  }

  #page-container .ck-compare .ck-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

  /* Pills become row 2, still aligned over their columns */
  .ck-compare .ck-pill {
    margin-bottom: 0;
  }

  .ck-compare .ck-pill-cardboard {
    grid-column: 1;
    grid-row: 2;
    justify-self: start;
  }

  .ck-compare .ck-pill-cupkeeper {
    grid-column: 2;
    grid-row: 2;
    justify-self: start;
  }

  .ck-card .et_pb_main_blurb_image {
    margin-bottom: 15px
}
}
