@import url("https://fonts.googleapis.com/css2?family=Inconsolata:wght@200..900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap");

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-optical-sizing: auto;
  font-family: "Poppins", serif;
}

html,
body {
  height: 100%;
  width: 100%;
  scroll-behavior: smooth;
}

.hidden {
  display: none;
}

::-webkit-scrollbar {
  display: none;
}

/* header start*/
#header {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: 20px 50px;
  backdrop-filter: blur(10px);
  box-shadow: 0px 0px 15px rgba(160, 160, 160, 0.461);
  background-color: white;
  position: fixed;
  width: 100%;
  z-index: 10;
}

.logo h1 {
  background: linear-gradient(90deg, #0d9488, #1f2937);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: transparent;
}

.logo p {
  font-size: 12px;
  color: #1f2937;
  font-weight: 500;
}

.links {
  display: flex;
  flex-direction: row;
  gap: 10px;
}

.links button {
  padding: 8px 20px;
  border: none;
  border-radius: 25px;
  cursor: pointer;
  font-size: 14px;
  background-color: white;
  border: 1px solid #0d9488;
  color: #0d9488;
}

.menu {
  backdrop-filter: blur(10px);
  box-shadow: 5px 5px 15px rgb(160, 160, 160);
  background-color: #ffffff;
  position: fixed;
  top: 90px;
  width: 200px;
  padding: 20px;
  border-radius: 10px;
  z-index: 2;
  right: -210px;
  transition: right 0.3s ease-in-out;
}

.show-and-hide-menu {
  right: 5px;
}

.menuItems {
  display: flex;
  width: fit-content;
  flex-direction: column;
  margin: auto;
  gap: 10px;
}

.menuItems button {
  padding: 8px 20px;
  border: none;
  border-radius: 25px;
  background-color: white;
  color: #0d9488;
  cursor: pointer;
  border: 1px solid #0d9488;
  transition: all 0.3s ease-in-out;
}

.menuItems button:hover {
  background-color: #0d9488;
  color: white;
}

.hamburger {
  cursor: pointer;
  display: none;
}

.hamburger span {
  background-color: #001f3f;
  height: 4px;
  /* width: 34px; */
  display: flex;
  margin: 6px;
  border-radius: 25px;
  transition: all 0.5s ease-in-out;
  margin-left: auto;
}

.line-1 {
  width: 34px;
}

.line-2 {
  width: 30px;
}

.line-3 {
  width: 26px;
}

.row1 {
  width: 34px;
  transform: translate(35px, 4px);
  transform-origin: right;
  rotate: 135deg;
}

.row2 {
  opacity: 0;
  transform: scaleX(0);
}

.row3 {
  width: 34px;
  transform: translate(35px, -4px);
  transform-origin: right;
  rotate: -135deg;
}

/* header ends */
/* main start */

.login-popup {
  width: 100vw;
  height: 100vh;
  backdrop-filter: blur(10px);
  background-color: rgba(0, 0, 0, 0.578);
  position: fixed;
  display: none;
  justify-content: center;
  align-items: center;
  z-index: 12;
  top: 0;
  transition: opacity 0.3s ease-in-out;
}

.show-login-popup {
  display: flex;
}

.signup-popup,
.enter-otp {
  width: 100%;
  height: 100%;
  backdrop-filter: blur(10px);
  background-color: rgba(0, 0, 0, 0.578);
  position: fixed;
  display: none;
  z-index: 12;
  top: 0;
}

/* .enter-otp{
  display: flex;
  justify-content: center;
  align-items: center;
} */

.show-signup-popup {
  display: flex;
  justify-content: center;
  align-items: center;
}

.signup-form {
  background-color: white;
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 25px;
  border-radius: 10px;
  width: 600px;
  margin: 5px;
}

/* ============= Enter otp ================ */

.enable-otp-field {
  display: flex;
  justify-content: center;
  align-items: center;
}

#sentOtpNumber {
  color: #0d9488;
  font-weight: 600;
}

.enter-otp form {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 20px;
  background-color: white;
  padding: 20px;
  border-radius: 10px;
  width: 400px;
  margin: 5px;
}

.enter-otp-row1 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 10px;
}

.enter-otp-row1 button {
  padding: 8px 20px;
  background-color: white;
  border: 1px solid #0d9488;
  border-radius: 5px;
  cursor: pointer;
  width: 100%;
  color: #0d9488;
  font-weight: 600;
}

.enter-otp-row2 {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: 0px 10px;
}

.enter-otp-row2 button {
  background-color: transparent;
  color: #1f2937;
  border: none;
  text-decoration: underline;
  cursor: pointer;
}

#otp {
  padding: 10px;
  /* border-radius: 10px; */
  width: 100%;
  outline: none;
  border: none;
  border-bottom: 1px solid #0d9488;
}

.enter-otp-row1 button:hover {
  background-color: #0d9488;
  color: white;
}

#letssignup {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.signup-input-fields {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  font-size: clamp(0.8rem, 2vw, 1rem);

}

.checkbox-recaptcha {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.termAndConditons-privacyProlicy {
  display: flex;
  flex-direction: row;
  gap: 20px;
  align-items: center;
}

.termAndConditons-privacyProlicy input {
  width: 20px;
  height: 20px;
  cursor: pointer;
}

.termAndConditons-privacyProlicy p {
  font-size: 12px;
}

.term_conditon,
.privacy_policy {
  cursor: pointer;
  color: blue;
  text-decoration: underline;
}

.student-name,
.student-phone,
.email,
.school-name,
.school-id,
.confirm-password,
.city {
  display: flex;
  flex-direction: column;
  gap: 5px;
  width: 100%;
}

.student-name input,
.student-phone input,
.email input,
.school-name input,
.school-id input,
.confirm-password input,
.city input {
  padding: 5px 10px;
  border-radius: 5px;
  border: none;
  border: 1px solid #0d9488;
  outline: none;
  color: #1f2937;
  width: 100%;
  height: 40px;
}

.signup-and-ask-for-signin {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.login-form {
  display: flex;
  flex-direction: column;
  gap: 20px;
  background-color: white;
  padding: 20px;
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  width: 500px;
  margin: auto 5px;
}

.login-form-row-1,
.signup-form-row-1 {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}

.login-form-row-1 h2,
.signup-form-row-1 h2 {
  color: #0d9488;
  font-weight: 600;
}

.login-form form {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.contact,
.password {
  display: flex;
  flex-direction: column;
}

.contact input,
.password input {
  padding: 10px;
  border-radius: 5px;
  border: none;
  border: 1px solid #0d9488;
  outline: none;
  color: #1f2937;
}

label {
  color: #1f2937;
}

#close-Login-form-button,
#close-Signup-form-button {
  cursor: pointer;
  fill: #1f2937;
}

.login-actions {
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}

.login-and-ask-for-signup {
  display: flex;
  flex-direction: row;
  gap: 20px;
  justify-content: space-between;
}

.login-button,
.signup-button {
  padding: 8px;
  width: 100px;
  border: none;
  background-color: #0d9488;
  border-radius: 10px;
  color: white;
  cursor: pointer;
  border: 1px solid #0d9488;
  transition: all 0.3s ease-in-out;
}

.signup-bottom {
  display: flex;
  width: 100%;
  justify-content: center;
}

.ask-for-signup,
.ask-for-login,
.forgot-password-btn {
  background-color: transparent;
  text-decoration: underline;
  color: #1f2937;
  font-size: 12px;
  border: none;
  cursor: pointer;
}

#main {
  width: 100%;
}

.signup button {
  padding: 8px 20px;
  border: none;
  color: #ffffff;
  font-size: 16px;
  background-color: #0d9488;
  cursor: pointer;
  border-radius: 10px;
}

/* main-row-1 start */
.main-row-1 {
  display: flex;
  flex-direction: column;
  gap: 40px;
  padding: 0px 50px;
  padding-top: 180px;
  padding-bottom: 60px;
  background-color: #ffffff;
}

.hero-section {
  display: flex;
  flex-direction: row;
  gap: 40px;
  justify-content: space-between;
  align-items: center;
}

/* scrolling container start */

.scrolling-container {
  width: 100%;
  overflow: hidden;
  white-space: nowrap;
  position: relative;
  padding: 10px 0;
}

.how-to-search {
  display: flex;
  flex-wrap: nowrap;
  gap: 2rem;
  animation: scrollText 40s linear infinite;
}

.scroll-content {
  display: flex;
  gap: 2rem;
}

.scroll-content p {
  display: inline-block;
  padding: 10px 20px;
  border-radius: 8px;
  white-space: nowrap;
  color: #1f2937;
  font-size: 12px;
}

/* Infinite scrolling animation */
@keyframes scrollText {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-100%);
  }
}

/* scrolling-container ends */

.main-row-1-details {
  display: flex;
  flex-direction: column;
  gap: 40px;
  width: 60%;
}

.main-row-1-details h1 {
  color: #0f766e;
  font-size: 50px;
}

.main-row-1-details h2 {
  color: #1f2937;
  font-size: 25px;
  width: max-content;
  padding: 10px;
  border-radius: 5px;
}

.main-row-1-details p {
  font-size: 20px;
  word-break: keep-all;
  word-spacing: 5px;
  line-height: 1.5;
  font-weight: 300;
  color: #1f2937;
}

/*blinking and changing word effect __________________________*/

.typing-word {
  background: linear-gradient(90deg, #f0fdfa, #ffffff);
  padding: 2px 4px;
}

.cursor {
  display: inline-block;
  width: 3px;
  background-color: #0d9488;
  animation: blink 0.6s infinite;
  margin-left: 4px;
}

@keyframes blink {
  50% {
    background-color: transparent;
  }
}

/* _________________________________________________ */

.main-row-1-img {
  max-width: 450px;
  max-height: 450px;
  border-radius: 20px;
  overflow: hidden;
}

.main-row-1-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* main-row-1 ends */

/* main-row-2 starts */

.main-row-2 {
  display: flex;
  flex-direction: row;
  gap: 40px;
  justify-content: space-between;
  align-items: center;
  padding: 50px;
  background-color: #f3f4f6;
  /* background: linear-gradient(180deg, #f0fdfa, white, white, white); */
  color: #1f2937;
  min-height: 600px;
}

.main-row-3 {
  display: flex;
  flex-direction: row;
  gap: 40px;
  justify-content: space-between;
  align-items: center;
  padding: 50px;
  /* background-color: white; */
  background-color: #f3f4f6;
  color: #1f2937;
  min-height: 500px;
}

.main-row-4 {
  /* background-color: #e0f2fe; */
  display: flex;
  flex-direction: column;
  gap: 40px;
  justify-content: space-between;
  align-items: center;
  padding: 50px;
  min-height: 600px;
}

.main-row-5 {
  background-color: #f3f4f6;
  /* background: linear-gradient(180deg, #f0fdfa, white, white, white); */
  display: flex;
  flex-direction: column;
  gap: 40px;
  justify-content: space-evenly;
  text-align: center;
  padding: 50px;
  min-height: 500px;
}

.main-row-6 {
  padding: 50px;
  display: flex;
  flex-direction: column;
  /* background-color: #f9fafb; */
  background-color: #f3f4f6;
  /* background: linear-gradient(180deg, #f0fdfa, white, white, white); */
}

.user-review {
  display: flex;
  flex-direction: row;
  gap: 20px;
}

.review {
  width: fit-content;
  padding: 40px;
  box-shadow: 5px 5px 10px #001f3f1c;
  border-radius: 25px;
  transition: all 0.3s ease-in-out;
  cursor: pointer;
  background-color: rgb(255, 255, 255);
  text-align: left;
}

.review:hover {
  transform: translateY(-10px);
}

.main-row-2-img,
.main-row-3-img {
  max-width: 500px;
  max-height: 500px;
  border-radius: 25px;
  overflow: hidden;
}

.main-row-4-img {
  width: 80%;
  margin: auto;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.10);
  padding: 0;
  overflow: hidden;
  border: 2px solid #0d9488;
}

.main-row-4-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  margin: 0;
  border-radius: 0;
  box-shadow: none;
  opacity: 0;
  position: absolute;
  left: 0;
  top: 0;
  transition: opacity 0.7s cubic-bezier(0.4, 0, 0.2, 1);
  pointer-events: none;
  z-index: 1;
}

.main-row-4-img img.active {
  opacity: 1;
  position: relative;
  pointer-events: auto;
  z-index: 2;
}

.main-row-2-img img,
.main-row-3-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: all 0.3s ease-in-out;
}

.main-row-2-img img:hover,
.main-row-3-img img:hover {
  cursor: pointer;
  transform: scale(0.97);
}

.main-row-2-details,
.main-row-3-details,
.main-row-4-details {
  width: 60%;
  display: flex;
  flex-direction: column;
  gap: 40px;
  text-align: center;
  align-items: center;
}

.main-row-2 h2,
.main-row-4 h2 {
  font-size: clamp(2rem, 5vw, 2.5rem);
  color: #0d9488;
}

.main-row-3 h2,
.main-row-5 h2 {
  font-size: clamp(2rem, 5vw, 2.5rem);
  color: #0d9488;
}

.main-row-2 p,
.main-row-4 p {
  color: #1f2937;
  line-height: 1.5;
  font-size: 1.2rem;
  word-break: keep-all;
  word-spacing: 5px;
  font-weight: 300;
  text-align: center;
}

.main-row-3 p {
  line-height: 1.5;
  font-size: 1.2rem;
  color: #1f2937;
  word-break: keep-all;
  word-spacing: 5px;
  font-weight: 300;
}

/* ================Frequently asked question================= */

.main-row-6 h2 {
  font-size: clamp(2rem, 5vw, 2.5rem);
  color: #0d9488;
  text-align: center;
}

.all-question-answer {
  padding: 50px;
  border-radius: 25px;
  width: 70%;
  margin: auto;
  /* background-color: white; */
}

.question-answer {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 20px 0px;
  border-bottom: 1px solid #001f3f43;
  cursor: pointer;
}

.question-1,
.question-2,
.question-3,
.question-4,
.question-5 {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  color: #001f3f;
}

.answer-1,
.answer-2,
.answer-3,
.answer-4,
.answer-5 {
  opacity: 0;
  padding: 0 1rem;
  max-height: 0;
  overflow: hidden;
  transition: all 0.3s ease-in-out;
  color: #1f2937;
}

.show-answer {
  opacity: 1;
  max-height: 500px;
  padding: 1rem;
}

.faq-dropdown {
  transition: transform 0.3s ease-in-out;
}

.rotate-180 {
  transform: rotate(180deg);
}

/* ================Frequently asked question ends================= */

/* why the ai approach section starts */
.why-ai-approach {
  display: flex;
  flex-direction: column;
  min-height: 600px;
  background-color: white;
  gap: 50px;
  padding: 50px;
}

.why-ai-approach h2 {
  font-size: clamp(1.5rem, 5vw, 2.5rem);
  color: #0d9488;
  text-align: center;
}

.logo-heading {
  display: flex;
  flex-direction: row;
  gap: 10px;
}

.logo-heading svg {
  width: 20%;
}

.logo-heading h3,
p {
  color: #1f2937;
  text-align: left;
}

.why-ai-approach-pointers {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 40px;
}

.pointers {
  display: flex;
  flex-direction: column;
  gap: 15px;
  justify-content: center;
  padding: 10px;
}

.pointer-logo {
  width: 50px;
  height: 50px;
}

.pointer-logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.pointers h3 {
  font-weight: 500;
}

/* +++++++++++++++++++++ About-Section start +++++++++++++++++++ */

.about-section {
  width: 100vw;
  height: 100vh;
  backdrop-filter: blur(10px);
  background-color: rgba(0, 0, 0, 0.578);
  position: fixed;
  display: none;
  justify-content: center;
  align-items: center;
  z-index: 12;
  top: 0;
}

.show-aboutus-action {
  display: flex;
}

.about-us-content {
  display: flex;
  flex-direction: column;
  max-width: 60vw;
  height: 600px;
  color: #1f2937;
  font-size: clamp(1rem, 1.5vw, 1.2rem);
  border-radius: 25px;
  background-color: white;
  overflow: hidden;
}

.aboutUs-heading-and-close-icon {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  padding: 10px 40px;
}

.aboutUs-heading-and-close-icon h2 {
  color: #0d9488;
  font-weight: 600;
}

.about-us-main {
  font-weight: 200;
  overflow-y: auto;
  padding: 40px;
  font-weight: 300;
}

.about-us-main::-webkit-scrollbar {
  width: 4px;
}

.about-us-main::-webkit-scrollbar-thumb {
  background-color: #005f6a;
  border-radius: 25px;
}

/* strong {
  color: #0d9488;
  font-weight: bold;
} */

#close-About-Us-button {
  cursor: pointer;
  fill: #1f2937;
}

/* +++++++++++++++++++++ About-Section ends +++++++++++++++++++ */

/* ============= Terms & Conditions starts ================= */

#term_condition,
#privacy_policy {
  padding: 40px;
}

.privacy_policy_heading,
.term_condition_heading {
  padding-bottom: 40px;
}

.term_condition_content,
.privacy_policy_content {
  display: flex;
  flex-direction: column;
  gap: 40px;
}

#term_condition h1,
h2,
h3,
#privacy_policy h1,
h2,
h3 {
  font-weight: 500;
  color: #2a2a2a;
}

#term_condition ul,
#privacy_policy ul {
  margin-left: 1.5rem;
}

/* ============= Terms & Conditions ends ================= */

html.no-scroll {
  overflow: hidden;
  height: 100%;
  /* Prevent background from moving */
}

.imp {
  color: red;
}

/* footer start */

#footer {
  display: flex;
  flex-direction: column;
  border-top: 1px solid #001f3f37;
  background-color: #115e59;
  color: white;
}

.footer-row-1 {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  padding: 50px;
}

.footer-row-1 h1 {
  color: white;
  background: linear-gradient(#ffffff);
  background-clip: text;
}

.footer-row-1 p {
  color: white;
  font-weight: 300;
}

.footer-links ul {
  display: flex;
  flex-direction: column;
  gap: 10px;
  list-style: none;
  font-weight: 300;
  width: fit-content;
}

.footer-links,
.moto {
  display: flex;
  justify-content: center;
}

#scrollToTop,
#faq {
  color: white;
  text-decoration: none;
}

.footer-links .term_conditon,
.footer-links .privacy_policy {
  text-decoration: none;
  color: white;
}

.footer-links ul>li:hover {
  text-decoration: underline;
  cursor: pointer;
}

.footer-row-2 {
  border-top: 1px solid #f5f3ff2b;
  padding: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.footer-row-2 p {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  color: white;
}

/* --------------------login form and footer ends------------ */
/*=========== reusable toaster ===========*/
.toast {
  position: fixed;
  bottom: 30px;
  right: 30px;
  background-color: #ffffff;
  color: #1f2937;
  padding: 12px 20px;
  border-radius: 2px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
  opacity: 0;
  transition: opacity 0.4s ease, transform 0.4s ease;
  z-index: 9999;
  box-shadow: 10px 10px 10px 0 rgba(0, 0, 0, 0.20);
  border-radius: 4px;
}

.toast.show {
  opacity: 1;
  transform: translateY(0);
}

.toast.hidden {
  display: none;
}

/* responsive- ness */

@media (max-width: 1024px) {
  #header {
    padding: 10px 20px;
  }

  .main-row-1-img {
    max-width: auto;
    max-height: 300px;
    border-radius: 10px;
  }

  .main-row-2-img {
    border-radius: 10px;
  }

  .hero-section {
    flex-direction: column;
  }

  .main-row-2 {
    flex-direction: column-reverse;
  }

  .main-row-3 {
    flex-direction: column;
  }

  .main-row-5 {
    height: auto;
  }

  .main-row-1-details {
    width: 100%;
  }

  .main-row-3-details,
  .main-row-4-details {
    width: 100%;
  }

  .main-row-2-details {
    width: 100%;
  }

  .links {
    display: none;
  }

  .hamburger {
    display: block;
  }

  .about-us-content {
    max-width: 80%;
  }

  .user-review {
    flex-direction: column;
    width: 100%;
  }

  .review {
    max-width: 500px;
    margin: auto;
  }

  .all-question-answer {
    width: 100%;
    padding: 0px;
  }

  .footer-row-1 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    padding: 40px 20px;
  }

  .moto {
    display: flex;
    justify-content: start;
  }

  .footer-links {
    display: flex;
    justify-content: flex-end;
  }

  .why-ai-approach-pointers {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
  }
}

@media (max-width: 550px) {
  .main-row-1 {
    padding: 0px 20px;
    padding-top: 120px;
  }

  .main-row-2,
  .main-row-3,
  .main-row-4,
  .main-row-5,
  .main-row-6,
  .why-ai-approach {
    padding: 40px 20px;
  }

  .main-row-1-img {
    max-width: auto;
    /* max-height: 250px; */
  }

  .main-row-1-details {
    gap: 20px;
  }

  .main-row-1-details h1 {
    font-size: 2rem;
  }

  .main-row-2-details h2,
  .main-row-6 h2 {
    font-size: 2rem;
  }

  .login-img img {
    display: none;
  }

  .about-us-content {
    max-width: 95%;
  }

  .about-us-main {
    padding: 20px;
  }

  .aboutUs-heading-and-close-icon {
    padding: 10px 20px;
  }

  .footer-row-1 {
    display: flex;
    flex-direction: column;
    gap: 40px;
  }

  .footer-links,
  .moto {
    display: flex;
    justify-content: flex-start;
  }

  .why-ai-approach-pointers {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    gap: 40px;
  }

  .pointers {
    box-shadow: 0px 0px 1px #082359;
    padding: 20px;
    border-radius: 25px;
  }

  .signup-form {
    padding: 15px;
  }

  .main-row-4-img{
    width: 95%;
  }

}

@media(max-width:400px) {

  .signup-form {
    height: 100%;
    overflow-y: scroll;
    border-radius: 0px;
  }

  .signup-input-fields {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}

.forgot-password-popup,
.forgot-otp-popup,
.reset-password-popup {
  width: 100vw;
  height: 100vh;
  backdrop-filter: blur(10px);
  background-color: rgba(0, 0, 0, 0.578);
  position: fixed;
  display: none;
  justify-content: center;
  align-items: center;
  z-index: 12;
  top: 0;
}

.forgot-password-form,
.forgot-otp-form,
.reset-password-form {
  background-color: white;
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 20px;
  border-radius: 10px;
  width: 400px;
  margin: auto 5px;
}

#forgotOtpForm {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.forgot-otp-form-row-1,
.forgot-password-form-row-1,
.reset-password-form-row-1 {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}

.forgot-password-form label,
.forgot-otp-form label,
.reset-password-form label {
  color: #1f2937;
  font-weight: 500;
  margin-bottom: 5px;
}

.forgot-password-form input,
.forgot-otp-form input,
.reset-password-form input {
  padding: 10px;
  border-radius: 5px;
  border: 1px solid #0d9488;
  outline: none;
  color: #1f2937;
  width: 100%;
  margin-bottom: 10px;
  font-size: 1rem;
}

.forgot-password-actions,
.reset-password-actions {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  gap: 10px;
}

.forgot-password-form button,
.reset-password-form button {
  padding: 8px 20px;
  border: none;
  border-radius: 5px;
  background-color: white;
  color: #0d9488;
  border: 1px solid #0d9488;
  cursor: pointer;
  font-weight: 600;
  transition: all 0.3s ease-in-out;
}

#forgotResendOtpBtn,
#forgotCancelOtpBtn {
  text-decoration: unset;
  background-color: transparent;
}

.forgot-password-form button:hover,
.reset-password-form button:hover {
  background-color: #0d9488;
  color: white;
}

.forgot-password-form h2,
.forgot-otp-form h2,
.reset-password-form h2 {
  color: #0d9488;
  font-weight: 600;
  margin-bottom: 10px;
}

.forgot-password-form svg,
.forgot-otp-form svg,
.reset-password-form svg {
  cursor: pointer;
  fill: #5f6368;
}

.forgot-mobile {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.forgot-password-actions {
  margin-top: 10px;
}

.reset-password-actions {
  margin-top: 10px;
}

.forgot-password-popup[style*="display: flex"],
.forgot-otp-popup[style*="display: flex"],
.reset-password-popup[style*="display: flex"] {
  display: flex !important;
}

.impact-list {
  list-style: none;
  padding: 0;
  margin: 24px 0 0 0;
  display: flex;
  flex-direction: row;
  gap: 18px;
  align-items: center;
}

.impact-list li {
  background: #f8fafc;
  border-radius: 12px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  padding: 16px 24px;
  font-size: 1.1rem;
  color: #1f2937;
  min-width: 320px;
  max-width: 420px;
  text-align: left;
  display: flex;
  align-items: center;
  gap: 10px;
  font-weight: 400;
}

@media (max-width: 700px) {
  .impact-list {
    flex-direction: column;
    align-items: stretch;
  }

  .impact-list li {
    min-width: 180px;
    max-width: 100%;
    font-size: 1rem;
    padding: 12px 10px;
  }
}

.slide-arrow {
  width: 45px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(0, 0, 0, 0.5);
  border: none;
  color: white;
  font-size: 1.8rem;
  padding: 0 10px;
  cursor: pointer;
  z-index: 2;
  border-radius: 50%;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
  transition: background 0.2s;
}

.slide-arrow:hover {
  background: rgba(0, 0, 0, 0.7);
}

.left-arrow {
  left: 10px;
}

.right-arrow {
  right: 10px;
}