/* css1 - Corporate Aero Blue Theme
	 Goals: Clean corporate feel, layered depth, accessible contrast, large hero
*/

:root {
	--c-bg: #f5f9fc;
	--c-surface: #ffffff;
	--c-border: #d9e2ec;
	--c-accent: #e8193d;
	--c-accent-alt: #ff4f74;
	--c-primary: #0b3d91;
	--c-primary-alt: #0b5fa5;
	--c-text: #0f2740;
	--c-muted: #5a7188;
	--radius-sm: 6px; --radius-md: 12px; --radius-lg: 28px;
	--shadow-sm: 0 2px 4px rgba(15,40,70,.06), 0 1px 2px rgba(15,40,70,.08);
	--shadow-lg: 0 20px 40px -18px rgba(15,40,70,.25),0 6px 16px -6px rgba(15,40,70,.18);
}

html, body { background: linear-gradient(140deg,#ffffff,#eef5fb 55%,#e3eef7); color: var(--c-text); }

header.top-bar { background: var(--c-surface); border:1px solid var(--c-border); box-shadow: var(--shadow-sm); border-radius: var(--radius-lg); margin:18px auto 8px; width: calc(100% - 56px); padding:16px 34px; }
header .logo { color: var(--c-primary); font-weight:700; letter-spacing:.5px; }
header .logo:hover { color: var(--c-primary-alt); }
header .badges { gap:14px; }

.hero { min-height:600px; }
.hero .overlay { position:relative; display:flex; gap:70px; background: linear-gradient(115deg,var(--c-primary) 0%,var(--c-primary-alt) 60%); border-radius: var(--radius-lg); padding:86px 80px 110px; overflow:hidden; align-items:flex-start; }
.hero .overlay:before { content:""; position:absolute; inset:0; background: radial-gradient(circle at 80% 30%,rgba(255,255,255,.25),rgba(255,255,255,0) 55%); mix-blend-mode:overlay; }
.hero-content h1 { font-size:66px; line-height:1.03; letter-spacing:-1.4px; background: linear-gradient(90deg,#fff,#dbeafe 55%,#ffffff); -webkit-background-clip:text; background-clip:text; color:transparent; filter: drop-shadow(0 8px 22px rgba(0,0,0,.22)); }
.features { gap:16px; margin-bottom:28px; }
.features li { background:rgba(255,255,255,.16); border:1px solid rgba(255,255,255,.28); padding:12px 18px; font-size:13px; letter-spacing:.7px; font-weight:600; border-radius: var(--radius-md); backdrop-filter: blur(4px); transition:.35s; }
.features li:hover { transform:translateY(-4px); background:rgba(255,255,255,.24); }

.call-box.main { background: linear-gradient(135deg,var(--c-accent),var(--c-accent-alt)); border:1px solid rgba(255,255,255,.45); box-shadow:0 14px 38px -12px rgba(232,25,61,.55),0 4px 14px -4px rgba(0,0,0,.4); border-radius: var(--radius-md); margin-top:38px; align-self:flex-start; min-width:320px; }

/* Hero media block */
.hero-media { flex:0 0 520px; display:flex; align-items:center; justify-content:center; position:relative; z-index:2; margin-top:10px; }
.hero-media-inner { width:100%; max-width:520px; aspect-ratio: 20 / 13; background:linear-gradient(135deg,rgba(255,255,255,.24),rgba(255,255,255,.06)); border:1px solid rgba(255,255,255,.45); border-radius:40px; box-shadow:0 40px 90px -28px rgba(0,0,0,.55),0 14px 40px -18px rgba(0,0,0,.35); backdrop-filter:blur(10px); overflow:hidden; position:relative; }
.hero-media-inner:before { content:""; position:absolute; inset:0; background:radial-gradient(circle at 70% 30%,rgba(255,255,255,.35),transparent 60%); mix-blend-mode:overlay; }
.hero-media img { width:100%; height:100%; object-fit:cover; display:block; }

.ratings { gap:28px; }
.rating-card { border:1px solid rgba(255,255,255,.4); background: linear-gradient(165deg,rgba(255,255,255,.35),rgba(255,255,255,.12)); box-shadow:0 20px 44px -18px rgba(0,0,0,.4),0 6px 16px -6px rgba(0,0,0,.35); border-radius:22px; transition:.4s; }
.rating-card:hover { transform:translateY(-6px) scale(1.02); }

.sub-call { background: linear-gradient(90deg,var(--c-accent),var(--c-accent-alt)); box-shadow:0 10px 28px -10px rgba(232,25,61,.55); border:none; margin-top:28px; }

.search-box { background: linear-gradient(135deg,#f0f5fa,#ffffff); }
.flight-form { background: var(--c-surface); border:1px solid var(--c-border); box-shadow: var(--shadow-lg); padding:42px 48px; border-radius:32px; grid-template-columns: repeat(auto-fit,minmax(190px,1fr)); gap:26px; }
.flight-form label { color: var(--c-muted); font-weight:700; font-size:11px; letter-spacing:.8px; }
.flight-form input, .flight-form select { background:#fff; border:1px solid #c5d3df; border-radius:14px; padding:14px 16px; font-size:15px; transition:.25s; }
.flight-form input:focus, .flight-form select:focus { outline:none; border-color: var(--c-primary); box-shadow:0 0 0 3px rgba(11,61,145,.25); }
.flight-form button { background: linear-gradient(135deg,var(--c-accent),var(--c-accent-alt)); border:none; border-radius:16px; font-size:16px; font-weight:600; letter-spacing:.6px; box-shadow:0 10px 30px -10px rgba(232,25,61,.55); }
.flight-form button:hover { transform:translateY(-3px); }
.flight-form button:active { transform:translateY(0); }
.passenger-dropdown { border-radius:18px; }

.benefits { background: linear-gradient(180deg,#ffffff,#eef4f9); gap:80px; padding-top:100px; }
.benefit { background: #fff; border:1px solid var(--c-border); padding:36px 34px; border-radius:28px; box-shadow:0 24px 54px -20px rgba(15,40,70,.25),0 10px 26px -14px rgba(15,40,70,.18); position:relative; overflow:hidden; }
.benefit:before { content:""; position:absolute; inset:0; background: radial-gradient(circle at 78% 22%,rgba(11,61,145,.12),transparent 72%); }
.benefit h3 { font-size:20px; color: var(--c-primary); }
.benefit .icon { font-size:50px; margin-bottom:18px; }
.benefit:hover { transform:translateY(-8px); box-shadow:0 32px 70px -24px rgba(15,40,70,.28); }

footer.site-footer { background:#072646; position:relative; border-top:4px solid var(--c-primary); }
footer.site-footer:before { content:""; position:absolute; inset:0; background: radial-gradient(circle at 20% 12%,rgba(255,255,255,.12),transparent 70%); }
footer.site-footer a { color:#fff; }

/* Searching overlay adjustments */
.searching-overlay { background: rgba(11,61,145,.92); }
.searching-spinner { border-top-color: var(--c-accent); }
.progress-fill { background: linear-gradient(90deg,var(--c-accent),var(--c-accent-alt)); }

/* Responsive */
@media (max-width:1220px){ .hero .overlay { padding:80px 70px 110px; gap:54px; } .hero-media { flex:0 0 480px; } .hero-media-inner { max-width:480px; } }
@media (max-width:1080px){ .hero-content h1 { font-size:58px; } .hero-media { flex:0 0 440px; } }
@media (max-width:940px){ .hero .overlay { flex-direction:column; padding:80px 70px 120px; } .hero-media { order:2; max-width:600px; flex:1 1 auto; } .call-box.main { margin-top:34px; } }
@media (max-width:720px){ .hero-content h1 { font-size:46px; } .hero .overlay { padding:60px 40px 90px; } .flight-form { padding:34px 30px; grid-template-columns: repeat(auto-fit,minmax(170px,1fr)); } .benefits { gap:50px; padding-top:80px; } }
@media (max-width:560px){ .hero-content h1 { font-size:40px; } .hero .overlay { padding:54px 30px 70px; display:flex; flex-direction:column; gap:40px; } .hero-media-inner { max-width:100%; } .call-box.main { width:100%; min-width:0; justify-content:center; } .flight-form { padding:30px 24px; gap:20px; } header.top-bar { margin-top:14px; } }
@media (max-width:420px){ .hero-content h1 { font-size:34px; } .flight-form { padding:26px 20px; } }
