/* layout.css — site header, footer, page shell. */
.site-header{position:relative;z-index:20}
.header-inner{display:flex;align-items:center;gap:var(--s-5);max-width:1400px;margin:0 auto;padding:var(--s-4) var(--gutter)}
.brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--text-0);flex:none}
.brand-mark{width:44px;height:50px;filter:drop-shadow(0 0 8px rgba(120,220,255,.35))}
.brand-words{display:flex;flex-direction:column;gap:4px}
.brand-name{font-size:1.15rem;font-weight:300;letter-spacing:.38em;text-transform:uppercase;line-height:1}
.brand-tagline{font-size:.6rem;letter-spacing:.42em;text-transform:uppercase;color:var(--text-2);line-height:1}
.nav-toggle{display:none}
.site-menu{display:flex;align-items:center;gap:var(--s-5);flex:1}
.site-nav ul{display:flex;gap:var(--s-5);list-style:none;margin:0;padding:0}
.site-nav a{display:inline-block;padding:10px 2px;color:var(--text-1);text-decoration:none;font-size:var(--fs-sm)}
.site-nav a:hover,.site-nav a[aria-current="page"]{color:#fff;text-shadow:0 0 12px rgba(150,230,255,.6)}
.site-nav a[aria-current="page"]{box-shadow:inset 0 -2px 0 var(--accent-cyan-bright)}
.header-search{position:relative;margin-left:auto;width:min(260px,100%)}
.header-search .search-icon{position:absolute;left:14px;top:50%;width:17px;height:17px;transform:translateY(-50%);pointer-events:none;opacity:.85}
.header-search input{width:100%;height:42px;padding:0 16px 0 42px;border-radius:var(--r-pill);border:1px solid var(--line-soft);background:rgba(6,16,30,.6);font-size:var(--fs-xs);color:var(--text-0)}
.header-search input::placeholder{color:var(--text-3)}
.header-search input:hover{border-color:var(--line-glass)}
.page-main{max-width:1100px;margin:0 auto;padding:var(--s-6) var(--gutter) var(--s-8)}
.breadcrumb ol{display:flex;flex-wrap:wrap;gap:var(--s-2);list-style:none;margin:0 0 var(--s-5);padding:0;font-size:var(--fs-sm);color:var(--text-3)}
.breadcrumb li+li::before{content:"›";margin-right:var(--s-2);color:var(--text-3)}
.breadcrumb a{color:var(--text-2)}
.site-footer{border-top:1px solid var(--line-soft);background:linear-gradient(180deg,rgba(4,10,20,.6),rgba(2,6,14,.95))}
.footer-inner{display:grid;grid-template-columns:1.1fr 1.4fr 1.5fr;gap:var(--s-6);max-width:1400px;margin:0 auto;padding:var(--s-7) var(--gutter) var(--s-5)}
.footer-brand{display:flex;gap:14px;align-items:flex-start}
.footer-brand img{width:40px;height:45px}
.footer-name{color:var(--text-0);letter-spacing:.3em;text-transform:uppercase;font-weight:300}
.footer-tag{color:var(--text-2);font-size:var(--fs-sm)}
.footer-nav{display:flex;gap:var(--s-7)}
.footer-heading{font-size:var(--fs-xs);letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--text-2);margin-bottom:var(--s-3);font-weight:500}
.footer-col ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.footer-col a{color:var(--text-1);text-decoration:none;display:inline-block;padding:4px 0}
.footer-col a:hover,.footer-col a[aria-current="page"]{color:#fff;text-decoration:underline}
.truth-key{list-style:none;margin:0 0 var(--s-3);padding:0;display:grid;gap:8px;font-size:var(--fs-sm)}
.footer-note{font-size:var(--fs-sm);color:var(--text-2);margin-bottom:var(--s-3)}
.footer-copy{grid-column:1/-1;border-top:1px solid var(--line-soft);padding-top:var(--s-4);font-size:var(--fs-xs);color:var(--text-3)}
