:root{--g:#16a34a;--gd:#15803d;--gs:#dcfce7;--n:#0d355d;--ink:#132238;--muted:#64748b;--bg:#fbfdfc;--surface:#fff;--line:#e4ecef;--shadow:0 24px 70px rgba(15,43,66,.11);--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.6 "DM Sans",system-ui,sans-serif}body.dark{--bg:#08131f;--surface:#0e1d2b;--ink:#edf6fa;--muted:#9bb0bf;--line:#203342;--shadow:0 24px 70px rgba(0,0,0,.3)}a{text-decoration:none;color:inherit}button,input{font:inherit}button{cursor:pointer}.wrap{width:min(calc(100% - 40px),var(--max));margin:auto}.skip{position:fixed;top:-60px;left:15px;background:var(--g);color:#fff;padding:10px;border-radius:8px;z-index:999}.skip:focus{top:15px}header{position:sticky;top:0;z-index:100;background:rgba(251,253,252,.88);backdrop-filter:blur(15px);border-bottom:1px solid transparent}body.dark header{background:rgba(8,19,31,.88)}header.scrolled{border-color:var(--line);box-shadow:0 8px 30px #0000000a}.nav{min-height:78px;display:flex;align-items:center;gap:26px}.brand{display:flex;align-items:center;gap:9px}.brand>b{display:grid;place-items:center;width:38px;height:38px;border-radius:11px 15px 11px 15px;background:var(--n);color:#fff;font:800 24px Manrope}.brand span{font:800 25px Manrope;letter-spacing:-1.2px}.brand strong{color:var(--n)}body.dark .brand strong{color:#fff}.brand i{color:var(--g);font-style:normal}nav{display:flex;gap:25px;margin-left:auto}nav a{font-size:14px;font-weight:700;color:var(--muted)}nav a:hover{color:var(--g)}.actions{display:flex;gap:9px;align-items:center}.icon,.menu{border:1px solid var(--line);background:var(--surface);color:var(--ink);width:40px;height:40px;border-radius:12px}.menu{display:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:43px;padding:0 17px;border:1px solid transparent;border-radius:12px;font-weight:800;font-size:14px;transition:.2s}.btn:hover{transform:translateY(-2px)}.primary{background:var(--g);color:#fff;box-shadow:0 10px 22px #16a34a2d}.primary:hover{background:var(--gd)}.ghost{border-color:var(--line);background:var(--surface)}.soft{background:var(--gs);color:var(--gd)}.large{min-height:52px;padding:0 21px}.hero{position:relative;overflow:hidden;padding:85px 0 70px;background:linear-gradient(180deg,#f4fbf7,#fbfdfc)}body.dark .hero{background:linear-gradient(180deg,#0b1c2a,#08131f)}.hero-grid{display:grid;grid-template-columns:1.04fr .96fr;align-items:center;gap:65px;position:relative;z-index:1}.eyebrow{display:inline-block;color:var(--gd);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:1.4px}.hero h1{font:800 clamp(48px,6vw,78px)/1.03 Manrope;margin:17px 0;letter-spacing:-2.8px}.hero h1 em{color:var(--g);font-style:normal}.hero p{font-size:18px;color:var(--muted);max-width:650px}.search{display:flex;align-items:center;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);padding:6px 7px 6px 15px;border-radius:16px;max-width:660px;margin-top:25px}.search>span{font-size:26px;color:var(--muted)}.search input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--ink);padding:0 9px}.popular{display:flex;flex-wrap:wrap;gap:9px;align-items:center;font-size:12px;color:var(--muted);margin-top:12px}.popular button{border:0;background:none;color:var(--n);font-weight:800;padding:0}.hero-buttons{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.trust{display:flex;align-items:center;gap:12px;margin-top:28px}.trust strong,.trust small{display:block}.trust small{color:var(--muted);font-size:12px}.avatars{display:flex;padding-left:9px}.avatars i{width:31px;height:31px;margin-left:-9px;display:grid;place-items:center;border:2px solid var(--bg);border-radius:50%;background:var(--n);color:#fff;font-size:9px;font-style:normal}.avatars i:nth-child(2){background:var(--g)}.avatars i:nth-child(3){background:#4c6680}.avatars i:nth-child(4){background:#dbe7ec;color:#35546a}.glow{position:absolute;border-radius:50%;filter:blur(2px)}.g1{width:500px;height:500px;right:-180px;top:-180px;background:#16a34a14}.g2{width:330px;height:330px;left:-180px;bottom:-180px;background:#1d4e7910}.hero-art{min-height:590px;position:relative;display:grid;place-items:center}.phone{width:292px;height:590px;padding:9px;border-radius:42px;background:#092139;box-shadow:0 45px 90px #0d355d47;transform:rotate(3deg)}.screen{height:100%;position:relative;overflow:hidden;border-radius:34px;background:#f4f9f7;padding:17px 14px 0;color:#132238}.appbar{display:flex;justify-content:space-between;font-size:9px}.greeting{margin:27px 5px 12px}.greeting small,.mini-card small{display:block;color:#70818d;font-size:9px}.greeting strong{display:block;font:800 21px Manrope}.mini-search{background:#fff;border:1px solid #e1eaed;padding:10px;border-radius:11px;color:var(--g)}.mini-search span{color:#9aa8af}.section-title{display:flex;justify-content:space-between;margin:18px 4px 9px;font-size:11px}.section-title small{color:var(--g);font-weight:800}.mini-card{display:grid;grid-template-columns:55px 1fr;gap:9px;background:#fff;border-radius:13px;padding:7px;margin-bottom:7px;box-shadow:0 5px 15px #102b390f}.mini-card b{font-size:10px}.pic{width:55px;height:55px;border-radius:9px}.p1{background:linear-gradient(135deg,#82b56c,#f2c67a,#c35e32)}.p2{background:linear-gradient(135deg,#9bc8de,#426c85,#c8a36c)}.map{height:158px;margin-top:11px;border-radius:14px;position:relative;overflow:hidden;background:linear-gradient(120deg,#d9ece1,#e8f2ea,#c7e0d4)}.map:before,.map:after{content:"";position:absolute;background:#fff;opacity:.75;width:130%;height:16px;transform:rotate(27deg);top:55px;left:-25px}.map:after{height:11px;transform:rotate(-21deg);top:106px}.map i{position:relative;z-index:2;color:var(--g);font-style:normal;margin-left:25px}.tabs{position:absolute;bottom:0;left:0;right:0;height:53px;background:#fff;border-top:1px solid #e4ecee;display:flex;justify-content:space-around;align-items:center;color:#9aa7ad}.tabs b,.tabs span{font-size:16px;text-align:center}.tabs small{display:block;font-size:7px}.tabs b{color:var(--g)}.float{position:absolute;display:flex;align-items:center;gap:10px;background:var(--surface);padding:12px 15px;border-radius:15px;box-shadow:0 18px 45px #0a2d4526}.float>span b,.float>span small{display:block}.float>span b{font:800 14px Manrope}.float>span small{font-size:10px;color:var(--muted)}.rating{left:0;top:140px;color:#e5a400}.growth{right:0;bottom:110px;color:var(--g)}.stats{background:var(--n);color:#fff;padding:28px 0}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);text-align:center}.stat-grid>div+div{border-left:1px solid #ffffff26}.stat-grid b{display:block;font:800 28px Manrope}.stat-grid span{color:#b7c9d7;font-size:12px}.section{padding:100px 0}.head{display:flex;justify-content:space-between;align-items:end;margin-bottom:36px}.head h2,.center h2,.feature h2,.download h2,.news h2{font:800 clamp(33px,4vw,48px)/1.1 Manrope;letter-spacing:-1.7px;margin:12px 0}.head>a{color:var(--gd);font-weight:800}.business-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.card{background:var(--surface);border:1px solid var(--line);border-radius:19px;overflow:hidden;box-shadow:0 9px 35px #0f2b420d;transition:.25s}.card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.photo{height:210px;position:relative;background-size:cover}.ph1{background:linear-gradient(135deg,#6e9d4e,#e9c37b,#c35e32)}.ph2{background:linear-gradient(135deg,#83b4cf,#3f6279,#c8a36c)}.ph3{background:linear-gradient(135deg,#e7a7bd,#81536b,#e8d4c0)}.ph4{background:linear-gradient(135deg,#6e98b8,#182f47,#35a768)}.photo>b{position:absolute;top:12px;left:12px;background:#fff;color:var(--gd);padding:5px 9px;border-radius:8px;font-size:10px}.heart{position:absolute;right:12px;top:12px;width:34px;height:34px;border:0;border-radius:10px;background:#fff;font-size:20px;color:#334e64}.heart.saved{color:#ef4444}.body{padding:17px}.body>span{color:var(--gd);font-size:10px;font-weight:900;letter-spacing:1px}.body h3{font:700 18px Manrope;margin:7px 0}.body p{font-size:12px;color:var(--muted);margin:0 0 13px}.body>div{display:flex;justify-content:space-between;font-size:11px;color:#496176}.body small{color:#8b9aa4}.empty{text-align:center;padding:40px;color:var(--muted);border:1px dashed var(--line);border-radius:15px;margin-top:18px}.categories{background:#f2f8f5}body.dark .categories{background:#0a1824}.center{text-align:center;max-width:730px;margin:0 auto 42px}.center p{color:var(--muted)}.cat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.cat-grid button{background:var(--surface);border:1px solid var(--line);border-radius:17px;text-align:left;padding:21px;color:var(--ink);display:flex;flex-direction:column;transition:.2s}.cat-grid button:hover{border-color:#8bd3a5;transform:translateY(-3px);box-shadow:var(--shadow)}.cat-grid button:first-letter{font-size:27px}.cat-grid b{font:700 15px Manrope;margin-top:13px}.cat-grid small{color:var(--muted);font-size:11px}.feature{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.feature>div:first-child>p{color:var(--muted);max-width:580px}.feature ul{list-style:none;padding:0;margin:30px 0 0;display:grid;gap:18px}.feature li{display:flex;gap:13px}.feature li>b{width:25px;height:25px;flex:none;display:grid;place-items:center;background:var(--gs);color:var(--gd);border-radius:8px}.feature li strong,.feature li small{display:block}.feature li strong{font:700 14px Manrope}.feature li small{color:var(--muted);font-size:12px;margin-top:4px}.network{height:480px;position:relative;display:grid;place-items:center;border-radius:40px;background:radial-gradient(circle,#eefaf3,#fbfdfc 60%);overflow:hidden}.ring{position:absolute;border:1px dashed #a7d8ba;border-radius:50%}.r1{width:300px;height:300px}.r2{width:410px;height:410px}.center-logo{width:112px;height:112px;border-radius:50%;display:grid;place-items:center;background:var(--n);color:#fff;font:800 29px Manrope;box-shadow:0 15px 35px #0d355d33;z-index:2}.center-logo small{font:9px "DM Sans";margin-top:-32px;color:#a9c2d3}.n{position:absolute;width:58px;height:58px;display:grid;place-items:center;background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);font-style:normal;font-size:24px}.n1{top:58px}.n2{right:62px;top:205px}.n3{bottom:55px}.n4{left:58px;top:210px}.business{background:var(--n);color:#fff;padding:90px 0}.biz-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.eyebrow.light{color:#a7f3d0}.business h2{font:800 clamp(34px,4vw,52px)/1.1 Manrope;margin:12px 0}.business p{color:#b9cad7;max-width:590px}.white{background:#fff;color:var(--n)}.outline{border-color:#ffffff66;color:#fff}.dashboard{background:#fff;color:#15324b;border-radius:23px;padding:22px;box-shadow:0 35px 80px #0000003d}.dash-head{display:flex;justify-content:space-between}.dash-head span{color:var(--g)}.metrics{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}.metrics div{background:#f2f7f5;border-radius:13px;padding:15px}.metrics small,.metrics b,.metrics em{display:block}.metrics small{font-size:10px;color:#728492}.metrics b{font:800 25px Manrope}.metrics em{font-size:10px;color:var(--g);font-style:normal;font-weight:800}.bars{height:170px;display:flex;align-items:end;gap:10px;padding:15px;border-radius:15px;background:#f5faf8}.bars i{flex:1;border-radius:7px 7px 2px 2px;background:linear-gradient(#16a34a,#9fe0b6)}.download{background:linear-gradient(135deg,#eefaf3,#e5f3ec);border:1px solid #d4e9dc;border-radius:28px;padding:60px;display:flex;justify-content:space-between;align-items:center}.download h2{max-width:700px}.download p{color:var(--muted)}.stores{display:flex;gap:10px;margin-top:25px}.stores a{display:flex;align-items:center;gap:10px;background:#0b1926;color:#fff;border-radius:11px;padding:10px 15px;font-size:23px}.stores span small,.stores span b{display:block;line-height:1.05}.stores small{font-size:8px;color:#c6d2db}.stores b{font-size:15px}.qr{text-align:center;font-size:80px;border:7px solid var(--n);border-radius:8px;width:135px;height:135px;background:repeating-linear-gradient(45deg,#fff,#fff 4px,#dbe8e2 4px,#dbe8e2 8px);line-height:120px}.qr small{display:block;font:11px "DM Sans";margin-top:8px}.newsletter{padding-top:30px}.news{border-top:1px solid var(--line);padding-top:70px;display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.news p{color:var(--muted)}#newsForm{display:flex;gap:8px;position:relative}#newsForm input{flex:1;min-width:0;height:50px;border:1px solid var(--line);background:var(--surface);color:var(--ink);padding:0 16px;border-radius:12px;outline:0}#newsForm small{position:absolute;top:57px;left:2px;color:var(--gd)}footer{background:#081a2b;color:#d2e0e8;padding:65px 0 25px}.footer-grid{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:45px}.footer-grid .brand strong{color:#fff}.footer-grid p,footer a:not(.brand){color:#91a9b8;font-size:12px}.footer-grid h4{color:#fff;margin:4px 0 14px}.footer-grid>div>a:not(.brand){display:block;margin:8px 0}.bottom{border-top:1px solid #ffffff1f;margin-top:45px;padding-top:20px;color:#7891a1;font-size:11px;display:flex;justify-content:space-between}.toast{position:fixed;right:20px;bottom:20px;background:var(--n);color:#fff;padding:12px 16px;border-radius:12px;box-shadow:var(--shadow);opacity:0;transform:translateY(15px);transition:.25s;z-index:300}.toast.show{opacity:1;transform:none}.reveal{opacity:0;transform:translateY(22px);transition:.7s}.reveal.visible{opacity:1;transform:none}.delay{transition-delay:.15s}@media(max-width:1050px){nav{gap:14px}.business-grid{grid-template-columns:repeat(2,1fr)}.cat-grid{grid-template-columns:repeat(4,1fr)}}@media(max-width:800px){.wrap{width:min(calc(100% - 28px),var(--max))}.menu{display:block;margin-left:auto}nav{display:none;position:absolute;left:14px;right:14px;top:70px;flex-direction:column;background:var(--surface);padding:16px;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}nav.open{display:flex}.actions{display:none}.hero{padding:55px 0}.hero-grid,.feature,.biz-grid,.news{grid-template-columns:1fr}.hero-art{min-height:530px}.phone{transform:rotate(2deg) scale(.91)}.stats .stat-grid{grid-template-columns:repeat(2,1fr);gap:20px}.stat-grid>div:nth-child(3){border-left:0}.section{padding:72px 0}.head{align-items:start;flex-direction:column}.feature{gap:40px}.network{height:400px}.download{padding:40px 25px}.qr{display:none}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}@media(max-width:520px){.hero h1{font-size:47px}.search input{font-size:13px}.hero-buttons .btn{width:100%}.hero-art{min-height:510px}.phone{width:260px;height:525px}.float{transform:scale(.9)}.business-grid{grid-template-columns:1fr}.photo{height:230px}.cat-grid{grid-template-columns:1fr 1fr}.stores{flex-direction:column;align-items:flex-start}#newsForm{flex-direction:column}#newsForm .btn{width:100%}.footer-grid{gap:30px}.bottom{flex-direction:column;gap:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.btn,.card{transition:none}}

/* Backend-powered UI */
button.btn { cursor:pointer; }
.account-btn { max-width:180px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.business-grid .card { min-width:0; }
.business-grid .card[hidden] { display:none; }
.business-grid .card .photo { overflow:hidden; }
.business-grid .card .photo.has-image { background-size:cover; background-position:center; }
.business-grid .card .photo .heart { cursor:pointer; }
.card .status-note { display:inline-block; margin-top:6px; font-size:10px; color:#64748b; }
.loading-state { grid-column:1/-1; padding:50px 20px; text-align:center; color:var(--muted); border:1px dashed var(--line); border-radius:18px; }
.modal-backdrop { position:fixed; inset:0; z-index:200; background:rgba(3,17,28,.58); backdrop-filter:blur(7px); }
.modal { position:fixed; z-index:210; left:50%; top:50%; transform:translate(-50%,-50%); width:min(470px,calc(100% - 28px)); max-height:calc(100vh - 30px); overflow:auto; background:var(--surface); color:var(--ink); border:1px solid var(--line); border-radius:24px; padding:30px; box-shadow:0 35px 100px rgba(0,0,0,.28); }
.wide-modal { width:min(680px,calc(100% - 28px)); }
.modal[hidden], .modal-backdrop[hidden] { display:none; }
.modal-close { position:absolute; right:15px; top:14px; border:0; background:var(--line); color:var(--ink); width:34px; height:34px; border-radius:10px; font-size:23px; line-height:1; }
.modal-head { padding-right:35px; margin-bottom:20px; }.modal-head h2 { font-size:30px; margin:9px 0 8px; }.modal-head p { color:var(--muted); font-size:13px; margin:0; }
.auth-tabs { display:grid; grid-template-columns:1fr 1fr; gap:5px; padding:5px; background:var(--bg); border-radius:12px; margin-bottom:18px; }.auth-tabs button { border:0; background:transparent; color:var(--muted); border-radius:9px; min-height:40px; font-weight:800; }.auth-tabs button.active { background:var(--surface); color:var(--green-dark); box-shadow:0 3px 12px rgba(0,0,0,.06); }
.modal-form { display:grid; gap:14px; }.modal-form label { display:grid; gap:6px; font-size:12px; font-weight:800; color:var(--ink); }.modal-form input,.modal-form textarea { width:100%; border:1px solid var(--line); border-radius:11px; background:var(--bg); color:var(--ink); padding:11px 12px; outline:0; resize:vertical; }.modal-form input:focus,.modal-form textarea:focus { border-color:#70c991; box-shadow:0 0 0 4px rgba(22,163,74,.08); }.modal-form small { color:var(--muted); font-weight:500; }.wide { width:100%; }.form-error { min-height:18px; margin:0; color:#dc2626; font-size:12px; font-weight:600; }.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.modal-open { overflow:hidden; }
.favorite-on { color:#dc2626 !important; }
@media(max-width:600px){ .modal{padding:23px}.form-grid{grid-template-columns:1fr}.modal-head h2{font-size:26px}.account-btn{display:none!important} }

/* Legal pages and social links */
.legal-page{padding:90px 0 110px}.legal-hero{padding:70px 0 35px;background:linear-gradient(180deg,#f4fbf7,#fbfdfc)}body.dark .legal-hero{background:linear-gradient(180deg,#0b1c2a,#08131f)}.legal-hero h1{font:800 clamp(42px,5vw,68px)/1.05 Manrope;margin:14px 0 12px;letter-spacing:-2px}.legal-hero p{max-width:760px;color:var(--muted);font-size:17px}.legal-content{max-width:900px}.legal-card{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:38px;box-shadow:var(--shadow)}.legal-card h2{font:800 25px/1.2 Manrope;margin:32px 0 12px;color:var(--ink)}.legal-card h2:first-child{margin-top:0}.legal-card h3{font:800 17px/1.3 Manrope;margin:22px 0 8px}.legal-card p,.legal-card li{color:var(--muted);font-size:14px;line-height:1.8}.legal-card ul{padding-left:22px}.legal-meta{font-size:12px;color:var(--muted);margin-top:8px}.legal-nav{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px}.legal-nav a{font-size:13px;font-weight:800;color:var(--gd)}.social-links{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}.social-links a{width:38px;height:38px!important;margin:0!important;display:grid!important;place-items:center;border:1px solid #ffffff24;border-radius:11px;background:#10283b;color:#dbe9ef!important;transition:.2s}.social-links a:hover{transform:translateY(-2px);background:#173b53;color:#fff!important}.social-links svg{width:18px;height:18px;fill:currentColor}.footer-social-title{color:#fff;font-size:12px;font-weight:800;margin-top:22px}@media(max-width:520px){.legal-page{padding:65px 0 80px}.legal-card{padding:25px 20px}}
