.page-id-298 {
  position: relative;
}

.page-id-1093::before,
.page-id-1086::before,
.page-id-742::before {
  content: "";
  position: fixed;
  top: 50%;
  left: 50%;
  width: 300px;
  height: 300px;
  background-image: url(https://timeforenglishsf.com/wp-content/uploads/2026/04/Logo-1.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transform: translate(-50%, -50%);
  opacity: 0.08;
  z-index: 0;
  pointer-events: none;
}

.page-id-234::before {
  content: "";
  position: fixed;
  top: 50%;
  left: 50%;
  width: 300px;
  height: 300px;
  background-image: url(https://timeforenglishsf.com/wp-content/uploads/2026/04/Logo-1.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transform: translate(-50%, -50%);
  opacity: 0.08;
  z-index: 0;
  pointer-events: none;
}


.page-id-726::before {
  content: "";
  position: fixed;
  top: 50%;
  left: 50%;
  width: 300px;
  height: 300px;
  background-image: url(https://timeforenglishsf.com/wp-content/uploads/2026/04/Logo-1.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transform: translate(-50%, -50%);
  opacity: 0.08;
  z-index: 0;
  pointer-events: none;
}

.page-id-735::before {
  content: "";
  position: fixed;
  top: 50%;
  left: 50%;
  width: 300px;
  height: 300px;
  background-image: url(https://timeforenglishsf.com/wp-content/uploads/2026/04/Logo-1.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transform: translate(-50%, -50%);
  opacity: 0.08;
  z-index: 0;
  pointer-events: none;
}


.page-id-210::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 300px; /* adjust size */
  height: 300px;

  background-image: url(https://timeforenglishsf.com/wp-content/uploads/2026/04/Logo-1.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;

  transform: translate(-50%, -50%);
  opacity: 0.08; /* controls fade */
  
  z-index: 0;
}

.page-id-298 {
  position: relative;
}

.page-id-298::before {
  content: "";
  position: fixed;
  top: 50%;
  left: 50%;
  width: 300px;
  height: 300px;
  background-image: url(https://timeforenglishsf.com/wp-content/uploads/2026/04/Logo-1.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transform: translate(-50%, -50%);
  opacity: 0.08;
  z-index: 0;
  pointer-events: none;
}

.page-id-677::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 300px; /* adjust size */
  height: 300px;

  background-image: url(https://timeforenglishsf.com/wp-content/uploads/2026/04/Logo-1.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;

  transform: translate(-50%, -50%);
  opacity: 0.08; /* controls fade */
  
  z-index: 0;
}



.recover-password-modal {
  position: fixed;
  inset: 0;
  z-index: 9999;
}

.recover-password-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
}

.recover-password-dialog {
  position: relative;
  width: min(90vw, 420px);
  margin: 12vh auto 0;
  background: #fff;
  border-radius: 18px;
  padding: 28px 24px 22px;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.2);
  z-index: 1;
}

.recover-password-dialog h2 {
  margin: 0 0 8px;
  font-size: 24px;
}

.recover-password-text {
  margin: 0 0 16px;
  color: #555;
}

.recover-password-actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 18px;
  flex-wrap: wrap;
}

.recover-password-btn {
  border: none;
  border-radius: 10px;
  padding: 11px 16px;
  font-size: 15px;
  cursor: pointer;
  text-decoration: none;
  display: inline-block;
}

.recover-password-btn.primary {
  background: #25D366;
  color: #fff;
}

.recover-password-btn.secondary {
  background: #eef2f7;
  color: #111827;
}

.recover-password-close {
  position: absolute;
  top: 12px;
  right: 12px;
  border: none;
  background: transparent;
  font-size: 26px;
  line-height: 1;
  cursor: pointer;
  color: #667085;
}

.centered-rows {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 100vh;
}

/* Keep button text on one line */
.wp-block-button__link {
  white-space: nowrap;
}

/* Don't let button get squashed */
.wp-block-button {
  flex-shrink: 0;
}

/* Keep row items side by side on mobile */
@media (max-width: 768px) {
  .wp-block-group.is-layout-flex,
  .wp-block-row {
    flex-wrap: nowrap !important;
    align-items: center;
  }

  /* Keep images from shrinking unevenly */
  .wp-block-image {
    flex-shrink: 0;
  }

  .wp-block-image img {
    width: 120px;
    height: auto;
    display: block;
  }
}

.logo-bg-page {
  position: relative;
  min-height: 100vh;
}

.logo-bg-page::before {
  content: "";
  position: fixed;
  inset: 0;
  background-image: url('https://timeforenglishsf.com/wp-content/uploads/2026/04/Logo-1.png');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 400px;
  opacity: 0.15; /* adjust visibility */
  pointer-events: none;
  z-index: 0;
}

.logo-bg-page > * {
  position: relative;
  z-index: 1;
}

body {
  background-color: #f5f5f5; /* change to your colour */
}

.page-id-1093 footer,
.page-id-176 footer {
  display: none;
}

.page-id-1086 footer {
  display: none;
}

.page-id-726 footer {
  display: none;
}

.page-id-735 footer {
  display: none;
}

.page-id-777 footer {
  display: none;
}

.page-id-763 footer {
  display: none;
}

.page-id-769 footer {
  display: none;
}

.page-id-176 {
  display: flex;
  justify-content: center;   /* horizontal center */
  align-items: center;       /* vertical center */
  min-height: 100vh;         /* full screen height */
  flex-direction: column;    /* stack buttons vertically */
}

.page-id-176 {
  position: relative;
}

.page-id-176::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 300px; /* adjust size */
  height: 300px;

  background-image: url(https://timeforenglishsf.com/wp-content/uploads/2026/04/Logo-1.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;

  transform: translate(-50%, -50%);
  opacity: 0.08; /* controls fade */
  
  z-index: 0;
}

.page-id-123 * {
  position: relative;
  z-index: 1;
}

.page-id-207 footer {
  display: none;
}

.page-id-742 footer {
  display: none;
}

.page-id-210 footer {
  display: none;
}

.page-id-231 footer {
  display: none;
}

.page-id-234 footer {
  display: none;
}

.page-id-298 footer {
  display: none;
}

.page-id-386 footer {
  display: none;
}

.page-id-677 footer {
  display: none;
}

header {
  min-height: auto !important;
}

.results-gate-modal {
  position: fixed;
  inset: 0;
  z-index: 9999;
}

.results-gate-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
}

.results-gate-dialog {
  position: relative;
  width: min(90vw, 420px);
  margin: 12vh auto 0;
  background: #fff;
  border-radius: 18px;
  padding: 28px 24px 22px;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.2);
  z-index: 1;
}

.results-gate-dialog h2 {
  margin: 0 0 8px;
  font-size: 24px;
}

.results-gate-text {
  margin: 0 0 16px;
  color: #555;
}

.results-gate-input {
  width: 100%;
  box-sizing: border-box;
  padding: 12px 14px;
  font-size: 16px;
  border: 1px solid #d0d5dd;
  border-radius: 10px;
  outline: none;
}

.results-gate-input:focus {
  border-color: #4c7ef3;
}

.results-gate-error {
  margin-top: 10px;
  color: #b42318;
  font-size: 14px;
}

.results-gate-actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 18px;
}

.results-gate-btn {
  border: none;
  border-radius: 10px;
  padding: 11px 16px;
  font-size: 15px;
  cursor: pointer;
}

.results-gate-btn.primary {
  background: #111827;
  color: #fff;
}

.results-gate-btn.secondary {
  background: #eef2f7;
  color: #111827;
}

.results-gate-close {
  position: absolute;
  top: 12px;
  right: 12px;
  border: none;
  background: transparent;
  font-size: 26px;
  line-height: 1;
  cursor: pointer;
  color: #667085;
}