
/* ===== 西岸统一站点导航 / 页脚（注入） ===== */
/* 隐藏各源页原生站点头导航 + 原生footer；保留案例筛选器 .filters */
.nav:not(.sn-nav), nav:not(.filters):not(.sn-nav), #topnav,
header:not(.hero), footer:not(.sn-foot){ display:none !important; }
/* 案例筛选器避开统一导航高度 */
.filters{ top:54px !important; }

/* ===== 统一首图比例（覆盖各源页差异，保证 6 页首屏一致） ===== */
/* 统一首屏高度：固定视口高度，桌面/移动同设备下 6 页比例完全一致 */
.hero, header.hero, section.hero, div.hero{
  height:78vh !important;
  max-height:760px !important;
  min-height:420px !important;
}
/* 背景图方式首图：强制居中裁切 */
.hero .bg, .hero .ph{
  background-size:cover !important;
  background-position:center center !important;
}
/* <img> 方式首图：强制铺满 + 居中 */
.hero img{
  object-fit:cover !important;
  object-position:center center !important;
}
/* 案例页首图：用一张案例实拍图作为统一大图首屏（白字浮层） */
div.hero.sn-caseshero{
  background:url(/cases/assets/case-02/photo-01.jpg) center/cover no-repeat !important;
  display:flex !important; align-items:center !important; justify-content:center !important;
  text-align:center !important; position:relative !important;
  max-width:none !important; width:100% !important; margin:0 !important; padding:0 !important;
}
div.hero.sn-caseshero::after{ content:""; position:absolute; inset:0; background:rgba(20,18,15,.46); }
div.hero.sn-caseshero h1, div.hero.sn-caseshero p{ position:relative; z-index:2; color:#fff !important; }
*{ box-sizing:border-box; }
.sn-nav{
  position:sticky; top:0; z-index:1000;
  display:flex; align-items:center; gap:14px;
  height:54px; padding:0 20px;
  background:#231F1B; color:#F4F1EC;
  font-family:"Microsoft YaHei","PingFang SC",sans-serif;
  box-shadow:0 1px 0 rgba(164,119,47,.35);
}
.sn-nav .sn-brand{
  font-family:"Noto Serif SC","Songti SC",serif; font-weight:600;
  font-size:17px; letter-spacing:1px; color:#F4F1EC; text-decoration:none; white-space:nowrap;
}
.sn-nav .sn-brand b{ color:#A4772F; }
.sn-nav .sn-links{ margin-left:auto; display:flex; gap:2px; flex-wrap:wrap; }
.sn-nav .sn-links a{
  font-size:13px; color:#E9E4DA; text-decoration:none;
  padding:7px 12px; border-radius:20px; transition:.2s; white-space:nowrap;
}
.sn-nav .sn-links a:hover{ background:rgba(164,119,47,.25); color:#fff; }
.sn-nav .sn-links a.active{ background:#A4772F; color:#231F1B; font-weight:600; }
.sn-nav .sn-tel{ font-size:13px; color:#A4772F; text-decoration:none; white-space:nowrap; }
.sn-nav .sn-burger{
  display:none; margin-left:auto; background:none; border:0; color:#F4F1EC;
  font-size:22px; cursor:pointer; line-height:1;
}
.sn-nav.open .sn-links{
  display:flex; position:absolute; top:54px; left:0; right:0;
  flex-direction:column; gap:0; background:#231F1B; padding:8px 0;
  box-shadow:0 8px 20px rgba(0,0,0,.3);
}
.sn-nav.open .sn-links a{ border-radius:0; padding:12px 20px; }
.sn-foot{
  background:#1A1714; color:#C9C2B6; padding:40px 20px 22px;
  font-family:"Microsoft YaHei","PingFang SC",sans-serif; font-size:13px; line-height:1.9;
}
.sn-foot .sn-fwrap{ max-width:1080px; margin:0 auto;
  display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:26px; }
.sn-foot h4{ color:#A4772F; font-size:13px; margin:0 0 10px; letter-spacing:1px; }
.sn-foot .sn-fbrand{ font-family:"Noto Serif SC",serif; font-size:18px; color:#F4F1EC; margin-bottom:8px; }
.sn-foot .sn-fbrand b{ color:#A4772F; }
.sn-foot a{ color:#C9C2B6; text-decoration:none; display:block; }
.sn-foot a:hover{ color:#A4772F; }
.sn-foot .sn-fbot{ max-width:1080px; margin:24px auto 0; padding-top:16px;
  border-top:1px solid rgba(255,255,255,.08); font-size:12px; color:#8A857C; text-align:center; }
.sn-foot .sn-fbot a{ display:inline; color:#A4772F; }
@media (max-width:760px){
  .sn-nav .sn-burger{ display:block; }
  .sn-nav .sn-links{ display:none; }
  .sn-nav .sn-tel{ display:none; }
  .sn-foot .sn-fwrap{ grid-template-columns:1fr; gap:18px; }
}
