/* Shared storefront refinements: keep the existing Suplenu identity. */
:root{--blue:#087d83;--ink:#29383e;--muted:#58686e;--line:#d9e4e5;--paper:#f5f8f8}
body:has(dialog[open]){overflow:hidden}
input:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
button,input,select,textarea{font:inherit}
.skip-link{position:fixed;left:16px;top:-100px;z-index:100;background:white;color:var(--blue);padding:14px;border:2px solid;border-radius:8px}
.skip-link:focus{top:12px}
header{max-width:1440px;padding:10px 5%;gap:14px 24px}
header .logo img{width:58px;height:58px}
header .logo .brand-name{font-size:30px}
header nav{order:1;flex-basis:auto;margin-left:auto;gap:20px;font-size:13px}
header .header-search{order:1;max-width:430px;min-width:180px}
header .cart-trigger{order:2;min-height:46px}
.hero{border-radius:0 0 20px 20px;overflow:hidden}
.hero-slide{min-height:480px}
.hero-slide .hero-visual{height:480px;background:radial-gradient(ellipse at center,#d8eeee 0,#eef7f7 65%)}
.hero-slide .hero-copy{padding:42px 10% 32px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.hero .slide-title{font-size:clamp(48px,5vw,74px);margin:18px 0}
.hero .slide-description{font-size:15px;margin:8px 0}
.hero .slide-price{margin:14px 0 0;font-size:30px}
.hero .primary{margin-top:20px}
.carousel-controls{padding:10px 5%}
.primary,.add,.details,.search-submit{border-radius:8px;min-height:46px}
.primary,.add{transition:background .2s,box-shadow .2s}
.primary:hover,.add:hover{box-shadow:0 5px 14px #087d8322}
.catalog{padding-top:54px}
.catalog-controls{align-items:center;margin:22px 0 26px}
.sort select{border:1px solid var(--line);max-width:180px;min-height:44px}
.product-card{border-radius:14px;background:white;transition:box-shadow .2s,border-color .2s}
.product-card:hover{border-color:#aacfd0;box-shadow:0 10px 30px #263c400c}
.product-face{padding:22px;min-height:280px!important}
.product-photo{height:210px;transition:transform .25s}
.product-face:hover .product-photo{transform:scale(1.035)}
.face-top{font-size:10px;letter-spacing:.7px;gap:10px;line-height:1.6}
.face-top span:last-child{text-align:right}
.product-info{padding:24px}
.product-info h3{font-size:21px;line-height:1.3}
.product-info .meta{min-height:45px}
.product-info .price{font-size:28px;letter-spacing:-.6px}
.product-info .unit-price{margin-bottom:12px}
.availability-note:empty{display:none}
.product-info .availability-note{margin:0 0 12px;min-height:0}
.product-actions{margin-top:auto;padding-top:10px}
.product-actions .add{display:flex;align-items:center;justify-content:center;font-weight:600}
.product-card.is-out-of-stock .add{background:transparent;border:1px solid #aab4b8;color:#56636a}
.product-page{padding-top:22px}
.back-catalog{min-height:44px;margin-bottom:16px}
.product-layout{gap:48px}
.product-purchase .product-description{font-size:15px}
.product-purchase .product-page-price{font-size:38px;letter-spacing:-1px}
.product-purchase .primary{min-height:54px}
.product-thumbnails button{min-width:66px;min-height:66px}
.product-nutrition h2{font-size:36px}
.nutrition-images figure{border-radius:12px;background:#fafcfc}
.nutrition-images img{max-height:460px;object-fit:contain}
.nutrition-images figcaption{font-size:14px;line-height:1.5}
.nutrition-images a::after{content:'Ampliar imagen ↗';display:block;color:var(--blue);font-size:13px;margin-top:16px;font-weight:600}
.cart-dialog{max-width:100%}
.cart-dialog .dialog-head{position:sticky;top:-28px;padding-top:16px;background:white;z-index:2}
.basket-remove{min-width:28px;min-height:44px}
.quantity-control button{min-width:36px;height:40px}
.shipping-estimator h3{font-size:17px;margin-bottom:8px}
.shipping-estimator label{font-size:13px;font-weight:600}
.shipping-result{color:var(--muted)}
.shipping-estimated-total:empty{display:none}
.shipping-estimator[data-state=estimated]{border-color:#65aeb1;background:#eaf7f4}
dialog .icon{min-width:44px;min-height:44px;color:var(--ink)}
dialog button,dialog select{min-height:44px}
.about{border-radius:16px;margin:0 max(24px,calc((100% - 1296px)/2));padding:42px;gap:20px 48px}
.about h2{font-size:clamp(32px,3.4vw,46px)}
footer{padding-top:36px;padding-bottom:36px}
.store-loading{padding:40px 5%;color:var(--muted);min-height:180px}
.store-loading::before{content:'';display:inline-block;width:12px;height:12px;border-radius:50%;background:var(--blue);margin-right:10px}
@media(min-width:761px) and (max-width:1100px){header nav{display:none}.product-grid{gap:16px}.product-info{padding:18px}}
@media(max-width:760px){
 header{padding:8px 5%;gap:8px 12px}header .logo img{width:42px;height:42px}header .logo .brand-name{font-size:27px}
 header .header-search{max-width:none;order:3;flex-basis:100%}header .header-search input{padding:11px 0}header .search-submit{padding:10px 14px}
 header .cart-trigger{margin-left:auto}header nav{display:none}
 .hero-slide{display:flex;flex-direction:column}.hero-slide .hero-copy{padding:24px 6% 28px}.hero .slide-title{font-size:44px;min-height:0;margin:12px 0}
 .hero-slide .hero-visual{order:-1;height:220px;padding:18px 24px 28px}.hero-slide .hero-visual img{height:170px}.image-caption{bottom:10px;font-size:8px}
 .hero .slide-description{font-size:13px;min-height:42px}.hero .slide-price{font-size:26px;margin:6px 0}.hero .primary{margin-top:10px}
 .catalog{padding:36px 5% 44px}.catalog-controls{align-items:stretch;gap:14px}.filters{flex-wrap:nowrap;overflow-x:auto;padding:4px 2px 10px}.filters button{white-space:nowrap;flex-shrink:0;min-height:44px}
 .filters{width:100%;max-width:100%;min-width:0}.sort{align-self:flex-end;max-width:100%}.product-grid{gap:20px}.product-face{min-height:240px!important}.product-photo{height:175px}.product-info .meta{min-height:0}
 .product-main-photo{min-height:280px}.product-main-photo img{height:250px}.product-layout{gap:24px}.product-page-price{margin-top:16px}
 .product-nutrition h2{font-size:30px}.about{margin:0 5%;padding:30px 24px}.about h2{font-size:34px}.cart-dialog .dialog-head{top:-20px;padding-top:12px}
 .nutrition-images img{max-height:380px}footer .logo img{width:48px;height:48px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Review 2026-10-05: compact hero and clear inquiry flow. */
.hero-slide .slide-title{font-size:clamp(38px,4.5vw,64px);overflow-wrap:anywhere}
.stock-badge{display:inline-block;padding:7px 12px;background:#dde3e4;color:#29383e;border-radius:20px;font-size:14px;font-weight:700}
.carousel-controls[hidden]{display:none}.carousel-dots button,.carousel-arrows button{min-width:44px;min-height:44px}
.store-information{max-width:1296px;margin:36px auto 0;padding:24px 5%;border-top:1px solid var(--line)}
.store-information nav{display:flex;flex-wrap:wrap;gap:12px 24px}.store-information nav a{padding:12px 0;text-decoration:underline}
.information-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px}
.information-grid details{padding:16px;border:1px solid var(--line);border-radius:8px;line-height:1.6}.information-grid summary{cursor:pointer;min-height:44px;font-weight:600}.information-grid a{display:inline-block;text-decoration:underline;min-height:44px}
.review-cart{margin-bottom:12px}#optional-address[hidden]{display:none}#optional-address{border-top:1px solid var(--line);padding-top:18px}
.shipping-estimator input{font-size:16px}body{padding-bottom:70px}dialog{scroll-padding-bottom:20px}.quantity-control button{min-width:36px;min-height:44px}
@media(max-width:760px){
 .hero-slide{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);min-height:280px;align-items:center}
 .hero-slide .hero-copy{padding:20px 0 20px 20px}.hero .slide-title{font-size:34px;line-height:1.05;margin:10px 0;min-height:0}.hero .slide-description{font-size:14px;line-height:1.45;min-height:0;margin:6px 0}.hero .eyebrow{font-size:11px;letter-spacing:1px}
 .hero-slide .hero-visual{order:0;height:220px;padding:12px;align-self:center;background:transparent}.hero-slide .hero-visual img{height:190px;object-fit:contain}
 .hero .slide-price{font-size:25px;margin:10px 0}.hero .primary{padding:12px 16px;min-height:46px;margin-top:6px}.carousel-controls{justify-content:flex-start;flex-wrap:wrap;padding-right:5%}
 .catalog{padding-top:22px}.information-grid{grid-template-columns:1fr}.store-information nav{gap:4px 18px}
 .cart-dialog{padding-bottom:30px}.basket-bottom{flex-wrap:wrap}.basket-info{min-width:0}.basket-info select{max-width:100%}
}
@media(max-width:350px){.hero-slide{grid-template-columns:minmax(0,1fr) 110px}.hero .slide-title{font-size:29px}.hero-slide .hero-visual{padding:6px}.hero-slide .hero-visual img{height:145px}}


.flavor-heading{margin:24px 0 10px;font-size:15px}
.flavor-buttons{display:flex;flex-wrap:wrap;gap:8px}
.flavor-buttons button{min-height:44px;padding:10px 15px;border:1px solid var(--line);border-radius:7px;background:white;color:var(--ink);font:inherit;cursor:pointer}
.flavor-buttons button[aria-pressed=true]{border-color:var(--blue);background:var(--blue);color:white}
.flavor-buttons button:disabled{color:var(--muted);background:#f3f4f5;opacity:.65;cursor:not-allowed;text-decoration:line-through}
.purchase-controls{display:flex;align-items:stretch;gap:12px;margin:18px 0}
.quantity-control{display:flex;align-items:center;border:1px solid var(--line);border-radius:7px;flex-shrink:0;background:white;overflow:hidden}
.quantity-control button{min-width:44px;min-height:54px;border:0;background:transparent;color:var(--blue);font-size:22px;cursor:pointer}
.quantity-control button:disabled{color:var(--muted);opacity:.5;cursor:not-allowed}
.quantity-control input{width:46px;min-width:0;padding:8px 2px;border:0;text-align:center;font:inherit;color:var(--ink);background:white;appearance:textfield}
.quantity-control input::-webkit-inner-spin-button,.quantity-control input::-webkit-outer-spin-button{appearance:none;margin:0}
.purchase-controls .primary{flex:1;width:auto;margin:0}
.flavor-buttons button:focus-visible,.quantity-control button:focus-visible,.quantity-control input:focus-visible{outline:2px solid var(--blue);outline-offset:-3px}
.product-nutrition{margin-top:28px;padding-top:22px}
.nutrition-images{gap:18px;margin-top:16px}
.nutrition-images figure{padding:12px;background:white}
.nutrition-images figure:only-child{max-width:580px}
.nutrition-images img{max-height:none;width:100%;object-fit:contain}
.nutrition-images figcaption{margin-bottom:8px}
.nutrition-images a::after{margin-top:8px}
@media(max-width:760px){.nutrition-images img{max-height:none}.purchase-controls{gap:8px}.purchase-controls .primary{padding:12px;font-size:14px}.quantity-control button{min-width:40px}.quantity-control input{width:36px}}

#ofertas[hidden],#offers-link[hidden]{display:none}
.offers-section{scroll-margin-top:24px}
#admin-add-offer,#admin-add-combo{margin:8px}
