:root { --ink:#18332a; --green:#2e6b4d; --lime:#d8ed73; --cream:#f9f7f0; --peach:#f3c4a3; --muted:#69766f; }
.barcode-search { display:flex; align-items:center; overflow:hidden; height:37px; border:1px solid #cbd4c9; border-radius:99px; background:#fff; }.barcode-search input { width:78px; min-width:0; padding:8px 0 8px 12px; border:0; outline:0; color:var(--ink); font:.75rem "DM Sans",sans-serif; }.barcode-search button { width:32px; height:100%; border:0; background:transparent; color:var(--green); font-size:1.1rem; cursor:pointer; }.barcode-search:focus-within { border-color:var(--green); box-shadow:0 0 0 3px rgba(46,107,77,.12); }
.bakery-icon { width:48px; height:48px; color:#a46227; }.bakery-icon svg { display:block; width:100%; height:100%; }
.produce { background:#dcebc1; }.bakery { background:#f4d8ac; }.snacks { background:#f8d4b5; }.chips { background:#f0d5df; }.shampoo { background:#d7e6f6; }.cleaning { background:#d6eee4; }.dairy { background:#cde7e5; }.coffee { background:#e5d4b8; }.canned { background:#f7d7c9; }.rice { background:#f3e6b7; }.hot-drinks { background:#d9c6a8; }.kids-drinks { background:#f9d5dd; }.oils { background:#e6dfb5; }.pastas { background:#d9d0ee; }.bathroom { background:#dfeaf8; }.skin-care { background:#f4d7dc; }.washing-machine { background:#dfead9; }.girls-issues { background:#f8ddec; }.nuts { background:#ead7b5; }.glass-cleaner { background:#d7e8f6; }.cooking-materials { background:#dfe6c5; }.pantry { background:#e6d9ef; }
.category-products { margin-top:42px; }.special-offers { max-width:1180px; margin:0 auto 60px; padding:0 28px; }.product-group { margin-top:40px; }.product-group:first-child { margin-top:0; }.product-group-title { display:flex; align-items:center; gap:12px; margin:0 0 17px; font-family:"Playfair Display",serif; font-size:1.55rem; }.product-group-title::after { flex:1; height:1px; background:#d9ddd5; content:""; }.store-products { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }.store-product { overflow:hidden; border-radius:5px; background:#fff; box-shadow:0 2px 12px rgba(24,51,42,.08); }.store-product img,.product-photo-placeholder { display:block; width:100%; height:160px; object-fit:cover; background:#e8f0db; }.product-photo-placeholder { display:grid; place-items:center; color:var(--muted); font-size:.8rem; }.store-product-copy { padding:16px; }.store-product-copy>span { color:var(--green); text-transform:uppercase; font-size:.65rem; font-weight:700; letter-spacing:1px; }.store-product h3 { margin:7px 0 5px; font-size:1rem; }.store-product p { min-height:34px; margin:0; color:var(--muted); font-size:.76rem; line-height:1.4; }.product-price { display:flex; align-items:center; justify-content:space-between; margin-top:15px; font-weight:700; }.sold-out { color:#a4453e; font-size:.7rem; }.store-product.is-sold-out { opacity:.62; }.empty-products { padding:28px; text-align:center; color:var(--muted); background:#fff; }
.add-to-cart { width:100%; margin-top:13px; padding:10px; border:0; border-radius:3px; background:var(--green); color:#fff; font:700 .78rem "DM Sans",sans-serif; cursor:pointer; }.add-to-cart:hover { background:#245b40; }
.checkout { max-width:1124px; margin:0 auto 88px; padding:48px; display:grid; grid-template-columns:.75fr 1.25fr; gap:70px; border-radius:6px; background:#e8f0db; }.checkout h2 { font-size:clamp(2rem,3.4vw,2.8rem); line-height:1.1; }.checkout-intro>p:not(.eyebrow) { max-width:270px; margin:15px 0 0; color:var(--muted); line-height:1.55; font-size:.9rem; }.customer-form { display:grid; grid-template-columns:1fr 1fr; gap:17px; align-content:start; }.form-field { display:flex; flex-direction:column; gap:7px; }.form-field-wide,.form-button { grid-column:1 / -1; }.form-field label { font-size:.8rem; font-weight:700; }.form-field input { min-width:0; padding:13px; border:1px solid #cbd4c9; border-radius:3px; outline:none; background:#fff; color:var(--ink); font:400 .95rem "DM Sans",sans-serif; }.form-field input:focus { border-color:var(--green); box-shadow:0 0 0 3px rgba(46,107,77,.14); }.form-button { justify-content:center; margin-top:3px; border:0; cursor:pointer; }
.order-summary.hidden { display:none; }
.order-summary { margin-top:27px; padding:21px; border-radius:4px; background:#fffdf8; }.order-summary h3 { margin:0 0 15px; font-size:1rem; }.summary-item,.summary-line,.summary-total,.delivery-price { display:flex; justify-content:space-between; align-items:center; gap:10px; font-size:.8rem; }.summary-item { padding:7px 0; color:var(--muted); }.summary-item strong { color:var(--ink); }.summary-line { margin-top:10px; padding-top:14px; border-top:1px solid #dde2d7; }.delivery-price { margin:13px 0; font-weight:700; }.delivery-price input { width:72px; padding:7px; border:1px solid #cbd4c9; border-radius:3px; color:var(--ink); font:700 .8rem "DM Sans",sans-serif; text-align:right; }.summary-total { margin-top:12px; padding-top:14px; border-top:1px solid #ccd7c7; font-size:.96rem; font-weight:700; }.summary-total strong { color:var(--green); font-size:1.15rem; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--cream); font-family:"DM Sans",sans-serif; }
a { color:inherit; text-decoration:none; }
.site-header { height:82px; max-width:1180px; margin:auto; padding:0 28px; display:flex; align-items:center; justify-content:space-between; }
.logo { font-size:1.45rem; font-weight:700; letter-spacing:-1.2px; }.logo span { color:var(--green); }
.nav { display:flex; gap:30px; font-size:.91rem; font-weight:500; }.nav a:hover { color:var(--green); }
.header-actions { display:flex; align-items:center; gap:9px; }.product-search { display:flex; align-items:center; overflow:hidden; height:37px; border:1px solid #cbd4c9; border-radius:99px; background:#fff; }.product-search input { width:130px; min-width:0; padding:8px 0 8px 13px; border:0; outline:0; color:var(--ink); font:.75rem "DM Sans",sans-serif; }.product-search button { width:34px; height:100%; border:0; background:transparent; color:var(--green); font-size:1.25rem; cursor:pointer; }.product-search:focus-within { border-color:var(--green); box-shadow:0 0 0 3px rgba(46,107,77,.12); }.language-switcher { width:37px; height:37px; border:1px solid #cbd4c9; border-radius:50%; background:transparent; color:var(--ink); font:700 .7rem "DM Sans",sans-serif; cursor:pointer; }.language-switcher:hover { background:var(--lime); }.cart { border:1px solid #cbd4c9; border-radius:99px; padding:9px 15px; font-size:.85rem; font-weight:600; }.cart span { display:inline-grid; place-items:center; width:19px; height:19px; margin-left:4px; border-radius:50%; background:var(--lime); font-size:.72rem; }.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.hero { min-height:540px; background:#e8f0db; display:grid; grid-template-columns:1fr 1fr; overflow:hidden; }
.hero-copy { max-width:590px; margin-left:auto; padding:94px 65px 72px 28px; }.eyebrow { margin:0 0 12px; color:var(--green); text-transform:uppercase; font-size:.7rem; font-weight:700; letter-spacing:1.5px; }
h1,h2 { margin:0; font-family:"Playfair Display",serif; font-weight:700; letter-spacing:-2.2px; } h1 { font-size:clamp(3.3rem,6vw,5.4rem); line-height:.98; } h1 em { color:var(--green); font-weight:inherit; }.hero-text { max-width:390px; margin:25px 0 29px; color:#526158; font-size:1rem; line-height:1.65; }
.button { display:inline-flex; align-items:center; gap:22px; padding:14px 18px; background:var(--green); border-radius:3px; color:white; font-size:.88rem; font-weight:700; transition:transform .2s, background .2s; }.button:hover { background:#245b40; transform:translateY(-2px); }.button span { font-size:1.25rem; line-height:0; }.hero-note { display:flex; flex-direction:column; margin-top:52px; padding-left:14px; border-left:2px solid var(--green); font-size:.78rem; }.hero-note span { margin-top:4px; color:var(--muted); }
.hero-visual { position:relative; min-height:440px; background:var(--peach); overflow:hidden; }.sun { position:absolute; width:440px; height:440px; top:62px; left:50%; border-radius:50%; background:#f8e2a5; transform:translateX(-50%); }.bag { position:absolute; z-index:2; width:250px; height:270px; left:50%; bottom:-8px; padding:106px 0 0; border-radius:8px 8px 28px 28px; background:#d7b078; color:#73532c; text-align:center; box-shadow:10px 12px 0 #c69d67; }.bag-handle { position:absolute; width:104px; height:93px; top:-60px; left:73px; border:14px solid #c99e64; border-bottom:0; border-radius:60px 60px 0 0; }.bag b { position:relative; font-size:1rem; letter-spacing:1px; line-height:1; }.tomato,.orange,.leaf,.bread { position:absolute; z-index:3; font-size:76px; line-height:.4; }.tomato { color:#df5847; bottom:164px; left:20px; }.orange { color:#ef9b36; bottom:177px; right:14px; }.leaf { color:#4c8e4c; font-size:68px; }.leaf-one { bottom:205px; left:79px; }.leaf-two { bottom:221px; right:61px; }.bread { color:#e2ae5a; bottom:170px; left:98px; transform:rotate(-20deg); }.sparkle { position:absolute; z-index:3; color:white; font-size:28px; }.sparkle-one { top:72px; right:15%; }.sparkle-two { bottom:86px; left:14%; font-size:18px; }
.categories { max-width:1180px; margin:0 auto; padding:96px 28px; }.section-heading { display:flex; align-items:end; justify-content:space-between; margin-bottom:33px; }.section-heading h2,.offer h2 { font-size:clamp(2rem,3.6vw,3rem); line-height:1.1; }.section-heading>a { color:var(--green); border-bottom:1px solid var(--green); padding-bottom:3px; font-size:.84rem; font-weight:700; }.category-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }.category { min-height:202px; padding:25px; border-radius:5px; transition:transform .2s; }.category:hover { transform:translateY(-5px); }.produce { background:#dcebc1; }.bakery { background:#f4d8ac; }.dairy { background:#cde7e5; }.pantry { background:#e6d9ef; }.category-icon { display:block; margin-bottom:38px; font-size:2.4rem; }.category h3 { margin:0 0 5px; font-size:1rem; }.category p { margin:0; color:#58685f; font-size:.78rem; }
.offer { max-width:1124px; min-height:300px; margin:0 auto 88px; padding:52px 58px; display:flex; align-items:center; justify-content:space-between; overflow:hidden; border-radius:6px; background:var(--green); color:white; }.offer .eyebrow { color:var(--lime); }.offer h2 { margin-bottom:13px; }.offer>div>p:not(.eyebrow) { margin:0 0 22px; color:#d6e4d5; }.button-light { background:var(--lime); color:var(--ink); }.button-light:hover { background:#e3f38f; }.offer-art { min-width:290px; position:relative; height:190px; }.offer-art span { position:absolute; font-size:7rem; filter:drop-shadow(8px 9px 0 rgba(0,0,0,.12)); }.offer-art span:nth-child(1) { left:14px; top:16px; }.offer-art span:nth-child(2) { left:110px; top:56px; }.offer-art span:nth-child(3) { left:195px; top:5px; }
footer { max-width:1180px; margin:auto; padding:30px 28px; border-top:1px solid #d9ddd5; display:flex; align-items:center; gap:26px; color:var(--muted); font-size:.8rem; }footer p { margin:0; }footer small { margin-left:auto; }
.invoice-modal { position:fixed; z-index:30; inset:0; display:grid; place-items:center; padding:20px; background:rgba(24,51,42,.7); backdrop-filter:blur(4px); overflow-y:auto; }
.invoice-modal[hidden] { display:none; }
.invoice-container { width:min(600px,100%); background:#fff; border-radius:8px; box-shadow:0 20px 60px rgba(0,0,0,.3); }
.invoice-content { padding:40px; }
.invoice-header { text-align:center; margin-bottom:30px; border-bottom:2px solid #2e6b4d; padding-bottom:15px; }
.invoice-header h1 { margin:0; font-size:2rem; font-weight:700; letter-spacing:-1px; }
.invoice-header h1 span { color:#2e6b4d; }
.invoice-header p { margin:8px 0 0; color:#2e6b4d; font-size:.9rem; font-weight:700; text-transform:uppercase; letter-spacing:1px; }
.invoice-section { margin-bottom:20px; }
.invoice-section h3 { margin:0 0 12px; font-size:1rem; color:#2e6b4d; border-bottom:1px solid #d9ddd5; padding-bottom:8px; }
.invoice-section p { margin:6px 0; font-size:.9rem; line-height:1.5; }
.invoice-items { border:1px solid #d9ddd5; border-radius:4px; padding:12px; }
.invoice-item { display:flex; justify-content:space-between; padding:8px 0; border-bottom:1px solid #eee; font-size:.85rem; }
.invoice-item:last-child { border-bottom:none; }
.invoice-item-name { flex:1; }
.invoice-item-price { text-align:right; font-weight:700; }
.invoice-summary { border-top:2px solid #2e6b4d; padding-top:12px; }
.summary-row { display:flex; justify-content:space-between; padding:8px 0; font-size:.9rem; }
.summary-row.total { border-top:2px solid #2e6b4d; padding-top:12px; font-size:1.1rem; font-weight:700; color:#2e6b4d; }
.invoice-note { margin-top:20px; padding:15px; background:#f0f8ff; border-left:4px solid #2e6b4d; border-radius:4px; text-align:center; }
.invoice-actions { display:flex; gap:10px; margin-top:30px; }
.invoice-actions button { flex:1; }
.invoice-actions button.secondary { background:#fff; color:#2e6b4d; border:2px solid #2e6b4d; }
.invoice-actions .whatsapp-button { background:#25d366; color:#fff; text-align:center; }
@media print { .invoice-modal { position:static; z-index:auto; background:transparent; backdrop-filter:none; padding:0; } .invoice-container { box-shadow:none; border:none; } .invoice-actions { display:none; } .invoice-note { background:#fff; border:2px solid #e74c3c; } }
.language-modal { position:fixed; z-index:20; inset:0; display:none; place-items:center; padding:20px; background:rgba(24,51,42,.58); backdrop-filter:blur(4px); }.language-modal.is-visible { display:grid; }.language-card { position:relative; width:min(440px,100%); padding:47px; border-radius:8px; background:var(--cream); text-align:center; box-shadow:0 20px 60px rgba(0,0,0,.2); }.language-leaf { display:grid; place-items:center; width:47px; height:47px; margin:0 auto 17px; border-radius:50%; background:var(--lime); color:var(--green); font-size:1.3rem; }.language-card h2 { font-size:2.25rem; line-height:1.1; }.language-subtitle { margin:13px 0 27px; color:var(--muted); font-size:.9rem; }.language-options { display:grid; gap:10px; }.language-options button { display:flex; justify-content:space-between; align-items:center; padding:15px 18px; border:1px solid #d6ddd0; border-radius:3px; background:#fff; color:var(--ink); font:600 .95rem "DM Sans",sans-serif; cursor:pointer; transition:.2s; }.language-options button:hover { border-color:var(--green); background:#edf5df; transform:translateY(-1px); }
.owner-modal { position:fixed; z-index:25; inset:0; display:none; place-items:center; padding:20px; background:rgba(24,51,42,.65); backdrop-filter:blur(4px); }.owner-modal.is-visible { display:grid; }.owner-card { width:min(410px,100%); padding:40px; border-radius:8px; background:var(--cream); text-align:center; box-shadow:0 20px 60px rgba(0,0,0,.25); }.owner-card h2 { font-size:2.2rem; }.owner-card>p:not(.eyebrow) { color:var(--muted); font-size:.88rem; line-height:1.5; }.owner-card form { display:grid; gap:9px; margin-top:24px; text-align:left; }.owner-card label { font-size:.8rem; font-weight:700; }.owner-card input { width:100%; padding:13px; border:1px solid #cbd4c9; border-radius:3px; background:#fff; font:700 1rem "DM Sans",sans-serif; letter-spacing:5px; text-align:center; }.owner-card form .button { justify-content:center; margin-top:9px; border:0; cursor:pointer; }.owner-card small { min-height:15px; color:#aa423a; font-size:.75rem; }.modal-close { margin-top:20px; border:0; background:transparent; color:var(--muted); font:600 .8rem "DM Sans",sans-serif; cursor:pointer; }
html[dir="rtl"] body { font-family:Tahoma, "DM Sans", sans-serif; }html[dir="rtl"] .hero-copy { margin-left:0; margin-right:auto; padding-left:65px; padding-right:28px; }html[dir="rtl"] .hero-note { padding-left:0; padding-right:14px; border-left:0; border-right:2px solid var(--green); }html[dir="rtl"] .cart span { margin-left:0; margin-right:4px; }html[dir="rtl"] footer small { margin-left:0; margin-right:auto; }
@media (max-width:720px) { .site-header { height:68px; padding:0 20px; }.nav { display:none; }.product-search input { width:82px; }.cart { padding:9px 11px; }.hero { grid-template-columns:1fr; }.hero-copy { margin:0; padding:68px 25px 55px; }.hero-visual { min-height:330px; }.sun { width:330px; height:330px; top:25px; }.bag { transform:translateX(-50%) scale(.8); transform-origin:bottom center; }.categories { padding:64px 20px; }.section-heading { align-items:start; gap:15px; flex-direction:column; }.category-grid,.store-products { grid-template-columns:repeat(2,1fr); gap:10px; }.category { min-height:170px; padding:17px; }.category-icon { margin-bottom:25px; }.store-product img,.product-photo-placeholder { height:120px; }.store-product-copy { padding:12px; }.checkout { margin:0 20px 55px; padding:34px 25px; grid-template-columns:1fr; gap:28px; }.customer-form { grid-template-columns:1fr; }.form-field,.form-field-wide,.form-button { grid-column:1; }.offer { margin:0 20px 55px; padding:38px 28px; }.offer-art { display:none; } footer { padding:25px 20px; flex-wrap:wrap; } footer small { width:100%; margin:0; } }
