:root{--color-bg:#f7f7f7;--color-surface:#ffffff;--color-surface-soft:#f1f1f1;--color-text:#111111;--color-text-soft:#666666;--color-border:#e5e5e5;--color-primary:#111111;--color-primary-text:#ffffff;--color-accent:#c99a3e;--color-success:#16803c;--color-danger:#c62828;--color-overlay:rgba(0, 0, 0, 0.55);--radius-small:10px;--radius-medium:16px;--radius-large:22px;--radius-pill:999px;--shadow-small:0 2px 10px rgba(0, 0, 0, 0.06);--shadow-medium:0 8px 30px rgba(0, 0, 0, 0.10);--shadow-large:0 20px 60px rgba(0, 0, 0, 0.18);--content-width:1280px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--space-8:40px;--space-9:48px;--space-10:64px;--transition-fast:160ms ease;--transition-normal:240ms ease}*,::after,::before{box-sizing:border-box}html{min-height:100%;scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{min-height:100vh;margin:0;background:var(--color-bg);color:var(--color-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.5;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}body.is-modal-open{overflow:hidden}button,input,select,textarea{font:inherit}a,button{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed}img{display:block;max-width:100%}a{color:inherit}[hidden]{display:none!important}:focus-visible{outline:3px solid var(--color-accent);outline-offset:3px}.skip-link{position:fixed;top:12px;left:12px;z-index:10000;padding:10px 16px;border-radius:var(--radius-small);background:var(--color-primary);color:var(--color-primary-text);text-decoration:none;transform:translateY(-150%);transition:transform var(--transition-fast)}.skip-link:focus{transform:translateY(0)}.business-header{position:relative;background:var(--color-surface);border-bottom:1px solid var(--color-border)}.business-header__inner{width:min(100% - 32px,var(--content-width));margin:0 auto;padding:var(--space-7) 0 var(--space-6);display:flex;align-items:center;justify-content:space-between;gap:var(--space-6)}.business-brand{min-width:0;display:flex;align-items:center;gap:var(--space-4)}.business-brand__logo-wrap{flex:0 0 auto;width:88px;height:88px;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-medium);background:var(--color-surface-soft)}.business-brand__logo{width:100%;height:100%;object-fit:contain;background:var(--color-surface)}.business-brand__content{min-width:0}.business-brand__name{margin:0;color:var(--color-text);font-size:clamp(1.5rem, 4vw, 2.4rem);font-weight:750;line-height:1.15;letter-spacing:-.025em;overflow-wrap:anywhere}.business-brand__tagline{margin:8px 0 0;color:var(--color-text-soft);font-size:.98rem;line-height:1.45;overflow-wrap:anywhere}.business-contact{flex:0 0 auto;display:flex;align-items:center;gap:var(--space-2)}.business-contact__link{min-height:42px;display:inline-flex;align-items:center;justify-content:center;padding:9px 14px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text);font-size:.9rem;font-weight:650;text-decoration:none;transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.business-contact__link:hover{background:var(--color-surface-soft);border-color:#d0d0d0}.business-contact__link:active{transform:translateY(1px)}.business-header__details{width:min(100% - 32px,var(--content-width));margin:0 auto;padding:0 0 var(--space-7)}.business-address{margin:0;color:var(--color-text-soft);font-size:.95rem;overflow-wrap:anywhere}.location-button{margin-top:var(--space-4);min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:10px 17px;border:1px solid var(--color-text);border-radius:var(--radius-pill);background:var(--color-primary);color:var(--color-primary-text);font-weight:700;transition:opacity var(--transition-fast),transform var(--transition-fast)}.location-button:hover{opacity:.9}.location-button:active{transform:translateY(1px)}.storefront{width:min(100% - 32px,var(--content-width));margin:0 auto;padding:var(--space-8) 0 var(--space-10)}.storefront__categories,.storefront__products{min-width:0}.storefront__products{margin-top:var(--space-9)}.section-heading{margin-bottom:var(--space-5)}.section-heading h2{margin:0;color:var(--color-text);font-size:clamp(1.25rem, 3vw, 1.65rem);font-weight:750;line-height:1.2;letter-spacing:-.015em}.category-navigation{width:100%;overflow-x:auto;scrollbar-width:thin;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.category-list{display:flex;align-items:center;gap:var(--space-2);width:max-content;min-width:100%;padding:2px}.category-button{min-height:42px;padding:9px 16px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text);font-size:.92rem;font-weight:650;white-space:nowrap;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.category-button:hover{border-color:#cfcfcf;background:var(--color-surface-soft)}.category-button.is-active{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-primary-text)}.category-button:active{transform:translateY(1px)}.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.product-card{min-width:0;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-medium);background:var(--color-surface);box-shadow:var(--shadow-small);transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.product-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-medium)}.product-card__media{position:relative;aspect-ratio:9/16;overflow:hidden;background:var(--color-surface-soft)}.product-card__thumbnail{width:100%;height:100%;object-fit:cover}.product-card__video-button{position:absolute;inset:50% auto auto 50%;width:52px;height:52px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:50%;background:rgba(0,0,0,.72);color:#fff;transform:translate(-50%,-50%);transition:background var(--transition-fast),transform var(--transition-fast)}.product-card__video-button:hover{background:rgba(0,0,0,.85);transform:translate(-50%,-50%) scale(1.05)}.product-card__body{padding:var(--space-4)}.product-card__name{margin:0;color:var(--color-text);font-size:1rem;font-weight:700;line-height:1.3;overflow-wrap:anywhere}.product-card__price{margin:7px 0 0;color:var(--color-text);font-size:1.05rem;font-weight:750}.product-card__quantity{margin:4px 0 0;color:var(--color-text-soft);font-size:.84rem}.product-card__actions{display:flex;gap:var(--space-2);margin-top:var(--space-4)}.product-card__add{flex:1;min-height:42px;padding:9px 12px;border:1px solid var(--color-primary);border-radius:var(--radius-small);background:var(--color-primary);color:var(--color-primary-text);font-weight:700;transition:opacity var(--transition-fast),transform var(--transition-fast)}.product-card__add:hover{opacity:.9}.product-card__add:active{transform:translateY(1px)}.empty-state{padding:var(--space-9) var(--space-6);border:1px dashed #ccc;border-radius:var(--radius-medium);background:var(--color-surface);text-align:center}.empty-state h3{margin:0;font-size:1.05rem}.empty-state p{margin:8px 0 0;color:var(--color-text-soft)}.cart-floating-button{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));z-index:3000;min-height:52px;display:inline-flex;align-items:center;gap:10px;padding:9px 14px 9px 17px;border:1px solid var(--color-primary);border-radius:var(--radius-pill);background:var(--color-primary);color:var(--color-primary-text);box-shadow:var(--shadow-medium);font-weight:750;transition:transform var(--transition-fast),opacity var(--transition-fast)}.cart-floating-button:hover{transform:translateY(-2px)}.cart-floating-button__count{min-width:28px;min-height:28px;display:inline-flex;align-items:center;justify-content:center;padding:3px 7px;border-radius:50%;background:var(--color-accent);color:#111;font-size:.82rem;font-weight:800}.cart-panel{position:fixed;inset:0;z-index:5000}.cart-panel__backdrop{position:absolute;inset:0;background:var(--color-overlay)}.cart-panel__dialog{position:absolute;top:0;right:0;width:min(100%,460px);height:100%;display:flex;flex-direction:column;background:var(--color-surface);box-shadow:var(--shadow-large);overflow:hidden}.cart-panel__header{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:max(20px,env(safe-area-inset-top)) 20px 16px;border-bottom:1px solid var(--color-border)}.cart-panel__header h2{margin:0;font-size:1.25rem}.cart-close,.video-modal__close{width:42px;height:42px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--color-border);border-radius:50%;background:var(--color-surface);color:var(--color-text);font-size:1.5rem;line-height:1}.cart-close:hover,.video-modal__close:hover{background:var(--color-surface-soft)}.cart-items{flex:1 1 auto;overflow-y:auto;padding:var(--space-5);overscroll-behavior:contain}.cart-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--color-border)}.cart-item:first-child{padding-top:0}.cart-item__name{margin:0;font-weight:700;overflow-wrap:anywhere}.cart-item__price{margin:4px 0 0;color:var(--color-text-soft);font-size:.9rem}.cart-item__controls{display:flex;align-items:center;gap:6px}.cart-item__quantity-button{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--color-border);border-radius:50%;background:var(--color-surface);color:var(--color-text);font-weight:750}.cart-item__quantity{min-width:28px;text-align:center;font-weight:700}.cart-empty{padding:var(--space-9) var(--space-5);color:var(--color-text-soft);text-align:center}.cart-summary{flex:0 0 auto;padding:var(--space-5);border-top:1px solid var(--color-border);background:var(--color-surface)}.cart-summary__row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.cart-summary__row+.cart-summary__row{margin-top:8px}.cart-summary__row:last-child{padding-top:10px;border-top:1px solid var(--color-border);font-size:1.08rem}.whatsapp-order-button{flex:0 0 auto;width:calc(100% - 40px);min-height:48px;margin:0 20px max(20px,env(safe-area-inset-bottom));padding:11px 16px;border:0;border-radius:var(--radius-small);background:var(--color-success);color:#fff;font-weight:750;transition:opacity var(--transition-fast),transform var(--transition-fast)}.whatsapp-order-button:hover:not(:disabled){opacity:.92}.whatsapp-order-button:active:not(:disabled){transform:translateY(1px)}.whatsapp-order-button:disabled{opacity:.45}.install-button{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:max(80px,calc(80px + env(safe-area-inset-bottom)));z-index:2900;min-height:48px;padding:10px 17px;border:1px solid var(--color-primary);border-radius:var(--radius-pill);background:var(--color-primary);color:var(--color-primary-text);box-shadow:var(--shadow-medium);font-weight:750;transition:transform var(--transition-fast),opacity var(--transition-fast)}.install-button:hover{transform:translateY(-2px)}.video-modal{position:fixed;inset:0;z-index:6000}.video-modal__backdrop{position:absolute;inset:0;background:var(--color-overlay)}.video-modal__dialog{position:relative;width:min(400px,calc(100vw - 40px),calc((100vh - 110px) * 9 / 16));max-height:calc(100vh - 32px);margin:16px auto;overflow:hidden;border-radius:var(--radius-large);background:var(--color-surface);box-shadow:var(--shadow-large)}.video-modal__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:14px 16px;border-bottom:1px solid var(--color-border)}.video-modal__header h2{margin:0;font-size:1rem}.video-modal__content{aspect-ratio:9/16;max-height:calc(100vh - 110px);overflow:hidden;background:#000}.video-modal__content iframe{width:100%;height:100%;display:block;border:0}.toast-container{position:fixed;right:16px;bottom:16px;z-index:9000;width:min(360px,calc(100% - 32px));display:flex;flex-direction:column;gap:8px;pointer-events:none}.toast{padding:12px 15px;border:1px solid var(--color-border);border-radius:var(--radius-small);background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-medium);font-size:.9rem;font-weight:600;pointer-events:auto}.toast--success{border-color:rgba(22,128,60,.25)}.toast--error{border-color:rgba(198,40,40,.25)}.loading-overlay{position:fixed;inset:0;z-index:8000;display:grid;place-items:center;padding:24px;background:rgba(247,247,247,.92)}.loading-overlay__content{width:min(100%,320px);padding:28px;border:1px solid var(--color-border);border-radius:var(--radius-medium);background:var(--color-surface);box-shadow:var(--shadow-medium);text-align:center}.loading-overlay__content p{margin:14px 0 0;color:var(--color-text-soft);font-weight:600}.loading-spinner{width:38px;height:38px;margin:0 auto;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:.8s linear infinite loading-spin}@keyframes loading-spin{to{transform:rotate(360deg)}}.error-state{width:min(100% - 32px,600px);margin:80px auto}.error-state__content{padding:var(--space-8);border:1px solid var(--color-border);border-radius:var(--radius-medium);background:var(--color-surface);box-shadow:var(--shadow-small);text-align:center}.error-state__content h2{margin:0;font-size:1.3rem}.error-state__content p{margin:10px 0 0;color:var(--color-text-soft)}.error-state__content button{min-height:44px;margin-top:var(--space-5);padding:9px 17px;border:0;border-radius:var(--radius-small);background:var(--color-primary);color:var(--color-primary-text);font-weight:700}.business-footer{padding:var(--space-7) max(16px,env(safe-area-inset-right)) max(32px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));border-top:1px solid var(--color-border);background:var(--color-surface);text-align:center}.business-footer p{margin:0;color:var(--color-text-soft);font-size:.82rem}@media (min-width:640px){.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.business-brand__logo-wrap{width:96px;height:96px}}@media (min-width:900px){.business-header__inner{padding-top:var(--space-8);padding-bottom:var(--space-7)}.product-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-5)}.product-card__body{padding:var(--space-5)}}@media (min-width:1200px){.product-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (max-width:639px){.business-header__inner{width:min(100% - 24px,var(--content-width));align-items:flex-start;flex-direction:column;padding-top:var(--space-6);padding-bottom:var(--space-5)}.business-header__details{width:min(100% - 24px,var(--content-width));padding-bottom:var(--space-6)}.business-contact{width:100%}.business-contact__link{flex:1}.storefront{width:min(100% - 24px,var(--content-width));padding-top:var(--space-6)}.product-grid{gap:10px}.product-card__body{padding:12px}.product-card__name{font-size:.92rem}.product-card__price{font-size:.98rem}.product-card__actions{margin-top:12px}.product-card__add{min-height:40px;padding-inline:8px;font-size:.86rem}.cart-panel__dialog{width:100%}.video-modal__dialog{width:min(360px,calc(100vw - 40px),calc((100vh - 96px) * 9 / 16));max-height:calc(100vh - 32px);margin:16px auto}.toast-container{right:12px;bottom:12px;width:calc(100% - 24px)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,::after,::before{animation-duration:0s!important;animation-iteration-count:1!important;transition-duration:0s!important}}@media print{.business-contact,.cart-floating-button,.install-button,.loading-overlay,.location-button,.skip-link,.toast-container,.video-modal{display:none!important}body{background:#fff}.business-footer,.business-header,.empty-state,.product-card{box-shadow:none}}