:root{
  --bg:#07111f;
  --bg-soft:#0b1729;
  --panel:#0d1d33;
  --panel-2:#10243f;
  --line:rgba(255,255,255,.08);
  --text:#f6f8fb;
  --muted:#b8c5d8;
  --gold:#f4b400;
  --gold-soft:#ffd870;
  --blue:#1f87ff;
  --blue-soft:#78b7ff;
  --green:#00b26d;
  --shadow:0 24px 70px rgba(0,0,0,.45);
  --radius:22px;
  --max:1180px;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at top left, rgba(31,135,255,.14), transparent 28%),
    radial-gradient(circle at top right, rgba(244,180,0,.12), transparent 20%),
    linear-gradient(180deg,#06101c 0%, #091626 48%, #07111f 100%);
  line-height:1.65;
}
a{color:inherit;text-decoration:none}
img,svg{max-width:100%;display:block}
button,input,select,textarea{font:inherit}
.container{width:min(var(--max), calc(100% - 2rem));margin-inline:auto}

.site-header{
  position:sticky;top:0;z-index:1000;
  backdrop-filter: blur(18px);
  background:rgba(4,10,18,.76);
  border-bottom:1px solid var(--line);
}
.nav-wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0}
.brand{display:flex;align-items:center;gap:.9rem}
.brand-mark{width:54px;height:54px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.02));box-shadow:inset 0 1px 0 rgba(255,255,255,.12)}
.brand strong{display:block;font-size:1.15rem;font-weight:800;letter-spacing:.2px}
.brand small{display:block;color:var(--muted);font-size:.84rem}
.site-nav{display:flex;align-items:center;gap:1.1rem}
.site-nav a{color:#dbe8f8;font-weight:600;font-size:.96rem}
.site-nav a.active{color:#fff}
.nav-cta{padding:.78rem 1rem;border-radius:999px;background:linear-gradient(180deg,var(--gold-soft),var(--gold));color:#05111f!important;box-shadow:0 12px 22px rgba(244,180,0,.18)}
.menu-toggle{display:none;border:1px solid var(--line);background:rgba(255,255,255,.03);color:#fff;border-radius:12px;padding:.55rem .78rem;font-size:1.2rem}

.hero{position:relative;overflow:hidden;padding:4.2rem 0 3.4rem;background:
 linear-gradient(115deg, rgba(5,16,30,.88), rgba(8,20,38,.45) 48%, rgba(9,18,31,.78)),
 url('https://images.unsplash.com/photo-1436491865332-7a61a109cc05?auto=format&fit=crop&w=1600&q=80') center/cover no-repeat;}
.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 18% 30%, rgba(31,135,255,.22), transparent 25%), radial-gradient(circle at 82% 18%, rgba(244,180,0,.18), transparent 18%)}
.hero-grid{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:2rem;align-items:center;min-height:calc(100vh - 88px)}
.eyebrow,.section-tag{display:inline-flex;align-items:center;gap:.5rem;padding:.45rem .8rem;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);color:var(--gold-soft);font-size:.88rem;font-weight:700;margin-bottom:1rem}
.hero-copy h1,.section-copy h2,.section-header h2,.panel-card h2,.newsletter-shell h2,.page-hero h1{font-family:"Playfair Display", Georgia, serif;line-height:1.04;letter-spacing:-.4px}
.hero-copy h1{font-size:clamp(2.7rem, 5vw, 5.1rem);max-width:11ch;margin-bottom:1rem}
.hero-copy p{max-width:58ch;color:#d8e4f5;font-size:1.04rem}
.hero-actions{display:flex;flex-wrap:wrap;gap:.9rem;margin:1.4rem 0 1.1rem}
.hero-badges{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.1rem}
.hero-badges span{padding:.56rem .85rem;border-radius:999px;background:rgba(8,22,40,.58);border:1px solid rgba(255,255,255,.11);color:#d7e2f4;font-size:.92rem}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:none;border-radius:999px;padding:1rem 1.25rem;font-weight:800;cursor:pointer;transition:transform .18s ease, opacity .18s ease, box-shadow .18s ease}
.btn:hover{transform:translateY(-1px)}
.btn-gold{background:linear-gradient(180deg,var(--gold-soft),var(--gold));color:#07111f;box-shadow:0 18px 36px rgba(244,180,0,.22)}
.btn-ghost,.btn-outline{background:rgba(255,255,255,.04);color:#fff;border:1px solid rgba(255,255,255,.15)}
.btn-block{width:100%}

.booking-card,.panel-card,.route-map-card,.newsletter-shell,.page-panel{
  background:linear-gradient(180deg, rgba(12,29,50,.84), rgba(9,22,38,.92));
  border:1px solid rgba(255,255,255,.08);
  box-shadow:var(--shadow);
  border-radius:var(--radius);
}
.booking-card{padding:1.25rem}
.card-head h2{font-size:1.45rem;margin-bottom:.15rem}
.card-head p{color:var(--muted);font-size:.95rem}
.booking-form,.cargo-form{margin-top:1rem}
.form-grid{display:grid;gap:1rem;margin-bottom:1rem}
.form-grid.two{grid-template-columns:repeat(2, minmax(0,1fr))}
.form-grid.three{grid-template-columns:repeat(3, minmax(0,1fr))}
label{display:block;font-size:.92rem;font-weight:700;color:#dce8f8;margin-bottom:.45rem}
input,select,textarea{
  width:100%;padding:.95rem 1rem;border-radius:14px;border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.04);color:#fff;outline:none;
}
input::placeholder, textarea::placeholder{color:#a5b6ca}
input:focus,select:focus,textarea:focus{border-color:rgba(120,183,255,.6);box-shadow:0 0 0 3px rgba(31,135,255,.12)}
.booking-result,.newsletter-result{margin-top:1rem;padding:0;border-radius:16px;color:#dce7f5;overflow:hidden}
.booking-result.active,.newsletter-result.active{padding:1rem 1rem;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}
.result-title{font-weight:800;color:#fff;margin-bottom:.35rem}
.result-price{font-size:1.25rem;color:var(--gold-soft);font-weight:800;margin-top:.35rem}

.metrics-section{padding:1rem 0 0}
.metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.metrics-grid article{padding:1.2rem;border-radius:18px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);text-align:center}
.metrics-grid strong{display:block;font-size:1.75rem;color:var(--gold-soft);margin-bottom:.2rem}
.metrics-grid span{color:#d3dfef;font-size:.95rem}

.section{padding:5rem 0}
.section-dark{background:linear-gradient(180deg, rgba(7,17,31,.25), rgba(255,255,255,.01))}
.section-gradient{background:linear-gradient(180deg, rgba(13,30,51,.45), rgba(6,13,24,.12))}
.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center}
.section-copy h2,.section-header h2,.panel-card h2,.newsletter-shell h2,.page-hero h1{font-size:clamp(2rem, 4vw, 3.4rem);margin-bottom:.85rem}
.section-copy p,.section-header p,.panel-card p,.page-hero p{color:var(--muted);max-width:58ch}
.section-header{text-align:center;max-width:760px;margin:0 auto 2rem}

.map-shell{position:relative;padding:1rem}
.map-glow{position:absolute;inset:10% 18%;background:radial-gradient(circle, rgba(244,180,0,.18), transparent 55%);filter:blur(26px);pointer-events:none}
.route-map{border-radius:20px;border:1px solid rgba(255,255,255,.06);background:#081324;box-shadow:inset 0 1px 0 rgba(255,255,255,.03)}
.city-pin text{fill:#e7f0fc;font-size:15px;font-weight:700;font-family:Inter, sans-serif}
.city-pin.active text{fill:#fff}

.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.service-card{padding:1.4rem;border-radius:20px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);box-shadow:var(--shadow)}
.service-icon{font-size:1.65rem;margin-bottom:.8rem}
.service-card h3{margin-bottom:.55rem;font-size:1.15rem}
.service-card p{color:var(--muted);font-size:.96rem}

.feature-list{list-style:none;margin-top:1rem;display:grid;gap:.75rem}
.feature-list li{position:relative;padding-left:1.4rem;color:#dae5f4}
.feature-list li::before{content:"";position:absolute;left:0;top:.65rem;width:.55rem;height:.55rem;border-radius:50%;background:linear-gradient(180deg,var(--gold-soft),var(--gold))}

.newsletter-shell{padding:1.4rem;display:grid;grid-template-columns:1.2fr 1fr;gap:1.2rem;align-items:center}
.newsletter-form{display:flex;gap:.8rem;align-items:center}
.newsletter-form input{flex:1}

.site-footer{margin-top:1rem;border-top:1px solid var(--line);background:rgba(4,10,18,.85)}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:1.5rem;padding:2.4rem 0}
.site-footer h3,.site-footer h4{margin-bottom:.7rem}
.site-footer p,.site-footer li{color:var(--muted)}
.site-footer ul{list-style:none;display:grid;gap:.5rem}
.footer-bottom{text-align:center;color:#9db0c6;padding:1rem;border-top:1px solid var(--line)}

.page-hero{padding:4rem 0 2rem;background:linear-gradient(180deg, rgba(13,30,51,.52), rgba(7,17,31,.2))}
.page-panels{display:grid;gap:1.2rem}
.page-panel{padding:1.35rem}
.page-panel h3{margin-bottom:.5rem}
.route-list,.flight-list,.cargo-list{display:grid;gap:1rem;margin-top:1rem}
.route-item,.flight-item,.cargo-item{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1rem;border-radius:18px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07)}
.badge{display:inline-flex;padding:.42rem .7rem;border-radius:999px;background:rgba(244,180,0,.14);color:var(--gold-soft);font-size:.85rem;font-weight:800}
.small{font-size:.92rem;color:var(--muted)}
.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:1.4rem}
textarea{min-height:150px;resize:vertical}

.fade-up{opacity:0;transform:translateY(20px);animation:fadeUp .8s ease forwards}
.delay-1{animation-delay:.12s}.delay-2{animation-delay:.24s}.delay-3{animation-delay:.36s}
@keyframes fadeUp{to{opacity:1;transform:translateY(0)}}

@media (max-width: 1080px){
  .hero-grid,.split-grid,.contact-grid,.newsletter-shell,.service-grid,.footer-grid{grid-template-columns:1fr 1fr}
  .service-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width: 860px){
  .menu-toggle{display:block}
  .site-nav{display:none;position:absolute;right:1rem;top:76px;flex-direction:column;align-items:flex-start;padding:1rem;background:rgba(7,17,31,.98);border:1px solid var(--line);border-radius:18px;min-width:220px;box-shadow:var(--shadow)}
  .site-nav.open{display:flex}
  .hero-grid,.split-grid,.contact-grid,.newsletter-shell,.footer-grid,.metrics-grid{grid-template-columns:1fr}
  .booking-card{order:2}
  .hero-copy{order:1}
  .service-grid{grid-template-columns:1fr}
  .newsletter-form{flex-direction:column;align-items:stretch}
  .reverse-mobile > :first-child{order:2}
  .reverse-mobile > :last-child{order:1}
}
@media (max-width: 640px){
  .hero{padding-top:2.4rem}
  .hero-grid{min-height:auto}
  .hero-copy h1{max-width:13ch}
  .form-grid.two,.form-grid.three{grid-template-columns:1fr}
  .route-item,.flight-item,.cargo-item{flex-direction:column;align-items:flex-start}
  .container{width:min(var(--max), calc(100% - 1.2rem))}
}
