/* ============================================================
   DriveCoinClub — static on-hold page
   Self-hosted. No Shopify, no tracking, no third-party requests.
   ============================================================ */

@font-face {
  font-family: "Montserrat";
  font-weight: 700;
  font-style: normal;
  font-display: swap;
  src: url("assets/fonts/montserrat-700.woff2") format("woff2");
}

:root {
  --base-font-size: 87.5%;          /* 14px base, same as the original theme */
  --base-line-height: 1.3;

  --color-accent: #ff0000;
  --color-text: #ffffff;
  --color-background: #000000;
  --color-meta: #bbbbbb;

  --heading-font: "Montserrat", sans-serif;
  --heading-weight: 700;
  --heading-tracking: 0.1em;
  --body-font: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont,
               "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans",
               sans-serif, "Apple Color Emoji", "Segoe UI Emoji",
               "Segoe UI Symbol", "Noto Color Emoji";

  --page-padding: clamp(20px, 2.28vw, 35px);
}

/* ---------- Reset / base ---------- */
*,
*::before,
*::after { box-sizing: border-box; }

html {
  font-size: var(--base-font-size);
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
  background-color: var(--color-background);
  color: var(--color-text);
  font-family: var(--body-font);
  font-size: 1rem;                  /* 14px */
  line-height: var(--base-line-height);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}

.text-center { text-align: center; }

/* ---------- Page shell ---------- */
.page-shell {
  min-height: 100vh;
  min-height: 100svh;
  display: flex;
  flex-direction: column;
  padding: 0 var(--page-padding);
}

/* ---------- Main content, vertically centred ---------- */
main {
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

.password-content {
  max-width: 24rem;                 /* 336px at 14px base */
  width: 100%;
  margin: 0 auto;
  text-align: center;
}

.password-content-inner {
  width: 100%;
  overflow-wrap: break-word;
}

.password-logo {
  margin: 0;
  font-size: 1.953rem;
  line-height: 1.3;
}

.password-logo img {
  width: 250px;
  max-width: 100%;
  margin: 0 auto;
}

.password-heading {
  margin: 1rem 0 0;                 /* mt-4 = 14px */
  font-family: var(--heading-font);
  font-weight: var(--heading-weight);
  font-size: 1.953rem;              /* 27.342px */
  line-height: 1.3;
  letter-spacing: var(--heading-tracking);
  text-transform: uppercase;
}

.password-message {
  margin: 1rem 0 0;
  font-size: 1rem;                  /* 14px */
  line-height: var(--base-line-height);
}

/* ---------- Footer ---------- */
footer {
  display: block;
  flex: none;
}

.password-footer {
  font-size: 0.875rem;              /* 12.25px */
  padding: 0.5rem 0;                /* py-2 = 7px */
}

/* ---------- Small screens ---------- */
@media (max-width: 480px) {
  .password-logo img { width: min(250px, 100%); }
}
