/* Base Styles */
.navbar{
	background-color: #040405;
	height: 15vh;
}
header {
	position: relative;
}

header .container {
	max-width: 1368px;
	margin: 0 auto;
	padding: 1rem 2rem;
}

header .container .navbar {
	min-height: 10vh;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

header .container .navbar .logo {
	font-size: 2.25rem;
	text-decoration: none;
	text-transform: uppercase;
	color: #B3B4BD;
	font-weight: 700;
}

header .container .navbar .nav-links {
	display: flex;
	align-items: center;
}

header .container .navbar .nav-links li {
	list-style-type: none;
}

header .container .navbar .nav-links li a {
	text-decoration: none;
	color: #B3B4BD;
	margin: 0 1.25rem;
	font-weight: 500;
	font-size: 1.05rem;
	position: relative;
}

header .container .navbar .nav-links li a::after {
	position: absolute;
	content: '';
	background-color: #B3B4BD;
	bottom: -5px;
	left: 0;
	width: 0%;
	height: 3px;
	transition: 0.3s ease all;
}

header .container .navbar .nav-links li a:hover::after {
	width: 100%;
}

header .container .navbar .nav-links button {
	border: none;
	outline: none;
	cursor: pointer;
	padding: 0.75rem 1rem;
	margin: 0 1rem;
	border-radius: 6px;
	background: transparent;
	border: 2px solid #B3B4BD;
	color: #B3B4BD;
	font-weight: 500;
}

header .container .navbar i {
	display: none;
	color: #B3B4BD;
	cursor: pointer;
}

header .container .showcase {
	min-height: 80vh;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	width: 35rem;
}

header .container .showcase h1 {
	color: #B3B4BD;
	font-size: 2.5rem;
	margin-bottom: 1rem;
	font-weight: 700;
}

header .container .showcase p {
	margin-top: 0;
	color: #B3B4BD;
	font-weight: 500;
	line-height: 1.4;
	font-size: 0.9rem;
	width: 30rem;
}

header .container .showcase button {
	margin-top: 1rem;
	background-color: #000;
	color: #B3B4BD;
	border: none;
	outline: none;
	padding: 1rem 1.5rem;
	font-size: 0.9rem;
	border-radius: 6px;
	cursor: pointer;
}

header .video-container {
	z-index: -1;
	position: absolute;
	top: 0;
	left: 0;
	height: 100vh;
	width: 100vw;
}

header .video-container video {
	height: 100%;
	width: 100%;
	object-fit: cover;
}

header .video-container::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	background-color: rgba(0, 0, 0, 0.107);
}

/* Responsive Styling */
@media (max-width: 850px) {
	header .container .navbar .nav-links {
		position: absolute;
		top: 0;
		left: 0;
		background-color: #B3B4BD;
		height: 100%;
		width: 225px;
		margin: 0;
		padding: 0;
		flex-direction: column;
		justify-content: space-evenly;
		align-items: center;
		transform: translateX(-100%);
		transition: 0.4s ease all;
		z-index: 10;
	}
	
	header .container .navbar .nav-links li a {
		color: #000;
	}
	
	header .container .navbar .nav-links li a::after {
		background-color: #000;
	}
	
	header .container .navbar .nav-links button {
		border-color: #000;
		color: #000;
		padding: 0.75rem 1.5rem;
	}
	
	header .container .navbar .nav-links.active {
		transform: translateX(0%);
	}
	
	header .container .navbar i {
		display: block;
	}
	
	header .container .showcase {
		min-height: 80vh;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		width: 100%;
		text-align: center;
	}
	
	header .container .showcase h1 {
		font-size: 2.25rem;
	}
}

@media (max-width: 500px) {
	header .container .showcase h1 {
		font-size: 2.1rem;
	}
	
	header .container .showcase p {
		font-size: 0.85rem;
		width: 300px;
	}
}

/* General Styles */
.material-symbols-outlined {
	font-variation-settings:
		'FILL' 0,
		'wght' 500,
		'GRAD' 0,
		'opsz' 48;
}
z
.menu-open i {
	color: #B3B4BD;
	font-size: 36px;
	padding-left: 10px;
}

.menu-close i {
	color: rgb(255, 255, 255);
	font-size: 36px;
	padding: 10px;
	padding-right: 1px;
}

.side-nav {
	position: relative;
	transition: transform 0.6s ease-out;
	background: #040405;
	opacity: 75%;
	height: 100%;
	width: 25%;
	max-width: 250px;
	box-shadow: 0 5px 6px 4px rgba(0, 0, 0, .2);
	transform: translateX(-102%);
	will-change: transform;
	display: flex;
	flex-direction: column;
}

.side-nav-container {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
	pointer-events: none;
}

.side-nav-container:before {
	transition: opacity 0.3s cubic-bezier(0, 0, 0.3, 1);
	content: '';
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: rgba(0, 0, 0, .4);
	will-change: opacity;
	opacity: 0;
	pointer-events: none;
}

.side-nav-animatable .side-nav {
	transition: transform 0.33s cubic-bexier(0, 0, 0.3, 0.1);
}

.side-nav-animatable.side-nav-visible .side-nav {
	transition: transform 0.33s cubic-bezier(0, 0, 0.3, 1);
}

.side-nav-visible {
	pointer-events: auto;
}

.side-nav-visible .side-nav {
	transform: none;
}

.side-nav-visible:before {
	opacity: 1;
}

.color-me {
	color: black;
}

.linknav {
	text-align: center;
	text-decoration: none;
	font-size: 25px;
	color: #B3B4BD;
	display: block;
	transition: 0.3s;
}

.linknav:hover {
	color: #ffffff;
}

.logo {
    display: table;
    margin-left: auto;
    margin-right: auto;
    opacity: 0.5; /* Set to 0.5 for 50% opacity */
    transition: opacity 0.5s ease, width 0.5s ease, height 0.5s ease; /* Add transition for smooth effect */
    height: 10vw;
    width: 10vw;
}

.logo2{

	height: 15vh;
    width: 15vh;
}

.logo:hover {
    opacity: 1; /* Set to 1 for 100% opacity */
    width: 15vh; /* Increase size on hover */
    height: 15vh; /* Increase size on hover */
}



/* Additional Mobile Styling */
@media (max-width: 850px) {
	.side-nav {
		width: 75%; /* Extend width for small devices */
		max-width: none; /* Remove max-width restriction */
	}
	
	.linknav {
		font-size: 1.5rem; /* Increase text size for small devices */
	}
}

@media (max-width: 500px) {
	.side-nav {
		width: 90%; /* Further extend width for extra small devices */
	}
	
	.linknav {
		font-size: 2rem; /* Increase text size for extra small devices */
	}
}

/* Hamburger Menu Styles */
.hamburger {
    display: none;
    flex-direction: column;
    cursor: pointer;
    padding: 4px;
    background: none;
    border: none;
    z-index: 1001;
    gap: 4px;
}

.hamburger span {
    width: 25px;
    height: 3px;
    background-color: #ffffff;
    margin: 2px 0;
    transition: 0.3s;
    border-radius: 2px;
}

/* Hamburger Active Animation */
.hamburger.active span:nth-child(1) {
    transform: rotate(45deg) translate(5px, 5px);
}

.hamburger.active span:nth-child(2) {
    opacity: 0;
}

.hamburger.active span:nth-child(3) {
    transform: rotate(-45deg) translate(7px, -6px);
}

/* Mobile Navigation Styles - Fixed for modern navbar */
@media (max-width: 768px) {
    .hamburger {
        display: flex !important;
    }
    
    .nav-menu {
        position: fixed !important;
        left: -100% !important;
        top: 80px !important;
        flex-direction: column !important;
        background: linear-gradient(135deg, #040405 0%, #06070a 100%) !important;
        backdrop-filter: blur(10px) !important;
        width: 100% !important;
        text-align: center !important;
        transition: left 0.3s ease !important;
        box-shadow: 0 10px 27px rgba(0, 0, 0, 0.3) !important;
        z-index: 999 !important;
        padding: 2rem 0 !important;
        height: calc(100vh - 80px) !important;
        overflow-y: auto !important;
        display: flex !important;
    }

    .nav-menu.active {
        left: 0 !important;
    }

    .nav-menu .nav-link {
        padding: 1.5rem 2rem !important;
        display: block !important;
        color: #ffffff !important;
        font-weight: 500 !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
        transition: all 0.3s ease !important;
        text-decoration: none !important;
        font-size: 1.1rem !important;
        width: 100% !important;
        opacity: 1 !important;
        visibility: visible !important;
        margin: 0 !important;
        border-radius: 0 !important;
        background-color: transparent !important;
    }

    .nav-menu .nav-link:hover {
        background-color: rgba(255, 255, 255, 0.1) !important;
        color: #4ecdc4 !important;
        transform: translateX(10px) !important;
    }

    .nav-menu .nav-link::after {
        display: none !important;
    }

    .nav-actions {
        flex-direction: row !important;
        gap: 1rem !important;
        align-items: center !important;
    }

    .contact-btn {
        font-size: 12px !important;
        padding: 8px 12px !important;
    }

    .contact-btn span {
        display: none !important;
    }
}

/* Desktop - Hide hamburger */
@media (min-width: 769px) {
    .hamburger {
        display: none !important;
    }
    
    .nav-menu {
        display: flex !important;
        position: static;
        flex-direction: row;
        background: none;
        box-shadow: none;
        width: auto;
        padding: 0;
        height: auto;
    }
    
    .nav-menu .nav-link {
        padding: 0.5rem 1rem;
        border-bottom: none;
        display: inline-block !important;
    }
}
