/*
Theme Name: Fiesta Paper
Template: hello-commerce
Author: Rionic Technologies
Author URI: https://rionic.io
Description: Sell smart from the start with Hello Commerce. Hello Commerce is a free WordPress ecommerce theme designed to help you launch your online store quickly and professionally. Built for WooCommerce and powered by the flexibility of Elementor, it offers a lightweight, responsive foundation that’s perfect for beginners and growing businesses alike. Whether you're selling products or services, the Hello Commerce theme gives you the freedom to build your store your way, launch fast, and scale with confidence. Start strong with a guided setup, ready-made shop templates, and intuitive styling controls. Customize your storefront’s style and layout, including product grids, cart, and checkout pages, with intuitive controls, directly within the Elementor ecosystem without code. Manage your site efficiently using the dedicated Home screen that brings key tools and actions together. Why Hello Commerce? - Seamless integration with Elementor and WooCommerce - Fast, flexible, and performance-optimized - Beginner-friendly, no code or technical skills required - Complete site template kits to launch your store quickly. Report security bugs through the Patchstack Vulnerability Disclosure Program. The Patchstack team validates, triages, and handles vulnerabilities. Report here https://patchstack.com/database.
Tags: flexible-header,custom-colors,custom-menu,custom-logo,featured-images,rtl-language-support,threaded-comments,translation-ready,style-variations
Version: 1.0.12
Updated: 2026-06-18

*/

.infinite-rotation-slider .swiper-wrapper {
  -webkit-transition-timing-function: linear !important;
  transition-timing-function: linear !important;
}

.square-aspect-ratio {
  aspect-ratio: 1;
}

/* ============================================================
   CHECKOUT PAGE (WooCommerce Block Checkout)
   Brand Typography & Color Overrides
   ============================================================ */

/* --- Page-level padding --- */
.wp-block-woocommerce-checkout {
  padding-top: 60px !important;
  padding-bottom: 80px !important;
}

.wc-block-checkout__main,
.wc-block-checkout__sidebar {
  padding-top: 32px !important;
  padding-bottom: 32px !important;
}

@media (max-width: 767px) {
  .wp-block-woocommerce-checkout {
    padding-top: 32px !important;
    padding-bottom: 48px !important;
  }
}

/* --- Step / section headings --- */
.wc-block-components-checkout-step__title,
.wc-block-components-checkout-order-summary__title-text {
  font-family: "New Kansas", sans-serif !important;
  font-size: 22px !important;
  font-weight: 500 !important;
  line-height: 30px !important;
  color: var(--e-global-color-secondary) !important;
}

/* --- Form labels --- */
.wc-block-components-text-input label,
.wc-block-components-select label,
.wc-block-components-checkbox .wc-block-components-checkbox__label,
.wc-blocks-components-select .wc-blocks-components-select__label,
.wp-block-woocommerce-checkout-order-summary-block {
  font-family: "Manrope", sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: var(--e-global-color-secondary) !important;
}

/* --- Input & select fields --- */
.wc-block-components-text-input input,
.wc-block-components-select select,
.wc-blocks-components-select__select,
.wc-block-components-textarea {
  font-family: "Manrope", sans-serif !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  color: var(--e-global-color-secondary) !important;
  border: 2px solid var(--e-global-color-1592df3) !important;
  background-color: var(--e-global-color-1592df3) !important;
}

/* --- Input focus — orange ring --- */
.wc-block-components-text-input input:focus,
.wc-block-components-select select:focus,
.wc-blocks-components-select__select:focus,
.wc-block-components-textarea:focus {
  border-color: var(--e-global-color-primary, #f85b01) !important;
  box-shadow: 0 0 0 2px rgba(248, 91, 1, 0.12) !important;
  outline: none !important;
}

/* --- Radio & checkbox brand accent --- */
.wp-block-woocommerce-checkout input[type="radio"],
.wp-block-woocommerce-checkout input[type="checkbox"] {
  accent-color: var(--e-global-color-primary, #f85b01);
}

/* --- Sticky sidebar: clear the fixed header --- */
.wc-block-checkout__sidebar,
.wc-block-checkout__sidebar.is-sticky {
  top: 120px !important;
}

/* --- Hide sidebar order summary on mobile — the JS-injected accordion replaces it --- */
@media (max-width: 699px) {
  .wc-block-checkout__sidebar {
    display: none !important;
  }
}

.wc-block-checkout__terms.wc-block-checkout__terms--with-separator {
  border-top: 0px !important;
}

/* --- Sidebar (order summary panel) — cream background --- */
.wc-block-checkout__sidebar {
  background-color: var(--e-global-color-1592df3, #fdf7f1) !important;
  padding: 24px !important;
}

/* --- Order summary item row — card-like, matches cart drawer --- */
.wc-block-components-order-summary-item {
  align-items: center !important;
  padding: 14px 0 !important;
  border-bottom: none !important;
}

.wc-block-components-order-summary-item:last-child {
  border-bottom: 0 !important;
}

/* --- Product image — larger thumbnail, matches cart --- */
.wc-block-components-order-summary-item__image {
  width: 70px !important;
  margin-top: 0 !important;
  padding-bottom: 0 !important;
}

.wc-block-components-order-summary-item__image > img {
  width: 70px !important;
  max-width: 70px !important;
  height: 70px !important;
  object-fit: cover !important;
  border-radius: 8px !important;
}

/* --- Hide the small quantity badge — replaced by the stepper below --- */
.wc-block-components-order-summary-item__quantity {
  display: none !important;
}

/* --- Hide the right-hand line total — cart drawer only shows unit price --- */
.wc-block-components-order-summary-item__total-price {
  display: none !important;
}

.wc-block-components-order-summary-item__description {
  padding: 0 0 0 16px !important;
  gap: 2px !important;
}

/* --- Hide the product short description — cart drawer doesn't show it --- */
.wc-block-components-order-summary-item__description
  .wc-block-components-product-metadata {
  display: none !important;
}

/* --- Order summary product name --- */
/* Note: the real rendered class is .wc-block-components-product-name,
   not __name — scoped to the sidebar so it doesn't leak to other blocks
   that reuse the same component. */
.wc-block-checkout__sidebar .wc-block-components-product-name {
  font-family: "New Kansas", sans-serif !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 22px !important;
  color: var(--e-global-color-a2ad01d, #171717) !important;
}

/* --- Order summary unit price --- */
.wc-block-components-order-summary-item__individual-price,
.wc-block-components-order-summary-item__individual-prices {
  font-family: "Manrope", sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  color: var(--e-global-color-a2ad01d, #171717) !important;
}

/* --- Quantity stepper (injected via JS) — circular outline buttons --- */
.fp-osq-stepper {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
}

.fp-osq-btn {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  border: 1.5px solid var(--e-global-color-secondary, #761938);
  background: transparent;
  color: var(--e-global-color-secondary, #761938);
  font-size: 16px;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 0;
  transition:
    background-color 0.2s,
    color 0.2s,
    opacity 0.2s;
}

.fp-osq-btn:hover {
  background-color: var(--e-global-color-secondary, #761938);
  color: #ffffff;
}

.fp-osq-qty {
  font-family: "Manrope", sans-serif;
  font-size: 15px;
  font-weight: 700;
  color: var(--e-global-color-a2ad01d, #171717);
  min-width: 16px;
  text-align: center;
}

.fp-osq-stepper.is-loading {
  opacity: 0.5;
  pointer-events: none;
}

/* --- Totals rows (subtotal, shipping, taxes…) --- */
.wc-block-components-totals-item__label,
.wc-block-components-totals-item__value {
  color: var(--e-global-color-primary) !important;
  font-family: "New Kansas", sans-serif !important;
  font-size: 15px !important;
  font-weight: 500 !important;
}

/* --- Grand total — New Kansas, brand burgundy --- */
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
.wc-block-components-totals-footer-item .wc-block-formatted-money-amount {
  font-family: "New Kansas", sans-serif !important;
  font-size: 20px !important;
  font-weight: 500 !important;
  color: var(--e-global-color-secondary, #761938) !important;
}

/* --- Coupon row: input + button side by side --- */
.wc-block-components-totals-coupon__form {
  display: flex !important;
  gap: 8px !important;
  align-items: stretch !important;
}

/* --- Coupon text input --- */
.wc-block-components-totals-coupon__input .wc-block-components-text-input {
  margin-bottom: 0 !important;
}

.wc-block-components-totals-coupon__input input {
  font-family: "Manrope", sans-serif !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  color: var(--e-global-color-a2ad01d, #171717) !important;
  background-color: #ffffff !important;
  border: 2px solid var(--e-global-color-primary, #f85b01) !important;
  border-radius: 6px !important;
  padding: 24px 16px 8px !important;
  transition:
    border-color 0.2s,
    box-shadow 0.2s !important;
}

.wc-block-components-totals-coupon__input input::placeholder {
  color: var(--e-global-color-2f0128a, #a8a29e) !important;
  font-weight: 400 !important;
}

.wc-block-components-totals-coupon__input input:focus {
  border-color: var(--e-global-color-secondary, #761938) !important;
  box-shadow: 0 0 0 2px rgba(118, 25, 56, 0.12) !important;
  outline: none !important;
}

/* --- Coupon apply button — matches header ghost style --- */
.wc-block-components-totals-coupon .wc-block-components-button {
  flex-shrink: 0 !important;
  background-color: transparent !important;
  color: var(--e-global-color-primary, #f85b01) !important;
  font-family: "New Kansas", sans-serif !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  border: 2px solid var(--e-global-color-primary, #f85b01) !important;
  border-radius: 6px !important;
  padding: 7px 20px !important;
  white-space: nowrap !important;
  transition:
    background-color 0.3s,
    color 0.3s,
    border-color 0.3s !important;
}

.wc-block-components-totals-coupon .wc-block-components-button:hover,
.wc-block-components-totals-coupon .wc-block-components-button:focus {
  background-color: var(--e-global-color-primary, #f85b01) !important;
  color: var(--e-global-color-secondary, #761938) !important;
  border-color: var(--e-global-color-secondary, #761938) !important;
}

/* --- Place Order button — matches header ghost button style --- */
.wc-block-components-checkout-place-order-button {
  background-color: transparent !important;
  color: var(--e-global-color-primary, #f85b01) !important;
  font-family: "New Kansas", sans-serif !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  line-height: 22px !important;
  border: 2px solid var(--e-global-color-primary, #f85b01) !important;
  border-radius: 6px !important;
  padding: 7px 25px !important;
  transition:
    background-color 0.3s,
    color 0.3s,
    border-color 0.3s !important;
}

.wc-block-components-checkout-place-order-button:hover,
.wc-block-components-checkout-place-order-button:focus {
  background-color: var(--e-global-color-primary, #f85b01) !important;
  color: var(--e-global-color-secondary, #761938) !important;
  border-color: var(--e-global-color-secondary, #761938) !important;
}

/* --- Payment method labels --- */
.wc-block-components-payment-method-label__name {
  font-family: "Manrope", sans-serif !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  color: var(--e-global-color-a2ad01d, #171717) !important;
}

/* --- Payment info / description box --- */
.wc-block-components-payment-method-description {
  background-color: var(--e-global-color-cb566ff, #f8eee4) !important;
  font-family: "Manrope", sans-serif !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  color: var(--e-global-color-text, #7a7774) !important;
}

/* --- Privacy / terms text --- */
.wc-block-checkout__terms p,
.wc-block-components-checkout-terms-block p {
  font-family: "Manrope", sans-serif !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: var(--e-global-color-text, #7a7774) !important;
}

.wc-block-checkout__terms a,
.wc-block-components-checkout-terms-block a {
  color: var(--e-global-color-primary, #f85b01) !important;
}

/* --- Step number circles — orange --- */
.wc-block-components-checkout-step__title:before {
  background-color: var(--e-global-color-primary, #f85b01) !important;
  color: #ffffff !important;
}

/* ============================================================
   MY ACCOUNT PAGE — Brand Typography, Color & Layout
   ============================================================ */

/* --- Page background — site cream/beige --- */
body.woocommerce-account {
  background-color: var(--e-global-color-1592df3, #fdf7f1);
}

/* --- Page heading --- */
.woocommerce-account .entry-title,
.woocommerce-account h1.entry-title {
  font-family: "New Kansas", sans-serif;
  font-size: 48px;
  font-weight: 400;
  line-height: 56px;
  color: var(--e-global-color-a2ad01d, #171717);
}

/* ---- LOGIN FORM (logged-out state) ---- */

/* Wrapper — side-by-side login + register */
.woocommerce-account #customer_login {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
  align-items: start;
}

@media (max-width: 767px) {
  .woocommerce-account #customer_login {
    grid-template-columns: 1fr;
  }

  .wp-block-woocommerce-checkout-order-summary-block.checkout-order-summary-block-fill-wrapper
    .wc-block-components-title {
    padding: 16px 16px 0;
  }
}

/* Column headings */
.woocommerce-account #customer_login h2,
.woocommerce-account .woocommerce-form-login > h2,
.woocommerce-account .woocommerce-form-register > h2 {
  font-family: "New Kansas", sans-serif;
  font-size: 28px;
  font-weight: 400;
  line-height: 36px;
  color: var(--e-global-color-a2ad01d, #171717);
  margin-bottom: 20px;
  padding-bottom: 12px;
  border-bottom: 2px solid var(--e-global-color-cb566ff, #f8eee4);
}

/* Single-column heading when registration is disabled */
.woocommerce-account .woocommerce-form-login h2 {
  font-family: "New Kansas", sans-serif;
  font-size: 28px;
  font-weight: 400;
  line-height: 36px;
  color: var(--e-global-color-a2ad01d, #171717);
  margin-bottom: 20px;
  padding-bottom: 12px;
  border-bottom: 2px solid var(--e-global-color-cb566ff, #f8eee4);
}

.wp-block-woocommerce-checkout-order-summary-block {
  border: 2px solid var(--e-global-color-primary) !important;
  border-radius: 6px !important;
}
/* ---- ALL MY ACCOUNT FORM INPUTS — unified, matches checkout appearance ---- */

/* Labels — every form on the account pages */
.woocommerce-account label,
.woocommerce-account .form-row label {
  font-family: "Manrope", sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: var(--e-global-color-a2ad01d, #171717) !important;
  display: block;
  margin-bottom: 4px;
  line-height: 1.5;
}

/* Required asterisk */
.woocommerce-account .required {
  color: var(--e-global-color-primary, #f85b01) !important;
}

/* Validation error states */
.woocommerce-account .woocommerce-invalid .required,
.woocommerce-account .woocommerce-invalid label {
  color: #b81c23 !important;
}

/* All text-style inputs — covers every form (login, register, address, account details) */
.woocommerce-account input[type="text"],
.woocommerce-account input[type="email"],
.woocommerce-account input[type="password"],
.woocommerce-account input[type="tel"],
.woocommerce-account input[type="number"],
.woocommerce-account input[type="search"],
.woocommerce-account input.input-text,
.woocommerce-account .woocommerce-Input--text,
.woocommerce-account select,
.woocommerce-account textarea {
  font-family: "Manrope", sans-serif !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  color: var(--e-global-color-a2ad01d, #171717) !important;
  background-color: #ffffff !important;
  border: 1px solid #000000 !important;
  border-radius: 0 !important;
  padding: 12px 24px !important;
  width: 100%;
  box-sizing: border-box;
  outline: none;
  transition:
    border-color 0.2s,
    box-shadow 0.2s;
  -webkit-appearance: none;
  appearance: none;
}

/* Focus — orange ring matching checkout */
.woocommerce-account input[type="text"]:focus,
.woocommerce-account input[type="email"]:focus,
.woocommerce-account input[type="password"]:focus,
.woocommerce-account input[type="tel"]:focus,
.woocommerce-account input[type="number"]:focus,
.woocommerce-account input[type="search"]:focus,
.woocommerce-account input.input-text:focus,
.woocommerce-account .woocommerce-Input--text:focus,
.woocommerce-account select:focus,
.woocommerce-account textarea:focus {
  border-color: var(--e-global-color-primary, #f85b01) !important;
  box-shadow: 0 0 0 2px rgba(248, 91, 1, 0.12) !important;
  outline: none !important;
}

/* Validation — red border on invalid fields */
.woocommerce-account .woocommerce-invalid input.input-text,
.woocommerce-account .woocommerce-invalid select {
  border-color: #b81c23 !important;
}

/* Select — restore dropdown arrow (removed by -webkit-appearance: none) */
.woocommerce-account select {
  background-image: url("data:image/svg+xml;utf8,<svg width='12' height='7' viewBox='0 0 12 7' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M0.5 0.5L6 5.5L11.5 0.5' stroke='black'/></svg>") !important;
  background-repeat: no-repeat !important;
  background-position: right 16px center !important;
  padding-right: 40px !important;
  cursor: pointer;
}

/* Textarea — allow vertical resize only */
.woocommerce-account textarea {
  resize: vertical;
  min-height: 100px;
}

/* Select2 — country/state dropdowns */
.woocommerce-account .select2-container .select2-selection--single {
  font-family: "Manrope", sans-serif !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  color: var(--e-global-color-a2ad01d, #171717) !important;
  background-color: #ffffff !important;
  border: 1px solid #000000 !important;
  border-radius: 0 !important;
  height: auto !important;
  padding: 12px 40px 12px 24px !important;
}

.woocommerce-account .select2-container .select2-selection__rendered {
  font-family: "Manrope", sans-serif !important;
  font-size: 15px !important;
  color: var(--e-global-color-a2ad01d, #171717) !important;
  line-height: 1.5 !important;
  padding: 0 !important;
}

.woocommerce-account .select2-container .select2-selection__arrow {
  top: 50% !important;
  right: 12px !important;
  transform: translateY(-50%);
}

.woocommerce-account .select2-container--open .select2-selection--single,
.woocommerce-account .select2-container--focus .select2-selection--single {
  border-color: var(--e-global-color-primary, #f85b01) !important;
  box-shadow: 0 0 0 2px rgba(248, 91, 1, 0.12) !important;
  outline: none !important;
}

.woocommerce-account .select2-dropdown {
  border: 1px solid #000000 !important;
  border-radius: 0 !important;
  font-family: "Manrope", sans-serif !important;
  font-size: 15px !important;
}

.woocommerce-account .select2-results__option--highlighted {
  background-color: var(--e-global-color-primary, #f85b01) !important;
}

/* Password show/hide button */
.woocommerce-account .woocommerce-Input-ShowHideButton,
.woocommerce-account [data-show-password-toggle] {
  font-family: "Manrope", sans-serif;
  font-size: 13px;
  font-weight: 600;
  color: var(--e-global-color-primary, #f85b01);
  background: none;
  border: none;
  cursor: pointer;
  padding: 0 4px;
}

/* Form row spacing */
.woocommerce-account .form-row {
  margin-bottom: 16px;
}

/* Edit Account fieldset (password change section) */
.woocommerce-account .woocommerce-EditAccountForm fieldset {
  border: 1px solid var(--e-global-color-cb566ff, #f8eee4);
  border-radius: 0;
  padding: 24px;
  margin-top: 24px;
  margin-bottom: 8px;
}

.woocommerce-account .woocommerce-EditAccountForm fieldset legend {
  font-family: "New Kansas", sans-serif;
  font-size: 16px;
  font-weight: 400;
  color: var(--e-global-color-a2ad01d, #171717);
  padding: 0 12px;
}

/* Checkbox + radio — excluded from input reset above */
.woocommerce-account input[type="checkbox"],
.woocommerce-account input[type="radio"] {
  width: auto;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  -webkit-appearance: auto;
  appearance: auto;
  accent-color: var(--e-global-color-primary, #f85b01);
}

/* Remember me label — inline, not block */
.woocommerce-account .woocommerce-form-login__rememberme,
.woocommerce-account .woocommerce-form__label-for-checkbox {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 14px !important;
  font-weight: 500 !important;
  color: var(--e-global-color-text, #7a7774) !important;
  margin-bottom: 0;
}

/* Login submit button */
.woocommerce-account .woocommerce-form-login .woocommerce-form-login__submit,
.woocommerce-account .woocommerce-form-login .button[name="login"] {
  background-color: var(--e-global-color-primary, #f85b01) !important;
  color: #ffffff !important;
  font-family: "Manrope", sans-serif;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0.02em;
  border: 0;
  border-radius: 4px;
  padding: 12px 28px;
  transition: background-color 0.3s;
  cursor: pointer;
}

.woocommerce-account
  .woocommerce-form-login
  .woocommerce-form-login__submit:hover,
.woocommerce-account .woocommerce-form-login .button[name="login"]:hover {
  background-color: var(--e-global-color-secondary, #761938) !important;
  color: #ffffff !important;
}

/* Register submit button */
.woocommerce-account .woocommerce-form-register .woocommerce-Button,
.woocommerce-account .woocommerce-form-register .button[name="register"] {
  background-color: var(--e-global-color-secondary, #761938) !important;
  color: #ffffff !important;
  font-family: "Manrope", sans-serif;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0.02em;
  border: 0;
  border-radius: 4px;
  padding: 12px 28px;
  transition: background-color 0.3s;
  cursor: pointer;
}

.woocommerce-account .woocommerce-form-register .woocommerce-Button:hover,
.woocommerce-account .woocommerce-form-register .button[name="register"]:hover {
  background-color: var(--e-global-color-primary, #f85b01) !important;
  color: #ffffff !important;
}

/* Lost password link */
.woocommerce-account .woocommerce-LostPassword a,
.woocommerce-account .lost_password a {
  font-family: "Manrope", sans-serif;
  font-size: 14px;
  font-weight: 600;
  color: var(--e-global-color-primary, #f85b01);
  text-decoration: none;
}

.woocommerce-account .woocommerce-LostPassword a:hover,
.woocommerce-account .lost_password a:hover {
  color: var(--e-global-color-secondary, #761938);
  text-decoration: underline;
}

/* Privacy policy text */
.woocommerce-account .woocommerce-privacy-policy-text {
  font-family: "Manrope", sans-serif;
  font-size: 13px;
  color: var(--e-global-color-text, #7a7774);
}

.woocommerce-account .woocommerce-privacy-policy-text a {
  color: var(--e-global-color-primary, #f85b01);
}

/* ---- LOGGED-IN ACCOUNT LAYOUT ---- */

/* WooCommerce default CSS floats nav left at ~30% and content right at ~68%.
   Override both so the tab bar spans full width and content stacks below. */
.woocommerce-account .woocommerce-MyAccount-navigation {
  float: none !important;
  width: 100% !important;
}

.woocommerce-account .woocommerce-MyAccount-content {
  float: none !important;
  width: 100% !important;
}

/* ---- TAB BAR NAVIGATION ---- */

/* Full-width underline behind all tabs */
.woocommerce-account .woocommerce-MyAccount-navigation {
  border-bottom: 2px solid var(--e-global-color-cb566ff, #f8eee4);
  margin-bottom: 32px;
  background: transparent;
  border-radius: 0;
  border-top: none;
  border-left: none;
  border-right: none;
  overflow: visible;
}

/* Horizontal row — !important overrides parent theme's flex-direction: column */
.woocommerce-account .woocommerce-MyAccount-navigation ul {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap;
  overflow-x: auto;
  scrollbar-width: none;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 0;
  align-items: stretch;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul::-webkit-scrollbar {
  display: none;
}

/* Reset parent theme's black background on the active <li> */
.woocommerce-account .woocommerce-MyAccount-navigation-link.is-active {
  background-color: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
}

/* Tab items — no shrinking so they stay full size */
.woocommerce-account .woocommerce-MyAccount-navigation ul li {
  flex-shrink: 0;
  margin: 0;
  border-bottom: none;
}

/* Tab link — 3px bottom border overlaps the container's 2px line */
.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
  display: block;
  padding: 10px 20px 12px;
  font-family: "Manrope", sans-serif;
  font-size: 14px;
  font-weight: 600;
  color: var(--e-global-color-text, #7a7774);
  text-decoration: none;
  border-bottom: 3px solid transparent;
  margin-bottom: -2px;
  white-space: nowrap;
  background: transparent !important;
  border-top: none !important;
  border-left: none !important;
  border-right: none !important;
  transition:
    color 0.2s,
    border-color 0.2s;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover {
  color: var(--e-global-color-primary, #f85b01);
  border-bottom-color: rgba(248, 91, 1, 0.4);
  background: transparent !important;
}

/* Active tab — orange underline punches through the base line */
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-account
  .woocommerce-MyAccount-navigation
  ul
  li
  a[aria-current="page"] {
  color: var(--e-global-color-primary, #f85b01) !important;
  font-weight: 700;
  border-bottom: 3px solid var(--e-global-color-primary, #f85b01) !important;
  background: transparent !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a:hover,
.woocommerce-account
  .woocommerce-MyAccount-navigation
  ul
  li
  a[aria-current="page"]:hover {
  color: var(--e-global-color-secondary, #761938) !important;
  border-bottom-color: var(--e-global-color-secondary, #761938) !important;
}

/* Logout — pushed to the far right, visually quieter */
.woocommerce-account
  .woocommerce-MyAccount-navigation
  ul
  li.woocommerce-MyAccount-navigation-link--customer-logout {
  margin-left: auto;
}

.woocommerce-account
  .woocommerce-MyAccount-navigation
  ul
  li.woocommerce-MyAccount-navigation-link--customer-logout
  a {
  font-size: 13px;
  font-weight: 500;
}

.woocommerce-account
  .woocommerce-MyAccount-navigation
  ul
  li.woocommerce-MyAccount-navigation-link--customer-logout
  a:hover {
  color: #b81c23;
  border-bottom-color: #b81c23;
}

/* ---- ACCOUNT CONTENT AREA ---- */

.woocommerce-MyAccount-content {
  min-width: 0;
}

/* Dashboard welcome text */
.woocommerce-MyAccount-content > p {
  font-family: "Manrope", sans-serif;
  font-size: 15px;
  font-weight: 500;
  color: var(--e-global-color-text, #7a7774);
  line-height: 1.7;
  margin-bottom: 12px;
}

.woocommerce-MyAccount-content > p strong {
  color: var(--e-global-color-a2ad01d, #171717);
  font-weight: 700;
}

.woocommerce-MyAccount-content > p a {
  color: var(--e-global-color-primary, #f85b01);
  font-weight: 600;
  text-decoration: none;
}

.woocommerce-MyAccount-content > p a:hover {
  color: var(--e-global-color-secondary, #761938);
  text-decoration: underline;
}

/* Section headings inside content */
.woocommerce-MyAccount-content h2,
.woocommerce-MyAccount-content h3 {
  font-family: "New Kansas", sans-serif;
  font-weight: 400;
  color: var(--e-global-color-a2ad01d, #171717);
  margin-bottom: 16px;
}

.woocommerce-MyAccount-content h2 {
  font-size: 24px;
  line-height: 32px;
  padding-bottom: 10px;
  border-bottom: 2px solid var(--e-global-color-cb566ff, #f8eee4);
  margin-bottom: 20px;
}

.woocommerce-MyAccount-content h3 {
  font-size: 18px;
  line-height: 26px;
}

/* Account content labels/inputs are handled by the unified rules above */

/* Save / Submit buttons inside account content */
.woocommerce-MyAccount-content .button,
.woocommerce-MyAccount-content button[type="submit"],
.woocommerce-MyAccount-content input[type="submit"] {
  background-color: var(--e-global-color-primary, #f85b01) !important;
  color: #ffffff !important;
  font-family: "Manrope", sans-serif;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0.02em;
  border: 0;
  border-radius: 4px;
  padding: 12px 28px;
  transition: background-color 0.3s;
  cursor: pointer;
}

.woocommerce-MyAccount-content .button:hover,
.woocommerce-MyAccount-content button[type="submit"]:hover,
.woocommerce-MyAccount-content input[type="submit"]:hover {
  background-color: var(--e-global-color-secondary, #761938) !important;
  color: #ffffff !important;
}

/* ---- ORDERS TABLE ---- */

.woocommerce-account .woocommerce-orders-table,
.woocommerce-account table.shop_table {
  width: 100%;
  border-collapse: collapse;
  font-family: "Manrope", sans-serif;
  font-size: 14px;
}

.woocommerce-account .woocommerce-orders-table thead th,
.woocommerce-account table.shop_table thead th {
  font-family: "Manrope", sans-serif;
  font-size: 13px;
  font-weight: 700;
  color: var(--e-global-color-a2ad01d, #171717);
  background-color: var(--e-global-color-cb566ff, #f8eee4);
  border-bottom: 2px solid var(--e-global-color-primary, #f85b01);
  padding: 12px 16px;
  text-align: left;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.woocommerce-account .woocommerce-orders-table tbody td,
.woocommerce-account table.shop_table tbody td {
  font-family: "Manrope", sans-serif;
  font-size: 14px;
  font-weight: 500;
  color: var(--e-global-color-a2ad01d, #171717);
  padding: 12px 16px;
  border-bottom: 1px solid var(--e-global-color-cb566ff, #f8eee4);
  vertical-align: middle;
}

.woocommerce-account .woocommerce-orders-table tbody tr:hover td,
.woocommerce-account table.shop_table tbody tr:hover td {
  background-color: var(--e-global-color-1592df3, #fdf7f1);
}

/* Order status badge */
.woocommerce-account
  .woocommerce-orders-table
  .woocommerce-orders-table__cell-order-status
  mark,
.woocommerce-account .woocommerce-orders-table mark {
  font-family: "Manrope", sans-serif;
  font-size: 12px;
  font-weight: 700;
  padding: 3px 10px;
  border-radius: 20px;
  background-color: var(--e-global-color-cb566ff, #f8eee4);
  color: var(--e-global-color-a2ad01d, #171717);
}

/* "View" action button in orders table */
.woocommerce-account .woocommerce-button.button.view {
  background-color: transparent !important;
  color: var(--e-global-color-primary, #f85b01) !important;
  border: 1px solid var(--e-global-color-primary, #f85b01) !important;
  font-family: "Manrope", sans-serif;
  font-size: 13px;
  font-weight: 700;
  padding: 6px 14px;
  border-radius: 4px;
  text-decoration: none;
  transition:
    background-color 0.2s,
    color 0.2s;
}

.woocommerce-account .woocommerce-button.button.view:hover {
  background-color: var(--e-global-color-primary, #f85b01) !important;
  color: #ffffff !important;
}

/* ---- ADDRESS CARDS ---- */

/* Parent theme already handles the grid for .woocommerce-Addresses;
   only override gap and card padding here */
.woocommerce-account .woocommerce-Addresses {
  gap: 24px;
}

.woocommerce-account .woocommerce-Address {
  background-color: var(--e-global-color-1592df3, #fdf7f1);
  border: 1px solid var(--e-global-color-cb566ff, #f8eee4);
  border-radius: 8px;
  padding: 24px;
}

.woocommerce-account .woocommerce-Address-title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 12px;
  padding-bottom: 10px;
  border-bottom: 2px solid var(--e-global-color-cb566ff, #f8eee4);
}

.woocommerce-account .woocommerce-Address-title h3 {
  font-family: "New Kansas", sans-serif;
  font-size: 18px;
  font-weight: 400;
  color: var(--e-global-color-a2ad01d, #171717);
  margin: 0;
  border: 0;
  padding: 0;
}

.woocommerce-account .woocommerce-Address-title .edit {
  font-family: "Manrope", sans-serif;
  font-size: 13px;
  font-weight: 700;
  color: var(--e-global-color-primary, #f85b01);
  text-decoration: none;
}

.woocommerce-account .woocommerce-Address-title .edit:hover {
  color: var(--e-global-color-secondary, #761938);
  text-decoration: underline;
}

.woocommerce-account address {
  font-family: "Manrope", sans-serif;
  font-size: 14px;
  font-weight: 500;
  color: var(--e-global-color-text, #7a7774);
  line-height: 1.8;
  font-style: normal;
}

/* ---- NOTICES / MESSAGES ---- */

.woocommerce-account .woocommerce-message,
.woocommerce-account .woocommerce-info,
.woocommerce-account .woocommerce-error {
  display: none !important;
}

.woocommerce-account .woocommerce-message {
  background-color: var(--e-global-color-1592df3, #fdf7f1);
  border-color: var(--e-global-color-primary, #f85b01);
  color: var(--e-global-color-a2ad01d, #171717);
}

.woocommerce-account .woocommerce-message a {
  color: var(--e-global-color-primary, #f85b01);
  font-weight: 700;
}

.woocommerce-account .woocommerce-info {
  background-color: var(--e-global-color-1592df3, #fdf7f1);
  border-color: var(--e-global-color-primary, #f85b01);
  color: var(--e-global-color-a2ad01d, #171717);
}

.woocommerce-account .woocommerce-info a {
  color: var(--e-global-color-primary, #f85b01);
  font-weight: 700;
}

/* ============================================================
   MY ACCOUNT v2 — Sidebar Layout + Visual Enhancements
   ============================================================ */

/* === DESKTOP: two-column grid (sidebar | content) === */
@media (min-width: 769px) {
  .woocommerce-account .woocommerce {
    display: grid;
    grid-template-columns: 220px 1fr;
    column-gap: 28px;
    align-items: start;
    padding: 60px 0;
  }

  .woocommerce-account .woocommerce > .woocommerce-notices-wrapper {
    grid-column: 1 / -1;
  }

  /* Sidebar navigation panel */
  .woocommerce-account .woocommerce > .woocommerce-MyAccount-navigation {
    grid-column: 1;
    grid-row: 2;
    float: none !important;
    width: auto !important;
    border-bottom: none !important;
    margin-bottom: 0 !important;
    background: #ffffff !important;
    border-radius: 12px !important;
    padding: 10px 0 !important;
    box-shadow:
      0 1px 3px rgba(0, 0, 0, 0.06),
      0 4px 16px rgba(0, 0, 0, 0.04) !important;
    position: sticky;
    top: 100px;
    overflow: visible !important;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation ul {
    flex-direction: column !important;
    overflow: visible !important;
    gap: 2px !important;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation ul li {
    flex-shrink: unset !important;
    width: 100%;
    border-bottom: none !important;
  }

  /* Sidebar nav links */
  .woocommerce-account .woocommerce-MyAccount-navigation ul li a {
    display: flex !important;
    align-items: center !important;
    padding: 10px 16px !important;
    margin: 0 8px !important;
    border-radius: 8px !important;
    border-bottom: none !important;
    border-top: none !important;
    border-right: none !important;
    border-left: 3px solid transparent !important;
    margin-bottom: 0 !important;
    white-space: normal !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: var(--e-global-color-text, #7a7774) !important;
    background: transparent !important;
    transition:
      background-color 0.18s,
      color 0.18s,
      border-color 0.18s !important;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover {
    background-color: #fff5ef !important;
    border-left-color: rgba(248, 91, 1, 0.5) !important;
    color: var(--e-global-color-primary, #f85b01) !important;
    border-bottom: none !important;
  }

  /* Active sidebar item */
  .woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a,
  .woocommerce-account
    .woocommerce-MyAccount-navigation
    ul
    li
    a[aria-current="page"] {
    background-color: #fff5ef !important;
    border-left: 3px solid var(--e-global-color-primary, #f85b01) !important;
    border-bottom: none !important;
    color: var(--e-global-color-primary, #f85b01) !important;
    font-weight: 700 !important;
  }

  .woocommerce-account
    .woocommerce-MyAccount-navigation
    ul
    li.is-active
    a:hover,
  .woocommerce-account
    .woocommerce-MyAccount-navigation
    ul
    li
    a[aria-current="page"]:hover {
    color: var(--e-global-color-secondary, #761938) !important;
    border-left-color: var(--e-global-color-secondary, #761938) !important;
    background-color: #fff5ef !important;
  }

  /* Logout: separator at bottom */
  .woocommerce-account
    .woocommerce-MyAccount-navigation
    ul
    li.woocommerce-MyAccount-navigation-link--customer-logout {
    margin-left: 0 !important;
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px solid var(--e-global-color-cb566ff, #f8eee4) !important;
  }

  .woocommerce-account
    .woocommerce-MyAccount-navigation
    ul
    li.woocommerce-MyAccount-navigation-link--customer-logout
    a {
    color: #b81c23 !important;
    font-size: 12px !important;
    font-weight: 500 !important;
  }

  .woocommerce-account
    .woocommerce-MyAccount-navigation
    ul
    li.woocommerce-MyAccount-navigation-link--customer-logout
    a:hover {
    background-color: #fee2e2 !important;
    border-left-color: #b81c23 !important;
    color: #991b1b !important;
  }

  /* Content area card */
  .woocommerce-account .woocommerce > .woocommerce-MyAccount-content {
    grid-column: 2;
    grid-row: 2;
    float: none !important;
    width: auto !important;
    background: #ffffff;
    border-radius: 12px;
    padding: 36px 40px !important;
    box-shadow:
      0 1px 3px rgba(0, 0, 0, 0.06),
      0 4px 16px rgba(0, 0, 0, 0.04);
    min-width: 0;
  }
}

/* === MOBILE: keep horizontal tabs, style content card === */
@media (max-width: 768px) {
  .woocommerce-account .woocommerce-MyAccount-navigation {
    background: #ffffff !important;
    border-radius: 12px 12px 0 0 !important;
    padding: 0 4px !important;
    box-shadow: none !important;
  }

  .woocommerce-account .woocommerce-MyAccount-content {
    background: #ffffff;
    border-radius: 0 0 12px 12px;
    padding: 24px 20px !important;
    box-shadow:
      0 1px 3px rgba(0, 0, 0, 0.06),
      0 4px 16px rgba(0, 0, 0, 0.04);
  }
}

/* === DASHBOARD HERO SECTION === */
.fiesta-account-hero {
  display: flex;
  align-items: center;
  gap: 20px;
  background: linear-gradient(
    135deg,
    var(--e-global-color-1592df3, #fdf7f1) 0%,
    #fffaf6 100%
  );
  border: 1px solid var(--e-global-color-cb566ff, #f8eee4);
  border-left: 4px solid var(--e-global-color-primary, #f85b01);
  border-radius: 12px;
  padding: 24px 28px;
  margin-bottom: 24px;
}

.fiesta-avatar {
  flex-shrink: 0;
  width: 58px;
  height: 58px;
  background: var(--e-global-color-primary, #f85b01);
  color: #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "New Kansas", sans-serif;
  font-size: 22px;
  font-weight: 400;
  letter-spacing: 0.02em;
}

.fiesta-greeting {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.fiesta-greeting__hello {
  font-family: "New Kansas", sans-serif !important;
  font-size: 20px !important;
  font-weight: 400 !important;
  color: var(--e-global-color-a2ad01d, #171717) !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  line-height: 1.3 !important;
}

.fiesta-greeting__hello strong {
  font-weight: 500;
}

.fiesta-greeting__sub {
  font-family: "Manrope", sans-serif !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: var(--e-global-color-text, #7a7774) !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  line-height: 1.5 !important;
}

.fiesta-greeting__sub a {
  color: var(--e-global-color-primary, #f85b01) !important;
  font-weight: 600;
  text-decoration: none;
}

.fiesta-greeting__sub a:hover {
  color: var(--e-global-color-secondary, #761938) !important;
  text-decoration: underline;
}

/* === DASHBOARD QUICK ACTION CARDS === */
.fiesta-dashboard-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin-bottom: 8px;
}

@media (max-width: 640px) {
  .fiesta-dashboard-cards {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}

.fiesta-dashboard-card {
  display: flex;
  align-items: center;
  gap: 12px;
  background: #ffffff;
  border: 1px solid var(--e-global-color-cb566ff, #f8eee4);
  border-radius: 10px;
  padding: 16px 18px;
  text-decoration: none !important;
  color: var(--e-global-color-a2ad01d, #171717) !important;
  font-family: "Manrope", sans-serif;
  font-size: 14px;
  font-weight: 600;
  transition:
    border-color 0.18s,
    box-shadow 0.18s,
    transform 0.15s;
  position: relative;
  overflow: hidden;
}

.fiesta-dashboard-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: var(--e-global-color-primary, #f85b01);
  transform: scaleX(0);
  transition: transform 0.2s ease;
  transform-origin: left;
  border-radius: 10px 10px 0 0;
}

.fiesta-dashboard-card:hover {
  border-color: rgba(248, 91, 1, 0.35);
  box-shadow: 0 4px 16px rgba(248, 91, 1, 0.1);
  transform: translateY(-2px);
  color: var(--e-global-color-a2ad01d, #171717) !important;
  text-decoration: none !important;
}

.fiesta-dashboard-card:hover::before {
  transform: scaleX(1);
}

.fiesta-dashboard-card__icon {
  flex-shrink: 0;
  width: 38px;
  height: 38px;
  background: var(--e-global-color-1592df3, #fdf7f1);
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--e-global-color-primary, #f85b01);
  transition: background-color 0.18s;
}

.fiesta-dashboard-card:hover .fiesta-dashboard-card__icon {
  background-color: #fde8d4;
}

.fiesta-dashboard-card__label {
  flex: 1;
  line-height: 1.3;
}

.fiesta-dashboard-card__arrow {
  flex-shrink: 0;
  color: var(--e-global-color-text, #7a7774);
  opacity: 0.4;
  transition:
    opacity 0.18s,
    transform 0.18s;
  display: flex;
  align-items: center;
}

.fiesta-dashboard-card:hover .fiesta-dashboard-card__arrow {
  opacity: 1;
  transform: translateX(3px);
  color: var(--e-global-color-primary, #f85b01);
}

/* === ORDER STATUS COLORED PILLS === */
.woocommerce-account mark.order-status,
.woocommerce-account .woocommerce-orders-table mark {
  display: inline-block;
  font-family: "Manrope", sans-serif;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 3px 10px !important;
  border-radius: 20px !important;
  background-color: var(--e-global-color-cb566ff, #f8eee4);
  color: var(--e-global-color-a2ad01d, #171717);
}

.woocommerce-account mark.status-completed {
  background: #dcfce7 !important;
  color: #166534 !important;
}
.woocommerce-account mark.status-processing {
  background: #dbeafe !important;
  color: #1e40af !important;
}
.woocommerce-account mark.status-on-hold {
  background: #fef9c3 !important;
  color: #854d0e !important;
}
.woocommerce-account mark.status-pending {
  background: #f3f4f6 !important;
  color: #374151 !important;
}
.woocommerce-account mark.status-cancelled {
  background: #fee2e2 !important;
  color: #991b1b !important;
}
.woocommerce-account mark.status-failed {
  background: #fee2e2 !important;
  color: #991b1b !important;
}
.woocommerce-account mark.status-refunded {
  background: #ede9fe !important;
  color: #5b21b6 !important;
}

/* === SECTION HEADINGS — orange accent bar === */
.woocommerce-MyAccount-content h2 {
  position: relative !important;
  padding-bottom: 14px !important;
  border-bottom: none !important;
  margin-bottom: 24px !important;
}

.woocommerce-MyAccount-content h2::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: var(--e-global-color-cb566ff, #f8eee4);
  border-radius: 1px;
}

.woocommerce-MyAccount-content h2::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 48px;
  height: 2px;
  background: var(--e-global-color-primary, #f85b01);
  border-radius: 1px;
  z-index: 1;
}

/* === ADDRESS CARDS — grid + hover lift === */
.woocommerce-account .woocommerce-Addresses {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 20px !important;
}

@media (max-width: 600px) {
  .woocommerce-account .woocommerce-Addresses {
    grid-template-columns: 1fr !important;
  }
}

.woocommerce-account .woocommerce-Address {
  box-shadow:
    0 1px 3px rgba(0, 0, 0, 0.04),
    0 4px 12px rgba(0, 0, 0, 0.04);
  transition:
    box-shadow 0.18s,
    transform 0.15s;
}

.woocommerce-account .woocommerce-Address:hover {
  box-shadow:
    0 4px 12px rgba(0, 0, 0, 0.08),
    0 8px 24px rgba(0, 0, 0, 0.06);
  transform: translateY(-2px);
}

/* ============================================================
   MEGA MENU — Variante Terms List
   ============================================================ */
.fp-variante-grid {
  padding: 4px 0;
}

.fp-variante-item {
  display: block;
  line-height: 1.6;
  color: inherit;
  text-decoration: none !important;
  padding: 3px 0;
  transition: color 0.15s;
  white-space: nowrap;
  font-family: "Manrope", sans-serif;
  font-size: 14px;
  font-weight: 500;
}

.fp-variante-item:hover {
  color: var(--e-global-color-primary);
  text-decoration: underline;
}

/* ============================================================
   MEGA MENU — Formatos (Pack de Rollos + Bobinas)
   ============================================================ */
.fp-formatos-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 32px;
  padding: 4px 0;
}

.fp-formatos-col {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.fp-formatos-heading {
  display: block;
  text-decoration: none;
  margin-bottom: 8px;
  padding-bottom: 6px;
  border-bottom: 2px solid var(--e-global-color-secondary);
  font-size: 12px;
  font-weight: 700;
  line-height: 24px;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  font-family: var(--e-global-typography-primary-font-family), sans-serif;
  color: var(--e-global-color-secondary);
  text-decoration: none !important;
}

.fp-formatos-heading:hover {
  color: var(--e-global-color-primary, #b08050);
}

/* Show only the relevant product tag based on category */
.fp-cat-bobina .tag-pack,
.fp-cat-bobina .tag-caja,
.fp-cat-pack .tag-bobina,
.fp-cat-pack .tag-caja,
.fp-cat-caja .tag-bobina,
.fp-cat-caja .tag-pack {
  display: none !important;
}

/* ============================================================
   SINGLE PRODUCT PAGE — Add to Cart & Variations
   ============================================================ */

/* --- Variations table layout --- */
.single-product .variations_form .variations {
  width: 100%;
  border: none;
  border-collapse: collapse;
  margin-bottom: 20px;
}

.single-product .variations_form .variations tbody tr {
  display: flex;
  flex-direction: column;
}

.single-product .variations_form .variations .label {
  padding: 0 0 6px 0;
  border: none;
  background: none;
  text-align: left;
}

.single-product .variations_form .variations .label label {
  display: block;
  text-decoration: none;
  font-size: 12px;
  font-weight: 700 !important;
  line-height: 24px;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  font-family: var(--e-global-typography-primary-font-family), sans-serif;
  color: var(--e-global-color-secondary);
  text-decoration: none !important;
}

.single-product .variations_form .variations .value {
  padding: 0;
  border: none;
  background: none;
  display: flex;
  align-items: center;
  gap: 10px;
}

/* --- Variation select dropdowns --- */
.single-product .variations_form .variations select {
  font-family: "Manrope", sans-serif;
  font-size: 15px;
  font-weight: 500;
  color: var(--e-global-color-a2ad01d, #171717);
  background-color: #ffffff;
  border: 1.5px solid #d1ccc7;
  border-radius: 6px;
  padding: 10px 40px 10px 16px;
  width: 100%;
  max-width: 320px;
  box-sizing: border-box;
  outline: none;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
  background-image: url("data:image/svg+xml;utf8,<svg width='12' height='7' viewBox='0 0 12 7' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M0.5 0.5L6 5.5L11.5 0.5' stroke='%23f85b01' stroke-width='1.5'/></svg>");
  background-repeat: no-repeat;
  background-position: right 14px center;
  transition:
    border-color 0.2s,
    box-shadow 0.2s;
}

.single-product .variations_form .variations select:focus {
  border-color: var(--e-global-color-primary, #f85b01);
  box-shadow: 0 0 0 3px rgba(248, 91, 1, 0.12);
  outline: none;
}

.single-product .variations_form .variations select:hover {
  border-color: var(--e-global-color-primary, #f85b01);
}

/* --- Variation price display --- */
.single-product .woocommerce-variation-price .price,
.single-product .woocommerce-variation-price .woocommerce-Price-amount {
  font-family: var(--e-global-typography-accent-font-family), Sans-serif;
  font-size: var(--e-global-typography-accent-font-size);
  font-weight: var(--e-global-typography-accent-font-weight);
  line-height: var(--e-global-typography-accent-line-height);
  color: var(--e-global-color-secondary);
}

/* --- Add-to-cart row: quantity stepper + button side by side --- */
.single-product .woocommerce-variation-add-to-cart,
.single-product form.cart:not(.variations_form) {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 8px;
  flex-wrap: wrap;
}

/* Extra breathing room between the stepper group and add-to-cart */
.single-product .custom-quantity.plus {
  margin-right: 8px;
}

/* --- Quantity box --- */
.woocommerce div.product form.cart div.quantity {
  display: flex;
  align-items: center;
  margin-inline-end: 0px;
}

.single-product .quantity .qty {
  width: 44px;
  text-align: center;
  border: none;
  background-color: transparent;
  outline: none;
  font-family: "Manrope", sans-serif;
  font-size: 14px;
  font-weight: 700;
  color: var(--e-global-color-secondary, #761938);
  -webkit-appearance: none;
  -moz-appearance: textfield;
  appearance: textfield;
}

.single-product .quantity .qty::-webkit-inner-spin-button,
.single-product .quantity .qty::-webkit-outer-spin-button {
  display: none;
}

/* --- Add to Cart button — ghost/outline style --- */
.woocommerce.single-product .single_add_to_cart_button.button {
  font-family: "New Kansas", sans-serif !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  line-height: 22px !important;
  color: var(--e-global-color-primary, #f85b01) !important;
  background-color: var(--e-global-color-0f122b4) !important;
  border: 2px solid var(--e-global-color-primary, #f85b01) !important;
  border-radius: 6px !important;
  padding: 12px 30px !important;
  cursor: pointer;
  flex: 1;
  min-width: 160px;
  transition:
    background-color 0.2s,
    color 0.2s,
    border-color 0.2s !important;
  text-align: center;
  white-space: nowrap;
  margin-left: 10px !important;
}

.woocommerce.single-product .single_add_to_cart_button.button:hover,
.woocommerce.single-product .single_add_to_cart_button.button:focus {
  background-color: var(--e-global-color-primary, #f85b01) !important;
  border-color: var(--e-global-color-secondary, #761938) !important;
  color: var(--e-global-color-secondary, #761938) !important;
}

.woocommerce.single-product .single_add_to_cart_button.button:active {
  transform: translateY(1px);
}

/* Disabled state (no variation selected yet) */
.woocommerce.single-product .single_add_to_cart_button.button.disabled,
.woocommerce.single-product .single_add_to_cart_button.button[disabled] {
  background-color: transparent !important;
  border-color: var(--e-global-color-text, #7a7774) !important;
  color: var(--e-global-color-text, #7a7774) !important;
  cursor: not-allowed;
  transform: none;
}

/* --- Custom quantity +/- buttons --- */
.single-product .custom-quantity {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  background-color: var(--e-global-color-2781883, #fbeae7);
  border: 2px solid var(--e-global-color-secondary, #761938);
  border-radius: 20px;
  color: var(--e-global-color-secondary, #761938);
  fill: var(--e-global-color-secondary, #761938);
  cursor: pointer;
  padding: 7px;
  transition:
    border-color 0.2s,
    color 0.2s,
    fill 0.2s;
}

.single-product .custom-quantity svg {
  width: 24px;
  height: 24px;
  display: block;
  pointer-events: none;
}

.single-product .custom-quantity:hover {
  color: var(--e-global-color-primary, #f85b01);
  fill: var(--e-global-color-primary, #f85b01);
  border-color: var(--e-global-color-primary, #f85b01);
}

.single-product .custom-quantity:active {
  transform: scale(0.95);
}

/* --- Mobile: stack quantity + button vertically --- */
@media (max-width: 480px) {
  .single-product form.cart:not(.variations_form) {
    flex-direction: column;
  }

  .single-product .quantity .qty {
            width: 100%;
        max-width: 32px;
        padding: 5px !important;
  }

  .single-product .single_add_to_cart_button.button {
    width: 100%;
  }

  .single-product .variations_form .variations select {
    max-width: 100%;
  }
	:is(.elementor-widget-woocommerce-product-add-to-cart,.woocommerce div.product .elementor-widget-woocommerce-product-add-to-cart,.elementor-widget-wc-add-to-cart,.woocommerce div.product .elementor-widget-wc-add-to-cart) form.cart .button:where(:not(:first-child)), :is(.elementor-widget-woocommerce-product-add-to-cart,.woocommerce div.product .elementor-widget-woocommerce-product-add-to-cart,.elementor-widget-wc-add-to-cart,.woocommerce div.product .elementor-widget-wc-add-to-cart) form.cart button:where(:not(:first-child)){
		margin-inline-start:0px !important;
	}

}

.elementor-widget-n-menu .e-n-menu-toggle span {
  color: var(--e-global-color-primary);
}

.elementor-accordion-icon.elementor-accordion-icon-right {
  margin-top: 3px;
  margin-left: 5px;
}

/* ============================================================
   PRODUCT ARCHIVE: mobile filter toggle
   #filter-trigger opens #product-filter as a fixed overlay,
   #close-filter closes it. Mobile only — other breakpoints
   keep their own Elementor-controlled styling.
   ============================================================ */
@media (max-width: 767px) {
  #product-filter {
    display: none;
  }

  #product-filter.fp-filter-open {
    display: flex;
    position: fixed;
    top: 0 !important;
    left: 0;
    right: 0;
    z-index: 9999;
    width: 100vw;
  }

  #filter-trigger,
  #close-filter {
    cursor: pointer;
  }
}

.elementor-widget-image a {
  width: 100%;
}

/* VARIATION BUTTON GROUP */

.fp-variation-select {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.fp-variation-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.fp-variation-btn {
  border: 2px solid var(--e-global-color-secondary);
  color: var(--e-global-color-secondary);
  background: transparent;
  cursor: pointer;
  font-size: inherit;
  font-family: inherit;
  line-height: 1.4;
  border-radius: 6px 6px 6px 6px;
  padding: 7px 12px 7px 12px;
  font-family: "New Kansas", sans-serif !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  line-height: 22px !important;
  transition:
    background 0.15s,
    color 0.15s;
}

.fp-variation-btn:hover {
  background: var(--e-global-color-accent);
  color: var(--e-global-color-secondary);
}

.fp-variation-btn:focus,
.fp-variation-btn--selected,
.fp-variation-btn--selected:hover {
  background: var(--e-global-color-secondary);
  color: #fff;
}

/* Hide price and description in WC's original container — shown via custom wrappers instead */
.woocommerce-variation.single_variation .woocommerce-variation-price,
.woocommerce-variation.single_variation .woocommerce-variation-description {
  display: none !important;
}

/* PRODUCT SINGLE PAGE */

/* .single_variation_wrap {
  display: flex;
  flex-direction: column-reverse;
  gap: 30px;
} */

.fp-variation-description-wrap .woocommerce-variation-description {
  padding-top: 15px;
}

.fp-variation-description-wrap .woocommerce-variation-description h4 {
  font-family: var(--e-global-typography-accent-font-family), Sans-serif;
  font-size: var(--e-global-typography-accent-font-size);
  font-weight: var(--e-global-typography-accent-font-weight);
  line-height: var(--e-global-typography-accent-line-height);
  color: var(--e-global-color-secondary);
  margin-bottom: 5px;
  margin-top: 10px;
}

.fp-variation-description-wrap .woocommerce-variation-description ul {
  padding-inline-start: 15px;
}

.fp-variation-description-wrap .woocommerce-variation-description ul li {
  font-family: var(--e-global-typography-78188e1-font-family), Sans-serif;
  font-size: var(--e-global-typography-78188e1-font-size);
  font-weight: 600;
  line-height: var(--e-global-typography-78188e1-line-height);
  color: var(--e-global-color-a2ad01d);
  padding-top: 10px;
}

.fp-variation-description-wrap
  .woocommerce-variation-description
  ul
  li::marker {
  color: var(--e-global-color-primary);
}

.woocommerce div.product .woocommerce-variation-availability p.stock {
  font-family: "Manrope", sans-serif;
  font-size: 12px;
  font-weight: 600;
  color: var(--e-global-color-text, #7a7774);
  text-decoration: none;
  white-space: nowrap;
  flex-shrink: 0;
  transition: color 0.2s;
}

/* --- Reset variations link --- */

.woocommerce div.product form.cart .reset_variations {
  display: none !important;
}

.fp-variation-price-wrap {
  height: 48px;
}

.woocommerce-variation.single_variation {
  height: 25px;
}

.single_variation_wrap {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: 80px;
}

.woocommerce div.product p.price ins,
.woocommerce div.product span.price ins {
  text-decoration: none;
}

.woocommerce div.product p.price del,
.woocommerce div.product span.price del {
  color: var(--e-global-color-secondary);
}

#fp-measurement-sticker {
  width: 150px;
}

@media (max-width: 1024px) {
  #fp-measurement-sticker {
    width: 120px;
  }
	
	.woocommerce div.product div.images {
    margin-bottom: 0px;
}
}

.e-page-transition svg, .e-page-transition--entering svg, .e-page-transition--entered svg, .e-page-transition--exiting svg{
  width: 32px !important;
  height: 32px !important;
  color: var(--e-global-color-primary);
  animation: bounceCustom 1s infinite;
}

@keyframes bounceCustom {
  0%,
  100% {
    transform: translateY(0);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  40% {
    transform: translateY(-30px);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
  }
  70% {
    transform: translateY(-15px);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
  }
  90% {
    transform: translateY(-4px);
  }
}

.onsale{
  display:none !important;
}
body.term-bobinas-papel-de-regalo .numero-de-rollos-filter { display: none !important; }
