/* Fuentes utilizadas en la ficha de producto */
    @font-face {
        font-family: 'Roboto-Black';
        src: url('../../../../uploads/2026/09/Roboto-Black.ttf') format('truetype');
        font-weight: 900;
        font-style: normal;
        font-display: swap;
    }
    
    @font-face {
        font-family: 'Roboto-Bold';
        src: url('../../../../uploads/2026/09/Roboto-Bold.ttf') format('truetype');
        font-weight: 700;
        font-style: normal;
        font-display: swap;
    }

    @font-face {
        font-family: 'Roboto-Medium';
        src: url('../../../../uploads/2026/09/Roboto-Medium.ttf') format('truetype');
        font-weight: 500;
        font-style: normal;
        font-display: swap;
    }

    @font-face {
        font-family: 'Roboto-Regular';
        src: url('../../../../uploads/2026/09/Roboto-Regular.ttf') format('truetype');
        font-weight: 400;
        font-style: normal;
        font-display: swap;
    }

/* Colores reutilizables de esta hoja de estilos */
:root{
    --city-store-child-color-primary:#0157cf;
    --city-store-child-color-border:#e2e8f0;
    --city-store-child-color-muted:#64748b;
    --city-store-child-color-heading:#0f172a;
    --city-store-child-color-text:#333333;
    --city-store-child-color-white:#ffffff;
    --city-store-child-color-light:#E1F1FF;
    --city-store-child-color-danger:#dc2626;
    --city-store-child-color-gallery-border:#dddcdc;
}
/* Tipografias y transicion de la ficha de producto */
.city-store-child-product-wrap{--font-base:'Roboto-Regular',sans-serif;--font-regular:'Roboto-Regular',sans-serif;--font-medium:'Roboto-Medium',sans-serif;--font-bold:'Roboto-Bold',sans-serif;--font-black:'Roboto-Black',sans-serif;--transition:0.3s ease;}
/* Estructura de la ficha, migas de pan y distribucion principal */
.city-store-child-product-wrap div.summary .single-product-category{display:none;}
.city-store-child-product-wrap .cp-hero-band{position:relative;z-index:1;background:var(--city-store-child-color-white);padding:15px 0 35px;box-sizing:border-box;margin-top:0 !important;}
.city-store-child-product-wrap .city-store-child-product-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:1.5rem;align-items:start;max-width:1400px;margin:0 auto;padding:0 1rem;font-family:var(--font-base);color:var(--city-store-child-color-heading);margin-top:0;}
/* Galeria, miniaturas y controles de navegacion */
.city-store-child-product-wrap .woocommerce-product-gallery__wrapper,
.city-store-child-product-wrap .woocommerce-product-gallery__image{height:100% !important;}
.city-store-child-product-wrap .woocommerce-product-gallery__image>a{display:flex;align-items:center;justify-content:center;width:100%;height:100% !important;}
.city-store-child-product-wrap .woocommerce-product-gallery__image img:not(.zoomImg){width:100% !important;height:100% !important;object-fit:contain;object-position:center;}

.city-store-child-product-wrap .cp-gallery-side{position:relative;display:flex !important;flex-direction:row;gap:15px;align-items:center;margin:0 !important;min-width:0;width:100% !important;max-width:none !important;float:none !important;clear:none !important;}
.city-store-child-product-wrap .cp-gallery-side .flex-viewport{order:2;flex:1 1 0%;min-width:0;width:calc(100% - 105px) !important;border:1px solid var(--city-store-child-color-gallery-border);border-radius:4px;background:var(--city-store-child-color-white);}
.city-store-child-product-wrap .cp-thumbnail-rail{order:1;display:flex;flex:0 0 90px;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:0;}
.city-store-child-product-wrap .cp-gallery-side .woocommerce-product-gallery__wrapper{margin:0;}
.city-store-child-product-wrap div.images.cp-gallery-side .flex-control-thumbs{display:flex;flex-direction:column;gap:12px;flex:0 1 auto;width:90px;max-height:600px;margin:0;padding:0;overflow-x:hidden;overflow-y:auto;}
.city-store-child-product-wrap div.images.cp-gallery-side .flex-control-thumbs li{flex:0 0 90px;width:90px !important;margin:0 !important;float:none !important;}
.city-store-child-product-wrap div.images.cp-gallery-side .flex-control-thumbs img{display:block;width:90px;height:90px;object-fit:cover;border:1px solid var(--city-store-child-color-gallery-border);border-radius:6px;opacity:0.65;cursor:pointer;transition:opacity 0.2s,border-color 0.2s;}
.city-store-child-product-wrap div.images.cp-gallery-side .flex-control-thumbs img.flex-active,.city-store-child-product-wrap div.images.cp-gallery-side .flex-control-thumbs img:hover{border:2px solid var(--city-store-child-color-primary);opacity:1;}
.city-store-child-product-wrap .cp-gallery-nav{box-sizing:border-box;z-index:5;display:flex;align-items:center;justify-content:center;padding:0;margin:0;cursor:pointer;line-height:1;visibility:visible;opacity:1;pointer-events:auto;transition:opacity 0.2s ease,visibility 0.2s ease,background 0.2s ease,color 0.2s ease;}
.city-store-child-product-wrap .cp-gallery-nav:disabled{cursor:default;}
.city-store-child-product-wrap .cp-gallery-nav--thumb{flex:0 0 35px;width:35px;height:35px;border:1px solid var(--city-store-child-color-primary);border-radius:50%;background:var(--city-store-child-color-white);color:var(--city-store-child-color-primary);transition:background 0.2s ease,color 0.2s ease;}
.city-store-child-product-wrap .cp-gallery-nav--thumb:hover:not(:disabled){background:var(--city-store-child-color-primary);color:var(--city-store-child-color-white);}
.city-store-child-product-wrap .cp-gallery-nav--main{position:absolute;top:50%;width:38px;height:46px;border:0;border-radius:4px;background:rgba(0,0,0,0.4);color:var(--city-store-child-color-white);transform:translateY(-50%);transition:background 0.2s ease;}
.city-store-child-product-wrap .cp-gallery-nav--main:hover:not(:disabled){background:rgba(0,0,0,0.7);color:var(--city-store-child-color-white);}
.city-store-child-product-wrap .cp-gallery-nav--main[data-gallery-direction="previous"]{left:113px;}
.city-store-child-product-wrap .cp-gallery-nav--main[data-gallery-direction="next"]{right:8px;}
.city-store-child-product-wrap .cp-gallery-nav svg{display:block;width:17px;height:17px;pointer-events:none;}
/* Resumen del producto, titulo, marca y SKU */
.city-store-child-product-wrap .cp-summary-side,
.city-store-child-product-wrap div.product .summary.cp-summary-side{box-sizing:border-box;display:flex;flex-direction:column;float:none !important;width:100% !important;max-width:none !important;clear:none !important;margin:0 !important;min-width:0;padding:0 !important;}
.city-store-child-product-wrap .cp-title{display:block;width:100%;font-family:var(--font-medium);font-size:22px;line-height:1.2;font-weight:500;color:var(--city-store-child-color-text) !important;margin:0 0 12px !important;padding:0;overflow-wrap:anywhere;}
.city-store-child-product-wrap .cp-title .cp-brand{font-family:var(--font-regular);color:#959393;text-transform:uppercase;margin-right:6px;}
.city-store-child-product-wrap .cp-meta-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px;}

.city-store-child-product-wrap span.sku_wrapper{font-family:var(--font-bold) !important;font-weight:700 !important;font-size:14px;color:#333 !important;}
span.sku {font-family: var(--font-regular);font-weight: 300 !important;color: #959595;}
.city-store-child-product-wrap .product_meta{border-top:0px solid #d1d5db00 !important;padding-top:0;font-size:.9em;margin:0 0 .8em;}
.city-store-child-product-wrap .cp-rating{display:none;}
.city-store-child-product-wrap .cp-stars-bg{color:#d1d5db;}
.city-store-child-product-wrap .cp-stars-fg{position:absolute;top:0;left:0;width:100%;overflow:hidden;color:#FFC107;white-space:nowrap;}
/* Precios, moneda y etiquetas de impuestos */
.city-store-child-product-wrap p.price{font-family:var(--font-bold);font-size:30px !important;color:var(--city-store-child-color-primary);line-height:1.2;margin-bottom:0;}
.city-store-child-product-wrap p.price .amount{color:var(--city-store-child-color-primary);}
.city-store-child-product-wrap .cp-price-usd{font-family:var(--font-bold);font-size:26px !important;color:#000000;line-height:1.2;margin-top:-2px;margin-bottom:10px;font-weight:600;}
.city-store-child-product-wrap .cp-tax{font-family:var(--font-regular);font-size:0.75rem;color:var(--city-store-child-color-muted);padding-left:4px;}
/* Cantidad y botones de compra */
.city-store-child-product-wrap .cp-buy-row{font-family:var(--font-base);display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin:10px 0 15px !important;}
.city-store-child-product-wrap .cp-qty{display:inline-flex;align-items:center;gap:4px;}
.city-store-child-product-wrap .cp-qty .quantity{box-sizing:border-box;display:flex !important;align-items:center;float:none !important;width:auto !important;margin:0 !important;padding:0 !important;}
.city-store-child-product-wrap .cp-qty .quantity input.cp-qty-input{box-sizing:border-box;width:50px !important;min-width:50px !important;height:32px !important;min-height:32px !important;margin:5px !important;padding:0 !important;line-height:30px !important;appearance:textfield;-moz-appearance:textfield;}
.city-store-child-product-wrap .cp-qty-input{box-sizing:border-box;width:50px !important;height:32px !important;border:1px solid #e5e5e5fc !important;border-radius:4px !important;background:#f3f3f3 !important;text-align:center !important;font-size:16px !important;font-weight:700 !important;color:var(--city-store-child-color-heading) !important;padding:0 !important;margin:0 !important;box-shadow:none !important;outline:none !important;-moz-appearance:textfield;}
.city-store-child-product-wrap .cp-qty-input::-webkit-outer-spin-button,.city-store-child-product-wrap .cp-qty-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
.city-store-child-product-wrap .cp-btn-cart{box-sizing:border-box;display:inline-flex;flex:0 0 190px;align-items:center;justify-content:center;width:190px;min-height:42px;padding:0 20px !important;border:1px solid var(--city-store-child-color-primary) !important;border-radius:24px !important;background:var(--city-store-child-color-primary) !important;color:var(--city-store-child-color-white) !important;font-family:var(--font-bold) !important;font-size:15px !important;font-weight:700 !important;line-height:1.2 !important;text-align:center;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color 0.2s,border-color 0.2s,box-shadow 0.2s;}
.city-store-child-product-wrap .cp-btn-cart:hover{border-color:#0046a8 !important;background:#0046a8 !important;color:var(--city-store-child-color-white) !important;}
.city-store-child-product-wrap .cp-btn-cart:focus-visible{outline:3px solid rgba(1,87,207,0.3);outline-offset:2px;}
.city-store-child-product-wrap .cp-btn-cart:disabled{cursor:not-allowed;opacity:0.6;}
/* Especificaciones, garantia e informacion de envio */
.city-store-child-product-wrap .cp-specs{list-style:none;padding:0;margin:0 0 5px !important;color:#334155;line-height:1.6;}
.city-store-child-product-wrap .woocommerce-tabs.wc-tabs-wrapper ul li{font-size:13px !important;}
.city-store-child-product-wrap .cp-warranty{font-family:var(--font-regular)!important;font-size:0.85rem !important;color:var(--city-store-child-color-text) !important;padding:5px 0;margin-bottom:5px;margin-top:5px;}
.city-store-child-product-wrap ul.product-caracteristic{margin:0 0 1.5em 2em;}
.city-store-child-product-wrap a:not([href]):not([class]),.city-store-child-product-wrap a:not([href]):not([class]):hover{cursor:text;}
.city-store-child-product-wrap .cp-shipping-box{font-family:var(--font-base);border-radius:8px;margin:12px 0 16px 0;color:var(--city-store-child-color-text);}
.city-store-child-product-wrap .cp-shipping-title{font-family:var(--font-bold);font-size:13.5px;margin-bottom:0;}
.city-store-child-product-wrap .cp-shipping-item{font-family:var(--font-medium);font-size:13px;color:var(--city-store-child-color-text);line-height:1.5;display:flex;align-items:center;gap:10px;margin-bottom:-12px;}
.city-store-child-product-wrap .cp-shipping-item img{width:45px;height:45px;object-fit:contain;}

.city-store-child-product-wrap .cp-shipping-item b{font-family:var(--font-regular) !important;font-weight:500 !important;color:var(--city-store-child-color-text);}
.city-store-child-product-wrap .cp-shipping-item a{font-family:var(--font-medium);font-size:13px;line-height:1.5;color:#007cd2;text-decoration:underline;cursor:pointer;margin-left:14px;padding:0;}
/* Metodos de pago y logotipos de tarjetas */
.city-store-child-product-wrap .cp-payment-box{font-family:var(--font-base);display:flex;justify-content:space-between;align-items:center;}
.city-store-child-product-wrap .cp-payment-text b{font-family:var(--font-bold);color:var(--city-store-child-color-text);font-size:0.85rem;display:block;margin-bottom:2px;}
.city-store-child-product-wrap .cp-payment-text span{font-size:0.78rem;color:var(--city-store-child-color-text);display:block;margin-bottom:8px;max-width:350px;line-height:1.5;}
.city-store-child-product-wrap a.cp-metodos-pago{font-family:var(--font-medium);font-size:12px;line-height:1.5;color:var(--city-store-child-color-primary);text-decoration:underline;cursor:pointer;margin-left:10px;padding:0;}
.city-store-child-product-wrap .cp-cards{display:flex;gap:8px;justify-content:flex-end;}
.city-store-child-product-wrap .cp-cards img{height:40px;object-fit:contain;}
.city-store-child-product-wrap .cp-short-desc-content ul.product-caracteristic{list-style-type:disc !important;list-style-position:outside !important;margin:0 !important;padding:0 0 0 16px !important;line-height:18px;}
.city-store-child-product-wrap .cp-short-desc-content ul.product-caracteristic li{display:list-item !important;padding:0 0 0 5px !important;font-family:var(--font-regular) !important;font-size:13px;color:#565656;font-weight:400;line-height:18px;}
.city-store-child-product-wrap .cp-short-desc-content ul.product-caracteristic li::marker{content:"•" !important;color:#565656;}
.city-store-child-product-wrap .cp-short-desc-content ul.product-caracteristic li,
.city-store-child-product-wrap .cp-short-desc-content ul.product-caracteristic li *{font-family:var(--font-regular) !important;font-size:13px !important;font-weight:400 !important;line-height:18px !important;color:#565656 !important;}
.city-store-child-product-wrap .cp-short-desc-content ul.product-caracteristic li strong,
.city-store-child-product-wrap .cp-short-desc-content ul.product-caracteristic li strong *{font-family:var(--font-bold) !important;font-weight:700 !important;}
.city-store-child-product-wrap .cp-short-desc-content ul.product-caracteristic li .product-componente{padding-left:0;}
.city-store-child-product-wrap .woocommerce-product-details__short-description{box-sizing:border-box;border-top:0 !important;margin-bottom:0 !important;font-size:14px;line-height:1.5;}
.city-store-child-product-wrap .cp-short-desc-content{margin:10px 0;line-height:18px;}
.city-store-child-product-wrap .cp-short-desc-content a{font-size:13px;padding:0;}
.city-store-child-product-wrap .cp-warranty img{box-sizing:border-box;flex:0 0 20px;width:20px !important;height:30px !important;max-width:20px !important;object-fit:contain;}

/* Consulta de disponibilidad en productos con visibilidad de catalogo */
.city-store-child-product-wrap:has(.custom-consult-container) .custom-consult-container{width:100%;margin:30px 0 20px;}
.city-store-child-product-wrap:has(.custom-consult-container) .consult-availability-box{box-sizing:border-box;display:flex;align-items:flex-start;gap:10px;width:100%;margin:0 0 30px;padding:15px 20px;border-radius:12px;background:var(--city-store-child-color-light);font-family:var(--font-base);}
.city-store-child-product-wrap:has(.custom-consult-container) .consult-alert-img{box-sizing:border-box;display:block;flex:0 0 45px;width:45px !important;height:45px !important;max-width:45px !important;margin:15px 0 0;object-fit:contain;}
.city-store-child-product-wrap:has(.custom-consult-container) .consult-content{display:flex;flex:1 1 auto;flex-direction:column;gap:6px;min-width:0;}
.city-store-child-product-wrap:has(.custom-consult-container) .consult-badge span{font-family:var(--font-bold);font-size:16px;font-weight:700;color:var(--city-store-child-color-text);}
.city-store-child-product-wrap:has(.custom-consult-container) .consult-text{margin:0;font-family:var(--font-regular) !important;font-weight: 300 !important;font-size:14px;line-height:1.5;color:var(--city-store-child-color-text);}
.city-store-child-product-wrap:has(.custom-consult-container) .consult-availability-btn,
.city-store-child-product-wrap:has(.custom-consult-container) .consult-availability-btn:link,
.city-store-child-product-wrap:has(.custom-consult-container) .consult-availability-btn:visited,
.city-store-child-product-wrap:has(.custom-consult-container) .consult-availability-btn:hover,
.city-store-child-product-wrap:has(.custom-consult-container) .consult-availability-btn:focus,
.city-store-child-product-wrap:has(.custom-consult-container) .consult-availability-btn:active{box-sizing:border-box;display:flex;align-items:center;justify-content:center;gap:15px;width:90%;min-height:42px;margin:0 auto;padding:6px 20px;border:0;border-radius:30px;background:var(--city-store-child-color-primary);color:var(--city-store-child-color-white) !important;font-family:var(--font-medium);font-size:16px;font-weight:500;line-height:1.3;text-align:center;text-decoration:none;}
.city-store-child-product-wrap:has(.custom-consult-container) .consult-availability-btn .consult-availability-label{color:var(--city-store-child-color-white) !important;}
.city-store-child-product-wrap:has(.custom-consult-container) .consult-btn-icon{box-sizing:border-box;display:block;flex:0 0 30px;width:30px !important;height:30px !important;max-width:30px !important;object-fit:contain;}
.city-store-child-product-wrap:has(.custom-consult-container) .cp-short-desc-content{margin:15px 0 10px;}
.city-store-child-product-wrap:has(.custom-consult-container) .cp-short-desc-content ul.product-caracteristic{list-style:disc outside !important;margin:0 0 1.5em 2em !important;padding:0 !important;}
.city-store-child-product-wrap:has(.custom-consult-container) .cp-short-desc-content ul.product-caracteristic li{padding:0 !important;font-family:var(--font-regular) !important;font-size:13px !important;font-weight:400 !important;line-height:18px !important;color:#565656 !important;}
.city-store-child-product-wrap:has(.custom-consult-container) .cp-short-desc-content ul.product-caracteristic li::marker{content:normal !important;color:var(--city-store-child-color-text);}
.city-store-child-product-wrap:has(.custom-consult-container) .cp-short-desc-content ul.product-caracteristic li .product-title{font-family:var(--font-regular) !important;font-weight:400 !important;color:#565656 !important;}
.city-store-child-product-wrap:has(.custom-consult-container) .cp-short-desc-content ul.product-caracteristic li .product-title::after{content:":\00a0";margin-left:-0.25em;}
.city-store-child-product-wrap:has(.custom-consult-container) .cp-short-desc-content ul.product-caracteristic li strong,
.city-store-child-product-wrap:has(.custom-consult-container) .cp-short-desc-content ul.product-caracteristic li strong *{font-family:var(--font-bold) !important;font-weight:700 !important;color:#333 !important;}
.city-store-child-product-wrap .cp-short-desc-content ul.product-caracteristic li .product-title,
.city-store-child-product-wrap:has(.custom-consult-container) .cp-short-desc-content ul.product-caracteristic li .product-title{margin-right:5px !important;}
.city-store-child-product-wrap .cp-short-desc-content ul.product-caracteristic li .product-componente,
.city-store-child-product-wrap:has(.custom-consult-container) .cp-short-desc-content ul.product-caracteristic li .product-componente{font-weight:600 !important;}

/* Estado agotado: aviso y datos del proveedor */
.custom-out-of-stock-container{margin:35px 0;}
.alert-stock-badge .stock-alert-icon{font-size:25px;color:var(--city-store-child-color-danger);}
.alert-stock-badge{background-color:var(--city-store-child-color-light);color:#717171;padding:12px 16px;border-radius:8px;font-family:var(--font-bold);font-size:16px;display:flex;align-items:center;gap:10px;margin-bottom:45px;border:1px solid var(--city-store-child-color-light);}
.alert-stock-badge .stock-alert-img{width:24px;height:24px;object-fit:contain;display:block;}
.vendor-info-box{background:var(--city-store-child-color-white);border:1px solid var(--city-store-child-color-text);border-radius:10px;text-align:center;box-shadow:0 2px 12px rgba(0,30,75,0.05);}
.commercialized-text{font-family:var(--font-regular);font-size:13px;color:var(--city-store-child-color-text);text-transform:uppercase;letter-spacing:0.05em;display:block;margin-top:20px;}
.vendor-name{font-family:var(--font-black);font-size:24px;color:var(--city-store-child-color-text);margin:4px 0;}
.vendor-desc{font-family:var(--font-regular);font-size:14px;color:var(--city-store-child-color-text);margin-bottom:5px;}
.vendor-features{display:flex;justify-content:space-around;font-family:var(--font-bold);font-size:13px;color:var(--city-store-child-color-text);padding-top:16px;margin-bottom:16px;gap:10px;}
.vendor-feature-item{display:flex;flex-direction:column;align-items:center;text-align:center;flex:1;}
.vendor-feature-icon{width:32px;height:32px;object-fit:contain;margin-bottom:8px;}
.vendor-solutions-btn{display:block;width:100%;padding:12px 20px;color:#041431;font-family:var(--font-bold);font-size:14px;text-align:center;text-decoration:underline;border-top:1px solid var(--city-store-child-color-text);border-radius:10px;}
/* Tratamiento visual de la galeria cuando no hay stock */
.is-product-agotado .cp-summary-side{margin-top:-150px;}
.is-product-agotado .woocommerce-product-gallery{position:relative !important;}
.is-product-agotado .woocommerce-product-gallery::after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(255,255,255,0.7);z-index:20;pointer-events:none;border-radius:var(--radius-md);}
/* Ajustes responsivos del producto */
/* Keep the gallery layout from being overridden by global WooCommerce styles. */
#content .city-store-child-product-wrap .woocommerce-product-gallery.images.cp-gallery-side{display:flex !important;flex-direction:row;align-items:flex-start;gap:15px;}
#content .city-store-child-product-wrap .woocommerce-product-gallery.images.cp-gallery-side .flex-viewport{order:2;flex:1 1 0%;min-width:0;width:calc(100% - 105px) !important;}
#content .city-store-child-product-wrap .woocommerce-product-gallery.images.cp-gallery-side .cp-thumbnail-rail{order:1;display:flex;flex:0 0 90px;flex-direction:column;align-items:center;}
#content .city-store-child-product-wrap .woocommerce-product-gallery.images.cp-gallery-side .flex-control-thumbs{display:flex;flex:0 1 auto;width:90px !important;height:auto;min-height:0;max-height:600px;flex-direction:column;gap:12px;overflow-x:hidden;overflow-y:auto;}
#content .city-store-child-product-wrap .woocommerce-product-gallery.images.cp-gallery-side .flex-control-thumbs > li{box-sizing:border-box;flex:0 0 90px !important;width:90px !important;height:90px;margin:0 !important;float:none !important;}
#content .city-store-child-product-wrap .woocommerce-product-gallery.images.cp-gallery-side .flex-control-thumbs img{box-sizing:border-box;display:block;width:90px !important;height:90px !important;max-width:none;object-fit:contain;background:#fff;}
#content .city-store-child-product-wrap .cp-qty .quantity-nav{display:flex !important;align-items:center;}
#content .city-store-child-product-wrap .cp-qty .quantity-nav a{box-sizing:border-box;width:32px;height:32px;border:1px solid #dbdbdb;background:#e3e3e3;color:#0f172a;text-decoration:none;}
#content .city-store-child-product-wrap .cp-qty .quantity-nav a:hover{background:#dbe2ea;color:#0f172a;}
#content .city-store-child-product-wrap .cp-qty .quantity-nav a:first-child{border-radius:4px 0 0 4px;}
#content .city-store-child-product-wrap .cp-qty .quantity-nav a:last-child{border-radius:0 4px 4px 0;}
#content .city-store-child-product-wrap .cp-qty .quantity-nav input.cp-qty-input{border-radius:0 !important;}
#content .city-store-child-product-wrap .woocommerce-product-gallery__image img.zoomImg{width:auto !important;height:auto !important;max-width:none !important;max-height:none !important;object-fit:contain;}

#envios-modal-overlay{
    z-index:2147483649 !important;
    box-sizing:border-box;
    width:100vw;
    height:100vh;
    height:100dvh;
    padding:16px;
    overflow-y:auto;
    overscroll-behavior:contain;
}
#envios-modal-overlay .cp-modal-content{
    box-sizing:border-box;
    display:flex;
    flex-direction:column;
    width:min(580px,100%);
    max-height:calc(100vh - 32px);
    max-height:calc(100dvh - 32px);
}
#envios-modal-overlay .cp-modal-body{
    flex:1 1 auto;
    min-height:0;
    max-height:none;
    overflow-y:auto;
    overscroll-behavior:contain;
    padding: 25px;
}
#envios-modal-overlay{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.65);backdrop-filter:blur(4px);}
#envios-modal-overlay.is-open{display:flex;}
#envios-modal-overlay .cp-modal-content{background:#fff;border-radius:16px;box-shadow:0 20px 25px -5px rgba(0,0,0,.1);overflow:hidden;animation:cityStoreShippingModalFadeIn .3s ease;}
#envios-modal-overlay .cp-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #e2e8f0;background:#f8fafc;}
#envios-modal-overlay .cp-modal-header h2{margin:0;color:#0f172a;font-size:1.25rem;font-weight:700;padding-bottom: 0px;}
#envios-modal-overlay .cp-modal-close{box-sizing:border-box;display:flex;align-items:center;justify-content:center;position:relative;width:32px !important;min-width:32px !important;height:32px !important;margin:0;padding:0 !important;border:0;border-radius:50%;background:transparent;color:#64748b;cursor:pointer;}
#envios-modal-overlay .cp-modal-close:hover{background:#e2e8f0;color:#0f172a;}
#envios-modal-overlay .cp-modal-close::after{content:"✕";color:currentColor;font-size:16px;font-weight:700;line-height:1;}
#envios-modal-overlay .cp-modal-section h3{margin:0 0 .75rem;color:#0157cf;font-size:1rem;font-weight:700;padding-bottom: 2px;}
#envios-modal-overlay .cp-timeline-item{display:flex;position:relative;margin-bottom:.75rem;padding-left:24px;}
#envios-modal-overlay .cp-timeline-item::before{position:absolute;top:18px;bottom:-28px;left:4px;border-left:2px solid #cbd5e1;content:"";}
#envios-modal-overlay .cp-timeline-item:last-child::before{display:none;}
#envios-modal-overlay .cp-dot{position:absolute;top:10px;left:0;width:10px;height:10px;border-radius:50%;background:#0157cf;}
#envios-modal-overlay .cp-timeline-text h4{margin:0 0 2px;color:#0f172a;font-size:.85rem;font-weight:600;padding-bottom: 0px;}
#envios-modal-overlay .cp-timeline-text h4 span{color:#dc2626;}
#envios-modal-overlay .cp-timeline-text p{margin:0;color:#475569;font-size:.82rem;line-height:1.4;}
#envios-modal-overlay .cp-modal-footer-note{padding:10px 12px;border:1px solid #fbcfe8;border-radius:8px;background:#fdf2f8;}
#envios-modal-overlay .cp-modal-footer-note p{margin:0;color:#9d174d;font-size:.75rem;line-height:1.4;}
#envios-modal-overlay .cp-modal-footer-note span{font-weight:700;}
@keyframes cityStoreShippingModalFadeIn{from{opacity:0;transform:translateY(-20px);}to{opacity:1;transform:translateY(0);}}

@media only screen and (max-width: 1032px) {
    .city-store-child-product-wrap .cp-payment-text span {max-width: 225px;}
}

@media only screen and (max-width: 1023px) {
    #primary, #secondary {
        margin-bottom: 0px;
    }
}

@media screen and (min-width:769px){
    .city-store-child-product-wrap .woocommerce-product-gallery .flex-viewport{height:auto !important;aspect-ratio:1 / 1;}
    body.single-product .container.clearfix:has(.city-store-child-product-wrap){box-sizing:border-box;width:min(1400px,calc(100% - 32px));max-width:1400px !important;margin-right:auto !important;margin-left:auto !important;}
    body.single-product #primary{float:none !important;width:100% !important;max-width:none !important;}
}

@media screen and (max-width:768px){
    html:has(body.single-product),
    body.single-product{-webkit-overflow-scrolling:touch;}

    .city-store-child-product-wrap .cp-title{margin-top:20px !important;font-size:20px;padding-bottom:0 !important;}
    .city-store-child-product-wrap .cp-hero-band{z-index:2;margin-top:0 !important;}
    .city-store-child-product-wrap .city-store-child-product-layout{grid-template-columns:minmax(0,1fr);gap:1.5rem;margin-top:0;padding:0 3rem;}
    .city-store-child-product-wrap .cp-gallery-side{flex-direction:column;margin-top:0;width:100%;}
    .city-store-child-product-wrap .cp-gallery-side .flex-viewport{order:1;width:100% !important;}
    .city-store-child-product-wrap .cp-thumbnail-rail{order:2;flex:0 0 auto;flex-direction:row;width:100%;}
    .city-store-child-product-wrap .cp-summary-side{margin-top:0;}
    .city-store-child-product-wrap div.images.cp-gallery-side .flex-control-thumbs{order:1;flex:0 0 auto;width:100%;max-height:none;flex-direction:row;gap:12px;overflow-x:auto;overflow-y:hidden;}
    .city-store-child-product-wrap div.images.cp-gallery-side .flex-control-thumbs li{flex:0 0 60px;width:60px !important;}
    .city-store-child-product-wrap div.images.cp-gallery-side .flex-control-thumbs img{width:60px;height:60px;}
    .city-store-child-product-wrap .cp-gallery-nav--thumb{display:none;}
    .city-store-child-product-wrap .cp-gallery-nav--main[data-gallery-direction="previous"]{left:8px;}
    .city-store-child-product-wrap .cp-payment-box{flex-direction:row;align-items:center;}
    .city-store-child-product-wrap .cp-cards{justify-content:end;width:40%;}
    .city-store-child-product-wrap .cp-payment-text span{max-width:100%;}
    .city-store-child-product-wrap .cp-summary-side.summary{float:none !important;width:100% !important;clear:none !important;padding:0 !important;}
    .city-store-child-product-wrap .cp-qty .quantity{float:none !important;margin:0 !important;display:flex !important;align-items:center;width:auto;}
    .city-store-child-product-wrap .cp-qty .quantity .screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);}
    .city-store-child-product-wrap .cp-summary-side form.cart{display:block;margin:0 !important;padding:0;border:0;box-shadow:none;}
    .city-store-child-product-wrap .cp-summary-side form.cart::before,
    .city-store-child-product-wrap .cp-summary-side form.cart::after{content:none;display:none;}
    .city-store-child-product-wrap button.cp-btn-cart,
    .city-store-child-product-wrap form.cart button.cp-btn-cart{box-sizing:border-box;width:auto;min-width:0;height:42px !important;padding:0 50px !important;border:0 !important;border-radius:20px !important;background-color:var(--city-store-child-color-primary) !important;color:var(--city-store-child-color-white) !important;font-family:var(--font-bold);font-size:16px;line-height:42px !important;cursor:pointer;}
    .city-store-child-product-wrap button.cp-btn-cart:hover{background-color:var(--city-store-child-color-primary) !important;color:var(--city-store-child-color-white) !important;opacity:0.92;}
    .city-store-child-product-wrap .cp-price-box p.price{margin:0;}
    .city-store-child-product-wrap .cp-summary-side .stock{margin:0 0 8px;}
    .city-store-child-product-wrap a.cp-metodos-pago{font-size:10px;}
    .city-store-child-product-wrap:has(.custom-consult-container) .custom-consult-container{margin:20px 0 16px;}
    .city-store-child-product-wrap:has(.custom-consult-container) .consult-availability-box{margin-bottom:20px;padding:14px 16px;}
    .city-store-child-product-wrap:has(.custom-consult-container) .consult-availability-btn{width:100%;}
    .city-store-child-product-wrap:has(.custom-consult-container) .cp-short-desc-content{margin-top:22px;}
    .city-store-child-product-wrap{padding-bottom:0px;}

    .cp-buy-row--portal{
        --font-base:'Roboto-Regular',sans-serif;
        --font-regular:'Roboto-Regular',sans-serif;
        --font-bold:'Roboto-Bold',sans-serif;
        position:fixed;
        z-index:998;
        right:0;
        bottom:0;
        left:0;
        box-sizing:border-box;
        display:flex;
        flex-wrap:nowrap;
        align-items:center;
        justify-content:space-between;
        gap:12px;
        width:100%;
        margin:0 !important;
        padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));
        background:var(--city-store-child-color-white);
        box-shadow:0 -4px 18px rgba(15,23,42,0.12);
        font-family:var(--font-base);
    }
    .cp-buy-row--portal .cp-qty{display:inline-flex;flex:0 0 auto;align-items:center;gap:4px;}
    .cp-buy-row--portal .cp-qty .quantity{box-sizing:border-box;display:flex !important;align-items:center;float:none !important;width:auto !important;margin:0 !important;padding:0 !important;}
    .cp-buy-row--portal .cp-qty .quantity input.cp-qty-input{box-sizing:border-box;width:50px !important;min-width:50px !important;height:32px !important;min-height:32px !important;margin:5px !important;padding:0 !important;line-height:30px !important;appearance:textfield;-moz-appearance:textfield;}
    .cp-buy-row--portal .cp-qty-input{box-sizing:border-box;width:50px !important;height:32px !important;border:1px solid #e5e5e5fc !important;border-radius:4px !important;background:#f3f3f3 !important;text-align:center !important;font-size:16px !important;font-weight:700 !important;color:var(--city-store-child-color-heading) !important;padding:0 !important;margin:0 !important;box-shadow:none !important;outline:none !important;-moz-appearance:textfield;}
    .cp-buy-row--portal .cp-btn-cart{box-sizing:border-box;display:inline-flex;flex:1 1 auto;align-items:center;justify-content:center;width:auto;min-width:0;min-height:42px;padding:0 14px !important;border:1px solid var(--city-store-child-color-primary) !important;border-radius:24px !important;background:var(--city-store-child-color-primary) !important;color:var(--city-store-child-color-white) !important;font-family:var(--font-bold) !important;font-size:15px !important;font-weight:700 !important;line-height:1.2 !important;text-align:center;text-decoration:none;white-space:nowrap;cursor:pointer;}
    .cp-buy-row--portal .cp-btn-cart:hover{border-color:#0046a8 !important;background:#0046a8 !important;color:var(--city-store-child-color-white) !important;}
    .cp-buy-row--portal .cp-qty .quantity-nav{display:flex !important;align-items:center;}
    .cp-buy-row--portal .cp-qty .quantity-nav a{box-sizing:border-box;width:32px;height:32px;border:1px solid #dbdbdb;background:#e3e3e3;color:#0f172a;text-decoration:none;}
    .cp-buy-row--portal .cp-qty .quantity-nav a:hover{background:#dbe2ea;color:#0f172a;}
    .cp-buy-row--portal .cp-qty .quantity-nav a:first-child{border-radius:4px 0 0 4px;}
    .cp-buy-row--portal .cp-qty .quantity-nav a:last-child{border-radius:0 4px 4px 0;}
    .cp-buy-row--portal .cp-qty .quantity-nav input.cp-qty-input{border-radius:0 !important;}

    body.single-product .chat-wsp{display:none !important;bottom:calc(90px + env(safe-area-inset-bottom,0px)) !important;z-index:2147483647 !important;}
    body.single-product #ht-ctc-chat{z-index:2147483647 !important;}
    #whatsapp-button,
    .whatsapp-button,
    .whatsapp-float,
    .whatsapp-chat,
    .joinchat,
    .chaty-widget,
    .chaty-widget-is,
    .ht-ctc-chat,
    .ht-ctc-style{bottom:calc(90px + env(safe-area-inset-bottom,0px)) !important;}

    #content .city-store-child-product-wrap .woocommerce-product-gallery.images.cp-gallery-side{flex-direction:column;align-items:stretch;}
    #content .city-store-child-product-wrap .woocommerce-product-gallery.images.cp-gallery-side .flex-viewport{order:1;width:100% !important;}
    #content .city-store-child-product-wrap .woocommerce-product-gallery.images.cp-gallery-side .cp-thumbnail-rail{order:2;flex:0 0 auto;flex-direction:row;width:100%;}
    #content .city-store-child-product-wrap .woocommerce-product-gallery.images.cp-gallery-side .flex-control-thumbs{order:1;flex:0 0 auto;width:100% !important;max-height:none;flex-direction:row;overflow-x:auto;overflow-y:hidden;gap:8px;}
    #content .city-store-child-product-wrap .woocommerce-product-gallery.images.cp-gallery-side .flex-control-thumbs > li{flex:0 0 52px !important;width:50px !important;height:60px;}
    #content .city-store-child-product-wrap .woocommerce-product-gallery.images.cp-gallery-side .flex-control-thumbs img{width:60px !important;height:60px !important;}
    .city-store-child-product-wrap .cp-gallery-nav--main[data-gallery-direction="next"]{right:2px;}
    .city-store-child-product-wrap .cp-gallery-nav--main{width:35px;height:35px;}
    body.single-product .container.clearfix:has(.city-store-child-product-wrap){width:100%;max-width:100% !important;}
}

@media screen and (max-width:440px){
    .woocommerce-js div.product div.summary{margin-bottom:0em;}
    .city-store-child-product-wrap .cp-hero-band{margin-top:0 !important;padding:15px 0 5px;}
    .product-page-content-wrapper{padding:0 20px;margin:-25px auto 0 auto !important;}
    .city-store-child-product-wrap .city-store-child-product-layout{padding:0 0.5rem;gap:0rem;}
    .cp-buy-row--portal{gap:8px;padding-right:16px;padding-left:16px;}
    .cp-buy-row--portal .cp-qty{gap:3px;}
    .cp-buy-row--portal .cp-qty .quantity input.cp-qty-input{box-sizing:border-box;flex:0 0 42px;width:42px !important;min-width:42px !important;height:30px !important;min-height:30px !important;font-size:14px !important;line-height:28px !important;}
    .cp-buy-row--portal .cp-btn-cart{flex:1 1 0%;width:auto;min-width:0;padding-right:8px !important;padding-left:8px !important;font-size:14px;overflow:hidden;text-overflow:ellipsis;}
    .city-store-child-product-wrap .cp-cards img{height:30px;object-fit:contain;}
    .city-store-child-product-wrap .cp-cards{justify-content:end;width:20%;margin-top:20px;}
    .city-store-child-product-wrap .cp-payment-text span{max-width:60%;font-size:10px;}
}

body.single-product.city-store-child-simple-product .city-store-child-product-wrap .cp-short-desc-content ul{
    list-style:disc outside !important;
    margin:0 !important;
    padding:0 0 0 16px !important;
    line-height:18px !important;
}
body.single-product.city-store-child-simple-product .city-store-child-product-wrap .cp-short-desc-content ul li{
    display:list-item !important;
    padding:0 0 0 5px !important;
    font-family:var(--font-regular) !important;
    font-size:13px !important;
    font-weight:400 !important;
    line-height:18px !important;
    color:#565656 !important;
}
body.single-product.city-store-child-simple-product .city-store-child-product-wrap .cp-short-desc-content ul li::marker{
    content:normal !important;
    color:#565656 !important;
}
body.single-product.city-store-child-simple-product .city-store-child-product-wrap .cp-short-desc-content ul li *,
body.single-product.city-store-child-simple-product .city-store-child-product-wrap .cp-short-desc-content ul li *::before,
body.single-product.city-store-child-simple-product .city-store-child-product-wrap .cp-short-desc-content ul li *::after{
    font-family:var(--font-regular) !important;
    font-size:13px !important;
    font-weight:400 !important;
    line-height:18px !important;
    color:#565656 !important;
}
body.single-product.city-store-child-simple-product .city-store-child-product-wrap .cp-short-desc-content ul li strong,
body.single-product.city-store-child-simple-product .city-store-child-product-wrap .cp-short-desc-content ul li strong *{
    font-family:var(--font-bold) !important;
    font-weight:700 !important;
    color:#333 !important;
}
body.single-product.city-store-child-simple-product .city-store-child-product-wrap .cp-short-desc-content ul.product-caracteristic li .product-componente{
    font-weight:600 !important;
}
