/**
 * The following variable and function originate from the sass-mq library.
 * If you have already included it, you can eliminate the below
 * https://github.com/sass-mq/sass-mq/blob/master/_mq.scss
 */
.form-type-checkbox input:checked::after {
  display: inline-block;
  background-image: url("/themes/custom/drupalix/scss/svg-sprites/sprite.svg");
  background-size: 133.875em 101.25em;
}

/*Align element vertically and horizontally using absolute positioning*/
/*Mixin for getting elements in a row, specifying the number of columns each element is needed to be given (news style)*/
/*Display elements on the same row using flex*/
/*Turn px into rem*/
/*Mixin for overlays*/
/*Style your button*/
:root {
  --roboto: "Roboto", sans-serif;
  --condensed: "Roboto Condensed", sans-serif;
  --base-font: 18px;
  --text-bold: 700;
  --text-black: 800;
}

.font--robotoc {
  font-family: var(--condensed);
}

.text--72 {
  font-size: 4rem;
  line-height: 1.3;
}
.text--48 {
  font-size: 2.6666666667rem;
  line-height: 1.3;
}
@media (max-width: 1240px) {
  .text--48 {
    font-size: 2.2222222222rem;
  }
}
@media (max-width: 960px) {
  .text--48 {
    font-size: 2rem;
  }
}
@media (max-width: 700px) {
  .text--48 {
    font-size: 1.7777777778rem;
    line-height: 1.2;
  }
}
.text--36 {
  font-size: 2rem;
  line-height: 1.3;
}
@media (max-width: 1240px) {
  .text--36 {
    font-size: 1.8888888889rem;
  }
}
@media (max-width: 960px) {
  .text--36 {
    font-size: 1.7777777778rem;
    line-height: 1.25;
  }
}
@media (max-width: 700px) {
  .text--36 {
    font-size: 1.6666666667rem;
    line-height: 1.2;
  }
}
@media (max-width: 550px) {
  .text--36 {
    font-size: 1.5555555556rem;
    line-height: 1.15;
  }
}
.text--32 {
  font-size: 1.7777777778rem;
  line-height: 1.25;
}
@media (max-width: 1240px) {
  .text--32 {
    font-size: 1.6666666667rem;
  }
}
@media (max-width: 960px) {
  .text--32 {
    font-size: 1.5555555556rem;
    line-height: 1.25;
  }
}
.text--30 {
  font-size: 1.6666666667rem;
  line-height: 1.2;
}
@media (max-width: 960px) {
  .text--30 {
    font-size: 1.3333333333rem;
  }
}
.text--28 {
  font-size: 1.5555555556rem;
  line-height: 1.15;
}
@media (max-width: 960px) {
  .text--28 {
    font-size: 1.3333333333rem;
  }
}
.text--26 {
  font-size: 1.4444444444rem;
  line-height: 1.15;
}
@media (max-width: 1240px) {
  .text--26 {
    font-size: 1.3333333333rem;
  }
}
@media (max-width: 960px) {
  .text--26 {
    font-size: 1.2222222222rem;
  }
}
@media (max-width: 550px) {
  .text--26 {
    font-size: 1.1111111111rem;
  }
}
.text--24 {
  font-size: 1.3333333333rem;
  line-height: 1.4;
}
@media (max-width: 1240px) {
  .text--24 {
    font-size: 1.2222222222rem;
  }
}
@media (max-width: 550px) {
  .text--24 {
    font-size: 1.1111111111rem;
  }
}
.text--20 {
  font-size: 1.1111111111rem;
  line-height: 1.2;
}
@media (max-width: 1240px) {
  .text--20 {
    font-size: 1rem;
  }
}
.text--18 {
  font-size: 1rem;
  line-height: 1.2;
}
@media (max-width: 700px) {
  .text--18 {
    font-size: 0.8888888889rem;
  }
}
.text--16, textarea, input {
  font-size: 0.8888888889rem;
  line-height: 1.2;
}
@media (max-width: 550px) {
  .text--16, textarea, input {
    font-size: 0.7777777778rem;
    line-height: 1.1;
  }
}
.text--16-sparse {
  font-size: 0.8888888889rem;
  line-height: 1.625;
}
@media (max-width: 550px) {
  .text--16-sparse {
    line-height: 1.5;
  }
}
.text--14 {
  font-size: 0.7777777778rem;
  line-height: 1.2;
}
.text--12 {
  font-size: 0.6666666667rem;
  line-height: 1.2;
}

/*Weights + Styles*/
.text--black {
  font-weight: 800;
}
.text--bold {
  font-weight: 700;
}
.text--regular {
  font-weight: 400;
}
.text--italic {
  font-style: italic;
}

.help-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: 50%;
  padding: 0;
  cursor: pointer;
}
.help-icon svg {
  fill: var(--greyblue);
}
.help-icon[data-show-active] svg {
  fill: var(--orange);
}

.tooltip {
  display: none;
  color: var(--blue);
  z-index: 9999;
  max-width: 350px;
  font-weight: 700;
  padding-bottom: 4px;
}
.tooltip .inner-tooltip-wrapper {
  padding: 8px 12px;
  border-radius: 5px;
  background-color: var(--white);
  box-shadow: 6px 6px 9px rgba(0, 0, 0, 0.15);
}
.tooltip .description {
  margin: 0;
  font-size: initial;
}
.tooltip a {
  color: var(--orange);
}
.tooltip a:hover {
  color: var(--orange);
  text-decoration: underline;
}
.tooltip[data-show] {
  display: block;
}

input {
  width: 100%;
  height: 60px;
  border-radius: 5px;
  border: 1.4px solid var(--black);
  padding: 10px 18px;
  color: var(--blue);
  -webkit-appearance: none;
  font-weight: var(--text-bold);
}
input:focus {
  border-color: var(--lightblue);
  color: var(--lightblue);
}
input:disabled {
  filter: grayscale(1);
  opacity: 0.5;
  background-color: rgba(0, 0, 0, 0.1);
}
@media (max-width: 550px) {
  input {
    height: 44px;
    padding: 8px 18px;
  }
}

textarea {
  border-radius: 5px;
  border: 1.4px solid var(--black);
  padding: 10px 18px;
  color: var(--blue);
  font-weight: var(--text-bold);
}
textarea:focus {
  border-color: var(--lightblue);
  color: var(--lightblue);
}

.label-wrapper {
  color: var(--blue);
  font-weight: 700;
  margin-bottom: 10px;
  font-family: var(--condensed);
}
.label-wrapper:has(button) {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}

.form-managed-file .file {
  background-image: none;
  word-break: break-all;
  padding: 0;
}
.form-managed-file .file a {
  color: var(--blue);
}
.form-managed-file .file a:hover, .form-managed-file .file a:focus {
  color: var(--lightblue);
}
.form-managed-file input[data-drupal-selector*=-remove-button] {
  display: block;
  padding: 8px 20px;
  max-width: fit-content;
  line-height: 1.25;
  margin: 10px 0;
  border-radius: 20px;
  height: auto;
  font-size: 0.8888888889rem;
  color: var(--red);
  border: 1.4px solid var(--red);
  background: var(--white);
  font-weight: bold;
  transition: all ease-in-out 0.3s;
  cursor: pointer;
}
.form-managed-file input[data-drupal-selector*=-remove-button]:hover, .form-managed-file input[data-drupal-selector*=-remove-button]:focus {
  background: var(--red);
  color: var(--white);
}
.form-managed-file label.file-input-field {
  display: block !important;
  padding: 8px 20px;
  max-width: fit-content;
  margin: 0 auto;
  border-radius: 20px;
  font-size: 0.8888888889rem;
  color: var(--lightblue);
  border: 1.4px solid var(--lightblue);
  background: var(--white);
  font-weight: bold;
  transition: all ease-in-out 0.3s;
  cursor: pointer;
}
.form-managed-file label.file-input-field:hover, .form-managed-file label.file-input-field:focus {
  background: var(--lightblue);
  color: var(--white);
}

.drop-area {
  position: relative;
  height: 200px;
  width: 100%;
  border: 2px dashed var(--linedarkgrey);
  border-radius: 5px;
}
.drop-area input {
  width: 100%;
  height: 100%;
  max-width: none;
  opacity: 0;
  padding: 0;
  margin: 0;
  cursor: pointer;
}
.drop-area .chosen-file {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  padding: 0 30px;
  text-align: center;
  z-index: -1;
}

.form-checkboxes > div.js-form-type-checkbox {
  margin-bottom: 5px;
}
.form-checkboxes > div.js-form-type-checkbox:last-child {
  margin-bottom: 0;
}

.form-type-checkbox {
  display: flex;
  align-items: center;
}
.form-type-checkbox label {
  padding-left: 10px;
}
.form-type-checkbox button {
  margin-left: 10px;
}
.form-type-checkbox input {
  position: relative;
  width: 22px;
  height: 22px;
  border: 1.4px solid var(--linedarkgrey);
  border-radius: 5px;
  padding: 0;
  flex-shrink: 0;
}
.form-type-checkbox input:checked {
  background-color: var(--blue);
  border: 1px solid var(--blue);
}
.form-type-checkbox input:checked::after {
  content: "";
  position: absolute;
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  width: 50.0625em;
  height: 50.0625em;
  background-position: -50.9375em -50.9375em;
  font-size: 2.3%;
  filter: invert(100%);
}
.form-type-checkbox input:focus {
  border-color: var(--lightblue);
  border-width: 2px;
}

.form-type-radio {
  display: flex;
  align-items: center;
  margin: 0;
}
.form-type-radio input {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  padding: 0;
}
.form-type-radio input:checked:before {
  content: "";
  width: 10px;
  height: 10px;
  background: var(--blue);
  border-radius: 50%;
}
.form-type-radio label {
  margin: 0;
  padding-left: 10px;
}
.form-type-radio .label-wrapper {
  justify-content: flex-start;
  margin-bottom: 0;
}

input[disabled=disabled], textarea[disabled=disabled] {
  filter: grayscale(1);
  opacity: 0.5;
  background-color: rgba(0, 0, 0, 0.1);
  resize: none;
}
input[disabled=disabled]:hover, textarea[disabled=disabled]:hover {
  cursor: not-allowed;
}

.form-control.form-date {
  background-image: url("/themes/custom/drupalix/images/icons/calendar.svg");
  background-repeat: no-repeat;
  background-position: calc(100% - 16px) center;
  background-size: 16px;
  padding-right: 40px;
  cursor: pointer;
}
.form-control.form-time {
  background-image: url("/themes/custom/drupalix/images/icons/clock.svg");
  background-repeat: no-repeat;
  background-position: calc(100% - 16px) center;
  background-size: 16px;
  padding-right: 40px;
  cursor: pointer;
}
/*# sourceMappingURL=form_elements.css.map */