@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Sora:wght@600;700;800&display=swap');
:root{--navy:#061223;--ink:#101828;--text:#475467;--muted:#667085;--line:#d8e1ea;--cyan:#06b6d4;--blue:#1d4ed8;--soft:#eefbff;--shadow:0 20px 55px rgba(15,23,42,.12);--shadow2:0 34px 90px rgba(15,23,42,.20);--body:'Manrope',sans-serif;--head:'Sora',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--body);color:var(--text);font-size:16px;line-height:1.7;background:#fff}a{text-decoration:none;color:inherit}.container{width:min(1180px,calc(100% - 40px));margin:0 auto}.section{padding:90px 0}h1,h2,h3{margin:0;color:var(--ink);font-family:var(--head);letter-spacing:-.045em}h1{font-size:clamp(44px,6.5vw,78px);line-height:1.02}h2{font-size:clamp(32px,4.7vw,56px);line-height:1.08}h3{font-size:23px}.pill{display:inline-flex;width:fit-content;padding:8px 13px;border-radius:999px;background:rgba(6,182,212,.12);border:1px solid rgba(6,182,212,.24);color:#0e7490;font-family:var(--head);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.section-head{max-width:820px;margin:0 auto 46px;text-align:center}.section-head .pill{margin:0 auto 14px}.section-head p{margin-top:14px;color:var(--muted);font-size:17px}.topbar{background:#020817;color:rgba(255,255,255,.82);font-size:14px}.topbar .container{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:16px}.topbar a{color:#fff;font-weight:800}.site-header{position:sticky;top:0;z-index:999;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(216,225,234,.9)}.nav{min-height:80px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:24px}.logo{display:flex;align-items:center;gap:12px}.logo-mark{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,var(--cyan),var(--blue));color:#fff;font-family:var(--head);font-weight:800}.logo strong{display:block;font-family:var(--head);font-size:24px;color:var(--ink)}.logo small{display:block;margin-top:3px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.main-nav{display:flex;align-items:center;justify-content:center;gap:22px}.main-nav a{font-family:var(--head);font-size:13.5px;font-weight:700;color:#1f2937}.main-nav a:hover{color:var(--cyan)}.header-call{display:inline-flex;min-height:46px;align-items:center;justify-content:center;padding:0 18px;border-radius:14px;background:linear-gradient(135deg,var(--cyan),var(--blue));color:#fff;font-family:var(--head);font-size:13px;font-weight:800}.menu{display:none}.btn,.submit,.sticky-call{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:0 22px;border:0;border-radius:16px;font-family:var(--head);font-size:14px;font-weight:800;cursor:pointer;transition:.25s ease}.btn-primary,.submit,.sticky-call{color:#fff;background:linear-gradient(135deg,var(--cyan),var(--blue));box-shadow:0 18px 40px rgba(6,182,212,.25)}.btn-dark{color:#fff;background:#071225}.btn:hover,.submit:hover,.sticky-call:hover,.header-call:hover{transform:translateY(-3px);box-shadow:0 26px 55px rgba(29,78,216,.28)}.hero{position:relative;overflow:hidden;background:radial-gradient(circle at 78% 18%,rgba(6,182,212,.18),transparent 30%),linear-gradient(135deg,#f8fdff,#eef6ff);padding:88px 0}.hero-grid{display:grid;grid-template-columns:.96fr 1.04fr;gap:42px;align-items:center}.hero h1{margin-top:18px}.hero p{max-width:690px;margin-top:20px;color:var(--muted);font-size:18px;line-height:1.82}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.hero-card{padding:22px;border-radius:34px;background:#fff;border:1px solid rgba(216,225,234,.9);box-shadow:var(--shadow2)}.hero-img{min-height:410px;border-radius:24px;background:linear-gradient(135deg,rgba(6,18,35,.38),rgba(6,18,35,.12)),url('../images/hero.svg') center/cover no-repeat;display:flex;align-items:flex-end;padding:22px}.floating-call{width:100%;padding:18px;border-radius:20px;background:rgba(2,8,23,.72);color:#fff}.floating-call strong{display:block;font-family:var(--head);font-size:24px}.floating-call span{display:block;color:rgba(255,255,255,.74);font-size:13px;margin-top:4px}.search-box{margin-top:34px;padding:20px;border-radius:26px;background:#fff;border:1px solid rgba(216,225,234,.9);box-shadow:var(--shadow)}.search-head{display:flex;justify-content:space-between;gap:14px;margin-bottom:14px}.search-head h2{font-size:26px}.search-head p{font-size:13px;color:var(--muted);font-weight:600}.search-form{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr auto;gap:12px;align-items:end}.field label{display:block;margin-bottom:7px;color:#172033;font-family:var(--head);font-size:12px;font-weight:800}.field input,.field textarea{width:100%;height:52px;border:1px solid var(--line);border-radius:14px;padding:0 14px;font:inherit;outline:none;background:#fbfdff}.field textarea{height:auto;min-height:135px;padding:14px;resize:vertical}.split{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.about-visual{min-height:430px;border-radius:34px;background:linear-gradient(135deg,rgba(6,18,35,.28),rgba(6,18,35,.08)),url('../images/about.svg') center/cover no-repeat;box-shadow:var(--shadow2)}.content h2{margin-top:14px}.content p{margin-top:18px;color:var(--muted);font-size:17px;line-height:1.85}.stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:26px}.stat{padding:18px;border-radius:18px;background:var(--soft);border:1px solid rgba(6,182,212,.18)}.stat strong{display:block;color:var(--ink);font-family:var(--head);font-size:24px}.service-section{background:#061223;color:#fff}.service-section h2,.service-section h3{color:#fff}.service-section .section-head p{color:rgba(255,255,255,.72)}.service-grid,.dest-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service-card,.dest-card{overflow:hidden;border-radius:28px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);transition:.25s ease}.service-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);color:#fff}.service-card:hover,.dest-card:hover{transform:translateY(-8px);box-shadow:var(--shadow2)}.card-img img{width:100%;height:190px;display:block;object-fit:cover;transition:.35s ease}.service-card:hover .card-img img,.dest-card:hover .card-img img{transform:scale(1.07)}.card-body{padding:26px}.service-card p{margin-top:10px;color:rgba(255,255,255,.72)}.dest-card p{margin-top:10px;color:var(--muted)}.tag{display:inline-flex;margin-bottom:16px;padding:7px 11px;border-radius:999px;background:rgba(6,182,212,.12);color:#0e7490;font-family:var(--head);font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.dest-card .btn{margin-top:20px;min-height:44px;padding:0 16px;border-radius:12px}.cta{padding:78px 0;color:#fff;background:radial-gradient(circle at 82% 20%,rgba(6,182,212,.28),transparent 30%),linear-gradient(135deg,#020817,#0f2b45)}.cta-grid{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center}.cta h2{color:#fff;margin-top:14px}.cta p{max-width:780px;margin-top:12px;color:rgba(255,255,255,.76);font-size:17px}.cta-box{min-width:300px;padding:24px;border-radius:28px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.16);color:#fff;text-align:center;transition:.25s ease}.cta-box:hover{transform:translateY(-5px);background:rgba(6,182,212,.18)}.cta-box strong{display:block;font-family:var(--head);font-size:24px}.page-hero{padding:84px 0 72px;background:linear-gradient(135deg,#eefbff,#f8fdff)}.page-hero h1{margin-top:16px}.page-hero p{max-width:760px;margin-top:16px;color:var(--muted);font-size:18px}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:34px}.panel{padding:34px;border-radius:28px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}.contact-list{display:grid;gap:14px;margin-top:24px}.contact-list a,.contact-list span{font-weight:700;color:#344054}.faq-list{display:grid;gap:16px}.faq-item{padding:22px;border-radius:22px;background:#fff;border:1px solid var(--line);box-shadow:0 12px 30px rgba(16,24,40,.06)}.faq-item h3{font-size:19px}.faq-item p{margin-top:8px;color:var(--muted)}.policy-card{max-width:960px;margin:0 auto}.policy-card h2{font-size:30px;margin:28px 0 10px}.footer{background:#020817;color:rgba(255,255,255,.72)}.footer-top{padding:58px 0 34px}.footer-grid{display:grid;grid-template-columns:1.15fr .75fr .75fr .9fr;gap:34px}.footer h3{color:#fff;font-size:18px;margin-bottom:16px}.footer p,.footer a{font-size:14px}.footer a{display:block;color:rgba(255,255,255,.76);font-weight:700;margin-bottom:10px}.payments{display:grid;grid-template-columns:repeat(2,minmax(100px,1fr));gap:12px;max-width:290px}.pay-icon{display:flex;align-items:center;justify-content:center;min-height:46px;padding:6px 10px;border-radius:10px;background:#fff}.pay-icon img{height:26px;max-width:110px}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding:20px 0;font-size:13px}.footer-bottom .container{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.sticky-call{display:none}@media(max-width:1024px){body{padding-bottom:92px}.sticky-call{position:fixed;left:12px;right:12px;bottom:12px;z-index:2147483647;display:flex;min-height:60px;border-radius:999px}}@media(max-width:1100px){.hero-grid,.split,.cta-grid,.contact-grid{grid-template-columns:1fr}.service-grid,.dest-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}.search-form{grid-template-columns:1fr 1fr}.cta-box{width:fit-content}}@media(max-width:900px){.topbar .container{flex-direction:column;text-align:center;padding:8px 0}.nav{grid-template-columns:1fr auto}.menu{display:inline-flex;width:44px;height:44px;border:0;border-radius:14px;background:var(--soft);align-items:center;justify-content:center;font-size:24px;font-weight:900}.main-nav{grid-column:1/-1;display:none;flex-direction:column;align-items:flex-start;gap:0;border-top:1px solid var(--line);padding:12px 0}.main-nav.open{display:flex}.main-nav a{width:100%;padding:13px 0;border-bottom:1px solid var(--line)}.header-call{display:none}}@media(max-width:700px){.container{width:min(100% - 28px,1180px)}.section{padding:68px 0}.hero{padding:62px 0}h1{font-size:clamp(38px,11vw,52px)}h2{font-size:clamp(30px,8vw,40px)}.hero p{font-size:16px}.hero-actions{flex-direction:column}.btn{width:100%}.service-grid,.dest-grid,.stat-row,.footer-grid,.search-form{grid-template-columns:1fr}.hero-card{padding:14px;border-radius:24px}.hero-img{min-height:360px}.panel,.card-body{padding:24px}.cta-box{width:100%;min-width:0}.footer-bottom .container{flex-direction:column;text-align:center}.search-head{display:block}.search-head p{margin-top:6px}}

/* --- Smart update fixes --- */
.hero{
  background:
    linear-gradient(135deg, rgba(4,17,31,.78), rgba(11,79,108,.65)),
    url('../images/hero-bg.svg') center/cover no-repeat !important;
  color:#fff;
}
.hero h1,.hero h2,.hero h3{color:#fff}
.hero p{color:rgba(255,255,255,.84)}
.hero .pill{
  background:rgba(255,255,255,.12);
  border-color:rgba(255,255,255,.2);
  color:#e0f7ff;
}
.hero-card{
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 30px 80px rgba(0,0,0,.26);
}
.hero-img{
  min-height:500px;
  border-radius:28px;
  background:
    linear-gradient(135deg, rgba(4,17,31,.28), rgba(4,17,31,.08)),
    url('../images/hero.svg') center/cover no-repeat !important;
}
.search-box{
  margin-top:38px;
  padding:28px;
  border-radius:30px;
  background:rgba(255,255,255,.96);
  border:1px solid rgba(255,255,255,.45);
  box-shadow:0 24px 60px rgba(15,23,42,.18);
}
.search-head{margin-bottom:18px}
.search-head h2{font-size:30px}
.search-head p{font-size:14px;max-width:420px}
.search-form{
  grid-template-columns:1.55fr 1.1fr 1fr 1fr auto !important;
  gap:14px;
}
.field input,.field textarea{
  height:60px;
  border-radius:16px;
  padding:0 16px;
  background:#fff;
  border:1px solid #cbd5e1;
}
.submit{
  min-height:60px;
  padding:0 24px;
  border-radius:16px;
  white-space:nowrap;
}
.card-img{
  position:relative;
  overflow:hidden;
}
.card-img::after{
  content:"";
  position:absolute;
  inset:auto 12px 12px auto;
  width:68px;
  height:68px;
  border-radius:18px;
  background:rgba(255,255,255,.18);
  backdrop-filter:blur(8px);
  border:1px solid rgba(255,255,255,.26);
}
.card-img img{height:210px}
.service-card,.dest-card,.faq-item,.panel,.stat{
  position:relative;
  overflow:hidden;
}
.faq-item::before,.panel::before,.stat::before{
  content:"";
  position:absolute;
  top:-18px;
  right:-12px;
  width:110px;
  height:110px;
  background:url('../images/card-accent.svg') center/contain no-repeat;
  opacity:.18;
  pointer-events:none;
}
.service-card h3,.dest-card h3{position:relative;z-index:1}
.faq-item h3,.panel h2{position:relative;z-index:1}
.faq-item p,.panel p,.stat strong,.stat span{position:relative;z-index:1}
.footer .payments .pay-icon{
  background:#ffffff;
}
.sticky-call{
  text-align:center;
  justify-content:center;
  align-items:center;
  white-space:nowrap;
}
@media (max-width:1100px){
  .search-form{grid-template-columns:1fr 1fr !important}
  .submit{width:100%}
}
@media (max-width:1024px){
  body{padding-bottom:96px !important}
  .sticky-call{
    left:12px !important;
    right:12px !important;
    bottom:12px !important;
    width:auto !important;
    max-width:calc(100vw - 24px) !important;
    min-height:58px !important;
    padding:0 18px !important;
    border-radius:999px !important;
    font-size:15px !important;
    line-height:1.2 !important;
    box-shadow:0 18px 45px rgba(29,78,216,.30), 0 10px 22px rgba(6,182,212,.20) !important;
  }
}
@media (max-width:700px){
  .hero-card{padding:16px}
  .hero-img{min-height:330px}
  .search-box{padding:20px}
  .search-head{display:block}
  .search-head h2{font-size:24px}
  .search-head p{margin-top:8px}
  .search-form{grid-template-columns:1fr !important}
  .card-img img{height:180px}
  .sticky-call{
    font-size:14px !important;
    min-height:56px !important;
  }
}

/* --- TrainsFare final cache-safe bug fixes v2 --- */
.hero{
  background:
    linear-gradient(135deg, rgba(4,17,31,.78), rgba(11,79,108,.65)),
    url('../images/hero-bg.svg') center/cover no-repeat !important;
  color:#fff !important;
}
.hero h1,.hero h2,.hero h3{color:#fff !important}
.hero p{color:rgba(255,255,255,.86) !important}
.hero .pill{background:rgba(255,255,255,.12) !important;border-color:rgba(255,255,255,.25) !important;color:#e0f7ff !important}
.hero-img{min-height:500px !important;border-radius:28px !important;background:linear-gradient(135deg,rgba(4,17,31,.25),rgba(4,17,31,.08)),url('../images/hero.svg') center/cover no-repeat !important}
.search-box{padding:30px !important;border-radius:32px !important;background:rgba(255,255,255,.97) !important;box-shadow:0 28px 70px rgba(15,23,42,.22) !important}
.search-head h2{font-size:32px !important}.search-head p{font-size:14px !important;max-width:440px !important}
.search-form{grid-template-columns:1.6fr 1.1fr 1fr 1fr auto !important;gap:15px !important}
.field input,.field textarea{height:62px !important;border-radius:16px !important;background:#fff !important;border:1px solid #cbd5e1 !important}.submit{min-height:62px !important;border-radius:16px !important;padding:0 26px !important;white-space:nowrap !important}
.card-img img{height:212px !important;display:block !important;width:100% !important;object-fit:cover !important}.card-img{position:relative !important;overflow:hidden !important;background:#eaf7fb !important}.card-img::after{content:"" !important;position:absolute !important;right:12px !important;bottom:12px !important;width:68px !important;height:68px !important;border-radius:18px !important;background:rgba(255,255,255,.18) !important;backdrop-filter:blur(8px) !important;border:1px solid rgba(255,255,255,.25) !important;pointer-events:none !important}
.service-card:hover .card-img img,.dest-card:hover .card-img img{transform:scale(1.08) !important}
@media(max-width:1100px){.search-form{grid-template-columns:1fr 1fr !important}.submit{width:100% !important}}
@media(max-width:1024px){body{padding-bottom:98px !important}.sticky-call{position:fixed !important;left:12px !important;right:12px !important;bottom:12px !important;width:auto !important;max-width:calc(100vw - 24px) !important;min-height:60px !important;border-radius:999px !important;z-index:2147483647 !important;display:flex !important;align-items:center !important;justify-content:center !important;text-align:center !important;line-height:1.2 !important;white-space:nowrap !important;padding:0 18px !important}}
@media(max-width:700px){.hero-img{min-height:340px !important}.search-box{padding:20px !important}.search-head h2{font-size:24px !important}.search-form{grid-template-columns:1fr !important}.card-img img{height:185px !important}.sticky-call{font-size:14px !important;min-height:56px !important}}
/* --- End TrainsFare final cache-safe bug fixes v2 --- */

/* TrainsFare v4 local image and form fix */
.hero{
  min-height: auto !important;
  background:
    linear-gradient(135deg, rgba(4,17,31,.80), rgba(11,79,108,.64)),
    url('../images/photo-hero.jpg') center/cover no-repeat !important;
}
.hero h1,.hero h2,.hero h3{color:#fff !important}
.hero p{color:rgba(255,255,255,.86) !important}
.hero .pill{background:rgba(255,255,255,.14) !important;border-color:rgba(255,255,255,.24) !important;color:#e0f7ff !important}
.hero-card{
  background:rgba(255,255,255,.13) !important;
  border:1px solid rgba(255,255,255,.18) !important;
  box-shadow:0 32px 90px rgba(0,0,0,.26) !important;
}
.hero-img{
  min-height:520px !important;
  background:
    linear-gradient(135deg, rgba(4,17,31,.24), rgba(4,17,31,.05)),
    url('../images/photo-hero.jpg') center/cover no-repeat !important;
}
.about-visual{
  min-height:460px !important;
  background:
    linear-gradient(135deg,rgba(6,18,35,.26),rgba(6,18,35,.08)),
    url('../images/photo-about.jpg') center/cover no-repeat !important;
}
.search-box{
  margin-top:42px !important;
  padding:34px !important;
  border-radius:34px !important;
  background:rgba(255,255,255,.98) !important;
  border:1px solid rgba(255,255,255,.65) !important;
  box-shadow:0 28px 70px rgba(15,23,42,.22) !important;
}
.search-head{
  margin-bottom:24px !important;
  align-items:flex-end !important;
}
.search-head h2{
  font-size:34px !important;
  line-height:1.12 !important;
  color:#101828 !important;
}
.search-head p{
  font-size:15px !important;
  line-height:1.55 !important;
  max-width:470px !important;
  color:#475467 !important;
}
.search-form{
  display:grid !important;
  grid-template-columns:1.5fr 1.1fr 1fr 1fr auto !important;
  gap:16px !important;
  align-items:end !important;
}
.field label{
  margin-bottom:9px !important;
  font-size:12px !important;
}
.field input,.field textarea{
  height:64px !important;
  border-radius:18px !important;
  padding:0 18px !important;
  background:#fff !important;
  border:1px solid #cbd5e1 !important;
  box-shadow:0 8px 20px rgba(15,23,42,.04) !important;
}
.submit{
  min-height:64px !important;
  padding:0 30px !important;
  border-radius:18px !important;
  white-space:nowrap !important;
}
.card-img{
  background:#0f172a !important;
}
.card-img img{
  width:100% !important;
  height:230px !important;
  display:block !important;
  object-fit:cover !important;
  object-position:center !important;
}
.service-card:hover .card-img img,
.dest-card:hover .card-img img{
  transform:scale(1.07) !important;
}
.sticky-call{
  text-align:center !important;
  justify-content:center !important;
  align-items:center !important;
  white-space:nowrap !important;
}
@media(max-width:1100px){
  .search-form{grid-template-columns:1fr 1fr !important}
  .submit{width:100% !important}
}
@media(max-width:1024px){
  body{padding-bottom:98px !important}
  .sticky-call{
    position:fixed !important;
    left:12px !important;
    right:12px !important;
    bottom:12px !important;
    width:auto !important;
    max-width:calc(100vw - 24px) !important;
    min-height:60px !important;
    padding:0 18px !important;
    border-radius:999px !important;
    z-index:2147483647 !important;
    font-size:15px !important;
    line-height:1.2 !important;
    display:flex !important;
  }
}
@media(max-width:700px){
  .hero-img{min-height:340px !important}
  .search-box{padding:22px !important}
  .search-head{display:block !important}
  .search-head h2{font-size:25px !important}
  .search-head p{margin-top:8px !important}
  .search-form{grid-template-columns:1fr !important}
  .card-img img{height:190px !important}
  .sticky-call{font-size:14px !important;min-height:56px !important}
}
