:root{--navy-900:#292527;--navy-800:#ac8a51;--navy-700:#98733c;--navy-600:#aa8447;--gold:#aa8447;--gold-light:#e8c9ac;--ink:#333;--ink-soft:#666;--muted:#888;--bg:#fff;--line:#e8e4e1;--radius:0;--shadow:none}
body{background:#fff}.container{width:min(1200px,92%)}h1,h2,h3,h4{font-family:var(--sans)}.header{position:relative;border:0}.masthead{height:108px;display:flex;align-items:center;justify-content:space-between}.brand-mark{height:62px;width:62px;border-radius:0;background:#aa8447;color:#fff;font-size:37px;font-family:var(--serif)}.brand-name{font-size:28px;color:#98733c;letter-spacing:3px}.brand-sub{font-size:11px;color:#777;letter-spacing:3px}.hotline{display:flex;flex-direction:column;border-left:1px solid #ddd;padding-left:28px}.hotline small{color:#777;letter-spacing:2px}.hotline strong{font-size:29px;line-height:1.35;color:#aa8447}.nav-band{background:#aa8447}.nav-links{display:flex;justify-content:space-between;gap:0;height:54px}.nav-links li{flex:1;text-align:center}.nav-links a{color:white;display:block;padding:13px 8px;border:0;font-size:17px;font-weight:400}.nav-links a:hover,.nav-links a.active{background:#92703c;color:#fff;border:0}.hero{padding:72px 0 0;background:linear-gradient(90deg,rgba(19,20,29,.9),rgba(19,20,29,.15)),url('../images/hero-banner.jpg') center/cover;min-height:480px;position:relative}.hero::before,.hero::after{display:none}.hero-kicker{font-size:12px;letter-spacing:5px;color:#d3b398;margin-bottom:23px}.hero h1{font-family:var(--serif);font-size:50px;line-height:1.45;font-weight:600;letter-spacing:5px;color:#fff;max-width:900px}.hero .lead{font-size:20px;letter-spacing:5px;margin:20px 0 8px;color:#eee}.hero-areas{font-size:14px;color:#ddd;margin-bottom:26px;letter-spacing:1px}.btn{border-radius:0;padding:11px 24px;font-weight:400}.btn-gold{background:#aa8447;color:white;border-color:#aa8447}.btn-gold:hover{background:#92703c;color:#fff}.hero-foot{display:flex;justify-content:space-between;border-top:1px solid #ffffff30;margin-top:44px;padding:15px 0;color:#ddd;font-size:12px;letter-spacing:2px}.news-section{display:grid;grid-template-columns:1.55fr 1fr;gap:55px;padding-top:48px;padding-bottom:46px}.news-heading{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ddd;margin-bottom:18px;padding-bottom:13px;position:relative}.news-heading:after{content:'';width:40px;height:3px;background:#aa8447;position:absolute;bottom:-1px}.news-heading h2{font-size:23px;font-weight:500}.news-heading small{font-size:11px;letter-spacing:2px;color:#aaa;margin-left:12px}.news-heading>a{font-size:12px;color:#888}.news-section .article-card{display:block;padding:12px 0;border:0;border-bottom:1px solid #eee;background:white;box-shadow:none;border-radius:0}.news-section .article-card h3{font-size:16px;font-weight:500;margin:3px 0}.news-section .article-card p{display:none}.news-section .article-card .meta{font-size:11px}.about-tile{background:#f5f2ee;border-left:3px solid #aa8447;padding:27px 28px;min-height:235px}.about-tile>span{font-size:10px;letter-spacing:3px;color:#a18e7c}.about-tile h3{margin:13px 0;font-size:24px;font-family:var(--serif)}.about-tile p{font-size:14px;line-height:1.9;color:#777}.about-tile a{display:inline-block;margin-top:16px;font-size:13px}.section{padding:60px 0}.section:nth-of-type(odd){background:#f7f7f7}.section-head{margin-bottom:32px}.section-head h2{font-size:30px;letter-spacing:3px;font-weight:500}.section-head h2:after{content:'';display:block;width:38px;height:3px;background:#aa8447;margin:15px auto}.eyebrow{letter-spacing:4px;font-size:11px;color:#a6a0a0}.section-head p{font-size:14px;color:#888}.grid-practices{grid-template-columns:repeat(3,1fr);gap:18px}.practice-card{border:1px solid #e7e7e7;border-radius:0;padding:27px 25px;background:#fff;box-shadow:none}.practice-card .icon{border-radius:0;color:#aa8447;background:#f8f1e2;width:45px;height:45px;font-size:23px}.practice-card h3{font-size:20px;font-weight:500}.practice-card p{font-size:13px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.practice-card .tags{display:none}.badge{border-radius:0;background:#f8f1e3;color:#aa8447;font-size:10px}.practice-card:hover,.article-card:hover,.lawyer-card:hover{border-color:#aa8447;box-shadow:0 8px 22px #00000009;transform:translateY(-3px)}.reason{border:0;border-top:2px solid #aa8447;border-radius:0;background:#fff}.reason .no{color:#aa8447}.lawyer-card{border-radius:0;box-shadow:none;padding:0 0 22px;border:1px solid #eee;overflow:hidden}.lawyer-card .avatar{width:100%;height:265px;border-radius:0;object-fit:cover;object-position:top;margin:0 0 20px;background:#f3f3f3}.lawyer-card .areas{padding:0 18px;font-size:12px;min-height:44px}.lawyer-card .role{color:#aa8447}.article-card{border-radius:0;box-shadow:none}.article-card h3{font-size:19px}.cta-band{background:#ac8a51}.cta-band .btn-gold{background:white;color:#ac8a51}.footer{background:#262326}.footer h4,.footer .firm-name{color:#fff}.footer a{color:#cbc5c6}.footer p,.footer li,.footer-bottom{color:#aaa;font-size:13px}.kf-btn{background:#aa8447;border-radius:0}.kf-panel{border-radius:0}.page-hero{background:#f7f3f2}.direct-consult{padding:28px;background:#fcf8ef}.direct-consult p{margin:18px 0}.content-body a{overflow-wrap:anywhere}
@media(max-width:800px){.masthead{height:88px;gap:12px}.brand-name{font-size:20px;letter-spacing:0}.brand-sub{font-size:8px;letter-spacing:1px}.brand-mark{width:43px;height:43px;font-size:28px}.hotline{display:none}.nav-toggle{display:block}.nav-links{display:none;height:auto;position:static;width:100%;background:#aa8447;box-shadow:none;padding:0;border:0}.nav-links.open{display:flex;flex-direction:column;gap:0}.nav-links li{width:100%}.nav-links a{padding:11px}.hero{padding-top:45px;min-height:430px}.hero h1{font-size:34px;letter-spacing:2px}.hero .lead{font-size:17px}.hero-kicker{font-size:9px;letter-spacing:3px}.hero-areas{max-width:290px;font-size:12px}.hero-foot{margin-top:35px;font-size:10px;letter-spacing:0}.hero-foot span:last-child{display:none}.news-section{grid-template-columns:1fr;gap:30px;padding-top:30px}.grid-practices{grid-template-columns:repeat(2,1fr)}.practice-card{padding:20px 16px}.practice-card p{font-size:12px}.section{padding:40px 0}.section-head h2{font-size:26px}.grid-lawyers{grid-template-columns:repeat(2,1fr)}.lawyer-card .avatar{height:220px}.lawyer-card h3{font-size:20px}}
@media(max-width:420px){.grid-practices{grid-template-columns:1fr}.lawyer-card .avatar{height:180px}.hero h1{font-size:30px}.brand{gap:9px}.brand-name{font-size:18px}}

/* Champagne gold theme */

/* 图片版 logo：清除原本为文字块准备的金色底，保持透明与等比缩放 */
img.brand-mark{background:none;object-fit:contain;display:block}

/* 轮播图：不叠加文字的图片同样铺满整个横幅，避免两侧/上下出现浅色留白
   （cms-home.css 里原为 contain + 米色底，这里用更高优先级覆盖为 cover） */
.hero.image-only .carousel-image{background-size:cover;background-repeat:no-repeat;background-position:center;background-color:#0d2035}

/* 联系我们页头：专属底图（门廊暖光，寓意欢迎来访）与标语 */
.page-head--contact{
  background-image:linear-gradient(90deg,rgba(7,17,28,.95) 0%,rgba(7,17,28,.82) 34%,rgba(7,17,28,.40) 62%,rgba(7,17,28,.10) 100%),var(--banner-contact,url('../images/banner-contact-photo.jpg'));
  background-position:center,center 28%;
  background-size:cover,cover;
  background-repeat:no-repeat,no-repeat;
  padding:142px 0 134px;
}
.page-head--contact h1{font-size:38px;letter-spacing:3px}
.page-head__slogan{
  margin:14px 0 8px;
  font-family:var(--serif);
  font-size:24px;
  font-weight:700;
  letter-spacing:6px;
  color:#e7cd96;
}
@media(max-width:820px){
  .page-head--contact{
    padding:72px 0 66px;
    /* 窄屏时底图居中，保证手心与手机这个主体露出来 */
    background-position:center,58% center;
    /* 窄屏文字更宽，遮罩加强以保证可读性 */
    background-image:linear-gradient(90deg,rgba(7,17,28,.96) 0%,rgba(7,17,28,.84) 58%,rgba(7,17,28,.48) 100%),var(--banner-contact,url('../images/banner-contact-photo.jpg'));
  }
  .page-head--contact h1{font-size:28px;letter-spacing:2px}
  .page-head__slogan{font-size:18px;letter-spacing:4px}
}

/* 法律解读页头：法槌底图 + 左侧深色遮罩，保证标题可读 */
.page-head--articles{
  background-image:linear-gradient(90deg,rgba(7,17,28,.94) 0%,rgba(7,17,28,.80) 36%,rgba(7,17,28,.36) 68%,rgba(7,17,28,.10) 100%),var(--banner-articles,url('../images/banner-articles.jpg'));
  background-position:center,center center;
  background-size:cover,cover;
  background-repeat:no-repeat,no-repeat;
  padding:118px 0 112px;
}
.page-head--articles h1{font-size:38px;letter-spacing:3px}
@media(max-width:820px){
  .page-head--articles{
    padding:72px 0 66px;
    /* 窄屏时把法槌挪到偏右，标题区留出干净的底图 */
    background-position:center,68% center;
    /* 窄屏文字更宽，遮罩加强以保证可读性 */
    background-image:linear-gradient(90deg,rgba(7,17,28,.95) 0%,rgba(7,17,28,.83) 58%,rgba(7,17,28,.44) 100%),var(--banner-articles,url('../images/banner-articles.jpg'));
  }
  .page-head--articles h1{font-size:28px;letter-spacing:2px}
}

/* 申律团队页头：握手商务照片底图（原始比例，无虚化拼接）+ 左侧深色遮罩 */
.page-head--team{
  background-image:linear-gradient(90deg,rgba(7,17,28,.94) 0%,rgba(7,17,28,.80) 36%,rgba(7,17,28,.38) 68%,rgba(7,17,28,.10) 100%),var(--banner-team,url('../images/banner-team.jpg'));
  /* 页头是扁横幅，纵向只露出照片中间一段：定位在握手上 */
  background-position:center,center 88%;
  background-size:cover,cover;
  background-repeat:no-repeat,no-repeat;
  padding:118px 0 112px;
}
.page-head--team h1{font-size:38px;letter-spacing:3px}
@media(max-width:820px){
  .page-head--team{
    padding:72px 0 66px;
    /* 窄屏画幅接近照片比例，几乎能露出整张照片 */
    background-position:center,center center;
    /* 窄屏文字更宽，遮罩加强以保证可读性 */
    background-image:linear-gradient(90deg,rgba(7,17,28,.95) 0%,rgba(7,17,28,.86) 58%,rgba(7,17,28,.50) 100%),var(--banner-team,url('../images/banner-team.jpg'));
  }
  .page-head--team h1{font-size:28px;letter-spacing:2px}
}

/* 关于申律页头：前台实景底图（墙面金色名牌），标题压在下方深色区域 */
.page-head--about{
  background-image:linear-gradient(180deg,rgba(7,17,28,.04) 0%,rgba(7,17,28,.10) 42%,rgba(7,17,28,.55) 66%,rgba(7,17,28,.88) 100%),var(--banner-about,url('../images/banner-about.jpg'));
  background-position:center,center 60%;
  background-size:cover,cover;
  background-repeat:no-repeat,no-repeat;
  padding:280px 0 96px;
}
.page-head--about h1{font-size:38px;letter-spacing:3px}
@media(max-width:820px){
  .page-head--about{
    padding:210px 0 56px;
    /* 窄屏换用竖幅底图，保证「上海申律律师事务所」完整可见 */
    background-position:center,center 52%;
    background-image:linear-gradient(180deg,rgba(7,17,28,.06) 0%,rgba(7,17,28,.14) 46%,rgba(7,17,28,.62) 72%,rgba(7,17,28,.90) 100%),var(--banner-about,url('../images/banner-about-mobile.jpg'));
  }
  .page-head--about h1{font-size:28px;letter-spacing:2px}
}

/* 关于申律页底部：申律环境组图（律师团队合影 + 办公环境） */
.about-gallery{margin:40px 0 0}
.about-gallery img{
  display:block;width:100%;height:auto;
  border:1px solid var(--line);background:#faf6ee;
}
@media(max-width:820px){
  .about-gallery{margin-top:28px}
}

/* 联系页左右两栏：各自成列，最后一栏自动撑满，实现两栏上下对齐 */
.contact-stack{display:flex;flex-direction:column;gap:32px}
.contact-stack>.contact-card:last-child{flex:1}

/* 到所方式 */
.visit-card{padding:0;overflow:hidden}
.visit-card__head{background:#aa8447;color:#fff;text-align:center;font-size:18px;letter-spacing:3px;padding:12px 0}
.visit-ways{list-style:none;margin:0;padding:20px 26px 2px}
.visit-way{display:flex;gap:16px;align-items:flex-start;padding-bottom:18px}
.visit-way+.visit-way{border-top:1px dashed #e7e2d7;padding-top:18px}
.visit-way__icon{flex:none;width:44px;height:44px;border:1.5px solid #c9ab73;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#aa8447}
.visit-way__icon svg{width:24px;height:24px}
.visit-way__body h4{margin:0 0 6px;font-size:18px;font-weight:600;letter-spacing:2px;color:#262326}
.visit-way__body p{margin:0;font-size:14.5px;line-height:1.85;color:#6f6a63}

/* 公众号 + 在线咨询 合并卡片 */
.merged-card{display:flex;flex-direction:column;padding:26px 28px 0;overflow:hidden}
.merged-card .qr-block{padding:4px 0 0}
.merged-card .qr-img{width:160px;height:160px;margin:8px auto 14px}
.merged-card .qr-title{font-size:19px;margin-bottom:6px}
.merged-card .qr-note{font-size:12.5px}
.merged-divider{height:1px;background:#eae5da;margin:20px 0}
.consult-title{margin:0 0 8px;font-size:18px;font-weight:600;letter-spacing:2px;color:#262326}
.consult-block{padding-top:0}
/* 免费咨询按钮收窄，靠左对齐 */
.merged-card .consult-note{margin-bottom:18px;font-size:13.5px}
/* 免费咨询底色块与卡片边框对齐（与「到所方式」标题栏同宽） */
.merged-card .consult-btn{display:block;width:100%;padding:15px 0;font-size:16px;letter-spacing:3px;text-align:center}

/* 联系方式卡片：地图随卡片高度伸缩，保证左右两栏底部平齐 */
.contact-card--info{display:flex;flex-direction:column;justify-content:space-between}
/* 地图按原比例完整显示，不做任何裁切 */
.contact-card--info .map-box{position:relative;flex:0 0 auto;aspect-ratio:2833/2292}
.contact-card--info .map-box__link{position:absolute;inset:0;display:block}
.contact-card--info .map-box__img{width:100%;height:100%;object-fit:contain;object-position:center}
/* 地址、电话等信息加大一号并加粗 */
.contact-card--info .contact-item .k{font-size:15px}
.contact-card--info .contact-item .v{font-size:18px;font-weight:600}

/* 联系页左栏略宽，让地图显示得更完整（窄屏仍为单列） */
@media(min-width:821px){.contact-grid{grid-template-columns:1.35fr 1fr}}
.qr-block{text-align:center;padding:6px 0 2px}
.qr-img{display:block;width:180px;height:180px;margin:10px auto 18px;padding:8px;background:#fff;border:1px solid #e8e4e1;border-radius:6px}
.qr-title{margin:0 0 8px;font-family:var(--serif);font-size:20px;font-weight:700;color:var(--navy-900);letter-spacing:3px}
.qr-note{margin:0;font-size:13px;color:var(--muted);line-height:1.75}
.consult-note{margin:0 0 22px;font-size:14px;color:var(--muted);line-height:1.9}
.consult-btn{display:flex;justify-content:center;width:100%;padding:15px 24px;font-size:17px;letter-spacing:3px}
.consult-hours{margin:14px 0 0;text-align:center;font-size:13px;color:var(--muted)}
.nav-band{background:#eadcba}.nav-links a{color:#574729}.nav-links a:hover,.nav-links a.active{background:#d7bf8d;color:#382d1b}.brand-mark{background:#d7bf8d;color:#fff}.brand-name{color:#927347}.hotline strong{color:#9c7b43}.cta-band{background:#e9dcbc}.cta-band h2,.cta-band p{color:#51412a}.cta-band .btn-outline{color:#51412a;border-color:#a68a55}.footer{background:#37332b}.hero .hero-kicker{color:#e4d4ae}

.team-layout{display:grid;grid-template-columns:225px minmax(0,1fr);gap:38px;align-items:start}.team-main{min-width:0}.team-main .grid-lawyers{grid-template-columns:repeat(3,minmax(0,1fr))}.team-directory{border:1px solid #ddd4c2}.team-directory h2{padding:22px 12px;background:#e5d4ad;text-align:center;font-size:23px;color:#59472a}.team-directory h2 small{display:block;font-size:10px;letter-spacing:4px;margin-top:6px}.team-directory>a{display:flex;justify-content:space-between;padding:14px 22px;border-bottom:1px solid #e3ddcf;color:#554a37}.team-directory>a.active{background:#f8f0dc;color:#8c6a32;border-left:3px solid #b29560}.directory-bottom{text-align:center;padding:22px 6px;background:#faf7ee;color:#947746;font-size:13px}.directory-bottom b{display:inline-block;background:#c7ac76;color:white;padding:2px 9px;font-size:24px}.directory-bottom p{margin:10px 0}.team-main .lawyer-profile{grid-template-columns:200px minmax(0,1fr)}@media(max-width:850px){.team-layout{grid-template-columns:1fr}.team-directory{display:flex;flex-wrap:wrap}.team-directory h2{width:100%;padding:12px}.team-directory>a{flex:1 0 30%;padding:10px;font-size:13px}.directory-bottom{width:100%}.team-main .grid-lawyers{grid-template-columns:repeat(2,minmax(0,1fr))}.team-main .lawyer-profile{grid-template-columns:1fr}}

.team-directory nav a{display:flex;justify-content:space-between;padding:17px 22px;border-bottom:1px solid #e3ddcf;color:#554a37;font-size:15px}.team-directory nav a:hover,.team-directory nav a.active{background:#f8f0dc;color:#8c6a32;border-left:3px solid #b29560;padding-left:19px}.team-group-heading{display:flex;align-items:end;justify-content:space-between;border-bottom:1px solid #e4ddcf;margin-bottom:25px;padding-bottom:14px}.team-group-heading h2{font-size:25px;color:#927347}.team-group-heading p{margin:0;color:#92846c}.lawyer-card[hidden]{display:none!important}@media(max-width:850px){.team-directory nav{display:grid;grid-template-columns:1fr 1fr;width:100%}.team-directory nav a{padding:12px}.team-group-heading{align-items:center}}
