/* Homepage polish — keeps original palette, modernizes spacing/surfaces */
.hp-wrap{max-width:1280px;margin:0 auto}
.hp-wrap table{border-collapse:separate !important;border-spacing:8px !important}
.hp-wrap > table > tbody > tr > td,
.hp-wrap table[width="100%"] > tbody > tr > td{
  vertical-align:top
}
/* Soft card feel for news/widget cells */
.hp-wrap td[style*="border"]{
  box-shadow:0 3px 12px rgba(15,23,42,.06) !important;
  transition:box-shadow .18s ease, transform .18s ease;
  padding:6px !important;
}
.hp-wrap td[style*="border"]:hover{
  box-shadow:0 8px 20px rgba(15,23,42,.10) !important;
}
/* Widget title bars already colored — refine */
.hp-wrap td > span[style*="background-color"]{
  letter-spacing:.02em;
  font-size:13px !important;
  box-sizing:border-box;
  padding:6px 4px !important;
}
.hp-wrap a{outline:none}
.hp-wrap img{max-width:100%;height:auto}
.hp-hero{
  margin:4px 8px 10px;
  padding:12px 14px;
  border:1px solid navy;
  border-radius:8px;
  background:linear-gradient(180deg,#ffffff 0%,#f7f9fc 100%);
  box-shadow:0 2px 10px rgba(0,0,60,.05);
}
.hp-hero h1{
  margin:0 0 4px;
  font-size:1.35rem;
  color:navy;
  font-weight:800;
  line-height:1.25;
}
.hp-hero p{
  margin:0;
  color:#334;
  font-size:13px;
  line-height:1.45;
}
.hp-newsblock{
  display:block;
  padding:4px 2px 2px;
}
.hp-newsblock table{border-spacing:0 !important}
.hp-news-title{
  margin:0 0 4px;
  font-size:1em;
  line-height:1.3;
  font-weight:bold;
}
.hp-news-title a{text-decoration:none;font-size:15px !important}
.hp-pinned a{font-size:15px !important}
.hp-news-excerpt{
  font-size:14px;
  line-height:1.45;
  color:#222;
}
.hp-news-more{
  display:inline-block;
  margin-top:4px;
  font-weight:700;
  color:navy;
  text-decoration:none;
  font-size:14px;
}
.hp-news-more:hover{text-decoration:underline}
.hp-news-thumb{
  border-radius:6px;
  border:1px solid #dde;
  display:block;
}
.hp-cat-badge{
  display:inline-block !important;
  border-radius:6px !important;
  padding:4px 6px !important;
  margin-bottom:6px !important;
  box-shadow:0 1px 0 rgba(0,0,0,.08);
}
.hp-pinned{
  border-top:1px solid #c9a07a !important;
  background-color:#e8c49a !important;
  padding:7px 8px !important;
  border-radius:0 0 4px 4px;
  margin-top:2px;
}
.hp-pinned a{font-weight:700}
.hp-widget-link{text-decoration:none;color:navy;font-size:13px;font-weight:700}
.hp-widget-link:hover{text-decoration:underline}
.hp-list{margin:8px 6px;padding-left:18px;text-align:left}
.hp-list li{margin:0 0 6px;line-height:1.35}
.hp-list a{color:#111;text-decoration:none}
.hp-list a:hover{color:navy;text-decoration:underline}
@media screen and (max-width:900px){
  .hp-wrap table{border-spacing:6px !important}
  .hp-hero{margin:4px 4px 8px;padding:10px}
  .hp-hero h1{font-size:1.15rem}
}
