/* RouTra Landing — minimal, responsive, accessible */
:root{
  --brand:#F07B52;
  --brand-ink:#2B2B2B;
  --bg:#FFFDFB;
  --ink:#222;
  --muted:#5F656B;
  --card:#ffffff;
  --ring:rgba(240,123,82,.35);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
img{max-width:100%;height:auto;display:block}
.container{max-width:1120px;margin-inline:auto;padding:0}

Header & Nav (logo alignment fix)
.site-header{position:sticky;top:0;background:rgba(255,253,251,.85);backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid #eee;z-index:10;padding:0 0}
.nav{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:10px}
.brand{display:flex;align-items:center;gap:14px;font-weight:700;line-height:1}
.brand-name{font-size:22px;color:var(--brand-ink);display:flex;align-items:center}
.brand-icon{width:200px;height:auto;border-radius:14px;display:block}
.brand-icon.small{width:180px;height:auto}
.nav-links{display:flex;align-items:center;gap:14px}
.nav a{color:var(--muted);text-decoration:none;font-weight:100}
.nav a:hover{color:var(--brand-ink)}
.btn{background:var(--brand);color:white;padding:12px 18px;border-radius:999px;text-decoration:none;font-weight:700;box-shadow:0 6px 20px var(--ring)}
.btn.small{padding:8px 12px;font-size:14px}

/* Hero */
.hero{padding:0 0 0}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.hero-copy h1{font-size:44px;line-height:1.05;margin:0 0 8px}
.tagline{font-size:20px;color:var(--muted);margin:0 0 18px}
.tagline .sub{font-size:16px}
.ctas{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0}
.store-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:12px;padding:14px 18px;font-weight:700;text-decoration:none;border:2px solid transparent;box-shadow:0 6px 20px var(--ring)}
.store-btn.apple{background:#111;color:#fff}
.store-btn.google{background:#0F9D58;color:#fff}
.store-btn:focus-visible{outline:3px solid var(--ring)}
.hero-points{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:8px}
.hero-points li::before{content:"✓";color:var(--brand);font-weight:900;margin-right:10px}
.hero-media{display:flex;align-items:center;justify-content:center}
/* Ensure app image fits in hero without overflow */
.hero-media img{max-height:65vh;max-width:100%;object-fit:contain}
.divider{height:1px;background:linear-gradient(90deg,transparent,#eee,transparent);margin-top:8px}

/* Features */
.features{padding:48px 0}
.features h2,.how h2,.screens h2,.cta h2,.faq h2{font-size:34px;margin:0 0 22px}
.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.card{background:var(--card);border:1px solid #eee;border-radius:18px;padding:20px;box-shadow:0 8px 30px rgba(0,0,0,.04)}
.card h3{margin:8px 0 6px}
.card-icon{font-size:24px}

/* How it works */
.how{padding:12px 0 36px}
.steps{list-style:none;padding:0;margin:0;display:grid;gap:16px}
.steps li{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:start;background:#fff;border:1px solid #eee;border-radius:14px;padding:16px}
.steps .num{display:inline-grid;place-items:center;background:var(--brand);color:#fff;width:32px;height:32px;border-radius:999px;font-weight:800}

/* Screens */
.screens{padding:0 0}
.screens-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.screen-card{background:#fff;border:1px solid #eee;border-radius:18px;padding:0;text-align:center}
.caption{color:var(--muted);font-size:14px;margin-top:8px}

/* CTA & FAQ */
.cta{padding:36px 0 54px}
.center{text-align:center}
.faq{padding:10px 0 60px}
details{background:#fff;border:1px solid #eee;border-radius:14px;padding:14px;margin:10px 0}
summary{cursor:pointer;font-weight:600}

/* Footer */
.footer{background:#fff;border-top:1px solid #eee}
.footer-grid{display:flex;align-items:center;justify-content:space-between;gap:12px}

/* Responsive tweaks */
@media (max-width: 980px){
  .hero-grid{grid-template-columns:1fr;gap:20px}
  .features-grid{grid-template-columns:repeat(2,1fr)}
  .hero-media img{max-height:420px}
}
@media (max-width: 640px){
  .nav-links{display:none}
  .hero-copy h1{font-size:36px}
  .features-grid{grid-template-columns:1fr}
  .screens-grid{grid-template-columns:1fr}
  .container{padding:20px}
  .store-btn{width:100%;justify-content:center}
  .hero-media img{max-height:360px}
}
