body {
	font-family: "Bree Serif", serif;
    	font-weight: 400;
    	font-style: normal;
    	background-color: #ff0000;
	background-image: url("https://www.transparenttextures.com/patterns/dark-wood.png");
	/* This is mostly intended for prototyping; please download the pattern and re-host for production environments. Thank you! */
	color:white;
	padding-top: 80px;
}

html, body {
    height: 100%;
}

:root {
    --primary-color: #C62828;   /* red */
    --secondary-color: #FFCE1B; /* yellow */
    --dark-color: #222;
    --light-color: #fff;
    --navbar-height: 80px;
    --footer-height: 60px;
}

.sectionheader {
    color: var(--secondary-color);
}

/* Navbar */
.bg-primary-custom {
    background: linear-gradient(to bottom, #590102 0%, #D60104 50%, #590102 100%);
}

.navbar-brand {
    color: var(--secondary-color) !important;
    text-shadow: 1px 1px black;
}

/* Height offsets for fixed navbar/footer */
.pt-navbar {
    padding-top: var(--navbar-height);
    padding-bottom: var(--footer-height);
}

/* Hamburger Button Styling */
.navbar-toggler {
    background-color: var(--secondary-color); /* yellow */
    border: none;
    box-shadow: 2px 2px black;
    padding: 6px 10px;
}

/* Black hamburger lines */
.navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba%280,0,0,1%29' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

/* Footer styling */
.footer-custom {
    background: linear-gradient(to bottom, #590102 0%, #D60104 50%, #590102 100%);
    color: #fff;
    text-shadow: 1px 1px black;
    border-top: 2px solid #590102;
}

/* Navbar Links White */
.navbar-dark .navbar-nav .nav-link {
    color: #ffffff;
    text-shadow: 1px 1px black;
}

.navbar-dark .navbar-nav .nav-link:hover,
.navbar-dark .navbar-nav .nav-link:focus {
    color: var(--secondary-color);
}

.navbar .dropdown-toggle:focus,
.navbar .dropdown-toggle:active {
    outline: none;
    box-shadow: none;
}

.dropdown-menu {
    border: 2px solid white;
    border-radius: 0px;
    background-color: #590102;
    padding:0px;
}

.dropdown-item {
    color: #fff;
}

.dropdown-item:hover {
    background: var(--secondary-color);
    color: #000;
}

/* Active link */
.navbar-dark .navbar-nav .nav-link.active {
    color: #ffffff;
    font-weight: bold;
}

/* Buttons */
.btn-brand {
    background-color: var(--secondary-color);
    border: none;
    box-shadow: 2px 2px black;
    color: #000;
    font-weight: bold;
}

.btn-brand:hover {
    background-color: var(--secondary-color);
    color: var(--primary-color);
}

/* hamburger container */

.menu-toggle{
border:none;
display:flex;
flex-direction:column;
align-items:center;
padding:6px 10px;
}

/* hamburger bars */

.hamburger{
width:26px;
height:18px;
display:flex;
flex-direction:column;
justify-content:space-between;
}

.hamburger span{
display:block;
height:3px;
background:black;
border-radius:3px;
transition:all .3s ease;
}

/* label */

.menu-text{
font-size:11px;
font-weight:600;
letter-spacing:1px;
margin-top:3px;
color:black;
}

/* animation when menu opens */

.navbar-toggler[aria-expanded="true"] .hamburger span:nth-child(1){
transform:rotate(45deg) translate(5px,5px);
}

.navbar-toggler[aria-expanded="true"] .hamburger span:nth-child(2){
opacity:0;
}

.navbar-toggler[aria-expanded="true"] .hamburger span:nth-child(3){
transform:rotate(-45deg) translate(5px,-5px);
}

/* Hero Section */
.hero {
    position: relative;
    background: url('/assets/images/IMG_3594.jpeg') top center/cover no-repeat;
    color: white;
    padding: 70px 0px;
    border:4px solid white;
    border-radius: 0px !important;
    overflow: hidden;
    text-align: center;
}

/* Dark overlay for text readability */
.hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.7);
}

.hero > * {
    position: relative;
    z-index: 2;
}

.card {
    background-color: #590102;
    color: white;
    border: 4px solid white;
    border-radius: 0px;
    padding:5px;
}

/* Order Button */
.btn-order {
    background-color: var(--secondary-color);
    color: #000;
    font-weight: bold;
    border-radius: 8px;
    padding: 8px 18px;
    transition: 0.3s;
}

.btn-order:hover {
    background-color: var(--secondary-color);
    color: var(--primary-color);
}

.hours-list {
    max-width: 320px;
}

.hours-row {
    display: flex;
    justify-content: space-between;
    padding: 2px 0;
    border-bottom: 1px solid white;
}

.hours-row:last-child {
    border-bottom: none;
}

.hours-row .day {
    min-width: 120px; /* forces alignment */
}

.hours-row .time {
    text-align: right;
}

.gallery-item {
    overflow: hidden;
    border: 4px solid white;
    background-color:black;
}

.gallery-img {
    cursor: pointer;
    transition: transform 0.3s ease;
}

.gallery-img:hover {
    transform: scale(1.05);
}

.admin-gallery-item {
    text-align: center;
    margin-bottom: 25px;
    background: #fff;
    padding: 10px;
    border-radius: 12px;
    box-shadow: 0 3px 10px rgba(0,0,0,0.08);
}

.admin-gallery-img {
    max-height: 250px;
    width: auto;
    max-width: 100%;
    object-fit: contain;
    border-radius: 10px;
    display: block;
    margin: 0 auto 10px auto;
}

.admin-caption {
    max-width: 250px;
    margin: 0 auto 10px auto;
    text-align: center;
}

.hours-banner {
	width: 100%;
	padding: 5px;
	border: solid black;
	border-width: 2px 0px;
	font-size: 1 rem;
	text-shadow: 1px 1px black;
	letter-spacing: .5px;
	position:fixed;
    top:58px;
	z-index: 1020;
}

/* Calendar background fix */

#calendar {
    background: white;
    padding: 10px;
    border-radius:0;
}

/* header bar */

.fc-toolbar-title {
    font-size: 1.4rem;
    font-weight: 600;
    color:#590102;
}

/* day cells */

.fc-daygrid-day {
    background: white;
}

.fc-daygrid-day-number {
    color: #590102;
    text-decoration:none;
}

/* event style */

.fc-event {
    background-color:lemonchiffon;
    color:black;
}
.fc-event:hover {
    background-color:var(--secondary-color);
    cursor:pointer;
}

.fc-day-today {
    background-color:#590102 !important;
}

/* Color of today's date number */

.fc-day-today .fc-daygrid-day-number {
    color: #fff;   /* your color */
    font-weight: bold;
    text-decoration:none;
}

/* Day of week header styling */

.fc-col-header-cell {
    background-color: #590102;   /* header background */
}

.fc-col-header-cell-cushion {
    color: white;                /* text color */
    font-weight: 600;
    text-decoration: none;
}

/* EVENTS SCROLLER */

/* EVENTS BANNER */

.events-banner{
background:var(--secondary-color);
color:black;
overflow:hidden;
position:fixed;
top:94px;
z-index:1021;
width: 100%;
	padding: 5px 5px;
	border: solid black;
	border-width: 2px 0px;
	font-size: 1 rem;
	letter-spacing: .5px;
margin-bottom:20px;
}

/* layout */

.events-wrapper{
display:flex;
align-items:center;
}

/* label */

.events-label{
font-weight:700;
white-space:nowrap;
padding:0 15px 0 5px;
flex-shrink:0;
}

/* ticker container */

.events-ticker{
overflow:hidden;
flex-grow:1;
position:relative;
}

/* fade masks */

.events-ticker::before,
.events-ticker::after{
content:"";
position:absolute;
top:0;
width:30px;
height:100%;
z-index:2;
pointer-events:none;
}

/* left fade */

.events-ticker::before{
left:0;
background:linear-gradient(to right, #ffc107 0%, rgba(255,193,7,0) 100%);
}

/* right fade */

.events-ticker::after{
right:0;
background:linear-gradient(to left, #ffc107 0%, rgba(255,193,7,0) 100%);
}

/* moving track */

.events-track{
display:flex;
width:max-content;
animation:tickerScroll 22s linear infinite;
}

/* event row */

.events-scroll{
display:flex;
gap:30px;
white-space:nowrap;
padding-right:40px;
}

/* events */

.event-item{
color:#000;
text-decoration:none;
font-weight:500;
}

.event-item:hover{
cursor:pointer;
}

/* animation */

@keyframes tickerScroll{

0%{
transform:translateX(0);
}

100%{
transform:translateX(-50%);
}

}

.trailer-card img{
height:150px;
object-fit:cover;
}

.trailer-card{
border-radius:0px;
}

.trailer-card:hover{
transform: scale(1.05);
}

@media (max-width: 991px) {
  
#hidden {
    display:none;
}
  
  .btn-order {
        width: 100%;
        margin-top: 10px;
    }
  
  .hero {
    padding: 80px 0px;
}
  
.install-banner {
    position: fixed;
    top: 0;
    left: 50%;
    transform: translate(-50%, -160%);
    width: calc(100% - 20px);
    max-width: 480px;
    z-index: 9999;
    transition: transform 0.55s cubic-bezier(.34,1.56,.64,1);
}

.install-banner.show {
    transform: translate(-50%, 10px);
}

.install-content {
    display: flex;
    align-items: center;
    background: rgba(255,255,255,0.95);
    backdrop-filter: blur(20px);
    border-radius: 20px;
    padding: 12px 14px;
    box-shadow: 0 15px 35px rgba(0,0,0,0.25);
}
  
}