/* Themespress 2.0 Beta 8.3 — unified form system
   Global frontend forms + WooCommerce classic/blocks.
   Search overlay is outside .tp-main and keeps its dedicated design. */

.tp-main {
  --tp-field-bg: rgba(255,255,255,.86);
  --tp-field-bg-focus: #fff;
  --tp-field-border: rgba(11,11,12,.22);
  --tp-field-border-hover: rgba(11,11,12,.46);
  --tp-field-radius: 0px;
  --tp-field-height: 54px;
  --tp-field-pad-x: 16px;
  --tp-field-shadow: 0 16px 40px rgba(11,11,12,.05);
}

/* ---------- Base fields ---------- */
.tp-main:not(.tp-commerce) :where(input[type="text"],input[type="email"],input[type="url"],input[type="tel"],input[type="password"],input[type="search"],input[type="number"],input[type="date"],input[type="time"],input[type="datetime-local"],input[type="month"],input[type="week"],select,textarea),
.tp-main:not(.tp-commerce) .select2-container .select2-selection--single,
.tp-main:not(.tp-commerce) .select2-container .select2-selection--multiple {
  width: 100%;
  max-width: 100%;
  min-height: var(--tp-field-height);
  border: 1px solid var(--tp-field-border) !important;
  border-radius: var(--tp-field-radius) !important;
  background: var(--tp-field-bg) !important;
  color: var(--tp-ink) !important;
  box-shadow: none;
  outline: 0;
  padding: 0 var(--tp-field-pad-x);
  font: 500 15px/1.3 Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  transition: border-color .22s ease, background .22s ease, box-shadow .22s ease, transform .22s ease;
}

.tp-main:not(.tp-commerce) textarea {
  min-height: 150px;
  padding-top: 15px;
  padding-bottom: 15px;
  resize: vertical;
  line-height: 1.55;
}

.tp-main:not(.tp-commerce) select {
  appearance: none;
  cursor: pointer;
  padding-right: 46px;
  background-image:
    linear-gradient(45deg,transparent 50%,var(--tp-ink) 50%),
    linear-gradient(135deg,var(--tp-ink) 50%,transparent 50%) !important;
  background-position:
    calc(100% - 20px) 50%,
    calc(100% - 15px) 50% !important;
  background-size: 5px 5px,5px 5px !important;
  background-repeat: no-repeat !important;
}

.tp-main:not(.tp-commerce) :where(input,select,textarea):hover {
  border-color: var(--tp-field-border-hover) !important;
}

.tp-main:not(.tp-commerce) :where(input,select,textarea):focus,
.tp-main:not(.tp-commerce) :where(input,select,textarea):focus-visible,
.tp-main:not(.tp-commerce) .select2-container--focus .select2-selection,
.tp-main:not(.tp-commerce) .select2-container--open .select2-selection {
  border-color: var(--tp-accent) !important;
  background-color: var(--tp-field-bg-focus) !important;
  box-shadow: 0 0 0 3px rgba(249,91,38,.14), var(--tp-field-shadow) !important;
  outline: 0 !important;
}

.tp-main:not(.tp-commerce) :where(input,select,textarea):disabled,
.tp-main:not(.tp-commerce) :where(input,select,textarea)[readonly] {
  opacity: .58;
  cursor: not-allowed;
  background: rgba(11,11,12,.045) !important;
}

.tp-main:not(.tp-commerce) :where(input,textarea)::placeholder {
  color: #8a8984;
  opacity: 1;
}

/* Autofill without the browser's bright yellow surface. */
.tp-main:not(.tp-commerce) input:-webkit-autofill,
.tp-main:not(.tp-commerce) input:-webkit-autofill:hover,
.tp-main:not(.tp-commerce) input:-webkit-autofill:focus {
  -webkit-text-fill-color: var(--tp-ink);
  -webkit-box-shadow: 0 0 0 1000px #fff inset !important;
  transition: background-color 9999s ease-out 0s;
}

/* ---------- Labels, rows, help ---------- */
.tp-main:not(.tp-commerce) :where(label,.form-row > label,.frm_primary_label,.wpforms-field-label) {
  display: inline-block;
  margin: 0 0 8px;
  color: var(--tp-ink);
  font: 700 12px/1.35 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;
  letter-spacing: .095em;
  text-transform: uppercase;
}

.tp-main:not(.tp-commerce) :where(.required,.frm_required,.wpforms-required-label) {
  color: var(--tp-accent) !important;
  text-decoration: none !important;
}

.tp-main:not(.tp-commerce) :where(.form-row,.frm_form_field,.wpforms-field) {
  margin-bottom: 18px;
}

.tp-main:not(.tp-commerce) :where(.description,.form-row .description,.frm_description,.wpforms-field-description) {
  display: block;
  margin-top: 7px;
  color: var(--tp-muted);
  font-size: 12px;
  line-height: 1.5;
}

.tp-main:not(.tp-commerce) fieldset {
  min-width: 0;
  margin: 0 0 28px;
  padding: 22px;
  border: 1px solid var(--tp-line);
  background: rgba(255,255,255,.32);
}

.tp-main:not(.tp-commerce) legend {
  padding: 0 8px;
  font: 700 12px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace;
  letter-spacing: .1em;
  text-transform: uppercase;
}

/* ---------- Checks / radios ---------- */
.tp-main:not(.tp-commerce) :where(input[type="checkbox"],input[type="radio"]) {
  width: 18px;
  height: 18px;
  min-height: 0;
  margin: 0 7px 0 0;
  padding: 0;
  vertical-align: -4px;
  accent-color: var(--tp-accent);
  cursor: pointer;
}

.tp-main:not(.tp-commerce) :where(.woocommerce-form__label-for-checkbox,.woocommerce-form__label-for-radio,.form-row label.checkbox) {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin: 4px 0;
  font-family: Inter,ui-sans-serif,sans-serif;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0;
  text-transform: none;
  cursor: pointer;
}

/* ---------- Buttons ---------- */
.tp-main:not(.tp-commerce) form :where(button,input[type="submit"],input[type="button"],input[type="reset"]),
.tp-main :where(.woocommerce a.button,.woocommerce button.button,.woocommerce input.button),
.tp-main .wc-block-components-button {
  appearance: none;
  min-height: 48px;
  border: 1px solid var(--tp-ink) !important;
  border-radius: 0 !important;
  background: var(--tp-ink) !important;
  color: var(--tp-light) !important;
  padding: 13px 18px !important;
  font: 800 12px/1 Inter,ui-sans-serif,sans-serif !important;
  letter-spacing: .095em;
  text-transform: uppercase;
  cursor: pointer;
  box-shadow: none !important;
  transition: transform .22s var(--tp-ease),background .22s ease,color .22s ease,border-color .22s ease !important;
}

.tp-main:not(.tp-commerce) form :where(button,input[type="submit"],input[type="button"],input[type="reset"]):hover,
.tp-main :where(.woocommerce a.button,.woocommerce button.button,.woocommerce input.button):hover,
.tp-main .wc-block-components-button:hover {
  background: var(--tp-accent) !important;
  border-color: var(--tp-accent) !important;
  color: #080808 !important;
  transform: translateY(-2px);
}

.tp-main:not(.tp-commerce) form :where(button,input[type="submit"],input[type="button"],input[type="reset"]):focus-visible,
.tp-main :where(.woocommerce a.button,.woocommerce button.button,.woocommerce input.button):focus-visible,
.tp-main .wc-block-components-button:focus-visible {
  outline: 3px solid rgba(249,91,38,.26) !important;
  outline-offset: 3px;
}

.tp-main:not(.tp-commerce) :where(button,input[type="submit"],input[type="button"]):disabled,
.tp-main :where(.button.disabled,.button:disabled) {
  opacity: .48 !important;
  cursor: not-allowed !important;
  transform: none !important;
}

/* Keep the primary product action orange. */
.tp-main .woocommerce div.product form.cart .single_add_to_cart_button,
.tp-main .woocommerce button.button.alt,
.tp-main .woocommerce a.button.alt,
.tp-main .woocommerce #place_order {
  background: var(--tp-accent) !important;
  border-color: var(--tp-accent) !important;
  color: #080808 !important;
}

.tp-main .woocommerce div.product form.cart .single_add_to_cart_button:hover,
.tp-main .woocommerce button.button.alt:hover,
.tp-main .woocommerce a.button.alt:hover,
.tp-main .woocommerce #place_order:hover {
  background: var(--tp-ink) !important;
  border-color: var(--tp-ink) !important;
  color: var(--tp-light) !important;
}

/* ---------- Validation / notices ---------- */
.tp-main :where(.woocommerce-error,.woocommerce-info,.woocommerce-message,.frm_error_style,.frm_message,.wpforms-confirmation-container-full) {
  position: relative;
  margin: 0 0 24px !important;
  padding: 16px 18px 16px 22px !important;
  border: 1px solid var(--tp-line) !important;
  border-left: 4px solid var(--tp-accent) !important;
  border-radius: 0 !important;
  background: #fff !important;
  color: var(--tp-ink) !important;
  box-shadow: var(--tp-field-shadow);
  font-size: 13px;
  line-height: 1.55;
}

.tp-main .woocommerce-error { border-left-color: #c83328 !important; }
.tp-main .woocommerce-message { border-left-color: #238b57 !important; }

.tp-main .woocommerce :where(.woocommerce-invalid input,.woocommerce-invalid select,.woocommerce-invalid textarea),
.tp-main:not(.tp-commerce) :where(input[aria-invalid="true"],textarea[aria-invalid="true"],select[aria-invalid="true"],.frm_blank_field input,.frm_blank_field textarea,.frm_blank_field select) {
  border-color: #c83328 !important;
  box-shadow: 0 0 0 3px rgba(200,51,40,.1) !important;
}

.tp-main:not(.tp-commerce) :where(.frm_error,.wpforms-error) {
  margin-top: 6px;
  color: #a72b22 !important;
  font-size: 12px;
  line-height: 1.4;
}


/* ---------- Woo native form controls (scoped; third-party catalog/filter UIs are intentionally excluded) ---------- */
:is(.woocommerce-account,.woocommerce-checkout) .woocommerce :is(
  form.login,
  form.register,
  form.checkout_coupon,
  form.woocommerce-ResetPassword,
  form.woocommerce-EditAccountForm,
  form.checkout,
  .woocommerce-address-fields
) :where(input[type="text"],input[type="email"],input[type="url"],input[type="tel"],input[type="password"],input[type="search"],input[type="number"],input[type="date"],input[type="time"],select,textarea),
.single-product .woocommerce div.product form.cart :where(input[type="number"],select,textarea) {
  width:100%;
  max-width:100%;
  min-height:var(--tp-field-height);
  border:1px solid var(--tp-field-border)!important;
  border-radius:var(--tp-field-radius)!important;
  background:var(--tp-field-bg)!important;
  color:var(--tp-ink)!important;
  box-shadow:none;
  outline:0;
  padding:0 var(--tp-field-pad-x);
  font:500 15px/1.3 Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  transition:border-color .22s ease,background .22s ease,box-shadow .22s ease;
}
:is(.woocommerce-account,.woocommerce-checkout) .woocommerce :is(
  form.login,form.register,form.checkout_coupon,form.woocommerce-ResetPassword,form.woocommerce-EditAccountForm,form.checkout,.woocommerce-address-fields
) textarea {min-height:150px;padding-top:15px;padding-bottom:15px;resize:vertical;line-height:1.55}
:is(.woocommerce-account,.woocommerce-checkout) .woocommerce :is(
  form.login,form.register,form.checkout_coupon,form.woocommerce-ResetPassword,form.woocommerce-EditAccountForm,form.checkout,.woocommerce-address-fields
) :where(input,select,textarea):focus,
.single-product .woocommerce div.product form.cart :where(input,select,textarea):focus {
  border-color:var(--tp-accent)!important;
  background-color:var(--tp-field-bg-focus)!important;
  box-shadow:0 0 0 3px rgba(249,91,38,.14),var(--tp-field-shadow)!important;
  outline:0!important;
}
:is(.woocommerce-account,.woocommerce-checkout) .woocommerce :is(
  form.login,form.register,form.checkout_coupon,form.woocommerce-ResetPassword,form.woocommerce-EditAccountForm,form.checkout,.woocommerce-address-fields
) :where(label,.form-row>label) {
  display:inline-block;
  margin:0 0 8px;
  color:var(--tp-ink);
  font:700 12px/1.35 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;
  letter-spacing:.095em;
  text-transform:uppercase;
}
:is(.woocommerce-account,.woocommerce-checkout) .woocommerce :is(
  form.login,form.register,form.checkout_coupon,form.woocommerce-ResetPassword,form.woocommerce-EditAccountForm,form.checkout,.woocommerce-address-fields
) :where(input[type="checkbox"],input[type="radio"]) {
  width:18px;height:18px;min-height:0;margin:0 7px 0 0;padding:0;vertical-align:-4px;accent-color:var(--tp-accent);cursor:pointer;
}

/* ---------- WooCommerce classic ---------- */
.woocommerce form.login,
.woocommerce form.register,
.woocommerce form.checkout_coupon,
.woocommerce form.woocommerce-ResetPassword,
.woocommerce .woocommerce-address-fields,
.woocommerce-account .woocommerce-EditAccountForm {
  margin: 0 0 28px !important;
  padding: clamp(22px,3vw,36px) !important;
  border: 1px solid var(--tp-line) !important;
  border-radius: 0 !important;
  background: rgba(255,255,255,.72);
  box-shadow: 0 20px 60px rgba(11,11,12,.045);
}

:is(.woocommerce-account,.woocommerce-checkout) .woocommerce form .form-row {
  padding: 0 !important;
  margin: 0 0 18px !important;
}

:is(.woocommerce-account,.woocommerce-checkout) .woocommerce form .form-row-first,
:is(.woocommerce-account,.woocommerce-checkout) .woocommerce form .form-row-last {
  width: calc(50% - 8px) !important;
}

.woocommerce form .show-password-input,
.woocommerce-page form .show-password-input {
  top: 50% !important;
  right: 14px !important;
  transform: translateY(-50%);
}

:is(.woocommerce-account,.woocommerce-checkout) .select2-container .select2-selection--single {
  height: var(--tp-field-height) !important;
  padding: 0 42px 0 var(--tp-field-pad-x) !important;
}

:is(.woocommerce-account,.woocommerce-checkout) .select2-container--default .select2-selection--single .select2-selection__rendered {
  padding: 0 !important;
  line-height: calc(var(--tp-field-height) - 2px) !important;
  color: var(--tp-ink) !important;
}

:is(.woocommerce-account,.woocommerce-checkout) .select2-container--default .select2-selection--single .select2-selection__arrow {
  top: 50% !important;
  right: 12px !important;
  transform: translateY(-50%);
}

.select2-dropdown {
  border: 1px solid var(--tp-field-border) !important;
  border-radius: 0 !important;
  background: #fff !important;
  box-shadow: 0 20px 60px rgba(11,11,12,.12);
}
.select2-results__option { padding: 10px 14px !important; }
.select2-container--default .select2-results__option--highlighted[aria-selected] {
  background: var(--tp-ink) !important;
  color: #fff !important;
}

/* Login / register as an editorial two-card environment. */
.woocommerce-account .u-columns.woocommerce-Addresses,
.woocommerce-account .u-columns.col2-set,
.woocommerce-account #customer_login {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: clamp(20px,3vw,40px);
}

.woocommerce-account #customer_login > .col-1,
.woocommerce-account #customer_login > .col-2,
.woocommerce-account .u-columns > .col-1,
.woocommerce-account .u-columns > .col-2 {
  float: none !important;
  width: auto !important;
  margin: 0 !important;
}

.woocommerce-account #customer_login h2,
.woocommerce-checkout #customer_details h3,
.woocommerce-checkout #order_review_heading,
.woocommerce .woocommerce-billing-fields > h3,
.woocommerce .woocommerce-shipping-fields > h3 {
  margin: 0 0 22px;
  font-size: clamp(28px,3vw,48px);
  line-height: .98;
  letter-spacing: -.045em;
}

/* Checkout: spacious, structured and still compatible with Woo fields. */
.woocommerce-checkout form.checkout {
  display: grid;
  grid-template-columns: minmax(0,1.2fr) minmax(330px,.8fr);
  grid-template-rows: auto 1fr;
  column-gap: clamp(28px,5vw,74px);
  row-gap: 14px;
  align-items: start;
}

/*
 * Woo outputs #customer_details, #order_review_heading and #order_review as
 * three siblings. Without explicit rows the tall billing column defines row 1
 * and pushes Your order below it. Spanning the customer column across both rows
 * keeps the order heading + summary anchored at the top-right.
 */
.woocommerce-checkout #customer_details {
  float: none !important;
  width: auto !important;
  grid-column: 1;
  grid-row: 1 / span 2;
  min-width: 0;
}

.woocommerce-checkout #customer_details .col-1,
.woocommerce-checkout #customer_details .col-2 {
  float: none !important;
  width: 100% !important;
  margin: 0 0 28px !important;
  padding: clamp(20px,3vw,34px);
  border: 1px solid var(--tp-line);
  background: rgba(255,255,255,.58);
}

.woocommerce-checkout #order_review_heading,
.woocommerce-checkout #order_review {
  float: none !important;
  width: auto !important;
  grid-column: 2;
  min-width: 0;
}

.woocommerce-checkout #order_review_heading {
  grid-row: 1;
  align-self: end;
  margin: 0 !important;
}

.woocommerce-checkout #order_review {
  grid-row: 2;
  align-self: start;
  position: sticky;
  top: 116px;
  padding: clamp(20px,3vw,32px) !important;
  border: 1px solid var(--tp-line) !important;
  background: #fff !important;
  box-shadow: 0 24px 70px rgba(11,11,12,.07);
}

.woocommerce-checkout #payment {
  border-radius: 0 !important;
  background: transparent !important;
}
.woocommerce-checkout #payment ul.payment_methods {
  padding: 18px 0 !important;
  border-bottom-color: var(--tp-line) !important;
}
.woocommerce-checkout #payment div.payment_box {
  background: var(--tp-bg) !important;
  color: var(--tp-ink) !important;
  border-radius: 0 !important;
  font-size: 13px;
}
.woocommerce-checkout #payment div.payment_box::before {
  border-bottom-color: var(--tp-bg) !important;
}
.woocommerce-checkout #payment .place-order { padding: 18px 0 0 !important; }
.woocommerce-checkout #place_order { width: 100%; min-height: 56px; }

/* My Account navigation feels like part of the theme instead of stock Woo. */
.woocommerce-account .woocommerce-MyAccount-navigation {
  width: 27% !important;
}
.woocommerce-account .woocommerce-MyAccount-content {
  width: 69% !important;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul {
  list-style: none;
  margin: 0;
  padding: 0;
  border-top: 1px solid var(--tp-line);
}
.woocommerce-account .woocommerce-MyAccount-navigation li {
  border-bottom: 1px solid var(--tp-line);
}
.woocommerce-account .woocommerce-MyAccount-navigation a {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  padding: 14px 4px;
  font: 700 12px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;
  letter-spacing: .09em;
  text-transform: uppercase;
  transition: padding .22s ease,color .22s ease;
}
.woocommerce-account .woocommerce-MyAccount-navigation a:hover,
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a {
  padding-left: 12px;
  color: var(--tp-accent);
}

/* ---------- WooCommerce Blocks ---------- */
.tp-main :where(.wc-block-components-text-input input,.wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input,.wc-block-components-address-form input,.wc-block-components-address-form select) {
  min-height: var(--tp-field-height) !important;
  border: 1px solid var(--tp-field-border) !important;
  border-radius: 0 !important;
  background: #fff !important;
  color: var(--tp-ink) !important;
  box-shadow: none !important;
}

.tp-main :where(.wc-block-components-text-input input:focus,.wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input:focus) {
  border-color: var(--tp-accent) !important;
  box-shadow: 0 0 0 3px rgba(249,91,38,.14) !important;
}

.tp-main :where(.wc-block-checkout__order-notes,.wc-block-components-checkout-step,.wc-block-components-sidebar-layout .wc-block-components-main,.wc-block-components-sidebar) {
  border-radius: 0 !important;
}

/* ---------- Formidable / WPForms friendly ---------- */
.tp-main .frm_forms .frm_submit button,
.tp-main .wpforms-container .wpforms-submit {
  min-width: 170px;
}
.tp-main .frm_forms .frm_section_heading {
  margin: 32px 0 20px;
  padding-top: 20px;
  border-top: 1px solid var(--tp-line);
}

@media (max-width: 900px) {
  .woocommerce-checkout form.checkout { display: block; }
  .woocommerce-checkout #order_review { position: relative; top: auto; margin-top: 30px; }
  .woocommerce-account .woocommerce-MyAccount-navigation,
  .woocommerce-account .woocommerce-MyAccount-content { width: 100% !important; float: none !important; }
  .woocommerce-account .woocommerce-MyAccount-navigation { margin-bottom: 30px; }
}

@media (max-width: 680px) {
  .tp-main { --tp-field-height: 50px; --tp-field-pad-x: 13px; }
  .woocommerce-account #customer_login,
  .woocommerce-account .u-columns.col2-set,
  .woocommerce-account .u-columns.woocommerce-Addresses { grid-template-columns: 1fr; }
  .woocommerce form .form-row-first,
  .woocommerce form .form-row-last { width: 100% !important; float: none !important; }
  .woocommerce form.login,
  .woocommerce form.register,
  .woocommerce form.checkout_coupon,
  .woocommerce form.woocommerce-ResetPassword { padding: 18px !important; }
}

/* === Themespress 2.0 Beta 8.7 — My Account tab rail === */
.woocommerce-account .woocommerce{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:clamp(28px,4vw,50px)!important;
}
.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content{
  width:100%!important;
  float:none!important;
  margin:0!important;
  min-width:0;
}
.woocommerce-account .woocommerce-MyAccount-navigation{
  position:relative;
  background:var(--tp-ink);
  border:1px solid var(--tp-ink);
  overflow:hidden;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul{
  display:flex!important;
  align-items:stretch;
  gap:0!important;
  list-style:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  overflow-x:auto;
  overscroll-behavior-inline:contain;
  scrollbar-width:none;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul::-webkit-scrollbar{display:none}
.woocommerce-account .woocommerce-MyAccount-navigation li{
  flex:1 0 145px;
  margin:0!important;
  border:0!important;
  min-width:0;
}
.woocommerce-account .woocommerce-MyAccount-navigation li+li{border-left:1px solid rgba(255,255,255,.13)!important}
.woocommerce-account .woocommerce-MyAccount-navigation a{
  position:relative;
  min-height:68px;
  display:flex!important;
  align-items:center;
  justify-content:center!important;
  padding:17px 16px!important;
  background:transparent!important;
  border:0!important;
  color:rgba(255,255,255,.68)!important;
  font:750 12px/1.25 ui-monospace,SFMono-Regular,Menlo,monospace!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  text-align:center;
  text-decoration:none!important;
  white-space:normal;
  transition:color .22s ease,background-color .22s ease!important;
}
.woocommerce-account .woocommerce-MyAccount-navigation a::after{
  content:"";
  position:absolute;
  left:16px;right:16px;bottom:0;
  height:3px;
  background:var(--tp-accent);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .28s var(--tp-ease);
}
.woocommerce-account .woocommerce-MyAccount-navigation a:hover{
  padding-left:16px!important;
  transform:none!important;
  background:rgba(255,255,255,.055)!important;
  color:#fff!important;
}
.woocommerce-account .woocommerce-MyAccount-navigation a:hover::after{transform:scaleX(.38)}
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a{
  padding-left:16px!important;
  background:#151516!important;
  color:#fff!important;
}
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a::after{transform:scaleX(1)}
.woocommerce-account .woocommerce-MyAccount-content{
  padding:0!important;
  background:transparent!important;
  border:0!important;
}
.woocommerce-account .woocommerce-MyAccount-content>p:first-child{
  max-width:900px;
  font-size:clamp(17px,1.35vw,20px);
  line-height:1.65;
}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-table{
  background:rgba(255,255,255,.34);
}
@media(max-width:760px){
  .woocommerce-account .woocommerce-MyAccount-navigation li{flex-basis:132px}
  .woocommerce-account .woocommerce-MyAccount-navigation a{min-height:60px;padding:14px 12px!important;font-size:12px!important}
  .woocommerce-account .woocommerce-MyAccount-navigation a::after{left:12px;right:12px}
}


/* === Themespress 2.0 Beta 8.9 — comfortable account navigation === */
.woocommerce-account .woocommerce-MyAccount-navigation{
  border-radius:0!important;
  background:#0b0b0c!important;
  border-color:#0b0b0c!important;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul{
  gap:0!important;
  flex-wrap:nowrap!important;
  overflow-x:auto!important;
  scroll-snap-type:x proximity;
}
.woocommerce-account .woocommerce-MyAccount-navigation li{
  flex:0 0 clamp(160px,12vw,205px)!important;
  scroll-snap-align:start;
}
.woocommerce-account .woocommerce-MyAccount-navigation a{
  min-height:78px!important;
  padding:20px 18px!important;
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:15px!important;
  line-height:1.18!important;
  font-weight:720!important;
  letter-spacing:-.01em!important;
  text-transform:none!important;
  text-align:left!important;
  justify-content:flex-start!important;
}
.woocommerce-account .woocommerce-MyAccount-navigation a::after{
  left:18px!important;
  right:18px!important;
  height:4px!important;
}
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a{
  background:#161616!important;
  color:#fff!important;
}
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a::before{
  content:"";
  width:8px;height:8px;flex:0 0 8px;
  border-radius:50%;
  background:var(--tp-accent);
  margin-right:10px;
}
@media(max-width:760px){
  .woocommerce-account .woocommerce-MyAccount-navigation li{flex-basis:150px!important}
  .woocommerce-account .woocommerce-MyAccount-navigation a{
    min-height:68px!important;
    padding:16px 15px!important;
    font-size:14px!important;
  }
  .woocommerce-account .woocommerce-MyAccount-navigation a::after{left:15px!important;right:15px!important}
}

/* === Themespress 2.0 Beta 8.9.1 — My Account tabs stay inside content === */
.woocommerce-account .woocommerce-MyAccount-navigation{
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(145px,1fr))!important;
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  overflow:visible!important;
  scroll-snap-type:none!important;
}
.woocommerce-account .woocommerce-MyAccount-navigation li{
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  flex:none!important;
  box-sizing:border-box!important;
  border-left:0!important;
  border-right:1px solid rgba(255,255,255,.13)!important;
  border-bottom:1px solid rgba(255,255,255,.13)!important;
}
.woocommerce-account .woocommerce-MyAccount-navigation a{
  width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  overflow-wrap:anywhere;
}
@media (max-width:1100px){
  .woocommerce-account .woocommerce-MyAccount-navigation ul{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}
@media (max-width:700px){
  .woocommerce-account .woocommerce-MyAccount-navigation ul{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .woocommerce-account .woocommerce-MyAccount-navigation a{
    min-height:66px!important;
    font-size:14px!important;
  }
}
@media (max-width:420px){
  .woocommerce-account .woocommerce-MyAccount-navigation ul{
    grid-template-columns:1fr!important;
  }
}

/* Themespress Beta 8.12 — Woo login/register grid clearfix fix */
.woocommerce-account #customer_login::before,
.woocommerce-account #customer_login::after,
.woocommerce-account .u-columns.col2-set::before,
.woocommerce-account .u-columns.col2-set::after,
.woocommerce-account .u-columns.woocommerce-Addresses::before,
.woocommerce-account .u-columns.woocommerce-Addresses::after {
  content: none !important;
  display: none !important;
}

.woocommerce-account #customer_login,
.woocommerce-account .u-columns.col2-set {
  grid-auto-flow: row;
  align-items: start;
}

.woocommerce-account #customer_login > .col-1,
.woocommerce-account #customer_login > .col-2 {
  grid-row: 1;
  min-width: 0;
}

@media (max-width: 860px) {
  .woocommerce-account #customer_login > .col-1,
  .woocommerce-account #customer_login > .col-2 {
    grid-row: auto;
  }
}

/* Product reviews */
.woocommerce div.product #reviews{
  display:grid;
  grid-template-columns:minmax(0,.86fr) minmax(380px,1.14fr);
  gap:clamp(34px,5vw,82px);
  align-items:start;
  max-width:1280px;
}
.woocommerce div.product #reviews #comments,
.woocommerce div.product #reviews #review_form_wrapper{min-width:0;margin:0!important}
.woocommerce div.product #reviews #comments > h2,
.woocommerce div.product #reviews #reply-title{
  display:block;
  margin:0 0 24px!important;
  color:var(--tp-ink);
  font-size:clamp(30px,3.2vw,52px)!important;
  font-weight:760!important;
  line-height:.96!important;
  letter-spacing:-.045em!important;
}
.woocommerce div.product #reviews #comments > h2{max-width:11ch}
.woocommerce div.product #reviews .woocommerce-noreviews{
  margin:0!important;
  padding:22px 0;
  border-top:1px solid var(--tp-line);
  border-bottom:1px solid var(--tp-line);
  color:var(--tp-muted);
  font-size:14px;
}
.woocommerce div.product #reviews #comments ol.commentlist{
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}
.woocommerce div.product #reviews #comments ol.commentlist li{
  margin:0!important;
  padding:0!important;
  border-top:1px solid var(--tp-line);
}
.woocommerce div.product #reviews #comments ol.commentlist li:last-child{border-bottom:1px solid var(--tp-line)}
.woocommerce div.product #reviews #comments ol.commentlist li .comment_container{
  display:grid;
  grid-template-columns:48px minmax(0,1fr);
  gap:16px;
  padding:22px 0;
}
.woocommerce div.product #reviews #comments ol.commentlist li img.avatar{
  position:static!important;
  float:none!important;
  width:48px!important;
  height:48px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:50%;
  object-fit:cover;
  background:#e5e3dd;
}
.woocommerce div.product #reviews #comments ol.commentlist li .comment-text{
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
}
.woocommerce div.product #reviews #comments .star-rating{
  float:none!important;
  margin:1px 0 8px!important;
  color:var(--tp-accent)!important;
  font-size:13px!important;
}
.woocommerce div.product #reviews #comments .meta{
  margin:0 0 10px!important;
  color:var(--tp-muted)!important;
  font:700 11px/1.45 ui-monospace,SFMono-Regular,Menlo,monospace!important;
  letter-spacing:.075em;
  text-transform:uppercase;
}
.woocommerce div.product #reviews #comments .meta strong{color:var(--tp-ink)!important}
.woocommerce div.product #reviews #comments .description p{margin:0!important;color:#4f4e4a;line-height:1.65}

.woocommerce div.product #reviews #review_form_wrapper{
  padding:clamp(24px,3.2vw,46px)!important;
  border:1px solid var(--tp-line);
  background:rgba(255,255,255,.72);
  box-shadow:0 28px 70px rgba(11,11,12,.07);
}
.woocommerce div.product #reviews #review_form_wrapper::before{
  content:"";
  display:block;
  width:54px;
  height:4px;
  margin:0 0 22px;
  background:var(--tp-accent);
}
.woocommerce div.product #reviews #respond{margin:0!important;padding:0!important}
.woocommerce div.product #reviews #reply-title small{font-size:12px;letter-spacing:0}
.woocommerce div.product #reviews .comment-notes,
.woocommerce div.product #reviews .must-log-in{
  margin:0 0 24px!important;
  color:var(--tp-muted);
  font-size:13px;
  line-height:1.55;
}
.woocommerce div.product #reviews #commentform{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px 14px;
  margin:0!important;
}
.woocommerce div.product #reviews #commentform > p{margin:0!important;min-width:0}
.woocommerce div.product #reviews #commentform .comment-form-rating,
.woocommerce div.product #reviews #commentform .comment-form-comment,
.woocommerce div.product #reviews #commentform .comment-form-cookies-consent,
.woocommerce div.product #reviews #commentform .form-submit,
.woocommerce div.product #reviews #commentform .comment-notes{grid-column:1/-1}
.woocommerce div.product #reviews #commentform label{
  display:block;
  margin:0 0 8px;
  color:var(--tp-ink);
  font:700 11px/1.35 ui-monospace,SFMono-Regular,Menlo,monospace;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.woocommerce div.product #reviews #commentform .required{color:var(--tp-accent)!important}
.woocommerce div.product #reviews #commentform :where(input[type="text"],input[type="email"],input[type="url"],textarea){
  width:100%!important;
  min-height:52px;
  margin:0!important;
  border:1px solid rgba(11,11,12,.2)!important;
  border-radius:0!important;
  background:#fff!important;
  color:var(--tp-ink)!important;
  padding:0 15px!important;
  outline:0!important;
  box-shadow:none!important;
  font:500 15px/1.4 Inter,ui-sans-serif,sans-serif!important;
  transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;
}
.woocommerce div.product #reviews #commentform textarea{
  min-height:170px;
  padding-top:14px!important;
  padding-bottom:14px!important;
  resize:vertical;
}
.woocommerce div.product #reviews #commentform :where(input[type="text"],input[type="email"],input[type="url"],textarea):focus{
  border-color:var(--tp-accent)!important;
  background:#fff!important;
  box-shadow:0 0 0 3px rgba(249,91,38,.12)!important;
}
.woocommerce div.product #reviews .comment-form-rating{padding:2px 0 4px}
.woocommerce div.product #reviews .comment-form-rating label{margin-bottom:10px}
.woocommerce div.product #reviews p.stars{margin:0!important;line-height:1!important}
.woocommerce div.product #reviews p.stars a{
  margin-right:8px!important;
  color:#bbb9b2!important;
  font-size:25px!important;
  transition:color .18s ease,transform .18s ease;
}
.woocommerce div.product #reviews p.stars a:hover,
.woocommerce div.product #reviews p.stars a.active,
.woocommerce div.product #reviews p.stars.selected a:not(.active) {color:var(--tp-accent)!important}
.woocommerce div.product #reviews p.stars a:hover{transform:translateY(-2px)}
.woocommerce div.product #reviews .comment-form-cookies-consent{
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding-top:2px;
}
.woocommerce div.product #reviews .comment-form-cookies-consent input{
  flex:0 0 18px;
  width:18px!important;
  height:18px!important;
  min-height:18px!important;
  margin:1px 0 0!important;
  accent-color:var(--tp-accent);
}
.woocommerce div.product #reviews .comment-form-cookies-consent label{
  margin:0!important;
  font-family:Inter,ui-sans-serif,sans-serif;
  font-size:12px;
  font-weight:500;
  line-height:1.5;
  letter-spacing:0;
  text-transform:none;
  color:var(--tp-muted);
}
.woocommerce div.product #reviews #commentform .form-submit{padding-top:4px}
.woocommerce div.product #reviews #commentform #submit{
  width:100%!important;
  min-height:54px!important;
  margin:0!important;
  border:1px solid var(--tp-ink)!important;
  border-radius:0!important;
  background:var(--tp-ink)!important;
  color:var(--tp-light)!important;
  padding:15px 18px!important;
  font:800 11px/1 Inter,ui-sans-serif,sans-serif!important;
  letter-spacing:.1em!important;
  text-transform:uppercase!important;
  transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease!important;
}
.woocommerce div.product #reviews #commentform #submit:hover{
  background:var(--tp-accent)!important;
  border-color:var(--tp-accent)!important;
  color:#080808!important;
  transform:translateY(-2px);
}

@media(max-width:900px){
  .woocommerce div.product #reviews{grid-template-columns:1fr;gap:42px}
  .woocommerce div.product #reviews #review_form_wrapper{padding:26px!important}
}
@media(max-width:560px){
  .woocommerce div.product #reviews #commentform{grid-template-columns:1fr}
  .woocommerce div.product #reviews #commentform .comment-form-author,
  .woocommerce div.product #reviews #commentform .comment-form-email{grid-column:1/-1}
  .woocommerce div.product #reviews #comments ol.commentlist li .comment_container{grid-template-columns:40px minmax(0,1fr);gap:12px}
  .woocommerce div.product #reviews #comments ol.commentlist li img.avatar{width:40px!important;height:40px!important}
}
