.contact-hero{
  padding-block:var(--dm-space-5) var(--dm-space-6)
}


.contact-hero-layout{
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  gap:var(--dm-space-5);
  align-items:center
}

.contact-hero-copy{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:flex-start
}

.contact-hero-copy .c-eyebrow{
  width:fit-content;
  max-width:100%;
  align-self:flex-start
}

.contact-hero-copy .c-eyebrow+h1{
  margin-top:var(--dm-space-2)
}

.contact-hero-lead{
  max-width:44rem;
  margin-top:var(--dm-space-2);
  color:var(--dm-charcoal);
  font-size:var(--dm-fs-3)
}

.contact-hero-actions{
  margin-block:var(--dm-space-4);
  justify-content:flex-start
}

.contact-dispatch{
  min-width:0;
  overflow:hidden;
  border-radius:var(--dm-radius-lg);
  color:var(--dm-paper);
  background:var(--dm-charcoal);
  box-shadow:var(--dm-shadow-panel)
}

.contact-dispatch-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--dm-space-2);
  padding:var(--dm-space-2) var(--dm-space-3);
  color:var(--dm-accent);
  background:var(--dm-terminal);
  font-family:var(--dm-font-mono);
  font-size:var(--dm-fs-0);
  letter-spacing:.08em
}

.contact-dispatch-body{
  display:grid;
  padding:var(--dm-space-1) var(--dm-space-3)
}

.contact-dispatch-row{
  min-width:0;
  display:grid;
  grid-template-columns:minmax(max-content,.38fr) minmax(0,1fr);
  gap:var(--dm-space-2);
  padding-block:var(--dm-space-2);
  border-bottom:1px solid var(--dm-line-dark)
}

.contact-dispatch-row:last-child{
  border-bottom:0
}

.contact-dispatch-row span{
  color:var(--dm-muted-light);
  font-size:var(--dm-fs-0)
}

.contact-dispatch-row strong{
  min-width:0;
  color:var(--dm-paper);
  font-size:var(--dm-fs-1);
  overflow-wrap:anywhere
}

.contact-dispatch-foot{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:var(--dm-space-2);
  padding:var(--dm-space-2) var(--dm-space-3);
  color:var(--dm-muted-light);
  background:var(--dm-terminal-2);
  font-size:var(--dm-fs-0)
}

.contact-section-head{
  max-width:48rem;
  display:flex;
  flex-direction:column;
  align-items:flex-start
}

.contact-section-head .c-eyebrow{
  width:fit-content;
  max-width:100%;
  align-self:flex-start
}

.contact-section-head .c-eyebrow+h2{
  margin-top:var(--dm-space-2)
}

.contact-section-head h2+p{
  margin-top:var(--dm-space-2)
}

.contact-topic-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:var(--dm-space-2);
  align-items:start;
  margin-top:var(--dm-space-4)
}

.contact-topic{
  min-width:0;
  padding:var(--dm-space-3);
  border:1px solid var(--dm-line);
  border-radius:var(--dm-radius-md);
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:var(--dm-space-1);
  color:var(--dm-ink);
  background:var(--dm-white);
  text-align:left;
  box-shadow:var(--dm-shadow-soft);
  transition:color var(--dm-transition),background var(--dm-transition),border-color var(--dm-transition),transform var(--dm-transition)
}

.contact-topic:hover{
  color:var(--dm-primary);
  background:var(--dm-accent-faint);
  border-color:var(--dm-accent);
  transform:translateY(-2px)
}

.contact-topic[aria-pressed="true"]{
  color:var(--dm-paper);
  background:var(--dm-primary);
  border-color:var(--dm-primary)
}

.contact-topic svg{
  width:2.25rem;
  height:2.25rem;
  margin-bottom:var(--dm-space-1);
  color:var(--dm-primary)
}

.contact-topic[aria-pressed="true"] svg{
  color:var(--dm-paper)
}

.contact-topic strong{
  color:inherit;
  font-size:var(--dm-fs-2)
}

.contact-topic span{
  color:var(--dm-muted);
  font-size:var(--dm-fs-1);
  line-height:1.6
}

.contact-topic[aria-pressed="true"] span{
  color:var(--dm-accent-soft)
}

.contact-form-layout{
  margin-top:var(--dm-space-4)
}

.contact-form-shell{
  min-width:0;
  overflow:hidden;
  border:1px solid var(--dm-line);
  border-radius:var(--dm-radius-md);
  color:var(--dm-ink);
  background:var(--dm-white);
  box-shadow:var(--dm-shadow-panel)
}

.contact-form-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--dm-space-2);
  padding:var(--dm-space-2) var(--dm-space-3);
  color:var(--dm-paper);
  background:var(--dm-charcoal)
}

.contact-form-head>div{
  min-width:0;
  display:grid;
  gap:var(--dm-space-1)
}

.contact-form-head span{
  color:var(--dm-accent);
  font-family:var(--dm-font-mono);
  font-size:var(--dm-fs-0);
  letter-spacing:.07em
}

.contact-form-head strong{
  color:var(--dm-paper)
}

.contact-form-body{
  display:grid;
  gap:var(--dm-space-3);
  padding:var(--dm-space-3);
  color:var(--dm-ink);
  background:var(--dm-white)
}

.contact-form-warning{
  min-width:0;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:var(--dm-space-2);
  align-items:start;
  padding:var(--dm-space-2);
  border-radius:var(--dm-radius-sm);
  color:var(--dm-primary-ink);
  background:var(--dm-accent-faint)
}

.contact-form-warning svg{
  width:2rem;
  height:2rem;
  color:var(--dm-primary)
}

.contact-form-warning>div{
  min-width:0;
  display:grid;
  gap:var(--dm-space-1)
}

.contact-form-warning strong{
  color:var(--dm-primary-ink)
}

.contact-form-warning p{
  color:#5f5065;
  font-size:var(--dm-fs-1)
}

.contact-form-status{
  min-height:1.5rem;
  color:var(--dm-primary);
  font-size:var(--dm-fs-1);
  font-weight:700
}

.contact-form-status.is-error{
  color:var(--dm-danger)
}

.contact-form-status.is-success{
  color:var(--dm-success)
}

.contact-form-actions{
  justify-content:flex-start
}

.contact-channel-aside{
  min-width:0
}

.contact-aside-card{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:var(--dm-space-1)
}

.contact-card-icon{
  width:2.75rem;
  height:2.75rem;
  margin-bottom:var(--dm-space-1);
  border-radius:var(--dm-radius-sm);
  display:grid;
  place-items:center;
  color:var(--dm-primary);
  background:var(--dm-accent-soft)
}

.contact-card-icon svg{
  width:1.35rem;
  height:1.35rem
}

.contact-aside-card h3{
  color:inherit
}

.contact-aside-card p{
  color:var(--dm-muted)
}

.contact-aside-card.c-card-dark p{
  color:var(--dm-muted-light)
}

.contact-response-note{
  padding-top:var(--dm-space-1);
  font-size:var(--dm-fs-1)
}

.contact-response-note strong{
  color:var(--dm-primary)
}

.contact-aside-card.c-card-dark .contact-response-note strong{
  color:var(--dm-accent)
}

.contact-aside-card .c-actions{
  width:100%
}

.contact-response-section{
  color:var(--dm-paper);
  background:var(--dm-charcoal)
}

.contact-response-section .contact-section-head h2{
  color:var(--dm-paper)
}

.contact-response-section .contact-section-head p{
  color:var(--dm-muted-light)
}

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

.contact-response-card{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:var(--dm-space-1);
  padding:var(--dm-space-3);
  border-radius:var(--dm-radius-md);
  color:var(--dm-ink);
  background:var(--dm-paper)
}

.contact-response-card h3{
  color:var(--dm-ink)
}

.contact-response-card p{
  color:var(--dm-muted)
}

.contact-response-card>strong{
  margin-top:var(--dm-space-2);
  color:var(--dm-primary);
  font-size:var(--dm-fs-1)
}

.contact-response-code{
  width:fit-content;
  max-width:100%;
  align-self:flex-start;
  color:var(--dm-primary);
  font-size:var(--dm-fs-0);
  letter-spacing:.08em
}

.contact-payment-callout{
  min-width:0;
  display:grid;
  grid-template-columns:minmax(14rem,.42fr) minmax(0,1fr);
  gap:var(--dm-space-4);
  align-items:center;
  margin-top:var(--dm-space-3);
  padding:var(--dm-space-3);
  border-radius:var(--dm-radius-md);
  color:var(--dm-primary-ink);
  background:var(--dm-accent-soft)
}

.contact-payment-callout>div{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:flex-start
}

.contact-payment-callout .c-badge{
  width:fit-content;
  max-width:100%;
  align-self:flex-start;
  color:var(--dm-primary);
  background:var(--dm-white)
}

.contact-payment-callout .c-badge+h3{
  margin-top:var(--dm-space-2)
}

.contact-payment-callout h3{
  color:var(--dm-primary-ink)
}

.contact-payment-callout p{
  color:#5f5065
}

.contact-endcap .c-cta{
  color:var(--dm-paper);
  background:var(--dm-charcoal)
}

.contact-endcap .c-cta h2{
  color:var(--dm-paper)
}

.contact-endcap .c-cta p{
  color:var(--dm-muted-light)
}

.contact-endcap-actions{
  min-width:max-content;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  justify-content:flex-start
}

.contact-endcap-actions .c-btn{
  width:100%
}

.contact-endcap .c-cta .c-btn-primary{
  color:var(--dm-primary);
  background:var(--dm-white);
  border-color:var(--dm-white)
}

.contact-endcap .c-cta .c-btn-secondary{
  color:var(--dm-paper);
  background:transparent;
  border-color:var(--dm-muted-light)
}

@media (max-width:1120px){
  .contact-topic-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))
  }
}

@media (max-width:960px){
  .contact-hero-layout{
    grid-template-columns:1fr;
    gap:var(--dm-space-4)
  }

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

  .contact-response-grid{
    grid-template-columns:1fr
  }

  .contact-payment-callout{
    grid-template-columns:1fr;
    gap:var(--dm-space-2)
  }
}

@media (max-width:760px){
  .contact-form-head{
    align-items:flex-start;
    flex-direction:column
  }

  .contact-endcap-actions{
    min-width:0;
    width:100%
  }
}

@media (max-width:520px){
  .contact-topic-grid{
    grid-template-columns:1fr
  }

  .contact-dispatch-row{
    grid-template-columns:1fr;
    gap:var(--dm-space-1)
  }

  .contact-dispatch-head,
  .contact-dispatch-foot{
    align-items:flex-start;
    flex-direction:column
  }

  .contact-form-body{
    padding:var(--dm-space-2)
  }

  .contact-form-warning{
    grid-template-columns:1fr
  }
}

.contact-select-shell{
  position:relative;
  min-width:0
}
.contact-select-native{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0 0 0 0);
  border:0
}
.contact-select-btn{
  width:100%;
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.75rem;
  padding:.78rem .9rem;
  border:1px solid #8a8290;
  border-radius:var(--dm-radius-sm);
  color:var(--dm-ink);
  background:var(--dm-white);
  font:inherit;
  text-align:left;
  cursor:pointer
}
.contact-select-btn::after{
  content:"";
  width:.45rem;
  height:.45rem;
  flex:0 0 auto;
  border-right:2px solid var(--dm-muted);
  border-bottom:2px solid var(--dm-muted);
  transform:translateY(-15%) rotate(45deg)
}
.contact-select-shell.is-open .contact-select-btn{
  border-color:var(--dm-primary);
  outline:3px solid rgba(112,64,143,.12)
}
.contact-select-list{
  position:absolute;
  z-index:20;
  left:0;
  right:0;
  top:calc(100% + .35rem);
  margin:0;
  padding:.35rem;
  list-style:none;
  max-height:16rem;
  overflow:auto;
  border:1px solid #ded8e1;
  border-radius:var(--dm-radius-sm);
  background:var(--dm-white);
  box-shadow:var(--dm-shadow-soft)
}
.contact-select-list[hidden]{display:none}
.contact-select-list button{
  width:100%;
  display:block;
  padding:.65rem .75rem;
  border:0;
  border-radius:.45rem;
  background:transparent;
  color:var(--dm-ink);
  font:inherit;
  text-align:left;
  cursor:pointer
}
.contact-select-list button:hover,
.contact-select-list button[aria-selected="true"]{
  background:var(--dm-surface);
  color:var(--dm-primary)
}
