*{margin:0;padding:0;box-sizing:border-box}

@font-face{font-family:"iconfont";src:url("../fonts/iconfont.woff2") format("woff2"),url("../fonts/iconfont.woff") format("woff"),url("../fonts/iconfont.ttf") format("truetype");font-weight:normal;font-style:normal;font-display:swap}

.iconfont{font-family:"iconfont"!important;font-size:22px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}

html{scroll-behavior:smooth}

body{
  font-family:Georgia,"Times New Roman",serif;
  background:#f6f1ea;
  color:#2e2a26;
  line-height:1.7;
}

/* ===== Hero 文章 ===== */
.blog-hero{
  position:relative;
  width:100%;
  height:88vh;
  min-height:520px;
  overflow:hidden;
}
.blog-hero a{
  display:block;
  position:relative;
  width:100%;
  height:100%;
}
.blog-hero img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform 1.2s ease;
}
.blog-hero a:hover img{transform:scale(1.03)}
.blog-hero-overlay{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  padding:60px 48px 48px;
  background:linear-gradient(to top,rgba(20,18,16,.78),rgba(20,18,16,0));
  color:#f6f1ea;
  text-align:center;
}
.blog-hero-overlay h1{
  font-size:44px;
  font-weight:normal;
  margin:12px 0;
  letter-spacing:0.02em;
  line-height:1.2;
}
.blog-hero-overlay .excerpt{
  font-size:17px;
  color:#e8dcc9;
  max-width:640px;
  margin:0 auto 14px;
}

/* ===== 标签 & 日期 ===== */
.tag{
  display:inline-block;
  background:#b07a4f;
  color:#fff;
  font-size:11px;
  letter-spacing:0.18em;
  padding:3px 12px;
  border-radius:14px;
  text-transform:uppercase;
}
.date{
  display:block;
  font-size:12px;
  letter-spacing:0.14em;
  text-transform:uppercase;
  color:#9a8d7b;
  margin-top:10px;
}

/* ===== 博客卡片网格 ===== */
.blog-grid{
  max-width:1200px;
  margin:0 auto;
  padding:64px 24px;
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:36px;
}
.blog-card{
  background:#fff;
  border-radius:4px;
  overflow:hidden;
  box-shadow:0 8px 30px rgba(46,42,38,.08);
}
.blog-card a{
  display:block;
  position:relative;
  overflow:hidden;
}
.blog-card img{
  width:100%;
  height:360px;
  object-fit:cover;
  display:block;
  transition:transform .8s ease;
}
.blog-card a:hover img{transform:scale(1.05)}
.blog-card-body{
  padding:26px 28px 32px;
}
.blog-card-body h2{
  font-size:21px;
  font-weight:normal;
  margin:12px 0 8px;
  line-height:1.3;
}
.blog-card-body .excerpt{
  color:#6b6154;
  font-size:15px;
}

/* ===== 全宽特写 ===== */
.blog-feature{
  display:grid;
  grid-template-columns:1.25fr 1fr;
  align-items:stretch;
  background:#fff;
}
.blog-feature-image{
  position:relative;
  min-height:480px;
}
.blog-feature-image a{
  display:block;
  position:relative;
  width:100%;
  height:100%;
  overflow:hidden;
}
.blog-feature-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .9s ease;
}
.blog-feature-image a:hover img{transform:scale(1.04)}
.blog-feature-text{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:64px 56px;
  background:#f6f1ea;
}
.blog-feature-text h2{
  font-size:32px;
  font-weight:normal;
  margin:14px 0 10px;
  line-height:1.25;
}
.blog-feature-text .excerpt{
  color:#6b6154;
  font-size:16px;
}

/* ===== 收尾图文并排 ===== */
.blog-closing{
  display:grid;
  grid-template-columns:1fr 1.15fr;
  align-items:stretch;
  background:#fff;
}
.blog-closing-text{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:64px 56px;
  background:#f6f1ea;
}
.blog-closing-text h2{
  font-size:32px;
  font-weight:normal;
  margin:14px 0 10px;
  line-height:1.25;
}
.blog-closing-text .excerpt{
  color:#6b6154;
  font-size:16px;
}
.blog-closing-text .excerpt + .excerpt{margin-top:16px}

/* ===== Footer ===== */
.site-footer{
  background:#2e2a26;
  color:#a89b89;
  padding:48px 24px 28px;
  font-size:13px;
  letter-spacing:0.05em;
}
.footer-container{
  max-width:1200px;
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:40px;
  text-align:left;
}
.footer-col h4{
  color:#f6f1ea;
  font-size:14px;
  letter-spacing:0.1em;
  text-transform:uppercase;
  margin-bottom:16px;
}
.footer-col ul{list-style:none}
.footer-col li{margin-bottom:10px}
.footer-col a{
  color:#a89b89;
  text-decoration:none;
  transition:color .3s;
}
.footer-col a:hover{color:#b07a4f}
.footer-bottom{
  border-top:1px solid rgba(246,241,234,.12);
  margin-top:40px;
  padding-top:20px;
  text-align:center;
}

/* ===== 响应式 1024px ===== */
@media (max-width:1024px){
  .blog-grid{grid-template-columns:1fr 1fr;gap:32px}
  .blog-card img{height:320px}
  .blog-feature-text,.blog-closing-text{padding:48px 40px}
  .blog-feature-text h2,.blog-closing-text h2{font-size:27px}
  .blog-hero-overlay h1{font-size:36px}
  .footer-container{grid-template-columns:repeat(2,1fr);gap:32px}
}

/* ===== 响应式 640px ===== */
@media (max-width:640px){
  .blog-hero{height:74vh;min-height:420px}
  .blog-hero-overlay{padding:40px 20px 32px}
  .blog-hero-overlay h1{font-size:27px}
  .blog-hero-overlay .excerpt{font-size:14px}

  .blog-grid{
    grid-template-columns:1fr;
    padding:40px 16px;
    gap:28px;
  }
  .blog-card img{height:300px}
  .blog-card-body{padding:22px 20px 28px}
  .blog-card-body h2{font-size:20px}

  .blog-feature,.blog-closing{grid-template-columns:1fr}
  .blog-feature-image{min-height:300px}
  .blog-feature-text,.blog-closing-text{padding:36px 22px}
  .blog-feature-text h2,.blog-closing-text h2{font-size:24px}

  .footer-container{grid-template-columns:1fr;gap:32px}
}
