.page-contact{
  --pc-gap:clamp(16px,2.6vw,28px);
  --pc-pad:clamp(20px,3vw,34px);
  background:var(--cream);
  color:var(--ink);
}

/* ---------- 首屏 ---------- */
.page-contact .contact-hero{
  position:relative;
  overflow:hidden;
  padding:clamp(20px,4vw,40px) 0 clamp(36px,6vw,72px);
  background:linear-gradient(180deg,var(--cream) 0%,var(--cream) 72%,var(--paper) 100%);
}
.page-contact .contact-hero::before{
  content:"";
  position:absolute;
  top:0;right:-12%;bottom:0;
  width:42%;
  background:repeating-linear-gradient(90deg,rgba(63,163,77,.14) 0 2px,transparent 2px 16px);
  transform:skewX(-6deg);
  pointer-events:none;
}
.page-contact .contact-hero .shell{position:relative;z-index:1}
.page-contact .crumb{margin-bottom:clamp(20px,3vw,32px);font-size:.85rem}
.page-contact .contact-hero__grid{
  display:grid;
  gap:clamp(24px,4vw,56px);
  align-items:center;
}
.page-contact .contact-hero__copy h1{
  margin:10px 0 16px;
  font-size:clamp(2.05rem,5.4vw,3.5rem);
  line-height:1.14;
  letter-spacing:-.02em;
  max-width:16em;
}
.page-contact .contact-hero__lead{
  margin:0;
  max-width:34em;
  font-size:clamp(1rem,1.5vw,1.08rem);
  line-height:1.75;
  color:var(--ink-soft);
}
.page-contact .contact-hero__quick{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:26px;
}
.page-contact .contact-hero__media{
  margin:0;
  filter:drop-shadow(10px 12px 0 var(--paper)) drop-shadow(0 18px 30px rgba(28,31,30,.16));
}
.page-contact .contact-hero__media img{
  display:block;
  width:100%;
  height:auto;
  object-fit:cover;
  clip-path:polygon(0 0,100% 0,100% calc(100% - 34px),0 100%);
  background:var(--paper);
}
.page-contact .contact-hero__media figcaption{
  margin-top:12px;
  font-size:.78rem;
  letter-spacing:.06em;
  color:var(--stone);
}
@media (min-width:900px){
  .page-contact .contact-hero__grid{grid-template-columns:1.12fr .88fr}
}

/* ---------- 章节统一留白 ---------- */
.page-contact .section{padding-block:clamp(40px,6vw,76px)}

/* ---------- 三条路径 ---------- */
.page-contact .contact-paths{background:var(--cream)}
.page-contact .contact-paths__intro{
  margin:14px 0 0;
  max-width:38em;
  line-height:1.7;
  color:var(--stone);
}
.page-contact .path-stack{
  display:grid;
  gap:var(--pc-gap);
  margin-top:clamp(26px,4vw,44px);
}
.page-contact .path-card{
  --pc-bg:var(--white);
  position:relative;
  display:flex;
  flex-direction:column;
  gap:12px;
  padding:var(--pc-pad);
  isolation:isolate;
  filter:drop-shadow(10px 10px 0 var(--paper)) drop-shadow(0 16px 26px rgba(28,31,30,.14));
  transition:filter .2s ease,transform .2s ease;
}
.page-contact .path-card::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:var(--pc-bg);
  clip-path:var(--pc-cut);
}
.page-contact .path-card > *{position:relative}
.page-contact .path-card__no{
  margin:0;
  font-size:.82rem;
  font-weight:700;
  letter-spacing:.12em;
  color:var(--rust);
}
.page-contact .path-card__title{
  margin:0;
  font-size:clamp(1.25rem,2.2vw,1.5rem);
  letter-spacing:-.01em;
}
.page-contact .path-card__desc{
  margin:0;
  font-size:.95rem;
  line-height:1.7;
}
.page-contact .path-card__value{
  margin:6px 0 0;
  font-size:clamp(1.02rem,2.3vw,1.28rem);
  font-weight:700;
  letter-spacing:-.01em;
  word-break:break-word;
  overflow-wrap:anywhere;
}
.page-contact .path-card__value--text{
  font-family:var(--font-sans);
  font-size:1rem;
  font-weight:700;
  line-height:1.6;
}
.page-contact .path-card__meta{
  margin:0;
  font-size:.86rem;
  line-height:1.65;
}
.page-contact .path-card__action{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  margin-top:auto;
  padding-top:14px;
}
.page-contact .path-card__link{
  margin-top:auto;
  padding-top:12px;
  align-self:flex-start;
  font-weight:700;
  font-size:.9rem;
  color:var(--green-deep);
  text-decoration:none;
  border-bottom:2px solid var(--rust);
}
.page-contact .path-card__map{
  margin:0 0 4px;
}
.page-contact .path-card__map img{
  display:block;
  width:100%;
  height:auto;
  object-fit:cover;
  clip-path:polygon(0 0,100% 0,100% 100%,18px 100%,0 calc(100% - 18px));
}

.page-contact .path-card--phone{
  --pc-bg:var(--green);
  --pc-cut:polygon(14px 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%,0 14px);
  color:var(--ink-soft);
}
.page-contact .path-card--phone::after{
  content:"";
  position:absolute;
  left:14px;top:0;
  width:72px;height:6px;
  background:var(--rust);
  z-index:2;
}
.page-contact .path-card--phone .path-card__no{color:var(--rust-deep)}
.page-contact .path-card--phone .path-card__meta{color:var(--green-deep)}

.page-contact .path-card--mail{
  --pc-bg:var(--ink);
  --pc-cut:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,14px 100%,0 calc(100% - 14px));
  color:var(--cream);
}
.page-contact .path-card--mail .path-card__no{color:var(--rust)}
.page-contact .path-card--mail .path-card__value{color:var(--cyan)}
.page-contact .path-card--mail .path-card__meta{color:var(--hairline-light);color:rgba(246,241,228,.72)}
.page-contact .path-card--mail .btn--ghost{
  border-color:var(--hairline-light);
  color:var(--cream);
}
.page-contact .path-card--mail .btn--ghost:hover,
.page-contact .path-card--mail .btn--ghost:focus-visible{
  border-color:var(--cyan);
  color:var(--cyan);
}

.page-contact .path-card--place{
  --pc-bg:var(--paper);
  --pc-cut:polygon(0 0,100% 0,100% 100%,44px 100%,0 calc(100% - 44px));
  color:var(--ink);
}
.page-contact .path-card--place .path-card__no{color:var(--rust-deep)}

.page-contact .copy-status{
  font-size:.8rem;
  line-height:1.4;
  min-height:1em;
  color:var(--rust-deep);
}
.page-contact .path-card--mail .copy-status{color:var(--cyan)}

@media (min-width:900px){
  .page-contact .path-stack{grid-template-columns:repeat(3,1fr);align-items:start}
  .page-contact .path-card--mail{margin-top:38px}
  .page-contact .path-card--place{margin-top:76px}
  .page-contact .path-card:hover{transform:translateY(-4px)}
}

/* ---------- 联系前准备 ---------- */
.page-contact .contact-prep{background:var(--paper)}
.page-contact .prep-list{
  list-style:none;
  margin:clamp(26px,4vw,40px) 0 0;
  padding:0;
  display:grid;
  gap:var(--pc-gap);
}
.page-contact .prep-item{
  position:relative;
  padding:22px 22px 24px;
  background:var(--white);
  border-left:4px solid var(--green);
  box-shadow:0 12px 24px rgba(28,31,30,.08);
}
.page-contact .prep-item:nth-child(2){border-left-color:var(--rust)}
.page-contact .prep-item:nth-child(3){border-left-color:var(--green-deep)}
.page-contact .prep-item:nth-child(4){border-left-color:var(--rust-deep)}
.page-contact .prep-item__no{
  display:block;
  font-size:1.6rem;
  font-weight:700;
  line-height:1;
  letter-spacing:-.02em;
  color:var(--paper);
  -webkit-text-stroke:1px var(--stone);
}
.page-contact .prep-item__title{
  margin:10px 0 8px;
  font-size:1.06rem;
  letter-spacing:-.01em;
}
.page-contact .prep-item p{
  margin:0;
  font-size:.92rem;
  line-height:1.7;
  color:var(--stone);
}
@media (min-width:720px){
  .page-contact .prep-list{grid-template-columns:repeat(2,1fr)}
}
@media (min-width:1080px){
  .page-contact .prep-list{grid-template-columns:repeat(4,1fr)}
}

/* ---------- 对接类型 ---------- */
.page-contact .contact-handoff{background:var(--cream)}
.page-contact .contact-handoff__grid{gap:clamp(28px,4vw,48px)}
.page-contact .contact-handoff__lead{
  margin:14px 0 22px;
  max-width:32em;
  line-height:1.7;
  color:var(--stone);
}
.page-contact .handoff-list{
  border-top:1px solid var(--hairline);
}
.page-contact .handoff{
  border-bottom:1px solid var(--hairline);
  padding:16px 0;
}
.page-contact .handoff summary{
  position:relative;
  display:grid;
  grid-template-columns:auto 1fr;
  gap:4px 16px;
  align-items:baseline;
  padding-right:34px;
  cursor:pointer;
  list-style:none;
}
.page-contact .handoff summary::-webkit-details-marker{display:none}
.page-contact .handoff summary::after{
  content:"+";
  position:absolute;
  right:0;top:0;
  font-family:var(--font-mono);
  font-size:1.3rem;
  line-height:1;
  color:var(--rust);
}
.page-contact .handoff[open] summary::after{content:"−"}
.page-contact .handoff__no{
  grid-row:1 / span 2;
  font-size:.86rem;
  font-weight:700;
  color:var(--rust);
  letter-spacing:.06em;
}
.page-contact .handoff__name{
  font-size:1.08rem;
  font-weight:700;
  letter-spacing:-.01em;
}
.page-contact .handoff__brief{
  font-size:.86rem;
  color:var(--stone);
}
.page-contact .handoff__body{
  padding:14px 0 6px 0;
}
.page-contact .handoff__body p{
  margin:0 0 12px;
  line-height:1.72;
  font-size:.95rem;
  color:var(--ink-soft);
}
.page-contact .handoff__list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:7px;
}
.page-contact .handoff__list li{
  position:relative;
  padding-left:18px;
  font-size:.9rem;
  line-height:1.65;
  color:var(--stone);
}
.page-contact .handoff__list li::before{
  content:"";
  position:absolute;
  left:0;top:.62em;
  width:8px;height:2px;
  background:var(--green);
}
@media (min-width:720px){
  .page-contact .handoff__body{padding-left:44px}
}

/* 右侧回音面板 */
.page-contact .contact-handoff__aside{min-width:0}
.page-contact .echo-panel{
  position:relative;
  background:var(--ink);
  color:var(--cream);
  padding:clamp(22px,3vw,30px);
  clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,16px 100%,0 calc(100% - 16px));
}
.page-contact .echo-panel__eyebrow{color:var(--cyan)}
.page-contact .echo-panel__title{
  margin:10px 0 20px;
  font-size:clamp(1.25rem,2.4vw,1.5rem);
  letter-spacing:-.01em;
  line-height:1.3;
}
.page-contact .echo-list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:18px;
}
.page-contact .echo-item{
  display:grid;
  grid-template-columns:1fr;
  gap:4px;
  padding-left:14px;
  border-left:2px solid var(--green);
}
.page-contact .echo-item:nth-child(2){border-left-color:var(--rust)}
.page-contact .echo-item:nth-child(3){border-left-color:var(--cyan)}
.page-contact .echo-item__time{
  font-size:1.05rem;
  font-weight:700;
  color:var(--cyan);
  letter-spacing:-.01em;
}
.page-contact .echo-item:nth-child(2) .echo-item__time{color:var(--cream)}
.page-contact .echo-item__label{
  font-size:.75rem;
  letter-spacing:.14em;
  color:rgba(246,241,228,.66);
}
.page-contact .echo-item p{
  margin:2px 0 0;
  font-size:.88rem;
  line-height:1.68;
  color:rgba(246,241,228,.82);
}
@media (min-width:960px){
  .page-contact .contact-handoff__aside{position:sticky;top:88px;align-self:start}
}

/* ---------- 到访 ---------- */
.page-contact .contact-visit{background:var(--paper)}
.page-contact .visit-grid{
  display:grid;
  gap:clamp(26px,4vw,44px);
  align-items:start;
}
.page-contact .visit-copy__lead{
  margin:14px 0 0;
  max-width:34em;
  line-height:1.75;
  color:var(--ink-soft);
}
.page-contact .visit-steps{
  list-style:none;
  margin:24px 0 0;
  padding:0;
  display:grid;
  gap:12px;
}
.page-contact .visit-steps li{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:12px;
  align-items:baseline;
  padding:12px 16px;
  background:var(--white);
  font-size:.93rem;
  line-height:1.6;
  clip-path:polygon(0 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%);
}
.page-contact .visit-steps .mono{
  color:var(--rust);
  font-weight:700;
  font-size:.85rem;
}
.page-contact .visit-actions{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:12px;
  margin-top:24px;
}
.page-contact .visit-map{
  position:relative;
  padding:clamp(22px,3vw,32px);
  min-height:230px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  gap:8px;
  color:var(--cream);
  background:
    repeating-linear-gradient(0deg,rgba(246,241,228,.09) 0 1px,transparent 1px 34px),
    repeating-linear-gradient(90deg,rgba(246,241,228,.09) 0 1px,transparent 1px 34px),
    linear-gradient(150deg,var(--green-deep) 0%,var(--ink) 62%);
  clip-path:polygon(0 0,100% 0,100% calc(100% - 46px),calc(100% - 46px) 100%,0 100%);
}
.page-contact .visit-map::before{
  content:"";
  position:absolute;
  left:0;top:0;
  width:3px;height:64px;
  background:var(--cyan);
}
.page-contact .visit-map__city{
  margin:0;
  font-size:.85rem;
  letter-spacing:.14em;
  color:var(--cyan);
}
.page-contact .visit-map__street{
  margin:0;
  font-size:clamp(1.02rem,2vw,1.2rem);
  font-weight:700;
  line-height:1.5;
}
.page-contact .visit-map__note{
  margin:6px 0 0;
  font-size:.85rem;
  line-height:1.6;
  color:rgba(246,241,228,.76);
  max-width:26em;
}
@media (min-width:860px){
  .page-contact .visit-grid{grid-template-columns:1.15fr .85fr}
}

/* ---------- 延伸入口 ---------- */
.page-contact .contact-more{background:var(--cream)}
.page-contact .more-links{
  list-style:none;
  margin:clamp(20px,3vw,30px) 0 0;
  padding:0;
  display:grid;
  gap:12px;
}
.page-contact .more-links a{
  display:block;
  height:100%;
  padding:18px 20px;
  background:var(--white);
  border-left:3px solid var(--green);
  color:var(--ink);
  font-weight:700;
  font-size:.98rem;
  text-decoration:none;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.page-contact .more-links a span{
  display:block;
  margin-top:6px;
  font-weight:400;
  font-size:.84rem;
  line-height:1.6;
  color:var(--stone);
}
.page-contact .more-links a:hover,
.page-contact .more-links a:focus-visible{
  transform:translateY(-3px);
  border-left-color:var(--rust);
  box-shadow:0 14px 26px rgba(28,31,30,.1);
}
@media (min-width:720px){
  .page-contact .more-links{grid-template-columns:repeat(2,1fr)}
}
@media (min-width:1080px){
  .page-contact .more-links{grid-template-columns:repeat(4,1fr)}
}

@media (prefers-reduced-motion:reduce){
  .page-contact .path-card,
  .page-contact .more-links a{transition:none}
  .page-contact .path-card:hover,
  .page-contact .more-links a:hover{transform:none}
}
<<<END>>>
