/* Shared site header + footer. Single source: scripts/site-chrome/{nav,footer}.html,
   stamped into pages by scripts/site-chrome/apply.js. Design reference: homepage.
   Everything is prefixed .ac- / #ac- so page CSS cannot collide with it. */
.ac-nav,.ac-mobile-menu,.ac-footer{--accent:#e53935;--accent-hover:#c62828;--muted:#999;--border:#1a1a1a;--radius:16px;font-family:'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;line-height:1.7;-webkit-font-smoothing:antialiased}
.ac-nav *,.ac-mobile-menu *,.ac-footer *{box-sizing:border-box}
.ac-container{width:100%;max-width:1320px;margin:0 auto;padding:0 24px}

/* Header: fixed bar + spacer so it never covers page content */
.ac-nav{position:fixed;top:0;left:0;right:0;z-index:1000;padding:14px 0;background:rgba(10,10,10,.95);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}
.ac-nav-spacer{display:block;height:93px}
.ac-nav .ac-nav-inner{display:flex;align-items:center;justify-content:space-between;gap:16px}
.ac-nav .ac-nav-logo{display:flex;align-items:center;text-decoration:none;font-size:1.6rem;font-weight:800;letter-spacing:-.02em;color:#fff}
.ac-nav .ac-nav-links{display:flex;align-items:center;gap:24px}
.ac-nav .ac-nav-links a{font-size:1.05rem;color:var(--muted);text-decoration:none;transition:color .2s;white-space:nowrap}
.ac-nav .ac-nav-links a:hover{color:#fff}
.ac-nav .ac-nav-cta{padding:9px 20px;background:var(--accent);border-radius:var(--radius);font-weight:600;font-size:.82rem;color:#fff;text-decoration:none;transition:background .25s;white-space:nowrap}
.ac-nav .ac-nav-cta:hover{background:var(--accent-hover)}
.ac-nav .ac-hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:8px;min-width:44px;min-height:44px;align-items:center;justify-content:center}
.ac-nav .ac-hamburger span{width:24px;height:2px;background:#fff;display:block}
.ac-mobile-menu{display:none;position:fixed;inset:0;background:rgba(10,10,10,.98);z-index:1001;flex-direction:column;align-items:center;justify-content:center;gap:32px}
.ac-mobile-menu.open{display:flex}
.ac-mobile-menu a{font-size:1.4rem;font-weight:600;color:#fff;text-decoration:none}
.ac-mobile-menu .ac-mobile-close{position:absolute;top:20px;right:24px;background:none;border:none;color:#fff;font-size:2rem;cursor:pointer;min-width:44px;min-height:44px}
@media(max-width:1200px){.ac-nav .ac-nav-links{gap:14px}.ac-nav .ac-nav-links a{font-size:.92rem}#nav-user-wrap{gap:8px}}
@media(max-width:768px){.ac-nav .ac-nav-links{display:none}.ac-nav .ac-hamburger{display:flex}.ac-nav .ac-nav-cta{padding:8px 12px;font-size:.75rem}.ac-nav .ac-nav-logo img{height:48px!important}#nav-user-wrap{display:none!important}.ac-nav-spacer{height:77px}}

/* Footer */
.ac-footer{display:block;clear:both;position:relative;background:#060606;color:#fff;border-top:1px solid var(--border);padding:60px 0 40px;margin:64px 0 0;text-align:left}
.ac-footer a{text-decoration:none}
.ac-footer .ac-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:48px}
.ac-footer .ac-footer-brand p{margin:12px 0 0;font-size:.85rem;max-width:280px;color:var(--muted);line-height:1.7}
.ac-footer .ac-footer-brand .ac-footer-email{color:var(--accent);font-size:.85rem;margin-top:8px;display:inline-block}
.ac-footer .ac-footer-col h4{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;margin:0 0 16px;color:#fff}
.ac-footer .ac-footer-col a{display:block;font-size:.85rem;color:var(--muted);padding:4px 0;transition:color .2s}
.ac-footer .ac-footer-col a:hover{color:#fff}
.ac-footer .ac-footer-bottom{display:flex;align-items:center;justify-content:space-between;padding-top:32px;border-top:1px solid var(--border)}
.ac-footer .ac-footer-bottom p{font-size:.8rem;color:var(--muted);margin:0}
.ac-footer .ac-social-links{display:flex;gap:16px}
.ac-footer .ac-social-links a{color:var(--muted);transition:color .2s}
.ac-footer .ac-social-links a:hover{color:#fff}
.ac-footer .ac-social-links svg{width:20px;height:20px}
.ac-footer img{max-width:100%;display:block}
@media(max-width:1024px){.ac-footer .ac-footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:768px){.ac-footer .ac-footer-grid{grid-template-columns:1fr}.ac-footer .ac-footer-bottom{flex-direction:column;gap:16px;text-align:center}}
