.contact-hero{
  padding-block:var(--vm-space-6);
  background:var(--vm-white);
  color:var(--vm-ink);
}

.contact-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(22rem,.95fr);
  gap:var(--vm-space-5);
  align-items:center;
}

.contact-hero-grid>*{
  min-width:0;
}

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

.contact-hero-copy>.c-kicker{
  margin-bottom:var(--vm-space-2);
}

.contact-hero-copy h1{
  max-width:15ch;
  font-size:clamp(2.35rem,4.4vw,3.85rem);
  line-height:1.16;
}

.contact-hero-lead{
  max-width:64ch;
  margin-top:var(--vm-space-3);
  color:var(--vm-muted);
}

.contact-hero-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-start;
  gap:var(--vm-space-1);
  margin-block:var(--vm-space-3);
}

.contact-hero-note{
  max-width:66ch;
  padding-left:var(--vm-space-2);
  border-left:3px solid var(--vm-acid);
  color:var(--vm-muted);
  font-size:var(--vm-text-sm);
}

.contact-dispatch{
  overflow:hidden;
  border-radius:var(--vm-radius-lg);
  background:var(--vm-ink);
  color:var(--vm-white);
  box-shadow:var(--vm-shadow);
}

.contact-dispatch-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--vm-space-2);
  padding:var(--vm-space-2) var(--vm-space-3);
  background:var(--vm-acid);
  color:var(--vm-ink);
  font-size:var(--vm-text-sm);
  font-weight:750;
}

.contact-route-list{
  padding-inline:var(--vm-space-3);
}

.contact-route{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:var(--vm-space-2);
  padding-block:var(--vm-space-3);
  border-bottom:1px solid var(--vm-line-dark);
}

.contact-route:last-child{
  border-bottom:0;
}

.contact-route-code{
  width:2.5rem;
  height:2.5rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:var(--vm-lime);
  color:var(--vm-ink);
  font-size:var(--vm-text-xs);
  font-weight:800;
  line-height:1;
}

.contact-route>div:last-child{
  min-width:0;
}

.contact-route h2{
  font-size:var(--vm-text-lg);
  letter-spacing:-.015em;
}

.contact-route p{
  margin-top:var(--vm-space-1);
  color:color-mix(in srgb,var(--vm-white) 74%,transparent);
  font-size:var(--vm-text-sm);
}

.contact-route a{
  display:inline-flex;
  margin-top:var(--vm-space-2);
  color:var(--vm-acid);
  font-size:var(--vm-text-sm);
  font-weight:750;
  overflow-wrap:anywhere;
}

.contact-dispatch-meta{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  margin:0;
  padding:var(--vm-space-3);
  background:var(--vm-ink-2);
  color:var(--vm-white);
}

.contact-dispatch-meta div{
  min-width:0;
  padding-inline:var(--vm-space-2);
}

.contact-dispatch-meta div:first-child{
  padding-left:0;
  border-right:1px solid var(--vm-line-dark);
}

.contact-dispatch-meta div:last-child{
  padding-right:0;
}

.contact-dispatch-meta dt{
  color:color-mix(in srgb,var(--vm-white) 68%,transparent);
}

.contact-dispatch-meta dd{
  margin-top:var(--vm-space-1);
  color:var(--vm-white);
  font-weight:800;
}

.contact-section-title{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}

.contact-section-title>.c-kicker{
  margin-bottom:var(--vm-space-2);
}

.contact-form-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:var(--vm-space-3);
  align-items:start;
}

.contact-form-layout>*{
  min-width:0;
}

.contact-form{
  display:flex;
  flex-direction:column;
  gap:var(--vm-space-3);
  padding:clamp(1.5rem,3vw,2.5rem);
  border-radius:var(--vm-radius-md);
  background:var(--vm-white);
  color:var(--vm-ink);
  box-shadow:var(--vm-shadow-soft);
}

.contact-fieldset{
  min-width:0;
  margin:0;
  padding:0 0 var(--vm-space-3);
  border:0;
  border-bottom:1px solid var(--vm-line);
}

.contact-fieldset:last-of-type{
  padding-bottom:0;
  border-bottom:0;
}

.contact-fieldset legend{
  width:100%;
  margin:0 0 var(--vm-space-2);
  padding:0;
  font-family:var(--vm-heading);
  font-size:var(--vm-text-lg);
  font-weight:750;
  line-height:1.4;
}

.contact-fieldset>.c-field+.c-field,
.contact-fieldset>.contact-fields-two+.c-field,
.contact-fieldset>.c-field+.contact-fields-two,
.contact-fieldset>.contact-fields-two+.contact-form-note,
.contact-fieldset>.c-field+.contact-confirm{
  margin-top:var(--vm-space-3);
}

.contact-choice-grid{
  display:grid;
  gap:var(--vm-space-1);
  align-items:start;
}

.contact-choice-grid-four{
  grid-template-columns:repeat(4,minmax(0,1fr));
}

.contact-choice{
  min-width:0;
  cursor:pointer;
}

.contact-choice input,
.contact-inline-options input,
.contact-region-options input{
  position:absolute;
  width:1px;
  height:1px;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
}

.contact-choice>span{
  min-height:100%;
  padding:var(--vm-space-2);
  border:1px solid var(--vm-control-line);
  border-radius:var(--vm-radius-sm);
  display:flex;
  flex-direction:column;
  gap:var(--vm-space-1);
  background:var(--vm-white);
  color:var(--vm-ink);
  transition:border-color var(--vm-ease),background var(--vm-ease),transform var(--vm-ease);
}

.contact-choice input:checked+span{
  border-color:var(--vm-ink);
  background:var(--vm-acid);
  color:var(--vm-ink);
}

.contact-choice input:focus-visible+span,
.contact-inline-options input:focus-visible+span,
.contact-region-options input:focus-visible+span{
  outline:3px solid color-mix(in srgb,var(--vm-lime) 55%,transparent);
  outline-offset:3px;
}

.contact-choice strong{
  font-family:var(--vm-heading);
  font-size:var(--vm-text-md);
  line-height:1.35;
}

.contact-choice small{
  color:var(--vm-muted);
}

.contact-choice input:checked+span small{
  color:var(--vm-ink-2);
}

.contact-fields-two{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--vm-space-3);
}

.contact-fields-two>*{
  min-width:0;
}

.contact-form input[aria-invalid="true"],
.contact-form textarea[aria-invalid="true"]{
  border-color:var(--vm-error);
}

.contact-field-label{
  font-size:var(--vm-text-sm);
  font-weight:700;
  line-height:1.45;
}

.contact-inline-options,
.contact-region-options{
  display:grid;
  gap:var(--vm-space-1);
}

.contact-inline-options{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,8.5rem),1fr));
}

.contact-region-options{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,9rem),1fr));
}

.contact-inline-options label,
.contact-region-options label{
  min-width:0;
  cursor:pointer;
}

.contact-inline-options span,
.contact-region-options span{
  min-height:48px;
  padding:.7rem .85rem;
  border:1px solid var(--vm-control-line);
  border-radius:var(--vm-radius-sm);
  display:flex;
  align-items:center;
  justify-content:center;
  background:var(--vm-white);
  color:var(--vm-ink);
  font-size:var(--vm-text-sm);
  font-weight:700;
  line-height:1.4;
  text-align:center;
  overflow-wrap:anywhere;
}

.contact-inline-options input:checked+span,
.contact-region-options input:checked+span{
  border-color:var(--vm-ink);
  background:var(--vm-ink);
  color:var(--vm-white);
}

.contact-inline-options small{
  color:inherit;
}

.contact-form-panel[hidden]{
  display:none;
}

.contact-form-note{
  padding:var(--vm-space-2);
  border-radius:var(--vm-radius-sm);
  background:var(--vm-ice);
  color:var(--vm-ink);
}

.contact-form-note strong{
  display:block;
  font-family:var(--vm-heading);
  font-size:var(--vm-text-md);
}

.contact-form-note p{
  margin-top:var(--vm-space-1);
  color:var(--vm-muted);
  font-size:var(--vm-text-sm);
}

.contact-confirm{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:var(--vm-space-1);
  align-items:start;
  margin-top:var(--vm-space-3);
  cursor:pointer;
}

.contact-confirm input{
  width:1.15rem;
  height:1.15rem;
  margin:.15rem 0 0;
  accent-color:var(--vm-lime-paper);
}

.contact-confirm input[aria-invalid="true"]{
  outline:2px solid var(--vm-error);
  outline-offset:2px;
}

.contact-confirm span{
  min-width:0;
  font-size:var(--vm-text-sm);
  font-weight:600;
}

.contact-form-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-start;
  gap:var(--vm-space-1);
}

.contact-form-status{
  min-height:1.5rem;
  color:var(--vm-muted);
  font-size:var(--vm-text-sm);
  font-weight:700;
}

.contact-form-status.is-error{
  color:var(--vm-error);
}

.contact-form-status.is-success{
  color:var(--vm-lime-paper);
}

.contact-form-guide{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--vm-space-3);
}

.contact-guide-card{
  min-width:0;
  padding:var(--vm-space-3);
  border-radius:var(--vm-radius-md);
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  background:var(--vm-acid);
  color:var(--vm-ink);
}

.contact-guide-card h3{
  margin-top:var(--vm-space-2);
}

.contact-guide-card p{
  margin-top:var(--vm-space-1);
  color:var(--vm-ink-2);
}

.contact-guide-card .c-btn{
  margin-top:var(--vm-space-3);
}

.contact-guide-card-dark{
  background:var(--vm-ink);
  color:var(--vm-white);
}

.contact-guide-card-dark .c-badge{
  background:var(--vm-acid);
  color:var(--vm-ink);
}

.contact-guide-card-dark .c-badge::before{
  background:var(--vm-ink);
}

.contact-guide-card-dark p{
  color:color-mix(in srgb,var(--vm-white) 74%,transparent);
}

.contact-topic-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--vm-space-3);
  align-items:start;
}

.contact-topic-card{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}

.contact-topic-icon{
  width:3rem;
  height:3rem;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:var(--vm-acid);
  color:var(--vm-ink);
}

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

.contact-topic-card h3{
  margin-top:var(--vm-space-2);
}

.contact-topic-card>p{
  margin-top:var(--vm-space-1);
  color:var(--vm-muted);
}

.contact-topic-card.c-card-dark>p{
  color:color-mix(in srgb,var(--vm-white) 74%,transparent);
}

.contact-topic-card.c-card-acid>p{
  color:var(--vm-ink-2);
}

.contact-topic-card ul{
  width:100%;
  margin:var(--vm-space-3) 0 0;
  padding:0;
  list-style:none;
}

.contact-topic-card li{
  padding-block:.65rem;
  border-top:1px solid var(--vm-line);
  font-size:var(--vm-text-sm);
}

.contact-topic-card.c-card-dark li{
  border-color:var(--vm-line-dark);
  color:color-mix(in srgb,var(--vm-white) 82%,transparent);
}

.contact-topic-card.c-card-acid li{
  border-color:color-mix(in srgb,var(--vm-ink) 16%,transparent);
  color:var(--vm-ink);
}

.contact-payment-section{
  background:var(--vm-ink);
  color:var(--vm-white);
}

.contact-payment-section .c-section-head>p{
  color:color-mix(in srgb,var(--vm-white) 72%,transparent);
}

.contact-kicker-dark{
  background:var(--vm-acid);
  color:var(--vm-ink);
}

.contact-kicker-dark::before{
  background:var(--vm-ink);
}

.contact-payment-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--vm-space-3);
  align-items:start;
}

.contact-payment-card{
  min-width:0;
  padding:var(--vm-space-3);
  border-radius:var(--vm-radius-md);
  background:var(--vm-ink-2);
  color:var(--vm-white);
}

.contact-payment-code{
  color:var(--vm-acid);
  font-size:var(--vm-text-xs);
  font-weight:800;
}

.contact-payment-card h3{
  margin-top:var(--vm-space-2);
}

.contact-payment-card p{
  margin-top:var(--vm-space-1);
  color:color-mix(in srgb,var(--vm-white) 74%,transparent);
}

.contact-payment-card-acid{
  background:var(--vm-acid);
  color:var(--vm-ink);
}

.contact-payment-card-acid .contact-payment-code,
.contact-payment-card-acid p{
  color:var(--vm-ink-2);
}

.contact-region-board{
  overflow:hidden;
  border-radius:var(--vm-radius-lg);
  background:var(--vm-ice);
  color:var(--vm-ink);
}

.contact-region-head{
  padding:var(--vm-space-2) var(--vm-space-3);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--vm-space-2);
  background:var(--vm-acid);
  color:var(--vm-ink);
  font-size:var(--vm-text-sm);
  font-weight:800;
}

.contact-region-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.contact-region-grid article{
  min-width:0;
  padding:var(--vm-space-3);
  border-bottom:1px solid var(--vm-line);
}

.contact-region-grid article:not(:nth-child(3n)){
  border-right:1px solid var(--vm-line);
}

.contact-region-grid article:nth-last-child(-n+3){
  border-bottom:0;
}

.contact-region-grid article>span{
  color:var(--vm-lime-paper);
  font-size:var(--vm-text-xs);
  font-weight:800;
}

.contact-region-grid h3{
  margin-top:var(--vm-space-1);
  font-size:var(--vm-text-lg);
}

.contact-region-grid p{
  margin-top:var(--vm-space-1);
  color:var(--vm-muted);
  font-size:var(--vm-text-sm);
}

.contact-region-foot{
  padding:var(--vm-space-3);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--vm-space-3);
  background:var(--vm-white);
  color:var(--vm-ink);
}

.contact-region-foot p{
  max-width:70ch;
  color:var(--vm-muted);
}

.contact-region-foot .c-btn{
  flex:none;
}

.contact-safety-layout{
  display:grid;
  grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
  gap:var(--vm-space-5);
  align-items:center;
}

.contact-safety-layout>*{
  min-width:0;
}

.contact-safety-copy{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}

.contact-safety-copy>.c-kicker{
  margin-bottom:var(--vm-space-2);
}

.contact-safety-copy>p{
  margin-top:var(--vm-space-3);
  color:var(--vm-muted);
}

.contact-safe-callout{
  margin-top:var(--vm-space-3);
  padding:var(--vm-space-2);
  border-radius:var(--vm-radius-md);
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:var(--vm-space-2);
  background:var(--vm-acid);
  color:var(--vm-ink);
}

.contact-safe-callout svg{
  width:1.4rem;
  height:1.4rem;
}

.contact-safe-callout strong{
  font-family:var(--vm-heading);
}

.contact-safe-callout p{
  margin-top:var(--vm-space-1);
  color:var(--vm-ink-2);
  font-size:var(--vm-text-sm);
}

.contact-safety-list{
  border-radius:var(--vm-radius-md);
  background:var(--vm-white);
  color:var(--vm-ink);
}

.contact-safety-list article{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:var(--vm-space-2);
  padding:var(--vm-space-3);
  border-top:1px solid var(--vm-line);
}

.contact-safety-list article:first-child{
  border-top:0;
}

.contact-safety-mark{
  width:2rem;
  height:2rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:color-mix(in srgb,var(--vm-error) 12%,var(--vm-white));
  color:var(--vm-error);
  font-family:var(--vm-mono);
  font-weight:800;
  line-height:1;
}

.contact-safety-mark-ok{
  background:color-mix(in srgb,var(--vm-lime) 16%,var(--vm-white));
  color:var(--vm-lime-paper);
}

.contact-safety-list h3{
  font-size:var(--vm-text-lg);
}

.contact-safety-list p{
  margin-top:var(--vm-space-1);
  color:var(--vm-muted);
  font-size:var(--vm-text-sm);
}

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

.contact-response-card{
  min-width:0;
  padding:var(--vm-space-3);
  border-radius:var(--vm-radius-md);
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:var(--vm-space-2);
  background:var(--vm-ice);
  color:var(--vm-ink);
}

.contact-response-number{
  width:2.75rem;
  height:2.75rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:var(--vm-ink);
  color:var(--vm-white);
  font-size:var(--vm-text-xs);
  font-weight:800;
  line-height:1;
}

.contact-response-card h3{
  font-size:var(--vm-text-lg);
}

.contact-response-card p{
  margin-top:var(--vm-space-1);
  color:var(--vm-muted);
}

.contact-close-section{
  padding-top:var(--vm-space-5);
  padding-bottom:var(--vm-space-4);
}

.c-close-band>div:first-child{
  min-width:0;
  max-width:47rem;
}

.c-close-band h2{
  margin-top:var(--vm-space-2);
  font-size:clamp(1.75rem,3vw,2.7rem);
}

.contact-close-actions{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:var(--vm-space-1);
  min-width:min(100%,16rem);
}

.contact-close-secondary{
  color:var(--vm-white);
  border-color:color-mix(in srgb,var(--vm-white) 45%,transparent);
}

.contact-close-secondary:hover{
  background:var(--vm-ink-2);
}

@media(max-width:64rem){
  .contact-hero-grid{
    grid-template-columns:1fr;
    gap:var(--vm-space-4);
  }

  .contact-hero-copy h1{
    max-width:18ch;
  }

  .contact-form-layout,
  .contact-safety-layout{
    grid-template-columns:1fr;
    align-items:start;
  }

  .contact-form-guide{
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-rows:none;
  }

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

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

  .contact-payment-card-acid{
    grid-column:1/-1;
  }
}

@media(max-width:44rem){
  .contact-hero{
    padding-block:var(--vm-space-5);
  }

  .contact-hero-copy h1{
    max-width:none;
    font-size:clamp(2.25rem,11vw,3.2rem);
  }

  .contact-hero-actions{
    width:100%;
  }

  .contact-dispatch-meta,
  .contact-fields-two,
  .contact-choice-grid-four,
  .contact-form-guide,
  .contact-topic-grid,
  .contact-payment-grid,
  .contact-response-grid{
    grid-template-columns:1fr;
  }

  .contact-dispatch-meta div{
    padding:var(--vm-space-2) 0;
  }

  .contact-dispatch-meta div:first-child{
    padding-top:0;
    border-right:0;
    border-bottom:1px solid var(--vm-line-dark);
  }

  .contact-dispatch-meta div:last-child{
    padding-bottom:0;
  }

  .contact-payment-card-acid{
    grid-column:auto;
  }

  .contact-region-grid{
    grid-template-columns:1fr;
  }

  .contact-region-grid article,
  .contact-region-grid article:not(:nth-child(3n)),
  .contact-region-grid article:nth-last-child(-n+3){
    border-right:0;
    border-bottom:1px solid var(--vm-line);
  }

  .contact-region-grid article:last-child{
    border-bottom:0;
  }

  .contact-region-foot{
    align-items:flex-start;
    flex-direction:column;
  }

  .contact-region-foot .c-btn{
    width:100%;
  }

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

@media(max-width:24.375rem){
  .contact-route{
    grid-template-columns:1fr;
  }

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

  .contact-safety-list article,
  .contact-response-card,
  .contact-safe-callout{
    grid-template-columns:1fr;
  }
}
