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

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

.contact-hero__copy h1{
  max-width:12.5ch
}

.contact-hero__copy>p{
  max-width:43rem;
  color:var(--color-muted)
}

.contact-hero__copy .c-actions{
  margin-top:var(--space-2)
}

.contact-inline-link{
  color:var(--color-primary-deep);
  font-weight:800;
  overflow-wrap:anywhere
}

.contact-hero__facts{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  width:100%;
  margin-top:var(--space-3);
  border-top:1px solid var(--color-line);
  color:var(--color-ink)
}

.contact-hero__facts div{
  min-width:0;
  padding:var(--space-2) var(--space-2) 0 0
}

.contact-hero__facts strong,
.contact-hero__facts span{
  display:block;
  overflow-wrap:anywhere
}

.contact-hero__facts strong{
  font-family:var(--font-mono);
  font-size:var(--fs-2);
  font-variant-numeric:tabular-nums
}

.contact-hero__facts span{
  margin-top:.35rem;
  color:var(--color-muted);
  font-size:var(--fs-1);
  line-height:1.5
}

.contact-docket{
  display:flex;
  flex-direction:column;
  min-width:0;
  height:clamp(31rem,48vw,39rem);
  overflow:hidden;
  border-radius:var(--radius-md);
  background:var(--color-surface);
  color:var(--color-ink);
  box-shadow:var(--shadow-soft);
  text-align:left
}

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

.contact-docket__head>div{
  display:grid;
  min-width:0;
  gap:.5rem
}

.contact-docket__head strong{
  font-family:var(--font-heading);
  font-size:var(--fs-4);
  line-height:var(--lh-heading)
}

.contact-docket__code{
  font-size:var(--fs-0);
  font-weight:800;
  letter-spacing:.08em
}

.contact-docket__routes{
  display:grid;
  align-content:center;
  flex:1;
  padding:var(--space-3)
}

.contact-docket__route{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:var(--space-2);
  min-width:0;
  padding-block:var(--space-2);
  border-bottom:1px solid var(--color-line)
}

.contact-docket__route>div{
  min-width:0
}

.contact-docket__route strong,
.contact-docket__route p{
  overflow-wrap:anywhere
}

.contact-docket__route strong{
  display:block;
  font-family:var(--font-heading);
  line-height:1.35
}

.contact-docket__route p{
  margin-top:.4rem;
  color:var(--color-muted);
  font-size:var(--fs-2);
  line-height:1.55
}

.contact-docket__mark{
  display:inline-flex;
  width:2.25rem;
  height:2.25rem;
  align-items:center;
  justify-content:center;
  border-radius:var(--radius-sm);
  background:var(--color-ink);
  color:#fff;
  font-family:var(--font-mono);
  font-size:var(--fs-1);
  font-weight:800
}

.contact-docket__channel{
  padding:.4rem .6rem;
  border-radius:var(--radius-pill);
  background:var(--color-accent-soft);
  color:var(--color-primary-deep);
  font-family:var(--font-mono);
  font-size:var(--fs-0);
  font-weight:800
}

.contact-docket__foot{
  display:flex;
  justify-content:space-between;
  gap:var(--space-2);
  padding:var(--space-2) var(--space-3);
  background:var(--color-ink);
  color:#effff9;
  font-size:var(--fs-1);
  line-height:1.5
}

.contact-docket__foot span{
  min-width:0;
  overflow-wrap:anywhere
}

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

.contact-entry-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));
  align-items:start;
  gap:var(--space-3);
  margin-top:var(--space-4)
}

.contact-entry-card{
  display:flex;
  flex-direction:column;
  min-width:0;
  padding:var(--space-3);
  border-radius:var(--radius-md);
  background:var(--color-surface);
  color:var(--color-ink);
  box-shadow:var(--shadow-soft)
}

.contact-entry-card--accent{
  background:var(--color-accent);
  color:var(--color-ink)
}

.contact-entry-card--soft{
  background:var(--color-light);
  color:var(--color-ink)
}

.contact-entry-card__top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--space-1);
  margin-bottom:var(--space-2)
}

.contact-entry-card__index{
  color:var(--color-primary-deep);
  font-size:var(--fs-1);
  font-weight:800
}

.contact-entry-card h3{
  font-size:var(--fs-5)
}

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

.contact-entry-card--accent>p{
  color:#173b35
}

.contact-entry-card dl{
  display:grid;
  gap:var(--space-2);
  margin:var(--space-3) 0
}

.contact-entry-card dl div{
  display:grid;
  gap:.4rem
}

.contact-entry-card dt{
  color:var(--color-primary-deep);
  font-family:var(--font-mono);
  font-weight:800;
  letter-spacing:.05em
}

.contact-entry-card dd{
  color:var(--color-muted)
}

.contact-entry-card--accent dd{
  color:#173b35
}

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

.contact-route-note{
  margin-top:var(--space-3)
}

.contact-route-note p{
  color:var(--color-muted)
}

.contact-form-layout{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(18rem,.65fr);
  align-items:stretch;
  gap:var(--space-3);
  margin-top:var(--space-4)
}

.contact-form-layout--reverse{
  grid-template-columns:minmax(18rem,.65fr) minmax(0,1.35fr)
}

.contact-form-sheet{
  min-width:0;
  overflow:hidden;
  border-radius:var(--radius-md);
  background:var(--color-surface);
  color:var(--color-ink);
  box-shadow:var(--shadow-soft)
}

.contact-form-sheet__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:var(--space-2);
  padding:var(--space-3);
  background:var(--color-ink);
  color:#effff9
}

.contact-form-sheet__head>div{
  display:grid;
  min-width:0;
  gap:.5rem
}

.contact-form-sheet__head span{
  color:#a7bcb6;
  font-size:var(--fs-0);
  letter-spacing:.08em
}

.contact-form-sheet__head h3{
  color:#effff9
}

.contact-mail-form{
  padding:var(--space-3)
}

.contact-field-grid{
  gap:var(--space-2)
}

.contact-textarea--short{
  min-height:6.5rem
}

.contact-form-status{
  min-height:1.5rem;
  color:var(--color-primary-deep);
  font-size:var(--fs-2);
  font-weight:750
}

.contact-form-status.is-error{
  color:#071b19
}

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

.contact-checklist{
  display:flex;
  flex-direction:column;
  min-width:0;
  padding:var(--space-3);
  border-radius:var(--radius-md);
  background:var(--color-accent-soft);
  color:var(--color-ink)
}

.contact-checklist>div{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:var(--space-1)
}

.contact-checklist>div p{
  color:#274b45
}

.contact-checklist ul{
  display:grid;
  gap:var(--space-2);
  margin-block:var(--space-3);
  padding:0;
  list-style:none
}

.contact-checklist ul li{
  display:grid;
  gap:.4rem;
  min-width:0
}

.contact-checklist ul strong{
  font-family:var(--font-heading)
}

.contact-checklist ul span{
  color:#274b45;
  font-size:var(--fs-2)
}

.contact-checklist .c-btn{
  margin-top:var(--space-3)
}

.contact-checklist--dark{
  background:var(--color-ink);
  color:#effff9
}

.contact-checklist--dark>div p,
.contact-checklist--dark ol p{
  color:#a7bcb6
}

.contact-checklist--dark ol{
  display:grid;
  gap:var(--space-2);
  margin-block:var(--space-3);
  padding:0;
  list-style:none
}

.contact-checklist--dark ol li{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:var(--space-2);
  min-width:0
}

.contact-checklist--dark ol li>span{
  color:var(--color-accent);
  font-size:var(--fs-1);
  font-weight:800
}

.contact-checklist--dark ol li>div{
  display:grid;
  min-width:0;
  gap:.4rem
}

.contact-checklist--dark .c-btn--ghost{
  color:#effff9;
  border-color:color-mix(in srgb,currentColor 45%,transparent)
}

.contact-order-section{
  background:var(--color-ink);
  color:#effff9
}

.contact-order-section .page-section__head>p{
  color:#a7bcb6
}

.contact-order-section h2{
  color:#effff9
}

.page-section--dark .page-kicker.contact-kicker--dark,
.contact-kicker--dark{
  padding:.45em .8em;
  border-radius:var(--radius-pill);
  background:var(--color-accent);
  color:var(--color-ink)
}
.page-kicker.contact-kicker--dark::before{
  background:var(--color-ink)
}

.contact-order-board{
  display:grid;
  grid-template-columns:minmax(0,1.3fr) minmax(17rem,.7fr);
  align-items:stretch;
  gap:var(--space-3);
  margin-top:var(--space-4)
}

.contact-order-board__main{
  min-width:0;
  padding:var(--space-3);
  border-radius:var(--radius-md);
  background:#102d28;
  color:#effff9
}

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

.contact-order-fields div{
  display:grid;
  min-width:0;
  gap:var(--space-1);
  padding-top:var(--space-2);
  border-top:1px solid var(--color-line-dark)
}

.contact-order-fields span{
  color:var(--color-accent);
  font-size:var(--fs-0);
  font-weight:800;
  letter-spacing:.06em
}

.contact-order-fields strong{
  font-family:var(--font-heading)
}

.contact-order-fields p{
  color:#a7bcb6;
  font-size:var(--fs-2)
}

.contact-sensitive-card{
  display:flex;
  flex-direction:column;
  min-width:0;
  padding:var(--space-3);
  border-radius:var(--radius-md);
  background:var(--color-accent);
  color:var(--color-ink)
}

.contact-sensitive-card h3{
  margin-top:var(--space-2)
}

.contact-sensitive-card ul{
  display:grid;
  gap:var(--space-1);
  margin-block:var(--space-3);
  padding-inline-start:1.2rem
}

.contact-sensitive-card li{
  color:#173b35
}

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

.contact-scope-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));
  align-items:start;
  gap:var(--space-3);
  margin-top:var(--space-4)
}

.contact-scope-card{
  display:flex;
  flex-direction:column;
  min-width:0;
  padding:var(--space-3);
  border-radius:var(--radius-md);
  background:var(--color-light);
  color:var(--color-ink)
}

.contact-scope-card__icon{
  display:grid;
  width:2.75rem;
  height:2.75rem;
  place-items:center;
  margin-bottom:var(--space-2);
  border-radius:var(--radius-sm);
  background:var(--color-accent);
  color:var(--color-ink)
}

.contact-scope-card__icon svg{
  width:1.35rem;
  height:1.35rem
}

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

.contact-scope-card>strong{
  margin-top:var(--space-3);
  color:var(--color-primary-deep);
  font-family:var(--font-mono);
  font-size:var(--fs-1)
}

.contact-scope-card>span:last-child{
  margin-top:.4rem;
  color:var(--color-muted);
  font-size:var(--fs-2);
  line-height:1.55
}

.contact-response-flow{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--space-3);
  margin-top:var(--space-4);
  padding:var(--space-3);
  border-radius:var(--radius-md);
  background:var(--color-accent);
  color:var(--color-ink)
}

.contact-response-flow div{
  display:grid;
  min-width:0;
  gap:var(--space-1)
}

.contact-response-flow span{
  color:var(--color-primary-deep);
  font-size:var(--fs-0);
  font-weight:800
}

.contact-response-flow p{
  color:#173b35;
  font-size:var(--fs-2)
}

.contact-self-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));
  align-items:start;
  gap:var(--space-3);
  margin-top:var(--space-4)
}

.contact-self-card{
  display:flex;
  flex-direction:column;
  min-width:0;
  min-height:19rem;
  padding:var(--space-3);
  border-radius:var(--radius-md);
  background:var(--color-surface);
  color:var(--color-ink);
  box-shadow:var(--shadow-soft);
  transition:transform .18s var(--ease),background .18s var(--ease)
}

.contact-self-card:hover{
  transform:translateY(-3px);
  background:var(--color-accent-soft)
}

.contact-self-card__label{
  color:var(--color-primary-deep);
  font-size:var(--fs-0);
  font-weight:800;
  letter-spacing:.08em
}

.contact-self-card h3{
  margin-top:var(--space-2)
}

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

.contact-self-card__action{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--space-1);
  margin-top:var(--space-3);
  color:var(--color-primary-deep);
  font-family:var(--font-heading);
  font-size:var(--fs-2);
  font-weight:800
}

.contact-self-card__action svg{
  width:1.1rem;
  height:1.1rem;
  flex:0 0 auto
}

.contact-self-card--dark{
  background:var(--color-ink);
  color:#effff9
}

.contact-self-card--dark:hover{
  background:#102d28;
  color:#effff9
}

.contact-self-card--dark .contact-self-card__label,
.contact-self-card--dark .contact-self-card__action{
  color:var(--color-accent)
}

.contact-self-card--dark p{
  color:#a7bcb6
}

.contact-endcap-section{
  padding-top:0
}

.contact-endcap-section .c-endcap h2{
  color:#effff9
}

.contact-kicker--endcap{
  padding:.45em .8em;
  border-radius:var(--radius-pill);
  background:var(--color-accent);
  color:var(--color-ink)
}
.page-kicker.contact-kicker--endcap::before{
  background:var(--color-ink)
}

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

.contact-endcap__actions .c-btn{
  width:100%
}

.contact-endcap__actions .c-btn--primary{
  background:var(--color-accent);
  border-color:var(--color-accent);
  color:var(--color-ink)
}

.contact-endcap__actions .c-btn--ghost{
  color:#effff9;
  border-color:color-mix(in srgb,currentColor 45%,transparent)
}

@media (max-width:64rem){
  .contact-form-layout,
  .contact-form-layout--reverse,
  .contact-order-board{
    grid-template-columns:1fr
  }

  .contact-checklist{
    min-height:0
  }

  .contact-self-card{
    min-height:17rem
  }
}

@media (max-width:48rem){
  .contact-hero__facts,
  .contact-response-flow{
    grid-template-columns:1fr
  }

  .contact-hero__facts div{
    padding-right:0
  }

  .contact-docket{
    height:auto;
    min-height:31rem
  }

  .contact-docket__head,
  .contact-docket__foot{
    align-items:flex-start;
    flex-direction:column
  }

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

@media (max-width:42rem){
  .contact-docket__route{
    grid-template-columns:auto minmax(0,1fr)
  }

  .contact-docket__channel{
    grid-column:2
  }

  .contact-form-sheet__head{
    flex-direction:column
  }

  .contact-entry-card .c-btn,
  .contact-checklist .c-btn,
  .contact-sensitive-card .c-btn{
    width:100%
  }

  .contact-self-card{
    min-height:0
  }
}

.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 color-mix(in srgb,currentColor 22%,transparent);border-radius:.5rem;color:inherit;background:#fff;font:inherit;text-align:left;cursor:pointer}
.contact-select-btn::after{content:"";width:.45rem;height:.45rem;flex:0 0 auto;border-right:2px solid currentColor;border-bottom:2px solid currentColor;opacity:.45;transform:translateY(-15%) rotate(45deg)}
.contact-select-shell.is-open .contact-select-btn{outline:3px solid color-mix(in srgb,currentColor 18%,transparent)}
.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 color-mix(in srgb,currentColor 16%,transparent);border-radius:.5rem;background:#fff;box-shadow:0 .6rem 1.4rem color-mix(in srgb,#000 12%,transparent)}
.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:inherit;font:inherit;text-align:left;cursor:pointer}
.contact-select-list button:hover,.contact-select-list button[aria-selected="true"]{background:color-mix(in srgb,currentColor 8%,#fff)}
