
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700;900&display=swap');
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Roboto',sans-serif;background:#f4f5f7;color:#1c2331;line-height:1.55;-webkit-font-smoothing:antialiased}
::selection{background:#8bb4e8}
a{color:#2a4a85;text-decoration:none}
a:hover{color:#c62828}
img{max-width:100%;height:auto;display:block}

.ct{max-width:1140px;margin:0 auto;padding:0 20px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}

/* Header */
.hdr{background:#0c1527;position:sticky;top:0;z-index:100}
.hdr-in{display:flex;align-items:center;justify-content:space-between;height:56px}
.logo{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none}
.logo-icon{width:32px;height:32px;border-radius:8px;background:#c62828;display:flex;align-items:center;justify-content:center}
.logo-txt{font-size:16px;font-weight:700}
.logo-sub{font-size:10px;color:#5a8fd4;display:block;margin-top:-2px;letter-spacing:.06em}
.nav{display:flex;gap:2px;align-items:center}
.nav a{background:transparent;border:none;color:#8bb4e8;padding:6px 12px;border-radius:6px;font-size:13px}
.nav a:hover,.nav a.act{background:rgba(255,255,255,.08);color:#fff}
.hdr-btns{display:flex;gap:8px;align-items:center}
.btn-ghost{background:transparent;border:1px solid #213a6a;color:#8bb4e8;padding:7px 14px;border-radius:6px;font-size:13px;cursor:pointer;font-family:inherit}
.btn-red{background:#c62828;border:none;color:#fff;padding:8px 18px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;box-shadow:0 2px 8px rgba(198,40,40,.3)}
.btn-red:hover{background:#a31b1b}
.btn-red-lg{padding:12px 32px;font-size:15px}

/* Service Tabs */
.stabs{display:flex;gap:0;border-bottom:2px solid #1a2d55;background:#132040}
.stab{background:transparent;border:none;border-bottom:2px solid transparent;color:#8bb4e8;padding:12px 20px;font-family:inherit;font-size:13px;font-weight:500;cursor:pointer;margin-bottom:-2px;display:flex;align-items:center;gap:6px}
.stab.act{background:#1a2d55;border-bottom-color:#e53935;color:#fff}
.stab:hover{color:#fff}

/* Search Widget */
.search-box{background:#fff;border-radius:12px;padding:24px;box-shadow:0 4px 16px rgba(12,21,39,.1);border:1px solid #dfe3ea}
.search-grid{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:12px;align-items:end}
.field label{font-size:11px;color:#8a94a6;font-weight:500;margin-bottom:4px;display:block;text-transform:uppercase;letter-spacing:.04em}
.field select,.field input{width:100%;padding:11px 14px;background:#fff;border:1px solid #dfe3ea;border-radius:8px;font-family:inherit;font-size:14px;color:#1c2331;outline:none;appearance:none}
.field select:focus,.field input:focus{border-color:#2a4a85}

/* Cards */
.card{background:#fff;border:1px solid #dfe3ea;border-radius:8px;padding:16px;box-shadow:0 1px 3px rgba(12,21,39,.08);transition:border-color .15s,box-shadow .15s}
.card:hover{border-color:#3b6cb5;box-shadow:0 4px 16px rgba(12,21,39,.1)}
.card-lg{padding:20px;border-radius:12px}

/* Feature Card */
.fc{background:#fff;border:1px solid #dfe3ea;border-radius:8px;padding:20px;box-shadow:0 1px 3px rgba(12,21,39,.08)}
.fc-icon{width:40px;height:40px;border-radius:10px;background:#e8f0fa;display:flex;align-items:center;justify-content:center;margin-bottom:12px}
.fc h3{font-size:15px;font-weight:700;margin-bottom:4px;color:#0c1527}
.fc p{color:#4a5568;font-size:13px;line-height:1.7}

/* Image placeholder */
.img-placeholder{background:#dfe3ea;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#8a94a6;font-size:13px;min-height:200px;overflow:hidden;position:relative}
.img-placeholder img{width:100%;height:100%;object-fit:cover;position:absolute;top:0;left:0}

/* CTA */
.cta{background:linear-gradient(135deg,#132040,#0c1527);border-radius:12px;padding:44px 32px;text-align:center;margin:48px 0;position:relative;overflow:hidden}
.cta::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:#c62828}
.cta h3{font-size:22px;font-weight:700;color:#fff;margin-bottom:8px}
.cta p{font-size:15px;color:#8bb4e8;margin-bottom:20px}

/* Breadcrumbs */
.bc{display:flex;gap:6px;font-size:13px;color:#8a94a6;margin:16px 0 20px;flex-wrap:wrap}
.bc a{color:#3b6cb5}

/* Stats */
.stats{display:flex;justify-content:space-between;gap:12px;margin:28px 0;padding:20px 0;border-top:1px solid #dfe3ea;border-bottom:1px solid #dfe3ea}
.stat{text-align:center;flex:1}
.stat-num{font-size:20px;font-weight:700;color:#132040}
.stat-label{font-size:12px;color:#8a94a6;margin-top:2px}

/* Promo Banner */
.promo{border-radius:12px;overflow:hidden;margin:24px 0;position:relative}
.promo-inner{padding:36px 32px;min-height:200px;display:flex;flex-direction:column;justify-content:center;background-size:cover;background-position:center}
.promo-tag{display:inline-block;background:#c62828;color:#fff;font-size:11px;font-weight:700;padding:3px 10px;border-radius:4px;margin-bottom:12px;width:fit-content}
.promo h3{font-size:24px;font-weight:700;color:#fff;margin-bottom:6px}
.promo p{font-size:14px;color:#8bb4e8;margin-bottom:16px}

/* Route Card */
.rc{cursor:pointer;text-decoration:none;color:inherit;display:block}
.rc-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.rc-meta span{font-size:12px;color:#8a94a6;font-weight:500}
.rc-time{background:#e8f0fa;color:#213a6a;padding:2px 8px;border-radius:4px}
.rc-route{font-size:16px;font-weight:700;margin-bottom:10px;color:#0c1527}
.rc-bottom{display:flex;justify-content:space-between;align-items:center}
.rc-price{color:#c62828;font-weight:700;font-size:17px}
.rc-link{font-size:12px;color:#3b6cb5;font-weight:500}

/* FAQ */
.faq-item{background:#fff;border:1px solid #dfe3ea;border-radius:8px;margin-bottom:6px}
.faq-q{width:100%;text-align:left;background:transparent;border:none;padding:14px 16px;font-family:inherit;font-size:14px;font-weight:500;cursor:pointer;display:flex;justify-content:space-between;align-items:center;color:#1c2331}
.faq-icon{color:#e53935;font-size:18px;transition:transform .2s}
.faq-a{padding:0 16px 14px;color:#4a5568;font-size:13px;line-height:1.8;display:none}
.faq-item.open .faq-a{display:block}
.faq-item.open .faq-icon{transform:rotate(45deg)}

/* White Label Zone */
.wl{min-height:340px;border:2px dashed #dfe3ea;border-radius:12px;display:flex;align-items:center;justify-content:center;margin:20px 0;background:#e8f0fa;color:#8a94a6;font-size:13px;text-align:center}

/* Footer */
.ftr{background:#0c1527;margin-top:60px;color:#8bb4e8}
.ftr-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr 1fr;gap:32px;margin-bottom:32px}
.ftr-col-title{font-size:11px;font-weight:700;color:#3b6cb5;text-transform:uppercase;letter-spacing:.06em;margin-bottom:14px}
.ftr a{color:#5a8fd4;font-size:13px;display:block;margin-bottom:8px;text-decoration:none}
.ftr a:hover{color:#fff}
.ftr-bottom{border-top:1px solid #1a2d55;padding-top:16px;display:flex;justify-content:space-between;font-size:12px;color:#3b6cb5}
.ftr-legal{font-size:11px;color:#3b6cb5;margin-top:12px;line-height:1.7;opacity:.7}

/* Responsive */
@media(max-width:768px){
  .grid-3,.grid-4{grid-template-columns:1fr}
  .grid-2{grid-template-columns:1fr}
  .search-grid{grid-template-columns:1fr}
  .ftr-grid{grid-template-columns:1fr 1fr}
  .stats{flex-wrap:wrap}
  .stat{min-width:45%}
  .nav{display:none}
  .stabs{overflow-x:auto}
  .hdr-in{height:50px}
}
