
:root{--navy:#07172d;--navy2:#0d2340;--gold:#d8a33c;--blue:#2764d8;--teal:#20a56b;--ink:#172033;--muted:#647084;--line:#dce3ec;--bg:#f6f8fb;--white:#fff;--shadow:0 20px 50px rgba(11,31,58,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--white);line-height:1.65}a{color:inherit;text-decoration:none}.container{width:min(1160px,calc(100% - 40px));margin:auto}.site-header{position:sticky;top:0;z-index:50;background:rgba(7,23,45,.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.08)}.nav-wrap{min-height:78px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;color:#fff}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,var(--gold),#f4cf74);color:var(--navy);font-weight:900;box-shadow:0 8px 22px rgba(216,163,60,.28)}.brand strong,.brand small{display:block;line-height:1.15}.brand strong{letter-spacing:.08em;font-size:.93rem}.brand small{color:#c8d3e3;font-size:.65rem;letter-spacing:.18em;margin-top:4px}.main-nav{display:flex;align-items:center;gap:26px;color:#dbe4f0;font-weight:700;font-size:.94rem}.main-nav a:hover{color:#fff}.nav-cta{background:var(--gold);color:var(--navy)!important;padding:11px 18px;border-radius:10px}.menu-toggle{display:none;background:none;border:0;color:white;font-size:1.7rem}.hero{background:radial-gradient(circle at 78% 30%,rgba(39,100,216,.28),transparent 30%),linear-gradient(135deg,var(--navy),#102b4d 68%,#163960);color:#fff;overflow:hidden}.hero-grid{min-height:660px;display:grid;grid-template-columns:1.06fr .94fr;align-items:center;gap:70px}.eyebrow{display:inline-block;color:var(--gold);font-weight:900;letter-spacing:.17em;font-size:.76rem;margin-bottom:18px}.hero h1,.page-hero h1{font-size:clamp(2.6rem,5vw,5rem);line-height:1.04;margin:0 0 22px;letter-spacing:-.045em}.hero h1 span{color:#f0bd57}.hero-copy>p{color:#d3deec;font-size:1.14rem;max-width:670px}.actions{display:flex;gap:14px;flex-wrap:wrap;margin:30px 0}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:11px;padding:14px 22px;font-weight:850;cursor:pointer;transition:.2s transform,.2s box-shadow}.btn:hover{transform:translateY(-2px)}.primary{background:linear-gradient(135deg,var(--gold),#efc35c);color:var(--navy);box-shadow:0 12px 28px rgba(216,163,60,.22)}.secondary{border:1px solid rgba(255,255,255,.34);color:#fff}.proof-row{display:flex;gap:22px;flex-wrap:wrap;color:#bfcde0;font-size:.92rem}.hero-visual{position:relative;min-height:470px}.glow{position:absolute;inset:15% 5%;background:#2f6ddd;filter:blur(80px);opacity:.28}.dashboard-card,.phone-card{position:absolute;background:rgba(255,255,255,.97);color:var(--ink);border:1px solid rgba(255,255,255,.7);box-shadow:0 30px 80px rgba(0,0,0,.28)}.dashboard-card{width:90%;right:0;top:55px;border-radius:24px;padding:25px;transform:rotate(1.2deg)}.dash-top{display:flex;justify-content:space-between;font-weight:850}.live-dot{color:var(--teal);font-size:.75rem}.kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:24px 0}.kpis div{background:#f4f7fb;padding:16px;border-radius:14px}.kpis small,.kpis strong,.kpis em{display:block}.kpis strong{font-size:1.35rem}.kpis em{color:var(--teal);font-size:.76rem}.chart{height:170px;display:flex;align-items:end;gap:11px;padding:20px;background:linear-gradient(180deg,#f7faff,#edf3fb);border-radius:17px}.chart span{flex:1;background:linear-gradient(#4d84eb,#1e59c7);border-radius:6px 6px 2px 2px}.phone-card{left:0;bottom:15px;width:180px;border-radius:28px;padding:24px;border:7px solid #12223a}.food-row{display:flex;gap:7px;margin:15px 0}.food-row span{width:38px;height:42px;border-radius:8px;background:linear-gradient(135deg,#efc66a,#e78649)}.phone-card button{width:100%;border:0;border-radius:8px;padding:9px;background:var(--navy);color:#fff}.trust{background:#fff;box-shadow:0 10px 35px rgba(18,42,73,.08)}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;padding:24px 0}.trust-grid>div{display:flex;gap:12px;align-items:center}.trust-grid b{font-size:1.3rem}.trust-grid strong,.trust-grid small{display:block}.trust-grid small{color:var(--muted)}.section{padding:95px 0}.alt{background:var(--bg)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:40px}.section-head h2,.two-col h2,.contact-grid h2{font-size:clamp(2rem,4vw,3.3rem);line-height:1.12;margin:0}.section-head>p{max-width:460px;color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card,.product-card,.info-card,.contact-card,.contact-form,.feature-panel{background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px;box-shadow:0 12px 35px rgba(20,43,73,.06)}.service-card{transition:.22s transform,.22s box-shadow}.service-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.service-card h3,.product-card h3{font-size:1.35rem}.service-card p,.product-card li{color:var(--muted)}.service-card b{color:var(--blue)}.icon{display:grid;place-items:center;width:48px;height:48px;border-radius:13px;font-size:1.4rem}.coral{background:#ffe8e1;color:#e45a35}.amber{background:#fff1d2;color:#b87900}.blue{background:#e5efff;color:#2764d8}.green{background:#e4f8ee;color:#168754}.cyan{background:#e4f8fb;color:#16879a}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.product-card{border-top:5px solid var(--gold)}.product-card>span{font-size:.72rem;font-weight:900;letter-spacing:.14em;color:var(--blue)}.product-card ul{padding-left:20px}.mini{padding:10px 16px;background:#8d3b45;color:#fff}.blue-btn{background:#2764d8}.teal-btn{background:#20a56b}.cta-section{padding:0 0 95px;background:var(--bg)}.cta-box{background:linear-gradient(135deg,#8f3b45,#692632);color:#fff;border-radius:25px;padding:50px;display:flex;align-items:center;justify-content:space-between;gap:30px;box-shadow:var(--shadow)}.cta-box h2{font-size:2.4rem;margin:0}.light{color:#f8d99d}.light-btn{background:#fff;color:#702b36}.page-hero{padding:120px 0 100px;background:linear-gradient(135deg,var(--navy),#173c68);color:#fff}.page-hero p{max-width:760px;color:#d5dfec;font-size:1.14rem}.page-hero .btn{margin-top:22px}.blue-hero{background:linear-gradient(135deg,#092241,#184e91)}.warm-hero{background:linear-gradient(135deg,#402012,#7d4523)}.dark-hero{background:linear-gradient(135deg,#07111f,#171f2d)}.compact{padding:90px 0 60px}.narrow{max-width:900px}.two-col{display:grid;grid-template-columns:1.05fr .95fr;gap:55px;align-items:start}.check-list{list-style:none;padding:0}.check-list li{padding:10px 0 10px 30px;position:relative;border-bottom:1px solid var(--line)}.check-list li:before{content:'✓';position:absolute;left:0;color:var(--teal);font-weight:900}.feature-panel{background:linear-gradient(145deg,#f9fbff,#edf3fb)}.metric-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:24px}.metric-row span{background:white;border-radius:12px;padding:16px}.metric-row b,.metric-row small{display:block}.search-demo,.result-demo{margin-top:20px;padding:16px;border-radius:12px;background:white;border:1px solid var(--line)}.result-demo{display:flex;justify-content:space-between}.three-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:28px}.contact-form{display:grid;gap:16px}.contact-form label{font-weight:750}.contact-form input,.contact-form textarea{width:100%;display:block;margin-top:7px;border:1px solid #cfd8e5;border-radius:10px;padding:13px;font:inherit}.legal{max-width:850px}.legal h2{margin-top:34px}.site-footer{background:#061426;color:#c7d2e1;padding:68px 0 22px}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:38px}.footer-grid h4{color:#fff}.footer-grid a,.footer-grid span{display:block;margin:9px 0}.footer-grid p{max-width:420px}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:40px;padding-top:20px;display:flex;justify-content:space-between}.reveal{opacity:0;transform:translateY(18px);transition:.7s}.reveal.visible{opacity:1;transform:none}@media(max-width:900px){.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:78px;left:0;right:0;background:var(--navy);padding:20px;flex-direction:column;align-items:flex-start}.main-nav.open{display:flex}.hero-grid,.two-col,.contact-grid{grid-template-columns:1fr}.hero-grid{padding:70px 0}.hero-visual{min-height:430px}.trust-grid,.service-grid,.product-grid,.three-grid,.footer-grid{grid-template-columns:1fr 1fr}.section-head,.cta-box{align-items:flex-start;flex-direction:column}}@media(max-width:620px){.container{width:min(100% - 28px,1160px)}.hero h1,.page-hero h1{font-size:2.65rem}.dashboard-card{width:100%}.phone-card{width:155px}.kpis{grid-template-columns:1fr}.chart{height:120px}.trust-grid,.service-grid,.product-grid,.three-grid,.footer-grid{grid-template-columns:1fr}.section{padding:70px 0}.footer-bottom{flex-direction:column;gap:8px}.cta-box{padding:34px}.proof-row{display:grid;gap:8px}}

/* Final polish and layout protection */
html,body{max-width:100%;overflow-x:hidden}
.hero-copy,.hero-visual,.section-head>*,.service-card,.product-card{min-width:0}
.hero-copy{position:relative;z-index:2;padding-left:2px}
.hero-copy h1{max-width:760px}
.hero-copy p{max-width:650px}
.hero-visual{z-index:1}
.main-nav a{position:relative}
.main-nav>a:not(.nav-cta):after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:2px;background:var(--gold);transition:right .22s ease}
.main-nav>a:not(.nav-cta):hover:after{right:0}
.service-card,.product-card,.process-card{overflow:hidden}
.service-card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(var(--gold),var(--blue));opacity:0;transition:.22s}
.service-card{position:relative}
.service-card:hover:before{opacity:1}
.process-section{background:#fff}
.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.process-card{border:1px solid var(--line);border-radius:20px;padding:30px;background:linear-gradient(145deg,#fff,#f8fbff);box-shadow:0 12px 35px rgba(20,43,73,.06)}
.process-card>span{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--navy);color:#fff;font-weight:900;margin-bottom:22px}
.process-card h3{margin:0 0 10px;font-size:1.28rem}
.process-card p{margin:0;color:var(--muted)}
.dashboard-card:after{content:"Illustrative dashboard preview";display:block;margin-top:12px;color:#7b8798;font-size:.7rem;text-align:right}
.site-footer a:hover{color:#fff}
.nav-cta,.btn{box-shadow:0 10px 24px rgba(0,0,0,.12)}
@media (max-width:1100px){.hero-grid{gap:36px}.hero h1{font-size:clamp(2.8rem,5.6vw,4.5rem)}}
@media (max-width:900px){.hero-grid{min-height:auto;padding:82px 0 60px}.hero-copy{padding:0}.hero-visual{width:100%;max-width:650px;margin:0 auto}.process-grid{grid-template-columns:1fr}.main-nav{box-shadow:0 20px 35px rgba(0,0,0,.28)}}
@media (max-width:620px){.hero{background:radial-gradient(circle at 90% 60%,rgba(39,100,216,.25),transparent 35%),linear-gradient(135deg,var(--navy),#102b4d)}.hero-grid{padding-top:58px}.hero h1{font-size:clamp(2.35rem,12vw,3.15rem);line-height:1.02;overflow-wrap:anywhere}.hero-copy>p{font-size:1.02rem}.actions{display:grid}.actions .btn{width:100%}.hero-visual{min-height:365px}.dashboard-card{top:28px;padding:18px;border-radius:20px}.phone-card{left:4px;bottom:4px}.kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.kpis div{padding:10px 7px}.kpis strong{font-size:.98rem}.kpis small{font-size:.66rem}.chart{height:105px;padding:12px;gap:6px}.trust-grid{padding:20px 0}.section-head h2{font-size:2.1rem}.cta-box h2{font-size:2rem}}
.service-card,.product-card,.info-card,.process-card{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease,box-shadow .22s ease}
.service-card.visible,.product-card.visible,.info-card.visible,.process-card.visible{opacity:1;transform:none}


/* Restaurant directory */
.ordering-hero{background:radial-gradient(circle at 85% 25%,rgba(238,177,82,.20),transparent 28%),linear-gradient(135deg,#3d1e12,#7a4324)}
.restaurant-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.restaurant-card{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:0 16px 42px rgba(20,43,73,.08);display:flex;flex-direction:column;min-width:0}
.restaurant-card.featured{grid-column:span 1}
.restaurant-photo{min-height:210px;display:flex;align-items:flex-end;padding:22px;color:#fff;font-weight:900;letter-spacing:.03em}
.restaurant-photo-ethiopian{background:linear-gradient(135deg,rgba(39,17,8,.2),rgba(39,17,8,.62)),radial-gradient(circle at 28% 28%,#e5bd69 0 8%,transparent 9%),radial-gradient(circle at 65% 42%,#a9462f 0 12%,transparent 13%),radial-gradient(circle at 46% 72%,#6a8d3a 0 14%,transparent 15%),linear-gradient(135deg,#b66a37,#4d2517)}
.restaurant-content{padding:26px;display:flex;flex-direction:column;flex:1}
.restaurant-content h3{font-size:1.42rem;line-height:1.25;margin:12px 0 8px}
.restaurant-content p{color:var(--muted);margin:0 0 18px}
.restaurant-status{align-self:flex-start;border-radius:999px;padding:6px 10px;font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.restaurant-status.live{background:#e4f8ee;color:#168754}
.restaurant-status.soon{background:#eef2f7;color:#687588}
.restaurant-meta{display:flex;gap:10px;flex-wrap:wrap;margin:auto 0 20px}
.restaurant-meta span{font-size:.78rem;background:#f2f5f9;border-radius:999px;padding:7px 10px;color:#536174}
.restaurant-placeholder{min-height:210px;background:linear-gradient(145deg,#f1f4f8,#e4eaf2);display:grid;place-items:center;font-size:4rem;color:#9aa7b8;font-weight:300}
.full-btn{width:100%}
.secondary-dark{background:var(--navy);color:#fff}
.platform-flow{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:26px}
.platform-flow span{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 16px;font-weight:800;text-align:center}
.platform-flow b{color:var(--gold)}
@media(max-width:900px){.restaurant-grid{grid-template-columns:1fr 1fr}.restaurant-card.featured{grid-column:1/-1}}
@media(max-width:620px){.restaurant-grid{grid-template-columns:1fr}.restaurant-card.featured{grid-column:auto}.restaurant-photo,.restaurant-placeholder{min-height:180px}}


/* Demo links and launch pages */
.card-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:auto;padding-top:8px}.card-actions a{font-weight:800;text-decoration:none;color:var(--navy)}.card-actions .demo-link{color:var(--teal)}.demo-panel-btn{margin-top:24px}.demo-launch-section{min-height:72vh;display:grid;place-items:center;padding:80px 20px;background:radial-gradient(circle at top right,rgba(29,194,174,.16),transparent 35%),linear-gradient(135deg,#f5f8fb,#eef4f7)}.demo-launch-card{max-width:760px;margin:auto;background:white;border:1px solid rgba(12,32,53,.08);border-radius:28px;padding:56px;box-shadow:0 24px 70px rgba(12,32,53,.14);text-align:center}.demo-launch-card h1{font-size:clamp(2.2rem,5vw,4rem);margin:14px 0 18px}.demo-launch-card>p{font-size:1.15rem;line-height:1.75;color:#566474;max-width:640px;margin:0 auto}.demo-notice{display:flex;flex-direction:column;gap:6px;background:#fff7df;border:1px solid #f1d27a;border-radius:16px;padding:18px;margin:30px 0;color:#6c5311}.demo-actions{justify-content:center}.new-tab-note{display:block;margin-top:16px;color:#6d7885}@media(max-width:650px){.demo-launch-card{padding:34px 22px}.card-actions{gap:10px}.card-actions a{width:100%}}


/* Managed vending page */
.vending-hero{
  background:
    radial-gradient(circle at 82% 28%,rgba(216,163,60,.22),transparent 30%),
    linear-gradient(135deg,#08192e,#13365c 72%,#1d4a71);
}
.vending-machine-panel{text-align:center}
.vending-machine{
  width:min(280px,85%);
  margin:0 auto 28px;
  padding:16px;
  border-radius:22px;
  background:linear-gradient(145deg,#152a43,#07172d);
  box-shadow:0 24px 55px rgba(7,23,45,.28);
}
.machine-top{
  color:#f3c665;
  font-size:.82rem;
  font-weight:900;
  letter-spacing:.18em;
  padding:4px 0 14px;
}
.machine-window{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:9px;
  padding:14px;
  border-radius:13px;
  background:linear-gradient(145deg,#dfe9f4,#f8fbff);
  border:5px solid #263b54;
}
.machine-window span{
  display:grid;
  place-items:center;
  min-height:54px;
  border-radius:9px;
  background:#fff;
  box-shadow:inset 0 -4px 8px rgba(7,23,45,.06);
  font-size:1.75rem;
}
.machine-controls{
  display:grid;
  grid-template-columns:1fr 52px;
  gap:10px;
  margin:14px 0;
}
.machine-controls .screen{
  display:grid;
  place-items:center;
  min-height:44px;
  padding:8px;
  color:#b9f5dc;
  background:#0b1d2e;
  border:1px solid #2c4a64;
  border-radius:8px;
  font-size:.72rem;
  font-weight:800;
}
.machine-controls .reader{
  display:grid;
  place-items:center;
  border-radius:8px;
  background:#d8a33c;
}
.delivery-door{
  width:62%;
  height:30px;
  margin:auto;
  border-radius:6px;
  background:#030b14;
  border:2px solid #33475e;
}
.vending-location-grid .info-card{min-height:215px}
.vending-icon{font-size:2.15rem;margin-bottom:14px}
.vending-cta{background:linear-gradient(135deg,#174f3c,#0f6a4b)}
@media(max-width:620px){
  .vending-machine{width:min(270px,100%)}
  .vending-location-grid .info-card{min-height:auto}
}
