/* ================================================
   Primeira Passagem — Luxury Travel Theme
   Design: Dark, Gold, Editorial
   ================================================ */

/* ── Design Tokens ── */
:root {
  /* Gold Palette */
  --gold:        #C9A84C;
  --gold-light:  #E8C97D;
  --gold-hover:  #B8963A;
  --gold-soft:   rgba(201,168,76,.1);
  --gold-border: rgba(201,168,76,.18);

  /* Dark Backgrounds */
  --bg:        #0D0D0B;
  --surface:   #141410;
  --surface-2: #1C1C18;
  --header-bg: #080807;

  /* Text */
  --text:   #F0EDE0;
  --text-2: #B8B5A4;
  --text-3: #7A7870;
  --link:   #C9A84C;

  /* Typography */
  --fd: 'Playfair Display', Georgia, serif;
  --fb: 'Lora', Georgia, serif;
  --fu: 'DM Sans', system-ui, sans-serif;

  /* Spacing */
  --sp-1:4px; --sp-2:8px; --sp-3:12px;
  --sp-4:16px; --sp-5:20px; --sp-6:24px;
  --sp-8:32px; --sp-10:40px; --sp-12:48px;
  --sp-16:64px; --sp-20:80px; --sp-24:96px;

  /* Layout */
  --max:   1240px;
  --prose: 720px;
  --gap:   28px;

  /* Shape */
  --r-sm: 3px; --r-md: 8px; --r-lg: 16px;

  /* Shadow */
  --sh-sm: 0 2px 8px rgba(0,0,0,.4);
  --sh-md: 0 6px 24px rgba(0,0,0,.5);
  --sh-lg: 0 16px 56px rgba(0,0,0,.6);
  --sh-gold: 0 4px 24px rgba(201,168,76,.12);

  /* Motion */
  --ease: cubic-bezier(.25,.46,.45,.94);
  --dur: 240ms;
}

/* ── Reset ── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;overflow-x:hidden}
body{
  background:var(--bg);
  color:var(--text);
  font-family:var(--fu);
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
#page{overflow-x:hidden;overflow-x:clip}
img,video,iframe{max-width:100%;height:auto;display:block}
a{color:var(--link);text-decoration:none;transition:color var(--dur) var(--ease)}
ul,ol{list-style:none}

/* ── Container ── */
.container{
  max-width:var(--max);
  margin-inline:auto;
  padding-inline:var(--sp-6);
}

/* ── Gold Divider ── */
.gold-line{
  width:48px; height:2px;
  background:var(--gold);
  display:block;
  margin-block:var(--sp-5);
}

/* ======================================
   HEADER
   ====================================== */
.site-header{
  background:var(--header-bg);
  border-bottom:1px solid var(--gold-border);
  position:sticky;
  top:0;
  z-index:200;
}
.header-inner{
  max-width:var(--max);
  margin-inline:auto;
  padding-inline:var(--sp-6);
  height:72px;
  display:flex;
  align-items:center;
  gap:var(--sp-8);
}

/* Logo imagem */
.site-logo-img{display:flex;align-items:center;flex-shrink:0;text-decoration:none}
.site-logo-img img{
  height:56px;
  width:auto;
  object-fit:contain;
  display:block;
}
.footer-logo-area .site-logo-img img{height:48px}

/* Logo texto (fallback) */
.site-logo{
  font-family:var(--fd);
  font-size:1.375rem;
  letter-spacing:.02em;
  text-decoration:none;
  flex-shrink:0;
  line-height:1.2;
  display:flex;
  flex-direction:column;
}
.logo-primary{color:var(--text);font-weight:400}
.logo-secondary{color:var(--gold);font-style:italic;font-size:.85em;letter-spacing:.06em}

/* Nav */
.main-navigation{flex:1}
.main-navigation ul{display:flex;align-items:center;gap:var(--sp-1)}
.main-navigation ul li{position:relative}
.main-navigation ul li a{
  font-family:var(--fu);
  font-size:.8125rem;
  font-weight:500;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--text-2);
  padding:var(--sp-2) var(--sp-3);
  border-radius:var(--r-sm);
  text-decoration:none;
  transition:color var(--dur) var(--ease);
}
.main-navigation ul li a:hover,
.main-navigation ul li.current-menu-item > a{color:var(--gold)}

/* Sub-menus */
.main-navigation ul li ul{
  display:none;
  position:absolute;
  top:calc(100% + 8px);
  left:0;
  background:var(--surface-2);
  border:1px solid var(--gold-border);
  border-radius:var(--r-md);
  padding:var(--sp-2);
  min-width:180px;
  flex-direction:column;
  gap:2px;
  box-shadow:var(--sh-lg);
  z-index:10;
}
.main-navigation ul li:hover > ul{display:flex}

/* Header actions */
.header-actions{display:flex;align-items:center;gap:var(--sp-3);flex-shrink:0}
.search-wrapper{position:relative}
.search-toggle{
  background:none;
  border:none;
  color:var(--text-3);
  cursor:pointer;
  padding:var(--sp-2);
  border-radius:var(--r-sm);
  display:flex;
  align-items:center;
  transition:color var(--dur) var(--ease);
}
.search-toggle:hover{color:var(--gold)}
.search-dropdown{
  display:none;
  position:absolute;
  top:calc(100% + 10px);
  right:0;
  background:var(--surface-2);
  border:1px solid var(--gold-border);
  border-radius:var(--r-md);
  padding:var(--sp-3);
  min-width:260px;
  box-shadow:var(--sh-lg);
}
.search-dropdown.is-open{display:block}
.search-dropdown .search-field{
  width:100%;
  background:rgba(255,255,255,.05);
  border:1px solid var(--gold-border);
  border-radius:var(--r-sm);
  color:var(--text);
  padding:var(--sp-3) var(--sp-4);
  font-family:var(--fu);
  font-size:.9rem;
  outline:none;
}
.search-dropdown .search-field:focus{border-color:var(--gold)}
.search-dropdown .search-submit{display:none}

/* Mobile toggle */
.menu-toggle{
  display:none;
  background:none;
  border:none;
  cursor:pointer;
  padding:var(--sp-2);
  flex-direction:column;
  gap:5px;
  align-items:center;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
}
.burger-bar{
  display:block;
  width:22px;height:2px;
  background:var(--gold);
  border-radius:2px;
  transition:transform var(--dur) var(--ease),opacity var(--dur) var(--ease);
}

/* ======================================
   DESTINATION TAG (Category Pill)
   ====================================== */
.dest-tag{
  display:inline-flex;
  align-items:center;
  gap:5px;
  background:var(--gold-soft);
  border:1px solid var(--gold-border);
  color:var(--gold-light);
  font-family:var(--fu);
  font-size:.7rem;
  font-weight:600;
  letter-spacing:.1em;
  text-transform:uppercase;
  padding:4px 10px;
  border-radius:100px;
  text-decoration:none;
  margin-bottom:var(--sp-4);
  transition:background var(--dur) var(--ease);
}
.dest-tag::before{content:'✦';font-size:.55em;opacity:.7}
.dest-tag:hover{background:rgba(201,168,76,.18);color:var(--gold-light)}

/* ======================================
   SECTION HEADER
   ====================================== */
.section-header{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  margin-bottom:var(--sp-8);
  padding-bottom:var(--sp-5);
  border-bottom:1px solid var(--gold-border);
}
.section-title{
  font-family:var(--fd);
  font-size:1.5rem;
  font-weight:400;
  color:var(--text);
  letter-spacing:.02em;
}
.section-more{
  font-family:var(--fu);
  font-size:.8125rem;
  font-weight:500;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--gold);
  text-decoration:none;
}
.section-more:hover{color:var(--gold-light)}

/* ======================================
   HERO (Homepage) — mais compacto, foco em conteúdo
   ====================================== */
.hero-section{
  position:relative;
  height:68vh;
  min-height:420px;
  max-height:640px;
  overflow:hidden;
}
.hero-image{
  width:100%;height:100%;
  object-fit:cover;
  transition:transform 8s linear;
}
.hero-section:hover .hero-image{transform:scale(1.03)}
.hero-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(
    to top,
    rgba(8,8,7,.95) 0%,
    rgba(8,8,7,.6)  40%,
    rgba(8,8,7,.15) 100%
  );
}
.hero-no-image{
  background:linear-gradient(135deg,#0D1015,#1A1208);
  display:flex;align-items:center;justify-content:center;
  font-size:6rem;opacity:.15;
}
.hero-content{
  position:absolute;
  bottom:0;left:0;right:0;
  padding:var(--sp-16) var(--sp-10) var(--sp-12);
  max-width:860px;
}
.hero-title{
  font-family:var(--fd);
  font-size:clamp(2rem,5vw,3.5rem);
  font-weight:400;
  color:var(--text);
  line-height:1.15;
  letter-spacing:.01em;
  margin-bottom:var(--sp-5);
}
.hero-meta{
  display:flex;
  align-items:center;
  gap:var(--sp-5);
  font-family:var(--fu);
  font-size:.875rem;
  color:var(--text-2);
}
.hero-meta-sep{color:var(--gold);opacity:.5}

/* ======================================
   POST CARDS
   ====================================== */
.posts-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:var(--gap);
}

.post-card{
  background:var(--surface);
  border:1px solid rgba(255,255,255,.04);
  border-radius:var(--r-lg);
  overflow:hidden;
  transition:transform var(--dur) var(--ease),
             box-shadow var(--dur) var(--ease),
             border-color var(--dur) var(--ease);
}
.post-card:hover{
  transform:translateY(-5px);
  box-shadow:var(--sh-gold);
  border-color:var(--gold-border);
}
.post-card-link{display:flex;flex-direction:column;height:100%;text-decoration:none;color:inherit}

.post-card-thumb{
  aspect-ratio:16/10;
  overflow:hidden;
  background:var(--surface-2);
  position:relative;
  flex-shrink:0;
}
.post-card-thumb img{
  width:100%;height:100%;
  object-fit:cover;
  transition:transform 600ms var(--ease);
}
.post-card:hover .post-card-thumb img{transform:scale(1.06)}
.post-card-no-image{
  aspect-ratio:16/10;
  background:linear-gradient(135deg,var(--surface-2),#1A1508);
  display:flex;align-items:center;justify-content:center;
  font-size:2.5rem;opacity:.3;flex-shrink:0;
}

.post-card-body{
  padding:var(--sp-6);
  display:flex;
  flex-direction:column;
  flex:1;
}
.post-card-title{
  font-family:var(--fd);
  font-size:1rem;
  font-weight:400;
  color:var(--text);
  line-height:1.4;
  letter-spacing:.01em;
  margin-bottom:var(--sp-3);
  transition:color var(--dur) var(--ease);
}
.post-card:hover .post-card-title{color:var(--gold-light)}
.post-card-excerpt{
  font-family:var(--fu);
  font-size:.8125rem;
  color:var(--text-3);
  line-height:1.65;
  flex:1;
  margin-bottom:var(--sp-4);
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.post-card-meta{
  display:flex;
  align-items:center;
  gap:var(--sp-3);
  font-family:var(--fu);
  font-size:.8rem;
  color:var(--text-3);
  border-top:1px solid var(--gold-border);
  padding-top:var(--sp-4);
  margin-top:auto;
}
.meta-sep{color:var(--gold);opacity:.4;font-size:.6em}

/* ======================================
   POSTS SECTION
   ====================================== */
.posts-section{padding-block:var(--sp-16)}
.posts-section + .posts-section{padding-top:0}

/* ======================================
   SINGLE POST
   ====================================== */
.single-post-wrap{padding-block:var(--sp-10)}

/* Breadcrumb */
.breadcrumb{
  font-family:var(--fu);
  font-size:.8rem;
  color:var(--text-3);
  letter-spacing:.04em;
  display:flex;
  align-items:center;
  gap:var(--sp-2);
  flex-wrap:wrap;
  margin-bottom:var(--sp-8);
}
.breadcrumb a{color:var(--text-3);text-decoration:none;transition:color var(--dur) var(--ease)}
.breadcrumb a:hover{color:var(--gold)}
.breadcrumb-sep{color:var(--gold);opacity:.4}
.breadcrumb-current{color:var(--text-2);max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* Post Header */
.post-header{
  max-width:var(--prose);
  margin-inline:auto;
  margin-bottom:var(--sp-10);
  text-align:center;
}
.post-title{
  font-family:var(--fd);
  font-size:clamp(2rem,4.5vw,2.875rem);
  font-weight:400;
  color:var(--text);
  line-height:1.2;
  letter-spacing:.02em;
  margin-bottom:var(--sp-6);
}
.post-meta{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:var(--sp-4);
  font-family:var(--fu);
  font-size:.875rem;
  color:var(--text-3);
  flex-wrap:wrap;
}
.post-meta-author{
  display:flex;
  align-items:center;
  gap:var(--sp-2);
  font-weight:500;
  color:var(--text-2);
}
.post-meta-author img{width:28px;height:28px;border-radius:50%;object-fit:cover;border:1px solid var(--gold-border)}
.post-meta-sep{color:var(--gold);opacity:.4}
.reading-badge{display:flex;align-items:center;gap:4px}

/* Featured Image */
.post-featured-image{
  max-width:960px;
  margin-inline:auto;
  margin-bottom:var(--sp-12);
  border-radius:var(--r-lg);
  overflow:hidden;
  box-shadow:var(--sh-lg);
}
.post-featured-image img{width:100%;display:block}

/* Article Body */
.article-body{
  max-width:var(--prose);
  margin-inline:auto;
  font-family:var(--fb);
  font-size:1.0625rem;
  line-height:1.9;
  color:var(--text-2);
}
.article-body>*+*{margin-top:1.6em}
.article-body h2{
  font-family:var(--fd);
  font-size:1.75rem;
  font-weight:400;
  color:var(--text);
  letter-spacing:.02em;
  margin-top:2.5em;
  margin-bottom:.7em;
  padding-top:.7em;
  border-top:1px solid var(--gold-border);
}
.article-body h3{
  font-family:var(--fd);
  font-size:1.25rem;
  font-weight:400;
  color:var(--text);
  margin-top:2em;
  margin-bottom:.5em;
}
.article-body a{color:var(--gold);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.article-body a:hover{color:var(--gold-light)}
.article-body ul{padding-left:1.4em;list-style:disc}
.article-body ol{padding-left:1.4em;list-style:decimal}
.article-body li+li{margin-top:.4em}
.article-body strong{font-weight:700;color:var(--text)}
.article-body em{font-style:italic}
.article-body hr{border:none;border-top:1px solid var(--gold-border);margin-block:var(--sp-10)}
.article-body img{border-radius:var(--r-md);margin-block:var(--sp-8)}

/* Blockquote - pull quote style */
.article-body blockquote{
  border-left:3px solid var(--gold);
  padding:var(--sp-5) var(--sp-8);
  margin-block:var(--sp-8);
  position:relative;
}
.article-body blockquote::before{
  content:'\201C';
  font-family:var(--fd);
  font-size:4rem;
  color:var(--gold);
  opacity:.3;
  position:absolute;
  top:-10px;
  left:var(--sp-4);
  line-height:1;
}
.article-body blockquote p{
  font-family:var(--fd);
  font-size:1.125rem;
  font-style:italic;
  color:var(--text);
  margin:0;
}

.article-body code{
  font-family:'Courier New',monospace;
  font-size:.875em;
  background:var(--surface);
  border:1px solid var(--gold-border);
  border-radius:var(--r-sm);
  padding:.1em .4em;
  color:var(--gold-light);
}
.article-body pre{
  background:var(--surface);
  border:1px solid var(--gold-border);
  border-radius:var(--r-md);
  padding:var(--sp-6);
  overflow-x:auto;
}
.article-body pre code{background:none;border:none;padding:0}

/* Tip/dica box */
.article-body .tip-box,
.article-body .wp-block-callout{
  background:var(--gold-soft);
  border:1px solid var(--gold-border);
  border-radius:var(--r-md);
  padding:var(--sp-5) var(--sp-6);
}

/* Tags */
.post-tags-section{
  max-width:var(--prose);
  margin-inline:auto;
  margin-top:var(--sp-12);
  padding-top:var(--sp-8);
  border-top:1px solid var(--gold-border);
}
.post-tags-label{
  font-family:var(--fu);
  font-size:.75rem;
  font-weight:600;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--text-3);
  margin-bottom:var(--sp-3);
}
.post-tags-list{display:flex;flex-wrap:wrap;gap:var(--sp-2)}
.post-tags-list a{
  font-family:var(--fu);
  font-size:.8125rem;
  color:var(--text-3);
  background:var(--surface);
  border:1px solid rgba(255,255,255,.06);
  border-radius:100px;
  padding:4px 12px;
  text-decoration:none;
  transition:border-color var(--dur) var(--ease),color var(--dur) var(--ease);
}
.post-tags-list a:hover{border-color:var(--gold);color:var(--gold)}

/* Related */
.related-posts{
  background:var(--surface);
  border-top:1px solid var(--gold-border);
  padding-block:var(--sp-12);
  margin-top:var(--sp-16);
}

/* ======================================
   ARCHIVE (Category / Tag)
   ====================================== */
.archive-header{
  background:var(--header-bg);
  border-bottom:2px solid var(--gold);
  padding-block:var(--sp-16) var(--sp-12);
  text-align:center;
}
.archive-eyebrow{
  font-family:var(--fu);
  font-size:.75rem;
  font-weight:600;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--gold);
  margin-bottom:var(--sp-4);
}
.archive-name{
  font-family:var(--fd);
  font-size:clamp(2rem,5vw,3rem);
  font-weight:400;
  color:var(--text);
  letter-spacing:.02em;
  margin-bottom:var(--sp-4);
}
.archive-description{
  font-family:var(--fb);
  font-size:1rem;
  font-style:italic;
  color:var(--text-3);
  max-width:480px;
  margin-inline:auto;
}
.archive-count{
  font-family:var(--fu);
  font-size:.8rem;
  color:var(--text-3);
  margin-top:var(--sp-3);
  letter-spacing:.04em;
}

/* ======================================
   STATIC PAGES
   ====================================== */
.page-header-bar{
  background:var(--header-bg);
  border-bottom:2px solid var(--gold);
  padding-block:var(--sp-12);
  text-align:center;
}
.page-title-main{
  font-family:var(--fd);
  font-size:clamp(1.875rem,4vw,2.75rem);
  font-weight:400;
  color:var(--text);
  letter-spacing:.02em;
  margin-top:var(--sp-4);
}
.page-body-wrap{padding-block:var(--sp-12) var(--sp-16)}
.page-layout{max-width:var(--prose);margin-inline:auto}
.page-featured-image{border-radius:var(--r-lg);overflow:hidden;margin-bottom:var(--sp-10);box-shadow:var(--sh-md)}
.page-featured-image img{width:100%;display:block}
.page-content .article-body{
  background:var(--surface);
  border:1px solid var(--gold-border);
  border-radius:var(--r-lg);
  padding:var(--sp-10);
}

/* ======================================
   PAGINATION
   ====================================== */
.pagination-wrapper{
  padding-block:var(--sp-12);
  display:flex;justify-content:center;
}
.nav-links{display:flex;align-items:center;gap:var(--sp-1)}
.nav-links .page-numbers{
  font-family:var(--fu);
  font-size:.875rem;
  font-weight:500;
  min-width:40px;height:40px;
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:var(--r-sm);
  color:var(--text-3);
  text-decoration:none;
  border:1px solid rgba(255,255,255,.06);
  padding-inline:var(--sp-3);
  transition:border-color var(--dur) var(--ease),color var(--dur) var(--ease);
  background:var(--surface);
}
.nav-links .page-numbers:hover{border-color:var(--gold);color:var(--gold)}
.nav-links .page-numbers.current{background:var(--gold);color:var(--bg);border-color:var(--gold)}
.nav-links .page-numbers.prev,
.nav-links .page-numbers.next{letter-spacing:.04em;text-transform:uppercase;font-size:.75rem}

/* ======================================
   FOOTER
   ====================================== */
.site-footer{
  background:var(--header-bg);
  border-top:1px solid var(--gold-border);
  margin-top:var(--sp-16);
}
.footer-grid{
  max-width:var(--max);
  margin-inline:auto;
  padding:var(--sp-16) var(--sp-6) var(--sp-12);
  display:grid;
  grid-template-columns:240px 1fr 1fr;
  gap:var(--sp-12);
}
.footer-logo-area .site-logo{margin-bottom:var(--sp-4)}
.footer-tagline{
  font-family:var(--fb);
  font-size:.875rem;
  font-style:italic;
  color:var(--text-3);
  line-height:1.6;
  max-width:200px;
}
.footer-col-title{
  font-family:var(--fu);
  font-size:.75rem;
  font-weight:600;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--gold);
  margin-bottom:var(--sp-5);
}
.footer-links{display:flex;flex-direction:column;gap:var(--sp-3)}
.footer-links a{
  font-family:var(--fu);
  font-size:.9rem;
  color:var(--text-3);
  text-decoration:none;
  transition:color var(--dur) var(--ease);
}
.footer-links a:hover{color:var(--gold-light)}
.footer-bottom{
  max-width:var(--max);
  margin-inline:auto;
  padding:var(--sp-5) var(--sp-6);
  border-top:1px solid var(--gold-border);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--sp-4);
}
.footer-copy{
  font-family:var(--fu);
  font-size:.8125rem;
  color:var(--text-3);
}
.footer-bottom-links{display:flex;gap:var(--sp-6)}
.footer-bottom-links a{
  font-family:var(--fu);
  font-size:.8125rem;
  color:var(--text-3);
  text-decoration:none;
  transition:color var(--dur) var(--ease);
}
.footer-bottom-links a:hover{color:var(--gold)}

/* ======================================
   404
   ====================================== */
.error-404-wrap{text-align:center;padding-block:var(--sp-24)}
.error-404-code{
  font-family:var(--fd);
  font-size:8rem;
  font-weight:400;
  color:var(--gold);
  opacity:.15;
  line-height:1;
}
.error-404-title{font-family:var(--fd);font-size:2rem;font-weight:400;color:var(--text);margin-bottom:var(--sp-4)}
.error-404-msg{font-family:var(--fu);font-size:1rem;color:var(--text-3);margin-bottom:var(--sp-8)}

/* CTA Button */
.btn-gold{
  display:inline-flex;
  align-items:center;
  gap:var(--sp-2);
  background:transparent;
  color:var(--gold);
  border:1px solid var(--gold);
  font-family:var(--fu);
  font-size:.8125rem;
  font-weight:600;
  letter-spacing:.08em;
  text-transform:uppercase;
  padding:var(--sp-3) var(--sp-6);
  border-radius:var(--r-sm);
  text-decoration:none;
  transition:background var(--dur) var(--ease),color var(--dur) var(--ease);
}
.btn-gold:hover{background:var(--gold);color:var(--bg)}

/* No posts */
.no-posts{text-align:center;padding-block:var(--sp-16);color:var(--text-3);font-family:var(--fu)}

/* WordPress content responsive */
.article-body img,.article-body iframe,.article-body video{max-width:100%!important}
.article-body table{width:100%;border-collapse:collapse;overflow-x:auto;display:block}
.article-body table th,.article-body table td{
  padding:var(--sp-3) var(--sp-4);
  border:1px solid var(--gold-border);
  text-align:left;
}
.article-body table th{background:var(--surface);color:var(--gold)}
.article-body .alignleft,.article-body .alignright{float:none!important;margin-inline:auto!important;width:100%!important}

/* Sidebar */
.widget{
  background:var(--surface);
  border:1px solid var(--gold-border);
  border-radius:var(--r-lg);
  padding:var(--sp-6);
  margin-bottom:var(--sp-6);
}
.widget-title{
  font-family:var(--fd);
  font-size:1rem;
  font-weight:400;
  color:var(--text);
  letter-spacing:.02em;
  margin-bottom:var(--sp-5);
  padding-bottom:var(--sp-4);
  border-bottom:1px solid var(--gold-border);
}
.widget ul li{padding-block:var(--sp-3);border-bottom:1px solid rgba(255,255,255,.04);font-family:var(--fu);font-size:.9rem}
.widget ul li:last-child{border-bottom:none}
.widget ul li a{color:var(--text-2);text-decoration:none;transition:color var(--dur) var(--ease)}
.widget ul li a:hover{color:var(--gold)}

/* ======================================
   RESPONSIVE
   ====================================== */
@media(max-width:1024px){
  .posts-grid{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:1fr 1fr}
  .footer-logo-area{grid-column:1/-1}
}

@media(max-width:768px){
  .posts-grid{grid-template-columns:1fr}
  .hero-section{height:55vh;min-height:340px}
  .hero-content{padding:var(--sp-6) var(--sp-5) var(--sp-8)}  .hero-title{font-size:1.75rem}
  .post-header{text-align:left}
  .post-meta{justify-content:flex-start}
  .archive-header{padding-block:var(--sp-10) var(--sp-8);text-align:left}
  .page-header-bar{text-align:left;padding-block:var(--sp-8)}
  .footer-grid{grid-template-columns:1fr;gap:var(--sp-8)}
  .footer-logo-area{grid-column:auto}
  .footer-bottom{flex-direction:column;text-align:center}
  .post-card-body{padding:var(--sp-5)}

  /* Mobile nav */
  .menu-toggle{display:flex}
  .search-wrapper{display:none}
  .main-navigation{display:none}
  .main-navigation.is-open,.main-navigation[data-open="true"]{
    display:block;
    position:fixed;
    top:72px;left:0;right:0;bottom:0;
    background:var(--header-bg);
    padding:var(--sp-6);
    overflow-y:auto;
    z-index:9999;
    border-top:1px solid var(--gold-border);
  }
  .main-navigation ul{flex-direction:column;align-items:flex-start;gap:var(--sp-2)}
  .main-navigation ul li a{
    font-size:1rem;
    padding:var(--sp-3) var(--sp-4);
    letter-spacing:.08em;
    width:100%;display:block;
  }
  .main-navigation ul li ul{display:none;position:static;margin-top:var(--sp-2);margin-left:var(--sp-4);background:rgba(255,255,255,.03);border:none;border-radius:var(--r-sm);padding:var(--sp-2)}
  .main-navigation ul li.is-open>ul{display:flex}
}

@media(max-width:480px){
  .container{padding-inline:var(--sp-4)}
  .hero-section{height:60vh;min-height:340px}
  .hero-title{font-size:1.5rem}
  .post-title{font-size:1.75rem}
  .article-body{font-size:1rem}
  .post-card-thumb{aspect-ratio:16/9}
}
