.contact-hero{
  padding-block:var(--zm-space-5) var(--zm-space-6);
  background:var(--zm-surface);
  color:var(--zm-ink)
}

.contact-hero-inner{
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(28rem,1.08fr);
  gap:var(--zm-space-5);
  align-items:center
}

.contact-hero-copy,
.contact-hero-heading,
.contact-section-head,
.contact-section-head-dark,
.contact-form-intro,
.contact-side-card-copy,
.contact-cta-copy{
  min-width:0;
  display:flex;
  flex-direction:column
}

.contact-hero-copy{
  gap:var(--zm-space-3);
  align-items:flex-start
}

.contact-hero-heading,
.contact-section-head,
.contact-section-head-dark,
.contact-form-intro,
.contact-side-card-copy,
.contact-cta-copy{
  gap:var(--zm-space-1)
}

.contact-hero-heading h1{
  max-width:min(36rem,100%)
}

.contact-hero-heading p{
  max-width:41rem;
  color:var(--zm-muted);
  font-size:var(--zm-fs-3)
}

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

.contact-hero-actions svg{
  width:1rem;
  height:1rem
}

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

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

.contact-response-line strong{
  font-size:var(--zm-fs-3);
  line-height:1.25;
  overflow-wrap:anywhere
}

.contact-response-line span{
  color:var(--zm-muted);
  font-size:var(--zm-fs-1);
  line-height:var(--zm-lh-small)
}

.contact-routing{
  min-width:0;
  overflow:hidden;
  border-radius:var(--zm-radius-lg);
  background:var(--zm-soft);
  color:var(--zm-ink);
  box-shadow:var(--zm-shadow)
}

.contact-routing-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--zm-space-2);
  padding:var(--zm-space-2) var(--zm-space-3);
  background:var(--zm-ink);
  color:#fff
}

.contact-routing-head span{
  color:var(--zm-yellow);
  font-size:var(--zm-fs-0)
}

.contact-routing-head strong{
  font-family:var(--zm-font-heading);
  font-size:var(--zm-fs-1);
  line-height:1.35;
  text-align:right
}

.contact-route-list{
  display:grid;
  gap:var(--zm-space-1);
  padding:var(--zm-space-2)
}

.contact-route{
  min-width:0;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:var(--zm-space-2);
  padding:var(--zm-space-2);
  border-radius:var(--zm-radius-md);
  background:#fff;
  color:#111114;
  transition:transform .18s var(--zm-ease),background .18s var(--zm-ease)
}

.contact-route:hover{
  transform:translateX(4px)
}

.contact-route-accent{
  background:var(--zm-yellow);
  color:#111114
}

.contact-route-dark{
  background:var(--zm-ink);
  color:#fff
}

.contact-route-index{
  width:2rem;
  height:2rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:var(--zm-radius-pill);
  background:var(--zm-soft);
  color:#111114;
  font-size:var(--zm-fs-0);
  font-weight:700
}

.contact-route-accent .contact-route-index{
  background:#fff;
  color:#111114
}

.contact-route-dark .contact-route-index{
  background:var(--zm-yellow);
  color:#111114
}

.contact-route > span:nth-child(2){
  min-width:0;
  display:grid;
  gap:var(--zm-space-1)
}

.contact-route strong{
  font-family:var(--zm-font-heading);
  font-size:var(--zm-fs-3);
  line-height:1.25
}

.contact-route small{
  color:var(--zm-muted);
  overflow-wrap:anywhere
}

.contact-route-dark small{
  color:#b8b8bd
}

.contact-route > svg{
  width:1.15rem;
  height:1.15rem
}

.contact-routing-note{
  padding:0 var(--zm-space-3) var(--zm-space-3);
  color:var(--zm-muted);
  font-size:var(--zm-fs-1)
}

.contact-section{
  padding-block:var(--zm-space-6)
}

.contact-section-paper{
  background:var(--zm-paper);
  color:var(--zm-ink)
}

.contact-section-soft{
  background:var(--zm-soft);
  color:var(--zm-ink)
}

.contact-section-head{
  max-width:52rem;
  margin-bottom:var(--zm-space-4);
  align-items:flex-start
}

.contact-section-head p{
  color:var(--zm-muted);
  font-size:var(--zm-fs-3)
}

.contact-composer{
  align-items:stretch
}

.contact-mail-form{
  display:flex;
  flex-direction:column;
  gap:var(--zm-space-3);
  padding:var(--zm-space-4)
}

.contact-form-intro{
  align-items:flex-start
}

.contact-form-intro p{
  color:var(--zm-muted)
}

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

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

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

.contact-form-status{
  min-height:1.5rem;
  color:var(--zm-success);
  font-size:var(--zm-fs-1);
  font-weight:700
}

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

.contact-composer-side{
  min-width:0;
  height:100%;
  display:grid;
  grid-template-rows:repeat(2,minmax(0,1fr))
}

.contact-side-card{
  min-width:0;
  padding:var(--zm-space-3);
  border-radius:var(--zm-radius-md);
  display:flex;
  flex-direction:column;
  gap:var(--zm-space-3)
}

.contact-side-card .c-btn{
  margin-top:auto
}

.contact-side-card-accent{
  background:var(--zm-yellow);
  color:#111114
}

.contact-side-card-accent p{
  color:#41410e
}

.contact-side-card-dark{
  background:var(--zm-ink);
  color:#fff
}

.contact-side-card-dark p{
  color:#b8b8bd
}

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

.contact-privacy-notice{
  margin-top:var(--zm-space-3)
}

.contact-privacy-notice div{
  display:grid;
  gap:var(--zm-space-1)
}

.contact-enterprise{
  background:var(--zm-ink);
  color:#fff
}

.contact-section-head-dark{
  max-width:52rem;
  margin-bottom:var(--zm-space-4);
  align-items:flex-start
}

.contact-section-head-dark p{
  color:#b8b8bd;
  font-size:var(--zm-fs-3)
}

.contact-enterprise-layout{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(20rem,.75fr);
  gap:var(--zm-space-3);
  align-items:start
}

.contact-enterprise-sheet{
  min-width:0;
  overflow:hidden;
  border-radius:var(--zm-radius-lg);
  background:#fff;
  color:#111114
}

.contact-enterprise-sheet-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--zm-space-2);
  padding:var(--zm-space-2) var(--zm-space-3);
  background:var(--zm-yellow);
  color:#111114
}

.contact-enterprise-sheet-head span{
  font-size:var(--zm-fs-0)
}

.contact-enterprise-sheet-head strong{
  font-family:var(--zm-font-heading);
  text-align:right
}

.contact-enterprise-rows{
  padding:var(--zm-space-2) var(--zm-space-3)
}

.contact-enterprise-row{
  min-width:0;
  display:grid;
  grid-template-columns:2.5rem minmax(0,1fr);
  gap:var(--zm-space-2);
  padding-block:var(--zm-space-2);
  border-bottom:1px solid var(--zm-line)
}

.contact-enterprise-row:last-child{
  border-bottom:0
}

.contact-enterprise-row > span{
  color:var(--zm-success);
  font-weight:700
}

.contact-enterprise-row div{
  min-width:0;
  display:grid;
  gap:var(--zm-space-1)
}

.contact-enterprise-row h3{
  font-size:var(--zm-fs-3)
}

.contact-enterprise-row p{
  color:#626266
}

.contact-catalog{
  min-width:0;
  display:grid;
  gap:var(--zm-space-2)
}

.contact-catalog article{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:var(--zm-space-1);
  padding:var(--zm-space-3);
  border-radius:var(--zm-radius-md);
  background:#252528;
  color:#fff
}

.contact-catalog article p{
  color:#b8b8bd
}

.contact-catalog article p.zm-mono{
  color:var(--zm-yellow);
  font-size:var(--zm-fs-1)
}

.contact-diagnostic-layout{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:var(--zm-space-3);
  align-items:stretch
}

.contact-diagnostic-cards{
  height:100%;
  grid-template-rows:repeat(2,minmax(0,1fr));
  align-items:stretch
}

.contact-template-card{
  min-width:0;
  overflow:hidden;
  border-radius:var(--zm-radius-lg);
  background:var(--zm-ink);
  color:#eeeef0
}

.contact-template-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--zm-space-2);
  padding:var(--zm-space-2) var(--zm-space-3);
  background:var(--zm-yellow);
  color:#111114
}

.contact-template-head span{
  font-size:var(--zm-fs-0)
}

.contact-template-head strong{
  font-family:var(--zm-font-heading);
  text-align:right
}

.contact-template-card pre{
  max-width:100%;
  min-height:28rem;
  margin:0;
  padding:var(--zm-space-3);
  overflow-x:auto;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
  color:#eeeef0
}

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

.contact-diagnostic-cards article{
  display:flex;
  flex-direction:column;
  gap:var(--zm-space-1)
}

.contact-diagnostic-cards article p{
  color:var(--zm-muted)
}

.contact-card-index{
  color:var(--zm-success);
  font-size:var(--zm-fs-0);
  font-weight:700
}

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

.contact-scope-card{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:var(--zm-space-1);
  padding:var(--zm-space-3);
  border-radius:var(--zm-radius-md);
  background:#fff;
  color:#111114
}

.contact-scope-card > p{
  color:#626266
}

.contact-scope-icon{
  width:2.75rem;
  height:2.75rem;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:var(--zm-space-1);
  border-radius:var(--zm-radius-sm);
  background:var(--zm-yellow);
  color:#111114
}

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

.contact-scope-card dl{
  display:grid;
  gap:var(--zm-space-1);
  margin:var(--zm-space-2) 0 0;
  padding-top:var(--zm-space-2);
  border-top:1px solid var(--zm-line)
}

.contact-scope-card dl div{
  min-width:0;
  display:grid;
  grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);
  gap:var(--zm-space-1)
}

.contact-scope-card dt{
  color:#626266
}

.contact-scope-card dd{
  color:#111114;
  overflow-wrap:anywhere
}

.contact-response-table{
  margin-top:var(--zm-space-4)
}

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

.contact-response-table caption{
  padding:0 0 var(--zm-space-2);
  color:var(--zm-muted);
  font-family:var(--zm-font-heading);
  font-size:var(--zm-fs-3);
  font-weight:700;
  text-align:left
}

.contact-policy-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));
  gap:var(--zm-space-2);
  align-items:start
}

.contact-policy-card{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:var(--zm-space-1);
  padding:var(--zm-space-3);
  border-radius:var(--zm-radius-md);
  background:var(--zm-soft);
  color:#111114
}

.contact-policy-card p{
  color:#626266
}

.contact-policy-card ul{
  margin:var(--zm-space-2) 0 0;
  padding-left:1.2rem
}

.contact-policy-card li + li{
  margin-top:var(--zm-space-1)
}

.contact-policy-card-accent{
  background:var(--zm-yellow);
  color:#111114
}

.contact-policy-card-accent p{
  color:#41410e
}

.contact-policy-card-dark{
  background:var(--zm-ink);
  color:#fff
}

.contact-policy-card-dark p,
.contact-policy-card-dark li{
  color:#b8b8bd
}

.contact-policy-label{
  color:var(--zm-success);
  font-size:var(--zm-fs-0);
  font-weight:700
}

.contact-policy-card-dark .contact-policy-label{
  color:var(--zm-yellow)
}

.contact-cta-copy{
  max-width:47rem;
  align-items:flex-start
}

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

.contact-cta-actions .c-btn-primary{
  background:var(--zm-yellow);
  color:#111114;
  border-color:var(--zm-yellow)
}

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

.contact-guide-link{
  padding:var(--zm-space-1);
  color:#b8b8bd;
  font-size:var(--zm-fs-1);
  line-height:1.4;
  text-align:center;
  text-decoration:underline;
  text-underline-offset:4px
}

.contact-guide-link:hover{
  color:var(--zm-yellow)
}

@media(max-width:64rem){
  .contact-hero-inner{
    grid-template-columns:minmax(0,1fr) minmax(23rem,.9fr);
    gap:var(--zm-space-3)
  }

  .contact-enterprise-layout,
  .contact-diagnostic-layout{
    grid-template-columns:1fr
  }

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

  .contact-template-card pre{
    min-height:0
  }
}

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

  .contact-hero-inner{
    grid-template-columns:1fr
  }

  .contact-hero-heading h1{
    max-width:100%
  }

  .contact-response-line,
  .contact-form-grid,
  .contact-diagnostic-cards,
  .contact-catalog{
    grid-template-columns:1fr
  }

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

  .contact-routing-head,
  .contact-enterprise-sheet-head,
  .contact-template-head{
    align-items:flex-start;
    flex-direction:column
  }

  .contact-routing-head strong,
  .contact-enterprise-sheet-head strong,
  .contact-template-head strong{
    text-align:left
  }

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

  .contact-route > svg{
    display:none
  }

  .contact-scope-card dl div{
    grid-template-columns:1fr
  }

  .contact-section{
    padding-block:var(--zm-space-5)
  }
}

@media(max-width:24.375rem){
  .contact-route{
    padding:var(--zm-space-2) var(--zm-space-1);
    gap:var(--zm-space-1)
  }

  .contact-route-index{
    width:1.75rem;
    height:1.75rem
  }

  .contact-enterprise-row{
    grid-template-columns:1fr
  }

  .contact-form-actions,
  .contact-hero-actions{
    width:100%
  }
}
