/*!************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/less-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./apps/frontend/resources/less/Admin/Contact/ContactUs.less ***!
  \************************************************************************************************************************************************************************************************************/
.contact-us-container {
  position: relative;
  display: flex;
  flex-direction: column;
  flex: 1;
  min-width: 300px;
  min-height: calc(100vh - 100px);
  background-color: var(--admin-main-3);
  background-image: url("https://constellation-backend-images.s3.ca-central-1.amazonaws.com/production/interfaces/adm-info-page.png");
  background-repeat: no-repeat;
  background-position: center top;
  background-size: contain;
}
.contact-us-container .contact-us-content {
  display: flex;
  flex: 1;
  flex-direction: column;
  color: var(--default-color-2);
  padding: 0 40px 40px;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  font-size: clamp(20px, 3vw, 28px);
  line-height: 1.2em;
}
.contact-us-container .contact-us-content h1 {
  color: var(--primary-text-2);
  font-size: clamp(28px, 5vw, 56px);
  text-align: center;
  margin: 30px 0 60px;
  margin-bottom: 10vw;
}
.contact-us-container .contact-us-content p {
  margin-bottom: 15px;
}
.contact-us-container .contact-us-content p.form-msg,
.contact-us-container .contact-us-content p.field-error-msg {
  font-size: 14px;
  font-weight: 600;
  color: var(--troubadour-main-3);
}
.contact-us-container .contact-us-content .request-quote-block {
  font-size: clamp(16px, 2vw, 24px);
  line-height: 1.2em;
  color: var(--troubadour-main-3);
  margin: 0 0 30px;
  text-align: left;
}
.contact-us-container .contact-us-content .request-quote-block a {
  color: var(--troubadour-main-3);
  text-decoration: underline;
}
@media screen and (min-width: 1160px) {
  .contact-us-container .contact-us-content {
    padding: 0 80px 60px;
  }
  .contact-us-container .contact-us-content h1 {
    margin: 40px 0 80px;
    margin-bottom: 8vw;
  }
}
@media screen and (min-width: 1501px) {
  .contact-us-container .contact-us-content h1 {
    margin: 40px 0 80px;
  }
}

/*!************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/less-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./apps/frontend/resources/less/components/NanomonxForm.less ***!
  \************************************************************************************************************************************************************************************************************/
.nanomonx-form .nanomonx-form-row {
  display: flex;
  flex-direction: column;
  width: 100%;
}
@media screen and (min-width: 940px) {
  .nanomonx-form .nanomonx-form-row {
    flex-direction: row;
    gap: 20px;
  }
}
.nanomonx-form .form-field {
  position: relative;
  margin-bottom: 1.5rem;
  width: 100%;
  color: var(--default-color-3);
  font-size: 16px;
  flex: 1;
}
.nanomonx-form .form-field .form-field-group {
  position: relative;
  display: flex;
  flex-direction: row;
}
.nanomonx-form .form-field .form-field-group div {
  position: relative;
}
.nanomonx-form .form-field.form-field-select {
  background-color: var(--default-color-2);
  padding: 10px 0;
  border: 2px solid var(--default-color);
  border-radius: 10px;
}
.nanomonx-form .form-field.form-field-checkbox {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-flow: row nowrap;
}
.nanomonx-form .form-field .existing-account-text,
.nanomonx-form .form-field .creating-account-text {
  display: inline-block;
  font-size: 14px;
  line-height: 1.2em;
  font-weight: 600;
  margin: 10px 0;
  padding: 0;
}
.nanomonx-form .form-field .field-error-msg,
.nanomonx-form .form-field .different-email-text {
  display: inline-block;
  font-size: 14px;
  line-height: 1.2em;
  font-weight: 600;
  margin: 10px 0;
  padding: 0;
}
.nanomonx-form .form-field label {
  font-size: 14px;
  line-height: 1.2em;
  font-weight: 400;
  margin: 0 0 10px;
}
.nanomonx-form .form-field-intl-tel-input .iti {
  width: 100%;
}
.nanomonx-form .form-field-intl-tel-input .iti .iti__flag-container {
  width: 82px !important;
}
.nanomonx-form .form-field-intl-tel-input .iti .iti__flag-container .iti__selected-flag {
  justify-content: space-between;
  padding: 0 2px 0 10px;
}
.nanomonx-form .form-field-intl-tel-input .iti input {
  padding-left: 86px !important;
}
.nanomonx-form .form-field-intl-tel-input .iti input::placeholder {
  opacity: 0.5;
}
@media screen and (min-width: 940px) {
  .nanomonx-form .form-field-tel-ext {
    max-width: 150px;
  }
}
.nanomonx-form .form-control:not([type="checkbox"]),
.nanomonx-form .form-control:not([type="radio"]) {
  position: relative;
  padding: 1rem 2.5rem 1rem 1rem;
  height: auto;
  line-height: 1em;
  display: block;
  width: 100%;
  font-size: 16px;
  font-weight: 600;
  background-clip: padding-box;
  color: var(--default-color-3);
  background-color: var(--default-color-2) !important;
  border: 2px solid var(--content-neutral);
  border-radius: 10px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.nanomonx-form .form-control:not([type="checkbox"]):focus,
.nanomonx-form .form-control:not([type="radio"]):focus {
  border-color: var(--content-warning);
  outline: none;
  box-shadow: none;
}
.nanomonx-form .form-control:not([type="checkbox"]).isValid:not(:placeholder-shown),
.nanomonx-form .form-control:not([type="radio"]).isValid:not(:placeholder-shown) {
  border-color: var(--content-valid);
  background-image: url("https://constellation-backend-images.s3.ca-central-1.amazonaws.com/production/icons/admin-content-valid.svg");
  background-position: right 10px center;
  background-repeat: no-repeat;
}
.nanomonx-form .form-control:not([type="checkbox"]).isInvalid,
.nanomonx-form .form-control:not([type="radio"]).isInvalid {
  border-color: var(--content-invalid);
  background-image: url("https://constellation-backend-images.s3.ca-central-1.amazonaws.com/production/icons/admin-content-invalid.svg");
  background-position: right 10px center;
  background-repeat: no-repeat;
}
.nanomonx-form .form-control:not([type="checkbox"]).type-textarea,
.nanomonx-form .form-control:not([type="radio"]).type-textarea {
  height: 100px;
}
.nanomonx-form .form-control:not([type="checkbox"]).type-select,
.nanomonx-form .form-control:not([type="radio"]).type-select {
  width: calc(100% - 30px);
  height: calc(3.5rem + 2px);
  line-height: 1.25;
  display: block;
  border: 0;
  outline: 0;
  margin: 0 16px;
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  appearance: none;
  box-shadow: none;
}
.nanomonx-form .form-captcha {
  font-size: 14px;
  line-height: 16px;
  margin: 15px auto;
  padding: 20px;
  max-width: 600px;
}
.nanomonx-form .action-buttons {
  display: flex;
  flex: 1;
  justify-content: center;
  margin: 30px 0 0;
}
.nanomonx-form .iti__arrow {
  border: none;
}
.nanomonx-form .iti__flag {
  background-image: url("https://constellation-backend-images.s3.ca-central-1.amazonaws.com/production/icons/country-flags.png");
}
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
  .nanomonx-form .iti__flag {
    background-image: url("https://constellation-backend-images.s3.ca-central-1.amazonaws.com/production/icons/country-flags@2x.png");
  }
}
.nanomonx-form.nanomonx-form-light .existing-account-text,
.nanomonx-form.nanomonx-form-light .creating-account-text {
  color: var(--default-color-3);
}
.nanomonx-form.nanomonx-form-light .field-error-msg,
.nanomonx-form.nanomonx-form-light .different-email-text {
  color: var(--content-invalid);
}
.nanomonx-form.nanomonx-form-light label {
  color: var(--default-color-3);
}
.nanomonx-form.nanomonx-form-light .form-captcha {
  color: var(--default-color-3);
}
.nanomonx-form.nanomonx-form-dark .existing-account-text,
.nanomonx-form.nanomonx-form-dark .creating-account-text {
  color: var(--default-color-2);
}
.nanomonx-form.nanomonx-form-dark .field-error-msg,
.nanomonx-form.nanomonx-form-dark .different-email-text {
  color: var(--default-color-2);
}
.nanomonx-form.nanomonx-form-dark label {
  color: var(--default-color-2);
}
.nanomonx-form.nanomonx-form-dark .form-captcha {
  color: var(--default-color-2);
}

/*!******************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/less-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./apps/frontend/resources/less/Family/Popups/SwitchToTeacherVersionPopup.less ***!
  \******************************************************************************************************************************************************************************************************************************/
.family-access-popup {
  background-color: var(--default-bg);
}
.family-access-popup .family-access-popup-header {
  position: relative;
  display: flex;
  flex-direction: row;
  align-items: center;
  aspect-ratio: 740 / 170;
  width: 100%;
  height: auto;
  background-image: url("https://constellation-backend-images.s3.ca-central-1.amazonaws.com/production/interfaces/troub-popup-header-wave.png");
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
  z-index: 10;
}
.family-access-popup .family-access-popup-header .close-container {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background-color: var(--default-bg);
  left: unset;
  right: 10px;
  top: 10px;
}
.family-access-popup .family-access-popup-header .close-container i,
.family-access-popup .family-access-popup-header .close-container svg {
  font-size: 30px !important;
  color: var(--troubadour-main-5);
}
.family-access-popup .family-access-popup-content {
  display: flex;
  flex-flow: column wrap;
  padding: 40px 10% 40px;
}
.family-access-popup .family-access-popup-content h2 {
  color: var(--troubadour-main);
  font-family: Eagle, Lato, sans-serif;
  font-size: clamp(24px, 3vw, 32px);
  font-weight: 400;
  line-height: 1.2em;
  letter-spacing: 0.96px;
  text-transform: none;
  margin: 0 0 20px;
}
.family-access-popup .family-access-popup-content p {
  color: var(--troubadour-main-5);
  font-size: clamp(14px, 2vw, 18px);
  line-height: 1.2em;
  margin: 0 0 20px;
}
.family-access-popup .family-access-popup-content .access-code-container .number-code-container label {
  color: var(--troubadour-main-5);
}
.family-access-popup .family-access-popup-content .access-code-container .number-code-container .fields input {
  border: 1px solid var(--troubadour-main-5);
}
.family-access-popup .family-access-popup-content .access-code-container .number-code-container .fields input:focus,
.family-access-popup .family-access-popup-content .access-code-container .number-code-container .fields input:focus-visible {
  border-width: 2px;
}
.family-access-popup .family-access-popup-content .access-code-container .switch-member-error {
  text-align: center;
  color: var(--troubadour-main);
  font-size: clamp(12px, 2vw, 14px);
}
.family-access-popup .family-access-popup-content .forgot-passcode {
  display: flex;
  flex-flow: column wrap;
  justify-content: center;
  align-items: center;
  color: var(--troubadour-main-5);
  text-align: center;
  margin: 0 0 30px;
}
.family-access-popup .family-access-popup-content .forgot-passcode .forgot-passcode-warning {
  color: var(--troubadour-main);
}
.family-access-popup .family-access-popup-content .forgot-passcode a {
  color: var(--troubadour-main-5);
  text-decoration: underline;
}
.family-access-popup .family-access-popup-content .action-buttons {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-flow: column wrap;
  gap: 20px;
}
.family-access-popup .family-access-popup-content .action-buttons a:not(.troubadour-button) {
  color: var(--troubadour-main-5);
  font-size: clamp(14px, 2vw, 18px);
  line-height: 1.2em;
  font-weight: 800;
  text-decoration: underline;
  margin: 0 0 20px;
}
.family-access-popup .family-access-popup-content .action-buttons a:not(.troubadour-button):hover {
  text-decoration: underline;
}
@media (min-width: 1px), (max-width: 1280px), (max-width: 992px), (max-width: 767px), (max-width: 480px) {
  .nanopopup.family-access-popup {
    padding: 0 !important;
    width: 90vw !important;
    height: auto !important;
    min-width: 300px !important;
    max-width: 640px !important;
  }
}

/*!***************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/less-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./apps/frontend/resources/less/components/Forms/CodeField.less ***!
  \***************************************************************************************************************************************************************************************************************/
.number-code-container {
  display: flex;
  flex-flow: column wrap;
  justify-content: center;
  align-items: center;
  gap: 15px;
  /* Chrome, Safari, Edge, Opera */
  /* Firefox */
  /* Size */
  /* Theme */
}
.number-code-container fieldset {
  border: none;
}
.number-code-container label {
  display: block;
  font-size: clamp(14px, 2vw, 18px);
  line-height: 1.2em;
  text-align: center;
  font-weight: 600;
  margin: 0 0 10px;
}
.number-code-container .fields {
  display: flex;
  flex-flow: row nowrap;
  justify-content: center;
  align-items: center;
  gap: 10px;
}
.number-code-container .fields input {
  color: var(--default-color-3);
  display: inline-flex;
  justify-content: center;
  align-items: center;
  aspect-ratio: 1 / 1;
  text-align: center;
  padding: 0;
  border-width: 1px;
  border-style: solid;
  background-color: var(--default-color-2);
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-text-security: disc;
  -moz-text-security: disc;
  text-security: disc;
  font-size: 1rem;
  line-height: 1rem;
}
.number-code-container .fields input:focus,
.number-code-container .fields input:focus-visible {
  outline: none;
  border-width: 2px;
}
.number-code-container .fields input.wiggle {
  animation: wiggle 0.5s;
  animation-iteration-count: 1;
}
.number-code-container input::-webkit-outer-spin-button,
.number-code-container input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.number-code-container input[type="number"] {
  -moz-appearance: textfield;
  appearance: textfield;
}
.number-code-container[data-size="small"] .fields input {
  width: 27px;
  height: 30px;
  border-radius: 6px;
}
.number-code-container[data-size="med"] .fields input {
  width: 46px;
  height: 50px;
  border-radius: 8px;
}
.number-code-container[data-size="large"] .fields input {
  width: 85px;
  height: 92px;
  border-radius: 10px;
}
.number-code-container[data-theme="admin"] label {
  color: var(--admin-main-darker);
}
.number-code-container[data-theme="admin"] .fields input {
  border-color: var(--admin-main-darker);
}
.number-code-container[data-theme="troubadour"] label {
  color: var(--troubadour-main-5);
}
.number-code-container[data-theme="troubadour"] .fields input {
  border-color: var(--troubadour-main-5);
}
.number-code-container[data-theme="constellation"] label {
  color: var(--constellation-main-2);
}
.number-code-container[data-theme="constellation"] .fields input {
  border-color: var(--constellation-main-2);
}
@keyframes wiggle {
  0% {
    transform: skewX(9deg);
  }
  10% {
    transform: skewX(-8deg);
  }
  20% {
    transform: skewX(7deg);
  }
  30% {
    transform: skewX(-6deg);
  }
  40% {
    transform: skewX(5deg);
  }
  50% {
    transform: skewX(-4deg);
  }
  60% {
    transform: skewX(3deg);
  }
  70% {
    transform: skewX(-2deg);
  }
  80% {
    transform: skewX(1deg);
  }
  90% {
    transform: skewX(0deg);
  }
  100% {
    transform: skewX(0deg);
  }
}

/*!********************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/less-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./apps/frontend/resources/less/Troubadour/components/Nanopopup.less ***!
  \********************************************************************************************************************************************************************************************************************/
.troubadour-popup .close-button {
  color: var(--troubadour-main);
}
.troubadour-popup .title {
  font-family: FatFrank, sans-serif;
  color: var(--troubadour-main);
}
.troubadour-popup .main-text {
  text-align: center;
  opacity: 1;
  font-family: Sofia Pro, sans-serif;
  font-size: 24px;
  line-height: 28px;
}
.troubadour-popup .inputs-group {
  margin: 15px 0;
  width: 49%;
  display: inline-block;
}
.troubadour-popup .button-group .cancel-button {
  border: none;
}
.troubadour-popup .button-group .cancel-button:hover .button-text {
  color: var(--troubadour-main) !important;
}
.troubadour-popup .button-group .action-button:hover .button-text {
  color: var(--button-action) !important;
}
.troubadour-popup.newsletter-popup {
  padding: 0 !important;
  height: 725px !important;
  min-width: 35vw !important;
}
.troubadour-popup.newsletter-popup iframe {
  height: 99%;
}
@media screen and (max-width: 1368px) {
  .troubadour-popup.newsletter-popup {
    min-width: 50vw !important;
  }
}
@media screen and (max-width: 768px) {
  .troubadour-popup .inputs-group {
    width: 100%;
    display: block;
  }
  .troubadour-popup .button-group button {
    margin: 15px 0;
  }
  .troubadour-popup.newsletter-popup {
    width: 90%;
    max-width: 90% !important;
    min-width: 85% !important;
    left: 5% !important;
  }
}
@media screen and (max-width: 480px) {
  .troubadour-popup.newsletter-popup {
    width: 90%;
    max-width: 90% !important;
    min-width: 85vw !important;
    left: 5% !important;
  }
}


/*# sourceMappingURL=ContactUs.a20e8959872e61624362.css.map*/