        #ed-636981902>.inner {
            align-content: stretch;
            flex-direction: column;
        }

        #ed-636981902 {
            min-height: 10vh;
        }

        @media screen and (max-width: 975px) {
            #ed-636981902 {
                min-height: 10vh;
                height: 10vh;
            }
        }

        #ed-636981914 {
            padding: 0rem 0rem 0rem 1rem;
        }

        @media screen and (max-width: 975px) {
            #ed-636981914 {
                padding: 0rem 0rem 0rem 1rem;
            }
        }

        @media screen and (max-width: 575px) {
            #ed-636981914 {
                padding: 0rem 0rem 0rem 1rem;
            }
        }

        #ed-636981923 {
            min-width: 50%;
            max-width: 50%;
        }

        @media screen and (max-width: 975px) {
            #ed-636981923 {
                max-width: 50%;
                min-width: 50%;
            }
        }

        @media screen and (max-width: 575px) {
            #ed-636981923 {
                max-width: 40%;
                min-width: 40%;
            }
        }

        #ed-636981929 {
            min-width: 20%;
            max-width: 20%;
        }

        @media screen and (max-width: 975px) {
            #ed-636981929 {
                min-width: 20%;
                max-width: 20%;
            }
        }

        #ed-636981935 {
            min-width: 15%;
            max-width: 15%;
        }

        @media screen and (max-width: 975px) {
            #ed-636981935 {
                max-width: 15%;
                min-width: 15%;
            }
        }

        #ed-636981941 hr {
            width: 100%;
            height: 1px;
        }

        #ed-636981956 img {
            width: 100% !important;
            height: 100% !important;
            object-fit: cover !important;
        }

        @media screen and (max-width: 975px) {
            #ed-636981956 img {
                width: 100% !important;
                height: 100% !important;
                object-fit: cover !important;
            }
        }

        #ed-636981953 {
            max-width: 30%;
        }

        @media screen and (max-width: 975px) {
            #ed-636981953 {
                max-width: 35%;
            }
        }

        #ed-636981959 {
            max-width: 70%;
        }

        @media screen and (max-width: 975px) {
            #ed-636981959 {
                max-width: 50%;
                min-width: 50%;
            }
        }

        @media screen and (max-width: 575px) {
            #ed-636981959 {
                min-width: 58%;
                max-width: 58%;
            }
        }


        #ed-636981947 {
            min-width: 50%;
            max-width: 50%;
        }

        @media screen and (max-width: 975px) {
            #ed-636981947 {
                max-width: 50%;
                min-width: 50%;
            }
        }

        @media screen and (max-width: 575px) {
            #ed-636981947 {
                max-width: 40%;
                min-width: 40%;
            }
        }

        #ed-636981971 {
            margin: 0rem;
            padding: 0rem;
        }
        @media screen and (max-width: 975px) {
            #ed-636981971 {
                margin: 0.5rem;
            }
        }

        @media screen and (max-width: 975px) {
            #ed-636981971 input {
                padding: 0rem 0.5rem;
            }
        }

        #ed-636981968 form {
            justify-content: center;
            padding: 0rem;
            margin: 0rem;
        }

        @media screen and (max-width: 975px) {
            #ed-636981968>form {
                padding: 0rem;
            }
        }

        @media screen and (max-width: 975px) {
            #ed-636981968 {
                margin: 0rem;
            }
        }

        #ed-636981965 {
            min-width: 20%;
            max-width: 20%;
        }

        @media screen and (max-width: 975px) {
            #ed-636981965 {
                max-width: 20%;
                min-width: 20%;
            }
        }

        @media screen and (max-width: 575px) {
            #ed-636981965 {
                max-width: 20%;
                min-width: 20%;
            }
        }

        @media screen and (max-width: 975px) {
            #ed-636981980 {
                margin: 1rem 0rem 0rem;
            }
        }

        #ed-636981977 {
            max-width: 15%;
            min-width: 15%;
        }

        @media screen and (max-width: 975px) {
            #ed-636981977 {
                max-width: 15%;
                min-width: 15%;
            }
        }

        @media screen and (max-width: 575px) {
            #ed-636981977 {
                max-width: 15%;
                min-width: 15%;
            }
        }

        #ed-636981983 hr {
            width: 100%;
            height: 1px;
        }

        #ed-636981998 img {
            width: 100% !important;
            height: 100% !important;
            object-fit: cover !important;
        }

        @media screen and (max-width: 975px) {
            #ed-636981998 img {
                width: 100% !important;
                height: 100% !important;
                object-fit: cover !important;
            }
        }

        #ed-636981995 {
            max-width: 30%;
        }

        @media screen and (max-width: 975px) {
            #ed-636981995 {
                max-width: 35%;
            }
        }

        #ed-636982004 {
            padding: 0rem 0rem 1rem;
        }

        #ed-636982001 {
            max-width: 70%;
        }

        @media screen and (max-width: 975px) {
            #ed-636982001 {
                max-width: 50%;
                min-width: 50%;
            }
        }

        @media screen and (max-width: 575px) {
            #ed-636982001 {
                min-width: 58%;
                max-width: 58%;
            }
        }

        @media screen and (max-width: 975px) {
            #ed-636981992>.inner {
                padding: 0rem;
            }
        }

        @media screen and (max-width: 975px) {
            #ed-636981992 {
                margin: 0rem;
            }
        }

        #ed-636981989 {
            min-width: 50%;
            max-width: 50%;
        }

        @media screen and (max-width: 975px) {
            #ed-636981989 {
                max-width: 50%;
                min-width: 50%;
            }
        }

        @media screen and (max-width: 575px) {
            #ed-636981989 {
                max-width: 40%;
                min-width: 40%;
            }
        }

        @media screen and (max-width: 975px) {
            #ed-636982013 {
                margin: 0.5rem;
            }
        }

        @media screen and (max-width: 975px) {
            #ed-636982013 input {
                padding: 0rem 0.5rem;
            }
        }

        #ed-636982010 form {
            justify-content: center;
        }

        @media screen and (max-width: 975px) {
            #ed-636982010>form {
                padding: 0rem;
            }
        }

        @media screen and (max-width: 975px) {
            #ed-636982010 {
                margin: 0rem;
            }
        }

        #ed-636982007 {
            min-width: 20%;
            max-width: 20%;
        }

        @media screen and (max-width: 975px) {
            #ed-636982007 {
                max-width: 20%;
                min-width: 20%;
            }
        }

        @media screen and (max-width: 575px) {
            #ed-636982007 {
                max-width: 20%;
                min-width: 20%;
            }
        }

        @media screen and (max-width: 975px) {
            #ed-636982022 {
                margin: 1rem 0rem 0rem;
            }
        }

        #ed-636982019 {
            min-width: 15%;
            max-width: 15%;
        }

        @media screen and (max-width: 975px) {
            #ed-636982019 {
                max-width: 15%;
                min-width: 15%;
            }
        }

        @media screen and (max-width: 575px) {
            #ed-636982019 {
                max-width: 15%;
                min-width: 15%;
            }
        }

        #ed-636981986>.inner {
            padding: 1rem 0rem;
        }

        @media screen and (max-width: 975px) {
            #ed-636981986>.inner {
                padding: 1rem 0rem;
            }
        }

        #ed-636982025 hr {
            width: 100%;
            height: 1px;
        }

        #ed-636982028 a.button {
            padding: 0.5rem 0rem;
            width: 100%;
        }

        #ed-636982028 {
            margin: 0rem 0rem 1rem;
        }

        @media screen and (max-width: 975px) {
            #ed-636982028 {
                text-align: center;
            }
        }

        @media screen and (max-width: 975px) {
            #ed-636982028 a.button {
                width: 100%;
            }
        }

        @media screen and (max-width: 575px) {
            #ed-636982028 {
                margin: 3rem 0rem 1rem;
            }
        }

        #ed-636981917 {
            max-width: 60%;
            min-width: 60%;
        }

        @media screen and (max-width: 975px) {
            #ed-636981917 {
                max-width: 65%;
                min-width: 65%;
            }
        }

        @media screen and (max-width: 575px) {
            #ed-636981917 {
                min-width: 90%;
                max-width: 90%;
            }
        }

        #ed-636982052 {
            padding: 1rem 0rem 2rem;
        }

        @media screen and (max-width: 975px) {
            #ed-636982052 {
                padding: 1rem 0rem;
            }
        }



        #formDatosFactura a.button {
            padding: 0.5rem 0rem;
            width: 100%;
        }

        #formDatosFactura {
            margin: 0rem 0rem 1rem;
        }

        #ed-636982055 a.button {
            padding: 0.8rem 0rem;
            width: 100%;
        }

        #ed-636982055 {
            margin: 0rem 0rem 1rem;
        }

        #ed-636982034>.inner {
            padding: 1rem 2rem;
        }

        #ed-636982034 {
            border-style: solid;
            border-width: 1px;
        }

        @media screen and (max-width: 975px) {
            #ed-636982034 {
                border-style: solid;
                border-width: 1px;
            }
        }

        @media screen and (max-width: 975px) {
            #ed-636982034>.inner {
                padding: 1rem;
            }
        }

        @media screen and (max-width: 575px) {
            #ed-636982034>.inner {
                padding: 0.5rem;
            }
        }

        #ed-636982031 {
            max-width: 30%;
        }

        @media screen and (max-width: 975px) {
            #ed-636982031>.inner {
                padding: 0rem;
            }
        }

        @media screen and (max-width: 975px) {
            #ed-636982031 {
                max-width: 30%;
                min-width: 30%;
                margin: 0rem;
            }
        }

        @media screen and (max-width: 575px) {
            #ed-636982031 {
                max-width: 90%;
                min-width: 90%;
            }
        }

        #ed-636981911 {
            margin: 3rem 0rem 0rem;
        }

        #ed-636981911>.inner {
            padding: 3rem 3rem 4rem;
        }

        @media screen and (max-width: 975px) {
            #ed-636981911>.inner {
                padding: 3rem 2rem;
            }
        }

        @media screen and (max-width: 975px) {
            #ed-636981911 {
                margin: 3rem 0rem 0rem;
            }
        }

        @media screen and (max-width: 575px) {
            #ed-636981911>.inner {
                padding: 3rem 1rem;
                justify-content: center;
            }
        }

        /* Switch "Solicitar factura": más grande + margen izquierdo */
        #solicitar-factura .form-check {
            margin-left: 3px;
            /* respiro a la izquierda */
        }

        #solicitar-factura .form-check-input {
            transform: scale(1.25);
            /* agranda el switch */
            transform-origin: left center;
            margin-right: .75rem;
            /* separa el switch del texto */
        }

        #solicitar-factura .form-check-label {
            line-height: 1.4;
        }

/* ===== Modal Cotizar Envío: quitar azules en inputs y botones ===== */
#modalCotizarEnvio .form-control,
#modalCotizarEnvio .form-select {
  box-shadow: none !important;
  outline: 0 !important;
}
#modalCotizarEnvio .form-control:focus,
#modalCotizarEnvio .form-select:focus {
  border-color: #444;              /* neutro */
  box-shadow: none !important;     /* sin halo azul */
  outline: 0 !important;
}

/* (por si usas checks/radios en el modal) */
#modalCotizarEnvio .form-check-input:focus { box-shadow: none !important; outline: 0; }
#modalCotizarEnvio .form-check-input:checked { background-color: #212529; border-color: #212529; }

/* Botones sin halo/azul */
#modalCotizarEnvio .btn {
  --bs-btn-focus-box-shadow: none; /* quita glow de Bootstrap 5 */
  box-shadow: none !important;
  outline: 0 !important;
}
#modalCotizarEnvio .btn:focus,
#modalCotizarEnvio .btn:focus-visible,
#modalCotizarEnvio .btn:active:focus {
  box-shadow: none !important;
  outline: 0 !important;
}

/* Re-tematiza SOLO dentro del modal el "primary" (para que no sea azul) */
#modalCotizarEnvio .btn-primary{
  --bs-btn-color:#fff;
  --bs-btn-bg:#212529;
  --bs-btn-border-color:#212529;
  --bs-btn-hover-bg:#1b1f22;
  --bs-btn-hover-border-color:#1b1f22;
  --bs-btn-active-bg:#0f1113;
  --bs-btn-active-border-color:#0f1113;
}
/* y el outline-secondary a neutro */
#modalCotizarEnvio .btn-outline-secondary{
  --bs-btn-color:#212529;
  --bs-btn-border-color:#444;
  --bs-btn-hover-bg:#212529;
  --bs-btn-hover-color:#fff;
  --bs-btn-hover-border-color:#212529;
}

/* (opcional) si ves azul al seleccionar la tarifa (list-group .active) */
#modalCotizarEnvio .list-group-item.active { 
  background-color:#e9e8e2; 
  border-color:#212529; 
  color:#212529; 
}
/* ===== Modal Cotizar Envío: sin bordes redondeados ===== */
#modalCotizarEnvio .modal-content,
#modalCotizarEnvio .modal-header,
#modalCotizarEnvio .modal-body,
#modalCotizarEnvio .modal-footer,
#modalCotizarEnvio .btn,
#modalCotizarEnvio .btn-close,
#modalCotizarEnvio .form-control,
#modalCotizarEnvio .form-select,
#modalCotizarEnvio .list-group-item,
#modalCotizarEnvio .badge,
#modalCotizarEnvio .alert {
  border-radius: 0 !important;
}

/* Bootstrap aplica radios al primer/último item de listas: neutralízalos */
#modalCotizarEnvio .list-group-item:first-child,
#modalCotizarEnvio .list-group-item:last-child {
  border-top-left-radius: 0 !important;
  border-top-right-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}

/* Por si usas checks/radios dentro del modal */
#modalCotizarEnvio .form-check-input {
  border-radius: 0 !important;
}

/* ====== Pago con tarjeta: esquinas cuadradas ====== */
#cardPayBox .form-control,
#cardPayBox .form-select,
#cardPayBox .btn {
  border-radius: 0 !important;
}

/* Botón "Finalizar compra" específicamente */
#btnConfirmarPago.btn {
  border-radius: 0 !important;
}

/* (opcional) también quita el redondeo del botón "REALIZAR PAGO" arriba */
#btnRealizarPago.button,
#btnRealizarPago.btn {
  border-radius: 0 !important;
}
/* ===== Pago con tarjeta: sin glow azul y esquinas cuadradas ===== */
#cardPayBox {
  /* Apaga los box-shadows de focus de Bootstrap solo dentro de esta caja */
  --bs-form-control-focus-box-shadow: none;
  --bs-form-select-focus-box-shadow: none;
  --bs-focus-ring-color: transparent;
}

#cardPayBox .form-control,
#cardPayBox .form-select,
#cardPayBox .btn {
  border-radius: 0 !important;
}

/* Sin brillo al enfocar (inputs, selects y botón) */
#cardPayBox .form-control:focus,
#cardPayBox .form-select:focus,
#cardPayBox .btn:focus,
#cardPayBox .btn:focus-visible {
  outline: none !important;
  box-shadow: none !important;
  border-color: #212529 !important; /* o el color dark que uses */
}

/* Quita glow en estados de validación también */
#cardPayBox .form-control.is-valid:focus,
#cardPayBox .form-control.is-invalid:focus,
#cardPayBox .form-select.is-valid:focus,
#cardPayBox .form-select.is-invalid:focus {
  box-shadow: none !important;
}

/* Safari/Chrome: elimina el tinte de autofill (amarillo) para que no “brille” */
#cardPayBox input.form-control:-webkit-autofill {
  -webkitBoxShadow: 0 0 0 1000px #fff inset !important; /* ajusta al bg de tu input */
  -webkitTextFillColor: #212529 !important;
}

/* Botones específicos */
#btnConfirmarPago.btn,
#btnRealizarPago.button,
#btnRealizarPago.btn {
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* =========================
   iPad/iOS Safari: fix miniaturas del carrito + separadores
   ========================= */
@supports (-webkit-touch-callout: none) {
  /* Separador: en Safari a veces <hr> con bg-* no pinta si no le das altura */
  body.page-12484067 .ed-separator > hr.bg-primary {
    border: 0;
    height: 1px;
    opacity: 1;
    background-color: var(--bs-primary, #0d6efd);
  }
}

/* Carrito: separadores grises y sin doble línea (Safari iPad incluido) */
body.page-12484067 #ed-636981941 > hr,
body.page-12484067 .cart_item_separator hr {
  border: 0 !important;
  height: 1px !important;
  opacity: 1 !important;
  background-color: #C7C5BC !important; /* gris */
  box-shadow: none !important;
}


/* Control vertical de cantidad: + arriba, input en medio, - abajo */
.dc-qty-vertical{
  display: grid;
  grid-template-rows: auto auto auto;
  width: 56px;              /* ajusta a gusto (52–64 suele verse bien) */
}

.dc-qty-vertical .dc-qty-btn,
.dc-qty-vertical .dc-qty-input{
  width: 100%;
  border-radius: 0;         /* para look consistente */
}

.dc-qty-vertical .dc-qty-input{
  padding-left: 0;
  padding-right: 0;
}

/* Opcional: altura más compacta */
.dc-qty-vertical .dc-qty-btn{
  line-height: 1;
}

/* Cantidad: forzar layout vertical incluso si el render vuelve a poner input-group horizontal */
.product_item_cart .cart_product_quantity .input-group{
  display: flex !important;
  flex-direction: column !important;
  flex-wrap: nowrap !important;
  width: 56px !important;     /* ajusta: 56–64 */
  max-width: 56px !important;
}

/* Todos con el mismo ancho */
.product_item_cart .cart_product_quantity .input-group > .btn,
.product_item_cart .cart_product_quantity .input-group > .form-control{
  width: 100% !important;
  border-radius: 0 !important;
}

/* Reordenar: + arriba, input medio, - abajo
   (tu input-group original es: [-][input][+]) */
.product_item_cart .cart_product_quantity .input-group > .btn:first-child{
  order: 3 !important; /* el "-" al final */
}
.product_item_cart .cart_product_quantity .input-group > .form-control{
  order: 2 !important; /* input al centro */
  padding-left: 0 !important;
  padding-right: 0 !important;
  text-align: center !important;
}
.product_item_cart .cart_product_quantity .input-group > .btn:last-child{
  order: 1 !important; /* el "+" arriba */
}

/* Renglón del item: alinear verticalmente al centro */
.product_item_cart > .inner{
  display: flex !important;
  align-items: center !important;   /* <-- centra vertical */
}

/* Las 3 columnas del renglón: que se centren también */
.product_item_cart > .inner > .ed-element{
  align-self: center !important;
}

.product_item_cart #ed-636981974{
  text-align: center !important;
}

.dc-qty-vertical{
  margin: 0 auto;    /* centra dentro del form */
}

.preset-columns-two-v2-item-carrito > .inner{
  display: flex !important;
  align-items: center !important;
}

@media (max-width: 576px){
  .product_item_cart #ed-636981956{
    width: 80px;
    height: 80px;
  }
  .preset-columns-two-v2-item-carrito > .inner{
    gap: 2px;
  }
}

/* Subtotal + Eliminar centrados y uno debajo del otro */
#ed-636981977 > .inner{
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;   /* centra horizontal */
  justify-content: center !important;
  gap: 6px;                         /* espacio ligero */
  text-align: center !important;
}

#ed-636981977 #ed-636981974{
  text-align: center !important;
}

#ed-636981977 .cart_product_delete{
  cursor: pointer;
}

.cart_product_delete{
  display: inline-flex;
  align-items: center;
  gap: 6px;           /* separación icono-texto */
  cursor: pointer;
}

.cart_product_delete .trash-icon{
  width: 16px;
  height: 16px;
  fill: currentColor; /* toma el color del texto */
  flex: 0 0 auto;
}


/* Ocultar spinners nativos en input number */

/* Chrome, Safari, Edge (WebKit/Blink) */
.product_item_cart input[type="number"]::-webkit-outer-spin-button,
.product_item_cart input[type="number"]::-webkit-inner-spin-button{
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
.product_item_cart input[type="number"]{
  -moz-appearance: textfield;
  appearance: textfield; /* estándar (apoya algunos navegadores modernos) */
}

/* Solo celular */
@media (max-width: 576px){

  /* INGRESAR DATOS DE FACTURA */
  #formDatosFactura a.button{
    font-size: 18px !important;   /* ajusta */
    padding: 14px 16px !important; /* opcional: más alto */
    line-height: 1.2 !important;
  }

  /* REALIZAR PAGO */
  #btnRealizarPago{
    font-size: 18px !important;
    padding: 14px 16px !important;
    line-height: 1.2 !important;
  }

  /* COTIZAR ENVÍO (elige el selector que aplique) */

  /* Si tu botón tiene id */
  #btnCotizarEnvio,
  #btnCotizarSubmit{
    font-size: 18px !important;
    padding: 14px 16px !important;
    line-height: 1.2 !important;
  }

  /* Si es un <a class="button ..."> dentro de un contenedor */
  #cotizarEnvio a.button,
  .btn-cotizar-envio,
  .cotizar-envio a.button{
    font-size: 18px !important;
    padding: 14px 16px !important;
    line-height: 1.2 !important;
  }
}


/* Botones + / - en negro con texto blanco */
.product_item_cart .cart_product_quantity .btn{
 /*  background: #ded5cc !important; */
  border-color: #ded5cc !important;
}

/* Hover/active/focus para que no cambien a gris */
.product_item_cart .cart_product_quantity .btn:hover,
.product_item_cart .cart_product_quantity .btn:active,
.product_item_cart .cart_product_quantity .btn:focus{
  background: #1f1f1d !important;
  color: #fff !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

.product_item_cart > .inner{
  display: flex !important;
  align-items: center !important;
}
.product_item_cart > .inner > .ed-element{
  align-self: center !important;
}

#ed-636981965 > .inner,
#ed-636981968 form{
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;

}
