/* Onlinehomeo Patient Intake Form */

.oph-wrapper{
  max-width:820px;
  margin:0 auto;
}

.oph-toggle-btn{
  display:block;
  width:100%;
  background:#7A2E3A;
  color:#FFFFFF;
  border:none;
  border-radius:9px;
  padding:18px;
  font-size:16px;
  font-weight:700;
  font-family:'Work Sans', Arial, sans-serif;
  cursor:pointer;
  transition:background .15s ease;
}

.oph-toggle-btn:hover{
  background:#5F2530;
}

.oph-form-panel{
  margin-top:24px;
}

.oph-form{
  max-width:820px;
  margin:0 auto;
  font-family:'Work Sans', Arial, sans-serif;
  color:#23262A;
}

.oph-section{
  border:1px solid #E4E5E7;
  border-radius:12px;
  padding:24px 28px 8px;
  margin:0 0 28px 0;
}

.oph-section legend{
  font-family:'Fraunces', Georgia, serif;
  font-size:19px;
  font-weight:600;
  color:#7A2E3A;
  padding:0 10px;
}

.oph-field{
  margin-bottom:18px;
}

.oph-field label,
.oph-group-label{
  display:block;
  font-size:14.5px;
  font-weight:600;
  color:#23262A;
  margin-bottom:6px;
}

.oph-help{
  font-size:12.5px;
  color:#8B9096;
  margin:0 0 6px 0;
}

.oph-required{
  color:#7A2E3A;
}

.oph-form input[type="text"],
.oph-form input[type="tel"],
.oph-form input[type="number"],
.oph-form input[type="date"],
.oph-form input[type="email"],
.oph-form input[type="file"],
.oph-form select,
.oph-form textarea{
  width:100%;
  box-sizing:border-box;
  padding:10px 12px;
  border:1px solid #D6D2D3;
  border-radius:8px;
  font-size:14.5px;
  font-family:inherit;
  color:#23262A;
  background:#FFFFFF;
}

.oph-form textarea{
  resize:vertical;
}

.oph-form input:focus,
.oph-form select:focus,
.oph-form textarea:focus{
  outline:none;
  border-color:#7A2E3A;
  box-shadow:0 0 0 3px rgba(122,46,58,0.12);
}

.oph-form input[readonly]{
  background:#F2F2F0;
  color:#5B6066;
  cursor:not-allowed;
}

.oph-inline-options{
  display:flex;
  flex-wrap:wrap;
  gap:10px 20px;
}

.oph-radio,
.oph-checkbox{
  display:flex;
  align-items:center;
  gap:6px;
  font-size:14px;
  font-weight:400;
  color:#3E4348;
}

.oph-radio input,
.oph-checkbox input{
  width:auto;
}

.oph-submit{
  display:block;
  width:100%;
  background:#7A2E3A;
  color:#FFFFFF;
  border:none;
  border-radius:9px;
  padding:16px;
  font-size:16px;
  font-weight:700;
  cursor:pointer;
  transition:background .15s ease;
  margin-bottom:60px;
}

.oph-submit:hover{
  background:#5F2530;
}

.oph-success{
  max-width:600px;
  margin:60px auto;
  text-align:center;
  background:#F5EAEB;
  border:1px solid #E2CBCD;
  border-radius:12px;
  padding:36px 28px;
  font-size:16px;
  color:#7A2E3A;
  font-weight:600;
}

@media (max-width: 600px){
  .oph-section{padding:18px 18px 6px;}
}
