/* Branding Colors */
:root {
    --primary: #ff9900; /* Electric Amber */
    --dark: #121212;
    --light: #f8f9fa;
}

body {
    font-family: 'Roboto', sans-serif;
    background-color: var(--dark);
    color: var(--light);
}

.font-oswald {
    font-family: 'Oswald', sans-serif;
}

/* Nav */
#mainNav {
    background-color: rgba(0,0,0,0.9);
    border-bottom: 1px solid #333;
}
.navbar-brand {
    font-weight: 700;
    color: var(--primary) !important;
}

/* Hero Video Background */
header.masthead {
    position: relative;
    background-color: black;
    height: 100vh;
    min-height: 25rem;
    width: 100%;
    overflow: hidden;
}
header.masthead video {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    z-index: 0;
    transform: translateX(-50%) translateY(-50%);
}
header.masthead .overlay {
    position: absolute;
    /* Move it up slightly to ensure top coverage */
    top: -10vh; 
    left: 0;
    width: 100%;
    
    /* Make it taller than the screen to account for Safari's math errors */
    height: 120vh; 
    
    background-color: rgba(0,0,0,0.35);
    z-index: 1;
    pointer-events: none; /* Let clicks pass through to video if needed */
}
header.masthead .container {
    position: relative;
    z-index: 2;
}

/* Buttons */
.btn-primary {
    background-color: var(--primary);
    border-color: var(--primary);
    color: #000;
    font-weight: 700;
    padding: 15px 30px;
    border-radius: 2px; /* Slight edge */
}
.btn-primary:hover {
    background-color: #e68a00;
    border-color: #e68a00;
}

/* Team Images */
.team-member img {
    width: 150px;
    height: 150px;
    border: 3px solid var(--primary);
    object-fit: cover;
    margin-bottom: 1rem;
}

section {
    padding: 80px 0;
}

/* Form Styles */
.form-control {
    background-color: #222;
    border: 1px solid #444;
    color: #fff;
}
.form-control:focus {
    background-color: #333;
    color: #fff;
    border-color: var(--primary);
    box-shadow: none;
}


/* --- CSS PATCH: VISIBILITY FIXES --- */

/* 1. Lighten the 'muted' text so it pops against dark backgrounds */
.text-muted {
    color: #b0b3b8 !important; /* Much lighter gray, high readability */
}

/* 2. Fix the Contact Form Placeholders */
/* We have to target the specific browser pseudo-elements */

.form-control::placeholder {
    color: #cccccc !important; /* Light gray */
    opacity: 1; /* Fix for Firefox defaulting to lower opacity */
}

.form-control:-ms-input-placeholder { /* Internet Explorer 10-11 */
    color: #cccccc !important;
}

.form-control::-ms-input-placeholder { /* Microsoft Edge */
    color: #cccccc !important;
}

/* Optional: Make the input text itself pure white when they start typing */
.form-control {
    color: #ffffff !important;
    caret-color: var(--primary); /* Makes the typing cursor your brand color (Amber) */
}


.parallax-section {
    background-image: url('assets/texture.jpg');
    background-attachment: fixed; /* This creates the parallax effect */
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    color: white !important; /* Force text to white */
}
/* Add a dark overlay so text pops */
.parallax-section::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    z-index: 0;
}
.parallax-section .container {
    position: relative;
    z-index: 1; /* Puts text on top of overlay */
}

/* Band Member Zoom Effect */
.team-member img {
    transition: transform 0.3s ease; /* Smooth transition */
}
.team-member img:hover {
    transform: scale(1.1); /* Grow 10% on hover */
    border-color: #fff; /* Flash white border */
}