/* ==========================================================================
   ISN VIRTUAL - Mini-carrito, Carrito, Checkout y Regalos (mobile-first)
   Se carga despues de tienda.css (usa sus variables --isn-*).
   Solo en contexto tienda/carrito/checkout (enqueue en 25-tienda-carrito.php).
   ========================================================================== */
:root{
  --isn-ok:#2f9e5b; --isn-ok-soft:#eaf7ef; --isn-danger:#d9534f;
  --isn-gift:#ff8a3d; --isn-gift-soft:#fff4ec;
}

/* ---------- Cabecera de pagina + pasos (carrito / checkout) ---------- */
.isn-cart-head{order:-1;text-align:center;padding:30px 0 18px;font-family:var(--isn-font);}
.isn-cart-head__title{font-family:var(--isn-font);font-weight:700;color:var(--isn-navy);font-size:2rem;line-height:1.1;margin:0;letter-spacing:-.01em;}
.isn-cart-head__title::after{content:"";display:block;width:56px;height:4px;border-radius:100px;background:var(--isn-primary);margin:14px auto 0;}
.isn-cart-head__sub{color:var(--isn-muted);font-size:.98rem;margin:12px 0 0;}
.isn-steps{display:flex;align-items:center;justify-content:center;gap:10px;margin:22px auto 0;padding:0;list-style:none;max-width:560px;}
.isn-step{display:flex;align-items:center;gap:8px;font-weight:600;font-size:.88rem;color:var(--isn-muted);text-decoration:none !important;white-space:nowrap;}
.isn-step__n{width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;background:#fff;border:1.5px solid var(--isn-line);color:var(--isn-muted);flex:0 0 auto;}
.isn-step.is-active{color:var(--isn-navy);}
.isn-step.is-active .isn-step__n{background:var(--isn-primary);border-color:var(--isn-primary);color:#fff;box-shadow:0 6px 14px rgba(54,169,225,.3);}
.isn-step.is-done{color:var(--isn-primary);}
.isn-step.is-done .isn-step__n{background:var(--isn-soft);border-color:var(--isn-accent);color:var(--isn-primary);}
a.isn-step.is-done:hover{color:var(--isn-navy);}
.isn-steps__sep{flex:0 1 48px;height:2px;border-radius:2px;background:var(--isn-line);min-width:14px;}
.isn-steps__sep.is-done{background:var(--isn-accent);}
@media (max-width:767px){
  .isn-cart-head{padding:18px 0 8px;}
  .isn-cart-head__title{font-size:1.5rem;}
  .isn-cart-head__title::after{margin-top:10px;width:44px;}
  .isn-cart-head__sub{font-size:.9rem;margin-top:8px;}
  .isn-steps{gap:6px;margin-top:16px;}
  .isn-step{font-size:.76rem;gap:5px;}
  .isn-step__n{width:24px;height:24px;font-size:.72rem;}
  .isn-step:not(.is-active) .isn-step__txt{display:none;}
  .isn-steps__sep{flex-basis:22px;}
}

/* ---------- Boton base ISN ---------- */
.isn-btn,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-checkout #place_order{
  display:flex !important;align-items:center;justify-content:center;gap:10px;width:100%;
  background:var(--isn-primary) !important;color:#fff !important;border:none !important;border-radius:100px !important;
  padding:17px 26px !important;font-family:var(--isn-font) !important;font-weight:700 !important;font-size:1.05rem !important;line-height:1.1 !important;
  text-decoration:none !important;box-shadow:0 10px 24px rgba(54,169,225,.32) !important;cursor:pointer;
  transition:background .25s var(--isn-ease),transform .15s var(--isn-ease),box-shadow .25s var(--isn-ease) !important;
}
.isn-btn:hover,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce-checkout #place_order:hover{background:var(--isn-navy) !important;box-shadow:0 10px 24px rgba(20,14,104,.25) !important;}
.isn-btn:active,.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:active,.woocommerce-checkout #place_order:active{transform:scale(.98);}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button::after,
.woocommerce-checkout #place_order::after{content:"";width:18px;height:18px;flex:0 0 auto;background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat;}
.woocommerce-checkout #place_order::after{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='11' width='16' height='10' rx='2.5'/%3E%3Cpath d='M8 11V8a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E");
          mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='11' width='16' height='10' rx='2.5'/%3E%3Cpath d='M8 11V8a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E");}

/* Sello "pago seguro" (lo inserta el mu-plugin bajo los botones de pago) */
.isn-secure{display:flex;align-items:center;justify-content:center;gap:7px;margin:12px 0 0;color:var(--isn-muted);font-size:.82rem;font-weight:600;font-family:var(--isn-font);text-align:center;}
.isn-secure::before{content:"";width:14px;height:14px;flex:0 0 auto;background:var(--isn-ok);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l8 3v6c0 5-3.5 8-8 9-4.5-1-8-4-8-9V6z'/%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l8 3v6c0 5-3.5 8-8 9-4.5-1-8-4-8-9V6z'/%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3C/svg%3E") center/contain no-repeat;}

/* ---------- Etiqueta "Regalo" (variation Tipo: Regalo) en carrito, checkout y mini-carrito ---------- */
dl.variation:has(.variation-Tipo){display:inline-flex !important;align-items:center;margin:6px 0 0 !important;padding:0 !important;border:none !important;}
dl.variation dt.variation-Tipo{display:none !important;}
dl.variation dd.variation-Tipo{margin:0 !important;padding:0 !important;float:none !important;}
dl.variation dd.variation-Tipo p{display:inline-flex !important;align-items:center;gap:5px;margin:0 !important;padding:3px 10px !important;border-radius:100px;
  background:var(--isn-gift-soft);color:#c25a12 !important;font-size:.72rem !important;font-weight:700;text-transform:uppercase;letter-spacing:.06em;line-height:1.5;}
dl.variation dd.variation-Tipo p::before{content:"";width:12px;height:12px;background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='8' width='18' height='5' rx='1'/%3E%3Cpath d='M5 13v8h14v-8M12 8v13M12 8c-2-4-6-4-6-1.5S10 8 12 8zm0 0c2-4 6-4 6-1.5S14 8 12 8z'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='8' width='18' height='5' rx='1'/%3E%3Cpath d='M5 13v8h14v-8M12 8v13M12 8c-2-4-6-4-6-1.5S10 8 12 8zm0 0c2-4 6-4 6-1.5S14 8 12 8z'/%3E%3C/svg%3E") center/contain no-repeat;}
.isn-free{display:inline-block;color:var(--isn-ok) !important;font-weight:700;}

/* ==========================================================================
   MINI-CARRITO (Elementor Menu Cart + plantilla Royal Addons)
   ========================================================================== */
.elementor-menu-cart--shown .elementor-menu-cart__container{
  position:fixed !important;inset:0 !important;top:0 !important;left:0 !important;right:0 !important;width:100% !important;height:100% !important;
  z-index:99999 !important;transform:none !important;background-color:rgba(20,14,104,.35) !important;
}
.elementor-menu-cart--shown .elementor-menu-cart__main{
  position:absolute !important;top:0 !important;right:0 !important;left:auto !important;bottom:0 !important;height:100% !important;max-height:none !important;
  transform:none !important;opacity:1 !important;overflow:hidden !important;animation:isnDrawerIn .35s var(--isn-ease) both;
}
@keyframes isnDrawerIn{from{transform:translateX(100%)}to{transform:translateX(0)}}
@media (prefers-reduced-motion:reduce){.elementor-menu-cart--shown .elementor-menu-cart__main{animation:none;}}
.elementor-menu-cart__main .woocommerce-mini-cart-item::before,.elementor-menu-cart__main .woocommerce-mini-cart-item::after{display:none !important;content:none !important;}
.elementor-menu-cart__main{
  width:400px !important;max-width:100% !important;padding:0 !important;display:flex !important;flex-direction:column;
  border-radius:22px 0 0 22px !important;background:#fff !important;font-family:var(--isn-font);box-shadow:-20px 0 50px rgba(20,14,104,.18) !important;
}
.elementor-menu-cart__main::before{content:"Tu carrito";display:block;font-weight:700;font-size:1.25rem;color:var(--isn-navy);padding:24px 24px 18px;border-bottom:1px solid var(--isn-line);}
.elementor-menu-cart__close-button{position:absolute !important;top:22px;right:20px;margin:0 !important;width:34px !important;height:34px !important;border-radius:50%;background:var(--isn-soft);display:flex !important;align-items:center;justify-content:center;transition:background .2s var(--isn-ease);}
.elementor-menu-cart__close-button:hover{background:var(--isn-line);}
.elementor-menu-cart__close-button::before,.elementor-menu-cart__close-button::after{width:14px !important;height:2px !important;background:var(--isn-navy) !important;top:auto !important;left:auto !important;}
.elementor-menu-cart__main .widget_shopping_cart_content{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;}
.elementor-menu-cart__main .woocommerce-mini-cart{flex:1 1 auto;overflow-y:auto;margin:0 !important;padding:6px 24px !important;list-style:none;-webkit-overflow-scrolling:touch;}
.elementor-menu-cart__main .woocommerce-mini-cart-item{
  display:grid !important;grid-template-columns:68px minmax(0,1fr) 30px;gap:14px;align-items:center;
  padding:14px 0 !important;margin:0 !important;border-bottom:1px solid var(--isn-line) !important;position:relative;background:none !important;
}
.elementor-menu-cart__main .woocommerce-mini-cart-item:last-child{border-bottom:none !important;}
.elementor-menu-cart__main .wpr-mini-cart-image,.elementor-menu-cart__main .wpr-mini-cart-image a{display:block;width:68px;}
.elementor-menu-cart__main .wpr-mini-cart-image img,
.elementor-menu-cart__main .woocommerce-mini-cart-item img{width:68px !important;height:68px !important;max-width:none !important;object-fit:contain;border-radius:14px;background:#fff;border:1px solid var(--isn-line) !important;padding:5px;margin:0 !important;float:none !important;}
.elementor-menu-cart__main .wpr-mini-cart-name-and-quantity{min-width:0;width:auto !important;max-width:none !important;}
.elementor-menu-cart__main .wpr-mini-cart-image{width:68px !important;flex:none !important;}
.elementor-menu-cart__main .wpr-mini-cart-name,.elementor-menu-cart__main .wpr-mini-cart-product-name a{color:var(--isn-navy) !important;font-weight:600;font-size:.93rem;line-height:1.3;text-decoration:none !important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.elementor-menu-cart__main .wpr-mini-cart-quantity,.elementor-menu-cart__main .woocommerce-mini-cart-item .quantity{display:block;margin-top:4px;color:var(--isn-muted) !important;font-size:.85rem;font-weight:500;}
.elementor-menu-cart__main .wpr-mini-cart-quantity .amount{color:var(--isn-navy);font-weight:700;}
.elementor-menu-cart__main .wpr-mini-cart-remove{justify-self:end;}
.elementor-menu-cart__main .woocommerce-mini-cart-item a.remove{
  position:static !important;width:30px !important;height:30px !important;border-radius:50%;display:flex !important;align-items:center;justify-content:center;
  font-size:1.2rem !important;line-height:1 !important;color:var(--isn-muted) !important;background:var(--isn-soft) !important;border:none !important;text-decoration:none !important;
  transition:background .2s var(--isn-ease),color .2s var(--isn-ease);
}
.elementor-menu-cart__main .woocommerce-mini-cart-item a.remove:hover{background:var(--isn-danger) !important;color:#fff !important;}
.elementor-menu-cart__main .wpr-mini-cart-separator{display:none;}
.elementor-menu-cart__main .woocommerce-mini-cart__total{
  display:flex !important;justify-content:space-between;align-items:baseline;margin:0 !important;padding:18px 24px 6px !important;border-top:1px solid var(--isn-line) !important;
  color:var(--isn-navy) !important;font-size:1rem;background:#fff;
}
.elementor-menu-cart__main .woocommerce-mini-cart__total strong{font-weight:600;color:var(--isn-muted);}
.elementor-menu-cart__main .woocommerce-mini-cart__total .amount{font-size:1.35rem;font-weight:700;color:var(--isn-navy) !important;}
.elementor-menu-cart__main .woocommerce-mini-cart__buttons{display:grid !important;grid-template-columns:1fr 1.35fr;gap:10px;margin:0 !important;padding:12px 24px 24px !important;background:#fff;}
.elementor-menu-cart__main .woocommerce-mini-cart__buttons a.button{
  display:flex !important;align-items:center;justify-content:center;margin:0 !important;padding:14px 12px !important;border-radius:100px !important;
  font-family:var(--isn-font) !important;font-weight:700 !important;font-size:.92rem !important;text-align:center;text-decoration:none !important;line-height:1.1;
  background:#fff !important;color:var(--isn-navy) !important;border:1.5px solid var(--isn-line) !important;transition:all .2s var(--isn-ease);
}
.elementor-menu-cart__main .woocommerce-mini-cart__buttons a.button:hover{border-color:var(--isn-primary) !important;color:var(--isn-primary) !important;}
.elementor-menu-cart__main .woocommerce-mini-cart__buttons a.button.checkout{background:var(--isn-primary) !important;color:#fff !important;border-color:var(--isn-primary) !important;box-shadow:0 8px 20px rgba(54,169,225,.3);}
.elementor-menu-cart__main .woocommerce-mini-cart__buttons a.button.checkout:hover{background:var(--isn-navy) !important;border-color:var(--isn-navy) !important;color:#fff !important;}
.elementor-menu-cart__main .woocommerce-mini-cart__empty-message{margin:auto !important;padding:60px 24px 30px;text-align:center;color:var(--isn-muted);font-weight:600;}
.elementor-menu-cart__main .woocommerce-mini-cart__empty-message::before{content:"";display:block;width:64px;height:64px;margin:0 auto 16px;border-radius:50%;
  background:var(--isn-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2336A9E1' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='20' r='1.3'/%3E%3Ccircle cx='18' cy='20' r='1.3'/%3E%3Cpath d='M2 3h3l2.6 12.4a2 2 0 0 0 2 1.6h8.3a2 2 0 0 0 2-1.5L22 8H6'/%3E%3C/svg%3E") center/30px no-repeat;}
/* Aviso de regalo dentro del mini-carrito */
@media (max-width:480px){
  .elementor-menu-cart__main{width:100% !important;border-radius:0 !important;}
  .elementor-menu-cart__main::before{padding:20px 18px 16px;}
  .elementor-menu-cart__close-button{top:16px;right:14px;}
  .elementor-menu-cart__main .woocommerce-mini-cart{padding:4px 18px !important;}
  .elementor-menu-cart__main .woocommerce-mini-cart__total{padding:16px 18px 4px !important;}
  .elementor-menu-cart__main .woocommerce-mini-cart__buttons{padding:10px 18px calc(18px + env(safe-area-inset-bottom)) !important;}
}

/* ==========================================================================
   AVISO DE REGALO (banner)  - reemplaza el aviso generico del plugin
   ========================================================================== */
.woocommerce-message:has(.isn-gift__btn),.woocommerce-info:has(.isn-gift__btn){
  display:grid !important;grid-template-columns:48px minmax(0,1fr) auto;grid-template-areas:"ico t btn" "ico s btn";column-gap:16px;row-gap:2px;align-items:center;
  padding:16px 18px !important;margin:0 0 20px !important;border-radius:var(--isn-radius) !important;font-family:var(--isn-font);text-align:left;
  background:linear-gradient(120deg,#fff 0%,var(--isn-gift-soft) 100%) !important;border:1.5px solid #ffd9bf !important;box-shadow:0 8px 24px rgba(255,138,61,.12) !important;color:var(--isn-navy) !important;
}
.woocommerce-notices-wrapper:has(.isn-gift__btn),.woocommerce-message:has(.isn-gift__btn){position:static !important;top:auto !important;z-index:auto !important;transform:none !important;}
.woocommerce-message:has(.isn-gift__btn):focus,.woocommerce-message:has(.isn-gift__btn):focus-visible{outline:none !important;}
.woocommerce-cart .wpr-shop-table thead::before,.woocommerce-cart table.shop_table thead::before{display:none !important;}
.woocommerce-message:has(.isn-gift__btn) > p,.woocommerce-info:has(.isn-gift__btn) > p{display:none !important;}
.woocommerce-message:has(.isn-gift__btn)::before,.woocommerce-info:has(.isn-gift__btn)::before{
  content:"" !important;grid-area:ico;position:static !important;width:48px;height:48px;border-radius:14px;margin:0 !important;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='8' width='18' height='5' rx='1'/%3E%3Cpath d='M5 13v8h14v-8M12 8v13M12 8c-2-4-6-4-6-1.5S10 8 12 8zm0 0c2-4 6-4 6-1.5S14 8 12 8z'/%3E%3C/svg%3E") center/24px no-repeat,linear-gradient(135deg,var(--isn-gift),#ff6a3d) !important;
  box-shadow:0 8px 18px rgba(255,106,61,.35);animation:isnGiftPop 2.8s ease-in-out infinite;color:transparent !important;font-size:0 !important;
}
.isn-gift__t{grid-area:t;align-self:end;color:var(--isn-navy);font-size:1.02rem;font-weight:700;line-height:1.25;}
.isn-gift__s{grid-area:s;align-self:start;color:#6b6f82;font-size:.9rem;line-height:1.4;font-style:normal;}
a.isn-gift__btn{
  grid-area:btn;display:inline-flex !important;align-items:center;gap:8px;padding:12px 20px !important;border-radius:100px !important;
  background:var(--isn-navy) !important;color:#fff !important;font-weight:700 !important;font-size:.9rem !important;text-decoration:none !important;white-space:nowrap;
  box-shadow:0 8px 18px rgba(20,14,104,.22);transition:background .2s var(--isn-ease),transform .15s var(--isn-ease);margin:0 !important;float:none !important;
}
a.isn-gift__btn:hover{background:var(--isn-primary) !important;}
a.isn-gift__btn:active{transform:scale(.97);}
@keyframes isnGiftPop{0%,100%{transform:rotate(0) scale(1)}8%{transform:rotate(-8deg) scale(1.06)}16%{transform:rotate(6deg) scale(1.06)}24%{transform:rotate(0) scale(1)}}
@media (prefers-reduced-motion:reduce){.woocommerce-message:has(.isn-gift__btn)::before{animation:none;}}
@media (max-width:600px){
  .woocommerce-message:has(.isn-gift__btn),.woocommerce-info:has(.isn-gift__btn){
    grid-template-columns:40px minmax(0,1fr);grid-template-areas:"ico t" "ico s" "btn btn";column-gap:12px;row-gap:1px;
    padding:14px 14px 12px !important;border-radius:16px !important;margin-bottom:14px !important;
  }
  .woocommerce-message:has(.isn-gift__btn)::before,.woocommerce-info:has(.isn-gift__btn)::before{
    width:40px;height:40px;border-radius:12px;background-size:20px,100% !important;align-self:center;
  }
  .isn-gift__t{font-size:.95rem;line-height:1.25;align-self:end;}
  .isn-gift__s{font-size:.8rem;line-height:1.35;align-self:start;}
  a.isn-gift__btn{
    justify-content:center;width:100%;margin-top:12px !important;padding:11px 16px !important;font-size:.88rem !important;
    background:linear-gradient(135deg,var(--isn-gift),#ff6a3d) !important;box-shadow:0 6px 14px rgba(255,106,61,.3) !important;
  }
  a.isn-gift__btn:hover{background:var(--isn-navy) !important;}
}
/* Movil estrecho: icono algo menor */
@media (max-width:360px){
  .woocommerce-message:has(.isn-gift__btn),.woocommerce-info:has(.isn-gift__btn){grid-template-columns:34px minmax(0,1fr);column-gap:10px;}
  .woocommerce-message:has(.isn-gift__btn)::before,.woocommerce-info:has(.isn-gift__btn)::before{width:34px;height:34px;border-radius:10px;background-size:17px,100% !important;}
}

.elementor-menu-cart__main .woocommerce-message:has(.isn-gift__btn){margin:14px 24px 0 !important;}

/* ==========================================================================
   CARRITO (Elementor Pro Cart)
   ========================================================================== */
.woocommerce-cart .elementor-widget-woocommerce-cart{font-family:var(--isn-font);}
.woocommerce-cart .elementor-widget-woocommerce-cart .woocommerce{display:flex;flex-direction:column;}
.woocommerce-cart .elementor-widget-woocommerce-cart .woocommerce-notices-wrapper:empty{display:none;}
.woocommerce-cart .e-cart__container{grid-template-columns:minmax(0,1fr) 380px !important;gap:28px !important;align-items:start;}
.woocommerce-cart .e-cart-section{background:#fff !important;border:1px solid var(--isn-line) !important;border-radius:var(--isn-radius) !important;box-shadow:var(--isn-shadow) !important;padding:8px 24px !important;}
.woocommerce-cart .e-cart__column-start{min-width:0;}

/* Tabla -> lista de filas */
.woocommerce-cart .e-shop-table table.shop_table{display:block !important;border:none !important;margin:0 !important;background:transparent !important;border-radius:0 !important;box-shadow:none !important;}
.woocommerce-cart .e-shop-table table.shop_table thead{display:none !important;}
.woocommerce-cart .e-shop-table table.shop_table tbody{display:block !important;}
.woocommerce-cart .e-shop-table tr.cart_item{
  display:grid !important;grid-template-columns:92px minmax(0,1fr) auto 100px 34px;
  grid-template-areas:"thumb name qty sub rm" "thumb price qty sub rm";
  column-gap:18px;row-gap:2px;align-items:center;padding:18px 0 !important;border-bottom:1px solid var(--isn-line);background:none !important;margin:0 !important;
}
.woocommerce-cart .e-shop-table tr.cart_item:last-of-type{border-bottom:none;}
.woocommerce-cart .e-shop-table tr.cart_item td{display:block !important;border:none !important;padding:0 !important;background:none !important;width:auto !important;text-align:left !important;min-width:0;}
.woocommerce-cart .e-shop-table tr.cart_item td::before{display:none !important;content:none !important;}
.woocommerce-cart .e-shop-table td.product-thumbnail{grid-area:thumb;}
.woocommerce-cart .e-shop-table td.product-thumbnail a{display:block;}
.woocommerce-cart .e-shop-table td.product-thumbnail img{width:92px !important;height:92px !important;max-width:none !important;object-fit:contain;border-radius:16px;background:#fff;border:1px solid var(--isn-line) !important;padding:6px;margin:0 !important;transition:transform .35s var(--isn-ease);}
.woocommerce-cart .e-shop-table tr.cart_item:hover td.product-thumbnail img{transform:scale(1.04);}
.woocommerce-cart .e-shop-table td.product-name{grid-area:name;align-self:end;}
.woocommerce-cart .e-shop-table td.product-name a{color:var(--isn-navy) !important;font-weight:700;font-size:1rem;line-height:1.3;text-decoration:none !important;}
.woocommerce-cart .e-shop-table td.product-name a:hover{color:var(--isn-primary) !important;}
.woocommerce-cart .e-shop-table td.product-price{grid-area:price;align-self:start;color:var(--isn-muted) !important;font-size:.88rem;font-weight:500;}
.woocommerce-cart .e-shop-table td.product-price .amount{color:var(--isn-muted);font-weight:600;}
.woocommerce-cart .e-shop-table td.product-price .amount::after{content:" / ud.";font-weight:500;}
.woocommerce-cart .e-shop-table td.product-quantity{grid-area:qty;}
.woocommerce-cart .e-shop-table td,.woocommerce-cart .e-shop-table .amount,.woocommerce-cart .cart_totals td,.woocommerce-cart .cart_totals th,.woocommerce-cart .cart_totals .amount{font-family:var(--isn-font) !important;}
.woocommerce-cart .e-shop-table td.product-subtotal{grid-area:sub;text-align:right !important;font-weight:700;font-size:1.05rem;color:var(--isn-navy) !important;}
.woocommerce-cart .e-shop-table td.product-remove{grid-area:rm;justify-self:end;}
.woocommerce-cart .e-shop-table td.product-remove a.remove{
  width:34px !important;height:34px !important;border-radius:50% !important;display:flex !important;align-items:center;justify-content:center;
  font-size:0 !important;color:transparent !important;background:var(--isn-soft) !important;border:none !important;position:relative;transition:background .2s var(--isn-ease);
}
.woocommerce-cart .e-shop-table td.product-remove a.remove::before{content:"";width:16px;height:16px;background:var(--isn-muted);transition:background .2s var(--isn-ease);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16M10 11v6M14 11v6M6 7l1 12a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2l1-12M9 7V4h6v3'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16M10 11v6M14 11v6M6 7l1 12a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2l1-12M9 7V4h6v3'/%3E%3C/svg%3E") center/contain no-repeat;}
.woocommerce-cart .e-shop-table td.product-remove a.remove:hover{background:#fdecea !important;}
.woocommerce-cart .e-shop-table td.product-remove a.remove:hover::before{background:var(--isn-danger);}

/* Selector de cantidad (+/-) */
.woocommerce-cart .e-shop-table .quantity{display:inline-flex !important;align-items:center;border:1.5px solid var(--isn-line);border-radius:100px;background:#fff;padding:3px;margin:0 !important;}
.woocommerce-cart .e-shop-table .quantity input.qty{
  width:40px !important;height:34px;border:none !important;padding:0 !important;margin:0 !important;background:transparent !important;box-shadow:none !important;
  text-align:center;font-family:var(--isn-font);font-weight:700;font-size:1rem;color:var(--isn-navy);-moz-appearance:textfield;border-radius:0 !important;
}
.woocommerce-cart .e-shop-table .quantity input.qty::-webkit-outer-spin-button,.woocommerce-cart .e-shop-table .quantity input.qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
.isn-qty-btn{width:34px;height:34px;border-radius:50% !important;border:none !important;background:var(--isn-soft) !important;color:var(--isn-navy) !important;
  font-size:1.15rem !important;font-weight:700;line-height:1 !important;padding:0 !important;margin:0 !important;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;
  transition:background .2s var(--isn-ease),color .2s var(--isn-ease);font-family:var(--isn-font);box-shadow:none !important;min-height:0 !important;}
.isn-qty-btn:hover{background:var(--isn-primary) !important;color:#fff !important;}
.isn-qty-btn:disabled{opacity:.35;cursor:default;}
/* Cargando (mientras se actualiza el carrito) */
.woocommerce-cart .e-shop-table .blockUI.blockOverlay,.woocommerce-cart .cart_totals .blockUI.blockOverlay{background:rgba(255,255,255,.7) !important;border-radius:var(--isn-radius);}

/* Fila de regalo */
.woocommerce-cart .e-shop-table tr.cart_item:has(.variation-Tipo){
  background:linear-gradient(90deg,var(--isn-gift-soft),rgba(255,244,236,0)) !important;border-radius:var(--isn-radius-sm);
  margin:8px -12px !important;padding:14px 12px !important;border-bottom:none;
}
.woocommerce-cart .e-shop-table tr.cart_item:has(.variation-Tipo) td.product-price .amount::after{content:none;}
.woocommerce-cart .e-shop-table tr.cart_item:has(.variation-Tipo) td.product-price{display:none !important;}
.woocommerce-cart .e-shop-table tr.cart_item:has(.variation-Tipo) td.product-quantity{color:var(--isn-muted);font-weight:600;font-size:.9rem;}
.woocommerce-cart .e-shop-table tr.cart_item:has(.variation-Tipo) td.product-quantity::after{content:" ud.";}
.woocommerce-cart .e-shop-table tr.cart_item:has(.variation-Tipo) td.product-subtotal{color:var(--isn-ok) !important;}
.woocommerce-cart .e-shop-table tr.cart_item:has(.variation-Tipo) td.product-thumbnail img{background:#fff;}

/* Fila de acciones: el boton "Actualizar" se oculta cuando el JS de cantidades esta activo */
.woocommerce-cart .e-shop-table tr:has(td.actions){display:block !important;}
.woocommerce-cart .e-shop-table td.actions{display:block !important;padding:4px 0 14px !important;border:none !important;background:none !important;text-align:right;}
.woocommerce-cart .e-shop-table td.actions::before{display:none !important;}
.woocommerce-cart .e-shop-table td.actions .button{background:#fff !important;color:var(--isn-navy) !important;border:1.5px solid var(--isn-line) !important;border-radius:100px !important;padding:10px 20px !important;font-weight:600 !important;font-family:var(--isn-font);}
.isn-qty-on .woocommerce-cart-form td.actions{padding:0 !important;}
body.isn-qty-on .elementor-widget-woocommerce-cart .woocommerce table.shop_table.cart .actions button.button[name="update_cart"],body.isn-qty-on .woocommerce-cart-form td.actions button[name="update_cart"]{display:none !important;}

/* Cupon */
.woocommerce-cart .coupon.e-cart-section{margin-top:18px !important;padding:16px 18px !important;}
.woocommerce-cart .coupon .coupon-col{display:flex !important;gap:10px;align-items:center;margin:0 !important;padding:0 !important;flex-wrap:nowrap;}
.woocommerce-cart .coupon .coupon-col-start{flex:1 1 auto;min-width:0;margin:0 !important;}
.woocommerce-cart .coupon .coupon-col-end{flex:0 0 auto;margin:0 !important;}
.woocommerce-cart .coupon input#coupon_code{width:100% !important;height:48px;border:1.5px solid var(--isn-line) !important;border-radius:100px !important;padding:0 18px 0 44px !important;font-family:var(--isn-font);font-size:.95rem;color:var(--isn-navy);
  background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238a90a2' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.6 13.4 13.4 20.6a2 2 0 0 1-2.8 0L3 13V3h10l7.6 7.6a2 2 0 0 1 0 2.8z'/%3E%3Ccircle cx='7.5' cy='7.5' r='1.3'/%3E%3C/svg%3E") 16px center/18px no-repeat !important;margin:0 !important;}
.woocommerce-cart .coupon input#coupon_code:focus{border-color:var(--isn-primary) !important;box-shadow:0 0 0 3px rgba(54,169,225,.15);outline:none;}
.woocommerce-cart .coupon .e-apply-coupon,.woocommerce-cart .coupon button[name="apply_coupon"]{height:48px;padding:0 22px !important;border-radius:100px !important;background:var(--isn-navy) !important;color:#fff !important;border:none !important;font-weight:700 !important;font-family:var(--isn-font) !important;white-space:nowrap;cursor:pointer;transition:background .2s var(--isn-ease);}
.woocommerce-cart .coupon .e-apply-coupon:hover{background:var(--isn-primary) !important;}

/* Resumen (totales) */
.woocommerce-cart .e-cart__column-end .e-cart-section{padding:24px !important;}
.woocommerce-cart .e-sticky-right-column{position:sticky;top:30px;}
.admin-bar.woocommerce-cart .e-sticky-right-column{top:62px;}
.woocommerce-cart .cart_totals{width:100% !important;float:none !important;padding:0 !important;border:none !important;box-shadow:none !important;background:none !important;margin:0 !important;}
.woocommerce-cart .cart_totals h2{font-family:var(--isn-font) !important;font-size:1.2rem !important;font-weight:700 !important;color:var(--isn-navy) !important;margin:0 0 10px !important;padding:0 !important;text-transform:none !important;}
.woocommerce-cart .cart_totals table.shop_table{border:none !important;margin:0 0 18px !important;background:none !important;border-radius:0 !important;width:100%;}
.woocommerce-cart .cart_totals table.shop_table tbody{display:block;}
.woocommerce-cart .cart_totals table.shop_table tr{display:flex !important;justify-content:space-between;align-items:flex-start;gap:14px;padding:12px 0 !important;border-top:1px solid var(--isn-line);}
.woocommerce-cart .cart_totals table.shop_table tr:first-child{border-top:none;}
.woocommerce-cart .cart_totals table.shop_table th,.woocommerce-cart .cart_totals table.shop_table td{display:block !important;border:none !important;padding:0 !important;background:none !important;color:var(--isn-navy) !important;font-size:.95rem;width:auto !important;}
.woocommerce-cart .cart_totals table.shop_table td::before{display:none !important;}
.woocommerce-cart .cart_totals table.shop_table th{font-weight:600;color:var(--isn-muted) !important;flex:0 0 auto;}
.woocommerce-cart .cart_totals table.shop_table td{text-align:right !important;font-weight:600;}
.woocommerce-cart .cart_totals .woocommerce-shipping-methods{margin:0 !important;padding:0 !important;list-style:none;}
.woocommerce-cart .cart_totals .woocommerce-shipping-methods li{margin:0 !important;}
.woocommerce-cart .cart_totals .woocommerce-shipping-destination{margin:4px 0 0 !important;font-size:.82rem;color:var(--isn-muted);font-weight:500;}
.woocommerce-cart .cart_totals .shipping-calculator-button{font-size:.82rem;color:var(--isn-primary) !important;font-weight:600;text-decoration:none !important;}
.woocommerce-cart .cart_totals .shipping-calculator-button::after{display:none;}
.woocommerce-cart .cart_totals .shipping-calculator-form{text-align:left;margin-top:10px;}
.woocommerce-cart .cart_totals .shipping-calculator-form .input-text,.woocommerce-cart .cart_totals .shipping-calculator-form select{border:1.5px solid var(--isn-line) !important;border-radius:var(--isn-radius-sm) !important;height:44px;padding:0 12px !important;width:100%;font-family:var(--isn-font);}
.woocommerce-cart .cart_totals .shipping-calculator-form button{border-radius:100px !important;background:var(--isn-navy) !important;color:#fff !important;border:none !important;padding:10px 20px !important;font-weight:700 !important;}
.woocommerce-cart .cart_totals tr.order-total{align-items:baseline !important;padding-top:16px !important;}
.woocommerce-cart .cart_totals tr.order-total th{color:var(--isn-navy) !important;font-size:1.05rem;font-weight:700;}
.woocommerce-cart .cart_totals tr.order-total td .amount{font-size:1.6rem;font-weight:700;color:var(--isn-navy) !important;letter-spacing:-.01em;}
.woocommerce-cart .cart_totals tr.order-total td small,.woocommerce-cart .cart_totals tr.order-total .includes_tax{display:block;font-size:.76rem;color:var(--isn-muted);font-weight:500;margin-top:2px;}
.woocommerce-cart .cart_totals tr.order-total .includes_tax .amount{font-size:.76rem !important;color:var(--isn-muted) !important;font-weight:600;}
.woocommerce-cart .wc-proceed-to-checkout{padding:0 !important;margin:0 !important;}
.woocommerce-cart #wc-stripe-express-checkout-element{margin-top:12px !important;}

/* Carrito vacio */
.woocommerce-cart .wc-empty-cart-message,.woocommerce-cart .cart-empty{text-align:center;}
.woocommerce-cart .cart-empty.woocommerce-info{background:none !important;border:none !important;box-shadow:none !important;padding:70px 20px 10px !important;font-size:1.25rem !important;font-weight:700;color:var(--isn-navy) !important;font-family:var(--isn-font);}
.woocommerce-cart .cart-empty.woocommerce-info::before{position:static !important;display:block;content:"" !important;width:86px;height:86px;margin:0 auto 20px;border-radius:50%;
  background:var(--isn-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2336A9E1' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='20' r='1.3'/%3E%3Ccircle cx='18' cy='20' r='1.3'/%3E%3Cpath d='M2 3h3l2.6 12.4a2 2 0 0 0 2 1.6h8.3a2 2 0 0 0 2-1.5L22 8H6'/%3E%3C/svg%3E") center/40px no-repeat;}
.woocommerce-cart .return-to-shop{text-align:center;margin:10px 0 60px;}
.woocommerce-cart .return-to-shop a.button{display:inline-flex !important;width:auto;padding:15px 30px !important;border-radius:100px !important;background:var(--isn-primary) !important;color:#fff !important;font-weight:700 !important;font-family:var(--isn-font);box-shadow:0 10px 24px rgba(54,169,225,.32);}

/* Barra fija de pago (solo movil, la crea el JS) */
.isn-cart-bar{display:none;}
@media (max-width:767px){
  .isn-cart-bar{
    display:flex;align-items:center;gap:14px;position:fixed;left:0;right:0;bottom:0;z-index:9990;
    padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:rgba(255,255,255,.96);backdrop-filter:blur(10px);
    border-top:1px solid var(--isn-line);box-shadow:0 -10px 30px rgba(20,14,104,.1);font-family:var(--isn-font);
    transform:translateY(0);transition:transform .35s var(--isn-ease);
  }
  .isn-cart-bar.is-hidden{transform:translateY(110%);}
  .isn-cart-bar__total{display:flex;flex-direction:column;line-height:1.15;flex:0 0 auto;}
  .isn-cart-bar__total small{color:var(--isn-muted);font-size:.74rem;font-weight:600;}
  .isn-cart-bar__total strong{color:var(--isn-navy);font-size:1.25rem;font-weight:700;}
  .isn-cart-bar .isn-btn{flex:1 1 auto;padding:15px 18px !important;font-size:1rem !important;}
  body.isn-bar-on .cky-btn-revisit-wrapper{bottom:92px !important;transition:bottom .3s;}
}

/* ---- Carrito responsive ---- */
@media (max-width:1024px){
  .woocommerce-cart .e-cart__container{grid-template-columns:minmax(0,1fr) 330px !important;gap:20px !important;}
  .woocommerce-cart .e-shop-table tr.cart_item{grid-template-columns:76px minmax(0,1fr) auto 84px 34px;column-gap:14px;}
  .woocommerce-cart .e-shop-table td.product-thumbnail img{width:76px !important;height:76px !important;}
}
@media (max-width:880px){
  .woocommerce-cart .e-cart__container{grid-template-columns:1fr !important;}
  .woocommerce-cart .e-sticky-right-column{position:static;}
}
@media (max-width:767px){
  .woocommerce-cart .elementor-widget-woocommerce-cart .woocommerce{padding-bottom:10px;}
  .woocommerce-cart .e-cart-section{padding:4px 14px !important;border-radius:16px !important;}
  .woocommerce-cart .e-shop-table tr.cart_item{
    grid-template-columns:72px minmax(0,1fr) auto;
    grid-template-areas:"thumb name rm" "thumb price price" "qty qty sub";
    column-gap:12px;row-gap:4px;padding:14px 0 !important;
  }
  .woocommerce-cart .e-shop-table td.product-thumbnail img{width:72px !important;height:72px !important;border-radius:14px;padding:6px;}
  .woocommerce-cart .e-shop-table td.product-name{align-self:start;padding-top:2px !important;}
  .woocommerce-cart .e-shop-table td.product-name a{font-size:.95rem;}
  .woocommerce-cart .e-shop-table td.product-remove{align-self:start;}
  .woocommerce-cart .e-shop-table td.product-quantity{margin-top:8px !important;}
  .woocommerce-cart .e-shop-table td.product-subtotal{margin-top:8px !important;align-self:center;font-size:1.05rem;}
  .woocommerce-cart .e-shop-table tr.cart_item:has(.variation-Tipo){margin:6px -8px !important;padding:12px 8px !important;
    grid-template-areas:"thumb name rm" "thumb price price" "thumb qty sub";}
  .woocommerce-cart .e-shop-table tr.cart_item:has(.variation-Tipo) td.product-quantity,
  .woocommerce-cart .e-shop-table tr.cart_item:has(.variation-Tipo) td.product-subtotal{margin-top:0 !important;}
  .woocommerce-cart .coupon.e-cart-section{padding:12px !important;margin-top:14px !important;}
  .woocommerce-cart .coupon .e-apply-coupon{padding:0 16px !important;font-size:.88rem !important;}
  .woocommerce-cart .e-cart__column-end .e-cart-section{padding:18px 16px !important;}
  .woocommerce-cart .cart_totals tr.order-total td .amount{font-size:1.45rem;}
}

/* ==========================================================================
   CHECKOUT (Royal Addons Checkout)
   ========================================================================== */
/* Cabecera: se oculta la banda "Finaliza tu compra" de Elementor (la sustituye .isn-cart-head) */
.woocommerce-checkout .elementor-element-4a80253{display:none !important;}
.woocommerce-checkout .elementor-element-57637f0{margin-top:0 !important;}
/* En checkout no se muestra el icono del mini-carrito (menos distracciones) */
.woocommerce-checkout .elementor-widget-woocommerce-menu-cart{visibility:hidden;}

.woocommerce-checkout .elementor-element-3bb9ffd .woocommerce{display:flex;flex-direction:column;font-family:var(--isn-font);color:var(--isn-navy);}
.woocommerce-checkout .elementor-element-3bb9ffd .woocommerce-notices-wrapper:empty,
.woocommerce-checkout #fgf-checkout-gift-notices-wrapper:empty{display:none;}
.woocommerce-checkout form.checkout{max-width:1180px !important;width:100%;margin:0 auto;}
.woocommerce-checkout .woocommerce-form-coupon-toggle,.woocommerce-checkout form.checkout_coupon{max-width:1180px;width:100%;margin-left:auto;margin-right:auto;}

/* Cupon (toggle) */
.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info{
  background:#fff !important;border:1.5px dashed var(--isn-line) !important;border-radius:var(--isn-radius-sm) !important;box-shadow:none !important;
  color:var(--isn-muted) !important;font-size:.92rem;font-weight:500;padding:14px 18px 14px 48px !important;margin:0 0 16px !important;position:relative;
}
.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before{content:"" !important;position:absolute !important;left:18px !important;top:50% !important;margin:0 !important;transform:translateY(-50%);width:18px;height:18px;background:var(--isn-primary);color:transparent;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.6 13.4 13.4 20.6a2 2 0 0 1-2.8 0L3 13V3h10l7.6 7.6a2 2 0 0 1 0 2.8z'/%3E%3Ccircle cx='7.5' cy='7.5' r='1.3'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.6 13.4 13.4 20.6a2 2 0 0 1-2.8 0L3 13V3h10l7.6 7.6a2 2 0 0 1 0 2.8z'/%3E%3Ccircle cx='7.5' cy='7.5' r='1.3'/%3E%3C/svg%3E") center/contain no-repeat;}
.woocommerce-checkout .woocommerce-form-coupon-toggle a.showcoupon{color:var(--isn-primary) !important;font-weight:700;text-decoration:none !important;}
.woocommerce-checkout form.checkout_coupon{display:flex;flex-wrap:wrap;gap:10px;align-items:center;background:#fff;border:1px solid var(--isn-line) !important;border-radius:var(--isn-radius-sm) !important;padding:16px !important;margin:0 0 16px !important;}
.woocommerce-checkout form.checkout_coupon > p:first-child{flex:1 0 100%;margin:0 !important;color:var(--isn-muted);font-size:.88rem;}
.woocommerce-checkout form.checkout_coupon .form-row{float:none !important;width:auto !important;margin:0 !important;padding:0 !important;}
.woocommerce-checkout form.checkout_coupon .form-row-first{flex:1 1 200px;}
.woocommerce-checkout form.checkout_coupon .input-text{height:48px !important;border-radius:100px !important;}
.woocommerce-checkout form.checkout_coupon .button{height:48px;border-radius:100px !important;background:var(--isn-navy) !important;color:#fff !important;border:none !important;padding:0 22px !important;font-weight:700 !important;font-family:var(--isn-font) !important;}
.woocommerce-checkout form.checkout_coupon .clear{display:none;}

/* Pago expres (Apple / Google Pay) */
.woocommerce-checkout form.checkout #wc-stripe-express-checkout-element{background:#fff;border:1px solid var(--isn-line);border-radius:var(--isn-radius);padding:18px;margin:0 0 4px !important;box-shadow:var(--isn-shadow);}
.woocommerce-checkout form.checkout #wc-stripe-express-checkout-element:empty,
.woocommerce-checkout form.checkout #wc-stripe-express-checkout-element[style*="display: none"]{display:none;}
.woocommerce-checkout #wc-stripe-express-checkout-button-separator{display:flex;align-items:center;gap:14px;text-align:center;color:var(--isn-muted) !important;font-size:.78rem !important;font-weight:700;text-transform:uppercase;letter-spacing:.12em;margin:16px 0 !important;}
.woocommerce-checkout #wc-stripe-express-checkout-button-separator::before,.woocommerce-checkout #wc-stripe-express-checkout-button-separator::after{content:"";flex:1;height:1px;background:var(--isn-line);}

/* Estructura 2 columnas: datos | resumen */
.woocommerce-checkout .wpr-customer-details-wrapper{display:grid !important;grid-template-columns:minmax(0,1fr) 420px;gap:28px;align-items:start;width:100% !important;}
.woocommerce-checkout #customer_details{display:flex !important;flex-direction:column;gap:18px;width:auto !important;float:none !important;margin:0 !important;}
.woocommerce-checkout #customer_details .col-1,.woocommerce-checkout #customer_details .col-2{width:100% !important;max-width:none !important;float:none !important;margin:0 !important;padding:0 !important;border:none !important;background:none !important;box-shadow:none !important;}
.woocommerce-checkout #customer_details .col-2{display:flex;flex-direction:column;gap:18px;}
.woocommerce-checkout #customer_details .col-2:not(:has(.woocommerce-shipping-fields *)):not(:has(.woocommerce-additional-fields *)){display:none;}
.woocommerce-checkout .woocommerce-billing-fields,
.woocommerce-checkout .woocommerce-shipping-fields,
.woocommerce-checkout .woocommerce-additional-fields{background:#fff !important;border:1px solid var(--isn-line) !important;border-radius:var(--isn-radius) !important;box-shadow:var(--isn-shadow);padding:26px !important;margin:0 !important;}
.woocommerce-checkout .woocommerce-shipping-fields:not(:has(*)){display:none;}
.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout .woocommerce-additional-fields h3,
.woocommerce-checkout #order_review_heading{display:flex;align-items:center;gap:12px;font-family:var(--isn-font) !important;font-size:1.2rem !important;font-weight:700 !important;color:var(--isn-navy) !important;margin:0 0 20px !important;padding:0 !important;border:none !important;text-transform:none !important;letter-spacing:0;}
.woocommerce-checkout .woocommerce-billing-fields h3::before,
.woocommerce-checkout #order_review_heading::before{content:"";flex:0 0 auto;width:36px;height:36px;border-radius:11px;background:var(--isn-soft) center/18px no-repeat;}
.woocommerce-checkout .woocommerce-billing-fields h3::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2336A9E1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21c0-4 4-6 8-6s8 2 8 6'/%3E%3C/svg%3E");}
.woocommerce-checkout #order_review_heading::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2336A9E1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 2 3 6v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6l-3-4zM3 6h18M16 10a4 4 0 0 1-8 0'/%3E%3C/svg%3E");}
.woocommerce-checkout .woocommerce-additional-fields h3{font-size:1.05rem !important;margin-bottom:12px !important;}

/* Envio a otra direccion (checkbox) */
.woocommerce-checkout #ship-to-different-address{margin:0 !important;padding:0 !important;font-size:1rem !important;border:none !important;}
.woocommerce-checkout #ship-to-different-address label{display:flex !important;align-items:center;gap:12px;cursor:pointer;font-weight:700;color:var(--isn-navy);font-size:1rem;margin:0 !important;}
.woocommerce-checkout .shipping_address{margin-top:20px;}

/* Checkbox / radio de marca */
.woocommerce-checkout input[type="checkbox"].input-checkbox,
.woocommerce-checkout #ship-to-different-address-checkbox,
.woocommerce-checkout #terms,
.woocommerce-checkout .woocommerce-form__input-checkbox{
  -webkit-appearance:none;appearance:none;width:22px !important;height:22px !important;margin:0 !important;flex:0 0 auto;border:1.8px solid #c9d3df;border-radius:7px;background:#fff center/14px no-repeat;cursor:pointer;
  transition:background-color .2s var(--isn-ease),border-color .2s var(--isn-ease);position:static !important;vertical-align:middle;
}
.woocommerce-checkout input[type="checkbox"].input-checkbox:checked,
.woocommerce-checkout #ship-to-different-address-checkbox:checked,
.woocommerce-checkout .woocommerce-form__input-checkbox:checked,
.woocommerce-checkout #terms:checked{background-color:var(--isn-primary);border-color:var(--isn-primary);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E");}

/* Campos */
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper{display:grid;grid-template-columns:1fr 1fr;column-gap:16px;}
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row{grid-column:1 / -1;width:auto !important;float:none !important;margin:0 0 16px !important;padding:0 !important;}
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-first,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row-first{grid-column:1;}
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-last,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row-last{grid-column:2;}
.woocommerce-checkout #billing_address_2_field,.woocommerce-checkout #shipping_address_2_field{margin-top:-6px !important;}
.woocommerce-checkout .form-row label{font-weight:600 !important;color:var(--isn-navy) !important;font-size:.88rem !important;margin:0 0 7px !important;line-height:1.3 !important;}
.woocommerce-checkout .form-row label .optional{color:var(--isn-muted);font-weight:500;}
.woocommerce-checkout .form-row .required{color:var(--isn-primary) !important;text-decoration:none;}
.woocommerce-checkout .form-row .input-text,
.woocommerce-checkout .form-row select,
.woocommerce-checkout .form-row .select2-container .select2-selection--single{
  width:100% !important;height:50px !important;box-sizing:border-box;border:1.5px solid var(--isn-line) !important;border-radius:var(--isn-radius-sm) !important;
  padding:0 15px !important;background:#fbfcfe !important;font-family:var(--isn-font) !important;font-size:1rem !important;color:var(--isn-navy) !important;
  box-shadow:none !important;transition:border-color .2s var(--isn-ease),box-shadow .2s var(--isn-ease),background-color .2s var(--isn-ease);line-height:47px !important;
}
.woocommerce-checkout .form-row textarea.input-text{height:auto !important;min-height:100px;line-height:1.5 !important;padding:13px 15px !important;resize:vertical;}
.woocommerce-checkout .form-row .input-text::placeholder{color:#a9afbf;}
.woocommerce-checkout .form-row .input-text:hover,.woocommerce-checkout .form-row .select2-selection--single:hover{border-color:#d3dce7 !important;}
.woocommerce-checkout .form-row .input-text:focus,
.woocommerce-checkout .form-row select:focus,
.woocommerce-checkout .select2-container--open .select2-selection--single,
.woocommerce-checkout .select2-container--focus .select2-selection--single{border-color:var(--isn-primary) !important;background:#fff !important;box-shadow:0 0 0 4px rgba(54,169,225,.14) !important;outline:none !important;}
.woocommerce-checkout .form-row .select2-container{border:none !important;padding:0 !important;height:auto !important;background:none !important;box-shadow:none !important;min-height:0 !important;}
.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered{line-height:47px !important;padding:0 !important;color:var(--isn-navy) !important;}
.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__arrow{height:47px !important;right:10px !important;top:0 !important;}
.woocommerce-checkout .form-row.woocommerce-invalid .input-text,.woocommerce-checkout .form-row.woocommerce-invalid .select2-selection{border-color:var(--isn-danger) !important;background:#fff8f8 !important;}
.woocommerce-checkout .form-row.woocommerce-validated .input-text{border-color:#bfe3cc !important;}
.woocommerce-checkout .form-row .checkout-inline-error-message{color:var(--isn-danger);font-size:.8rem;margin-top:5px;}
.select2-dropdown{border:1.5px solid var(--isn-line) !important;border-radius:var(--isn-radius-sm) !important;overflow:hidden;box-shadow:var(--isn-shadow-h);font-family:var(--isn-font);}
.select2-results__option--highlighted[aria-selected],.select2-results__option--highlighted[data-selected]{background:var(--isn-primary) !important;}
.select2-search--dropdown .select2-search__field{border:1.5px solid var(--isn-line) !important;border-radius:10px;padding:8px 10px !important;}

/* Columna derecha: resumen + pago */
.woocommerce-checkout .wpr-checkout-order-review-table{
  width:auto !important;float:none !important;margin:0 !important;position:sticky;top:30px;
  background:#fff !important;border:1px solid var(--isn-line) !important;border-radius:var(--isn-radius) !important;box-shadow:var(--isn-shadow-h);overflow:hidden;padding:0 !important;
}
.admin-bar.woocommerce-checkout .wpr-checkout-order-review-table{top:62px;}
.woocommerce-checkout .wpr-checkout-order-review-table-inner{padding:26px 26px 6px !important;border:none !important;background:none !important;margin:0 !important;}
.woocommerce-checkout #order_review{background:none !important;border:none !important;box-shadow:none !important;padding:0 !important;margin:0 !important;}
.woocommerce-checkout table.woocommerce-checkout-review-order-table{border:none !important;margin:0 !important;background:none !important;border-radius:0 !important;width:100%;border-collapse:collapse;}
.woocommerce-checkout .woocommerce-checkout-review-order-table thead{display:none;}
.woocommerce-checkout .woocommerce-checkout-review-order-table tbody tr.cart_item td{border:none !important;border-bottom:1px solid var(--isn-line) !important;padding:12px 0 !important;vertical-align:top;background:none !important;color:var(--isn-navy) !important;}
.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name{font-weight:600;font-size:.93rem;line-height:1.35;padding-right:14px !important;}
.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name .product-quantity{display:inline-block;margin-left:4px;padding:1px 8px;border-radius:100px;background:var(--isn-soft);color:var(--isn-primary);font-size:.78rem;font-weight:700;}
.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-total{text-align:right !important;font-weight:700;white-space:nowrap;font-size:.95rem;}
.woocommerce-checkout .woocommerce-checkout-review-order-table tr.cart_item:has(.variation-Tipo) td.product-total{color:var(--isn-ok) !important;}
.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation{display:flex !important;}
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th,
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td{border:none !important;padding:9px 0 !important;background:none !important;color:var(--isn-muted) !important;font-weight:600;font-size:.93rem;vertical-align:top;}
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td{text-align:right !important;color:var(--isn-navy) !important;}
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr:first-child th,
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr:first-child td{padding-top:16px !important;}
.woocommerce-checkout .woocommerce-checkout-review-order-table .woocommerce-shipping-methods{list-style:none;margin:0 !important;padding:0 !important;}
.woocommerce-checkout .woocommerce-checkout-review-order-table .woocommerce-shipping-methods li{margin:0 !important;}
.woocommerce-checkout .woocommerce-checkout-review-order-table .woocommerce-shipping-methods label{color:var(--isn-navy);font-weight:600;}
.woocommerce-checkout .woocommerce-checkout-review-order-table tr.order-total th,
.woocommerce-checkout .woocommerce-checkout-review-order-table tr.order-total td{border-top:1.5px solid var(--isn-line) !important;padding-top:16px !important;padding-bottom:18px !important;color:var(--isn-navy) !important;font-size:1.05rem;font-weight:700;vertical-align:baseline;}
.woocommerce-checkout .woocommerce-checkout-review-order-table tr.order-total td strong .amount,
.woocommerce-checkout .woocommerce-checkout-review-order-table tr.order-total td > strong{font-size:1.6rem !important;font-weight:700;color:var(--isn-navy) !important;letter-spacing:-.01em;}
.woocommerce-checkout .woocommerce-checkout-review-order-table tr.order-total .includes_tax{display:block;font-size:.76rem;color:var(--isn-muted);font-weight:500;margin-top:2px;}
.woocommerce-checkout .woocommerce-checkout-review-order-table tr.order-total .includes_tax .amount{font-size:.76rem !important;color:var(--isn-muted) !important;}

/* Pago */
.woocommerce-checkout .wpr-checkout-order-review{padding:0 !important;margin:0 !important;background:none !important;border:none !important;}
.woocommerce-checkout #payment{background:var(--isn-soft) !important;border:none !important;border-top:1px solid var(--isn-line) !important;border-radius:0 !important;margin:0 !important;padding:22px 26px 26px !important;}
.woocommerce-checkout #payment ul.payment_methods{padding:0 !important;margin:0 0 16px !important;border:none !important;list-style:none;}
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method{background:#fff;border:1.5px solid var(--isn-line);border-radius:var(--isn-radius-sm);padding:14px 16px !important;margin:0 0 10px !important;transition:border-color .2s var(--isn-ease);}
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method:has(> input:checked){border-color:var(--isn-primary);box-shadow:0 0 0 3px rgba(54,169,225,.12);}
.woocommerce-checkout #payment ul.payment_methods li > input[type="radio"]{accent-color:var(--isn-primary);width:18px;height:18px;vertical-align:middle;margin:0 8px 0 0 !important;}
.woocommerce-checkout #payment ul.payment_methods li > label{display:inline-flex !important;align-items:center;justify-content:space-between;gap:10px;width:calc(100% - 32px);font-weight:700;color:var(--isn-navy) !important;font-size:.95rem;margin:0 !important;cursor:pointer;vertical-align:middle;}
.woocommerce-checkout #payment ul.payment_methods li img.stripe-icon,.woocommerce-checkout #payment ul.payment_methods li > label img{max-height:22px !important;width:auto;margin:0 !important;float:none !important;}
.woocommerce-checkout #payment div.payment_box{background:transparent !important;padding:14px 0 2px !important;margin:0 !important;border-radius:0 !important;color:var(--isn-navy) !important;font-size:.9rem;}
.woocommerce-checkout #payment div.payment_box::before{display:none !important;}
.woocommerce-checkout #payment .wc-stripe-upe-element{background:transparent;border:none;padding:0;}
.woocommerce-checkout #payment fieldset,.woocommerce-checkout #payment .wc-upe-form{border:none !important;padding:0 !important;margin:0 !important;min-width:0;}
.woocommerce-checkout #payment .place-order{padding:0 !important;margin:0 !important;}
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{margin:0 0 16px !important;font-size:.82rem;color:var(--isn-muted);line-height:1.5;}
.woocommerce-checkout .woocommerce-privacy-policy-text p{margin:0 0 8px;font-size:.8rem;color:var(--isn-muted);}
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper a{color:var(--isn-primary) !important;font-weight:600;}
.woocommerce-checkout .woocommerce-terms-and-conditions-checkbox-text{color:var(--isn-navy);}
.woocommerce-checkout .validate-required .woocommerce-form__label-for-checkbox{display:flex !important;align-items:flex-start;gap:10px;}

/* ---- Checkout responsive ---- */
@media (max-width:1024px){
  .woocommerce-checkout .wpr-customer-details-wrapper{grid-template-columns:minmax(0,1fr) 360px;gap:20px;}
}
@media (max-width:880px){
  .woocommerce-checkout .wpr-customer-details-wrapper{grid-template-columns:1fr;}
  .woocommerce-checkout .wpr-checkout-order-review-table{position:static;}
}
@media (max-width:767px){
  .woocommerce-checkout .elementor-element-57637f0 > .elementor-container{padding:0 !important;}
  .woocommerce-checkout .woocommerce-billing-fields,
  .woocommerce-checkout .woocommerce-shipping-fields,
  .woocommerce-checkout .woocommerce-additional-fields{padding:20px 16px !important;border-radius:16px !important;}
  .woocommerce-checkout .wpr-checkout-order-review-table{border-radius:16px !important;}
  .woocommerce-checkout .wpr-checkout-order-review-table-inner{padding:20px 16px 4px !important;}
  .woocommerce-checkout #payment{padding:18px 16px 20px !important;}
  .woocommerce-checkout .woocommerce-billing-fields h3,.woocommerce-checkout #order_review_heading{font-size:1.1rem !important;margin-bottom:16px !important;}
  .woocommerce-checkout .form-row .input-text,.woocommerce-checkout .form-row select,.woocommerce-checkout .form-row .select2-container .select2-selection--single{font-size:16px !important;}
}
@media (max-width:480px){
  .woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  .woocommerce-checkout .woocommerce-shipping-fields__field-wrapper{grid-template-columns:1fr;}
  .woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-last,
  .woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row-last{grid-column:1;}
}

/* ==========================================================================
   SELECTOR DE REGALOS (pop-up Lightcase del plugin Free Gifts)
   ========================================================================== */
body:has(#lightcase-case #fgf_gift_products_modal) #lightcase-overlay{background:rgba(20,14,104,.42) !important;backdrop-filter:blur(3px);opacity:1 !important;}
#lightcase-case:has(#fgf_gift_products_modal){
  position:fixed !important;top:50% !important;left:50% !important;margin:0 !important;transform:translate(-50%,-50%);
  width:min(820px,calc(100vw - 40px)) !important;max-width:none !important;background:#fff;border-radius:24px;box-shadow:0 30px 80px rgba(20,14,104,.35);overflow:hidden;
}
#lightcase-case:has(#fgf_gift_products_modal) #lightcase-content{box-shadow:none !important;background:none !important;}
#lightcase-case:has(#fgf_gift_products_modal) .lightcase-contentInner{width:auto !important;height:auto !important;max-height:min(86vh,760px) !important;overflow-y:auto !important;padding:0 !important;-webkit-overflow-scrolling:touch;}
#lightcase-case:has(#fgf_gift_products_modal) .lightcase-inlineWrap{width:auto !important;height:auto !important;max-width:none !important;max-height:none !important;padding:0 !important;background:none !important;overflow:visible !important;}
body:has(#lightcase-case #fgf_gift_products_modal) a.lightcase-icon-close{display:none !important;}

.fgf-popup-gift-products-wrapper,#lightcase-case .fgf-popup-gift-products-wrapper{font-family:var(--isn-font);color:var(--isn-navy);float:none !important;max-height:none !important;overflow:visible !important;padding:0 !important;border-radius:0 !important;background:none !important;width:100% !important;}
.fgf-popup-gift-products-wrapper .fgf_gift_products_wrapper{margin:0 !important;padding:30px 30px 26px;}
.fgf-popup-gift-products-wrapper .fgf_gift_products_wrapper > h3{font-family:var(--isn-font) !important;font-size:1.55rem !important;font-weight:700 !important;color:var(--isn-navy) !important;margin:0 50px 4px 0 !important;padding:0 !important;line-height:1.2;display:flex;align-items:center;gap:12px;}
.fgf-popup-gift-products-wrapper .fgf_gift_products_wrapper > h3::before{content:"";flex:0 0 auto;width:40px;height:40px;border-radius:12px;background-position:center;background-repeat:no-repeat;background-size:22px,100%;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='8' width='18' height='5' rx='1'/%3E%3Cpath d='M5 13v8h14v-8M12 8v13M12 8c-2-4-6-4-6-1.5S10 8 12 8zm0 0c2-4 6-4 6-1.5S14 8 12 8z'/%3E%3C/svg%3E"),linear-gradient(135deg,var(--isn-gift),#ff6a3d);box-shadow:0 8px 18px rgba(255,106,61,.3);}
.fgf-popup-gift-products-wrapper .fgf_gift_products_wrapper > h3::after{content:"Gratis con tu compra \00b7  elige el que m\00e1s te guste";position:absolute;left:30px;top:78px;font-size:.9rem;font-weight:500;color:var(--isn-muted);}
.fgf-popup-gift-products-wrapper .fgf_gift_products_wrapper{position:relative;}
.fgf-popup-gift-products-wrapper .fgf-gift-products-content{margin-top:34px;}
/* tabla -> rejilla de tarjetas */
.fgf-popup-gift-products-wrapper table.fgf_gift_products_table{display:block !important;border:none !important;margin:0 !important;background:none !important;width:100% !important;}
.fgf-popup-gift-products-wrapper table.fgf_gift_products_table thead{display:none !important;}
.fgf-popup-gift-products-wrapper table.fgf_gift_products_table tbody{display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
.fgf-popup-gift-products-wrapper tr.fgf-gift-product-item{
  display:flex !important;flex-direction:column;background:#fff;border:1.5px solid var(--isn-line);border-radius:18px;overflow:hidden;position:relative;margin:0 !important;padding:0 !important;
  transition:transform .3s var(--isn-ease),box-shadow .3s var(--isn-ease),border-color .3s var(--isn-ease);
}
.fgf-popup-gift-products-wrapper tr.fgf-gift-product-item::before{content:"Gratis";position:absolute;top:10px;left:10px;z-index:1;background:var(--isn-ok);color:#fff;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:4px 10px;border-radius:100px;}
@media (hover:hover){.fgf-popup-gift-products-wrapper tr.fgf-gift-product-item:hover{transform:translateY(-4px);border-color:var(--isn-accent);box-shadow:var(--isn-shadow-h);}}
.fgf-popup-gift-products-wrapper tr.fgf-gift-product-item td{display:block !important;border:none !important;padding:0 !important;text-align:left !important;background:none !important;width:auto !important;}
.fgf-popup-gift-products-wrapper tr.fgf-gift-product-item td::before{display:none !important;content:none !important;}
.fgf-popup-gift-products-wrapper tr.fgf-gift-product-item td:nth-child(2){order:-1;}
.fgf-popup-gift-products-wrapper .fgf-product-image{display:block;}
.fgf-popup-gift-products-wrapper .fgf-product-image img{display:block;width:100% !important;height:auto !important;aspect-ratio:1/1;object-fit:contain;background:var(--isn-soft);padding:14px;margin:0 !important;border-radius:0 !important;max-width:none !important;}
.fgf-popup-gift-products-wrapper tr.fgf-gift-product-item td:first-child{padding:12px 12px 4px !important;font-weight:700;font-size:.9rem;line-height:1.3;color:var(--isn-navy);min-height:3.2em;}
.fgf-popup-gift-products-wrapper tr.fgf-gift-product-item td:first-child a{color:var(--isn-navy) !important;text-decoration:none !important;}
.fgf-popup-gift-products-wrapper tr.fgf-gift-product-item td:last-child{margin-top:auto !important;padding:8px 12px 12px !important;}
.fgf-popup-gift-products-wrapper .fgf-gift-product-add-to-cart-actions{display:flex;flex-direction:column;gap:8px;}
.fgf-popup-gift-products-wrapper .fgf-gift-product-add-to-cart-actions a.button,
.fgf-popup-gift-products-wrapper .fgf-gift-product-add-to-cart-actions button{
  display:flex !important;align-items:center;justify-content:center;width:100%;margin:0 !important;padding:11px 12px !important;border-radius:100px !important;
  background:var(--isn-primary) !important;color:#fff !important;border:none !important;font-family:var(--isn-font) !important;font-weight:700 !important;font-size:.86rem !important;line-height:1.1;
  text-decoration:none !important;box-shadow:0 6px 14px rgba(54,169,225,.28);transition:background .2s var(--isn-ease),transform .15s var(--isn-ease);
}
.fgf-popup-gift-products-wrapper .fgf-gift-product-add-to-cart-actions a.button:hover{background:var(--isn-navy) !important;}
.fgf-popup-gift-products-wrapper .fgf-gift-product-add-to-cart-actions a.button:active{transform:scale(.97);}
.fgf-popup-gift-products-wrapper .fgf-gift-product-add-to-cart-actions a.button.disabled,
.fgf-popup-gift-products-wrapper .fgf-gift-product-add-to-cart-actions a.button[disabled],
.fgf-popup-gift-products-wrapper .fgf_disabled a.button{background:var(--isn-line) !important;color:var(--isn-muted) !important;box-shadow:none;pointer-events:none;}
.fgf-popup-gift-products-wrapper .fgf-gift-product-qty{width:100% !important;height:40px;border-radius:100px !important;}
.fgf-popup-gift-products-wrapper select{width:100%;height:40px;border:1.5px solid var(--isn-line);border-radius:100px;padding:0 12px;font-family:var(--isn-font);color:var(--isn-navy);}
/* paginacion */
.fgf-popup-gift-products-wrapper table.fgf_gift_products_table tfoot,
.fgf-popup-gift-products-wrapper table.fgf_gift_products_table tfoot tr,
.fgf-popup-gift-products-wrapper table.fgf_gift_products_table tfoot td{display:block !important;border:none !important;background:none !important;padding:0 !important;}
.fgf-popup-gift-products-wrapper nav.pagination{display:flex;justify-content:center;margin:18px 0 0 !important;padding:0 !important;border:none !important;}
.fgf-popup-gift-products-wrapper nav.pagination ul{display:flex !important;gap:6px;margin:0 !important;padding:0 !important;border:none !important;list-style:none;}
.fgf-popup-gift-products-wrapper nav.pagination li{border:none !important;margin:0 !important;padding:0 !important;float:none !important;overflow:visible !important;}
.fgf-popup-gift-products-wrapper nav.pagination li:has(.fgf_first_pagination),.fgf-popup-gift-products-wrapper nav.pagination li:has(.fgf_last_pagination){display:none !important;}
.fgf-popup-gift-products-wrapper .fgf_pagination{min-width:36px;height:36px;padding:0 8px;border-radius:100px;display:inline-flex;align-items:center;justify-content:center;
  background:var(--isn-soft);color:var(--isn-navy);font-weight:700;font-size:.85rem;cursor:pointer;border:none;transition:background .2s var(--isn-ease),color .2s var(--isn-ease);}
.fgf-popup-gift-products-wrapper .fgf_pagination:hover{background:var(--isn-line);}
.fgf-popup-gift-products-wrapper .fgf_pagination.current{background:var(--isn-primary);color:#fff;}
.fgf-popup-gift-products-wrapper .fgf_first_pagination,.fgf-popup-gift-products-wrapper .fgf_last_pagination{display:none;}
.fgf-popup-gift-products-wrapper .fgf_pagination a{color:inherit;text-decoration:none;}
/* cargando */
.fgf-popup-gift-products-wrapper .blockUI.blockOverlay{background:rgba(255,255,255,.75) !important;}

@media (max-width:760px){
  .fgf-popup-gift-products-wrapper table.fgf_gift_products_table tbody{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
}
/* Movil: hoja inferior (bottom sheet). Lightcase pone el modal a pantalla completa en <=640px con
   html[data-lc-type="inline"] #lightcase-case{...!important}: se sobreescribe con mas especificidad. */
@media (max-width:640px){
  html[data-lc-type="inline"] #lightcase-case:has(#fgf_gift_products_modal){
    inset:auto 0 0 0 !important;top:auto !important;bottom:0 !important;left:0 !important;right:0 !important;transform:none !important;
    width:100% !important;height:auto !important;max-height:90vh !important;padding:0 !important;margin:0 !important;overflow-y:auto !important;
    border-radius:24px 24px 0 0;background:#fff;animation:isnSheetUp .35s var(--isn-ease) both;-webkit-overflow-scrolling:touch;
  }
  html[data-lc-type="inline"] #lightcase-case:has(#fgf_gift_products_modal) #lightcase-content,
  html[data-lc-type="inline"] #lightcase-case:has(#fgf_gift_products_modal) .lightcase-contentInner,
  html[data-lc-type="inline"] #lightcase-case:has(#fgf_gift_products_modal) .lightcase-inlineWrap{
    position:relative !important;width:100% !important;height:auto !important;max-height:none !important;max-width:none !important;padding:0 !important;margin:0 !important;overflow:visible !important;background:none !important;
  }
  #lightcase-case:has(#fgf_gift_products_modal)::before{content:"";position:sticky;display:block;top:0;margin:8px auto -13px;width:42px;height:5px;border-radius:5px;background:var(--isn-line);z-index:2;}
  .fgf-popup-gift-products-wrapper .fgf_gift_products_wrapper{padding:22px 16px calc(20px + env(safe-area-inset-bottom));}
  .fgf-popup-gift-products-wrapper .fgf_gift_products_wrapper > h3{font-size:1.25rem !important;margin-right:44px !important;}
  .fgf-popup-gift-products-wrapper .fgf_gift_products_wrapper > h3::before{width:34px;height:34px;border-radius:10px;background-size:18px,100%;}
  .fgf-popup-gift-products-wrapper .fgf_gift_products_wrapper > h3::after{left:16px;top:62px;font-size:.84rem;}
  .fgf-popup-gift-products-wrapper .fgf-gift-products-content{margin-top:30px;}
  .fgf-popup-gift-products-wrapper .fgf-product-image img{padding:10px;}
  .fgf-popup-gift-products-wrapper tr.fgf-gift-product-item td:first-child{font-size:.84rem;padding:10px 10px 2px !important;}
  .fgf-popup-gift-products-wrapper tr.fgf-gift-product-item td:last-child{padding:6px 10px 10px !important;}
}
/* Con el pop-up abierto no se muestra la barra fija del carrito */
html.lightcase-open .isn-cart-bar{transform:translateY(110%) !important;}
/* La tabla responsive de WooCommerce fuerza text-align:right !important en movil */
#lightcase-case .fgf-popup-gift-products-wrapper.woocommerce table.fgf-frontend-table tr.fgf-gift-product-item td,.fgf-popup-gift-products-wrapper.woocommerce table.shop_table_responsive tr.fgf-gift-product-item td{text-align:left !important;}
.fgf-popup-gift-products-wrapper.woocommerce table.shop_table_responsive tr.fgf-gift-product-item td::before{display:none !important;content:none !important;}
html.lightcase-open .cky-btn-revisit-wrapper,body:has(.elementor-menu-cart--shown) .cky-btn-revisit-wrapper{display:none !important;}
.isn-sheet-close{position:absolute;top:26px;right:24px;z-index:3;width:38px;height:38px;border-radius:50%;border:none;background:var(--isn-soft);color:var(--isn-navy);font-size:26px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0 0 3px;font-family:var(--isn-font);transition:background .2s var(--isn-ease);}
.isn-sheet-close:hover{background:var(--isn-line);}
@media (max-width:640px){.isn-sheet-close{top:18px;right:14px;width:36px;height:36px;}}
@keyframes isnSheetUp{from{transform:translateY(100%)}to{transform:translateY(0)}}
@media (prefers-reduced-motion:reduce){#lightcase-case:has(#fgf_gift_products_modal){animation:none;}}


/* ==========================================================================
   FICHA DE PRODUCTO: aviso de regalo (por gasto y "compra X y llevate Y")
   ========================================================================== */
.isn-pgift,.single-product .summary .fgf-bogo-eligible-notice{
  display:grid !important;grid-template-columns:44px minmax(0,1fr);column-gap:14px;align-items:center;
  margin:4px 0 18px !important;padding:14px 16px !important;border-radius:var(--isn-radius) !important;font-family:var(--isn-font);text-align:left;
  background:linear-gradient(120deg,#fff 0%,var(--isn-gift-soft) 100%) !important;border:1.5px solid #ffd9bf !important;
  box-shadow:0 8px 22px rgba(255,138,61,.10) !important;color:var(--isn-navy) !important;
}
.isn-pgift[hidden]{display:none !important;}
.isn-pgift__ico,.single-product .summary .fgf-bogo-eligible-notice::before{
  grid-row:1 / span 2;width:44px;height:44px;border-radius:13px;box-shadow:0 8px 18px rgba(255,106,61,.3);
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='8' width='18' height='5' rx='1'/%3E%3Cpath d='M5 13v8h14v-8M12 8v13M12 8c-2-4-6-4-6-1.5S10 8 12 8zm0 0c2-4 6-4 6-1.5S14 8 12 8z'/%3E%3C/svg%3E") center/22px no-repeat,linear-gradient(135deg,var(--isn-gift),#ff6a3d);
}
.single-product .summary .fgf-bogo-eligible-notice::before{content:"";display:block;}
.single-product .summary .fgf-bogo-eligible-notice{font-weight:700;font-size:.98rem;line-height:1.35;}
.single-product .summary .fgf-bogo-eligible-notice p{margin:0 !important;}
.single-product .summary .fgf-bogo-eligible-notices-wrapper{margin:0 !important;padding:0 !important;border:none !important;background:none !important;box-shadow:none !important;}
.single-product .summary .fgf-bogo-eligible-notices-wrapper:empty{display:none !important;}
.isn-pgift__body{display:flex;flex-direction:column;gap:3px;min-width:0;}
.isn-pgift__t{font-size:1rem;font-weight:700;line-height:1.25;color:var(--isn-navy);}
.isn-pgift__s{font-size:.88rem;line-height:1.4;color:#6b6f82;}
.isn-pgift__bar{display:block;height:7px;border-radius:100px;background:rgba(255,138,61,.16);overflow:hidden;margin-top:7px;}
.isn-pgift__bar i{display:block;height:100%;border-radius:100px;background:linear-gradient(90deg,var(--isn-gift),#ff6a3d);transition:width .45s var(--isn-ease);}
.isn-pgift.is-ok .isn-pgift__bar,.isn-pgift.is-ya .isn-pgift__bar{display:none;}
.isn-pgift.is-ok{border-color:#bfe6cc !important;background:linear-gradient(120deg,#fff 0%,var(--isn-ok-soft) 100%) !important;box-shadow:0 8px 22px rgba(47,158,91,.12) !important;}
.isn-pgift.is-ok .isn-pgift__ico{animation:isnGiftPop 2.8s ease-in-out infinite;}
@media (prefers-reduced-motion:reduce){.isn-pgift.is-ok .isn-pgift__ico{animation:none;}}
@media (max-width:480px){
  .isn-pgift,.single-product .summary .fgf-bogo-eligible-notice{grid-template-columns:38px minmax(0,1fr);column-gap:12px;padding:12px 14px !important;}
  .isn-pgift__ico,.single-product .summary .fgf-bogo-eligible-notice::before{width:38px;height:38px;border-radius:11px;background-size:19px,100%;}
}

/* Tarjeta unica de regalo en la ficha: avisos "compra X" + aviso por gasto */
.isn-pgift__ico{grid-row:1;align-self:start;}
.isn-pgift__bogo{font-weight:700;font-size:.98rem;line-height:1.35;color:var(--isn-navy);}
.isn-pgift__bogo p{margin:0 !important;}
.isn-pgift__bogo + .isn-pgift__bogo,.isn-pgift__bogo + .isn-pgift__spend:not([hidden]){margin-top:10px;padding-top:10px;border-top:1px dashed #ffd0b0;}
.isn-pgift.is-ok .isn-pgift__bogo + .isn-pgift__spend{border-top-color:#bfe6cc;}
.isn-pgift__spend{display:flex;flex-direction:column;gap:3px;}
.isn-pgift__spend[hidden]{display:none !important;}
.isn-pgift{align-items:start;}
.isn-pgift:has(.isn-pgift__body > :only-child){align-items:center;}
/* Galeria: fuera las flechas Previous/Next sin estilo del carrusel (se sigue pudiendo deslizar) */
.woocommerce-product-gallery .flex-direction-nav{display:none !important;}

/* Listado (tienda, categorias, relacionados): el aviso "compra X y llevate Y" pasa a ser un badge sobre la foto */
ul.products li.product{position:relative;}
ul.products li.product .fgf-bogo-loop-page-eligible-notices-wrapper{
  position:absolute !important;top:12px;left:12px;z-index:3;margin:0 !important;padding:0 !important;
  background:none !important;border:none !important;box-shadow:none !important;width:auto !important;pointer-events:none;
}
ul.products li.product .fgf-bogo-loop-page-eligible-notices-wrapper .fgf-bogo-eligible-notice{
  display:inline-flex !important;align-items:center;gap:6px;margin:0 !important;padding:6px 12px 6px 9px !important;border:none !important;border-radius:100px !important;
  background:linear-gradient(135deg,var(--isn-gift),#ff6a3d) !important;box-shadow:0 6px 14px rgba(255,106,61,.35) !important;
  color:#fff !important;font-family:var(--isn-font);font-size:0 !important;line-height:1 !important;min-height:0;
}
ul.products li.product .fgf-bogo-loop-page-eligible-notices-wrapper .fgf-bogo-eligible-notice::before{
  content:"";display:block;width:14px;height:14px;flex:0 0 auto;background:#fff;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='8' width='18' height='5' rx='1'/%3E%3Cpath d='M5 13v8h14v-8M12 8v13M12 8c-2-4-6-4-6-1.5S10 8 12 8zm0 0c2-4 6-4 6-1.5S14 8 12 8z'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='8' width='18' height='5' rx='1'/%3E%3Cpath d='M5 13v8h14v-8M12 8v13M12 8c-2-4-6-4-6-1.5S10 8 12 8zm0 0c2-4 6-4 6-1.5S14 8 12 8z'/%3E%3C/svg%3E") center/contain no-repeat;
}
ul.products li.product .fgf-bogo-loop-page-eligible-notices-wrapper .fgf-bogo-eligible-notice::after{content:"Con regalo";font-size:.74rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;}
ul.products li.product .fgf-bogo-loop-page-eligible-notices-wrapper .fgf-bogo-eligible-notice p{
  position:absolute !important;width:1px !important;height:1px !important;overflow:hidden !important;clip:rect(0 0 0 0);white-space:nowrap;margin:0 !important;
}
/* Si ademas hay badge de oferta, el de regalo baja */
ul.products li.product:has(.onsale) .fgf-bogo-loop-page-eligible-notices-wrapper{top:44px;}
@media (max-width:480px){
  ul.products li.product .fgf-bogo-loop-page-eligible-notices-wrapper{top:8px;left:8px;}
  ul.products li.product .fgf-bogo-loop-page-eligible-notices-wrapper .fgf-bogo-eligible-notice{padding:5px 10px 5px 8px !important;}
  ul.products li.product .fgf-bogo-loop-page-eligible-notices-wrapper .fgf-bogo-eligible-notice::after{font-size:.68rem;}
}

/* ==========================================================================
   AVISOS DE WOOCOMMERCE (anadido al carrito, eliminado/deshacer, carrito actualizado, errores)
   Plantillas originales de WooCommerce (25-tienda-carrito.php quita las de Royal Addons)
   ========================================================================== */
.woocommerce-notices-wrapper:not(:empty){margin:16px 0 28px !important;}
.woocommerce-notices-wrapper:not(:has(> *)){display:none !important;margin:0 !important;}
.woocommerce-notices-wrapper > [class*="woocommerce-"]{margin:0 !important;}
.woocommerce-notices-wrapper > [class*="woocommerce-"] + [class*="woocommerce-"]{margin-top:12px !important;}
.woocommerce-NoticeGroup{margin:0 0 24px !important;}
@media (max-width:600px){
  .woocommerce-notices-wrapper:not(:empty){margin:12px 0 20px !important;}
  .woocommerce-notices-wrapper > [class*="woocommerce-"] + [class*="woocommerce-"]{margin-top:10px !important;}
}
.woocommerce-notices-wrapper > .woocommerce-message:not(:has(.isn-gift__btn)),.woocommerce-notices-wrapper > .woocommerce-info:not(:has(.isn-gift__btn)),.woocommerce-notices-wrapper > .woocommerce-error,.woocommerce-NoticeGroup .woocommerce-error,.woocommerce-NoticeGroup .woocommerce-message,.woocommerce-NoticeGroup .woocommerce-info{
  display:block !important;position:relative !important;overflow:hidden;
  padding:14px 18px 14px 60px !important;min-height:58px;border-radius:16px !important;border:1px solid !important;border-top-width:1px !important;box-shadow:0 6px 18px rgba(20,14,104,.06) !important;
  font-family:var(--isn-font) !important;font-size:.95rem !important;font-weight:600;line-height:1.4 !important;text-align:left;list-style:none;outline:none !important;
  background:#eefaf3 !important;border-color:#cdeedb !important;color:#1f5e3a !important;
}
.woocommerce-notices-wrapper > .woocommerce-message:not(:has(.isn-gift__btn))::before,.woocommerce-notices-wrapper > .woocommerce-info:not(:has(.isn-gift__btn))::before,.woocommerce-notices-wrapper > .woocommerce-error::before,.woocommerce-NoticeGroup .woocommerce-error::before,.woocommerce-NoticeGroup .woocommerce-message::before,.woocommerce-NoticeGroup .woocommerce-info::before{
  content:"" !important;position:absolute !important;left:16px !important;top:50% !important;width:30px;height:30px;border-radius:50%;margin:-15px 0 0 !important;transform:none !important;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/16px no-repeat,var(--isn-ok) !important;font-size:0 !important;color:transparent !important;
}
.woocommerce-notices-wrapper > .woocommerce-info:not(:has(.isn-gift__btn)),.woocommerce-NoticeGroup .woocommerce-info{background:#eef7fd !important;border-color:#cfe6f7 !important;color:var(--isn-navy) !important;}
.woocommerce-notices-wrapper > .woocommerce-info:not(:has(.isn-gift__btn))::before,.woocommerce-NoticeGroup .woocommerce-info::before{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 11v6M12 7h.01'/%3E%3C/svg%3E") center/18px no-repeat,var(--isn-primary) !important;}
.woocommerce-notices-wrapper > .woocommerce-error,.woocommerce-NoticeGroup .woocommerce-error{background:#fff5f4 !important;border-color:#f6d0cc !important;color:#8a2a22 !important;}
.woocommerce-notices-wrapper > .woocommerce-error::before,.woocommerce-NoticeGroup .woocommerce-error::before{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 7v6M12 17h.01'/%3E%3C/svg%3E") center/18px no-repeat,var(--isn-danger) !important;}
.woocommerce-error li{margin:0 !important;padding:0 !important;list-style:none;}
.woocommerce-error li + li{margin-top:4px !important;}
.woocommerce-error a{color:inherit !important;text-decoration:underline !important;}
.woocommerce-notices-wrapper > .woocommerce-message:not(:has(.isn-gift__btn)) a.button,.woocommerce-notices-wrapper > .woocommerce-info:not(:has(.isn-gift__btn)) a.button,.woocommerce-notices-wrapper > .woocommerce-error a.button,.woocommerce-NoticeGroup .woocommerce-error a.button,.woocommerce-NoticeGroup .woocommerce-message a.button,.woocommerce-NoticeGroup .woocommerce-info a.button{
  float:right !important;margin:-4px 0 -4px 16px !important;display:inline-flex !important;align-items:center;white-space:nowrap;
  padding:9px 18px !important;border-radius:100px !important;border:none !important;font-family:var(--isn-font) !important;font-size:.85rem !important;font-weight:700 !important;line-height:1.1 !important;
  background:#fff !important;color:var(--isn-navy) !important;box-shadow:0 2px 8px rgba(20,14,104,.1) !important;text-decoration:none !important;transition:background .2s var(--isn-ease),color .2s var(--isn-ease);
}
.woocommerce-notices-wrapper > .woocommerce-message:not(:has(.isn-gift__btn)) a.button:hover,.woocommerce-notices-wrapper > .woocommerce-info:not(:has(.isn-gift__btn)) a.button:hover,.woocommerce-notices-wrapper > .woocommerce-error a.button:hover,.woocommerce-NoticeGroup .woocommerce-error a.button:hover,.woocommerce-NoticeGroup .woocommerce-message a.button:hover,.woocommerce-NoticeGroup .woocommerce-info a.button:hover{background:var(--isn-navy) !important;color:#fff !important;}
.woocommerce-notices-wrapper > .woocommerce-message a.restore-item{color:inherit !important;font-weight:700;text-decoration:underline !important;margin-left:4px;}
@media (max-width:600px){
  .woocommerce-notices-wrapper > .woocommerce-message:not(:has(.isn-gift__btn)),.woocommerce-notices-wrapper > .woocommerce-info:not(:has(.isn-gift__btn)),.woocommerce-notices-wrapper > .woocommerce-error,.woocommerce-NoticeGroup .woocommerce-error,.woocommerce-NoticeGroup .woocommerce-message,.woocommerce-NoticeGroup .woocommerce-info{font-size:.9rem !important;padding:12px 14px 12px 54px !important;}
  .woocommerce-notices-wrapper > .woocommerce-message:not(:has(.isn-gift__btn)) a.button,.woocommerce-notices-wrapper > .woocommerce-info:not(:has(.isn-gift__btn)) a.button,.woocommerce-notices-wrapper > .woocommerce-error a.button,.woocommerce-NoticeGroup .woocommerce-error a.button,.woocommerce-NoticeGroup .woocommerce-message a.button,.woocommerce-NoticeGroup .woocommerce-info a.button{float:none !important;display:flex !important;justify-content:center;width:100%;margin:10px 0 0 !important;padding:11px 18px !important;}
}

/* ==========================================================================
   CHECKOUT: tamanos de texto mas contenidos
   ========================================================================== */
.woocommerce-checkout .isn-cart-head{padding:22px 0 12px;}
.woocommerce-checkout .isn-cart-head__title{font-size:1.65rem;}
.woocommerce-checkout .isn-cart-head__sub{font-size:.9rem;margin-top:10px;}
.woocommerce-checkout .isn-steps{margin-top:16px;}
.woocommerce-checkout .isn-step{font-size:.82rem;}
.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout .woocommerce-additional-fields h3,
.woocommerce-checkout #order_review_heading{font-size:1.05rem !important;margin-bottom:16px !important;gap:10px;}
.woocommerce-checkout .woocommerce-billing-fields h3::before,.woocommerce-checkout #order_review_heading::before{width:30px;height:30px;border-radius:9px;background-size:16px;}
.woocommerce-checkout .woocommerce-additional-fields h3{font-size:.95rem !important;}
.woocommerce-checkout #ship-to-different-address label{font-size:.92rem;}
.woocommerce-checkout .woocommerce-billing-fields,.woocommerce-checkout .woocommerce-shipping-fields,.woocommerce-checkout .woocommerce-additional-fields{padding:22px !important;}
.woocommerce-checkout .form-row label{font-size:.8rem !important;margin-bottom:5px !important;}
.woocommerce-checkout .form-row .input-text,.woocommerce-checkout .form-row select,.woocommerce-checkout .form-row .select2-container .select2-selection--single{height:44px !important;line-height:41px !important;font-size:.92rem !important;padding:0 13px !important;}
.woocommerce-checkout .form-row textarea.input-text{height:auto !important;line-height:1.5 !important;padding:11px 13px !important;}
.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered{line-height:41px !important;}
.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__arrow{height:41px !important;}
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row,.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row{margin-bottom:13px !important;}
.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info{font-size:.85rem !important;padding:12px 16px 12px 44px !important;}
.woocommerce-checkout #wc-stripe-express-checkout-button-separator{font-size:.7rem !important;}
.woocommerce-checkout .wpr-checkout-order-review-table-inner{padding:22px 22px 4px !important;}
.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name,.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-total{font-size:.85rem !important;}
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th,.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td{font-size:.84rem !important;}
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th{white-space:nowrap;padding-right:16px !important;}
.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name{width:58%;}
.woocommerce-checkout .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals td,.woocommerce-checkout .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals td *{font-size:.82rem !important;line-height:1.45;}
.woocommerce-checkout .woocommerce-checkout-review-order-table tr.order-total th,.woocommerce-checkout .woocommerce-checkout-review-order-table tr.order-total td{font-size:.95rem !important;}
.woocommerce-checkout .woocommerce-checkout-review-order-table tr.order-total td strong .amount,.woocommerce-checkout .woocommerce-checkout-review-order-table tr.order-total td > strong{font-size:1.35rem !important;}
.woocommerce-checkout .woocommerce-checkout-review-order-table tr.order-total .includes_tax,.woocommerce-checkout .woocommerce-checkout-review-order-table tr.order-total .includes_tax .amount{font-size:.72rem !important;}
.woocommerce-checkout #payment{padding:20px 22px 22px !important;}
.woocommerce-checkout #payment ul.payment_methods li > label{font-size:.88rem;}
.woocommerce-checkout #payment div.payment_box{font-size:.85rem;}
.woocommerce-checkout .woocommerce-privacy-policy-text p,.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{font-size:.76rem !important;}
.woocommerce-checkout .woocommerce-terms-and-conditions-checkbox-text{font-size:.82rem;}
.woocommerce-checkout #place_order{font-size:.98rem !important;padding:15px 22px !important;}
.woocommerce-checkout .isn-secure{font-size:.76rem;}
@media (max-width:767px){
  .woocommerce-checkout .isn-cart-head__title{font-size:1.4rem;}
  .woocommerce-checkout .woocommerce-billing-fields,.woocommerce-checkout .woocommerce-shipping-fields,.woocommerce-checkout .woocommerce-additional-fields{padding:18px 15px !important;}
  .woocommerce-checkout .form-row .input-text,.woocommerce-checkout .form-row select,.woocommerce-checkout .form-row .select2-container .select2-selection--single{font-size:16px !important;}
  .woocommerce-checkout .wpr-checkout-order-review-table-inner{padding:18px 15px 4px !important;}
  .woocommerce-checkout #payment{padding:16px 15px 18px !important;}
}

/* Carrito: el ultimo producto sin borde inferior (despues va la fila de acciones oculta) */
.woocommerce-cart .e-shop-table tr.cart_item:not(:has(~ tr.cart_item)){border-bottom:none !important;}
body.isn-qty-on.woocommerce-cart .e-shop-table tr:has(td.actions){display:none !important;}
@media (max-width:767px){
  .woocommerce-cart .coupon .coupon-col{gap:8px;}
  .woocommerce-cart .coupon input#coupon_code{padding:0 12px 0 38px !important;background-position:13px center !important;font-size:16px;}
  .woocommerce-cart .coupon .e-apply-coupon,.woocommerce-cart .coupon button[name="apply_coupon"]{padding:0 14px !important;font-size:.82rem !important;}
}

/* ==========================================================================
   LISTADO: barra con filtro de categorias + "Ordenar por"
   ========================================================================== */
.isn-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px 20px;margin:0 0 22px;font-family:var(--isn-font);}
.isn-toolbar .isn-filtros{flex:1 1 auto;min-width:0;justify-content:flex-start;margin:0 !important;}
.isn-chip--back{padding:9px 14px !important;font-size:1.05rem !important;line-height:1 !important;color:var(--isn-muted) !important;}
.isn-chip--back:hover{color:var(--isn-primary) !important;}
.isn-orden{flex:0 0 auto;}
.isn-orden .woocommerce-ordering{margin:0 !important;float:none !important;}
.isn-orden .woocommerce-ordering select.orderby{
  -webkit-appearance:none;appearance:none;height:42px;min-width:210px;margin:0;cursor:pointer;
  padding:0 40px 0 40px !important;border:1.5px solid var(--isn-line) !important;border-radius:100px !important;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2336A9E1' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h13M3 12h9M3 18h5M17 8v12M14 17l3 3 3-3'/%3E%3C/svg%3E") 14px center/18px no-repeat,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23140E68' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 14px center/16px no-repeat,#fff !important;
  font-family:var(--isn-font) !important;font-weight:600;font-size:.88rem;color:var(--isn-navy) !important;
  transition:border-color .2s var(--isn-ease),box-shadow .2s var(--isn-ease);
}
.isn-orden .woocommerce-ordering select.orderby:hover{border-color:var(--isn-accent) !important;}
.isn-orden .woocommerce-ordering select.orderby:focus{border-color:var(--isn-primary) !important;box-shadow:0 0 0 3px rgba(54,169,225,.15);outline:none;}
@media (max-width:767px){
  .isn-toolbar{flex-direction:column;align-items:stretch;gap:10px;margin:14px 0 18px;}
  .isn-toolbar .isn-filtros{margin:0 !important;padding-bottom:4px !important;}
  .isn-orden{align-self:flex-end;}
  .isn-orden .woocommerce-ordering select.orderby{height:40px;min-width:0;font-size:16px;padding:0 36px 0 38px !important;}
}

/* ==========================================================================
   CHECKOUT: nota del plazo de entrega (40-plazo-entrega.php)
   ========================================================================== */
.isn-pe-note{display:flex;align-items:center;gap:12px;margin:0 0 16px;padding:12px 14px;border-radius:14px;
  background:#fff;border:1px solid var(--isn-line);font-family:var(--isn-font);font-size:.86rem;line-height:1.4;color:var(--isn-navy);}
.isn-pe-note strong{font-weight:700;white-space:nowrap;}
.isn-pe-note__ico{flex:0 0 auto;width:32px;height:32px;border-radius:10px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h11v10H3zM14 9h4l3 3v4h-7z'/%3E%3Ccircle cx='7' cy='18' r='1.8'/%3E%3Ccircle cx='17' cy='18' r='1.8'/%3E%3C/svg%3E") center/18px no-repeat,var(--isn-primary);}
.woocommerce-checkout #payment .isn-pe-note{margin:0 0 16px;}
.isn-pe-row th,.isn-pe-row td{color:var(--isn-navy) !important;}

/* ==========================================================================
   FICHA: si solo hay una pestana (Descripcion) no se muestra la pestana, solo el titulo grande
   ========================================================================== */
.single-product .woocommerce-tabs ul.tabs:has(> li:only-child){display:none !important;}
.single-product .woocommerce-tabs:has(ul.tabs > li:only-child) .woocommerce-Tabs-panel{border:none !important;padding-top:0 !important;margin-top:0 !important;}

/* Checkout: el boton "Realizar el pedido" sin float (WooCommerce) para que "Pago 100% seguro" quede debajo y no aplastado */
.woocommerce-checkout #place_order{float:none !important;}
.woocommerce-checkout .place-order .isn-secure{clear:both;width:100%;margin:12px 0 0;}

/* Casilla de terminos: que se vea el foco y la zona de clic sea comoda */
.woocommerce-checkout #terms:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(54,169,225,.25);}
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .woocommerce-form__label-for-checkbox{cursor:pointer;}

/* Free Gifts imprime sus ventanas de regalo ocultas al final de todas las paginas (div.fgf_hide),
   pero solo carga su CSS en carrito, checkout y fichas: en el listado de la tienda se veian. */
.fgf_hide{display:none !important;}

/* ==========================================================================
   BARRA SUPERIOR: envio gratis desde X € (25-tienda-carrito.php)
   ========================================================================== */
.isn-topbar{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:4px 16px;padding:9px 16px;
  background:var(--isn-navy);color:#fff;font-family:var(--isn-font);font-size:.86rem;line-height:1.35;text-align:center;position:relative;z-index:10;}
.isn-topbar__txt{display:inline-flex;align-items:center;gap:0;}
.isn-topbar__txt strong{font-weight:700;color:#fff;}
.isn-topbar__txt sup{font-size:.7em;margin-left:1px;color:var(--isn-accent);}
.isn-topbar__ico{display:inline-block;width:18px;height:18px;margin-right:8px;flex:0 0 auto;background:var(--isn-accent);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h11v10H3zM14 9h4l3 3v4h-7z'/%3E%3Ccircle cx='7' cy='18' r='1.8'/%3E%3Ccircle cx='17' cy='18' r='1.8'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h11v10H3zM14 9h4l3 3v4h-7z'/%3E%3Ccircle cx='7' cy='18' r='1.8'/%3E%3Ccircle cx='17' cy='18' r='1.8'/%3E%3C/svg%3E") center/contain no-repeat;}
.isn-topbar__nota{font-size:.76rem;color:rgba(255,255,255,.72);}
@media (max-width:600px){
  .isn-topbar{flex-direction:column;gap:2px;padding:8px 14px;font-size:.8rem;}
  .isn-topbar__ico{width:16px;height:16px;margin-right:6px;}
  .isn-topbar__nota{font-size:.7rem;}
}
