:root {
      --navy: #0f3444;
      --gold: #b88a52;
      --cream: #f7f1e8;
      --text: #17313d;
    }

    * {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
    }

    body {
      font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
      color: var(--text);
      background: var(--cream);
    }

   .coming-soon-page {
      min-height: 100vh;
      background-image:
        linear-gradient(
          90deg,
          rgba(247, 241, 232, 0.96) 0%,
          rgba(247, 241, 232, 0.78) 8%,
          rgba(247, 241, 232, 0.10) 62%
        ),
        url("../images/bg2.jpg");
      background-size: cover;
      background-position: center;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
    }
	
	  /*.coming-soon-page {
      min-height: 100vh;
      background-image: url("../images/bg.jpg");
      background-size: cover;
      background-position: center;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
    }*/

    .content {
      max-width: 920px;
      padding: 90px 0 60px 16vw;
      text-align: center;
    }

    .logo {
      width: 360px;
      max-width: 85%;
      margin: 0 auto 54px;
      display: block;
    }

    .divider {
      width: 58px;
      height: 1px;
      background: var(--gold);
      margin: 0 auto 42px;
    }

    h1 {
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(3rem, 6vw, 2.75rem);
      font-weight: 400;
      letter-spacing: 0.18em;
      color: var(--navy);
      line-height: 1.05;
      margin-bottom: 34px;
    }

    .intro {
      max-width: 920px;
      margin: 0 auto 54px;
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(1.1rem, 2vw, 1.5rem);
      line-height: 1.65;
      color: var(--navy);
    }

    .intro em {
      font-style: italic;
    }

    .eyebrow {
      color: var(--gold);
      font-size: 0.92rem;
      letter-spacing: 0.35em;
      text-transform: uppercase;
      margin-bottom: 18px;
    }

    .signup-text {
      max-width: 520px;
      margin: 0 auto 34px;
      font-size: 1.05rem;
      line-height: 1.7;
    }

    .signup-form {
      width: min(560px, 100%);
      margin: 0 auto 36px;
      display: flex;
      
      background: rgba(255, 255, 255, 0.6);
    }

    .signup-form input {
		border: 1px solid rgba(255, 255, 255, 0.6);
      flex: 1;
      padding: 22px 24px;
      font-size: 1rem;
      background: transparent;
      outline: none;
      color: var(--text);
	  transition: border 0.25s ease;
    }
	
	.signup-form input:focus {
		border: 1px solid var(--gold);
    }

    .signup-form button {
      border: 0;
      padding: 0 38px;
      background: var(--gold);
      color: #fff;
      font-size: 0.9rem;
      letter-spacing: 0.18em;
      text-transform: uppercase;
      cursor: pointer;
      transition: background 0.25s ease;
    }
	
.signup-form input::placeholder {
  opacity: 1;
  transition: opacity 0.25s ease;
}

.signup-form input:focus::placeholder {
  opacity: 0.5;
}

    .signup-form button:hover {
      background: #9f743f;
    }

    .socials {
      display: flex;
      justify-content: center;
      gap: 34px;
      font-size: 1.35rem;
      color: var(--navy);
    }

    .socials a {
      color: inherit;
      text-decoration: none;
    }

    .footer {
      padding: 34px 24px;
      text-align: center;
      background: rgba(247, 241, 232, 0.92);
    }

    .footer-brand {
      color: var(--navy);
      font-size: 1rem;
      letter-spacing: 0.45em;
      text-transform: uppercase;
      margin-bottom: 10px;
    }

    .footer-location {
      color: var(--gold);
      font-size: 0.8rem;
      letter-spacing: 0.35em;
      text-transform: uppercase;
      margin-bottom: 18px;
    }

    .copyright {
      font-size: 0.85rem;
      color: rgba(23, 49, 61, 0.65);
    }
	.form-message {
  margin-top: -18px;
  margin-bottom: 28px;
  font-size: 0.9rem;
  letter-spacing: 0.08em;
  color: var(--navy);
}
.toast {
  position: fixed;
  bottom: 40px;
  left: 50%;
  transform: translateX(-50%) translateY(20px);
  background: rgba(15, 52, 68, 0.96);
  color: #fff;
  padding: 16px 26px;
  border-radius: 100px;
  font-size: 0.9rem;
  text-align: center;
  letter-spacing: 0.08em;
  opacity: 0;
  visibility: hidden;
  transition:
    opacity 0.35s ease,
    transform 0.35s ease,
    visibility 0.35s ease;
  z-index: 9999;
  backdrop-filter: blur(8px);
  box-shadow: 0 10px 30px rgba(0,0,0,0.15);
}

.toast.show {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}

.toast.success {
  background: rgba(15, 52, 68, 0.96);
}

.toast.error {
  background: rgba(140, 43, 43, 0.96);
}

.signup-form button {
  position: relative;

  display: flex;
  align-items: center;
  justify-content: center;

  min-width: 190px;

  overflow: hidden;
}

.btn-text {
  transition: opacity 0.25s ease;
}

.signup-form.loading .btn-text {
  opacity: 0;
}

.btn-loading {
  position: absolute;

  inset: 0;

  display: flex;
  align-items: center;
  justify-content: center;

  opacity: 0;
  visibility: hidden;

  transition:
    opacity 0.25s ease,
    visibility 0.25s ease;
}

.signup-form.loading .btn-loading {
  opacity: 1;
  visibility: visible;
}

.spinner {
  width: 18px;
  height: 18px;

  border: 2px solid rgba(255,255,255,0.25);
  border-top-color: #ffffff;

  border-radius: 50%;

  animation: spin 0.7s linear infinite;
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}

    @media (max-width: 700px) {
      .coming-soon-page {
        background-image:
          linear-gradient(
            rgba(247, 241, 232, 0.94),
            rgba(247, 241, 232, 0.72)
          ),
          url("/assets/images/bg.jpg");
        background-position: center bottom;
      }

      .content {
        padding: 56px 24px 48px;
      }

      .logo {
        width: 280px;
        margin-bottom: 42px;
      }

      h1 {
        font-size: 2rem;
        letter-spacing: 0.14em;
      }

      .signup-form {
        flex-direction: column;
      }

      .signup-form button {
        padding: 18px 24px;
      }
}