p {
margin: 0;
}
body {
width: 15rem;
margin: 0;background-color: #fff;}
#wrap {
width: 15rem;
/* min-height: 50rem; */
}
#wrap {
position: relative;
overflow: hidden;
}
ul,
li {
margin: 0;
padding: 0;
list-style: none;
}
a {
text-decoration: none;
color: #333;
}
dd {
margin: 0;
}
a:active {
color: red !important;
}
a:active p {
color: red !important;
}
a:active span {
color: red !important;
}

  .wapBranchwrap{
      width: 100%;
      min-height: 100vh;
      padding-bottom: 1.2rem;
  }
  .branchheader{
      background: #D62C45;
      padding: 0.9rem 0.8rem 0.9rem 0.8rem;
      border-radius: 0 0 0.8rem 0.8rem;
      margin-bottom: 0.8rem;
      box-shadow:  0 0.08rem 0.2rem 0 rgba(0,0,0,0.05);
  }
  .branchheader h1{
      font-size: 0.96rem;
      color: #fff;
      font-weight: 600;
      letter-spacing: 0.02rem;
  }
  .branchheader p{
      font-size: 0.56rem;/*14px*/
      color: rgba(255,255,255,0.88);
      margin-top: 0.2rem;

  }
  .letter-wrapper{
      margin: 0 0.6rem 0.8rem 0.6rem;
      background: #fff;
      border-radius: 1rem;
      padding: 0.5rem 0.5rem;
      box-shadow: 0 0.08rem 0.24rem 0 rgba(0,0,0,0.03);
  }
  .letter-list{
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      gap: 0.28rem 0.35rem;
  }
  .letter-list a{
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-width: 1.6rem;
      padding: 0.2rem 0.1rem;
      font-size: 0.58rem;
      font-weight: 600;
      background: #F4F6FA;
      color: #2C3E50;
      border-radius: 1.6rem;
      cursor: pointer;
      text-align: center;
      flex: 0 0 auto;
      user-select: none;
      letter-spacing: 0;
      text-decoration: none;

  }
  /* 适应小屏，保持紧凑 */
  @media(max-width: 640px){
      .letter-list a{
          min-width: 1.45rem;
          font-size: 0.54rem;
          padding: 0.18rem 0.05rem;
      }
  }
  @media(max-width: 560px){
      .letter-list a{
          min-width: 1.35rem;
          font-size: 0.52rem;
          padding: 0.16rem 0rem;
      }
  }
  .letter-list .active{
      color: #fff;
      background: #D62C45;
      box-shadow: 0 0.08rem 0.2rem rgba(214,44,69,0.3);
  }
  .branch-hotWrapper{
    display: none;
  }
  .branch-hot{
    display: flex;
    padding: 0 0 0.5rem 1.6rem;
    color: #D62C45;
    font-size: 0.58rem;
    font-weight: 600;
 }
  
  .branch-grid{
      margin: 0 0.6rem;
      display: grid;
      grid-template-columns: repeat(auto-fill, minmax(3.8rem, 1fr));
      gap: 0.6rem;
  }
  .empty-tip{ 
      text-align: center;
      padding: 1.2rem 0;
      color: #999;
      font-size: 0.58rem;

  }
  .branch-card{
      background: #fff;
      border-radius: 0.8rem;
      padding: 0.65rem 0.2rem;
      text-align: center;
      box-shadow: 0 0.1rem 0.3rem rgba(0,0,0,0.04);
      cursor: pointer;
      border: 1px solid #F0F0F2;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
  }
  .aLink{
      font-size: 0.58rem;
      font-weight: 600;
      color: #1E2F3E;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
      padding: 0 0.1rem;
  }
  .detail-panel{
      margin: 0.8rem 0.6rem 0.2rem 0.6rem;
      background: #fff;
      border-radius: 1rem;
      padding: 0.9rem 0.8rem;
      box-shadow: 0 0.24rem 0.6rem rgba(0,0,0,0.08);
      display: none;
  }
  .detail-title{
      font-size: 0.68rem;
      font-weight: 700;
      color: #D62C45;
      margin-bottom: 0.6rem;
      display: flex;
      align-items: center;
      gap: 0.3rem;
      padding-bottom: 0.3rem;
      border-bottom: 1px solid #F0EFF2;
  }
  .detail-close{
      margin-left: auto;
      background: #F0F2F5;
      width: 1.2rem;
      height: 1.2rem;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border-radius: 2rem;
      font-size: 0.64rem;
      cursor: pointer;
      color: #666;
  }
  .detail-image-wrapper{
      text-align: center;
      margin-bottom: 0.8rem;
      background: #F8F9FC;
      border-radius: 0.8rem;
      overflow: hidden;
  }
  .detail-image-wrapper img{
      width: 100%;
      max-width: 100%;
      height: auto;
      border-radius: 0.8rem;
      object-fit: cover;
      display: block;
  }
  .branch-intro{
      margin-bottom: 0.8rem;
  }
  #branch-name{
        font-size: 0.58rem;
        font-weight: 600;
        color: #1E2F3E;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding: 0 0.1rem;
    }
  .branch-name-large{
      font-size: 0.72rem;
      font-weight: 700;
      color: #1E2F3E;
      margin-bottom: 0.3rem;
      text-align: left;
  }
  .branch-desc{
      font-size: 0.58rem;
      color: #4A5A72;
      line-height: 1.5;
      white-space: normal;
      word-wrap: break-word;
      word-break: break-word;
      overflow: visible;
      text-overflow: clip;
      display: block;
      text-indent: 2em;
  }
  .detail-contact{
      background: #F9FAFD;
      border-radius: 0.8rem;
      padding: 0.6rem 0.7rem;
      margin-top: 0.2rem;
  }
  .contact-item{
      display: flex;
      align-items: center;
      margin-bottom: 0.45rem;
      line-height: 1.4;

  }
  .contact-item:last-child{
      margin-bottom: 0;
  }
  .contact-icon{
      width: 1.2rem;
      flex-shrink: 0;
  }
  .contact-text{
      flex: 1;
      color: #2C3E50;
      word-break: break-all;
      white-space: normal;
      font-size: 0.58rem;
  }
  .contact-text strong{ 
    font-weight: bold;
    font-size: 0.58rem;
  }