.contact-hero{
  background:var(--ops-ink);
  color:var(--ops-surface);
}

.contact-hero__layout{
  min-height:42rem;
  padding-block:var(--ops-space-6);
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(20rem,.82fr);
  align-items:center;
  gap:var(--ops-space-5);
}

.contact-hero__copy,
.contact-form-copy,
.contact-entry__body,
.contact-security__copy{
  min-width:0;
}

.contact-breadcrumb{
  margin-bottom:var(--ops-space-3);
  color:var(--ops-muted-2);
}

.contact-breadcrumb a{
  color:var(--ops-surface);
}

.contact-hero__copy .ops-kicker{
  width:fit-content;
  max-width:100%;
  align-self:flex-start;
  margin-bottom:.5rem;
}

.contact-hero h1{
  max-width:46rem;
  margin-bottom:.5rem;
  color:var(--ops-surface);
}

.contact-hero__lead{
  max-width:43rem;
  margin-bottom:var(--ops-space-3);
  color:var(--ops-muted-2);
  font-size:var(--ops-fs-4);
}

.contact-hero__actions{
  justify-content:flex-start;
}

.contact-hero__secondary{
  border-color:var(--ops-muted);
  background:transparent;
  color:var(--ops-surface);
}

.contact-channel-line{
  margin-top:var(--ops-space-3);
  padding-top:var(--ops-space-2);
  display:flex;
  flex-wrap:wrap;
  gap:.5rem var(--ops-space-2);
  border-top:1px solid var(--ops-line-dark);
  color:var(--ops-muted-2);
  font-size:var(--ops-fs-1);
}

.contact-channel-line strong,
.contact-channel-line a{
  color:var(--ops-surface);
}

.contact-channel-line a{
  overflow-wrap:anywhere;
  text-decoration:underline;
  text-underline-offset:.2rem;
}

.contact-dispatch{
  min-width:0;
  overflow:hidden;
  border:1px solid var(--ops-line-dark);
  border-radius:var(--ops-radius-lg);
  background:var(--ops-ink-2);
  color:var(--ops-surface);
  box-shadow:var(--ops-shadow);
}

.contact-dispatch__plate{
  padding:var(--ops-space-3);
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:var(--ops-space-2);
  background:var(--ops-ink-3);
  color:var(--ops-surface);
}

.contact-dispatch__plate strong{
  display:block;
  margin-top:.45rem;
  font-size:var(--ops-fs-4);
}

.contact-dispatch__label{
  color:var(--ops-muted-2);
  font:var(--ops-fs-0)/1.4 var(--ops-mono);
  letter-spacing:.08em;
}

.contact-dispatch__routes{
  padding:var(--ops-space-3);
  display:grid;
  gap:var(--ops-space-2);
}

.contact-route{
  min-width:0;
  padding:var(--ops-space-2);
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:start;
  gap:var(--ops-space-2);
  border-radius:var(--ops-radius-md);
  background:var(--ops-ink);
  color:var(--ops-surface);
}

.contact-route__node{
  width:.75rem;
  height:.75rem;
  margin-top:.4rem;
  border-radius:50%;
  background:var(--ops-yellow);
  box-shadow:0 0 0 .35rem var(--ops-line-dark);
}

.contact-route strong{
  display:block;
  margin-bottom:.45rem;
}

.contact-route p{
  margin:0;
  color:var(--ops-muted-2);
  font-size:var(--ops-fs-2);
}

.contact-dispatch__foot{
  padding:var(--ops-space-2) var(--ops-space-3);
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  gap:.5rem;
  background:var(--ops-yellow);
  color:var(--ops-ink);
  font-size:var(--ops-fs-1);
  font-weight:700;
}

.ops-section-head{
  margin-bottom:var(--ops-space-4);
}

.ops-section-head>div{
  min-width:0;
}

.ops-section-head .ops-kicker{
  width:fit-content;
  max-width:100%;
  align-self:flex-start;
  margin-bottom:.5rem;
}

.ops-section-head h2{
  max-width:42rem;
  margin-bottom:0;
}

.ops-section-head>p{
  max-width:35rem;
  margin-bottom:0;
}

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

.contact-entry{
  min-width:0;
  padding:var(--ops-space-4);
  display:flex;
  flex-direction:column;
  gap:var(--ops-space-2);
  border-radius:var(--ops-radius-lg);
}

.contact-entry--mail{
  background:var(--ops-yellow-pale);
  color:var(--ops-ink);
}

.contact-entry--ticket{
  background:var(--ops-ink);
  color:var(--ops-surface);
}

.contact-entry__icon{
  width:2.75rem;
  height:2.75rem;
  display:grid;
  place-items:center;
  border-radius:var(--ops-radius-sm);
  background:var(--ops-yellow);
  color:var(--ops-ink);
}

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

.contact-entry .c-badge{
  margin-bottom:.5rem;
}

.contact-entry h3{
  margin-bottom:.5rem;
}

.contact-entry p{
  margin-bottom:var(--ops-space-2);
}

.contact-entry--ticket p,
.contact-entry--ticket li{
  color:var(--ops-muted-2);
}

.contact-entry ul{
  margin:0;
}

.contact-entry>.c-btn{
  width:fit-content;
  max-width:100%;
  margin-top:auto;
}

.contact-form-layout,
.contact-form-layout--reverse{
  display:grid;
  grid-template-columns:1fr;
  align-items:stretch;
  gap:var(--ops-space-4);
}

.contact-form-layout--reverse .contact-form-copy,
.contact-form-layout--reverse .contact-form{
  grid-column:auto;
  grid-row:auto;
}

.contact-date{
  display:grid;
  gap:.45rem;
  min-width:0;
}
.contact-date__parts,
.contact-date__time{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:.5rem;
}
.contact-date__time{grid-template-columns:repeat(2,minmax(0,1fr))}
.contact-date label{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:.3rem;
  color:var(--ops-ink);
  font-size:var(--ops-fs-0);
  font-weight:700;
}
.contact-date select{width:100%;min-width:0}

.contact-file-shell{
  display:flex;
  align-items:center;
  gap:.75rem;
  flex-wrap:wrap;
}
.contact-file-shell .contact-file-native{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0 0 0 0);
  white-space:nowrap;
  border:0;
}
.contact-file-btn{
  padding:.5em 1.1em;
  font-size:var(--ops-fs-1);
}
.contact-file-shell:focus-within .contact-file-btn{
  outline:2px solid var(--ops-ink);
  outline-offset:2px;
}
.contact-file-name{
  min-width:0;
  font-size:var(--ops-fs-1);
  color:var(--ops-muted);
  word-break:break-all;
}
.contact-form--dark .contact-file-name{
  color:rgba(255,255,255,.72);
}

.mail-slot{
  min-width:0;
  overflow:hidden;
  border:1px solid var(--ops-line);
  border-radius:var(--ops-radius-lg);
  background:var(--ops-surface);
  color:var(--ops-ink);
  box-shadow:var(--ops-shadow);
}

.mail-slot__lid{
  padding:.85rem var(--ops-space-3);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--ops-space-2);
  background:var(--ops-ink);
  color:var(--ops-surface);
}

.mail-slot__lid .contact-form__code{
  color:var(--ops-yellow);
}

.mail-slot__lid h2{
  margin:0;
  max-width:36rem;
  color:var(--ops-surface);
  font-size:var(--ops-fs-4);
}

.mail-slot__well{
  padding:var(--ops-space-3);
  display:grid;
  gap:var(--ops-space-3);
}

.mail-slot .contact-form-copy{
  padding-block:0;
}

.ops-section-dark .mail-slot{
  border-color:var(--ops-line-dark);
  background:var(--ops-ink-2);
  color:var(--ops-surface);
}

.ops-section-dark .mail-slot__lid{
  background:var(--ops-yellow);
  color:var(--ops-ink);
}

.ops-section-dark .mail-slot__lid h2,
.ops-section-dark .mail-slot__lid .contact-form__code{
  color:var(--ops-ink);
}

.contact-form-copy{
  padding-block:var(--ops-space-2);
}

.contact-form-copy>.c-badge{
  margin-bottom:.5rem;
}

.contact-form-copy h2{
  margin-bottom:.5rem;
}

.contact-form-copy>p{
  margin-bottom:var(--ops-space-3);
}

.contact-fact-list{
  display:grid;
  gap:.5rem;
}

.contact-fact-list>div{
  padding:var(--ops-space-2);
  display:grid;
  gap:.45rem;
  border-radius:var(--ops-radius-sm);
  background:var(--ops-surface);
  color:var(--ops-ink);
}

.contact-fact-list strong{
  font-size:var(--ops-fs-2);
}

.contact-fact-list span{
  color:var(--ops-muted);
  font-size:var(--ops-fs-1);
}

.contact-form{
  min-width:0;
  padding:var(--ops-space-3);
  border:1px solid var(--ops-line);
  border-radius:var(--ops-radius-lg);
  background:var(--ops-surface);
  color:var(--ops-ink);
}

.contact-form__head{
  margin-bottom:var(--ops-space-3);
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:var(--ops-space-2);
}

.contact-form__head h3{
  margin:.45rem 0 0;
}

.contact-form__code{
  color:var(--ops-muted);
  font-size:var(--ops-fs-0);
  letter-spacing:.08em;
}

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

.contact-field-wide{
  grid-column:1/-1;
}

.contact-form .c-field{
  min-width:0;
  gap:.45rem;
}

.contact-form .c-field+.c-field{
  margin-top:0;
}

.contact-form .c-field label{
  margin:0;
}

.contact-form .c-input,
.contact-form .c-select,
.contact-form .c-textarea{
  min-width:0;
}

.contact-form input[type="number"],
.contact-form input[type="date"],
.contact-form input[type="datetime-local"],
.contact-form input[type="file"]{
  appearance:none;
  padding-inline-end:2.5rem;
}

.contact-file{
  overflow:hidden;
}

.contact-field-note{
  color:var(--ops-muted);
  font-size:var(--ops-fs-0);
}

.contact-form__actions{
  margin-top:var(--ops-space-3);
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-start;
  gap:.5rem;
}

.contact-form__status{
  min-height:1.5rem;
  margin:var(--ops-space-1) 0 0;
  color:var(--ops-muted);
  font-size:var(--ops-fs-1);
}

.contact-form__status.is-error{
  color:var(--ops-danger);
}

.contact-form__status.is-success{
  color:var(--ops-success);
}

.contact-form-copy--dark{
  color:var(--ops-surface);
}

.contact-form-copy--dark h2{
  color:var(--ops-surface);
}

.contact-form-copy--dark>p{
  color:var(--ops-muted-2);
}

.contact-fact-list--dark>div{
  background:var(--ops-ink-2);
  color:var(--ops-surface);
}

.contact-fact-list--dark span{
  color:var(--ops-muted-2);
}

.contact-form--dark{
  border-color:var(--ops-line-dark);
  background:var(--ops-ink-2);
  color:var(--ops-surface);
}

.contact-form--dark .contact-form__code,
.contact-form--dark .contact-field-note,
.contact-form--dark .contact-form__status{
  color:var(--ops-muted-2);
}

.contact-form--dark .c-field label{
  color:var(--ops-surface);
}

.contact-form--dark .c-input,
.contact-form--dark .c-select,
.contact-form--dark .c-textarea{
  border-color:var(--ops-line-dark);
  background:var(--ops-ink);
  color:var(--ops-surface);
}

.contact-form--dark .c-select{
  background-image:linear-gradient(45deg,transparent 50%,var(--ops-muted-2) 50%),linear-gradient(135deg,var(--ops-muted-2) 50%,transparent 50%);
}

.contact-form--dark .c-input::placeholder,
.contact-form--dark .c-textarea::placeholder{
  color:var(--ops-muted-2);
}

.contact-form--dark .contact-form__status.is-error{
  color:var(--ops-yellow-soft);
}

.contact-form--dark .contact-form__status.is-success{
  color:var(--ops-success);
}

.contact-form__ghost-dark{
  border-color:var(--ops-muted);
  background:transparent;
  color:var(--ops-surface);
}

.contact-form--dark .contact-file-btn{
  border-color:var(--ops-muted);
  background:var(--ops-ink);
  color:var(--ops-surface);
}
.contact-form--dark .contact-file-shell:focus-within .contact-file-btn{
  outline-color:var(--ops-yellow);
}

.ops-section-yellow{
  background:var(--ops-yellow);
  color:var(--ops-ink);
}

.contact-security{
  padding-block:var(--ops-space-4);
  display:grid;
  grid-template-columns:auto minmax(0,.9fr) minmax(22rem,1.1fr);
  align-items:center;
  gap:var(--ops-space-3);
}

.contact-security__icon{
  width:3.5rem;
  height:3.5rem;
  display:grid;
  place-items:center;
  border-radius:var(--ops-radius-md);
  background:var(--ops-ink);
  color:var(--ops-surface);
}

.contact-security__icon svg{
  width:1.6rem;
  height:1.6rem;
}

.contact-security__badge{
  margin-bottom:.5rem;
  background:var(--ops-yellow-soft);
  color:var(--ops-ink);
}

.contact-security h2{
  margin-bottom:.5rem;
  color:var(--ops-ink);
}

.contact-security p{
  margin:0;
  color:var(--ops-ink-3);
}

.contact-security__checks .c-check{
  background:var(--ops-yellow-soft);
  color:var(--ops-ink);
}

.contact-guide-grid{
  align-items:start;
}

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

.contact-guide>svg{
  width:2rem;
  height:2rem;
  margin-bottom:.5rem;
  color:var(--ops-ink);
}

.contact-guide>.c-badge{
  margin-bottom:.5rem;
}

.contact-guide h3{
  margin-bottom:.5rem;
}

.contact-guide p{
  margin-bottom:var(--ops-space-2);
}

.contact-guide .c-btn{
  margin-top:auto;
}

.contact-cta-actions{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:.5rem;
}

.contact-cta-secondary{
  border-color:var(--ops-muted);
  background:transparent;
  color:var(--ops-surface);
}

@media(max-width:900px){
  .contact-hero__layout{
    min-height:0;
    grid-template-columns:1fr;
    gap:var(--ops-space-4);
  }

  .mail-slot__lid{
    align-items:flex-start;
    flex-direction:column;
  }

  .contact-security{
    grid-template-columns:auto minmax(0,1fr);
  }

  .contact-security__checks{
    grid-column:1/-1;
  }
}

@media(max-width:768px){
  .contact-entry-grid{
    grid-template-columns:1fr;
  }

  .contact-entry{
    padding:var(--ops-space-3);
  }

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

  .contact-field-wide{
    grid-column:auto;
  }
}

@media(max-width:390px){
  .contact-hero__layout{
    padding-block:var(--ops-space-5);
  }

  .contact-dispatch__plate,
  .contact-form__head{
    flex-direction:column;
  }

  .contact-dispatch__foot{
    flex-direction:column;
  }

  .contact-form{
    padding:var(--ops-space-2);
  }

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

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

  .contact-security__checks{
    grid-column:auto;
  }

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