@import "reset.css";
@import url("https://fonts.googleapis.com/css2?family=Ubuntu:wght@400;700&display=swap");
.animate-zoom-in {
  animation-name: zoomIn;
  animation-duration: 2s;
}

@keyframes zoomIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.alert {
  border-radius: 20px;
  display: flex;
  gap: 10px;
  padding: 15px;
  font-size: 14px;
  line-height: 22px;
}
.alert .material-symbols-outlined {
  font-variation-settings: "FILL" 1, "wght" 400, "GRAD" 0, "opsz" 48;
}
.alert .alert-message {
  line-height: 22px;
}
.alert.alert-error {
  background-color: #fce8e7;
  color: #c55a68;
}
.alert.alert-success {
  background-color: #e5f3ed;
  color: #008552;
}
.alert.alert-warning {
  background-color: #fdf6c9;
  color: #57585b;
}
.alert.alert-info {
  background-color: #e1e5eb;
  color: #272728;
}
.alert.alert-info .icon-help {
  color: #1BA2AF;
}

.icon {
  display: inline-block;
}
.icon.icon-visibility:before {
  font-family: "Material Icons", sans-serif;
  content: "\e8f4";
}
.icon.icon-visibility-off:before {
  content: "\e8f5";
}

.modal {
  display: none;
  position: fixed;
  z-index: 1;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgb(0, 0, 0);
  background-color: rgba(0, 0, 0, 0.4);
}

/* Modal Content */
.modal-content {
  position: relative;
  background-color: #fefefe;
  margin: auto;
  padding: 40px;
  border: 1px solid #888;
  width: 50%;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1607843137);
  border-radius: 20px;
  -webkit-animation-name: animatetop;
  -webkit-animation-duration: 0.4s;
  animation-name: animatetop;
  animation-duration: 0.4s;
}

/* Add Animation */
@-webkit-keyframes animatetop {
  from {
    top: -300px;
    opacity: 0;
  }
  to {
    top: 0;
    opacity: 1;
  }
}
@keyframes animatetop {
  from {
    top: -300px;
    opacity: 0;
  }
  to {
    top: 0;
    opacity: 1;
  }
}
/* The Close Button */
.close {
  float: right;
  font-size: 28px;
  font-weight: bold;
}

.close:hover,
.close:focus {
  color: #000;
  text-decoration: none;
  cursor: pointer;
}

.modal-header {
  padding: 2px 16px;
  text-align: center;
}

.modal-body {
  padding: 20px;
  line-height: 1.5;
}

.modal-footer {
  padding: 2px 16px;
  background-color: #5cb85c;
  color: white;
}

body {
  font-family: "Ubuntu", sans-serif;
}

em {
  font-style: italic;
}

.full-width {
  width: 100%;
}

.max-width-50 {
  max-width: 50%;
}

.divider {
  border: none;
  border-top: 1px solid #bbb;
}

a {
  color: #1BA2AF;
  text-decoration: none;
}

b {
  font-weight: bold;
}

/*
  Flex properties.
  add more if needed.
 */
.d-flex {
  display: flex;
}

.flex-wrap {
  flex-wrap: wrap;
}

.flex-basis-50 {
  flex-basis: 50%;
}

.justify-content-space-between {
  justify-content: space-between;
}

/**
  GAP is used for spacing internal flex items. (add it to the parent).
 */
.gap {
  gap: 1px;
}
.gap-10 {
  gap: 10px;
}
.gap-20 {
  gap: 20px;
}

/*
  width properties
 */
.width-100 {
  width: 100%;
}
.width-50 {
  width: 50%;
}

/*
  height properties
 */
.height-100 {
  height: 100%;
}
.height-100-vh {
  height: 100vh;
}
.height-50 {
  height: 50%;
}
.height-40px {
  height: 40px;
}
.height-44px {
  height: 44px;
}

.background-white {
  background-color: #FFFFFF;
}

.mt-10 {
  margin-top: 10px;
}

.href-submit {
  background: none;
  border: none;
  padding: 0;
  color: #19A9B5;
}
.href-submit:hover {
  cursor: pointer;
}

.text-primary {
  color: #1BA2AF;
}

.cursor-pointer {
  cursor: pointer;
}

.position-absolute-center-y {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 20px;
  pointer-events: none;
}
.position-absolute-center-y.toggle-icon {
  pointer-events: all;
}

.center-panel {
  width: 80%;
}
.center-panel .panel-container {
  width: 90%;
  height: 100vh;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
}
.center-panel .panel-container .top {
  display: flex;
  justify-content: space-between;
  flex-direction: row;
  margin-top: 20px;
}
.center-panel .panel-container .content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 80%;
  margin: 0 auto;
  height: auto;
  font-size: 14px;
}
.center-panel .panel-container .content .title {
  font-size: 24px;
  font-weight: bold;
  padding: 25px 0;
}
.center-panel .panel-container .content .forgot-password-container {
  display: flex;
  justify-content: flex-end;
  font-size: 12px;
  padding-bottom: 10px;
}
.center-panel .panel-container .content .forgot-password-container .forgot-password-action {
  margin-right: 2px;
}
.center-panel .panel-container .content .new-user-section a {
  padding: 0;
}
.center-panel .panel-container .content .terms-and-conditions {
  padding-top: 25px;
  font-size: 12px;
  text-align: center;
  line-height: 1.6;
}

.left-panel {
  width: 50%;
}
.left-panel .panel-container {
  width: 90%;
  height: 100vh;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
}
.left-panel .panel-container .top {
  display: flex;
  justify-content: space-between;
  flex-direction: row;
  margin-top: 20px;
}
.left-panel .panel-container .content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 60%;
  margin: 0 auto;
  height: 100%;
  max-width: 600px;
}
.left-panel .panel-container .content .title {
  font-size: 24px;
  font-weight: bold;
  padding: 25px 0;
}
.left-panel .panel-container .content .forgot-password-container {
  display: flex;
  justify-content: flex-end;
  font-size: 12px;
  padding-bottom: 10px;
}
.left-panel .panel-container .content .forgot-password-container .forgot-password-action {
  margin-right: 2px;
}
.left-panel .panel-container .content .new-user-section a {
  padding: 0;
}
.left-panel .panel-container .content .terms-and-conditions {
  padding-top: 25px;
  font-size: 12px;
  text-align: center;
  line-height: 1.6;
}

#kc-register-form .new-user-section {
  padding-top: 15px;
  display: flex;
  justify-content: center;
}

.right-panel {
  background-image: url("../images/backgroundImage.png");
  background-repeat: no-repeat;
  background-size: cover;
  display: flex;
  justify-content: center;
}
.right-panel .content {
  display: flex;
  justify-content: center;
  flex-direction: column;
  color: white;
  width: 70%;
  height: 100%;
}
.right-panel .content .title {
  font-size: 48px;
  font-weight: bold;
  padding-bottom: 25px;
}
.right-panel .content .text {
  font: normal normal normal 20px/26px Ubuntu, sans-serif;
}

.action {
  display: flex;
  align-items: center;
}

@media only screen and (max-width: 992px) {
  .right-panel {
    display: none;
  }
  .left-panel {
    width: 100%;
  }
  .left-panel .panel-container .content {
    width: auto;
  }
  .center-panel {
    width: 80%;
  }
}
.login-update-password .toggle-icon {
  color: #333;
}
.login-update-password .toggle-icon:hover {
  cursor: pointer;
}
.login-update-password .password-strength-messages {
  padding: 10px 0;
}
.login-update-password .password-strength-messages .action {
  display: flex;
  align-items: center;
  font-size: 14px;
  padding: 5px 0;
  color: #333;
}
.login-update-password .password-strength-messages .action-icon {
  padding-right: 5px;
  font-size: 19px;
}

#kc-email-code-registration-form {
  margin-bottom: 20px;
}
#kc-email-code-registration-form .terms-and-conditions {
  font-size: 14px;
}

.social-login {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
}

.social-login-item {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 42px;
  height: 42px;
  border-radius: 50px;
}
.social-login-item img {
  width: 100%;
  height: 100%;
  max-width: 100%;
}

.marketing-consent-content {
  justify-content: center;
}
.marketing-consent-content .marketing-title {
  display: flex;
  justify-content: left;
  font-size: 20px;
  font-weight: bold;
  padding-bottom: 16px;
}
.marketing-consent-content .marketing-consent-page {
  width: 80%;
}
.marketing-consent-content .marketing-consent-page .center-panel .panel-container {
  height: auto;
}
.marketing-consent-content .marketing-consent-page .center-panel .panel-container .content {
  width: 80%;
}
.marketing-consent-content .marketing-consent-page .height-100-vh {
  min-height: 100vh;
  height: auto;
}
.marketing-consent-content .marketing-consent-page .card {
  margin: 20px 0;
}
.marketing-consent-content .marketing-consent-page .divider {
  padding: 5px 0;
}
.marketing-consent-content .marketing-consent-page .card-body {
  padding: 10px 50px;
}
.marketing-consent-content .marketing-consent-page .card-body.marketing-consent-body {
  padding: 40px;
}
.marketing-consent-content .marketing-consent-page .card-body.marketing-consent-body p {
  line-height: 22px;
}
.marketing-consent-content .marketing-consent-page .card-body.marketing-consent-body .consent-label {
  padding: 9px 0;
}
.marketing-consent-content .marketing-consent-page .card-body.marketing-consent-body .contact-me-via {
  padding-top: 5px;
  padding-bottom: 18px;
  font-weight: bold;
}
.marketing-consent-content .marketing-consent-page .marketing-profiling-options {
  padding: 10px;
}
.marketing-consent-content .marketing-consent-page .marketing-consent-confirm-btn {
  padding: 12px 28px;
}
.marketing-consent-content .marketing-consent-page .toggle {
  display: flex;
  justify-content: left;
  align-items: center;
  gap: 10px;
}
.marketing-consent-content .marketing-consent-page .toggle label {
  color: #1BA2AF;
  position: relative;
  min-width: 55px;
  min-height: 13px;
}
.marketing-consent-content .marketing-consent-page .consent-options-container {
  display: flex;
  flex-direction: row;
  gap: 10px;
  align-items: baseline;
}
.marketing-consent-content .marketing-consent-page .personalisedAd-error-enabled {
  display: flex !important;
  justify-content: left;
  padding: 10px;
  width: max-content;
  border-radius: 20px;
  opacity: 1;
  color: #C55A68;
  margin-top: 20px;
  background-color: #FCE8E7;
}
.marketing-consent-content .marketing-consent-page .personalisedAd-error-disabled {
  display: none !important;
  justify-content: left;
  padding: 10px;
  width: max-content;
  border-radius: 20px;
  opacity: 1;
  color: #C55A68;
  margin-top: 20px;
}

@media only screen and (max-width: 992px) {
  .center-panel {
    width: 100%;
  }
  .center-panel .panel-container .content {
    width: 100%;
  }
  .marketing-consent-content .marketing-consent-page {
    width: 100%;
  }
  .marketing-consent-content .marketing-consent-page .card {
    width: 100%;
  }
  .marketing-consent-content .marketing-consent-page .card .marketing-consent-body {
    padding: 10px;
  }
  .marketing-consent-content .marketing-consent-page .consent-options-container {
    display: flex;
    flex-direction: column;
    gap: 10px;
    align-items: baseline;
  }
  .marketing-consent-content .marketing-consent-page .modal-content {
    width: 100%;
  }
  .marketing-consent-content .marketing-consent-page .toggle {
    display: flex;
    flex-direction: column;
    justify-content: left;
    align-items: flex-start;
  }
  .marketing-consent-content .marketing-consent-page .personalisedAd-error-enabled {
    display: flex !important;
    justify-content: left;
    padding: 10px;
    width: auto;
    border-radius: 20px;
    opacity: 1;
    color: #C55A68;
    margin-top: 20px;
    background-color: #FCE8E7;
  }
  .marketing-consent-content .marketing-consent-page .personalisedAd-error-disabled {
    display: none !important;
    justify-content: left;
    padding: 10px;
    width: auto;
    border-radius: 20px;
    opacity: 1;
    color: #C55A68;
    margin-top: 20px;
  }
}
.btn {
  border-radius: 20px;
  border-width: 1px;
  font-size: 15px;
  margin: 10px 0;
  font-family: "Ubuntu", sans-serif;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 44px;
}
.btn:hover {
  cursor: pointer;
}
.btn-primary {
  background-color: #1BA2AF;
  color: white;
  border-color: transparent;
  font-weight: bold;
}
.btn-secondary {
  color: #1BA2AF;
  border: #1BA2AF 1px solid;
  background-color: #FFFFFF;
  font-weight: bold;
  font-size: 16px;
}

.rounded-input {
  border: 1px solid #E1E6ED;
  border-radius: 20px;
  padding: 10px;
  padding-left: 25px;
  margin: 10px 0;
  -webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
  -moz-box-sizing: border-box; /* Firefox, other Gecko */
  box-sizing: border-box; /* Opera/IE 8+ */
  font-size: 16px;
}
.rounded-input:focus-visible {
  outline-color: #1BA2AF;
}

.form-group-with-icon {
  border: 1px solid #E1E6ED;
  border-radius: 20px;
  height: 40px;
  display: flex;
  flex-direction: row;
  justify-content: space-evenly;
  align-items: center;
  padding: 0 25px;
  margin-bottom: 15px;
}
.form-group-with-icon:has(input:-webkit-autofill) {
  appearance: menulist-button;
  background-image: none !important;
  background-color: rgb(232, 240, 254) !important;
  color: fieldtext !important;
}
.form-group-with-icon:focus-within {
  border-color: #1BA2AF;
}
.form-group-with-icon:focus {
  border-color: #1BA2AF;
}
.form-group-with-icon .input-with-icon {
  font-size: 16px;
  padding: 10px 0;
  border: none;
  margin-left: 0;
  border-radius: 20px;
  flex: 1;
  outline: none;
}

.form-group {
  position: relative;
}

.form-group > label {
  bottom: 24px;
  left: 15px;
  position: absolute;
  background-color: white;
  padding: 0px 5px 0px 5px;
  font-size: 1em;
  transition: 0.2s;
  pointer-events: none;
}

.form-control {
  border-radius: 20px;
}
.form-control::placeholder {
  color: transparent;
}
.form-control:focus ~ label, .form-control:not(:placeholder-shown) ~ label {
  bottom: 47px;
  font-size: 12px;
  border-radius: 20px;
}

.bordered-container {
  border-bottom: 1px solid #e2e6ec;
  position: relative;
  margin: 25px 0;
}
.bordered-container .text-container {
  position: absolute;
  text-align: center;
  top: -9px;
  margin: 0 auto;
  left: 0;
  right: 0;
  font-size: 13px;
}
.bordered-container .text {
  background-color: white;
  padding: 0 10px;
  color: #5B6A7E;
}

/* The container <div> - needed to position the dropdown content */
.dropdown {
  position: relative;
  display: inline-block;
  text-transform: uppercase;
  /* Dropdown Button */
  /* Dropdown Content (Hidden by Default) */
}
.dropdown .dropbtn {
  padding: 16px;
  font-size: 16px;
  font-weight: bold;
  border: none;
  background: none;
  color: #5B6A7E;
  display: flex;
  gap: 15px;
}
.dropdown .dropdown-content {
  display: none;
  position: absolute;
  background-color: #f1f1f1;
  min-width: 100px;
  box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
  z-index: 1;
}
.dropdown .dropdown-content a {
  color: black;
  padding: 12px 16px;
  text-decoration: none;
  display: block;
}
.dropdown .dropdown-content.right {
  right: 0;
}

/* Change color of dropdown links on hover */
.dropdown-content a:hover {
  background-color: #ddd;
}

/* Show the dropdown menu on hover */
.dropdown:hover .dropdown-content {
  display: block;
}

.error {
  border: 1px solid #c55a68;
  background-color: transparent;
}
.error-label {
  color: #c55a68;
  margin-left: 5px;
  padding: 5px 0;
}

.card {
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1607843137);
  border-radius: 20px;
  min-width: 460px;
}
.card .card-image {
  width: 100%;
}
.card .card-title {
  text-align: center;
  padding-bottom: 10px;
  padding-top: 20px;
}
.card .card-title p {
  font-size: 26px;
  font-weight: bold;
}
.card .card-body {
  padding: 10px 50px;
}
.card .card-footer {
  display: flex;
  justify-content: center;
}
.card .card-footer .btn {
  padding: 10px;
}

@media (max-width: 768px) {
  .card {
    width: auto;
    min-width: auto;
  }
}
.password-policies-container {
  padding: 10px;
}

.toggle input[type=checkbox] {
  display: none;
}
.toggle label {
  color: #1BA2AF;
  position: relative;
}
.toggle input[type=checkbox] + label::before {
  content: " ";
  display: block;
  height: 12px;
  width: 45px;
  border: 1px solid #A8AFB9;
  border-radius: 9px;
  position: absolute;
  top: 0px;
  background: #A8AFB9;
}
.toggle input[type=checkbox] + label::after {
  content: " ";
  display: block;
  height: 24px;
  width: 24px;
  border: 1px solid #FFFFFF;
  border-radius: 50%;
  position: absolute;
  top: -6px;
  background: #FFFFFF;
  box-shadow: 0px 1px 4px rgba(0, 0, 0, 0.1019607843);
}
.toggle input[type=checkbox]:checked + label::after {
  left: 21px;
  background: #1BA2AF;
}

#kc-login-idp-link-email-form .instruction {
  margin-bottom: 10px;
}

#kc-email-code-registration-title .emailAddress {
  max-width: 100%;
  word-break: unset;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: normal;
}
#kc-email-code-registration-title .emailAddress:hover {
  display: block;
  word-break: break-all;
}
@media only screen and (max-width: 992px) {
  #kc-email-code-registration-title .emailAddress {
    display: block;
    word-break: break-all;
  }
}

/*# sourceMappingURL=index.css.map */
