/* =========================
   ENASWIM - TIENDA
   CSS independiente para /tienda/
========================= */

:root {
    --ena-blue: #001e62;
    --ena-coral: #ff6b52;
    --ena-coral-dark: #e65a43;
    --ena-light: #e3f6f9;
    --ena-text: #28323b;
    --ena-muted: #66717b;
    --ena-side: clamp(12px, 2.5vw, 44px);
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
html,body{min-height:100%}
body.tienda-body{margin:0;color:var(--ena-text);background-color:var(--ena-light);background-image:url('/imagenes/fondo.png');background-size:cover;background-position:center;background-repeat:no-repeat;background-attachment:scroll}
a{color:inherit}

/* Navbar */
.navbar-custom{position:relative;z-index:100;background-color:var(--ena-light)!important;background-image:url('/imagenes/fondo_olas.png')!important;background-size:280px auto!important;background-position:left top!important;background-repeat:repeat!important;border-bottom:1px solid rgba(0,30,98,.1);box-shadow:0 5px 18px rgba(0,30,98,.08)}
.navbar-logo{display:block;width:auto;height:45px}.navbar-nav .nav-link{color:#222!important;font-size:13px;font-weight:600;text-transform:uppercase}.navbar-nav .nav-link:hover,.navbar-nav .nav-link.active-link{color:var(--ena-coral)!important}.navbar-nav .nav-liquidacion{font-weight:800}.navbar-actions{flex-shrink:0}.navbar-icon-button{display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;background:transparent;color:#222}.nav-icon{font-size:1.2rem}.nav-account-link,.nav-cart-link{display:inline-flex;align-items:center;gap:7px;color:#222!important;text-decoration:none}.nav-account-link:hover,.nav-cart-link:hover,.navbar-icon-button:hover{color:var(--ena-coral)!important}.cuenta-texto,#carritoTotal{font-size:13px;font-weight:800;text-transform:uppercase}

/* Main catalog */
.tienda-main{padding-bottom:30px}.tienda-hero{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);width:100%;height:clamp(230px,15vw,285px);min-height:230px;margin:0;overflow:hidden;border:0;border-bottom:1px solid rgba(255,255,255,.72);border-radius:0 0 26px 26px;background:rgba(142,194,220,.76);box-shadow:0 8px 22px rgba(0,30,98,.08);backdrop-filter:none}.tienda-hero-copy{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:28px clamp(30px,6.5vw,120px)}.tienda-hero-copy p{margin:0 0 6px;color:var(--ena-coral);font-size:.86rem;font-weight:900;text-transform:uppercase;letter-spacing:1.2px}.tienda-hero-copy h1{margin:0 0 7px;color:var(--ena-blue);font-size:clamp(2.65rem,4.4vw,4.65rem);font-weight:900;line-height:.95;text-transform:uppercase}.tienda-hero-copy span{font-size:clamp(1rem,1.25vw,1.25rem);font-weight:700}.tienda-hero-image{height:100%;min-height:0}.tienda-hero-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 42%}
.primary-link{display:inline-flex;width:max-content;padding:12px 22px;border-radius:999px;background:var(--ena-coral);color:#fff;text-decoration:none;font-weight:900}.primary-link:hover{background:var(--ena-coral-dark);color:#fff}
.catalog-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:22px;margin:24px var(--ena-side) 0;scroll-margin-top:100px}.catalog-sidebar{display:flex;flex-direction:column;gap:18px}.filter-card{padding:24px;border:1px solid rgba(255,255,255,.8);border-radius:25px;background:rgba(227,246,249,.92);box-shadow:0 8px 20px rgba(0,30,98,.08);backdrop-filter:none}.filter-card h2{margin:0 0 18px;color:var(--ena-blue);font-size:1.25rem;font-weight:900;text-transform:uppercase}.filter-card label{display:block;margin:12px 0 6px;font-size:.86rem;font-weight:800}.filter-card input,.filter-card select,.order-form select{width:100%;padding:11px 12px;border:1px solid rgba(0,30,98,.16);border-radius:12px;background:#fff;color:var(--ena-text)}.price-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.filter-card button{width:100%;margin-top:16px;padding:12px;border:0;border-radius:999px;background:var(--ena-coral);color:#fff;font-weight:900}.clear-filter{display:block;margin-top:10px;text-align:center;color:var(--ena-blue);font-weight:700}.category-links a,.category-links .category-disabled,.shop-help a{display:flex;align-items:center;gap:9px;padding:9px 0;text-decoration:none;font-weight:700;border-bottom:1px solid rgba(0,30,98,.08)}.category-links a:last-child,.category-links .category-disabled:last-child,.shop-help a:last-child{border-bottom:0}.category-links a.active,.category-links a:hover,.shop-help a:hover{color:var(--ena-coral)}.category-links .category-disabled{justify-content:space-between;color:var(--ena-muted);opacity:.48;cursor:not-allowed;user-select:none}.category-links .category-disabled small{padding:4px 7px;border-radius:999px;background:rgba(0,30,98,.08);font-size:.62rem;font-weight:900;text-transform:uppercase;letter-spacing:.35px}.recent-products>p{color:var(--ena-muted)}.recent-products>a{display:grid;grid-template-columns:64px minmax(0,1fr);gap:12px;align-items:center;padding:10px 0;text-decoration:none;border-bottom:1px solid rgba(0,30,98,.08)}.recent-products img{width:64px;height:78px;object-fit:cover;border-radius:10px}.recent-products span{display:flex;flex-direction:column;min-width:0}.recent-products strong{font-size:.9rem}.recent-products small{margin-top:4px;font-weight:800}
.catalog-content{min-width:0;padding:24px;border:1px solid rgba(255,255,255,.8);border-radius:28px;background:rgba(255,255,255,.88);box-shadow:0 10px 26px rgba(0,30,98,.10);backdrop-filter:none}.catalog-toolbar{display:grid;grid-template-columns:auto 1fr 230px;gap:18px;align-items:center;margin-bottom:24px}.catalog-toolbar p{margin:0}.view-buttons{display:flex}.view-buttons button{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border:1px solid rgba(0,30,98,.12);background:#fff;color:var(--ena-blue)}.view-buttons button:first-child{border-radius:12px 0 0 12px}.view-buttons button:last-child{border-radius:0 12px 12px 0}.view-buttons button.active{background:var(--ena-coral);color:#fff}.order-form select{padding:12px}
.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.product-card{overflow:hidden;border:1px solid rgba(0,30,98,.08);border-radius:22px;background:#fff;box-shadow:0 12px 30px rgba(0,30,98,.09);transition:transform .22s ease,box-shadow .22s ease}.product-card:hover{transform:translateY(-2px);box-shadow:0 18px 38px rgba(0,30,98,.16)}.product-image{position:relative;display:block;height:300px;overflow:hidden;background:#f7fbfc}.product-image img{display:block;width:100%;height:100%;object-fit:contain;transition:none}.sale-badge,.stock-badge{position:absolute;top:14px;padding:7px 11px;border-radius:999px;color:#fff;font-size:.72rem;font-weight:900;text-transform:uppercase}.sale-badge{left:14px;background:var(--ena-coral)}.stock-badge{right:14px;background:var(--ena-blue)}.product-info{padding:15px}.product-info>span{color:var(--ena-coral);font-size:.72rem;font-weight:900;text-transform:uppercase}.product-info h3{margin:6px 0;font-size:1.08rem;font-weight:900}.product-info h3 a{text-decoration:none;color:var(--ena-blue)}.product-meta{min-height:40px;margin:0 0 8px;color:var(--ena-muted);font-size:.86rem}.product-info>strong{display:block;font-size:1.05rem}.product-availability{display:inline-flex;align-items:center;gap:7px;width:max-content;max-width:100%;margin-top:9px;padding:7px 10px;border-radius:999px;background:#eaf8f1;color:#19724c;font-size:.78rem;font-weight:900;line-height:1.15}.product-availability i{font-size:.9rem}.product-availability.low-stock{background:#fff3dc;color:#a25a00}.product-availability.out-stock{background:#fff0f0;color:#a33131}.product-button{display:inline-flex;margin-top:14px;padding:10px 17px;border-radius:999px;background:var(--ena-blue);color:#fff;text-decoration:none;font-size:.85rem;font-weight:900}.list-view{grid-template-columns:1fr}.list-view .product-card{display:grid;grid-template-columns:220px minmax(0,1fr)}.list-view .product-image{aspect-ratio:auto;height:260px}.pagination-nav{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:30px}.pagination-nav a{padding:9px 14px;border-radius:999px;background:var(--ena-light);color:var(--ena-blue);text-decoration:none;font-weight:800}.pagination-nav a.active{background:var(--ena-coral);color:#fff}

/* Product detail */
.breadcrumbs{display:flex;gap:9px;align-items:center;margin:20px var(--ena-side);font-size:.9rem}.breadcrumbs a{text-decoration:none;color:var(--ena-blue)}.product-page{padding-bottom:28px}.product-detail{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);gap:28px;margin:0 var(--ena-side);padding:28px;border-radius:30px;background:rgba(255,255,255,.9);box-shadow:0 10px 26px rgba(0,30,98,.10)}.main-product-image{height:min(540px,58vh);overflow:hidden;border-radius:24px;background:#fff}.main-product-image img{display:block;width:100%;height:100%;object-fit:contain}.product-thumbnails{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:12px}.product-thumbnails button{padding:0;border:2px solid transparent;border-radius:12px;background:#fff;overflow:hidden}.product-thumbnails button.active{border-color:var(--ena-coral)}.product-thumbnails img{width:100%;height:78px;object-fit:cover}.product-summary{padding:15px}.product-category-label,.section-kicker{margin:0 0 7px;color:var(--ena-coral);font-weight:900;text-transform:uppercase;letter-spacing:1.1px}.product-summary h1{margin:0;color:var(--ena-blue);font-size:clamp(2.7rem,4.8vw,5rem);font-weight:900;line-height:.95}.product-price{margin:18px 0;color:var(--ena-blue);font-size:1.8rem;font-weight:900}.product-data{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.product-data div{padding:13px;border-radius:15px;background:var(--ena-light)}.product-data dt{font-size:.72rem;text-transform:uppercase;color:var(--ena-muted)}.product-data dd{margin:3px 0 0;font-weight:800}.product-description{margin:22px 0;line-height:1.75}.size-title{display:flex;justify-content:space-between;gap:12px}.size-title a{color:var(--ena-coral);font-weight:800}.size-options{display:flex;flex-wrap:wrap;gap:9px;margin-top:11px}.size-options button{min-width:58px;padding:9px;border:1px solid rgba(0,30,98,.18);border-radius:13px;background:#fff;color:var(--ena-blue);font-weight:900}.size-options button small{display:block;font-size:.65rem;color:var(--ena-muted)}.size-options button.active{border-color:var(--ena-coral);box-shadow:0 0 0 3px rgba(255,107,82,.14)}.size-options button:disabled{opacity:.35}.product-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.secondary-link{display:inline-flex;width:max-content;padding:12px 22px;border:1px solid var(--ena-blue);border-radius:999px;color:var(--ena-blue);text-decoration:none;font-weight:900}.product-help-links{display:flex;flex-direction:column;gap:8px;margin-top:20px}.product-help-links a{text-decoration:none;color:var(--ena-blue);font-weight:700}.feature-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin:24px var(--ena-side) 0}.feature-grid div{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:130px;padding:18px;border-radius:22px;background:rgba(255,255,255,.9);box-shadow:0 12px 28px rgba(0,30,98,.09);text-align:center}.feature-grid i{color:var(--ena-blue);font-size:2rem}.feature-grid span{margin-top:9px;font-size:.82rem;font-weight:900;text-transform:uppercase}.product-information-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:24px var(--ena-side) 0}

/* Information pages */
.simple-page{padding:24px var(--ena-side) 30px}.info-bubble{padding:clamp(28px,4vw,58px);border:1px solid rgba(255,255,255,.8);border-radius:28px;background:rgba(255,255,255,.9);box-shadow:0 10px 26px rgba(0,30,98,.10);backdrop-filter:none}.info-bubble h1,.page-intro h1{color:var(--ena-blue);font-size:clamp(2.8rem,5vw,5rem);font-weight:900;line-height:.95}.info-bubble h2{color:var(--ena-blue);font-weight:900}.guide-hero{display:grid;grid-template-columns:1fr auto;align-items:center}.guide-hero>i{font-size:clamp(6rem,15vw,13rem);color:rgba(0,30,98,.14)}.measurement-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:24px}.measurement-grid article{position:relative;padding:25px}.measurement-grid span{display:flex;align-items:center;justify-content:center;width:45px;height:45px;border-radius:50%;background:var(--ena-coral);color:#fff;font-weight:900}.measurement-grid h2{margin-top:18px;font-size:1.25rem}.size-section{margin-top:24px;padding:clamp(28px,4vw,55px);border-radius:28px;background:rgba(255,255,255,.9);box-shadow:0 10px 26px rgba(0,30,98,.10)}.size-section>h1{color:var(--ena-blue);font-size:clamp(2.5rem,4vw,4rem);font-weight:900}.size-table-card{margin-top:20px}.size-table-card h2{font-size:1.3rem}.size-table{width:100%;border-collapse:separate;border-spacing:0;overflow:hidden;border-radius:18px}.size-table th,.size-table td{padding:12px;text-align:center;border-bottom:1px solid rgba(0,30,98,.07)}.size-table th{min-width:120px;background:var(--ena-blue);color:#fff;text-align:left}.size-table tr:nth-child(even) td{background:rgba(227,246,249,.8)}.pdf-embed{margin-top:24px}.pdf-embed object{width:100%;height:760px;margin-top:18px;border-radius:18px}.cuts-section{margin-top:24px;padding:clamp(28px,4vw,55px);border-radius:28px;background:rgba(255,255,255,.9);box-shadow:0 10px 26px rgba(0,30,98,.10)}.cuts-section>h2{color:var(--ena-blue);font-size:clamp(2.3rem,4vw,4rem);font-weight:900}.cuts-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:20px}.cut-card{display:grid;grid-template-columns:150px minmax(0,1fr);gap:20px;align-items:center;padding:20px;border-radius:22px;background:var(--ena-light)}.cut-card img{width:150px;height:180px;object-fit:contain;border-radius:16px;background:#fff}.cut-card h3{color:var(--ena-blue);font-weight:900}.cut-card p{margin:0;line-height:1.65}.policy-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:24px;margin-top:24px}.policy-card>i{color:var(--ena-blue);font-size:2.5rem}.wholesale-section,.shipping-section{margin-top:24px}.discount-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:22px}.discount-grid div,.shipping-grid div{display:flex;flex-direction:column;gap:7px;padding:20px;border-radius:18px;background:var(--ena-light)}.discount-grid strong,.shipping-grid strong{color:var(--ena-blue)}.shipping-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:20px}.free-shipping{background:var(--ena-blue)!important;color:#fff}.free-shipping strong{color:#fff}.footer-ena{background-color:rgba(227,246,249,.96);background-image:url('/imagenes/fondo_olas.png');background-size:280px auto;background-repeat:repeat;border-top:1px solid rgba(0,30,98,.1)}.footer-logo{height:55px}.footer-text{color:#333}.footer-links a{color:var(--ena-blue);font-weight:700;text-decoration:none}.footer-links a:hover{color:var(--ena-coral)}.footer-copy{color:#555}

@media(max-width:1200px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-grid{grid-template-columns:repeat(3,1fr)}.discount-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:991px){body.tienda-body{background-attachment:scroll}.navbar-collapse{margin-top:16px;padding:18px;border-radius:16px;background:rgba(255,255,255,.96)}.navbar-actions{margin-left:auto}.tienda-hero{grid-template-columns:1fr;height:auto;min-height:0}.tienda-hero-copy{min-height:220px}.tienda-hero-image{height:250px}.catalog-layout{grid-template-columns:1fr}.catalog-sidebar{display:grid;grid-template-columns:repeat(2,1fr)}.catalog-toolbar{grid-template-columns:auto 1fr}.order-form{grid-column:1/-1}.product-detail{grid-template-columns:1fr}.product-information-grid{grid-template-columns:1fr}.measurement-grid{grid-template-columns:repeat(2,1fr)}.policy-grid{grid-template-columns:1fr}.shipping-grid{grid-template-columns:1fr}.cuts-grid{grid-template-columns:1fr}}
@media(max-width:767px){:root{--ena-side:10px}.navbar-logo{height:39px}.navbar-actions{gap:14px!important}.tienda-hero-copy{min-height:190px;padding:30px 24px}.tienda-hero-image{height:220px}.tienda-hero-copy h1{font-size:clamp(2.8rem,13vw,4.5rem)}.catalog-sidebar{display:flex}.catalog-content{padding:15px}.catalog-toolbar{grid-template-columns:1fr}.product-grid{grid-template-columns:1fr}.product-image{height:320px}.list-view .product-card{grid-template-columns:1fr}.list-view .product-image{height:auto;aspect-ratio:4/5}.product-detail{padding:15px}.main-product-image{height:430px}.product-data{grid-template-columns:1fr}.feature-grid{grid-template-columns:repeat(2,1fr)}.product-information-grid{gap:14px}.measurement-grid{grid-template-columns:1fr}.guide-hero{grid-template-columns:1fr}.guide-hero>i{display:none}.cut-card{grid-template-columns:1fr}.cut-card img{width:100%;height:220px}.discount-grid{grid-template-columns:1fr}.pdf-embed object{height:520px}}


/* =========================
   OPTIMIZACIÓN DE RENDERIZADO
========================= */

.product-card,
.feature-grid > div,
.product-information-grid > article,
.size-table-card,
.cut-card {
    content-visibility: auto;
    contain-intrinsic-size: 420px;
}

.product-image img,
.main-product-image img,
.product-thumbnails img,
.recent-products img,
.tienda-hero-image img {
    background: #f7fbfc;
}


.filter-card select {
    cursor: pointer;
}

.filter-card select:focus,
.order-form select:focus {
    border-color: var(--ena-coral);
    box-shadow: 0 0 0 3px rgba(255, 107, 82, 0.14);
    outline: none;
}


/* =========================================================
   CARRITO, GUARDADOS Y COMPRA
========================================================= */

.nav-counter-link {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #222 !important;
    text-decoration: none;
}

.nav-counter-link:hover {
    color: var(--ena-coral) !important;
}

.nav-counter-badge {
    position: absolute;
    top: -10px;
    right: -11px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 20px;
    padding: 0 5px;
    border-radius: 999px;
    background: var(--ena-coral);
    color: #fff;
    font-size: .68rem;
    font-weight: 900;
    line-height: 1;
}

.store-flash-stack {
    display: grid;
    gap: 10px;
    margin: 18px var(--ena-side);
}

.store-flash {
    padding: 14px 18px;
    border-radius: 16px;
    font-weight: 800;
    box-shadow: 0 8px 22px rgba(0, 30, 98, .08);
}

.store-flash-success {
    background: #e8f8ef;
    color: #176a47;
}

.store-flash-error {
    background: #fff0f0;
    color: #a33131;
}

.store-flash-info {
    background: #eef5ff;
    color: var(--ena-blue);
}

.product-purchase-form {
    display: grid;
    gap: 18px;
    margin-top: 24px;
    padding: 18px;
    border-radius: 20px;
    background: var(--ena-light);
}

.size-selector {
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
}

.size-title legend {
    width: auto;
    margin: 0;
    font-size: 1rem;
    font-weight: 900;
}

.size-option {
    position: relative;
    display: inline-flex;
    cursor: pointer;
}

.size-option input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.size-option span {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 58px;
    padding: 9px;
    border: 1px solid rgba(0, 30, 98, .18);
    border-radius: 13px;
    background: #fff;
    color: var(--ena-blue);
    font-weight: 900;
}

.size-option small {
    display: block;
    color: var(--ena-muted);
    font-size: .65rem;
}

.size-option.active span,
.size-option:has(input:checked) span {
    border-color: var(--ena-coral);
    box-shadow: 0 0 0 3px rgba(255, 107, 82, .14);
}

.size-option.disabled {
    cursor: not-allowed;
    opacity: .35;
}

.purchase-controls {
    display: grid;
    grid-template-columns: minmax(90px, 120px) 1fr;
    gap: 12px;
    align-items: end;
}

.purchase-controls label {
    display: grid;
    gap: 7px;
    color: var(--ena-blue);
    font-size: .82rem;
    font-weight: 900;
    text-transform: uppercase;
}

.purchase-controls input,
.cart-quantity-form input {
    width: 100%;
    min-height: 46px;
    padding: 9px 12px;
    border: 1px solid rgba(0, 30, 98, .18);
    border-radius: 13px;
    background: #fff;
    color: var(--ena-blue);
    font-weight: 900;
}

.purchase-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: max-content;
    min-height: 46px;
    padding: 12px 22px;
    border: 0;
    border-radius: 999px;
    background: var(--ena-blue);
    color: #fff !important;
    text-decoration: none;
    font-weight: 900;
}

.purchase-controls .purchase-button {
    width: 100%;
}

.purchase-button:hover {
    filter: brightness(1.08);
}

.purchase-button:disabled {
    cursor: not-allowed;
    opacity: .48;
    filter: none;
}

.save-product-form {
    margin-top: 10px;
}

.save-product-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 11px 18px;
    border: 1px solid var(--ena-coral);
    border-radius: 999px;
    background: #fff;
    color: var(--ena-coral) !important;
    text-decoration: none;
    font-weight: 900;
}

.save-product-button.active {
    background: var(--ena-coral);
    color: #fff !important;
}

.login-to-buy {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 24px;
}

.account-store-page {
    min-height: 65vh;
    padding: 22px var(--ena-side) 40px;
}

.account-store-hero {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 22px;
    padding: 30px;
    border-radius: 28px;
    background: rgba(255, 255, 255, .92);
    box-shadow: 0 10px 26px rgba(0, 30, 98, .10);
}

.account-store-hero p {
    margin: 0 0 5px;
    color: var(--ena-coral);
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.account-store-hero h1 {
    margin: 0;
    color: var(--ena-blue);
    font-size: clamp(2.2rem, 5vw, 4.5rem);
    font-weight: 900;
    line-height: .95;
}

.account-store-hero span {
    display: block;
    margin-top: 10px;
    color: var(--ena-muted);
}

.empty-store-state {
    display: grid;
    place-items: center;
    min-height: 360px;
    padding: 38px;
    border-radius: 28px;
    background: rgba(255, 255, 255, .92);
    text-align: center;
    box-shadow: 0 10px 26px rgba(0, 30, 98, .10);
}

.empty-store-state i {
    color: var(--ena-coral);
    font-size: 3rem;
}

.empty-store-state h2 {
    margin: 12px 0 3px;
    color: var(--ena-blue);
    font-weight: 900;
}

.empty-store-state p {
    margin: 0 0 20px;
    color: var(--ena-muted);
}

.saved-products-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.saved-product-card {
    overflow: hidden;
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(0, 30, 98, .10);
}

.saved-product-image {
    display: block;
    height: 330px;
    background: #f7fbfc;
}

.saved-product-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.saved-product-info {
    padding: 20px;
}

.saved-product-info > span {
    color: var(--ena-coral);
    font-size: .75rem;
    font-weight: 900;
    text-transform: uppercase;
}

.saved-product-info h2 {
    margin: 6px 0;
    font-size: 1.35rem;
    font-weight: 900;
}

.saved-product-info h2 a {
    color: var(--ena-blue);
    text-decoration: none;
}

.saved-product-info p,
.saved-product-info small {
    color: var(--ena-muted);
}

.saved-product-info > strong {
    display: block;
    margin: 12px 0 5px;
    color: var(--ena-blue);
    font-size: 1.15rem;
}

.saved-product-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    margin-top: 18px;
}

.remove-link-button {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 4px;
    border: 0;
    background: transparent;
    color: #a33131;
    font-weight: 900;
}

.cart-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(290px, 360px);
    gap: 24px;
    align-items: start;
}

.cart-items-list {
    display: grid;
    gap: 16px;
}

.cart-item {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr) auto;
    gap: 18px;
    align-items: center;
    padding: 18px;
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 9px 22px rgba(0, 30, 98, .09);
}

.cart-item-image {
    display: block;
    height: 180px;
    overflow: hidden;
    border-radius: 17px;
    background: #f7fbfc;
}

.cart-item-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.cart-item-info > span {
    color: var(--ena-coral);
    font-size: .72rem;
    font-weight: 900;
    text-transform: uppercase;
}

.cart-item-info h2 {
    margin: 5px 0;
    font-size: 1.35rem;
    font-weight: 900;
}

.cart-item-info h2 a {
    color: var(--ena-blue);
    text-decoration: none;
}

.cart-item-info p {
    margin: 4px 0;
    color: var(--ena-muted);
}

.cart-unit-price {
    display: block;
    margin-top: 8px;
    color: var(--ena-blue);
}

.cart-item-controls {
    display: flex;
    flex-wrap: wrap;
    align-items: end;
    gap: 14px;
    margin-top: 14px;
}

.cart-quantity-form {
    display: flex;
    align-items: end;
    gap: 9px;
}

.cart-quantity-form label {
    display: grid;
    gap: 5px;
    max-width: 100px;
    color: var(--ena-blue);
    font-size: .72rem;
    font-weight: 900;
    text-transform: uppercase;
}

.cart-quantity-form button {
    min-height: 43px;
    padding: 9px 14px;
    border: 0;
    border-radius: 999px;
    background: var(--ena-blue);
    color: #fff;
    font-weight: 900;
}

.cart-line-total {
    align-self: start;
    color: var(--ena-blue);
    font-size: 1.2rem;
    white-space: nowrap;
}

.cart-stock-error {
    color: #a33131 !important;
    font-weight: 900;
}

.cart-summary {
    position: sticky;
    top: 20px;
    padding: 25px;
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 10px 26px rgba(0, 30, 98, .10);
}

.cart-summary h2 {
    margin: 0 0 20px;
    color: var(--ena-blue);
    font-weight: 900;
}

.cart-summary dl {
    display: grid;
    gap: 10px;
    margin: 0;
}

.cart-summary dl div {
    display: flex;
    justify-content: space-between;
    gap: 14px;
}

.cart-summary dt {
    color: var(--ena-muted);
    font-weight: 700;
}

.cart-summary dd {
    margin: 0;
    color: var(--ena-blue);
    font-weight: 900;
    text-align: right;
}

.cart-summary-total {
    display: flex;
    justify-content: space-between;
    gap: 14px;
    margin: 20px 0;
    padding-top: 18px;
    border-top: 1px solid rgba(0, 30, 98, .12);
    color: var(--ena-blue);
}

.cart-summary-total strong {
    font-size: 1.3rem;
}

.checkout-next-button {
    width: 100%;
}

.cart-summary small {
    display: block;
    margin-top: 12px;
    color: var(--ena-muted);
    line-height: 1.5;
}

@media (max-width: 991px) {
    .saved-products-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .cart-layout {
        grid-template-columns: 1fr;
    }

    .cart-summary {
        position: static;
    }
}

@media (max-width: 700px) {
    .account-store-page {
        padding-inline: 14px;
    }

    .account-store-hero {
        align-items: flex-start;
        flex-direction: column;
        padding: 23px;
    }

    .saved-products-grid {
        grid-template-columns: 1fr;
    }

    .purchase-controls {
        grid-template-columns: 1fr;
    }

    .cart-item {
        grid-template-columns: 100px minmax(0, 1fr);
    }

    .cart-item-image {
        height: 135px;
    }

    .cart-line-total {
        grid-column: 2;
    }

    .cart-quantity-form {
        align-items: stretch;
        flex-direction: column;
    }
}

/* =========================================================
   BOTÓN AGREGAR AL CARRITO HORIZONTAL
========================================================= */

.purchase-controls {
    grid-template-columns: minmax(90px, 120px) minmax(0, 1fr);
}

.purchase-controls > label {
    align-self: center;
    margin: 0;
}

.purchase-controls > input {
    min-width: 0;
}

.purchase-controls > .purchase-button {
    grid-column: 1 / -1;
    width: 100%;
    min-height: 52px;
    padding: 13px 24px;
    border-radius: 16px;
    white-space: nowrap;
    line-height: 1.1;
}

@media (max-width: 700px) {
    .purchase-controls {
        grid-template-columns: 1fr;
    }

    .purchase-controls > .purchase-button {
        grid-column: 1;
    }
}


/* =========================================================
   LIQUIDACIÓN · ÚLTIMAS TALLAS
========================================================= */

.liquidation-final-notice {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin: 16px 0 18px;
    padding: 14px 16px;
    border: 1px solid rgba(255, 107, 82, .28);
    border-radius: 17px;
    background: #fff3ef;
    color: var(--ena-blue);
}

.liquidation-final-notice > i {
    flex: 0 0 auto;
    margin-top: 2px;
    color: var(--ena-coral);
    font-size: 1.2rem;
}

.liquidation-final-notice div {
    display: grid;
    gap: 4px;
}

.liquidation-final-notice strong {
    color: var(--ena-coral);
    font-size: .9rem;
    font-weight: 900;
    letter-spacing: .4px;
    text-transform: uppercase;
}

.liquidation-final-notice span {
    color: var(--ena-muted);
    font-size: .9rem;
    line-height: 1.45;
}


/* =========================================================
   CHECKOUT Y MERCADO PAGO
========================================================= */

.checkout-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 410px);
    gap: 24px;
    align-items: start;
}

.checkout-form {
    display: grid;
    gap: 18px;
}

.checkout-card,
.checkout-summary,
.payment-result,
.payment-result-items,
.order-card {
    border-radius: 25px;
    background: #fff;
    box-shadow: 0 10px 26px rgba(0, 30, 98, .10);
}

.checkout-card {
    padding: 25px;
}

.checkout-card h2,
.checkout-summary h2,
.payment-result-items h2 {
    margin: 0 0 20px;
    color: var(--ena-blue);
    font-weight: 900;
}

.checkout-fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.checkout-fields label {
    display: grid;
    gap: 7px;
    color: var(--ena-blue);
    font-size: .82rem;
    font-weight: 900;
}

.checkout-fields .field-wide {
    grid-column: 1 / -1;
}

.checkout-fields input,
.checkout-fields textarea {
    width: 100%;
    min-height: 48px;
    padding: 12px 14px;
    border: 1px solid rgba(0, 30, 98, .18);
    border-radius: 14px;
    background: #fff;
    color: var(--ena-blue);
    font: inherit;
    font-weight: 700;
}

.checkout-fields textarea {
    min-height: 100px;
    resize: vertical;
}

.checkout-fields input:focus,
.checkout-fields textarea:focus {
    border-color: var(--ena-coral);
    box-shadow: 0 0 0 3px rgba(255, 107, 82, .14);
    outline: none;
}

.checkout-payment-note {
    display: flex;
    align-items: center;
    gap: 13px;
    padding: 17px 19px;
    border: 1px solid rgba(0, 30, 98, .13);
    border-radius: 18px;
    background: #eef8fb;
}

.checkout-payment-note i {
    color: var(--ena-blue);
    font-size: 1.5rem;
}

.checkout-payment-note div {
    display: grid;
    gap: 3px;
}

.checkout-payment-note strong {
    color: var(--ena-blue);
}

.checkout-payment-note span {
    color: var(--ena-muted);
    font-size: .88rem;
}

.checkout-pay-button {
    width: 100%;
    min-height: 56px;
    border-radius: 17px;
    font-size: 1rem;
}

.checkout-summary {
    position: sticky;
    top: 20px;
    padding: 25px;
}

.checkout-mini-items {
    display: grid;
    gap: 12px;
    max-height: 430px;
    overflow: auto;
    padding-right: 4px;
}

.checkout-mini-items article {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr) auto;
    gap: 11px;
    align-items: center;
}

.checkout-mini-items img {
    width: 58px;
    height: 72px;
    border-radius: 11px;
    object-fit: cover;
    background: #f7fbfc;
}

.checkout-mini-items article div {
    display: grid;
    gap: 3px;
}

.checkout-mini-items strong {
    color: var(--ena-blue);
    font-size: .9rem;
}

.checkout-mini-items span {
    color: var(--ena-muted);
    font-size: .75rem;
}

.checkout-mini-items b {
    color: var(--ena-blue);
    font-size: .85rem;
    white-space: nowrap;
}

.checkout-summary dl,
.payment-order-summary dl,
.order-card dl {
    display: grid;
    gap: 10px;
    margin: 22px 0 0;
    padding-top: 18px;
    border-top: 1px solid rgba(0, 30, 98, .12);
}

.checkout-summary dl div,
.payment-order-summary dl div,
.order-card dl div {
    display: flex;
    justify-content: space-between;
    gap: 14px;
}

.checkout-summary dt,
.payment-order-summary dt,
.order-card dt {
    color: var(--ena-muted);
}

.checkout-summary dd,
.payment-order-summary dd,
.order-card dd {
    margin: 0;
    color: var(--ena-blue);
    font-weight: 900;
    text-align: right;
}

.checkout-total {
    display: flex;
    justify-content: space-between;
    gap: 14px;
    margin-top: 18px;
    padding-top: 18px;
    border-top: 2px solid rgba(0, 30, 98, .14);
    color: var(--ena-blue);
    font-weight: 900;
}

.checkout-total strong {
    font-size: 1.45rem;
}

.checkout-summary > small {
    display: block;
    margin-top: 14px;
    color: var(--ena-muted);
    line-height: 1.45;
}

.payment-result {
    display: grid;
    justify-items: center;
    max-width: 850px;
    margin: 0 auto 22px;
    padding: 42px 34px;
    text-align: center;
}

.payment-result-icon {
    margin-bottom: 12px;
    font-size: 4rem;
    line-height: 1;
}

.payment-result-success .payment-result-icon {
    color: #198754;
}

.payment-result-error .payment-result-icon {
    color: #b12d2d;
}

.payment-result-warning .payment-result-icon {
    color: #b86b00;
}

.payment-result-pending .payment-result-icon {
    color: var(--ena-blue);
}

.payment-result h1 {
    margin: 0;
    color: var(--ena-blue);
    font-size: clamp(2rem, 5vw, 4rem);
    font-weight: 900;
}

.payment-result > p:not(.section-kicker) {
    max-width: 650px;
    margin: 14px auto 0;
    color: var(--ena-muted);
    line-height: 1.65;
}

.payment-order-summary {
    width: min(100%, 560px);
}

.payment-result-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 13px;
    margin-top: 25px;
}

.payment-result-items {
    max-width: 850px;
    margin: 0 auto;
    padding: 27px;
}

.payment-result-items article {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    padding: 14px 0;
    border-top: 1px solid rgba(0, 30, 98, .10);
}

.payment-result-items article div {
    display: grid;
    gap: 3px;
}

.payment-result-items article strong,
.payment-result-items article b {
    color: var(--ena-blue);
}

.payment-result-items article span {
    color: var(--ena-muted);
    font-size: .84rem;
}

.orders-list {
    display: grid;
    gap: 17px;
}

.order-card {
    padding: 24px;
}

.order-card-heading {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    align-items: flex-start;
}

.order-card-heading > div > span {
    color: var(--ena-coral);
    font-size: .78rem;
    font-weight: 900;
    text-transform: uppercase;
}

.order-card-heading h2 {
    margin: 5px 0;
    color: var(--ena-blue);
    font-size: 1.45rem;
    font-weight: 900;
}

.order-card-heading small {
    color: var(--ena-muted);
}

.order-status {
    display: inline-flex;
    padding: 8px 12px;
    border-radius: 999px;
    font-size: .76rem;
    font-weight: 900;
    white-space: nowrap;
}

.order-status-success {
    background: #e8f8ef;
    color: #176a47;
}

.order-status-error {
    background: #fff0f0;
    color: #a33131;
}

.order-status-warning {
    background: #fff4df;
    color: #9a5900;
}

.order-status-pending {
    background: #eef5ff;
    color: var(--ena-blue);
}

@media (max-width: 900px) {
    .checkout-layout {
        grid-template-columns: 1fr;
    }

    .checkout-summary {
        position: static;
    }
}

@media (max-width: 620px) {
    .checkout-fields {
        grid-template-columns: 1fr;
    }

    .checkout-fields .field-wide {
        grid-column: 1;
    }

    .checkout-mini-items article {
        grid-template-columns: 52px minmax(0, 1fr);
    }

    .checkout-mini-items article > b {
        grid-column: 2;
    }

    .order-card-heading {
        flex-direction: column;
    }
}
