/*
Theme Name: VANTERA Labs
Theme URI: https://vanteralab.com
Author: VANTERA Labs
Description: Original VANTERA OpenDesign storefront in React, with native WooCommerce checkout.
Version: 1.0.0
Requires at least: 6.5
Requires PHP: 8.1
Text Domain: vantera-labs
*/
.woocommerce .button, .woocommerce button.button, .wp-element-button { background: #111; color: #f5f3ee; padding: 16px 24px; border-radius: 8px; }
.woocommerce input.input-text, .woocommerce textarea, .woocommerce select { padding: 12px; border: 1px solid #d6cbbe; background: #f5f3ee; border-radius: 4px; }
.woocommerce form .form-row label { display: block; }
.native-content { min-height: 60vh; }
.native-content h1 { margin-bottom: 32px; }
.native-content .woocommerce { min-width: 0; }
.native-content .woocommerce h2 { font-size: clamp(24px, 3vw, 32px); font-weight: 500; }
.native-content .woocommerce form.login,
.native-content .woocommerce form.register,
.native-content .woocommerce form.lost_reset_password {
  max-width: 620px; padding: 28px; border-color: var(--c-line); border-radius: 12px;
}
.native-content .woocommerce form .woocommerce-Input {
  width: 100%; min-height: 48px; padding: 12px;
  background: var(--c-ivory); border: 1px solid var(--c-line-strong); border-radius: 4px;
}
.native-content .woocommerce form .form-row { margin-bottom: 16px; }
.native-content .woocommerce form .show-password-input { top: 12px; right: 12px; }
.native-content .woocommerce .lost_password a,
.native-content .woocommerce .woocommerce-privacy-policy-text a { text-decoration: underline; text-underline-offset: 3px; }
.woocommerce form.checkout {
  display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
  grid-template-rows: 48px auto; gap: 24px 48px; align-items: start;
}
.woocommerce form.checkout #customer_details {
  grid-column: 1; grid-row: 1 / span 2; width: 100%;
  display: grid; gap: 24px; padding: 28px;
  border: 1px solid var(--c-line); border-radius: 12px;
}
.woocommerce form.checkout #customer_details .col-1,
.woocommerce form.checkout #customer_details .col-2 { float: none; width: 100%; }
.woocommerce form.checkout #customer_details::before,
.woocommerce form.checkout #customer_details::after { display: none; }
.woocommerce form.checkout #order_review_heading { grid-column: 2; margin: 0; font-size: 24px; font-weight: 500; }
.woocommerce form.checkout #order_review {
  grid-column: 2; min-width: 0; padding: 24px;
  border: 1px solid var(--c-line); border-radius: 12px;
}
.woocommerce form.checkout h3 { font-size: 20px; margin-bottom: 16px; font-weight: 500; }
.woocommerce form.checkout .form-row { margin-bottom: 16px; }
.woocommerce form.checkout input.input-text,
.woocommerce form.checkout textarea { background: var(--c-ivory); border: 1px solid var(--c-line-strong); min-height: 48px; }
.woocommerce form.checkout .select2-container .select2-selection--single { background: var(--c-ivory); border: 1px solid var(--c-line-strong); min-height: 48px; display: flex; align-items: center; }
.woocommerce form.checkout .select2-selection__arrow { top: 11px !important; }
.woocommerce-info { border-top-color: var(--c-graphite); background: var(--c-ivory-2); }
.woocommerce-info::before { color: var(--c-graphite); }
.woocommerce #payment { background: var(--c-ivory-2); border-radius: 8px; }
.woocommerce #payment div.payment_box { background: var(--c-sandstone-deep); color: var(--c-ink); }
.woocommerce #payment div.payment_box::before { border-bottom-color: var(--c-sandstone-deep); }
.woocommerce #payment #place_order,
.woocommerce a.button.alt, .woocommerce button.button.alt {
  background: var(--c-graphite); color: var(--c-ivory); padding: 16px 24px;
  border-radius: 8px; font-family: var(--font); font-size: 12px;
  font-weight: 600; letter-spacing: .14em; text-transform: uppercase;
}
.woocommerce #payment #place_order:hover,
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover { background: var(--c-graphite-2); color: var(--c-ivory); }
.woocommerce form.checkout table.shop_table { border: 0; }
.woocommerce form.checkout table.shop_table td,
.woocommerce form.checkout table.shop_table th { padding: 12px 4px; border-color: var(--c-line); overflow-wrap: anywhere; }
@media (max-width: 1024px) {
  .woocommerce form.checkout { grid-template-columns: minmax(0, 1fr); grid-template-rows: auto; }
  .woocommerce form.checkout #customer_details { grid-row: auto; }
  .woocommerce form.checkout #order_review_heading,
  .woocommerce form.checkout #order_review { grid-column: 1; }
}
@media (max-width: 640px) {
  .woocommerce form.checkout #customer_details,
  .woocommerce form.checkout #order_review { padding: 20px; }
  .native-content .woocommerce form.login,
  .native-content .woocommerce form.register,
  .native-content .woocommerce form.lost_reset_password { padding: 20px; }
}
@media (max-width: 860px) {
  body:not(.home):not(.blog) .site-header .header-inner {
    display: flex; flex-wrap: wrap; gap: 0; padding-block: 16px 8px;
  }
  body:not(.home):not(.blog) .site-header .main-nav {
    display: flex; width: 100%; justify-content: flex-start; gap: 24px; margin-top: 8px;
  }
  body:not(.home):not(.blog) .site-header .main-nav a {
    min-height: 44px; display: inline-flex; align-items: center; font-size: 11px;
  }
}
