
:root{
  --gold:#C6A15B; --gold-light:#E8C96A; --gold-pale:#F5E6C8;
  --dark:#0B0B0B; --espresso:#2A1710; --tobacco:#6B3F22;
  --muted:#8A8178; --cream:#F4EFE6; --text:#D4C5A8;
  --display:'Cormorant Garamond',Georgia,serif;
  --body:'Montserrat',-apple-system,Segoe UI,sans-serif;
  --accent:'Cinzel',Georgia,serif;
  --bg:#0B0B0B; --panel:#141210; --line:rgba(198,161,91,0.18);
}
[data-theme="light"]{
  --dark:#F8F3EC; --espresso:#C8BAA8; --tobacco:#9C7A5A; --muted:#7A6B58;
  --cream:#2C1F0E; --text:#3D2E1C; --gold:#7a5c1e; --gold-light:#9b7328; --gold-pale:#4a3610;
  --bg:#F8F3EC; --panel:#fffdf8; --line:rgba(122,92,30,0.22);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--body);background:var(--bg);color:var(--text);line-height:1.7;
  font-weight:300;-webkit-font-smoothing:antialiased}
a{color:var(--gold-light);text-decoration:none}
a:hover{color:var(--gold)}
img{max-width:100%;display:block}

.site-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;
  gap:1rem;padding:1rem 6vw;background:rgba(11,11,11,0.92);backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line)}
[data-theme="light"] .site-header{background:rgba(248,243,236,0.92)}
.nav-logo{font-family:var(--accent);letter-spacing:0.12em;color:var(--cream);font-size:1rem;font-weight:600}
.nav-logo .amp{color:var(--gold);font-style:italic;font-family:var(--display);margin:0 0.15em}
.nav-logo .magazine{display:block;font-size:0.5rem;letter-spacing:0.34em;color:var(--muted);font-weight:400;margin-top:2px}
.nav-right{display:flex;align-items:center;gap:1.4rem;font-family:var(--body);font-size:0.8rem;letter-spacing:0.06em}
.nav-right a{color:var(--text);text-transform:uppercase}
.nav-right a.current{color:var(--gold)}
.theme-toggle{background:none;border:1px solid var(--line);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}

.wrap{max-width:1100px;margin:0 auto;padding:0 6vw}
.blog-hero{text-align:center;padding:5rem 6vw 2.5rem}
.eyebrow{font-family:var(--accent);text-transform:uppercase;letter-spacing:0.28em;font-size:0.72rem;color:var(--gold)}
.blog-hero h1{font-family:var(--display);font-weight:600;font-size:clamp(2.6rem,6vw,4rem);color:var(--cream);line-height:1.05;margin:1rem 0 0.6rem}
.blog-hero p{color:var(--muted);max-width:620px;margin:0 auto;font-size:1.05rem}

.posts{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem;padding:2.5rem 0 4rem}
.post-card{background:var(--panel);border:1px solid var(--line);border-radius:4px;overflow:hidden;
  transition:transform .25s,border-color .25s;display:flex;flex-direction:column}
.post-card:hover{transform:translateY(-4px);border-color:var(--gold)}
.card-thumb{width:100%;aspect-ratio:21/9;object-fit:cover;display:block;border-bottom:1px solid var(--line)}
.post-hero{width:100%;aspect-ratio:21/9;object-fit:cover;display:block;border-radius:4px;margin:1.3rem 0 1.7rem;border:1px solid var(--line)}
.post-card .cat{font-family:var(--accent);text-transform:uppercase;letter-spacing:0.2em;font-size:0.64rem;color:var(--gold)}
.post-card .pad{padding:1.6rem 1.5rem 1.8rem;display:flex;flex-direction:column;gap:0.6rem;flex:1}
.post-card h2{font-family:var(--display);font-weight:600;font-size:1.5rem;color:var(--cream);line-height:1.15}
.post-card .date{font-size:0.7rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--muted)}
.post-card .excerpt{color:var(--text);font-size:0.92rem}
.post-card .more{margin-top:auto;font-family:var(--accent);text-transform:uppercase;letter-spacing:0.14em;font-size:0.7rem;color:var(--gold)}

article.post{max-width:760px;margin:0 auto;padding:3.5rem 6vw 4rem}
article.post .back{font-size:0.72rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--muted)}
article.post h1{font-family:var(--display);font-weight:600;font-size:clamp(2.2rem,5vw,3.2rem);color:var(--cream);line-height:1.1;margin:1.2rem 0 0.6rem}
article.post .meta{font-size:0.74rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--gold);margin-bottom:2.4rem}
article.post .body{font-size:1.08rem}
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.7rem;margin:2.4rem 0 0.9rem}
article.post .body h3{font-family:var(--display);font-weight:600;color:var(--gold-light);font-size:1.3rem;margin:1.8rem 0 0.6rem}
article.post .body ul,article.post .body ol{margin:0 0 1.3rem 1.3rem}
article.post .body li{margin-bottom:0.4rem}
article.post .body blockquote{border-left:2px solid var(--gold);padding-left:1.2rem;margin:1.6rem 0;color:var(--cream);font-style:italic;font-family:var(--display);font-size:1.25rem}
article.post .body em{color:var(--cream)}
.rule{height:1px;background:var(--line);max-width:760px;margin:0 auto}

.newsletter{padding:5rem 6vw;text-align:center;background:linear-gradient(180deg,transparent,rgba(198,161,91,0.05))}
.newsletter-inner{max-width:540px;margin:0 auto}
.newsletter .eyebrow{margin-bottom:1rem;display:block}
.newsletter h2{font-family:var(--display);font-weight:600;font-size:2.2rem;color:var(--cream);margin-bottom:0.8rem}
.newsletter p{color:var(--muted);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(--line);color:var(--cream);font-family:var(--body);font-size:0.95rem;border-radius:3px}
.newsletter-form input[type=email]:focus{outline:none;border-color:var(--gold)}
.btn-primary{padding:0.85rem 1.8rem;background:var(--gold);color:#0B0B0B;border:none;border-radius:3px;
  font-family:var(--accent);text-transform:uppercase;letter-spacing:0.12em;font-size:0.8rem;font-weight:600;cursor:pointer}
.btn-primary:hover{background:var(--gold-light)}
.btn-primary:disabled{opacity:0.6;cursor:default}
.newsletter-status{min-height:1.2em;margin-top:0.9rem;font-family:var(--display);font-size:1.05rem}
.newsletter-disclaimer{font-size:0.72rem;color:var(--muted);margin-top:1rem}

footer{border-top:1px solid var(--line);padding:3.5rem 6vw 2rem;margin-top:2rem}
.footer-grid{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr;gap:2.5rem}
.footer-brand .logo{font-family:var(--accent);letter-spacing:0.1em;color:var(--cream);font-size:1.05rem}
.footer-brand .logo .amp{color:var(--gold);font-style:italic;font-family:var(--display)}
.footer-brand .tagline{color:var(--muted);font-size:0.78rem;letter-spacing:0.1em;margin:0.4rem 0 0.8rem}
.footer-brand p{color:var(--muted);font-size:0.84rem;max-width:420px}
.footer-col h4{font-family:var(--accent);text-transform:uppercase;letter-spacing:0.16em;font-size:0.74rem;color:var(--gold);margin-bottom:0.9rem}
.footer-col ul{list-style:none}.footer-col li{margin-bottom:0.5rem}
.footer-col li a{color:var(--text);font-size:0.86rem}.footer-col li a:hover{color:var(--gold)}
.footer-bottom{max-width:1100px;margin:2.5rem auto 0;padding-top:1.5rem;border-top:1px solid var(--line);
  display:flex;justify-content:space-between;flex-wrap:wrap;gap:0.5rem;color:var(--muted);font-size:0.76rem}
.footer-disclaimer{max-width:1100px;margin:1.5rem auto 0;color:var(--muted);font-size:0.72rem;line-height:1.6}
@media(max-width:760px){.footer-grid{grid-template-columns:1fr}.nav-right a:not(.current){display:none}}
