:root {
--skyblue: #00CCFF;
--white: #ffffff;
--dark-blue: #0044FF;
--text-color: #333;
--gradient: linear-gradient(90deg, #00CCFF, #0044FF);
--light-bg: #f0faff;
}

* {
margin: 0;
padding: 0;
box-sizing: border-box;
font-family: 'Poppins', sans-serif;
}

body {
background-color: var(--white);
color: var(--text-color);
overflow-x: hidden;
}

/* Helper Classes */
.container { max-width: 1200px; margin: auto; padding: 0 20px; }
.section { padding: 80px 0; }
.section-title { text-align: center; font-size: 2.5rem; margin-bottom: 40px; color: var(--dark-blue); font-weight: 700;
}

/* Top Bar */
.top-bar {
background: var(--gradient);
color: white;
text-align: center;
padding: 8px;
font-size: 13px;
font-weight: 500;
}

/* NAVBAR DESIGN - FIXED & ALIGNED */
.navbar {
background: white;
box-shadow: 0 4px 15px rgba(0, 204, 255, 0.1);
position: sticky;
top: 0;
z-index: 1000;
}

.nav-container {
height: 80px;
display: flex;
justify-content: space-between;
align-items: center;
max-width: 1300px;
margin: auto;
padding: 0 20px;
}

.logo img {
height: 100px; /* navbar ke hisaab se adjust */
width: auto;
display: block;
}


.nav-links {
display: flex;
list-style: none;
}

.nav-links li a {
text-decoration: none;
color: #444;
font-weight: 600;
padding: 10px 15px;
transition: 0.3s;
}

.nav-links li a:hover { color: var(--skyblue); }

/* Nav Right (Search & Account aligned) */
.nav-right {
display: flex;
align-items: center;
gap: 20px;
}

.search-box {
display: flex;
align-items: center;
background: #f1f1f1;
padding: 8px 15px;
border-radius: 50px;
border: 1px solid transparent;
transition: 0.3s;
}
.search-box:focus-within { border-color: var(--skyblue); background: white; }
.search-box input {
border: none;
background: none;
outline: none;
width: 150px;
font-size: 14px;
}
.search-box i { color: var(--skyblue); }

.account-btn {
display: flex;
align-items: center;
gap: 8px;
background: var(--gradient);
color: white;
padding: 10px 20px;
border-radius: 50px;
text-decoration: none;
font-weight: 600;
transition: 0.3s;
}
.account-btn:hover { transform: scale(1.05); box-shadow: 0 5px 15px rgba(0, 68, 255, 0.3); }

.menu-toggle { display: none; font-size: 24px; color: var(--dark-blue); }

/* ================= LOGIN POPUP ================= */

.login-overlay {
position: fixed;
inset: 0;
background: rgba(0, 0, 0, 0.6);
display: none;
align-items: center;
justify-content: center;
z-index: 9999;
}

/* Main Box */
.login-box {
position: relative;
width: 90%;
max-width: 900px;
background: #fff;
border-radius: 18px;
display: flex;
overflow: hidden;
}

/* Close Button */
.login-close {
position: absolute;
top: 18px;
right: 22px;
background: none;
border: none;
font-size: 26px;
cursor: pointer;
color: #333;
z-index: 10;
}

.login-close:hover {
color: #ff3b3b;
}

/* LEFT PANEL */
.login-left {
width: 50%;
background: linear-gradient(135deg, #0d8bff, #19b4ff);
color: #fff;
padding: 40px;

display: flex;
flex-direction: column;
align-items: flex-start;
justify-content: center;

gap: 6px; /* ⭐ CONTROLLED GAP */
}

/* TEXT FIX */
.login-left h2 {
font-size: 30px;
margin: 0;
line-height: 1.15;
}

.login-left p {
font-size: 15px;
margin: 0;
opacity: 0.9;
line-height: 1.2;
}

/* IMAGE PERFECT FIT */
.login-left img {
width: 100%;
height: 190px;
object-fit: cover;
border-radius: 14px;
margin-top: 12px;
}

/* RIGHT PANEL */
.login-right {
width: 50%;
padding: 40px;

display: flex;
flex-direction: column;
justify-content: center;
}

/* Right Text */
.login-right h2 {
color: #0d8bff;
margin-bottom: 6px;
}

.login-right p {
margin-top: 0;
margin-bottom: 20px;
color: #666;
}

/* Inputs */
.login-right input {
width: 100%;
padding: 14px;
margin-bottom: 16px;
border-radius: 10px;
border: 1px solid #ccc;
font-size: 14px;
}

/* Login Button */
.login-right button {
margin-top: 10px;
padding: 14px;
border-radius: 30px;
border: none;
background: linear-gradient(135deg, #0d8bff, #19b4ff);
color: #fff;
font-size: 16px;
cursor: pointer;
}

.login-right button:hover {
opacity: 0.9;
}

/* Small Text */
.small-text {
margin-top: 16px;
font-size: 14px;
color: #666;
}

.small-text a {
color: #0d8bff;
text-decoration: none;
font-weight: 600;
}



/* ================= RESPONSIVE ================= */

@media (max-width: 768px) {
.login-box {
flex-direction: column;
}

.who-text p {
    font-size: 14px !important;
    line-height: 24px !important;
}

.login-left {
display: none;
}

.login-right {
width: 100%;
}
}

/* POPUP ANIMATION */
@keyframes popupScale{
from{
transform: scale(0.85);
opacity: 0;
}
to{
transform: scale(1);
opacity: 1;
}
}

/* ================= MOBILE RESPONSIVE ================= */
@media (max-width: 768px) {

/* TOGGLE SHOW */
.menu-toggle {
display: block;
}

/* NAV LINKS MOBILE */
.nav-links {
position: absolute;
top: 70px;
left: 0;
width: 100%;
background: #fff;
flex-direction: column;
align-items: center;
display: none;
padding: 20px 0;
box-shadow: 0 10px 20px rgba(0,0,0,0.1);
}

.nav-links.active {
display: flex;
}

.search-box {
display: none;
}

/* LOGIN POPUP MOBILE */
.login-box {
flex-direction: column;
}

.login-left {
display: none;
}

.login-right {
width: 100%;
}
}


:root {
--sky-blue: #e0f7ff; /* Light Sky Blue Background */
--primary-blue: #00CCFF;
--dark-blue: #0044FF;
--white: #ffffff;
--glass: rgba(255, 255, 255, 0.8);
--glow: 0 0 20px rgba(0, 204, 255, 0.4);
}

body {
background-color: var(--sky-blue);
font-family: 'Poppins', sans-serif;
margin: 0;
overflow-x: hidden;
}

/* --- 1. HERO SLIDER --- */
.hm-hero {
position: relative;
height: 90vh;
width: 100%;
overflow: hidden;
}

.hm-slides {
display: flex;
height: 100%;
transition: 0.8s cubic-bezier(0.7, 0, 0.3, 1);
}

.hm-slide {
min-width: 100%;
height: 100%;
position: relative;
}

.hm-slide img {
width: 100%; height: 100%; object-fit: cover;
}

/* Sky Blue Light Overlay */
.hm-slide::after {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(to right, rgba(0, 204, 255, 0.5), rgba(0, 68, 255, 0.2));
z-index: 1;
}

.hm-hero-text {
position: absolute;
top: 50%;
left: 10%;
transform: translateY(-50%);
z-index: 2;
color: var(--hm-white);
max-width: 600px;
}
.hm-hero-text h1 {
font-size: 60px;
line-height: 1.3;
margin-bottom: 22px;
color: #ffffff;
font-weight: 800;
letter-spacing: 1.2px;

/* depth + glow + clarity */
text-shadow:
0 1px 2px rgba(0, 0, 0, 0.6),
0 4px 12px rgba(0, 0, 0, 0.5),
0 10px 30px rgba(0, 0, 0, 0.4),
0 0 18px rgba(255, 213, 79, 0.35); /* soft glow */

text-transform: capitalize;
}

.hm-hero-text p {
font-size: 18px;
margin-bottom: 48px;
color: rgba(255, 255, 255, 0.95);
line-height: 1.6;

text-shadow:
0 2px 6px rgba(0, 0, 0, 0.45);

max-width: 620px;
}


.hm-btn {
background: var(--dark-blue);
color: whitesmoke;
padding: 15px 40px;
border-radius: 50px;
text-decoration: none;
font-weight: 700;
display: inline-block;
box-shadow: 0 10px 20px rgba(0, 204, 255, 0.3);
transition: 0.3s;
}
.hm-btn:hover { transform: translateY(-5px); box-shadow: 0 15px 30px rgba(0, 68, 255, 0.5); }

.hm-section { padding: 40px 5%; }
.hm-title { text-align: center; margin-bottom: 30px; }
.hm-title h2 {
font-size: 2.5rem;
color: var(--dark-blue);
margin-top: 0;
margin-bottom: 10px;
line-height: 1.2;
}


.hm-title .line { width: 70px; height: 4px; background: var(--hm-grad); margin: 10px auto; border-radius: 10px; }

.hm-shop-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
gap: 25px;
}

.hm-shop-card {
background: white;
padding: 20px;
border-radius: 20px;
text-align: center;
transition: 0.4s;
box-shadow: var(--hm-shadow);
}

.hm-shop-card:hover { transform: translateY(-10px); }

.hm-card-img {
width: 100%; height: 200px;
object-fit: cover; border-radius: 15px; margin-bottom: 15px;
}

/* --- 3. PREMIUM SERIES (GRID 3) --- */
.hm-premium-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 30px;
}

.hm-premium-card {
position: relative;
height: 400px;
border-radius: 25px;
overflow: hidden;
color: white;
}

.hm-premium-card img { width: 100%; height: 100%; object-fit: cover; transition: 0.5s; }
.hm-premium-card:hover img { transform: scale(1.1); }

.hm-premium-overlay {
position: absolute; inset: 0;
background: linear-gradient(to top, rgba(0,0,0,0.8), transparent);
padding: 30px;
display: flex; flex-direction: column; justify-content: flex-end;
}

/* --- 4. FEATURED PRODUCTS (GRID 4) --- */
.hm-product-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 20px;
}

.hm-prod-card {
background: white; border-radius: 20px; padding: 15px; text-align: center;
transition: 0.3s;
}
.hm-prod-card:hover { box-shadow: 0 0 20px rgba(0, 204, 255, 0.4); }

.hm-prod-img { width: 100%; aspect-ratio: 1/1; object-fit: contain; background: #f9f9f9; border-radius: 15px; }


/* --- 6. OUR PROJECTS --- */
.hm-project-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
gap: 25px;
}
.hm-proj-card {
position: relative; height: 450px; border-radius: 20px; overflow: hidden;
}
.hm-proj-card img { width: 100%; height: 100%; object-fit: cover; }
.hm-proj-info {
position: absolute; bottom: 0; width: 100%; background: rgba(255,255,255,0.9);
padding: 15px; transform: translateY(100%); transition: 0.4s;
}
.hm-proj-card:hover .hm-proj-info { transform: translateY(0); }

/* --- ANIMATIONS --- */
.hm-fade { opacity: 0; transform: translateY(30px); transition: 0.8s ease-out; }
.hm-fade.active { opacity: 1; transform: translateY(0); }

/* --- RESPONSIVE --- */
@media (max-width: 1024px) {
.hm-premium-grid, .hm-product-grid, .hm-service-strip { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
.hm-premium-grid, .hm-product-grid, .hm-service-strip, .hm-shop-grid { grid-template-columns: 1fr; }
.hm-hero-text { left: 5%; text-align: center; width: 90%; }
}
/* Footer */
/* Unique Prefix: dl- (Dolalight) */
:root {
--dl-footer-bg: #0a0e12; /* Deep Dark for Footer */
--dl-skyblue: #00CCFF;
--dl-dark-blue: #0044FF;
--dl-white: #ffffff;
--dl-text-gray: #b0b0b0;
--dl-grad: linear-gradient(90deg, #00CCFF, #0044FF);
}

.dl-footer {
background-color: var(--dl-footer-bg);
color: var(--dl-white);
padding: 60px 0 0 0;
font-family: 'Poppins', sans-serif;
position: relative;
clear: both; /* Isse upar wala content overlap nahi karega */
}

.dl-footer-container {
max-width: 1200px;
margin: 0 auto;
padding: 0 20px;
}

.dl-footer-top {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
gap: 40px;
margin-bottom: 50px;
}

/* About Section */
.dl-footer-about .dl-footer-logo {
max-width: 180px;
margin-bottom: 20px;
filter: brightness(0) invert(1); /* Logo ko white karne ke liye agar black hai toh */
}

.dl-footer-about p {
font-size: 0.95rem;
line-height: 1.6;
color: var(--dl-text-gray);
margin-bottom: 20px;
}

.dl-social-icons {
display: flex;
gap: 15px;
}

.dl-social-icons a {
width: 38px;
height: 38px;
background: rgba(255,255,255,0.1);
display: flex;
align-items: center;
justify-content: center;
border-radius: 50%;
color: var(--dl-white);
text-decoration: none;
transition: 0.3s;
}

.dl-social-icons a:hover {
background: var(--dl-grad);
transform: translateY(-5px);
}

/* Common Section Styling */
.dl-footer-section h3 {
font-size: 1.2rem;
margin-bottom: 25px;
position: relative;
padding-bottom: 10px;
}

.dl-footer-section h3::after {
content: '';
position: absolute;
left: 0;
bottom: 0;
width: 50px;
height: 2px;
background: var(--dl-grad);
}

.dl-footer-section ul {
list-style: none;
padding: 0;
}

.dl-footer-section ul li {
margin-bottom: 12px;
}

.dl-footer-section ul li a {
color: var(--dl-text-gray);
text-decoration: none;
transition: 0.3s;
font-size: 0.95rem;
}

.dl-footer-section ul li a:hover {
color: var(--dl-skyblue);
padding-left: 8px;
}

/* Contact Details */
.dl-contact-info p {
display: flex;
align-items: flex-start;
gap: 12px;
color: var(--dl-text-gray);
margin-bottom: 15px;
font-size: 0.95rem;
}

.dl-contact-info i {
color: var(--dl-skyblue);
margin-top: 5px;
}

.dl-contact-info a {
color: var(--dl-text-gray);
text-decoration: none;
}

/* Newsletter Section */
.dl-newsletter-full {
background: rgba(255,255,255,0.03);
padding: 30px 10px;
border-radius: 15px;
text-align: center;
margin-bottom: 50px;
border: 1px solid rgba(255,255,255,0.05);
}

.dl-newsletter-full h3 {
margin-bottom: 10px;
font-size: 1.5rem;
}

.dl-newsletter-full p {
color: var(--dl-text-gray);
margin-bottom: 25px;
}

.dl-newsletter-form {
display: flex;
max-width: 500px;
margin: 0 auto;
gap: 0;
}

.dl-newsletter-form input {
flex: 1;
padding: 15px 20px;
border-radius: 30px 0 0 30px;
border: none;
outline: none;
background: #fff;
}

.dl-newsletter-form button {
padding: 0 30px;
border-radius: 0 30px 30px 0;
border: none;
background: var(--dl-grad);
color: white;
font-weight: 700;
cursor: pointer;
transition: 0.3s;
}

.dl-newsletter-form button:hover {
opacity: 0.9;
}

/* Footer Bottom */
.dl-footer-bottom {
border-top: 1px solid rgba(255,255,255,0.1);
padding: 25px 0;
text-align: center;
font-size: 0.9rem;
color: var(--dl-text-gray);
}

/* Responsive */
@media (max-width: 768px) {
.dl-footer-top {
grid-template-columns: 1fr 1fr;
}
.dl-newsletter-form {
flex-direction: column;
gap: 10px;
}
.dl-newsletter-form input, .dl-newsletter-form button {
border-radius: 30px;
padding: 15px;
}

.contact-btn {
    padding: 10px 26px !important;
}
.hm-title h2 {
    font-size: 30px !important;
}

.hero-content h1 {
    font-size: 24px !important;
    line-height: 32px !important;
    margin-top: 14px !important;
}

.hero-content p {
    font-size: 14px !important;
    line-height: 21px !important;
}

.discover-content h2 {
    font-size: 24px !important;
    line-height: 30px !important;
    padding-top: 12px;
}

.discover-content p {
    font-size: 14px !important;
    line-height: 24px !important;
    text-align: justify;
}
.feature-list li {
    font-size: 15px !important;
}

.section-header h2 {
    font-size: 24px !important;
}

p {
    font-size: 14px !important;
}

.card-body {
    text-align: center;
}




}

@media (max-width: 480px) {
.dl-footer-top {
grid-template-columns: 1fr;
}




.card-body {
    text-align: center;
}

p {
    font-size: 14px !important;
}

.section-header h2 {
    font-size: 24px !important;
    margin-bottom: 12px;
}

.feature-list li {
    font-size: 15px !important;
}

.discover-content p {
    font-size: 14px !important;
    line-height: 24px !important;
    text-align: justify;
}

.discover-content h2 {
    font-size: 24px !important;
    line-height: 30px !important;
    padding-top: 12px;
}

.hero-content p {
    font-size: 12px !important;
    line-height: 21px !important;
}

.hero-content h1 {
    font-size: 30px !important;
    line-height: 40px !important;
    margin-top: 20px !important;
}


.hm-title h2 {
    font-size: 30px !important;
}

.contact-btn {
    padding: 10px 26px !important;
}

.hm-hero-text h1{
    font-size: 30px;
    line-height: 40px;
}

.hm-hero-text p {
    font-size: 16px;
}

.who-text p {
    font-size: 14px !important;
    line-height: 24px !important;
}


}

/* ================= CONTACT PAGE ================= */
.banner {
background: var(--gradient);
height: 400px;
display: flex;
align-items: center;
justify-content: center;
text-align: center;
color: var(--white);
padding: 20px;

}

.banner-content h1 {
font-size: 3rem;
margin-bottom: 10px;
animation: fadeInDown 1s ease;
}

.banner-content p {
font-size: 1.1rem;
max-width: 700px;
opacity: 0.9;
}

/* --- Container --- */
.container {
max-width: 1200px;
margin: -80px auto 50px;
padding: 0 20px;
}

/* --- Contact Cards --- */
.contact-cards {
margin-top: 100px;
display: grid;
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
gap: 20px;
margin-bottom: 50px;
}

.card {
background: var(--white);
padding: 30px;
border-radius: 15px;
text-align: center;
box-shadow: var(--shadow);
transition: transform 0.3s ease;
outline: 2px solid #0044FF;
}

.card:hover {
transform: translateY(-10px);
}

.card i {
font-size: 2.5rem;
color: var(--dark-blue);
margin-bottom: 15px;
}

.card h3 {
color: var(--dark-blue);
margin-bottom: 10px;
}

.card p a {
color: inherit; /* text jaisa color */
text-decoration: none; /* underline remove */
font-weight: 500;
}

.card p a:hover {
text-decoration: underline; /* optional hover effect */
}

/* --- Form & Map Section --- */
.main-contact {
display: grid;
grid-template-columns: 1.2fr 0.8fr;
gap: 30px;
margin-bottom: 60px;
}

.form-container {
background: var(--white);
padding: 40px;
border-radius: 20px;
box-shadow: var(--shadow);
}

.form-container h2 {
margin-bottom: 25px;
color: var(--dark-blue);
border-left: 5px solid var(--skyblue);
padding-left: 15px;
}

.input-group {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 20px;
margin-bottom: 20px;
}

.form-control {
width: 100%;
padding: 12px 15px;
border: 2px solid #eee;
border-radius: 8px;
outline: none;
transition: 0.3s;
}

.form-control:focus {
border-color: var(--skyblue);
}

textarea.form-control {
grid-column: span 2;
height: 120px;
resize: none;
}

.submit-btn {
background: var(--gradient);
color: var(--white);
padding: 15px 40px;
border: none;
border-radius: 30px;
font-weight: 600;
cursor: pointer;
transition: 0.3s;
text-transform: uppercase;
letter-spacing: 1px;
}

.submit-btn:hover {
box-shadow: 0 5px 15px rgba(0, 204, 255, 0.4);
transform: scale(1.02);
}

.map-container {
border-radius: 20px;
overflow: hidden;
box-shadow: var(--shadow);
height: 100%;
min-height: 400px;
}

/* --- FAQ Section --- */
.faq-section {
max-width: 800px;
margin: 0 auto 80px;
}

.faq-section h2 {
text-align: center;
margin-bottom: 40px;
color: var(--dark-blue);
font-size: 2.5rem;
}

.faq-item {
background: var(--white);
margin-bottom: 15px;
border-radius: 10px;
overflow: hidden;
box-shadow: 5px 5px 15px rgba(0,0,0,0.05);
}

.faq-question {
padding: 20px;
display: flex;
justify-content: space-between;
align-items: center;
cursor: pointer;
font-weight: 600;
transition: 0.3s;
}

.faq-question:hover {
background: var(--light-bg);
color: var(--dark-blue);
}

.faq-answer {
max-height: 0;
overflow: hidden;
transition: max-height 0.4s ease;
padding: 0 20px;
color: #666;
background: #fafafa;
}

.faq-item.active .faq-answer {
max-height: 200px;
padding: 20px;
}

.faq-item.active i {
transform: rotate(180deg);
color: var(--skyblue);
}

/* --- Social Media --- */
.social-media {
margin-top: 30px;
text-align: center;
}

.social-icons {
display: flex;
justify-content: center;
gap: 15px;
margin-top: 15px;
}

.social-icons a {
width: 45px;
height: 45px;
background: var(--dark-blue);
color: white;
display: flex;
align-items: center;
justify-content: center;
border-radius: 50%;
text-decoration: none;
transition: 0.3s;
}

.social-icons a:hover {
background: var(--skyblue);
transform: rotate(360deg);
}

/* --- Animations --- */
@keyframes fadeInDown {
from { opacity: 0; transform: translateY(-30px); }
to { opacity: 1; transform: translateY(0); }
}

/* --- Responsive --- */
@media (max-width: 992px) {
.main-contact { grid-template-columns: 1fr; }
.banner { height: 350px; }
}

@media (max-width: 600px) {
.input-group { grid-template-columns: 1fr; }
textarea.form-control { grid-column: span 1; }
.banner-content h1 { font-size: 2rem; }

.hm-hero-text h1{
    font-size: 30px;
    line-height: 40px;
}
}
/*about us */
/* --- Hero Banner Section --- */
.about-banner {
height: 500px;
background: linear-gradient(rgba(0,0,0,0.6), rgba(0,0,0,0.6)),
url('../img/aboutusbanner.jpg');
background-size: cover;
background-position: center;
display: flex;
align-items: center;
justify-content: center;
text-align: center;
color: var(--white);
}

.banner-content h1 {
font-size: 3.5rem;
font-weight: 700;
margin-bottom: 15px;
text-transform: uppercase;
letter-spacing: 2px;
}

.banner-content p {
font-size: 1.2rem;
max-width: 600px;
margin: 0 auto;
color: whitesmoke;
font-weight: 500;
}

/* --- Who We Are Section --- */
.who-we-are {
padding: 100px 20px;
max-width: 100%;
overflow: hidden;
margin: 0 auto;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 50px;
align-items: center;
}

.company-img-wrapper {
position: relative;
}

.company-img {
width: 100%;
border-radius: 20px;
box-shadow: var(--shadow);
}

.experience-badge {
position: absolute;
bottom: -20px;
right: -20px;
background: var(--gradient);
color: white;
padding: 20px 30px;
border-radius: 15px;
text-align: center;
box-shadow: 0 10px 20px rgba(0,0,0,0.2);
}

.experience-badge span {
font-size: 2rem;
font-weight: 700;
display: block;
}

.who-text h4 {
color: var(--dark-blue);
letter-spacing: 3px;
margin-bottom: 10px;
font-weight: 600;
}

.who-text h2 {
font-size: 2.5rem;
margin-bottom: 20px;
line-height: 1.2;
}

.who-text p {
margin-bottom: 20px;
color: #666;
font-size: 1.05rem;
}

.contact-btn {
display: inline-block;
background: var(--gradient);
color: white;
padding: 15px 35px;
border-radius: 30px;
text-decoration: none;
font-weight: 600;
transition: 0.3s;
box-shadow: 0 5px 15px rgba(0, 204, 255, 0.3);
}

.contact-btn:hover {
transform: translateY(-3px);
box-shadow: 0 8px 20px rgba(0, 68, 255, 0.4);
}

/* --- Core Values Section --- */
.core-values {
background-color: var(--light-bg);
padding: 100px 20px;
text-align: center;
}

.section-title {
margin-bottom: 60px;
}

.section-title h2 {
font-size: 2.5rem;
color: var(--dark-blue);
}

.section-title p {
color: #666;
font-style: italic;
}

.values-grid {
max-width: 1200px;
margin: 0 auto;
display: grid;
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
gap: 30px;
}

.value-card {
background: var(--white);
padding: 40px 30px;
border-radius: 20px;
transition: 0.4s;
border-bottom: 5px solid transparent;
}

.value-card:hover {
transform: translateY(-10px);
border-bottom-color: var(--skyblue);
box-shadow: var(--shadow);
}

.value-card i {
font-size: 3rem;
background: var(--gradient);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
margin-bottom: 20px;
}

.value-card h3 {
margin-bottom: 15px;
color: var(--dark-blue);
}

/* --- Why Choose Us Section --- */
.why-choose {
padding: 100px 20px;
max-width: 1200px;
margin: 0 auto;
}

.why-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
gap: 25px;
}

.why-item {
display: flex;
align-items: flex-start;
gap: 20px;
padding: 25px;
border: 1px solid #eee;
border-radius: 15px;
transition: 0.3s;
}

.why-item:hover {
background: var(--white);
box-shadow: var(--shadow);
border-color: var(--skyblue);
}

.why-icon {
width: 60px;
height: 60px;
background: var(--light-bg);
border-radius: 12px;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
font-size: 1.5rem;
color: var(--dark-blue);
}

.why-info h3 {
font-size: 1.2rem;
margin-bottom: 5px;
color: var(--text-color);
}

.why-info p {
font-size: 0.9rem;
color: #777;
}

/* --- Responsive Design --- */
@media (max-width: 992px) {
.who-we-are { grid-template-columns: 1fr; text-align: center; }
.experience-badge { right: 50%; transform: translateX(50%); }
.banner-content h1 { font-size: 2.5rem; }
}

@media (max-width: 600px) {
.about-banner { height: 400px; }
.banner-content h1 { font-size: 2rem; }
.who-text h2 { font-size: 26px; }
}

/*products*/
/* ===== BANNER ===== */
/* --- Hero Banner --- */
.product-hero {
height: 80vh;
background: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)),
url('../img/collectionbanner.jpg1.jpg');
background-size: cover;
background-position: center;
display: flex;
align-items: center;
justify-content: center;
text-align: center;
color: var(--white);
padding: 20px;
}

.hero-content h1 {
font-size: 48px;
line-height: 56px;
font-weight: 700;
margin: 40px 0 20px;
}

.hero-content p {
font-size: 1.2rem;
max-width: 800px;
margin: 0 auto 30px;
color: #e0e0e0;
}

.btn-primary {
background: var(--gradient);
color: white;
padding: 15px 40px;
border-radius: 50px;
text-decoration: none;
font-weight: 600;
display: inline-block;
transition: 0.3s;
box-shadow: 0 5px 15px rgba(0, 204, 255, 0.4);
}

.btn-primary:hover {
transform: translateY(-5px);
box-shadow: 0 10px 25px rgba(0, 68, 255, 0.5);
}

/* --- Discover Section --- */
.discover-section {
padding: 100px 20px;
max-width: 1200px;
margin: 0 auto;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 60px;
align-items: center;
}

.discover-img {
width: 100%;
height: 500px;
background: url('../img/modernlight.jpg');
background-size: cover;
background-position: center;
border-radius: 30px;
position: relative;
box-shadow: var(--shadow);
}

.discover-img::after {
content: "Modern Lamp Collections";
position: absolute;
top: 20px;
left: 20px;
background: var(--white);
padding: 10px 20px;
border-radius: 10px;
font-weight: 600;
color: var(--dark-blue);
}

.discover-content h2 {
font-size: 2.5rem;
margin-bottom: 25px;
color: var(--dark-blue);
}

.discover-content p {
color: #666;
margin-bottom: 30px;
line-height: 1.8;
}

.feature-list {
list-style: none;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 15px;
margin-bottom: 35px;
}

.feature-list li {
display: flex;
align-items: center;
gap: 10px;
font-weight: 500;
}

.feature-list i {
color: var(--skyblue);
}

/* --- Shop By Collection Grid --- */
.collection-section {
background-color: var(--light-bg);
padding: 100px 20px;
}

.section-header {
text-align: center;
margin-bottom: 60px;
}

.section-header h2 {
font-size: 2.5rem;
color: var(--dark-blue);
}

.collection-grid {
max-width: 1200px;
margin: 0 auto;
display: grid;
grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
gap: 30px;
}

.collection-card {
background: var(--white);
border-radius: 20px;
overflow: hidden;
transition: 0.4s;
position: relative;
box-shadow: 0 5px 15px rgba(0,0,0,0.05);
}

.collection-card:hover {
transform: translateY(-10px);
box-shadow: var(--shadow);
}

.card-img {
height: 250px;
background-size: cover;
background-position: center;
}

.card-body {
padding: 30px;
}

.card-body h4 {
color: var(--skyblue);
text-transform: uppercase;
font-size: 0.9rem;
margin-bottom: 5px;
}

.card-body h3 {
margin-bottom: 15px;
color: var(--dark-blue);
}

.view-all {
color: var(--dark-blue);
text-decoration: none;
font-weight: 700;
display: inline-flex;
align-items: center;
gap: 10px;
transition: 0.3s;
border: solid 2px;
border-radius: 50px;
padding: 4px 12px;
margin: 18px 0 6px;
}

.view-all:hover {
gap: 20px;
color: var(--skyblue);
}

/* --- Featured Product --- */
.featured-product {
padding: 100px 20px;
text-align: center;
}

.product-card {
max-width: 400px;
margin: 40px auto;
background: var(--white);
border-radius: 20px;
padding: 20px;
box-shadow: var(--shadow);
position: relative;
}

.product-badge {
position: absolute;
top: 20px;
right: 20px;
background: var(--dark-blue);
color: white;
padding: 5px 15px;
border-radius: 5px;
font-size: 0.8rem;
}

.product-img {
width: 100%;
height: 300px;
background:
url('https://images.unsplash.com/photo-1507473885765-e6ed057f782c?ixlib=rb-4.0.3&auto=format&fit=crop&w=600&q=80');
background-size: cover;
border-radius: 15px;
margin-bottom: 20px;
}

/* --- Responsive --- */
@media (max-width: 992px) {
.discover-section { grid-template-columns: 1fr; }
.discover-img { height: 350px; }
}

@media (max-width: 600px) {
.feature-list { grid-template-columns: 1fr; }
.collection-grid { grid-template-columns: 1fr; }
}

/*lightings*/
/* --- Global Variables --- */
:root {
--dl-skyblue: #00CCFF;
--dl-dark-blue: #0044FF;
--dl-white: #ffffff;
--dl-text: #333;
--dl-grad: linear-gradient(135deg, #00CCFF, #0044FF);
--dl-light-bg: #f4faff;
--dl-shadow: 0 10px 30px rgba(0, 68, 255, 0.1);
}

.dl-main-wrapper {
font-family: 'Poppins', sans-serif;
color: var(--dl-text);
overflow-x: hidden;
}

/* --- 1. HERO BANNER --- */
.dl-hero {
height: 70vh;
background: linear-gradient(rgba(0,0,0,0.6), rgba(0,0,0,0.6)),
url('../img/Roombanner.jpg');
background-size: cover;
background-position: center;
display: flex;
align-items: center;
justify-content: center;
text-align: center;
color: white;
animation: fadeIn 1.5s ease-in-out;
}

.dl-hero-content h1 {
font-size: clamp(2.5rem, 6vw, 4rem);
margin-bottom: 15px;
font-weight: 800;
}

.dl-hero-content p {
font-size: 1.2rem;
margin-bottom: 30px;
opacity: 0.9;
}

.dl-hero-content button {
background: var(--dl-grad);
border: none;
padding: 15px 40px;
color: white;
font-weight: 700;
border-radius: 50px;
cursor: pointer;
transition: 0.3s;
box-shadow: 0 5px 15px rgba(0, 204, 255, 0.4);
}

.dl-hero-content button:hover {
transform: translateY(-5px);
box-shadow: 0 10px 25px rgba(0, 68, 255, 0.5);
}

/* --- 2. SERVICE INFO STRIP --- */
.dl-service-strip {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
gap: 20px;
background: white;
padding: 40px 5%;
border-bottom: 1px solid #eee;
}

.dl-service-item {
display: flex;
align-items: center;
gap: 15px;
padding: 15px;
transition: 0.3s;
}

.dl-serv-icon {
font-size: 2rem;
color: var(--dl-dark-blue);
}

.dl-serv-text strong {
display: block;
font-size: 1.1rem;
}

.dl-serv-text span {
color: #777;
font-size: 0.9rem;
}

/* --- 3. PRODUCT GRID --- */
.dl-product-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 25px;
padding: 60px 5%;
background-color: var(--dl-light-bg);
}

.dl-card {
background: white;
border-radius: 20px;
padding: 15px;
position: relative;
transition: 0.4s;
border: 1px solid transparent;
display: flex;
flex-direction: column;
}

.dl-card:hover {
transform: translateY(-10px);
box-shadow: var(--dl-shadow);
border-color: var(--dl-skyblue);
}

/* Sabhi Images ki size same rakhne ke liye */
.dl-card-img {
width: 100%;
aspect-ratio: 1 / 1; /* Square shape fixed */
border-radius: 15px;
overflow: hidden;
background: #f9f9f9;
margin-bottom: 15px;
}

.dl-card-img img {
width: 100%;
height: 100%;
object-fit: contain; /* Image content maintain rahega bina stretch huye */
transition: 0.5s;
padding: 10px;
}

.dl-card:hover .dl-card-img img {
transform: scale(1.1);
}

.dl-badge {
position: absolute;
top: 15px;
left: 15px;
background: var(--dl-dark-blue);
color: white;
padding: 4px 12px;
border-radius: 5px;
font-size: 0.75rem;
z-index: 2;
}

.dl-badge.new { background: #22c55e; }

.dl-cat-name { color: var(--dl-skyblue); font-size: 0.8rem; font-weight: 700; text-transform: uppercase; }
.dl-card-info h3 { font-size: 1.1rem; margin: 10px 0; height: 2.6em; overflow: hidden; }

.dl-rating { color: #f1c40f; font-size: 0.85rem; margin-bottom: 10px; }

.dl-price-block { margin-bottom: 20px; }
.dl-current { font-size: 1.3rem; font-weight: 700; color: #000; }
.dl-old { text-decoration: line-through; color: #999; margin-left: 8px; font-size: 0.9rem; }
.dl-off { color: #e74c3c; font-size: 0.85rem; font-weight: 600; margin-left: 5px; }

.dl-btn-cart {
width: 100%;
background: transparent;
border: 2px solid var(--dl-dark-blue);
color: var(--dl-dark-blue);
padding: 12px;
border-radius: 10px;
font-weight: 700;
cursor: pointer;
transition: 0.3s;
}

.dl-btn-cart:hover {
background: var(--dl-grad);
color: white;
border-color: transparent;
}

/* --- 4. GALLERY SECTION --- */
.dl-gallery {
padding: 80px 5%;
text-align: center;
background: white;
}

.dl-gallery h2 { font-size: 2.5rem; margin-bottom: 10px; color: var(--dl-dark-blue); }

.dl-gallery-row {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 15px;
margin-top: 40px;
}

.dl-gallery-row img {
width: 100%;
height: 300px; /* Gallery image height fixed */
object-fit: cover;
border-radius: 15px;
transition: 0.4s;
}

.dl-gallery-row img:hover {
transform: scale(1.05);
}

/* --- ANIMATIONS --- */
@keyframes fadeIn {
from { opacity: 0; transform: translateY(20px); }
to { opacity: 1; transform: translateY(0); }
}

/* --- RESPONSIVE --- */
@media (max-width: 1100px) {
.dl-product-grid { grid-template-columns: repeat(3, 1fr); }
.dl-gallery-row { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 768px) {
.dl-product-grid { grid-template-columns: repeat(2, 1fr); }
.dl-service-strip { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 480px) {
.dl-product-grid, .dl-gallery-row, .dl-service-strip { grid-template-columns: 1fr; }
.dl-hero-content h1 { font-size: 2rem; }
}

/*details page*/

.product-container {
max-width: 1200px;
margin: auto;
display: flex;
gap: 40px;
background: #fff;
padding: 40px;
border-radius: 16px;
}

.product-image img {
width: 100%;
max-width: 450px;
}

.product-info h1 {
font-size: 26px;
}

.rating {
color: #f5a623;
margin: 10px 0;
}

.price-box {
display: flex;
gap: 15px;
align-items: center;
}

.sale-price {
font-size: 28px;
color: #e53935;
font-weight: bold;
}

.mrp {
text-decoration: line-through;
color: #888;
}

.discount {
color: green;
font-weight: bold;
}

.variant button {
padding: 10px 18px;
border-radius: 8px;
border: 2px solid #0044ff;
background: #0044ff;
color: #fff;
}

.whatsapp-btn {
background: #25D366;
color: #fff;
border: none;
padding: 15px 25px;
font-size: 18px;
border-radius: 10px;
cursor: pointer;
}

.whatsapp-btn:hover {
background: #1ebe5d;
}

.highlights ul {
padding-left: 20px;
}

.specs, .faq {
max-width: 1200px;
margin: 40px auto;
background: #fff;
padding: 30px;
border-radius: 16px;
}

table {
width: 100%;
border-collapse: collapse;
}

table td {
padding: 12px;
border-bottom: 1px solid #ddd;
}

.faq-item {
margin-bottom: 15px;
}

.faq-question {
font-weight: bold;
cursor: pointer;
}

.faq-answer {
display: none;
margin-top: 8px;
color: #555;
}

/* Animation */
.fade-up {
opacity: 0;
transform: translateY(30px);
transition: 0.6s ease;
}

.fade-up.show {
opacity: 1;
transform: translateY(0);
}

/* Responsive */
@media (max-width: 768px) {
.product-container {
flex-direction: column;
}

.hm-hero-text p {
    font-size: 16px;
}

}

/* ================= MOBILE SIDEBAR MENU ================= */
@media (max-width: 768px){

  .menu-toggle{
    display:block;
    cursor:pointer;
  }

  .nav-links{
    position: fixed;
    top:0;
    left:-280px;
    width:260px;
    height:100vh;
    background:#fff;
    flex-direction: column;
    align-items: flex-start;
    padding-top:80px;
    padding-left:20px;
    transition:0.4s ease;
    box-shadow: 5px 0 20px rgba(0,0,0,0.1);
    z-index:9999;
  }

  .nav-links.active{
    left:0;
  }

  .nav-links li{
    width:100%;
  }

  .nav-links li a{
    display:block;
    width:100%;
    padding:12px 0;
  }

  /* Desktop hover disable */
  .menu > li:hover .dropmenu{
    display:none;
  }

  /* Mobile dropdown */
  .dropmenu{
    position: static;
    display:none;
    width:100%;
    box-shadow:none;
    background:#f5f5f5;
    padding-left:15px;
  }

  .menu li.active .dropmenu{
    display:block;
  }

}
