*{
  box-sizing:border-box
}
html{
  scroll-behavior:smooth;
  scroll-padding-top:25px
}
body{
  margin:0;
  background:#f4f6f8;
  color:#22364d;
  font:16px/1.75 "Microsoft YaHei",system-ui,sans-serif
}
a{
  color:inherit;
  text-decoration:none
}
button,input,select{
  font:inherit
}
button{
  cursor:pointer
}
button:focus-visible,a:focus-visible,input:focus-visible{
  outline:2px solid #e67745;
  outline-offset:4px
}
button{
  border:0;
  background:none;
  padding:0;
  color:inherit;
  text-align:left
}
h1,h2,h3,p{
  margin-top:0
}
.wrap{
  width:min(1240px,92%);
  margin:auto
}
header{
  background:white
}
.mast{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  padding:25px 0
}
.brand{
  display:flex;
  align-items:center;
  gap:13px;
  font-size:29px;
  font-weight:800;
  line-height:1.4
}
.brand i{
  background:#e46a3a;
  color:#fff;
  font-size:26px;
  width:48px;
  height:52px;
  text-align:center;
  line-height:52px;
  border-radius:10px 3px 10px 3px;
  font-style:normal
}
.brand small{
  display:block;
  font-size:16px;
  font-weight:400;
  color:#8b97a2;
  letter-spacing:1px;
  margin-top:4px
}
form#searchForm{
  display:flex;
  width:350px;
  border:1px solid #d8e0e7;
  border-radius:5px;
  overflow:hidden
}
#searchInput{
  min-width:0;
  width:0;
  flex:1;
  border:0;
  padding:12px;
  font-size:16px;
  background:#f7f9fb
}
#searchForm button{
  background:#234765;
  color:white;
  padding:0 20px;
  white-space:nowrap
}
.mast-note{
  font-size:16px;
  color:#63788b
}
.mast-note span{
  color:#9ba7af
}
nav{
  background:#234765;
  color:white
}
nav .wrap{
  display:flex;
  gap:43px;
  padding:14px 0;
  font-size:17px
}
nav a:first-child{
  color:#ffbc91
}
.edition{
  font-size:16px;
  color:#91a0ab;
  padding:20px 0 15px;
  display:flex;
  justify-content:space-between
}
.first-screen{
  display:grid;
  grid-template-columns:1.32fr 1fr .78fr;
  gap:20px
}
.lead-photo{
  position:relative;
  min-height:390px;
  overflow:hidden;
  border-radius:8px;
  background:#28485f
}
.lead-photo img{
  width:100%;
  height:100%;
  position:absolute;
  object-fit:cover
}
.lead-photo:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(0deg,#132c46f2,#132c4615)
}
.lead-photo>div{
  position:absolute;
  z-index:1;
  left:25px;
  right:23px;
  bottom:27px;
  color:white
}
.lead-photo span{
  font-size:16px;
  color:#efb693
}
.lead-photo h1{
  font-size:29px;
  line-height:1.5;
  margin:13px 0
}
.lead-photo p{
  font-size:16px;
  color:#d2dce6;
  margin:0
}
.lead-reading,.team-card{
  border:1px solid #e0e7ec;
  background:white;
  border-radius:8px;
  padding:23px
}
.lead-reading h2{
  font-size:22px;
  padding-bottom:14px;
  border-bottom:2px solid #e3eaf0;
  margin-bottom:0
}
.article{
  padding:17px 0;
  border-bottom:1px solid #e7edf1
}
.article:last-child{
  border:0;
  padding-bottom:0
}
.article h3{
  font-size:18px;
  line-height:1.6;
  margin:0 0 7px
}
.article button{
  font-weight:650
}
.article p{
  font-size:16px;
  color:#8a98a3;
  line-height:1.6;
  margin:0
}
.team-card{
  text-align:center;
  background:#eef3f6;
  border-color:#dae4eb
}
.team-mark{
  width:51px;
  height:51px;
  line-height:51px;
  border-radius:50%;
  background:#dce7ec;
  color:#3d677c;
  font-size:25px;
  margin:0 auto 10px
}
.team-card h2{
  font-size:23px;
  margin:0
}
.team-sub{
  font-size:16px;
  color:#6c8596;
  margin:3px 0 13px
}
.team-card>p:not(.team-sub){
  font-size:16px;
  line-height:1.7;
  color:#8495a1
}
.service-link{
  display:block;
  color:#385e7a;
  font-size:16px;
  margin:14px 0
}
.wechat{
  display:block;
  width:100%;
  background:#3c7e69;
  color:white;
  text-align:center;
  padding:10px 5px;
  border-radius:4px;
  font-size:16px
}
.phone{
  display:block;
  font-size:21px;
  color:#36556e;
  font-weight:700;
  margin:9px 0
}
.team-card .boundary{
  margin:0;
  font-size:15px!important
}
.tool-strip{
  display:grid;
  grid-template-columns:.8fr 1fr 1.1fr 1.1fr;
  align-items:center;
  gap:20px;
  background:#fff;
  border:1px solid #e1e8ee;
  border-radius:8px;
  margin:24px 0 31px;
  padding:23px
}
.tool-label h2{
  font-size:22px;
  margin:0 0 3px
}
.tool-label p{
  font-size:16px;
  margin:0;
  color:#8a99a4
}
.tool-strip>a,.tool-strip>button{
  display:flex;
  align-items:center;
  gap:12px;
  border-left:1px solid #e3e9ed;
  padding-left:18px
}
.tool-strip i{
  font-size:28px;
  font-style:normal;
  color:#477b8c
}
.tool-strip h3{
  font-size:18px;
  margin:0 0 3px
}
.tool-strip p{
  font-size:15px;
  color:#95a1aa;
  margin:0
}
.tool-strip b{
  margin-left:auto;
  color:#a0b0bb
}
.two-columns{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:25px
}
.topic,.faq{
  background:white;
  border:1px solid #e1e8ed;
  border-radius:8px;
  padding:25px
}
.heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:17px;
  margin-bottom:22px
}
.heading h2{
  font-size:24px;
  margin:0;
  padding-left:12px;
  border-left:4px solid #dc6b40;
  line-height:1.3
}
.heading>span{
  font-size:16px;
  color:#8a9aa6
}
.featured-item{
  display:grid;
  grid-template-columns:150px 1fr;
  gap:20px;
  align-items:center;
  padding-bottom:20px;
  border-bottom:1px solid #e7ecf0
}
.featured-item img{
  width:100%;
  height:117px;
  object-fit:cover;
  border-radius:5px
}
.featured-item h3{
  font-size:20px;
  line-height:1.6;
  margin:0 0 9px
}
.featured-item button{
  font-weight:650
}
.featured-item p{
  font-size:16px;
  color:#8797a3;
  line-height:1.65;
  margin:0
}
.topic-note{
  font-size:16px;
  background:#f1f5f7;
  padding:12px 15px;
  margin-top:20px;
  color:#7c92a2;
  border-radius:4px
}
.tutorial-section{
  margin:34px 0
}
.tutorial-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:23px
}
.tutorial-grid article{
  background:white;
  border:1px solid #e0e7ec;
  border-radius:8px;
  padding:25px 27px;
  position:relative
}
.step-number{
  float:right;
  font:italic 41px Georgia,serif;
  color:#d6e1e6
}
.tutorial-grid h3{
  font-size:22px;
  margin:6px 0 18px
}
.tutorial-grid ol{
  padding-left:22px;
  color:#7c8f9e;
  font-size:17px
}
.tutorial-grid li{
  margin:8px 0
}
.tutorial-grid button{
  color:#ce744c;
  font-size:16px;
  margin-top:8px
}
.cost-feature{
  display:grid;
  grid-template-columns:1.25fr 1fr;
  background:#234765;
  color:#fff;
  padding:36px 40px;
  border-radius:8px;
  gap:45px
}
.cost-feature>div>span{
  color:#d7af88;
  font-size:16px
}
.cost-feature h2{
  font-size:32px;
  line-height:1.5;
  margin:13px 0 16px
}
.cost-feature p{
  color:#beccd8;
  font-size:16px;
  line-height:1.9
}
.cost-feature button{
  color:#f6bc8c;
  border-bottom:1px solid #b18e70;
  padding-bottom:5px;
  font-size:17px
}
.comparison{
  background:#ffffff0c;
  padding:23px 27px;
  border-radius:5px
}
.comparison h3{
  font-size:20px;
  margin:0 0 17px
}
.comparison>div{
  display:flex;
  justify-content:space-between;
  gap:15px;
  padding:10px 0;
  border-bottom:1px solid #ffffff1c;
  font-size:17px
}
.comparison span{
  color:#b8cbd9
}
.comparison b{
  font-weight:500
}
.bottom-grid{
  display:grid;
  grid-template-columns:1.6fr 1fr;
  gap:25px;
  margin:33px 0
}
.faq .heading{
  margin-bottom:6px
}
details{
  border-bottom:1px solid #e4ebef;
  padding:18px 0
}
details:last-child{
  border:0
}
summary{
  font-size:18px;
  font-weight:600;
  cursor:pointer
}
details p{
  font-size:16px;
  color:#7b8f9e;
  margin:13px 0 0
}
.safety{
  background:#e7eee9;
  border-radius:8px;
  padding:27px;
  position:relative;
  overflow:hidden
}
.safety img{
  position:absolute;
  right:-14px;
  bottom:0;
  width:160px;
  height:130px;
  object-fit:cover;
  opacity:.35
}
.safety h2{
  font-size:24px;
  position:relative
}
.safety p{
  font-size:17px;
  color:#778c80;
  position:relative
}
.safety button{
  position:relative;
  color:#567a65;
  font-size:17px;
  margin-top:13px
}
.service{
  background:white;
  border:1px solid #e0e7ed;
  border-radius:8px;
  padding:26px;
  margin-bottom:32px
}
.service-grid{
  display:grid;
  grid-template-columns:1fr 1.4fr 1fr;
  gap:30px
}
.service h3{
  font-size:19px;
  margin:0 0 10px
}
.service p{
  font-size:16px;
  color:#8293a0
}
.service .disclosure{
  border-top:1px solid #e6ecef;
  padding-top:18px;
  font-size:16px;
  color:#95a2ac;
  margin-bottom:0
}
footer{
  background:#1c354c;
  padding:32px 0;
  color:#aebfcd;
  font-size:16px
}
footer strong{
  font-size:23px;
  color:#edf2f5
}
footer p{
  margin:12px 0
}
.dock{
  display:none
}
dialog{
  max-width:680px;
  width:92%;
  border:0;
  border-radius:8px;
  padding:28px;
  color:#29475d;
  max-height:85vh;
  overflow:auto
}
dialog::backdrop{
  background:#102a41aa
}
dialog .close{
  float:right;
  background:#edf2f5;
  padding:6px 13px
}
dialog h2{
  font-size:25px
}
dialog p{
  font-size:17px;
  line-height:1.9
}
dialog label{
  display:block;
  margin:14px 0
}
dialog input,dialog select{
  display:block;
  width:100%;
  padding:10px;
  border:1px solid #ced9e1;
  border-radius:3px
}
.primary{
  background:#2a5571;
  color:white;
  padding:10px 17px
}
.result{
  background:#eef3f6;
  padding:18px;
  margin-top:18px
}
button:hover,a:hover{
  color:#dc7247
}
@media(max-width:1100px) and (min-width:761px){
  .mast-note{
    display:none
  }
  .first-screen{
    grid-template-columns:1.3fr 1fr
  }
  .team-card{
    grid-column:1/-1;
    display:flex;
    align-items:center;
    gap:20px;
    text-align:left
  }
  .team-card>*{
    margin:0!important
  }
  .team-mark,.team-sub,.team-card>.boundary,.service-link{
    display:none
  }
  .team-card>p{
    max-width:40%
  }
  .wechat{
    width:auto;
    padding:10px 15px
  }
  .tool-strip{
    grid-template-columns:1fr 1fr;
    gap:23px
  }
  .heading span{
    display:none
  }
  .featured-item{
    grid-template-columns:105px 1fr
  }
  .featured-item img{
    height:110px
  }
}
@media(max-width:760px){
  .mast{
    display:block;
    padding:22px 0
  }
  .brand{
    font-size:26px
  }
  .brand small{
    font-size:16px
  }
  .mast-note{
    display:none
  }
  form#searchForm{
    width:100%;
    margin-top:22px
  }
  nav .wrap{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:12px;
    font-size:16px;
    padding:16px 0
  }
  .edition{
    font-size:16px;
    padding:18px 0
  }
  .edition span{
    display:none
  }
  .first-screen,.two-columns,.tutorial-grid,.cost-feature,.bottom-grid,.service-grid{
    grid-template-columns:minmax(0,1fr)
  }
  .lead-photo{
    min-height:310px
  }
  .lead-photo h1{
    font-size:27px
  }
  .lead-photo>div{
    left:23px;
    right:20px;
    bottom:25px
  }
  .lead-reading,.team-card{
    padding:23px
  }
  .team-card{
    text-align:left
  }
  .team-mark{
    float:left;
    margin:0 16px 12px 0
  }
  .team-card h2{
    font-size:23px
  }
  .team-sub{
    margin-bottom:22px
  }
  .wechat{
    text-align:center
  }
  .phone{
    text-align:center
  }
  .team-card .boundary{
    text-align:center
  }
  .tool-strip{
    grid-template-columns:minmax(0,1fr);
    padding:23px;
    gap:20px
  }
  .tool-strip>a,.tool-strip>button{
    border-left:0;
    border-top:1px solid #e3e9ee;
    padding:18px 0 0
  }
  .tool-strip p{
    font-size:16px
  }
  .heading{
    display:block;
    margin-bottom:22px
  }
  .heading h2{
    font-size:24px
  }
  .heading>span{
    display:block;
    margin-top:10px
  }
  .topic{
    padding:23px
  }
  .featured-item{
    grid-template-columns:100px 1fr;
    gap:16px
  }
  .featured-item img{
    height:120px
  }
  .featured-item h3{
    font-size:18px
  }
  .featured-item p{
    font-size:16px
  }
  .article h3{
    font-size:18px
  }
  .tutorial-grid{
    gap:17px
  }
  .cost-feature{
    padding:26px;
    gap:20px
  }
  .cost-feature h2{
    font-size:29px
  }
  .comparison{
    padding:22px
  }
  .comparison>div{
    font-size:16px
  }
  .faq{
    padding:23px
  }
  .bottom-grid{
    gap:20px
  }
  .safety{
    min-height:245px
  }
  .service{
    padding:23px
  }
  .service-grid{
    gap:13px
  }
  summary{
    font-size:17px
  }
  .dock{
    display:grid;
    grid-template-columns:1fr 1fr 1fr;
    position:fixed;
    left:0;
    right:0;
    bottom:0;
    z-index:10;
    background:white;
    border-top:1px solid #dee6ec;
    padding-bottom:env(safe-area-inset-bottom)
  }
  .dock a,.dock button{
    font-size:16px;
    text-align:center;
    padding:15px 4px
  }
  .dock button{
    background:#3f7b68;
    color:white
  }
  .dock a:last-child{
    background:#dc7044;
    color:white
  }
  body{
    padding-bottom:calc(62px + env(safe-area-inset-bottom))
  }
}
@media(prefers-reduced-motion:reduce){
  html{
    scroll-behavior:auto
  }
}
/* Detail refinement */.first-screen{
  align-items:stretch
}
.lead-photo,.lead-reading,.team-card{
  box-shadow:0 3px 14px #213e5605
}
.topic-links{
  display:flex;
  gap:12px;
  margin:-4px 0 22px;
  flex-wrap:wrap
}
.topic-links button{
  padding:6px 13px;
  background:#edf3f6;
  border-radius:4px;
  font-size:16px;
  color:#5f7b90
}
.topic-links button:hover{
  background:#e0ebf1;
  color:#244b69
}
.featured-item{
  min-height:139px
}
.article{
  transition:background .15s
}
.article button:hover{
  color:#cc7148
}
.tutorial-grid article{
  border-top:3px solid #c1d3df
}
.tutorial-grid article:nth-child(2){
  border-top-color:#a8c7b6
}
.tutorial-grid article:nth-child(3){
  border-top-color:#e1c09d
}
.tool-strip>a,.tool-strip>button{
  min-width:0
}
.search-result{
  display:block;
  width:100%;
  padding:16px 0;
  border-bottom:1px solid #dfe7ec;
  font-size:18px;
  line-height:1.7;
  color:#355d7b
}
.fee-items label{
  display:flex;
  align-items:flex-start;
  gap:13px;
  font-size:17px;
  margin:20px 0;
  cursor:pointer
}
.fee-items input{
  width:20px;
  height:20px;
  margin:5px 0 0;
  flex-shrink:0;
  accent-color:#397e69
}
#feeProgress{
  font-size:17px
}
.back-top{
  position:fixed;
  right:22px;
  bottom:25px;
  background:#fff;
  color:#3c5c73;
  border:1px solid #d6e0e8;
  border-radius:5px;
  width:43px;
  height:43px;
  text-align:center;
  font-size:23px;
  box-shadow:0 2px 8px #203b4e12
}
dialog .close{
  font-size:16px;
  margin-left:15px
}
dialog h2{
  line-height:1.5
}
dialog .result p{
  font-size:16px;
  margin:10px 0
}
.lead-reading h2{
  border-bottom-color:#df8a63
}
.lead-reading .article h3{
  line-height:1.65
}
.heading{
  scroll-margin-top:25px
}
@media(max-width:760px){
  .topic-links{
    gap:9px;
    margin-bottom:20px
  }
  .topic-links button{
    font-size:16px;
    padding:6px 11px
  }
  .back-top{
    bottom:calc(76px + env(safe-area-inset-bottom));
    right:14px;
    width:38px;
    height:38px;
    font-size:22px
  }
  .first-screen{
    gap:18px
  }
  .team-card{
    display:block
  }
  .team-card>p{
    clear:both
  }
  .lead-reading .article{
    padding:19px 0
  }
  .cost-feature p br{
    display:none
  }
  dialog{
    padding:23px
  }
  .fee-items label{
    font-size:16px;
    line-height:1.8
  }
  .service .disclosure{
    line-height:1.9
  }
  .service-grid h3{
    margin-top:4px
  }
}
/* Reading refinements */.reader-category{
  color:#a07452;
  font-size:16px!important;
  margin-top:6px
}
.reader-answer{
  background:#edf4f3;
  border-left:3px solid #478674;
  padding:18px 21px;
  margin:23px 0
}
.reader-answer b{
  color:#478674;
  font-size:17px
}
.reader-answer p{
  margin:7px 0 0
}
.reader-related{
  border-top:1px solid #dfe8ed;
  padding-top:20px;
  margin-top:26px
}
.reader-related>b{
  display:block;
  font-size:18px;
  margin-bottom:12px
}
.reader-related button{
  display:block;
  font-size:17px;
  color:#456f89;
  margin:12px 0
}
.reader-note{
  font-size:16px!important;
  color:#91a0aa
}
.readerBody section h3,#readerBody section h3{
  font-size:20px;
  margin-top:24px;
  margin-bottom:10px
}
#readerBody section p{
  margin-top:0
}
.calc-presets{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:22px 0;
  font-size:16px
}
.calc-presets>span{
  width:100%;
  color:#8095a4
}
.calc-presets button{
  border:1px solid #d5e0e7;
  border-radius:4px;
  padding:7px 10px;
  color:#4c728b;
  background:#f6f9fb
}
dialog{
  overscroll-behavior:contain
}
dialog .close{
  position:sticky;
  top:0;
  z-index:1;
  background:#eaf0f4
}
dialog section p{
  line-height:1.95
}
.heading h2{
  scroll-margin-top:20px
}
@media(max-width:760px){
  dialog{
    width:94%;
    max-height:88dvh
  }
  .calc-presets{
    gap:8px
  }
  .calc-presets button{
    font-size:16px
  }
  .reader-answer{
    padding:17px
  }
  .reader-related button{
    line-height:1.8
  }
}
.content-link{
  font-weight:650
}
.more-link{
  color:#c6744b;
  font-size:16px;
  white-space:nowrap
}
.heading{
  flex-wrap:wrap
}
.inner-main{
  padding:25px 0 45px;
  min-height:65vh
}
.breadcrumb{
  font-size:16px;
  color:#8a9eac;
  margin-bottom:24px
}
.inner-main h1{
  font-size:32px;
  line-height:1.5
}
.inner-main>p{
  font-size:18px;
  color:#8495a3
}
.inner-paper{
  display:block;
  background:white;
  border:1px solid #dfe7ed;
  border-radius:8px;
  padding:30px;
  margin:15px 0;
  font-size:18px
}
.inner-paper h2{
  font-size:23px;
  margin-top:29px
}
.inner-paper p{
  line-height:1.95;
  color:#70889a
}
.category-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px
}
.category-grid .inner-paper{
  margin:0
}
.category-grid h2{
  margin-top:0
}
.inner-home{
  font-size:17px;
  color:#557b96
}
.takeaway{
  padding:20px;
  background:#eaf3ef;
  border-left:3px solid #538570;
  margin:25px 0
}
.related-pages a,.article-tools a{
  display:block;
  font-size:18px;
  color:#3d7294;
  margin:14px 0
}
.calc-fields{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px
}
.calc-fields label{
  font-size:17px
}
.calc-fields input{
  display:block;
  width:100%;
  padding:12px;
  border:1px solid #cbd8e1;
  border-radius:4px;
  margin:8px 0 23px
}
.comparison-scroll{
  overflow:auto
}
table{
  width:100%;
  border-collapse:collapse;
  white-space:nowrap;
  font-size:16px
}
td,th{
  text-align:left;
  padding:14px;
  border-bottom:1px solid #cbdce5
}
caption{
  text-align:left;
  padding:10px;
  font-weight:bold
}
.check-row{
  display:flex;
  gap:14px;
  margin:22px 0
}
.check-row input{
  width:21px;
  height:21px;
  flex-shrink:0;
  margin-top:6px;
  accent-color:#51816c
}
.tool-label p{
  font-size:16px
}
.tool-strip{
  border-top:3px solid #528293
}
@media(max-width:760px){
  .category-grid,.calc-fields{
    grid-template-columns:minmax(0,1fr)
  }
  .inner-paper{
    padding:23px;
    font-size:17px
  }
  .inner-main h1{
    font-size:27px
  }
  .inner-paper h2{
    font-size:22px
  }
  .more-link{
    display:block;
    margin-top:10px
  }
  .calc-fields{
    gap:0
  }
  .inner-main{
    padding-top:20px
  }
}
/* visible tools, concrete editorial choices */.tool-strip{
  margin:0 0 24px;
  background:#e7f0f5;
  border:1px solid #c9dce8;
  border-top:4px solid #2d668a;
  padding:25px;
  grid-template-columns:1.1fr 1fr 1.15fr 1fr
}
.tool-label h2{
  font-size:23px
}
.tool-label p{
  font-size:16px
}
.tool-strip>a,.tool-strip>button{
  background:white;
  border:1px solid #b9d0df!important;
  border-radius:7px;
  padding:20px!important;
  min-height:112px;
  box-shadow:0 3px 9px #25445b0b
}
.tool-strip h3{
  font-size:24px;
  color:#205a82
}
.tool-strip p{
  font-size:16px;
  color:#728c9e
}
.tool-strip i{
  display:none
}
.tool-strip b{
  font-size:23px;
  color:#df754b
}
.tool-strip>a:hover{
  background:#f8fcff;
  border-color:#3b7ba5!important
}
.reading-picks{
  margin:33px 0
}
.pick-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px
}
.pick-grid>a{
  background:white;
  border:1px solid #dfe7ed;
  border-radius:8px;
  padding:26px;
  display:block
}
.pick-grid span{
  color:#a87a54;
  font-size:16px
}
.pick-grid h3{
  font-size:22px;
  line-height:1.6;
  margin:12px 0
}
.pick-grid p{
  font-size:17px;
  color:#8295a2;
  line-height:1.8
}
.pick-grid b{
  font-size:17px;
  color:#427491;
  font-weight:500
}
.heading h2{
  line-height:1.5
}
.first-screen{
  margin-bottom:25px
}
@media(max-width:1100px) and (min-width:761px){
  .tool-strip{
    grid-template-columns:1fr 1fr
  }
}
@media(max-width:760px){
  .tool-strip{
    grid-template-columns:1fr;
    padding:20px;
    gap:13px
  }
  .tool-strip>a,.tool-strip>button{
    min-height:98px;
    padding:18px 20px!important
  }
  .tool-label{
    padding-bottom:5px
  }
  .tool-strip h3{
    font-size:24px
  }
  .pick-grid{
    grid-template-columns:minmax(0,1fr)
  }
  .pick-grid>a{
    padding:23px
  }
  .pick-grid h3{
    font-size:22px
  }
  .reading-picks .heading span{
    font-size:16px
  }
}
.tools-section{
  margin:0 0 26px;
  background:#e7f0f5;
  border:1px solid #cddfe9;
  padding:24px;
  border-radius:8px
}
.six-tools{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:13px
}
.six-tools a{
  background:white;
  border:1px solid #d0dfe8;
  border-radius:6px;
  padding:20px 15px;
  display:block
}
.six-tools h3{
  font-size:20px;
  color:#2b648b;
  margin:0 0 10px
}
.six-tools p{
  font-size:16px;
  color:#879ba9;
  min-height:52px;
  margin:0 0 12px
}
.six-tools b{
  font-size:16px;
  color:#ce7951;
  font-weight:500
}
.people-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px
}
.people-grid>a{
  display:block;
  background:white;
  border:1px solid #dde7ed;
  border-radius:7px;
  padding:23px
}
.people-grid h3{
  font-size:21px;
  margin:0 0 10px
}
.people-grid p{
  font-size:17px;
  color:#8295a4;
  margin-bottom:14px
}
.people-grid span{
  font-size:16px;
  color:#517f99
}
.audience-section,.fraud-section{
  margin:34px 0
}
.quick-safety{
  padding:24px;
  background:#fff5e9;
  border:1px solid #eddfca;
  border-radius:8px
}
.quick-safety h2{
  font-size:23px;
  color:#8b6443
}
.quick-safety a{
  display:block;
  padding:15px 0;
  border-bottom:1px solid #e9dfd2;
  font-size:17px;
  line-height:1.8
}
.quick-safety .safety-all{
  border:0;
  color:#b16a43;
  font-weight:600
}
.contact-only{
  padding:25px;
  background:white;
  border:1px solid #e1e8ed;
  border-radius:8px;
  margin:30px 0
}
.contact-only h2{
  font-size:23px
}
.contact-only p{
  font-size:18px
}
.contact-only .operator-note{
  font-size:16px;
  color:#8798a4
}
.simple-label{
  display:block;
  font-size:18px;
  margin-bottom:20px
}
.simple-label input{
  display:block;
  width:100%;
  padding:12px;
  margin-top:8px;
  border:1px solid #c9d9e3;
  border-radius:4px
}
@media(max-width:1100px){
  .six-tools{
    grid-template-columns:repeat(3,minmax(0,1fr))
  }
  .quick-safety{
    grid-column:1/-1
  }
}
@media(max-width:760px){
  .six-tools{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px
  }
  .tools-section{
    padding:20px
  }
  .six-tools a{
    padding:17px 14px
  }
  .six-tools h3{
    font-size:21px
  }
  .six-tools p{
    min-height:48px
  }
  .people-grid{
    grid-template-columns:minmax(0,1fr)
  }
  .quick-safety{
    grid-column:auto
  }
  .contact-only{
    padding:23px
  }
  .mast-note{
    display:block!important;
    margin-top:15px
  }
  .first-screen{
    grid-template-columns:minmax(0,1fr)
  }
}
/* Borrower decision journey */.need-first{
  display:grid;
  grid-template-columns:1fr 1.25fr;
  background:white;
  border:1px solid #dce6ed;
  border-radius:9px;
  overflow:hidden;
  margin-bottom:24px
}
.need-copy{
  padding:35px;
  background:#e8f0f5
}
.need-copy>span{
  font-size:17px;
  color:#6e8a9e
}
.need-copy h1{
  font-size:34px;
  line-height:1.55;
  margin:20px 0;
  color:#234b68
}
.need-copy p{
  font-size:18px;
  color:#7a93a4;
  line-height:1.95
}
.need-questions{
  padding:5px 27px
}
.need-questions>a{
  display:flex;
  gap:18px;
  align-items:center;
  padding:22px 0;
  border-bottom:1px solid #e4ebf0
}
.need-questions>a:last-child{
  border:0
}
.need-questions b{
  font-size:24px;
  color:#c6d4de;
  font-weight:500
}
.need-questions h2{
  font-size:21px;
  line-height:1.5;
  margin:0 0 8px
}
.need-questions p{
  font-size:16px;
  color:#8b9da9;
  line-height:1.7;
  margin:0
}
.need-questions>a>span{
  margin-left:auto;
  color:#d37c51;
  font-size:23px
}
.need-questions>a:hover h2{
  color:#cc7147
}
.need-first+.tools-section{
  margin-top:0
}
.people-grid h3{
  font-size:21px
}
@media(max-width:760px){
  .need-first{
    grid-template-columns:minmax(0,1fr)
  }
  .need-copy{
    padding:25px
  }
  .need-copy h1{
    font-size:29px;
    margin:15px 0
  }
  .need-copy p{
    font-size:17px
  }
  .need-questions{
    padding:3px 22px
  }
  .need-questions>a{
    padding:22px 0;
    gap:14px
  }
  .need-questions h2{
    font-size:20px
  }
  .need-questions b{
    font-size:21px
  }
  .need-questions p{
    font-size:16px
  }
  .need-questions>a>span{
    display:none
  }
}
/* Help center */.help-topics{
  margin:33px 0
}
.help-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:19px
}
.help-grid>a{
  background:white;
  border:1px solid #dee7ed;
  border-radius:8px;
  padding:25px;
  display:block;
  transition:border-color .15s
}
.help-grid h3{
  font-size:22px;
  margin:0 0 12px
}
.help-grid p{
  font-size:17px;
  color:#8397a5;
  margin:0 0 17px;
  line-height:1.8
}
.help-grid span{
  color:#477b9a;
  font-size:17px
}
.help-grid>a:hover{
  border-color:#6797b5
}
.brand small{
  letter-spacing:0
}
.reading-picks{
  margin-top:35px
}
.need-copy h1{
  font-size:34px;
  line-height:1.55
}
@media(max-width:760px){
  .help-grid{
    grid-template-columns:minmax(0,1fr);
    gap:15px
  }
  .help-grid>a{
    padding:23px
  }
  .need-copy h1{
    font-size:28px
  }
  .brand small{
    font-size:16px
  }
}
.practical-help{
  margin:34px 0
}
.answer-list{
  background:white;
  border:1px solid #e0e7ed;
  border-radius:8px;
  padding:0 27px
}
.answer-list article{
  display:flex;
  align-items:center;
  gap:30px;
  border-bottom:1px solid #e4ebf0;
  padding:25px 0
}
.answer-list article:last-child{
  border:0
}
.answer-list article>div{
  flex:1
}
.answer-list h3{
  font-size:21px;
  margin:0 0 10px;
  line-height:1.6
}
.answer-list p{
  font-size:17px;
  color:#7c92a2;
  line-height:1.9;
  margin:0;
  max-width:810px
}
.answer-list article>a{
  font-size:17px;
  color:#3e789b;
  flex-shrink:0;
  border:1px solid #d6e4ec;
  padding:10px 15px;
  border-radius:5px;
  background:#f6fafc
}
.next-step{
  margin:34px 0
}
.next-step>div:last-child{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px
}
.next-step a{
  display:block;
  padding:25px;
  background:white;
  border:1px solid #dfe8ee;
  border-radius:8px
}
.next-step h3{
  font-size:22px;
  margin:0 0 13px
}
.next-step p{
  font-size:17px;
  color:#8297a6;
  line-height:1.8
}
.next-step span{
  font-size:17px;
  color:#4c7f9e
}
.fraud-compact{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:25px;
  padding:25px 28px;
  background:#fff3e5;
  border:1px solid #eadbc5;
  border-radius:8px;
  margin:32px 0
}
.fraud-compact h2{
  font-size:24px;
  margin:0 0 10px;
  color:#896447
}
.fraud-compact p{
  font-size:17px;
  color:#9c8977;
  margin:0
}
.fraud-compact>a{
  font-size:17px;
  color:#a47750;
  white-space:nowrap
}
@media(max-width:760px){
  .answer-list{
    padding:0 23px
  }
  .answer-list article{
    display:block;
    padding:24px 0
  }
  .answer-list h3{
    font-size:21px
  }
  .answer-list p{
    font-size:17px
  }
  .answer-list article>a{
    display:inline-block;
    margin-top:18px
  }
  .next-step>div:last-child{
    grid-template-columns:minmax(0,1fr);
    gap:16px
  }
  .fraud-compact{
    display:block;
    padding:24px
  }
  .fraud-compact>a{
    display:inline-block;
    margin-top:18px
  }
}
/* Recognizable utility buttons and supporting diagrams */.six-tools{
  gap:15px
}
.six-tools .tool-button{
  display:flex;
  align-items:center;
  flex-direction:column;
  text-align:center;
  padding:23px 12px 16px;
  border:1px solid #c7dbe7;
  border-bottom:4px solid #b3cedf;
  background:linear-gradient(#fff,#f7fbfe);
  border-radius:11px;
  box-shadow:0 4px 9px #234b6409;
  transition:transform .15s,box-shadow .15s,border-color .15s
}
.tool-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:64px;
  height:64px;
  background:#e5eff7;
  color:#3c789e;
  border-radius:17px;
  margin-bottom:15px
}
.tool-icon svg{
  width:40px;
  height:40px
}
.tool-button:nth-child(2n) .tool-icon{
  background:#e8f2ed;
  color:#52886e
}
.tool-button:nth-child(3n) .tool-icon{
  background:#fbefdf;
  color:#b1844d
}
.six-tools .tool-button h3{
  font-size:22px;
  margin-bottom:8px
}
.six-tools .tool-button p{
  font-size:16px;
  min-height:48px;
  margin:0 0 15px;
  line-height:1.6
}
.six-tools .tool-button b{
  display:flex;
  justify-content:center;
  gap:13px;
  width:100%;
  padding-top:12px;
  border-top:1px solid #e1eaf0;
  color:#427799;
  font-size:16px
}
.six-tools .tool-button:hover{
  transform:translateY(-4px);
  box-shadow:0 8px 19px #224b6415;
  border-color:#77a6c4
}
.six-tools .tool-button:active{
  transform:translateY(1px);
  box-shadow:none
}
.visual-guide{
  display:grid;
  grid-template-columns:1fr 1.35fr;
  gap:30px;
  align-items:center;
  background:white;
  border:1px solid #dfe8ed;
  border-radius:9px;
  padding:28px;
  margin:30px 0
}
.visual-guide>div>span{
  font-size:16px;
  color:#a58360
}
.visual-guide h2{
  font-size:26px;
  margin:10px 0 14px
}
.visual-guide p{
  font-size:17px;
  color:#8599a6;
  line-height:1.9;
  margin-bottom:18px
}
.visual-guide a{
  font-size:17px;
  color:#497b98
}
.visual-guide img{
  display:block;
  width:100%;
  height:auto
}
.fraud-illustration{
  width:105px;
  height:85px;
  object-fit:cover;
  border-radius:9px;
  mix-blend-mode:multiply;
  flex-shrink:0
}
.fraud-compact>div{
  flex:1
}
@media(max-width:760px){
  .six-tools .tool-button{
    padding:21px 12px 16px
  }
  .tool-icon{
    width:60px;
    height:60px;
    margin-bottom:13px
  }
  .tool-icon svg{
    width:38px;
    height:38px
  }
  .six-tools .tool-button h3{
    font-size:23px
  }
  .visual-guide{
    grid-template-columns:minmax(0,1fr);
    padding:23px;
    gap:20px
  }
  .visual-guide h2{
    font-size:25px
  }
  .visual-guide img{
    order:-1
  }
  .fraud-illustration{
    float:right;
    width:83px;
    height:73px;
    margin:0 0 12px 15px
  }
  .fraud-compact>div{
    min-width:0
  }
}
@media(prefers-reduced-motion:reduce){
  .six-tools .tool-button{
    transition:none
  }
  .six-tools .tool-button:hover{
    transform:none
  }
}
/* Ningbo local context */.need-copy{
  position:relative;
  overflow:hidden;
  padding-bottom:155px
}
.ningbo-hero-art{
  position:absolute;
  bottom:0;
  left:0;
  width:100%;
  height:150px;
  object-fit:cover;
  object-position:center 63%;
  opacity:.78
}
.need-copy>span,.need-copy h1,.need-copy p{
  position:relative;
  z-index:1
}
.need-copy h1{
  font-size:32px
}
.ningbo-local{
  display:grid;
  grid-template-columns:1fr 1.4fr;
  gap:28px;
  background:#eaf1f5;
  border:1px solid #d4e2eb;
  border-radius:9px;
  padding:28px;
  margin:32px 0
}
.local-title>span{
  font-size:16px;
  color:#a77d54
}
.local-title h2{
  font-size:24px;
  margin:10px 0 13px
}
.local-title p{
  font-size:17px;
  color:#8297a4;
  line-height:1.8;
  margin:0
}
.local-links{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px
}
.local-links a{
  display:block;
  background:white;
  border:1px solid #dce7ed;
  border-radius:7px;
  padding:22px
}
.local-links strong{
  font-size:20px;
  color:#3d6882
}
.local-links p{
  font-size:16px;
  color:#8399a7;
  line-height:1.8
}
.local-links span{
  font-size:16px;
  color:#b48358
}
@media(max-width:760px){
  .need-copy{
    padding-bottom:145px
  }
  .need-copy h1{
    font-size:28px
  }
  .ningbo-hero-art{
    height:135px
  }
  .ningbo-local{
    grid-template-columns:minmax(0,1fr);
    padding:23px
  }
  .local-links{
    grid-template-columns:minmax(0,1fr)
  }
  .local-title h2{
    font-size:24px
  }
  .brand small{
    font-size:15px
  }
}
/* Header and footer polish */.mast{
  gap:22px
}
.brand{
  font-size:27px
}
.brand small{
  font-size:16px
}
form#searchForm{
  width:285px
}
.header-contacts{
  display:flex;
  gap:12px
}
.header-contacts>a,.header-contacts>button{
  display:flex;
  align-items:center;
  gap:10px;
  border:1px solid #c9dfd5;
  background:#edf6f1;
  color:#34765c;
  border-radius:8px;
  padding:11px 14px;
  min-height:74px
}
.header-contacts .header-phone{
  background:#edf3f9;
  border-color:#cadcea;
  color:#315f83
}
.header-contacts svg{
  width:26px;
  height:26px;
  flex-shrink:0
}
.header-contacts span{
  font-size:15px;
  line-height:1.45
}
.header-contacts strong{
  display:block;
  font-size:21px;
  letter-spacing:.3px;
  font-weight:750;
  margin-top:3px
}
.header-contacts b{
  color:#84af9b;
  font-size:21px
}
.header-contacts>a:hover,.header-contacts>button:hover{
  box-shadow:0 4px 12px #2c4d6112;
  transform:translateY(-1px)
}
.reading-list{
  margin:34px 0;
  background:white;
  border:1px solid #e0e8ed;
  border-radius:9px;
  padding:27px
}
.reading-list .heading>a{
  font-size:17px;
  color:#507f9a
}
.reading-columns{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:28px
}
.reading-columns>div{
  min-width:0
}
.reading-columns h3{
  font-size:20px;
  margin:0 0 8px;
  color:#587589
}
.reading-columns ul{
  list-style:none;
  padding:0;
  margin:0
}
.reading-columns li{
  border-bottom:1px solid #e6edf1
}
.reading-columns li:last-child{
  border:0
}
.reading-columns a{
  display:flex;
  justify-content:space-between;
  gap:14px;
  font-size:17px;
  line-height:1.8;
  padding:16px 0;
  color:#405d73
}
.reading-columns a span{
  color:#a7bac7;
  flex-shrink:0
}
.new-footer{
  background:#18364c;
  padding:0;
  margin-top:38px;
  color:#b0c1cd
}
.footer-main{
  display:grid;
  grid-template-columns:1.5fr 1fr 1fr 1.2fr;
  gap:32px;
  padding:38px 0 29px
}
.footer-main h3{
  font-size:18px;
  color:#ecf2f6;
  margin:0 0 18px
}
.footer-main a,.footer-main button,.footer-wechat{
  display:block;
  font-size:16px;
  margin:10px 0;
  color:#adc4d4
}
.footer-brand strong{
  font-size:26px;
  color:white
}
.footer-brand strong span{
  color:#e99168
}
.footer-brand p{
  font-size:16px;
  line-height:1.9;
  color:#92aebf;
  margin:13px 0
}
.footer-contact .footer-number{
  font-size:25px;
  font-weight:700;
  color:#edf4f7;
  letter-spacing:.6px
}
.footer-contact button{
  background:#ffffff0b;
  border:1px solid #ffffff20;
  border-radius:4px;
  padding:8px 13px;
  color:#c8e2d5
}
.footer-contact p{
  font-size:15px;
  color:#8eabbc
}
.footer-bottom{
  border-top:1px solid #ffffff18;
  padding:21px 0 25px;
  font-size:15px;
  color:#87a4b6;
  line-height:1.9
}
.footer-bottom p{
  margin:3px 0
}
.inner-phone{
  padding:10px 14px;
  background:#edf4f9;
  border:1px solid #cbdde9;
  border-radius:7px;
  color:#365f7d;
  font-size:17px
}
@media(max-width:1150px) and (min-width:761px){
  .mast{
    flex-wrap:wrap
  }
  .header-contacts{
    margin-left:auto
  }
  .brand{
    flex:1
  }
  .header-contacts strong{
    font-size:21px
  }
}
@media(max-width:760px){
  form#searchForm{
    width:100%;
    margin:20px 0 17px
  }
  .brand{
    font-size:27px
  }
  .header-contacts{
    display:grid;
    grid-template-columns:.9fr 1.2fr;
    gap:10px
  }
  .header-contacts>a,.header-contacts>button{
    padding:12px 10px;
    gap:8px;
    min-height:75px
  }
  .header-contacts strong{
    font-size:20px;
    letter-spacing:0
  }
  .header-contacts svg{
    width:23px;
    height:23px
  }
  .header-contacts b{
    display:none
  }
  .header-contacts span{
    font-size:15px
  }
  .reading-list{
    padding:23px
  }
  .reading-columns{
    grid-template-columns:minmax(0,1fr);
    gap:24px
  }
  .reading-columns h3{
    font-size:21px
  }
  .reading-columns a{
    font-size:17px;
    padding:14px 0
  }
  .footer-main{
    grid-template-columns:1fr 1fr;
    gap:28px;
    padding:30px 0
  }
  .footer-brand{
    grid-column:1/-1
  }
  .footer-contact{
    grid-column:1/-1;
    border-top:1px solid #ffffff18;
    padding-top:22px
  }
  .footer-contact .footer-number{
    font-size:26px
  }
  .footer-bottom{
    font-size:15px;
    padding-bottom:25px
  }
  .new-footer{
    margin-top:28px
  }
  .inner-phone{
    display:block;
    margin-top:15px
  }
}
.demand-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px
}
.demand-grid>a{
  display:block;
  padding:20px;
  border:1px solid #dfe8ee;
  border-radius:7px;
  background:#f8fafc
}
.demand-grid h3{
  display:flex;
  justify-content:space-between;
  gap:10px;
  font-size:20px;
  margin:0 0 10px
}
.demand-grid h3 span{
  color:#a1b6c4;
  font-size:19px
}
.demand-grid p{
  font-size:16px;
  color:#849aa9;
  line-height:1.8;
  margin:0
}
.demand-grid>a:hover{
  background:#edf5f9;
  border-color:#a6c6db
}
@media(max-width:1000px){
  .demand-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))
  }
}
@media(max-width:760px){
  .demand-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px
  }
  .demand-grid>a{
    padding:17px 14px
  }
  .demand-grid h3{
    font-size:18px
  }
  .demand-grid p{
    font-size:16px
  }
  .demand-directory{
    padding:22px
  }
}
/* Full two-row directory */.demand-grid{
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:16px
}
.demand-grid>a{
  padding:20px 15px;
  min-height:125px
}
.demand-grid h3{
  font-size:19px;
  gap:5px;
  white-space:nowrap
}
.demand-grid h3 span{
  font-size:17px
}
.demand-grid p{
  font-size:16px;
  white-space:nowrap;
  line-height:1.8
}
.demand-directory{
  padding:26px
}
.demand-grid>a:hover{
  transform:translateY(-2px)
}
@media(max-width:1100px){
  .demand-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:15px
  }
  .demand-grid>a{
    padding:20px;
    min-height:115px
  }
}
@media(max-width:760px){
  .demand-directory{
    padding:20px
  }
  .demand-grid{
    gap:11px
  }
  .demand-grid>a{
    padding:17px 12px;
    min-height:112px
  }
  .demand-grid h3{
    font-size:17px
  }
  .demand-grid p{
    font-size:15px;
    white-space:normal
  }
  .demand-grid h3 span{
    font-size:15px
  }
}
/* Office scene as contextual illustration */.office-answer-layout{
  display:grid;
  grid-template-columns:.78fr 1.7fr;
  gap:23px;
  align-items:stretch
}
.office-scene{
  position:relative;
  border-radius:9px;
  overflow:hidden;
  min-height:590px;
  background:#e4edf2
}
.office-scene>img{
  position:absolute;
  width:100%;
  height:100%;
  object-fit:cover
}
.office-scene:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(0deg,#122f45ef,transparent 78%)
}
.office-scene>div{
  position:absolute;
  bottom:27px;
  left:25px;
  right:22px;
  color:white;
  z-index:1
}
.office-scene span{
  display:inline-block;
  padding:4px 9px;
  border:1px solid #ffffff45;
  background:#ffffff16;
  font-size:16px;
  border-radius:4px;
  color:#d7e5ee
}
.office-scene h3{
  font-size:26px;
  line-height:1.6;
  margin:16px 0 12px
}
.office-scene p{
  font-size:17px;
  line-height:1.9;
  color:#c4d5e1;
  margin:0
}
.office-answer-layout .answer-list{
  padding:0 23px
}
.office-answer-layout .answer-list article{
  display:block;
  padding:22px 0
}
.office-answer-layout .answer-list h3{
  font-size:20px
}
.office-answer-layout .answer-list p{
  font-size:16px
}
.office-answer-layout .answer-list article>a{
  display:inline-block;
  margin-top:13px;
  padding:6px 11px;
  font-size:16px
}
.brand small{
  letter-spacing:0
}
@media(max-width:760px){
  .office-answer-layout{
    grid-template-columns:minmax(0,1fr);
    gap:17px
  }
  .office-scene{
    min-height:300px
  }
  .office-scene>img{
    object-position:center 48%
  }
  .office-scene h3{
    font-size:25px
  }
  .office-scene p{
    display:none
  }
  .office-scene>div{
    bottom:23px
  }
  .office-answer-layout .answer-list h3{
    font-size:20px
  }
  .office-answer-layout .answer-list p{
    font-size:17px
  }
}
/* Clean editorial multi-photo gallery */.office-gallery{
  display:grid;
  grid-template-rows:1.2fr 1fr 1fr;
  gap:15px;
  min-height:0;
  align-self:stretch
}
.office-gallery .office-main{
  display:block;
  width:100%;
  height:100%;
  min-height:0;
  object-fit:cover;
  border-radius:8px
}
.office-photo{
  min-height:190px;
  border-radius:8px;
  background-image:url('/public/huoshan-help/assets/office-pair.png');
  background-repeat:no-repeat;
  background-size:200% auto;
  background-color:#e7edf0
}
.photo-left{
  background-position:left center
}
.photo-right{
  background-position:right center
}
.office-answer-layout{
  align-items:stretch
}
.office-gallery{
  overflow:hidden
}
@media(max-width:760px){
  .office-gallery{
    grid-template-columns:1fr 1fr;
    grid-template-rows:230px 150px;
    gap:12px
  }
  .office-gallery .office-main{
    grid-column:1/-1;
    object-position:center 57%
  }
  .office-photo{
    min-height:0;
    height:150px;
    background-size:200% auto
  }
  .office-answer-layout{
    gap:18px
  }
}
/* Single horizontal photo strip */.office-gallery{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  grid-template-rows:230px;
  gap:18px;
  margin:0 0 22px;
  min-height:0;
  overflow:hidden
}
.office-gallery .office-main{
  width:100%;
  height:230px;
  object-fit:cover;
  object-position:center 56%;
  grid-column:auto;
  border-radius:8px
}
.office-gallery .office-photo{
  width:100%;
  height:230px;
  min-height:0;
  aspect-ratio:auto;
  border-radius:8px;
  background-size:200% auto
}
.office-answer-layout{
  display:block
}
.office-answer-layout .answer-list article{
  display:flex;
  align-items:center;
  padding:25px 0
}
.office-answer-layout .answer-list article>a{
  flex-shrink:0;
  margin-top:0
}
.office-answer-layout .answer-list p{
  font-size:17px
}
@media(max-width:760px){
  .office-gallery{
    grid-template-columns:repeat(3,minmax(0,1fr));
    grid-template-rows:125px;
    gap:9px;
    margin-bottom:18px
  }
  .office-gallery .office-main,.office-gallery .office-photo{
    height:125px;
    border-radius:5px;
    grid-column:auto;
    min-height:0
  }
  .office-gallery .office-photo{
    background-size:auto 100%;
    background-position:left center
  }
  .office-gallery .photo-right{
    background-position:right center
  }
  .office-answer-layout .answer-list article{
    display:block;
    padding:23px 0
  }
  .office-answer-layout .answer-list article>a{
    margin-top:16px
  }
}
.natural-office{
  height:230px;
  min-width:0;
  border-radius:7px;
  background-image:url('/public/huoshan-help/assets/office-natural.png');
  background-size:300% auto;
  background-repeat:no-repeat;
  background-color:#e6e9eb
}
.office-one{
  background-position:0% center
}
.office-two{
  background-position:50% center
}
.office-three{
  background-position:100% center
}
@media(max-width:760px){
  .natural-office{
    height:125px;
    background-size:300% 100%;
    border-radius:5px
  }
}
/* Clear visual help categories */.help-grid>a{
  position:relative;
  padding:26px 24px 24px 106px;
  min-height:205px
}
.help-grid .help-icon{
  position:absolute;
  left:23px;
  top:27px;
  display:flex;
  align-items:center;
  justify-content:center;
  width:62px;
  height:62px;
  border-radius:17px;
  background:#e9f1f8;
  color:#4c7e9f
}
.help-icon svg{
  width:44px;
  height:44px
}
.help-grid .help-icon.documents,.help-grid .help-icon.repay{
  background:#ebf3ee;
  color:#668d76
}
.help-grid .help-icon.cost{
  background:#fbefde;
  color:#b48a50
}
.help-grid .help-icon.safety{
  background:#f0eaf4;
  color:#8b75a1
}
.help-grid h3{
  font-size:21px;
  margin:0 0 12px
}
.help-grid p{
  font-size:17px;
  min-height:60px;
  margin-bottom:14px
}
.help-grid>a>span:last-child{
  font-size:17px
}
.office-answer-layout{
  display:block
}
@media(max-width:1000px) and (min-width:761px){
  .help-grid>a{
    padding:25px 20px
  }
  .help-grid .help-icon{
    position:static;
    margin-bottom:17px
  }
}
@media(max-width:760px){
  .help-grid>a{
    padding:23px 22px 23px 100px;
    min-height:190px
  }
  .help-grid .help-icon{
    left:21px;
    top:25px;
    width:58px;
    height:58px;
    border-radius:15px
  }
  .help-icon svg{
    width:41px;
    height:41px
  }
  .help-grid h3{
    font-size:21px
  }
  .help-grid p{
    min-height:0;
    font-size:17px
  }
}
/* Compact help cards and intentional FAQ hierarchy */.help-grid{
  gap:17px
}
.help-grid>a{
  padding:24px 22px 22px 98px;
  min-height:156px;
  border-radius:9px
}
.help-grid .help-icon{
  left:22px;
  top:25px;
  width:56px;
  height:56px;
  padding:0!important;
  position:absolute;
  border:0;
  min-height:0;
  overflow:visible
}
.help-grid .help-icon svg{
  display:block;
  width:36px!important;
  height:36px!important;
  min-width:36px;
  flex-shrink:0
}
.help-grid h3{
  font-size:21px;
  margin:0 0 9px
}
.help-grid p{
  min-height:0;
  font-size:16px;
  line-height:1.7;
  margin:0 0 14px
}
.help-grid>a>span:last-child{
  font-size:16px
}
.compact-help-layout{
  display:grid;
  grid-template-columns:1.8fr 1fr;
  gap:24px;
  align-items:start
}
.question-accordion{
  background:white;
  border:1px solid #e0e8ed;
  border-radius:9px;
  padding:2px 25px
}
.question-detail{
  padding:0;
  border-bottom:1px solid #e4ebf0
}
.question-detail:last-child{
  border:0
}
.question-detail summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  list-style:none;
  padding:23px 0;
  font-size:19px;
  line-height:1.65;
  font-weight:600;
  cursor:pointer
}
.question-detail summary::-webkit-details-marker{
  display:none
}
.question-detail summary b{
  font-size:23px;
  color:#87a6bb;
  font-weight:400;
  flex-shrink:0
}
.question-detail[open] summary{
  color:#356e93;
  padding-bottom:11px
}
.question-detail[open] summary b{
  transform:rotate(45deg)
}
.question-detail>div{
  padding:0 0 23px
}
.question-detail p{
  font-size:17px;
  color:#8599a7;
  line-height:1.9;
  margin:0 0 16px
}
.question-detail>div>a{
  display:inline-block;
  font-size:16px;
  color:#397a9e;
  border-bottom:1px solid #cbdfe9;
  padding-bottom:3px
}
.quick-action-panel{
  padding:25px;
  background:#e8f1f5;
  border:1px solid #cfdee8;
  border-radius:9px
}
.quick-action-panel h3{
  font-size:23px;
  margin:0 0 10px
}
.quick-action-panel>p{
  font-size:16px;
  color:#859dab;
  margin-bottom:18px
}
.quick-action-panel>a{
  display:flex;
  gap:12px;
  justify-content:space-between;
  background:white;
  border:1px solid #d5e3ec;
  border-radius:5px;
  padding:12px 14px;
  margin:11px 0;
  font-size:17px;
  color:#486f89
}
.quick-action-panel>a>b{
  font-weight:400;
  color:#b68b63
}
.quick-action-panel>div{
  font-size:16px;
  color:#8ca1af;
  line-height:1.8;
  margin-top:20px
}
@media(max-width:1000px) and (min-width:761px){
  .help-grid>a{
    padding:22px;
    min-height:170px
  }
  .help-grid .help-icon{
    position:static!important;
    margin-bottom:14px
  }
  .compact-help-layout{
    grid-template-columns:1.5fr 1fr
  }
}
@media(max-width:760px){
  .help-grid{
    gap:13px
  }
  .help-grid>a{
    padding:22px 20px 21px 92px;
    min-height:145px
  }
  .help-grid .help-icon{
    position:absolute;
    left:20px;
    top:23px;
    width:53px;
    height:53px;
    margin:0
  }
  .help-grid h3{
    font-size:21px
  }
  .help-grid p{
    font-size:16px;
    margin-bottom:12px
  }
  .compact-help-layout{
    grid-template-columns:minmax(0,1fr);
    gap:17px
  }
  .question-accordion{
    padding:0 21px
  }
  .question-detail summary{
    font-size:18px;
    padding:21px 0
  }
  .question-detail p{
    font-size:17px
  }
  .quick-action-panel{
    padding:23px
  }
}
/* Finishing pass: calm surfaces, consistent spacing, clear interactions */:root{
  --hs-ink:#24435b;
  --hs-border:#e0e8ee;
  --hs-accent:#df784e
}
body{
  background:#f5f7fa;
  color:#264259
}
.masthead,header{
  box-shadow:0 2px 12px #1e405504
}
.mast{
  padding-top:24px;
  padding-bottom:24px
}
.brand i{
  box-shadow:0 4px 10px #d7673920
}
.learn-nav,nav{
  box-shadow:0 3px 8px #17374d08
}
.heading{
  margin-bottom:22px
}
.heading h2{
  font-weight:750;
  letter-spacing:.2px
}
.heading h2{
  border-left-width:3px
}
.help-grid>a{
  border-color:#e1e9ef;
  box-shadow:0 2px 8px #25435b03;
  background:linear-gradient(120deg,#fff,#fcfdfe);
  transition:transform .18s,box-shadow .18s,border-color .18s
}
.help-grid>a:hover{
  transform:translateY(-3px);
  border-color:#acc8d9;
  box-shadow:0 9px 22px #2d536d0c;
  background:white
}
.help-grid .help-icon{
  border-radius:16px;
  box-shadow:inset 0 1px 0 #ffffffaa
}
.help-grid>a>span:last-child{
  display:inline-block;
  font-weight:550;
  color:#5c89a6;
  border-bottom:1px solid transparent;
  padding-bottom:2px
}
.help-grid>a:hover>span:last-child{
  border-color:#b6d0df
}
.help-grid h3{
  color:#2b4b62;
  line-height:1.5
}
.help-grid p{
  color:#8a9eab
}
.question-accordion{
  border-color:#dfe8ee;
  box-shadow:0 3px 12px #24465e04
}
.question-detail summary{
  transition:color .15s
}
.question-detail summary:hover{
  color:#b96f49
}
.question-detail[open]{
  background:#fbfdfe
}
.question-detail[open] summary{
  color:#356f94
}
.question-detail summary b{
  background:#edf4f8;
  border-radius:50%;
  width:28px;
  height:28px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:21px;
  line-height:1
}
.question-detail[open] summary b{
  background:#e5eff5
}
.quick-action-panel{
  background:linear-gradient(135deg,#eaf2f7,#edf4f3);
  border-color:#d5e3eb;
  position:relative;
  overflow:hidden
}
.quick-action-panel>a{
  border-color:#dbe6ed;
  padding:13px 15px;
  box-shadow:0 2px 5px #294a6103;
  transition:transform .15s,border-color .15s
}
.quick-action-panel>a:hover{
  transform:translateX(3px);
  border-color:#a6c6db
}
.quick-action-panel h3{
  color:#345b74
}
.next-step a{
  border-color:#e0e8ee;
  box-shadow:0 2px 7px #24465e03;
  border-top:3px solid #b4cadb;
  transition:box-shadow .18s,transform .18s
}
.next-step a:nth-child(2){
  border-top-color:#a9c8b7
}
.next-step a:nth-child(3){
  border-top-color:#e1c4a5
}
.next-step a:hover{
  transform:translateY(-3px);
  box-shadow:0 8px 22px #24465e0b
}
.next-step h3{
  color:#30536d
}
.tools-section{
  border-radius:11px;
  background:linear-gradient(120deg,#eaf2f7,#edf5f6);
  border-color:#d9e5ed
}
.six-tools .tool-button{
  border-radius:10px;
  border-color:#d5e3ec;
  border-bottom:3px solid #c1d6e3
}
.six-tools .tool-button h3{
  font-weight:750
}
.visual-guide,.need-first,.ningbo-local,.reading-list{
  border-radius:10px;
  border-color:#dfe8ee
}
.need-copy{
  background:linear-gradient(140deg,#e7f0f6,#eef4f7)
}
.need-questions>a>span{
  background:#faf0e8;
  border-radius:50%;
  width:30px;
  height:30px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:18px;
  flex-shrink:0
}
.need-questions>a:hover h2{
  color:#bc744f
}
.fraud-compact{
  background:linear-gradient(110deg,#fff5e9,#fcf7ef);
  border-color:#eee1cf
}
.demand-grid>a{
  background:#f8fafc;
  border-color:#e1e9ef;
  transition:transform .18s,box-shadow .18s
}
.demand-grid>a:hover{
  box-shadow:0 6px 15px #2a50670a;
  background:#f0f6fa
}
.new-footer{
  background:linear-gradient(110deg,#18364c,#1e3f56)
}
.footer-main h3{
  letter-spacing:.3px
}
.footer-main a:hover{
  color:white
}
.footer-contact button:hover{
  background:#ffffff16;
  color:white
}
.back-top{
  border-radius:8px;
  border-color:#dbe5ed;
  box-shadow:0 3px 12px #24465e10
}
.inner-paper{
  border-color:#dfe8ee
}
a:focus-visible,button:focus-visible,summary:focus-visible{
  outline:2px solid #d98860;
  outline-offset:4px
}
@media(max-width:760px){
  .heading{
    margin-bottom:19px
  }
  .help-grid{
    gap:15px
  }
  .help-grid>a{
    min-height:148px;
    padding-top:24px;
    padding-bottom:23px
  }
  .help-grid .help-icon{
    top:26px
  }
  .question-detail summary{
    padding:22px 0;
    gap:12px
  }
  .question-detail summary b{
    width:26px;
    height:26px;
    font-size:20px
  }
  .quick-action-panel{
    padding:25px 23px
  }
  .quick-action-panel>a{
    padding:14px
  }
  .next-step a{
    padding:24px
  }
  .need-questions>a>span{
    display:none
  }
  .new-footer .footer-main{
    gap:27px
  }
  .header-contacts>a,.header-contacts>button{
    box-shadow:0 2px 6px #274e6505
  }
  .dock{
    box-shadow:0 -3px 12px #21425a08
  }
}
@media(prefers-reduced-motion:reduce){
  .help-grid>a,.next-step a,.quick-action-panel>a,.demand-grid>a{
    transition:none;
    transform:none!important
  }
}
/* Editorial question guide */.editorial-help-grid{
  display:grid;
  grid-template-columns:1fr 1.45fr;
  gap:23px;
  align-items:stretch
}
.featured-answer{
  padding:29px;
  background:linear-gradient(135deg,#e9f1f6,#f0f6f6);
  border:1px solid #d6e3eb;
  border-radius:10px;
  display:flex;
  flex-direction:column
}
.featured-label{
  color:#9d7955;
  font-size:16px;
  letter-spacing:1px
}
.featured-answer h3{
  font-size:31px;
  line-height:1.5;
  margin:14px 0 15px;
  color:#2e536d
}
.featured-answer>p{
  font-size:17px;
  line-height:1.9;
  color:#7d94a3;
  margin:0 0 20px
}
.rate-visual{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:13px;
  background:#ffffffb5;
  border:1px solid #dbe7ed;
  border-radius:7px;
  padding:21px 18px;
  margin:0 0 14px
}
.rate-visual>div{
  min-width:0
}
.rate-visual>div>span{
  font-size:15px;
  color:#7c95a5;
  display:block;
  margin-bottom:6px
}
.rate-visual strong{
  font-size:35px;
  color:#3a718f;
  font-weight:650;
  line-height:1.4
}
.rate-visual strong span{
  font-size:21px;
  margin-left:3px
}
.rate-visual>div:last-child strong{
  color:#ba8152
}
.rate-visual>b{
  font-size:16px;
  color:#a1b4c0;
  font-weight:500;
  white-space:nowrap
}
.featured-answer .rate-note{
  font-size:15px;
  line-height:1.85;
  color:#92a5b1;
  margin-bottom:22px
}
.featured-answer-actions{
  display:flex;
  justify-content:space-between;
  gap:14px;
  margin-top:auto;
  padding-top:19px;
  border-top:1px solid #d8e4eb
}
.featured-answer-actions a{
  font-size:16px;
  color:#527c96
}
.featured-answer-actions a:last-child{
  color:#a9754e
}
.question-readings{
  background:white;
  border:1px solid #dfe8ee;
  border-radius:10px;
  padding:0 25px;
  display:flex;
  flex-direction:column
}
.question-reading{
  display:grid;
  grid-template-columns:70px minmax(0,1fr) 22px;
  gap:17px;
  align-items:center;
  padding:25px 0;
  border-bottom:1px solid #e4ebf0;
  flex:1
}
.question-reading:last-child{
  border-bottom:0
}
.reading-tag{
  display:block;
  align-self:start;
  font-size:15px;
  line-height:1.7;
  padding:4px 6px;
  background:#eef4f8;
  color:#64869e;
  text-align:center;
  border-radius:4px;
  margin-top:3px
}
.question-reading:nth-child(3) .reading-tag{
  background:#edf4ef;
  color:#6f927b
}
.question-reading:nth-child(4) .reading-tag{
  background:#faf0e5;
  color:#b08a61
}
.question-reading h3{
  font-size:20px;
  line-height:1.6;
  margin:0 0 9px;
  color:#315169
}
.question-reading p{
  font-size:16px;
  line-height:1.85;
  color:#8b9eaa;
  margin:0
}
.reading-arrow{
  color:#a4bac9;
  font-size:23px
}
.question-reading:hover h3{
  color:#bd744d
}
.question-reading:hover .reading-arrow{
  color:#cf865e
}
.featured-answer-actions a:hover{
  color:#c67e52
}
@media(max-width:1000px) and (min-width:761px){
  .editorial-help-grid{
    grid-template-columns:1fr 1.2fr
  }
  .featured-answer{
    padding:25px
  }
  .question-readings{
    padding:0 22px
  }
  .question-reading{
    grid-template-columns:minmax(0,1fr) 20px;
    gap:10px
  }
  .reading-tag{
    grid-column:1;
    justify-self:start;
    align-self:auto;
    width:auto;
    margin:0
  }
  .question-reading>div{
    grid-column:1
  }
  .reading-arrow{
    grid-column:2;
    grid-row:1/3
  }
  .rate-visual{
    padding:17px 13px
  }
  .rate-visual strong{
    font-size:30px
  }
}
@media(max-width:760px){
  .editorial-help-grid{
    grid-template-columns:minmax(0,1fr);
    gap:17px
  }
  .featured-answer{
    padding:25px
  }
  .featured-answer h3{
    font-size:29px
  }
  .featured-answer h3 br{
    display:none
  }
  .featured-answer>p{
    font-size:17px
  }
  .rate-visual{
    padding:21px 17px
  }
  .rate-visual strong{
    font-size:33px
  }
  .featured-answer .rate-note{
    font-size:16px
  }
  .question-readings{
    padding:0 22px
  }
  .question-reading{
    grid-template-columns:minmax(0,1fr) 20px;
    gap:10px;
    padding:23px 0
  }
  .reading-tag{
    grid-column:1;
    justify-self:start;
    align-self:auto;
    width:auto;
    padding:3px 9px;
    margin:0
  }
  .question-reading>div{
    grid-column:1
  }
  .reading-arrow{
    grid-column:2;
    grid-row:1/3
  }
  .question-reading h3{
    font-size:20px
  }
  .question-reading p{
    font-size:17px
  }
  .featured-answer-actions{
    gap:12px;
    flex-wrap:wrap
  }
  .featured-answer-actions a{
    font-size:16px
  }
}
/* Compact loan process illustrations */.loan-flow{
  margin:28px 0 32px;
  background:#fff;
  border:1px solid #e0e8ee;
  border-radius:10px;
  padding:22px 25px
}
.flow-heading{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  margin-bottom:16px
}
.flow-heading h2{
  font-size:22px;
  margin:0;
  color:#31556e
}
.flow-heading p{
  font-size:15px;
  color:#8a9fac;
  margin:0
}
.flow-steps{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:18px
}
.flow-step{
  position:relative;
  text-align:center;
  display:block;
  padding:0 8px 5px
}
.flow-art{
  width:104px;
  height:100px;
  margin:0 auto 10px;
  background-image:url('/public/huoshan-help/assets/loan-process.png');
  background-size:500% 100%;
  background-repeat:no-repeat;
  border-radius:9px
}
.flow-art-0{
  background-position:0% center
}
.flow-art-1{
  background-position:25% center
}
.flow-art-2{
  background-position:50% center
}
.flow-art-3{
  background-position:75% center
}
.flow-art-4{
  background-position:100% center
}
.flow-step:not(:last-child):after{
  content:'→';
  position:absolute;
  right:-17px;
  top:43px;
  color:#b9cbd7;
  font-size:23px
}
.flow-step h3{
  font-size:18px;
  line-height:1.6;
  margin:0 0 5px
}
.flow-step h3 span{
  font-size:15px;
  color:#a8bbc8;
  font-weight:500;
  margin-right:7px
}
.flow-step p{
  font-size:15px;
  color:#8ba0ae;
  line-height:1.7;
  margin:0
}
.flow-step:hover h3{
  color:#c58055
}
@media(max-width:760px){
  .loan-flow{
    padding:22px 18px
  }
  .flow-heading{
    display:block
  }
  .flow-heading h2{
    font-size:22px
  }
  .flow-heading p{
    font-size:16px;
    margin-top:10px
  }
  .flow-steps{
    display:flex;
    overflow-x:auto;
    gap:15px;
    padding-bottom:12px;
    scroll-snap-type:x proximity
  }
  .flow-step{
    flex:0 0 145px;
    scroll-snap-align:start;
    padding:0 5px
  }
  .flow-art{
    width:98px;
    height:94px
  }
  .flow-step h3{
    font-size:18px
  }
  .flow-step p{
    font-size:16px
  }
  .flow-step:not(:last-child):after{
    right:-14px;
    font-size:21px
  }
  .flow-step h3 span{
    font-size:15px
  }
}
/* Crawlable editorial process image */.loan-flow{
  padding:25px 28px 22px;
  background:#fff;
  border-color:#dce7ee;
  overflow:hidden
}
.flow-heading{
  margin-bottom:18px
}
.flow-panorama{
  background:#f3f8fb;
  border-radius:8px;
  overflow:hidden;
  margin-bottom:18px
}
.flow-panorama img{
  display:block;
  width:100%;
  height:auto;
  max-height:245px;
  object-fit:contain
}
.flow-steps{
  gap:16px
}
.flow-step{
  padding:5px 8px 8px;
  border-right:1px solid #e4edf2
}
.flow-step:last-child{
  border-right:0
}
.flow-step:not(:last-child):after{
  display:none
}
.flow-step h3{
  font-size:19px;
  margin-bottom:7px
}
.flow-step p{
  font-size:16px
}
.flow-step h3 span{
  display:inline-block;
  font-size:15px;
  color:#789db5;
  margin-right:8px
}
.flow-step:hover h3{
  color:#c07d50
}
@media(max-width:760px){
  .loan-flow{
    padding:22px 20px
  }
  .flow-panorama{
    margin-bottom:16px
  }
  .flow-panorama img{
    width:100%;
    height:auto;
    max-height:none
  }
  .flow-steps{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:0;
    overflow:visible;
    padding:0
  }
  .flow-step{
    text-align:left;
    border-right:0;
    border-top:1px solid #e7eef3;
    padding:14px 0
  }
  .flow-step h3{
    font-size:19px
  }
  .flow-step p{
    font-size:16px;
    padding-left:29px
  }
  .flow-heading p{
    font-size:16px
  }
  .flow-heading{
    margin-bottom:18px
  }
}
/* Photography-based knowledge covers */.knowledge-covers{
  margin:31px 0 34px
}
.knowledge-cover-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px
}
.knowledge-cover{
  display:block;
  overflow:hidden;
  background:#fff;
  border:1px solid #dfe8ee;
  border-radius:9px;
  transition:box-shadow .18s,transform .18s
}
.cover-photo{
  position:relative;
  overflow:hidden;
  aspect-ratio:1.7;
  background:#edf2f5
}
.cover-photo img{
  display:block;
  position:absolute;
  width:300%;
  max-width:none;
  height:auto;
  top:50%;
  transform:translateY(-50%)
}
.cover-photo-0 img{
  left:0
}
.cover-photo-1 img{
  left:-100%
}
.cover-photo-2 img{
  left:-200%
}
.cover-writing{
  padding:23px
}
.cover-writing>span{
  font-size:16px;
  color:#a7815b
}
.cover-writing h3{
  font-size:23px;
  line-height:1.55;
  margin:10px 0 13px;
  color:#2e5068
}
.cover-writing p{
  font-size:17px;
  color:#8a9eab;
  line-height:1.85;
  margin:0 0 19px
}
.cover-writing b{
  font-size:16px;
  font-weight:500;
  color:#5286a2
}
.knowledge-cover:hover{
  transform:translateY(-3px);
  box-shadow:0 8px 20px #25465e0d
}
.knowledge-cover:hover h3{
  color:#b8784f
}
@media(max-width:760px){
  .knowledge-cover-grid{
    grid-template-columns:minmax(0,1fr);
    gap:18px
  }
  .cover-photo{
    aspect-ratio:1.95
  }
  .cover-writing{
    padding:23px
  }
  .cover-writing h3{
    font-size:23px
  }
  .knowledge-covers .heading span{
    font-size:16px
  }
}
@media(prefers-reduced-motion:reduce){
  .knowledge-cover{
    transition:none;
    transform:none!important
  }
}
/* Larger readable search */.mast{
  display:grid;
  grid-template-columns:minmax(260px,1fr) minmax(355px,1.25fr) auto;
  gap:22px
}
.mast form#searchForm{
  width:100%;
  min-width:355px;
  height:56px;
  margin:0
}
.mast #searchInput{
  font-size:16px;
  padding:14px 16px;
  min-width:0
}
.mast #searchForm button{
  padding:0 23px;
  font-size:17px
}
.header-contacts{
  gap:10px
}
.header-contacts>a,.header-contacts>button{
  padding:10px 12px
}
.header-contacts strong{
  font-size:20px
}
@media(max-width:1200px) and (min-width:761px){
  .mast{
    grid-template-columns:1fr 1fr
  }
  .header-contacts{
    grid-column:2;
    grid-row:1;
    justify-content:flex-end
  }
  .mast form#searchForm{
    grid-column:1/-1;
    grid-row:2;
    min-width:0;
    max-width:none
  }
  .brand{
    grid-column:1;
    grid-row:1
  }
}
@media(max-width:760px){
  .mast{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:18px
  }
  .mast form#searchForm{
    width:100%;
    min-width:0;
    height:56px;
    margin:0
  }
  .mast #searchInput{
    font-size:16px;
    padding:12px;
    min-width:0
  }
  .mast #searchForm button{
    padding:0 18px
  }
  .header-contacts{
    margin:0;
    width:100%
  }
  .brand{
    font-size:27px
  }
}
/* Mid-page contact strip */.mid-contact{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  background:linear-gradient(110deg,#e9f1f6,#edf5f2);
  border:1px solid #d4e3e9;
  border-radius:10px;
  padding:26px 29px;
  margin:32px 0
}
.mid-contact-intro>span{
  font-size:16px;
  color:#829aa9
}
.mid-contact h2{
  font-size:25px;
  color:#31556e;
  margin:7px 0 9px
}
.mid-contact p{
  font-size:16px;
  color:#8c9fab;
  margin:0
}
.mid-contact-actions{
  display:flex;
  gap:17px
}
.mid-contact-actions>button,.mid-contact-actions>a{
  display:block;
  padding:17px 23px;
  min-width:200px;
  border-radius:7px;
  border:1px solid #c6ddd2;
  background:#f8fcf9;
  color:#407860;
  text-align:left
}
.mid-contact-actions .mid-phone{
  border-color:#c9dce9;
  background:#f9fcfe;
  color:#3b6c8b
}
.mid-contact-actions span{
  font-size:16px;
  display:block
}
.mid-contact-actions strong{
  display:block;
  font-size:25px;
  line-height:1.5;
  margin:3px 0 6px;
  letter-spacing:.4px
}
.mid-contact-actions b{
  font-size:15px;
  font-weight:500;
  opacity:.7
}
.mid-contact-actions>a:hover,.mid-contact-actions>button:hover{
  box-shadow:0 5px 14px #274f6410;
  border-color:#89b7cb
}
@media(max-width:760px){
  .mid-contact{
    display:block;
    padding:24px
  }
  .mid-contact h2{
    font-size:24px
  }
  .mid-contact-actions{
    display:grid;
    grid-template-columns:1fr;
    gap:13px;
    margin-top:21px
  }
  .mid-contact-actions>button,.mid-contact-actions>a{
    min-width:0;
    padding:17px 19px
  }
  .mid-contact-actions strong{
    font-size:25px
  }
  .mid-contact p{
    font-size:16px
  }
}
/* Slim contact invitation */.mid-contact{
  padding:17px 24px;
  margin:27px 0;
  gap:24px;
  border-radius:8px
}
.mid-contact h2{
  font-size:21px;
  line-height:1.5;
  margin:0 0 5px
}
.mid-contact p{
  font-size:16px;
  line-height:1.65;
  margin:0
}
.mid-contact-actions{
  gap:12px
}
.mid-contact-actions>button,.mid-contact-actions>a{
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:center;
  gap:3px 12px;
  padding:10px 15px;
  min-width:0;
  border-radius:5px
}
.mid-contact-actions span{
  font-size:15px;
  grid-column:1;
  grid-row:1
}
.mid-contact-actions strong{
  font-size:21px;
  line-height:1.3;
  margin:0;
  grid-column:2;
  grid-row:1
}
.mid-contact-actions b{
  font-size:13px;
  line-height:1.4;
  grid-column:1/-1
}
.mid-contact-actions .mid-wechat{
  min-width:185px
}
.mid-contact-actions .mid-phone{
  min-width:225px
}
@media(max-width:1000px) and (min-width:761px){
  .mid-contact{
    gap:18px;
    padding:18px 21px;
    flex-wrap:wrap
  }
  .mid-contact h2{
    font-size:20px
  }
  .mid-contact-actions{
    margin-left:auto
  }
}
@media(max-width:760px){
  .mid-contact{
    padding:20px;
    margin:24px 0
  }
  .mid-contact h2{
    font-size:21px;
    line-height:1.65;
    margin:0 0 5px
  }
  .mid-contact p{
    font-size:16px
  }
  .mid-contact-actions{
    display:flex;
    flex-direction:column;
    gap:10px;
    margin-top:15px
  }
  .mid-contact-actions>button,.mid-contact-actions>a{
    padding:11px 13px;
    min-width:0!important;
    gap:3px 12px
  }
  .mid-contact-actions strong{
    font-size:22px
  }
  .mid-contact-actions span{
    font-size:16px
  }
  .mid-contact-actions b{
    font-size:14px
  }
}
/* Slightly stronger mid-page contact contrast */.mid-contact{
  background:linear-gradient(110deg,#d9e8f1,#deede6);
  border-color:#afc9d7
}
.mid-contact h2{
  color:#234c66
}
.mid-contact p{
  color:#638093
}
.mid-contact-actions .mid-wechat{
  background:#e8f3ec;
  border-color:#abcdbb;
  color:#2b6950
}
.mid-contact-actions .mid-phone{
  background:#e6eff7;
  border-color:#adc8dc;
  color:#285b80
}
.mid-contact-actions b{
  opacity:1;
  color:inherit
}
.mid-contact-actions span{
  color:inherit
}
.reference-photo-row{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin:29px 0 33px
}
.reference-photo-row img{
  display:block;
  width:100%;
  height:220px;
  object-fit:cover;
  border:1px solid #dee6eb;
  border-radius:7px;
  background:#edf2f5
}
@media(max-width:760px){
  .reference-photo-row{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:9px;
    margin:24px 0
  }
  .reference-photo-row img{
    height:125px;
    border-radius:5px
  }
}
/* Photography for the three decision cards */.next-step a{
  padding:0 0 24px;
  overflow:hidden
}
.decision-photo{
  position:relative;
  aspect-ratio:1.85;
  overflow:hidden;
  background:#edf2f5;
  margin-bottom:22px
}
.decision-photo img{
  position:absolute;
  display:block;
  width:300%;
  max-width:none;
  height:auto;
  top:50%;
  transform:translateY(-50%)
}
.decision-photo-0 img{
  left:0
}
.decision-photo-1 img{
  left:-100%
}
.decision-photo-2 img{
  left:-200%
}
.next-step a h3{
  margin:0 23px 13px;
  font-size:23px;
  line-height:1.5
}
.next-step a p{
  margin:0 23px 19px;
  font-size:17px;
  line-height:1.85
}
.next-step a>span{
  display:block;
  margin:0 23px;
  font-size:17px
}
.next-step a:hover .decision-photo img{
  filter:brightness(1.025)
}
@media(max-width:760px){
  .next-step a{
    padding:0 0 24px
  }
  .decision-photo{
    aspect-ratio:1.95;
    margin-bottom:22px
  }
  .next-step a h3{
    font-size:23px
  }
  .next-step a p{
    font-size:17px
  }
}
