/* ================= GLOBAL ================= */
/* MOBILE OVERFLOW FIX */

html, body{
width:100%;
overflow-x:hidden;
}

*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:Arial, Helvetica, sans-serif;
}

.container{
width:90%;
margin:auto;
}

a{
text-decoration:none;
color:inherit;
}

/* ================= TOP BAR ================= */

.topbar{
background:#161616;
color:white;
font-size:14px;
padding:8px 0;
}

.topbar-flex{
display:flex;
justify-content:space-between;
align-items:center;
}

/* ================= GLOBAL ================= */

*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:Arial, Helvetica, sans-serif;
}

.container{
width:90%;
margin:auto;
}

/* ================= NAVBAR ================= */

.navbar{
background:#2a1408;
border-bottom:1px solid #ddd;
position:sticky;
top:0;
z-index:1000;
}

/* LOGO */

.logo img{
height:60px;
width:auto;
object-fit:contain;
}

/* NAVBAR HEIGHT */

.nav-wrapper{
display:flex;
align-items:center;
justify-content:space-between;
padding:18px 0;
}

/* ================= MENU ================= */

.nav-menu{
list-style:none;
display:flex;
gap:35px;
position:absolute;
left:50%;
transform:translateX(-50%);
}

.nav-menu li{
position:relative;
}

.nav-menu a{
text-decoration:none;
color:#ccc;
font-weight:700;
font-size:16px;
letter-spacing:0.3px;
transition:0.3s;
}

.nav-menu a:hover{
color:#e31e24;
}

/* ACTIVE */

.nav-menu li.active a{
color:#e31e24;
border-bottom:2px solid #e31e24;
}

/* ================= DROPDOWN (DESKTOP FIRST) ================= */

.dropdown{
position:relative;
}

/* arrow */

.dropdown-toggle i{
margin-left:6px;
font-size:12px;
transition:0.3s;
}

/* dropdown menu (DESKTOP) */

.dropdown-menu{
position:absolute;
top:100%;
left:0;
background:#fff;
border-radius:8px;
box-shadow:0 10px 30px rgba(0,0,0,0.15);
padding:8px 0;
min-width:210px;

opacity:0;
visibility:hidden;
transform:translateY(10px);
transition:0.3s ease;

z-index:999;
}

/* items */

.dropdown-menu li{
list-style:none;
}

.dropdown-menu a{
display:block;
padding:12px 20px;
color:#333;
font-size:15px;
text-decoration:none;
transition:0.2s;
}

.dropdown-menu a:hover{
background:#24140b;
color:#e31e24;
}

/* DESKTOP HOVER */

@media (min-width:769px){

.dropdown:hover .dropdown-menu{
opacity:1;
visibility:visible;
transform:translateY(0);
}

.dropdown:hover .dropdown-toggle i{
transform:rotate(180deg);
}

}

/* ================= MOBILE MENU ================= */

.mobile-menu{
position:fixed;
top:0;
right:-100%;
width:100%;
height:100vh;
background:#e31e24;
display:flex;
justify-content:center;
align-items:center;
transition:0.4s ease;
z-index:2000;
overflow-y:auto;
}

.mobile-menu.active{
right:0;
}

.mobile-menu ul{
list-style:none;
text-align:center;
padding:0;
width:100%;
}

.mobile-menu li{
margin:20px 0;
}

.mobile-menu a{
color:#fff;
font-size:24px;
text-decoration:none;
font-weight:500;
}

/* ================= MOBILE DROPDOWN ================= */

@media (max-width:768px){

/* disable desktop dropdown behavior */
.nav-menu{
display:none;
}

.hamburger{
display:flex;
}

/* mobile dropdown style */

.mobile-menu .dropdown-menu{
position:static;
background:#ffffff;
border-radius:12px;
box-shadow:none;

max-height:0;
overflow:hidden;

opacity:1;
visibility:visible;
transform:none;

transition:max-height 0.3s ease;
}

/* open */

.mobile-menu .dropdown.active .dropdown-menu{
max-height:500px;
}

/* items */

.mobile-menu .dropdown-menu a{
padding:14px 20px;
border-bottom:1px solid #eee;
color:#333;
}

/* header row */

.dropdown-header{
display:flex;
justify-content:center;
align-items:center;
gap:8px;
}

.dropdown-toggle{
cursor:pointer;
color:white;
}

}

/* ================= RIGHT SIDE ================= */

.nav-right{
display:flex;
align-items:center;
gap:15px;
}

.quote-btn{
background:#e31e24;
color:white;
border:none;
padding:10px 22px;
font-weight:600;
cursor:pointer;
transition:0.3s;
}

.quote-btn:hover{
background:#c51b20;
}

/* ================= FIX HAMBURGER ================= */

.hamburger{
display:none;
flex-direction:column;
gap:5px;
cursor:pointer;
z-index:3000; /* 🔥 important (bring above everything) */
}

.hamburger span{
width:25px;
height:3px;
background:#e31e24; /* 🔥 change to white for visibility */
display:block;
}

/* SHOW ONLY IN MOBILE */

@media(max-width:768px){

.hamburger{
display:flex !important;
position:absolute;
right:20px;
top:20px;
}

}

/* ================= CLOSE BUTTON ================= */

.close-btn{
position:absolute;
top:20px;
right:30px;
font-size:32px;
color:white;
cursor:pointer;
}

/* ================= RESPONSIVE ================= */

@media(max-width:992px){

.quote-btn{
display:none;
}

.logo img{
height:40px;
}

}

@media(max-width:600px){

.logo img{
height:35px;
}

.mobile-menu a{
font-size:22px;
}

}


/* ================= CONTACT HERO ================= */

.contact-hero{
width:100%;
padding:80px 20px;
background:#361d0e;
position:relative;
overflow:hidden;
}

/* container */

.contact-hero-content{

max-width:1200px;
margin:auto;

/* background image */

background-image:
linear-gradient(rgba(0,0,0,0.65),rgba(0,0,0,0.65)),
url("../images/contact2.jpeg");

background-size:cover;
background-position:center;
background-repeat:no-repeat;

/* parallax effect (disable on mobile later if needed) */
background-attachment:fixed;

border-radius:18px;

padding:90px 70px;

color:white;

display:flex;
flex-direction:column;
justify-content:center;

box-shadow:0 15px 50px rgba(0,0,0,0.6);

position:relative;

animation:fadeUp 1s ease;
}



/* ================= HEADING ================= */

.contact-hero-content h1{

font-size:50px;
font-weight:700;
margin-bottom:15px;
letter-spacing:1px;
}



/* underline */

.contact-hero-content h1::after{

content:"";
display:block;
width:70px;
height:4px;
background:#e31e24;
margin-top:10px;
border-radius:2px;
}



/* ================= TEXT ================= */

.contact-hero-content p{

font-size:18px;
max-width:520px;
line-height:1.7;
color:#eaeaea;
margin-top:10px;
}



/* ================= HOVER EFFECT ================= */

.contact-hero-content:hover{

transform:translateY(-4px);
transition:0.4s;
}



/* ================= LIGHT OVERLAY EFFECT ================= */

.contact-hero-content::before{

content:"";
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
border-radius:18px;

background:
linear-gradient(
120deg,
rgba(255,255,255,0.05),
transparent,
rgba(255,255,255,0.05)
);

opacity:0;
transition:0.4s;
}

.contact-hero-content:hover::before{
opacity:1;
}



/* ================= ANIMATION ================= */

@keyframes fadeUp{

from{
opacity:0;
transform:translateY(40px);
}

to{
opacity:1;
transform:translateY(0);
}

}



/* ================= RESPONSIVE ================= */

@media(max-width:992px){

.contact-hero-content{
padding:70px 40px;
}

.contact-hero-content h1{
font-size:40px;
}

}



@media(max-width:768px){

.contact-hero-content{

padding:60px 30px;
text-align:center;

}

.contact-hero-content h1{
font-size:34px;
}

.contact-hero-content p{
font-size:16px;
margin:auto;
}

}



@media(max-width:480px){

.contact-hero{
padding:60px 15px;
}

.contact-hero-content{
padding:50px 20px;
}

.contact-hero-content h1{
font-size:28px;
}

.contact-hero-content p{
font-size:15px;
}

}

/* ================= CONTACT SECTION ================= */

.contact-section{
padding:80px 20px;
background:#1c0f07;
color:white;
}

.contact-container{
max-width:1200px;
margin:auto;
display:grid;
grid-template-columns:1fr 1fr;
gap:40px;
}


/* LEFT INFO */

.contact-info h2{
font-size:36px;
margin-bottom:15px;
color:#e31e24;
}

.contact-info p{
color:#ddd;
margin-bottom:30px;
line-height:1.6;
}


/* CONTACT ITEMS */

.contact-item{
display:flex;
gap:15px;
margin-bottom:25px;
}

.contact-item .icon{
width:45px;
height:45px;
background:#e31e24;
display:flex;
align-items:center;
justify-content:center;
border-radius:10px;
font-size:18px;
}

.contact-item h4{
margin:0;
font-size:18px;
}

.contact-item p{
margin:3px 0;
color:#ccc;
}


/* MAP CARD */

.map-card{
margin-top:30px;
padding:40px;
border:1px solid rgba(255,255,255,0.1);
border-radius:12px;
text-align:center;
background:rgba(255,255,255,0.03);
}

.map-card i{
font-size:40px;
color:#e31e24;
margin-bottom:10px;
}

.map-card a{
display:inline-block;
margin-top:10px;
padding:10px 20px;
background:#e31e24;
color:white;
text-decoration:none;
border-radius:6px;
font-size:14px;
}

.map-card a:hover{
background:#c8181d;
}



/* CONTACT FORM */

.contact-form{
background:#24140b;
padding:40px;
border-radius:12px;
border:1px solid rgba(255,255,255,0.05);
}

.contact-form h3{
margin-bottom:25px;
font-size:24px;
}


.form-row{
display:grid;
grid-template-columns:1fr 1fr;
gap:15px;
margin-bottom:15px;
}

.contact-form input,
.contact-form select,
.contact-form textarea{
width:100%;
padding:12px;
border:none;
border-radius:6px;
background:#1b0e06;
color:white;
font-size:14px;
border:1px solid rgba(255,255,255,0.1);
}

.contact-form textarea{
height:120px;
margin-top:10px;
resize:none;
}


.contact-form button{
margin-top:20px;
width:100%;
padding:14px;
background:#e31e24;
color:white;
border:none;
border-radius:8px;
font-size:16px;
cursor:pointer;
}

.contact-form button:hover{
background:#c8181d;
}



/* RESPONSIVE */

@media(max-width:900px){

.contact-container{
grid-template-columns:1fr;
}

.form-row{
grid-template-columns:1fr;
}

}


/* ================= FOOTER ================= */

.footer{
background:#161616;
color:#ccc;
padding:60px 0 20px;
}

.footer-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:40px;
}

/* LOGO */

.footer-logo{
width:180px;
margin-bottom:15px;
}

/* TEXT */

.footer p{
line-height:1.6;
font-size:14px;
}

/* HEADINGS */

.footer h3{
color:white;
margin-bottom:15px;
}

.footer h4{
margin-top:20px;
color:white;
}

/* LINKS */

.footer-links ul,
.footer-products ul{
list-style:none;
}

.footer-links li,
.footer-products li{
margin-bottom:8px;
}

.footer-links a{
text-decoration:none;
color:#ccc;
transition:0.3s;
}

.footer-links a:hover{
color:#ff3c3c;
}

/* CONTACT ICONS */

.footer-contact i{
color:#ff3c3c;
margin-right:8px;
}

/* SOCIAL */

.social-icons{
margin-top:10px;
}

.social-icons a{
display:inline-block;
width:36px;
height:36px;
background:#222;
border-radius:50%;
text-align:center;
line-height:36px;
margin-right:8px;
color:white;
transition:0.3s;
}

.social-icons a:hover{
background:#ff3c3c;
}

/* COPYRIGHT */

.footer-bottom{
text-align:center;
border-top:1px solid #222;
margin-top:40px;
padding-top:20px;
font-size:14px;
}

/* ================= RESPONSIVE ================= */

@media(max-width:1000px){

.footer-grid{
grid-template-columns:repeat(2,1fr);
}

}

@media(max-width:600px){

.footer-grid{
grid-template-columns:1fr;
text-align:center;
}

.footer-contact p{
justify-content:center;
}

}