@import url('https://fonts.googleapis.com/css2?family=Cairo:wght@400;500;600;700;800&display=swap');
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fbfbfc;color:#25262a;font-family:Cairo,system-ui,sans-serif}.shell{width:min(960px,100%);margin:auto;padding:0 18px 48px}.top{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid #eee;box-shadow:0 3px 18px rgba(0,0,0,.06)}.topin{width:min(960px,100%);margin:auto;padding:11px 18px;display:flex;align-items:center;justify-content:space-between;gap:12px}.brand{display:flex;align-items:center;gap:10px}.brandLogo{width:43px;height:43px;border-radius:12px;object-fit:contain;background:#fff}.brand h1{font-size:17px;margin:0;font-weight:800;line-height:1.2}.brand span{font-size:10px;color:#283574;font-weight:700;letter-spacing:.12em}.lang{border:1px solid #e5e5e7;background:#fff;border-radius:10px;padding:8px 12px;font-weight:700;font-size:12px;color:#555;cursor:pointer}.heroWrap{margin-top:15px;background:#fff;border:1px solid #eee;border-radius:22px;overflow:hidden;box-shadow:0 8px 28px rgba(0,0,0,.07)}.hero{height:245px;background-position:center;background-size:cover;position:relative}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.82),rgba(0,0,0,.08) 70%,transparent)}.heroText{position:absolute;z-index:1;right:20px;left:20px;bottom:18px;color:#fff}.heroText h2{margin:0;font-size:27px;font-weight:800}.heroText p{margin:4px 0 0;font-size:13px;color:#eee}.info{padding:15px;background:#fafafa;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;font-size:12px;color:#666}.info div{display:flex;gap:7px;align-items:center}.info b{color:#d22b36}.searchBox{margin-top:22px;position:relative}.searchBox input{width:100%;border:1px solid #e7e7e9;border-radius:17px;padding:15px 46px 15px 15px;font-family:inherit;font-size:13px;outline:none;box-shadow:0 2px 10px rgba(0,0,0,.03)}.searchBox span{position:absolute;right:17px;top:12px;font-size:22px;color:#999}.cats{display:flex;gap:9px;overflow:auto;padding:15px 0 5px;scrollbar-width:none}.cats::-webkit-scrollbar{display:none}.cat{white-space:nowrap;border:1px solid #eee;background:#fff;border-radius:17px;padding:9px 17px;font-family:inherit;font-size:12px;font-weight:700;color:#555;cursor:pointer}.cat.active{background:#202566;color:#fff;border-color:#202566}.cat.special{border-color:#e7cfd2}.cat.special:not(.active){color:#b51f2c;background:#fff8f8}.products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:16px}.product{position:relative;display:flex;min-height:140px;background:#fff;border:1px solid #eee;border-radius:18px;overflow:hidden;cursor:pointer;box-shadow:0 3px 12px rgba(0,0,0,.035);transition:.2s}.product:hover{transform:translateY(-1px);box-shadow:0 7px 20px rgba(0,0,0,.08)}.pic{width:145px;min-width:145px;background:#eee;position:relative;overflow:hidden}.pic img{width:100%;height:100%;object-fit:cover}.badge{position:absolute;inset:0;display:grid;place-items:center;background:rgba(0,0,0,.58);color:#fff;font-size:11px;font-weight:800}.productBody{padding:13px 14px 13px 10px;display:flex;flex-direction:column;justify-content:space-between;min-width:0}.productBody h3{font-size:15px;margin:0;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.productBody p{font-size:11px;color:#888;line-height:1.8;margin:5px 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.price{color:#b51f2c;font-size:13px;font-weight:800}.price del{color:#9b9ba0;font-weight:500;margin-inline-start:6px}.badges{position:absolute;top:8px;right:8px;display:flex;gap:5px;flex-wrap:wrap;z-index:2}.badges span{background:#b51f2c;color:#fff;border-radius:999px;padding:4px 7px;font-size:9px;font-weight:800;box-shadow:0 2px 8px rgba(0,0,0,.15)}.rating{display:flex;align-items:center;gap:5px;font-size:10px;direction:ltr}.rating span,.reviewStars,.ratingSummary{color:#d59a16;letter-spacing:1px}.rating small{color:#999}.modalPrice{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.modalPrice del{color:#999;font-size:13px}.modalPrice strong{color:#b51f2c;font-size:18px}.reviews{margin-top:20px;border-top:1px solid #eee;padding-top:18px}.reviewHeading{display:flex;justify-content:space-between;align-items:center;gap:10px}.ratingSummary{font-size:11px}.ratingSummary b{color:#333;letter-spacing:0}.ratingSummary small{color:#999;letter-spacing:0}.reviewList{margin-top:10px;display:grid;gap:8px}.review{background:#fafafa;border:1px solid #eee;border-radius:12px;padding:10px}.reviewTop{display:flex;justify-content:space-between;gap:8px}.reviewTop small{color:#999;font-size:9px}.review p{margin:6px 0 0;color:#666;font-size:11px;line-height:1.8}.noReviews{color:#999;font-size:11px}.reviewForm{margin-top:14px;background:#fff8f8;border:1px solid #f0d6d9;border-radius:14px;padding:12px}.reviewForm h4{margin:0 0 8px;font-size:13px}.starInput{display:flex;gap:2px;margin-bottom:9px}.starInput button{border:0;background:transparent;color:#c9c9c9;font-size:25px;cursor:pointer;padding:0 2px}.starInput button.selected{color:#d59a16}.reviewForm textarea{width:100%;min-height:70px;border:1px solid #eadfe1;border-radius:10px;padding:9px;font-family:inherit;resize:vertical;outline:none}.reviewForm>button{margin-top:8px;border:0;background:#202566;color:#fff;border-radius:10px;padding:9px 14px;font-family:inherit;font-weight:800;cursor:pointer}.reviewForm>button:disabled{opacity:.6;cursor:not-allowed}.reviewMsg{font-size:10px;color:#777;margin-top:7px}.foot{display:none}.price del{color:#aaa;font-weight:500;margin-inline-start:5px}.arrow{position:absolute;bottom:9px;left:10px;color:#aaa}.empty,.error{background:#fff;border:1px solid #eee;border-radius:18px;padding:45px 20px;text-align:center;color:#999;grid-column:1/-1}.error h2{color:#333}.error button{border:0;background:#283574;color:#fff;border-radius:10px;padding:10px 18px;font-family:inherit;font-weight:700}.contact{margin-top:38px;background:#fff;border:1px solid #eee;border-radius:20px;padding:24px;text-align:center}.contact h3{margin:0;font-size:18px}.contact p{font-size:11px;color:#999}.actions{display:flex;justify-content:center;gap:10px;margin:20px 0}.actions a{padding:10px 15px;border-radius:12px;text-decoration:none;font-size:12px;font-weight:800}.call{background:#283574;color:#fff}.qr{background:#f0f1f5;color:#444}.social{display:flex;justify-content:center;gap:17px}.social a{color:#777;text-decoration:none;font-size:20px}.foot{text-align:center;color:#aaa;font-size:10px;margin-top:18px}.modal{position:fixed;inset:0;background:rgba(0,0,0,.62);backdrop-filter:blur(4px);z-index:50;display:none;align-items:flex-end;justify-content:center;padding:0}.modal.show{display:flex}.modalCard{width:min(500px,100%);background:#fff;border-radius:26px 26px 0 0;overflow:hidden;animation:up .2s ease}.modalCard img{width:100%;height:260px;object-fit:cover}.modalContent{padding:20px}.modalHead{display:flex;justify-content:space-between;gap:10px}.modalHead h3{margin:0;font-size:20px}.modalPrice{color:#c92936;font-weight:800}.close{border:0;background:#f1f1f2;border-radius:50%;width:34px;height:34px;font-size:18px;cursor:pointer}.modalContent p{font-size:12px;line-height:1.9;color:#666}.ingredients{background:#f7f7f8;padding:12px;border-radius:12px;font-size:11px;color:#666}.ingredients strong{display:block;color:#888;margin-bottom:4px}@keyframes up{from{transform:translateY(30px);opacity:0}to{transform:none;opacity:1}}
@media(max-width:680px){.shell{padding-inline:12px}.hero{height:190px}.heroText h2{font-size:22px}.info{grid-template-columns:1fr 1fr}.info div:last-child{grid-column:1/-1}.products{grid-template-columns:1fr}.product{min-height:130px}.pic{width:128px;min-width:128px}.brand h1{font-size:15px}}

.badges span.popular{background:#20245f}.badges span.new{background:#b51f2c}
.social{gap:12px}.social a{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid #e5e7f0;border-radius:50%;background:#f5f6fa;color:#283574;transition:transform .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease}.social a:hover{background:#283574;color:#fff;transform:translateY(-2px);box-shadow:0 5px 14px rgba(40,53,116,.2)}.social svg{width:21px;height:21px;fill:none;stroke:none}.modalCard img{object-fit:contain;background:#f7f7f8;display:block}
.modal{padding:16px;align-items:center}.modalCard{display:flex;flex-direction:column;max-height:calc(100dvh - 32px);border-radius:24px}.modalCard>img{flex:0 0 auto;width:100%;height:min(260px,34dvh);max-height:34dvh;object-fit:contain;background:#f7f7f8}.modalContent{min-height:0;overflow-y:auto;overscroll-behavior:contain}@media(max-width:600px){.modal{padding:10px;align-items:flex-end}.modalCard{max-height:calc(100dvh - 20px);border-radius:22px 22px 0 0}.modalCard>img{height:min(220px,30dvh);max-height:30dvh}.modalContent{padding:16px}}
.qrModal{position:fixed;inset:0;z-index:60;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(17,22,55,.68);backdrop-filter:blur(7px)}.qrModal.show{display:flex}.qrCard{width:min(360px,100%);padding:24px 22px 20px;border:1px solid rgba(255,255,255,.8);border-radius:26px;background:linear-gradient(145deg,#fff,#f5f6fb);box-shadow:0 20px 60px rgba(0,0,0,.25);text-align:center;position:relative;animation:up .2s ease}.qrClose{position:absolute;top:12px;left:12px;width:32px;height:32px;border:0;border-radius:50%;background:#eceef6;color:#283574;font-size:21px;line-height:1;cursor:pointer}.qrIcon{width:45px;height:45px;display:grid;place-items:center;margin:0 auto 12px;border-radius:14px;background:#283574;color:#fff;font-size:28px;font-weight:800}.qrCard h3{margin:0;color:#202566;font-size:18px}.qrCard p{margin:8px auto 16px;color:#737583;font-size:11px;line-height:1.8;max-width:270px}.qrCard img{display:block;width:min(270px,80vw);aspect-ratio:1;margin:0 auto 14px;padding:12px;border-radius:18px;background:#fff;border:1px solid #e5e7f0;box-shadow:0 8px 20px rgba(40,53,116,.1)}.qrCard small{color:#9699a8;font-size:10px}


/* =========================================================
   Lavanna 505 — Brand Color Refresh
   Keeps the existing layout/components unchanged.
   ========================================================= */
:root{
  --lavanna-navy:#22215F;
  --lavanna-navy-dark:#171747;
  --lavanna-red:#C82032;
  --lavanna-bg:#F6F6F8;
  --lavanna-blue-soft:#EEF0F8;
  --lavanna-border:#E3E4EA;
}

body{background:var(--lavanna-bg);color:#202124}

.top{
  background:rgba(34,33,95,.97);
  border-bottom:1px solid rgba(255,255,255,.12);
  box-shadow:0 4px 20px rgba(23,23,71,.16);
}
.brand h1{color:#fff}
.brand span{color:#DADAF2}
.brandLogo{background:#fff}
.lang{
  border-color:rgba(255,255,255,.65);
  background:#fff;
  color:var(--lavanna-navy);
}

.heroWrap{border-color:var(--lavanna-border)}
.info{background:#F1F2F7}
.info b{color:var(--lavanna-red)}

.searchBox input{
  border-color:var(--lavanna-border);
  background:#fff;
}
.searchBox span{color:#777B88}

.cat{
  border-color:var(--lavanna-border);
  background:#fff;
  color:#4D4F58;
}
.cat.active{
  background:var(--lavanna-navy);
  border-color:var(--lavanna-navy);
}
.cat.special{
  border-color:#E8C7CC;
}
.cat.special:not(.active){
  color:var(--lavanna-red);
  background:#FFF7F8;
}

.product{
  background:#fff;
  border-color:var(--lavanna-border);
}
.productBody h3{color:#202124}
.productBody p{color:#858792}
.price,.modalPrice strong{color:var(--lavanna-red)}

.badges span{background:var(--lavanna-red)}
.badges span.popular{background:var(--lavanna-navy)}
.badges span.new{background:var(--lavanna-red)}

.contact{
  background:#fff;
  border-color:var(--lavanna-border);
}
.contact h3{color:var(--lavanna-navy)}
.call{background:var(--lavanna-navy)}
.qr{
  background:var(--lavanna-blue-soft);
  color:var(--lavanna-navy);
}
.social a{
  border-color:#DDE0EC;
  background:#F3F4F9;
  color:var(--lavanna-navy);
}
.social a:hover{
  background:var(--lavanna-navy);
  color:#fff;
  box-shadow:0 5px 14px rgba(34,33,95,.22);
}

.empty,.error{border-color:var(--lavanna-border)}
.error button{background:var(--lavanna-navy)}
.reviewForm{
  background:#FFF7F8;
  border-color:#F0D6DA;
}
.reviewForm>button{background:var(--lavanna-navy)}

.close{
  background:#F0F1F5;
  color:var(--lavanna-navy);
}
.ingredients{background:#F2F3F7}

.qrModal{background:rgba(17,18,60,.72)}
.qrCard{
  background:linear-gradient(145deg,#fff,#F3F4FA);
  border-color:rgba(255,255,255,.85);
}
.qrClose{
  background:#ECEEF6;
  color:var(--lavanna-navy);
}
.qrIcon{background:var(--lavanna-navy)}
.qrCard h3{color:var(--lavanna-navy)}
.qrCard img{border-color:#E0E2EB;box-shadow:0 8px 20px rgba(34,33,95,.10)}

.modalCard{border-color:var(--lavanna-border)}
.modalCard>img{background:#F3F4F7}

