/*global area*/
/*----------------------------------------------------*/
body {
    margin: 0;
    padding: 0;
    overflow-x: hidden;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.5;
    color: #2f3146;
    font-family: "Jost", sans-serif;
    -moz-osx-font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
  }

  ::-moz-selection {
    color: #ffffff;
    background-color: #6b59d3;
  }

  ::selection {
    color: #ffffff;
    background-color: #6b59d3;
  }

  ::-moz-selection {
    color: #ffffff;
    background-color: #6b59d3;
  }

  ul {
    margin: 0;
    padding: 0;
  }
  ul li {
    list-style: none;
  }

  a {
    color: inherit;
    text-decoration: none;
    -webkit-transition: 0.3s all ease-in-out;
    -o-transition: 0.3s all ease-in-out;
    transition: 0.3s all ease-in-out;
  }
  a:hover, a:focus {
    text-decoration: none;
  }

  /* img {
    max-width: 100%;
    height: auto;
  } */

  button {
    cursor: pointer;
  }

  .wrapper {
    margin: 50px auto;
    max-width: 1680px;
    background-color: #f5f7f8;
    -webkit-box-shadow: 0px 5px 65px 0px rgba(0, 0, 0, 0.29);
            box-shadow: 0px 5px 65px 0px rgba(0, 0, 0, 0.29);
         max-height:670px;
  }

  .boxed-version {
    max-width: 1400px;
    margin: auto;
  }

  /* ============================================================================ */
  /*   Common Footer Section CSS
  /* ============================================================================ */

  .common-footer {
    display: flex;
    justify-content: space-between;
    padding: 15px;
    background-color: #f8f9fa;
    position: absolute;
    bottom: 0;
    width: 100%;
    border-top: 1px solid #ddd;
  }

  .common-footer ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    width: 100%;
    justify-content: space-between;
      margin-right: 25%;
  }

  .common-footer .back-btn,
  .common-footer .next-btn {
    cursor: pointer;
    padding: 10px 20px;
    background: #007bff;
    color: white;
    border-radius: 5px;
    transition: 0.3s;
  }

  .common-footer .back-btn:hover,
  .common-footer .next-btn:hover {
    background: #0056b3;
  }

  .common-footer .next-btn[style*="pointer-events: none"] {
    background: gray;
    cursor: not-allowed;
  }

  @media (max-width: 768px) {
    .common-footer {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 10px 15px;
      background-color: #f8f9fa;
      position: fixed;
      bottom: 0;
      left: 0;
      width: 100%;
      border-top: 1px solid #ddd;
      z-index: 1000; /* Ensure it stays above other elements */
    }

    .common-footer ul {
      display: flex;
      width: 100%;
      justify-content: space-between;
      padding: 0;
      margin: 0;
      list-style: none;
    }

    .common-footer li {
      flex: 1;
      text-align: center;
    }

    .common-footer .back-btn,
    .common-footer .next-btn {
      display: inline-block;
      width: 100%;
      max-width: 140px; /* Adjust button width */
      padding: 10px;
      background: #007bff; /* Primary button color */
      color: #fff;
      text-align: center;
      border-radius: 5px;
      font-size: 14px;
      font-weight: bold;
      cursor: pointer;
    }

    .common-footer .back-btn {
      background: #6c757d; /* Gray color for back button */
    }

    .common-footer .back-btn i,
    .common-footer .next-btn i {
      margin: 0 5px;
    }
  }


  /* ============================================================================ */
  /*   Smart Sidebar steps
  /* ============================================================================ */
  .steps {
    background-color: #263ea5;
    background-image: url(../img/bg.jpg);
    background-size: cover;
  }
  .steps ul {
    padding-left: 70px;
  }

  .steps li {
    position: relative;
  }
  .steps li:before {
    content: "";
    top: 55px;
    width: 240px;
    left: 0px;
    height: 25px;
    color: #5065ca;
    font-size: 19px;
    font-weight: 600;
    line-height: 1.5;
    position: absolute;
  }
  .steps li:after {
    top: 8px;
    left: 15px;
    z-index: -1;
    color: #6076d1;
    font-size: 17px;
    content: "";
    font-weight: 900;
    position: absolute;
    font-family: "Font Awesome 5 Free";
  }
  .steps li a {
    width: 45px;
    color: #fff;
    height: 45px;
    font-size: 16px;
    font-weight: 700;
    line-height: 45px;
    border-radius: 50%;
    position: relative;
    text-align: center;
    display: inline-block;
    border: 2px solid #6076d1;
  }
  .steps li a:after {
    width: 2px;
    left: 18px;
    content: "";
    height: 33px;
    bottom: -80px;
    position: absolute;
    background-color: #6076d1;
  }
  .steps li .number {
    display: none;
  }
  .steps li.first a {
    border: 2px solid #fff;
  }
  .steps li.last a:after {
    display: none;
  }
  .steps li.checked:after, .steps li.current:after {
    color: #fff;
  }
  .steps li.checked:before, .steps li.current:before {
    color: #fff;
  }
  .steps li.checked a, .steps li.current a {
    border: 2px solid #fff;
  }
  .steps li.checked a:after, .steps li.current a:after {
    background-color: #fff;
  }

  .line {
    width: 495px;
    height: 3px;
    left: 28.4%;
    height: 3px;
    background: #f1f1f2;
    position: relative;
    top: 0px;
    margin: 5px 0;
  }
  .line.line2 {
    width: 100%;
    left: 0;
  }

  .close-btn {
      position: absolute;
      top: 3px;
      right: -40px;
      font-size: 24px;
      cursor: pointer;
      color: white;
      border-radius: 50%;
      width: 30px;
      height: 30px;
      display: flex;
      align-items: center;
      justify-content: center;
      box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1);
      transition: background-color 0.3s ease;
  }

  .close-btn:hover {
      background-color: #d10000;
  }

  .close-btn i {
      margin: 0;
  }

  /* ==========================================================================
  Multistep CSS Section
  ========================================================================== */
  .multisteps-form__progress {
    padding-top: 27px;

    position: -webkit-sticky;
    position: sticky;
    top: 0;
  }

  .multisteps-form__progress-btn {
    position: relative;
    color: rgba(96, 118, 209, 0.7);
    border: none;
    background-color: transparent;
    outline: none !important;
    cursor: pointer;
    font-size: 14px;
    font-weight: 600;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    min-width: -webkit-max-content;
    min-width: -moz-max-content;
    min-width: max-content;
    margin-left: 17px;
    padding-bottom: 24px;
    z-index: 1;
  }
  .multisteps-form__progress-btn span {
    position: absolute;
    left: 60px;
    color: #6076d1;
  }
  .multisteps-form__progress-btn i {
    width: 50px;
    height: 50px;
    left: 0px;
    top: 0px;
    margin-right: 15px;
    line-height: 50px;
    position: relative;
    text-align: center;
    display: inline-block;
    border: 2px solid #6076d1;
    border-radius: 50%;
    z-index: -1;
  }
  .multisteps-form__progress-btn:after {
    content: "";
    position: absolute;
    top: 50%; /* Aligns it properly in the center */
    left: 25px; /* Adjust this value based on spacing */
    transform: translateY(50%); /* Ensures perfect vertical alignment */
    display: block;
    width: 2px;
    height: 24px;
    background-color: #6076d1;
    z-index: 1;
  }

  .multisteps-form__progress-btn:last-child:after {
    display: none;
  }
  .multisteps-form__progress-btn.js-active {
    color: #fff;
  }
  .multisteps-form__progress-btn.js-active span {
    color: #fff;
  }
  .multisteps-form__progress-btn.js-active i {
    color: #fff;
    border-color: #fff;
  }
  .multisteps-form__progress-btn.js-active:after {
    background-color: #fff;
  }

  @media (max-width: 767px) {
      .steps {
        display: none;
      }
    }
    @media (max-width: 767px) {
      .multisteps-form__form {
        width: 100% !important;
        height:100vh;
      }
    }



  /* ==========================================================================
  Header Title section
  ========================================================================== */
  .wizard-title {
    padding-bottom: 50px;
    margin-top:10px;
  }
  .wizard-title h3 {
    color: #5756a2;
    font-size: 40px;
    font-weight: 700;
  }
  .sub-title h5 {
    color: #f6a21c;
    font-size: 24px;
    font-weight: 700;
    margin-bottom:20px;
  }

  .wizard-title p {
    color: #5756a2;
    font-size: 23px;
    font-weight: 500;
  }

  .robot-container {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
  }

  .robot-image {
    position: absolute;
    left: -39px;
    top: -56px;
    width: 150px;
    height: 150px;
    display: none;
    animation: moveAndRotate 5s infinite alternate;
  }

  @media (min-width: 1024px) {
    .robot-image {
      display: block;
    }
  }

  @media (max-width: 991px) {
    .wizard-title h3 {
      font-size: 30px;
    }

    .wizard-title p {
      font-size: 18px;
    }
  }

  @media (max-width: 576px) {
    .wizard-title h3 {
      font-size: 25px;
    }

    .wizard-title p {
      font-size: 16px;
    }
  }

  /* ==========================================================================
     Steps Progress Bar
  ========================================================================== */
  .steps-progress-bar {

    width: 100%;
    max-width: 300px;
    margin: 20px auto;
    position: relative;
    text-align: center;
  }

  .steps-progress-bar .progress {
    width: 100%;
    height: 20px;
    border-radius: 20px;
    background-color: #b4c8e8;
    position: relative;
    overflow: hidden;
  }

  .steps-progress-bar .progress-bar {
    width: 0%;
    height: 100%;
    border-radius: 20px;
    background-color: #2e70ee;
    transition: width 0.5s ease-in-out;
  }

  .steps-progress-bar span {
    color: #b5ccec;
    font-weight: 600;
  }

  .steps-progress-bar h3 {
    color: #fff;
    font-size: 20px;
    padding: 5px 0px 10px;
    font-weight: 700;
  }

  /* ==========================================================================
  School Type
  ========================================================================== */
  .school-select {
    margin: 0 auto;
    max-width: 1090px;
  }

  .school_option_item {
    margin: 0 auto;
    height: 270px;
    position: relative;
    -webkit-transition: 0.3s all ease-in-out;
    -o-transition: 0.3s all ease-in-out;
    transition: 0.3s all ease-in-out;
  }
  .school_option_item .board_name {
    display: block;
    color: #474747;
    font-size: 18px;
    font-weight: 600;
  }

  .school_option_item .checkbox {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    opacity: 0;
  }

  .school_option_item .school_option_inner {
    width: 100%;
    height: 80%;
    padding: 40px 30px;
    border-radius: 5px;
    text-align: center;
    cursor: pointer;
    display: block;
    border: 2px solid transparent;
    position: relative;
    border-radius:10px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1); /* Added shadow to the inner section */
  }
  .school_option_item .school_option_inner:hover {
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15); /* Shadow on hover */
  }
  .school_option_item .school_option_inner:before {
    content: "";
    position: absolute;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
    border-radius:10px;
  }

  .school_option_item .school_option_inner .icon {
    margin-bottom: 10px;
    display: block;
    text-align: center;
  }

  .school_option_item .school_option_inner .icon .fab {
    font-size: 32px;
  }

  .school_option_item .school_option_inner .board_name {
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
  }

  .school_option_item .checkbox:checked ~ .school_option_inner {
    border-color: #3b5999;
    -webkit-box-shadow: 0px 5px 35px 0px rgba(0, 0, 0, 0.27);
            box-shadow: 0px 5px 35px 0px rgba(0, 0, 0, 0.27);
  }
  .school_school_option_item .checkbox:checked ~ .school_option_inner:before {
    display: none;
  }

  .school_option_item .school_option_inner .tickmark {
    position: absolute;
    height: 50px;
    width: 50px;
    display: none;
    border-radius: 100%;
    top: -25px;
    left: -25px;
    background-color: #253fa5;
  }

  .school_option_item .school_option_inner .tickmark:before {
    content: "";
    position: absolute;
    font-size: 16px;
    top: 12px;
    left: 15px;
    color: #fff;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
  }

  .school_option_item .checkbox:checked ~ .school_option_inner .tickmark {
    display: block;
  }

  .izard-solution-select label {
    margin-bottom: 0;
  }

  /* Add scrolling for mobile and tablet */
  @media (max-width: 991px) {
      .school-scroll {
          max-height: 300px;
          overflow-y: auto;
          padding-right: 10px;
      }
  }

  /* To make sure no unwanted horizontal scroll */
  .school-scroll::-webkit-scrollbar {
      width: 6px;
  }

  .school-scroll::-webkit-scrollbar-thumb {
      background-color: #ccc;
      border-radius: 4px;
  }

  .school-scroll::-webkit-scrollbar-track {
      background-color: #f1f1f1;
  }

  @media (max-width: 768px) {
    .school-scroll {
      max-height: 330px;
      overflow-y: auto;
      padding-right: 10px;
    }
  }

  @media (max-width: 768px) {
    .wrapper {

      margin: 0px;
    }

    body {
      overflow: hidden;
    }
  }
  @media (min-width: 768px) and (max-width: 1024px) {
    .wrapper {
        margin: 0px;
    }
  }

  @media (max-width: 767px) {
      .school_option_inner {
          padding: 12px;
          text-align: center;
          width: 100%;
          max-width: 230px; /* Increased width */
      }

      .school_option_inner .icon img {
          max-width: 120px; /* Increased image size */
          height: auto;
      }

      .board_name {
          display: block;
          font-size: 15px; /* Slightly larger font */
          text-align: center;
          word-wrap: break-word;
          max-width: 120px; /* Adjusted width for better fit */
      }

      .school_option_item {
          display: flex;
          justify-content: center;
          align-items: center;
          flex-direction: column;
      }
  }

  /* ==========================================================================
  Location
  ========================================================================== */
  .wizard-solution-select {
    margin: 0 auto;
    max-width: 1090px;
  }

  /*Search Bar*/
  .smart-search-wrapper {
    max-width: 600px;
    margin: 0 auto;
  }

  .search-box {
    background: white;
    border-radius: 30px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    position: relative; /* Keep it */
    z-index: 0; /* Lower priority */
  }

  .search-box:focus-within {
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
    transform: translateY(-2px);
  }

  .search-input {
    border: 2px solid #eee;
    border-radius: 30px;
    padding: 15px 25px;
    padding-right: 50px;
    width: 100%;
    transition: all 0.3s ease;
  }

  .search-input:focus {
    border-color: #007bff;
    box-shadow: none;
  }

  .search-icon {
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    color: #666;
    transition: all 0.3s ease;
  }

  .search-box:focus-within .search-icon {
    color: #007bff;
  }

  .suggestions {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: white;
    border-radius: 15px;
    margin-top: 10px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
    opacity: 0;
    transform: translateY(-10px);
    transition: all 0.3s ease;
    z-index: 1000;
    max-height: 250px;
    overflow-y: auto;

  }

  .search-box:focus-within .suggestions {
    opacity: 1;
    transform: translateY(0);
  }

  .suggestion-item {
    padding: 12px 20px;
    cursor: pointer;
    transition: all 0.2s ease;
  }

  .suggestion-item:hover {
    background: #f8f9fa;
  }

  .suggestion-item i {
    margin-right: 10px;
    color: #666;
  }

  .recent-searches {
    color: #666;
    font-size: 0.8rem;
    padding: 10px 20px;
    background: #f8f9fa;
    border-radius: 15px 15px 0 0;
  }

  /* ==========================================================================
  Classes
  ========================================================================== */

  /* ==========================================================================
  Classes end
  ========================================================================== */

  /* ==========================================================================
  Board
  ========================================================================== */

  /* ==========================================================================
  Board end
  ========================================================================== */

  /* ==========================================================================
  Budget
  ========================================================================== */

  /* ==========================================================================
  Budget end
  ========================================================================== */

  /* ==========================================================================
  Review Preference
  ========================================================================== */
  .btn-custom {
    background-color: #f8f9fa; /* Light gray background */
    border-color: #5756a2; /* Border color */
    color: #5756a2; /* Text and icon color */
  }

  .btn-custom:hover, .btn-custom:focus, .btn-custom:active {
    background-color: #f8f9fa !important; /* Maintain the same background on hover */
    border-color: #5756a2 !important;
    color: #5756a2 !important;
  }
  /* ==========================================================================
  Review Preference End
  ========================================================================== */

  /* ==========================================================================
  Submit Details
  ========================================================================== */
  .otp-input {
    width: 50px;
    height: 50px;
    font-size: 20px;
    text-align: center;
    border: 1px solid #ced4da;
    border-radius: 5px;
  }
  /* ==========================================================================
  Submit Details End
  ========================================================================== */
