.page-contact{
  --c-soft:#BFC9DC;
  --c-gap:clamp(1.25rem,3.5vw,2.5rem);
}

/* ---------- 首屏 ---------- */
.page-contact .contact-hero{
  position:relative;
  overflow:hidden;
  padding-top:clamp(1.15rem,3vw,2rem);
  padding-bottom:clamp(2rem,5vw,3.25rem);
}
.page-contact .contact-hero::before{
  content:"";
  position:absolute;
  left:-18%;
  bottom:-48%;
  width:80%;
  height:135%;
  background:linear-gradient(150deg,var(--turf-deep) 0%,rgba(20,112,62,0) 72%);
  clip-path:polygon(0 100%,0 38%,100% 100%);
  opacity:.55;
  pointer-events:none;
}
.page-contact .contact-hero .wrap{position:relative;z-index:1;}
.page-contact .crumbs{margin-bottom:clamp(1rem,2.6vw,1.75rem);}

.page-contact .hero-grid{display:grid;gap:clamp(1.5rem,4vw,2.5rem);}
.page-contact .hero-kicker{
  margin:0 0 .6rem;
  font-family:var(--font-num);
  font-size:var(--step-1);
  letter-spacing:.22em;
  color:var(--turf);
}
.page-contact .hero-title{
  margin:0 0 1rem;
  font-size:var(--step-6);
  line-height:1.03;
  font-weight:800;
  color:var(--on-ink);
  letter-spacing:-.01em;
}
.page-contact .hero-lead{
  margin:0;
  max-width:32em;
  font-size:var(--step-3);
  line-height:1.78;
  color:var(--c-soft);
}

.page-contact .jump{
  display:flex;
  gap:.5rem;
  overflow-x:auto;
  margin-top:clamp(1.25rem,3vw,1.85rem);
  padding-bottom:.35rem;
  scrollbar-width:thin;
}
.page-contact .jump a{
  flex:0 0 auto;
  padding:.45rem .85rem;
  font-size:var(--step-1);
  color:var(--on-ink);
  text-decoration:none;
  background:var(--ink-2);
  border:1px solid var(--line);
  clip-path:polygon(0 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%);
  transition:border-color .18s var(--ease),color .18s var(--ease);
}
.page-contact .jump a:hover{border-color:var(--turf);color:var(--lime);}
.page-contact .jump a:focus-visible{outline:2px solid var(--turf);outline-offset:2px;}

.page-contact .quick-list{
  list-style:none;
  display:grid;
  gap:2px;
  margin:0;
  padding:0;
  background:var(--line);
  border:1px solid var(--line);
  clip-path:polygon(0 0,100% 0,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%);
}
.page-contact .quick-list li{
  display:grid;
  gap:.2rem;
  padding:.8rem 1rem;
  background:var(--ink-2);
}
.page-contact .quick__k{
  font-size:var(--step-1);
  letter-spacing:.06em;
  color:var(--mute);
}
.page-contact .quick__v{
  font-family:var(--font-num);
  font-size:var(--step-3);
  color:var(--on-ink);
  word-break:break-all;
}

/* ---------- 通用区块 ---------- */
.page-contact .contact-sec{
  padding-top:clamp(2.25rem,5vw,3.75rem);
  padding-bottom:clamp(2.25rem,5vw,3.75rem);
  border-top:1px solid var(--line);
}
.page-contact .section__head{margin-bottom:.4rem;}
.page-contact .section__num{
  display:inline-block;
  font-family:var(--font-num);
  font-size:var(--step-2);
  letter-spacing:.1em;
  color:var(--turf);
  transform:rotate(-3deg);
}
.page-contact .section__title{
  margin:.4rem 0 .55rem;
  font-size:var(--step-5);
  line-height:1.14;
  font-weight:800;
  color:var(--on-ink);
}
.page-contact .section__note{
  margin:0;
  max-width:34em;
  font-size:var(--step-2);
  line-height:1.7;
  color:var(--mute);
}

.page-contact .t-copy{
  margin:0 0 .9rem;
  max-width:36em;
  font-size:var(--step-3);
  line-height:1.78;
  color:var(--c-soft);
}
.page-contact .t-copy a{
  color:var(--lime);
  text-decoration:underline;
  text-underline-offset:4px;
}
.page-contact .t-copy a:hover{color:var(--turf);}
.page-contact .t-copy a:focus-visible{outline:2px solid var(--turf);outline-offset:3px;}

/* ---------- 01 渠道 ---------- */
.page-contact .channels{
  display:grid;
  gap:clamp(1.5rem,4vw,2.5rem);
  margin-top:clamp(1.5rem,3.5vw,2.25rem);
}
.page-contact .channel-board{
  display:grid;
  background:var(--ink-2);
  border:1px solid var(--line);
  padding:clamp(.85rem,2.4vw,1.35rem);
  clip-path:polygon(0 0,calc(100% - 22px) 0,100% 22px,100% 100%,22px 100%,0 calc(100% - 22px));
}
.page-contact .channel{
  position:relative;
  padding:1.05rem .9rem 1.15rem 1.15rem;
  border-top:1px solid var(--line);
  transition:background .18s var(--ease);
}
.page-contact .channel:first-child{border-top:0;}
.page-contact .channel::before{
  content:"";
  position:absolute;
  left:0;
  top:1.05rem;
  bottom:1.15rem;
  width:3px;
  background:var(--line);
  transition:background .18s var(--ease),width .18s var(--ease);
}
.page-contact .channel:hover{background:rgba(34,160,90,.09);}
.page-contact .channel:hover::before{background:var(--lime);width:5px;}

.page-contact .channel__top{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:.5rem .65rem;
}
.page-contact .channel__num{
  font-family:var(--font-num);
  font-size:var(--step-1);
  letter-spacing:.08em;
  color:var(--turf);
}
.page-contact .channel__label{
  margin:0;
  font-size:var(--step-2);
  font-weight:700;
  color:var(--on-ink);
}
.page-contact .channel__value{
  margin:.5rem 0 .45rem;
  font-family:var(--font-num);
  font-size:clamp(1.02rem,2.6vw,1.32rem);
  letter-spacing:-.01em;
  color:var(--on-ink);
  word-break:break-all;
}
.page-contact .channel__desc{
  margin:0;
  max-width:34em;
  font-size:var(--step-2);
  line-height:1.72;
  color:var(--c-soft);
}

.page-contact .guide{display:grid;gap:1rem;align-content:start;}
.page-contact .guide__head{
  margin:0;
  font-size:var(--step-4);
  font-weight:800;
  color:var(--on-ink);
}
.page-contact .guide .t-copy:last-of-type{margin-bottom:.4rem;}

.page-contact .contact-figure{
  position:relative;
  margin:.4rem 0 0;
  overflow:hidden;
  background:var(--ink-3);
  border:1px solid var(--line);
  clip-path:polygon(0 0,100% 0,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%);
}
.page-contact .contact-figure img{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  aspect-ratio:3/2;
  object-fit:cover;
}
.page-contact .contact-figure figcaption{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  padding:1.6rem 1rem .8rem;
  font-size:var(--step-1);
  line-height:1.55;
  color:var(--on-ink);
  background:linear-gradient(to top,rgba(11,18,36,.94),rgba(11,18,36,0));
}

/* ---------- 02 版本核对（纸白区） ---------- */
.page-contact .contact-sec--paper{
  background:var(--paper);
  color:var(--text);
  border-top:1px solid #DDE3D6;
}
.page-contact .contact-sec--paper .section__num{color:var(--turf-deep);}
.page-contact .contact-sec--paper .section__title{color:var(--text);}
.page-contact .contact-sec--paper .section__note{color:#4C5668;}
.page-contact .contact-sec--paper .t-copy{color:#3D4759;}
.page-contact .contact-sec--paper .t-copy a{color:var(--turf-deep);}

.page-contact .materials{
  list-style:none;
  display:grid;
  gap:1rem;
  margin:clamp(1.5rem,3.5vw,2.15rem) 0 0;
  padding:0;
}
.page-contact .material{
  position:relative;
  padding:1.3rem 1.15rem 1.2rem;
  background:#FFFFFF;
  border:1px solid #DDE3D6;
  border-top:3px solid var(--turf);
  clip-path:polygon(0 0,100% 0,100% calc(100% - 16px),calc(100% - 16px) 100%,0 100%);
}
.page-contact .material__num{
  display:block;
  font-family:var(--font-num);
  font-size:var(--step-4);
  color:var(--turf-deep);
  transform:rotate(-3deg);
}
.page-contact .material__title{
  margin:.5rem 0 .45rem;
  font-size:var(--step-3);
  font-weight:700;
  color:var(--text);
}
.page-contact .material__text{
  margin:0;
  font-size:var(--step-2);
  line-height:1.72;
  color:#3D4759;
}
.page-contact .material__text a{
  color:var(--turf-deep);
  text-decoration:underline;
  text-underline-offset:3px;
}

.page-contact .verify-pair{
  display:grid;
  gap:clamp(1.25rem,3.5vw,2rem);
  margin-top:clamp(1.5rem,3.5vw,2.25rem);
}
.page-contact .tpl{
  padding:clamp(1.15rem,2.8vw,1.6rem);
  background:var(--ink-3);
  clip-path:polygon(0 0,calc(100% - 20px) 0,100% 20px,100% 100%,20px 100%,0 calc(100% - 20px));
}
.page-contact .tpl__head,
.page-contact .check__head{
  margin:0 0 .9rem;
  font-size:var(--step-3);
  font-weight:700;
}
.page-contact .tpl__head{color:var(--on-ink);}
.page-contact .tpl__list{margin:0;}
.page-contact .tpl__row{
  display:grid;
  grid-template-columns:4.2em minmax(0,1fr);
  gap:.55rem;
  padding:.62rem 0;
  border-top:1px solid var(--line);
}
.page-contact .tpl__row:first-child{border-top:0;padding-top:0;}
.page-contact .tpl__row dt{
  font-family:var(--font-num);
  font-size:var(--step-1);
  letter-spacing:.08em;
  color:var(--lime);
  padding-top:.18rem;
}
.page-contact .tpl__row dd{
  margin:0;
  font-size:var(--step-2);
  line-height:1.7;
  color:var(--c-soft);
}

.page-contact .check{padding:clamp(1.15rem,2.8vw,1.6rem);border:1px solid #DDE3D6;background:#FFFFFF;}
.page-contact .check__head{color:var(--text);}
.page-contact .checklist{list-style:none;display:grid;gap:.55rem;margin:0;padding:0;}
.page-contact .checklist__item{
  display:flex;
  align-items:flex-start;
  gap:.7rem;
  padding:.6rem .7rem;
  border:1px solid #E4E9DE;
  background:#FAFBF6;
  cursor:pointer;
  transition:border-color .16s var(--ease),background .16s var(--ease);
}
.page-contact .checklist__item:hover{border-color:var(--turf);background:#F2F6EA;}
.page-contact .checklist__item input{
  position:absolute;
  width:1px;
  height:1px;
  opacity:0;
  pointer-events:none;
}
.page-contact .checklist__box{
  position:relative;
  flex:0 0 auto;
  width:20px;
  height:20px;
  margin-top:2px;
  border:1.5px solid #A9B4A0;
  background:#FFFFFF;
}
.page-contact .checklist__box::after{
  content:"";
  position:absolute;
  inset:4px;
  background:var(--turf-deep);
  transform:scale(0);
  transition:transform .15s var(--ease);
}
.page-contact .checklist__item input:checked + .checklist__box::after{transform:scale(1);}
.page-contact .checklist__item input:checked + .checklist__box{border-color:var(--turf-deep);}
.page-contact .checklist__item input:focus-visible + .checklist__box{outline:2px solid var(--turf-deep);outline-offset:2px;}
.page-contact .checklist__text{
  font-size:var(--step-2);
  line-height:1.65;
  color:#3D4759;
}
.page-contact .checklist__item input:checked ~ .checklist__text{color:#7A8497;}
.page-contact .check__hint{
  margin:.85rem 0 0;
  font-size:var(--step-1);
  color:#5B6678;
}

/* ---------- 03 内容纠错 ---------- */
.page-contact .fix-body{margin-top:1.1rem;}
.page-contact .fix-flow{
  list-style:none;
  display:grid;
  gap:.85rem;
  margin:clamp(1.35rem,3vw,2rem) 0 0;
  padding:0;
}
.page-contact .fix-flow li{
  display:flex;
  gap:.85rem;
  padding:1rem 1.1rem;
  background:var(--ink-2);
  border-left:3px solid var(--turf);
  transition:border-color .18s var(--ease),background .18s var(--ease);
}
.page-contact .fix-flow li:hover{border-left-color:var(--track);background:rgba(34,160,90,.09);}
.page-contact .fix__n{
  flex:0 0 auto;
  font-family:var(--font-num);
  font-size:var(--step-3);
  color:var(--turf);
  padding-top:.1rem;
}
.page-contact .fix__title{
  margin:0 0 .3rem;
  font-size:var(--step-3);
  font-weight:700;
  color:var(--on-ink);
}
.page-contact .fix__text{
  margin:0;
  font-size:var(--step-2);
  line-height:1.7;
  color:var(--c-soft);
}
.page-contact .fix__text a{
  color:var(--lime);
  text-decoration:underline;
  text-underline-offset:3px;
}

/* ---------- 04 合作 ---------- */
.page-contact .duo{
  display:grid;
  gap:1.1rem;
  margin-top:clamp(1.35rem,3vw,2rem);
}
.page-contact .duo__card{
  padding:clamp(1.15rem,2.8vw,1.6rem);
  background:var(--ink-2);
  border:1px solid var(--line);
  clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,0 100%);
}
.page-contact .duo__head{
  display:flex;
  align-items:center;
  gap:.6rem;
  margin:0 0 .9rem;
  font-size:var(--step-3);
  font-weight:700;
  color:var(--on-ink);
}
.page-contact .duo__head::before{
  content:"";
  width:20px;
  height:3px;
  background:var(--turf);
}
.page-contact .bullet{list-style:none;display:grid;gap:.7rem;margin:0;padding:0;}
.page-contact .bullet li{
  position:relative;
  padding-left:1.1rem;
  font-size:var(--step-2);
  line-height:1.72;
  color:var(--c-soft);
}
.page-contact .bullet li::before{
  content:"";
  position:absolute;
  left:0;
  top:.62em;
  width:6px;
  height:6px;
  background:var(--track);
  transform:rotate(45deg);
}
.page-contact .duo__foot{margin-top:clamp(1.25rem,3vw,1.85rem);}

/* ---------- 05 地点与时段 ---------- */
.page-contact .where{
  display:grid;
  gap:1.1rem;
  margin-top:clamp(1.35rem,3vw,2rem);
}
.page-contact .where__card{
  padding:clamp(1.15rem,2.8vw,1.6rem);
  background:var(--ink-2);
  border:1px solid var(--line);
  border-top:3px solid var(--track);
  clip-path:polygon(0 0,100% 0,100% calc(100% - 20px),calc(100% - 20px) 100%,0 100%);
}
.page-contact .where__k{
  margin:0 0 .45rem;
  font-size:var(--step-1);
  letter-spacing:.16em;
  color:var(--mute);
}
.page-contact .where__v{
  margin:0 0 .6rem;
  font-family:var(--font-num);
  font-size:clamp(1.02rem,2.6vw,1.3rem);
  line-height:1.5;
  color:var(--on-ink);
  word-break:break-all;
}
.page-contact .where__text{
  margin:0;
  font-size:var(--step-2);
  line-height:1.72;
  color:var(--c-soft);
}

.page-contact .banner{
  position:relative;
  margin:clamp(1.5rem,4vw,2.5rem) 0 0;
  overflow:hidden;
  border:1px solid var(--line);
  clip-path:polygon(0 0,100% 0,100% calc(100% - 24px),calc(100% - 24px) 100%,0 100%);
}
.page-contact .banner img{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  aspect-ratio:14/5;
  object-fit:cover;
  filter:saturate(.85);
}
.page-contact .banner figcaption{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  padding:2rem 1rem .85rem;
  font-size:var(--step-1);
  line-height:1.55;
  color:var(--on-ink);
  background:linear-gradient(to top,rgba(11,18,36,.92),rgba(11,18,36,0));
}

.page-contact .contact-slope{
  height:clamp(26px,5vw,50px);
  margin-top:clamp(2rem,5vw,3.25rem);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:repeating-linear-gradient(115deg,var(--ink-2) 0 10px,var(--ink) 10px 20px);
}

/* ---------- 断点 ---------- */
@media (min-width:640px){
  .page-contact .materials{grid-template-columns:repeat(2,minmax(0,1fr));}
  .page-contact .materials .material:first-child{grid-column:1 / -1;}
}

@media (min-width:880px){
  .page-contact .hero-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:end;}
  .page-contact .verify-pair{grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
  .page-contact .duo{grid-template-columns:repeat(2,minmax(0,1fr));}
  .page-contact .where{grid-template-columns:repeat(2,minmax(0,1fr));}
  .page-contact .fix-flow{grid-template-columns:repeat(2,minmax(0,1fr));}
}

@media (min-width:960px){
  .page-contact .channels{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:start;}
  .page-contact .materials{grid-template-columns:repeat(3,minmax(0,1fr));}
  .page-contact .materials .material:first-child{grid-column:auto;}
}

@media (min-width:1100px){
  .page-contact .hero-title{letter-spacing:-.02em;}
  .page-contact .channel{padding-left:1.35rem;}
}
<<<END>>>
