/* v2.6.5: final corrective layer */

/* Homepage preference cards: keep icon, copy and arrow in separate columns. */
.es-home-fast .es-fast-find {
  grid-template-columns: minmax(320px, .8fr) minmax(0, 1.35fr);
  gap: clamp(24px, 3vw, 48px);
  align-items: stretch;
}
.es-home-fast .es-fast-find__links {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.es-home-fast .es-fast-find__links > a {
  display: grid !important;
  grid-template-columns: 52px minmax(0, 1fr) 40px !important;
  grid-template-rows: 1fr !important;
  align-items: center !important;
  gap: 16px !important;
  min-height: 128px !important;
  padding: 22px !important;
  overflow: hidden;
}
.es-home-fast .es-fast-find__links > a > .es-icon:first-child,
.es-home-fast .es-fast-find__links > a > svg:first-child {
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: 28px !important;
  height: 28px !important;
  padding: 12px !important;
  box-sizing: content-box;
  align-self: center !important;
}
.es-home-fast .es-fast-find__links > a > span {
  grid-column: 2 !important;
  grid-row: 1 !important;
  align-self: center !important;
  min-width: 0;
  display: flex !important;
  flex-direction: column;
  gap: 7px;
}
.es-home-fast .es-fast-find__links > a > span strong {
  display: block;
  font-size: 1rem;
  line-height: 1.25;
}
.es-home-fast .es-fast-find__links > a > span:not(:first-child) {
  color: var(--es-muted, #707875);
}
.es-home-fast .es-fast-find__links > a > .es-icon:last-child,
.es-home-fast .es-fast-find__links > a > svg:last-child {
  grid-column: 3 !important;
  grid-row: 1 !important;
  justify-self: end;
  width: 18px !important;
  height: 18px !important;
  padding: 10px !important;
  box-sizing: content-box;
  border-radius: 12px;
  background: #fff0eb;
  color: var(--es-accent, #d45738);
}

/* Checkout payment methods: every gateway begins at the left and logos never overlap copy. */
.woocommerce-checkout .es-onepage-payment ul.wc_payment_methods {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  grid-auto-flow: row !important;
  align-items: start !important;
  gap: 10px !important;
}
.woocommerce-checkout .es-onepage-payment ul.wc_payment_methods > li.wc_payment_method,
.woocommerce-checkout .es-onepage-payment ul.wc_payment_methods > li.wc_payment_method:first-of-type {
  grid-column: auto !important;
  grid-row: auto !important;
  width: 100% !important;
  min-width: 0 !important;
  align-self: start !important;
  overflow: hidden !important;
}
.woocommerce-checkout .es-onepage-payment li.wc_payment_method > input {
  top: 19px !important;
  left: 14px !important;
  z-index: 2;
}
.woocommerce-checkout .es-onepage-payment li.wc_payment_method > label {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 48px !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
  min-height: 58px !important;
  padding: 13px 12px 13px 42px !important;
  line-height: 1.35 !important;
  overflow: hidden;
}
.woocommerce-checkout .es-onepage-payment li.wc_payment_method > label > img,
.woocommerce-checkout .es-onepage-payment li.wc_payment_method > label img {
  grid-column: 2 !important;
  justify-self: end !important;
  width: auto !important;
  max-width: 46px !important;
  height: auto !important;
  max-height: 28px !important;
  object-fit: contain !important;
  margin: 0 !important;
  float: none !important;
}
.woocommerce-checkout .es-onepage-payment li.wc_payment_method .payment_box {
  display: none;
  grid-column: 1 / -1 !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 14px 16px 42px !important;
  line-height: 1.55;
}
.woocommerce-checkout .es-onepage-payment li.wc_payment_method:has(input:checked) .payment_box {
  display: block;
}

@media (max-width: 1100px) {
  .woocommerce-checkout .es-onepage-payment ul.wc_payment_methods {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 860px) {
  .es-home-fast .es-fast-find { grid-template-columns: 1fr; }
  .es-home-fast .es-fast-find__links { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 620px) {
  .es-home-fast .es-fast-find__links { grid-template-columns: 1fr; }
  .es-home-fast .es-fast-find__links > a { min-height: 104px !important; padding: 16px !important; }
  .woocommerce-checkout .es-onepage-payment ul.wc_payment_methods { grid-template-columns: 1fr !important; }
}
