*{
    padding: 0;
    margin: 0;
    box-sizing: border-box;

}


h2{
    text-align: center;
    margin-top: 20px;
}

@font-face {
    font-family: 'Rockness';
    src: url('fonts/Rockness.otf') format('opentype');
}



body {
    margin: 0;
    padding: 0;
    font-family: "SUSE", sans-serif;
    overflow-x: hidden;
    background-color: black;
    color: white;
}



#background-video {
    position: relative;
    top: 0;
    left: 50%;
	height: 100vh;
    width: 100vw;
	overflow-x: hidden;
    z-index: -1; /* Place the video behind other content */
    transform: translate(-50%);
    object-fit: cover;
    object-position: center top;
}

.video-gradient {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 60%, rgba(0, 0, 0, 1) 100%);
    z-index: 1;
}

.navbar {
    width: 100%;
    background-image: linear-gradient(to bottom, black, transparent);
    padding: 1.5vh 0;
    position: fixed;
    top: 0;
    z-index: 1000;
    transition: background-color 0.3s, backdrop-filter 0.3s;
}

.navbar.scrolled{
    background-color: rgba(0, 0, 0, 0.6);
    backdrop-filter: blur(10px);
    color: #1A1D23;
}

.navbar.scrolled a{
    color: #ffffff;

}


.nav-links {
    display: flex;
    justify-content: center;
    align-items: center;
    list-style-type: none;
    margin-bottom: 10px;
    padding: 0;
    position: relative;
	flex: 1;
}

.nav-links li {
    padding: 0 40px;
    position: relative;
}

.nav-links a {
    color: white;
    text-decoration: none;
    position: relative;
    overflow: hidden;
	font-weight: 400;
    text-shadow: 3px 3px 4px black;
}

.nav-links li:not(.band-name) a {
    font-size: 16px; /* Reinforces smaller size for all nav links except band-name */
	font-family: "SUSE", sans-serif;
}


/* Adding the underline effect */
.nav-links a::before {
    content: '';
    position: absolute;
    left: 0; /* Start from the left edge of the link */
    bottom: -5px;
    width: 100%; /* Full width of the link */
    height: 3px;
    background-color: #fff; /* Color of the underline */
    transform: scaleX(0); /* Initially scale to 0 */
    transform-origin: center; /* Scale from the center */
    transition: transform 0.3s ease; /* Animate the scale */
}

.nav-links a:hover::before {
    transform: scaleX(1); /* Scale to full width on hover */
}

.nav-links .band-name {
    margin: 0 50px;
    font-family: 'Rockness', sans-serif;
}

.nav-links .band-name a {
    font-weight: 400;
    font-size: 70px;
    
}

.nav-links .band-name a::before{
    content: none;
}



/** SIDE BAR STYLINGS **/
.sidebar{
    position: fixed;
    top:0;
    right: 0;
    height: 100vh;
	width:100%;
    max-width: 100%;
    z-index: 2;
    background-color: rgba(0, 0, 0, 0.6);
    backdrop-filter: blur(10px);
    box-shadow: -10px 0 10px rgba(0, 0, 0, 0.1);
    display: none;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    transition: background-color 0.3s, backdrop-filter 0.3s;
	
}




.sidebar li:not(.closeButton){
    width: 100%;
	text-align: center;
	padding: 15px 0;
	
}

.sidebar .band-name {
    margin: 0 50px;
    font-family: 'Rockness', sans-serif;
}

.sidebar .band-name a{
	font-weight: 400;
	font-size: 63px;
	text-align: center;
	
	
}

.sidebar a {
    color: white;
    text-decoration: none;
    position: relative;
    overflow: hidden;
	font-weight: 400;
}

.sidebar li:not(.band-name) a {
    font-size: 18px; /* Reinforces smaller size for all nav links except band-name */
	font-family: "SUSE", sans-serif;
	
	
}

/* Adding the underline effect */
.sidebar a::before {
    content: '';
    position: absolute;
    left: 0; /* Start from the left edge of the link */
    bottom: -5px;
    width: 100%; /* Full width of the link */
    height: 3px;
    background-color: #fff; /* Color of the underline */
    transform: scaleX(0); /* Initially scale to 0 */
    transform-origin: center; /* Scale from the center */
    transition: transform 0.3s ease; /* Animate the scale */
}

.sidebar a:hover::before {
    transform: scaleX(1); /* Scale to full width on hover */
}

.sidebar .band-name a::before{
    content: none;
}



.menuButton{
    display: none;
	position: absolute;
	top: 50px;
	right: 30px;
	z-index: 1000;
	
}

.svg-button {
    background-color: transparent; /* No background by default */
    border: none; /* Remove default button borders */
    cursor: pointer; /* Show pointer cursor to indicate it's clickable */
    padding: 0;
    margin: 0;
    display: inline-flex; /* Keep the button the size of the SVG */
    align-items: center;
    justify-content: center;
}

.svg-button:focus {
    outline: none; /* Remove focus outline if desired */
}

.closeButton{
    display: inline-block; /* Ensure the button behaves as an inline block */
    list-style: none; /* Remove any default list styling if the button is within a list */
    text-decoration: none; /* Ensure no text decoration */
    background: none; /* Remove any background styling */
    border: none; /* Remove any border if present */
	position: absolute;
	top: 50px;
	right: 30px;
	z-index: 1000;
}



#home-social-icons{
    position: absolute;
    top: 90.5%;
    left: 50%;
    transform: translateX(-50%); /* Center the social icons */
    display: flex;
    justify-content: center;
    z-index: 2; /* Higher than the gradient and video */
    gap: 10px; /* Adds some space between the icons */
}


.home-facebook-icon{
    opacity: 0.5; /* Start at 50% opacity */
    transition: opacity 0.3s ease-in-out; /* Smooth transition for opacity */
}

.home-instagram-icon{
    opacity: 0.5; /* Start at 50% opacity */
    transition: opacity 0.3s ease-in-out; /* Smooth transition for opacity */
}

.home-facebook-icon:hover {
    opacity: 1; /* Transition to 100% opacity on hover */
}

.home-instagram-icon:hover {
    opacity: 1; /* Transition to 100% opacity on hover */
}



.bio-container {
    margin: 20px auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 50px;
    padding: 50px;
	z-index: 2;
    margin-bottom: 100px;
}

.bio-img-wrapper{
    position: relative;
    width: 350px;
    height: auto;
    overflow: hidden;
}

.bio-card {
    text-align: left;
    width: 350px;
    height: auto; /* Allow card height to adjust */
    background-color: black;
    border-radius: 7px;
    border-bottom: 4px solid #333;
    border-left: 2px solid #ffffff;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    overflow: hidden;
    transition: transform 0.3s ease-in-out, border-left-color 0.3s ease-in-out;
	z-index: 3;
}

.bio-card:hover {
    transform: scale(1.05);
	border-left-color: red;
}

.bio-img {
    max-width: 100%;
    width: 100%;
    height: 400px; /* Set the image height */
    object-fit: cover; /* Ensures the image covers the area uniformly */
    object-position: center;
    display: block;
    
    
    
}


.bio-p {
	color: white;
	font-size: 22px;
    text-align: center;
    letter-spacing: 2px;
    word-spacing: 7px;
}

.bio-card h3, .bio-card p {
    margin-left: 25px;
    margin-right: 25px;
}

.bio-card h3 {
    margin-top: 15px;
    font-size: 30px;
    font-weight: bold;
    margin-bottom: 10px; /* Spacing under the title */
    color: white;
}

.bio-card p {
    font-size: 20px;
    font-weight: 400;
    color: white;
    margin-bottom: 25px; /* Ensure consistent padding at the bottom */
}


#bio-bryan{
    width: 100%;
    object-fit: cover;
    object-position: right;
}

#bio-mike{
    object-position: center;
}

#bio-shawn{
    width: 110%;
    object-fit: cover;
    object-position: left top;
}

#bio-dave{
    margin-left: -10px;
    width: 105%;
    object-position: bottom center;

}


@media (max-width: 1950px) {
    .bio-card {
        width: 275px; /* Reduce card width */
    }

    .bio-img {
        height: 300px; /* Reduce image height */
    }
    
    #bio-bryan{
        object-position: top left;
    }

    #bio-dave{
        margin-left: -10px;
        width: 105%;
        object-position: top right;
    
    }

}

@media (max-width: 1500px){
    .bio-container{
        transform: scale(0.9);
        transform-origin: center;
    }
}

@media (max-width: 1360px) {
    
    .bio-container{
        display: grid;
        grid-template-columns: repeat(2, auto); /* Creates 2 columns */
    }

    
}

@media (max-width: 750px) {
    
    .bio-container{
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }

    
}

@media (max-width: 1300px) {

    .bio-img {
        height: 300px; /* Reduce image height */
    }

    
}



@media (max-width: 450px) {
    
    
    #bio-dave{
        margin-left: -10px;
        width: 105%;
        object-position: top right;
    
    }

}






.book-us-container {
    position: absolute;
    top: 90%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
}

/* Button Styles */
.book-us-button {
    font-family: "SUSE", sans-serif;
    display: inline-block; /* Ensures the button is properly sized */
    position: absolute;
    bottom: 0px; /* Distance from the bottom of the video */
    left: 50%;
    transform: translateX(-50%);
    padding: 15px 30px;
    background-color: rgba(0, 0, 0, 0.6); /* Black with transparency */
    color: white;
    font-size: 16px;
    text-decoration: none;
    border-radius: 8px;
    border: 1px solid white; /* White border, 2px */
    backdrop-filter: blur(10px); /* Blur effect */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3); /* Subtle shadow for depth */
    transition: background-color 0.3s ease, color 0.3s ease;
    white-space: nowrap;
}

/* Link Styles */
.book-us-button a {
    position: relative; /* Ensure relative positioning for the pseudo-element */
    text-decoration: none; /* Remove default underline */
    color: #fff;
    display: inline-block; /* Block-level to support the ::before */
    padding-bottom: 5px; /* Add some space for the underline to sit */
	
}

.book-us-button:hover {
    background-color: rgba(255, 255, 255, 0.2); /* Change background color on hover */
    color: white;
	border: 1px solid red;
}




/*==== HOME MERCH SECTION  ====*/

.merch-section{
    display: flex;
    flex-direction: column;
    align-items: center;
    
}

.merch-container {
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: 0 20px;
    max-width: 100%;
	z-index: 2;
}

.merch-container a{
    text-decoration: none;
}

.merch-container p{
    word-spacing: 10px;
    font-size: 20px;

}

.merch-h1 {
    margin-top: 100px;
	color: white;
	font-size: 44px;
    text-align: center;
}

.merch-navbar-container{
    margin-bottom: 100px;
}

.merch-container h3 {
    margin-top: 30px; /* Space above the heading */
    margin-bottom: 10px; /* Space below the heading */
    word-spacing: 2px; /* Increase spacing between words */
    letter-spacing: 4px;
    font-size: 30px;
}


.merch-container p {
    margin-bottom: 15px; /* Space below paragraphs */
    word-spacing: 10px; /* Adjust for desired spacing */
}



/* ===  HOME IMAGE SLIDER  === */

.slider-wrapper{
    position: relative;
    width: 100%;
	max-width: 800px;
    margin: 0 auto;
    overflow: hidden;
}

.slider{
    display: flex;
    aspect-ratio: 16 / 9;
    overflow-x: hidden;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    box-shadow: 0 1.5rem 3rem -0.75rem hsla(0, 0%, 0%, 0.25);
	margin-top: 30px;
    
}

.slider img{
    flex: 1 0 100%;
    scroll-snap-align: start;
    object-fit: cover;
	border-radius: 20px;
    
    
    
}

.slider-nav{
    display: flex;
    column-gap: 1rem;
    position: absolute;
    bottom: 1.5rem;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2;
}

.slider-nav a{
    width: 1rem;
    height: 1rem;
    border-radius: 50%;
    background-color: white;
    opacity: 0.4;
    transition: opacity 0.5s ease;
    border: 2px solid black;
}


.slider-nav a:hover{
	opacity: 1;
    
}

.slider-nav a.active{
	opacity: 1;
}

.slider-gallery-button{
    text-align: center;
}

.slider-gallery-button button{
    font-family: "SUSE", sans-serif;
    margin-top: 50px;
    padding: 15px 30px;
    background-color: rgba(0, 0, 0, 0.6); /* Black with transparency */
    color: white;
    font-size: 16px; 
    text-decoration: none;
    border-radius: 8px;
    border: 1px solid white; /* White border, 2px */
    transition: background-color 0.3s ease, color 0.3s ease;
    white-space: nowrap;
    margin-bottom: 100px;
}

.slider-gallery-button a{
    text-decoration: none;
}

.slider-gallery-button button:hover{
    background-color: rgba(255, 255, 255, 0.2); /* Change background color on hover */
    color: white;
	border: 1px solid red;
    cursor: pointer;
}

.slider-border{
    overflow: hidden;
}

@media (max-height: 800px){
    .slider-wrapper{
        max-width: 800px;
    }
}





/*====  MERCH PAGE SECTION  ====*/

#merch-page-section{
    
    position: relative;
}

.merch-wrapper{
    margin-bottom: 50px;
}

.background-merch-img {
    background-image: url('assets/merch-background-2-upscaled.jpg');
    position: relative;
    top: 0;
    left: 50%;
    height: 50vh;
    width: 100vw;
    overflow: hidden;
    z-index: -1; /* Place the background behind other content */
    transform: translate(-50%);
    display: block;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}


.background-merch-img::before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}

.merch-page-h1 {
    text-align: center;
    margin-bottom: 20px; /* Space below the heading */
    word-spacing: 2px; /* Increase spacing between words */
    margin-top: -50px;
}

.merch-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 100px;
    padding-top: 50px;
	z-index: 2;
    margin-bottom: 100px;
    border-radius: 30px;
    background-color: black;
    margin: 0 auto;
}

.merch-img-wrapper{
    position: relative;
    max-width: 100%;
    height: auto;
    overflow: hidden;
}

.merch-img {
    
    width: 100%;
    height: 500px; /* Set the image height */
    object-fit: cover; /* Ensures the image covers the area uniformly */
    object-position: center;
    border-radius: 15px;
    background-color: black;
}

.merch-wrapper h3 {
    margin-top: 30px; /* Space above the heading */
    margin-bottom: 10px; /* Space below the heading */
    word-spacing: 2px; /* Increase spacing between words */
    letter-spacing: 4px;
    font-size: 30px;
}


.merch-wrapper p {
    margin-bottom: 15px; /* Space below paragraphs */
    word-spacing: 10px; /* Adjust for desired spacing */
}

@media (max-width: 1950px){
    .merch-img{
        width: 300px;
        height: 350px;
    }
}

@media (max-width: 1500px){
    .merch-img{
        transform: scale(0.9);
        transform-origin: center;
    }

    .merch-wrapper h3 {
        margin-top: 10px; /* Space above the heading */
        margin-bottom: 10px; /* Space below the heading */
        
    }

    .merch-container {
        padding-top: 20px;
        margin-top: 20px;

    }

    .merch-wrapper h3 {
        font-size: 24px;
    }

    .merch-wrapper p {
        font-size: 16px;
    }

}

@media (max-width: 1300px){
    .merch-img{
        transform: scale(0.8);
        transform-origin: center;
    }



}

@media (max-width: 740px) {
    .merch-container {
        width: 90%;    
    }

    .merch-img{
        transform: scale(0.9);
        transform-origin: center;
    }
    

    
}






/* ====  CALENDAR PAGE  ====  */

#background-calendar-img{
    position: relative;
    top: 0;
    left: 50%;
	height: 50vh;
    width: 100vw;
	overflow-x: hidden;
    z-index: -1; /* Place the video behind other content */
    transform: translate(-50%);
    display: block;
    object-fit: cover;
    object-position: center top;
    
    
}

.background-calendar-img {
    overflow: hidden;
    position: relative;
}


.video-gradient-img {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100vw;
    height: 60vh;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 60%, rgba(0, 0, 0, 1) 100%);
    z-index: 2;
}


.calendar-navbar-container{
    position: relative;
    margin-top: 5vh;
}

.year-section{
	margin-bottom: 50px;
	padding: 10px;
}

.calendar {
    max-width: 1200px;
    margin: 50px auto;
    padding: 20px;
    background-color: rgba(0, 0, 0, 1);
    border-radius: 20px;
    text-align: center;
}

h1 {
    font-size: 44px;
    margin-bottom: 20px;
    color: white;
}

.calendar-h1{
    margin-top: -30px;
    margin-bottom: 100px;
}

#show-list {
    list-style-type: none;
    padding: 0;
    margin: 0;
}

#show-list h2 {
    background-color: rgba(0, 0, 0, 0.7);
    font-size: 36px;
    padding: 10px;
    margin-top: 20px;
    border-bottom: 2px solid #ddd;
    margin-top: 50px;
	text-transform: uppercase;
}

#show-list li {
    margin-top: 10px;
	margin-bottom: 10px;
    padding: 20px;
    background-color: rgba(0, 0, 0, 0.7);
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: .5px solid #333;
}

#show-list li:not(.highlighted-show){
    font-size: 20px;
}

.get-directions-btn {
    font-family: "SUSE", sans-serif;
    padding: 15px 30px;
    background-color: rgba(0, 0, 0, 0.6); /* Black with transparency */
    color: white;
    font-size: 16px; 
    text-decoration: none;
    border-radius: 8px;
    border: 1px solid white; /* White border, 2px */
    transition: background-color 0.3s ease, color 0.3s ease;
    white-space: nowrap;
	display: inline-block;
}

.get-directions-btn:hover {
	background-color: rgba(255, 255, 255, 0.2); /* Change background color on hover */
    color: white;
	border: 1px solid red;
    cursor: pointer;
}








/* ===  HOME UPCOMING SHOWS SECTION  === */

.shows-section {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 50px 0;
    padding: 0 20px;
    color: #ffffff; /* White text for contrast */
    font-family: "SUSE", sans-serif; /* Clean, modern font */
}

.upcoming-shows-h1 {
	color: white;
	font-size: 44px;
}


.show-item {
    width: 60%;
    padding: 20px 0;
    font-size: 22px;
    border-bottom: 1px solid #333; /* Subtle line between items */
}

.details-container {
    display: flex; /* Use flexbox for layout */
    justify-content: space-between; /* Space between details and button */
    align-items: center; /* Align items vertically */
    margin-top: 10px; /* Add some spacing above */
    gap: 30px; /* Space between the text and button */
}

.highlighted-show {
    font-size: 1.8em;
    font-weight: bold;
    padding: 20px 0;
}

.see-all-shows-btn {
    margin-top: 30px;
    padding: 15px 30px;
    background-color: rgba(0, 0, 0, 0.6); /* Black with transparency */
    color: white;
    font-size: 16px; 
    text-decoration: none;
    border-radius: 8px;
    border: 1px solid white; /* White border, 2px */
    transition: background-color 0.3s ease, color 0.3s ease;
    white-space: nowrap;
	
}

.see-all-shows-btn:hover {
	background-color: rgba(255, 255, 255, 0.2); /* Change background color on hover */
    color: white;
	border: 1px solid red;
}

.bio-h1{
    text-align: center;
    margin-top: 100px;
    font-size: 44px;
}




/* ===  HOME VIDEO SECTION  === */

.video-section {
    margin-top: 100px;
    text-align: center; /* Center align the h1 and button */
	width: 100%;
}

.background-videos-img{
    background-image: url('assets/gallery-background-3.jpg');
    position: relative;
    top: 0;
    left: 50%;
    height: 50vh;
    width: 100vw;
    overflow: hidden;
    z-index: -1; /* Place the video behind other content */
    transform: translate(-50%);
    display: block;
    background-size: cover;
    background-position: center bottom;
    background-repeat: no-repeat;
}

.background-videos-img::before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}

/* General Styles for Video Container */
.video-container {
    position: relative;
    width: 100%; /* Full width */
    max-width: 900px; /* Max width for larger screens */
    margin: 0 auto; /* Center align */
    padding: 20px; /* Padding for responsiveness */
}

/* Aspect Ratio Maintainer */
.video-wrapper {
    position: relative;
    padding-top: 56.25%; /* 16:9 Aspect Ratio */
    height: 0;
    overflow: hidden;
    background: #000; /* Fallback color */
    margin-bottom: 20px; /* Add margin to separate video wrappers */
}

.video-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}

#video-0{
    margin-top: -60px;
    margin-bottom: 10px;
}

.video-p {
	color: white;
	font-size: 22px;
    text-align: center;
    letter-spacing: 2px;
    word-spacing: 7px;
}

#video-1{
	margin-bottom: 50px;
}

#video-2{
	margin-bottom: 10px;
}

#video-3{
	margin-bottom: 10px;
}

/* Ensure the credit is visible */
.credit {
    margin-top: 10px; /* Space between video and credit */
    color: white; /* Text color */
    font-size: 18px; /* Font size */
    text-align: center; /* Center the text */
    letter-spacing: 1px; /* Optional: add some letter spacing */
    margin-bottom: 50px;
}

/* Button Styles */
.video-home-btn {
    margin-top: 50px; /* Space between the video and the button */
}

.video-home-btn a {
    font-family: "SUSE", sans-serif;
    display: inline-block;
    padding: 15px 30px;
    background-color: rgba(0, 0, 0, 0.6); /* Black with transparency */
    color: white;
    font-size: 16px;
    text-decoration: none;
    border-radius: 8px;
    border: 1px solid white; /* White border */
    backdrop-filter: blur(10px); /* Blur effect */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3); /* Subtle shadow for depth */
    transition: background-color 0.3s ease, color 0.3s ease;
    white-space: nowrap;
}

/* Link Styles */
.video-home-btn a:hover {
    background-color: rgba(255, 255, 255, 0.2); /* Change background color on hover */
    color: white;
	border: 1px solid red;
    cursor: pointer;
}




/*  === GALLERY PAGE SECTION ===  */


#gallery-page-section{
    position: relative;
}

.background-gallery-img{
    background-image: url('assets/gallery-background-6.jpeg');
    position: relative;
    top: 0;
    left: 50%;
    height: 50vh;
    width: 100vw;
    overflow: hidden;
    z-index: -1; /* Place the video behind other content */
    transform: translate(-50%);
    display: block;
    background-size: cover;
    background-position: center bottom;
    background-repeat: no-repeat;
}

.background-gallery-img::before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}

#gallery-page-h1{
    margin-top: 50px;
}

#video-page-h1{
    margin-top: -50px;
}




/* Footer Styling */
.footer-container {
    background-color: #222;
    color: white;
    padding: 30px 0;
    text-align: center;
    font-family: 'SUSE', sans-serif;
	width: 100%;
}

.footer-content {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    margin-bottom: 20px;
}

.footer-section {
    flex: 1;
    min-width: 200px;
    padding: 10px;
	
}

.footer-section h4 {
    font-size: 18px;
    margin-bottom: 10px;
    text-transform: uppercase;
}

.quick-links{
	list-style-type: none;
	padding-left: 0;
    display: grid;
    grid-template-columns: repeat(2, auto); /* Creates 2 columns */
}

.footer-section p,
.footer-section a {
    color: #ccc;
    text-decoration: none;
    margin-bottom: 8px;
    display: block;
}

.social-icons {
    display: flex;
    justify-content: center;
    padding: 0;
    margin-top: 10px;
}

.social-icons svg path {
    fill: white; /* Fill the path of the SVG icons with white */
}

.social-icons li {
    list-style: none;
    margin: 0 10px;
}

.social-icons img {
    width: 24px;
    height: 24px;
}

.footer-bottom {
    padding: 10px;
    border-top: 1px solid #444;
    font-size: 14px;
    color: #888;
	margin-bottom: -25px;
}





/* ====  CONTACT PAGE  ==== */


/* Fix spacing between headings and paragraphs in .contact-left */
.contact-left h1 {
    margin-bottom: 15px; /* Small spacing between heading and next element */
    display: block;
}

#contact-email-h1{
    margin-top: 0px;
}
#contact-form-h1{
    margin-top: 0px;
}

.contact-form-text{
    align-items: center;
}

.contact-left p {
    margin-bottom: 100px; /* Ensures proper spacing below paragraphs */
    display: block;
}

#alt-phone {
    margin-bottom: 50px; /* Reduce large gap */
}

/* Contact form section spacing */
.contact-right p {

    text-align: center;
    margin-bottom: 8px;
}

.contact-right h1{
    text-align: center;
    margin-bottom: 18px;
}





.background-contact-img{
    background-image: url('assets/group-1-cropped.jpg');
    position: relative;
    top: 0;
    left: 50%;
    height: 50vh;
    width: 100vw;
    overflow: hidden;
    z-index: -1; /* Place the video behind other content */
    transform: translate(-50%);
    display: block;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.background-contact-img::before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}

/* CONTACT FORM */
.contact-container{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin-top: 50px;
}

/* Container for left and right sections */
.contact-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    width: 80%;
    margin: auto;
    padding: 50px 0;
}

/* Left Side (Contact Info) */
.contact-left {
    width: 45%;
    text-align: left;
}



/* Ensure the parent element has a relative position */
.contact-left a {
    position: relative; /* Required for the ::before pseudo-element to position correctly */
    color: inherit;
    text-decoration: none;
}

/* Adding the underline effect */
.contact-left a::before {
    content: '';
    position: absolute;
    left: 0;
    bottom: -10px;
    width: 100%;
    height: 3px;
    background-color: #fff; /* Color of the underline */
    transform: scaleX(0); /* Initially scale to 0 */
    transform-origin: center; /* Scale from the center */
    transition: transform 0.5s ease; /* Animate the scale */
}

/* Scale the underline to full width on hover */
.contact-left a:hover::before {
    transform: scaleX(1); /* Scale to full width on hover */
}

.contact-left a:hover{
    text-decoration: none;
}


/* Right Side (Contact Form) */
.contact-right {
    width: 45%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

/* Ensure the form is centered */
.contact-right form {
    display: flex;
    flex-direction: column;
    align-items: center; /* Centers all elements inside the form */
    gap: 15px; /* Space between fields */
    width: 100%;
}

/* Responsive Design */
@media screen and (max-width: 768px) {
    .contact-wrapper {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }
    .contact-left, .contact-right {
        width: 100%;
    }

    #alt-phone{
        margin-bottom: 100px;
    }

    
}

.contact-inputs{
    width: 400px;
    height: 50px;
    border: none;
    outline: none;
    padding-left: 25px;
    font-weight: 500;
    color: #666;
    border-radius: 8px;
    font-weight: 450;
    margin-top:15px;

}

.contact-right textarea{
    height: 140px;
    padding-top: 15px;
    margin-bottom: 20px;
    font-size: 14px;
    color: #666;
    border: none;
    outline: none;
    

}

.contact-inputs:focus{
    border: 2px solid red;
}

.contact-right button{
    font-family: "SUSE", sans-serif;
    padding: 15px 30px;
    background-color: rgba(0, 0, 0, 0.6); /* Black with transparency */
    color: white;
    font-size: 16px; 
    text-decoration: none;
    border-radius: 8px;
    border: 1px solid white; /* White border, 2px */
    transition: background-color 0.3s ease, color 0.3s ease;
    white-space: nowrap;
	display: inline-block;
    margin-bottom: 75px;
    width: auto;
    justify-content: center;
}

.contact-right button:hover{
    background-color: rgba(255, 255, 255, 0.2); /* Change background color on hover */
    color: white;
	border: 1px solid red;
    cursor: pointer;
}







/*  ====  IMAGE GALLERY PAGE  ====  */

.image-gallery {
    width: 80%;
    margin: 100px auto 50px;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    grid-gap: 30px;
}

.image-gallery img {
    width: 100%;
    height: 250px;
    object-fit: cover;
    cursor: pointer;
    transition: transform 0.3s ease-in-out;
    border-radius: 20px;
}

.image-gallery img:hover {
    transform: scale(1.05);
}

.full-image {
    display: none;
    align-items: center; /* Center vertically */
    justify-content: center; /* Center horizontally */
    width: 100%;
    height: 100vh; /* Full viewport height */
    background: rgba(0, 0, 0, 0.9);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1001;
}

.image-container {
    display: flex; /* This ensures the content inside is also flex */
    flex-direction: column; /* Arrange elements in a column */
    align-items: center; /* Center child elements */
    justify-content: center; /* Center child elements */
    width: 100%;
}

.full-image img {
    width: 90%; /* Responsive width */
    max-width: 1000px; /* Limit width */
    max-height: 70vh; /* Limit height to 80% of viewport height */
    height: auto; /* Maintain aspect ratio */
    object-fit: cover;
}

.full-image span {
    position: absolute;
    top: 10%; /* Adjust for smaller screens */
    right: 10%; /* Adjust for smaller screens */
    margin-top: 30px;
    padding: 20px;
    z-index: 1002;
    
}

.gallery-close-button {
    position: absolute;
    top: 10px; /* Adjust as needed */
    right: 10px; /* Adjust as needed */
    z-index: 1002; /* Higher than both .full-image and .navbar */
    cursor: pointer; /* Ensure it's clickable */
}

.full-image span:hover {
    cursor: pointer;
}

.left-arrow, .right-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%); /* Center the arrow vertically */
    cursor: pointer;
    z-index: 101; /* Ensure arrows are above the full image */
    box-shadow: #000;
}

.left-arrow {
    left: 50px; /* Adjust as necessary */
}

.right-arrow {
    right: 50px; /* Adjust as necessary */
}








.coming-soon{
    text-align: center;
    margin-top: 100px;
	margin-bottom: 100px;
}


@media (max-width: 700px) {
    #show-list li {
        flex-direction: column;
        align-items: flex-start;
    }

    #show-list li span {
        margin-bottom: 10px;
        text-align: center;
        flex-grow: unset;
    }

    #show-list li button {
        width: 100%;
        text-align: center;
        margin-left: 0;
    }

    .details-container{
		flex-direction: column;
		align-items: flex-start;
	}
	
	.details-container button{
		width: 100%;
		text-align: center;
		margin-left: 0;
	}

    #background-calendar-img{
        transform: translateX(-25%);
        width: 135vw;
        left: 0;
        
    }
	

}






@media (max-width: 1450px) {
    .nav-links {
        flex-wrap: wrap;
        justify-content: center;
    }

    .nav-links .band-name {
		flex-basis: 100%;
		text-align: center;
        order: -1; /* Move the band name to the top */
        margin: 0 0 20px; /* Adjust margin for spacing */
    }

    .nav-links .band-name a {
        font-size: 63px;
    }
	


    .nav-links li {
		flex-basis: auto;
        padding: 0 30px; /* Adjust padding for vertical spacing */
    }

    .nav-links a {
        font-size: 20px; /* Adjust font size if needed */
    }
}

@media (max-width: 1100px){
	.slider-container{
		max-width: 90%;
		margin: 0 auto;
	}
    
}

@media (max-width: 755px){
	
	.hide-on-mobile{
		display: none;
	}
	
	.menuButton{
		display: block;
		
	}
	
	.sidebar .band-name a {
		top: 5px;
	}

    .show-item {
        width: 90%;
        padding: 20px 0;
        border-bottom: 1px solid #333; /* Subtle line between items */
    }
    

    

    
	
}




@media (max-width: 550px){
	.nav-links .band-name a{
		font-size: 48px;
		top: 5px;
        
	}
	
	.nav-links .band-name {
		text-align: left;
        text-decoration: none;
        list-style: none; /* Remove any default list styling if the button is within a list */
        text-decoration: none; /* Ensure no text decoration */
        background: none; /* Remove any background styling */
        border: none; /* Remove any border if present */
        
	}
	
	.sidebar .band-name a {
		font-size: 48px;
		top: 5px;
        text-align: left; /* Text alignment */
        position: relative;
        left: 0; /* Align to the left */
	}

	.sidebar .band-name {
		text-align: left;
		list-style: none; /* Remove any default list styling if the button is within a list */
        text-decoration: none; /* Ensure no text decoration */
        background: none; /* Remove any background styling */
        border: none; /* Remove any border if present */
        padding-left: 0;
        margin-left: 0;
		
	}

    .contact-inputs{
        width: 90%;
    
    }
}

@media (max-width: 500px){
    .sidebar{
        width: 100%;
    }
	
	.nav-links .band-name a{
		font-size: 48px;
		top: 5px;
	}
	
	.sidebar .band-name a {
		font-size: 48px;
		top: 5px;
	}

    .nav-links .band-name {
		text-align: left;
	}


    .sidebar .band-name {
		text-align: left;
		list-style: none; /* Remove any default list styling if the button is within a list */
        text-decoration: none; /* Ensure no text decoration */
        background: none; /* Remove any background styling */
        border: none; /* Remove any border if present */
		
	}

    #home-video-gradient{
        margin-top: 20px;
    }
	
	
	.upcoming-shows-h1 {
    text-align: center;
	color: white;
	font-size: 44px;
	padding-bottom: 10px;
	
	}


}

@media (max-width: 420px){
    .nav-links .band-name a{
        font-size: 48px;
        top: 5px;
    }

    .sidebar .band-name a{
        font-size: 48px;
        top: 5px;
    }

    .menuButton{
        display: block;
        position: absolute;
        top: 40px;
        right: 30px;
        z-index: 1000;
        
    }
    
    .closeButton{
        position: absolute;
        top: 40px;
        right: 30px;
        z-index: 1000;
    }
	
	.sidebar.open {
        display: block;
        /* Ensure it's properly visible on small screens */
    }
}


@media (max-height: 800px){
    .contact-container{
        margin-top: 20px;
    }
    
    .contact-left{
        display:flex;
        flex-direction: column;
        align-items: center;
        gap: 20px
    }
    
    .contact-inputs{
        height: 40px;
        border-radius: 25px;
    }
    
    .contact-left textarea{
        height: 100px;
        
    }

}
