/* --- Variables --- */
:root {
    --warrior-purple: #4B2C7F;
    --warrior-white: #ffffff;
    --warrior-accent: #ff3333;
}

* { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Arial Black', sans-serif; }
html { scroll-behavior: smooth; }
body { background: #f4f4f4; overflow-x: hidden; }

/* --- Navigation --- */
header { position: sticky; top: 0; z-index: 2000; }
.top-bar { background: var(--warrior-white); height: 60px; }
nav { background: var(--warrior-purple); height: 60px; display: flex; justify-content: center; position: relative; box-shadow: 0 4px 10px rgba(0,0,0,0.3); }

.nav-container {
    width: 100%;
    max-width: 1200px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 20px;
}

/* LOGO FIX: Sitting lower */
.logo-wrapper { position: absolute; left: 50%; transform: translateX(-50%); z-index: 2100; }
.main-logo { height: 150px; position: relative; top: -5px; filter: drop-shadow(0px 6px 8px rgba(0,0,0,0.4)); }

.nav-links { display: flex; gap: 30px; flex: 1; transition: 0.3s; }
.nav-links.left { justify-content: flex-end; margin-right: 130px; }
.nav-links.right { justify-content: flex-start; margin-left: 130px; }
.nav-links a { color: white; text-decoration: none; text-transform: uppercase; font-size: 14px; }

/* Hamburger Menu */
.hamburger { display: none; cursor: pointer; flex-direction: column; gap: 5px; z-index: 3000; width: 30px; }
.hamburger span { display: block; width: 100%; height: 4px; background: white; border-radius: 2px; }

/* --- Hero Section: Perfect Centering --- */
.hero { height: 80vh; position: relative; overflow: hidden; display: flex; align-items: center; justify-content: center; }
.hero-video { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: -1; }
.overlay { 
    background: rgba(0,0,0,0.4); 
    width: 100%; height: 100%; 
    display: flex; flex-direction: column; align-items: center; justify-content: center; 
    text-align: center; color: white; 
}
.hero-text h1 { font-size: clamp(2rem, 8vw, 4rem); margin-bottom: 10px; }
.hero-text p { font-size: 1.2rem; max-width: 800px; }
.highlight { color: var(--warrior-accent); }

/* --- Sections --- */
.section { padding: 80px 20px; text-align: center; }
.dark { background: var(--warrior-purple); color: white; }

/* Golf Section: Side-by-Side */
.golf-container { display: flex; align-items: center; justify-content: center; gap: 50px; max-width: 1100px; margin: 0 auto; text-align: left; }
.golf-image, .golf-content { flex: 1; }
.golf-image img { width: 100%; border-radius: 12px; }

.notify-form { display: flex; margin-top: 20px; }
.notify-form input { flex: 2; padding: 12px; border: none; border-radius: 4px 0 0 4px; }
.notify-form button { flex: 1; padding: 12px; background: var(--warrior-accent); color: white; border: none; border-radius: 0 4px 4px 0; cursor: pointer; }

footer { background: #111; color: white; padding: 60px 20px; text-align: center; display: flex; justify-content: center; }

/* --- Mobile Fixes --- */
@media screen and (max-width: 768px) {
    .hamburger { display: flex; }
    .logo-wrapper { left: 50%; transform: translateX(-50%); }
    .main-logo { height: 100px; top: -10px; }

    .nav-links {
        display: none; position: absolute; top: 60px; left: 0; width: 100%;
        background: var(--warrior-purple); flex-direction: column;
        padding: 40px 0; gap: 20px; text-align: center;
    }
    .nav-links.active { display: flex !important; }

    .golf-container { flex-direction: column; text-align: center; }
    .notify-form { flex-direction: column; gap: 10px; }
    .notify-form input, .notify-form button { border-radius: 4px; }
}