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

.contact-hero__grid{
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(22rem,1.08fr);
  gap:var(--space-5);
  align-items:start;
}

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

.contact-hero__copy{
  display:grid;
  gap:var(--space-3);
  min-width:0;
}

.contact-hero__copy .c-breadcrumb{
  margin-block-end:var(--space-2);
}

.contact-hero__heading{
  display:grid;
  gap:.75rem;
}

.contact-hero__heading .p-kicker,
.contact-section-title .p-kicker,
.contact-close__copy .p-kicker{
  width:fit-content;
  max-width:100%;
  align-self:flex-start;
}

.contact-hero__summary{
  display:grid;
  gap:var(--space-1);
  max-width:43rem;
  color:var(--muted);
}

.contact-hero__summary a{
  color:var(--green-deep);
  font-weight:750;
  overflow-wrap:anywhere;
}

.contact-hero__facts{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--space-2);
  padding-block-start:var(--space-2);
  border-block-start:1px solid var(--line);
}

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

.contact-hero__facts dt{
  color:var(--green-deep);
  font-family:var(--font-mono);
  font-size:var(--text-xs);
  font-weight:750;
}

.contact-hero__facts dd{
  color:var(--muted);
  font-size:var(--text-sm);
}

.contact-dispatch{
  min-width:0;
  overflow:hidden;
  border-radius:var(--radius-xl);
  background:var(--ink);
  color:var(--paper);
  box-shadow:var(--shadow-soft);
}

.contact-dispatch__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:var(--space-2);
  padding:var(--space-3);
  background:var(--dark-card);
  color:var(--paper);
}

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

.contact-dispatch__head span{
  color:#aaa69b;
  font-family:var(--font-mono);
  font-size:var(--text-xs);
}

.contact-dispatch__head strong{
  font-family:var(--font-heading);
  font-size:var(--text-xl);
  font-weight:500;
}

.contact-dispatch__body{
  display:grid;
  padding:var(--space-2);
}

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

.contact-dispatch__route>span:first-child{
  color:#8ee49a;
  font-size:var(--text-xs);
}

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

.contact-dispatch__route strong{
  color:var(--paper);
  font-size:var(--text-sm);
}

.contact-dispatch__route small{
  color:#aaa69b;
  font-size:var(--text-xs);
  overflow-wrap:anywhere;
}

.contact-dispatch__route>span:last-child{
  width:fit-content;
  padding:.3rem .55rem;
  border-radius:var(--radius-pill);
  background:var(--green-deep);
  color:#b9efbf;
  font-size:var(--text-xs);
  font-weight:750;
}

.contact-dispatch__foot{
  display:grid;
  gap:var(--space-1);
  padding:var(--space-3);
  background:var(--green-pale);
  color:var(--green-deep);
}

.contact-dispatch__foot span{
  font-family:var(--font-mono);
  font-size:var(--text-xs);
}

.contact-dispatch__foot strong{
  font-size:var(--text-sm);
}

.contact-section-title{
  display:grid;
  gap:.75rem;
  min-width:0;
}

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

.contact-channel-card{
  display:flex;
  flex-direction:column;
  gap:var(--space-2);
  min-width:0;
  background:var(--white);
  color:var(--ink);
}

.contact-channel-card--guide{
  background:var(--green-pale);
  color:var(--green-deep);
}

.contact-channel-card--guide .contact-card-copy p,
.contact-channel-card--guide .contact-compact-list{
  color:var(--green-deep);
}

.contact-card-icon{
  display:grid;
  width:2.75rem;
  height:2.75rem;
  place-items:center;
  flex:none;
  border-radius:var(--radius-sm);
  background:var(--green-pale);
  color:var(--green-deep);
}

.contact-channel-card--guide .contact-card-icon{
  background:var(--white);
  color:var(--green-deep);
}

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

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

.contact-card-copy p{
  color:var(--muted);
}

.contact-channel-card__meta{
  display:grid;
  gap:var(--space-1);
  padding:var(--space-2);
  border-radius:var(--radius-sm);
  background:var(--surface);
  color:var(--ink);
}

.contact-channel-card__meta span{
  color:var(--muted);
  font-family:var(--font-mono);
  font-size:var(--text-xs);
}

.contact-channel-card__meta a,
.contact-channel-card__meta strong{
  color:var(--green-deep);
  font-size:var(--text-sm);
  overflow-wrap:anywhere;
}

.contact-channel-card__response{
  color:var(--muted);
  font-size:var(--text-sm);
}

.contact-channel-card .c-actions{
  margin-block-start:auto;
}

.contact-compact-list{
  display:grid;
  gap:var(--space-1);
  padding-inline-start:1.15rem;
  color:var(--muted);
  font-size:var(--text-sm);
}

.contact-form-layout{
  grid-template-columns:minmax(0,1.3fr) minmax(20rem,.7fr);
  align-items:start;
}

.contact-form{
  overflow:hidden;
  border-radius:var(--radius-xl);
  background:var(--surface);
  color:var(--ink);
}

.contact-form__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:var(--space-2);
  padding:var(--space-3);
  background:var(--green-deep);
  color:var(--white);
}

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

.contact-form__head span{
  color:#c0d7c5;
  font-family:var(--font-mono);
  font-size:var(--text-xs);
}

.contact-form__head h3{
  color:var(--white);
}

.contact-form__content{
  display:grid;
  gap:var(--space-3);
  padding:var(--space-3);
  background:var(--surface);
  color:var(--ink);
}

.contact-native-control{
  appearance:none;
  padding-inline-end:2.75rem;
}

input[type="number"].contact-native-control{
  appearance:textfield;
}

input[type="number"].contact-native-control::-webkit-inner-spin-button,
input[type="number"].contact-native-control::-webkit-outer-spin-button{
  appearance:none;
  margin:0;
}

.contact-fieldset{
  display:grid;
  gap:var(--space-1);
  min-width:0;
  margin:0;
  padding:0;
  border:0;
}

.contact-fieldset legend{
  margin-block-end:var(--space-1);
  padding:0;
  font-size:var(--text-sm);
  font-weight:700;
}

.contact-plan-options{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--space-1);
}

.contact-plan-option{
  display:flex;
  align-items:flex-start;
  gap:var(--space-1);
  min-width:0;
  padding:var(--space-2);
  border:1px solid var(--line-strong);
  border-radius:var(--radius-md);
  background:var(--white);
  color:var(--ink);
  cursor:pointer;
}

.contact-plan-option:has(input:checked){
  border-color:var(--green);
  background:var(--green-pale);
  color:var(--green-deep);
}

.contact-plan-option input{
  width:1.05rem;
  height:1.05rem;
  margin:.2rem 0 0;
  flex:none;
  accent-color:var(--green);
}

.contact-plan-option span{
  display:grid;
  gap:var(--space-1);
  min-width:0;
}

.contact-plan-option strong{
  font-size:var(--text-sm);
}

.contact-plan-option small{
  color:var(--muted);
  font-size:var(--text-xs);
  overflow-wrap:anywhere;
}

.contact-plan-option:has(input:checked) small{
  color:var(--green-deep);
}

.contact-addon-options{
  grid-template-columns:repeat(2,minmax(0,1fr));
  padding:var(--space-2);
  border-radius:var(--radius-md);
  background:var(--white);
  color:var(--ink);
}

.contact-form__status{
  min-height:1.5rem;
  color:var(--green-deep);
  font-size:var(--text-sm);
  font-weight:700;
}

.contact-form__status.is-error{
  color:#8f2424;
}

.contact-form-side{
  grid-auto-rows:auto;
  align-content:start;
}

.contact-side-card{
  display:flex;
  flex-direction:column;
  gap:var(--space-2);
  min-width:0;
  background:var(--white);
  color:var(--ink);
}

.contact-side-card--billing{
  background:var(--surface-deep);
  color:var(--ink);
}

.contact-side-card--security{
  background:var(--ink);
  color:var(--paper);
}

.contact-side-card--security .contact-card-icon{
  background:var(--dark-card-2);
  color:#b9efbf;
}

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

.contact-side-card p{
  color:var(--muted);
}

.contact-side-card--security p{
  color:#aaa69b;
}

.contact-side-card ul{
  display:grid;
  gap:var(--space-1);
  padding-inline-start:1.15rem;
  color:var(--muted);
  font-size:var(--text-sm);
}

.contact-side-card--security ul{
  color:#d1cec4;
}

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

.contact-evidence .p-section__head p{
  color:#aaa69b;
}

.contact-evidence .p-kicker{
  color:#b9efbf;
}

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

.contact-evidence-card{
  display:grid;
  gap:var(--space-1);
  min-width:0;
  padding:var(--space-3);
  border-radius:var(--radius-lg);
  background:var(--dark-card);
  color:var(--paper);
}

.contact-evidence-card>span{
  color:#8ee49a;
  font-size:var(--text-xs);
}

.contact-evidence-card h3{
  color:var(--paper);
}

.contact-evidence-card p{
  color:#aaa69b;
}

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

.contact-after-step{
  display:grid;
  gap:var(--space-2);
  min-width:0;
  padding:var(--space-3);
  border-radius:var(--radius-lg);
  background:var(--surface);
  color:var(--ink);
}

.contact-after-step>span{
  width:fit-content;
  color:var(--green-deep);
  font-size:var(--text-xs);
  font-weight:750;
}

.contact-after-step>div{
  display:grid;
  gap:var(--space-1);
}

.contact-after-step p{
  color:var(--muted);
}

.contact-after__note{
  margin-block-start:var(--space-3);
}

.contact-after__note p{
  color:var(--green-deep);
}

.contact-close{
  padding-block:var(--space-5);
  background:var(--ink);
  color:var(--paper);
}

.contact-close__inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--space-4);
  padding:var(--space-4);
  border-radius:var(--radius-xl);
  background:var(--dark-card);
  color:var(--paper);
}

.contact-close__copy{
  display:grid;
  gap:.75rem;
  max-width:45rem;
  min-width:0;
}

.contact-close__copy .p-kicker{
  color:#8ee49a;
}

.contact-close__copy h2{
  color:var(--paper);
}

.contact-close__copy p{
  color:#aaa69b;
}

.contact-close__actions{
  display:grid;
  gap:var(--space-1);
  flex:none;
  min-width:min(100%,15rem);
}

.contact-close__actions .c-btn--ghost{
  border-color:var(--line-inverse);
  color:var(--paper);
}

.contact-close__actions .c-btn--ghost:hover{
  border-color:#8ee49a;
  background:var(--green-deep);
  color:var(--white);
}

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

  .contact-channel-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .contact-channel-card--guide{
    grid-column:1/-1;
  }

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

  .contact-form-side{
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-auto-rows:auto;
  }

  .contact-evidence-grid,
  .contact-after-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

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

  .contact-hero__facts,
  .contact-channel-grid,
  .contact-plan-options,
  .contact-addon-options,
  .contact-form-side,
  .contact-evidence-grid,
  .contact-after-grid{
    grid-template-columns:1fr;
  }

  .contact-channel-card--guide{
    grid-column:auto;
  }

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

  .contact-dispatch__route>span:last-child{
    grid-column:2;
  }

  .contact-form__head{
    flex-direction:column;
  }

  .contact-close__inner{
    align-items:flex-start;
    flex-direction:column;
    padding:var(--space-3);
  }

  .contact-close__actions{
    width:100%;
  }

  .contact-close__actions .c-btn{
    width:100%;
  }
}

@media (max-width:24.375rem){
  .contact-dispatch__head{
    flex-direction:column;
  }

  .contact-form__content,
  .contact-form__head,
  .contact-evidence-card,
  .contact-after-step{
    padding:var(--space-2);
  }

  .contact-plan-option{
    padding:var(--space-1);
  }
}

.contact-date{
  display:grid;
  gap:.45rem;
  min-width:0;
}
.contact-date__parts{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:.5rem;
}
.contact-date label{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:.3rem;
  color:var(--ink);
  font-size:var(--text-xs);
  font-weight:700;
}
.contact-date select{
  width:100%;
  min-width:0;
}
