/*
Theme Name: Clinex
Theme URI: https://new.clinex.ee/
Description: Child theme for the Clinex WooCommerce store.
Author: Clinex
Template: blocksy
Version: 1.26.64
Text Domain: clinex
*/

:root {
  --clinex-green: #a8c832;
  --clinex-green-dark: #88a51d;
  --clinex-charcoal: #666666;
  --clinex-soft-gray: #f6f6f6;
  --clinex-border: #e8ece3;
  --clinex-ink: #222b30;
}

/* Fallback navigation has the same visual language as the original header.
   Keep this limited to spacing and presentation; it must not inherit Blocksy's
   default blue menu palette. */
@media (min-width: 1000px) {
  #header .header-menu-1 .menu {
    display: flex;
    align-items: center;
    gap: clamp(7px, 0.8vw, 14px);
  }

  #header .header-menu-1 .menu > li > a {
    display: flex;
    align-items: center;
    height: 100%;
    padding-inline: clamp(5px, 0.55vw, 10px);
    color: #706f6f;
    font-size: clamp(14.5px, 1.25vw, 16px);
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: 0;
    white-space: nowrap;
    transition: color .25s ease;
  }

  #header .header-menu-1 .menu > li > a:hover,
  #header .header-menu-1 .menu > li.current-menu-item > a {
    color: #95c11f;
  }
}

/* Compact Clinex cart and checkout flow. */
.woocommerce-cart .cart-collaterals,
.woocommerce-checkout form.checkout {
  max-width: 1240px;
  margin-inline: auto;
}

.clinex-cart-step,
.clinex-checkout-step-title {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 0 0 18px;
}

.clinex-cart-step > span,
.clinex-checkout-step-title > span {
  display: inline-grid;
  flex: 0 0 34px;
  width: 34px;
  height: 34px;
  place-items: center;
  border-radius: 50%;
  background: var(--clinex-green);
  color: #fff;
  font-size: 15px;
  font-weight: 800;
}

.clinex-cart-step strong,
.clinex-checkout-step-title strong {
  display: block;
  color: #26342d;
  font-size: 19px;
  line-height: 1.2;
}

.clinex-cart-step small,
.clinex-checkout-step-title small {
  display: block;
  margin-top: 3px;
  color: #77827d;
  font-size: 13px;
  line-height: 1.35;
}

.woocommerce-cart .cart_totals > h2 {
  margin-top: 24px;
}

.woocommerce-cart .cart_totals .woocommerce-shipping-totals > th,
.woocommerce-checkout .woocommerce-shipping-totals > th {
  display: none;
}

.woocommerce-cart .cart_totals .woocommerce-shipping-totals > td,
.woocommerce-checkout .woocommerce-shipping-totals > td {
  width: 100%;
  padding: 8px 0 16px;
}

.woocommerce ul#shipping_method {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  text-align: left;
}

.woocommerce ul#shipping_method li {
  position: relative;
  margin: 0;
  padding: 0;
}

.woocommerce ul#shipping_method li > input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
}

.woocommerce ul#shipping_method li > label {
  display: block;
  height: 100%;
  margin: 0;
  padding: 15px;
  border: 1px solid #dce3d7;
  border-radius: 14px;
  background: #fff;
  cursor: pointer;
  transition: border-color .2s ease, background-color .2s ease, box-shadow .2s ease;
}

.woocommerce ul#shipping_method li > input:checked + label,
.woocommerce ul#shipping_method li.is-selected > label {
  border-color: var(--clinex-green);
  background: #f8fbe9;
  box-shadow: 0 0 0 2px rgba(168, 200, 50, .14);
}

.woocommerce ul#shipping_method li > input:focus-visible + label {
  outline: 3px solid rgba(168, 200, 50, .28);
  outline-offset: 2px;
}

.clinex-delivery-label {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) auto;
  align-items: center;
  gap: 11px;
}

.clinex-delivery-label .clinex-delivery-icon {
  display: grid;
  width: 38px;
  height: 38px;
  place-items: center;
  border-radius: 10px;
  background: #edf4d5;
  color: #78951c;
}

.clinex-delivery-label svg {
  width: 22px;
  height: 22px;
  fill: currentColor;
}

.clinex-delivery-label strong,
.clinex-delivery-label small {
  display: block;
}

.clinex-delivery-label strong {
  color: #26342d;
  font-size: 15px;
  line-height: 1.2;
}

.clinex-delivery-label small {
  margin-top: 3px;
  color: #7b8580;
  font-size: 11px;
  line-height: 1.3;
}

.clinex-delivery-label small span {
  display: block;
}

.clinex-delivery-label .clinex-pickup-notice {
  margin-top: 2px;
  color: #58625d;
  font-weight: 600;
}

.clinex-delivery-label b {
  color: #78951c;
  font-size: 13px;
  white-space: nowrap;
}

.clinex-delivery-picker {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0 0 20px;
}

.clinex-delivery-picker label {
  position: relative;
  display: block;
  height: 100%;
  margin: 0;
  cursor: pointer;
}

.clinex-delivery-picker input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
}

.clinex-delivery-picker label > .clinex-delivery-label {
  height: 100%;
  padding: 15px;
  border: 1px solid #dce3d7;
  border-radius: 14px;
  background: #fff;
  transition: border-color .2s ease, background-color .2s ease, box-shadow .2s ease;
}

.clinex-delivery-picker input:checked + .clinex-delivery-label {
  border-color: var(--clinex-green);
  background: #f8fbe9;
  box-shadow: 0 0 0 2px rgba(168, 200, 50, .14);
}

.clinex-delivery-picker input:focus-visible + .clinex-delivery-label {
  outline: 3px solid rgba(168, 200, 50, .28);
  outline-offset: 2px;
}

.clinex-delivery-picker input:disabled + .clinex-delivery-label {
  cursor: wait;
  opacity: .7;
}

.woocommerce-cart .clinex-delivery-picker {
  grid-template-columns: 1fr;
  gap: 9px;
}

.woocommerce-cart .clinex-delivery-picker label > .clinex-delivery-label {
  min-height: 68px;
  padding: 13px 14px;
}

.woocommerce-cart .clinex-delivery-label strong,
.woocommerce-cart .clinex-delivery-label small {
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}

.woocommerce-checkout form.checkout {
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(440px, 1.08fr);
  column-gap: clamp(28px, 3.5vw, 46px);
  align-items: start;
}

.woocommerce-checkout form.checkout > .col2-set {
  grid-column: 1;
  width: auto;
  margin: 0;
  padding: clamp(20px, 2.3vw, 27px);
  border: 1px solid #e0e5dc;
  border-radius: 20px;
  background: #fff;
}

.woocommerce-checkout form.checkout > .col2-set .col-1 {
  float: none;
  width: 100%;
}

.woocommerce-checkout form.checkout > .col2-set .col-2,
.woocommerce-checkout .woocommerce-billing-fields > h3,
.woocommerce-checkout .woocommerce-additional-fields,
.woocommerce-checkout #ship-to-different-address {
  display: none !important;
}

.woocommerce-checkout #order_review_heading,
.woocommerce-checkout #order_review,
.woocommerce-checkout .clinex-checkout-order-title {
  grid-column: 2;
}

.woocommerce-checkout .clinex-checkout-order-title {
  grid-row: 1;
  align-self: start;
  margin: 2px 0 14px;
}

.woocommerce-checkout #order_review_heading {
  display: none;
}

.woocommerce-checkout #order_review {
  grid-row: 1;
  margin-top: 82px;
  padding: clamp(18px, 2vw, 24px);
  border: 1px solid #e0e5dc;
  border-radius: 20px;
  background: #fff;
}

.clinex-checkout-contact-title {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid #e7ebe4;
}

.clinex-checkout-customer-title {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid #e7ebe4;
}

.woocommerce-checkout .form-row[hidden],
.woocommerce-checkout [hidden] {
  display: none !important;
}

.clinex-customer-type {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.clinex-customer-type label {
  position: relative;
  display: block;
  margin: 0;
  cursor: pointer;
}

.clinex-customer-type input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
}

.clinex-customer-type label > span {
  display: block;
  min-height: 64px;
  padding: 12px 14px 11px 46px;
  border: 1px solid #dce3d7;
  border-radius: 14px;
  background: #fff;
  transition: border-color .2s ease, background-color .2s ease, box-shadow .2s ease;
}

.clinex-customer-type label > span::before,
.clinex-customer-type label > span::after {
  content: "";
  position: absolute;
  border-radius: 50%;
}

.clinex-customer-type label > span::before {
  top: 21px;
  left: 16px;
  width: 18px;
  height: 18px;
  border: 2px solid #aeb8b2;
}

.clinex-customer-type label > span::after {
  top: 26px;
  left: 21px;
  width: 8px;
  height: 8px;
  background: var(--clinex-green);
  opacity: 0;
  transform: scale(.4);
  transition: opacity .2s ease, transform .2s ease;
}

.clinex-customer-type input:checked + span {
  border-color: var(--clinex-green);
  background: #f8fbe9;
  box-shadow: 0 0 0 2px rgba(168, 200, 50, .14);
}

.clinex-customer-type input:checked + span::before {
  border-color: var(--clinex-green);
}

.clinex-customer-type input:checked + span::after {
  opacity: 1;
  transform: scale(1);
}

.clinex-customer-type input:focus-visible + span {
  outline: 3px solid rgba(168, 200, 50, .28);
  outline-offset: 2px;
}

.clinex-customer-type b,
.clinex-customer-type small {
  display: block;
}

.clinex-customer-type b {
  color: #26342d;
  font-size: 15px;
}

.clinex-customer-type small {
  margin-top: 2px;
  color: #7b8580;
  font-size: 11px;
}

.woocommerce-checkout .woocommerce-billing-fields__field-wrapper {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 12px;
}

.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row {
  float: none;
  width: auto;
  margin: 0;
  padding: 0;
}

.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-wide,
.woocommerce-checkout #billing_address_1_field,
.woocommerce-checkout #billing_legal_address_field {
  grid-column: 1 / -1;
}

.woocommerce-checkout .form-row label {
  margin: 0 0 4px;
  color: #4e5b55;
  font-size: 12px;
  font-weight: 700;
}

.woocommerce-checkout .form-row input.input-text,
.woocommerce-checkout .form-row select,
.woocommerce-checkout .select2-container .select2-selection--single {
  min-height: 44px;
  border: 1px solid #dce3d7;
  border-radius: 11px;
  background: #fbfcfa;
  box-shadow: none;
}

.woocommerce-checkout .form-row input.input-text:focus,
.woocommerce-checkout .form-row select:focus,
.woocommerce-checkout .select2-container--focus .select2-selection--single {
  border-color: var(--clinex-green);
  box-shadow: 0 0 0 3px rgba(168, 200, 50, .15);
  outline: 0;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table {
  margin: 0 0 14px;
  border: 0;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table th,
.woocommerce-checkout .woocommerce-checkout-review-order-table td {
  padding: 9px 4px;
  border-color: #e7ebe4;
}

.woocommerce-checkout .woocommerce-checkout-payment {
  border-radius: 14px;
  background: #f7f9f5;
}

.woocommerce-checkout .woocommerce-checkout-payment .payment_methods,
.woocommerce-checkout .woocommerce-checkout-payment .form-row {
  padding: 13px;
}

.clinex-checkout-delivery-summary {
  display: block;
  margin-top: 5px;
  color: #66716b;
  font-size: 12px;
  line-height: 1.35;
}

.clinex-checkout-delivery-summary b {
  color: #334038;
  font-weight: 750;
}

.clinex-checkout-delivery-summary a {
  margin-left: 6px;
  color: var(--clinex-green-dark);
  font-weight: 750;
  text-decoration: underline;
  text-underline-offset: 2px;
}

/* MakeCommerce: use the wider summary column efficiently and keep payment compact. */
.woocommerce-checkout #payment .payment_box.payment_method_makecommerce {
  margin: 8px 0 0;
  padding: 0;
}

.woocommerce-checkout #payment .makecommerce-picker {
  padding: 10px !important;
}

.woocommerce-checkout #payment .makecommerce-picker > .mb-3 {
  margin-bottom: 8px !important;
}

.woocommerce-checkout #payment .makecommerce-picker .my-3 {
  margin-top: 9px !important;
  margin-bottom: 9px !important;
  min-height: 20px;
  font-size: 13px !important;
}

.woocommerce-checkout #payment .makecommerce-picker .row.g-3 {
  --bs-gutter-x: 8px;
  --bs-gutter-y: 8px;
}

.woocommerce-checkout #payment .makecommerce-picker .payment-method-wrapper.col-6 {
  flex: 0 0 33.333333%;
  width: 33.333333%;
}

.woocommerce-checkout #payment .makecommerce-picker .payment-method {
  min-height: 44px;
  height: 44px;
}

.woocommerce-checkout #payment .makecommerce-picker .mc-payment-logo {
  max-height: 26px;
}

.woocommerce-checkout #place_order {
  width: 100%;
  min-height: 52px;
  border-radius: 12px;
  background: var(--clinex-green);
  color: #fff;
  font-weight: 800;
}

.woocommerce-checkout #place_order:hover,
.woocommerce-checkout #place_order:focus-visible {
  background: var(--clinex-green-dark);
}

.woocommerce-checkout .woocommerce-privacy-policy-text {
  color: #77827d;
  font-size: 11px;
  line-height: 1.45;
}

@media (max-width: 900px) {
  .woocommerce-checkout form.checkout {
    display: block;
  }

  .woocommerce-checkout form.checkout > .col2-set,
  .woocommerce-checkout #order_review {
    padding: 20px;
  }

  .woocommerce-checkout .clinex-checkout-order-title {
    margin-top: 26px;
  }

  .woocommerce-checkout #order_review {
    margin-top: 0;
  }

  .woocommerce-checkout #payment .makecommerce-picker .payment-method-wrapper.col-6 {
    flex-basis: 50%;
    width: 50%;
  }
}

@media (max-width: 600px) {
  .woocommerce ul#shipping_method,
  .clinex-customer-type,
  .clinex-delivery-picker {
    grid-template-columns: 1fr;
  }

  .woocommerce-checkout .woocommerce-billing-fields__field-wrapper {
    grid-template-columns: 1fr;
  }

  .woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row,
  .woocommerce-checkout #billing_address_1_field,
  .woocommerce-checkout #billing_legal_address_field {
    grid-column: 1;
  }

  .clinex-delivery-label {
    grid-template-columns: 38px minmax(0, 1fr) auto;
  }

  .woocommerce-checkout .ct-order-review {
    padding: 0 !important;
    border: 0 !important;
  }

  .woocommerce-checkout #order_review {
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
  }

  .woocommerce-checkout .woocommerce-checkout-payment {
    width: 100%;
    margin-inline: 0 !important;
    overflow: hidden;
    border: 1px solid #e2e8dc;
    border-radius: 14px;
    background: #fff;
  }

  .woocommerce-checkout .woocommerce-checkout-payment .payment_methods {
    width: 100%;
    margin: 0;
    padding: 12px !important;
    background: #fff;
  }

  .woocommerce-checkout .woocommerce-checkout-payment .wc_payment_method,
  .woocommerce-checkout .woocommerce-checkout-payment .payment_box {
    border: 0 !important;
  }

  .woocommerce-checkout #payment .payment_box.payment_method_makecommerce {
    width: 100%;
    margin-top: 7px;
  }

  .woocommerce-checkout #payment .makecommerce-picker {
    width: 100%;
    box-shadow: none !important;
  }

  .woocommerce-checkout .woocommerce-checkout-payment .place-order {
    width: 100%;
    margin: 0 !important;
    padding: 14px 12px 12px !important;
    border-top: 1px solid #e2e8dc;
    background: #f7f9f5;
  }

  .woocommerce-checkout #place_order {
    min-height: 50px;
    border-radius: 10px;
  }

  .woocommerce-checkout .woocommerce-privacy-policy-text {
    margin-bottom: 13px;
  }
}

/* Homepage informational sections */
.clinex-home-content {
  --home-ink: #253028;
  --home-copy: #5e6860;
  --home-green: #86a719;
  --home-green-dark: #637f0b;
  --home-soft: #f5f7f1;
  color: var(--home-copy);
}

.clinex-home-section {
  padding: clamp(68px, 7.5vw, 104px) clamp(20px, 4vw, 48px);
}

.clinex-home-section--soft { background: var(--home-soft); }
.clinex-home-section--compact { padding-bottom: clamp(62px, 6vw, 82px); padding-top: clamp(58px, 6vw, 82px); }
.clinex-home-shell { margin: 0 auto; max-width: 1180px; }

.clinex-home-discount {
  background: #84a51a;
  color: #fff;
  margin-top: clamp(18px, 2.5vw, 34px);
  padding: 0 24px;
}

.clinex-home-discount__inner {
  align-items: center;
  color: #fff !important;
  display: grid;
  gap: clamp(20px, 3vw, 34px);
  grid-template-columns: auto minmax(0, 1fr) auto;
  min-height: 132px;
  padding: 22px 0;
  text-decoration: none !important;
}

.clinex-home-discount__badge {
  align-items: center;
  background: #fff;
  border-radius: 50%;
  box-shadow: 0 9px 26px rgba(44, 57, 12, .18);
  color: #6c890e;
  display: flex;
  flex: 0 0 auto;
  font-size: 1.35rem;
  font-weight: 900;
  height: 72px;
  justify-content: center;
  letter-spacing: -.04em;
  width: 72px;
}

.clinex-home-discount__copy { display: block; }
.clinex-home-discount__copy strong {
  color: #fff;
  display: block;
  font-size: clamp(1.25rem, 2.15vw, 1.8rem);
  font-weight: 850;
  letter-spacing: -.025em;
  line-height: 1.16;
  margin-bottom: 8px;
}
.clinex-home-discount__copy > span { color: rgba(255, 255, 255, .88); display: block; line-height: 1.5; }
.clinex-home-discount__arrow {
  align-items: center;
  border: 1px solid rgba(255, 255, 255, .5);
  border-radius: 50%;
  display: flex;
  font-size: 1.45rem;
  height: 50px;
  justify-content: center;
  transition: background-color .2s ease, transform .2s ease;
  width: 50px;
}
.clinex-home-discount__inner:hover .clinex-home-discount__arrow { background: rgba(255, 255, 255, .14); transform: translateX(4px); }

/* Original catalogue pictograms, rebuilt as a balanced 3 × 3 navigation grid. */
.clinex-home-categories {
  background: #fff;
  padding-bottom: clamp(54px, 6vw, 78px);
  padding-top: clamp(54px, 6vw, 78px);
}
.clinex-home-category-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.clinex-home-categories__description {
  color: #59635b;
  font-size: clamp(1rem, 1.45vw, 1.16rem);
  line-height: 1.7 !important;
  margin: 0 auto clamp(30px, 4vw, 44px);
  max-width: 920px;
  text-align: center;
}
.clinex-home-category-card {
  align-items: center;
  background: #f7f8f5;
  border: 1px solid #e6eadf;
  border-radius: 16px;
  color: var(--home-ink) !important;
  display: grid;
  gap: 16px;
  grid-template-columns: 92px minmax(0, 1fr) auto;
  min-height: 132px;
  padding: 18px 18px 18px 16px;
  text-decoration: none !important;
  transition: border-color .22s ease, box-shadow .22s ease, transform .22s ease;
}
.clinex-home-category-card:hover {
  border-color: #cddba5;
  box-shadow: 0 14px 30px rgba(43, 55, 38, .09);
  transform: translateY(-3px);
}
.clinex-home-category-card__icon {
  align-items: center;
  background: var(--category-color, var(--home-green));
  border-radius: 12px;
  display: flex;
  height: 92px;
  justify-content: center;
  width: 92px;
}
.clinex-home-category-card__icon img {
  height: 74px;
  object-fit: contain;
  width: 74px;
}
.clinex-home-category-card__title {
  font-size: clamp(.93rem, 1.12vw, 1.04rem);
  font-weight: 800;
  line-height: 1.28;
  max-width: 100%;
  min-width: 0;
  overflow-wrap: normal;
  word-break: normal;
}
.clinex-home-category-card__arrow {
  color: var(--home-green);
  font-size: 20px;
  font-weight: 800;
  transition: transform .2s ease;
}
.clinex-home-category-card:hover .clinex-home-category-card__arrow { transform: translateX(3px); }

.clinex-home-content h2,
.clinex-home-content h3 {
  color: var(--home-ink);
  font-weight: 800;
}

.clinex-home-content h2 {
  font-size: clamp(2rem, 3.25vw, 3.15rem) !important;
  letter-spacing: -0.045em;
  line-height: 1.08;
  margin: 0;
  text-wrap: balance;
}

.clinex-home-content h3 {
  font-size: clamp(1.18rem, 1.6vw, 1.42rem) !important;
  letter-spacing: -0.025em;
  line-height: 1.25;
}

.clinex-home-content p { line-height: 1.75; }

.clinex-home-kicker {
  align-items: center;
  color: var(--home-green-dark);
  display: flex;
  font-size: .73rem;
  font-weight: 850;
  gap: 10px;
  letter-spacing: .16em;
  margin: 0 0 15px !important;
  text-transform: uppercase;
}

.clinex-home-kicker::before {
  background: var(--home-green);
  border-radius: 99px;
  content: "";
  height: 3px;
  width: 30px;
}

.clinex-home-heading { margin: 0 auto clamp(36px, 5vw, 56px); max-width: 850px; text-align: center; }
.clinex-home-heading .clinex-home-kicker { justify-content: center; }
.clinex-home-heading > p:last-child { font-size: 1.05rem; margin: 20px auto 0; max-width: 720px; }
.clinex-home-heading--left { margin-left: 0; max-width: 760px; text-align: left; }
.clinex-home-heading--left .clinex-home-kicker { justify-content: flex-start; }

.clinex-home-intro__grid {
  align-items: center;
  display: grid;
  gap: clamp(38px, 5vw, 72px);
  grid-template-columns: minmax(300px, .8fr) minmax(0, 1.35fr);
}

.clinex-home-intro {
  padding-bottom: clamp(42px, 4.5vw, 62px);
  padding-top: clamp(54px, 5.5vw, 76px);
}

.clinex-home-intro__visual {
  align-items: flex-end;
  display: flex;
  justify-content: center;
  min-height: 420px;
  position: relative;
}

.clinex-home-intro__orb {
  background: linear-gradient(145deg, #f2f6e9, #dfeac7);
  border-radius: 46% 54% 56% 44% / 51% 43% 57% 49%;
  height: min(31vw, 390px);
  position: absolute;
  width: min(31vw, 390px);
}

.clinex-home-intro__visual img {
  filter: drop-shadow(0 25px 24px rgba(50, 66, 38, .14));
  height: auto;
  max-height: 455px;
  max-width: 450px;
  object-fit: contain;
  position: relative;
  width: 100%;
}

.clinex-home-intro__copy h2 { margin-bottom: 21px; }
.clinex-home-intro__copy p { font-size: .98rem; line-height: 1.6; margin: 0 0 11px; }

.clinex-home-feature-grid {
  display: grid;
  gap: 22px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.clinex-home-feature {
  background: #fff;
  border: 1px solid rgba(52, 67, 50, .09);
  border-radius: 16px;
  box-shadow: 0 18px 46px rgba(45, 60, 42, .07);
  padding: clamp(28px, 3vw, 38px);
  transition: box-shadow .25s ease, transform .25s ease;
}

.clinex-home-feature:hover { box-shadow: 0 22px 52px rgba(45, 60, 42, .11); transform: translateY(-4px); }
.clinex-home-feature__icon {
  align-items: center;
  background: #ecf3d9;
  border-radius: 50%;
  color: var(--home-green-dark);
  display: inline-flex;
  font-size: 1.45rem;
  font-weight: 800;
  height: 52px;
  justify-content: center;
  margin-bottom: 27px;
  width: 52px;
}
.clinex-home-feature h3 { margin: 0 0 12px; }
.clinex-home-feature p { margin: 0; }

.clinex-home-why {
  overflow: hidden;
  padding-bottom: 0;
  padding-top: clamp(42px, 4.5vw, 62px);
}

.clinex-home-why__grid {
  align-items: end;
  display: grid;
  gap: clamp(34px, 4.5vw, 64px);
  grid-template-columns: minmax(0, 1fr) minmax(280px, 380px);
}

.clinex-home-why__copy {
  padding-bottom: clamp(46px, 5vw, 68px);
}

.clinex-home-why .clinex-home-heading {
  margin-bottom: 25px;
}

.clinex-home-benefit-list {
  display: grid;
  gap: 13px;
  grid-template-columns: 1fr;
  list-style: none;
  margin: 0;
  padding: 0;
}

.clinex-home-benefit-list li {
  align-items: flex-start;
  display: flex;
  gap: 13px;
  margin: 0;
  padding: 0;
}

.clinex-home-benefit-list li > span {
  align-items: center;
  background: #eaf2d5;
  border-radius: 50%;
  color: var(--home-green-dark);
  display: flex;
  flex: 0 0 27px;
  font-size: .82rem;
  font-weight: 900;
  height: 27px;
  justify-content: center;
  margin-top: 1px;
}

.clinex-home-benefit-list strong {
  color: var(--home-ink);
  display: block;
  font-size: 1.02rem;
  line-height: 1.28;
  margin: 1px 0 3px;
}

.clinex-home-benefit-list p {
  font-size: .91rem;
  line-height: 1.45;
  margin: 0;
}

.clinex-home-why__note {
  border-left: 3px solid var(--home-green);
  color: var(--home-ink);
  font-size: .96rem;
  line-height: 1.55;
  margin: 22px 0 0;
  max-width: 690px;
  padding-left: 19px;
}

.clinex-home-why__character {
  align-self: end;
  display: flex;
  justify-content: flex-end;
}

.clinex-home-why__character img {
  display: block;
  height: auto;
  max-height: 625px;
  mix-blend-mode: multiply;
  object-fit: contain;
  object-position: right bottom;
  width: min(100%, 380px);
}

.clinex-home-solution-grid { counter-reset: solutions; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.clinex-home-section.clinex-home-solutions {
  padding-bottom: clamp(36px, 3.6vw, 50px);
  padding-top: clamp(42px, 4.2vw, 58px);
}
.clinex-home-solutions + .clinex-home-products {
  padding-top: clamp(38px, 4vw, 54px);
}
.clinex-home-solution-grid article {
  border-left: 1px solid #dfe5da;
  min-height: 245px;
  padding: 10px clamp(24px, 3.2vw, 42px) 10px;
}
.clinex-home-solution-grid article:first-child { border-left: 0; padding-left: 0; }
.clinex-home-solution-grid article:last-child { padding-right: 0; }
.clinex-home-solution-grid article > span { color: var(--home-green); font-size: .78rem; font-weight: 850; letter-spacing: .12em; }
.clinex-home-solution-grid h3 { margin: 28px 0 15px; }
.clinex-home-solution-grid p { margin: 0; }

/* Live WooCommerce collections on the homepage. */
.clinex-home-products {
  padding-bottom: clamp(58px, 6.5vw, 88px);
  padding-top: clamp(56px, 6.5vw, 88px);
}
.clinex-home-products--sale { background: var(--home-soft); }
.clinex-home-products__heading {
  align-items: end;
  display: flex;
  gap: 28px;
  justify-content: space-between;
  margin-bottom: 28px;
}
.clinex-home-products__heading h2 { margin: 0; }
.clinex-home-products__heading .clinex-home-kicker { margin-bottom: 9px; }
.clinex-home-products__heading > a {
  color: var(--home-green-dark) !important;
  flex: 0 0 auto;
  font-size: 14px;
  font-weight: 800;
  padding-bottom: 5px;
  text-decoration: none !important;
}
.clinex-home-products__heading > a span {
  display: inline-block;
  margin-left: 7px;
  transition: transform .2s ease;
}
.clinex-home-products__heading > a:hover span { transform: translateX(4px); }
.clinex-home-product-categories {
  display: flex;
  gap: 8px;
  margin: 0 0 31px;
  overflow-x: auto;
  padding: 1px 1px 9px;
  scrollbar-width: thin;
}
.clinex-home-product-categories a {
  background: #fff;
  border: 1px solid #e1e6d9;
  border-radius: 999px;
  color: #606b63 !important;
  flex: 0 0 auto;
  font-size: 12px;
  font-weight: 750;
  line-height: 1.25;
  padding: 10px 15px;
  text-decoration: none !important;
  transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}
.clinex-home-product-categories a:hover {
  background: #afca0b;
  border-color: #afca0b;
  color: #fff !important;
}
.clinex-home-product-grid ul.products {
  display: grid !important;
  gap: 24px 18px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  list-style: none;
  margin: 0 !important;
  padding: 0 !important;
}
.clinex-home-product-grid ul.products li.product {
  align-content: start;
  background: #fff;
  border: 1px solid #e7eadf;
  border-radius: 16px;
  box-shadow: 0 7px 22px rgba(43, 55, 38, .045);
  display: grid;
  overflow: hidden;
  padding-bottom: 17px;
  position: relative;
  text-align: center;
  transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease;
}
.clinex-home-product-grid ul.products li.product:hover {
  border-color: #d5dfb5;
  box-shadow: 0 15px 34px rgba(43, 55, 38, .1);
  transform: translateY(-3px);
}
.clinex-home-product-grid li.product figure {
  background: #f5f6f2;
  border-radius: 15px 15px 12px 12px;
  margin: 0 0 17px;
  overflow: hidden;
  position: relative;
}
.clinex-home-product-grid .ct-media-container {
  aspect-ratio: 1 / 1;
  background: transparent;
  display: block;
  padding: 15px;
}
.clinex-home-product-grid .ct-media-container img {
  border-radius: 12px;
  height: 100%;
  object-fit: contain;
  transition: transform .32s ease;
  width: 100%;
}
.clinex-home-product-grid li.product:hover .ct-media-container img { transform: scale(1.035); }
.clinex-home-product-grid .woocommerce-loop-product__title {
  font-size: 14px !important;
  font-weight: 800;
  line-height: 1.35;
  margin: 0 12px 7px;
  min-height: 39px;
}
.clinex-home-product-grid .woocommerce-loop-product__title a { color: #313b40; }
.clinex-home-product-grid .woocommerce-loop-product__title a:hover { color: #71890d; }
.clinex-home-product-grid li.product > .price {
  color: #71890d;
  font-size: 17px;
  font-weight: 800;
  margin: 0 10px;
}
.clinex-home-product-grid li.product > .price del { color: #a0a6a2; font-size: 12px; font-weight: 600; }
.clinex-home-product-grid li.product > .price ins { color: #71890d; text-decoration: none; }
.clinex-home-product-grid .entry-meta { display: none; }
.clinex-home-product-grid .ct-woo-card-actions {
  align-items: stretch;
  display: grid;
  gap: 6px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  inset: auto 9px 9px;
  max-width: calc(100% - 18px);
  opacity: 0;
  pointer-events: none;
  position: absolute;
  transform: translateY(8px);
  transition: opacity .2s ease, transform .2s ease;
  width: auto;
  z-index: 3;
}
.clinex-home-product-grid li.product:hover .ct-woo-card-actions,
.clinex-home-product-grid li.product:focus-within .ct-woo-card-actions {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}
.clinex-home-product-grid .ct-woo-card-actions .button {
  align-items: center;
  background: #afca0b;
  border: 0;
  border-radius: 7px;
  box-sizing: border-box;
  color: #fff;
  display: flex;
  font-size: 10.5px;
  font-weight: 800;
  justify-content: center;
  line-height: 1;
  min-height: 42px;
  min-width: 0;
  overflow: hidden;
  padding: 9px 7px;
  position: relative;
  white-space: nowrap;
  width: 100%;
}
.clinex-home-product-grid .ct-woo-card-actions .button:hover { background: #71890d; color: #fff; }
.clinex-home-product-grid .out-of-stock-badge,
.clinex-home-product-grid span.onsale {
  background: #afca0b;
  border-radius: 50%;
  color: #fff;
  display: grid;
  font-size: 9px;
  font-weight: 850;
  height: 50px;
  left: auto;
  line-height: 1.05;
  min-height: 50px;
  min-width: 50px;
  padding: 0 !important;
  place-items: center;
  right: 11px;
  text-transform: uppercase;
  top: 11px;
  white-space: normal;
  width: 50px;
  z-index: 4;
}

@media (max-width: 900px) {
  .clinex-home-category-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .clinex-home-category-card {
    gap: 10px;
    grid-template-columns: 1fr;
    justify-items: center;
    min-height: 190px;
    padding: 17px 12px;
    text-align: center;
  }
  .clinex-home-category-card__arrow { display: none; }
  .clinex-home-product-grid ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 600px) {
  .clinex-home-categories { padding-bottom: 46px; padding-top: 46px; }
  .clinex-home-category-grid { gap: 11px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .clinex-home-category-card {
    min-height: 180px;
    padding: 15px 10px;
  }
  .clinex-home-category-card:last-child {
    grid-column: 1 / -1;
    justify-self: center;
    width: calc((100% - 11px) / 2);
  }
  .clinex-home-category-card__icon { height: 82px; width: 82px; }
  .clinex-home-category-card__icon img { height: 66px; width: 66px; }
  .clinex-home-category-card__title { font-size: clamp(.72rem, 3.15vw, .82rem); }
  .clinex-home-products__heading { align-items: flex-start; display: block; }
  .clinex-home-products__heading > a { display: inline-block; margin-top: 14px; }
  .clinex-home-product-categories { margin-inline: -20px; padding-inline: 20px; }
  .clinex-home-product-grid ul.products { gap: 14px 11px; }
  .clinex-home-product-grid ul.products li.product { border-radius: 13px; padding-bottom: 13px; }
  .clinex-home-product-grid li.product figure { margin-bottom: 13px; }
  .clinex-home-product-grid .ct-media-container { padding: 10px; }
  .clinex-home-product-grid .woocommerce-loop-product__title { font-size: 12.5px !important; margin-inline: 8px; min-height: 34px; }
  .clinex-home-product-grid li.product > .price { font-size: 15px; margin-inline: 8px; }
  .clinex-home-product-grid .ct-woo-card-actions { display: none; }
  .clinex-home-product-grid .out-of-stock-badge,
  .clinex-home-product-grid span.onsale { font-size: 8px; height: 43px; min-height: 43px; min-width: 43px; right: 7px; top: 7px; width: 43px; }
}

.clinex-home-use {
  background: #253329;
  color: rgba(255, 255, 255, .75);
  padding-bottom: clamp(48px, 4.5vw, 64px);
  padding-top: clamp(48px, 4.5vw, 64px);
}
.clinex-home-use h2 {
  color: #fff;
  font-size: clamp(2rem, 3vw, 2.75rem) !important;
  hyphens: none;
  overflow-wrap: normal;
  word-break: normal;
}
.clinex-home-use .clinex-home-kicker { color: #c5d992; }
.clinex-home-use__grid {
  align-items: center;
  display: grid;
  gap: clamp(26px, 3.5vw, 46px);
  grid-template-columns: minmax(0, 1.15fr) minmax(0, .95fr) 250px;
}
.clinex-home-use__copy { border-left: 1px solid rgba(255, 255, 255, .17); font-size: 1.06rem; padding-left: clamp(30px, 4vw, 58px); }
.clinex-home-use__copy p { line-height: 1.55; margin: 0 0 12px; }
.clinex-home-use__copy p:last-child { margin-bottom: 0; }
.clinex-home-use__character {
  align-self: end;
  display: flex;
  justify-content: center;
}
.clinex-home-use__character img {
  display: block;
  height: auto;
  max-height: 279px;
  object-fit: contain;
  width: min(100%, 250px);
}

@media (max-width: 1100px) and (min-width: 761px) {
  .clinex-home-use__grid {
    align-items: center;
    gap: 24px 42px;
    grid-template-columns: minmax(0, 1fr) 250px;
  }
  .clinex-home-use__grid > :first-child { grid-column: 1; grid-row: 1; }
  .clinex-home-use__copy {
    border-left: 0;
    border-top: 1px solid rgba(255, 255, 255, .17);
    grid-column: 1;
    grid-row: 2;
    padding: 22px 0 0;
  }
  .clinex-home-use__character { grid-column: 2; grid-row: 1 / 3; }
  .clinex-home-use__character img { max-height: 290px; width: 260px; }
}

.clinex-home-delivery { padding-bottom: clamp(52px, 6vw, 78px); padding-top: clamp(52px, 6vw, 78px); }
.clinex-home-delivery__card {
  align-items: center;
  background: linear-gradient(120deg, #edf3df, #f8faf4);
  border: 1px solid #dce6c7;
  border-radius: 22px;
  display: grid;
  gap: clamp(24px, 3vw, 42px);
  grid-template-columns: 104px minmax(0, 1fr) auto;
  padding: clamp(30px, 4vw, 54px);
}
.clinex-home-delivery__mark { align-items: center; background: var(--home-green); border-radius: 50%; display: flex; height: 92px; justify-content: center; width: 92px; }
.clinex-home-delivery__mark svg { fill: none; height: 48px; stroke: #fff; stroke-linecap: round; stroke-linejoin: round; stroke-width: 3px; width: 48px; }
.clinex-home-delivery h2 { font-size: clamp(1.75rem, 2.7vw, 2.55rem) !important; margin-bottom: 13px; }
.clinex-home-delivery p:last-child { margin: 0; max-width: 720px; }
.clinex-home-button {
  align-items: center;
  background: var(--home-green);
  border-radius: 999px;
  color: #fff !important;
  display: inline-flex;
  font-weight: 800;
  gap: 14px;
  min-height: 53px;
  padding: 12px 23px;
  text-decoration: none !important;
  white-space: nowrap;
}
.clinex-home-button:hover { background: var(--home-green-dark); }

.clinex-home-partners { align-items: stretch; display: flex; gap: 22px; justify-content: center; }
.clinex-home-partners > div {
  align-items: center;
  background: #fff;
  border: 1px solid #e0e5dc;
  border-radius: 14px;
  display: flex;
  height: 140px;
  justify-content: center;
  padding: 24px 42px;
  width: min(100%, 330px);
}
.clinex-home-partners img { filter: saturate(.9); height: auto; max-height: 82px; max-width: 220px; object-fit: contain; width: auto; }

.clinex-home-faq { background: #f5f7f1; }
.clinex-home-faq__grid { align-items: start; display: grid; gap: clamp(52px, 8vw, 110px); grid-template-columns: minmax(250px, .62fr) minmax(0, 1.38fr); }
.clinex-home-faq__heading { position: sticky; top: 125px; }
.clinex-home-faq__heading h2 { margin-bottom: 22px; }
.clinex-home-faq__heading > p:not(.clinex-home-kicker) { margin: 0 0 22px; }
.clinex-home-faq__heading > a { color: var(--home-green-dark) !important; font-weight: 800; text-decoration: none !important; }
.clinex-home-faq__heading > a span { display: inline-block; margin-left: 8px; transition: transform .2s ease; }
.clinex-home-faq__heading > a:hover span { transform: translateX(4px); }
.clinex-home-faq__items { border-top: 1px solid #d7ddd2; }
.clinex-home-faq__item { border-bottom: 1px solid #d7ddd2; }
.clinex-home-faq__item summary {
  align-items: center;
  color: var(--home-ink);
  cursor: pointer;
  display: flex;
  font-size: 1.06rem;
  font-weight: 750;
  gap: 20px;
  justify-content: space-between;
  list-style: none;
  padding: 23px 0;
}
.clinex-home-faq__item summary::-webkit-details-marker { display: none; }
.clinex-home-faq__item summary span { flex: 0 0 18px; height: 18px; position: relative; width: 18px; }
.clinex-home-faq__item summary span::before,
.clinex-home-faq__item summary span::after { background: var(--home-green); content: ""; left: 0; position: absolute; top: 8px; transition: transform .2s ease; height: 2px; width: 18px; }
.clinex-home-faq__item summary span::after { transform: rotate(90deg); }
.clinex-home-faq__item[open] summary { color: var(--home-green-dark); }
.clinex-home-faq__item[open] summary span::after { transform: rotate(0); }
.clinex-home-faq__item > div { padding: 0 44px 23px 0; }
.clinex-home-faq__item p { margin: 0; }

@media (max-width: 900px) {
  .clinex-home-intro__grid { gap: 34px; grid-template-columns: minmax(230px, .65fr) minmax(0, 1.35fr); }
  .clinex-home-intro__visual { min-height: 350px; }
  .clinex-home-feature-grid { gap: 16px; }
  .clinex-home-feature { padding: 26px 22px; }
  .clinex-home-why__grid { gap: 24px; grid-template-columns: minmax(0, 1fr) minmax(225px, 285px); }
  .clinex-home-why__character img { max-height: 530px; }
  .clinex-home-delivery__card { grid-template-columns: 78px minmax(0, 1fr); }
  .clinex-home-delivery__mark { height: 70px; width: 70px; }
  .clinex-home-delivery__mark svg { height: 38px; width: 38px; }
  .clinex-home-button { grid-column: 2; justify-self: start; }
  .clinex-home-use__grid { gap: 22px 30px; grid-template-columns: minmax(0, 1fr) 220px; }
  .clinex-home-use__character img { max-height: 245px; width: 220px; }
}

@media (max-width: 999px) {
  .clinex-home-discount { margin-top: 14px; padding: 0 20px; }
  .clinex-home-discount__inner { gap: 16px; grid-template-columns: auto minmax(0, 1fr); min-height: 0; padding: 24px 0; }
  .clinex-home-discount__badge { font-size: 1.05rem; height: 58px; width: 58px; }
  .clinex-home-discount__copy strong { font-size: 1.14rem; }
  .clinex-home-discount__copy > span { font-size: .88rem; }
  .clinex-home-discount__arrow { display: none; }
  .clinex-home-section { padding-left: 20px; padding-right: 20px; }
  .clinex-home-heading { text-align: left; }
  .clinex-home-heading .clinex-home-kicker { justify-content: flex-start; }
  .clinex-home-intro__grid { display: flex; flex-direction: column; gap: 28px; }
  .clinex-home-intro { padding-bottom: 38px; padding-top: 50px; }
  .clinex-home-intro__visual { min-height: 300px; order: 2; width: 100%; }
  .clinex-home-intro__orb { height: min(78vw, 350px); width: min(78vw, 350px); }
  .clinex-home-intro__visual img { max-height: 390px; max-width: 350px; }
  .clinex-home-feature-grid,
  .clinex-home-use__grid,
  .clinex-home-faq__grid { grid-template-columns: 1fr; }
  .clinex-home-why { padding-bottom: 0; padding-top: 38px; }
  .clinex-home-why__grid { display: block; }
  .clinex-home-why__copy { padding-bottom: 22px; }
  .clinex-home-why__character { justify-content: center; }
  .clinex-home-why__character img { max-height: 400px; width: auto; }
  .clinex-home-feature:hover { transform: none; }
  .clinex-home-solution-grid { grid-template-columns: 1fr; }
  .clinex-home-solution-grid article,
  .clinex-home-solution-grid article:first-child,
  .clinex-home-solution-grid article:last-child { border-left: 0; border-top: 1px solid #dfe5da; min-height: 0; padding: 28px 0; }
  .clinex-home-solution-grid article:first-child { border-top: 0; padding-top: 8px; }
  .clinex-home-solution-grid h3 { margin-top: 13px; }
  .clinex-home-use__grid { gap: 32px; }
  .clinex-home-use__grid > :first-child,
  .clinex-home-use__copy,
  .clinex-home-use__character { grid-column: auto; grid-row: auto; }
  .clinex-home-use__copy { border-left: 0; border-top: 1px solid rgba(255, 255, 255, .17); padding: 28px 0 0; }
  .clinex-home-use__character { justify-self: end; margin-top: -12px; width: min(66vw, 260px); }
  .clinex-home-use__character img { max-height: none; width: 100%; }
  .clinex-home-delivery__card { grid-template-columns: 1fr; }
  .clinex-home-delivery__mark { height: 68px; width: 68px; }
  .clinex-home-button { grid-column: auto; }
  .clinex-home-partners { align-items: center; flex-direction: column; }
  .clinex-home-partners > div { width: 100%; }
  .clinex-home-faq__grid { gap: 38px; }
  .clinex-home-faq__heading { position: static; }
}

@media (max-width: 420px) {
  .clinex-home-discount { padding: 0 16px; }
  .clinex-home-discount__inner { align-items: start; grid-template-columns: 48px minmax(0, 1fr); }
  .clinex-home-discount__badge { font-size: .92rem; height: 48px; width: 48px; }
  .clinex-home-discount__copy strong { font-size: 1.03rem; }
  .clinex-home-section { padding-bottom: 54px; padding-top: 54px; }
  .clinex-home-intro { padding-bottom: 34px; padding-top: 46px; }
  .clinex-home-why { padding-bottom: 0; padding-top: 34px; }
  .clinex-home-use { padding-bottom: 44px; padding-top: 44px; }
  .clinex-home-content h2 { font-size: 1.93rem !important; }
  .clinex-home-categories__description { font-size: .94rem; margin-bottom: 28px; text-align: left; }
  .clinex-home-intro__visual { min-height: 270px; }
  .clinex-home-intro__visual img { max-height: 350px; }
  .clinex-home-why__character img { max-height: 370px; }
  .clinex-home-delivery__card { border-radius: 16px; padding: 26px 22px; }
  .clinex-home-faq__item summary { font-size: .98rem; padding: 20px 0; }
  .clinex-home-faq__item > div { padding-right: 20px; }
}

body {
  color: #555;
}

.clinex-page-hero {
  background: linear-gradient(115deg, #a4c92f 0%, #9fc533 56%, #a9cb3c 100%);
  color: #fff;
}

.clinex-page-hero-inner {
  margin: 0 auto;
  max-width: 1216px;
  padding: 30px 32px 32px;
  text-align: center;
}

.clinex-page-hero h1 {
  color: #fff;
  font-size: clamp(2rem, 3vw, 2.65rem);
  font-weight: 800;
  letter-spacing: -0.035em;
  line-height: 1.05;
  margin: 0 0 10px;
  text-transform: uppercase;
}

.clinex-breadcrumbs {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  font-size: .86rem;
  gap: 9px;
  justify-content: center;
}

.clinex-page-hero .clinex-breadcrumbs { color: rgba(255, 255, 255, .82); }

.clinex-page-hero .clinex-breadcrumbs a {
  color: rgba(255, 255, 255, .94) !important;
  font-weight: 650;
  transition: color .2s ease, opacity .2s ease;
}

.clinex-page-hero .clinex-breadcrumbs a:hover,
.clinex-page-hero .clinex-breadcrumbs a:focus-visible {
  color: #25382d !important;
  opacity: 1;
  text-decoration: none;
}

.clinex-page-hero .clinex-breadcrumbs [aria-current="page"] {
  color: #fff !important;
  font-weight: 650;
}

.clinex-page-hero .clinex-breadcrumbs [aria-hidden="true"] {
  color: rgba(255, 255, 255, .62) !important;
}

body.clinex-inner-page .entry-content > .clinex-page > h1:first-child {
  display: none;
}

.clinex-terms-layout {
  display: grid;
  gap: clamp(38px, 6vw, 76px);
  grid-template-columns: minmax(190px, 240px) minmax(0, 1fr);
  margin: 56px auto 10px;
}

.clinex-terms-nav {
  align-self: start;
  border-right: 1px solid #d9ddd5;
  padding-right: 28px;
  position: sticky;
  top: 130px;
}

.clinex-terms-nav a {
  border-bottom: 1px solid #d9ddd5;
  color: #646765;
  display: block;
  font-size: 1rem;
  font-weight: 700;
  padding: 17px 0;
}

.clinex-terms-nav a:first-child {
  padding-top: 0;
}

.clinex-terms-nav a.is-active,
.clinex-terms-nav a:hover {
  color: var(--clinex-green-dark);
}

.clinex-terms-copy {
  color: #555;
  font-size: .98rem;
  line-height: 1.72;
}

.clinex-terms-copy > p:first-child {
  color: #414542;
  font-size: 1.05rem;
  margin-top: 0;
}

.clinex-terms-copy h2 {
  color: var(--clinex-ink);
  font-size: clamp(1.3rem, 2.1vw, 1.65rem);
  letter-spacing: -0.025em;
  line-height: 1.25;
  margin: 42px 0 18px;
  text-transform: uppercase;
}

.clinex-terms-copy #delivery {
  scroll-margin-top: 145px;
}

.clinex-terms-copy ul {
  margin: 18px 0 24px;
  padding-left: 1.35em;
}

.clinex-terms-copy li {
  margin-bottom: 8px;
}

.entry-content > .clinex-page {
  margin-top: 0;
}

/* Complete Clinex brand page, matching the original two-column structure. */
.clinex-original-about {
  color: #656565;
  font-size: 15px;
  line-height: 1.68;
  margin: 52px auto 18px;
  max-width: 1040px;
}

.clinex-about-intro,
.clinex-about-details,
.clinex-catalogue-block {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.clinex-about-intro {
  align-items: start;
  min-height: 0;
}

.clinex-about-mascot {
  align-self: start;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding: 14px 38px 42px 0;
  text-align: center;
}

.clinex-about-mascot img {
  height: auto;
  margin: 0 auto 42px;
  max-width: 100%;
  width: 434px;
}

.clinex-about-mascot nav {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.clinex-about-mascot a {
  color: #191919;
  font-size: 15px;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.clinex-about-mascot a:hover,
.clinex-file-link a:hover,
.clinex-catalogue-link:hover {
  color: var(--clinex-green-dark);
}

.clinex-about-copy {
  padding: 14px 0 40px 28px;
}

.clinex-original-about h2,
.clinex-original-about h3 {
  color: #313131;
  font-weight: 700;
  line-height: 1.25;
  text-transform: none;
}

.clinex-original-about h2 {
  font-size: 23px;
  letter-spacing: 0;
  margin: 0 0 15px;
}

.clinex-original-about h2:not(:first-child) {
  margin-top: 30px;
}

.clinex-original-about h3 {
  font-size: 20px;
  letter-spacing: 0;
  margin: 0 0 18px;
}

.clinex-original-about p {
  margin: 0 0 20px;
}

.clinex-photo-mosaic {
  margin: 18px 0 60px;
}

.clinex-photo-row {
  display: grid;
  gap: 30px;
  margin-bottom: 28px;
  overflow: hidden;
}

.clinex-photo-row.is-narrow-wide {
  grid-template-columns: minmax(0, 365fr) minmax(0, 645fr);
}

.clinex-photo-row.is-wide-narrow {
  grid-template-columns: minmax(0, 645fr) minmax(0, 365fr);
}

.clinex-photo-row.is-wide-last {
  grid-template-columns: minmax(0, 645fr) minmax(0, 365fr);
}

.clinex-photo-row img {
  display: block;
  height: 100%;
  min-height: 0;
  object-fit: cover;
  width: 100%;
}

.clinex-photo-mosaic:not(.clinex-photo-mosaic-second) .clinex-photo-row {
  height: clamp(300px, 41.5vw, 517px);
}

.clinex-photo-mosaic:not(.clinex-photo-mosaic-second) .clinex-photo-row:first-child {
  height: clamp(270px, 36.5vw, 456px);
}

.clinex-photo-mosaic-second .clinex-photo-row {
  height: clamp(260px, 34vw, 430px);
}

.clinex-photo-mosaic-second .clinex-photo-row.is-tall {
  height: clamp(320px, 43.5vw, 551px);
}

.clinex-about-details {
  margin: 64px 0 46px;
}

.clinex-about-detail {
  min-height: 0;
  padding: 0 42px 34px 0;
}

.clinex-about-detail:nth-child(even) {
  padding-left: 28px;
  padding-right: 0;
}

.clinex-about-detail-continuation {
  padding-top: 45px;
}

.clinex-file-link {
  margin-bottom: 8px !important;
}

.clinex-file-link a,
.clinex-catalogue-link {
  color: #181818;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.clinex-catalogue-block {
  align-items: center;
  min-height: 500px;
}

.clinex-catalogue-image img {
  display: block;
  height: auto;
  max-width: 100%;
  mix-blend-mode: multiply;
}

.clinex-catalogue-copy {
  padding-left: 28px;
}

.clinex-catalogue-copy h3 {
  margin-bottom: 24px;
}

.clinex-catalogue-link {
  display: inline-block;
}

/* Complete ecological strategy page, matching the original layout. */
.clinex-original-eco {
  color: #555;
  font-size: 15px;
  line-height: 1.55;
  margin: 48px auto 34px;
  max-width: 1040px;
}

.clinex-eco-intro {
  align-items: center;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  min-height: 480px;
}

.clinex-eco-intro-image {
  align-self: stretch;
  display: flex;
  align-items: center;
}

.clinex-eco-intro-image img {
  display: block;
  height: auto;
  max-width: 468px;
  width: 90%;
}

.clinex-eco-intro-copy {
  padding: 20px 0 20px 38px;
}

.clinex-eco-intro h2,
.clinex-eco-program h2 {
  color: #9ebf34;
  font-size: 26px;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.35;
  margin: 0 0 48px;
  text-transform: none;
}

.clinex-eco-intro-copy p {
  color: #333;
  font-size: 22px;
  line-height: 1.55;
  margin: 0;
}

.clinex-safety-grid {
  display: grid;
  gap: 0 64px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 28px 0 68px;
  position: relative;
}

.clinex-safety-grid::before {
  background: #777;
  bottom: 8px;
  content: "";
  left: 50%;
  position: absolute;
  top: 8px;
  transform: translateX(-.5px);
  width: 1px;
}

.clinex-safety-item {
  align-items: center;
  display: grid;
  gap: 22px;
  grid-template-columns: 150px minmax(0, 1fr);
  min-height: 166px;
}

.clinex-safety-item.is-right {
  grid-template-columns: minmax(0, 1fr) 150px;
}

.clinex-safety-item.is-right img {
  grid-column: 2;
  grid-row: 1;
}

.clinex-safety-item.is-right > div {
  grid-column: 1;
  grid-row: 1;
}

.clinex-safety-item img {
  display: block;
  height: 126px;
  margin: 0 auto;
  max-width: 150px;
  width: 100%;
}

.clinex-safety-item:nth-child(5) img,
.clinex-safety-item:nth-child(7) img,
.clinex-safety-item:nth-child(8) img {
  height: 120px;
  max-width: 120px;
}

.clinex-safety-item > div {
  text-align: center;
}

.clinex-safety-item h3 {
  color: #171717;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.3;
  margin: 0 0 10px;
}

.clinex-safety-item p {
  margin: 0;
}

.clinex-eco-program {
  padding-top: 10px;
  text-align: center;
}

.clinex-eco-program h2 {
  font-size: 19px;
  margin-bottom: 12px;
}

.clinex-eco-program-intro {
  color: #4b4b4b;
  font-size: 16px;
  line-height: 1.6;
  margin: 0 auto 54px;
  max-width: 1020px;
}

.clinex-eco-program-grid {
  display: grid;
  gap: 42px 38px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.clinex-eco-program-item img {
  display: block;
  height: 120px;
  margin: 0 auto 18px;
  width: 120px;
}

.clinex-eco-program-item p {
  color: #444;
  line-height: 1.35;
  margin: 0 auto;
  max-width: 210px;
}

.clinex-page h1 {
  color: var(--clinex-ink);
  font-size: clamp(2.35rem, 5vw, 4rem);
  letter-spacing: -0.045em;
  line-height: 1.02;
  margin-bottom: 1.25rem;
}

.clinex-page h2 {
  color: var(--clinex-ink);
  letter-spacing: -0.025em;
  margin-top: 2.4rem;
}

.clinex-page h3 {
  color: var(--clinex-ink);
}

.clinex-page .wp-block-columns {
  gap: 28px;
  margin-top: 32px;
}

.clinex-page .wp-block-column {
  background: #fff;
  border: 1px solid var(--clinex-border);
  border-radius: 6px;
  padding: clamp(24px, 3vw, 36px);
}

.clinex-eyebrow {
  color: var(--clinex-green-dark);
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  margin-bottom: 12px;
}

.clinex-home-hero {
  display: none !important;
}

.clinex-home-hero .wp-block-columns {
  margin-bottom: 0;
}

.clinex-home-hero h1 {
  color: var(--clinex-ink);
  font-size: clamp(2.7rem, 5.8vw, 5rem) !important;
  letter-spacing: -0.055em;
  line-height: 0.98;
  max-width: 780px;
}

.clinex-mascot img {
  display: block;
  margin: 0 auto;
  max-height: 410px;
  object-fit: contain;
}

/* Homepage hero 2.0 */
.clinex-hero-v2 {
  background: #f3f6ee;
  border-radius: 14px;
  margin-top: -25px !important;
  overflow: hidden;
  position: relative;
}

.clinex-hero-v2::before {
  background: linear-gradient(90deg, rgba(246, 249, 243, 0.96) 0%, rgba(246, 249, 243, 0.88) 62%, transparent 100%);
  content: "";
  inset: 0 auto 0 0;
  position: absolute;
  width: 50%;
  z-index: 1;
}

.clinex-hero-v2__background {
  height: 100%;
  inset: 0;
  max-width: none;
  object-fit: cover;
  object-position: right center;
  position: absolute;
  width: 100%;
  z-index: 0;
}

.clinex-hero-v2__inner {
  align-items: center;
  display: flex;
  margin: 0 auto;
  max-width: 1320px;
  min-height: clamp(520px, 43vw, 590px);
  padding: clamp(64px, 6vw, 86px) clamp(28px, 4.5vw, 64px);
  position: relative;
  z-index: 2;
}

.clinex-hero-v2__copy {
  max-width: min(50%, 610px);
}

.clinex-hero-v2__eyebrow {
  align-items: center;
  color: var(--clinex-green-dark);
  display: flex;
  font-size: 0.76rem;
  font-weight: 800;
  gap: 10px;
  letter-spacing: 0.16em;
  margin: 0 0 18px;
  text-transform: uppercase;
}

.clinex-hero-v2__eyebrow::before {
  background: var(--clinex-green);
  border-radius: 999px;
  content: "";
  height: 3px;
  width: 34px;
}

.clinex-hero-v2 h1 {
  color: var(--clinex-ink);
  font-size: clamp(3rem, 4.6vw, 4.45rem) !important;
  letter-spacing: -0.058em;
  line-height: 0.96;
  margin: 0;
  max-width: 610px;
  text-wrap: balance;
  word-break: normal;
  overflow-wrap: normal;
  hyphens: none;
}

.clinex-hero-v2__lead {
  color: #576159;
  font-size: clamp(1rem, 1.35vw, 1.15rem);
  line-height: 1.65;
  margin: 28px 0 0;
  max-width: 620px;
}

.clinex-hero-v2__actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 13px;
  margin-top: 34px;
}

.clinex-hero-v2__button {
  align-items: center;
  border: 2px solid transparent;
  border-radius: 999px;
  display: inline-flex;
  font-size: 0.94rem;
  font-weight: 800;
  gap: 14px;
  justify-content: center;
  min-height: 54px;
  padding: 12px 24px;
  text-decoration: none !important;
  transition: background-color .2s ease, border-color .2s ease, color .2s ease, transform .2s ease;
}

.clinex-hero-v2__button--primary {
  background: var(--clinex-green);
  box-shadow: 0 12px 28px rgba(131, 163, 23, 0.24);
  color: #fff !important;
}

.clinex-hero-v2__button--primary span {
  font-size: 1.18em;
  transition: transform .2s ease;
}

.clinex-hero-v2__button--secondary {
  background: rgba(255, 255, 255, 0.55);
  border-color: rgba(42, 54, 45, 0.18);
  color: var(--clinex-ink) !important;
}

.clinex-hero-v2__button:hover {
  transform: translateY(-2px);
}

.clinex-hero-v2__button--primary:hover {
  background: var(--clinex-green-dark);
}

.clinex-hero-v2__button--primary:hover span {
  transform: translateX(3px);
}

.clinex-hero-v2__button--secondary:hover {
  background: #fff;
  border-color: var(--clinex-green);
  color: var(--clinex-green-dark) !important;
}

.clinex-hero-v2__visual {
  align-items: center;
  align-self: stretch;
  display: flex;
  justify-content: center;
  min-height: 500px;
  padding: 20px 0;
  position: relative;
}

.clinex-hero-v2__halo {
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.9), rgba(223, 235, 197, 0.8));
  border: 1px solid rgba(130, 158, 52, 0.12);
  border-radius: 48% 52% 46% 54% / 54% 44% 56% 46%;
  box-shadow: 0 32px 80px rgba(42, 59, 37, 0.12);
  height: min(31vw, 455px);
  position: absolute;
  right: -4%;
  top: 45%;
  transform: translateY(-50%) rotate(-4deg);
  width: min(36vw, 520px);
}

.clinex-hero-v2__visual > img {
  border-radius: 30px;
  filter: drop-shadow(0 28px 28px rgba(45, 54, 45, 0.2));
  height: auto;
  max-width: 510px;
  mix-blend-mode: multiply;
  object-fit: contain;
  position: relative;
  transform: none;
  width: min(38vw, 510px);
  z-index: 2;
}

@media (max-width: 1024px) {
  .clinex-hero-v2__inner {
    min-height: 520px;
    padding-left: 34px;
    padding-right: 34px;
  }
  .clinex-hero-v2__copy { max-width: 50%; }
  .clinex-hero-v2 h1 { font-size: clamp(2.75rem, 5.3vw, 3.65rem) !important; }
}

@media (min-width: 761px) and (max-width: 1120px) {
  .clinex-hero-v2::before {
    background: linear-gradient(90deg, rgba(246, 249, 243, 0.98) 0%, rgba(246, 249, 243, 0.96) 58%, rgba(246, 249, 243, 0.72) 76%, rgba(246, 249, 243, 0.28) 91%, transparent 100%);
    width: 66%;
  }
  .clinex-hero-v2 h1 {
    font-size: clamp(2.9rem, 4.8vw, 3.4rem) !important;
  }
}

@media (max-width: 760px) {
  .clinex-hero-v2 {
    background: linear-gradient(180deg, #f3f6ee 0%, #f3f6ee 52%, #f6f5f0 72%, #f7f6f2 100%);
  }
  .clinex-hero-v2::before {
    background: linear-gradient(180deg, rgba(247, 249, 245, 0.26) 0%, rgba(247, 249, 245, 0.04) 55%, transparent 72%);
    inset: 0;
    width: 100%;
  }
  .clinex-hero-v2__background {
    bottom: 0;
    height: auto;
    left: auto;
    -webkit-mask-image: linear-gradient(to bottom, transparent 0, rgba(0, 0, 0, 0.35) 7%, #000 22%, #000 100%);
    mask-image: linear-gradient(to bottom, transparent 0, rgba(0, 0, 0, 0.35) 7%, #000 22%, #000 100%);
    object-fit: contain;
    right: 0;
    top: auto;
    width: clamp(760px, 180vw, 1080px);
  }
  .clinex-hero-v2__inner {
    align-items: flex-start;
    min-height: 790px;
    padding: 52px 20px 310px;
  }
  .clinex-hero-v2__copy { max-width: none; width: 100%; }
  .clinex-hero-v2__eyebrow { font-size: 0.68rem; margin-bottom: 14px; }
  .clinex-hero-v2 h1 {
    font-size: clamp(2.55rem, 11.5vw, 3.55rem) !important;
    letter-spacing: -0.052em;
    line-height: 0.97;
    max-width: 600px;
    text-wrap: pretty;
    word-break: normal;
    overflow-wrap: normal;
    hyphens: none;
  }
  .clinex-hero-v2__lead {
    font-size: 0.98rem;
    line-height: 1.58;
    margin-top: 22px;
  }
  .clinex-hero-v2__actions { gap: 10px; margin-top: 27px; }
  .clinex-hero-v2__button { min-height: 51px; padding: 11px 20px; }
}

@media (max-width: 420px) {
  .clinex-hero-v2__inner { min-height: 770px; padding: 43px 16px 290px; }
  .clinex-hero-v2__copy { min-width: 0; }
  .clinex-hero-v2__eyebrow::before { width: 25px; }
  .clinex-hero-v2 h1 {
    font-size: clamp(2.08rem, 9.2vw, 2.35rem) !important;
    letter-spacing: -0.06em;
    overflow-wrap: normal;
  }
  .clinex-hero-v2__actions { display: grid; grid-template-columns: 1fr; }
  .clinex-hero-v2__button { font-size: 0.88rem; padding-left: 16px; padding-right: 16px; width: 100%; }
}

.clinex-benefits .wp-block-columns {
  gap: 24px;
  margin-top: 32px;
}

.clinex-benefits .wp-block-column {
  border: 1px solid var(--clinex-border);
  border-top: 4px solid var(--clinex-green);
  border-radius: 5px;
  padding: 30px;
}

.clinex-story-section .wp-block-columns,
.clinex-eco-strip .wp-block-columns {
  gap: clamp(30px, 6vw, 72px);
  margin-bottom: 0;
}

.clinex-story-section img {
  border-radius: 6px;
  box-shadow: 0 18px 50px rgba(31, 43, 35, 0.12);
  width: 100%;
}

.clinex-eco-strip .wp-block-image {
  margin-bottom: 0;
}

.clinex-about-hero {
  margin: 28px 0 44px;
}

.clinex-about-hero img {
  border-radius: 7px;
  height: clamp(300px, 48vw, 470px);
  object-fit: cover;
  width: 100%;
}

.clinex-about-gallery {
  gap: 18px !important;
  margin: 28px 0 42px;
}

.clinex-about-gallery img {
  border-radius: 5px;
  height: 260px !important;
  object-fit: cover;
}

.clinex-eco-page > .wp-block-image.clinex-eco-mark {
  margin: 26px auto 34px;
  max-width: 500px;
}

.clinex-eco-page > p.has-text-align-center {
  margin-left: auto;
  margin-right: auto;
  max-width: 820px;
}

.clinex-eco-cards {
  gap: 18px;
  margin: 42px 0 18px;
}

.clinex-eco-cards + .clinex-eco-cards {
  margin-top: 18px;
}

.clinex-eco-cards .wp-block-column {
  border-top: 4px solid var(--clinex-green);
  padding: 25px 20px;
  text-align: center;
}

.clinex-eco-cards .wp-block-image {
  margin: 0 auto 18px;
  max-width: 92px;
}

.clinex-eco-cards h3 {
  font-size: 1.05rem;
  margin-top: 0;
}

.clinex-eco-cards p {
  font-size: 0.88rem;
  line-height: 1.55;
}

.clinex-eco-page .clinex-eco-program {
  border-left: 5px solid var(--clinex-green);
  margin-top: 48px;
}

/* News archive rebuilt to match the original Clinex page. */
body.blog {
  background: #fff;
}

.clinex-original-blog {
  margin: 0 auto;
  max-width: 1040px;
  padding: 48px 0 70px;
}

.clinex-news-grid {
  display: grid;
  gap: 34px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.clinex-news-card {
  border: 1px solid #f2f2f2;
  color: #706f6f;
  min-width: 0;
}

.clinex-news-card-image {
  background: #fafafa;
  color: var(--clinex-green-dark);
  display: block;
  height: 225px;
  overflow: hidden;
}

.clinex-news-card-image img {
  display: block;
  height: 100%;
  object-fit: cover;
  transition: transform .35s ease;
  width: 100%;
}

.clinex-news-card:hover .clinex-news-card-image img {
  transform: scale(1.025);
}

.clinex-news-card-content {
  padding: 15px 20px 24px;
}

.clinex-news-card time {
  color: #565656;
  display: block;
  font-size: 14px;
  line-height: 1.4;
  margin-bottom: 9px;
}

.clinex-news-card h2 {
  color: #404040;
  font-size: 20px;
  font-weight: 800;
  line-height: 1.18;
  margin: 0 0 10px;
  text-transform: uppercase;
}

.clinex-news-card h2 a {
  color: inherit;
}

.clinex-news-card h2 a:hover {
  color: #95c11f;
}

.clinex-news-card-excerpt {
  color: #706f6f;
  font-size: 15px;
  line-height: 1.55;
  margin: 0;
}

.clinex-news-pagination {
  margin-top: 42px;
  text-align: center;
}

.clinex-single-news {
  margin: 0 auto;
  max-width: 940px;
}

.clinex-single-news__media {
  background: #f5f6f3;
  border-radius: 12px;
  margin: 0 0 clamp(28px, 4vw, 46px);
  overflow: hidden;
}

.clinex-single-news__image {
  display: block;
  height: auto;
  max-height: 620px;
  object-fit: cover;
  width: 100%;
}

.single-post .comments-area,
.single-post #comments {
  display: none !important;
}

a {
  text-underline-offset: 0.15em;
}

/* One branded link palette across all public content. */
#main a:not(.button):not(.wp-element-button):not(.checkout-button):not(.clinex-news-card-image) {
  color: var(--clinex-green-dark);
  transition: color .2s ease;
}

#main a:not(.button):not(.wp-element-button):not(.checkout-button):not(.clinex-news-card-image):hover {
  color: var(--clinex-green);
}

#main .clinex-news-card h2 a {
  color: #404040 !important;
}

#main .clinex-news-card h2 a:hover {
  color: var(--clinex-green-dark) !important;
}

#main .clinex-terms-nav a {
  color: #646765 !important;
}

#main .clinex-terms-nav a.is-active,
#main .clinex-terms-nav a:hover {
  color: var(--clinex-green-dark) !important;
}

.skip-link,
.site-logo-container {
  color: var(--clinex-green-dark);
}

/* Blocksy uses blue for the current menu item by default; Clinex uses green. */
.ct-header [data-row="middle"] .menu > .menu-item > .ct-menu-link {
  color: #3a4f66 !important;
  transition: color .2s ease;
}

.ct-header [data-row="middle"] .menu > .menu-item:hover > .ct-menu-link,
.ct-header [data-row="middle"] .menu > .current-menu-item > .ct-menu-link,
.ct-header [data-row="middle"] .menu > .current-menu-ancestor > .ct-menu-link,
.ct-header [data-row="middle"] .menu > .current_page_item > .ct-menu-link {
  color: var(--clinex-green-dark) !important;
}

.ct-header [data-row="top"] {
  --theme-text-color: #fff;
  --theme-link-initial-color: #fff;
  --theme-link-hover-color: var(--clinex-green);
}

.clinex-topbar {
  background: #22282b;
  color: #e8ecee;
  font-size: 0.77rem;
}

.clinex-topbar-inner {
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
  max-width: 1290px;
  padding: 8px 30px;
}

.clinex-topbar-inner > div { display: flex; gap: 20px; }
.clinex-topbar a { color: #fff; }
.clinex-topbar a:hover { color: var(--clinex-green); }

.clinex-topbar-link {
  align-items: center;
  display: inline-flex;
  gap: 7px;
  white-space: nowrap;
}

.clinex-topbar-link svg {
  fill: currentColor;
  flex: 0 0 auto;
  height: 22px;
  width: 22px;
}

.clinex-topbar-contact .clinex-topbar-link strong {
  color: var(--clinex-green);
  font-weight: 750;
}

.clinex-topbar-actions {
  align-items: center;
}

.clinex-topbar-actions > a[aria-label] {
  align-items: center;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 50%;
  display: inline-flex;
  height: 28px;
  justify-content: center;
  transition: background-color .2s ease, border-color .2s ease, color .2s ease;
  width: 28px;
}

.clinex-topbar-actions > a[aria-label] svg {
  fill: currentColor;
  height: 16px;
  width: 16px;
}

.clinex-topbar-actions > a[aria-label]:hover {
  background: rgba(255,255,255,.08);
  border-color: var(--clinex-green);
  color: var(--clinex-green);
  transform: none;
}

/* Search, wishlist and cart form one balanced desktop tool group. */
#header [data-row="middle"] .ct-header-search,
.clinex-header-tool {
  align-items: center;
  color: #35495d;
  display: inline-flex;
  flex: 0 0 34px;
  height: 40px;
  justify-content: center;
  padding: 0;
  position: relative;
  transition: color .2s ease;
  width: 34px;
}

#header [data-row="middle"] .ct-header-search .ct-icon,
#header [data-row="middle"] .ct-header-search svg,
.clinex-header-tool svg {
  height: 20px;
  width: 20px;
}

.clinex-header-commerce {
  align-items: center;
  display: inline-flex;
  flex: 0 0 auto;
  gap: 3px;
}

.clinex-header-commerce[hidden] { display: none; }
.clinex-header-commerce--mobile { display: none; }

.clinex-header-tool svg {
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.8;
}

.clinex-header-tool:hover,
#header [data-row="middle"] .ct-header-search:hover {
  color: var(--clinex-green-dark);
}

.clinex-tool-count {
  align-items: center;
  background: var(--clinex-green);
  border: 2px solid #fff;
  border-radius: 999px;
  color: #fff;
  display: flex;
  font-size: 9px;
  font-weight: 750;
  height: 17px;
  justify-content: center;
  line-height: 1;
  min-width: 17px;
  padding: 0 3px;
  position: absolute;
  right: -1px;
  top: 1px;
}

.clinex-language-switcher {
  position: relative;
}

.clinex-language-switcher summary {
  color: #fff;
  cursor: pointer;
  list-style: none;
}

.clinex-language-switcher summary::-webkit-details-marker { display: none; }

.clinex-language-switcher > div {
  background: #fff;
  border-radius: 3px;
  box-shadow: 0 14px 35px rgba(0,0,0,.18);
  min-width: 130px;
  padding: 8px 0;
  position: absolute;
  right: 0;
  top: calc(100% + 10px);
  z-index: 10010;
}

.clinex-language-switcher > div a {
  color: var(--clinex-ink);
  display: block;
  padding: 7px 14px;
}

.clinex-language-switcher > div a:hover {
  background: var(--clinex-soft-gray);
  color: var(--clinex-green-dark);
}

#search-modal {
  --theme-form-field-background-initial-color: #fff;
  --theme-form-field-border-initial-color: rgba(56, 76, 22, .24);
  --theme-form-field-border-focus-color: #668514;
  background: linear-gradient(135deg, rgba(169, 203, 60, .98), rgba(130, 170, 27, .98));
}

#search-modal .ct-search-form-inner {
  background: #fff;
  border-radius: 4px;
  box-shadow: 0 18px 48px rgba(44, 62, 16, .22);
}

#search-modal .modal-field {
  color: #26331d;
}

#search-modal .modal-field::placeholder {
  color: #748067;
}

#search-modal .ct-search-form button[type="submit"] {
  background: #729318;
  color: #fff;
}

#search-modal .ct-search-form button[type="submit"]:hover {
  background: #5f7d10;
}

#search-modal .ct-toggle-close {
  color: #fff;
}

@media (min-width: 1000px) {
  #header.ct-header {
    position: sticky;
    top: 0;
    z-index: 9990;
  }

  body.admin-bar #header.ct-header {
    top: 32px;
  }

  #header [data-row="middle"] {
    --height: 112px;
    height: 112px;
    transition: box-shadow .38s ease, height .38s ease;
  }

  #header .site-logo-container {
    align-items: center;
    display: flex;
    height: 100%;
    position: relative;
    width: 225px;
  }

  #header .site-logo-container .default-logo {
    height: auto;
    max-height: 78px;
    max-width: 225px;
    transition: opacity .35s ease, transform .42s cubic-bezier(.22, 1, .36, 1);
    width: auto;
  }

  #header .site-logo-container::after {
    background: url("assets/clinex-logo-compact.png") left center / contain no-repeat;
    content: "";
    height: 40px;
    left: 0;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    top: 50%;
    transform: translateY(-50%) scale(.88);
    transform-origin: left center;
    width: 160px;
  }

  #header [data-row="middle"] [data-column],
  #header [data-row="middle"] .ct-container {
    height: 112px;
    min-height: 112px;
  }

  #header [data-row="middle"] [data-column],
  #header [data-row="middle"] .ct-container,
  #header .menu,
  #header .menu > li {
    align-items: center;
  }

  #header .menu > li {
    display: flex;
    height: 100%;
  }

  #header .menu > li > a {
    align-items: center;
    display: flex;
    font-size: 15px;
    font-weight: 650;
    height: 100%;
    letter-spacing: .015em;
    line-height: 1.2;
    transition: color .25s ease, opacity .25s ease;
  }

  @supports (animation-timeline: scroll()) {
    @keyframes clinex-row-shrink {
      from { height: 112px; box-shadow: 0 0 0 rgba(28, 36, 33, 0); }
      to { height: 80px; box-shadow: 0 8px 24px rgba(28, 36, 33, .10); }
    }

    @keyframes clinex-inner-shrink {
      from { height: 112px; min-height: 112px; }
      to { height: 80px; min-height: 80px; }
    }

    @keyframes clinex-logo-tagline-out {
      from {
        clip-path: inset(74.16% 0 0 0);
        opacity: 1;
        width: 225px;
      }
      45% { opacity: 0; }
      to {
        clip-path: inset(74.16% 0 0 0);
        opacity: 0;
        width: 160px;
      }
    }

    @keyframes clinex-logo-word-transform {
      from {
        opacity: 1;
        height: 54px;
        transform: translateY(-36px);
        width: 225px;
      }
      to {
        opacity: 1;
        height: 39px;
        transform: translateY(-19.5px);
        width: 160px;
      }
    }

    @keyframes clinex-logo-link-shrink {
      from { width: 225px; }
      to { width: 160px; }
    }

    #header [data-row="middle"] {
      animation: clinex-row-shrink cubic-bezier(.4, 0, .2, 1) both;
      animation-range: 24px 180px;
      animation-timeline: scroll(root);
      overflow: hidden;
    }

    #header [data-row="middle"] .ct-container,
    #header [data-row="middle"] [data-column] {
      animation: clinex-inner-shrink cubic-bezier(.4, 0, .2, 1) both;
      animation-range: 24px 180px;
      animation-timeline: scroll(root);
    }

    #header .site-logo-container {
      animation: clinex-logo-link-shrink cubic-bezier(.4, 0, .2, 1) both;
      animation-range: 30px 180px;
      animation-timeline: scroll(root);
    }

    #header .site-logo-container .default-logo {
      animation: clinex-logo-tagline-out cubic-bezier(.4, 0, .2, 1) both;
      animation-range: 30px 180px;
      animation-timeline: scroll(root);
      transform-origin: left center;
    }

    #header .site-logo-container::after {
      animation: clinex-logo-word-transform cubic-bezier(.4, 0, .2, 1) both;
      animation-range: 30px 180px;
      animation-timeline: scroll(root);
      background-size: 100% auto;
      top: 50%;
    }
  }
}

@media (min-width: 1000px) and (max-width: 1220px) {
  #header [data-row="middle"] [data-column="end"],
  #header [data-row="middle"] [data-column="end"] [data-items="primary"],
  #header .header-menu-1 {
    min-width: 0;
  }

  #header [data-row="middle"] [data-column="end"] [data-items="primary"] {
    gap: clamp(10px, calc(3.636vw - 26.36px), 18px);
  }

  #header .site-logo-container,
  #header .site-logo-container .default-logo {
    max-width: clamp(135px, calc(31.818vw - 183.18px), 205px);
  }

  #header .site-logo-container {
    width: clamp(135px, calc(31.818vw - 183.18px), 205px);
  }

  #header .site-logo-container .default-logo {
    animation: none !important;
    opacity: 0;
    visibility: hidden;
  }

  #header .site-logo-container::after {
    animation: none !important;
    height: clamp(27px, calc(4.09vw - 13.9px), 36px);
    max-width: none;
    opacity: 1;
    transform: translateY(-50%);
    width: clamp(112px, calc(17.27vw - 60.7px), 150px);
  }

  #header .menu > li > a {
    font-size: clamp(13.2px, calc(.818vw + 5.02px), 15px);
    letter-spacing: 0;
    padding-inline: clamp(5.5px, calc(3.182vw - 26.32px), 12.5px);
  }
}

@media (max-width: 999px) {
  .clinex-topbar { display: none; }

  #header {
    box-shadow: 0 5px 18px rgba(31, 39, 35, .1);
    position: sticky;
    top: 0;
    z-index: 10000;
  }

  body.admin-bar #header { top: 46px; }

  #header [data-device="mobile"] [data-row="middle"] {
    background: #fff;
  }

  .clinex-header-commerce--desktop { display: none !important; }

  #header [data-device="mobile"] [data-column="end"] [data-items="primary"] {
    align-items: center;
    gap: 2px;
  }

  .clinex-header-commerce--mobile {
    display: inline-flex;
    gap: 1px;
  }

  #header [data-device="mobile"] .clinex-header-tool,
  #header [data-device="mobile"] .clinex-mobile-search {
    flex-basis: 30px;
    height: 38px;
    width: 30px;
  }

  #header [data-device="mobile"] .clinex-header-tool svg,
  #header [data-device="mobile"] .clinex-mobile-search svg {
    height: 18px;
    width: 18px;
  }

  #header [data-device="mobile"] .clinex-tool-count {
    border-width: 1.5px;
    font-size: 8px;
    height: 15px;
    min-width: 15px;
    right: -1px;
    top: 2px;
  }

  #offcanvas .ct-panel-inner {
    background: #1d2225;
    box-shadow: -18px 0 60px rgba(0, 0, 0, .25);
  }

  #offcanvas .ct-panel-actions {
    padding: 18px 20px 0;
  }

  #offcanvas .ct-toggle-close {
    align-items: center;
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 50%;
    color: #fff;
    display: flex;
    height: 40px;
    justify-content: center;
    outline: none;
    transition: border-color .2s ease, color .2s ease, transform .2s ease;
    width: 40px;
  }

  #offcanvas .ct-toggle-close:hover {
    border-color: var(--clinex-green);
    color: var(--clinex-green);
    transform: rotate(90deg);
  }

  #offcanvas .ct-panel-content-inner {
    align-items: stretch;
    padding: 8px 26px 28px;
  }

  #offcanvas .mobile-menu { display: none !important; }

  .clinex-mobile-nav {
    color: #fff;
    display: flex;
    flex-direction: column;
    min-height: calc(100vh - 92px);
    width: 100%;
  }

  .clinex-mobile-nav[hidden] { display: none; }

  .clinex-mobile-nav-logo {
    display: inline-block;
    margin: 0 0 24px;
    width: 132px;
  }

  .clinex-mobile-nav-logo img {
    display: block;
    filter: brightness(0) invert(1);
    height: auto;
    opacity: .96;
    width: 100%;
  }

  .clinex-mobile-nav-list {
    list-style: none;
    margin: 0;
    padding: 0;
  }

  .clinex-mobile-nav-list li {
    border-bottom: 1px solid rgba(255, 255, 255, .1);
    margin: 0;
  }

  .clinex-mobile-nav-list a {
    align-items: center;
    color: #fff;
    display: flex;
    font-size: 16px;
    font-weight: 720;
    letter-spacing: .025em;
    min-height: 52px;
    padding: 11px 2px;
    text-transform: uppercase;
    transition: color .2s ease, padding-left .2s ease;
  }

  .clinex-mobile-nav-list a:hover,
  .clinex-mobile-nav-list a.is-current {
    color: var(--clinex-green);
    padding-left: 7px;
  }

  .clinex-mobile-nav-meta {
    border-top: 1px solid rgba(255, 255, 255, .16);
    display: grid;
    gap: 3px;
    margin-top: auto;
    padding-top: 20px;
  }

  .clinex-mobile-nav-meta a {
    align-items: center;
    color: rgba(255, 255, 255, .78);
    display: flex;
    font-size: 14px;
    gap: 10px;
    min-height: 34px;
  }

  .clinex-mobile-nav-meta a:hover { color: var(--clinex-green); }

  .clinex-mobile-nav-meta svg {
    fill: currentColor;
    height: 18px;
    width: 18px;
  }

  .clinex-mobile-nav-meta .clinex-language-switcher summary {
    align-items: center;
    color: rgba(255, 255, 255, .78);
    display: flex;
    font-size: 14px;
    min-height: 34px;
  }

  .clinex-mobile-nav-meta .clinex-language-switcher > div {
    background: transparent;
    box-shadow: none;
    min-width: 0;
    padding: 2px 0 5px 18px;
    position: static;
  }

  .clinex-mobile-nav-meta .clinex-language-switcher > div a {
    padding: 3px 0;
  }

  #header [data-device="mobile"] .site-logo-container {
    display: block;
    height: 38px;
    position: relative;
    width: 142px;
  }

  #header [data-device="mobile"] .site-logo-container .default-logo {
    display: none;
  }

  #header [data-device="mobile"] .site-logo-container::after {
    background: url("assets/clinex-logo-compact.png") center / contain no-repeat;
    content: "";
    inset: 0;
    position: absolute;
  }
}

@media (min-width: 783px) and (max-width: 999px) {
  body.admin-bar #header { top: 32px; }
}

.woocommerce-loop-product__title,
.product_title,
.woocommerce-products-header__title {
  letter-spacing: -0.02em;
}

.woocommerce span.onsale {
  background: var(--clinex-green);
  color: #fff;
}

.woocommerce-message,
.woocommerce-info {
  border-color: var(--clinex-green);
}

button,
.button,
.wp-element-button,
.woocommerce a.button,
.woocommerce button.button {
  border-radius: 2px;
}

.clinex-contact-form {
  background: transparent;
  margin: 0;
  padding: 0;
}

.clinex-contact-form h2 {
  color: #404040;
  font-size: 27px;
  font-weight: 800;
  line-height: 1.2;
  margin-bottom: 22px;
  margin-top: 0;
  text-transform: uppercase;
}

.clinex-form-grid {
  display: block;
}

.clinex-contact-form label {
  color: var(--clinex-ink);
  display: block;
  font-size: 0.92rem;
  font-weight: 650;
  margin-bottom: 7px;
}

.clinex-contact-form input:not([type="checkbox"]),
.clinex-contact-form textarea {
  background: #fafafa;
  border: 1px solid #aaa;
  border-radius: 0;
  min-height: 44px;
  padding: 9px 11px;
  width: 100%;
}

.clinex-contact-form textarea { min-height: 82px; resize: vertical; }

.clinex-contact-form p { margin: 0 0 12px; }

.clinex-contact-form input:focus,
.clinex-contact-form textarea:focus {
  border-color: var(--clinex-green-dark);
  box-shadow: 0 0 0 2px rgba(168, 200, 50, 0.2);
}

.clinex-contact-form .clinex-consent label {
  color: #555;
  font-size: 0.85rem;
  font-weight: 400;
}

.clinex-contact-form .wp-element-button {
  background: var(--clinex-green);
  min-width: 100px;
  padding: 11px 24px;
}

.clinex-original-contact {
  background: #fff;
  color: #606060;
  margin-bottom: -60px;
  margin-top: -60px;
  padding-top: 46px;
}

.clinex-contact-page .clinex-site-footer { margin-top: 0; }
.clinex-contact-page #main { background: #fff; }
.clinex-contact-page #main > .ct-container-full {
  padding-bottom: 0;
  padding-top: 0;
}

.clinex-contact-inner {
  margin: 0 auto;
  max-width: 1040px;
}

.clinex-contact-intro {
  font-size: 15px;
  line-height: 1.65;
  margin: 0 auto 48px;
  max-width: 1030px;
  text-align: center;
}

.clinex-contact-intro p { margin: 0 0 7px; }

.clinex-contact-main {
  display: grid;
  gap: 60px;
  grid-template-columns: minmax(0, .86fr) minmax(0, 1.15fr);
  margin-bottom: 34px;
}

.clinex-contact-company {
  background: #f7f7f7;
  padding: 46px 40px 40px;
}

.clinex-contact-company h2,
.clinex-contact-company h3 {
  color: #202020;
  font-weight: 800;
  text-transform: uppercase;
}

.clinex-contact-company h2 { font-size: 19px; margin: 0 0 18px; }
.clinex-contact-company h3 { font-size: 19px; margin: 48px 0 17px; }
.clinex-contact-company p { font-size: 15px; line-height: 1.6; margin: 0 0 16px; }
.clinex-contact-company strong { color: #444; }

.clinex-contact-facts {
  border-bottom: 1px solid #e1e1e1;
  border-top: 1px solid #e1e1e1;
  display: grid;
  gap: 24px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 30px 4px;
}

.clinex-contact-fact {
  align-items: center;
  display: grid;
  gap: 14px;
  grid-template-columns: 32px minmax(0, 1fr);
}

.clinex-contact-fact svg {
  fill: none;
  height: 30px;
  stroke: var(--clinex-green);
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.8;
  width: 30px;
}

.clinex-contact-fact h3 { color: #222; font-size: 16px; margin: 0 0 3px; }
.clinex-contact-fact p { font-size: 14px; line-height: 1.35; margin: 0; }

.clinex-contact-socials {
  align-items: center;
  display: flex;
  gap: 28px;
  justify-content: center;
  padding: 31px 0 36px;
}

#main .clinex-contact-socials a { color: #707070; }
#main .clinex-contact-socials a:hover { color: var(--clinex-green-dark); }
.clinex-contact-socials svg { fill: currentColor; height: 30px; width: 30px; }

.clinex-contact-map {
  height: 400px;
  margin-left: calc(50% - 50vw);
  width: 100vw;
}

.clinex-contact-map iframe {
  border: 0;
  display: block;
  height: 100%;
  width: 100%;
}

.clinex-form-notice {
  border-left: 4px solid;
  margin-bottom: 24px;
  padding: 14px 18px;
}

.clinex-form-notice.is-success { background: #f1f8dc; border-color: var(--clinex-green-dark); }
.clinex-form-notice.is-error { background: #fff0f0; border-color: #b73a3a; }
.clinex-honeypot { left: -10000px; position: absolute; }

.ct-footer { display: none; }

.clinex-site-footer {
  background: #22282b;
  color: #c9d0d2;
  margin-top: 72px;
}

.clinex-footer-grid {
  display: grid;
  gap: 44px;
  grid-template-columns: 1.5fr 0.75fr 0.9fr 1fr;
  margin: 0 auto;
  max-width: 1290px;
  padding: 64px 30px 48px;
}

.clinex-site-footer h3 { color: #fff; font-size: 1rem; margin: 0 0 20px; }
.clinex-site-footer p { color: #c9d0d2; font-size: 0.92rem; line-height: 1.7; }
.clinex-site-footer nav a { color: #c9d0d2; display: block; font-size: 0.92rem; margin: 0 0 11px; }
.clinex-site-footer a { color: #eef3e4; }
.clinex-site-footer a:hover { color: var(--clinex-green); }
.clinex-footer-logo {
  display: inline-block;
  margin-bottom: 8px;
}
.clinex-footer-logo img {
  display: block;
  filter: brightness(0) invert(1);
  height: auto;
  max-width: 195px;
  opacity: .94;
}
.clinex-socials { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 24px; }
.clinex-socials a {
  align-items: center;
  border: 1px solid rgba(255,255,255,.24);
  border-radius: 50%;
  display: inline-flex;
  height: 36px;
  justify-content: center;
  transition: background-color .2s ease, border-color .2s ease, color .2s ease, transform .2s ease;
  width: 36px;
}
.clinex-socials svg { fill: currentColor; height: 18px; width: 18px; }
.clinex-socials a:hover {
  background: rgba(255,255,255,.08);
  border-color: var(--clinex-green);
  transform: translateY(-2px);
}

.clinex-footer-bottom {
  border-top: 1px solid rgba(255,255,255,.1);
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
  max-width: 1290px;
  padding: 20px 30px;
  font-size: 0.78rem;
}

.clinex-cookie-banner {
  align-items: center;
  background: #fff;
  border: 1px solid var(--clinex-border);
  border-radius: 5px;
  bottom: 22px;
  box-shadow: 0 16px 50px rgba(25, 34, 30, 0.18);
  display: flex;
  gap: 28px;
  justify-content: space-between;
  left: 50%;
  max-width: 780px;
  padding: 18px 20px;
  position: fixed;
  transform: translateX(-50%);
  width: calc(100% - 40px);
  z-index: 99999;
}

.clinex-cookie-banner[hidden] { display: none; }
.clinex-cookie-banner strong { color: var(--clinex-ink); display: block; margin-bottom: 3px; }
.clinex-cookie-banner span { font-size: 0.84rem; line-height: 1.45; }
.clinex-cookie-banner a { color: var(--clinex-green-dark); }
.clinex-cookie-banner a:hover { color: var(--clinex-green); }
.clinex-cookie-banner button { background: var(--clinex-green); color: #fff; flex: 0 0 auto; min-height: 42px; padding: 8px 20px; }
.clinex-cookie-banner button:hover { background: var(--clinex-green-dark); }

@media (max-width: 900px) {
  .clinex-contact-inner { padding-left: 24px; padding-right: 24px; }
  .clinex-contact-main { gap: 34px; }
  .clinex-contact-company { padding: 38px 30px 34px; }
  .clinex-contact-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .clinex-original-blog { padding-left: 24px; padding-right: 24px; }
  .clinex-news-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .clinex-footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .clinex-terms-layout { grid-template-columns: 1fr; }
  .clinex-terms-nav {
    border-right: 0;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    padding-right: 0;
    position: static;
  }
  .clinex-terms-nav a { border-right: 1px solid #d9ddd5; padding: 14px; }
  .clinex-terms-nav a:first-child { padding-top: 14px; }
  .clinex-terms-nav a:last-child { border-right: 0; }
  .clinex-original-about { margin-top: 38px; }
  .clinex-about-intro { min-height: 0; }
  .clinex-about-mascot { padding: 20px 28px 45px 0; }
  .clinex-about-copy { padding-left: 22px; }
  .clinex-photo-row { gap: 18px; margin-bottom: 18px; }
  .clinex-about-detail { padding-right: 28px; }
  .clinex-about-detail:nth-child(even),
  .clinex-catalogue-copy { padding-left: 22px; }
  .clinex-eco-intro-copy { padding-left: 25px; }
  .clinex-safety-grid { gap: 0 34px; }
  .clinex-safety-item { gap: 14px; grid-template-columns: 112px minmax(0, 1fr); }
  .clinex-safety-item.is-right { grid-template-columns: minmax(0, 1fr) 112px; }
  .clinex-safety-item img { height: 105px; max-width: 112px; }
  .clinex-eco-program-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 600px) {
  .clinex-original-contact { padding-top: 34px; }
  .clinex-contact-inner { padding-left: 16px; padding-right: 16px; }
  .clinex-contact-intro { font-size: 14px; margin-bottom: 34px; }
  .clinex-contact-main { gap: 34px; grid-template-columns: 1fr; margin-bottom: 34px; }
  .clinex-contact-company { padding: 32px 24px 28px; }
  .clinex-contact-company h3 { margin-top: 34px; }
  .clinex-contact-form h2 { font-size: 23px; }
  .clinex-contact-facts { gap: 0; grid-template-columns: 1fr; padding: 14px 0; }
  .clinex-contact-fact { border-bottom: 1px solid #ececec; padding: 16px 4px; }
  .clinex-contact-fact:last-child { border-bottom: 0; }
  .clinex-contact-socials { gap: 24px; padding: 27px 0 31px; }
  .clinex-contact-map { height: 330px; }
  .clinex-original-blog { padding: 34px 16px 52px; }
  .clinex-news-grid { gap: 22px; grid-template-columns: 1fr; }
  .clinex-news-card-image { height: 225px; }
  .clinex-news-card-content { padding: 15px 18px 22px; }
  .clinex-news-card h2 { font-size: 18px; }
  .clinex-form-grid,
  .clinex-footer-grid { grid-template-columns: 1fr; }
  .clinex-footer-bottom { align-items: flex-start; flex-direction: column; gap: 7px; }
  .clinex-page .wp-block-column { padding: 22px; }
  .clinex-home-hero { padding-top: 50px !important; }
  .clinex-home-hero h1 { font-size: clamp(2.5rem, 13vw, 3.8rem) !important; }
  .clinex-mascot img { max-height: 300px; }
  .clinex-about-gallery img { height: 220px !important; }
  .clinex-eco-page .clinex-eco-program { padding: 28px !important; }
  .clinex-topbar-inner { align-items: center; padding: 7px 18px; }
  .clinex-topbar-inner > div:first-child { gap: 12px; }
  .clinex-topbar-inner > div:last-child { display: none; }
  .clinex-cookie-banner { align-items: stretch; flex-direction: column; gap: 14px; }
  .clinex-page-hero-inner { padding: 25px 20px 27px; }
  .clinex-page-hero h1 { font-size: 1.85rem; }
  .clinex-terms-layout { margin-top: 34px; }
  .clinex-terms-nav { grid-template-columns: 1fr; }
  .clinex-terms-nav a { border-right: 0; padding: 12px 0; }
  .clinex-terms-nav a:first-child { padding-top: 0; }
  .clinex-original-about {
    font-size: 14px;
    line-height: 1.65;
    margin-top: 28px;
  }
  .clinex-about-intro,
  .clinex-about-details,
  .clinex-catalogue-block {
    grid-template-columns: 1fr;
  }
  .clinex-about-mascot {
    padding: 12px 0 44px;
  }
  .clinex-about-mascot img {
    margin-bottom: 28px;
    width: min(82vw, 390px);
  }
  .clinex-about-copy,
  .clinex-about-detail,
  .clinex-about-detail:nth-child(even),
  .clinex-catalogue-copy {
    padding-left: 0;
    padding-right: 0;
  }
  .clinex-about-detail-continuation { padding-top: 0; }
  .clinex-original-about h2 { font-size: 21px; }
  .clinex-original-about h3 { font-size: 19px; }
  .clinex-photo-mosaic { margin-bottom: 42px; }
  .clinex-photo-row,
  .clinex-photo-row.is-narrow-wide,
  .clinex-photo-row.is-wide-narrow,
  .clinex-photo-row.is-wide-last {
    gap: 12px;
    grid-template-columns: 1fr 1fr;
    height: 220px !important;
    margin-bottom: 12px;
  }
  .clinex-photo-row.is-wide-last {
    grid-template-columns: 1fr;
  }
  .clinex-photo-row.is-wide-last img {
    width: 100%;
  }
  .clinex-photo-mosaic-second .clinex-photo-row.is-tall { height: 280px !important; }
  .clinex-about-details { margin-top: 45px; }
  .clinex-catalogue-block { min-height: 0; }
  .clinex-catalogue-image { text-align: center; }
  .clinex-catalogue-image img { margin: 0 auto 32px; max-width: 360px; width: 86%; }
  .clinex-catalogue-copy { padding-bottom: 24px; text-align: center; }
  .clinex-original-eco { margin-top: 28px; }
  .clinex-eco-intro { grid-template-columns: 1fr; min-height: 0; }
  .clinex-eco-intro-image { justify-content: center; }
  .clinex-eco-intro-image img { max-width: 410px; width: 100%; }
  .clinex-eco-intro-copy { padding: 24px 0 40px; text-align: center; }
  .clinex-eco-intro h2 { font-size: 23px; margin-bottom: 22px; }
  .clinex-eco-intro-copy p { font-size: 18px; }
  .clinex-safety-grid { gap: 0; grid-template-columns: 1fr; margin-bottom: 46px; }
  .clinex-safety-grid::before { display: none; }
  .clinex-safety-item,
  .clinex-safety-item.is-right {
    border-bottom: 1px solid #dfe4d9;
    gap: 18px;
    grid-template-columns: 92px minmax(0, 1fr);
    min-height: 140px;
  }
  .clinex-safety-item.is-right img,
  .clinex-safety-item.is-right > div {
    grid-column: auto;
    grid-row: auto;
  }
  .clinex-safety-item img,
  .clinex-safety-item:nth-child(5) img,
  .clinex-safety-item:nth-child(7) img,
  .clinex-safety-item:nth-child(8) img {
    height: 86px;
    max-width: 92px;
  }
  .clinex-safety-item > div { text-align: left; }
  .clinex-eco-program h2 { font-size: 18px; }
  .clinex-eco-program-intro { font-size: 15px; margin-bottom: 38px; }
  .clinex-eco-program-grid { gap: 34px 18px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .clinex-eco-program-item img { height: 100px; width: 100px; }
}

/* WooCommerce catalogue — legacy Clinex composition, rebuilt responsively. */
body.woocommerce-shop,
body.tax-product_cat,
body.single-product {
  --shop-green: #a7c72d;
  --shop-green-dark: #819d17;
  --shop-ink: #283238;
  --shop-muted: #7b8386;
  --shop-line: #e4e7e2;
  --shop-image: #f7f8f6;
}

body.woocommerce-shop .hero-section,
body.tax-product_cat .hero-section {
  display: none !important;
}

body.woocommerce-shop .hero-section .entry-header,
body.tax-product_cat .hero-section .entry-header {
  align-items: initial;
  display: block;
  max-width: 1180px;
  min-height: 0 !important;
  padding: 0 0 0 330px !important;
  width: calc(100% - 40px);
}

body.woocommerce-shop .hero-section .page-title,
body.tax-product_cat .hero-section .page-title {
  color: var(--shop-green);
  font-size: clamp(29px, 3vw, 42px);
  font-weight: 850;
  letter-spacing: -.035em;
  line-height: 1.08;
  margin: 0;
  text-transform: uppercase;
}

body.woocommerce-shop .site-main > .ct-container,
body.tax-product_cat .site-main > .ct-container {
  max-width: 1180px;
  padding-bottom: 76px;
  padding-top: 48px;
}

body.woocommerce-shop .site-main > .ct-container > section,
body.tax-product_cat .site-main > .ct-container > section {
  align-items: start;
  display: grid;
  gap: 0 58px;
  grid-template-columns: 272px minmax(0, 1fr);
}

.clinex-shop-sidebar {
  grid-column: 1;
  grid-row: 1 / span 9;
}

body.woocommerce-shop .woocommerce-products-header,
body.tax-product_cat .woocommerce-products-header { display: none; }

.clinex-shop-title {
  color: var(--shop-green);
  font-size: clamp(29px, 3vw, 42px);
  font-weight: 850;
  grid-column: 2;
  grid-row: 1;
  letter-spacing: -.035em;
  line-height: 1.08;
  margin: 0 0 20px;
  text-transform: uppercase;
}

.clinex-shop-sidebar details > summary {
  color: var(--shop-green-dark);
  cursor: default;
  font-size: 17px;
  font-weight: 800;
  list-style: none;
  padding: 0 0 16px;
}

.clinex-shop-sidebar details > summary::-webkit-details-marker { display: none; }
.clinex-shop-sidebar details:not([open]) ul { display: block; }
.clinex-shop-sidebar ul { list-style: none; margin: 0; padding: 0; }
.clinex-shop-sidebar li { border-top: 1px solid var(--shop-line); margin: 0; }
.clinex-shop-sidebar li:last-child { border-bottom: 1px solid var(--shop-line); }
.woocommerce .clinex-shop-sidebar a {
  color: #555d60;
  display: block;
  font-size: 15px;
  font-weight: 650;
  line-height: 1.28;
  padding: 17px 2px;
  position: relative;
  transition: background-color .28s ease, color .28s ease, text-shadow .28s ease;
}
#main .clinex-shop-sidebar a {
  transition: background-color .28s ease, color .28s ease, text-shadow .28s ease !important;
}
.woocommerce .clinex-shop-sidebar a:not(.is-current) { color: #555d60 !important; }
.woocommerce .clinex-shop-sidebar a:hover,
.woocommerce .clinex-shop-sidebar a.is-current {
  color: var(--shop-green-dark) !important;
  text-shadow: .25px 0 currentColor;
}

@media (min-width: 768px) {
  .clinex-shop-sidebar details > summary {
    display: none;
  }

  .woocommerce .clinex-shop-sidebar a::before {
    color: #a1a7a3;
    content: "›";
    font-size: 20px;
    font-weight: 500;
    left: 2px;
    line-height: 1;
    opacity: 0;
    position: absolute;
    top: 50%;
    transform: translate(-5px, -52%);
    transition: opacity .28s ease, transform .28s cubic-bezier(.22, .61, .36, 1);
  }

  .woocommerce .clinex-shop-sidebar a {
    padding-left: 21px;
  }

  .woocommerce .clinex-shop-sidebar a:hover,
  .woocommerce .clinex-shop-sidebar a.is-current {
    background-color: rgba(163, 203, 37, .055);
  }

  .woocommerce .clinex-shop-sidebar a:hover::before,
  .woocommerce .clinex-shop-sidebar a.is-current::before {
    opacity: 1;
    transform: translate(0, -52%);
  }
}

.clinex-shop-breadcrumb {
  align-items: center;
  color: #9ba09d;
  display: flex;
  font-size: 13px;
  gap: 11px;
  grid-column: 2;
  grid-row: 2;
  margin-bottom: 22px;
}
.clinex-shop-breadcrumb a { color: #858c88; }
.clinex-shop-breadcrumb a:hover { color: var(--shop-green-dark); }

.clinex-shop-description {
  color: #626a66;
  font-size: 15px;
  grid-column: 2;
  grid-row: 3;
  line-height: 1.65;
  margin: -4px 0 24px;
  max-width: 820px;
}
.clinex-shop-description p { margin: 0; }

body.woocommerce-shop .woo-listing-top,
body.tax-product_cat .woo-listing-top {
  border-bottom: 1px solid var(--shop-line);
  border-top: 1px solid var(--shop-line);
  grid-column: 2;
  margin: 0 0 22px;
  min-height: 54px;
  padding: 7px 0;
}

body.woocommerce-shop .woocommerce-result-count,
body.tax-product_cat .woocommerce-result-count {
  color: #879086;
  font-size: 11px;
  font-weight: 750;
  letter-spacing: .08em;
}

body.woocommerce-shop .woocommerce-ordering select,
body.tax-product_cat .woocommerce-ordering select {
  background-color: transparent;
  border: 0;
  color: #555d60;
  font-size: 14px;
  min-height: 38px;
  padding-bottom: 4px;
  padding-top: 4px;
}

body.woocommerce-shop ul.products,
body.tax-product_cat ul.products {
  gap: 42px 26px;
  grid-column: 2;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 0;
}

body.woocommerce-shop ul.products li.product,
body.tax-product_cat ul.products li.product {
  align-content: start;
  display: grid;
  gap: 0;
  text-align: center;
}

body.woocommerce-shop ul.products li.product figure,
body.tax-product_cat ul.products li.product figure {
  background: var(--shop-image);
  margin: 0 0 18px;
  overflow: hidden;
  position: relative;
}

body.woocommerce-shop ul.products li.product .ct-media-container,
body.tax-product_cat ul.products li.product .ct-media-container {
  aspect-ratio: 1 / 1;
  background: transparent;
  padding: 18px;
}

body.woocommerce-shop ul.products li.product .ct-media-container img,
body.tax-product_cat ul.products li.product .ct-media-container img {
  height: 100%;
  object-fit: contain;
  transition: transform .32s ease;
  width: 100%;
}

body.woocommerce-shop ul.products li.product:hover .ct-media-container img,
body.tax-product_cat ul.products li.product:hover .ct-media-container img { transform: scale(1.035); }

body.woocommerce-shop .woocommerce-loop-product__title,
body.tax-product_cat .woocommerce-loop-product__title {
  font-size: 15px !important;
  font-weight: 800;
  line-height: 1.35;
  margin: 0 5px 6px;
  min-height: 41px;
}

body.woocommerce-shop .woocommerce-loop-product__title a,
body.tax-product_cat .woocommerce-loop-product__title a { color: #313b40; }
body.woocommerce-shop .woocommerce-loop-product__title a:hover,
body.tax-product_cat .woocommerce-loop-product__title a:hover { color: var(--shop-green-dark); }

body.woocommerce-shop ul.products li.product > .price,
body.tax-product_cat ul.products li.product > .price {
  color: var(--shop-green-dark);
  font-size: 18px;
  font-weight: 800;
  margin: 0;
}

body.woocommerce-shop ul.products li.product > .price del,
body.tax-product_cat ul.products li.product > .price del { color: #a0a6a2; font-size: 13px; font-weight: 600; }
body.woocommerce-shop ul.products li.product > .price ins,
body.tax-product_cat ul.products li.product > .price ins { color: var(--shop-green-dark); text-decoration: none; }

body.woocommerce-shop ul.products .entry-meta,
body.tax-product_cat ul.products .entry-meta { display: none; }

body.woocommerce-shop ul.products .ct-woo-card-actions,
body.tax-product_cat ul.products .ct-woo-card-actions,
body.single-product .related.products .ct-woo-card-actions {
  inset: auto 16px 16px;
  opacity: 0;
  position: absolute;
  transform: translateY(8px);
  transition: opacity .2s ease, transform .2s ease;
  z-index: 3;
}

body.woocommerce-shop ul.products li.product,
body.tax-product_cat ul.products li.product { position: relative; }
body.woocommerce-shop ul.products li.product:hover .ct-woo-card-actions,
body.tax-product_cat ul.products li.product:hover .ct-woo-card-actions { opacity: 1; transform: translateY(0); }
body.woocommerce-shop ul.products .ct-woo-card-actions .button,
body.tax-product_cat ul.products .ct-woo-card-actions .button {
  background: var(--shop-green);
  border: 0;
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  min-height: 40px;
  padding: 10px 17px;
  text-transform: uppercase;
}

body.woocommerce-shop .out-of-stock-badge,
body.tax-product_cat .out-of-stock-badge,
body.woocommerce-shop span.onsale,
body.tax-product_cat span.onsale {
  background: var(--shop-green);
  border-radius: 50%;
  color: #fff;
  display: grid;
  font-size: 10px;
  font-weight: 850;
  height: 52px;
  left: auto;
  letter-spacing: .04em;
  place-items: center;
  right: 13px;
  text-transform: uppercase;
  top: 13px;
  width: 52px;
  min-height: 52px;
  min-width: 52px;
  max-height: 52px;
  max-width: 52px;
  box-sizing: border-box;
  line-height: 1.05;
  padding: 0 !important;
  white-space: normal;
  z-index: 4;
}
body.woocommerce-shop .out-of-stock-badge,
body.tax-product_cat .out-of-stock-badge { background: #354047; }

body.woocommerce-shop .woocommerce-pagination,
body.tax-product_cat .woocommerce-pagination { grid-column: 2; margin-top: 48px; }

body.woocommerce-shop .ct-pagination .page-numbers,
body.tax-product_cat .ct-pagination .page-numbers {
  border-color: rgba(136, 165, 29, .52) !important;
  color: var(--shop-green-dark) !important;
  transition: background-color .18s ease, border-color .18s ease, color .18s ease;
}

body.woocommerce-shop .ct-pagination .page-numbers:not(.next):not(.prev),
body.tax-product_cat .ct-pagination .page-numbers:not(.next):not(.prev) {
  border-style: solid;
  border-width: 1px;
  box-sizing: border-box;
}

body.woocommerce-shop .ct-pagination .page-numbers.current,
body.tax-product_cat .ct-pagination .page-numbers.current,
body.woocommerce-shop .ct-pagination a.page-numbers:hover,
body.tax-product_cat .ct-pagination a.page-numbers:hover {
  border-color: var(--shop-green-dark) !important;
  background: var(--shop-green-dark) !important;
  color: #fff !important;
}

/* Single product */
body.single-product .site-main { background: #fff; }
body.single-product .site-main > .ct-container { max-width: 1120px; padding-bottom: 78px; padding-top: 52px; }
body.single-product .woocommerce-breadcrumb {
  color: #a1a6a3;
  font-size: 12px;
  margin-bottom: 32px;
  text-transform: none;
}
body.single-product .woocommerce-breadcrumb a { color: #8b918d; }
body.single-product .woocommerce-breadcrumb a:hover { color: var(--shop-green-dark); }
body.single-product .product-entry-wrapper {
  align-items: start;
  gap: clamp(42px, 6vw, 74px);
  grid-template-columns: minmax(0, 1.06fr) minmax(340px, .94fr);
}
body.single-product .woocommerce-product-gallery {
  background: var(--shop-image);
  padding: clamp(20px, 3vw, 34px);
}
body.single-product .woocommerce-product-gallery__image a {
  align-items: center;
  display: flex;
  justify-content: center;
}
body.single-product .woocommerce-product-gallery__image img {
  aspect-ratio: 1 / 1;
  object-fit: contain;
}
body.single-product .summary { padding-top: 7px; }
body.single-product .product_title {
  color: var(--shop-green-dark);
  font-size: clamp(28px, 3vw, 39px) !important;
  font-weight: 850;
  letter-spacing: -.035em;
  line-height: 1.12;
  margin-bottom: 24px;
}
body.single-product .summary > .price {
  color: var(--shop-ink);
  font-size: 22px;
  font-weight: 800;
  margin-bottom: 27px;
}
body.single-product .summary > .price del { color: #a0a6a2; font-size: 15px; }
body.single-product .summary > .price ins { color: var(--shop-green-dark); text-decoration: none; }
body.single-product .woocommerce-product-details__short-description {
  color: #697175;
  font-size: 15px;
  line-height: 1.68;
  margin-bottom: 22px;
}
body.single-product .woocommerce-product-details__short-description p { margin: 0; }
body.single-product .stock {
  border: 1px solid #aab1ad;
  border-radius: 99px;
  color: #6f7773;
  display: inline-flex;
  font-size: 12px;
  font-weight: 750;
  line-height: 1;
  margin: 0;
  padding: 7px 14px;
}
body.single-product .stock.in-stock { border-color: #b8cb76; color: var(--shop-green-dark); }
body.single-product .product_meta {
  border-top: 0;
  color: #8a918e;
  font-size: 13px;
  line-height: 1.7;
  margin-top: 28px;
  padding-top: 22px;
}
body.single-product .product_meta a { color: var(--shop-green-dark); }
body.single-product .woocommerce-tabs {
  border-top: 0;
  margin-left: auto;
  margin-right: auto;
  margin-top: clamp(55px, 7vw, 88px);
  max-width: 1120px;
  padding-top: 0;
  width: calc(100% - 30px);
}
body.single-product .woocommerce-tabs .tabs { gap: 30px; }
body.single-product .woocommerce-tabs .tabs a { font-size: 15px; font-weight: 850; }
body.single-product .woocommerce-tabs .woocommerce-Tabs-panel {
  color: #5e6864;
  font-size: 16px;
  line-height: 1.75;
  max-width: 860px;
  padding: 27px 4px 0;
}
body.single-product .clinex-product-documents {
  background: #f4f7ed;
  border-left: 4px solid var(--shop-green);
  box-sizing: border-box;
  margin-top: 42px;
  margin-left: auto;
  margin-right: auto;
  max-width: 1120px;
  padding: 26px 30px 28px;
  width: calc(100% - 30px);
}
body.single-product .clinex-product-documents h2 {
  color: var(--shop-ink);
  font-size: 21px;
  margin: 0 0 16px;
}
body.single-product .clinex-product-documents ul {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  list-style: none;
  margin: 0;
  padding: 0;
}
body.single-product .clinex-product-documents li { margin: 0; }
body.single-product .clinex-product-documents a {
  background: #fff;
  border: 1px solid #dfe6d2;
  color: var(--shop-green-dark);
  display: inline-flex;
  font-size: 13px;
  font-weight: 750;
  padding: 10px 15px;
}
body.single-product .clinex-product-documents a::before { content: "PDF"; font-size: 10px; margin-right: 9px; opacity: .68; }
body.single-product .clinex-request-price { color: var(--shop-green-dark); font-size: 22px; font-weight: 800; }
body.single-product .clinex-request-price-action .button { background: var(--shop-green); border-radius: 0; color: #fff; }

@media (max-width: 999px) {
  body.woocommerce-shop .hero-section .entry-header,
  body.tax-product_cat .hero-section .entry-header { padding-left: 270px; }
  body.woocommerce-shop .site-main > .ct-container > section,
  body.tax-product_cat .site-main > .ct-container > section { gap: 0 34px; grid-template-columns: 230px minmax(0, 1fr); }
  body.woocommerce-shop ul.products,
  body.tax-product_cat ul.products { gap: 34px 20px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.single-product .product-entry-wrapper { gap: 34px; grid-template-columns: minmax(0, 1fr) minmax(300px, .9fr); }
}

@media (max-width: 767px) {
  body.woocommerce-shop .hero-section,
  body.tax-product_cat .hero-section {
    min-height: 0 !important;
    padding: 28px 0 20px !important;
  }
  body.woocommerce-shop .hero-section .entry-header,
  body.tax-product_cat .hero-section .entry-header {
    display: block;
    min-height: 0 !important;
    padding: 0 !important;
    text-align: center;
    width: calc(100% - 30px);
  }
  body.woocommerce-shop .hero-section .page-title,
  body.tax-product_cat .hero-section .page-title {
    font-size: clamp(25px, 8.2vw, 32px);
    max-width: none;
    width: auto;
  }
  body.woocommerce-shop .site-main > .ct-container,
  body.tax-product_cat .site-main > .ct-container { padding-top: 28px; width: calc(100% - 30px); }
  body.woocommerce-shop .site-main > .ct-container > section,
  body.tax-product_cat .site-main > .ct-container > section { display: block; }
  .clinex-shop-title {
    font-size: clamp(25px, 8.2vw, 32px);
    margin-bottom: 22px;
    text-align: center;
  }
  .clinex-shop-sidebar { margin-bottom: 22px; }
  .clinex-shop-sidebar details { border: 1px solid var(--shop-line); }
  .clinex-shop-sidebar details:not([open]) ul { display: none; }
  .clinex-shop-sidebar details > summary {
    align-items: center;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    padding: 14px 16px;
  }
  .clinex-shop-sidebar details > summary::after { content: "+"; font-size: 20px; font-weight: 500; }
  .clinex-shop-sidebar details[open] > summary::after { content: "−"; }
  .clinex-shop-sidebar ul { border-top: 1px solid var(--shop-line); padding: 0 16px 10px; }
  .clinex-shop-sidebar a { padding: 12px 1px; }
  .clinex-shop-breadcrumb { margin: 0 0 16px; }
  .clinex-shop-description {
    font-size: 14px;
    line-height: 1.6;
    margin: 0 0 20px;
  }
  body.woocommerce-shop .woo-listing-top,
  body.tax-product_cat .woo-listing-top {
    display: grid !important;
    gap: 8px;
    grid-template-columns: minmax(0, 1fr);
    margin-bottom: 20px;
    padding: 10px 0 12px;
  }
  body.woocommerce-shop .woocommerce-ordering,
  body.tax-product_cat .woocommerce-ordering {
    margin: 0 !important;
    max-width: none;
    position: relative;
    width: 100% !important;
  }
  body.woocommerce-shop .woocommerce-ordering select,
  body.tax-product_cat .woocommerce-ordering select {
    appearance: none;
    border: 1px solid var(--shop-line);
    display: block !important;
    min-height: 42px;
    overflow: hidden;
    padding: 0 44px 0 12px !important;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 100% !important;
  }
  body.woocommerce-shop .woocommerce-ordering .ct-sort-icon,
  body.tax-product_cat .woocommerce-ordering .ct-sort-icon {
    display: block !important;
    pointer-events: none;
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
  }
  body.woocommerce-shop ul.products,
  body.tax-product_cat ul.products { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.woocommerce-shop ul.products .ct-woo-card-actions,
  body.tax-product_cat ul.products .ct-woo-card-actions { display: none; }
  body.woocommerce-shop .woocommerce-loop-product__title,
  body.tax-product_cat .woocommerce-loop-product__title { font-size: 13px !important; min-height: 36px; }
  body.woocommerce-shop ul.products li.product > .price,
  body.tax-product_cat ul.products li.product > .price { font-size: 16px; }
  body.single-product .site-main > .ct-container { padding-top: 28px; width: calc(100% - 30px); }
  body.single-product .woocommerce-breadcrumb { font-size: 11px; margin-bottom: 22px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  body.single-product .product-entry-wrapper { display: block; }
  body.single-product .woocommerce-product-gallery { margin-bottom: 30px; padding: 18px; }
  body.single-product .summary { padding-top: 0; }
  body.single-product .product_title { font-size: clamp(26px, 8vw, 34px) !important; margin-bottom: 18px; }
  body.single-product .summary > .price { margin-bottom: 20px; }
  body.single-product .woocommerce-tabs { margin-top: 52px; }
  body.single-product .clinex-product-documents { margin-top: 30px; padding: 22px 20px; }
}

@media (max-width: 430px) {
  .clinex-shop-title {
    font-size: clamp(23px, 6.9vw, 27px);
    hyphens: none;
    line-height: 1.1;
    overflow-wrap: normal;
    word-break: normal;
  }
  body.woocommerce-shop ul.products,
  body.tax-product_cat ul.products { gap: 30px 13px; }
  body.woocommerce-shop ul.products li.product .ct-media-container,
  body.tax-product_cat ul.products li.product .ct-media-container { padding: 10px; }
  body.woocommerce-shop .out-of-stock-badge,
  body.tax-product_cat .out-of-stock-badge,
  body.woocommerce-shop span.onsale,
  body.tax-product_cat span.onsale {
    border-radius: 50% !important;
    font-size: 8px;
    height: 46px !important;
    max-height: 46px;
    max-width: 46px;
    min-height: 46px;
    min-width: 46px;
    padding: 0 !important;
    right: 8px;
    top: 8px;
    width: 46px !important;
  }
}

/* Storefront interaction layer: rounded cards, legacy-style actions and wishlist. */
body.woocommerce-shop ul.products li.product,
body.tax-product_cat ul.products li.product {
  border: 1px solid #e7eadf;
  border-radius: 16px;
  box-shadow: 0 7px 22px rgba(43, 55, 38, .045);
  overflow: hidden;
  padding-bottom: 17px;
  transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease;
}

body.woocommerce-shop ul.products li.product:hover,
body.tax-product_cat ul.products li.product:hover {
  border-color: #d5dfb5;
  box-shadow: 0 15px 34px rgba(43, 55, 38, .1);
  transform: translateY(-3px);
}

body.woocommerce-shop ul.products li.product figure,
body.tax-product_cat ul.products li.product figure {
  border-radius: 15px 15px 12px 12px;
  margin-bottom: 17px;
}

body.woocommerce-shop ul.products li.product .ct-media-container img,
body.tax-product_cat ul.products li.product .ct-media-container img { border-radius: 12px; }

body.woocommerce-shop ul.products .ct-woo-card-actions,
body.tax-product_cat ul.products .ct-woo-card-actions,
body.single-product .related.products .ct-woo-card-actions {
  align-items: stretch;
  display: grid;
  gap: 6px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  inset: auto 9px 9px;
  max-width: calc(100% - 18px);
  pointer-events: none;
  width: auto;
}

body.woocommerce-shop ul.products li.product:hover .ct-woo-card-actions,
body.woocommerce-shop ul.products li.product:focus-within .ct-woo-card-actions,
body.tax-product_cat ul.products li.product:hover .ct-woo-card-actions,
body.tax-product_cat ul.products li.product:focus-within .ct-woo-card-actions,
body.single-product .related.products li.product:hover .ct-woo-card-actions,
body.single-product .related.products li.product:focus-within .ct-woo-card-actions { opacity: 1; pointer-events: auto; transform: translateY(0); }

body.woocommerce-shop ul.products .ct-woo-card-actions .button,
body.tax-product_cat ul.products .ct-woo-card-actions .button,
body.single-product .related.products .ct-woo-card-actions .button {
  align-items: center;
  background: #afca0b;
  border-radius: 7px;
  display: flex;
  justify-content: center;
  box-sizing: border-box;
  font-size: 10.5px;
  line-height: 1;
  max-width: 100%;
  min-height: 42px;
  min-width: 0;
  overflow: hidden;
  padding: 9px 7px;
  position: relative;
  transition: background-color .2s ease, box-shadow .2s ease, transform .2s ease;
  white-space: nowrap;
  width: 100%;
}

body.woocommerce-shop ul.products .ct-woo-card-actions .button:hover,
body.woocommerce-shop ul.products .ct-woo-card-actions .button:focus-visible,
body.tax-product_cat ul.products .ct-woo-card-actions .button:hover,
body.tax-product_cat ul.products .ct-woo-card-actions .button:focus-visible,
body.single-product .related.products .ct-woo-card-actions .button:hover,
body.single-product .related.products .ct-woo-card-actions .button:focus-visible {
  background: #71890d;
  box-shadow: 0 6px 16px rgba(67, 83, 12, .25);
  color: #fff;
  transform: translateY(-1px);
}

/* Sold-out cards have one clear next step instead of duplicate product buttons. */
body.woocommerce-shop ul.products .ct-woo-card-actions--contact,
body.tax-product_cat ul.products .ct-woo-card-actions--contact,
body.single-product .related.products .ct-woo-card-actions--contact {
  grid-template-columns: minmax(0, 1fr);
}
body.woocommerce-shop ul.products .ct-woo-card-actions--contact .clinex-contact-product,
body.tax-product_cat ul.products .ct-woo-card-actions--contact .clinex-contact-product,
body.single-product .related.products .ct-woo-card-actions--contact .clinex-contact-product {
  background: #56625e;
}
body.woocommerce-shop ul.products .ct-woo-card-actions--contact .clinex-contact-product:hover,
body.tax-product_cat ul.products .ct-woo-card-actions--contact .clinex-contact-product:hover,
body.single-product .related.products .ct-woo-card-actions--contact .clinex-contact-product:hover {
  background: #3f4a46;
}

.ct-woo-card-actions .button svg {
  fill: none;
  height: 17px;
  left: 50%;
  position: absolute;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.8;
  top: calc(100% + 9px);
  transform: translate(-50%, 0);
  transition: top .24s ease, transform .24s ease;
  width: 17px;
}

.ct-woo-card-actions .button > span {
  display: block;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: opacity .18s ease, transform .24s ease;
}
.ct-woo-card-actions .button:hover > span,
.ct-woo-card-actions .button:focus-visible > span { opacity: 0; transform: translateY(-30px); }
.ct-woo-card-actions .button:hover svg,
.ct-woo-card-actions .button:focus-visible svg { top: 50%; transform: translate(-50%, -50%); }

.ct-woo-card-actions .button:only-child { grid-column: 1 / -1; }
.ct-woo-card-actions .added_to_cart.wc-forward { display: none !important; }

.clinex-wishlist-toggle {
  align-items: center;
  background: rgba(255, 255, 255, .94);
  border: 0;
  border-radius: 50%;
  box-shadow: 0 4px 13px rgba(31, 41, 26, .12);
  color: #54605b;
  cursor: pointer;
  display: flex;
  height: 40px;
  justify-content: center;
  padding: 0;
  position: absolute;
  left: 13px;
  right: auto;
  top: 13px;
  transition: background-color .2s ease, color .2s ease, transform .2s ease;
  width: 40px;
  z-index: 5;
}

.clinex-wishlist-toggle:hover { color: #8da50f; transform: scale(1.06); }
.clinex-wishlist-toggle.is-active { background: #afca0b; color: #fff; }
.clinex-wishlist-toggle svg {
  fill: transparent;
  height: 20px;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.8;
  width: 20px;
}
.clinex-wishlist-toggle.is-active svg { fill: currentColor; }

.clinex-wishlist[hidden] { display: none; }
.clinex-wishlist {
  inset: 0;
  position: fixed;
  z-index: 100000;
}
.clinex-wishlist__backdrop {
  background: rgba(25, 31, 27, .52);
  border: 0;
  inset: 0;
  padding: 0;
  position: absolute;
  width: 100%;
}
.clinex-wishlist__panel {
  background: #fff;
  box-shadow: -20px 0 55px rgba(0, 0, 0, .18);
  height: 100%;
  max-width: 430px;
  overflow: auto;
  padding: 0 25px 30px;
  position: absolute;
  right: 0;
  top: 0;
  width: min(92vw, 430px);
}
.clinex-wishlist__panel > header {
  align-items: center;
  border-bottom: 1px solid #e7eadf;
  display: flex;
  justify-content: space-between;
  margin-bottom: 6px;
  min-height: 78px;
}
.clinex-wishlist__panel h2 { color: #34413a; font-size: 24px; margin: 0; }
.clinex-wishlist__panel header button,
.clinex-wishlist-item > button {
  background: transparent;
  border: 0;
  color: #647069;
  cursor: pointer;
  font-size: 30px;
  line-height: 1;
  padding: 8px;
}
.clinex-wishlist-item {
  align-items: center;
  border-bottom: 1px solid #edf0e8;
  display: grid;
  gap: 14px;
  grid-template-columns: 76px minmax(0, 1fr) auto;
  padding: 16px 0;
}
.clinex-wishlist-item__image {
  background: var(--shop-image);
  border-radius: 10px;
  display: block;
  height: 76px;
  padding: 7px;
}
.clinex-wishlist-item__image img { height: 100%; object-fit: contain; width: 100%; }
.clinex-wishlist-item__title { color: #34413a; display: block; font-size: 14px; font-weight: 800; line-height: 1.35; margin-bottom: 7px; }
.clinex-wishlist-item span { color: var(--shop-green-dark); font-size: 14px; font-weight: 800; }
.clinex-wishlist__empty { color: #6d756f; padding: 30px 0; }
body.clinex-wishlist-open { overflow: hidden; }

/* Product page controls. */
body.single-product .woocommerce-product-gallery,
body.single-product .woocommerce-product-gallery__image,
body.single-product .woocommerce-product-gallery__image img { border-radius: 18px; }
body.single-product .ct-product-add-to-cart .stock {
  display: flex;
  margin: 0 0 18px !important;
  width: max-content;
}
body.single-product .ct-cart-actions {
  align-items: stretch;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(0, 112px) minmax(0, 1fr);
  width: 100%;
}
body.single-product .quantity {
  border: 0;
  border-radius: 9px;
  max-width: 100%;
  min-height: 52px;
  min-width: 0;
  overflow: hidden;
  width: 112px !important;
}
body.single-product .quantity .qty {
  border: 1px solid #dbe1d5 !important;
  border-radius: 9px !important;
  box-shadow: none !important;
  height: 52px;
  max-width: 100%;
  outline: 0 !important;
  width: 100% !important;
}
body.single-product .quantity .qty:focus {
  border-color: #afca0b !important;
  box-shadow: 0 0 0 3px rgba(175, 202, 11, .16) !important;
}
body.single-product .single_add_to_cart_button,
body.single-product .clinex-request-price-action .button {
  background: #afca0b !important;
  border: 0 !important;
  border-radius: 9px !important;
  box-shadow: none;
  color: #fff !important;
  margin: 0 !important;
  max-width: 100%;
  min-height: 52px;
  min-width: 0 !important;
  transition: background-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
body.single-product .single_add_to_cart_button > svg { display: none !important; }
body.single-product .single_add_to_cart_button:hover,
body.single-product .single_add_to_cart_button:focus-visible,
body.single-product .clinex-request-price-action .button:hover {
  background: #71890d !important;
  box-shadow: 0 7px 18px rgba(67, 83, 12, .22);
  transform: translateY(-1px);
}
body.single-product .clinex-single-wishlist {
  background: transparent;
  border: 1px solid #dbe1d5;
  border-radius: 9px;
  box-shadow: none;
  display: inline-flex;
  gap: 9px;
  height: 44px;
  margin-top: 12px;
  padding: 0 16px;
  position: static;
  width: auto;
}
body.single-product .clinex-single-wishlist.is-active { background: #f2f6e5; color: #71890d; }
body.single-product .clinex-single-wishlist span { font-size: 13px; font-weight: 800; }

body.single-product .woocommerce-tabs .tabs {
  background: transparent;
  border: 0 !important;
  border-bottom: 1px solid #dfe5d8 !important;
  border-radius: 0;
  box-sizing: border-box;
  padding: 0 !important;
}
body.single-product .woocommerce-tabs .tabs li {
  background: transparent !important;
  border: 0 !important;
  border-bottom: 3px solid transparent !important;
  border-radius: 0;
  box-shadow: none !important;
  margin-bottom: -1px !important;
  position: relative;
  transition: border-color .2s ease;
}
body.single-product .woocommerce-tabs .tabs li.active {
  background: transparent !important;
  border-bottom-color: #afca0b !important;
  box-shadow: none !important;
}
body.single-product .woocommerce-tabs .tabs li::before {
  display: none !important;
}
body.single-product .woocommerce-tabs .tabs li a {
  color: #6d766f !important;
  font-size: 15px !important;
  font-weight: 800;
  min-height: 52px;
  padding: 16px 4px 13px !important;
  transition: color .2s ease;
}
body.single-product .woocommerce-tabs .tabs li a:hover,
body.single-product .woocommerce-tabs .tabs li a:focus-visible { color: #71890d !important; }
body.single-product .woocommerce-tabs .tabs li.active a { color: #34413a !important; }

@media (min-width: 768px) {
  body.single-product .woocommerce-tabs .tabs {
    align-items: flex-end;
    flex-direction: row !important;
    flex-wrap: wrap;
    gap: 0 30px;
    justify-content: flex-start !important;
    width: 100%;
  }
  body.single-product .woocommerce-tabs .tabs li {
    flex: 0 0 auto !important;
    margin: 0 !important;
    width: auto !important;
  }
  body.single-product .woocommerce-tabs .tabs li a {
    width: auto !important;
  }
}

body.single-product .related.products {
  display: block !important;
  margin: 50px auto 0;
  max-width: 1120px;
  width: calc(100% - 30px);
}
body.single-product .related.products > h2 {
  color: #34413a;
  font-size: clamp(24px, 2.4vw, 30px);
  margin: 0 0 24px;
}
body.single-product .related.products ul.products {
  display: grid;
  gap: 22px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 0;
}
body.single-product .related.products ul.products li.product {
  border: 1px solid #e7eadf;
  border-radius: 16px;
  box-shadow: 0 8px 24px rgba(43, 55, 38, .055);
  overflow: hidden;
  padding-bottom: 15px;
  position: relative;
  text-align: center;
  transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease;
}
body.single-product .related.products ul.products li.product:hover {
  border-color: #d5dfb5;
  box-shadow: 0 14px 32px rgba(43, 55, 38, .1);
  transform: translateY(-3px);
}
body.single-product .related.products ul.products li.product figure {
  aspect-ratio: 1 / 1;
  background: var(--shop-image);
  border-radius: 15px 15px 12px 12px;
  margin: 0 0 16px;
  overflow: hidden;
  position: relative;
}
body.single-product .related.products .ct-media-container {
  aspect-ratio: 1 / 1;
  box-sizing: border-box;
  height: 100%;
  padding: 16px;
  width: 100%;
}
body.single-product .related.products .ct-media-container img {
  aspect-ratio: auto !important;
  height: 100% !important;
  object-fit: contain;
  width: 100% !important;
}
body.single-product .related.products .woocommerce-loop-product__title {
  font-size: 14px !important;
  font-weight: 800;
  line-height: 1.35;
  margin: 0 13px 7px;
  min-height: 38px;
}
body.single-product .related.products li.product > .price {
  color: var(--shop-green-dark);
  font-size: 17px;
  font-weight: 800;
  margin: 0 13px;
}
body.single-product .related.products .ct-woo-card-actions {
  opacity: 0;
  position: absolute;
  transform: translateY(8px);
  transition: opacity .2s ease, transform .2s ease;
  z-index: 3;
}
body.single-product .related.products .ct-woo-card-actions .button {
  background: #afca0b !important;
  color: #fff !important;
  font-size: 12.5px !important;
  min-height: 44px;
}
body.single-product .related.products .clinex-wishlist-toggle { left: 12px; right: auto; top: 12px; }
body.single-product .related.products .out-of-stock-badge,
body.single-product .related.products .onsale {
  align-items: center;
  background: #354047;
  border-radius: 50% !important;
  box-sizing: border-box;
  color: #fff;
  display: flex;
  font-size: 9px;
  font-weight: 850;
  height: 50px !important;
  justify-content: center;
  left: auto !important;
  line-height: 1.05;
  max-height: 50px;
  max-width: 50px;
  min-height: 50px;
  min-width: 50px;
  padding: 0 4px !important;
  right: 12px !important;
  text-align: center;
  top: 12px !important;
  white-space: normal;
  width: 50px !important;
  z-index: 5;
}

.clinex-cart-modal[hidden] { display: none; }
.clinex-cart-modal { inset: 0; position: fixed; z-index: 100001; }
.clinex-cart-modal__backdrop {
  background: rgba(25, 31, 27, .56);
  border: 0;
  inset: 0;
  padding: 0;
  position: absolute;
  width: 100%;
}
.clinex-cart-modal__panel {
  background: #fff;
  border-radius: 18px;
  box-shadow: 0 28px 80px rgba(17, 25, 19, .28);
  left: 50%;
  max-width: 500px;
  padding: 31px;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: calc(100% - 30px);
}
.clinex-cart-modal__close {
  background: transparent;
  border: 0;
  color: #6a746e;
  cursor: pointer;
  font-size: 31px;
  line-height: 1;
  padding: 8px;
  position: absolute;
  right: 14px;
  top: 12px;
}
.clinex-cart-modal__check {
  align-items: center;
  background: #afca0b;
  border-radius: 50%;
  color: #fff;
  display: flex;
  height: 48px;
  justify-content: center;
  margin-bottom: 18px;
  width: 48px;
}
.clinex-cart-modal__check svg { fill: none; height: 25px; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2.3; width: 25px; }
.clinex-cart-modal__copy p {
  color: #829912;
  font-size: 11px;
  font-weight: 850;
  letter-spacing: .08em;
  margin: 0 0 5px;
  text-transform: uppercase;
}
.clinex-cart-modal__copy h2 { color: #303b35; font-size: 25px; margin: 0 38px 22px 0; }
.clinex-cart-modal__product {
  align-items: center;
  background: #f5f7f1;
  border-radius: 12px;
  display: grid;
  gap: 15px;
  grid-template-columns: 76px minmax(0, 1fr);
  min-height: 94px;
  padding: 9px 14px 9px 9px;
}
.clinex-cart-modal__product img { background: #fff; border-radius: 9px; height: 76px; object-fit: contain; padding: 6px; width: 76px; }
.clinex-cart-modal__product strong { color: #35413a; display: block; font-size: 15px; line-height: 1.35; }
.clinex-cart-modal__product span { color: var(--shop-green-dark); display: block; font-size: 14px; font-weight: 800; margin-top: 6px; }
.clinex-cart-modal__count { color: #6d756f; font-size: 13px; margin: 15px 0 21px; }
.clinex-cart-modal__actions { display: grid; gap: 9px; grid-template-columns: 1fr 1fr; }
.clinex-cart-modal__actions a,
.clinex-cart-modal__actions button {
  align-items: center;
  border: 1px solid #afca0b;
  border-radius: 9px;
  cursor: pointer;
  display: flex;
  font-size: 12px;
  font-weight: 850;
  justify-content: center;
  min-height: 48px;
  padding: 10px 14px;
}
.clinex-cart-modal__actions a { background: #afca0b; color: #fff; }
.clinex-cart-modal__actions button { background: #fff; color: #71890d; }
.clinex-cart-modal__actions a:hover { background: #71890d; border-color: #71890d; color: #fff; }
.clinex-cart-modal__actions button:hover { background: #f4f7e8; }
body.clinex-cart-modal-open { overflow: hidden; }

.clinex-view-switch {
  align-items: center;
  display: none;
  gap: 5px;
  justify-content: flex-end;
}
.clinex-view-switch button {
  align-items: center;
  background: #fff;
  border: 1px solid var(--shop-line);
  border-radius: 7px;
  color: #7a847d;
  cursor: pointer;
  display: flex;
  height: 42px;
  justify-content: center;
  padding: 0;
  width: 42px;
}
.clinex-view-switch button.is-active { background: #afca0b; border-color: #afca0b; color: #fff; }
.clinex-view-switch svg { fill: currentColor; height: 18px; width: 18px; }

@media (max-width: 767px) {
  body.woocommerce-shop .woo-listing-top,
  body.tax-product_cat .woo-listing-top {
    align-items: end;
    grid-template-columns: minmax(0, 1fr) auto;
  }
  body.woocommerce-shop .woo-listing-top > :not(.woocommerce-ordering):not(.clinex-view-switch),
  body.tax-product_cat .woo-listing-top > :not(.woocommerce-ordering):not(.clinex-view-switch) { grid-column: 1 / -1; }
  body.woocommerce-shop .woocommerce-ordering,
  body.tax-product_cat .woocommerce-ordering { grid-column: 1; }
  .clinex-view-switch { display: flex; grid-column: 2; }

  body.woocommerce-shop ul.products li.product,
  body.tax-product_cat ul.products li.product { padding-bottom: 14px; }
  body.woocommerce-shop ul.products .ct-woo-card-actions,
  body.tax-product_cat ul.products .ct-woo-card-actions { display: none; }
  .clinex-wishlist-toggle { height: 36px; left: 9px; top: 9px; width: 36px; }
  .clinex-wishlist-toggle svg { height: 18px; width: 18px; }

  body.clinex-list-view ul.products { gap: 15px; grid-template-columns: minmax(0, 1fr); }
  body.clinex-list-view ul.products li.product {
    align-items: center;
    display: grid;
    gap: 0 15px;
    grid-template-columns: 118px minmax(0, 1fr);
    min-height: 142px;
    padding: 11px;
    text-align: left;
  }
  body.clinex-list-view ul.products li.product figure {
    grid-column: 1;
    grid-row: 1 / span 4;
    margin: 0;
  }
  body.clinex-list-view ul.products li.product .ct-media-container { padding: 8px; }
  body.clinex-list-view ul.products li.product .woocommerce-loop-product__title,
  body.clinex-list-view ul.products li.product > .price,
  body.clinex-list-view ul.products li.product > .entry-meta {
    grid-column: 2;
    margin-left: 0;
    margin-right: 0;
    min-height: 0;
    text-align: left;
  }
  body.single-product .ct-cart-actions { grid-template-columns: minmax(0, 104px) minmax(0, 1fr); }
  body.single-product .quantity { width: 104px !important; }
  body.single-product .woocommerce-tabs .tabs {
    display: grid !important;
    gap: 0;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  body.single-product .woocommerce-tabs .tabs li { margin: 0 !important; width: auto !important; }
  body.single-product .woocommerce-tabs .tabs li {
    margin-bottom: -1px !important;
  }
  body.single-product .woocommerce-tabs .tabs li a {
    justify-content: center;
    min-height: 48px;
    padding: 14px 8px 11px !important;
    text-align: center;
  }
  body.single-product .related.products { margin-top: 38px; }
  body.single-product .related.products ul.products { gap: 14px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.single-product .related.products .ct-media-container { padding: 10px; }
  body.single-product .related.products .woocommerce-loop-product__title { font-size: 12.5px !important; margin-inline: 9px; min-height: 34px; }
  body.single-product .related.products li.product > .price { font-size: 15px; margin-inline: 9px; }
  body.single-product .related.products .clinex-wishlist-toggle { height: 34px; left: 8px; top: 8px; width: 34px; }
  body.single-product .related.products .out-of-stock-badge,
  body.single-product .related.products .onsale { font-size: 8px; height: 44px !important; min-height: 44px; min-width: 44px; right: 8px !important; top: 8px !important; width: 44px !important; }
  body.single-product .related.products .ct-woo-card-actions { display: none !important; }
  body.single-product .clinex-product-documents { border-radius: 10px; }
  .clinex-cart-modal__panel { border-radius: 16px 16px 0 0; bottom: 0; left: 0; max-width: none; padding: 27px 20px 21px; top: auto; transform: none; width: 100%; }
}

@media (max-width: 390px) {
  body.clinex-list-view ul.products li.product { gap: 0 12px; grid-template-columns: 104px minmax(0, 1fr); }
  body.single-product .ct-cart-actions { grid-template-columns: minmax(0, 94px) minmax(0, 1fr); }
  body.single-product .quantity { width: 94px !important; }
}

/* Cart controls use the same Clinex palette and touch sizing as the shop. */
body.woocommerce-cart .woocommerce-cart-form button.button,
body.woocommerce-cart .cart_totals button.button,
body.woocommerce-cart .wc-proceed-to-checkout .checkout-button,
body.woocommerce-cart .return-to-shop .button,
body.woocommerce-cart #main a.wc-backward,
body.woocommerce-cart .woocommerce-notices-wrapper a.button,
body.woocommerce-cart .woocommerce-message a.button,
body.woocommerce-cart .woocommerce-info a.button,
body.woocommerce-cart .woocommerce-error a.button {
  align-items: center;
  background: #afca0b !important;
  border: 1px solid #afca0b !important;
  border-radius: 9px !important;
  box-shadow: none !important;
  color: #fff !important;
  display: inline-flex;
  font-weight: 800;
  justify-content: center;
  min-height: 46px;
  padding: 10px 20px;
  text-decoration: none !important;
  transition: background-color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
body.woocommerce-cart .woocommerce-cart-form button.button:hover,
body.woocommerce-cart .woocommerce-cart-form button.button:focus-visible,
body.woocommerce-cart .cart_totals button.button:hover,
body.woocommerce-cart .cart_totals button.button:focus-visible,
body.woocommerce-cart .wc-proceed-to-checkout .checkout-button:hover,
body.woocommerce-cart .wc-proceed-to-checkout .checkout-button:focus-visible,
body.woocommerce-cart .return-to-shop .button:hover,
body.woocommerce-cart .return-to-shop .button:focus-visible,
body.woocommerce-cart #main a.wc-backward:hover,
body.woocommerce-cart #main a.wc-backward:focus-visible,
body.woocommerce-cart .woocommerce-notices-wrapper a.button:hover,
body.woocommerce-cart .woocommerce-notices-wrapper a.button:focus-visible,
body.woocommerce-cart .woocommerce-message a.button:hover,
body.woocommerce-cart .woocommerce-message a.button:focus-visible,
body.woocommerce-cart .woocommerce-info a.button:hover,
body.woocommerce-cart .woocommerce-info a.button:focus-visible,
body.woocommerce-cart .woocommerce-error a.button:hover,
body.woocommerce-cart .woocommerce-error a.button:focus-visible {
  background: #71890d !important;
  border-color: #71890d !important;
  box-shadow: 0 7px 18px rgba(67, 83, 12, .18) !important;
  color: #fff !important;
  transform: translateY(-1px);
}
body.woocommerce-cart .woocommerce-cart-form button.button:disabled {
  background: #dce5bd !important;
  border-color: #dce5bd !important;
  color: #fff !important;
  cursor: default;
  opacity: 1;
  transform: none;
}
body.woocommerce-cart .woocommerce-notices-wrapper .restore-item,
body.woocommerce-cart .woocommerce-message .restore-item,
body.woocommerce-cart .woocommerce-info .restore-item,
body.woocommerce-cart .woocommerce-error .restore-item {
  align-items: center;
  background: #afca0b !important;
  border: 1px solid #afca0b !important;
  border-radius: 7px;
  color: #fff !important;
  display: inline-flex;
  font-size: 13px;
  font-weight: 800;
  justify-content: center;
  line-height: 1.2;
  margin: 3px 4px 3px 10px;
  min-height: 36px;
  padding: 8px 13px;
  text-decoration: none !important;
  transition: background-color .2s ease, border-color .2s ease, transform .2s ease;
}
body.woocommerce-cart .woocommerce-notices-wrapper .restore-item:hover,
body.woocommerce-cart .woocommerce-notices-wrapper .restore-item:focus-visible,
body.woocommerce-cart .woocommerce-message .restore-item:hover,
body.woocommerce-cart .woocommerce-message .restore-item:focus-visible,
body.woocommerce-cart .woocommerce-info .restore-item:hover,
body.woocommerce-cart .woocommerce-info .restore-item:focus-visible,
body.woocommerce-cart .woocommerce-error .restore-item:hover,
body.woocommerce-cart .woocommerce-error .restore-item:focus-visible {
  background: #71890d !important;
  border-color: #71890d !important;
  color: #fff !important;
  transform: translateY(-1px);
}
body.woocommerce-cart #main .shipping-calculator-button {
  align-items: center;
  border: 1px solid #afca0b !important;
  border-radius: 8px;
  color: #71890d !important;
  display: inline-flex;
  font-weight: 800;
  justify-content: center;
  min-height: 42px;
  padding: 8px 14px;
  text-decoration: none !important;
  transition: background-color .2s ease, color .2s ease;
}
body.woocommerce-cart #main .shipping-calculator-button:hover,
body.woocommerce-cart #main .shipping-calculator-button:focus-visible {
  background: #f3f7e7;
  color: #71890d !important;
}
body.woocommerce-cart .coupon .input-text,
body.woocommerce-cart .shipping-calculator-form input,
body.woocommerce-cart .shipping-calculator-form select {
  border: 1px solid #dbe1d5 !important;
  border-radius: 9px !important;
  box-shadow: none !important;
  min-height: 46px;
}
body.woocommerce-cart .coupon .input-text:focus,
body.woocommerce-cart .shipping-calculator-form input:focus,
body.woocommerce-cart .shipping-calculator-form select:focus {
  border-color: #afca0b !important;
  box-shadow: 0 0 0 3px rgba(175, 202, 11, .16) !important;
  outline: 0;
}
body.woocommerce-cart .woocommerce-cart-form .quantity {
  background: #fff;
  border: 1px solid #dbe1d5 !important;
  border-radius: 9px !important;
  height: 46px;
  min-width: 118px;
  overflow: hidden;
  position: relative;
  width: 118px !important;
}
body.woocommerce-cart .woocommerce-cart-form .quantity:focus-within {
  border-color: #afca0b !important;
  box-shadow: 0 0 0 3px rgba(175, 202, 11, .16) !important;
}
body.woocommerce-cart .woocommerce-cart-form .quantity .qty {
  appearance: textfield;
  -moz-appearance: textfield;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: #35413a !important;
  font-size: 16px;
  font-weight: 750;
  height: 44px;
  margin: 0 !important;
  outline: 0 !important;
  padding: 0 39px !important;
  text-align: center;
  width: 116px !important;
}
body.woocommerce-cart .woocommerce-cart-form .quantity .qty::-webkit-inner-spin-button,
body.woocommerce-cart .woocommerce-cart-form .quantity .qty::-webkit-outer-spin-button {
  appearance: none;
  margin: 0;
}
body.woocommerce-cart .woocommerce-cart-form .quantity .ct-increase,
body.woocommerce-cart .woocommerce-cart-form .quantity .ct-decrease {
  align-items: center;
  color: #53615a !important;
  cursor: pointer;
  display: flex;
  height: 44px !important;
  justify-content: center;
  margin: 0 !important;
  top: 0 !important;
  transform: none !important;
  width: 38px !important;
  z-index: 2;
}
body.woocommerce-cart .woocommerce-cart-form .quantity .ct-decrease { left: 0 !important; }
body.woocommerce-cart .woocommerce-cart-form .quantity .ct-increase { left: auto !important; right: 0 !important; }
body.woocommerce-cart .woocommerce-cart-form .quantity .ct-increase:hover,
body.woocommerce-cart .woocommerce-cart-form .quantity .ct-decrease:hover {
  background: #f3f7e7;
  color: #71890d !important;
}

/* Account forms use the same calm cards, inputs and green actions as checkout. */
body.woocommerce-account #main .woocommerce { margin-inline: auto; max-width: 1180px; }
body.woocommerce-account .woocommerce-MyAccount-navigation,
body.woocommerce-account .woocommerce-MyAccount-content,
body.woocommerce-account .u-columns .u-column1,
body.woocommerce-account .u-columns .u-column2 { min-width: 0; }
body.woocommerce-account .u-columns {
  display: grid;
  gap: 24px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 12px auto 38px;
  max-width: 960px;
}
body.woocommerce-account .u-columns > div {
  background: #fff;
  border: 1px solid #e1e7d7;
  border-radius: 16px;
  padding: 30px 32px;
}
body.woocommerce-account .u-columns h2 {
  color: #26342c;
  font-size: clamp(24px, 2.2vw, 32px);
  line-height: 1.15;
  margin: 0 0 22px;
}
body.woocommerce-account form.woocommerce-form-login,
body.woocommerce-account form.woocommerce-form-register,
body.woocommerce-account form.login,
body.woocommerce-account form.register { border: 0 !important; margin: 0 !important; padding: 0 !important; }
body.woocommerce-account .woocommerce-form-row,
body.woocommerce-account .form-row { margin-bottom: 16px; }
body.woocommerce-account .woocommerce-form-row label,
body.woocommerce-account .form-row label {
  color: #3d4a42; display: block; font-size: 14px; font-weight: 750; margin: 0 0 7px;
}
body.woocommerce-account input[type="text"],
body.woocommerce-account input[type="email"],
body.woocommerce-account input[type="password"],
body.woocommerce-account input[type="tel"],
body.woocommerce-account select,
body.woocommerce-account textarea {
  background: #fff !important; border: 1px solid #dbe1d5 !important; border-radius: 9px !important;
  box-shadow: none !important; color: #35413a !important; min-height: 48px; padding: 10px 13px !important;
}
body.woocommerce-account input:focus,
body.woocommerce-account select:focus,
body.woocommerce-account textarea:focus {
  border-color: #afca0b !important; box-shadow: 0 0 0 3px rgba(175, 202, 11, .16) !important; outline: 0;
}
body.woocommerce-account .woocommerce-form-login__rememberme {
  align-items: center; color: #56635b; display: inline-flex; font-size: 14px; gap: 8px;
}
body.woocommerce-account .woocommerce-form-login__rememberme input { accent-color: #afca0b; min-height: 18px; }
body.woocommerce-account .woocommerce-form-login .button,
body.woocommerce-account .woocommerce-form-register .button,
body.woocommerce-account .woocommerce-EditAccountForm .button,
body.woocommerce-account .woocommerce-address-fields .button,
body.woocommerce-account #main .woocommerce a.button {
  align-items: center; background: #afca0b !important; border: 1px solid #afca0b !important;
  border-radius: 9px !important; box-shadow: none !important; color: #fff !important; display: inline-flex;
  font-weight: 800; justify-content: center; min-height: 46px; padding: 10px 20px; text-decoration: none !important;
}
body.woocommerce-account .woocommerce-form-login .button:hover,
body.woocommerce-account .woocommerce-form-register .button:hover,
body.woocommerce-account .woocommerce-EditAccountForm .button:hover,
body.woocommerce-account .woocommerce-address-fields .button:hover,
body.woocommerce-account #main .woocommerce a.button:hover {
  background: #71890d !important; border-color: #71890d !important; color: #fff !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation a,
body.woocommerce-account .woocommerce-form-login a,
body.woocommerce-account .woocommerce-form-register a { color: #71890d; font-weight: 700; }
body.woocommerce-account .woocommerce-MyAccount-navigation a,
body.woocommerce-account .woocommerce-MyAccount-navigation a:hover,
body.woocommerce-account .woocommerce-MyAccount-navigation a:focus-visible {
  color: #71890d !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation .is-active a,
body.woocommerce-account .woocommerce-MyAccount-navigation .is-active a:hover,
body.woocommerce-account .woocommerce-MyAccount-navigation .is-active a:focus-visible {
  background: #afca0b !important;
  color: #fff !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li > a:hover,
body.woocommerce-account .woocommerce-MyAccount-navigation li > a:focus-visible {
  --theme-link-hover-color: #71890d !important;
  --theme-link-initial-color: #71890d !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active > a,
body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active > a:hover,
body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active > a:focus-visible,
body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active > a * {
  --theme-link-hover-color: #fff !important;
  --theme-link-initial-color: #fff !important;
  color: #fff !important;
}
/* Blocksy's account hover is deliberately overridden without theme variables. */
body.woocommerce-account .woocommerce-MyAccount-navigation ul li > a:hover,
body.woocommerce-account .woocommerce-MyAccount-navigation ul li > a:focus,
body.woocommerce-account .woocommerce-MyAccount-navigation ul li > a:focus-visible {
  background-color: #f2f6e8 !important;
  color: #71890d !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active > a:hover,
body.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active > a:focus,
body.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active > a:focus-visible {
  background-color: #afca0b !important;
  color: #fff !important;
}

/* Lost-password, search and guest checkout follow the same Clinex green UI. */
body.woocommerce-lost-password .lost_reset_password {
  background: #fff;
  border: 1px solid #e1e7d7;
  border-radius: 16px;
  margin: 18px auto 42px;
  max-width: 560px;
  padding: 30px 32px;
}
body.woocommerce-lost-password .lost_reset_password input[type="text"],
body.woocommerce-lost-password .lost_reset_password input[type="email"] {
  background: #fff !important;
  border: 1px solid #dbe1d5 !important;
  border-radius: 9px !important;
  box-shadow: none !important;
  color: #35413a !important;
  min-height: 48px;
  padding: 10px 13px !important;
}
body.woocommerce-lost-password .lost_reset_password input:focus {
  border-color: #afca0b !important;
  box-shadow: 0 0 0 3px rgba(175, 202, 11, .16) !important;
  outline: 0;
}
body.woocommerce-lost-password .lost_reset_password .button {
  align-items: center;
  background: #afca0b !important;
  border: 1px solid #afca0b !important;
  border-radius: 9px !important;
  box-shadow: none !important;
  color: #fff !important;
  display: inline-flex;
  font-weight: 800;
  justify-content: center;
  margin-top: 6px;
  min-height: 46px;
  padding: 10px 20px;
}
body.woocommerce-lost-password .lost_reset_password .button:hover,
body.woocommerce-lost-password .lost_reset_password .button:focus-visible {
  background: #71890d !important;
  border-color: #71890d !important;
  color: #fff !important;
}

body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info {
  align-items: center;
  background: #f3f7e7;
  border: 1px solid #dce8bc;
  border-radius: 12px;
  color: #35413a;
  display: flex;
  flex-wrap: wrap;
  gap: 10px 16px;
  margin: 0 0 20px;
  padding: 14px 16px 14px 52px;
  position: relative;
}
body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info::before {
  color: #86a912;
  left: 20px;
  margin: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
body.woocommerce-checkout .woocommerce-form-login-toggle .showlogin {
  align-items: center;
  background: #afca0b;
  border: 1px solid #afca0b;
  border-radius: 8px;
  color: #fff !important;
  display: inline-flex;
  font-size: 14px;
  font-weight: 800;
  justify-content: center;
  margin-left: auto;
  min-height: 38px;
  padding: 7px 14px;
  text-decoration: none !important;
}
body.woocommerce-checkout .woocommerce-form-login-toggle .showlogin:hover,
body.woocommerce-checkout .woocommerce-form-login-toggle .showlogin:focus-visible {
  background: #71890d;
  border-color: #71890d;
  color: #fff !important;
}
body.woocommerce-checkout form.woocommerce-form-login.login {
  background: #fbfcf8;
  border: 1px solid #dce8bc !important;
  border-radius: 14px;
  box-shadow: 0 12px 30px rgba(31, 50, 39, .06);
  box-sizing: border-box;
  margin: -4px 0 26px !important;
  max-width: 760px;
  overflow: hidden;
  padding: 22px 24px 20px !important;
}
body.woocommerce-checkout form.woocommerce-form-login.login > p:first-child {
  color: #5d6862;
  line-height: 1.55;
  margin: 0 0 18px;
}
body.woocommerce-checkout form.woocommerce-form-login.login .form-row-first,
body.woocommerce-checkout form.woocommerce-form-login.login .form-row-last {
  box-sizing: border-box;
  margin-bottom: 16px;
}
body.woocommerce-checkout form.woocommerce-form-login.login label:not(.woocommerce-form-login__rememberme) {
  color: #35413a;
  display: block;
  font-size: 14px;
  font-weight: 750;
  margin: 0 0 7px;
}
body.woocommerce-checkout form.woocommerce-form-login.login input.input-text {
  background: #fff !important;
  border: 1px solid #dce3d7 !important;
  border-radius: 9px !important;
  box-shadow: none !important;
  color: #35413a !important;
  min-height: 46px;
  padding: 10px 13px !important;
  width: 100%;
}
body.woocommerce-checkout form.woocommerce-form-login.login input.input-text:focus {
  border-color: #afca0b !important;
  box-shadow: 0 0 0 3px rgba(175, 202, 11, .16) !important;
  outline: 0;
}
body.woocommerce-checkout form.woocommerce-form-login.login > .form-row:not(.form-row-first):not(.form-row-last) {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 12px 18px;
  margin: 2px 0 0;
}
body.woocommerce-checkout form.woocommerce-form-login.login .woocommerce-form-login__rememberme {
  align-items: center;
  color: #4f5e56;
  cursor: pointer;
  display: inline-flex;
  font-size: 14px;
  font-weight: 650;
  gap: 8px;
  margin: 0;
}
body.woocommerce-checkout form.woocommerce-form-login.login .woocommerce-form-login__rememberme input {
  accent-color: #afca0b;
  height: 18px;
  margin: 0;
  min-height: 18px;
  width: 18px;
}
body.woocommerce-checkout form.woocommerce-form-login.login .woocommerce-form-login__submit {
  align-items: center;
  background: #afca0b !important;
  border: 1px solid #afca0b !important;
  border-radius: 9px !important;
  box-shadow: none !important;
  color: #fff !important;
  display: inline-flex;
  font-size: 15px;
  font-weight: 800;
  justify-content: center;
  margin: 0 0 0 auto !important;
  min-height: 44px;
  padding: 9px 20px !important;
}
body.woocommerce-checkout form.woocommerce-form-login.login .woocommerce-form-login__submit:hover,
body.woocommerce-checkout form.woocommerce-form-login.login .woocommerce-form-login__submit:focus-visible {
  background: #71890d !important;
  border-color: #71890d !important;
  color: #fff !important;
}
body.woocommerce-checkout form.woocommerce-form-login.login .lost_password {
  margin: 12px 0 0;
}
body.woocommerce-checkout form.woocommerce-form-login.login .lost_password a {
  color: #71890d !important;
  font-size: 14px;
  font-weight: 750;
  text-decoration: none;
}
body.woocommerce-checkout form.woocommerce-form-login.login .lost_password a:hover,
body.woocommerce-checkout form.woocommerce-form-login.login .lost_password a:focus-visible {
  color: #52670a !important;
  text-decoration: underline;
}
body.woocommerce-checkout .woocommerce-account-fields {
  background: #f8faf5;
  border: 1px solid #e1e7d7;
  border-radius: 12px;
  margin: 18px 0 22px;
  padding: 14px 16px;
}
body.woocommerce-checkout .woocommerce-account-fields .create-account { margin-top: 14px; }
body.woocommerce-checkout .woocommerce-account-fields .woocommerce-form__label-for-checkbox {
  align-items: center;
  color: #35413a;
  cursor: pointer;
  display: inline-flex;
  font-size: 15px;
  font-weight: 750;
  gap: 10px;
  margin: 0;
}
body.woocommerce-checkout .woocommerce-account-fields input[type="checkbox"] {
  accent-color: #afca0b;
  height: 20px;
  margin: 0;
  min-height: 20px;
  width: 20px;
}

/* The Blocksy search icon inherits a blue palette in a few header states. */
#header [data-id="search"],
#header [data-id="search"] button,
#header [data-id="search"] a,
#header [data-row="middle"] .ct-header-search,
.clinex-mobile-search {
  color: #46584d !important;
}
#header [data-id="search"]:hover,
#header [data-id="search"] button:hover,
#header [data-id="search"] a:hover,
#header [data-row="middle"] .ct-header-search:hover,
.clinex-mobile-search:hover { color: #71890d !important; }
#header [data-id="search"]:hover,
#header [data-id="search"]:focus-within,
#header [data-id="search"] button:hover,
#header [data-id="search"] button:focus-visible,
#header [data-id="search"] a:hover,
#header [data-id="search"] a:focus-visible {
  --theme-icon-color: #71890d !important;
  --theme-icon-hover-color: #71890d !important;
  color: #71890d !important;
}
#header [data-id="search"]:hover svg,
#header [data-id="search"]:focus-within svg,
#header [data-id="search"] button:hover svg,
#header [data-id="search"] button:focus-visible svg,
#header [data-id="search"] a:hover svg,
#header [data-id="search"] a:focus-visible svg {
  color: #71890d !important;
  stroke: #71890d !important;
}
/* Blocksy's search glyph is a filled SVG. Keep its hover compact and flat. */
#header [data-id="search"] button,
#header [data-id="search"] a {
  background: transparent !important;
  box-shadow: none !important;
}
#header [data-id="search"] button:hover,
#header [data-id="search"] button:focus-visible,
#header [data-id="search"] a:hover,
#header [data-id="search"] a:focus-visible {
  background: transparent !important;
  box-shadow: none !important;
  transform: none !important;
}
#header [data-id="search"] .ct-icon,
#header [data-id="search"] button .ct-icon,
#header [data-id="search"] a .ct-icon {
  fill: currentColor !important;
  height: 15px !important;
  overflow: visible !important;
  stroke: none !important;
  transform: none !important;
  width: 15px !important;
}
#header [data-id="search"] button:hover .ct-icon,
#header [data-id="search"] button:focus-visible .ct-icon,
#header [data-id="search"] a:hover .ct-icon,
#header [data-id="search"] a:focus-visible .ct-icon { fill: #71890d !important; }

@media (max-width: 767px) {
  body.woocommerce-cart .woocommerce-cart-form .quantity {
    height: 48px;
    min-width: 132px;
    width: 132px !important;
  }
  body.woocommerce-cart .woocommerce-cart-form .quantity .qty {
    height: 46px;
    padding-inline: 43px !important;
    width: 130px !important;
  }
  body.woocommerce-cart .woocommerce-cart-form .quantity .ct-increase,
  body.woocommerce-cart .woocommerce-cart-form .quantity .ct-decrease {
    height: 46px !important;
    width: 42px !important;
  }
  body.woocommerce-cart .woocommerce-cart-form button.button,
  body.woocommerce-cart .wc-proceed-to-checkout .checkout-button {
    min-height: 48px;
    width: 100%;
  }
  body.woocommerce-cart .return-to-shop .button,
  body.woocommerce-cart #main a.wc-backward,
  body.woocommerce-cart #main .shipping-calculator-button {
    min-height: 48px;
    width: 100%;
  }
  body.woocommerce-cart .woocommerce-notices-wrapper .restore-item,
  body.woocommerce-cart .woocommerce-message .restore-item,
  body.woocommerce-cart .woocommerce-info .restore-item,
  body.woocommerce-cart .woocommerce-error .restore-item {
    margin-left: 6px;
    min-height: 40px;
  }
  body.woocommerce-account .u-columns {
    gap: 16px;
    grid-template-columns: 1fr;
    margin-bottom: 28px;
  }
  body.woocommerce-account .u-columns > div { padding: 24px 20px; }
  body.woocommerce-account .woocommerce-form-login .button,
  body.woocommerce-account .woocommerce-form-register .button { width: 100%; }
  body.woocommerce-lost-password .lost_reset_password { margin-bottom: 30px; padding: 24px 20px; }
  body.woocommerce-lost-password .lost_reset_password .button { width: 100%; }
  body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info { align-items: stretch; padding: 14px; }
  body.woocommerce-checkout .woocommerce-form-login-toggle .showlogin { margin-left: 0; width: 100%; }
}

/* Imported language pages retain legacy markup; normalize it to the rebuilt Clinex layout. */
.clinex-imported-static { width: min(1140px, calc(100% - 48px)); margin: 0 auto; padding: 64px 0 84px; }
.clinex-imported-static > #top-title { display: none; }
.clinex-imported-static .outer, .clinex-imported-static .wrapper, .clinex-imported-static .content { width: 100%; max-width: none; margin: 0; padding: 0; }
.clinex-imported-static .content-1 > table { width: 100% !important; border-collapse: separate !important; border-spacing: 34px 0 !important; }
.clinex-imported-static .content-1 > table > tbody > tr > td { width: 50% !important; vertical-align: top; }
.clinex-imported-static h2, .clinex-imported-static h3 { color: #25382d; line-height: 1.12; }
.clinex-imported-static h2 { font-size: clamp(28px, 3vw, 42px); margin: 0 0 20px; }
.clinex-imported-static h3 { font-size: clamp(23px, 2.4vw, 32px); margin: 36px 0 14px; }
.clinex-imported-static p, .clinex-imported-static li { color: #5f6966; font-size: 17px; line-height: 1.7; }
.clinex-imported-static a { color: #86a912; }
.clinex-imported-static .gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; margin: 42px 0; }
.clinex-imported-static .gallery > p { margin: 0; }
.clinex-imported-static .photo-wrap, .clinex-imported-static .photo, .clinex-imported-static .bg { display: block; }
.clinex-imported-static .gallery img { display: block; width: 100%; height: 100%; max-height: 390px; object-fit: cover; border-radius: 2px; }
.clinex-imported-static .content-1 td > p:first-child img { display: block; width: min(100%, 420px) !important; height: auto; margin: 0 auto; }
@media (max-width: 767px) {
  .clinex-imported-static { width: min(100% - 32px, 620px); padding: 38px 0 54px; }
  .clinex-imported-static .content-1 > table, .clinex-imported-static .content-1 > table > tbody, .clinex-imported-static .content-1 > table > tbody > tr, .clinex-imported-static .content-1 > table > tbody > tr > td { display: block; width: 100% !important; }
  .clinex-imported-static .content-1 > table { border-spacing: 0 !important; }
  .clinex-imported-static .content-1 > table > tbody > tr > td + td { margin-top: 30px; }
  .clinex-imported-static .gallery { gap: 12px; margin: 28px 0; }
  .clinex-imported-static .gallery img { max-height: 230px; }
  .clinex-imported-static p, .clinex-imported-static li { font-size: 16px; }
}
/* Language news archive. */
.clinex-news-index{padding:60px 0 90px}.clinex-news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.clinex-news-card{overflow:hidden;border:1px solid #e3e7dc;border-radius:18px;background:#fff}.clinex-news-card img{display:block;width:100%;aspect-ratio:1.5;object-fit:cover}.clinex-news-card h2{margin:22px 22px 10px;font-size:22px;line-height:1.18}.clinex-news-card p{margin:0 22px 24px;color:#66706b;line-height:1.55}@media(max-width:850px){.clinex-news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.clinex-news-index{padding:34px 20px 56px}.clinex-news-grid{grid-template-columns:1fr;gap:18px}}

/* Product-card status and sale prices: compact labels that also fit long translations. */
body.woocommerce-shop .out-of-stock-badge,
body.tax-product_cat .out-of-stock-badge,
body.single-product .related.products .out-of-stock-badge,
.clinex-home-product-grid .out-of-stock-badge {
  align-items: center !important;
  background: #56625e !important;
  border-radius: 7px !important;
  box-sizing: border-box !important;
  color: #fff !important;
  display: flex !important;
  font-size: 10px !important;
  font-weight: 850 !important;
  height: auto !important;
  justify-content: center !important;
  letter-spacing: .035em;
  line-height: 1 !important;
  max-width: calc(100% - 18px) !important;
  min-height: 29px !important;
  min-width: 0 !important;
  padding: 7px 10px !important;
  white-space: nowrap !important;
  width: auto !important;
}
body.woocommerce-shop span.onsale,
body.tax-product_cat span.onsale,
body.single-product .related.products span.onsale,
.clinex-home-product-grid span.onsale {
  align-items: center !important;
  background: #c84136 !important;
  border-radius: 7px !important;
  box-sizing: border-box !important;
  color: #fff !important;
  display: flex !important;
  font-size: 10px !important;
  font-weight: 850 !important;
  height: auto !important;
  justify-content: center !important;
  line-height: 1 !important;
  min-height: 29px !important;
  min-width: 0 !important;
  padding: 7px 10px !important;
  white-space: nowrap !important;
  width: auto !important;
}
body.woocommerce-shop ul.products li.product > .price .sale-price,
body.tax-product_cat ul.products li.product > .price .sale-price,
body.single-product .related.products li.product > .price .sale-price,
.clinex-home-product-grid li.product > .price .sale-price {
  align-items: baseline;
  display: inline-flex !important;
  flex-direction: row !important;
  gap: 7px;
}
body.woocommerce-shop ul.products li.product > .price .sale-price del,
body.tax-product_cat ul.products li.product > .price .sale-price del,
body.single-product .related.products li.product > .price .sale-price del,
.clinex-home-product-grid li.product > .price .sale-price del {
  color: #a8aeaa !important;
  font-size: .78em !important;
  font-weight: 650 !important;
  order: 1;
  text-decoration: line-through !important;
}
body.woocommerce-shop ul.products li.product > .price .sale-price ins,
body.tax-product_cat ul.products li.product > .price .sale-price ins,
body.single-product .related.products li.product > .price .sale-price ins,
.clinex-home-product-grid li.product > .price .sale-price ins {
  color: #c84136 !important;
  font-size: 1em !important;
  font-weight: 850 !important;
  order: 2;
  text-decoration: none !important;
}
@media (max-width: 767px) {
  body.woocommerce-shop .out-of-stock-badge,
  body.tax-product_cat .out-of-stock-badge,
  body.single-product .related.products .out-of-stock-badge,
  .clinex-home-product-grid .out-of-stock-badge,
  body.woocommerce-shop span.onsale,
  body.tax-product_cat span.onsale,
  body.single-product .related.products span.onsale,
  .clinex-home-product-grid span.onsale {
    font-size: 9px !important;
    min-height: 27px !important;
    padding: 6px 8px !important;
  }
}

/* Keep the single contact action full-width after the generic two-button card grid. */
body.woocommerce-shop ul.products .ct-woo-card-actions--contact,
body.tax-product_cat ul.products .ct-woo-card-actions--contact,
body.single-product .related.products .ct-woo-card-actions--contact {
  grid-template-columns: minmax(0, 1fr) !important;
}

/* Give the short sale marker breathing room and visually mute unavailable products. */
body.woocommerce-shop span.onsale,
body.tax-product_cat span.onsale,
body.single-product .related.products span.onsale,
.clinex-home-product-grid span.onsale {
  padding-inline: 14px !important;
}
body.woocommerce-shop ul.products li.product:has(.out-of-stock-badge) .ct-media-container img,
body.tax-product_cat ul.products li.product:has(.out-of-stock-badge) .ct-media-container img,
body.single-product .related.products li.product:has(.out-of-stock-badge) .ct-media-container img,
.clinex-home-product-grid li.product:has(.out-of-stock-badge) .ct-media-container img {
  filter: brightness(.82) saturate(.78);
}
ul.products li.product span.onsale {
  max-width: calc(100% - 18px) !important;
  min-width: 0 !important;
  padding-inline: 14px !important;
  width: auto !important;
}

/* Registration offer: make it feel like a focused, premium call to action. */
.clinex-home-discount {
  background: linear-gradient(112deg, #708f0f 0%, #91b719 58%, #b3d22a 100%);
  border-radius: 22px;
  box-shadow: 0 16px 34px rgba(72, 96, 14, .18);
  margin: clamp(18px, 2.5vw, 34px) clamp(16px, 4vw, 48px) 0;
  overflow: hidden;
  padding-inline: clamp(22px, 3.2vw, 42px);
}
.clinex-home-discount__badge {
  border: 6px solid rgba(255, 255, 255, .32);
  box-shadow: 0 12px 28px rgba(41, 57, 6, .28);
  font-size: 1.55rem;
  height: 84px;
  width: 84px;
}
.clinex-home-discount__inner:hover .clinex-home-discount__badge {
  box-shadow: 0 15px 32px rgba(41, 57, 6, .34);
  transform: scale(1.045);
}
@media (max-width: 760px) {
  .clinex-home-discount { margin: 14px 16px 0; padding-inline: 20px; }
  .clinex-home-discount__badge { font-size: 1.18rem; height: 64px; width: 64px; }
}
@media (max-width: 420px) {
  .clinex-home-discount { margin-inline: 12px; padding-inline: 16px; }
  .clinex-home-discount__badge { border-width: 4px; font-size: 1rem; height: 54px; width: 54px; }
}

/* Mobile offer and menu: important controls stay in the first screen. */
@media (max-width: 999px) {
  .clinex-home-discount {
    border-radius: 18px;
    box-shadow: 0 13px 28px rgba(72, 96, 14, .22);
  }
  .clinex-home-discount__badge {
    background: #283d2e;
    border-color: rgba(216, 237, 84, .9);
    color: #fff;
  }

  .clinex-mobile-nav-logo { order: 1; }
  .clinex-mobile-nav-meta {
    align-items: stretch;
    border: 0;
    gap: 10px;
    grid-template-columns: minmax(0, 1fr) auto;
    margin: 0 0 16px;
    order: 2;
    padding: 0;
  }
  .clinex-mobile-nav-list { order: 3; }
  .clinex-mobile-nav-meta > a,
  .clinex-mobile-nav-meta .clinex-language-switcher summary {
    background: rgba(255, 255, 255, .09);
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 9px;
    color: #fff;
    font-size: 15px;
    font-weight: 720;
    min-height: 46px;
    padding: 0 13px;
  }
  .clinex-mobile-nav-meta > a { justify-content: flex-start; }
  .clinex-mobile-nav-meta svg { height: 20px; width: 20px; }
  .clinex-mobile-nav-meta .clinex-language-switcher summary { gap: 7px; white-space: nowrap; }
  .clinex-mobile-nav-meta .clinex-language-switcher > div {
    background: #fff;
    border-radius: 9px;
    box-shadow: 0 14px 35px rgba(0,0,0,.24);
    min-width: 142px;
    padding: 6px 0;
    position: absolute;
    right: 0;
    top: calc(100% + 7px);
  }
  .clinex-mobile-nav-meta .clinex-language-switcher > div a {
    color: #25382d;
    font-size: 14px;
    padding: 9px 13px;
  }
}

/* Match the offer badge accent across desktop and mobile. */
.clinex-home-discount__badge { border-color: rgba(216, 237, 84, .9); }

/* The home collections use the same edge-to-edge mobile grid as the catalogue. */
@media (max-width: 760px) {
  .clinex-home-products { padding-inline: 0; }
  .clinex-home-products .clinex-home-shell {
    margin-inline: 0;
    max-width: none;
    width: 100%;
  }
}

/* Related-product cards need only product, price and actions. */
body.single-product .related.products .entry-meta,
body.single-product .related.products .meta-categories {
  display: none !important;
}

/* Checkout validation must remain legible and clear on every language. */
body.woocommerce-checkout .woocommerce-error,
body.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-error {
  background: #fff1f0 !important;
  border: 1px solid #e89a94 !important;
  border-left: 4px solid #c7443b !important;
  border-radius: 9px !important;
  color: #8f2b25 !important;
}
body.woocommerce-checkout .woocommerce-error li,
body.woocommerce-checkout .woocommerce-error a,
body.woocommerce-checkout .woocommerce-error::before {
  color: #8f2b25 !important;
}
body.woocommerce-checkout .clinex-required-marker {
  color: #c7443b;
  font-size: 1em;
  font-style: normal;
  font-weight: 850;
  text-decoration: none;
}
/* The delivery- and company-dependent fields can be rebuilt by WooCommerce.
   Hide its marker there; checkout.js adds the single Clinex marker instead. */
body.woocommerce-checkout #billing_company_field label .required,
body.woocommerce-checkout #billing_company_reg_field label .required,
body.woocommerce-checkout #billing_country_field label .required,
body.woocommerce-checkout #billing_address_1_field label .required,
body.woocommerce-checkout #billing_postcode_field label .required,
body.woocommerce-checkout #billing_city_field label .required {
  display: none !important;
}
@media (max-width: 767px) {
  body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info {
    display: block !important;
    line-height: 1.45;
    padding: 14px 14px 14px 48px;
    text-align: left;
  }
  body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info::before {
    left: 16px;
    top: 18px;
    transform: none;
  }
  body.woocommerce-checkout .woocommerce-form-login-toggle .showlogin {
    display: flex;
    justify-content: center !important;
    box-sizing: border-box;
    margin: 12px 0 0 -34px !important;
    min-height: 40px;
    text-align: center !important;
    width: calc(100% + 34px) !important;
  }
  body.woocommerce-checkout form.woocommerce-form-login.login {
    border-radius: 12px;
    margin: -4px 0 22px !important;
    max-width: none;
    padding: 18px 16px !important;
    width: 100%;
  }
  body.woocommerce-checkout form.woocommerce-form-login.login .form-row-first,
  body.woocommerce-checkout form.woocommerce-form-login.login .form-row-last {
    float: none;
    width: 100%;
  }
  body.woocommerce-checkout form.woocommerce-form-login.login > .form-row:not(.form-row-first):not(.form-row-last) {
    align-items: stretch;
    flex-direction: column;
  }
  body.woocommerce-checkout form.woocommerce-form-login.login .woocommerce-form-login__submit {
    margin: 0 !important;
    width: 100%;
  }
}
