.co-plan-grid{
  grid-template-columns:1fr 1fr;
  margin-bottom:8px;
}
.co-plan-grid .package{
  min-height:auto;
  padding:18px 20px 16px;
}
.co-plan-grid .price{
  font-size:34px;
  margin-top:8px;
}
.co-form{
  margin-top:22px;
  display:flex;
  flex-direction:column;
  gap:18px;
}
.field-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}
.field-row-3{
  grid-template-columns:1.6fr .8fr 1fr;
}
.field{
  display:flex;
  flex-direction:column;
  gap:7px;
}
.field span{
  font-size:12px;
  letter-spacing:.06em;
  color:#27495d;
  font-weight:600;
}
.field input{
  font-family:var(--sans);
  font-size:15px;
  color:#1a242b;
  border:1px solid #cfd8dd;
  border-radius:8px;
  padding:12px 14px;
  background:#fff;
  width:100%;
}
.field input:focus{
  outline:none;
  border-color:#0f808b;
  box-shadow:0 0 0 3px rgba(15,128,139,.12);
}
#card-container{
  border:1px solid #cfd8dd;
  border-radius:8px;
  padding:12px 14px;
  background:#fff;
  min-height:48px;
}
.co-message{
  font-size:13px;
  display:none;
}
.co-message.visible{display:block}
.co-message.error{color:#b3261e}
.co-message.success{color:#0f808b}
#co-submit{
  border:none;
  cursor:pointer;
  width:100%;
}
#co-submit:disabled{opacity:.6;cursor:default}

@media (max-width: 650px){
  .field-row{grid-template-columns:1fr}
  .field-row-3{grid-template-columns:1fr}
  .co-plan-grid{grid-template-columns:1fr}
}
