:root {
  --bg: #06111b;
  --bg-2: #0a1824;
  --panel: #0d1b27;
  --panel-2: #102333;
  --text: #f1f5f7;
  --muted: #b7c4cf;
  --line: #24465f;
  --blue: #55b8ff;
  --blue-2: #8bd5ff;
  --shadow: 0 24px 80px rgba(0,0,0,.35);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: linear-gradient(180deg, #06111b 0%, #081520 60%, #050d14 100%);
  color: var(--text);
  font-family: "Inter", system-ui, sans-serif;
}
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
.site-header {
  position: sticky; top: 0; z-index: 50;
  min-height: 76px;
  display: flex; align-items: center; justify-content: space-between;
  padding: 0 5vw;
  background: rgba(5,14,22,.92);
  border-bottom: 1px solid rgba(85,184,255,.18);
  backdrop-filter: blur(14px);
}
.brand { display: inline-flex; align-items: center; gap: .7rem; font: 700 1.35rem/1 "Libre Baskerville", serif; }
.brand strong, h1 span, h2 span { color: var(--blue); }
.brand-mark { color: var(--blue); font-size: 2rem; transform: rotate(-12deg); }
.site-nav { display: flex; gap: 2rem; align-items: center; color: #d9e3ea; font-size: .92rem; }
.site-nav a:hover { color: var(--blue-2); }
.nav-toggle { display: none; border: 0; background: none; color: white; font-size: 1.5rem; }
.hero {
  position: relative;
  overflow: hidden;
  padding: 6.5rem 5vw 5rem;
  min-height: 670px;
  border-bottom: 1px solid rgba(85,184,255,.13);
}
.hero::after {
  content:"";
  position:absolute; inset:0;
  background:
    linear-gradient(90deg, rgba(4,13,20,.78) 0%, rgba(5,16,25,.45) 42%, rgba(4,12,18,.06) 100%);
  pointer-events:none;
}
.hero-sky { position:absolute; inset:0; background:#0b2031 url("/assets/mountain-hero.jpg") center 25% / cover no-repeat; }
.moon { position:absolute; width:100px; height:100px; border-radius:50%; right:18%; top:70px; background: radial-gradient(circle at 35% 35%, #fff, #d8e8f3 60%, #a7c0cf 100%); box-shadow:0 0 55px rgba(220,240,255,.25); opacity:.9; }
.mountain { position:absolute; left:-8%; right:-8%; height:55%; bottom:0; clip-path: polygon(0 100%, 0 77%, 10% 70%, 18% 78%, 29% 58%, 37% 72%, 48% 42%, 55% 61%, 64% 34%, 73% 57%, 81% 47%, 91% 70%, 100% 54%, 100% 100%); }
.mountain-back { background:#173147; opacity:.85; transform:translateY(8%); }
.mountain-front { background:linear-gradient(180deg,#10283a,#07131c); clip-path: polygon(0 100%, 0 85%, 12% 78%, 22% 88%, 31% 70%, 42% 80%, 52% 60%, 60% 77%, 71% 55%, 80% 74%, 90% 63%, 100% 78%, 100% 100%); }
.wolf { position:absolute; right:7%; top:23%; font-size:3.5rem; color:#02070b; filter:drop-shadow(0 3px 8px rgba(0,0,0,.6)); transform:rotate(18deg); }
.hero-grid { position:relative; z-index:2; display:block; max-width:1450px; margin:0 auto; }
.hero-copy { max-width:760px; }
.eyebrow { color:#b9cddd; letter-spacing:.24em; font-size:.72rem; font-weight:600; line-height:1.7; }
.hero h1 { margin:.5rem 0 1rem; font: 400 clamp(3.6rem,7vw,6.6rem)/.98 "Libre Baskerville", serif; letter-spacing:-.04em; }
.hero-kicker { font: 400 1.35rem/1.5 "Libre Baskerville", serif; color:#e0ebf2; }
.rule { width:44px; height:2px; background:var(--blue); margin:1.7rem 0; }
.hero-mission { max-width:620px; color:#c0ced8; line-height:1.75; font-size:1rem; }
.hero-actions { display:flex; gap:1rem; flex-wrap:wrap; margin-top:2rem; }
.button { display:inline-flex; align-items:center; justify-content:center; padding:.95rem 1.3rem; border-radius:5px; font-weight:600; border:1px solid #54758d; }
.button-primary { background:linear-gradient(180deg,#329df0,#1f79bf); border-color:#62b9f7; }
.button-secondary { background:rgba(7,16,24,.55); }
.feature-card { position:relative; border:1px solid #4d8bb3; border-radius:11px; overflow:hidden; box-shadow:var(--shadow); background:#07111a; }
.feature-card img { width:100%; aspect-ratio: 1.56/1; object-fit:cover; }
.feature-overlay { position:absolute; inset:0; display:grid; place-items:center; }
.play { width:74px; height:74px; border:2px solid rgba(255,255,255,.88); border-radius:50%; background:rgba(6,15,22,.5); display:grid; place-items:center; padding-left:5px; font-size:1.45rem; }
.section { padding:5.5rem 5vw; max-width:1500px; margin:0 auto; }
.section-heading { text-align:center; margin-bottom:2.5rem; }
.section-heading h2 { margin:.3rem 0; font:400 clamp(2.2rem,4vw,3.4rem)/1.15 "Libre Baskerville", serif; }
.card-grid { display:grid; gap:1.5rem; }
.card-grid.three { grid-template-columns: repeat(3,1fr); }
.info-card, .content-card { background:linear-gradient(180deg,rgba(14,31,44,.96),rgba(8,20,30,.96)); border:1px solid #294a60; border-radius:7px; overflow:hidden; }
.info-card { padding:2rem; min-height:250px; }
.info-card .icon { color:var(--blue); font-size:2rem; margin-bottom:1.1rem; }
.info-card h3, .content-card h3 { font:700 1.25rem/1.35 "Libre Baskerville", serif; margin:.2rem 0 .75rem; }
.info-card p, .content-card p { color:#bdcad4; line-height:1.65; margin:0; }
.latest { padding-top:3rem; }
.content-image { height:220px; background:#0d2130; overflow:hidden; }
.content-image img { width:100%; height:100%; object-fit:cover; }
.essay-image { position:relative; }
.essay-image::before { content:""; position:absolute; inset:0; background:linear-gradient(155deg,#253e50,#0b1721 55%,#173044); }
.hard-times::after { content:"1985 ↔ AI"; position:absolute; left:1.3rem; bottom:1.2rem; font:700 2rem "Libre Baskerville", serif; color:rgba(255,255,255,.88); }
.accountability::after { content:"ETHICS · LAW · ACCOUNTABILITY"; position:absolute; left:1.3rem; right:1.3rem; bottom:1.2rem; color:#d9edf9; letter-spacing:.16em; font-size:.75rem; }
.content-body { padding:1.5rem; min-height:240px; }
.content-type, .content-status { color:var(--blue)!important; font-size:.7rem; letter-spacing:.16em; font-weight:700; }
.content-status { margin-top:1.2rem!important; }
.about { position:relative; display:grid; grid-template-columns:1.25fr .75fr; gap:5rem; align-items:center; padding:6rem 5vw; border-top:1px solid rgba(85,184,255,.13); border-bottom:1px solid rgba(85,184,255,.13); background: linear-gradient(90deg,rgba(4,13,20,.85),rgba(4,13,20,.55)), url("/assets/mountain-hero.jpg") center 45% / cover no-repeat; }
.about-copy { max-width:850px; }
.about h2 { margin:.4rem 0 1.5rem; font:400 clamp(2.2rem,4vw,3.3rem)/1.2 "Libre Baskerville", serif; }
.about-copy p { color:#c2ced7; line-height:1.8; }
.trade-name { font-size:.86rem; color:#8fa5b4!important; margin-top:1.6rem; }
.about-identity { border-left:1px solid #2f536b; padding-left:2.5rem; }
.clearer-view { font:400 2rem/1.35 "Libre Baskerville",serif; }
.wolf-line { padding:5.5rem 5vw; text-align:center; background:#050d14; }
.wolf-line p, .wolf-line strong { display:block; font:400 clamp(1.7rem,3.3vw,3rem)/1.35 "Libre Baskerville",serif; }
.wolf-line strong { color:var(--blue-2); margin-top:.4rem; }
.site-footer { display:grid; grid-template-columns:1.2fr .6fr 1fr; gap:3rem; padding:4rem 5vw 2rem; background:#050b11; border-top:1px solid #193247; }
.footer-brand p, .footer-contact p { color:#9fb0bc; line-height:1.65; }
.footer-links { display:flex; flex-direction:column; gap:.7rem; color:#c8d3da; }
.footer-contact h3 { margin-top:0; }
.footer-contact > a { color:var(--blue); }
.socials { display:flex; gap:1rem; margin-top:1rem; }
.socials a { color:#dbe8ef; border-bottom:1px solid #4f7c98; }
.footer-bottom { grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr; gap:2rem; border-top:1px solid #1a2d3b; padding-top:1.5rem; margin-top:1rem; color:#7f909c; font-size:.78rem; }
.disclaimer { text-align:right; }
@media (max-width: 980px) {
  .hero-grid, .about { grid-template-columns:1fr; }
  .card-grid.three { grid-template-columns:1fr; }
  .site-nav { display:none; position:absolute; top:76px; left:0; right:0; flex-direction:column; padding:1.5rem; background:#07111a; border-bottom:1px solid #294a60; }
  .site-nav.open { display:flex; }
  .nav-toggle { display:block; }
  .hero { padding-top:4rem; }
  .feature-card { max-width:760px; }
  .about-identity { border-left:0; border-top:1px solid #2f536b; padding:2rem 0 0; }
  .site-footer { grid-template-columns:1fr; }
  .footer-bottom { grid-template-columns:1fr; }
  .disclaimer { text-align:left; }
}
@media (max-width: 620px) {
  .site-header { padding:0 1rem; }
  .hero, .section, .about, .wolf-line, .site-footer { padding-left:1.2rem; padding-right:1.2rem; }
  .hero h1 { font-size:3.15rem; }
  .hero-actions { flex-direction:column; align-items:stretch; }
  .button { width:100%; }
}
.card-grid.two { grid-template-columns: repeat(2, minmax(0,1fr)); }
.linked-card .card-link { display:block; height:100%; }
.linked-card { transition: transform .18s ease, border-color .18s ease; }
.linked-card:hover { transform: translateY(-3px); border-color:#4d8bb3; }
.page-hero { padding:7rem 5vw 4rem; text-align:center; border-bottom:1px solid rgba(85,184,255,.13); background:radial-gradient(circle at 50% 10%,rgba(65,119,158,.22),transparent 35%),linear-gradient(180deg,#0b1b29,#07131d); }
.page-hero h1 { margin:.5rem 0 1rem; font:400 clamp(2.8rem,6vw,5.4rem)/1.05 "Libre Baskerville",serif; }
.page-deck { max-width:850px; margin:0 auto; color:#c5d2db; font:400 1.2rem/1.7 "Libre Baskerville",serif; }
.article-shell { max-width:900px; margin:0 auto; padding:5rem 5vw; color:#c8d4dc; font-size:1.04rem; line-height:1.85; }
.article-shell.narrow { padding-top:8rem; }
.article-shell h1,.article-shell h2 { color:var(--text); font-family:"Libre Baskerville",serif; }
.article-shell h1 { font-size:clamp(2.6rem,5vw,4.5rem); }
.article-shell h2 { margin-top:2.8rem; font-size:1.8rem; }
.article-shell blockquote { margin:3rem 0; padding:1.5rem 2rem; border-left:3px solid var(--blue); background:#0b1b27; font:400 1.35rem/1.6 "Libre Baskerville",serif; color:#e5f1f8; }
.episode-feature { display:grid; grid-template-columns:1.15fr .85fr; gap:3rem; align-items:center; }
.episode-feature img { width:100%; border:1px solid #4d8bb3; border-radius:10px; box-shadow:var(--shadow); }
.episode-feature h2 { font:700 clamp(1.8rem,3vw,2.7rem)/1.25 "Libre Baskerville",serif; }
.episode-feature p { color:#bdcad4; line-height:1.7; }
.site-nav a[aria-current="page"] { color:var(--blue-2); }
@media (max-width:980px) {
  .card-grid.two,.episode-feature { grid-template-columns:1fr; }
}

.essay-hero-image { margin:0 0 3rem; }
.essay-hero-image img { width:100%; border-radius:10px; border:1px solid #33566e; box-shadow:var(--shadow); }
.essay-hero-image figcaption { margin-top:.7rem; color:#8398a7; font-size:.82rem; text-align:center; }
.article-byline { margin-top:1rem; color:#9fb3c2; font-size:.9rem; letter-spacing:.04em; }
.article-byline span { color:#6f8797; }
blockquote cite { display:block; margin-top:1rem; color:#9bb0be; font:500 .78rem/1.5 "Inter",sans-serif; }
.article-divider { border:0; border-top:1px solid #24465f; margin:3.5rem 0 2.5rem; }
