.contact-hero{
  padding:var(--gm-space-5) 0 var(--gm-space-6);
  color:var(--gm-ink);
  background:var(--gm-light)
}

.contact-hero__grid{
  display:grid;
  grid-template-columns:minmax(0,1.06fr) minmax(20rem,.94fr);
  align-items:center;
  gap:var(--gm-space-5)
}

.contact-hero__grid>*{
  min-width:0
}

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

.contact-hero__copy h1{
  max-width:min(36rem,100%);
  margin-inline:0
}

.contact-hero__lead{
  max-width:42rem;
  color:var(--gm-muted);
  font-size:var(--gm-text-3)
}

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

.contact-hero__facts div{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:var(--gm-space-1)
}

.contact-hero__facts strong{
  color:var(--gm-dark);
  font-family:var(--gm-font-mono);
  font-size:var(--gm-text-4);
  line-height:1.2;
  font-variant-numeric:tabular-nums
}

.contact-hero__facts span{
  overflow-wrap:anywhere;
  color:var(--gm-muted);
  font-size:var(--gm-text-1);
  line-height:var(--gm-leading-data)
}

.contact-hero__copy .gm-actions{
  justify-content:flex-start;
  margin-top:var(--gm-space-3)
}

.contact-dispatch{
  overflow:hidden;
  color:#f7f1e6;
  background:var(--gm-dark);
  border-radius:var(--gm-radius-lg);
  box-shadow:var(--gm-shadow-float)
}

.contact-dispatch__heading{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:var(--gm-space-1);
  padding:var(--gm-space-4)
}

.contact-dispatch__heading h2{
  color:#fff;
  font-size:var(--gm-text-4)
}

.contact-dispatch__heading p{
  color:#c9c0b0
}

.contact-dispatch__rows{
  display:flex;
  flex-direction:column;
  border-top:1px solid var(--gm-line-dark)
}

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

.contact-dispatch__row svg{
  width:1.5rem;
  height:1.5rem;
  color:var(--gm-accent)
}

.contact-dispatch__row div{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:var(--gm-space-1)
}

.contact-dispatch__row strong{
  color:#fff;
  font-family:var(--gm-font-heading);
  line-height:var(--gm-leading-heading)
}

.contact-dispatch__row span{
  color:#c9c0b0;
  font-size:var(--gm-text-1);
  line-height:var(--gm-leading-body)
}

.contact-dispatch__footer{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:var(--gm-space-2);
  padding:var(--gm-space-3) var(--gm-space-4);
  color:#2b2418;
  background:var(--gm-accent)
}

.contact-dispatch__footer span{
  color:#4b390b;
  font-size:var(--gm-text-1);
  font-weight:700
}

.contact-dispatch__footer a{
  overflow-wrap:anywhere;
  color:#2b2418;
  font-family:var(--gm-font-mono);
  font-size:var(--gm-text-1);
  font-weight:750;
  text-decoration:underline;
  text-underline-offset:.2em
}

.gm-section-head{
  display:flex;
  max-width:48rem;
  flex-direction:column;
  align-items:flex-start;
  gap:var(--gm-space-1)
}

.gm-section-head p{
  color:var(--gm-muted);
  font-size:var(--gm-text-3)
}

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

.contact-route{
  display:flex;
  width:100%;
  min-width:0;
  flex-direction:column;
  align-items:flex-start;
  gap:var(--gm-space-1);
  padding:var(--gm-space-3);
  color:var(--gm-ink);
  background:var(--gm-band);
  border:1px solid transparent;
  border-radius:var(--gm-radius-lg);
  text-align:left;
  cursor:pointer;
  transition:transform var(--gm-duration) var(--gm-ease),background var(--gm-duration) var(--gm-ease),border-color var(--gm-duration) var(--gm-ease)
}

.contact-route:hover{
  transform:translateY(-3px);
  background:var(--gm-light)
}

.contact-route.is-active{
  color:var(--gm-ink);
  background:var(--gm-accent-soft);
  border-color:var(--gm-primary)
}

.contact-route__icon{
  display:grid;
  width:2.75rem;
  height:2.75rem;
  place-items:center;
  color:#fff;
  background:var(--gm-primary);
  border-radius:var(--gm-radius-md)
}

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

.contact-route strong{
  color:var(--gm-dark);
  font-family:var(--gm-font-heading);
  font-size:var(--gm-text-3);
  line-height:var(--gm-leading-heading)
}

.contact-route>span:not(.contact-route__icon){
  color:var(--gm-muted);
  line-height:var(--gm-leading-body)
}

.contact-route small{
  overflow-wrap:anywhere;
  color:var(--gm-primary-paper);
  font-weight:750
}

.contact-safety{
  margin-top:var(--gm-space-4)
}

.contact-safety p{
  margin-top:var(--gm-space-1);
  color:#634f1c
}

.contact-builder-section{
  color:var(--gm-ink);
  background:var(--gm-band-cool)
}

.contact-builder{
  margin-top:var(--gm-space-4);
  align-items:stretch
}

.contact-form{
  min-width:0;
  padding:var(--gm-space-4);
  color:var(--gm-ink);
  background:#fff;
  border-radius:var(--gm-radius-lg);
  box-shadow:var(--gm-shadow-soft)
}

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

.contact-form__heading h3{
  color:var(--gm-dark)
}

.contact-form__heading p{
  color:var(--gm-muted)
}

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

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

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

.contact-form .c-input,
.contact-form .c-select,
.contact-form .c-textarea{
  border-color:var(--gm-control-line)
}

.contact-context{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:var(--gm-space-1);
  margin:var(--gm-space-4) 0 0;
  padding:var(--gm-space-3);
  color:var(--gm-ink);
  background:var(--gm-light);
  border:0;
  border-radius:var(--gm-radius-md)
}

.contact-context[hidden]{
  display:none
}

.contact-context legend{
  padding:0;
  color:var(--gm-dark);
  font-family:var(--gm-font-heading);
  font-size:var(--gm-text-3);
  line-height:var(--gm-leading-heading);
  font-weight:650
}

.contact-context__intro{
  color:var(--gm-muted)
}

.contact-context>.contact-form-grid{
  margin-top:0
}

.contact-context>.c-field+.c-field{
  margin-top:0
}

.contact-log-input{
  min-height:12rem;
  font-family:var(--gm-font-mono);
  font-size:var(--gm-text-1)
}

.contact-description{
  margin-top:var(--gm-space-4)
}

.contact-form .contact-description.c-field{
  gap:var(--gm-space-1)
}

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

.contact-consent input{
  width:1.1rem;
  height:1.1rem;
  margin:.12rem 0 0;
  accent-color:var(--gm-primary)
}

.contact-consent label{
  color:var(--gm-muted)
}

.contact-form__actions{
  justify-content:flex-start;
  margin-top:var(--gm-space-3)
}

.contact-status{
  margin-top:var(--gm-space-1);
  color:var(--gm-muted);
  font-size:var(--gm-text-1)
}

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

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

.contact-builder__side{
  display:grid;
  min-width:0;
  align-self:stretch;
  height:auto;
  grid-template-rows:auto minmax(0,1fr);
  gap:var(--gm-space-3)
}

.contact-builder__side .contact-summary,
.contact-builder__side .contact-channel-card{
  min-height:0
}

.contact-builder__side.reveal-right{
  align-self:stretch
}

.contact-summary,
.contact-channel-card{
  min-width:0;
  padding:var(--gm-space-3);
  border-radius:var(--gm-radius-lg)
}

.contact-summary{
  color:#f7f1e6;
  background:var(--gm-dark)
}

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

.contact-summary__heading h3{
  color:#fff
}

.contact-summary__heading p{
  color:#c9c0b0
}

.contact-summary__list{
  display:flex;
  flex-direction:column;
  gap:0;
  margin:var(--gm-space-3) 0 0
}

.contact-summary__list div{
  display:grid;
  grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);
  gap:var(--gm-space-2);
  padding:var(--gm-space-2) 0;
  border-top:1px solid var(--gm-line-dark)
}

.contact-summary__list dt{
  min-width:0;
  color:#c9c0b0
}

.contact-summary__list dd{
  min-width:0;
  overflow-wrap:anywhere;
  color:#fff;
  font-family:var(--gm-font-mono);
  text-align:right
}

.contact-channel-card{
  display:flex;
  height:100%;
  min-height:0;
  flex:1 1 auto;
  flex-direction:column;
  gap:var(--gm-space-2);
  color:var(--gm-ink);
  background:var(--gm-accent-soft)
}

.contact-channel-card>div,
.contact-channel-card__head{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:var(--gm-space-1)
}

.contact-channel-card h3{
  color:var(--gm-dark)
}

.contact-channel-card p{
  color:#625840
}

.contact-channel-card__list{
  display:flex;
  flex:0 0 auto;
  flex-direction:column;
  justify-content:flex-start;
  gap:0;
  margin:0;
  padding:0;
  list-style:none
}
.contact-channel-card__canvas{
  display:flex;
  min-height:9rem;
  flex:1 1 auto;
  flex-direction:column;
  justify-content:flex-start;
  gap:0;
  padding:var(--gm-space-2);
  color:var(--gm-ink);
  background:linear-gradient(160deg,color-mix(in srgb,var(--gm-accent) 22%,#fff8e7),#fff8e7 46%);
  border:1px solid color-mix(in srgb,var(--gm-ink) 8%,transparent);
  border-radius:var(--gm-radius-md)
}
.contact-channel-card__canvas > span{
  color:var(--gm-primary-deep);
  font-family:var(--gm-font-mono);
  font-size:var(--gm-text-0);
  letter-spacing:.08em;
  text-transform:uppercase
}
.contact-channel-card__canvas dl{
  display:flex;
  flex-direction:column;
  margin:auto 0 0
}
.contact-channel-card__canvas div{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:var(--gm-space-1);
  padding:.55rem 0;
  border-top:1px solid #e0d6c4
}
.contact-channel-card__canvas div:first-of-type{
  border-top:0;
  padding-top:.15rem
}
.contact-channel-card__canvas dt{
  color:#684b00;
  font-size:var(--gm-text-0)
}
.contact-channel-card__canvas dd{
  min-width:0;
  overflow-wrap:anywhere;
  color:var(--gm-dark);
  font-family:var(--gm-font-mono);
  font-size:var(--gm-text-0);
  text-align:right
}

.contact-channel-card__list li{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:.7rem;
  padding:.7rem 0;
  border-top:1px solid color-mix(in srgb,var(--gm-ink) 10%,transparent);
  font-size:var(--gm-text-1);
  line-height:var(--gm-leading-data)
}

.contact-channel-card__list b{
  color:var(--gm-primary-deep);
  font-family:var(--gm-font-mono);
  font-size:var(--gm-text-0)
}

.contact-channel-card__actions{
  display:flex;
  flex-wrap:wrap;
  gap:var(--gm-space-1);
  margin-top:auto;
  padding-top:var(--gm-space-3)
}

.contact-channel-card .c-btn{
  margin-top:0;
  align-self:flex-start
}

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

.contact-check-card{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:var(--gm-space-1);
  padding:var(--gm-space-3);
  color:var(--gm-ink);
  background:var(--gm-band);
  border-radius:var(--gm-radius-lg)
}

.contact-check-card>span{
  width:fit-content;
  align-self:flex-start;
  color:var(--gm-primary-paper);
  font-family:var(--gm-font-mono);
  font-size:var(--gm-text-1);
  font-weight:750
}

.contact-check-card h3{
  color:var(--gm-dark)
}

.contact-check-card p{
  color:var(--gm-muted)
}

.contact-command{
  overflow:hidden;
  margin-top:var(--gm-space-4);
  padding:0;
  color:#f7f1e6;
  background:var(--gm-dark);
  border-radius:var(--gm-radius-lg)
}

.contact-command__heading{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:var(--gm-space-2);
  padding:var(--gm-space-3) var(--gm-space-4);
  color:#2b2418;
  background:var(--gm-accent)
}

.contact-command__heading svg{
  width:1.5rem;
  height:1.5rem
}

.contact-command__heading div{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:var(--gm-space-1)
}

.contact-command__heading h3{
  color:#2b2418
}

.contact-command__heading p{
  color:#57430f
}

.contact-command pre{
  margin:0;
  padding:var(--gm-space-4);
  color:#f7f1e6;
  background:var(--gm-dark)
}

.contact-command code{
  color:#f7f1e6;
  white-space:pre-wrap;
  overflow-wrap:anywhere
}

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

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

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

.contact-order-sheet{
  overflow:hidden;
  color:var(--gm-ink);
  background:#fff;
  border-radius:var(--gm-radius-lg);
  box-shadow:var(--gm-shadow-soft)
}

.contact-order-sheet__head{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  justify-content:space-between;
  gap:var(--gm-space-2);
  padding:var(--gm-space-3) var(--gm-space-4);
  color:#2b2418;
  background:var(--gm-accent)
}

.contact-order-sheet__head>div{
  display:flex;
  flex-direction:column;
  gap:var(--gm-space-1)
}

.contact-order-sheet__head span{
  color:#57430f;
  font-size:var(--gm-text-1)
}

.contact-order-sheet__head strong{
  color:#2b2418;
  font-family:var(--gm-font-heading);
  font-size:var(--gm-text-3)
}

.contact-order-sheet__body{
  margin:0;
  padding:0 var(--gm-space-4)
}

.contact-order-sheet__body div{
  display:grid;
  grid-template-columns:minmax(8rem,.72fr) minmax(0,1.28fr);
  gap:var(--gm-space-2);
  padding:var(--gm-space-2) 0;
  border-bottom:1px solid var(--gm-line)
}

.contact-order-sheet__body div:last-child{
  border-bottom:0
}

.contact-order-sheet__body dt{
  min-width:0;
  color:var(--gm-dark)
}

.contact-order-sheet__body dd{
  min-width:0;
  overflow-wrap:anywhere;
  color:var(--gm-muted)
}

.contact-order-notes{
  display:grid;
  min-width:0;
  grid-template-rows:repeat(2,minmax(0,1fr));
  gap:var(--gm-space-3)
}

.contact-order-notes .c-card{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:var(--gm-space-1);
  padding:var(--gm-space-3)
}

.contact-timeline{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--gm-space-3);
  margin:var(--gm-space-4) 0 0;
  padding:0;
  list-style:none
}

.contact-timeline li{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:var(--gm-space-2);
  padding:var(--gm-space-3);
  color:var(--gm-ink);
  background:var(--gm-band-cool);
  border-radius:var(--gm-radius-lg)
}

.contact-timeline__number{
  display:inline-flex;
  width:2.75rem;
  height:2.75rem;
  align-items:center;
  justify-content:center;
  align-self:flex-start;
  color:#fff;
  background:var(--gm-primary);
  border-radius:999px;
  font-family:var(--gm-font-mono);
  font-size:var(--gm-text-1);
  line-height:1;
  font-weight:750
}

.contact-timeline li>div{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:var(--gm-space-1)
}

.contact-timeline h3{
  color:var(--gm-dark)
}

.contact-timeline p{
  color:var(--gm-muted)
}

.contact-channel-table{
  margin-top:var(--gm-space-4);
  border:1px solid var(--gm-line)
}

.contact-channel-table table{
  min-width:48rem
}

.contact-channel-table caption{
  padding:var(--gm-space-2);
  color:var(--gm-dark);
  background:#fff;
  font-family:var(--gm-font-heading);
  font-weight:650;
  text-align:left
}

.contact-channel-table tbody th{
  color:var(--gm-dark);
  background:#faf8f3
}

.contact-urgent{
  margin-top:var(--gm-space-4)
}

.contact-urgent p{
  margin-top:var(--gm-space-1);
  color:#634f1c
}

.contact-final{
  padding-top:0
}

.contact-final .c-cta{
  color:#f8f3e8;
  background:var(--gm-dark)
}

.contact-final__copy{
  display:flex;
  max-width:43rem;
  flex-direction:column;
  align-items:flex-start;
  gap:var(--gm-space-1)
}

.contact-final__copy h2{
  color:#fff
}

.contact-final__copy p{
  color:#c9c0b0
}

.contact-final .gm-actions{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  justify-content:flex-start
}

.contact-final .c-btn--ghost{
  color:#fff;
  border-color:rgba(255,255,255,.42)
}

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

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

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

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

@media(max-width:48rem){
  .contact-hero{
    padding:var(--gm-space-4) 0 var(--gm-space-5)
  }

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

  .contact-hero__facts div{
    display:grid;
    grid-template-columns:minmax(5rem,.35fr) minmax(0,.65fr);
    align-items:baseline
  }

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

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

  .contact-summary__list div{
    grid-template-columns:1fr;
    gap:var(--gm-space-1)
  }

  .contact-summary__list dd{
    text-align:left
  }

  .contact-order-sheet__body div{
    grid-template-columns:1fr;
    gap:var(--gm-space-1)
  }

  .contact-dispatch__heading,
  .contact-dispatch__row,
  .contact-dispatch__footer,
  .contact-command__heading,
  .contact-command pre,
  .contact-order-sheet__head{
    padding-inline:var(--gm-space-3)
  }

  .contact-order-sheet__body{
    padding-inline:var(--gm-space-3)
  }
}

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

  .contact-form,
  .contact-context,
  .contact-summary,
  .contact-channel-card,
  .contact-check-card,
  .contact-timeline li{
    padding:var(--gm-space-2)
  }

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

  .contact-hero__facts div{
    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 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)}
