    * {
      margin: 0;
      padding: 0;
      box-sizing: border-box;
    }

    body {
      font-family: 'Montserrat', sans-serif;
      min-height: 100vh;
      background: #ffffff;
      font-size: 1.3rem;
    }

    .auth-layout {
      display: flex;
      min-height: 100vh;
    }

    .auth-left {
      flex: 0 0 43.5%;
      background: #347fdc;
      background-repeat: repeat;
      background-size: 39px;
      display: flex;
      flex-direction: column;
      justify-content: flex-end;
      align-items: center;
      position: relative;
      overflow: hidden;
      padding-bottom: 0;
    }

    .brand {
      width: 100%;
      display: flex;
      flex-direction: column;
      justify-content: flex-end;
      align-items: center;
      height: 100%;
    }

    .brand-title {
      font-family: 'Climate Crisis', sans-serif;
      font-size: 5.2rem;
      color: #ffffff;
      letter-spacing: -0.02em;
      text-shadow: 0 2px 10px rgba(0,0,0,0.2);
      -webkit-text-stroke: 0.85px #000000;
      margin-bottom: 0.5rem;
      text-align: center;
      width: 100%;
      padding-top: 100px;
    }

    .brand img {
      height: 500px;
      width: auto;
      display: block;
      object-fit: contain;
      margin-top: auto;
    }

    .auth-right {
      flex: 1;
      width: 598px;
      display: flex;
      flex-direction: column;
      justify-content: center;
      padding: 1.5rem;
      background: #ffffff;
    }

    .top-nav {
      position: absolute;
      top: 2.6rem;
      right: 3.25rem;
    }

    .home-link {
      font-family: 'Montserrat', sans-serif;
      font-weight: 600;
      font-size: 1.105rem;
      color: #347fdc;
      text-decoration: none;
      background: transparent;
      padding: 8px 21px;
      border-radius: 78px;
      border: 3px solid #e2edf7;
      transition: all 0.2s;
    }

    .home-link:hover {
      background: #347fdc;
      color: white;
      border-color: #347fdc;
    }

    .form-container {
      max-width: 442px;
      margin: 0 auto;
      width: 100%;
    }

    @media (max-width: 860px) {
      .auth-left {
        display: none;
      }
      .auth-right {
        width: 100%;
        min-height: 100vh;
      }
      .top-nav {
        position: static;
        text-align: center;
        margin-bottom: 2.6rem;
      }
    }
    @media (max-width: 768px) {
      .auth-left {
        display: none;
      }

      .auth-right {
        width: 100%;
        min-height: 100vh;
        padding: 2rem 1.5rem;
        justify-content: flex-start;
        padding-top: 5vh;
      }

      .top-nav {
        position: static;
        text-align: center;
        margin-bottom: 1.5rem;
      }

      .top-nav .home-link {
        font-size: 1rem;
        padding: 10px 24px;
        border-radius: 40px;
        display: inline-block;
        border-width: 2px;
      }

      .form-container {
        max-width: 100%;
        padding: 0 4px;
      }

      .form-container form {
        width: 100%;
      }

      .form-container .form-group {
        margin-bottom: 1.5rem;
      }

      .form-container input,
      .form-container select,
      .form-container textarea {
        font-size: 1.1rem !important;
        padding: 14px 16px !important;
        border-radius: 16px !important;
        border-width: 2px !important;
        width: 100%;
        box-sizing: border-box;
      }

      .form-container button,
      .form-container .btn {
        font-size: 1.2rem !important;
        padding: 16px !important;
        border-radius: 40px !important;
        width: 100%;
        font-weight: 700;
        margin-top: 0.5rem;
      }

      .form-container .auth-links {
        text-align: center;
        margin-top: 1.5rem;
        font-size: 1.05rem;
      }

      .form-container .auth-links a {
        display: block;
        padding: 8px 0;
      }

      h2.form-title {
        font-size: 2rem;
        text-align: center;
        margin-bottom: 1.5rem;
      }
    }

    @media (max-width: 400px) {
      .auth-right {
        padding: 1.5rem 1rem;
        padding-top: 3vh;
      }

      .form-container input,
      .form-container select {
        font-size: 1rem !important;
        padding: 12px 14px !important;
      }

      .form-container button {
        font-size: 1.1rem !important;
        padding: 14px !important;
      }

      h2.form-title {
        font-size: 1.7rem;
      }
    }