.elementor-20023 .elementor-element.elementor-element-a82a9ee{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--margin-top:25px;--margin-bottom:50px;--margin-left:0px;--margin-right:0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-20023 .elementor-element.elementor-element-56abb35 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-20023 .elementor-element.elementor-element-56abb35{text-align:center;}.elementor-20023 .elementor-element.elementor-element-56abb35 .elementor-heading-title{font-family:"Inter", Sans-serif;font-size:45px;font-weight:700;color:#000000;}.elementor-20023 .elementor-element.elementor-element-1a9a03b{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:50px;--margin-left:0px;--margin-right:0px;}.elementor-20023 .elementor-element.elementor-element-5a30639{width:var( --container-widget-width, 55% );max-width:55%;--container-widget-width:55%;--container-widget-flex-grow:0;}.elementor-20023 .elementor-element.elementor-element-5a30639 > .elementor-widget-container{padding:10px 10px 10px 10px;border-style:solid;border-width:1px 1px 1px 1px;border-color:#B3B3B382;border-radius:8px 8px 8px 8px;}.elementor-20023 .elementor-element.elementor-element-5a30639.elementor-element{--align-self:center;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-20023 .elementor-element.elementor-element-5a30639 > .elementor-widget-container{padding:0px 10px 0px 10px;}}@media(max-width:767px){.elementor-20023 .elementor-element.elementor-element-5a30639{width:100%;max-width:100%;}}/* Start custom CSS for shortcode, class: .elementor-element-5a30639 *//* 🌿 General Form Layout */
.wpcf7 form {
  font-family: "Inter", "Poppins", sans-serif;
  display: flex;
  flex-direction: column;
  gap: 1.5rem; /* Increased gap for better spacing */
  background: #ffffff;
  border-radius: 16px;
  padding: 1.5rem 2rem; /* Slightly increased padding */
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.08);
  width: 100%; /* Ensure form width is responsive */
  max-width: 650px; /* Prevents form from becoming too wide */
  margin: 0 auto; /* Centers the form horizontally */
}

/* 🏷️ Labels */
.wpcf7 form label {
  font-weight: 500;
  color: #374151;
  font-size: 1rem;
  display: block;
  margin-bottom: 0.4rem; /* Reduced margin for better alignment */
}

/* ✏️ Input + Select + Textarea */
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 select,
.wpcf7 textarea {
  width: 100%;
  padding: 0.75rem 1rem;
  border: 1px solid #d1d5db;
  border-radius: 8px;
  background-color: #f9fafb;
  font-size: 1rem; /* Increased font size for readability */
  color: #111827;
  transition: all 0.25s ease;
}

/* ✨ Focus state */
.wpcf7 input:focus,
.wpcf7 select:focus,
.wpcf7 textarea:focus {
  border-color: #2563eb;
  background-color: #fff;
  outline: none;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.15);
}

/* 🎯 Radio Buttons */
.wpcf7-list-item {
  display: inline-flex;
  align-items: center;
  gap: 8px; /* Increased gap between radio and label */
  font-size: 1rem; /* Standardized font size */
  color: #374151;
  margin-right: 1rem; /* Consistent spacing */
}

.wpcf7-list-item input[type="radio"] {
  accent-color: #2563eb;
  width: 1.2rem;
  height: 1.2rem;
}

/* 🚀 Submit Button */
.wpcf7 input[type="submit"] {
  background-color: #cb0000;
  color: #fff;
  border: none;
  border-radius: 8px;
  padding: 1rem 2rem; /* More padding for larger button */
  font-weight: 500;
  font-size: 1rem;
  cursor: pointer;
  transition: background-color 0.25s ease, transform 0.15s ease;
  align-self: center; /* Center the button */
}

.wpcf7 input[type="submit"]:hover {
  background-color: #b20000;
  transform: translateY(-1px);
}

/* ⚠️ Error + Validation Styles */
.wpcf7-not-valid-tip {
  color: #dc2626;
  font-size: 0.85rem;
  margin-top: 4px;
}

.wpcf7 form .wpcf7-response-output {
  margin-top: 1rem;
  padding: 0.75rem 1rem;
  border-radius: 6px;
  font-size: 0.9rem;
}

.wpcf7 form .wpcf7-validation-errors {
  background-color: #fef2f2;
  color: #991b1b;
  border: 1px solid #fca5a5;
}

.wpcf7 form .wpcf7-mail-sent-ok {
  background-color: #ecfdf5;
  color: #065f46;
  border: 1px solid #6ee7b7;
}

/* 🧘 Alignment Fix for Paragraphs */
.wpcf7 form p {
  margin: 0;
  display: flex;
  flex-direction: column;
}

/* 💬 Headline styling inside form */
.wpcf7 form strong {
  display: block;
  text-align: center;
  margin-top: 1.2rem;
  color: #cb0000;
  font-weight: 600;
  font-size: 1rem;
}

/* ✅ Optional: Add smooth transitions for radio & select hover */
.wpcf7-list-item input[type="radio"]:hover,
.wpcf7 select:hover {
  border-color: #2563eb;
}

/* 🎓 Grades Checkboxes Container */
.grades-checkboxes {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(70px, 1fr));
  gap: 0.75rem 3rem; /* More consistent gap */
  margin-top: 1rem;
}

/* Each checkbox item */
.grades-checkboxes .wpcf7-list-item {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 1rem; /* Consistent font size */
  color: #374151;
  cursor: pointer;
  line-height: 1.2;
}

/* Checkbox input */
.grades-checkboxes input[type="checkbox"] {
  accent-color: #2563eb;
  width: 1.5rem; /* Increased size */
  height: 1.5rem; /* Increased size */
  flex-shrink: 0;
  margin: 0;
  vertical-align: middle;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}

/* Hover effect */
.grades-checkboxes input[type="checkbox"]:hover {
  transform: scale(1.15); /* Slightly larger hover effect */
  box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.2);
}

/* Optional: spacing for multi-row checkboxes */
.grades-checkboxes .wpcf7-list-item + .wpcf7-list-item {
  margin-top: 0.5rem; /* More space between rows */
}

/* "school-year" radio buttons aligned normally with better spacing */
#school-year {
  display: flex !important;
  gap: 2rem;
  flex-wrap: wrap;
  margin-top: 1rem;
}

#school-year .wpcf7-list-item {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  font-size: 1rem;
  cursor: pointer;
  line-height: 1.2;
}

/* Radio input */
#school-year input[type="radio"] {
  margin: 0;
  vertical-align: middle;
  width: 1.2rem;
  height: 1.2rem;
}/* End custom CSS */