/* VEEEDUB — first-visit email signup overlay (home page only).
   Hidden by default; landing.js adds .vd-landing-on to <html> on a first visit. */
.vd-landing { display: none; }
.vd-landing-on body { overflow: hidden; }
.vd-landing-on .vd-landing {
  display: flex;
  position: fixed; inset: 0; z-index: 1000;
  align-items: center; justify-content: center;
  min-height: 100vh; min-height: 100dvh;
  padding: max(1.25rem, env(safe-area-inset-top)) max(1.25rem, env(safe-area-inset-right))
           max(1.25rem, env(safe-area-inset-bottom)) max(1.25rem, env(safe-area-inset-left));
  overflow-y: auto; -webkit-overflow-scrolling: touch;
  background:
    radial-gradient(120% 70% at 50% 0%, rgba(70, 199, 199, .18), transparent 60%),
    radial-gradient(90% 60% at 50% 110%, rgba(220, 88, 42, .22), transparent 60%),
    #005F63;
  color: #EDE6DA;
  font-family: "Nunito", system-ui, sans-serif;
  text-align: center;
  opacity: 1;
  transition: opacity .6s ease, visibility 0s linear 0s;
}
.vd-landing.is-leaving { opacity: 0; visibility: hidden; transition: opacity .6s ease, visibility 0s linear .6s; }
.vd-landing-inner { width: 100%; max-width: 26rem; margin: auto; }
.vd-avatar {
  display: block; width: 7.5rem; height: 7.5rem; margin: 0 auto 1.1rem;
  border-radius: 50%; object-fit: cover; object-position: 50% 18%;
  border: 3px solid #F2A900; box-shadow: 0 0 0 6px rgba(237, 230, 218, .10);
}
.vd-name {
  margin: 0; font-family: "Recoleta", "Fraunces", Georgia, "Times New Roman", serif;
  font-weight: 700; letter-spacing: -.02em; line-height: 1;
  font-size: clamp(2.9rem, 15vw, 4.25rem); color: #EDE6DA;
}
.vd-name span { color: #46C7C7; }
.vd-rule { width: 3.25rem; height: 4px; margin: .85rem auto 1rem; border-radius: 2px; background: #F2A900; }
.vd-tagline {
  margin: 0 0 .6rem; font-family: "Poppins", system-ui, sans-serif; font-weight: 600;
  font-size: clamp(1.1rem, 5vw, 1.3rem); color: #F2A900;
}
.vd-tagline em { font-style: italic; font-weight: 500; color: #EDE6DA; }
.vd-pitch { margin: 0 0 1.4rem; font-size: 1.05rem; line-height: 1.5; color: rgba(237, 230, 218, .9); }
.vd-form { display: grid; gap: .75rem; margin: 0; }
.vd-label {
  text-align: left; font-family: "Poppins", system-ui, sans-serif; font-weight: 600;
  font-size: .9rem; letter-spacing: .02em; color: #EDE6DA;
}
.vd-input {
  width: 100%; min-height: 3.25rem; box-sizing: border-box;
  padding: .8rem 1.05rem; border-radius: 999px;
  border: 2px solid rgba(237, 230, 218, .45); background: #EDE6DA; color: #2B2B2B;
  font-family: "Nunito", system-ui, sans-serif; font-size: 1.0625rem; /* ≥16px: no iOS zoom */
}
.vd-input::placeholder { color: #6b655e; }
.vd-input:focus { outline: 3px solid #F2A900; outline-offset: 2px; border-color: #F2A900; }
.vd-join {
  width: 100%; min-height: 3.25rem; border: 0; border-radius: 999px; cursor: pointer;
  background: #DC582A; color: #EDE6DA;
  font-family: "Poppins", system-ui, sans-serif; font-weight: 700; font-size: 1.1rem; letter-spacing: .02em;
  transition: background-color .2s ease, color .2s ease, transform .1s ease;
}
.vd-join:hover, .vd-join:focus-visible { background: #46C7C7; color: #2B2B2B; }
.vd-join:focus-visible { outline: 3px solid #F2A900; outline-offset: 2px; }
.vd-join:active { transform: scale(.98); }
.vd-join[disabled] { opacity: .75; cursor: progress; }
.vd-reassure {
  margin: 0; text-align: center;
  font-family: "Nunito", system-ui, sans-serif; font-size: 13px; line-height: 1.45;
  color: #EDE6DA; opacity: .8; text-wrap: balance;
}
.vd-honey { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.vd-status { min-height: 1.5rem; margin: .9rem 0 0; font-family: "Poppins", system-ui, sans-serif; font-weight: 600; font-size: 1.05rem; color: #F2A900; }
.vd-status:empty { margin-top: .3rem; }
.vd-enter {
  display: inline-flex; align-items: center; justify-content: center; gap: .35rem;
  min-height: 3rem; margin-top: .5rem; padding: .6rem 1.4rem; border-radius: 999px;
  border: 2px solid rgba(237, 230, 218, .55); color: #EDE6DA; text-decoration: none;
  font-family: "Poppins", system-ui, sans-serif; font-weight: 600; font-size: 1rem;
}
.vd-enter:hover, .vd-enter:focus-visible { border-color: #46C7C7; color: #46C7C7; }
.vd-enter:focus-visible { outline: 3px solid #F2A900; outline-offset: 2px; }
.vd-landing.is-done .vd-form, .vd-landing.is-done .vd-enter { display: none; }
.vd-landing.is-done .vd-status { font-size: 1.35rem; color: #EDE6DA; }
@media (min-width: 640px) {
  .vd-avatar { width: 9rem; height: 9rem; }
}
@media (prefers-reduced-motion: reduce) {
  .vd-landing, .vd-landing.is-leaving, .vd-join { transition: none; }
}
