.contact-hero__content{
  max-width:var(--hx-container-narrow);
}

.contact-hero__lead{
  max-width:44rem;
  margin-bottom:var(--hx-space-3);
  font-size:var(--hx-text-lg);
}

.contact-hero__actions{
  margin-top:var(--hx-space-3);
}

.contact-hero__actions svg{
  width:1.15rem;
  height:1.15rem;
  flex:0 0 auto;
}

.contact-route-summary{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  margin-top:var(--hx-space-4);
  border-block:1px solid var(--hx-line);
}

.contact-route-summary div{
  min-width:0;
  padding:var(--hx-space-2);
  border-right:1px solid var(--hx-line);
}

.contact-route-summary div:first-child{
  padding-left:0;
}

.contact-route-summary div:last-child{
  padding-right:0;
  border-right:0;
}

.contact-route-summary span,
.contact-route-summary strong{
  display:block;
}

.contact-route-summary span{
  color:var(--hx-muted);
  font-size:var(--hx-text-xs);
}

.contact-route-summary strong{
  margin-top:var(--hx-space-1);
  color:var(--hx-ink);
  font-family:var(--hx-font-mono);
  font-size:var(--hx-text-sm);
}

.contact-route-card{
  display:flex;
  min-width:0;
  flex-direction:column;
  padding:var(--hx-space-4);
}

.contact-card-icon{
  display:block;
  width:2rem;
  height:2rem;
  margin-bottom:var(--hx-space-2);
  color:var(--hx-primary);
}

.contact-route-card__heading{
  display:flex;
  min-width:0;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:var(--hx-space-1);
  margin-bottom:var(--hx-space-2);
}

.contact-route-card__heading h3{
  margin-bottom:0;
}

.contact-route-card p{
  margin-bottom:var(--hx-space-2);
}

.contact-check-list{
  display:grid;
  gap:.65rem;
  margin:0;
  padding:0;
  list-style:none;
}

.contact-check-list li{
  position:relative;
  min-width:0;
  padding-left:1.4rem;
  color:var(--hx-text);
}

.contact-check-list li:before{
  content:"";
  position:absolute;
  top:.65rem;
  left:.15rem;
  width:.45rem;
  height:.45rem;
  border-radius:50%;
  background:var(--hx-success);
}

.contact-text-link{
  align-self:flex-start;
  max-width:100%;
  margin-top:auto;
  padding-top:var(--hx-space-3);
  color:var(--hx-primary-hover);
  font-weight:750;
  overflow-wrap:anywhere;
}

.contact-text-link:hover{
  text-decoration:underline;
  text-underline-offset:.25rem;
}

.contact-section-grid{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  align-items:start;
  gap:var(--hx-space-5);
}

.contact-section-grid--reverse{
  grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);
}

.contact-section-copy{
  min-width:0;
}

.contact-section-copy h2{
  margin-bottom:var(--hx-space-3);
}

.contact-section-copy p{
  margin-bottom:var(--hx-space-2);
}

.contact-notice{
  margin-top:var(--hx-space-3);
}

.contact-notice>svg{
  width:1.5rem;
  height:1.5rem;
  flex:0 0 auto;
  color:var(--hx-primary);
}

.contact-notice p{
  margin:.25rem 0 0;
}

.contact-sheet{
  min-width:0;
  padding:var(--hx-space-4);
  border:1px solid var(--hx-line-strong);
  border-radius:var(--hx-radius-lg);
  background:var(--hx-surface);
  box-shadow:var(--hx-shadow);
}

.contact-sheet__head{
  display:flex;
  min-width:0;
  align-items:flex-start;
  gap:var(--hx-space-2);
  margin-bottom:var(--hx-space-3);
}

.contact-sheet__head h3{
  margin-bottom:.3rem;
}

.contact-sheet__head p{
  margin-bottom:0;
}

.contact-sheet__step{
  display:grid;
  width:2.6rem;
  height:2.6rem;
  flex:0 0 auto;
  place-items:center;
  border-radius:50%;
  background:var(--hx-primary);
  color:var(--hx-surface);
  font-size:var(--hx-text-sm);
  font-weight:750;
}

.contact-field-list{
  display:grid;
  margin:0 0 var(--hx-space-3);
  border-top:1px solid var(--hx-line);
}

.contact-field-list div{
  display:grid;
  grid-template-columns:minmax(max-content,.35fr) minmax(0,1fr);
  gap:var(--hx-space-2);
  padding:var(--hx-space-2) 0;
  border-bottom:1px solid var(--hx-line);
}

.contact-field-list dt{
  color:var(--hx-ink);
  font-weight:750;
}

.contact-field-list dd{
  min-width:0;
  margin:0;
  color:var(--hx-muted);
}

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

.contact-signal-grid div{
  min-width:0;
  padding:var(--hx-space-2);
  border:1px solid var(--hx-line);
  border-radius:var(--hx-radius-sm);
  background:var(--hx-surface);
}

.contact-signal-grid span,
.contact-signal-grid strong{
  display:block;
}

.contact-signal-grid span{
  margin-bottom:.35rem;
  color:var(--hx-primary-hover);
  font-size:var(--hx-text-xs);
  font-weight:750;
}

.contact-signal-grid strong{
  color:var(--hx-ink);
  font-size:var(--hx-text-sm);
}

.team-card{
  padding:var(--hx-space-4);
}

.team-card h3{
  margin-bottom:var(--hx-space-2);
}

.contact-inline-action{
  display:flex;
  min-width:0;
  align-items:center;
  justify-content:space-between;
  gap:var(--hx-space-3);
  margin-top:var(--hx-space-3);
  padding:var(--hx-space-3);
  border:1px solid var(--hx-line);
  border-radius:var(--hx-radius-md);
  background:var(--hx-surface);
}

.contact-inline-action h3{
  margin-bottom:.4rem;
}

.contact-inline-action p{
  max-width:45rem;
  margin-bottom:0;
}

.security-panel{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:var(--hx-space-3);
  padding:var(--hx-space-4);
  border-radius:var(--hx-radius-lg);
  background:var(--hx-dark);
  overflow:hidden;
}

.security-panel__icon{
  display:grid;
  width:3.5rem;
  height:3.5rem;
  place-items:center;
  border-radius:var(--hx-radius-md);
  background:var(--hx-primary-soft);
  color:var(--hx-primary-hover);
}

.security-panel__icon svg{
  width:1.8rem;
  height:1.8rem;
}

.security-panel__content{
  min-width:0;
}

.security-panel__content h2{
  color:var(--hx-surface);
}

.security-panel__content p{
  max-width:52rem;
  color:var(--hx-accent);
}

.security-panel__content p a:not(.c-btn){
  color:var(--hx-surface);
  font-weight:750;
  overflow-wrap:anywhere;
}

.security-panel__content p a:not(.c-btn):hover{
  text-decoration:underline;
  text-underline-offset:.25rem;
}

.security-panel__rules{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--hx-space-2);
  margin:var(--hx-space-3) 0;
}

.security-panel__rules div{
  min-width:0;
  padding:var(--hx-space-2);
  border:1px solid var(--hx-text);
  border-radius:var(--hx-radius-sm);
}

.security-panel__rules strong,
.security-panel__rules span{
  display:block;
}

.security-panel__rules strong{
  margin-bottom:.35rem;
  color:var(--hx-surface);
}

.security-panel__rules span{
  color:var(--hx-accent);
  font-size:var(--hx-text-sm);
}

.response-layout{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);
  align-items:start;
  gap:var(--hx-space-4);
}

.response-steps{
  display:grid;
  gap:var(--hx-space-2);
  margin:0;
  padding:0;
  list-style:none;
}

.response-steps li{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:var(--hx-space-2);
  padding:var(--hx-space-3);
  border:1px solid var(--hx-line);
  border-radius:var(--hx-radius-md);
  background:var(--hx-surface);
}

.response-step__number{
  display:grid;
  width:2.7rem;
  height:2.7rem;
  place-items:center;
  border-radius:50%;
  background:var(--hx-primary-soft);
  color:var(--hx-primary-hover);
  font-size:var(--hx-text-sm);
  font-weight:750;
}

.response-steps h3{
  margin-bottom:.4rem;
}

.response-steps p{
  margin-bottom:0;
}

.response-aside{
  min-width:0;
  padding:var(--hx-space-3);
  border:1px solid var(--hx-line);
  border-radius:var(--hx-radius-md);
  background:var(--hx-surface);
}

.response-aside h3{
  margin-bottom:var(--hx-space-2);
}

.response-aside>a{
  display:flex;
  min-width:0;
  align-items:flex-start;
  gap:var(--hx-space-2);
  padding:var(--hx-space-2) 0;
  border-top:1px solid var(--hx-line);
}

.response-aside>a:hover strong{
  color:var(--hx-primary-hover);
}

.response-aside>a>svg{
  width:1.4rem;
  height:1.4rem;
  flex:0 0 auto;
  margin-top:.15rem;
  color:var(--hx-primary);
}

.response-aside>a>span{
  min-width:0;
}

.response-aside strong,
.response-aside small{
  display:block;
}

.response-aside strong{
  color:var(--hx-ink);
}

.response-aside small{
  margin-top:.25rem;
  color:var(--hx-muted);
  font-size:var(--hx-text-sm);
  line-height:var(--hx-leading-body);
}

.page-cta .hx-eyebrow{
  width:fit-content;
  align-self:flex-start;
}

.page-cta p{
  max-width:48rem;
}

@media(max-width:900px){
  .contact-section-grid,
  .contact-section-grid--reverse,
  .response-layout{
    grid-template-columns:1fr;
  }

  .contact-section-grid,
  .contact-section-grid--reverse{
    gap:var(--hx-space-4);
  }

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

@media(max-width:640px){
  .contact-hero__lead{
    font-size:var(--hx-text-md);
  }

  .contact-hero__actions{
    align-items:stretch;
    flex-direction:column;
  }

  .contact-hero__actions .c-btn{
    width:100%;
    white-space:normal;
    overflow-wrap:anywhere;
  }

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

  .contact-route-summary div,
  .contact-route-summary div:first-child,
  .contact-route-summary div:last-child{
    padding:var(--hx-space-2) 0;
    border-right:0;
    border-bottom:1px solid var(--hx-line);
  }

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

  .contact-route-card,
  .contact-sheet,
  .team-card,
  .security-panel{
    padding:var(--hx-space-3);
  }

  .contact-field-list div{
    grid-template-columns:1fr;
    gap:.3rem;
  }

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

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

  .security-panel__content .hx-cluster{
    align-items:stretch;
    flex-direction:column;
  }

  .security-panel__content .c-btn{
    width:100%;
    white-space:normal;
  }

  .response-steps li{
    grid-template-columns:1fr;
  }

  .contact-inline-action .c-btn{
    width:100%;
    white-space:normal;
  }

  .page-cta .hx-cluster{
    align-items:stretch;
    flex-direction:column;
  }

  .page-cta .c-btn{
    width:100%;
    white-space:normal;
  }
}
