

.home{
  padding-top:26px;
  padding-bottom:44px;
  --hp-ink:#2c2622;
  --hp-primary:#9e2b25;
  --hp-primary-d:#7c1f1b;
  --hp-gold:#c8a45c;
  --hp-gold-d:#a8843f;
  --hp-paper:#fbf6ec;
  --hp-card:#ffffff;
  --hp-line:#ece2d2;
  --hp-muted:#8c8070;
  --hp-green:#2f8a4e;
  --hp-red:#c0392b;
}

.home .row.auto.br5{
  background:transparent;
  border:none;
  box-shadow:none;
  padding:0;
  overflow:visible;
}
.home .row.auto.br5:hover{ box-shadow:none; }

.home-card{
  background:#ffffff;
  border:1px solid #e9dcc7;
  box-shadow:0 14px 38px rgba(124,31,27,.10), 0 2px 6px rgba(124,31,27,.05);
  border-radius:14px;
  padding:30px 32px;
  height:100%;
  display:flex;
  flex-direction:column;
}
.home-card:hover{ box-shadow:0 18px 46px rgba(124,31,27,.14), 0 2px 6px rgba(124,31,27,.06); }

.home-trust{
  margin-top:auto;
  padding:18px 20px;
  background:rgba(200,164,92,.10);
  border:1px solid #efe2cc;
  border-radius:10px;
  display:flex;
  flex-direction:column;
  gap:12px;
}

.ht-item{ display:flex; align-items:center; gap:9px; color:var(--hp-ink); font-size:var(--fs-sm); line-height:1.5; }
.ht-ico{
  flex:0 0 auto;
  width:20px; height:20px; border-radius:50%;
  background:var(--hp-primary); color:#fff; font-size:var(--fs-xs); font-weight:700;
  display:flex; align-items:center; justify-content:center;
}
.ht-item b{ color:var(--hp-primary-d); font-weight:700; }

.home .form .row .input{ height:72px; }

.home .home-hero{ align-items:stretch; }
.ha-col{ display:flex; flex-direction:column; gap:20px; height:100%; }

.hn-side{ padding-top:16px; border-top:1px dashed var(--hp-line); }
.hn-side-title{
  display:flex; align-items:baseline; justify-content:space-between;
  font-size:var(--fs-base); font-weight:700; color:var(--hp-primary-d);
  padding-left:10px; margin-bottom:12px;
  border-left:4px solid var(--hp-gold); letter-spacing:1px;
}
.hn-side-title a{
  font-size:var(--fs-xs); font-weight:400; color:var(--hp-muted);
  letter-spacing:0; text-decoration:none;
}
.hn-side-title a:hover{ color:var(--hp-primary); }
.hn-side-list{ display:flex; flex-wrap:wrap; gap:8px; }
.hn-side-list a{
  display:inline-flex; align-items:center; justify-content:center;
  padding:6px 12px; border-radius:16px;
  background:#fff8f2; border:1px solid #f0e2cf;
  color:var(--hp-ink); font-size:var(--fs-base); text-decoration:none;
  transition:.18s;
}
.hn-side-list a:hover{ background:var(--hp-primary); border-color:var(--hp-primary); color:#fff; }

.home .box_header{
  background:transparent;
  padding:0 0 12px;
  display:flex;
  align-items:center;
  gap:18px;
}
.home .box_header h1{
  text-align:left;
  

  min-height:0;
  font-size:38px;
  line-height:1.2;
  letter-spacing:5px;
  color:var(--hp-primary-d);
  font-family:"STKaiti","KaiTi","Songti SC","SimSun",serif;
  font-weight:700;
  margin:0;
  padding-bottom:2px;
  position:relative;
}

.home .box_header h1::after{
  content:"";
  position:absolute;
  left:2px; bottom:-5px;
  width:60px; height:3px;
  border-radius:2px;
  background:linear-gradient(90deg,var(--hp-gold),var(--hp-gold-d));
}

.home .home-seal{
  flex:0 0 auto;
  width:58px; height:58px;
  border-radius:10px;
  background:linear-gradient(135deg,var(--hp-primary),var(--hp-primary-d));
  color:#fff;
  font-family:"STKaiti","KaiTi","Songti SC","SimSun",serif;
  font-size:32px;
  font-weight:700;
  display:flex; align-items:center; justify-content:center;
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.35), 0 4px 10px rgba(124,31,27,.25);
}
.home .home-sub{
  margin:20px 0 18px;
  color:var(--hp-muted);
  font-size:var(--fs-base);
  letter-spacing:2px;
}

.home .form .inputs{
  border:1px solid var(--hp-line);
  border-top:3px solid var(--hp-primary);
  border-radius:12px;
  background:#fff;
  margin-bottom:24px;
  box-shadow:0 2px 8px rgba(124,31,27,.04);
}
.home .form .inputs .row{ margin:0 6px; }
.home .form .inputs .row:not(:last-child) .input{
  border-bottom:1px solid #f1e9da;
}
.home .form .row .input label{
  color:var(--hp-ink);
  font-weight:600;
  white-space:nowrap;
}
.home .form .row .input input[type="text"],
.home .form .row .input input{ color:var(--hp-ink); }
.home .form .row button{
  background-image:linear-gradient(90deg,#b5322b 0%,#8c211c 100%);
  border-radius:10px;
  font-size:var(--fs-base);
  font-weight:700;
  letter-spacing:2px;
  box-shadow:0 6px 16px rgba(124,31,27,.28);
  margin-top:12px;
}
.home .form .row button:hover{ filter:brightness(1.05); }

.home-almanac{
  background:transparent;
  border:none;
  box-shadow:none;
  border-radius:0;
  padding:0;
  height:100%;
  display:flex;
  flex-direction:column;
  

  justify-content:space-between;
  gap:20px;
}
.ha-head{ border-bottom:1px dashed var(--hp-line); padding-bottom:18px; }
.ha-date{ display:flex; align-items:center; gap:16px; }
.ha-day{
  flex:0 0 auto;
  width:78px; height:78px;
  border-radius:14px;
  background:linear-gradient(135deg,#fbeee9,#f6ddd6);
  color:var(--hp-primary-d);
  font-size:46px; font-weight:700;
  display:flex; align-items:center; justify-content:center;
  font-family:"STKaiti","KaiTi","Songti SC","SimSun",serif;
  line-height:1;
}
.ha-meta{ display:flex; flex-direction:column; gap:7px; }
.ha-week{ color:var(--hp-primary); font-weight:700; font-size:var(--fs-base); }
.ha-ym{ color:var(--hp-ink); font-size:var(--fs-sm); }
.ha-lunar{ color:var(--hp-muted); font-size:var(--fs-sm); }

.ha-yiji{ display:flex; flex-direction:column; gap:12px; }
.ha-yi,.ha-ji{
  display:flex; align-items:flex-start; gap:12px;
  background:#fafafa; border-radius:10px; padding:18px 20px;
  border:1px solid var(--hp-line);
}
.ha-tag{
  flex:0 0 auto;
  float:none;
  display:inline-flex; align-items:center; justify-content:center;
  width:28px; height:28px; border-radius:50%;
  color:#fff; font-size:var(--fs-base); font-weight:700; margin-right:0;
}
.ha-yi .ha-tag{ background:var(--hp-green); }
.ha-ji .ha-tag{ background:var(--hp-red); }
.ha-yi p,.ha-ji p{
  flex:1; min-width:0;
  margin:0; color:var(--hp-ink); font-size:var(--fs-base); line-height:var(--lh-body);
  overflow:visible; word-break:break-word;
}

.ha-info{ margin:0; display:grid; grid-template-columns:1fr 1fr; gap:22px 24px; }
.ha-info > div{ display:flex; flex-direction:column; border-bottom:1px dashed #f1e9da; padding-bottom:13px; }
.ha-info dt{ color:var(--hp-gold-d); font-size:var(--fs-xs); font-weight:700; letter-spacing:1px; line-height:1.6; }
.ha-info dd{ margin:5px 0 0; color:var(--hp-ink); font-size:var(--fs-sm); line-height:1.9; }

.ha-more{
  display:block; text-align:center;
  margin:0 -32px -30px;
  background:linear-gradient(90deg,#fbeee9,#f6ddd6);
  color:var(--hp-primary-d); font-weight:700; font-size:var(--fs-sm);
  padding:18px; border-radius:0 0 14px 14px; text-decoration:none; letter-spacing:1px;
  border:0; border-top:1px solid #f0d9d2; transition:.2s;
}
.ha-more:hover{ background:var(--hp-primary); color:#fff; }

.home-nav{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
}
.hn-group{
  background:#fff;
  border:1px solid #e9dcc7;
  border-radius:12px;
  padding:20px 22px;
  box-shadow:0 6px 18px rgba(124,31,27,.05);
  

  display:flex;
  flex-direction:column;
  justify-content:center;
}
.hn-group-wide{ grid-column:1 / -1; }
.hn-title{
  font-size:var(--fs-base); font-weight:700; color:var(--hp-primary-d);
  padding-left:10px; margin-bottom:14px;
  border-left:4px solid var(--hp-gold);
  letter-spacing:1px;
}
.hn-links{ display:flex; flex-wrap:wrap; gap:0 26px; align-content:flex-start; flex:0 0 auto; }

.hn-links a{
  display:inline-block;
  position:relative;
  padding:7px 0 7px 15px;
  background:none;
  border:none;
  border-radius:0;
  color:var(--hp-ink);
  font-size:var(--fs-base);
  line-height:1.8;
  text-decoration:none;
  transition:.18s;
}
.hn-links a::before{
  content:"";
  position:absolute; left:1px; top:50%; margin-top:-2px;
  width:5px; height:5px; border-radius:50%;
  background:var(--hp-gold);
  transition:.18s;
}
.hn-links a:hover{ background:none; color:var(--hp-primary); }
.hn-links a:hover::before{ background:var(--hp-primary); transform:scale(1.5); }

.home .category .item{ display:block; float:none; }
.home .category .h2title{
  margin:0 0 20px;
  padding-left:12px;
  border-left:5px solid var(--hp-primary);
  border-bottom:none;
  font-size:var(--fs-h2); font-weight:700; color:var(--hp-ink);
}
.home .category .h2title a{ color:var(--hp-ink); text-decoration:none; }
.home .category .h2title a:hover{ color:var(--hp-primary); }

.home .category .ciyu{ display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
.home .category .ciyu a{
  float:none;
  display:inline-flex; align-items:center; justify-content:center;
  min-width:auto;
  margin:0;
  padding:9px 18px;
  background:#fff;
  border:1px solid var(--hp-line);
  border-radius:20px;
  color:var(--hp-ink);
  font-size:var(--fs-base);
  text-decoration:none;
  transition:.18s;
}
.home .category .ciyu a:hover{
  background:var(--hp-primary);
  border-color:var(--hp-primary);
  color:#fff;
  transform:translateY(-1px);
}

.home .box_s_list2{ margin-top:10px; }
.home .box_s_list2 ul{ margin:0; padding:0; }
.home .box_s_list2 li{
  height:auto; line-height:2;
  border-bottom:1px dashed #f1e9da;
}
.home .box_s_list2 li:before{ color:var(--hp-gold-d); }
.home .box_s_list2 li a{ color:var(--hp-ink); font-size:var(--fs-base); text-decoration:none; }
.home .box_s_list2 li a:hover{ color:var(--hp-primary); }

@media screen and (min-width:900px){
  .home-cols{ align-items:stretch; column-gap:20px; }
  .home .home-cols > .col-m-6{ flex:1 1 0; max-width:100%; display:flex; }
  .home .home-cols > .col-m-6 > .home-card{ flex:1 1 auto; }
}

.home > .row{ margin-bottom:32px; }
.home > .row:last-child{ margin-bottom:0; }

@media screen and (max-width:900px){
  .home{ padding:14px 12px 28px; }
  .home > .row{ margin-left:0; margin-right:0; padding-left:0; padding-right:0; }
  .home .col-m-8,.home .col-m-4{ padding:0; }
  .home-nav{ grid-template-columns:1fr 1fr; }
}
@media screen and (max-width:600px){
  .home{ padding:16px 10px 28px; }
  .home > .row{ margin-left:0; margin-right:0; margin-bottom:20px; }
  .home .row.auto.br5{ padding:0; }
  .home .home-card{ padding:22px 18px; }
  .home-nav{ grid-template-columns:1fr; }
  .ha-info{ grid-template-columns:1fr; }
  .ha-col{ gap:14px; }
  
  .ha-more{ margin:0 -18px -22px; border-radius:0 0 14px 14px; padding:16px; }
  .hn-side{ padding:20px 18px; }
  
  .home .box_header h1{ font-size:28px; letter-spacing:4px; }
  .home .box_header h1::after{ width:46px; }
  .home .home-seal{ width:50px; height:50px; font-size:27px; }
  .home .home-sub{ font-size:var(--fs-sm); letter-spacing:1px; margin:16px 0 14px; }
  .hn-links{ gap:0 18px; }
}
