.contact-hero{
  padding-block:var(--md-space-8);
  color:var(--md-ink);
  background:var(--md-peach);
}

.contact-hero__grid{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);
  gap:var(--md-space-7);
  align-items:stretch;
}

.contact-hero__grid>*{
  min-width:0;
}

.contact-hero__copy{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:var(--md-space-2);
  justify-content:center;
}

.contact-hero__copy h1{
  max-width:760px;
}

.contact-hero__copy>p{
  max-width:680px;
  color:var(--md-ink);
}

.contact-hero__actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-start;
  gap:var(--md-space-2);
  margin-top:var(--md-space-4);
}

.contact-route-card{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:var(--md-space-4);
  padding:var(--md-card-padding);
  color:var(--md-ink);
  background:var(--md-white);
  border:1px solid var(--md-line);
  border-radius:var(--md-radius-lg);
}

.contact-route-card__head{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:var(--md-space-2);
}

.contact-route-card__head h2{
  font-size:var(--md-fs-xl);
}

.contact-route{
  min-width:0;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:var(--md-space-3);
  padding-top:var(--md-space-4);
  border-top:1px solid var(--md-line);
}

.contact-route__icon{
  display:grid;
  width:40px;
  height:40px;
  place-items:center;
  color:var(--md-ink);
  background:var(--md-peach);
  border:1px solid var(--md-line);
  border-radius:var(--md-radius-sm);
}

.contact-route__body{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:var(--md-space-2);
}

.contact-route__body h3{
  font-size:var(--md-fs-lg);
}

.contact-route__body a{
  color:var(--md-ink);
  font-weight:750;
  text-decoration:underline;
  text-underline-offset:3px;
  overflow-wrap:anywhere;
}

.contact-route__body span{
  color:var(--md-green);
  font-size:var(--md-fs-xs);
  font-weight:700;
}

.page-section__head>div{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:var(--md-space-2);
}

.contact-type-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--md-space-4);
  align-items:start;
}

.contact-type{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:var(--md-space-2);
  min-height:164px;
  padding:var(--md-space-5);
  color:var(--md-ink);
  background:var(--md-white);
  border:1px solid var(--md-line);
  border-radius:var(--md-radius-md);
  text-align:left;
  cursor:pointer;
  transition:transform .18s var(--md-ease),background-color .18s var(--md-ease);
}

.contact-type:hover{
  transform:translateY(-2px);
  color:var(--md-ink);
  background:var(--md-peach);
}

.contact-type.is-active{
  color:var(--md-ink);
  background:var(--md-lilac-soft);
  border-color:var(--md-ink);
}

.contact-type strong{
  font-family:"Albert Sans",-apple-system,"PingFang SC","Microsoft YaHei",sans-serif;
  font-size:var(--md-fs-lg);
}

.contact-type span{
  color:var(--md-muted);
  line-height:1.55;
}

.contact-selection-status{
  margin-top:var(--md-space-4);
  padding:var(--md-space-4);
  color:var(--md-ink);
  background:var(--md-peach);
  border:1px solid var(--md-line);
  border-radius:var(--md-radius-sm);
  font-size:var(--md-fs-sm);
  font-weight:650;
}

.contact-panel[hidden]{
  display:none;
}

.contact-form{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:var(--md-space-5);
  padding:var(--md-card-padding);
  color:var(--md-ink);
  background:var(--md-white);
  border:1px solid var(--md-line);
  border-radius:var(--md-radius-md);
}

.contact-form__head{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:var(--md-space-2);
}

.contact-form__head h3{
  font-size:var(--md-fs-xl);
}

.contact-form__grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--md-space-4);
  align-items:start;
}

.contact-form__grid>*{
  min-width:0;
}

.contact-number,
.contact-date,
.contact-datetime,
.contact-file{
  padding-inline-end:2.5rem;
}

.contact-date,
.contact-datetime,
.contact-file{
  appearance:none;
}

.contact-file{
  min-width:0;
  overflow:hidden;
}

.contact-textarea-short{
  min-height:112px;
}

.contact-field-help{
  color:var(--md-muted);
  font-size:var(--md-fs-xs);
  line-height:1.55;
}

.contact-form__status{
  min-height:1.5rem;
  color:var(--md-green);
  font-size:var(--md-fs-sm);
  font-weight:700;
}

.contact-form__status.is-error{
  color:var(--md-red);
}

.contact-form__actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-start;
  gap:var(--md-space-2);
}

.contact-side-card{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:var(--md-space-4);
}

.contact-side-card__head{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:var(--md-space-2);
}

.contact-fact-list{
  width:100%;
  display:flex;
  flex-direction:column;
}

.contact-fact-list li{
  min-width:0;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:var(--md-space-4);
  padding-block:var(--md-space-3);
  border-bottom:1px solid var(--md-line);
}

.contact-fact-list li:first-child{
  border-top:1px solid var(--md-line);
}

.contact-fact-list span{
  min-width:0;
  text-align:right;
  overflow-wrap:anywhere;
}

.contact-mini-steps{
  width:100%;
  display:flex;
  flex-direction:column;
  gap:var(--md-space-4);
  list-style:none;
  margin:0;
  padding:0;
}

.contact-mini-steps li{
  min-width:0;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:var(--md-space-3);
  align-items:start;
}

.contact-mini-steps li>span{
  display:grid;
  width:34px;
  height:34px;
  place-items:center;
  color:var(--md-ink);
  background:var(--md-peach);
  border:1px solid var(--md-line);
  border-radius:var(--md-radius-sm);
  font-size:var(--md-fs-xs);
  font-weight:700;
}

.contact-mini-steps li>div{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:var(--md-space-2);
}

.contact-response-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:start;
}

.contact-response-card{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:var(--md-space-2);
}

.contact-response-card h3{
  font-size:var(--md-fs-lg);
}

.contact-guidance{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);
  gap:var(--md-space-4);
  align-items:stretch;
}

.contact-guidance>*{
  min-width:0;
}

.contact-guidance__main{
  display:flex;
  flex-direction:column;
  gap:var(--md-space-5);
  padding:var(--md-card-padding);
  color:var(--md-ink);
  background:var(--md-white);
  border:1px solid var(--md-line);
  border-radius:var(--md-radius-md);
}

.contact-guidance__head{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:var(--md-space-2);
}

.contact-check-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--md-space-4);
  align-items:start;
}

.contact-check{
  min-width:0;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:var(--md-space-3);
  align-items:start;
  padding:var(--md-space-4);
  color:var(--md-ink);
  background:var(--md-cream);
  border:1px solid var(--md-line);
  border-radius:var(--md-radius-sm);
}

.contact-check>div{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:var(--md-space-2);
}

.contact-sensitive{
  min-width:0;
  padding:var(--md-card-padding);
  color:var(--md-white);
  background:var(--md-ink);
  border:1px solid var(--md-line);
  border-radius:var(--md-radius-md);
}

.contact-sensitive__head{
  display:flex;
  align-items:center;
  gap:var(--md-space-2);
}

.contact-sensitive ul{
  display:flex;
  flex-direction:column;
  gap:var(--md-space-3);
  margin-top:var(--md-space-5);
}

.contact-sensitive li{
  padding-bottom:var(--md-space-3);
  color:var(--md-white);
  border-bottom:1px solid var(--md-muted);
}

.contact-closing__copy{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:var(--md-space-2);
  max-width:760px;
}

.contact-closing__copy h2{
  color:var(--md-white);
}

.contact-closing__actions{
  flex:0 0 auto;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:var(--md-space-2);
}

.contact-closing__ghost{
  color:var(--md-white);
  background:transparent;
  border-color:var(--md-white);
}

.contact-closing__ghost:hover{
  color:var(--md-ink);
  background:var(--md-white);
  border-color:var(--md-white);
}

@media(max-width:900px){
  .contact-hero__grid{
    grid-template-columns:1fr;
  }

  .contact-type-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .contact-guidance{
    grid-template-columns:1fr;
  }
}

@media(max-width:768px){
  .contact-form__grid,
  .contact-response-grid,
  .contact-check-grid{
    grid-template-columns:1fr;
  }

  .contact-type{
    min-height:0;
  }
}

@media(max-width:640px){
  .contact-hero{
    padding-block:var(--md-space-6);
  }

  .contact-type-grid{
    grid-template-columns:1fr;
  }

  .contact-hero__actions,
  .contact-form__actions{
    width:100%;
  }

  .contact-hero__actions .c-btn,
  .contact-form__actions .c-btn{
    width:100%;
    white-space:normal;
  }

  .contact-closing__actions{
    width:100%;
  }

  .contact-closing__actions .c-btn{
    width:100%;
    white-space:normal;
  }

  .contact-fact-list li{
    flex-direction:column;
    gap:var(--md-space-2);
  }

  .contact-fact-list span{
    text-align:left;
  }
}

@media(max-width:390px){
  .contact-route-card,
  .contact-form,
  .contact-guidance__main,
  .contact-sensitive{
    padding:var(--md-space-4);
  }

  .contact-route{
    grid-template-columns:1fr;
  }

  .contact-route__icon{
    width:36px;
    height:36px;
  }
}

.contact-hero__copy{justify-content:flex-start}
.contact-hero__copy .c-breadcrumb{margin-bottom:calc(var(--md-space-5) - var(--md-space-2))}
