:root{
  --black:#05070a; --blue:#0b1f33; --blue2:#102a43; --silver:#a7b0b8;
  --platinum:#d8dde2; --white:#f7f9fb; --accent:#6fb7df; --line:#35424d;
  --max:1100px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--black);color:var(--white);font-family:"Arial Narrow","Helvetica Neue",Arial,sans-serif;line-height:1.6}
.wrap{width:min(var(--max),calc(100% - 40px));margin:auto}
header{position:sticky;top:0;z-index:5;background:rgba(5,7,10,.97);border-bottom:1px solid var(--line)}
.nav{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.brand{color:var(--white);text-decoration:none;font-weight:800;letter-spacing:.19em;text-transform:uppercase}
.nav nav{display:flex;gap:28px}
.nav nav a{color:var(--silver);text-decoration:none;font-weight:700}
.nav nav a:hover,.nav nav a.active{color:var(--white)}
.hero{min-height:72vh;display:flex;align-items:center;background:linear-gradient(115deg,rgba(11,31,51,.94),rgba(5,7,10,.94) 62%);border-bottom:1px solid var(--line)}
.hero .wrap{padding:90px 0}
.eyebrow,.section-number{letter-spacing:.22em;font-size:.76rem;color:var(--accent);font-weight:800;text-transform:uppercase}
.hero h1,.page-hero h1{font-size:clamp(3.4rem,9vw,7rem);line-height:.92;margin:.13em 0;font-weight:900;letter-spacing:-.035em;text-transform:uppercase}
.subtitle{font-size:clamp(1.2rem,3vw,1.9rem);max-width:850px;color:var(--platinum)}
.intro{max-width:760px;color:var(--silver);font-size:1.08rem}
.button{display:inline-block;margin-top:22px;border:1px solid var(--platinum);padding:12px 19px;color:var(--white);text-decoration:none;text-transform:uppercase;font-size:.82rem;font-weight:800;letter-spacing:.12em}
.page-hero{background:linear-gradient(115deg,rgba(11,31,51,.94),rgba(5,7,10,.97) 68%);border-bottom:1px solid var(--line)}
.page-hero .wrap{padding:62px 0 54px}
.page-hero h1{font-size:clamp(2.8rem,7vw,5.4rem)}
.section{padding:68px 0}
.archive{max-width:900px}
.presentation{padding:30px 0 34px;border-bottom:1px solid var(--line)}
.presentation:first-of-type{padding-top:12px}
.presentation h2{margin:0 0 5px;font-size:clamp(1.55rem,3.2vw,2.2rem);line-height:1.25;text-transform:none;letter-spacing:0}
.summary{margin:0 0 13px;color:var(--platinum);font-size:1.08rem}
.file-links{display:flex;gap:22px;flex-wrap:wrap}
.file-links a{color:var(--accent);text-decoration:underline;text-underline-offset:3px;font-weight:700}
.placeholder{max-width:850px;border-top:3px solid var(--platinum);border-left:1px solid var(--line);border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:28px;background:#0a0f14;color:var(--silver)}
.contact a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
footer{padding:52px 0;border-top:1px solid var(--line);color:var(--silver);background:#030405}
footer strong{color:var(--white);letter-spacing:.17em}
.small{font-size:.82rem}
@media(max-width:760px){
 .nav{align-items:flex-start;flex-direction:column;padding:16px 0}
 .nav nav{gap:12px 20px;flex-wrap:wrap}
 .hero{min-height:auto}.hero .wrap{padding:72px 0}
 .page-hero .wrap{padding:48px 0 42px}
 .section{padding:54px 0}
}
.sources-page{max-width:900px}
.back-link{margin:0 0 28px}.back-link a{color:var(--accent);font-weight:700;text-decoration:none}
.source-section{margin:42px 0 18px;padding-bottom:9px;border-bottom:1px solid var(--line);font-size:1.5rem;text-transform:uppercase;letter-spacing:.05em}
.source-entry{margin:0 0 16px;color:var(--platinum);font-family:"Helvetica Neue",Arial,sans-serif;line-height:1.65}
.source-card{margin:0 0 26px;padding:24px 26px;background:#0a0f14;border-left:3px solid var(--accent);border-top:1px solid var(--line);border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.source-card .slide-number{margin:0;color:var(--accent);font-size:.78rem;font-weight:800;letter-spacing:.14em}
.source-card h2{margin:4px 0 17px;font-size:1.45rem;line-height:1.25}
.source-card h3{margin:17px 0 5px;color:var(--silver);font-size:.78rem;letter-spacing:.13em;text-transform:uppercase}
.source-card p{margin:0;color:var(--platinum);font-family:"Helvetica Neue",Arial,sans-serif;line-height:1.65}

/* V5: homepage emblem, About biography, and consistent source-page headers */
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,420px);align-items:center;gap:54px}
.hero-patch{display:flex;justify-content:center;align-items:center}
.hero-patch img{display:block;width:min(100%,410px);height:auto}
.about-copy{max-width:900px;font-family:"Helvetica Neue",Arial,sans-serif;font-size:1.08rem;color:var(--platinum)}
.about-copy p{margin:0 0 1.35em}
.reuse-notice{margin-top:48px;padding:26px 28px;background:#0a0f14;border-left:3px solid var(--accent);border-top:1px solid var(--line);border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.reuse-notice h2{margin:0 0 14px;color:var(--white);font-family:"Arial Narrow","Helvetica Neue",Arial,sans-serif;font-size:1.45rem}
.reuse-notice p:last-child{margin-bottom:0}
.source-hero .wrap{padding:48px 0 42px}
.source-hero h1{font-size:clamp(2.65rem,6vw,4.7rem);line-height:.96}
.source-hero .subtitle{margin-bottom:0}
@media(max-width:760px){.hero-grid{grid-template-columns:1fr;gap:34px}.hero-patch{order:-1}.hero-patch img{width:min(78vw,330px)}.source-hero .wrap{padding:42px 0 36px}}

/* V6 hero refinements */
.hero-copy h1{font-size:clamp(2.7rem,4.4vw,4.6rem);white-space:nowrap;letter-spacing:-.04em}
@media(max-width:760px){.hero-copy h1{font-size:clamp(2.45rem,10vw,4rem);white-space:normal}}

/* V7: morale patches below official emblem */
.hero-patch{flex-direction:column;gap:18px;min-width:0}
.morale-patches{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;width:100%;max-width:420px}
.morale-patches img{display:block;width:100%;height:auto;object-fit:contain;border-radius:50%}
@media(max-width:760px){.morale-patches{max-width:330px;gap:12px}}

/* V8: protect homepage title from emblem overlap at tablet and desktop widths */
.hero-grid{grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr);gap:clamp(22px,3vw,44px)}
.hero-copy{min-width:0;position:relative;z-index:1}
.hero-copy h1{font-size:clamp(2rem,3.5vw,3.55rem);letter-spacing:-.045em;white-space:nowrap;line-height:1.08}
.hero-patch{min-width:0;max-width:100%}
.hero-patch>img{width:min(100%,390px);height:auto}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr;gap:36px}.hero-copy h1{font-size:clamp(2.2rem,7vw,4rem);white-space:normal}.hero-patch{order:0}.hero-patch>img{width:min(72vw,390px)}.morale-patches{max-width:390px}}
@media(max-width:760px){.hero-patch{order:0}.hero-copy h1{font-size:clamp(2.2rem,9vw,3.5rem)}.hero .wrap{padding:55px 0}}

.social-contact a{display:inline-flex;align-items:center;gap:10px;color:var(--accent);font-weight:600;text-decoration:none}.social-contact a:hover{text-decoration:underline}.x-icon{flex:none}.coming-soon{font-size:.7em;font-weight:400;white-space:nowrap}
