.contact-hero{
  padding-block:var(--space-5) var(--space-7);
  background:#080b21;
  color:#edf4ff;
}

.contact-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(22rem,.98fr);
  gap:var(--space-6);
  align-items:center;
}

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

.contact-hero-copy{
  display:flex;
  flex-direction:column;
  gap:var(--space-4);
}

.contact-heading{
  display:grid;
  gap:var(--space-1);
}

.contact-heading h1{
  max-width:13ch;
  text-transform:uppercase;
}

.contact-heading p{
  max-width:42rem;
  color:#aab6d3;
  font-size:var(--fs-3);
}

.contact-hero-facts{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  border-block:1px solid rgba(255,255,255,.11);
}

.contact-fact{
  min-width:0;
  padding:var(--space-2);
  display:grid;
  gap:var(--space-1);
}

.contact-fact + .contact-fact{
  border-left:1px solid rgba(255,255,255,.11);
}

.contact-fact strong{
  color:#edf4ff;
  font-family:var(--font-mono);
  font-size:var(--fs-3);
  font-variant-numeric:tabular-nums;
  overflow-wrap:anywhere;
}

.contact-fact span{
  color:#aab6d3;
  font-size:var(--fs-1);
  line-height:1.5;
}

.contact-routing-board{
  overflow:hidden;
  border-radius:var(--radius-lg);
  background:#172048;
  color:#edf4ff;
  box-shadow:var(--shadow-float);
}

.contact-board-head{
  padding:var(--space-3);
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:var(--space-2);
  background:#111838;
  color:#edf4ff;
  border-bottom:1px solid rgba(255,255,255,.11);
}

.contact-board-head>div{
  min-width:0;
  display:grid;
  gap:var(--space-1);
}

.contact-board-head span:not(.c-badge){
  color:#aab6d3;
  font-family:var(--font-mono);
  font-size:var(--fs-0);
  letter-spacing:.08em;
  text-transform:uppercase;
}

.contact-board-head strong{
  color:#edf4ff;
  font-family:var(--font-heading);
  font-size:var(--fs-3);
  line-height:1.35;
}

.contact-route-row{
  padding:var(--space-3);
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:var(--space-2);
  align-items:center;
  border-bottom:1px solid rgba(255,255,255,.11);
}

.contact-route-index{
  width:2.25rem;
  height:2.25rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:var(--radius-sm);
  background:#239ce6;
  color:#080b21;
  font-family:var(--font-mono);
  font-size:var(--fs-1);
  font-weight:700;
}

.contact-route-copy{
  min-width:0;
  display:grid;
  gap:var(--space-1);
}

.contact-route-copy strong{
  color:#edf4ff;
  font-family:var(--font-heading);
  line-height:1.4;
}

.contact-route-copy span{
  color:#aab6d3;
  font-size:var(--fs-1);
  line-height:1.55;
}

.contact-route-target{
  padding:.5rem .7rem;
  border-radius:var(--radius-sm);
  background:#1d2a5b;
  color:#84d1ff;
  font-family:var(--font-mono);
  font-size:var(--fs-0);
  font-weight:700;
}

.contact-board-note{
  padding:var(--space-3);
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:var(--space-1);
  align-items:start;
  background:#0d1230;
  color:#edf4ff;
}

.contact-board-note svg{
  width:1.15rem;
  height:1.15rem;
  color:#74cbff;
}

.contact-board-note p{
  color:#aab6d3;
  font-size:var(--fs-1);
}

.contact-section-title{
  display:grid;
  gap:var(--space-1);
  min-width:0;
}

.contact-section-title p{
  max-width:48rem;
  color:#5b6780;
}

.contact-channel-section,
.contact-form-section,
.contact-self-service{
  background:#f4f8ff;
  color:#18223b;
}

.contact-category-section,
.contact-preparation-section{
  background:#eaf2ff;
  color:#18223b;
}

.contact-channel-grid{
  margin-top:var(--space-5);
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--space-3);
  align-items:start;
}

.contact-channel-card{
  min-width:0;
  padding:var(--space-4);
  display:flex;
  flex-direction:column;
  gap:var(--space-3);
  border-radius:var(--radius-lg);
  background:#fff;
  color:#18223b;
  box-shadow:var(--shadow-paper);
}

.contact-channel-card-dark{
  background:#172048;
  color:#edf4ff;
  box-shadow:none;
}

.contact-channel-icon{
  width:2.75rem;
  height:2.75rem;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:var(--radius-sm);
  background:#eaf2ff;
  color:#1269a5;
}

.contact-channel-card-dark .contact-channel-icon{
  background:#1d2a5b;
  color:#84d1ff;
}

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

.contact-card-heading{
  display:grid;
  gap:var(--space-1);
}

.contact-card-heading h3{
  color:inherit;
}

.contact-card-heading p{
  color:#5b6780;
}

.contact-channel-card-dark .contact-card-heading p{
  color:#aab6d3;
}

.contact-detail-list{
  margin:0;
  display:grid;
  gap:var(--space-2);
}

.contact-detail-list>div{
  min-width:0;
  padding-bottom:var(--space-2);
  display:grid;
  gap:var(--space-1);
  border-bottom:1px solid rgba(8,11,33,.12);
}

.contact-channel-card-dark .contact-detail-list>div{
  border-color:rgba(255,255,255,.11);
}

.contact-detail-list dt{
  color:#5b6780;
  font-family:var(--font-mono);
  font-size:var(--fs-0);
  letter-spacing:.06em;
  text-transform:uppercase;
}

.contact-channel-card-dark .contact-detail-list dt{
  color:#aab6d3;
}

.contact-detail-list dd{
  color:#18223b;
  overflow-wrap:anywhere;
}

.contact-channel-card-dark .contact-detail-list dd{
  color:#edf4ff;
}

.contact-detail-list a{
  color:#1269a5;
  font-weight:700;
}

.contact-channel-card-dark .contact-detail-list a{
  color:#74cbff;
}

.contact-channel-card>.c-btn{
  align-self:flex-start;
  margin-top:auto;
  padding-top:var(--space-3);
}

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

.contact-category-card{
  width:100%;
  min-width:0;
  padding:var(--space-3);
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:var(--space-2);
  border:1px solid rgba(31,56,103,.3);
  border-radius:var(--radius-md);
  background:#fff;
  color:#18223b;
  text-align:left;
  transition:transform .2s var(--ease),border-color .2s var(--ease),background-color .2s var(--ease);
}

.contact-category-card:hover{
  transform:translateY(-2px);
  border-color:#174fc4;
}

.contact-category-card.is-selected{
  border-color:#174fc4;
  background:#174fc4;
  color:#fff;
}

.contact-category-code{
  width:fit-content;
  max-width:100%;
  padding:.45rem .65rem;
  border-radius:var(--radius-sm);
  background:#eaf2ff;
  color:#1269a5;
  font-family:var(--font-mono);
  font-size:var(--fs-0);
  font-weight:700;
  line-height:1;
}

.contact-category-card.is-selected .contact-category-code{
  background:#fff;
  color:#080b21;
}

.contact-category-text{
  min-width:0;
  display:grid;
  gap:var(--space-1);
}

.contact-category-text strong{
  color:inherit;
  font-family:var(--font-heading);
  font-size:var(--fs-3);
  line-height:1.35;
}

.contact-category-text span{
  color:#5b6780;
  font-size:var(--fs-1);
  line-height:1.55;
}

.contact-category-card.is-selected .contact-category-text span{
  color:#edf4ff;
}

.contact-form-layout{
  margin-top:var(--space-5);
  align-items:stretch;
}

.contact-form-panel{
  min-width:0;
  padding:var(--space-4);
  border-radius:var(--radius-lg);
  background:#fff;
  color:#18223b;
  box-shadow:var(--shadow-paper);
}

.contact-form-intro{
  display:grid;
  gap:var(--space-1);
}

.contact-form-intro p{
  color:#5b6780;
}

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

.contact-form-grid .c-field{
  gap:var(--space-1);
}

.contact-form-grid small{
  color:#5b6780;
  overflow-wrap:anywhere;
}

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

.contact-sensitive-note{
  margin-top:var(--space-3);
  padding:var(--space-3);
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:var(--space-1);
  align-items:start;
  border-radius:var(--radius-md);
  background:#eaf2ff;
  color:#18223b;
}

.contact-sensitive-note svg{
  width:1.15rem;
  height:1.15rem;
  color:#1269a5;
}

.contact-sensitive-note p{
  color:#5b6780;
  font-size:var(--fs-1);
}

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

.contact-form-actions .c-btn-ghost{
  color:#18223b;
  border-color:rgba(31,56,103,.3);
}

.contact-form-status{
  min-height:1.6em;
  margin-top:var(--space-2);
  color:#1269a5;
  font-size:var(--fs-1);
  font-weight:650;
}

.contact-form-side{
  min-height:100%;
  display:flex;
  flex-direction:column;
  height:100%;
}

.contact-form-side .contact-context-card{
  flex:1;
}

.contact-context-card{
  min-width:0;
  padding:var(--space-4);
  display:flex;
  flex-direction:column;
  gap:var(--space-3);
  border-radius:var(--radius-lg);
  background:#eaf2ff;
  color:#18223b;
}

.contact-context-card-dark{
  background:#111838;
  color:#edf4ff;
}

.contact-context-heading{
  display:grid;
  gap:var(--space-1);
}

.contact-context-code{
  width:fit-content;
  max-width:100%;
  padding:.45rem .7rem;
  align-self:flex-start;
  border-radius:var(--radius-sm);
  background:#174fc4;
  color:#fff;
  font-family:var(--font-mono);
  font-size:var(--fs-0);
  font-weight:700;
  line-height:1;
  letter-spacing:.08em;
}

.contact-context-card-dark .contact-context-code{
  background:#239ce6;
  color:#080b21;
}

.contact-context-card ul{
  color:#5b6780;
}

.contact-context-card-dark ul{
  color:#aab6d3;
}

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

.contact-context-card>.c-btn{
  align-self:flex-start;
  margin-top:auto;
  padding-top:var(--space-3);
}

.contact-preparation-grid{
  margin-top:var(--space-5);
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--space-3);
  align-items:stretch;
}

.contact-preparation-card{
  min-width:0;
  padding:var(--space-4);
  border-radius:var(--radius-lg);
  background:#fff;
  color:#18223b;
  box-shadow:var(--shadow-paper);
}

.contact-preparation-card-dark{
  display:flex;
  flex-direction:column;
  background:#172048;
  color:#edf4ff;
  box-shadow:none;
}

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

.contact-preparation-head>div{
  min-width:0;
  display:grid;
  gap:var(--space-1);
}

.contact-preparation-head p{
  color:#5b6780;
}

.contact-preparation-card-dark .contact-preparation-head p{
  color:#aab6d3;
}

.contact-preparation-number{
  width:fit-content;
  max-width:100%;
  padding:.55rem .75rem;
  border-radius:var(--radius-sm);
  background:#174fc4;
  color:#fff;
  font-family:var(--font-mono);
  font-size:var(--fs-0);
  font-weight:700;
}

.contact-preparation-card-dark .contact-preparation-number{
  background:#239ce6;
  color:#080b21;
}

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

.contact-check-item{
  min-width:0;
  padding:var(--space-3);
  display:grid;
  gap:var(--space-1);
  border-radius:var(--radius-md);
  background:#eaf2ff;
  color:#18223b;
}

.contact-check-item strong{
  color:#1269a5;
  font-family:var(--font-heading);
}

.contact-check-item span{
  color:#5b6780;
  font-size:var(--fs-1);
  line-height:1.55;
}

.contact-billing-ledger{
  margin-top:var(--space-4);
  display:grid;
}

.contact-billing-ledger>div{
  min-width:0;
  padding-block:var(--space-2);
  display:grid;
  grid-template-columns:minmax(7rem,.35fr) minmax(0,1fr);
  gap:var(--space-2);
  border-bottom:1px solid rgba(255,255,255,.11);
}

.contact-billing-ledger span{
  color:#aab6d3;
  font-family:var(--font-mono);
  font-size:var(--fs-1);
}

.contact-billing-ledger strong{
  color:#edf4ff;
  font-size:var(--fs-1);
  line-height:1.55;
  overflow-wrap:anywhere;
}

.contact-billing-warning{
  margin-top:auto;
  padding:var(--space-3);
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:var(--space-1);
  align-items:start;
  border-radius:var(--radius-md);
  background:#0d1230;
  color:#edf4ff;
}

.contact-billing-warning svg{
  width:1.2rem;
  height:1.2rem;
  color:#74cbff;
}

.contact-billing-warning p{
  color:#aab6d3;
  font-size:var(--fs-1);
}

.contact-resource-grid{
  margin-top:var(--space-5);
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--space-3);
  align-items:start;
}

.contact-resource-card{
  min-width:0;
  padding:var(--space-3);
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:var(--space-2);
  align-items:center;
  border-radius:var(--radius-lg);
  background:#fff;
  color:#18223b;
  box-shadow:var(--shadow-paper);
  transition:transform .2s var(--ease),background-color .2s var(--ease);
}

.contact-resource-card:hover{
  transform:translateY(-2px);
  background:#eaf2ff;
}

.contact-resource-card-dark{
  background:#172048;
  color:#edf4ff;
  box-shadow:none;
}

.contact-resource-card-dark:hover{
  background:#111838;
}

.contact-resource-icon{
  width:2.75rem;
  height:2.75rem;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:var(--radius-sm);
  background:#eaf2ff;
  color:#1269a5;
}

.contact-resource-card-dark .contact-resource-icon{
  background:#1d2a5b;
  color:#84d1ff;
}

.contact-resource-icon svg{
  width:1.3rem;
  height:1.3rem;
}

.contact-resource-copy{
  min-width:0;
  display:grid;
  gap:var(--space-1);
}

.contact-resource-copy strong{
  color:inherit;
  font-family:var(--font-heading);
  font-size:var(--fs-3);
}

.contact-resource-copy span{
  color:#5b6780;
  font-size:var(--fs-1);
  line-height:1.55;
}

.contact-resource-card-dark .contact-resource-copy span{
  color:#aab6d3;
}

.contact-resource-arrow{
  width:1.2rem;
  height:1.2rem;
  color:#1269a5;
}

.contact-resource-card-dark .contact-resource-arrow{
  color:#74cbff;
}

.contact-final{
  padding-block:var(--space-6);
  background:#0d1230;
  color:#edf4ff;
}

.contact-final-inner{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(16rem,.38fr);
  gap:var(--space-5);
  align-items:center;
}

.contact-final-copy{
  min-width:0;
  display:grid;
  gap:var(--space-1);
}

.contact-final-copy h2{
  max-width:23ch;
  color:#edf4ff;
}

.contact-final-copy p{
  max-width:45rem;
  color:#aab6d3;
}

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

.contact-final-actions .c-btn{
  width:100%;
  overflow-wrap:anywhere;
}

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

  .contact-heading h1{
    max-width:16ch;
  }

  .contact-channel-grid,
  .contact-preparation-grid,
  .contact-resource-grid{
    grid-template-columns:1fr;
  }

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

  .contact-final-actions{
    max-width:28rem;
  }
}

@media(max-width:48rem){
  .contact-form-grid{
    grid-template-columns:1fr;
  }

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

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

  .contact-fact + .contact-fact{
    border-left:0;
    border-top:1px solid rgba(255,255,255,.11);
  }

  .contact-board-head{
    flex-direction:column;
  }

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

  .contact-route-target{
    grid-column:2;
    justify-self:start;
  }
}

@media(max-width:40rem){
  .contact-hero{
    padding-bottom:var(--space-6);
  }

  .contact-heading h1{
    max-width:none;
  }

  .contact-heading p{
    font-size:var(--fs-2);
  }

  .contact-channel-card,
  .contact-form-panel,
  .contact-context-card,
  .contact-preparation-card{
    padding:var(--space-3);
  }

  .contact-form-actions{
    align-items:stretch;
  }

  .contact-form-actions .c-btn,
  .contact-channel-card>.c-btn,
  .contact-context-card>.c-btn{
    width:100%;
  }

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

  .contact-billing-ledger>div{
    grid-template-columns:1fr;
    gap:var(--space-1);
  }

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

  .contact-resource-arrow{
    grid-column:2;
  }

  .contact-final-actions{
    max-width:none;
  }
}

@media(max-width:24rem){
  .contact-route-row,
  .contact-board-note,
  .contact-sensitive-note,
  .contact-billing-warning{
    grid-template-columns:1fr;
  }

  .contact-route-target{
    grid-column:auto;
  }

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

  .contact-resource-arrow{
    grid-column:auto;
  }
}

.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)}
