.page-wrapper{max-width:1200px;margin:0 auto}.content-grid{grid-template-columns:1fr;gap:0;display:grid}@media (width>=1024px){.content-grid{grid-template-columns:1fr 360px;align-items:start;gap:0 2rem;padding:2rem 2rem 0}}.main-col{min-width:0}.sidebar-col{display:none}@media (width>=1024px){.sidebar-col{display:block;position:sticky;top:1.5rem}}section.page-section{border-radius:var(--radius);background:var(--white);border:1px solid var(--border);box-shadow:var(--shadow-sm);margin-bottom:1.25rem;padding:2.5rem 1.25rem}@media (width>=1024px){section.page-section{padding:2.5rem 2rem}}#hero .page-wrapper{z-index:2;position:relative}#hero{background:var(--forest) url(/hero.webp) center/cover no-repeat;text-align:center;padding:1rem 1.25rem 2rem;position:relative;overflow:hidden}#hero:before{content:"";pointer-events:none;z-index:1;background:linear-gradient(#424e348c 0%,#424e34bf 100%);position:absolute;inset:0}.hero-logo{filter:brightness();width:auto;height:100px;margin:0 auto 1.25rem}.hero-tagline{font-family:var(--font-brand);color:var(--white);letter-spacing:-.01em;margin-bottom:.5rem;font-size:clamp(1.25rem,5vw,1.75rem);font-weight:600;line-height:1.3}.hero-tagline .highlight{background:var(--lime);color:var(--forest)}.hero-sub{color:#ffffffa6;font-size:.9rem;font-weight:400}.section-intro{margin-bottom:1.5rem}.section-intro p{color:var(--text-muted);margin-top:.4rem;font-size:.95rem}.section-intro a{color:var(--lime-dark);text-decoration:underline}.section-intro a:hover{color:var(--lime)}.category-group{margin-bottom:2rem}.category-label{letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border);margin-bottom:.75rem;padding-bottom:.5rem;font-size:.7rem;font-weight:700}.products-grid{grid-template-columns:repeat(2,1fr);gap:.75rem;display:grid}@media (width>=600px){.products-grid{grid-template-columns:repeat(3,1fr);gap:1rem}}@media (width>=900px){.products-grid{grid-template-columns:repeat(3,1fr)}}#summary-mobile-section{background:var(--cream);border-top:1px solid var(--border)}@media (width>=1024px){#summary-mobile-section{display:none}}footer{background:var(--forest);text-align:center;color:#fff6;border-top:1px solid #ffffff14;padding:1.5rem 1.25rem;font-size:.78rem}footer a{color:var(--lime);text-decoration:none}.visually-hidden{clip:rect(0,0,0,0);width:1px;height:1px;position:absolute;overflow:hidden}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.catalog-loading{color:var(--text-muted);padding:1.5rem 0;font-style:italic}.product-card{background:var(--white);border:1.5px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);flex-direction:column;gap:.5rem;padding:1rem;transition:box-shadow .2s,border-color .2s,transform .15s;display:flex;position:relative}.product-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.product-card.in-cart{border-color:var(--lime);background:var(--lime-bg)}.card-img{border-radius:var(--radius) var(--radius) 0 0;width:calc(100% + 2rem);height:140px;margin:-1rem -1rem .5rem;overflow:hidden}.card-img img{object-fit:cover;width:100%;height:100%;transition:transform .3s;display:block}.product-card:hover .card-img img{transform:scale(1.04)}.card-active-dot{background:var(--lime);border-radius:50%;width:8px;height:8px;display:none;position:absolute;top:.6rem;right:.6rem}.product-card.in-cart .card-active-dot{display:block}.card-name{color:var(--text);font-size:.95rem;font-weight:600;line-height:1.3}.card-desc{color:var(--text-muted);font-size:.78rem;line-height:1.4}.card-meta{align-items:center;gap:.5rem;margin-top:auto;display:flex}.card-weight{background:var(--lime);color:var(--white);letter-spacing:.04em;border-radius:var(--radius-sm);padding:2px 8px;font-size:.65rem;font-weight:700}.card-price{color:var(--forest);margin-left:auto;font-size:1rem;font-weight:700}.qty-controls{align-items:center;gap:.5rem;margin-top:.25rem;display:flex}.btn-qty{border:1.5px solid var(--border);background:var(--cream);width:28px;height:28px;color:var(--text);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:1.1rem;font-weight:600;line-height:1;transition:background .15s,border-color .15s,color .15s;display:flex}.btn-qty:hover:not(:disabled){background:var(--lime);border-color:var(--lime);color:var(--white)}.btn-qty:disabled{opacity:.3;cursor:default}.btn-qty.btn-plus{background:var(--lime);border-color:var(--lime);color:var(--white)}.btn-qty.btn-plus:hover{background:var(--lime-dark);border-color:var(--lime-dark)}.qty-display{color:var(--forest);text-align:center;min-width:20px;font-size:.95rem;font-weight:700}.delivery-block{margin-bottom:2rem}.delivery-block-title{color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:.75rem;font-size:.85rem;font-weight:600}.day-toggles{border-radius:var(--radius-sm);background:0 0;gap:4px;padding:0;display:flex}.btn-day{border-radius:var(--radius-sm);border:1.5px solid var(--border);background:var(--white);color:var(--text-muted);text-align:center;cursor:pointer;white-space:nowrap;flex:1;padding:.55rem .25rem;font-family:inherit;font-size:.9rem;font-weight:600;transition:background .18s,color .18s,border-color .18s,transform .12s,box-shadow .12s}.btn-day:hover{color:var(--text);background:var(--lime-bg);border-color:var(--lime);transform:translateY(-1px);box-shadow:0 2px 6px #00000014}.btn-day:active{box-shadow:none;transform:translateY(0)}.btn-day.selected{background:var(--lime);color:var(--white);border-color:var(--lime);box-shadow:0 1px 4px #00000026}.day-selected-label{min-height:1.2em;color:var(--text-muted);margin-top:.45rem;font-size:.85rem;font-style:italic}.zone-options{flex-direction:column;gap:.6rem;display:flex}.zone-card{border-radius:var(--radius-sm);border:1.5px solid var(--border);background:var(--white);cursor:pointer;align-items:center;gap:.75rem;padding:.9rem 1rem;transition:all .2s;display:flex}.zone-card:hover{border-color:var(--lime)}.zone-card.selected{background:var(--forest);border-color:var(--forest);color:var(--white)}.zone-dot{border:2px solid var(--border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;transition:all .2s;display:flex}.zone-card.selected .zone-dot{background:var(--lime);border-color:var(--lime)}.zone-dot:after{content:"";background:var(--white);border-radius:50%;width:8px;height:8px;display:none}.zone-card.selected .zone-dot:after{display:block}.zone-name{flex:1;font-size:.95rem;font-weight:600}.zone-price{color:var(--lime);font-size:.95rem;font-weight:700}.zone-card.selected .zone-price{color:var(--lime)}.zone-card.selected .zone-name{color:var(--white)}#customer{background:var(--white);border-top:1px solid var(--border)}.form-grid{grid-template-columns:1fr;gap:1rem;display:grid}.form-grid.two-col{grid-template-columns:1fr 1fr}@media (width<=500px){.form-grid.two-col{grid-template-columns:1fr}}.form-field{flex-direction:column;gap:.35rem;display:flex}.form-field label{color:var(--text-muted);letter-spacing:.03em;text-transform:uppercase;font-size:.8rem;font-weight:600}.form-field label .req{color:var(--lime-dark);margin-left:2px}.form-field input{border:1.5px solid var(--border);border-radius:var(--radius-sm);background:var(--cream);color:var(--text);width:100%;padding:.7rem .9rem;font-size:.95rem;transition:border-color .2s,box-shadow .2s}.form-field input::placeholder{color:#b0aa96}.form-field input:focus{border-color:var(--lime);outline:none;box-shadow:0 0 0 3px #a1ac4926}.form-field input.error{border-color:#c0392b}.field-error{color:#c0392b;font-size:.78rem;font-weight:500;display:none}.field-error.visible{display:block}#address-block{border-top:1px dashed var(--border);margin-top:.5rem;padding-top:1rem}#address-block .form-grid{gap:1rem}#address-fields-block{margin-top:1rem;display:none}#address-fields-block.visible{display:block}.cep-status{color:var(--text-muted);margin-top:.2rem;font-size:.78rem}.cep-error{color:#c0392b;font-weight:500}.summary-card{background:var(--white);border:1.5px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md);overflow:hidden}.summary-header{background:var(--forest);color:var(--white);font-family:var(--font-brand);padding:1rem 1.25rem;font-size:1.1rem;font-weight:600}.summary-body{padding:1rem 1.25rem}.summary-empty{text-align:center;color:var(--text-muted);padding:1.5rem 0;font-size:.9rem;font-style:italic}.summary-item{border-bottom:1px solid var(--cream-dark);align-items:center;gap:.5rem;padding:.5rem 0;font-size:.9rem;display:flex}.summary-item:last-of-type{border-bottom:none}.summary-item-qty{background:var(--lime);color:var(--white);border-radius:var(--radius-full);flex-shrink:0;padding:1px 6px;font-size:.7rem;font-weight:700}.summary-item-name{color:var(--text);flex:1;font-weight:500}.summary-item-price{color:var(--forest);white-space:nowrap;font-weight:700}.summary-item-remove{cursor:pointer;color:var(--text-muted);background:0 0;border:none;flex-shrink:0;align-items:center;padding:0 2px;line-height:1;transition:color .15s;display:flex}.summary-item-remove:hover{color:#b94040}.summary-totals{border-top:2px solid var(--cream-dark);margin-top:.75rem;padding-top:.75rem}.summary-row{color:var(--text-muted);justify-content:space-between;padding:.2rem 0;font-size:.9rem;display:flex}.summary-row.total{color:var(--forest);border-top:1px solid var(--border);margin-top:.25rem;padding-top:.5rem;font-size:1.1rem;font-weight:800}.summary-note{color:var(--text-muted);text-align:center;margin-top:.75rem;font-size:.78rem;font-style:italic}#cart-badge{background:var(--forest);color:var(--white);border-radius:var(--radius-full);box-shadow:var(--shadow-lg);cursor:pointer;z-index:100;border:2px solid #a1ac4966;align-items:center;gap:.4rem;padding:.65rem 1.1rem;font-size:.85rem;font-weight:700;transition:background .2s,transform .15s;display:none;position:fixed;bottom:1.25rem;right:1.25rem}#cart-badge:hover{background:var(--forest-light);transform:scale(1.03)}#cart-badge.visible{display:flex}#cart-badge.scroll-hidden{display:none!important}@media (width>=1024px){#cart-badge{display:none!important}}.badge-count{background:var(--lime);color:var(--forest);border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:.7rem;font-weight:900;display:flex}#finalize{background:var(--forest);text-align:center;padding:2.5rem 1.25rem 3rem}@media (width>=1024px){#finalize{padding:2.5rem 2rem 3rem}}.finalize-title{font-family:var(--font-brand);color:var(--white);margin-bottom:.5rem;font-size:clamp(1.4rem,4vw,1.8rem)}.finalize-sub{color:#fff9;margin-bottom:2rem;font-size:.9rem}.btn-primary{background:var(--lime);color:var(--forest);border-radius:var(--radius-sm);cursor:pointer;letter-spacing:.01em;border:none;justify-content:center;align-items:center;gap:.5rem;padding:.9rem 2.5rem;font-size:1rem;font-weight:800;transition:background .2s,transform .15s,box-shadow .2s;display:inline-flex;box-shadow:0 4px 16px #a1ac4959}.btn-primary:hover{background:var(--lime-dark);transform:translateY(-2px);box-shadow:0 6px 20px #a1ac4966}.btn-primary:active{transform:translateY(0)}.btn-whatsapp{color:var(--white);border-radius:var(--radius-full);background:#25d366;justify-content:center;align-items:center;gap:.6rem;padding:.9rem 2rem;font-size:1rem;font-weight:700;text-decoration:none;transition:background .2s,transform .15s;display:inline-flex;box-shadow:0 4px 16px #25d3664d}.btn-whatsapp:hover{background:#1ebe5d;transform:translateY(-2px)}.btn-whatsapp svg{width:22px;height:22px}#global-error{color:#f8d7da;border-radius:var(--radius-sm);text-align:left;background:#c0392b26;border:1.5px solid #c0392b66;margin-bottom:1.5rem;padding:.75rem 1rem;font-size:.875rem;font-weight:500;display:none}#global-error.visible{display:block}#global-error ul{margin:.35rem 0 0 1.1rem}#global-error ul li{margin-bottom:.15rem}#result-panel{margin-top:2.5rem;animation:.4s fadeUp;display:none}#result-panel.visible{display:block}#btn-finalize.hidden,#finalize-title.hidden,#finalize-sub.hidden{display:none}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.result-inner{border-radius:var(--radius);background:#ffffff0f;border:1px solid #ffffff26;max-width:480px;margin:0 auto;padding:2rem 1.5rem}.result-title{font-family:var(--font-brand);color:var(--white);margin-bottom:.4rem;font-size:1.4rem}.result-sub{color:#fff9;margin-bottom:1.5rem;font-size:.85rem}.result-content{flex-direction:column;align-items:center;gap:1.5rem;display:flex}@media (width>=600px){.result-content{flex-direction:row;justify-content:center;align-items:center}}#qr-container{background:var(--white);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);flex-shrink:0;padding:12px}#qr-container canvas,#qr-container img{display:block}.result-cta{text-align:center}.result-cta p{color:#ffffff8c;margin-top:.75rem;font-size:.8rem}.card-img{cursor:pointer}.card-img img{pointer-events:none}.modal-overlay{background:color-mix(in srgb, var(--text) 55%, transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:200;opacity:0;pointer-events:none;justify-content:center;align-items:center;padding:1rem;transition:opacity .25s;display:flex;position:fixed;inset:0}.modal-overlay.open{opacity:1;pointer-events:all}.modal-card{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow-lg);width:100%;max-width:460px;max-height:90dvh;transition:transform .25s;position:relative;overflow-y:auto;transform:translateY(20px)scale(.97)}.modal-overlay.open .modal-card{transform:none}.modal-img-wrap{background:var(--cream);border-radius:var(--radius) var(--radius) 0 0;width:100%;height:340px;overflow:hidden}.modal-img-wrap img{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.modal-img-wrap.hidden{display:none}.modal-close{background:var(--white);border:1.5px solid var(--border);width:30px;height:30px;color:var(--text);z-index:10;border-radius:50%;justify-content:center;align-items:center;transition:background .15s,border-color .15s;display:flex;position:absolute;top:.65rem;right:.65rem}.modal-close:hover{background:var(--lime-bg);border-color:var(--lime);color:var(--forest)}.modal-body{padding:1.5rem 1.75rem 2rem}.modal-category{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.5rem;font-size:.7rem;font-weight:700;display:block}.modal-product-name{font-family:var(--font-brand);color:var(--forest);margin-bottom:.75rem;font-size:1.6rem;font-weight:600;line-height:1.2}.modal-product-desc{color:var(--text);margin-bottom:1.25rem;font-size:1rem;line-height:1.7}.modal-meta{border-top:1px solid var(--border);align-items:center;gap:.75rem;padding-top:1.25rem;display:flex}
