:root{--navy:#00366e;--deep:#00234b;--blue:#0069bd;--sky:#08a7e2;--orange:#ff7900;--orange2:#ff9b18;--ink:#12233a;--muted:#65758a;--line:#e3eaf1;--soft:#f4f8fb;--white:#fff;--shadow:0 18px 50px rgba(0,45,88,.1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font:14px 'Manrope',sans-serif}body.cart-open{overflow:hidden}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}.announcement{height:31px;background:var(--deep);color:#cae7ff;display:flex;justify-content:center;align-items:center;gap:28px;font-size:10px;letter-spacing:.11em;text-transform:uppercase}.announcement span{color:var(--orange)}.store-header{height:91px;background:#fff;display:grid;grid-template-columns:210px 1fr auto;align-items:center;padding:0 max(24px,calc((100vw - 1320px)/2));gap:30px;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50}.store-logo{height:78px;display:flex;align-items:center}.store-logo img{width:185px;height:72px;object-fit:contain}.store-header nav{display:flex;justify-content:center;gap:34px;font-weight:700;font-size:12px}.store-header nav a{padding:35px 0;position:relative}.store-header nav a:after{content:'';position:absolute;left:0;right:100%;bottom:25px;height:2px;background:var(--orange);transition:.25s}.store-header nav a:hover:after{right:0}.header-actions{display:flex;align-items:center;gap:12px}.header-search{display:flex;border:1px solid var(--line);border-radius:24px;overflow:hidden;background:var(--soft)}.header-search input{width:190px;border:0;background:transparent;padding:10px 4px 10px 16px;outline:none;font-size:11px}.header-search button{border:0;background:none;padding:0 13px;color:var(--blue);font-size:18px}.cart-trigger{width:43px;height:43px;border:0;border-radius:50%;background:var(--navy);color:white;cursor:pointer;position:relative}.cart-trigger b{position:absolute;right:-4px;top:-5px;background:var(--orange);color:white;border:2px solid white;border-radius:50%;font-size:9px;width:20px;height:20px;display:grid;place-items:center}.hero{height:610px;position:relative;overflow:hidden;background:var(--deep)}.hero-slide{display:none;height:100%;padding:max(55px,7vh) max(30px,calc((100vw - 1200px)/2));background:linear-gradient(90deg,rgba(0,28,62,.95),rgba(0,52,99,.72),rgba(0,35,75,.2)),var(--hero-image) center/cover}.hero-slide.active{display:block}.hero-copy{width:min(610px,52vw);height:100%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;position:relative;z-index:2}.hero-copy>span,.section-title small,.catalog-hero small,.checkout-title small,.success-page>small{font-size:10px;letter-spacing:.2em;color:var(--orange2);font-weight:800}.hero h1{font-size:clamp(44px,5.4vw,76px);line-height:1.02;letter-spacing:-.045em;color:white;margin:17px 0 20px}.hero p{font-size:16px;line-height:1.7;color:#c7dcef;max-width:530px;margin:0 0 30px}.shop-primary,.shop-secondary{display:inline-flex;justify-content:center;align-items:center;border:0;border-radius:7px;background:linear-gradient(135deg,var(--orange2),var(--orange));color:#fff;padding:14px 22px;font-weight:800;font-size:12px;cursor:pointer;box-shadow:0 8px 24px rgba(255,112,0,.25);transition:.2s}.shop-primary:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(255,112,0,.34)}.default-hero{display:none;background:radial-gradient(circle at 78% 45%,rgba(0,166,230,.3),transparent 17%),linear-gradient(110deg,#001b3d,#00569b)}.default-hero.active{display:flex}.hero-light{position:absolute;right:10%;top:8%;width:470px;height:470px;border-radius:50%;border:1px solid rgba(47,184,245,.3);display:grid;place-items:center;color:white}.hero-light:before,.hero-light:after{content:'';position:absolute;border:1px solid rgba(255,255,255,.13);border-radius:50%;inset:45px}.hero-light:after{inset:100px;box-shadow:0 0 100px rgba(0,186,255,.6)}.hero-light i{width:3px;height:470px;position:absolute;background:linear-gradient(transparent,#ff8a00,transparent);transform:rotate(35deg)}.hero-light b{font-size:82px;letter-spacing:.1em;opacity:.1}.trust{max-width:1200px;margin:-36px auto 0;background:#fff;border-radius:10px;box-shadow:var(--shadow);display:grid;grid-template-columns:repeat(4,1fr);position:relative;z-index:4}.trust>div{padding:22px;display:flex;gap:13px;align-items:center;border-right:1px solid var(--line)}.trust>div:last-child{border:0}.trust b{font-size:20px;color:var(--orange)}.trust span strong,.trust span{display:block}.trust span{color:var(--muted);font-size:9px}.trust span strong{color:var(--ink);font-size:11px;margin-bottom:3px}.shop-section{max-width:1200px;margin:95px auto;padding:0 20px}.section-title{display:flex;justify-content:space-between;align-items:end;margin-bottom:30px}.section-title small{color:var(--blue)}.section-title h2{font-size:32px;letter-spacing:-.03em;margin:8px 0 0}.section-title>a{font-size:11px;color:var(--blue);font-weight:800}.category-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}.category-card{height:220px;border-radius:12px;overflow:hidden;position:relative;background:var(--navy)}.category-card:after{content:'';position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(0,25,55,.9))}.category-card img,.category-placeholder{width:100%;height:100%;object-fit:cover;transition:.35s}.category-placeholder{display:grid;place-items:center;color:#33b7ef;font-size:50px;background:radial-gradient(circle,#0d6caf,#002c60)}.category-card:hover img{transform:scale(1.06)}.category-card>span{position:absolute;z-index:2;left:20px;right:20px;bottom:18px;color:white}.category-card>span strong,.category-card>span small{display:block}.category-card>span strong{font-size:16px}.category-card>span small{font-size:9px;color:#b9daf1;margin-top:5px}.products-section{margin-top:110px}.products-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.product-card{border:1px solid var(--line);border-radius:11px;background:white;overflow:hidden;transition:.25s}.product-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:#c9dded}.product-photo{height:250px;display:grid;place-items:center;background:#f5f8fb;position:relative;overflow:hidden}.product-photo img{width:100%;height:100%;object-fit:contain;transition:.3s}.product-card:hover .product-photo img{transform:scale(1.04)}.product-photo>span{font-size:60px}.discount{position:absolute;left:12px;top:12px;background:var(--orange);color:#fff;padding:5px 8px;border-radius:4px;font-size:8px;letter-spacing:.08em}.product-info{padding:17px}.product-info>small{font-size:8px;letter-spacing:.14em;color:var(--blue);font-weight:800}.product-info h3{font-size:14px;height:39px;margin:7px 0 12px;line-height:1.4}.product-price{min-height:44px}.product-price del{display:block;color:#9aa6b4;font-size:10px}.product-price strong{font-size:18px;color:var(--navy)}.add-cart-form button{width:100%;border:1px solid var(--navy);border-radius:6px;background:white;color:var(--navy);padding:10px;font-weight:800;font-size:10px;cursor:pointer;transition:.2s}.add-cart-form button:hover{background:var(--navy);color:white}.add-cart-form button:disabled{opacity:.4;cursor:not-allowed}.energy-banner{max-width:1200px;margin:100px auto;background:linear-gradient(110deg,#002b59,#0066ad);border-radius:13px;padding:44px 55px;display:flex;align-items:center;justify-content:space-between;color:#fff;position:relative;overflow:hidden}.energy-banner:after{content:'⚡';position:absolute;right:27%;font-size:150px;opacity:.07}.energy-banner small{color:#ff9d25;font-weight:800;letter-spacing:.15em}.energy-banner h2{font-size:31px;margin:8px 0}.energy-banner p{color:#b7d7ed;margin:0}.shop-secondary{background:#fff;color:var(--navy);box-shadow:none}.store-footer{background:#f5f8fb;border-top:1px solid var(--line);padding:55px max(30px,calc((100vw - 1200px)/2));display:grid;grid-template-columns:2fr 1fr 1fr;gap:80px}.store-footer img{width:210px;height:100px;object-fit:contain}.store-footer p{color:var(--muted)}.store-footer>div{display:flex;flex-direction:column;gap:10px}.store-footer strong{color:var(--navy)}.store-footer a,.store-footer span{font-size:11px;color:var(--muted)}.catalog-hero{background:linear-gradient(115deg,#00224b,#0066af);color:white;padding:65px max(30px,calc((100vw - 1200px)/2))}.catalog-hero h1{font-size:48px;line-height:1.05;margin:12px 0}.catalog-hero p{color:#bad8eb}.catalog-layout{max-width:1240px;margin:50px auto 100px;padding:0 20px;display:grid;grid-template-columns:230px 1fr;gap:35px}.filters{border:1px solid var(--line);border-radius:10px;padding:20px;height:max-content;position:sticky;top:115px}.filter-title{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:14px}.filter-title h3{margin:0}.filter-title a{color:var(--orange);font-size:9px}.filters label{font-size:10px;font-weight:800;display:block;margin-top:18px}.filters input,.filters select,.catalog-toolbar select{width:100%;border:1px solid var(--line);border-radius:6px;padding:10px;margin-top:6px;background:#fff}.price-filter{display:grid;grid-template-columns:1fr 1fr;gap:8px}.filters .shop-primary{width:100%;margin-top:22px}.catalog-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.catalog-toolbar p{color:var(--muted)}.catalog-toolbar select{width:170px;margin:0}.catalog-grid{grid-template-columns:repeat(3,1fr)}.store-empty{text-align:center;padding:100px 20px;background:var(--soft);border-radius:12px}.store-empty>span{font-size:35px}.store-empty h2{color:var(--navy)}.store-empty a{color:var(--orange);font-weight:800}.product-detail{max-width:1200px;margin:60px auto 100px;padding:0 20px;display:grid;grid-template-columns:1fr 1fr;gap:65px}.detail-image{height:560px;background:var(--soft);border-radius:12px;display:grid;place-items:center}.detail-image img{width:100%;height:100%;object-fit:contain}.detail-image>span{font-size:100px}.detail-info nav{font-size:9px;color:var(--muted);margin-bottom:50px}.detail-info>small{font-size:9px;color:var(--blue);letter-spacing:.16em;font-weight:800}.detail-info h1{font-size:42px;line-height:1.12;color:var(--navy);margin:12px 0 18px}.detail-price del{color:#98a6b7}.detail-price strong{display:block;font-size:31px;color:var(--navy);margin-top:4px}.detail-info>p{color:var(--muted);line-height:1.8;border-top:1px solid var(--line);padding-top:22px}.availability{font-size:11px;font-weight:800;margin:18px 0}.availability.in{color:#148259}.availability.out{color:#b64040}.detail-cart{display:flex;gap:12px}.detail-cart label{font-size:9px}.detail-cart input{display:block;width:75px;padding:13px 10px;border:1px solid var(--line);border-radius:6px;margin-top:6px}.detail-cart button{flex:1;margin-top:15px;background:var(--orange);border-color:var(--orange);color:#fff}.detail-benefits{display:flex;gap:20px;margin-top:25px;border-top:1px solid var(--line);padding-top:20px;font-size:9px;color:var(--muted)}.checkout-page{max-width:1180px;margin:55px auto 100px;padding:0 20px}.checkout-title h1{font-size:39px;color:var(--navy);margin:8px 0 30px}.checkout-error{background:#fff0eb;color:#a64321;padding:14px;border-radius:7px;margin-bottom:20px}.checkout-grid{display:grid;grid-template-columns:1.4fr .8fr;gap:28px}.checkout-fields{display:grid;gap:22px}.checkout-fields article,.order-summary{border:1px solid var(--line);border-radius:10px;padding:25px;background:#fff}.checkout-fields h2,.order-summary h2{margin:0 0 22px;font-size:17px}.checkout-fields h2 b{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#e6f2fc;color:var(--blue);margin-right:7px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.field-grid label{font-size:10px;font-weight:800}.field-grid label.full{grid-column:1/-1}.field-grid input,.field-grid textarea{display:block;width:100%;border:1px solid var(--line);border-radius:6px;padding:12px;margin-top:6px}.field-grid textarea{height:80px}.payment-options{display:grid;gap:10px}.payment-options label{border:1px solid var(--line);border-radius:8px;padding:16px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;cursor:pointer}.payment-options label:has(input:checked){border-color:var(--blue);background:#f1f8fe}.payment-options span strong,.payment-options span small{display:block}.payment-options span small{font-size:9px;color:var(--muted);margin-top:3px}.payment-options em{font-style:normal;color:var(--blue);font-weight:800}.order-summary{height:max-content;position:sticky;top:115px}.summary-item{display:grid;grid-template-columns:auto 1fr auto;gap:11px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);font-size:10px}.summary-img{width:50px;height:50px;background:var(--soft);display:grid;place-items:center;position:relative}.summary-img img{width:100%;height:100%;object-fit:contain}.summary-img b{position:absolute;right:-6px;top:-6px;background:var(--navy);color:white;border-radius:50%;width:18px;height:18px;display:grid;place-items:center}.summary-item span:nth-child(2) small{display:block;color:var(--muted);margin-top:3px}.summary-totals{padding:15px 0}.summary-totals p{display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.summary-totals .grand{border-top:1px solid var(--line);padding-top:14px;color:var(--ink)}.summary-totals .grand strong{font-size:20px;color:var(--navy)}.order-summary .shop-primary{width:100%}.checkout-safe{display:block;text-align:center;color:var(--muted);margin-top:13px}.success-page{max-width:650px;margin:100px auto;text-align:center;padding:20px}.success-icon{width:80px;height:80px;border-radius:50%;background:#e1f5eb;color:#138253;display:grid;place-items:center;font-size:35px;margin:0 auto 25px}.success-page h1{font-size:42px;color:var(--navy)}.success-page p{line-height:1.8;color:var(--muted)}.success-actions{display:flex;justify-content:center;align-items:center;gap:25px;margin-top:30px}.cart-overlay{position:fixed;inset:0;background:rgba(0,20,45,.5);backdrop-filter:blur(3px);z-index:99;opacity:0;visibility:hidden;transition:.3s}.cart-drawer{position:fixed;right:0;top:0;bottom:0;width:min(440px,100%);background:#fff;z-index:100;transform:translateX(105%);transition:.4s cubic-bezier(.22,.75,.2,1);display:flex;flex-direction:column;box-shadow:-20px 0 60px rgba(0,20,45,.2)}.cart-open .cart-overlay{opacity:1;visibility:visible}.cart-open .cart-drawer{transform:none}.cart-head{padding:25px;display:flex;justify-content:space-between;border-bottom:1px solid var(--line)}.cart-head small{color:var(--orange);font-weight:800;letter-spacing:.15em}.cart-head h2{margin:5px 0 0}.cart-close{border:0;background:var(--soft);border-radius:50%;font-size:23px;width:38px;height:38px;cursor:pointer}.cart-body{padding:10px 25px;overflow:auto;flex:1}.cart-item{display:grid;grid-template-columns:70px 1fr auto;gap:12px;padding:16px 0;border-bottom:1px solid var(--line);animation:cartIn .35s}.cart-item img,.cart-item .no-image{width:70px;height:70px;object-fit:contain;background:var(--soft);display:grid;place-items:center}.cart-item h4{margin:3px 0 8px;font-size:12px}.cart-item small{color:var(--muted)}.qty-control{display:flex;align-items:center;border:1px solid var(--line);width:max-content;border-radius:5px;margin-top:8px}.qty-control button{border:0;background:none;width:26px;height:26px;cursor:pointer}.qty-control span{font-size:10px}.remove-cart{border:0;background:none;color:#a36a6a;cursor:pointer}.cart-empty{text-align:center;padding:80px 20px;color:var(--muted)}.cart-empty b{display:block;font-size:40px;margin-bottom:10px}.cart-foot{padding:22px 25px;border-top:1px solid var(--line)}.cart-foot>div{display:flex;justify-content:space-between;font-size:16px;margin-bottom:18px}.cart-foot .shop-primary{width:100%}.continue-shopping{display:block;margin:12px auto 0;border:0;background:none;color:var(--muted);font-size:10px;cursor:pointer}.toast{position:fixed;left:50%;bottom:25px;transform:translate(-50%,30px);background:var(--deep);color:white;padding:12px 20px;border-radius:6px;z-index:110;opacity:0;transition:.3s;font-size:11px}.toast.show{opacity:1;transform:translate(-50%,0)}@keyframes cartIn{from{opacity:0;transform:translateX(15px)}}
@media(max-width:1000px){.store-header{grid-template-columns:150px 1fr}.store-header nav{display:none}.header-search{display:none}.header-actions{justify-content:end}.hero{height:540px}.trust{margin:0;border-radius:0}.category-grid,.products-grid{grid-template-columns:repeat(2,1fr)}.catalog-grid{grid-template-columns:repeat(2,1fr)}.product-detail{gap:30px}.checkout-grid{grid-template-columns:1fr}.order-summary{position:static}.hero-light{opacity:.4}.store-footer{gap:30px}}
@media(max-width:650px){.announcement{font-size:8px}.store-header{height:75px;padding:0 16px}.store-logo{height:65px}.store-logo img{width:140px;height:60px}.hero{height:500px}.hero-slide{padding:45px 22px}.hero-copy{width:100%}.hero h1{font-size:43px}.hero-light{right:-220px}.trust{grid-template-columns:1fr 1fr}.trust>div{padding:15px}.shop-section{margin:65px auto}.category-grid{grid-template-columns:1fr 1fr}.category-card{height:170px}.products-grid{grid-template-columns:1fr 1fr;gap:9px}.product-photo{height:180px}.product-info{padding:12px}.energy-banner{margin:60px 15px;padding:30px;display:block}.energy-banner .shop-secondary{margin-top:20px}.store-footer{grid-template-columns:1fr;padding:40px 25px}.catalog-hero{padding:45px 20px}.catalog-layout{display:block;margin-top:25px}.filters{position:static;margin-bottom:25px}.catalog-grid{grid-template-columns:1fr 1fr}.product-detail{display:block;margin-top:25px}.detail-image{height:360px}.detail-info nav{margin:25px 0}.detail-info h1{font-size:32px}.detail-benefits{flex-direction:column;gap:8px}.checkout-page{margin-top:30px}.field-grid{grid-template-columns:1fr}.field-grid label.full{grid-column:auto}.hero-copy p{font-size:14px}.section-title h2{font-size:25px}}


/* =========================================================
   HOME · CATEGORÍAS
   6 por fila en escritorio + imagen autoajustada
   ========================================================= */
@media (min-width: 1101px){
    #categorias .category-grid{
        display:grid !important;
        grid-template-columns:repeat(6,minmax(0,1fr)) !important;
        gap:14px !important;
        width:100% !important;
    }

    #categorias .category-card{
        min-width:0 !important;
        width:100% !important;
        height:190px !important;
    }
}

#categorias .category-card{
    background:#00366e;
}

#categorias .category-card img{
    width:100% !important;
    height:100% !important;
    object-fit:contain !important;
    object-position:center center !important;
    padding:6px !important;
    transform:none !important;
}

#categorias .category-card:hover img{
    transform:scale(1.015) !important;
}

/* Tablet */
@media (min-width: 651px) and (max-width: 1100px){
    #categorias .category-grid{
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    }

    #categorias .category-card{
        height:190px !important;
    }
}

/* Celular */
@media (max-width:650px){
    #categorias .category-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }

    #categorias .category-card{
        height:165px !important;
    }
}


/* =========================================================
   PRODUCTOS · imágenes autoajustadas
   Mantiene cualquier proporción sin recortar ni hacer zoom.
   ========================================================= */
.product-photo{
    background:#f5f8fb !important;
    padding:14px !important;
}

.product-photo img{
    width:100% !important;
    height:100% !important;
    max-width:100% !important;
    max-height:100% !important;
    object-fit:contain !important;
    object-position:center center !important;
    transform:none !important;
}

.product-card:hover .product-photo img{
    transform:scale(1.015) !important;
}

.detail-image{
    padding:24px !important;
    overflow:hidden !important;
}

.detail-image img{
    width:100% !important;
    height:100% !important;
    max-width:100% !important;
    max-height:100% !important;
    object-fit:contain !important;
    object-position:center center !important;
}

.summary-img img,
.cart-item img{
    object-fit:contain !important;
    object-position:center !important;
    padding:4px !important;
}


/* =========================================================
   PRODUCTOS · selector de cantidad en tarjetas y detalle
   ========================================================= */
.product-card-cart{
    display:grid;
    gap:10px;
    margin-top:auto;
}

.product-qty{
    display:grid;
    grid-template-columns:36px 44px 36px;
    align-items:center;
    width:max-content;
    border:1px solid #cfdce8;
    border-radius:8px;
    overflow:hidden;
    background:#fff;
}

.product-qty button{
    width:36px;
    height:34px;
    border:0 !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:0 !important;
    background:#f5f8fb !important;
    color:#003b72 !important;
    font-size:18px;
    font-weight:700;
    cursor:pointer;
}

.product-qty button:hover{
    background:#eaf3fa !important;
}

.product-qty input{
    width:44px !important;
    height:34px;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-left:1px solid #dbe5ee !important;
    border-right:1px solid #dbe5ee !important;
    border-radius:0 !important;
    background:#fff;
    text-align:center;
    color:#002f5f;
    font-size:13px;
    font-weight:800;
    appearance:textfield;
    -moz-appearance:textfield;
}

.product-qty input::-webkit-inner-spin-button,
.product-qty input::-webkit-outer-spin-button{
    -webkit-appearance:none;
    margin:0;
}

.product-card-cart .product-qty{
    margin-top:3px;
}

.product-card-cart .add-cart-button{
    width:100%;
}

.detail-cart{
    align-items:end;
}

.detail-cart>div:first-child{
    flex:0 0 auto;
}

.detail-qty-label{
    display:block;
    margin-bottom:6px;
    font-size:9px;
    font-weight:800;
}

.detail-qty{
    grid-template-columns:40px 50px 40px;
}

.detail-qty button{
    width:40px;
    height:42px;
}

.detail-qty input{
    width:50px !important;
    height:42px;
}

@media(max-width:650px){
    .product-qty{
        grid-template-columns:32px 38px 32px;
    }
    .product-qty button{width:32px;height:32px}
    .product-qty input{width:38px !important;height:32px}
}


/* PRODUCTOS · centrar selector de cantidad */
.product-card .product-card-cart .product-qty{
    margin-left:auto !important;
    margin-right:auto !important;
}

/* =========================================================
   COMPRA REALIZADA · transferencia bancaria
   ========================================================= */
.success-page{
    max-width:760px !important;
}
.success-page .success-intro{
    max-width:680px;
    margin:18px auto 0;
}
.transfer-card{
    margin:30px auto 0;
    width:100%;
    max-width:680px;
    border:1px solid #d9e5ef;
    border-radius:14px;
    background:#fff;
    text-align:left;
    overflow:hidden;
    box-shadow:0 14px 35px rgba(0,48,91,.07);
}
.transfer-card-head{
    display:flex;
    align-items:center;
    gap:14px;
    padding:20px 22px;
    background:#f6faff;
    border-bottom:1px solid #e1eaf2;
}
.transfer-bank-icon{
    width:42px;
    height:42px;
    border-radius:10px;
    display:grid;
    place-items:center;
    background:#e3f2ff;
    color:#0066b2;
    font-size:20px;
    font-weight:900;
}
.transfer-card-head small{
    display:block;
    margin-bottom:3px;
    color:#ff8708;
    font-size:8px;
    font-weight:900;
    letter-spacing:.16em;
}
.transfer-card-head h2{
    margin:0;
    color:#003b72;
    font-size:18px;
}
.transfer-data-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0;
    padding:8px 22px 12px;
}
.transfer-data-item{
    min-width:0;
    padding:16px 12px;
    border-bottom:1px solid #edf2f6;
}
.transfer-data-item span{
    display:block;
    color:#7a8da1;
    font-size:9px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.08em;
    margin-bottom:6px;
}
.transfer-data-item strong{
    display:block;
    color:#002f5f;
    font-size:15px;
    line-height:1.35;
    word-break:break-word;
}
.transfer-copy-row{
    position:relative;
    padding-right:78px;
}
.transfer-copy-row button{
    position:absolute;
    right:10px;
    top:50%;
    transform:translateY(-50%);
    border:1px solid #bfd7ea;
    background:#fff;
    color:#0066b2;
    border-radius:7px;
    padding:7px 9px;
    font-size:9px;
    font-weight:800;
    cursor:pointer;
}
.transfer-copy-row button:hover{
    background:#eef7ff;
}
.transfer-note{
    display:flex;
    gap:10px;
    align-items:flex-start;
    margin:0 22px 22px;
    padding:12px 14px;
    background:#fff8ed;
    border:1px solid #ffe0b5;
    border-radius:9px;
}
.transfer-note>span{
    width:20px;
    height:20px;
    flex:0 0 20px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#ff8a00;
    color:#fff;
    font-size:11px;
    font-weight:900;
}
.transfer-note p{
    margin:0 !important;
    color:#76562f !important;
    font-size:10px;
    line-height:1.55 !important;
}
@media(max-width:650px){
    .transfer-data-grid{grid-template-columns:1fr}
    .transfer-card-head{padding:17px}
    .transfer-data-grid{padding:6px 14px 10px}
    .transfer-note{margin:0 14px 16px}
}


/* =========================================================
   FILTROS CATÁLOGO · marca + rango dinámico de precio
   ========================================================= */
.price-range-box{
    display:grid;
    gap:12px;
}

.price-range-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
}

.price-range-head strong{
    font-size:12px;
    color:#173a5c;
}

.price-range-head span{
    font-size:10px;
    color:#6e8295;
    white-space:nowrap;
}

.price-range-inputs{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
}

.price-range-inputs label{
    min-width:0;
}

.price-range-inputs input{
    width:100%;
}

.dual-price-range{
    position:relative;
    height:30px;
    margin:2px 2px 0;
}

.dual-price-track,
.dual-price-fill{
    position:absolute;
    left:0;
    right:0;
    top:13px;
    height:4px;
    border-radius:999px;
}

.dual-price-track{
    background:#dce6ee;
}

.dual-price-fill{
    background:#ff8500;
}

.dual-price-range input[type="range"]{
    position:absolute;
    inset:0;
    width:100%;
    height:30px;
    margin:0;
    padding:0;
    border:0;
    background:transparent;
    pointer-events:none;
    appearance:none;
    -webkit-appearance:none;
}

.dual-price-range input[type="range"]::-webkit-slider-thumb{
    width:18px;
    height:18px;
    border:3px solid #fff;
    border-radius:50%;
    background:#ff8500;
    box-shadow:0 0 0 1px #ff8500;
    cursor:pointer;
    pointer-events:auto;
    appearance:none;
    -webkit-appearance:none;
}

.dual-price-range input[type="range"]::-moz-range-thumb{
    width:14px;
    height:14px;
    border:3px solid #fff;
    border-radius:50%;
    background:#ff8500;
    box-shadow:0 0 0 1px #ff8500;
    cursor:pointer;
    pointer-events:auto;
}

.price-range-limits{
    display:flex;
    justify-content:space-between;
    gap:10px;
    color:#8a99a8;
    font-size:9px;
}

.filters select[name="marca"]{
    width:100%;
}

/* Checkout · cotización OCA */
.oca-checkout-box{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:16px;padding:14px 16px;border:1px solid #d6e5f1;border-radius:10px;background:#f5faff}
.oca-checkout-box>div{display:grid;gap:4px}.oca-checkout-box strong{color:#073b6d;font-size:12px}.oca-checkout-box span{color:#6e8397;font-size:10px;line-height:1.45}
.oca-checkout-box button{flex:0 0 auto;min-height:38px;padding:0 14px;border:1px solid #0b75bd;border-radius:8px;background:#fff;color:#086dae;font-weight:800;cursor:pointer}
.oca-checkout-box button:disabled{opacity:.55;cursor:wait}#confirm-order:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:650px){.oca-checkout-box{align-items:stretch;flex-direction:column}.oca-checkout-box button{width:100%}}


/* Checkout · múltiples empresas de envío */
.shipping-quote-box{
    margin-top:16px;
    padding:14px 16px;
    border:1px solid #d6e5f1;
    border-radius:10px;
    background:#f5faff;
}
.shipping-quote-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
}
.shipping-quote-head>div{display:grid;gap:4px}
.shipping-quote-head strong{color:#073b6d;font-size:12px}
.shipping-quote-head span{color:#6e8397;font-size:10px;line-height:1.45}
.shipping-quote-head button{
    flex:0 0 auto;
    min-height:38px;
    padding:0 14px;
    border:1px solid #0b75bd;
    border-radius:8px;
    background:#fff;
    color:#086dae;
    font-weight:800;
    cursor:pointer;
}
.shipping-options{
    display:grid;
    gap:8px;
    margin-top:12px;
}
.shipping-option{
    display:grid !important;
    grid-template-columns:auto 1fr auto;
    align-items:center;
    gap:12px;
    padding:12px 13px;
    border:1px solid #dbe6ee;
    border-radius:9px;
    background:#fff;
    cursor:pointer;
}
.shipping-option:has(input:checked){
    border-color:#ff8500;
    box-shadow:0 0 0 1px #ff8500;
}
.shipping-option input{margin:0}
.shipping-option>span{display:grid;gap:2px}
.shipping-option>span strong{font-size:12px;color:#0b365f}
.shipping-option>span small{font-size:9px;color:#72879a}
.shipping-option>b{font-size:12px;color:#003e78}
@media(max-width:650px){
    .shipping-quote-head{align-items:stretch;flex-direction:column}
    .shipping-quote-head button{width:100%}
}


/* Uber Direct */
.shipping-option input[value="uber"] + span strong::after{
    content:"LOCAL / RÁPIDO";
    display:inline-block;
    margin-left:7px;
    padding:2px 5px;
    border-radius:999px;
    background:#eef7f2;
    color:#357253;
    font-size:7px;
    vertical-align:middle;
}

.shipping-option input[value="local"] + span strong::after{
    content:"PRECIO APROX.";
    display:inline-block;margin-left:7px;padding:2px 6px;border-radius:999px;
    background:#fff1df;color:#b55a00;font-size:7px;vertical-align:middle;
}


/* STORE · Variantes */
.product-variant-selector{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}
.product-variant-selector label{display:grid;gap:6px}
.product-variant-selector label>span{font-size:10px;font-weight:800;color:#244b70}
.product-variant-selector select{width:100%;min-height:44px;padding:0 12px;border:1px solid #d4e0e9;border-radius:8px;background:#fff;color:#11395e;font:inherit}
.variant-selection-note{grid-column:1/-1;padding:9px 11px;border-radius:8px;background:#f5f8fb;color:#71869a;font-size:10px}
.from-price{display:block!important;margin-bottom:2px;color:#8494a4!important;font-size:8px!important;text-transform:uppercase}
.variant-card-button{display:flex!important;align-items:center;justify-content:center;text-decoration:none;margin-top:auto}
.cart-variant{display:block;color:#56758e!important;font-weight:700}
.order-variant-detail{display:block!important;color:#51718c!important;font-weight:700;margin-top:3px!important}
@media(max-width:600px){.product-variant-selector{grid-template-columns:1fr}}


/* =========================================================
   PRODUCT CARD · variantes UI refinado
   ========================================================= */
.product-card{height:100%;display:flex;flex-direction:column}
.product-card .product-info{display:flex;flex-direction:column;flex:1;min-height:285px}
.product-card .product-info>a h3{min-height:45px;margin-bottom:0}
.product-card-spacer{flex:1;min-height:8px}
.product-card-has-variants .product-info{padding-bottom:20px}
.variant-photo-badge{
    position:absolute;top:12px;right:12px;
    padding:5px 8px;border-radius:999px;
    background:rgba(0,55,105,.92);color:#fff;
    font-size:8px;letter-spacing:.08em;font-weight:800;
}
.variant-card-price{display:grid;gap:2px;margin-top:10px}
.variant-card-price>span{
    color:#7e91a3;font-size:9px;font-weight:800;
    letter-spacing:.08em;text-transform:uppercase;
}
.variant-card-price>strong{
    color:#003e78;font-size:24px;line-height:1.15;
    letter-spacing:-.03em;
}
.variant-card-meta{
    display:flex;align-items:center;gap:7px;
    min-height:30px;margin:8px 0 12px;
    color:#627b92;font-size:10px;font-weight:600;
}
.variant-card-dot{
    width:7px;height:7px;flex:0 0 7px;border-radius:50%;
    background:#32a86b;box-shadow:0 0 0 3px rgba(50,168,107,.12);
}
.variant-card-button{
    width:100%;min-height:44px!important;
    display:flex!important;align-items:center!important;justify-content:center!important;
    gap:8px;margin-top:auto!important;
    border:1px solid #064b84!important;border-radius:8px!important;
    background:#064b84!important;color:#fff!important;
    font-size:11px!important;font-weight:800!important;text-decoration:none!important;
    transition:transform .15s ease,background .15s ease,box-shadow .15s ease;
}
.variant-card-button:hover{
    background:#003c70!important;transform:translateY(-1px);
    box-shadow:0 7px 16px rgba(0,61,112,.14);
}
.variant-card-button svg{
    width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;
    stroke-linecap:round;stroke-linejoin:round;
}
.cart-variant-badge{
    display:inline-flex!important;width:max-content;max-width:100%;
    margin:3px 0 5px;padding:4px 7px;border-radius:6px;
    background:#eef5fb;color:#155a8e!important;
    font-size:9px!important;font-weight:800!important;line-height:1.2;
}
.cart-item-copy{min-width:0}

/* Selector de variantes más claro */
.product-variant-selector{
    padding:16px;border:1px solid #dbe6ef;border-radius:12px;background:#f8fbfd;
}
.product-variant-selector select:focus{
    border-color:#0874bd;outline:0;box-shadow:0 0 0 3px rgba(8,116,189,.10);
}
.variant-selection-note{
    border:1px solid #e4ebf1;background:#fff!important;
}
.detail-cart button[data-add-variant-cart]:disabled{opacity:.45;cursor:not-allowed}


/* =========================================================
   CARRITO MODERNO
   ========================================================= */
.cart-trigger{
    display:grid!important;
    place-items:center;
    transition:transform .2s ease,box-shadow .2s ease!important;
}
.cart-trigger svg{
    width:20px;height:20px;
    fill:none;stroke:currentColor;stroke-width:1.8;
    stroke-linecap:round;stroke-linejoin:round;
}
.cart-trigger:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,54,110,.22)}
.cart-trigger.cart-bump{animation:cartBump .62s cubic-bezier(.2,.8,.2,1)}
.cart-trigger.cart-bump b{animation:cartCountPop .62s cubic-bezier(.2,.8,.2,1)}

.cart-overlay{
    background:rgba(0,21,46,.46)!important;
    backdrop-filter:blur(6px)!important;
}

.cart-drawer{
    width:min(470px,100%)!important;
    background:#fbfdff!important;
    transition:.46s cubic-bezier(.16,1,.3,1)!important;
    box-shadow:-28px 0 80px rgba(0,31,67,.2)!important;
}

.cart-head{
    min-height:88px;
    padding:20px 22px!important;
    align-items:center;
    gap:12px;
    background:#fff;
}
.cart-head-icon{
    width:42px;height:42px;flex:0 0 42px;
    display:grid;place-items:center;
    border-radius:12px;
    background:#eaf5fd;color:#0067a9;
}
.cart-head-icon svg,.cart-close svg,.remove-cart svg,.cart-checkout-button svg,.cart-empty-icon svg{
    fill:none;stroke:currentColor;stroke-width:1.8;
    stroke-linecap:round;stroke-linejoin:round;
}
.cart-head-icon svg{width:21px;height:21px}
.cart-head>div:nth-child(2){flex:1}
.cart-head h2{font-size:21px;letter-spacing:-.035em;color:#052f58}
.cart-head h2 span{color:#8396a8;font-size:12px;font-weight:600}
.cart-close{
    width:38px!important;height:38px!important;
    display:grid;place-items:center;
    background:#f2f6f9!important;
    color:#31526f;
    transition:.2s;
}
.cart-close:hover{background:#e7eff5!important;transform:rotate(5deg)}
.cart-close svg{width:17px;height:17px}

.cart-benefit{
    display:flex;
    align-items:center;
    gap:10px;
    margin:14px 20px 5px;
    padding:11px 13px;
    border:1px solid #dce9f2;
    border-radius:11px;
    background:#f4faff;
}
.cart-benefit-icon{
    width:27px;height:27px;flex:0 0 27px;
    display:grid;place-items:center;border-radius:50%;
    background:#ddf5e9;color:#147a51;font-weight:900;
}
.cart-benefit strong,.cart-benefit small{display:block}
.cart-benefit strong{font-size:10px;color:#173f62}
.cart-benefit small{font-size:8px;color:#7990a3;margin-top:1px}

.cart-body{
    padding:8px 20px 16px!important;
    scrollbar-width:thin;
}
.cart-item{
    grid-template-columns:78px minmax(0,1fr) 30px!important;
    align-items:start;
    gap:13px!important;
    margin:9px 0;
    padding:13px!important;
    border:1px solid #e0e9f0!important;
    border-radius:13px;
    background:#fff;
    box-shadow:0 5px 18px rgba(0,48,84,.035);
    animation:modernCartIn .42s both!important;
    animation-delay:calc(var(--cart-index,0) * 45ms)!important;
}
.cart-item-image{
    width:78px;height:78px;
    display:grid;place-items:center;
    border-radius:10px;
    overflow:hidden;
    background:#f4f8fb;
}
.cart-item-image img,.cart-item-image .no-image{
    width:100%!important;height:100%!important;
    object-fit:contain;padding:6px;
}
.cart-item-copy{min-width:0}
.cart-item h4{
    margin:2px 0 5px!important;
    color:#092f55;
    font-size:11px!important;
    line-height:1.35;
}
.cart-variant-badge{
    display:inline-flex!important;
    max-width:100%;
    margin:1px 0 8px!important;
    padding:4px 7px!important;
    border-radius:6px!important;
    background:#edf6fd!important;
    color:#0a659e!important;
    font-size:8px!important;
    font-weight:800!important;
}
.cart-item-bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
    margin-top:7px;
}
.cart-item-bottom>strong{
    color:#003e77;
    font-size:12px;
    white-space:nowrap;
}
.cart-unit-price{
    display:block;
    margin-top:5px;
    color:#8a9bab!important;
    font-size:8px!important;
}
.cart-item .qty-control{
    margin:0!important;
    height:29px;
    border-radius:8px!important;
    background:#f7fafc;
}
.cart-item .qty-control button{width:28px;height:27px;color:#075989;font-weight:800}
.cart-item .qty-control span{min-width:23px;text-align:center;font-weight:800;color:#163e60}

.remove-cart{
    width:29px;height:29px;
    display:grid;place-items:center;
    border-radius:8px!important;
    color:#a66767!important;
    transition:.2s;
}
.remove-cart:hover{background:#fff1f1!important;color:#b53d3d!important}
.remove-cart svg{width:15px;height:15px}

.cart-foot{
    padding:18px 22px 22px!important;
    background:#fff;
    box-shadow:0 -12px 30px rgba(0,45,84,.055);
}
.cart-summary-line{
    margin-bottom:4px!important;
    align-items:center;
}
.cart-summary-line span{font-size:11px;color:#647c91}
.cart-summary-line strong{font-size:21px;color:#053966;letter-spacing:-.035em}
.cart-shipping-note{
    display:block;
    color:#8a9aa8;
    font-size:8px;
    margin-bottom:14px;
}
.cart-checkout-button{
    min-height:49px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    border-radius:9px;
    background:linear-gradient(135deg,#ff9919,#ff7900);
    color:#fff;
    font-size:11px;
    font-weight:800;
    box-shadow:0 9px 24px rgba(255,121,0,.23);
    transition:.22s;
}
.cart-checkout-button:hover{transform:translateY(-2px);box-shadow:0 13px 28px rgba(255,121,0,.31)}
.cart-checkout-button svg{width:17px;height:17px}
.continue-shopping{margin-top:13px!important;color:#557089!important;font-weight:700}

.cart-empty{padding:65px 20px!important}
.cart-empty-icon{
    width:68px;height:68px;
    display:grid;place-items:center;
    margin:0 auto 15px;
    border-radius:20px;
    background:#eaf5fd;
    color:#0871b3;
}
.cart-empty-icon svg{width:29px;height:29px}
.cart-empty h3{color:#083967;margin:0 0 5px}
.cart-empty p{font-size:10px}
.cart-empty-link{display:inline-flex;margin-top:9px;color:#ff7900;font-size:10px;font-weight:800}

.toast{
    min-width:220px;
    text-align:center;
    border-radius:999px!important;
    box-shadow:0 12px 35px rgba(0,30,60,.24);
}

.cart-fly-image{
    position:fixed;
    z-index:9999;
    object-fit:contain;
    border-radius:12px;
    padding:5px;
    background:#fff;
    box-shadow:0 16px 45px rgba(0,44,84,.24);
    pointer-events:none;
    transition:transform .54s cubic-bezier(.2,.72,.2,1),opacity .5s ease;
}

@keyframes modernCartIn{
    from{opacity:0;transform:translateX(24px) scale(.97)}
    to{opacity:1;transform:none}
}
@keyframes cartBump{
    0%,100%{transform:scale(1)}
    35%{transform:scale(1.18) rotate(-7deg)}
    65%{transform:scale(.96) rotate(3deg)}
}
@keyframes cartCountPop{
    0%,100%{transform:scale(1)}
    45%{transform:scale(1.45)}
}

/* =========================================================
   CLIENTE · MI PEDIDO
   ========================================================= */
.track-page{
    max-width:1100px;
    margin:0 auto;
    padding:58px 20px 95px;
}
.track-hero{text-align:center;max-width:650px;margin:0 auto 28px}
.track-hero small{font-size:9px;letter-spacing:.2em;color:#ff7900;font-weight:800}
.track-hero h1{margin:10px 0 8px;color:#043765;font-size:38px;letter-spacing:-.045em}
.track-hero p{margin:0;color:#75889b;font-size:12px}

.track-search-card{
    max-width:850px;
    margin:0 auto;
    padding:18px;
    border:1px solid #dce7ef;
    border-radius:15px;
    background:#fff;
    box-shadow:0 14px 42px rgba(0,48,84,.07);
}
.track-search-form{
    display:grid;
    grid-template-columns:1fr 1.2fr auto;
    align-items:end;
    gap:11px;
}
.track-search-form label{display:grid;gap:6px}
.track-search-form label>span{font-size:9px;color:#44647f;font-weight:800}
.track-search-form input{
    width:100%;height:45px;
    border:1px solid #d6e2ea;
    border-radius:8px;
    padding:0 12px;
    outline:none;
    color:#153c5d;
}
.track-search-form input:focus{border-color:#64a8d3;box-shadow:0 0 0 3px rgba(0,111,181,.08)}
.track-input{display:flex;align-items:center;border:1px solid #d6e2ea;border-radius:8px;overflow:hidden}
.track-input:focus-within{border-color:#64a8d3;box-shadow:0 0 0 3px rgba(0,111,181,.08)}
.track-input b{padding-left:11px;color:#8da0af}
.track-input input{border:0!important;box-shadow:none!important;padding-left:5px}
.track-search-form .shop-primary{height:45px;white-space:nowrap}
.track-error{
    display:flex;gap:9px;align-items:center;
    margin-top:12px;padding:10px 12px;
    border-radius:9px;background:#fff2f0;color:#8a3d35;
}
.track-error span{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:#f8d8d4;font-weight:900}
.track-error p{margin:0;font-size:10px}

.track-result{margin-top:28px}
.track-result-head{
    display:flex;align-items:center;justify-content:space-between;
    padding:20px 22px;
    border:1px solid #dce7ef;border-radius:14px 14px 0 0;
    background:#fff;
}
.track-result-head small,.track-card-head small,.track-info-card small{font-size:8px;letter-spacing:.14em;color:#7890a4;font-weight:800}
.track-result-head h2{margin:3px 0;color:#073967;font-size:20px}
.track-result-head p{margin:0;color:#8294a4;font-size:9px}
.track-current-status{
    display:inline-flex;align-items:center;gap:7px;
    padding:8px 11px;border-radius:999px;
    background:#eaf5fd;color:#096aa8;font-size:9px;font-weight:800;
}
.track-current-status>span{width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 0 4px rgba(9,106,168,.1)}
.track-current-status.shipped{background:#e6f6ee;color:#1d8056}
.track-current-status.cancelled,.track-current-status.refunded{background:#fff0ec;color:#a54d3f}

.track-timeline{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    padding:23px 20px 25px;
    border:1px solid #dce7ef;border-top:0;
    background:#f8fbfd;
}
.track-step{position:relative;display:flex;align-items:center;gap:9px;color:#9aa9b5}
.track-step:not(:last-child):after{
    content:'';position:absolute;left:34px;right:-7px;top:13px;height:2px;background:#dbe5ec;
}
.track-step.done:not(:last-child):after{background:#71b6dd}
.track-step-dot{
    position:relative;z-index:1;
    width:27px;height:27px;flex:0 0 27px;
    display:grid;place-items:center;
    border-radius:50%;border:2px solid #cbd9e3;background:#fff;
    font-size:10px;font-weight:900;
}
.track-step-dot span{width:6px;height:6px;border-radius:50%;background:#b9c7d1}
.track-step.done{color:#315b7a}
.track-step.done .track-step-dot{border-color:#64aeda;background:#e9f6fd;color:#0874b9}
.track-step.active .track-step-dot{background:#0874b9;color:#fff;box-shadow:0 0 0 5px rgba(8,116,185,.1)}
.track-step.active .track-step-dot span{background:#fff}
.track-step strong,.track-step small{display:block}
.track-step strong{font-size:9px}
.track-step small{font-size:7px;margin-top:2px;color:#8ca0af}

.track-grid{
    display:grid;grid-template-columns:minmax(0,1.65fr) minmax(270px,.75fr);
    gap:17px;margin-top:17px;
}
.track-order-card,.track-info-card{
    border:1px solid #dce7ef;border-radius:14px;background:#fff;
    box-shadow:0 8px 26px rgba(0,45,82,.035);
}
.track-order-card{padding:19px}
.track-card-head{display:flex;justify-content:space-between;align-items:end;padding-bottom:13px;border-bottom:1px solid #e8eef3}
.track-card-head h3{margin:3px 0 0;color:#0a3a64;font-size:14px}
.track-card-head>strong{font-size:17px;color:#043c70}
.track-items{display:grid}
.track-item{
    display:grid;grid-template-columns:57px 1fr auto;gap:11px;align-items:center;
    padding:12px 0;border-bottom:1px solid #edf1f4;
}
.track-item:last-child{border-bottom:0}
.track-item-image{width:57px;height:57px;position:relative;display:grid;place-items:center;border-radius:9px;background:#f4f8fb}
.track-item-image img{width:100%;height:100%;object-fit:contain;padding:4px}
.track-item-image b{position:absolute;right:-5px;top:-5px;width:18px;height:18px;display:grid;place-items:center;border-radius:50%;background:#053c70;color:#fff;font-size:7px}
.track-item-copy strong,.track-item-copy small{display:block}
.track-item-copy strong{font-size:10px;color:#153d5e}
.track-item-copy small{font-size:8px;color:#8a9ba8;margin-top:3px}
.track-item-copy .track-variant{color:#0870ad;font-weight:700}
.track-item>strong{font-size:10px;color:#073d6c}

.track-info-card{padding:19px;display:grid;gap:18px;align-content:start}
.track-info-card>div{display:grid;gap:4px;padding-bottom:15px;border-bottom:1px solid #edf1f4}
.track-info-card strong{font-size:10px;color:#173f61;line-height:1.5}
.track-info-card span{font-size:8px;color:#8598a7}
.track-shop-link{display:flex;align-items:center;justify-content:center;min-height:40px;border-radius:8px;background:#edf6fc;color:#086ba8;font-size:9px;font-weight:800}

.track-special-state{
    display:flex;align-items:center;gap:13px;
    padding:18px 20px;border:1px solid #f0d9d4;border-top:0;background:#fff8f6;
}
.track-special-icon{width:39px;height:39px;display:grid;place-items:center;border-radius:12px;background:#ffe6df;color:#a54d3f;font-size:20px}
.track-special-state strong{font-size:11px;color:#813f37}
.track-special-state p{margin:4px 0 0;color:#9a6b65;font-size:9px;line-height:1.5}

.track-help{
    max-width:650px;margin:30px auto 0;
    display:flex;align-items:center;gap:13px;
    padding:17px;border:1px dashed #cddde8;border-radius:12px;background:#f8fbfd;
}
.track-help-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:11px;background:#e7f3fb;color:#0870af;font-size:19px}
.track-help strong{font-size:10px;color:#174463}
.track-help p{margin:3px 0 0;color:#8497a7;font-size:9px}

@media(max-width:800px){
    .track-search-form{grid-template-columns:1fr}
    .track-grid{grid-template-columns:1fr}
    .track-timeline{grid-template-columns:1fr;gap:14px}
    .track-step:not(:last-child):after{left:13px;top:26px;bottom:-15px;width:2px;height:auto;right:auto}
}
@media(max-width:650px){
    .track-page{padding-top:35px}
    .track-hero h1{font-size:31px}
    .track-result-head{align-items:flex-start;gap:12px;flex-direction:column}
}


/* Producto · compartir por WhatsApp */
.product-share-card{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-top:17px;
    padding:14px 15px;
    border:1px solid #d9e8df;
    border-radius:12px;
    background:linear-gradient(180deg,#fbfffc,#f4fbf7);
}
.product-share-copy{
    display:flex;
    align-items:center;
    gap:11px;
    min-width:0;
}
.product-share-icon{
    width:39px;height:39px;flex:0 0 39px;
    display:grid;place-items:center;
    border-radius:11px;
    background:#e4f7ec;
    color:#178353;
}
.product-share-icon svg,.whatsapp-share-button svg{
    fill:none;
    stroke:currentColor;
    stroke-width:1.7;
    stroke-linecap:round;
    stroke-linejoin:round;
}
.product-share-icon svg{width:21px;height:21px}
.product-share-copy strong,.product-share-copy small{display:block}
.product-share-copy strong{font-size:10px;color:#16472f}
.product-share-copy small{font-size:8px;line-height:1.45;color:#759184;margin-top:3px}
.whatsapp-share-button{
    min-height:40px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding:0 14px;
    border:0;
    border-radius:9px;
    background:#1f9d62;
    color:#fff;
    font-size:9px;
    font-weight:800;
    cursor:pointer;
    box-shadow:0 8px 20px rgba(31,157,98,.18);
    transition:.2s ease;
}
.whatsapp-share-button:hover{
    transform:translateY(-2px);
    box-shadow:0 11px 24px rgba(31,157,98,.26);
}
.whatsapp-share-button svg{width:16px;height:16px}
@media(max-width:650px){
    .product-share-card{align-items:stretch;flex-direction:column}
    .whatsapp-share-button{width:100%}
}

/* Cliente · autenticación y cuenta */
.customer-auth-page{min-height:70vh;display:grid;place-items:center;padding:55px 18px 90px;background:#f7fafc}
.customer-auth-card{width:min(620px,100%);padding:28px;border:1px solid #dce7ef;border-radius:18px;background:#fff;box-shadow:0 20px 55px rgba(0,45,82,.09)}
.customer-auth-card.compact{max-width:480px}
.customer-auth-intro{text-align:center;margin-bottom:20px}
.customer-auth-intro small{font-size:9px;letter-spacing:.18em;color:#ff7c00;font-weight:800}
.customer-auth-intro h1{margin:7px 0;color:#063a68;font-size:31px;letter-spacing:-.045em}
.customer-auth-intro p{margin:0;color:#7c90a1;font-size:11px;line-height:1.55}
.customer-auth-error{margin-bottom:14px;padding:10px 12px;border-radius:9px;background:#fff0ed;color:#a4473f;font-size:10px}
.customer-auth-form{display:grid;gap:11px}
.customer-auth-form label,.customer-profile-card label{display:grid;gap:5px;font-size:9px;font-weight:800;color:#345772}
.customer-auth-form input,.customer-profile-card input{height:44px;padding:0 11px;border:1px solid #d3e1e9;border-radius:8px;background:#fff;color:#173d5d;font:inherit}
.customer-form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.customer-auth-address{display:grid;gap:10px;padding:13px;border-radius:11px;background:#f7fafc}
.customer-auth-address>strong{font-size:10px;color:#174565}
.customer-auth-submit,.customer-profile-card form>button{height:45px;border:0;border-radius:9px;background:linear-gradient(135deg,#0876b7,#055d93);color:#fff;font-weight:800;cursor:pointer}
.customer-auth-switch{text-align:center;margin:15px 0 0;color:#8193a2;font-size:9px}.customer-auth-switch a{color:#0870ad;font-weight:800}
.customer-auth-divider{display:flex;align-items:center;gap:10px;margin:14px 0;color:#8a9aa7;font-size:8px}.customer-auth-divider:before,.customer-auth-divider:after{content:'';flex:1;height:1px;background:#e2e9ee}
.google-login-slot,.google-register-slot{display:flex;justify-content:center}

.customer-account-page{max-width:1180px;margin:0 auto;padding:48px 20px 90px}
.customer-account-hero{display:flex;justify-content:space-between;align-items:center;padding:22px;border-radius:16px;background:#073d70;color:#fff}
.customer-account-hero small{font-size:8px;letter-spacing:.16em;opacity:.75}.customer-account-hero h1{margin:4px 0;font-size:26px}.customer-account-hero p{margin:0;font-size:9px;opacity:.72}
.customer-credit{text-align:right}.customer-credit small,.customer-credit strong{display:block}.customer-credit strong{margin-top:3px;font-size:21px}
.customer-account-grid{display:grid;grid-template-columns:360px 1fr;gap:16px;margin-top:16px}
.customer-profile-card,.customer-orders-card{padding:18px;border:1px solid #dce7ef;border-radius:14px;background:#fff}
.customer-profile-card h2,.customer-orders-head h2{margin:0 0 12px;color:#093d68;font-size:15px}
.customer-profile-card form{display:grid;gap:9px}
.customer-referral-card{margin-top:16px;padding:14px;border-radius:11px;background:#f0f8fd}
.customer-referral-card>small{font-size:7px;color:#0870ad;font-weight:800;letter-spacing:.12em}.customer-referral-card h3{margin:4px 0;font-size:11px;color:#154563}
.customer-referral-card p{font-size:8px;line-height:1.5;color:#748b9d}.customer-referral-card>div{display:flex;gap:5px}
.customer-referral-card input{min-width:0;flex:1;height:36px;border:1px solid #cfdee8;border-radius:7px;padding:0 8px;font-size:8px}
.customer-referral-card button{border:0;border-radius:7px;background:#0871ad;color:#fff;padding:0 10px;font-size:8px;font-weight:800}
.customer-logout{margin-top:14px}.customer-logout button{width:100%;height:36px;border:1px solid #e1d2d2;border-radius:8px;background:#fff;color:#a25353}
.customer-orders-head{display:flex;justify-content:space-between;align-items:center}.customer-orders-head span{font-size:8px;color:#8195a4}
.customer-orders-list{display:grid;gap:8px}.customer-orders-list article{display:grid;grid-template-columns:1.1fr .8fr .7fr auto;gap:10px;align-items:center;padding:12px;border:1px solid #e2eaf0;border-radius:10px}
.customer-orders-list small,.customer-orders-list strong{display:block}.customer-orders-list small{font-size:7px;color:#8195a4}.customer-orders-list strong{font-size:10px;color:#143f61}.customer-orders-list a{font-size:8px;font-weight:800;color:#0870ad}
.account-order-status{justify-self:start;padding:5px 7px;border-radius:999px;font-size:7px;font-weight:800;background:#edf3f7;color:#617a8e}
.account-order-status.paid,.account-order-status.shipped{background:#e8f6ee;color:#247552}.account-order-status.preparing{background:#f1ebff;color:#6a4fbd}
.account-order-status.cancelled,.account-order-status.refunded{background:#fff0ed;color:#a34b42}
.customer-orders-empty{text-align:center;padding:50px 10px}.customer-orders-empty h3{font-size:12px;color:#164563}.customer-orders-empty a{font-size:9px;color:#0870ad;font-weight:800}
@media(max-width:800px){.customer-account-grid{grid-template-columns:1fr}.customer-form-row{grid-template-columns:1fr}.customer-orders-list article{grid-template-columns:1fr 1fr}.customer-account-hero{align-items:flex-start;flex-direction:column;gap:12px}.customer-credit{text-align:left}}


/* =========================================================
   CLIENTE · Login / Registro más grandes y modernos
   ========================================================= */
.customer-auth-page{
    min-height:calc(100vh - 160px)!important;
    padding:70px 20px 100px!important;
    background:
        radial-gradient(circle at 20% 10%,rgba(8,116,182,.08),transparent 30%),
        linear-gradient(180deg,#f8fbfd,#f3f7fa)!important;
}
.customer-auth-card{
    width:min(720px,100%)!important;
    padding:36px!important;
    border-radius:22px!important;
    box-shadow:0 28px 70px rgba(0,45,82,.12)!important;
}
.customer-auth-card.compact{
    max-width:560px!important;
}
.customer-auth-intro{
    margin-bottom:26px!important;
}
.customer-auth-intro small{
    font-size:11px!important;
}
.customer-auth-intro h1{
    margin:9px 0 10px!important;
    font-size:38px!important;
}
.customer-auth-intro p{
    max-width:540px;
    margin:0 auto!important;
    font-size:13px!important;
}
.customer-auth-form{
    gap:14px!important;
}
.customer-auth-form label{
    gap:7px!important;
    font-size:11px!important;
}
.customer-auth-form input{
    height:50px!important;
    padding:0 14px!important;
    font-size:12px!important;
    border-radius:10px!important;
}
.customer-auth-address{
    padding:17px!important;
    border-radius:13px!important;
}
.customer-auth-address>strong{
    font-size:12px!important;
}
.customer-auth-submit{
    height:51px!important;
    font-size:12px!important;
    border-radius:10px!important;
}
.customer-auth-switch{
    font-size:11px!important;
    margin-top:18px!important;
}
.customer-auth-error{
    padding:12px 14px!important;
    font-size:11px!important;
}
.customer-auth-divider{
    margin:18px 0!important;
    font-size:10px!important;
}

/* =========================================================
   CLIENTE · Mi cuenta más amplia
   ========================================================= */
.customer-account-page-modern{
    max-width:1280px!important;
    padding:55px 22px 100px!important;
}
.customer-account-hero-modern{
    padding:26px 28px!important;
    border-radius:18px!important;
}
.customer-account-identity{
    display:flex;
    align-items:center;
    gap:15px;
}
.customer-account-avatar{
    width:58px;
    height:58px;
    flex:0 0 58px;
    display:grid;
    place-items:center;
    border-radius:16px;
    background:rgba(255,255,255,.13);
    border:1px solid rgba(255,255,255,.18);
    font-size:18px;
    font-weight:900;
}
.customer-account-identity small{
    font-size:9px!important;
}
.customer-account-identity h1{
    margin:4px 0 2px!important;
    font-size:29px!important;
}
.customer-account-identity p{
    font-size:10px!important;
}
.customer-account-summary{
    display:grid;
    grid-template-columns:repeat(3,minmax(100px,1fr));
    gap:8px;
}
.customer-account-summary article{
    min-width:105px;
    padding:11px 13px;
    border-radius:11px;
    background:rgba(255,255,255,.1);
    text-align:center;
}
.customer-account-summary small,
.customer-account-summary strong{
    display:block;
}
.customer-account-summary small{
    font-size:7px;
    opacity:.7;
}
.customer-account-summary strong{
    margin-top:3px;
    font-size:16px;
}
.customer-account-summary article.credit{
    background:rgba(255,133,0,.16);
}

.customer-account-tabs{
    display:flex;
    gap:4px;
    margin:14px 0;
    padding:5px;
    border:1px solid #dde7ee;
    border-radius:11px;
    background:#fff;
    overflow-x:auto;
}
.customer-account-tabs a{
    min-height:38px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 13px;
    border-radius:8px;
    color:#698196;
    font-size:9px;
    font-weight:800;
    white-space:nowrap;
}
.customer-account-tabs a:hover,
.customer-account-tabs a.active{
    background:#073f73;
    color:#fff;
}

.customer-account-layout{
    display:grid;
    grid-template-columns:minmax(0,1.6fr) 340px;
    gap:16px;
    align-items:start;
}
.customer-account-main{
    display:grid;
    gap:16px;
}
.customer-account-section,
.customer-profile-card-modern,
.customer-referral-card-modern{
    padding:20px;
    border:1px solid #dce7ef;
    border-radius:14px;
    background:#fff;
    box-shadow:0 8px 24px rgba(0,45,82,.035);
}
.customer-section-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:14px;
    margin-bottom:15px;
}
.customer-section-head small{
    display:block;
    font-size:8px;
    letter-spacing:.14em;
    color:#0870ad;
    font-weight:800;
}
.customer-section-head h2{
    margin:3px 0 2px!important;
    font-size:17px!important;
    color:#0a3e68;
}
.customer-section-head p{
    margin:0;
    font-size:9px;
    color:#7c90a1;
}
.customer-section-head>a{
    padding:7px 9px;
    border-radius:7px;
    background:#eef7fd;
    color:#0870ad;
    font-size:8px;
    font-weight:800;
}

.customer-orders-list-modern{
    display:grid;
    gap:8px;
}
.customer-orders-list-modern article{
    display:grid;
    grid-template-columns:1.35fr .75fr .65fr auto;
    gap:12px;
    align-items:center;
    padding:13px 14px;
    border:1px solid #e2eaf0;
    border-radius:10px;
    transition:.16s;
}
.customer-orders-list-modern article:hover{
    border-color:#bed6e5;
    background:#fbfdff;
}
.customer-order-main small,
.customer-order-main strong,
.customer-order-main span{
    display:block;
}
.customer-order-main small{
    font-size:7px;
    color:#8497a6;
}
.customer-order-main strong{
    margin-top:2px;
    color:#103f62;
    font-size:11px;
}
.customer-order-main span{
    margin-top:2px;
    color:#7b91a1;
    font-size:7px;
}
.customer-order-total{
    color:#073d6d;
    font-size:11px;
}
.customer-order-link{
    color:#0870ad;
    font-size:8px;
    font-weight:800;
}
.customer-orders-empty-modern{
    min-height:230px;
    display:grid;
    place-items:center;
    align-content:center;
    text-align:center;
}
.customer-orders-empty-modern>div{
    width:50px;
    height:50px;
    display:grid;
    place-items:center;
    border-radius:14px;
    background:#edf6fb;
    color:#0870ad;
    font-size:22px;
}
.customer-orders-empty-modern h3{
    margin:9px 0 3px;
    color:#174563;
    font-size:11px;
}
.customer-orders-empty-modern p{
    margin:0 0 9px;
    color:#8798a6;
    font-size:8px;
}
.customer-orders-empty-modern a{
    color:#0870ad;
    font-size:8px;
    font-weight:800;
}

/* Direcciones múltiples */
.customer-address-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
}
.customer-address-card,
.customer-address-new{
    min-height:190px;
    padding:15px;
    border:1px solid #dfe8ee;
    border-radius:12px;
    background:#fafcfd;
}
.customer-address-card.default{
    border-color:#9fc9e2;
    background:#f5fbff;
}
.customer-address-card-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:10px;
    margin-bottom:11px;
}
.customer-address-card-head small{
    display:block;
    font-size:6px;
    letter-spacing:.12em;
    color:#8094a3;
    font-weight:800;
}
.customer-address-card-head h3{
    margin:3px 0 0;
    color:#123f62;
    font-size:11px;
}
.customer-address-card-head>span{
    padding:4px 6px;
    border-radius:999px;
    background:#e4f3fb;
    color:#0870ad;
    font-size:6px;
    font-weight:800;
}
.customer-address-card>strong{
    display:block;
    color:#214866;
    font-size:9px;
}
.customer-address-card>p{
    margin:5px 0 4px;
    color:#355a76;
    font-size:9px;
    line-height:1.45;
}
.customer-address-card>small{
    display:block;
    color:#8295a4;
    font-size:7px;
    line-height:1.45;
}
.customer-address-card>em{
    display:block;
    margin-top:7px;
    padding:6px 7px;
    border-radius:7px;
    background:#fff8ec;
    color:#8a6a34;
    font-size:7px;
    font-style:normal;
}
.customer-address-actions{
    display:flex;
    align-items:center;
    gap:5px;
    margin-top:12px;
}
.customer-address-actions form{
    margin:0;
}
.customer-address-actions button{
    min-height:30px;
    padding:0 8px;
    border:1px solid #cddde7;
    border-radius:7px;
    background:#fff;
    color:#0870ad;
    font-size:7px;
    cursor:pointer;
}
.customer-address-actions button.danger{
    color:#a65353;
    border-color:#ead4d4;
}
.customer-address-new{
    display:grid;
    place-items:center;
    align-content:center;
    text-align:center;
    border-style:dashed;
}
.customer-address-new-icon{
    width:42px;
    height:42px;
    display:grid;
    place-items:center;
    border-radius:12px;
    background:#eaf5fc;
    color:#0870ad;
    font-size:20px;
}
.customer-address-new h3{
    margin:8px 0 3px;
    color:#153f61;
    font-size:10px;
}
.customer-address-new p{
    max-width:220px;
    margin:0 0 8px;
    color:#8496a4;
    font-size:7px;
}
.customer-address-new button{
    min-height:31px;
    padding:0 10px;
    border:0;
    border-radius:7px;
    background:#0871ad;
    color:#fff;
    font-size:7px;
    font-weight:800;
    cursor:pointer;
}

.customer-new-address-form{
    display:grid;
    gap:10px;
    margin-top:12px;
    padding:16px;
    border:1px solid #cfe1ec;
    border-radius:12px;
    background:#f8fbfd;
}
.customer-new-address-form[hidden]{
    display:none!important;
}
.customer-new-address-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
}
.customer-new-address-head small{
    font-size:7px;
    color:#0870ad;
    font-weight:800;
    letter-spacing:.12em;
}
.customer-new-address-head h3{
    margin:3px 0 0;
    color:#143f61;
    font-size:12px;
}
.customer-new-address-head>button{
    width:30px;
    height:30px;
    border:0;
    border-radius:8px;
    background:#edf2f5;
    color:#607789;
    cursor:pointer;
}
.customer-new-address-form label{
    display:grid;
    gap:5px;
    color:#365874;
    font-size:8px;
    font-weight:800;
}
.customer-new-address-form input{
    height:39px;
    padding:0 9px;
    border:1px solid #d2e0e9;
    border-radius:8px;
    background:#fff;
}
.customer-default-check{
    display:flex!important;
    grid-template-columns:none!important;
    align-items:center;
    gap:8px!important;
    cursor:pointer;
}
.customer-default-check input{
    width:15px;
    height:15px;
}
.customer-address-save{
    min-height:40px;
    border:0;
    border-radius:8px;
    background:#0871ad;
    color:#fff;
    font-size:8px;
    font-weight:800;
    cursor:pointer;
}

.customer-account-sidebar{
    display:grid;
    gap:12px;
    position:sticky;
    top:105px;
}
.customer-profile-card-modern{
    padding:18px!important;
}
.customer-profile-card-modern form{
    gap:10px!important;
}
.customer-profile-card-modern label{
    font-size:9px!important;
}
.customer-profile-card-modern input{
    height:42px!important;
    font-size:10px!important;
}
.customer-profile-card-modern form>button{
    height:42px!important;
}
.customer-referral-card-modern{
    margin-top:0!important;
    background:#f0f8fd!important;
}
.customer-referral-card-modern h3{
    font-size:12px!important;
}
.customer-referral-card-modern p{
    font-size:9px!important;
}
.customer-referral-card-modern input{
    height:39px!important;
    font-size:8px!important;
}
.customer-referral-card-modern button{
    font-size:8px!important;
}

/* =========================================================
   CHECKOUT · Cliente logueado y direcciones guardadas
   ========================================================= */
.checkout-login-prompt,
.checkout-customer-banner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    padding:14px 16px;
    border:1px solid #d9e6ee;
    border-radius:12px;
    background:#f8fbfd;
}
.checkout-login-prompt>div:first-child small,
.checkout-customer-banner small{
    display:block;
    font-size:7px;
    letter-spacing:.12em;
    color:#0870ad;
    font-weight:800;
}
.checkout-login-prompt strong,
.checkout-customer-banner strong{
    display:block;
    margin-top:2px;
    color:#143f61;
    font-size:11px;
}
.checkout-login-prompt span,
.checkout-customer-banner span{
    display:block;
    margin-top:2px;
    color:#8195a4;
    font-size:8px;
}
.checkout-login-prompt>div:last-child{
    display:flex;
    gap:6px;
}
.checkout-login-prompt a,
.checkout-customer-banner>a{
    min-height:34px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 10px;
    border:1px solid #cddde7;
    border-radius:7px;
    background:#fff;
    color:#0870ad;
    font-size:8px;
    font-weight:800;
}
.checkout-login-prompt a.primary{
    border-color:#0871ad;
    background:#0871ad;
    color:#fff;
}
.checkout-customer-banner{
    justify-content:flex-start;
}
.checkout-customer-avatar{
    width:42px;
    height:42px;
    flex:0 0 42px;
    display:grid;
    place-items:center;
    border-radius:11px;
    background:#e4f2fb;
    color:#0870ad;
    font-weight:900;
}
.checkout-customer-banner>div:nth-child(2){
    flex:1;
}
.checkout-saved-addresses{
    margin-bottom:15px;
    padding:13px;
    border:1px solid #dfe8ee;
    border-radius:11px;
    background:#f9fbfc;
}
.checkout-saved-head{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
    margin-bottom:9px;
}
.checkout-saved-head strong,
.checkout-saved-head small{
    display:block;
}
.checkout-saved-head strong{
    color:#173f61;
    font-size:9px;
}
.checkout-saved-head small{
    margin-top:2px;
    color:#8295a4;
    font-size:7px;
}
.checkout-saved-head a{
    color:#0870ad;
    font-size:7px;
    font-weight:800;
}
.checkout-address-options{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;
}
.checkout-address-option{
    min-height:74px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
    padding:10px;
    border:1px solid #d9e5ec;
    border-radius:9px;
    background:#fff;
    text-align:left;
    cursor:pointer;
    transition:.16s;
}
.checkout-address-option:hover{
    border-color:#a9cadf;
}
.checkout-address-option.selected{
    border-color:#0874b6;
    background:#f0f8fd;
    box-shadow:0 0 0 2px rgba(8,116,182,.06);
}
.checkout-address-option span{
    min-width:0;
}
.checkout-address-option small,
.checkout-address-option strong,
.checkout-address-option em{
    display:block;
}
.checkout-address-option small{
    font-size:6px;
    color:#8195a4;
    font-weight:800;
}
.checkout-address-option strong{
    margin-top:2px;
    color:#153f61;
    font-size:9px;
}
.checkout-address-option em{
    margin-top:2px;
    color:#788d9d;
    font-size:7px;
    font-style:normal;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}
.checkout-address-option i{
    width:23px;
    height:23px;
    flex:0 0 23px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#e8eff4;
    color:#9aacb9;
    font-size:9px;
    font-style:normal;
}
.checkout-address-option.selected i{
    background:#0874b6;
    color:#fff;
}

@media(max-width:950px){
    .customer-account-layout{
        grid-template-columns:1fr;
    }
    .customer-account-sidebar{
        position:static;
    }
}
@media(max-width:700px){
    .customer-auth-page{
        padding:35px 14px 70px!important;
    }
    .customer-auth-card{
        padding:22px!important;
        border-radius:16px!important;
    }
    .customer-auth-intro h1{
        font-size:30px!important;
    }
    .customer-auth-intro p{
        font-size:11px!important;
    }

    .customer-account-page-modern{
        padding:30px 14px 70px!important;
    }
    .customer-account-hero-modern{
        align-items:stretch!important;
        flex-direction:column!important;
        gap:16px!important;
        padding:20px!important;
    }
    .customer-account-summary{
        grid-template-columns:repeat(3,1fr);
        width:100%;
    }
    .customer-account-summary article{
        min-width:0;
    }
    .customer-address-grid{
        grid-template-columns:1fr;
    }
    .customer-orders-list-modern article{
        grid-template-columns:1fr 1fr;
    }
    .customer-order-link{
        justify-self:end;
    }
    .checkout-address-options{
        grid-template-columns:1fr;
    }
    .checkout-login-prompt,
    .checkout-customer-banner{
        align-items:flex-start;
        flex-direction:column;
    }
    .checkout-login-prompt>div:last-child{
        width:100%;
    }
    .checkout-login-prompt a{
        flex:1;
    }
    .checkout-customer-banner>a{
        width:100%;
    }
}
@media(max-width:460px){
    .customer-account-summary{
        grid-template-columns:1fr;
    }
    .customer-orders-list-modern article{
        grid-template-columns:1fr;
    }
    .customer-order-link{
        justify-self:start;
    }
}


/* =========================================================
   MI CUENTA · Legibilidad aumentada
   ========================================================= */
.customer-account-page-modern{
    font-size:14px;
}

/* Cabecera */
.customer-account-identity small{font-size:11px!important}
.customer-account-identity h1{font-size:31px!important}
.customer-account-identity p{font-size:12px!important}
.customer-account-summary small{font-size:9px!important}
.customer-account-summary strong{font-size:19px!important}

/* Solapas */
.customer-account-tabs a{
    min-height:42px!important;
    padding:0 16px!important;
    font-size:11px!important;
}

/* Encabezados de secciones */
.customer-section-head small{font-size:10px!important}
.customer-section-head h2{font-size:20px!important}
.customer-section-head p{
    font-size:11px!important;
    line-height:1.5!important;
}
.customer-section-head>a{
    padding:9px 11px!important;
    font-size:10px!important;
}

/* Pedidos */
.customer-order-main small{font-size:9px!important}
.customer-order-main strong{font-size:13px!important}
.customer-order-main span{font-size:9px!important}
.customer-order-total{font-size:13px!important}
.customer-order-link{font-size:10px!important}
.account-order-status{
    padding:6px 9px!important;
    font-size:9px!important;
}
.customer-orders-empty-modern h3{font-size:14px!important}
.customer-orders-empty-modern p{font-size:10px!important}
.customer-orders-empty-modern a{font-size:10px!important}

/* Direcciones */
.customer-address-card-head small{font-size:8px!important}
.customer-address-card-head h3{font-size:14px!important}
.customer-address-card-head>span{
    padding:5px 8px!important;
    font-size:8px!important;
}
.customer-address-card>strong{font-size:11px!important}
.customer-address-card>p{
    font-size:11px!important;
    line-height:1.55!important;
}
.customer-address-card>small{
    font-size:9px!important;
    line-height:1.55!important;
}
.customer-address-card>em{
    font-size:9px!important;
    line-height:1.45!important;
}
.customer-address-actions button{
    min-height:34px!important;
    padding:0 10px!important;
    font-size:9px!important;
}
.customer-address-new h3{font-size:13px!important}
.customer-address-new p{
    font-size:9px!important;
    line-height:1.5!important;
}
.customer-address-new button{
    min-height:35px!important;
    padding:0 12px!important;
    font-size:9px!important;
}

/* Formulario nueva dirección */
.customer-new-address-head small{font-size:9px!important}
.customer-new-address-head h3{font-size:15px!important}
.customer-new-address-form label{font-size:10px!important}
.customer-new-address-form input{
    height:43px!important;
    padding:0 11px!important;
    font-size:11px!important;
}
.customer-default-check{font-size:10px!important}
.customer-address-save{
    min-height:43px!important;
    font-size:10px!important;
}

/* Perfil */
.customer-profile-card-modern label{font-size:11px!important}
.customer-profile-card-modern input{
    height:45px!important;
    padding:0 11px!important;
    font-size:12px!important;
}
.customer-profile-card-modern form>button{
    height:45px!important;
    font-size:11px!important;
}

/* Referidos */
.customer-referral-card-modern>small{font-size:9px!important}
.customer-referral-card-modern h3{font-size:15px!important}
.customer-referral-card-modern p{
    font-size:11px!important;
    line-height:1.55!important;
}
.customer-referral-card-modern input{
    height:42px!important;
    font-size:10px!important;
}
.customer-referral-card-modern button{font-size:10px!important}
.customer-logout button{
    min-height:40px!important;
    font-size:10px!important;
}

@media(max-width:700px){
    .customer-account-identity small{font-size:10px!important}
    .customer-account-identity h1{font-size:27px!important}
    .customer-account-identity p{font-size:11px!important}

    .customer-account-tabs a{
        min-height:43px!important;
        font-size:10px!important;
    }

    .customer-section-head h2{font-size:19px!important}
    .customer-section-head p{font-size:10px!important}

    .customer-address-card>p{font-size:11px!important}
    .customer-address-card>small{font-size:9px!important}

    .customer-profile-card-modern label{font-size:10px!important}
    .customer-profile-card-modern input{font-size:11px!important}
}


/* Checkout · identidad protegida y dirección editable */
.checkout-profile-locked{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
    margin-bottom:18px;
}
.checkout-profile-locked article{
    min-height:96px;
    padding:14px;
    border:1px solid #dbe7ef;
    border-radius:11px;
    background:#f8fbfd;
}
.checkout-profile-locked small,
.checkout-profile-locked strong,
.checkout-profile-locked span{
    display:block;
}
.checkout-profile-locked small{
    font-size:8px;
    letter-spacing:.1em;
    color:#7f94a4;
    font-weight:800;
}
.checkout-profile-locked strong{
    margin-top:5px;
    color:#073e6b;
    font-size:12px;
    line-height:1.4;
    word-break:break-word;
}
.checkout-profile-locked span{
    margin-top:4px;
    color:#899ba8;
    font-size:8px;
    line-height:1.4;
}

.checkout-delivery-section{
    margin-top:4px;
    padding:16px;
    border:1px solid #dce7ee;
    border-radius:12px;
    background:#fbfdfe;
}
.checkout-delivery-title{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:14px;
    margin-bottom:14px;
}
.checkout-delivery-title small,
.checkout-delivery-title strong{
    display:block;
}
.checkout-delivery-title small{
    font-size:8px;
    letter-spacing:.12em;
    color:#0871ad;
    font-weight:800;
}
.checkout-delivery-title strong{
    margin-top:3px;
    color:#103e63;
    font-size:13px;
}
.checkout-delivery-title>span{
    padding:5px 8px;
    border-radius:999px;
    background:#eaf5fb;
    color:#0870ad;
    font-size:7px;
    font-weight:800;
}

.checkout-delivery-fields{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
}
.checkout-delivery-fields label{
    display:grid;
    gap:7px;
    color:#163f61;
    font-size:10px;
    font-weight:800;
}
.checkout-delivery-fields label.full{
    grid-column:1/-1;
}
.checkout-delivery-fields input,
.checkout-delivery-fields select{
    width:100%;
    height:48px;
    padding:0 13px;
    border:1px solid #d0dfe8;
    border-radius:9px;
    background:#fff;
    color:#153d5e;
    font:inherit;
    font-size:11px;
    outline:0;
}
.checkout-delivery-fields input:focus,
.checkout-delivery-fields select:focus{
    border-color:#69aed6;
    box-shadow:0 0 0 3px rgba(8,116,182,.07);
}
.checkout-delivery-fields select{
    cursor:pointer;
}

.checkout-guest-contact{
    margin-bottom:14px;
}

@media(max-width:760px){
    .checkout-profile-locked{
        grid-template-columns:1fr;
    }
    .checkout-profile-locked article{
        min-height:auto;
    }
    .checkout-delivery-title{
        flex-direction:column;
    }
    .checkout-delivery-fields{
        grid-template-columns:1fr;
    }
    .checkout-delivery-fields label.full{
        grid-column:auto;
    }
}


/* Checkout · Crédito Vires */
.checkout-credit-card{
    display:grid;
    grid-template-columns:44px minmax(0,1fr) auto;
    gap:12px;
    align-items:center;
    margin:16px 0;
    padding:14px;
    border:1px solid #efd09b;
    border-radius:12px;
    background:linear-gradient(135deg,#fff9ef,#fffdf9);
}
.checkout-credit-icon{
    width:44px;height:44px;display:grid;place-items:center;
    border-radius:12px;background:#ffebc8;color:#b56400;
    font-size:18px;font-weight:900
}
.checkout-credit-copy small,.checkout-credit-copy strong,.checkout-credit-copy span{display:block}
.checkout-credit-copy small{font-size:9px;letter-spacing:.1em;color:#ad6810;font-weight:800}
.checkout-credit-copy strong{margin-top:3px;font-size:12px;color:#173f61}
.checkout-credit-copy span{margin-top:2px;font-size:9px;color:#7d91a0}
.checkout-credit-switch{display:flex;align-items:center;gap:8px;cursor:pointer}
.checkout-credit-switch input{position:absolute;opacity:0;pointer-events:none}
.checkout-credit-switch>span{
    position:relative;width:40px;height:23px;flex:0 0 40px;
    border-radius:999px;background:#cad7e0;transition:.18s
}
.checkout-credit-switch>span:after{
    content:'';position:absolute;left:3px;top:3px;width:17px;height:17px;
    border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.14);transition:.18s
}
.checkout-credit-switch input:checked+span{background:#f28a00}
.checkout-credit-switch input:checked+span:after{transform:translateX(17px)}
.checkout-credit-switch b{font-size:10px;color:#815516;white-space:nowrap}
.summary-credit-row,.summary-credit-row b{color:#19714f!important}
.summary-credit-row[hidden]{display:none!important}
@media(max-width:650px){
    .checkout-credit-card{grid-template-columns:42px 1fr}
    .checkout-credit-switch{
        grid-column:1/-1;justify-content:space-between;
        padding-top:10px;border-top:1px solid #f0dec0
    }
}

.customer-order-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.customer-invoice-link{padding:6px 8px;border-radius:7px;background:#eaf6ef;color:#247552!important;font-size:10px!important;font-weight:800}@media(max-width:700px){.customer-order-actions{justify-content:flex-start}}

/* Checkout · datos de facturación */
.checkout-billing-card{position:relative}
.checkout-billing-choice{
    display:flex;align-items:center;justify-content:space-between;gap:18px;
    padding:16px;border:1px solid #dce7ef;border-radius:12px;background:#f8fbfd
}
.checkout-billing-choice small,.checkout-billing-choice strong,.checkout-billing-choice span{display:block}
.checkout-billing-choice small{font-size:9px;letter-spacing:.1em;color:#0870ad;font-weight:800}
.checkout-billing-choice strong{margin-top:4px;color:#123f61;font-size:13px}
.checkout-billing-choice span{margin-top:3px;color:#7d91a0;font-size:10px;line-height:1.45}
.checkout-billing-switch{display:flex;align-items:center;gap:8px;white-space:nowrap;cursor:pointer}
.checkout-billing-switch input{position:absolute;opacity:0;pointer-events:none}
.checkout-billing-switch>span{position:relative;width:42px;height:24px;border-radius:999px;background:#cbd8e1;transition:.18s}
.checkout-billing-switch>span:after{content:'';position:absolute;left:3px;top:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.15);transition:.18s}
.checkout-billing-switch input:checked+span{background:#0874b6}
.checkout-billing-switch input:checked+span:after{transform:translateX(18px)}
.checkout-billing-switch b{font-size:10px;color:#315672}
.checkout-billing-fields{
    display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px;
    padding:16px;border:1px solid #cfe0ea;border-radius:12px;background:#fff
}
.checkout-billing-fields[hidden]{display:none!important}
.checkout-billing-fields label{display:grid;gap:7px;color:#173f61;font-size:10px;font-weight:800}
.checkout-billing-fields .full{grid-column:1/-1}
.checkout-billing-fields input,.checkout-billing-fields select{
    width:100%;height:47px;padding:0 12px;border:1px solid #d1dfe8;border-radius:9px;
    background:#fff;color:#153d5d;font:inherit;font-size:11px;outline:0
}
.checkout-billing-fields input:focus,.checkout-billing-fields select:focus{border-color:#72b5dc;box-shadow:0 0 0 3px rgba(8,116,182,.07)}
.checkout-billing-help{padding:11px 12px;border-radius:9px;background:#eef7fc;color:#52748d;font-size:10px;line-height:1.5}
.customer-invoice-link.credit-note{background:#fff3e4!important;color:#a46616!important}
@media(max-width:700px){
    .checkout-billing-choice{align-items:flex-start;flex-direction:column}
    .checkout-billing-switch{width:100%;justify-content:space-between}
    .checkout-billing-fields{grid-template-columns:1fr}
    .checkout-billing-fields .full{grid-column:auto}
}

/* Checkout · dirección persistente del cliente */
.checkout-address-location{
    display:block!important;
    margin-top:3px!important;
    color:#7890a1!important;
    font-size:7px!important;
    line-height:1.35!important;
}
.checkout-delivery-title>span{
    max-width:310px;
    text-align:right;
    line-height:1.35;
}
@media(max-width:700px){
    .checkout-delivery-title>span{
        max-width:none;
        text-align:left;
    }
}

/* Producto · imagen limpia + descarga protegida */
.product-image-protected-view{
    position:relative;
    overflow:hidden;
    user-select:none;
    -webkit-user-select:none;
}
.product-image-protected-view img,
.product-card img{
    -webkit-user-drag:none;
    user-select:none;
}
.product-image-download{
    position:absolute;
    right:14px;
    bottom:14px;
    min-height:40px;
    display:inline-flex;
    align-items:center;
    gap:7px;
    padding:0 12px;
    border:1px solid rgba(8,113,173,.18);
    border-radius:9px;
    background:rgba(255,255,255,.95);
    color:#0870ad;
    box-shadow:0 8px 24px rgba(4,51,86,.11);
    backdrop-filter:blur(7px);
    font-size:9px;
    font-weight:800;
    transition:.18s;
}
.product-image-download:hover{
    transform:translateY(-1px);
    background:#fff;
    box-shadow:0 10px 28px rgba(4,51,86,.16);
}
.product-image-download svg{
    width:16px;
    height:16px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}
@media(max-width:650px){
    .product-image-download{right:10px;bottom:10px}
}

.checkout-coupon-card{border-color:#cfe0ea!important}
.checkout-coupon-box{display:grid;grid-template-columns:1fr minmax(180px,.65fr);align-items:center;gap:15px;padding:15px;border-radius:11px;background:#f7fbfd}
.checkout-coupon-box small,.checkout-coupon-box strong,.checkout-coupon-box span{display:block}.checkout-coupon-box small{font-size:8px;color:#0870ad;font-weight:900;letter-spacing:.1em}.checkout-coupon-box strong{margin-top:3px;color:#123f61;font-size:12px}.checkout-coupon-box span{margin-top:2px;color:#8295a4;font-size:9px}.checkout-coupon-box input{height:43px;padding:0 11px;border:1px solid #cfdfe8;border-radius:8px;text-transform:uppercase;font-weight:800;color:#123f61}
@media(max-width:650px){.checkout-coupon-box{grid-template-columns:1fr}}

/* Checkout · cupón AJAX */
.checkout-coupon-box{
    position:relative;
}
.checkout-coupon-box.applied{
    border:1px solid #b9ddc7;
    background:#f5fbf7;
}
.checkout-coupon-entry{
    display:grid;
    grid-template-columns:minmax(130px,1fr) auto auto;
    gap:6px;
}
.checkout-coupon-entry button{
    min-height:43px;
    padding:0 12px;
    border:0;
    border-radius:8px;
    background:#0871ad;
    color:#fff;
    font-size:9px;
    font-weight:900;
    cursor:pointer;
}
.checkout-coupon-entry button:disabled{
    opacity:.55;
    cursor:wait;
}
.checkout-coupon-entry button.remove{
    border:1px solid #d7e2e9;
    background:#fff;
    color:#698296;
}
.checkout-coupon-feedback{
    grid-column:1/-1;
    padding:9px 10px;
    border-radius:8px;
    background:#edf5fa;
    color:#53738a;
    font-size:9px;
    font-weight:700;
}
.checkout-coupon-feedback.success{
    background:#eaf6ef;
    color:#267554;
}
.checkout-coupon-feedback.error{
    background:#fff1ef;
    color:#a45042;
}
.summary-coupon-row{
    color:#287451;
}
.summary-coupon-row small{
    margin-left:4px;
    padding:2px 5px;
    border-radius:5px;
    background:#eaf6ef;
    color:#287451;
    font-size:8px;
    font-weight:900;
}
.summary-coupon-row b{
    color:#287451!important;
}
@media(max-width:650px){
    .checkout-coupon-entry{
        grid-template-columns:1fr auto;
    }
    .checkout-coupon-entry input{
        grid-column:1/-1;
    }
}

/* Mercado Pago · error controlado */
.payment-error-page{
    min-height:62vh;
    display:grid;
    place-items:center;
    padding:48px 18px;
    background:#f7fafc;
}
.payment-error-card{
    width:min(100%,560px);
    padding:30px;
    border:1px solid #dde8ef;
    border-radius:18px;
    background:#fff;
    text-align:center;
    box-shadow:0 18px 50px rgba(6,55,94,.07);
}
.payment-error-icon{
    width:52px;height:52px;
    display:grid;place-items:center;
    margin:0 auto 14px;
    border-radius:15px;
    background:#fff1ef;
    color:#ad5445;
    font-size:24px;
    font-weight:900;
}
.payment-error-card>small{
    color:#a55b4e;
    font-size:9px;
    font-weight:900;
    letter-spacing:.12em;
}
.payment-error-card h1{
    margin:7px 0 8px;
    color:#073e6b;
    font-size:24px;
}
.payment-error-card>p{
    margin:0;
    color:#748b9c;
    font-size:11px;
    line-height:1.55;
}
.payment-error-note{
    margin-top:20px;
    padding:15px;
    border-radius:11px;
    background:#f6fafc;
}
.payment-error-note strong,
.payment-error-note span{display:block}
.payment-error-note strong{color:#174563;font-size:11px}
.payment-error-note span{margin-top:4px;color:#8094a3;font-size:9px}
.payment-error-actions{
    display:flex;
    justify-content:center;
    gap:8px;
    margin-top:20px;
}
.payment-error-actions a{
    min-height:42px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 14px;
    border-radius:9px;
    font-size:10px;
    font-weight:900;
}
.payment-error-actions .primary{background:#0871ad;color:#fff}
.payment-error-actions .secondary{background:#eef3f6;color:#58758a}
.payment-error-ref{display:block!important;margin-top:16px;color:#9aa9b3!important}

/* AJUSTES 20/08/2026 · Catálogo y cards */
.categories-toggle{border:0;background:transparent;color:var(--blue);font-size:11px;font-weight:800;cursor:pointer;padding:6px 0}
.category-card-extra{display:none}.category-grid.show-all-categories .category-card-extra{display:block;animation:categoryReveal .24s ease both}@keyframes categoryReveal{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
.catalog-layout{max-width:1380px;grid-template-columns:205px minmax(0,1fr);gap:24px}.catalog-content{min-width:0}.catalog-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.catalog-grid .product-photo{height:185px}.catalog-grid .product-info{padding:12px 13px;min-height:205px}.catalog-grid .product-info>a h3{min-height:38px;height:auto;font-size:12px;line-height:1.35;margin:5px 0 7px}.catalog-grid .product-card-spacer{min-height:3px}.catalog-grid .product-price{min-height:35px}.catalog-grid .product-price strong{font-size:15px}.catalog-grid .product-card-cart{gap:7px;margin-top:8px}.catalog-grid .product-card-cart .add-cart-button{min-height:34px;padding:8px 7px;font-size:9px}.catalog-grid .product-qty{min-height:30px}.catalog-grid .product-qty button{width:29px;height:30px}.catalog-grid .product-qty input{height:30px!important;width:35px!important}
.product-price{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;column-gap:7px}.product-price del{grid-column:1/-1}.product-line-total{justify-self:end;color:#178254;background:#e8f7ef;border:1px solid #c8ead7;border-radius:6px;padding:4px 6px;font-size:10px;font-weight:900;white-space:nowrap}.product-added-state{margin-top:7px;color:#13744b;background:#edf9f2;border:1px solid #d0ecdc;border-radius:6px;padding:6px 8px;font-size:9px;font-weight:800;text-align:center}.product-added-state[hidden]{display:none!important}.product-card.is-in-cart{border-color:#a8dcc0;box-shadow:0 0 0 1px rgba(29,133,83,.06)}.product-card.is-in-cart .add-cart-button{border-color:#178254;color:#178254;background:#f3fbf7}
.catalog-toolbar-controls{display:flex;align-items:center;gap:9px}.catalog-toolbar-controls form{margin:0}.catalog-per-page label{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:10px;font-weight:800}.catalog-toolbar .catalog-per-page select{width:72px;margin:0;padding:9px 8px}.catalog-pagination{margin-top:28px;display:flex;justify-content:center;align-items:center;gap:16px;color:var(--muted);font-size:10px}.catalog-pagination a{padding:9px 12px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--navy);font-weight:800}.catalog-pagination a.disabled{opacity:.35;pointer-events:none}.catalog-pagination strong{color:var(--navy)}.footer-whatsapp{color:#16814f!important;font-weight:800}.footer-whatsapp:hover{text-decoration:underline}
@media(max-width:1180px){.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1000px){.catalog-layout{display:block;margin-top:25px}.filters{position:static;margin-bottom:25px}.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.catalog-toolbar{align-items:flex-start;gap:12px;flex-direction:column}.catalog-toolbar-controls{width:100%;justify-content:space-between}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:420px){.catalog-grid{grid-template-columns:1fr}.catalog-grid .product-photo{height:220px}}

/* Checkout · primera dirección y gestión rápida */
.checkout-first-address-notice{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin:0 0 16px;
    padding:15px 16px;
    border:1px solid #bfe3d0;
    border-radius:12px;
    background:#f1fbf6;
}
.checkout-first-address-notice small,
.checkout-first-address-notice strong,
.checkout-first-address-notice span{display:block}
.checkout-first-address-notice small{
    color:#218256;
    font-size:8px;
    font-weight:900;
    letter-spacing:.11em;
}
.checkout-first-address-notice strong{
    margin-top:4px;
    color:#16583d;
    font-size:13px;
}
.checkout-first-address-notice span{
    margin-top:4px;
    color:#638172;
    font-size:9px;
    line-height:1.5;
}
.checkout-first-address-notice>b{
    display:grid;
    place-items:center;
    flex:0 0 34px;
    width:34px;
    height:34px;
    border-radius:50%;
    background:#2ba56b;
    color:#fff;
}
.checkout-address-actions{
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
}
.checkout-address-actions button{
    border:1px solid #b8d9ea;
    border-radius:8px;
    background:#eff8fd;
    color:#0871ad;
    padding:8px 10px;
    font-size:9px;
    font-weight:800;
    cursor:pointer;
}
.checkout-profile-phone-required input{
    width:100%;
    margin-top:7px;
    border:1px solid #bad7e7;
    border-radius:8px;
    padding:9px 10px;
    background:#fff;
    color:#073e6b;
    font-size:11px;
    outline:none;
}
.checkout-profile-phone-required input:focus{
    border-color:#0871ad;
    box-shadow:0 0 0 3px rgba(8,113,173,.08);
}
.checkout-cancel-new-address{
    margin-top:10px;
    border:0;
    background:transparent;
    color:#6e8492;
    font-size:9px;
    font-weight:800;
    cursor:pointer;
    text-decoration:underline;
}
@media (max-width:700px){
    .checkout-first-address-notice{align-items:flex-start}
    .checkout-address-actions{width:100%;justify-content:flex-start}
}


/* Mayorista + Cuenta Corriente 2026-08-20 */
.wholesale-price-badge{display:inline-flex;align-items:center;width:max-content;margin:0 0 5px;padding:4px 7px;border:1px solid #cce9d9;border-radius:999px;background:#edf9f2;color:#16784d;font-size:8px;font-weight:900;letter-spacing:.03em;text-transform:uppercase}
.wholesale-detail-badge{display:inline-flex;align-items:center;gap:5px;margin:10px 0 0;padding:7px 10px;border:1px solid #c8ead7;border-radius:8px;background:#edf9f2;color:#14764a;font-size:10px;font-weight:900}
.cart-price-list{margin:10px 25px 0;padding:10px 12px;border:1px solid #c8ead7;border-radius:10px;background:linear-gradient(135deg,#f4fcf7,#ecf9f2);display:flex;gap:9px;align-items:center;color:#176f49}.cart-price-list[hidden]{display:none!important}.cart-price-list>span{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:#1b9b62;color:#fff;font-weight:900}.cart-price-list strong,.cart-price-list small{display:block}.cart-price-list strong{font-size:10px}.cart-price-list small{margin-top:2px;color:#648272;font-size:8px;line-height:1.35}
.checkout-wholesale-banner{margin:-6px 0 14px;padding:11px 12px;border:1px solid #c9ead8;border-radius:9px;background:linear-gradient(135deg,#f5fcf8,#edf9f2);color:#176f49}.checkout-wholesale-banner b,.checkout-wholesale-banner small{display:block}.checkout-wholesale-banner b{font-size:11px}.checkout-wholesale-banner small{margin-top:3px;color:#688476;font-size:8px;line-height:1.45}.cc-no-limit-note{margin-top:10px;padding:10px 12px;border-radius:8px;background:#fff8e8;border:1px solid #f4dfad;color:#896522;font-size:9px;font-weight:700}
.customer-wholesale-active .cart-item .cart-unit-price{color:#178254;font-weight:800}
@media(max-width:720px){.cart-price-list{margin-left:16px;margin-right:16px}.wholesale-detail-badge{font-size:9px}.checkout-wholesale-banner{padding:10px}}

/* =========================================================
   MI CUENTA · Mayorista + Cuenta Corriente
   ========================================================= */
.customer-account-summary{grid-template-columns:repeat(4,minmax(100px,1fr))}
.customer-account-summary article.wholesale{background:rgba(65,180,120,.18)}
.customer-account-summary article.cc-ok{background:rgba(51,190,130,.18)}
.customer-account-summary article.cc-alert{background:rgba(235,78,78,.22)}
.customer-commercial-section{overflow:hidden}
.commercial-head{gap:18px;align-items:center;justify-content:space-between}
.commercial-badges{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.commercial-badges span{display:inline-flex;align-items:center;min-height:30px;padding:0 11px;border-radius:999px;font-size:10px;font-weight:900}
.wholesale-badge{background:#e9f8ef;color:#187247;border:1px solid #c8ead6}
.cc-badge.active{background:#e8f4ff;color:#075493;border:1px solid #c7def2}
.cc-badge.danger{background:#fff0f0;color:#b4232c;border:1px solid #ffd0d2}
.wholesale-account-note{display:flex;align-items:center;gap:13px;margin:18px 0;padding:14px 16px;border-radius:14px;background:linear-gradient(135deg,#f0fff6,#f8fffb);border:1px solid #ceeeda}
.wholesale-account-icon{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border-radius:12px;background:#1f9d61;color:#fff;font-weight:900;font-size:19px}
.wholesale-account-note strong,.wholesale-account-note span{display:block}.wholesale-account-note strong{font-size:13px;color:#164d36}.wholesale-account-note span{margin-top:3px;font-size:10px;color:#5f7d6e;line-height:1.45}
.cc-customer-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0}
.cc-customer-kpis article{padding:15px;border:1px solid #dce8ef;border-radius:14px;background:#fbfdff}
.cc-customer-kpis article.danger{border-color:#ffcfd2;background:#fff6f6}
.cc-customer-kpis small,.cc-customer-kpis strong,.cc-customer-kpis span{display:block}
.cc-customer-kpis small{font-size:9px;letter-spacing:.08em;font-weight:900;color:#748b9d}.cc-customer-kpis strong{margin:6px 0 4px;font-size:22px;color:#0a4779}.cc-customer-kpis article.danger strong{color:#c42b34}.cc-customer-kpis span{font-size:10px;color:#7890a2}
.cc-limit-customer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0 20px}
.cc-limit-customer-grid>article{position:relative;display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;padding:13px 14px 16px;border:1px solid #dbe8f0;border-radius:14px;background:#fff;overflow:hidden}
.cc-limit-customer-grid>article.disabled{opacity:.55;background:#f8fafb}.cc-limit-customer-grid>article>div{width:46px;height:46px;display:grid;place-items:center;border-radius:12px;background:#edf6fc;color:#0d5b95}.cc-limit-customer-grid>article>div span{font-size:18px;font-weight:900;line-height:1}.cc-limit-customer-grid>article>div small{font-size:7px;font-weight:900;letter-spacing:.08em}.cc-limit-customer-grid section small,.cc-limit-customer-grid section strong,.cc-limit-customer-grid section em{display:block}.cc-limit-customer-grid section small{font-size:8px;color:#7c91a1}.cc-limit-customer-grid section strong{font-size:14px;color:#143e5c}.cc-limit-customer-grid section em{margin-top:2px;font-size:9px;font-style:normal;color:#648093}.cc-limit-customer-grid>article>i{position:absolute;left:0;bottom:0;width:var(--cc-progress);height:4px;background:#2ba56b;transition:width .35s ease}
.cc-customer-block{margin-top:8px;border:1px solid #dbe6ee;border-radius:15px;overflow:hidden}.cc-customer-title{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;background:#f7fafc;border-bottom:1px solid #e4edf3}.cc-customer-title small{display:block;font-size:8px;color:#7890a0;font-weight:900;letter-spacing:.1em}.cc-customer-title h3{margin:2px 0 0;font-size:15px;color:#143f61}.cc-customer-title>span{padding:5px 9px;border-radius:999px;background:#e9f2f8;color:#3a657f;font-size:9px;font-weight:900}
.cc-customer-orders{display:grid}.cc-customer-orders>article{display:grid;grid-template-columns:minmax(150px,1.4fr) auto repeat(3,minmax(82px,.7fr)) auto;gap:10px;align-items:center;padding:13px 15px;border-top:1px solid #edf2f5}.cc-customer-orders>article:first-child{border-top:0}.cc-customer-orders>article.expired{background:#fff7f7;border-left:4px solid #dc3545}.cc-customer-orders>article.paid{background:#fbfffc}.cc-order-customer-main small,.cc-order-customer-main strong,.cc-order-customer-main span{display:block}.cc-order-customer-main small{font-size:8px;color:#8799a7}.cc-order-customer-main strong{margin:2px 0;font-size:12px;color:#183f5c}.cc-order-customer-main span{font-size:9px;color:#688092}.cc-customer-state{padding:5px 8px;border-radius:999px;font-size:8px;font-weight:900;white-space:nowrap}.cc-customer-state.pending{background:#fff6dc;color:#8d6a00}.cc-customer-state.partial{background:#eef0ff;color:#5860ad}.cc-customer-state.expired{background:#ffe6e8;color:#b41e29}.cc-customer-state.paid{background:#e6f7ed;color:#23744e}.cc-order-customer-money small,.cc-order-customer-money strong{display:block}.cc-order-customer-money small{font-size:8px;color:#8295a3}.cc-order-customer-money strong{margin-top:2px;font-size:11px;color:#284b63}.cc-order-customer-money.pending strong{color:#0b5d93}.cc-customer-orders a{font-size:9px;font-weight:900;color:#0962a1;white-space:nowrap}.cc-empty-customer{padding:24px;text-align:center;color:#758b9b;font-size:11px}
.cc-payment-history{margin-top:12px;border:1px solid #dce7ee;border-radius:13px;background:#fff;overflow:hidden}.cc-payment-history summary{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;cursor:pointer;font-size:10px;font-weight:900;color:#244e6b;background:#f9fbfc;list-style:none}.cc-payment-history summary::-webkit-details-marker{display:none}.cc-payment-history summary span{padding:4px 7px;border-radius:999px;background:#e9f1f6}.cc-payment-history>div article{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-top:1px solid #edf2f5}.cc-payment-history article strong,.cc-payment-history article small{display:block}.cc-payment-history article strong{font-size:10px;color:#264b65}.cc-payment-history article small{margin-top:2px;font-size:9px;color:#7d919f}.cc-payment-history article b{font-size:11px;color:#228457}
@media(max-width:1000px){.customer-account-summary{grid-template-columns:repeat(2,1fr)}.cc-customer-orders>article{grid-template-columns:1.4fr auto 1fr 1fr}.cc-order-customer-money:nth-of-type(2){display:none}.cc-customer-orders a{grid-column:4}}
@media(max-width:700px){.commercial-head{align-items:flex-start;flex-direction:column}.commercial-badges{justify-content:flex-start}.cc-customer-kpis,.cc-limit-customer-grid{grid-template-columns:1fr}.cc-customer-orders>article{grid-template-columns:1fr auto}.cc-order-customer-money{display:block!important}.cc-customer-orders a{grid-column:1/-1;justify-self:start}.customer-account-summary{grid-template-columns:repeat(2,1fr)!important}}
@media(max-width:460px){.customer-account-summary{grid-template-columns:1fr!important}}
