:root {
  --main-color: #050563;
  --secondary-color: #e8e3ed;
  --third-color: #CB4F1C;
  --current-color: #f7f7f9;
  --purple-color: #84329b;
  --blue-color: #0050B4;
  --light_blue-color: #3EB1C5;
  --green-color: #91c36e;
  --orange-color: #E75114;
  --grey-color-filter: #898ca4;
  --green-color-filter: #008a00;
  --grey-color: #6e6e6e;
  --red-color: #E03404;
  --yellow-color: #F39004;
  --cera-number: "Cera number", sans-serif;
  --cera-light: "Roboto", sans-serif;
  --cera-regular: "Roboto", sans-serif;
  --cera-medium: "Roboto", sans-serif;
  --cera: "Roboto", sans-serif;
  --cera-black: "Roboto", sans-serif;
  --bryant-bold: "Bryant bold", sans-serif;
  --height-navbar: 70px;
  --blue-footer: #2B3370;
}

*, *::before, *::after {
  box-sizing: border-box;
}

@media screen and (max-width: 1050px) {
  :root {
    --height-navbar: 130px;
  }
}


@font-face {
  font-family: "Cera light";
  src: url("../fonts/CeraPRO-Light.ttf") format("truetype");
  font-style: normal;
}

@font-face {
  font-family: "Cera regular";
  src: url("../fonts/CeraPRO-Regular.ttf") format("truetype");
  font-style: normal;
}
@font-face {
  font-family: "Cera medium";
  src: url("../fonts/CeraPRO-Medium.ttf") format("truetype");
  font-style: normal;
}
@font-face {
  font-family: "Cera bold";
  src: url("../fonts/Cera-Pro-Bold.otf") format("opentype");
  font-style: normal;
}
@font-face {
  font-family: "Cera black";
  src: url("../fonts/CeraPRO-Black.ttf") format("truetype");
  font-style: normal;
}
@font-face {
  font-family: "Bryant bold";
  src: url("../fonts/bryant-bold-webfont.ttf") format("truetype");
  font-style: normal;
}

body {
  background-color: var(--current-color);
}

@keyframes scale {
  from {
    transform: scale(1);
  }
  to {
    transform: scale(1.1);
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes fadeTop {
  from {
    transform: translateY(-20px);
    opacity: 0;
  }
  to {
    transform: translateY(0px);
    opacity: 1;
  }
}

@keyframes fadeRight {
  from {
    transform: translateX(-10px);
    opacity: 0;
  }
  to {
    transform: translateX(0px);
    opacity: 1;
  }
}

@keyframes SlideRight {
  from {
    transform: translateX(110%);
  }
  to {
    transform: translateX(0px);
  }
}

@keyframes SlideTop {
  from {
    transform: translateY(110%);
  }
  to {
    transform: translateY(0px);
  }
}

.d-block {
  display: block;
}

.d-none {
  display: none;
}

.d-none-important {
  display: none !important;
}

.text-center {
  text-align: center;
}

.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

.text-transform-uppercase {
  text-transform: uppercase !important;
}

.text-transform-lowercase {
  text-transform: lowercase !important;
}

.text-transform-capitalize {
  text-transform: capitalize !important;
}

.text-transform-none {
  text-transform: none !important;
}

.text-deco-none {
  text-decoration: none;
}

.default-p {
  /*font-family: var(--cera-regular);*/
  font-size: 16px;
}

.btn {
  /*font-family: var(--cera-regular);*/
  font-size: 12px;
  color: #fff;
  padding: 15px 20px;
  border-radius: 50px;
  text-transform: uppercase;
  border: 0px;
  cursor: pointer;
  position: relative;
  text-decoration: none;
  width: max-content;
  overflow: hidden;
  min-width: fit-content;
}

.btn-fill {
  border: 1px solid !important;
  background-color: transparent !important;
  transition: all 0.2s ease;
}

.btn-fill:hover {
  transform: scale(1.1);
}

.btn-fill::before {
  display: none !important;
}

.btn-small {
  padding: 10px 20px !important;
}

.scale-on-hover:hover {
  animation: scale 0.2s forwards ease-in-out;
}

.disable-shadow-on-hover:hover {
  box-shadow: 0 0 0 rgb(22 27 75 / 17%) !important;
}

/* .btn:hover::before {
  position: absolute;
  height: 100%;
  width: 100%;
  content: "";
  background-color: #00000045;
  top: 0;
  left: 0;
  z-index: -1;
  border-radius: 50px;
} */

.btn::before {
  position: absolute;
  height: 100%;
  content: "";
  top: 0;
  left: 0;
  z-index: -1;
  width: 0px;
  border-radius: 50px;
  transition: all 0.2s ease-in;
}
.btn:hover::before {
  width: 100%;
}

.btn[class*="bg-main"]::before {
  background-color: var(--red-color) !important;
}

.btn[class*="bg-purple"]::before {
  background-color: var(--main-color) !important;
  animation: fadeIn 0.2s forwards ease-in;
}

.btn[class*="bg-blue"]::before {
  background-color: var(--main-color) !important;
  animation: fadeIn 0.2s forwards ease-in;
}

.btn[class*="bg-green"]::before {
  background-color: var(--main-color) !important;
  animation: fadeIn 0.2s forwards ease-in;
}

.btn[class*="bg-grey"]::before {
  background-color: grey !important;
  animation: fadeIn 0.2s forwards ease-in;
}

.btn[class*="bg-orange"]::before {
  background-color: var(--main-color) !important;
  animation: fadeIn 0.2s forwards ease-in;
}

.btn[class*="bg-red"]::before {
  background-color: var(--main-color) !important;
  animation: fadeIn 0.2s forwards ease-in;
}

.bg-main {
  background-color: var(--main-color) !important;
  animation: fadeIn 0.2s forwards ease-in;
}

.bg-purple {
  background-color: var(--purple-color) !important;
  animation: fadeIn 0.2s forwards ease-in;
}

.bg-blue {
  background-color: var(--blue-color) !important;
  animation: fadeIn 0.2s forwards ease-in;
}

.bg-green {
  background-color: var(--green-color) !important;
  animation: fadeIn 0.2s forwards ease-in;
}

.bg-grey {
  background-color: grey !important;
  animation: fadeIn 0.2s forwards ease-in;
}

.bg-orange {
  background-color: var(--orange-color) !important;
  animation: fadeIn 0.2s forwards ease-in;
}

.bg-red {
  background-color: var(--red-color) !important;
  animation: fadeIn 0.2s forwards ease-in;
}

.bg-transparent {
  background-color: transparent !important;
  animation: fadeIn 0.2s forwards ease-in;
}

.border-main {
  border-color: var(--main-color) !important;
  animation: fadeIn 0.2s forwards ease-in;
}

.border-purple {
  border-color: var(--purple-color) !important;
  animation: fadeIn 0.2s forwards ease-in;
}

.border-blue {
  border-color: var(--blue-color) !important;
  animation: fadeIn 0.2s forwards ease-in;
}

.border-green {
  border-color: var(--green-color) !important;
  animation: fadeIn 0.2s forwards ease-in;
}

.border-orange {
  border-color: var(--orange-color) !important;
  animation: fadeIn 0.2s forwards ease-in;
}

.border-red {
  border-color: var(--red-color) !important;
  animation: fadeIn 0.2s forwards ease-in;
}

.text-white {
  color: #fff !important;
  animation: fadeIn 0.2s forwards ease-in;
}

.text-main {
  color: var(--main-color) !important;
  animation: fadeIn 0.2s forwards ease-in;
}

.text-purple {
  color: var(--purple-color) !important;
  animation: fadeIn 0.2s forwards ease-in;
}

.text-blue {
  color: var(--blue-color) !important;
  animation: fadeIn 0.2s forwards ease-in;
}

.text-green {
  color: var(--green-color) !important;
  animation: fadeIn 0.2s forwards ease-in;
}

.text-orange {
  color: var(--orange-color) !important;
  animation: fadeIn 0.2s forwards ease-in;
}

.text-red {
  color: var(--red-color) !important;
  animation: fadeIn 0.2s forwards ease-in;
}

.text-main-hover:hover {
  color: var(--main-color) !important;
}

.text-purple-hover:hover {
  color: var(--purple-color) !important;
}

.text-blue-hover:hover {
  color: var(--blue-color) !important;
}

.text-green-hover:hover {
  color: var(--green-color) !important;
}

.text-orange-hover:hover {
  color: var(--orange-color) !important;
}

.text-red-hover:hover {
  color: var(--red-color) !important;
}

.bg-main-hover:hover {
  background-color: var(--main-color) !important;
}

.bg-purple-hover:hover {
  background-color: var(--purple-color) !important;
}

.bg-blue-hover:hover {
  background-color: var(--blue-color) !important;
}

.bg-green-hover:hover {
  background-color: var(--green-color) !important;
}

.bg-orange-hover:hover {
  background-color: var(--orange-color) !important;
}

.bg-red-hover:hover {
  background-color: var(--red-color) !important;
}

.input_container {
  display: flex;
  flex-direction: column;
  padding: 15px 0px;
  gap: 10px;
}

.input_container > label {
  font-size: 12px;
  padding-left: 14px;
  color: #6e6e6e;
}

.input_container > input[type="text"],
.input_container > input[type="url"],
.input_container > input[type="password"] {
  padding: 10px 20px;
  border: 1px solid #e8e8ed;
  border-radius: 30px;
  color: var(--grey-color);
}

.input_container > input[type="text"]::placeholder,
.input_container > input[type="password"]::placeholder,
.input_container > input[type="url"]::placeholder {
  color: #898ca4;
}

.input_container > input:focus {
  outline: 1px solid var(--main-color);
}

.error-message {
  font-size: 14px;
  color: #e64242;
  /*font-family: var(--cera-light);*/
}

.d-flex {
  display: flex;
}

.align-items-center {
  align-items: center;
}

.justify-content-center {
  justify-content: center;
}

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

.justify-content-end {
  justify-content: flex-end;
}

.gap-5 {
  gap: 5px;
}

.gap-10 {
  gap: 10px;
}

.gap-20 {
  gap: 20px;
}

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

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

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

.px-10 {
  padding-left: 10px;
  padding-right: 10px;
}

.px-20 {
  padding-left: 20px;
  padding-right: 20px;
}

.px-30 {
  padding-left: 30px;
  padding-right: 30px;
}

.py-10 {
  padding-top: 10px;
  padding-bottom: 10px;
}

.py-20 {
  padding-top: 20px;
  padding-bottom: 20px;
}

.py-30 {
  padding-top: 30px;
  padding-bottom: 30px;
}

.title-input {
  color: var(--main-color);
  font-weight: bold;
  /*font-family: var(--cera-bold);*/
}

@media screen and (max-width: 760px) {
  #navigation_back_link {
    display: none;
  }
}

.btn-validate {
  background-color: var(--main-color) !important;
  animation: fadeIn 0.2s forwards ease-in;
  padding: 10px 20px;
  width: 150px;
  color: white;
  border: 1px solid var(--main-color);
  border-radius: 30px;
  text-transform: uppercase;
  /*font-family: var(--cera-bold);*/
  cursor: pointer;
}

@keyframes placeHolderShimmer{
  0%{
      background-position: -468px 468px
  }
  100%{
      background-position: 468px -468px 
  }
}

.animated-background {
  animation-duration: 1.25s;
  animation-fill-mode: forwards;
  animation-iteration-count: infinite;
  animation-name: placeHolderShimmer;
  animation-timing-function: linear;
  background: darkgray;
  background: linear-gradient(to right, #eeeeee 10%, #dddddd 18%, #eeeeee 33%);
  background-size: 800px 800px;
  height: 100px;
  position: relative;
}