/* Delivery One — main stylesheet */
:root{
  --red:#C8102E; --red-dark:#9E0B23; --red-soft:#FDE8EB; --red-text:#A50D26; --red-light:#FF5A6E;
  --ink:#16161A; --ink-2:#24242B; --ink-3:#2E2E36; --muted:#4A4A55; --muted-2:#5C5C66;
  --line:#EDEDF0; --line-2:#DADADF; --bg:#F6F6F8; --white:#FFFFFF;
  --green-soft:#E9F6EE; --green-text:#17633A;
  --radius:18px; --shadow:0 12px 32px rgba(0,0,0,.06);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,sans-serif;color:var(--ink);background:var(--white);line-height:1.5;-webkit-font-smoothing:antialiased}
a{color:var(--red)}a:hover{color:var(--red-dark)}
img{max-width:100%}
h1,h2,h3,h4{font-family:Sora,sans-serif;line-height:1.15;margin:0}
.container{max-width:1200px;margin:0 auto;padding:0 24px}
.bg-soft{background:var(--bg)}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border-radius:10px;font-weight:600;font-size:14px;text-decoration:none;border:0;cursor:pointer;font-family:inherit;min-height:44px;transition:.15s}
.btn-red{background:var(--red);color:#fff}.btn-red:hover{background:var(--red-dark);color:#fff}
.btn-dark{background:var(--ink);color:#fff}.btn-dark:hover{background:#000;color:#fff}
.btn-white{background:#fff;color:var(--red)}.btn-white:hover{color:var(--red-dark)}
.btn-outline{border:1.5px solid var(--ink);color:var(--ink);background:transparent}.btn-outline:hover{background:var(--ink);color:#fff}
.btn-outline-white{border:2px solid #fff;color:#fff;background:transparent}.btn-outline-white:hover{background:#fff;color:var(--red)}
.btn-light{background:var(--bg);color:var(--ink)}.btn-light:hover{background:var(--line);color:var(--ink)}
.btn-block{width:100%}
.btn-sm{padding:8px 12px;min-height:36px;font-size:13px}

/* Top bar + header */
.topbar{background:var(--ink);color:#fff;font-size:13px}
.topbar-in{display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:space-between;align-items:center;padding:10px 24px}
.topbar-left,.topbar-right{display:flex;flex-wrap:wrap;gap:16px;align-items:center}
.topbar a{color:#fff;display:flex}
.site-header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50}
.header-in{display:flex;gap:16px;justify-content:space-between;align-items:center;padding:14px 24px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink)}
.logo-mark{width:42px;height:42px;border-radius:12px;background:var(--red);color:#fff;display:flex;align-items:center;justify-content:center;font-family:Sora,sans-serif;font-weight:800;font-size:22px}
.logo-text{font-family:Sora,sans-serif;font-weight:800;font-size:22px;letter-spacing:-.5px}.logo-text b{color:var(--red)}
.logo-light{color:#fff}.logo-light .logo-text b{color:var(--red-light)}
.main-nav{display:flex;gap:28px;font-weight:500;font-size:15px}
.main-nav a{color:var(--ink);text-decoration:none}.main-nav a.active,.main-nav a:hover{color:var(--red)}
.header-actions{display:flex;gap:10px}
.menu-btn{display:none;background:none;border:0;width:44px;height:44px;cursor:pointer;color:var(--ink)}
@media (max-width:1020px){
  .menu-btn{display:flex;align-items:center;justify-content:center;margin-left:auto}
  .main-nav,.header-actions{display:none}
  .header-in{flex-wrap:wrap}
  body.nav-open .main-nav{display:flex;flex-direction:column;gap:14px;width:100%;padding:8px 0}
  body.nav-open .header-actions{display:flex;width:100%}
  body.nav-open .header-actions .btn{flex:1}
}

/* Alerts */
.alert{padding:14px 18px;border-radius:12px;margin:18px 0;font-weight:500}
.alert-success{background:var(--green-soft);color:var(--green-text)}
.alert-error{background:var(--red-soft);color:var(--red-text)}

/* Hero */
.hero{background:var(--red);color:#fff;position:relative;overflow:hidden}
.hero-deco{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.hero-in{display:flex;flex-wrap:wrap;gap:56px;align-items:center;padding:80px 24px 96px;position:relative}
.hero-copy{flex:1 1 480px;min-width:0}
.hero-badge{display:inline-flex;background:#fff;color:var(--red);padding:8px 14px;border-radius:999px;font-size:13px;font-weight:600}
.hero h1{font-weight:800;font-size:clamp(38px,6vw,60px);line-height:1.05;letter-spacing:-1.5px;margin:22px 0 18px}
.hero p.lead{font-size:19px;line-height:1.55;margin:0 0 32px;max-width:520px}
.track-form{background:#fff;border-radius:16px;padding:8px;display:flex;flex-wrap:wrap;gap:8px;max-width:600px}
.track-form input,.track-form select{border:0;outline:0;font-size:16px;padding:14px 16px;font-family:inherit;color:var(--ink);min-width:0}
.track-form input{flex:1 1 240px}
.track-form select{background:var(--bg);border-radius:10px;font-size:14px}
.track-form .btn{padding:15px 26px;border-radius:12px;font-size:15px}
.hero-ticks{display:flex;flex-wrap:wrap;gap:22px;margin-top:26px;font-size:14px;font-weight:500}
.hero-ticks span{display:flex;gap:8px;align-items:center}
.hero-card-wrap{flex:1 1 400px;min-width:0;display:flex;justify-content:center}
.hero-card{background:#fff;color:var(--ink);border-radius:22px;padding:26px;width:100%;max-width:420px;box-shadow:0 30px 60px rgba(0,0,0,.25)}
.label-sm{font-size:12px;color:var(--muted-2);font-weight:600;letter-spacing:.5px;text-transform:uppercase}
.progress{height:8px;background:#F1F1F4;border-radius:99px;overflow:hidden}.progress>div{height:100%;background:var(--red);border-radius:99px}
.mini-timeline{display:flex;flex-direction:column;gap:16px;margin-top:24px}
.mini-timeline .row{display:flex;gap:14px;align-items:flex-start}
.dot{width:12px;height:12px;border-radius:50%;background:var(--ink);margin-top:4px;flex:none}
.dot.red{background:var(--red);box-shadow:0 0 0 5px var(--red-soft)}

/* Pills */
.pill{display:inline-block;padding:6px 12px;border-radius:999px;font-weight:700;font-size:12px;white-space:nowrap}
.pill-red{background:var(--red-soft);color:var(--red-text)}
.pill-dark{background:var(--ink);color:#fff}
.pill-green{background:var(--green-soft);color:var(--green-text)}
.pill-grey{background:var(--line);color:#3A3A44}

/* Stats band */
.stats{background:var(--ink);color:#fff}
.stats-in{display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between;padding:34px 24px}
.stats-in>div{flex:1 1 200px}
.stat-num{font-family:Sora,sans-serif;font-weight:800;font-size:34px;color:var(--red-light)}
.stat-lbl{font-size:14px;color:#D4D4DA}

/* Sections */
.section{padding:96px 0}
.section-head{text-align:center;max-width:640px;margin:0 auto 48px}
.eyebrow{color:var(--red);font-weight:700;font-size:13px;letter-spacing:1.5px;text-transform:uppercase}
.section-head h2,.h2{font-weight:800;font-size:clamp(28px,4vw,40px);letter-spacing:-1px;margin:12px 0}
.section-head p{font-size:17px;color:var(--muted);margin:0}
.grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
.card{border:1px solid var(--line);border-radius:var(--radius);padding:26px;background:#fff}
.card h3{font-size:19px;margin:18px 0 8px}
.card p{margin:0;color:var(--muted);font-size:15px}
.icon-box{width:52px;height:52px;border-radius:14px;background:var(--red-soft);color:var(--red);display:flex;align-items:center;justify-content:center}
.step-num{font-family:Sora,sans-serif;font-weight:800;font-size:44px;color:var(--red)}
.card-plain{background:#fff;border-radius:var(--radius);padding:28px}
.card-plain h3{font-size:19px;margin:10px 0 8px}.card-plain p{margin:0;color:var(--muted);font-size:15px}

.split{display:flex;flex-wrap:wrap;gap:48px;align-items:center}
.split>*{flex:1 1 420px;min-width:0}
.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:22px;margin-top:28px}
.features b{display:block;font-size:16px;margin-bottom:6px}
.features span{color:var(--muted);font-size:14px}

/* Dark panel + forms */
.panel-dark{background:var(--ink);color:#fff;border-radius:24px;padding:32px}
.panel-dark h3{font-size:22px;margin:0 0 6px}
.panel-dark .sub{margin:0 0 22px;color:#C9C9D0;font-size:14px}
.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.form-grid .full{grid-column:1/-1}
.field{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:500}
.field input,.field select,.field textarea{border:1px solid var(--line-2);border-radius:10px;padding:13px;font-size:15px;font-family:inherit;background:#fff;color:var(--ink);width:100%}
.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--red);outline-offset:1px;border-color:var(--red)}
.panel-dark .field{color:#C9C9D0;font-size:12px}
.panel-dark .field input,.panel-dark .field select{background:var(--ink-2);border-color:#34343D;color:#fff}
.quote-result{margin-top:16px;padding:16px;border-radius:12px;background:var(--ink-2);font-size:14px;display:none}
.quote-result.show{display:block}
.quote-result .big{font-family:Sora,sans-serif;font-weight:800;font-size:28px;color:#fff}
.check{display:flex;gap:8px;align-items:center;font-size:14px;cursor:pointer}
.check input{width:18px;height:18px;accent-color:var(--red)}

/* CTA */
.cta-red{background:var(--red);color:#fff;border-radius:28px;padding:56px;display:flex;flex-wrap:wrap;gap:32px;align-items:center;justify-content:space-between}
.cta-red h2{font-weight:800;font-size:clamp(26px,4vw,38px);letter-spacing:-1px;margin:0 0 12px}
.cta-red p{margin:0;font-size:17px}
.cta-red>div:first-child{flex:1 1 460px;min-width:0}
.btn-row{display:flex;gap:12px;flex-wrap:wrap}
@media (max-width:600px){.cta-red{padding:32px 24px}}

/* Social grid */
.social-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px}
.social-tile{aspect-ratio:1;border-radius:16px;display:flex;align-items:center;justify-content:center;font-family:Sora,sans-serif;font-weight:800;font-size:20px;padding:16px;text-align:center;text-decoration:none}

/* Page header (inner pages) */
.page-hero{background:var(--red);color:#fff}
.page-hero .container{padding-top:48px;padding-bottom:88px}
.page-hero h1{font-weight:800;font-size:clamp(30px,4vw,40px);letter-spacing:-1px;margin:0 0 8px}
.page-hero p{margin:0 0 24px}
.page-body{margin-top:-56px;padding-bottom:80px}
.page-plain{padding:40px 0 80px;background:var(--bg)}
.layout{display:flex;flex-wrap:wrap;gap:24px;align-items:flex-start}
.layout>.main-col{flex:999 1 560px;min-width:0;display:flex;flex-direction:column;gap:20px}
.layout>.side-col{flex:1 1 320px;min-width:0;display:flex;flex-direction:column;gap:20px}
.box{background:#fff;border-radius:22px;padding:28px;box-shadow:var(--shadow)}
.box h2{font-size:20px;margin:0 0 20px}
.box-dark{background:var(--ink);color:#fff;border-radius:22px;padding:24px}
.box-dark h2{font-size:18px;margin:0 0 14px}

/* Tracking steps */
.steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin:36px 0 8px;position:relative}
.steps .track-line{position:absolute;left:10%;right:10%;top:17px;height:4px;background:var(--line);border-radius:4px}
.steps .track-fill{position:absolute;left:10%;top:17px;height:4px;background:var(--red);border-radius:4px}
.step{display:flex;flex-direction:column;align-items:center;gap:10px;position:relative;text-align:center;font-size:13px;font-weight:600}
.step .c{width:38px;height:38px;border-radius:50%;background:#fff;border:3px solid var(--line-2);display:flex;align-items:center;justify-content:center;color:#fff}
.step.done .c{background:var(--red);border-color:var(--red)}
.step.current .c{border:4px solid var(--red);box-shadow:0 0 0 6px var(--red-soft)}
.step.current{color:var(--red)}
.step.todo{color:var(--muted-2)}
@media (max-width:560px){.step{font-size:11px}.step .c{width:30px;height:30px}.steps .track-line,.steps .track-fill{top:13px}}
.timeline .ev{display:flex;gap:18px}
.timeline .rail{display:flex;flex-direction:column;align-items:center}
.timeline .rail i{flex:1;width:2px;background:var(--line);min-height:44px}
.timeline .ev:last-child .rail i{display:none}
.timeline .body{padding-bottom:22px;flex:1}
.timeline .top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px}
.timeline .when{font-size:13px;color:var(--muted-2)}
.timeline .where{font-size:14px;color:var(--muted);margin-top:4px}
.kv{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;font-size:14px}
.kv .full{grid-column:1/-1}
.kv b{display:block;font-weight:600}
.kv small{color:var(--muted-2);font-size:12px;text-transform:uppercase}

/* Service options */
.svc-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}
.svc{position:relative;display:block;border:1.5px solid var(--line-2);border-radius:14px;padding:16px;cursor:pointer;background:#fff}
.svc input{position:absolute;opacity:0}
.svc:has(input:checked){border:2px solid var(--red);background:var(--red-soft)}
.svc:has(input:focus-visible){outline:2px solid var(--red);outline-offset:2px}
.svc .n{font-weight:700;font-size:15px}.svc .d{font-size:13px;color:var(--muted-2);margin:4px 0 10px}
.svc .p{font-family:Sora,sans-serif;font-weight:800;font-size:20px}
.step-badge{width:30px;height:30px;border-radius:50%;background:var(--red);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;flex:none}
.box-title{display:flex;gap:12px;align-items:center;margin-bottom:18px}.box-title h2{margin:0;font-size:18px}
.summary-row{display:flex;justify-content:space-between;gap:12px;font-size:14px;color:#D4D4DA;padding:6px 0}
.summary-row b{color:#fff}
.summary-total{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid var(--ink-3);margin-top:8px;padding-top:12px}
.summary-total .big{font-family:Sora,sans-serif;font-weight:800;font-size:28px}
.hint{font-size:13px;padding:10px 12px;border-radius:10px;margin-top:8px}
.hint.ok{background:var(--green-soft);color:var(--green-text)}.hint.bad{background:var(--red-soft);color:var(--red-text)}

/* Tables */
.table-wrap{overflow-x:auto}
table.tbl{width:100%;border-collapse:collapse;font-size:14px;min-width:720px}
.tbl th{text-align:left;color:var(--muted-2);font-size:12px;letter-spacing:.4px;padding:12px;border-bottom:1px solid var(--line);text-transform:uppercase}
.tbl td{padding:14px 12px;border-bottom:1px solid #F1F1F4;vertical-align:middle}
.tbl a{font-weight:600}

/* Auth */
.auth-wrap{min-height:70vh;display:flex;align-items:center;justify-content:center;padding:48px 16px;background:var(--bg)}
.auth-card{background:#fff;border-radius:22px;padding:36px;width:100%;max-width:440px;box-shadow:var(--shadow)}
.auth-card h1{font-size:26px;margin-bottom:6px}
.auth-card p{color:var(--muted);margin:0 0 22px}
.auth-card form{display:flex;flex-direction:column;gap:14px}

/* Footer */
.site-footer{background:var(--ink);color:#D4D4DA}
.footer-grid{display:flex;flex-wrap:wrap;gap:40px;justify-content:space-between;padding-top:64px;padding-bottom:28px}
.footer-grid>div{flex:1 1 150px;display:flex;flex-direction:column;gap:10px;font-size:14px}
.footer-grid .footer-brand{flex:1 1 280px}
.footer-grid h4{color:#fff;font-family:Inter;font-size:15px;font-weight:700}
.footer-grid a{color:#D4D4DA;text-decoration:none}.footer-grid a:hover{color:#fff}
.footer-brand p{line-height:1.6;margin:6px 0 0}
.footer-bottom{border-top:1px solid var(--ink-3);padding-top:20px;padding-bottom:32px;font-size:13px;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}
.wa-float{position:fixed;right:24px;bottom:24px;width:58px;height:58px;border-radius:50%;background:#1E8E4E;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 24px rgba(0,0,0,.25);z-index:60}
.wa-float:hover{color:#fff;transform:scale(1.05)}

/* Admin */
.admin-body{background:var(--bg)}
.admin{display:flex;flex-wrap:wrap;min-height:100vh}
.admin-nav{flex:1 1 240px;max-width:100%;background:var(--ink);color:#D4D4DA;padding:24px 18px}
.admin-nav .logo{margin:0 6px 30px}
.admin-nav nav{display:flex;flex-direction:column;gap:4px;font-size:14px;font-weight:500}
.admin-nav nav a{color:#D4D4DA;padding:12px 14px;border-radius:10px;text-decoration:none}
.admin-nav nav a:hover{background:var(--ink-2);color:#fff}
.admin-nav nav a.active{background:var(--red);color:#fff}
.admin-main{flex:999 1 640px;min-width:0;padding:28px}
.admin-top{display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between;align-items:center;margin-bottom:24px}
.admin-top h1{font-size:26px}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:24px}
.kpi{background:#fff;border-radius:16px;padding:20px}
.kpi small{font-size:13px;color:var(--muted-2)}
.kpi div{font-family:Sora,sans-serif;font-weight:800;font-size:30px;margin-top:6px}
.kpi.dark{background:var(--ink);color:#fff}.kpi.dark small{color:#C9C9D0}
.filters{display:flex;gap:10px;flex-wrap:wrap}
.filters input,.filters select{border:1px solid var(--line-2);border-radius:10px;padding:10px 14px;font-size:14px;font-family:inherit;background:#fff;min-height:44px}
@media (max-width:900px){.admin-nav nav{flex-direction:row;flex-wrap:wrap}}

/* Rider app */
.rider-app{max-width:480px;margin:0 auto;min-height:100vh;background:var(--bg);padding-bottom:30px}
.rider-head{background:var(--red);color:#fff;padding:28px 20px 70px}
.rider-stats{margin:-52px 16px 0;background:#fff;border-radius:18px;padding:16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;text-align:center;box-shadow:var(--shadow)}
.rider-stats b{font-family:Sora,sans-serif;font-size:22px;display:block}.rider-stats small{font-size:11px;color:var(--muted-2)}
.task{background:#fff;border-radius:16px;padding:16px;margin:0 16px 12px}
.task.next{border:2px solid var(--red)}
.task .meta{display:flex;justify-content:space-between;font-size:12px;gap:8px}
.task form{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}
.task input{flex:1 1 100px;border:1px solid var(--line-2);border-radius:10px;padding:10px;font-size:15px;min-height:44px}
.icon-btn{width:44px;height:44px;border-radius:12px;border:1px solid var(--line-2);background:#fff;display:inline-flex;align-items:center;justify-content:center;color:var(--ink)}

/* Print label */
@media print{.no-print{display:none!important}body{background:#fff}}

.hint:empty{display:none}
@media (max-width:600px){
  .topbar-left span+span,.topbar-right>span{display:none}
  .track-form .btn{flex:1 1 100%}
  .section{padding:64px 0}
  .hero-in{padding:56px 24px 64px}
}
