.qj-drawer-overlay[hidden]{display:none!important}.qj-drawer-overlay{position:fixed;inset:0;background:rgba(0,0,0,.62);z-index:999998;opacity:0;transition:opacity .25s}.qj-drawer-overlay.qj-open{opacity:1}.qj-cart-drawer{position:fixed;right:0;top:0;height:100dvh;width:min(440px,100vw);background:#fff;color:#261e1d;z-index:999999;transform:translateX(105%);transition:transform .27s ease;display:flex;flex-direction:column;box-shadow:-10px 0 35px rgba(0,0,0,.2);font-family:Georgia,'Times New Roman',serif;visibility:hidden}.qj-cart-drawer.qj-open{transform:translateX(0);visibility:visible}body.qj-drawer-locked{overflow:hidden!important}.qj-drawer-head{display:flex;align-items:center;justify-content:space-between;padding:23px 24px 16px;border-bottom:1px solid #eadfda}.qj-drawer-brand{font-size:11px;letter-spacing:2px;color:#b18a45}.qj-drawer-head h2{margin:6px 0 0;font:600 27px/1.2 Georgia,serif!important;color:#681e2b!important}.qj-drawer-head h2 span{font-size:18px}.qj-drawer-head #qj-drawer-close{background:transparent!important;border:0!important;color:#252525!important;font-size:33px!important;font-family:Arial,sans-serif;line-height:1;cursor:pointer;padding:0 5px}.qj-drawer-alert{margin:14px 22px 0;background:#e9f3ea;color:#246a36;border-radius:7px;padding:11px 13px;font-size:14px}.qj-drawer-alert[hidden],.qj-drawer-error[hidden]{display:none!important}.qj-drawer-error{margin:12px 22px 0;padding:12px;background:#fff0ed;color:#9b2637;border-radius:7px;font-size:14px}.qj-drawer-items{padding:12px 22px;overflow:auto;flex:1;min-height:0}.qj-drawer-item{padding:17px 0;border-bottom:1px solid #ecdfd7;display:flex;gap:13px}.qj-drawer-item-image{width:86px;min-width:86px;align-self:flex-start;display:block;border:1px solid #eee5df;border-radius:7px;overflow:hidden}.qj-drawer-item-image img{display:block;width:100%;height:86px;object-fit:contain}.qj-drawer-item-main{min-width:0;flex:1}.qj-drawer-item-line{display:flex;gap:7px;justify-content:space-between;align-items:flex-start}.qj-drawer-item-name{font-size:15px;font-weight:bold;color:#261c1c!important;text-decoration:none!important;line-height:1.35}.qj-drawer-remove{cursor:pointer;background:none!important;border:none!important;color:#444!important;font-size:22px;line-height:1;padding:0 2px}.qj-drawer-meta{font-size:12px;color:#786c64;margin:8px 0}.qj-drawer-meta dl,.qj-drawer-meta p{margin:0}.qj-drawer-meta dt,.qj-drawer-meta dd{display:inline;margin:0 4px 0 0}.qj-drawer-price{font-size:13px;color:#967035;margin-top:6px}.qj-drawer-item-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:9px}.qj-drawer-stepper{display:flex;border:1px solid #e3d4c5;border-radius:5px;overflow:hidden;align-items:center}.qj-drawer-stepper button{cursor:pointer;border:0!important;background:#fff!important;color:#5e3034!important;min-width:29px;height:29px;padding:0!important;font-size:18px}.qj-drawer-stepper span{padding:3px 11px;border-left:1px solid #e3d4c5;border-right:1px solid #e3d4c5;font-size:13px}.qj-drawer-line-subtotal{color:#9c7231;font-size:14px;white-space:nowrap}.qj-drawer-footer{flex:none;padding:18px 24px max(18px,env(safe-area-inset-bottom));border-top:1px solid #e8dad0;background:#fff}.qj-drawer-subtotal{display:flex;justify-content:space-between;gap:12px;margin-bottom:17px;font-size:17px}.qj-drawer-subtotal strong:last-child{color:#9d702e}.qj-cart-drawer .qj-drawer-checkout,.qj-cart-drawer .qj-drawer-cart-link{display:block!important;text-align:center;text-decoration:none!important;border-radius:6px;padding:13px!important;margin:8px 0!important;font-weight:bold!important;font-size:15px!important;line-height:1.2!important;transition:filter .15s}.qj-cart-drawer .qj-drawer-checkout{background:#792c38!important;color:#fff!important;border:1px solid #792c38!important}.qj-cart-drawer .qj-drawer-cart-link{background:#fff!important;color:#a27a39!important;border:1px solid #b18a45!important}.qj-cart-drawer .qj-drawer-checkout:hover,.qj-cart-drawer .qj-drawer-cart-link:hover{filter:brightness(.9)}.qj-cart-drawer .qj-drawer-checkout.qj-disabled{opacity:.5;pointer-events:none}.qj-drawer-footer small{display:block;text-align:center;margin-top:13px;color:#7a7370;font-size:11px}.qj-drawer-empty{text-align:center;padding:48px 8px;color:#716963}.qj-drawer-empty span{font-size:42px}.qj-drawer-empty p{margin:10px 0}.qj-cart-drawer button:focus-visible,.qj-cart-drawer a:focus-visible{outline:2px solid #792c38;outline-offset:2px}@media(max-width:480px){.qj-drawer-head{padding:18px 17px 12px}.qj-drawer-items{padding:8px 16px}.qj-drawer-footer{padding:14px 17px max(14px,env(safe-area-inset-bottom))}}@media(prefers-reduced-motion:reduce){.qj-cart-drawer,.qj-drawer-overlay{transition:none!important}}

/* QJ_CARRITO_TEXTOS_VINO_V1 */
/* Mejorar contraste de los textos informativos */

.qj-cart-drawer [class*="empty"] p,
.qj-cart-drawer [class*="empty"] span,
.qj-cart-drawer [class*="empty"] small,
.qj-cart-drawer [class*="shipping"] p,
.qj-cart-drawer [class*="shipping"] small {
    color: #792C38 !important;
}


/* ==========================================
   QJ_CARRITO_COLORES_V2
   Textos informativos en color vino
   ========================================== */

/* Marca del encabezado */
.qj-cart-drawer .qj-drawer-brand {
    color: #792C38 !important;
}

/* Mensajes cuando el carrito está vacío */
.qj-cart-drawer .qj-drawer-empty,
.qj-cart-drawer .qj-drawer-empty p {
    color: #792C38 !important;
}

/* Precio de productos */
.qj-cart-drawer .qj-drawer-price {
    color: #792C38 !important;
}

/* Subtotal */
.qj-cart-drawer .qj-drawer-subtotal strong:last-child {
    color: #792C38 !important;
}

/* Nota informativa del envío */
.qj-cart-drawer .qj-drawer-footer small {
    color: #792C38 !important;
}

/* Precios individuales */
.qj-cart-drawer .qj-drawer-line-subtotal {
    color: #792C38 !important;
}



/* QJ_DRAWER_HOME_FIX_V1 */
/* Aislamiento del carrito respecto a los estilos del inicio */

body #qj-cart-drawer {
    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    left: auto !important;
    bottom: auto !important;
    width: min(440px, 100vw) !important;
    height: 100dvh !important;
    display: flex !important;
    flex-direction: column !important;
    background: #fff !important;
    color: #261e1d !important;
    z-index: 999999 !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
    overflow: hidden !important;
}

body #qj-cart-drawer .qj-drawer-head {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    height: auto !important;
    min-height: 90px !important;
    display: flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    justify-content: space-between !important;
    background: #fff !important;
    color: #261e1d !important;
    padding: 18px 24px !important;
    margin: 0 !important;
    transform: none !important;
    border-bottom: 1px solid #eadfda !important;
}

body #qj-cart-drawer .qj-drawer-head h2 {
    color: #792c38 !important;
    font-size: 27px !important;
    line-height: 1.2 !important;
    margin: 5px 0 0 !important;
}

body #qj-cart-drawer #qj-drawer-close {
    position: static !important;
    display: block !important;
    flex: 0 0 auto !important;
    background: transparent !important;
    color: #261e1d !important;
    border: 0 !important;
    width: 36px !important;
    height: 36px !important;
    font-size: 32px !important;
    line-height: 1 !important;
    padding: 0 !important;
    cursor: pointer !important;
}

body #qj-cart-drawer .qj-drawer-items {
    display: block !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow-y: auto !important;
    padding: 12px 22px !important;
    background: #fff !important;
}

body #qj-cart-drawer .qj-drawer-item {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    gap: 13px !important;
    width: 100% !important;
    padding: 17px 0 !important;
    margin: 0 !important;
}

body #qj-cart-drawer .qj-drawer-item-image {
    display: block !important;
    flex: 0 0 86px !important;
    width: 86px !important;
    height: 86px !important;
}

body #qj-cart-drawer .qj-drawer-item-image img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    margin: 0 !important;
}

body #qj-cart-drawer .qj-drawer-item-main {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    color: #261e1d !important;
}

body #qj-cart-drawer .qj-drawer-item-name {
    color: #261e1d !important;
    font-size: 15px !important;
    line-height: 1.4 !important;
    overflow-wrap: anywhere !important;
}

body #qj-cart-drawer .qj-drawer-footer {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    height: auto !important;
    flex: 0 0 auto !important;
    background: #fff !important;
    margin: 0 !important;
    transform: none !important;
}

body #qj-cart-drawer .qj-drawer-subtotal,
body #qj-cart-drawer .qj-drawer-subtotal strong {
    color: #792c38 !important;
}

/* QJ_DRAWER_BOTONES_ABAJO_V1 */
/* Mantener las acciones de compra al fondo del carrito */

body #qj-cart-drawer {
    display: flex !important;
    flex-direction: column !important;
    height: 100dvh !important;
    overflow: hidden !important;
}

body #qj-cart-drawer .qj-drawer-head {
    flex: 0 0 auto !important;
}

body #qj-cart-drawer .qj-drawer-items {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow-y: auto !important;
}

body #qj-cart-drawer .qj-drawer-footer {
    margin-top: auto !important;
    flex: 0 0 auto !important;
    width: 100% !important;
    padding: 18px 24px max(18px, env(safe-area-inset-bottom)) !important;
    background: #ffffff !important;
    border-top: 1px solid #e8dad0 !important;
}

body #qj-cart-drawer .qj-drawer-checkout,
body #qj-cart-drawer .qj-drawer-cart-link {
    display: block !important;
    width: 100% !important;
    box-sizing: border-box !important;
    text-align: center !important;
}

@media (max-width: 480px) {
    body #qj-cart-drawer .qj-drawer-footer {
        padding: 14px 17px max(14px, env(safe-area-inset-bottom)) !important;
    }
}


/* QJ_CARRITO_MITAD_V1 */

/* Escritorio: mitad de la pantalla */
@media (min-width: 1025px) {
    body #qj-cart-drawer {
        width: 50vw !important;
        max-width: 50vw !important;
        min-width: 0 !important;
        right: 0 !important;
    }
}

/* Tabletas */
@media (min-width: 601px) and (max-width: 1024px) {
    body #qj-cart-drawer {
        width: 65vw !important;
        max-width: 65vw !important;
        min-width: 0 !important;
    }
}

/* Celulares */
@media (max-width: 600px) {
    body #qj-cart-drawer {
        width: 100vw !important;
        max-width: 100vw !important;
        min-width: 0 !important;
    }
}

/* Conservar el desplazamiento lateral */
body #qj-cart-drawer {
    box-sizing: border-box !important;
}

/* FIN QJ_CARRITO_MITAD_V1 */

/* QJ_CARGANDO_DRAWER_V1_INICIO */

/* Mensaje inicial de carga del carrito lateral */
html body #qj-drawer-items > p {
    color: #782B3B !important;
}

/* QJ_CARGANDO_DRAWER_V1_FIN */


/* QJ_DRAWER_PRESENTACION_ESTILO_V1
   Presentaciones visibles dentro del carrito lateral.
*/

body #qj-cart-drawer .qj-drawer-meta {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;

    margin: 8px 0 !important;
    padding: 8px 10px !important;

    background: #f8f4f1 !important;
    border: 1px solid #eaded6 !important;
    border-left: 3px solid #b18a45 !important;
    border-radius: 5px !important;

    color: #782b3b !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
}

body #qj-cart-drawer .qj-drawer-meta dl {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
}

body #qj-cart-drawer .qj-drawer-meta dt {
    display: inline !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #782b3b !important;
    margin: 0 5px 0 0 !important;
}

body #qj-cart-drawer .qj-drawer-meta dd {
    display: inline !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    color: #4b3b39 !important;
    margin: 0 !important;
}

body #qj-cart-drawer .qj-drawer-meta dd::after {
    content: "";
    display: block;
    height: 3px;
}

body #qj-cart-drawer .qj-drawer-meta dd p {
    display: inline !important;
    margin: 0 !important;
    padding: 0 !important;
    color: inherit !important;
}

body #qj-cart-drawer .qj-drawer-meta p {
    font-size: 13px !important;
    line-height: 1.5 !important;
}

@media (max-width: 480px) {
    body #qj-cart-drawer .qj-drawer-meta {
        padding: 7px 9px !important;
        font-size: 12px !important;
    }

    body #qj-cart-drawer .qj-drawer-meta dt,
    body #qj-cart-drawer .qj-drawer-meta dd {
        font-size: 12px !important;
    }
}


/* QJ_DRAWER_META_SIN_RELLENO_V2
   Mostrar la presentación como texto limpio.
   Sin fondo, borde ni relleno.
*/

body #qj-cart-drawer .qj-drawer-meta {
    display: block !important;
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    border-left: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;

    padding: 0 !important;
    margin: 5px 0 7px !important;

    color: #786c64 !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
}

body #qj-cart-drawer .qj-drawer-meta dl {
    margin: 0 !important;
    padding: 0 !important;
}

body #qj-cart-drawer .qj-drawer-meta dt {
    color: #782b3b !important;
    font-weight: 600 !important;
}

body #qj-cart-drawer .qj-drawer-meta dd {
    color: #786c64 !important;
    font-weight: 400 !important;
}

body #qj-cart-drawer .qj-drawer-meta dd::after {
    height: 0 !important;
}

@media (max-width: 480px) {
    body #qj-cart-drawer .qj-drawer-meta {
        padding: 0 !important;
        margin: 4px 0 6px !important;
        font-size: 12px !important;
    }
}


/* QJ_DRAWER_BOTON_DORADO_V1
   Botón Ir a carrito dorado con texto blanco.
*/

html body #qj-cart-drawer a.qj-drawer-cart-link {
    display: block !important;
    background: #B18A45 !important;
    background-color: #B18A45 !important;
    color: #FFFFFF !important;
    border: 1px solid #B18A45 !important;
    border-radius: 6px !important;
    text-align: center !important;
    text-decoration: none !important;
    font-weight: 700 !important;
    transition: background-color .2s ease, border-color .2s ease !important;
}

html body #qj-cart-drawer a.qj-drawer-cart-link:visited {
    color: #FFFFFF !important;
}

html body #qj-cart-drawer a.qj-drawer-cart-link:hover,
html body #qj-cart-drawer a.qj-drawer-cart-link:focus-visible {
    background: #927035 !important;
    background-color: #927035 !important;
    border-color: #927035 !important;
    color: #FFFFFF !important;
}

/* QJ_VOLUMEN_DRAWER_V1 - Resumen real del descuento */
#qj-cart-drawer .qj-drawer-volumen-row {display:flex;justify-content:space-between;align-items:center;gap:10px;margin:0 0 10px;color:#782b3b;font-size:14px;}
#qj-cart-drawer .qj-drawer-volumen-row strong {color:#782b3b;text-align:right;}
#qj-cart-drawer .qj-drawer-volumen-total {padding-top:9px;border-top:1px solid #e9ddd4;font-size:17px;font-weight:bold;}


/* ==========================================
   QJ_DRAWER_RESUMEN_ORDENADO_V2
   Subtotal / Descuento / Total
   ========================================== */

html body #qj-cart-drawer .qj-drawer-footer
.qj-drawer-subtotal {

    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;

    gap: 12px !important;
    margin: 0 0 11px !important;

    width: 100% !important;
}

html body #qj-cart-drawer .qj-drawer-footer
#qj-drawer-volume-summary {

    display: block !important;
    width: 100% !important;

    margin: 0 0 14px !important;
    padding: 0 !important;

    background: transparent !important;
    border: none !important;
}

/* Cada concepto ocupa su propia fila */

html body #qj-cart-drawer .qj-drawer-footer
#qj-drawer-volume-summary .qj-drawer-volumen-row {

    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;

    width: 100% !important;
    gap: 12px !important;

    margin: 0 0 11px !important;
    padding: 0 !important;

    font-size: 14px !important;
    line-height: 1.45 !important;

    color: #782B3B !important;

    background: transparent !important;
    border: none !important;
}

/* Etiqueta a la izquierda */

html body #qj-cart-drawer .qj-drawer-footer
.qj-drawer-volumen-row > span {

    display: block !important;
    flex: 1 1 auto !important;

    min-width: 0 !important;
    margin: 0 !important;

    color: #782B3B !important;
    font-weight: 500 !important;
    text-align: left !important;
}

/* Importe alineado a la derecha */

html body #qj-cart-drawer .qj-drawer-footer
.qj-drawer-volumen-row > strong {

    display: block !important;
    flex: 0 0 auto !important;

    margin: 0 !important;

    color: #782B3B !important;
    font-weight: 700 !important;
    text-align: right !important;
    white-space: nowrap !important;
}

/* Separador y total final */

html body #qj-cart-drawer .qj-drawer-footer
#qj-drawer-volume-summary .qj-drawer-volumen-total {

    border-top: 1px solid #E8DAD0 !important;

    padding: 12px 0 0 !important;
    margin: 4px 0 16px !important;

    font-size: 18px !important;
    font-weight: 700 !important;
}

html body #qj-cart-drawer .qj-drawer-footer
.qj-drawer-volumen-total > span,

html body #qj-cart-drawer .qj-drawer-footer
.qj-drawer-volumen-total > strong {

    font-size: 18px !important;
    font-weight: 700 !important;
}

/* Botones existentes: conservar colores */

html body #qj-cart-drawer a.qj-drawer-checkout {
    background: #792C38 !important;
    color: #FFFFFF !important;
}

html body #qj-cart-drawer a.qj-drawer-cart-link {
    background: #B18A45 !important;
    border-color: #B18A45 !important;
    color: #FFFFFF !important;
}

@media (max-width: 480px) {

    html body #qj-cart-drawer .qj-drawer-footer
    .qj-drawer-volumen-row {
        font-size: 13px !important;
    }

    html body #qj-cart-drawer .qj-drawer-footer
    .qj-drawer-volumen-total > span,

    html body #qj-cart-drawer .qj-drawer-footer
    .qj-drawer-volumen-total > strong {
        font-size: 16px !important;
    }
}
