/* ============================================================
   RenegadeAir shared site chrome: the header (nav) and footer.
   Mirrors the homepage exactly so every inner page matches it.
   Depends on ../shared/tokens.css. No em dashes anywhere.
   ============================================================ */

/* scroll progress bar */
#prog{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,var(--lime-l),var(--lime));z-index:1500}

/* nav (floating glass pill, transparent until scroll) */
nav{position:fixed;top:0;left:0;right:0;z-index:600;display:flex;align-items:center;justify-content:space-between;padding:20px clamp(18px,4vw,52px)}
.nav-inner{position:absolute;inset:12px clamp(14px,3vw,40px) auto;height:64px;border-radius:60px;background:var(--glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-line);box-shadow:0 16px 40px -22px rgba(20,30,8,.5);z-index:-1;opacity:0;transition:opacity .5s}
nav.solid .nav-inner{opacity:1}
.brand{display:flex;align-items:center;gap:12px;font-family:var(--font-display);font-size:1.5rem;color:var(--ink)}
.brand-logo{height:30px;width:auto;display:block}
.navlinks{display:flex;gap:28px;font-size:.82rem;font-weight:500}
.navlinks a{position:relative;padding:4px 0;color:var(--ink);opacity:.8;transition:opacity .3s}
.navlinks a:hover{opacity:1}
.navlinks a:after{content:"";position:absolute;left:0;bottom:0;height:1.5px;width:0;background:var(--lime);transition:width .35s}
.navlinks a:hover:after,.navlinks a.on:after{width:100%}
.navlinks a.on{opacity:1}
.navcta{display:flex;align-items:center;gap:12px}
.cur-tog{display:flex;background:var(--lime-soft);border-radius:30px;padding:3px;font-family:var(--font-mono)}
.cur-tog button{background:none;border:none;color:var(--ink);font-family:var(--font-mono);font-size:.68rem;letter-spacing:.06em;padding:7px 11px;border-radius:24px;cursor:none;transition:.3s}
.cur-tog button.on{background:var(--lime);color:#fff}

/* buttons (shared base) */
.btn{font-family:var(--font-body);font-size:.82rem;font-weight:600;padding:12px 22px;border-radius:40px;transition:background .3s,color .3s,border-color .3s;cursor:none;border:1px solid transparent;display:inline-block;will-change:transform}
.btn-ghost{border-color:var(--line2);color:var(--ink)}
.btn-ghost:hover{border-color:var(--lime);background:var(--lime-soft)}
.btn-solid{background:var(--lime);color:#fff}
.btn-solid:hover{background:var(--olive)}
.menu-tog{display:none;background:none;border:none;flex-direction:column;gap:5px;cursor:none}
.menu-tog span{width:24px;height:1.6px;background:var(--ink)}

/* footer */
footer{background:var(--ink);color:#cfe0d6;padding:80px 0 36px;margin-top:0}
footer .wrap{max-width:1280px;margin:0 auto;padding:0 clamp(18px,5vw,56px)}
.fnews{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;padding-bottom:48px;margin-bottom:48px;border-bottom:1px solid rgba(255,255,255,.12)}
.fnews h3{font-size:clamp(1.8rem,3.5vw,2.6rem);color:#fff;font-family:var(--font-display);font-weight:400}
.fnews h3 .ital{color:var(--on-dark)}
.fnews .form{display:flex;gap:10px}
.fnews input{flex:1;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:14px;padding:15px 18px;color:#fff;font-family:var(--font-body);font-size:.95rem;cursor:none}
.fnews input::placeholder{color:#8ba06d}
.fnews .nb{background:var(--on-dark);color:var(--ink);border:none;border-radius:14px;padding:0 26px;font-family:var(--font-body);font-weight:600;cursor:none;transition:.3s}
.fnews .nb:hover{background:#fff}
.fnews .ok{color:var(--on-dark);font-family:var(--font-mono);font-size:.74rem;letter-spacing:.06em;margin-top:10px;opacity:0;transition:.4s}
.fnews .ok.show{opacity:1}
.fgrid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1.3fr;gap:40px;margin-bottom:40px}
.fbrand{display:flex;align-items:center;gap:12px;font-family:var(--font-display);font-size:1.7rem;color:#fff;margin-bottom:14px}
.fbrand-logo{height:38px;width:auto;display:block}
.fcol p,.fcol a{display:block;color:#a9c2b5;font-size:.92rem;margin-bottom:11px;transition:color .3s;max-width:34ch;line-height:1.65}
.fcol a:hover{color:#fff}
.fcol h4{font-family:var(--font-mono);font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:#8ba06d;margin-bottom:18px}
.appbtn{display:inline-flex;align-items:center;gap:10px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:12px;padding:10px 16px;margin-top:6px;transition:.3s}
.appbtn:hover{background:rgba(255,255,255,.14)}
.appbtn svg{width:20px;height:20px;color:var(--on-dark)}
.appbtn div{line-height:1.1}.appbtn .s{font-size:.56rem;color:#8ba06d;font-family:var(--font-mono);letter-spacing:.1em}.appbtn .b{color:#fff;font-weight:600;font-size:.92rem}
.fbottom{border-top:1px solid rgba(255,255,255,.12);padding-top:24px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-family:var(--font-mono);font-size:.72rem;color:#8ba06d}
.fsoc{display:flex;gap:10px}
.fsoc a{width:34px;height:34px;border-radius:50%;border:1px solid rgba(255,255,255,.18);display:grid;place-items:center;color:#a0b282;transition:.3s}
.fsoc a:hover{background:var(--on-dark);color:var(--ink);border-color:var(--on-dark)}
.fsoc svg{width:16px;height:16px}

/* sign in modal */
.modal{position:fixed;inset:0;z-index:1000;display:none;place-items:center;background:rgba(20,30,8,.45);backdrop-filter:blur(8px)}
.modal.show{display:grid}
.mcard{width:min(440px,92vw);background:var(--white);border-radius:var(--r-lg);padding:40px;position:relative;box-shadow:var(--shadow)}
.mcard h3{font-size:1.9rem;color:var(--ink);font-family:var(--font-display);font-weight:400}
.mcard .sub{color:var(--muted);font-size:.9rem;margin:6px 0 24px}
.roletabs{display:flex;gap:6px;margin-bottom:22px}
.roletabs button{flex:1;background:var(--soft);border:none;color:var(--ink);padding:11px 4px;border-radius:12px;font-family:var(--font-body);font-weight:500;font-size:.74rem;cursor:none;transition:.3s}
.roletabs button.on{background:var(--lime);color:#fff}
.minput{width:100%;background:var(--paper);border:1px solid var(--line2);border-radius:12px;padding:14px 16px;font-family:var(--font-body);margin-bottom:13px;font-size:.95rem;color:var(--ink);cursor:none}
.minput::placeholder{color:#9fb083}
.mbtn{width:100%;background:var(--lime);color:#fff;border:none;border-radius:12px;padding:15px;font-family:var(--font-body);font-weight:600;cursor:none;margin-top:4px}
.mclose{position:absolute;top:18px;right:20px;background:none;border:none;color:var(--muted);font-size:1.5rem;cursor:none}
.mfoot{text-align:center;color:var(--muted);font-size:.86rem;margin-top:18px}
.mfoot a{color:var(--lime);font-weight:600}

@media(max-width:980px){.navlinks,.navcta .btn-ghost,.navcta .cur-tog{display:none}.menu-tog{display:flex}}
@media(max-width:900px){.fnews,.fgrid{grid-template-columns:1fr}}
