.page-contact{
  --pc-gap: clamp(18px,2.6vw,32px);
  background: var(--ink-000);
  color: var(--paper);
  font-family: var(--font-sans);
  padding-bottom: clamp(48px,7vw,96px);
}

.page-contact .pc-topline{
  height: 3px;
  background: linear-gradient(90deg, var(--cyan), var(--cyan-soft) 48%, var(--orange));
}

.page-contact .pc-hero{
  padding-top: clamp(18px,3vw,28px);
}

.page-contact .pc-hero .breadcrumb{
  margin-bottom: clamp(16px,2.6vw,26px);
}

.page-contact .pc-split{
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: clamp(28px,4vw,44px);
}

.page-contact .pc-lead .display-l{
  margin: 6px 0 clamp(14px,2vw,20px);
}

.page-contact .pc-lead .lede{
  margin: 0;
  max-width: 46ch;
  color: var(--paper);
  opacity: .92;
}

.page-contact .pc-channels{
  list-style: none;
  margin: clamp(26px,3.4vw,38px) 0 0;
  padding: 0;
  border-top: 1px solid var(--line);
}

.page-contact .pc-channel{
  padding: clamp(14px,2vw,18px) 0;
  border-bottom: 1px solid var(--line-soft);
}

.page-contact .pc-ch-label{
  display: block;
  margin-bottom: 6px;
  font-size: 11px;
  letter-spacing: .2em;
  color: var(--muted);
}

.page-contact .pc-ch-value{
  display: block;
  font-family: var(--font-mono);
  font-size: clamp(17px,2.3vw,26px);
  line-height: 1.25;
  letter-spacing: -.01em;
  color: var(--paper);
  overflow-wrap: anywhere;
  transition: color .2s var(--ease);
}

.page-contact .pc-channel:hover .pc-ch-value{
  color: var(--cyan);
}

.page-contact .pc-ch-value--addr{
  font-family: var(--font-sans);
  font-weight: 600;
  font-size: clamp(15px,1.4vw,18px);
  line-height: 1.6;
  letter-spacing: 0;
}

.page-contact .pc-ch-desc{
  display: block;
  margin-top: 7px;
  font-size: clamp(13px,.9vw,14px);
  line-height: 1.7;
  color: var(--muted);
}

.page-contact .pc-note{
  margin: clamp(14px,2vw,18px) 0 0;
  padding-left: 14px;
  border-left: 2px solid var(--orange);
  font-size: 13px;
  line-height: 1.7;
  color: var(--cyan-soft);
}

.page-contact .pc-banner{
  margin: 0 0 clamp(20px,3vw,30px);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  overflow: hidden;
  background: var(--ink-700);
}

.page-contact .pc-banner img{
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 7;
  object-fit: cover;
}

.page-contact .pc-index-title{
  margin: 0 0 8px;
}

.page-contact .pc-index-lede{
  margin: 0 0 clamp(14px,2vw,20px);
  font-size: clamp(13px,.95vw,15px);
  line-height: 1.75;
  color: var(--muted);
}

.page-contact .fb-list{
  list-style: none;
  margin: 0;
  padding: 0;
  border-top: 1px solid var(--line);
}

.page-contact .fb-row{
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: 7px;
  padding: clamp(13px,1.8vw,16px) clamp(10px,1.4vw,16px);
  border-bottom: 1px solid var(--line-soft);
  border-left: 2px solid transparent;
  transition: background-color .2s var(--ease), border-color .2s var(--ease);
}

.page-contact .fb-row:nth-child(even){
  background: rgba(18,51,44,.42);
}

.page-contact .fb-row:hover,
.page-contact .fb-row:focus-within{
  background: rgba(34,240,200,.07);
  border-left-color: var(--cyan);
}

.page-contact .fb-type{
  display: flex;
  align-items: baseline;
  gap: 8px;
  margin: 0;
  font-size: clamp(15px,1.2vw,17px);
  font-weight: 800;
  color: var(--paper);
  transition: color .2s var(--ease);
}

.page-contact .fb-row:hover .fb-type{
  color: var(--cyan);
}

.page-contact .pc-idx{
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: .06em;
  color: var(--orange);
}

.page-contact .fb-when,
.page-contact .fb-how{
  margin: 0;
  font-size: clamp(13px,.9vw,14px);
  line-height: 1.7;
  color: var(--muted);
}

.page-contact .fb-k{
  display: inline-block;
  margin-right: 8px;
  padding: 1px 5px;
  border: 1px solid var(--line);
  border-radius: 4px;
  font-size: 10px;
  letter-spacing: .14em;
  color: var(--cyan-soft);
  vertical-align: 1px;
}

.page-contact .pc-band,
.page-contact .pc-fix,
.page-contact .pc-coop,
.page-contact .pc-more{
  margin-top: clamp(48px,7vw,88px);
  padding-top: clamp(28px,4vw,44px);
  border-top: 1px solid var(--line);
}

.page-contact .pc-stats{
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 1px;
  margin: clamp(20px,3vw,28px) 0;
  border: 1px solid var(--line-soft);
  border-radius: var(--radius);
  overflow: hidden;
  background: var(--line-soft);
}

.page-contact .pc-stat{
  background: var(--ink-900);
  padding: clamp(16px,2.4vw,24px);
}

.page-contact .pc-stat-num{
  margin: 0;
  font-family: var(--font-mono);
  font-size: clamp(28px,3.4vw,44px);
  line-height: 1;
  letter-spacing: -.02em;
  color: var(--cyan);
}

.page-contact .pc-stat-num span{
  margin-left: 6px;
  font-family: var(--font-sans);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0;
  color: var(--muted);
}

.page-contact .pc-stat-cap{
  margin: 10px 0 0;
  font-size: 13px;
  line-height: 1.6;
  color: var(--paper);
  opacity: .85;
}

.page-contact .pc-band-text{
  max-width: 62ch;
  margin: 0;
  font-size: clamp(15px,1.05vw,17px);
  line-height: 1.8;
  color: var(--paper);
  opacity: .9;
}

.page-contact .pc-fix{
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: clamp(24px,3.6vw,48px);
  align-items: start;
}

.page-contact .pc-fix-lede{
  max-width: 60ch;
  margin: 0 0 clamp(18px,2.6vw,26px);
  font-size: clamp(14px,1vw,16px);
  line-height: 1.8;
  color: var(--muted);
}

.page-contact .pc-checklist{
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: clamp(12px,1.8vw,18px);
}

.page-contact .pc-checklist li{
  padding: clamp(14px,1.8vw,18px);
  border: 1px solid var(--line);
  border-radius: 14px;
  background: var(--ink-900);
  transition: border-color .2s var(--ease);
}

.page-contact .pc-checklist li:hover{
  border-color: var(--cyan);
}

.page-contact .pc-checklist h3{
  display: flex;
  align-items: baseline;
  gap: 8px;
  margin: 0 0 6px;
  font-size: 15px;
  font-weight: 800;
  color: var(--paper);
}

.page-contact .pc-checklist h3 .num{
  font-size: 12px;
  color: var(--orange);
}

.page-contact .pc-checklist p{
  margin: 0;
  font-size: 13px;
  line-height: 1.7;
  color: var(--muted);
}

.page-contact .pc-fix-figure{
  margin: 0;
}

.page-contact .pc-fix-figure img{
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: var(--ink-700);
}

.page-contact .pc-fix-figure figcaption{
  margin-top: 10px;
  font-size: 12px;
  line-height: 1.6;
  color: var(--muted);
}

.page-contact .pc-coop-grid{
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: clamp(18px,2.6vw,32px);
  margin-top: clamp(18px,2.6vw,26px);
}

.page-contact .pc-coop-main p{
  margin: 0 0 14px;
  max-width: 60ch;
  font-size: clamp(14px,1vw,16px);
  line-height: 1.8;
  color: var(--paper);
  opacity: .9;
}

.page-contact .pc-coop-main p:last-child{
  margin-bottom: 0;
}

.page-contact .pc-coop-list{
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 12px;
}

.page-contact .pc-coop-list li{
  padding: clamp(14px,1.8vw,18px);
  border: 1px solid var(--line);
  border-left: 3px solid var(--orange);
  border-radius: 14px;
  background: var(--ink-900);
  transition: border-color .2s var(--ease);
}

.page-contact .pc-coop-list li:hover{
  border-color: var(--cyan);
  border-left-color: var(--orange);
}

.page-contact .pc-coop-list h3{
  margin: 0 0 6px;
  font-size: 15px;
  font-weight: 800;
  color: var(--paper);
}

.page-contact .pc-coop-list p{
  margin: 0;
  font-size: 13px;
  line-height: 1.7;
  color: var(--muted);
}

.page-contact .pc-link-list{
  list-style: none;
  margin: clamp(16px,2.4vw,26px) 0 0;
  padding: 0;
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: 1px;
  border: 1px solid var(--line-soft);
  border-radius: var(--radius);
  overflow: hidden;
  background: var(--line-soft);
}

.page-contact .pc-link-list a{
  display: block;
  padding: clamp(16px,2.2vw,22px);
  text-decoration: none;
  color: var(--paper);
  background: var(--ink-000);
  transition: background-color .2s var(--ease);
}

.page-contact .pc-link-list a:hover,
.page-contact .pc-link-list a:focus-visible{
  background: var(--ink-900);
}

.page-contact .pc-link-title{
  display: block;
  margin-bottom: 6px;
  font-size: clamp(16px,1.4vw,18px);
  font-weight: 800;
  color: var(--cyan);
  transition: color .2s var(--ease);
}

.page-contact .pc-link-list a:hover .pc-link-title{
  color: var(--cyan-soft);
}

.page-contact .pc-link-desc{
  display: block;
  font-size: 13px;
  line-height: 1.7;
  color: var(--muted);
}

@media (min-width: 700px){
  .page-contact .pc-checklist{
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .page-contact .fb-row{
    grid-template-columns: minmax(0,138px) minmax(0,1.35fr) minmax(0,1fr);
    align-items: start;
    gap: 8px 20px;
  }

  .page-contact .pc-link-list{
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}

@media (min-width: 900px){
  .page-contact .pc-split{
    grid-template-columns: minmax(0,5fr) minmax(0,7fr);
    gap: clamp(32px,4.2vw,64px);
    align-items: start;
  }

  .page-contact .pc-fix{
    grid-template-columns: minmax(0,7fr) minmax(0,4fr);
  }

  .page-contact .pc-coop-grid{
    grid-template-columns: minmax(0,6fr) minmax(0,5fr);
    align-items: start;
  }

  .page-contact .pc-stats{
    grid-template-columns: repeat(4,minmax(0,1fr));
  }
}

@media (min-width: 1120px){
  .page-contact .pc-lead{
    position: sticky;
    top: calc(var(--header-h) + 24px);
  }
}

@media (prefers-reduced-motion: reduce){
  .page-contact .pc-ch-value,
  .page-contact .fb-row,
  .page-contact .fb-type,
  .page-contact .pc-checklist li,
  .page-contact .pc-coop-list li,
  .page-contact .pc-link-list a,
  .page-contact .pc-link-title{
    transition: none;
  }
}
<<<END>>>
