/* --- FORM WRAPPER --- */
form.atl-fa-form {
  max-width: 900px;
  margin: 0 auto;
  font-family: inherit;  /* use theme font */
  color: inherit;        /* use theme text color */
  line-height: 1.5;
}


form.atl-fa-form h2 {
  margin-bottom: 15px;
  font-size: 28px;
  border-bottom: 2px solid #003366;
  padding-bottom: 5px;
}

form.atl-fa-form h3 {
  margin-top: 30px;
  font-size: 22px;
  color: #003366;
  border-left: 4px solid #003366;
  padding-left: 10px;
}

form.atl-fa-form h5,
form.atl-fa-form h6 {
  margin-top: 15px;
  color: #444;
}

/* --- PARAGRAPHS, BULLETS --- */
form.atl-fa-form ul {
  margin-left: 20px;
  margin-bottom: 20px;
}
form.atl-fa-form ul li {
  margin-bottom: 5px;
}

/* --- LABELS + INPUTS --- */
form.atl-fa-form label {
  display: block;
  margin-bottom: 8px;
  font-weight: 600;      /* a bit lighter than full bold */
  font-size: 14px;
  color: inherit;        /* match page text color */
}
form.atl-fa-form select {
  width: 100% !important;
  padding: 10px 12px;
  margin-top: 5px;
  font-size: 14px;
  border: 1px solid #ccc;
  border-radius: 6px;
  box-sizing: border-box;
}


form.atl-fa-form input[type="text"],
form.atl-fa-form input[type="email"],
form.atl-fa-form input[type="tel"],
form.atl-fa-form input[type="number"],
form.atl-fa-form textarea {
  width: 100%;
  padding: 10px 12px;
  margin-top: 5px;
  font-size: 14px;
  border: 1px solid #ccc;
  border-radius: 6px;
  box-sizing: border-box;
}

form.atl-fa-form textarea {
  min-height: 120px;
  resize: vertical;
}

form.atl-fa-form textarea {
    display: block;
    width: 100%;
    max-width: 100%;
    min-height: 120px;
    padding: 10px 12px;
    margin-top: 5px;
    font-size: 14px;
    border: 1px solid #ccc;
    border-radius: 6px;
    box-sizing: border-box;
}


/* --- CHECKBOXES & RADIOS GROUPS --- */
.atl-activity-checkboxes label,
.atl-location-group label,
form.atl-fa-form label input[type="checkbox"],
form.atl-fa-form label input[type="radio"] {
  font-weight: normal;
  margin-right: 10px;
}

.atl-activity-checkboxes label,
.atl-location-group label {
  display: block;
  padding: 3px 0;
  font-size: 14px;
}

/* --- LOCATION GROUP BOXES --- */
.atl-location-group {
  border: 1px solid #ddd;
  padding: 15px;
  margin: 15px 0;
  border-radius: 8px;
  background: #f9f9f9;
}

.atl-location-group h6 {
  margin-top: 0;
  font-size: 15px;
  font-weight: bold;
}

/* --- TWO-COLUMN ROWS --- */
.cf7-side-by-side {
  display: flex;
  gap: 20px;
  margin-bottom: 15px;
}

.cf7-side-by-side > div {
  flex: 1;
}

/* --- RESPONSIVE ADJUSTMENTS --- */
@media (max-width: 768px) {
  .cf7-side-by-side {
    flex-direction: column;
  }
}

/* --- SUBMIT BUTTON --- */
form.atl-fa-form button[type="submit"] {
  background: #003366;
  color: #fff;
  padding: 12px 25px;
  font-size: 16px;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  margin-top: 20px;
  transition: background 0.2s ease-in-out;
}

form.atl-fa-form button[type="submit"]:hover {
  background: #001f4d;
}

/* --- ERROR + SUCCESS MESSAGES --- */
.atl-fa-errors {
  background: #ffe6e6;
  border-left: 4px solid #cc0000;
  padding: 10px 15px;
  margin-bottom: 20px;
  border-radius: 4px;
  color: #900;
}

.atl-fa-success {
  background: #e8f9e8;
  border-left: 4px solid #2d8a2d;
  padding: 10px 15px;
  margin-bottom: 20px;
  border-radius: 4px;
  color: #2d8a2d;
}


input[type="tel"] {
    border: 2px solid #cdcdcd;
    color: #999999;
    padding: 7px 5px !important;
    margin: 10px 0;
    width: 100%;
    border-radius: 3px;
    box-sizing: border-box; /* recommended for consistent sizing */
}
