/* Hide global navbar from base on landing page */
.navbar { display: none; }
/* Remove base main-content top padding on landing */
.main-content { padding-top: 0 !important; }

/* Centered hero layout */
.main_container { min-height: 100vh; display: flex; align-items: center; justify-content: center; padding: 0 20px; }
.home-hero { text-align: center; max-width: 800px; width: 100%; }
.home-title { font-size: clamp(2.5rem, 6vw, 4rem); line-height: 1.1; margin: 0 0 16px; color: #2c3e50; font-weight: bold; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; }

.hero-links { display: inline-flex; align-items: center; gap: 14px; color: #2c3e50; margin-bottom: 16px; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; font-size: 1.25rem; }
.hero-links a { color: #2c3e50; text-decoration: none; font-weight: 500; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; transition: color 0.2s ease, text-underline-offset 0.2s ease; text-underline-offset: 3px; }
.hero-links a:hover { text-decoration: underline; }
.hero-links .divider { color: #9ca3af; }
.hero-links a[aria-disabled="true"] { opacity: 0.6; pointer-events: none; cursor: default; }
/* Subtle hover accent only for Login link */
.hero-links a.login-link:hover { color: #3498db; text-underline-offset: 4px; }

.hero-content { margin-top: 8px; display: flex; justify-content: center; flex-direction: column; align-items: center; }
.hero-content .info { max-width: 720px; color: #4b5563; font-size: 1rem; line-height: 1.6; }
.hero-content .about-pane { max-width: 720px; color: #4b5563; font-size: 1rem; line-height: 1.6; margin-bottom: 8px; }

/* Accessibility utility from base */
.visually-hidden { position: absolute !important; height: 1px; width: 1px; overflow: hidden; clip: rect(1px, 1px, 1px); white-space: nowrap; }

/* No in-page contact reveal anymore on the landing page */
