/* GLOBAL */
*{
margin:0;
padding:0;
box-sizing:border-box;
}

html {
scroll-behavior: smooth;
}

body {
font-family: 'Segoe UI', sans-serif;
background: #0b0f14;
color: #ffffff;
}

/* LOADER */
#loader {
position: fixed;
width: 100%;
height: 100%;
background: #0b0f14;
display: flex;
justify-content: center;
align-items: center;
z-index: 9999;
}

.loader-ring {
width: 60px;
height: 60px;
border: 6px solid #333;
border-top: 6px solid #ff7a00;
border-radius: 50%;
animation: spin 1s linear infinite;
}

@keyframes spin {
100% {
transform: rotate(360deg);
}
}

/* HEADER */
.header {
position: fixed;
top: 0;
left: 0;
width: 100%;
display: flex;
justify-content: space-between;
align-items: center;
padding: 20px 60px;
background: rgba(17, 21, 28, 0.85);
backdrop-filter: blur(10px);
z-index: 1000;
}

.logo {
color: #ff7a00;
font-weight: bold;
font-size: 18px;
}

nav a {
color: #ccc;
margin-left: 30px;
text-decoration: none;
font-size: 14px;
}

nav a:hover {
color: #ff7a00;
}

/* HERO (FIXED) */
.hero {
position: relative;
height: 100vh; /* 🔥 FIXED */
display: flex;
align-items: center;
justify-content: center;
text-align: center;
}

.hero-video {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
object-fit: cover;
z-index: -2;
}

.hero::after {
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.6);
z-index: -1;
}

.hero h1 {
font-size: 45px;
max-width: 800px;
margin: auto;
}

/* PRODUCTS */
.products {
padding: 120px 60px 80px 60px;
text-align: center;
}

.product-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
gap: 40px;
margin-top: 40px;
}

.product-card {
background: #1c2128;
padding: 20px;
border-radius: 10px;
transition: 0.3s;
}

.product-card:hover {
transform: translateY(-5px);
box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
}

.product-img {
width: 100%;
height: 200px;
object-fit: cover;
border-radius: 8px;
margin-bottom: 15px;
}

.product-card select,
.product-card input {
width: 100%;
padding: 10px;
margin: 10px 0;
background: #111;
color: #fff;
border: 1px solid #333;
border-radius: 5px;
}

.product-card button {
background: #ff7a00;
border: none;
padding: 12px;
width: 100%;
font-weight: bold;
cursor: pointer;
border-radius: 5px;
}

/* CART */
.cart-sidebar {
position: fixed;
top: 0;
right: -400px;
width: 350px;
height: 100%;
background: #11151c;
padding: 20px;
overflow-y: auto;
transition: 0.3s;
z-index: 2000;
}

.cart-sidebar.active {
right: 0;
}

.cart-header {
display: flex;
justify-content: space-between;
align-items: center;
margin-top: 60px;
margin-bottom: 20px;
}

.close-cart {
font-size: 22px;
cursor: pointer;
color: #ff7a00;
}

.cart-sidebar input {
width: 100%;
padding: 10px;
margin: 10px 0;
background: #111;
color: #fff;
border: 1px solid #333;
border-radius: 5px;
}

.cart-sidebar button {
width: 100%;
margin-top: 10px;
padding: 10px;
border: none;
font-weight: bold;
cursor: pointer;
border-radius: 5px;
background: #ff7a00;
color: white;
}

.upi-qr {
width: 200px;
margin: 10px auto;
display: block;
}

/* MAP */
.map {
padding: 80px 60px;
background: #11151c;
text-align: center;
}

.map iframe {
border-radius: 10px;
}

/* CONTACT */
.contact-section {
padding: 80px 60px;
background: #0b0f14;
}

.contact-container {
display: flex;
gap: 40px;
flex-wrap: wrap;
}

.contact-info,
.contact-form {
flex: 1;
}

.contact-form input,
.contact-form textarea {
width: 100%;
padding: 12px;
margin-bottom: 15px;
background: #111;
border: 1px solid #333;
color: white;
border-radius: 6px;
}

.contact-form button {
background: #ff7a00;
padding: 12px;
border: none;
width: 100%;
color: white;
font-weight: bold;
cursor: pointer;
}

/* RATINGS (FIXED OUTSIDE MEDIA QUERY) */
.ratings-section {
padding: 100px 60px;
}

.ratings-title {
text-align: center;
font-size: 32px;
margin-bottom: 40px;
}

/* RESPONSIVE */
@media(max-width:768px) {

.header {
padding: 15px 20px;
}

.hero h1 {
font-size: 28px;
}

.products {
padding: 120px 20px;
}

.cart-sidebar {
width: 100%;
}

.map {
padding: 60px 20px;
}

.contact-container {
flex-direction: column;
}

}