
:root{
  --navy-deepest:#06121e;--navy-deep:#0a1d33;--navy:#0b1e32;--navy-mid:#1b4965;
  --cream:#f5f1ea;--cream-soft:#ede5d6;--cream-dim:#b8aa8c;
  --gold:#c9a961;--gold-bright:#e0c373;--gold-deep:#8a7236;
  --border-soft:rgba(201,169,97,0.18);
  --display:'Cormorant Garamond',Georgia,serif;--body:'EB Garamond',Georgia,serif;--mono:'JetBrains Mono',monospace;
  --bg:var(--navy-deepest);--panel:#0c1f33;
}
[data-theme="light"]{--bg:#f5f1ea;--panel:#fffdf8;--cream:#1a1410;--cream-soft:#2a2118;--cream-dim:#6b5d45;--border-soft:rgba(138,114,54,0.22);--gold:#8a7236;--gold-bright:#a8893f}
*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}
body{font-family:var(--body);background:var(--bg);color:var(--cream-soft);line-height:1.7;font-size:18px;-webkit-font-smoothing:antialiased}
a{color:var(--gold);text-decoration:none}a:hover{color:var(--gold-bright)}
img{max-width:100%;display:block}

.site-nav{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:1rem;
  padding:1.1rem 6vw;background:rgba(6,18,30,0.9);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-soft)}
[data-theme="light"] .site-nav{background:rgba(245,241,234,0.9)}
.site-nav-brand{font-family:var(--display);font-weight:600;font-size:1.3rem;color:var(--cream);letter-spacing:0.02em}
.site-nav-links{display:flex;align-items:center;gap:1.6rem;font-size:0.95rem}
.site-nav-links a{color:var(--cream-dim)}.site-nav-links a:hover{color:var(--cream)}
.site-nav-links a.current{color:var(--gold)}
.theme-toggle{background:none;border:1px solid var(--border-soft);color:var(--gold);width:34px;height:34px;border-radius:50%;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
.theme-toggle svg{width:16px;height:16px}.icon-moon{display:none}[data-theme="light"] .icon-sun{display:none}[data-theme="light"] .icon-moon{display:block}
@media(max-width:760px){.site-nav-links a:not(.current){display:none}}

.wrap{max-width:1080px;margin:0 auto;padding:0 6vw}
.blog-hero{text-align:center;padding:5rem 6vw 2rem}
.eyebrow{font-family:var(--display);font-style:italic;font-size:1.05rem;color:var(--gold);letter-spacing:0.02em}
.blog-hero h1{font-family:var(--display);font-weight:500;font-size:clamp(2.6rem,6vw,4rem);color:var(--cream);line-height:1.05;margin:0.6rem 0}
.blog-hero p{color:var(--cream-dim);max-width:640px;margin:0 auto;font-size:1.12rem}

.posts{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:2rem;padding:2.5rem 0 4rem}
.post-card{background:var(--panel);border:1px solid var(--border-soft);border-radius:3px;overflow:hidden;transition:transform .25s,border-color .25s;display:flex}
.post-card:hover{transform:translateY(-4px);border-color:var(--gold)}
.post-card .pad{padding:1.7rem 1.6rem 1.9rem;display:flex;flex-direction:column;gap:0.55rem}
.post-card .cat{font-family:var(--mono);text-transform:uppercase;letter-spacing:0.16em;font-size:0.64rem;color:var(--gold)}
.post-card h2{font-family:var(--display);font-weight:600;font-size:1.6rem;color:var(--cream);line-height:1.15}
.post-card .date{font-family:var(--mono);font-size:0.66rem;letter-spacing:0.08em;color:var(--cream-dim)}
.post-card .excerpt{color:var(--cream-soft);font-size:0.98rem}
.post-card .more{margin-top:0.4rem;font-family:var(--display);font-style:italic;color:var(--gold)}

article.post{max-width:740px;margin:0 auto;padding:3.5rem 6vw 4rem}
article.post .back{font-family:var(--mono);font-size:0.7rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--cream-dim)}
article.post h1{font-family:var(--display);font-weight:500;font-size:clamp(2.2rem,5vw,3.3rem);color:var(--cream);line-height:1.1;margin:1.1rem 0 0.5rem}
article.post .meta{font-family:var(--mono);font-size:0.7rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--gold);margin-bottom:2.4rem}
article.post .body{font-size:1.16rem;line-height:1.75}
article.post .body p{margin:0 0 1.3rem}
article.post .body h2{font-family:var(--display);font-weight:600;color:var(--cream);font-size:1.9rem;margin:2.4rem 0 0.8rem}
article.post .body h3{font-family:var(--display);font-weight:600;color:var(--gold-bright);font-size:1.4rem;margin:1.8rem 0 0.5rem}
article.post .body ul,article.post .body ol{margin:0 0 1.3rem 1.4rem}article.post .body li{margin-bottom:0.4rem}
article.post .body blockquote{border-left:2px solid var(--gold);padding-left:1.3rem;margin:1.7rem 0;color:var(--cream);font-style:italic;font-family:var(--display);font-size:1.4rem}
article.post .body em{color:var(--cream)}
.rule{height:1px;background:var(--border-soft);max-width:740px;margin:0 auto}

.newsletter{padding:5rem 6vw;text-align:center;background:linear-gradient(180deg,transparent,rgba(201,169,97,0.05))}
.newsletter-inner{max-width:540px;margin:0 auto}
.newsletter .eyebrow{display:block;margin-bottom:0.8rem}
.newsletter h2{font-family:var(--display);font-weight:500;font-size:2.3rem;color:var(--cream);margin-bottom:0.7rem}
.newsletter p{color:var(--cream-dim);margin-bottom:1.8rem}
.newsletter-form{display:flex;gap:0.6rem;flex-wrap:wrap;justify-content:center}
.newsletter-form input[type=email]{flex:1;min-width:220px;padding:0.85rem 1.1rem;background:var(--panel);border:1px solid var(--border-soft);color:var(--cream);font-family:var(--body);font-size:1rem;border-radius:3px}
.newsletter-form input[type=email]:focus{outline:none;border-color:var(--gold)}
.btn-primary{padding:0.85rem 1.9rem;background:var(--gold);color:var(--navy-deepest);border:none;border-radius:3px;font-family:var(--body);font-weight:600;letter-spacing:0.04em;font-size:1rem;cursor:pointer}
.btn-primary:hover{background:var(--gold-bright)}.btn-primary:disabled{opacity:0.6;cursor:default}
.newsletter-status{min-height:1.2em;margin-top:0.9rem;font-family:var(--display);font-style:italic;font-size:1.1rem}
.newsletter-disclaimer{font-size:0.8rem;color:var(--cream-dim);margin-top:0.9rem}

.site-footer{border-top:1px solid var(--border-soft);padding:2.5rem 6vw}
.site-footer-inner{max-width:1080px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1.5rem}
.site-footer-brand{font-family:var(--display);font-size:1.3rem;color:var(--cream)}
.site-footer-copy{color:var(--cream-dim);font-size:0.85rem;margin-top:0.3rem}
.site-footer-links{display:flex;gap:1.3rem;flex-wrap:wrap}
.site-footer-links a{color:var(--cream-dim);font-size:0.9rem}.site-footer-links a:hover{color:var(--gold-bright)}
@media(max-width:760px){.site-footer-inner{flex-direction:column;text-align:center}.site-footer-links{justify-content:center}}
