:root{
  --ink:#0f0d0b;
  --ink-2:#16130f;
  --bone:#e9e1d2;
  --bone-dim:#b7ad99;
  --gold:#c19a5b;
  --gold-bright:#e0bd7e;
  --oxblood:#7c2f26;
  --line:rgba(193,154,91,.2);
  --display:"Cormorant Garamond",Georgia,serif;
  --body:"EB Garamond",Georgia,serif;
  --label:"Barlow Condensed",sans-serif;
  --max:1080px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--ink);color:var(--bone);font-family:var(--body);font-size:19px;line-height:1.75;-webkit-font-smoothing:antialiased;overflow-x:hidden}
.wrap{max-width:var(--max);margin:0 auto;padding:0 28px}
a{color:inherit}

/* ---- HEADER ---- */
header{border-bottom:1px solid var(--line);background:rgba(15,13,11,.85);backdrop-filter:blur(8px);position:sticky;top:0;z-index:100}
.nav{display:flex;align-items:center;justify-content:space-between;padding:16px 0;gap:20px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:12px;font-family:var(--display);font-size:24px;letter-spacing:.04em;color:var(--bone);text-decoration:none}
.brand-mark{height:42px;width:auto}
nav ul{list-style:none;display:flex;gap:22px;flex-wrap:wrap}
nav a{font-family:var(--label);text-transform:uppercase;letter-spacing:.13em;font-size:14px;color:var(--bone-dim);text-decoration:none;transition:color .25s}
nav a:hover,nav a.active{color:var(--gold-bright)}

.lang-switch{display:flex;gap:9px;align-items:center;margin-left:6px}
.lang-switch a{display:block;line-height:0;opacity:.5;transition:opacity .25s,box-shadow .25s;border-radius:2px;box-shadow:0 0 0 1px transparent}
.lang-switch a:hover{opacity:.85}
.lang-switch a.lang-active{opacity:1;box-shadow:0 0 0 1px var(--gold)}
.lang-flag{width:25px;height:auto;display:block;border-radius:2px}

/* ---- MAIN / PAGE ---- */
.page-main{padding:60px 28px 80px}
.page-title{font-family:var(--display);font-weight:500;font-size:clamp(38px,6vw,58px);line-height:1.05;margin-bottom:24px;color:var(--bone)}
.page-content{max-width:760px}
.page-content p{margin-bottom:1.2em;text-align:justify;hyphens:auto}
.page-content a{color:var(--gold);border-bottom:1px solid rgba(193,154,91,.35);text-decoration:none}
.page-content a:hover{color:var(--gold-bright)}
.page-content img{max-width:100%;height:auto;display:block;margin:1.5em 0}
.page-content h2{font-family:var(--display);font-size:30px;font-weight:500;margin:1.4em 0 .5em;color:var(--bone)}
.page-content h3{font-family:var(--display);font-size:24px;font-weight:500;margin:1.2em 0 .5em;color:var(--bone)}
.page-content blockquote{border-left:2px solid var(--gold);padding-left:20px;margin:1.5em 0;font-style:italic;color:var(--bone-dim)}

/* ---- BLOG LISTING ---- */
.blog-hero{padding-bottom:40px;border-bottom:1px solid var(--line);margin-bottom:40px}
.blog-intro{color:var(--bone-dim);max-width:640px;font-size:18px;margin-top:10px}
.blog-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:28px}
.blog-card{background:var(--ink-2);display:flex;flex-direction:column;transition:background .25s}
.blog-card:hover{background:#1e1a14}
.blog-card-img{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--ink)}
.blog-card-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.blog-card:hover .blog-card-img img{transform:scale(1.04)}
.blog-card-body{padding:20px;display:flex;flex-direction:column;gap:10px}
.blog-card-meta{font-family:var(--label);text-transform:uppercase;letter-spacing:.14em;font-size:11px;color:var(--gold)}
.blog-card-title{font-family:var(--display);font-size:24px;font-weight:500;line-height:1.15}
.blog-card-title a{text-decoration:none;color:var(--bone)}
.blog-card-title a:hover{color:var(--gold-bright)}
.blog-card-summary{color:var(--bone-dim);font-size:16px;line-height:1.6}
.blog-card-link{font-family:var(--label);text-transform:uppercase;letter-spacing:.1em;font-size:13px;color:var(--gold);text-decoration:none;margin-top:auto}
.blog-card-link:hover{color:var(--gold-bright)}
.blog-empty{color:var(--bone-dim);font-style:italic}

/* ---- SINGLE POST ---- */
.post{max-width:760px;margin:0 auto}
.post-meta{font-family:var(--label);text-transform:uppercase;letter-spacing:.18em;font-size:12px;color:var(--gold);margin-bottom:14px}
.post-title{font-family:var(--display);font-weight:500;font-size:clamp(34px,5.5vw,52px);line-height:1.08;margin-bottom:28px;color:var(--bone)}
.post-hero-img{margin-bottom:32px}
.post-hero-img img{width:100%;height:auto;display:block}
.post-content p{margin-bottom:1.3em;font-size:19px;text-align:justify;hyphens:auto}
.post-content a{color:var(--gold);border-bottom:1px solid rgba(193,154,91,.35);text-decoration:none}
.post-content a:hover{color:var(--gold-bright)}
.post-content img{max-width:100%;height:auto;display:block;margin:1.6em 0}
.post-content h2{font-family:var(--display);font-size:30px;font-weight:500;margin:1.4em 0 .5em;color:var(--bone)}
.post-content blockquote{border-left:2px solid var(--gold);padding-left:20px;margin:1.5em 0;font-style:italic;color:var(--bone-dim)}
.post-back{margin-top:50px;padding-top:24px;border-top:1px solid var(--line)}
.post-back a{font-family:var(--label);text-transform:uppercase;letter-spacing:.1em;font-size:14px;color:var(--gold);text-decoration:none}
.post-back a:hover{color:var(--gold-bright)}

/* ---- FOOTER ---- */
footer{border-top:1px solid var(--line);padding:38px 0}
.footer-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:24px}
.footer-logo{height:44px;width:auto;opacity:.9}
.footer-legal{display:flex;gap:22px;flex-wrap:wrap;justify-content:center}
.footer-legal a{font-family:var(--label);font-size:11px;text-transform:uppercase;letter-spacing:.14em;color:var(--bone-dim);opacity:.55;text-decoration:none;transition:all .25s}
.footer-legal a:hover{opacity:1;color:var(--gold)}
.footer-copy{font-family:var(--label);font-size:12px;color:var(--bone-dim);opacity:.6;letter-spacing:.1em}

@media(max-width:820px){
  .footer-inner{flex-direction:column;text-align:center}
}
/* ---- BLOG LAYOUT WITH SIDEBAR ---- */
.blog-layout{display:grid;grid-template-columns:1fr 300px;gap:48px;align-items:start}
.blog-main{min-width:0}
.blog-sidebar{position:sticky;top:100px}
.sidebar-block{background:var(--ink-2);border:1px solid var(--line);padding:22px}
.sidebar-block+.sidebar-block{margin-top:18px}
.sidebar-title{font-family:var(--label);text-transform:uppercase;letter-spacing:.16em;font-size:13px;color:var(--gold);margin-bottom:16px}
.sidebar-list{list-style:none;display:flex;flex-direction:column;gap:14px}
.sidebar-list a{color:var(--bone);text-decoration:none;font-family:var(--display);font-size:16px;line-height:1.3;display:block}
.sidebar-list a:hover{color:var(--gold-bright)}
.sidebar-date{display:block;font-family:var(--label);text-transform:uppercase;font-size:10px;letter-spacing:.1em;color:var(--bone-dim);margin-top:4px}
.sidebar-empty{color:var(--bone-dim);font-style:italic;font-size:14px}

.post{max-width:none;margin:0}

@media(max-width:900px){
  .blog-layout{grid-template-columns:1fr}
  .blog-sidebar{position:static}
}

/* ---- SIDEBAR: categories, series, newsletter ---- */
.sidebar-tags{display:flex;flex-wrap:wrap;gap:8px}
.sidebar-tag{font-family:var(--label);text-transform:uppercase;letter-spacing:.1em;font-size:11px;color:var(--bone-dim);border:1px solid var(--line);padding:5px 10px}

.sidebar-series{border-color:var(--series-color, var(--gold))}
.sidebar-series-link{display:block;font-family:var(--display);font-size:19px;font-weight:500;color:var(--series-color, var(--gold));text-decoration:none;border-bottom:1px solid var(--series-color, var(--gold));padding-bottom:6px}
.sidebar-series-link:hover{opacity:.8}

.sidebar-newsletter-text{font-size:14px;color:var(--bone-dim);line-height:1.6;margin-bottom:16px}
.sidebar-newsletter-btn{display:block;text-align:center;font-family:var(--label);text-transform:uppercase;letter-spacing:.1em;font-size:13px;padding:12px 16px;background:var(--gold);color:var(--ink);text-decoration:none;transition:background .25s}
.sidebar-newsletter-btn:hover{background:var(--gold-bright)}
