/* Red, white, and navy accents inspired by presidential aviation. */
:root{--bg:#f7f8fa;--surface:#ffffff;--ink:#101e35;--muted:#4e5a6c;--line:#d8dee7;--accent:#a52236;--accent-ink:#ffffff;--band:#101e35;--band-ink:#ffffff}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#0c1423;--surface:#152238;--ink:#f5f7fb;--muted:#b7c1d1;--line:#34425a;--accent:#ffa9b5;--accent-ink:#24101a;--band:#101e35;--band-ink:#ffffff}}
:root[data-theme="dark"]{--bg:#0c1423;--surface:#152238;--ink:#f5f7fb;--muted:#b7c1d1;--line:#34425a;--accent:#ffa9b5;--accent-ink:#24101a;--band:#101e35;--band-ink:#ffffff}
header{border-bottom:4px solid #a52236}
header nav a:hover,header nav a[aria-current="page"]{color:#a52236;text-decoration:underline;text-underline-offset:6px}
.hero{position:relative;padding:76px 0 72px;margin-bottom:48px;background:linear-gradient(90deg,rgba(10,23,43,.97),rgba(10,23,43,.86) 48%,rgba(10,23,43,.38)),var(--hero-image) center var(--hero-position,68%)/cover;color:#ffffff;border-bottom:6px solid #a52236}
.hero .wrap{position:relative}
.hero h1{max-width:19ch}
.hero p{color:#edf1f8;max-width:55ch}
.hero p.eyebrow{color:#fff;letter-spacing:.14em}
.hero .btn{background:#a52236;color:#fff;border:1px solid #d46273}
.hero .btn:hover{background:#87192b;filter:none}
.hero a:focus-visible{outline-color:#fff}
.hero .section-links a{color:#fff}
.card{border-top:3px solid var(--accent)}
.contact-panel{border-top-color:#a52236}
.band{border-top:4px solid #a52236}
.band .btn{background:#fff;color:#101e35}
.story-photo{margin:0 0 28px;overflow:hidden;border-radius:6px;background:var(--surface);border-bottom:4px solid #a52236}
.story-photo img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center 60%}
.story-photo figcaption{padding:12px 16px;font-size:.85rem;color:var(--muted)}
.about-photo{float:right;width:36%;margin:0 0 28px 36px}
#about .wrap::after{content:"";display:block;clear:both}
footer{border-top:3px solid var(--line)}
@media(max-width:700px){.hero{padding:48px 0;margin-bottom:32px;background-position:center}.hero h1{font-size:clamp(2rem,8vw,3rem)}.about-photo{float:none;width:100%;max-width:440px;margin:0 0 28px}.story-photo img{aspect-ratio:3/2}}

.photo-credit{font-size:.75rem;margin-top:16px}

.page-home{--hero-image:url('/img/a350-wing.jpg')}
.page-services{--hero-image:url('/img/services-city.jpg');--hero-position:65%}
.page-contact{--hero-image:url('/img/city-architecture.jpg');--hero-position:50%}

.page-process{--hero-image:url('/img/process-wingtip.jpg');--hero-position:42%}
.page-process .hero h1{max-width:16ch}
.page-process .eyebrow{font-size:.85rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.page-process .detail{padding-top:0}
.page-process .reference{margin-top:24px;font-size:.9rem}
@media(max-width:700px){.page-process .hero{background-position:70% center}}

.page-about{--hero-image:url('/img/about-team.jpg');--hero-position:55%}
.page-about .eyebrow{font-size:.85rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.page-about .detail{padding-top:0}
.about-layout{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:48px;align-items:start}
.about-emblem{border-top:3px solid #a52236;padding:28px 18px;background:var(--surface);border-radius:6px;text-align:center}
.about-emblem figure{margin:0}
.about-emblem img{display:block;width:144px;height:144px;max-width:100%;margin:0 auto 18px}
.about-emblem figcaption{font-size:.8rem;color:var(--muted);line-height:1.5}
@media(max-width:700px){.about-layout{grid-template-columns:1fr;gap:24px}.about-emblem{max-width:260px;width:100%}.page-about .hero{background-position:65% center}}

.footer-flags{display:flex;flex-wrap:wrap;align-items:center;gap:16px;list-style:none;padding:0;margin:0 0 20px}
.footer-flags img{display:block;width:36px;height:24px;object-fit:contain}
