/*
Theme Name: Kilroy Flight Academy Test
Theme URI: https://bbf9pprwwy.wpdns.site/
Author: Hensley Elam
Description: Test landing page theme for the GHL-hosted Kilroy Flight Academy WordPress site.
Version: 0.1.0
Text Domain: kilroy-flight-academy-test
*/

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#f7f8fb;color:#111827;font-family:"DM Sans",Arial,sans-serif;line-height:1.55}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{width:min(1180px,calc(100% - 40px));margin-inline:auto}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(16px);border-bottom:1px solid #e4e8ef}
.topbar{height:34px;background:#07162f;color:#dbeafe;display:flex;align-items:center;justify-content:space-between;padding-inline:max(20px,calc((100% - 1180px)/2));font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.topbar a{color:#fff}
.nav{min-height:84px;display:flex;align-items:center;gap:26px}
.brand{width:238px;flex:0 0 auto}
.nav-links{display:flex;align-items:center;gap:24px;margin-left:auto;font-size:14px;font-weight:800;color:#253044}
.nav-links a:hover,.text-link:hover{color:#b91c1c}
.menu-toggle{display:none;border:1px solid #d6dce7;background:#fff;color:#07162f;border-radius:4px;padding:10px 12px;font:800 12px "DM Sans";text-transform:uppercase;letter-spacing:.08em}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:14px 20px;border-radius:4px;border:1px solid transparent;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;transition:transform .18s ease,background .18s ease,border-color .18s ease}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:#b91c1c;color:#fff;box-shadow:0 12px 28px rgba(185,28,28,.24)}
.btn-primary:hover{background:#991b1b}
.btn-secondary{background:rgba(255,255,255,.94);color:#07162f;border-color:#fff}
.btn-light{background:#fff;color:#07162f}
.text-link{font-weight:900;color:#b91c1c}
.hero{position:relative;min-height:720px;display:flex;align-items:center;overflow:hidden;background:#07162f;color:#fff}
.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.hero-scrim{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,22,47,.94) 0%,rgba(7,22,47,.78) 40%,rgba(7,22,47,.25) 100%),linear-gradient(180deg,rgba(7,22,47,.28),rgba(7,22,47,.6))}
.hero-content{position:relative;z-index:2;padding-block:82px}
.eyebrow{margin:0 0 16px;color:#b91c1c;font-size:12px;font-weight:900;letter-spacing:.18em;text-transform:uppercase}
.hero .eyebrow{color:#fca5a5}
h1,h2,h3,p{overflow-wrap:anywhere}
h1{max-width:820px;margin:0;font:800 clamp(54px,8vw,98px)/.9 "Space Grotesk";letter-spacing:0}
h2{margin:0;font:800 clamp(36px,5vw,64px)/.98 "Space Grotesk";letter-spacing:0}
h3{margin:0;font:800 24px/1.1 "Space Grotesk";letter-spacing:0}
.lead{max-width:650px;margin:28px 0 0;color:#e9eef7;font-size:20px}
.hero-actions{display:flex;gap:14px;margin-top:36px;flex-wrap:wrap}
.hero-notes{display:flex;flex-wrap:wrap;gap:10px;margin-top:36px}
.hero-notes span{border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.08);padding:8px 10px;border-radius:4px;color:#f8fafc;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.flag-strip{background:#fff;border-block:1px solid #e4e8ef}
.flag-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.flag-grid div{min-height:92px;padding:22px 20px;border-right:1px solid #e4e8ef;display:flex;flex-direction:column;justify-content:center;gap:4px}
.flag-grid div:first-child{border-left:1px solid #e4e8ef}
.flag-grid strong{color:#b91c1c;font-size:12px;letter-spacing:.14em}
.flag-grid span{font-weight:900;color:#172033}
.section{padding:104px 0}
.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:start}
.copy-stack{display:grid;gap:18px;color:#4b5563;font-size:18px}
.copy-stack p{margin:0}
.navy{background:#07162f;color:#fff}
.navy .eyebrow{color:#93c5fd}
.feature-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}
.image-panel{background:linear-gradient(135deg,#10234a,#0a1430);border:1px solid rgba(255,255,255,.16);border-radius:6px;padding:24px;min-height:430px;display:flex;align-items:center}
.feature-copy p{color:#d8e2ef;font-size:18px}
.availability-note{padding:16px 18px;border-left:4px solid #ef4444;background:rgba(255,255,255,.08);font-weight:700}
.training{background:#f1f5f9}
.section-heading{max-width:760px;margin-bottom:46px}
.section-heading p:not(.eyebrow){color:#4b5563;font-size:18px}
.section-heading.compact{margin-bottom:28px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.program-card{background:#fff;border:1px solid #dbe3ee;border-radius:6px;padding:28px;min-height:230px;box-shadow:0 16px 40px rgba(15,23,42,.05)}
.program-card span{display:inline-block;margin-bottom:36px;color:#b91c1c;font-weight:900;font-size:12px;text-transform:uppercase;letter-spacing:.12em}
.program-card p{color:#5b6472;margin-bottom:0}
.patriotic{background:linear-gradient(135deg,#fff 0%,#f7f9fc 45%,#eef4ff 100%);position:relative}
.patriotic:before{content:"";position:absolute;inset:0 0 auto;height:10px;background:linear-gradient(90deg,#b91c1c 0 33.33%,#fff 33.33% 66.66%,#1d4ed8 66.66% 100%)}
.locations{background:#fff}
.location-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.location-card{border:1px solid #dbe3ee;border-radius:6px;padding:30px;background:#fff;box-shadow:0 16px 40px rgba(15,23,42,.05)}
.location-card p{color:#4b5563;font-size:17px}
.location-card a{font-size:20px;font-weight:900;color:#b91c1c}
.book{background:#eaf0f8}
.booking-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:54px;align-items:start}
.booking-grid p{color:#4b5563;font-size:18px}
.contact-lines{display:grid;gap:10px;margin-top:24px;font-weight:900;color:#07162f}
.widget-stack{display:grid;gap:16px}
.widget-stack iframe{background:#fff;border-radius:6px;box-shadow:0 16px 40px rgba(15,23,42,.08)}
.widget-stack iframe:first-child{min-height:720px}
.footer{background:#07162f;color:#e2e8f0;padding:68px 0 24px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.2fr;gap:50px}
.footer img{width:245px;margin-bottom:18px}
.footer p{max-width:420px;color:#b8c5d8}
.footer strong{display:block;margin-bottom:14px;color:#fff;font-size:12px;letter-spacing:.16em;text-transform:uppercase}
.footer a{display:block;margin:9px 0;color:#dbeafe}
.footer-bottom{border-top:1px solid rgba(255,255,255,.14);margin-top:44px;padding-top:20px;display:flex;gap:20px;justify-content:space-between;color:#9fb0c8;font-size:12px}
@media(max-width:960px){.topbar{display:none}.nav{min-height:72px}.brand{width:190px}.menu-toggle{display:inline-flex;margin-left:auto}.nav-links{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;border-bottom:1px solid #e4e8ef;padding:20px;flex-direction:column;align-items:flex-start}.nav-links.open{display:flex}.nav-cta{display:none}.hero{min-height:650px}.hero-scrim{background:linear-gradient(90deg,rgba(7,22,47,.92),rgba(7,22,47,.72))}.flag-grid,.cards{grid-template-columns:repeat(2,1fr)}.split,.feature-grid,.booking-grid{grid-template-columns:1fr;gap:42px}}
@media(max-width:640px){.container{width:min(100% - 28px,1180px)}.section{padding:76px 0}.hero{min-height:620px}h1{font-size:48px}h2{font-size:38px}.lead{font-size:18px}.hero-actions{display:grid}.flag-grid,.cards,.location-grid,.footer-grid{grid-template-columns:1fr}.flag-grid div,.flag-grid div:first-child{border-left:0;border-right:0;border-bottom:1px solid #e4e8ef}.footer-bottom{flex-direction:column}.widget-stack iframe:first-child{min-height:680px}}
