/* GLOBAL */
html,
body {
  height: 100%;
  margin: 0;
  font-family: "Cormorant", serif;
  background-color: #1d0200;
  color: white;
}

/* MAIN 3-ROW LAYOUT */
.container {
  min-height: 100vh;
  min-height: 100dvh;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

/* -------- TOP AREA (logo + top stroke) -------- */

.top-area {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 30px;
}

.logo {
  width: 155px;
  height: auto;
  display: block;
  padding-bottom: 12px;
}

/* reserve vertical space so layout does NOT jump */
.stroke-top-wrap {
  height: 32.66px;   /* mobile stroke height */
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 60px;
}

/* -------- CENTRE AREA (text + bottom stroke) -------- */

.center-area {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 0 24px;
  text-align: center;
}

.mission {
  font-size: 20px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.4px;
  max-width: 320px;
  margin: 0 auto;
}

/* reserve vertical space so layout does NOT jump */
.stroke-bottom-wrap {
  height: 32.66px;   /* mobile stroke height */
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 60px;
}

/* stroke base size (mobile) */
.stroke {
  width: 140px;
  height: auto;
  max-height: 100%;
  display: block;
  opacity: 0.75;
}

/* -------- BOTTOM AREA (email) -------- */

.bottom-area {
  text-align: center;
  padding-top: 12px;
  padding-bottom: max(env(safe-area-inset-bottom, 0px), 45px);
}

.email-link {
  font-family: "Helvetica", sans-serif;
  font-size: 13px;
  font-weight: 300;
  letter-spacing: 0.5px;
  color: white;
  text-decoration: none;
}

/* --------- RESPONSIVE TWEAKS --------- */

@media (min-width: 720px) {
  .logo {
    width: 180;
  }

  .mission {
    font-size: 20px;
    max-width: 300;
  }

  .stroke {
    width: 170px;
  }

  /* desk stroke height */
  .stroke-top-wrap,
  .stroke-bottom-wrap {
    height: 38px; /* desktop stroke height */
  }
   .stroke-top-wrap {
    margin-bottom: 45px;
  }

  .stroke-bottom-wrap {
    margin-top: 45px;
  }

  .email-link {
    font-size: 13px;
  }
}

@media (min-width: 1480px) {
  .logo {
    width: 200px;
  }

  .mission {
    font-size: 24px;
    max-width: 300px;
  }

  /* extra spacing on big screens */
  .stroke-top-wrap {
    margin-bottom: 100px;
  }

  .stroke-bottom-wrap {
    margin-top: 100px;
  }

  .stroke {
    width: 165px;
  }

  .email-link {
    font-size: 14px;
  }
}
