:root{
  --taxi-yellow:#ffc107;
  --taxi-orange:#ff8a00;
  --taxi-orange-dark:#e67500;
  --taxi-dark:#121212;
  --taxi-muted:#f6f7fb;
  --taxi-text:#2d2f36;
  --taxi-soft:#fff8df;
  --taxi-border:#e8e8e8;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:Arial, Helvetica, sans-serif;color:var(--taxi-text);background:#fff;margin:0}
a{text-decoration:none;color:inherit}
.header-transparent{background:rgba(18,18,18,.92);backdrop-filter:blur(10px);box-shadow:0 10px 30px rgba(0,0,0,.12)}
.navbar{padding:14px 0}.navbar-toggler{background:#fff}.nav-link{color:#fff!important;font-weight:600;margin:0 6px}.nav-link:hover{color:var(--taxi-yellow)!important}
.brand-mark{background:var(--taxi-yellow);color:#000;font-weight:900;border-radius:14px;padding:8px 12px;margin-right:10px}.brand-text{font-size:20px;color:#fff;font-weight:800}
.hero{position:relative;overflow:hidden;min-height:100vh;padding:150px 0 90px;color:#fff;background:#080808;background-image:linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.68),rgba(0,0,0,.30)),url('/img/bg_shepetivka_map03.png');background-size:cover;background-position:center}
.hero-map-overlay{position:absolute;inset:0;background:radial-gradient(circle at 72% 30%,rgba(255,193,7,.35),transparent 28%),linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.74));pointer-events:none}.hero .container{z-index:2}.hero h1{font-size:clamp(38px,5vw,66px);font-weight:900;line-height:1.04;margin:18px 0;text-shadow:0 8px 30px rgba(0,0,0,.45)}.hero .lead{font-size:19px;color:#f0f0f0;max-width:720px}.eyebrow{display:inline-flex;gap:8px;align-items:center;border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:8px 14px;background:rgba(0,0,0,.35);font-weight:700;color:#ffe083}.stat-card{background:rgba(0,0,0,.38);border:1px solid rgba(255,255,255,.18);border-radius:22px;padding:18px;backdrop-filter:blur(8px)}.stat-card b{display:block;font-size:28px;color:var(--taxi-yellow)}.stat-card span{color:#eee;font-size:14px}
.phone-card{position:relative;z-index:2;background:rgba(255,255,255,.94);color:#171717;border-radius:30px;padding:30px;box-shadow:0 30px 90px rgba(0,0,0,.35);backdrop-filter:blur(10px)}.phone-card h2{font-weight:900;margin:8px 0}.phone-card-header p{color:#666}.phone-label{display:inline-block;background:#fff3c4;color:#8a6400;font-weight:900;border-radius:999px;padding:7px 12px}.phone-list{display:grid;gap:12px;margin-top:20px}.phone-list a{display:grid;grid-template-columns:42px 1fr;gap:0 12px;align-items:center;border:1px solid #eee;border-radius:18px;padding:14px;background:#fff;transition:.2s}.phone-list a:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(0,0,0,.08)}.operator-logo,.operator-icon{grid-row:span 2;width:42px;height:42px;border-radius:14px;background:#fff;display:flex;align-items:center;justify-content:center;object-fit:contain;padding:6px;border:1px solid #eee}.callback-icon{background:#151515;color:var(--taxi-yellow);font-size:20px}.callback-icon i{line-height:1}.phone-list strong{font-size:20px}.phone-list span{color:#6d7480;font-size:13px}
.app-buttons{display:flex;flex-wrap:wrap;gap:14px}.app-badge{display:inline-grid;grid-template-columns:48px 1fr 34px;align-items:center;gap:12px;border:1px solid var(--taxi-orange);border-radius:16px;padding:10px 14px;background:var(--taxi-orange);color:#fff;min-width:270px;transition:.2s;box-shadow:0 14px 30px rgba(255,138,0,.22);text-decoration:none}.app-badge:hover{transform:translateY(-2px);color:#fff;background:var(--taxi-orange-dark);border-color:var(--taxi-orange-dark)}.app-logo{width:48px;height:48px;border-radius:12px;object-fit:cover;box-shadow:0 6px 14px rgba(0,0,0,.18)}.app-badge-text{display:grid;line-height:1.05;font-weight:900;text-align:left}.app-badge-text small{font-weight:700;color:#fff4df;font-size:12px}.app-badge-text b{font-size:18px;color:#fff}.market-icon{font-size:30px;text-align:right;color:#fff}.app-badge-dark{background:var(--taxi-orange);color:#fff;border-color:var(--taxi-orange)}.app-badge-dark:hover{background:var(--taxi-orange-dark);color:#fff;border-color:var(--taxi-orange-dark)}
.section{padding:90px 0}.section-muted{background:var(--taxi-muted)}.section-title{margin-bottom:42px}.section-title span{display:inline-block;color:#a37400;background:#fff4ca;border-radius:999px;padding:7px 14px;font-weight:800;margin-bottom:12px}.section-title h2{font-size:clamp(30px,3vw,46px);font-weight:900;margin-bottom:12px}.section-title p{color:#656b76}.feature-card,.service-card,.process-card,.contact-card,.table-card,.app-preview-card{height:100%;background:#fff;border:1px solid var(--taxi-border);border-radius:26px;padding:28px;box-shadow:0 14px 38px rgba(30,40,60,.06);transition:.2s}.feature-card:hover,.service-card:hover,.route-card:hover,.contact-card:hover,.app-preview-card:hover{transform:translateY(-4px);box-shadow:0 20px 48px rgba(30,40,60,.1)}.feature-card i,.service-card i,.contact-card i,.app-preview-card i{font-size:34px;color:#d39b00;background:#fff3c4;border-radius:18px;padding:12px;display:inline-flex;margin-bottom:18px}.feature-card h3,.service-card h3,.process-card h3,.contact-card h3,.app-preview-card h3{font-size:21px;font-weight:900}.feature-card p,.service-card p,.process-card p,.contact-card p,.app-preview-card p{color:#606773;margin-bottom:0}.apps-section{background:linear-gradient(135deg,#fff8df,#ffffff)}.app-preview-card{background:#151515;color:#fff}.app-preview-card p{color:#ddd}.app-preview-card i{background:var(--taxi-yellow);color:#111}.service-card.accent{background:#171717;color:#fff}.service-card.accent p{color:#ddd}.check-list{list-style:none;margin:0;padding:0}.check-list li{margin:14px 0;font-size:17px}.check-list i{color:#0f9d58;margin-right:8px}.table-card{padding:0;overflow:hidden}.table th{background:#151515;color:#fff;padding:18px}.table td{padding:17px}.route-card{display:block;background:#fff;border:1px solid var(--taxi-border);border-radius:24px;padding:24px;height:100%;box-shadow:0 14px 38px rgba(30,40,60,.05)}.route-card b{display:block;font-size:20px;color:#151515}.route-card span{color:#6d7480}.process-card b{display:inline-flex;width:52px;height:52px;align-items:center;justify-content:center;background:#151515;color:var(--taxi-yellow);border-radius:18px;margin-bottom:20px;font-size:20px}.cta-section{padding:70px 0;background:#151515;color:#fff}.cta-section h2{font-weight:900;font-size:38px}.cta-section p{color:#ddd;font-size:18px}.mini-form{background:#fff;border:1px solid var(--taxi-border);border-radius:26px;padding:26px;box-shadow:0 14px 38px rgba(30,40,60,.06);display:grid;gap:14px}.form-control,.form-select{min-height:50px;border-radius:14px;border:1px solid #ddd}.contacts a{color:#111;font-weight:800}.footer{background:#090909;color:#ddd;padding:60px 0 20px}.footer h3,.footer h4{color:#fff;font-weight:900}.footer a{display:block;color:#ddd;margin:9px 0}.footer a:hover{color:var(--taxi-yellow)}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:35px;padding-top:20px;color:#999}.floating-call{position:fixed;right:22px;bottom:22px;z-index:999;background:var(--taxi-yellow);color:#000;border-radius:999px;padding:14px 20px;font-weight:900;box-shadow:0 20px 48px rgba(0,0,0,.25);display:flex;gap:8px;align-items:center}.floating-call:hover{color:#000;transform:translateY(-2px)}
@media(max-width:991px){.hero{padding-top:120px}.navbar-nav{padding-top:20px}.nav-link{margin:5px 0}.phone-card{padding:22px}.section{padding:65px 0}.app-badge{width:100%}}

/* Real mobile operator logos */
.operator-logo{
  grid-row:span 2;
  width:42px;
  height:42px;
  object-fit:contain;
  border-radius:12px;
  background:#fff;
  padding:4px;
}

@media(max-width:575px){.app-badge{grid-template-columns:42px 1fr 30px;min-width:100%;padding:9px 12px}.app-logo{width:42px;height:42px}.app-badge-text b{font-size:16px}.market-icon{font-size:27px}}
