.ct-contact-hero{
  padding-block:var(--sm-hero-pad);
  background:#090b0a;
  color:#faf7f2;
}

.ct-contact-hero__grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,.96fr);
  align-items:start;
  gap:var(--sm-space-5);
}

.ct-contact-hero__copy{
  min-width:0;
  align-self:start;
}

.ct-contact-hero__copy h1{
  max-width:15ch;
  color:#faf7f2;
  font-size:clamp(2.65rem,4.5vw,3.55rem);
  line-height:1.16;
  overflow-wrap:anywhere;
}

.ct-contact-hero__copy>p{
  max-width:42rem;
  margin-top:var(--sm-space-2);
  color:#b9bbb7;
  font-size:var(--sm-text-lg);
}

.ct-contact-hero__actions{
  justify-content:flex-start;
  margin-block:var(--sm-space-3);
}

.ct-contact-hero__facts{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  margin:0 0 var(--sm-space-3);
  border-top:1px solid rgba(255,255,255,.12);
  border-bottom:1px solid rgba(255,255,255,.12);
}

.ct-contact-hero__facts div{
  min-width:0;
  padding:var(--sm-space-2);
}

.ct-contact-hero__facts div+div{
  border-left:1px solid rgba(255,255,255,.12);
}

.ct-contact-hero__facts dt,
.ct-contact-hero__facts dd{
  min-width:0;
  overflow-wrap:anywhere;
}

.ct-contact-hero__facts dt{
  color:#929690;
  font-size:var(--sm-text-xs);
}

.ct-contact-hero__facts dd{
  margin-top:.5rem;
  color:#f7f3ee;
  font-size:var(--sm-text-sm);
}

.ct-contact-stage{
  min-width:0;
  height:auto;
  overflow:visible;
  align-self:start;
  text-align:left;
}

.ct-stage-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:start;
  gap:var(--sm-space-2);
  min-width:0;
}

.ct-stage-card{
  min-width:0;
  padding:var(--sm-space-3);
  border-radius:var(--sm-radius-md);
}

.ct-stage-card--clay{
  grid-column:1/-1;
  background:#e7c7b8;
  color:#241b18;
}

.ct-stage-card--blue{
  background:#c9d7e5;
  color:#17202a;
}

.ct-stage-card--wheat{
  margin-top:var(--sm-space-3);
  background:#e5d7a1;
  color:#201d12;
}

.ct-stage-card--violet{
  grid-column:1/-1;
  background:#25212b;
  color:#f7f3ee;
}

.ct-stage-card p{
  margin-top:.5rem;
  color:inherit;
  opacity:.78;
}

.ct-stage-card__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:var(--sm-space-2);
  padding-bottom:var(--sm-space-2);
  border-bottom:1px solid rgba(36,27,24,.16);
}

.ct-stage-card__head span{
  font-family:var(--sm-font-mono);
  font-size:var(--sm-text-xs);
  letter-spacing:.08em;
}

.ct-stage-card__head strong{
  text-align:right;
}

.ct-route-list{
  display:grid;
}

.ct-route-row{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:var(--sm-space-2);
  min-width:0;
  padding-block:var(--sm-space-2);
  border-bottom:1px solid rgba(36,27,24,.14);
}

.ct-route-row:last-child{
  border-bottom:0;
}

.ct-route-row>div,
.ct-route-row strong,
.ct-route-row small{
  min-width:0;
  overflow-wrap:anywhere;
}

.ct-route-row small{
  display:block;
  margin-top:.25rem;
  color:#5f4a43;
}

.ct-route-code,
.ct-route-output,
.ct-stage-label{
  font-family:var(--sm-font-mono);
  font-size:var(--sm-text-xs);
}

.ct-route-code{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:2rem;
  height:2rem;
  border-radius:50%;
  background:#075f2b;
  color:#fff;
}

.ct-route-output{
  padding:.35rem .65rem;
  border-radius:var(--sm-radius-pill);
  background:rgba(36,27,24,.09);
  color:#241b18;
  white-space:nowrap;
}

.ct-stage-label{
  display:block;
  margin-bottom:.5rem;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.ct-stage-metric{
  display:block;
  font-family:var(--sm-font-mono);
  font-size:clamp(1.75rem,5cqi,2.5rem);
  font-variant-numeric:tabular-nums;
  line-height:1.1;
  overflow-wrap:anywhere;
}

.ct-section-head{
  max-width:52rem;
  margin-bottom:var(--sm-space-4);
}

.ct-section-head h2{
  overflow-wrap:anywhere;
}

.ct-section-head h2+p{
  margin-top:.5rem;
}

.surface-paper .ct-section-head{
  color:#090b0a;
}

.surface-paper .ct-section-head p{
  color:#555b56;
}

.surface-ink .ct-section-head{
  color:#faf7f2;
}

.surface-ink .ct-section-head p{
  color:#b5b7b3;
}

.ct-form-layout{
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(0,.72fr);
  align-items:stretch;
  gap:var(--sm-space-3);
  min-width:0;
}

.ct-form-panel{
  min-width:0;
  overflow:hidden;
  border-radius:var(--sm-radius-lg);
  background:#faf7f2;
  color:#090b0a;
}

.ct-form-panel__header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--sm-space-3);
  padding:var(--sm-space-3) var(--sm-space-4);
  background:#c9d7e5;
  color:#17202a;
}

.ct-form-panel__header>div{
  min-width:0;
}

.ct-form-panel__header h3{
  margin-top:.5rem;
  color:#17202a;
}

.ct-panel-index{
  font-family:var(--sm-font-mono);
  font-size:var(--sm-text-xs);
  letter-spacing:.08em;
}

.ct-form-panel__header .c-badge{
  flex:0 0 auto;
  background:#075f2b;
  color:#fff;
}

.ct-field-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  padding:var(--sm-space-4);
}

.ct-field{
  min-width:0;
  display:grid;
  align-content:start;
  gap:.5rem;
  margin:0;
  padding:0;
  border:0;
}

.ct-field--full{
  grid-column:1/-1;
}

.ct-field > label,
.ct-field legend{
  min-width:0;
  padding:0;
  color:inherit;
  font-size:var(--sm-text-sm);
  font-weight:700;
  overflow-wrap:anywhere;
}

.ct-field__hint{
  color:#5b615c;
  font-size:var(--sm-text-xs);
  line-height:1.5;
}

.ct-choice-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:stretch;
  gap:var(--sm-space-2);
  min-width:0;
}

.ct-choice-grid--two{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.ct-choice-grid--four{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

label.ct-choice,
.ct-choice{
  display:flex;
  align-items:flex-start;
  gap:.85rem;
  min-width:0;
  padding:var(--sm-space-3);
  border:1px solid transparent;
  border-radius:var(--sm-radius-md);
  background:#eeeae4;
  color:#090b0a;
  cursor:pointer;
}

.ct-choice input{
  appearance:none;
  flex:0 0 auto;
  width:1.15rem;
  height:1.15rem;
  margin:0;
  border:1.5px solid #6b716c;
  border-radius:50%;
  background:#faf7f2;
}

.ct-choice input:checked{
  border-color:#075f2b;
  background:radial-gradient(circle at center,#075f2b 0 38%,#faf7f2 41%);
}

.ct-choice span,
.ct-choice strong,
.ct-choice small{
  min-width:0;
  overflow-wrap:break-word;
}

.ct-choice strong{
  display:block;
}

.ct-choice small{
  display:block;
  margin-top:.25rem;
  color:#555b56;
}

.ct-choice:has(input:checked){
  background:#c9d7e5;
  color:#17202a;
  box-shadow:inset 0 0 0 2px #075f2b;
}

.ct-choice:has(input:focus-visible){
  outline:3px solid rgba(57,148,71,.35);
  outline-offset:2px;
}

.ct-inline-options{
  display:flex;
  flex-wrap:wrap;
  gap:.5rem;
}

.ct-inline-options label{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  padding:.55rem .75rem;
  border:1px solid rgba(9,11,10,.22);
  border-radius:var(--sm-radius-pill);
  background:#faf7f2;
  color:#090b0a;
  cursor:pointer;
}

.ct-inline-options input{
  appearance:none;
  width:.95rem;
  height:.95rem;
  margin:0;
  border:1.5px solid #6b716c;
  border-radius:50%;
  background:#faf7f2;
}

.ct-inline-options input:checked{
  border-color:#075f2b;
  background:radial-gradient(circle at center,#075f2b 0 38%,#faf7f2 41%);
}

.ct-inline-options label:has(input:checked){
  background:#075f2b;
  color:#fff;
  border-color:#075f2b;
}

.ct-inline-options label:has(input:checked) input{
  border-color:#fff;
  background:radial-gradient(circle at center,#fff 0 38%,#075f2b 41%);
}

.ct-routing-column{
  display:grid;
  grid-template-rows:auto;
  align-items:start;
  gap:var(--sm-space-3);
  min-width:0;
}

.ct-routing-card{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  align-self:start;
  height:auto;
  min-width:0;
  padding:var(--sm-space-3);
  border-radius:var(--sm-radius-lg);
}

.ct-routing-card--blue{
  background:#c9d7e5;
  color:#17202a;
}

.ct-routing-card--violet{
  background:#25212b;
  color:#f7f3ee;
}

.ct-routing-card__icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:2.75rem;
  height:2.75rem;
  margin-bottom:var(--sm-space-2);
  border-radius:var(--sm-radius-sm);
}

.ct-routing-card--blue .ct-routing-card__icon{
  background:#075f2b;
  color:#fff;
}

.ct-routing-card--violet .ct-routing-card__icon{
  background:#e5d7a1;
  color:#201d12;
}

.ct-routing-card__icon svg{
  width:1.25rem;
  height:1.25rem;
}

.ct-routing-card h3{
  color:inherit;
  font-size:var(--sm-text-xl);
}

.ct-routing-card h3+p{
  margin-top:.5rem;
  color:inherit;
  opacity:.78;
}

.ct-routing-card dl{
  width:100%;
  margin:var(--sm-space-3) 0 0;
}

.ct-routing-card dl div{
  min-width:0;
  padding-block:.8rem;
  border-top:1px solid color-mix(in srgb,currentColor 17%,transparent);
}

.ct-routing-card dt,
.ct-routing-card dd{
  min-width:0;
  overflow-wrap:anywhere;
}

.ct-routing-card dd{
  margin-top:.25rem;
  color:inherit;
  font-size:var(--sm-text-sm);
  opacity:.8;
}

.ct-routing-card .c-btn{
  width:100%;
  margin-top:var(--sm-space-3);
}

.ct-routing-card dl+.c-btn{
  margin-top:var(--sm-space-3);
}

.ct-routing-card--violet .c-btn-ghost{
  background:rgba(255,255,255,.04);
  color:#f7f3ee;
  border-color:rgba(255,255,255,.32);
}

.ct-workflow-section{
  background:#151715;
  color:#faf7f2;
}

.ct-workflow-board{
  min-width:0;
  padding:var(--sm-space-4);
  border-radius:var(--sm-radius-lg);
  background:#181a19;
  color:#f7f3ee;
}

.ct-workflow-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));
  align-items:start;
  gap:var(--sm-space-2);
}

.ct-workflow-choice{
  display:flex;
  align-items:flex-start;
  gap:.75rem;
  min-width:0;
  padding:var(--sm-space-3);
  border:1px solid rgba(255,255,255,.14);
  border-radius:var(--sm-radius-md);
  background:#25212b;
  color:#f7f3ee;
  cursor:pointer;
}

.ct-workflow-choice input{
  position:absolute;
  width:1px;
  height:1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
}

.ct-workflow-choice__mark{
  display:inline-flex;
  flex:0 0 2.5rem;
  align-items:center;
  justify-content:center;
  width:2.5rem;
  height:2.5rem;
  border-radius:var(--sm-radius-sm);
  background:#e5d7a1;
  color:#201d12;
}

.ct-workflow-choice__mark svg{
  width:1.25rem;
  height:1.25rem;
}

.ct-workflow-choice>span:last-child,
.ct-workflow-choice strong,
.ct-workflow-choice small{
  min-width:0;
  overflow-wrap:anywhere;
}

.ct-workflow-choice strong{
  display:block;
}

.ct-workflow-choice small{
  display:block;
  margin-top:.25rem;
  color:#c7c4ca;
}

.ct-workflow-choice:has(input:checked){
  background:#075f2b;
  color:#fff;
  border-color:#399447;
}

.ct-workflow-choice:has(input:checked) small{
  color:#d7eadb;
}

.ct-workflow-choice:has(input:focus-visible){
  outline:3px solid rgba(57,148,71,.5);
  outline-offset:3px;
}

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

.ct-toolchain-grid .ct-field{
  color:#f7f3ee;
}

.ct-confirm{
  display:flex;
  align-items:flex-start;
  gap:.75rem;
  margin-top:var(--sm-space-3);
  color:#d7d8d4;
  cursor:pointer;
}

.ct-confirm input{
  flex:0 0 auto;
  width:1.1rem;
  height:1.1rem;
  margin:.25rem 0 0;
  accent-color:#399447;
}

.ct-confirm span{
  min-width:0;
  overflow-wrap:anywhere;
}

.ct-form-actions{
  justify-content:flex-start;
  margin-top:var(--sm-space-3);
}

.ct-form-actions .c-btn-ghost{
  background:rgba(255,255,255,.04);
  color:#f7f3ee;
  border-color:rgba(255,255,255,.32);
}

.ct-form-status{
  min-height:1.5rem;
  margin-top:var(--sm-space-2);
  color:#b9dabe;
  font-size:var(--sm-text-sm);
}

.ct-readiness-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:start;
}

.ct-readiness-card{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  min-width:0;
  padding:var(--sm-space-3);
}

.ct-readiness-card--blue{
  background:#c9d7e5;
  color:#17202a;
}

.ct-readiness-card--clay{
  background:#e7c7b8;
  color:#241b18;
}

.ct-readiness-card--wheat{
  background:#e5d7a1;
  color:#201d12;
}

.ct-readiness-card--violet{
  background:#25212b;
  color:#f7f3ee;
}

.ct-readiness-card__number{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:2.5rem;
  height:2.5rem;
  margin-bottom:var(--sm-space-2);
  border-radius:50%;
  background:#075f2b;
  color:#fff;
  font-family:var(--sm-font-mono);
  font-size:var(--sm-text-sm);
}

.ct-readiness-card--violet .ct-readiness-card__number{
  background:#e5d7a1;
  color:#201d12;
}

.ct-readiness-card h3{
  color:inherit;
  font-size:var(--sm-text-xl);
}

.ct-readiness-card h3+p{
  margin-top:.5rem;
  color:inherit;
  opacity:.78;
}

.ct-security-note{
  margin-top:var(--sm-space-4);
  background:#c9d7e5;
  color:#17202a;
}

.ct-security-note strong{
  display:block;
}

.ct-security-note strong+p{
  margin-top:.5rem;
  color:#31404d;
}

.ct-payment-section{
  background:#25212b;
  color:#f7f3ee;
}

.ct-payment-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,.82fr);
  align-items:start;
  gap:var(--sm-space-5);
}

.ct-payment-section .ct-section-head{
  margin-bottom:0;
  color:#f7f3ee;
}

.ct-payment-section .ct-section-head p{
  color:#c7c4ca;
}

.ct-payment-section .c-kicker{
  background:#e5d7a1;
  color:#201d12;
}

.ct-payment-section .c-kicker::before{
  background:#075f2b;
}

.ct-payment-register{
  overflow:hidden;
  border-radius:var(--sm-radius-lg);
  background:#e5d7a1;
  color:#201d12;
}

.ct-payment-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);
  align-items:start;
  gap:var(--sm-space-2);
  min-width:0;
  padding:var(--sm-space-3);
  border-bottom:1px solid rgba(32,29,18,.16);
}

.ct-payment-row:last-child{
  border-bottom:0;
}

.ct-payment-row span,
.ct-payment-row strong{
  min-width:0;
  overflow-wrap:anywhere;
}

.ct-payment-row span{
  color:#5c5532;
  font-size:var(--sm-text-sm);
}

.ct-payment-row strong{
  font-family:var(--sm-font-mono);
  font-size:var(--sm-text-sm);
}

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

.ct-next-card{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  min-width:0;
  padding:var(--sm-space-3);
  border-radius:var(--sm-radius-lg);
}

.ct-next-card--blue{
  background:#c9d7e5;
  color:#17202a;
}

.ct-next-card--clay{
  background:#e7c7b8;
  color:#241b18;
}

.ct-next-card--wheat{
  background:#e5d7a1;
  color:#201d12;
}

.ct-next-card .c-badge{
  align-self:flex-start;
  background:#075f2b;
  color:#fff;
}

.ct-next-card .c-badge+h2{
  margin-top:var(--sm-space-2);
}

.ct-next-card h2{
  color:inherit;
  font-size:clamp(1.65rem,3cqi,2.1rem);
  overflow-wrap:anywhere;
}

.ct-next-card h2+p{
  margin-top:.5rem;
  color:inherit;
  opacity:.78;
}

.ct-next-card p+.c-btn{
  margin-top:var(--sm-space-3);
}

.ct-closing-section{
  padding:0 0 var(--sm-space-4);
  background:#f6f3ee;
  color:#090b0a;
}

.ct-closing{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:var(--sm-space-4);
  padding:var(--sm-space-5);
  border-radius:var(--sm-radius-lg);
  background:#151715;
  color:#f7f3ee;
}

.ct-closing h2{
  max-width:18ch;
  color:#f7f3ee;
  font-size:clamp(2rem,3.4vw,3rem);
  overflow-wrap:anywhere;
}

.ct-closing h2+p{
  max-width:48rem;
  margin-top:.5rem;
  color:#b5b7b3;
}

.ct-closing__actions{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:.75rem;
  min-width:min(100%,14rem);
}

.ct-closing__actions .c-btn{
  width:100%;
}

.ct-closing__actions .c-btn-ghost{
  background:rgba(255,255,255,.04);
  color:#f7f3ee;
  border-color:rgba(255,255,255,.32);
}

@media(max-width:64rem){
  .ct-contact-hero__grid,
  .ct-form-layout,
  .ct-payment-layout{
    grid-template-columns:1fr;
  }

  .ct-contact-stage{
    width:100%;
  }

  .ct-routing-column{
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-rows:auto;
    align-items:start;
  }

  .ct-routing-card{
    height:auto;
  }

  .ct-readiness-grid,
  .ct-next-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .ct-choice-grid--four{
    grid-template-columns:1fr 1fr;
  }

  .ct-closing{
    grid-template-columns:1fr;
  }

  .ct-closing__actions{
    width:100%;
  }
}

@media(max-width:42rem){
  .ct-contact-hero{
    padding-block:var(--sm-hero-pad);
  }

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

  .ct-contact-hero__facts div+div{
    border-top:1px solid rgba(255,255,255,.12);
    border-left:0;
  }

  .ct-stage-grid{
    grid-template-columns:1fr;
  }

  .ct-stage-card--clay,
  .ct-stage-card--violet{
    grid-column:auto;
  }

  .ct-stage-card--wheat{
    margin-top:0;
  }

  .ct-stage-card__head{
    flex-direction:column;
  }

  .ct-stage-card__head strong{
    text-align:left;
  }

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

  .ct-route-output{
    grid-column:2;
    justify-self:start;
  }

  .ct-form-panel__header{
    align-items:flex-start;
    flex-direction:column;
    padding:var(--sm-space-3);
  }

  .ct-field-grid{
    grid-template-columns:1fr;
    padding:var(--sm-space-3);
  }

  .ct-field--full{
    grid-column:auto;
  }

  .ct-choice-grid,
  .ct-choice-grid--two,
  .ct-choice-grid--four{
    grid-template-columns:1fr;
  }

  .ct-routing-column,
  .ct-toolchain-grid,
  .ct-readiness-grid,
  .ct-next-grid{
    grid-template-columns:1fr;
  }

  .ct-workflow-board{
    padding:var(--sm-space-3);
  }

  .ct-payment-row{
    grid-template-columns:1fr;
  }

  .ct-closing{
    padding:var(--sm-space-3);
  }

  .ct-contact-hero__actions .c-btn,
  .ct-form-actions .c-btn,
  .ct-next-card .c-btn{
    width:100%;
  }
}
