/* Fonts */
@import url("https://fonts.googleapis.com/css2?family=Chakra+Petch:wght@300;400;500;600;700&family=Josefin+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;1,200;1,300;1,400;1,500;1,600;1,700&family=Poppins:wght@400;500;600;700&display=swap");

/* Globals */
* {
  margin: 0;
  padding: 0;
  font-family: "Josefin Sans";
  color: rgba(31, 41, 55, 1);
}

a {
  text-decoration: none;
}

ul {
  list-style: none;
}

input,
textarea {
  outline: none;
}
input:focus,
textarea:focus {
  border: 2px solid rgba(96, 165, 250, 1);
}

::selection {
  background-color: rgba(96, 165, 250, 1);
  color: rgba(243, 244, 246, 1);
}

.btn {
  background-color: rgba(96, 165, 250, 1);
  color: rgba(243, 244, 246, 1);
  padding: 12px 24px;
  border-radius: 4px;
  margin: 12px 5px;
  box-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  border: none;
  cursor: pointer;
}

.input {
  background-color: rgba(243, 244, 246, 1);
  padding: 12px;
  border-radius: 4px;
  border: 1px solid rgba(156, 163, 175, 1);
  width: 100%;
  font-size: 1em;
  font-family: "Poppins";
  margin: 12px 5px;
  resize: none;
}

.card {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 24px;
  margin: 0 24px;
  border-radius: 12px;
  box-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
}

.btn:hover,
.card:hover {
  box-shadow: 0 1px 3px 0 rgba(96, 165, 250, 1),
    0 1px 2px -1px rgba(96, 165, 250, 1);
  transition: 0.3s;
}

/* Utilities */

/* Backgrounds */
.bg-black {
  background-color: #262626;
}
.bg-image {
  background-image: url("../assets/cars.webp");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
}
.bg-primary {
  background-color: rgba(96, 165, 250, 1);
}
.bg-surface {
  background-color: rgba(239, 246, 255, 1);
  /* background-color: "rgba(239, 246, 255, 1) */
}
.bg-light {
  /* background-color: rgba(239, 246, 255, 1); */
  background-color: rgba(243, 244, 246, 1);
}
.bg-blob {
  background-image: url("../assets/blob.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}

/* Flex */
.flex {
  display: flex;
}
.wrap {
  flex-wrap: wrap;
}
.center {
  justify-content: center;
  align-items: center;
}
.items-center {
  align-items: center;
}
.self-end {
  align-self: flex-end;
}
.justify-center {
  justify-content: center;
}
.justify-between {
  justify-content: space-between;
}
.justify-evenly {
  justify-content: space-evenly;
}
.justify-around {
  justify-content: space-around;
}
.column {
  flex-direction: column;
}
.row {
  flex-direction: row;
}

/* Spacing */
.ml-15 {
  margin-left: 15%;
}
.mr-15 {
  margin-right: 15%;
}
.my-1 {
  margin-top: 12px;
  margin-bottom: 12px;
}
.mt-1 {
  margin-top: 12px;
}
.mx-1 {
  margin-right: 12px;
  margin-left: 12px;
}
.mt-2 {
  margin-top: 24px;
}
.mx-2 {
  margin-right: 24px;
  margin-left: 24px;
}
.my-2 {
  margin-top: 24px;
  margin-bottom: 24px;
}
.mb-2 {
  margin-bottom: 24px;
}
.mb-1 {
  margin-bottom: 12px;
}
.mx-05 {
  margin-right: 5px;
  margin-left: 5px;
}
.px-05 {
  padding-right: 5px;
  padding-left: 5px;
}
.py-05 {
  padding-top: 5px;
  padding-bottom: 5px;
}
.pb-05 {
  padding-bottom: 5px;
}
.pr-05 {
  padding-right: 5px;
}
.p-1 {
  padding: 12px;
}
.pt-1 {
  padding-top: 12px;
}
.pr-1 {
  padding-right: 12px;
}
.px-1 {
  padding-left: 12px;
  padding-right: 12px;
}
.py-1 {
  padding-top: 12px;
  padding-bottom: 12px;
}
.pb-1 {
  padding-bottom: 12px;
}
.p-2 {
  padding: 24px;
}
.pt-2 {
  padding-top: 24px;
}
.px-2 {
  padding-right: 24px;
  padding-left: 24px;
}
.py-2 {
  padding-top: 24px;
  padding-bottom: 24px;
}
.pr-2 {
  padding-right: 24px;
}
.pl-2 {
  padding-left: 24px;
}
.pt-10 {
  padding-top: 10%;
}
.pt-15 {
  padding-top: 15%;
}
.pr-15 {
  padding-right: 15%;
}
.pl-15 {
  padding-left: 15%;
}

/* Display */
.hidden {
  display: none;
}
.shown {
  display: flex;
}

.active {
  color: rgba(96, 165, 250, 1);
  border-bottom: 1px solid rgba(96, 165, 250, 1);
}

/* Typography */
/* Text Color */
.text-primary {
  color: rgba(96, 165, 250, 1);
}
.text-secondary {
  /* color: rgba(156, 163, 175, 1); */
  color: rgba(107, 114, 128, 1);
}
.text-surface {
  color: rgba(243, 244, 246, 1);
}
.text-yellow {
  color: #ffda1c;
}
/* Text Align */
.text-center {
  text-align: center;
}
.text-left {
  text-align: left;
}
.text-right {
  text-align: right;
}
/* Font Size */
.text-3xl {
  font-size: calc(1em + 4vw);
}
.text-2xl {
  font-size: calc(1em + 3vmax);
}
.text-xl {
  font-size: 34px;
}
.text-lg {
  font-size: 24px;
}
.text-md {
  font-size: 1.2em;
  font-family: "Poppins";
}
.text-sm {
  font-size: 1em;
  font-family: "Poppins";
}
/* Font Family */
.font-bold {
  font-weight: bold;
}
.font-chakra {
  font-family: "Chakra Petch", sans-serif;
}
.font-josefin {
  font-family: "Josefin Sans", sans-serif;
}
.font-poppins {
  font-family: "Poppins", sans-serif;
}
/* Text Transform */
.uppercase {
  text-transform: uppercase;
}

/* Layout: Width & Height */
.h-screen {
  height: 100vh;
}
.w-screen {
  width: 100vw;
}
.w-screen-50 {
  width: 50vw;
}
.h-screen-50 {
  width: 50vw;
}
.h-screen-5 {
  height: 5vh;
}
.h-screen-90 {
  height: 80vh;
}
.w-full {
  width: 100%;
}
.w-half {
  width: 50%;
}
.h-full {
  height: 100%;
}
.h-half {
  height: 50%;
}
.col-1 {
  width: 8.33%;
}
.col-2 {
  width: 16.66%;
}
.col-3 {
  width: 25%;
}
.col-4 {
  width: 33.33%;
}
.col-5 {
  width: 41.66%;
}
.col-6 {
  width: 50%;
}
.col-7 {
  width: 58.33%;
}
.col-8 {
  width: 66.66%;
}
.col-9 {
  width: 75%;
}
.col-10 {
  width: 83.33%;
}
.col-11 {
  width: 91.66%;
}
.col-12 {
  width: 100%;
}

/* Positions */
.sticky {
  position: sticky;
  top: 0;
}
.relative {
  position: relative;
}
.absolute {
  position: absolute;
  z-index: 0;
}
.bottom-0 {
  bottom: 0;
}
.right-0 {
  right: 0;
}
.z-99 {
  z-index: 99;
}
.z-1 {
  z-index: 1;
}

/* Sliding Animation */
.slides {
  display: none;
}
.slide {
  animation-name: slide;
  animation-duration: 1.5s;
  transition: 5s;
}

/* Border */
.border {
  border: 1px solid rgba(156, 163, 175, 1);
}
.border-t {
  border-top: 1px solid rgba(209, 213, 219, 1);
}
.border-b {
  border-bottom: 1px solid rgba(209, 213, 219, 1);
}
.border-none {
  border: none;
}
.rounded-sm {
  border-radius: 4px;
}
.rounded {
  border-radius: 12px;
}
.rounded-full {
  border-radius: 50px;
}

/* Effects */
.shadow {
  box-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
}
.hover-shadow:hover {
  box-shadow: 0 1px 3px 0 rgba(96, 165, 250, 1),
    0 1px 2px -1px rgba(96, 165, 250, 1);
  transition: 0.3s;
}
.hover-border:hover {
  color: rgba(96, 165, 250, 1);
  border-bottom: 1px solid rgba(96, 165, 250, 1);
  transition: 0.3s;
}
.hover-bounce:hover {
  animation: bounce 1.3s infinite;
}

.pointer {
  cursor: pointer;
}

/* Animations */
.bounce {
  animation: slow-bounce 2.5s infinite;
}
@keyframes bounce {
  0%,
  100% {
    transform: translateY(-25%);
  }
  50% {
    transform: translateY(0);
  }
}
@keyframes slow-bounce {
  0%,
  100% {
    transform: translateY(-2%);
  }
  50% {
    transform: translateY(2%);
  }
}
@keyframes slide {
  from {
    opacity: 0.4;
  }
  to {
    opacity: 1;
  }
}

/* Media Query */

@media (max-width: 800px) {
  .row {
    flex-direction: column;
  }
  .bg-blob {
    background: none;
  }
  .mr-15 {
    margin-right: 0%;
    /* margin-right: 5%; */
  }
  .ml-15 {
    margin-left: 0%;
    /* margin-left: 5%; */
  }
  .col-4,
  .col-3,
  .col-5,
  .col-7 {
    width: 100%;
  }
  .col-2 {
    width: 50%;
  }
  .h-screen,
  .h-screen-90 {
    height: 100%;
  }
  .w-screen-50 {
    width: 100%;
  }
  .text-md,
  .input {
    font-size: 1em;
  }
  .text-left,
  .text-right {
    text-align: center;
  }
  .shown {
    display: none;
  }
  .hidden {
    display: flex;
  }
  .self-end {
    align-self: center;
  }
  .input {
    font-size: 1em;
  }
  .btn {
    width: 50%;
  }
}
