// main: ../main.scss /*-------------------------------------------------------------- # Hero Section --------------------------------------------------------------*/ .hero { --accent-color: #ffffff; padding-top: 120px; min-height: 100vh; position: relative; display: flex; align-items: center; overflow: hidden; padding-bottom: 60px; .hero-content { width: 100%; position: relative; display: flex; align-items: center; z-index: 3; } .image-background { position: absolute; inset: 0; z-index: 1; img { width: 100%; height: 100%; object-fit: cover; display: block; } } .image-overlay { position: absolute; inset: 0; background: color-mix(in srgb, var(--background-color), transparent 80%); z-index: 2; } h1 { font-size: 3.5rem; font-weight: 700; margin-bottom: 1.5rem; line-height: 1.2; @media (max-width: 768px) { font-size: 2.5rem; } @media (max-width: 576px) { font-size: 2rem; } } p { font-size: 1.25rem; margin-bottom: 2.5rem; color: color-mix(in srgb, var(--default-color), transparent 30%); line-height: 1.6; @media (max-width: 768px) { font-size: 1.1rem; margin-bottom: 2rem; } } .plan-visit-btn { position: absolute; left: 40px; bottom: 40px; z-index: 4; padding: 14px 28px; border-radius: 50px; background-color: #cc0000; color: #fff; font-weight: 700; letter-spacing: 0.8px; text-decoration: none; transition: all 0.3s ease; &:hover { background-color: #a30000; color: #fff; transform: translateY(-2px); } } @media (max-width: 992px) { padding: 80px 0; min-height: 80vh; .hero-content { min-height: 80vh; } } @media (max-width: 576px) { .plan-visit-btn { left: 20px; bottom: 24px; padding: 12px 22px; font-size: 0.85rem; } } }