@font-face {
  font-family: "Dower";
  src: url("../fonts/Dower-Bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Scandia";
  src: url("../fonts/ScandiaLine-Medium.ttf") format("truetype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

.gate {
  margin: 0;
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 1.5rem;
  background-color: #02373b;
  background-image: url("../img/coin-teal.png"), url("../img/coin-pink.png");
  background-repeat: no-repeat;
  background-position: right 0 bottom 0, left 0 top 0;
  background-size: auto 38vh, auto 32vh;
  color: #f7f1e8;
  font-family: "Scandia", system-ui, sans-serif;
}

.gate__card {
  width: min(26rem, 100%);
  background: rgba(0, 64, 71, 0.72);
  border: 1px solid rgba(247, 241, 232, 0.14);
  border-radius: 22px;
  padding: 2rem 1.6rem 1.8rem;
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.22);
}

.gate__logo {
  display: block;
  height: 72px;
  width: auto;
  margin-bottom: 1.4rem;
}

.gate__kicker {
  margin: 0 0 0.45rem;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #c7447f;
}

.gate h1 {
  margin: 0 0 0.7rem;
  font-family: Dower, Georgia, serif;
  font-size: 1.7rem;
  font-weight: 700;
  line-height: 1.2;
}

.gate p {
  margin: 0 0 1.2rem;
  color: rgba(247, 241, 232, 0.8);
  line-height: 1.55;
}

.gate__error {
  background: #fde8ef;
  color: #9b1c4a;
  border-radius: 10px;
  padding: 0.7rem 0.85rem;
  font-size: 0.92rem;
}

.gate label {
  display: block;
  font-weight: 700;
  font-size: 0.9rem;
  margin-bottom: 0.4rem;
}

.gate input[type="password"] {
  width: 100%;
  box-sizing: border-box;
  min-height: 2.9rem;
  border: 0;
  border-radius: 12px;
  padding: 0.7rem 0.85rem;
  background: #f7f1e8;
  color: #002e31;
  font: inherit;
  margin-bottom: 1rem;
}

.gate button {
  width: 100%;
  min-height: 2.9rem;
  border: 0;
  border-radius: 999px;
  background: #c7447f;
  color: #f7f1e8;
  font: inherit;
  font-weight: 700;
  cursor: pointer;
}

.gate button:focus-visible,
.gate input:focus-visible {
  outline: 3px solid #c7447f;
  outline-offset: 3px;
}
