:root {
    --bg-primary: #0a0a0a;
    --bg-secondary: #111111;
    --bg-card: #161616;
    --bg-card-hover: #1a1a1a;
    --text-primary: #e8e4de;
    --text-secondary: #9a958e;
    --text-muted: #5a5650;
    --accent: #c4a46c;
    --accent-dim: #8a7a56;
    --border: #222222;
    --border-light: #2a2a2a;
    --red-accent: #8b3a3a;
    --serif: 'Instrument Serif', Georgia, serif;
    --sans: 'DM Sans', -apple-system, sans-serif;
    --mono: 'JetBrains Mono', monospace;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--bg-primary);color:var(--text-primary);font-family:var(--sans);line-height:1.7;font-size:16px;-webkit-font-smoothing:antialiased}
::selection{background:var(--accent);color:var(--bg-primary)}

.site-header{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(10,10,10,0.9);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border)}
.header-inner{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;align-items:center;justify-content:space-between;height:64px}
.logo{font-family:var(--serif);font-size:1.5rem;color:var(--text-primary);text-decoration:none;letter-spacing:-0.02em;display:flex;align-items:center;gap:0.5rem}
.logo-dot{width:8px;height:8px;background:var(--accent);border-radius:50%;display:inline-block}
.nav-links{display:flex;gap:2rem;list-style:none}
.nav-links a{color:var(--text-secondary);text-decoration:none;font-size:0.85rem;font-weight:500;letter-spacing:0.05em;text-transform:uppercase;transition:color 0.2s}
.nav-links a:hover{color:var(--text-primary)}

.hero{padding:10rem 2rem 4rem;max-width:1200px;margin:0 auto;position:relative}
.hero::before{content:'';position:absolute;top:64px;left:50%;transform:translateX(-50%);width:1px;height:80px;background:linear-gradient(to bottom,transparent,var(--accent-dim))}
.hero-label{font-family:var(--mono);font-size:0.75rem;color:var(--accent);text-transform:uppercase;letter-spacing:0.15em;margin-bottom:1.5rem;display:flex;align-items:center;gap:0.75rem}
.hero-label::before{content:'';width:24px;height:1px;background:var(--accent)}
.hero h1{font-family:var(--serif);font-size:clamp(2.5rem,6vw,4.5rem);line-height:1.1;letter-spacing:-0.03em;color:var(--text-primary);max-width:900px;margin-bottom:1.5rem}
.hero-sub{font-size:1.15rem;color:var(--text-secondary);max-width:600px;line-height:1.8;font-weight:300}

.featured-section{max-width:1200px;margin:2rem auto 4rem;padding:0 2rem}
.section-label{font-family:var(--mono);font-size:0.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.15em;margin-bottom:1.5rem;padding-bottom:0.75rem;border-bottom:1px solid var(--border)}
.featured-card{display:grid;grid-template-columns:1fr 1fr;gap:0;background:var(--bg-card);border:1px solid var(--border);border-radius:2px;overflow:hidden;cursor:pointer;transition:border-color 0.3s,background 0.3s;text-decoration:none;color:inherit}
.featured-card:hover{border-color:var(--border-light);background:var(--bg-card-hover)}
.featured-image{position:relative;min-height:400px;background:var(--bg-secondary);overflow:hidden}
.featured-image-inner{position:absolute;inset:0;background:linear-gradient(135deg,rgba(10,10,10,0.3) 0%,transparent 50%),linear-gradient(to bottom,transparent 60%,rgba(10,10,10,0.8) 100%);z-index:2}
.map-visual{position:absolute;inset:0;z-index:1;opacity:0.7}
.topo-line{fill:none;stroke:var(--accent-dim);stroke-width:0.5;opacity:0.4}
.topo-line-accent{fill:none;stroke:var(--accent);stroke-width:0.8;opacity:0.3}
.map-marker{fill:var(--red-accent);opacity:0.8}
.map-marker-ring{fill:none;stroke:var(--red-accent);stroke-width:1;opacity:0.4}
.featured-content{padding:3rem;display:flex;flex-direction:column;justify-content:center}
.article-meta{display:flex;align-items:center;gap:1rem;margin-bottom:1.25rem;flex-wrap:wrap}
.tag{font-family:var(--mono);font-size:0.65rem;text-transform:uppercase;letter-spacing:0.1em;padding:0.3rem 0.6rem;border:1px solid var(--border-light);color:var(--accent);border-radius:2px}
.tag-red{border-color:var(--red-accent);color:#c45555}
.article-date{font-family:var(--mono);font-size:0.7rem;color:var(--text-muted)}
.featured-content h2{font-family:var(--serif);font-size:2rem;line-height:1.2;letter-spacing:-0.02em;margin-bottom:1rem;color:var(--text-primary)}
.featured-content p{color:var(--text-secondary);font-size:0.95rem;line-height:1.8;margin-bottom:1.5rem;font-weight:300}
.read-link{font-family:var(--mono);font-size:0.75rem;color:var(--accent);text-transform:uppercase;letter-spacing:0.1em;display:flex;align-items:center;gap:0.5rem;transition:gap 0.2s}
.featured-card:hover .read-link{gap:0.75rem}
.read-link svg{width:14px;height:14px}

.divider{max-width:1200px;margin:0 auto;padding:0 2rem}
.divider-line{height:1px;background:linear-gradient(to right,transparent,var(--border-light),transparent)}

.about-section{max-width:1200px;margin:4rem auto;padding:0 2rem;display:grid;grid-template-columns:1fr 2fr;gap:4rem}
.about-section h3{font-family:var(--serif);font-size:1.75rem;letter-spacing:-0.02em}
.about-text{color:var(--text-secondary);font-weight:300;line-height:1.9}
.about-text p+p{margin-top:1rem}

.site-footer{margin-top:6rem;border-top:1px solid var(--border);padding:3rem 2rem}
.footer-inner{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}
.footer-left{font-family:var(--serif);font-size:1.2rem;display:flex;align-items:center;gap:0.5rem}
.footer-right{font-size:0.8rem;color:var(--text-muted)}

.article-header{max-width:800px;margin:8rem auto 3rem;padding:0 2rem}
.back-link{font-family:var(--mono);font-size:0.75rem;color:var(--text-muted);text-decoration:none;text-transform:uppercase;letter-spacing:0.1em;display:flex;align-items:center;gap:0.5rem;margin-bottom:3rem;transition:color 0.2s}
.back-link:hover{color:var(--accent)}
.article-header .article-meta{margin-bottom:1.5rem}
.article-header h1{font-family:var(--serif);font-size:clamp(2rem,5vw,3.25rem);line-height:1.15;letter-spacing:-0.03em;margin-bottom:1.5rem}
.article-header .article-lead{font-size:1.2rem;color:var(--text-secondary);line-height:1.8;font-weight:300;border-left:2px solid var(--accent-dim);padding-left:1.5rem}
.article-byline{font-family:var(--mono);font-size:0.75rem;color:var(--text-muted);margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border);display:flex;gap:2rem}

.article-body{max-width:700px;margin:0 auto;padding:0 2rem 6rem}
.article-body p{color:var(--text-secondary);font-size:1.05rem;line-height:1.9;margin-bottom:1.75rem;font-weight:300}
.article-body h2{font-family:var(--serif);font-size:1.75rem;color:var(--text-primary);margin-top:3rem;margin-bottom:1.25rem;letter-spacing:-0.02em}
.article-body h3{font-family:var(--serif);font-size:1.35rem;color:var(--text-primary);margin-top:2.5rem;margin-bottom:1rem}
.article-body blockquote{border-left:2px solid var(--accent-dim);padding:1.25rem 0 1.25rem 1.5rem;margin:2rem 0;background:rgba(196,164,108,0.03)}
.article-body blockquote p{color:var(--text-primary);font-family:var(--serif);font-size:1.2rem;font-style:italic;line-height:1.7;margin-bottom:0}
.article-body .callout{background:var(--bg-card);border:1px solid var(--border);border-left:3px solid var(--accent-dim);padding:1.5rem 2rem;margin:2.5rem 0;border-radius:2px}
.article-body .callout p{font-size:0.95rem;margin-bottom:0;color:var(--text-secondary)}
.article-body .callout .callout-label{font-family:var(--mono);font-size:0.65rem;text-transform:uppercase;letter-spacing:0.15em;color:var(--accent);margin-bottom:0.5rem;display:block}
@keyframes live-pulse{0%,100%{opacity:1}50%{opacity:0}}
.article-body .callout.callout-live{background:rgba(180,20,20,0.06);border:1px solid rgba(180,20,20,0.25);border-left:3px solid #b41414}
.article-body .callout.callout-live p{color:#e8d0d0}
.article-body .callout.callout-live .callout-label{color:#e03030;display:flex;align-items:center;gap:0.5rem}
.article-body .callout.callout-live .callout-label::before{content:'';display:inline-block;width:7px;height:7px;background:#e03030;border-radius:50%;animation:live-pulse 1.2s ease-in-out infinite;flex-shrink:0}
.article-body .timeline-block{border-left:1px solid var(--border-light);padding-left:2rem;margin:2.5rem 0;position:relative}
.timeline-item{position:relative;margin-bottom:1.5rem}
.timeline-item::before{content:'';position:absolute;left:-2.35rem;top:0.5rem;width:6px;height:6px;background:var(--accent-dim);border-radius:50%}
.timeline-date{font-family:var(--mono);font-size:0.7rem;color:var(--accent);text-transform:uppercase;letter-spacing:0.1em;margin-bottom:0.25rem}
.timeline-item p{font-size:0.95rem;margin-bottom:0}
.article-body .emphasis-line{font-family:var(--serif);font-size:1.4rem;color:var(--text-primary);line-height:1.6;margin:2.5rem 0;text-align:center;font-style:italic}
.separator{text-align:center;margin:3rem 0;color:var(--text-muted);font-family:var(--mono);font-size:0.8rem;letter-spacing:0.5em}

@keyframes fadeInUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.fade-in{animation:fadeInUp 0.6s ease forwards;opacity:0}
.fade-in-delay-1{animation-delay:0.1s}
.fade-in-delay-2{animation-delay:0.2s}
.fade-in-delay-3{animation-delay:0.3s}
.fade-in-delay-4{animation-delay:0.4s}
@keyframes pulse{0%,100%{opacity:0.4;transform:scale(1)}50%{opacity:0.8;transform:scale(1.5)}}
.marker-pulse{animation:pulse 3s ease-in-out infinite}

@media(max-width:768px){
    .featured-card{grid-template-columns:1fr}
    .featured-image{min-height:250px}
    .featured-content{padding:2rem}
    .about-section{grid-template-columns:1fr;gap:1.5rem}
    .nav-links{gap:1rem}
    .nav-links a{font-size:0.75rem}
    .hero{padding:8rem 1.5rem 3rem}
    .footer-inner{flex-direction:column;gap:1rem;text-align:center}
    .article-header{margin-top:6rem}
    .article-byline{flex-wrap:wrap}
}

body::after{content:'';position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.03'/%3E%3C/svg%3E");pointer-events:none;z-index:1000}
.related-articles{padding:3rem 0 4rem;border-top:1px solid var(--border)}
.related-inner{max-width:860px;margin:0 auto;padding:0 2rem}
.related-inner .section-label{margin-bottom:1.5rem}
.related-card{display:block;background:var(--bg-card);border:1px solid var(--border);border-radius:2px;padding:1.75rem 2rem;text-decoration:none;color:inherit;transition:border-color 0.2s,background 0.2s}
.related-card:hover{background:var(--bg-card-hover);border-color:var(--accent-dim)}
.related-meta{display:flex;align-items:center;gap:0.75rem;flex-wrap:wrap;margin-bottom:0.75rem}
.related-card h3{font-family:var(--serif);font-size:1.35rem;color:var(--text-primary);margin:0 0 0.5rem;line-height:1.35;letter-spacing:-0.01em}
.related-card p{font-size:0.9rem;color:var(--text-secondary);margin:0 0 1rem;line-height:1.6}
