:root{
  --bg:#f7f4ed;--paper:#fff;--ink:#171713;--muted:#6c6a62;--line:#ded9cf;
  --accent:#779128;--accent2:#516815;--sale:#a22626;--sale-bg:#fff0ed;--gold:#b99a4b;
  --shadow:0 14px 40px rgba(31,30,24,.13);--topbar-h:calc(64px + env(safe-area-inset-top));
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--ink);background:var(--bg)
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);width:100%;max-width:100%;overflow-x:hidden}
button,input{font:inherit}
button{touch-action:manipulation}
[hidden]{display:none!important}

.topbar{height:var(--topbar-h);position:sticky;top:0;z-index:50;background:rgba(247,244,237,.96);backdrop-filter:blur(16px);border-bottom:1px solid rgba(120,115,100,.18);display:flex;align-items:center;justify-content:space-between;padding:env(safe-area-inset-top) 12px 0;gap:10px}
.brand{display:flex;align-items:center;gap:9px;color:inherit;text-decoration:none;min-width:0;overflow:hidden}
.brand-mark{flex:0 0 36px;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:#d4c36a;font-family:Georgia,serif;font-size:21px}
.brand>span:last-child{min-width:0}.brand b{display:block;letter-spacing:.12em;font-size:12px;white-space:nowrap}.brand small{display:block;color:var(--muted);font-size:9px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.icon-btn{flex:0 0 auto;border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 10px;min-height:42px}
.cart-badge{display:inline-grid;place-items:center;background:var(--ink);color:#fff;border-radius:999px;min-width:20px;height:20px;font-size:11px}

.hero{padding:24px 14px 16px;max-width:900px;margin:auto}
.eyebrow{font-size:10px;letter-spacing:.19em;color:var(--accent2);font-weight:800;margin:0 0 8px}
.hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(28px,8.2vw,54px);line-height:1.03;margin:0;letter-spacing:-.03em;overflow-wrap:anywhere}
.subtitle{font-size:15px;line-height:1.5;color:var(--muted);margin:10px 0 12px}
.intro{font-size:14px;line-height:1.55;background:#fff;border:1px solid var(--line);border-radius:15px;padding:13px;overflow-wrap:anywhere}
.global-discount-banner{display:flex;align-items:center;gap:12px;margin:0 0 12px;padding:12px;background:linear-gradient(135deg,#fff4ef,#fff);border:1px solid #e5b8a9;border-radius:16px;box-shadow:0 5px 18px rgba(120,42,28,.08)}
.discount-burst{flex:0 0 auto;display:grid;place-items:center;min-width:62px;height:46px;padding:0 9px;border-radius:13px;background:var(--sale);color:#fff;font-size:20px;font-weight:900;letter-spacing:-.04em}
.global-discount-banner strong{display:block;font-size:15px}.global-discount-banner small{display:block;color:#72554c;font-size:11px;line-height:1.35;margin-top:2px}

.sticky-tools{position:sticky;top:var(--topbar-h);z-index:40;background:rgba(247,244,237,.97);backdrop-filter:blur(14px);padding:9px 10px 7px;border-bottom:1px solid rgba(120,115,100,.16)}
.search-wrap{width:100%;max-width:900px;margin:auto;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;background:#fff;border:1px solid var(--line);border-radius:14px;padding:0 9px;height:44px}
.search-wrap input{border:0;outline:0;background:transparent;width:100%;min-width:0;padding:0 7px;color:var(--ink);font-size:14px}
.search-wrap button{border:0;background:transparent;font-size:22px;color:var(--muted);width:36px;height:40px}
.category-row{display:flex;gap:7px;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none;width:100%;max-width:900px;margin:7px auto 0;padding-bottom:2px}
.category-row::-webkit-scrollbar{display:none}.chip{flex:0 0 auto;border:1px solid var(--line);background:#fff;border-radius:999px;padding:7px 11px;font-size:12px;color:#4b4a44;min-height:34px}.chip.active{background:var(--ink);border-color:var(--ink);color:#fff}
.catalog-hint{display:flex;align-items:center;gap:9px;width:calc(100% - 20px);max-width:740px;margin:10px auto 5px;padding:9px 11px;border-radius:13px;background:#eef3df;color:#35450d}
.catalog-hint>span{font-size:21px}.catalog-hint b{display:block;font-size:12px}.catalog-hint small{display:block;font-size:10px;line-height:1.3;margin-top:1px;color:#607126}

.search-results{width:100%;max-width:900px;margin:10px auto;padding:0 10px}.search-results>p{font-size:13px}
.results-grid{display:grid;grid-template-columns:1fr;gap:9px}.result-card{position:relative;border:1px solid var(--line);background:#fff;border-radius:14px;padding:11px;text-align:left;min-width:0;overflow:hidden}.result-card b{display:block;font-size:13px;line-height:1.25;padding-right:58px}.result-card small{display:block;color:var(--muted);margin-top:3px;font-size:11px}.result-price{display:flex;gap:7px;align-items:baseline;margin-top:7px}.result-price del{font-size:11px;color:#999}.result-price strong{font-size:15px}.result-discount{position:absolute;right:8px;top:8px;background:var(--sale);color:#fff;border-radius:999px;padding:4px 7px;font-size:10px;font-weight:900}

.catalog{width:100%;max-width:760px;margin:0 auto;padding:5px 0 100px}
.catalog-page{position:relative;width:100%;max-width:100%;background:#fff;margin:0 0 8px;box-shadow:0 3px 20px rgba(31,30,24,.08);overflow:hidden}
.catalog-page img{display:block;width:100%;max-width:100%;height:auto;object-fit:contain}
.page-number{position:absolute;top:7px;right:7px;background:rgba(0,0,0,.58);color:#fff;font-size:9px;border-radius:999px;padding:4px 7px;pointer-events:none;z-index:4}
.hotspot{position:absolute;z-index:3;border:0;background:transparent;cursor:pointer;border-radius:5px;padding:0;margin:0;overflow:visible;-webkit-tap-highlight-color:transparent}
.hotspot:focus-visible{outline:2px solid var(--accent);outline-offset:1px;background:rgba(119,145,40,.09)}
.hotspot.in-cart::after{content:"✓";position:absolute;right:1px;top:1px;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;background:var(--accent2);color:#fff;font-size:11px;font-weight:900;box-shadow:0 2px 6px rgba(0,0,0,.25);pointer-events:none}
.hotspot-offer{position:absolute;left:2px;bottom:2px;display:flex;flex-direction:column;align-items:flex-start;gap:0;background:rgba(162,38,38,.94);color:#fff;border-radius:5px;padding:2px 4px;box-shadow:0 2px 6px rgba(0,0,0,.18);font-weight:900;line-height:1.05;white-space:nowrap;pointer-events:none;font-size:clamp(8px,2.5vw,11px)}
.hotspot-offer b{font-size:.9em;font-weight:800;margin-top:1px}

.floating-cart{position:fixed;z-index:60;right:max(10px,env(safe-area-inset-right));bottom:max(10px,env(safe-area-inset-bottom));height:56px;border:0;border-radius:17px;background:var(--ink);color:#fff;box-shadow:var(--shadow);display:grid;grid-template-columns:auto auto;grid-template-rows:1fr 1fr;column-gap:7px;align-items:center;padding:7px 12px}.floating-cart>span{grid-row:1/3;font-size:23px}.floating-cart>b{font-size:14px;align-self:end}.floating-cart>em{font-style:normal;font-size:10px;color:#d8d5c9;align-self:start;white-space:nowrap}

.modal-backdrop,.drawer-backdrop{position:fixed;inset:0;background:rgba(14,14,12,.54);z-index:80}
.product-modal{position:absolute;left:0;right:0;bottom:0;width:100%;background:#fff;border-radius:22px 22px 0 0;max-height:min(94dvh,900px);overflow:auto;padding-bottom:max(16px,env(safe-area-inset-bottom));overscroll-behavior:contain}
.close{border:0;background:#f1eee7;border-radius:50%;width:40px;height:40px;font-size:25px;display:grid;place-items:center}.product-modal>.close{position:absolute;right:max(10px,env(safe-area-inset-right));top:10px;z-index:5}
.product-media{height:clamp(185px,46vw,250px);background:#f8f8f5;display:grid;place-items:center;padding:16px}.product-media img{max-width:100%;max-height:100%;object-fit:contain}
.product-body{padding:16px 14px 2px}.product-meta{display:flex;justify-content:space-between;gap:8px;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em}.product-meta span{min-width:0;overflow-wrap:anywhere}.product-body h2{font-family:Georgia,serif;font-size:clamp(23px,7vw,29px);line-height:1.1;margin:7px 0 9px;overflow-wrap:anywhere}.product-body p{font-size:13px;line-height:1.5;color:#57564f;max-height:145px;overflow:auto;margin:0;overscroll-behavior:contain}
.product-offer-row{display:flex;align-items:center;gap:7px;margin-top:12px;min-height:25px}.discount-pill{display:inline-flex;align-items:center;background:var(--sale);color:#fff;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:900}.discount-source{font-size:10px;color:#85675e}.price-row{display:flex;align-items:baseline;gap:9px;margin:6px 0 13px}.price-row strong{font-size:26px}.price-row span{text-decoration:line-through;color:#999;font-size:13px}
.buy-controls{display:grid;gap:10px}.qty-control{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #eee9e0;padding-top:10px}.qty-control>span{font-size:12px;color:var(--muted);font-weight:700}.qty-control>div{display:grid;grid-template-columns:42px 44px 42px;align-items:center;gap:6px}.qty-control button{height:42px;border-radius:11px;border:1px solid var(--line);background:#fff;font-size:21px}.qty-control output{text-align:center;font-weight:800;font-size:16px}.primary{border:0;border-radius:12px;background:var(--ink);color:#fff;min-height:44px;padding:0 14px;font-weight:800}.add-product{width:100%;height:50px;font-size:15px}

.cart-drawer{position:fixed;z-index:90;right:0;top:0;bottom:0;width:min(100%,440px);max-width:100vw;background:#fff;transform:translateX(105%);transition:transform .24s ease;display:grid;grid-template-rows:auto minmax(0,1fr) auto;padding-top:env(safe-area-inset-top)}.cart-drawer.open{transform:none}.cart-head{padding:14px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.cart-head small{letter-spacing:.14em;color:var(--muted)}.cart-head h2{font-family:Georgia,serif;margin:2px 0 0;font-size:28px}.cart-items{overflow:auto;padding:8px 12px;overscroll-behavior:contain}.cart-empty{text-align:center;color:var(--muted);padding:50px 15px}.cart-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;border-bottom:1px solid #ece8df;padding:11px 0}.cart-item-main{min-width:0}.cart-item b{display:block;font-size:13px;line-height:1.3;overflow-wrap:anywhere}.cart-item small{display:block;color:var(--muted);margin-top:3px;font-size:10px}.cart-item-offer{display:flex;align-items:center;gap:5px;margin-top:5px;flex-wrap:wrap}.cart-item-offer .mini-discount{background:var(--sale-bg);color:var(--sale);border-radius:999px;padding:3px 6px;font-size:9px;font-weight:900}.cart-item-offer del{font-size:10px;color:#999}.cart-item-actions{display:flex;align-items:center;gap:5px;margin-top:7px}.cart-item-actions button{border:1px solid var(--line);background:#fff;width:30px;height:30px;border-radius:9px}.cart-item-actions span{min-width:24px;text-align:center;font-size:12px;font-weight:800}.remove{color:#9d2c2c}.cart-price{text-align:right;font-weight:800;white-space:nowrap;font-size:13px}.cart-price small{display:block;font-size:9px;color:var(--sale);font-weight:700;margin-top:3px}.cart-foot{border-top:1px solid var(--line);padding:13px 14px max(13px,env(safe-area-inset-bottom))}.sumline{display:flex;justify-content:space-between;font-size:18px;margin-bottom:9px}.saving{font-size:12px;color:var(--accent2);margin:-3px 0 8px;text-align:right}.whatsapp{width:100%;height:50px;border:0;border-radius:14px;background:#1fa855;color:#fff;font-weight:800;font-size:15px}.whatsapp:disabled{opacity:.45}.cart-note{font-size:10px;line-height:1.4;color:var(--muted);text-align:center;margin:8px 3px 0}

.toast{position:fixed;left:50%;bottom:88px;z-index:120;transform:translate(-50%,20px);opacity:0;background:#171713;color:#fff;border-radius:999px;padding:10px 15px;font-size:12px;transition:.18s;pointer-events:none;max-width:90%;text-align:center}.toast.show{transform:translate(-50%,0);opacity:1}
.added-confirm{position:fixed;z-index:125;left:10px;right:10px;bottom:max(10px,env(safe-area-inset-bottom));max-width:520px;margin:auto;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px;padding:12px}.added-confirm strong{display:block;font-size:13px}.added-confirm small{display:block;font-size:10px;color:var(--muted);margin-top:2px}.added-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:9px}.added-actions button{min-height:42px;border-radius:11px;border:1px solid var(--line);background:#fff;font-size:11px;font-weight:800}.added-actions .primary{background:var(--ink);border-color:var(--ink);color:#fff}
.end-note{text-align:center;color:var(--muted);padding:22px 10px 100px;font-size:12px}

@media(min-width:430px){.results-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{padding-left:18px;padding-right:18px}.product-body{padding-left:18px;padding-right:18px}.catalog-hint{width:calc(100% - 28px)}}
@media(min-width:700px){.topbar{padding-left:24px;padding-right:24px}.hero{padding-top:42px}.catalog{padding-left:0;padding-right:0}.catalog-page{border-radius:7px;margin-bottom:13px}.product-modal{left:50%;right:auto;bottom:50%;transform:translate(-50%,50%);width:min(620px,92vw);border-radius:22px;max-height:88dvh}.product-media{height:280px}.results-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hotspot-offer{font-size:11px}}
@media(max-height:600px) and (orientation:landscape){.product-modal{display:grid;grid-template-columns:minmax(180px,38%) minmax(0,1fr);width:min(900px,96vw);max-height:94dvh}.product-media{height:auto;min-height:270px}.product-body{padding:14px 16px 10px}.product-body p{max-height:90px}.product-modal>.close{right:10px;top:10px}.buy-controls{gap:7px}.add-product{height:44px}.product-offer-row{margin-top:7px}.price-row{margin-bottom:8px}}
@media(max-width:350px){.brand-mark{flex-basis:32px;width:32px;height:32px;font-size:19px}.brand b{font-size:11px}.brand small{font-size:8px}.icon-btn{padding:7px 8px}.hero{padding-left:11px;padding-right:11px}.sticky-tools{padding-left:7px;padding-right:7px}.product-body{padding-left:12px;padding-right:12px}.product-body p{max-height:120px}.added-confirm{left:7px;right:7px}.added-actions{grid-template-columns:1fr}.cart-items{padding-left:9px;padding-right:9px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.hotspot-offer.compact{left:0;bottom:0;flex-direction:row;align-items:center;gap:2px;padding:1px 3px;font-size:clamp(7px,1.9vw,9px);border-radius:4px}.hotspot-offer.compact b{font-size:1em;margin-top:0}
