.page-contact{
  --ct-shadow:0 24px 52px -30px rgba(7,12,10,.95);
  --ct-card-ink:#14261F;
  background:var(--fp-ink);
  color:var(--fp-ivory);
}

.page-contact .ct-hero{
  position:relative;
  overflow:hidden;
  padding:clamp(20px,4vw,40px) 0 clamp(42px,7vw,84px);
}
.page-contact .ct-hero::before{
  content:"";
  position:absolute;
  inset:0 -14% 0 -14%;
  background:linear-gradient(168deg,var(--fp-felt) 0%,#0E2A21 54%,var(--fp-ink) 100%);
  clip-path:polygon(0 0,100% 0,100% 70%,0 100%);
  z-index:0;
}
.page-contact .ct-hero::after{
  content:"";
  position:absolute;
  top:-16%;
  right:-14%;
  width:58vw;
  height:58vw;
  max-width:600px;
  max-height:600px;
  background:radial-gradient(circle at 50% 50%,rgba(224,184,92,.20),transparent 64%);
  pointer-events:none;
  z-index:0;
}
.page-contact .ct-hero__inner{
  position:relative;
  z-index:1;
  display:grid;
  gap:clamp(28px,5vw,46px);
  align-items:start;
}
.page-contact .ct-crumbs{
  margin-bottom:clamp(18px,3vw,26px);
}
.page-contact .ct-hero__lead .fp-h1{
  margin:10px 0 0;
  max-width:16ch;
}
.page-contact .ct-hero__lead .fp-lede{
  margin-top:16px;
  max-width:54ch;
}

.page-contact .ct-clock{
  margin-top:clamp(24px,4vw,32px);
  max-width:440px;
  padding-top:16px;
  border-top:1px solid var(--fp-line);
}
.page-contact .ct-clock__row{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
}
.page-contact .ct-clock__label{
  font-family:var(--fp-narrow);
  font-size:11px;
  letter-spacing:.22em;
  color:var(--fp-sage);
}
.page-contact .ct-clock__time{
  font-family:var(--fp-mono);
  font-size:clamp(20px,4.4vw,28px);
  letter-spacing:.03em;
  color:var(--fp-gold-hi);
}
.page-contact .ct-clock__bar{
  display:block;
  margin-top:14px;
  height:9px;
  border-radius:99px;
  background:rgba(7,12,10,.55);
  border:1px solid var(--fp-line);
  overflow:hidden;
}
.page-contact .ct-clock__fill{
  display:block;
  height:100%;
  width:100%;
  background:repeating-linear-gradient(90deg,var(--fp-gold) 0 5px,transparent 5px 13px);
}
.page-contact .ct-clock__note{
  margin:12px 0 0;
  font-size:13.5px;
  line-height:1.75;
  color:var(--fp-sage);
}

.page-contact .ct-plate{
  position:relative;
  z-index:1;
  margin:0;
  width:100%;
  max-width:400px;
  justify-self:start;
  padding:0 0 26px 0;
}
.page-contact .ct-plate::before{
  content:"";
  position:absolute;
  inset:14px -12px -12px 14px;
  border:1px solid var(--fp-line);
  border-radius:var(--fp-radius);
  pointer-events:none;
}
.page-contact .ct-plate__img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:1 / 1;
  object-fit:cover;
  border-radius:var(--fp-radius);
  border:1px solid rgba(201,162,75,.34);
  background:var(--fp-felt);
}
.page-contact .ct-plate__cap{
  position:relative;
  margin-top:14px;
  font-family:var(--fp-narrow);
  font-size:11.5px;
  letter-spacing:.16em;
  color:var(--fp-sage);
}

.page-contact .ct-channels{
  padding-block:clamp(44px,7vw,82px);
  background:var(--fp-felt);
  border-top:1px solid var(--fp-line-soft);
  border-bottom:1px solid var(--fp-line-soft);
}
.page-contact .ct-sec__head{
  max-width:64ch;
  margin-bottom:clamp(24px,4vw,40px);
}
.page-contact .ct-sec__head .fp-h2{
  margin:8px 0 0;
}
.page-contact .ct-sec__head .fp-lede{
  margin-top:14px;
}

.page-contact .ct-cards{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:16px;
}
.page-contact .ct-card{
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:22px 20px 24px 24px;
  background:var(--fp-paper);
  color:var(--fp-ink);
  border-radius:var(--fp-radius);
  border-left:4px solid var(--fp-gold);
  box-shadow:var(--ct-shadow);
  transition:transform .35s var(--fp-ease),box-shadow .35s var(--fp-ease);
}
.page-contact .ct-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(105deg,transparent 32%,rgba(224,184,92,.32) 50%,transparent 68%);
  transform:translateX(-125%);
  transition:transform .75s var(--fp-ease);
  pointer-events:none;
}
.page-contact .ct-card:hover,
.page-contact .ct-card:focus-within{
  transform:translateY(-4px);
  box-shadow:0 28px 54px -28px rgba(7,12,10,.98);
}
.page-contact .ct-card:hover::after,
.page-contact .ct-card:focus-within::after{
  transform:translateX(125%);
}
.page-contact .ct-card__num{
  font-family:var(--fp-mono);
  font-size:12px;
  letter-spacing:.16em;
  color:var(--fp-crimson);
}
.page-contact .ct-card__title{
  margin:0;
  font-family:var(--fp-serif);
  font-weight:700;
  font-size:20px;
  line-height:1.35;
  letter-spacing:.01em;
  color:var(--ct-card-ink);
}
.page-contact .ct-card__value{
  display:inline-block;
  font-family:var(--fp-mono);
  font-size:14.5px;
  line-height:1.6;
  color:var(--fp-fern);
  text-decoration:none;
  overflow-wrap:anywhere;
  border-bottom:1px solid var(--fp-line);
  padding-bottom:2px;
  align-self:flex-start;
  transition:color .25s var(--fp-ease),border-color .25s var(--fp-ease);
}
.page-contact a.ct-card__value:hover,
.page-contact a.ct-card__value:focus-visible{
  color:var(--fp-crimson);
  border-color:var(--fp-crimson);
}
.page-contact a.ct-card__value:focus-visible{
  outline:2px solid var(--fp-gold-hi);
  outline-offset:3px;
  border-radius:2px;
}
.page-contact .ct-card__meta{
  margin:0;
  font-family:var(--fp-narrow);
  font-size:11px;
  letter-spacing:.14em;
  color:var(--fp-fern);
}
.page-contact .ct-card__text{
  margin:0;
  font-size:14.5px;
  line-height:1.78;
  color:#2A3B34;
}

.page-contact .ct-needs{
  padding-block:clamp(44px,7vw,82px);
  background:var(--fp-paper);
  color:var(--fp-black);
}
.page-contact .ct-needs .fp-eyebrow{
  color:var(--fp-crimson);
}
.page-contact .ct-needs .fp-h2{
  color:var(--fp-ink);
}
.page-contact .ct-needs .fp-lede{
  color:#3B4A43;
}
.page-contact .ct-need-grid{
  display:grid;
  gap:clamp(24px,4vw,34px);
}
.page-contact .ct-need{
  padding-top:18px;
  border-top:2px solid var(--fp-ink);
}
.page-contact .ct-need__label{
  margin:0 0 10px;
  font-family:var(--fp-narrow);
  font-size:11px;
  letter-spacing:.18em;
  color:var(--fp-fern);
}
.page-contact .ct-need__title{
  margin:0 0 14px;
  font-family:var(--fp-serif);
  font-weight:700;
  font-size:20px;
  line-height:1.4;
  color:var(--fp-ink);
}
.page-contact .ct-need__list{
  list-style:none;
  margin:0 0 14px;
  padding:0;
}
.page-contact .ct-need__list li{
  position:relative;
  padding-left:20px;
  margin-bottom:10px;
  font-size:14.5px;
  line-height:1.72;
  color:#2A3B34;
}
.page-contact .ct-need__list li::before{
  content:"";
  position:absolute;
  left:0;
  top:.62em;
  width:8px;
  height:8px;
  background:var(--fp-gold);
  border-radius:1px;
  transform:rotate(45deg);
}
.page-contact .ct-need__text{
  margin:0;
  font-size:13.5px;
  line-height:1.75;
  color:#5A6A62;
  padding-left:14px;
  border-left:2px solid var(--fp-line);
}

.page-contact .ct-doc{
  padding-block:clamp(44px,7vw,82px);
  background:var(--fp-ink);
}
.page-contact .ct-doc__inner{
  display:grid;
  gap:clamp(26px,4vw,42px);
  align-items:start;
}
.page-contact .ct-doc__body .fp-h2{
  margin:8px 0 0;
}
.page-contact .ct-doc__body .fp-lede{
  margin-top:14px;
  max-width:56ch;
}
.page-contact .ct-doc__list{
  list-style:none;
  margin:clamp(22px,4vw,30px) 0 0;
  padding:0;
  display:grid;
  gap:16px;
}
.page-contact .ct-doc__item{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:14px;
  padding-bottom:16px;
  border-bottom:1px solid var(--fp-line-soft);
}
.page-contact .ct-doc__num{
  font-family:var(--fp-mono);
  font-size:12px;
  letter-spacing:.14em;
  color:var(--fp-gold);
  padding-top:4px;
}
.page-contact .ct-doc__label{
  margin:0 0 6px;
  font-family:var(--fp-serif);
  font-weight:700;
  font-size:17px;
  line-height:1.45;
  color:var(--fp-ivory);
}
.page-contact .ct-doc__item p{
  margin:0;
  font-size:14.5px;
  line-height:1.8;
  color:var(--fp-sage);
}
.page-contact .ct-doc__more{
  display:flex;
  flex-wrap:wrap;
  gap:12px 26px;
  margin:22px 0 0;
}
.page-contact .ct-link{
  display:inline-block;
  font-size:14.5px;
  color:var(--fp-gold-hi);
  text-decoration:none;
  border-bottom:1px solid var(--fp-line);
  padding-bottom:3px;
  transition:color .25s var(--fp-ease),border-color .25s var(--fp-ease);
}
.page-contact .ct-link:hover,
.page-contact .ct-link:focus-visible{
  color:var(--fp-ivory);
  border-color:var(--fp-gold-hi);
}
.page-contact .ct-link:focus-visible{
  outline:2px solid var(--fp-gold-hi);
  outline-offset:3px;
  border-radius:2px;
}
.page-contact .ct-doc__figure{
  margin:0;
  position:relative;
}
.page-contact .ct-doc__img{
  display:block;
  width:100%;
  height:auto;
  object-fit:cover;
  border-radius:var(--fp-radius);
  border:1px solid var(--fp-line);
  background:var(--fp-felt);
}

.page-contact .ct-keep{
  padding-block:clamp(44px,7vw,82px);
  background:linear-gradient(180deg,var(--fp-felt) 0%,var(--fp-ink) 100%);
}
.page-contact .ct-keep__panel{
  display:grid;
  gap:clamp(22px,4vw,32px);
  padding:clamp(24px,4vw,40px);
  background:rgba(11,31,24,.62);
  border:1px solid var(--fp-line);
  border-radius:var(--fp-radius);
  box-shadow:var(--ct-shadow);
}
.page-contact .ct-keep__text .fp-h2{
  margin:8px 0 0;
}
.page-contact .ct-keep__text .fp-lede{
  margin-top:14px;
  max-width:56ch;
}
.page-contact .ct-keep__actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px;
}
.page-contact .ct-keep__tip{
  flex:1 1 100%;
  margin:0;
  min-height:1em;
  font-size:13px;
  line-height:1.7;
  color:var(--fp-gold-hi);
}
.page-contact .ct-keep__aside{
  margin:clamp(18px,3vw,26px) 0 0;
  font-size:13.5px;
  line-height:1.8;
  color:var(--fp-sage);
}
.page-contact .ct-keep__aside a{
  color:var(--fp-ivory);
  text-decoration:none;
  border-bottom:1px solid var(--fp-line);
  padding-bottom:1px;
  margin:0 2px;
}
.page-contact .ct-keep__aside a:hover,
.page-contact .ct-keep__aside a:focus-visible{
  color:var(--fp-gold-hi);
  border-color:var(--fp-gold-hi);
}

@media (min-width:760px){
  .page-contact .ct-cards{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
  }
  .page-contact .ct-need-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media (min-width:900px){
  .page-contact .ct-hero__inner{
    grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);
    align-items:center;
  }
  .page-contact .ct-plate{
    justify-self:end;
    max-width:420px;
  }
  .page-contact .ct-doc__inner{
    grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
    align-items:center;
  }
  .page-contact .ct-keep__panel{
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
  }
  .page-contact .ct-keep__actions{
    flex-direction:column;
    align-items:stretch;
    min-width:230px;
  }
}

@media (prefers-reduced-motion:reduce){
  .page-contact .ct-card,
  .page-contact .ct-card::after,
  .page-contact .ct-card__value,
  .page-contact .ct-link{
    transition:none;
  }
  .page-contact .ct-card:hover,
  .page-contact .ct-card:focus-within{
    transform:none;
  }
}
<<<PAGE_CSS_END>>>
