[hidden]{display:none!important}
html{scroll-behavior:smooth}
body.no-scroll{overflow:hidden}
button{font:inherit}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.meilan-story h1{font-size:clamp(42px,5vw,72px);line-height:.98;margin:0;color:#bd5708}
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #e5a126;outline-offset:3px}
.noscript-message{margin:0;padding:18px;background:#fff3d7;color:#4b2410;text-align:center;font-weight:700}
.show-all{border:0;background:transparent;color:#682d0b;font-size:11px;font-weight:750;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.meilan-gallery button{display:block;width:100%;padding:0;border:0;border-radius:14px;background:transparent;cursor:zoom-in;overflow:hidden}
.meilan-gallery button img{transition:transform .25s ease}
.meilan-gallery button:hover img{transform:scale(1.02)}
.catalog-loading{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;min-height:360px}
.catalog-loading span{height:340px;border-radius:12px;background:linear-gradient(100deg,#eadbc8 20%,#fff7ed 38%,#eadbc8 56%);background-size:300% 100%;animation:catalog-shimmer 1.2s linear infinite}
@keyframes catalog-shimmer{to{background-position:-100% 0}}
.catalog-error,.empty-catalog{grid-column:1/-1;padding:44px 20px;border:1px solid #e3cdb2;border-radius:12px;background:#fff9ef;color:#682d0b;text-align:center}
.catalog-error p{margin:0 0 16px}.catalog-retry{padding:11px 18px;border:0;border-radius:6px;background:#682d0b;color:#fff;font-weight:750;cursor:pointer}
.price-pending{font-size:12px!important;line-height:1.2;color:#8d3b18!important}.add.pending{background:#fff;border-color:#8d3b18;color:#8d3b18;box-shadow:none}
.variant-picker{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0 2px;padding:0;border:0}.variant-picker legend{grid-column:1/-1;margin-bottom:2px;color:#682d0b;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.variant-picker button{display:flex;align-items:center;justify-content:space-between;padding:12px;border:1px solid #dfc7a8;border-radius:6px;background:#fffaf2;color:#542b12;cursor:pointer}.variant-picker button.selected{border-color:#8d3b18;background:#8d3b18;color:#fff}.variant-picker small{font-size:10px}.detail-add:disabled{cursor:not-allowed;opacity:.55}
.product-placeholder{display:grid!important;place-items:center;width:100%;height:100%;color:#b89d83}
.product-placeholder b{display:block;font-family:Georgia,serif;font-size:54px;line-height:1}
.product-placeholder small{display:block;margin-top:10px;font-size:9px;letter-spacing:.08em}
.floating-cart{position:fixed;right:20px;bottom:20px;z-index:50;display:flex;align-items:center;gap:16px;padding:13px 18px;border:0;border-radius:10px;background:#682d0b;color:#fff;box-shadow:0 12px 30px rgba(48,20,7,.28);cursor:pointer}
.floating-cart span{font-size:12px}.floating-cart strong{color:#f2bf52}
.backdrop{position:fixed;inset:0;z-index:9998;border:0;background:rgba(37,21,14,.62);backdrop-filter:blur(3px);cursor:pointer}
.drawer{position:fixed;inset:0 0 0 auto;z-index:9999;height:100dvh;overflow-y:auto;background:#fff}
.drawer .cart-section,.drawer .order-form{padding:24px 28px}
.drawer .cart-section{border-bottom:1px solid #ead7b8}
.drawer .cart-lines{display:grid;gap:16px}
.drawer .drawer-head{display:flex;align-items:flex-start;justify-content:space-between}
.drawer .drawer-head button{border:0;background:transparent;color:#fff;font-size:26px;cursor:pointer}
.drawer .order-form{display:grid;gap:17px}
.drawer .order-form label{display:block;color:#4b2410;font-size:11px;font-weight:700}
.drawer .order-form input,.drawer .order-form textarea{display:block;width:100%;box-sizing:border-box;margin-top:6px;padding:12px;border:1px solid #ead7b8;border-radius:4px;background:#fff;color:#542b12;font:inherit}
.drawer .order-form textarea{min-height:76px;resize:vertical}
.drawer fieldset{margin:0;padding:0;border:0}.drawer legend{margin-bottom:8px;color:#4b2410;font-size:11px;font-weight:700}
.drawer .delivery-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.drawer .delivery-options button{display:flex;align-items:center;gap:9px;padding:12px;border:1px solid #ead7b8;border-radius:6px;background:#fff;color:#542b12;text-align:left;cursor:pointer}
.drawer .delivery-options button.selected{border-color:#c9650d;background:#fff7e9;box-shadow:0 0 0 1px #c9650d}
.drawer .delivery-options span span{display:block}.drawer .delivery-options b,.drawer .delivery-options small{display:block}.drawer .delivery-options small{margin-top:3px;font-size:8px;color:#826b59}
.drawer .checkout-total{display:grid;gap:9px;padding-top:14px;border-top:1px solid #ead7b8}
.drawer .checkout-total>div{display:flex;justify-content:space-between}.drawer .grand-total{padding-top:10px;border-top:1px solid #ead7b8;font-size:17px}.drawer .checkout-total p{margin:2px 0 0;color:#826b59;font-size:9px;line-height:1.5}
.drawer .whatsapp{display:flex;align-items:center;justify-content:space-between;width:100%;padding:15px 17px;border:0;background:#682d0b;color:#fff;text-align:left;cursor:pointer}.drawer .whatsapp span,.drawer .whatsapp small{display:block}.drawer .whatsapp small{color:#efbd6c;font-size:8px;text-transform:uppercase}
.drawer .safe-note{display:flex;gap:8px;color:#826b59;font-size:9px;line-height:1.5}.drawer .safe-note p{margin:0}
.drawer .cart-section-title{display:flex;align-items:center;gap:9px;margin-bottom:18px}.drawer .cart-section-title h3{flex:1;margin:0}.drawer .cart-section-title>button{border:0;background:transparent;color:#9b4920;font-size:9px;text-decoration:underline;cursor:pointer}
.drawer .checkout-progress{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px;background:#fff8ea}.drawer .checkout-progress div{display:flex;align-items:center;gap:5px;font-size:8px}.drawer .checkout-progress b{display:grid;place-items:center;width:19px;height:19px;border-radius:50%;background:#ead7b8}.drawer .checkout-progress .done b{background:#682d0b;color:#fff}.drawer .checkout-progress i{width:24px;height:1px;background:#d9c2a6}
.drawer .line-price{display:grid;justify-items:end;gap:7px}.drawer .line-price button{border:0;background:transparent;color:#9b4920;font-size:9px;text-decoration:underline;cursor:pointer}
.drawer [aria-invalid="true"]{border-color:#a52a1e!important;box-shadow:0 0 0 2px rgba(165,42,30,.12)}

@media(max-width:720px){
  .catalog-loading{grid-template-columns:repeat(2,1fr);gap:12px}.catalog-loading span{height:300px}
  .main-nav{display:none;position:fixed;left:0;right:0;z-index:90;background:#fff}.main-nav.open{display:flex;flex-direction:column}
  .meilan-gallery{grid-template-columns:1fr 1fr}.meilan-gallery button:last-child{grid-column:1/-1}
  .drawer{width:100%}.drawer .cart-section,.drawer .order-form{padding:20px 16px}.drawer .delivery-options{grid-template-columns:1fr}
  .floating-cart{right:12px;bottom:calc(12px + env(safe-area-inset-bottom));max-width:calc(100vw - 24px)}
  .wa-float{bottom:calc(12px + env(safe-area-inset-bottom))!important}
  #contacto{padding-bottom:calc(96px + env(safe-area-inset-bottom))!important}
  body.has-floating-cart #contacto{padding-bottom:calc(110px + env(safe-area-inset-bottom))!important}
  body.has-floating-cart .wa-float{display:none!important}
  .drawer .order-form{padding-bottom:calc(28px + env(safe-area-inset-bottom))}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.catalog-loading span{animation:none}.meilan-gallery button img,.product-card{transition:none}}
