*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:"Poppins",sans-serif;
}

html{
scroll-behavior:smooth;
}

body{
background:#FFF8F3;
color:#222;
line-height:1.6;
}

section{
padding:80px 10%;
}

img{
max-width:100%;
display:block;
}

a{
text-decoration:none;
color:inherit;
}

ul{
list-style:none;
}

button{
cursor:pointer;
border:none;
}

header{
position:fixed;
top:0;
width:100%;
background:#fff;
z-index:1000;
box-shadow:0 2px 10px rgba(0,0,0,.1);
}

.navbar{
display:flex;
justify-content:space-between;
align-items:center;
padding:20px 10%;
}

.logo{
font-size:30px;
color:#C58F5C;
font-weight:700;
}

.nav-links{
display:flex;
gap:30px;
}

.nav-links a{
font-weight:500;
transition:.3s;
}

.nav-links a:hover{
color:#C58F5C;
}

.menu-toggle{
display:none;
font-size:30px;
cursor:pointer;
}

@media(max-width:768px){

.nav-links{

position:absolute;

top:80px;

left:-100%;

background:white;

width:100%;

flex-direction:column;

text-align:center;

padding:30px 0;

transition:.4s;

}

.nav-links.active{

left:0;

}

.menu-toggle{

display:block;

}

}

.hero{

height:100vh;

display:flex;

align-items:center;

justify-content:center;

text-align:center;

padding:0 10%;

background:

linear-gradient(

rgba(0,0,0,.55),

rgba(0,0,0,.55)

),

url("../images/hero.webp");

background-size:cover;

background-position:center;

color:white;

}

.hero-content{

max-width:700px;

}

.hero h1{

font-size:64px;

line-height:1.2;

margin-bottom:20px;

}

.hero p{

font-size:20px;

margin-bottom:40px;

line-height:1.8;

}

.hero-buttons{

display:flex;

justify-content:center;

gap:20px;

flex-wrap:wrap;

}

.btn{

background:#C58F5C;

padding:16px 35px;

border-radius:50px;

color:white;

font-weight:600;

transition:.3s;

}

.btn:hover{

background:#a87345;

transform:translateY(-3px);

}

.btn-outline{

background:transparent;

border:2px solid white;

}

.btn-outline:hover{

background:white;

color:#222;

}

.hero-content{

animation:fadeUp 1.2s ease;

}

@keyframes fadeUp{

from{

opacity:0;

transform:translateY(40px);

}

to{

opacity:1;

transform:translateY(0);

}

}

@media(max-width:768px){

.hero h1{

font-size:42px;

}

.hero p{

font-size:17px;

}

.hero-buttons{

flex-direction:column;

align-items:center;

}

.btn{

width:220px;

text-align:center;

}

.about-container{

grid-template-columns:1fr;

}

.about-content{

text-align:center;

}

.stats{

grid-template-columns:1fr;

}


}

.scroll-indicator{

position:absolute;

bottom:30px;

left:50%;

transform:translateX(-50%);

font-size:30px;

animation:bounce 2s infinite;

}

@keyframes bounce{

0%,100%{

transform:translateX(-50%) translateY(0);

}

50%{

transform:translateX(-50%) translateY(12px);

}

}

.btn{

box-shadow:0 10px 25px rgba(197,143,92,.3);

}

.btn:hover{

box-shadow:0 15px 35px rgba(197,143,92,.5);

}

.about{

padding:100px 10%;

background:#fff;

}

.about-container{

display:grid;

grid-template-columns:1fr 1fr;

gap:60px;

align-items:center;

}

.about-image img{

width:100%;

border-radius:20px;

box-shadow:0 20px 40px rgba(0,0,0,.15);

transition:.4s;

}

.about-image img:hover{

transform:scale(1.03);

}

.about-content h2{

font-size:42px;

color:#C58F5C;

margin-bottom:25px;

}

.about-content p{

font-size:18px;

line-height:1.8;

margin-bottom:30px;

color:#555;

}

.features{

display:grid;

gap:20px;

}

.feature{

background:#FFF8F3;

padding:20px;

border-left:5px solid #C58F5C;

border-radius:10px;

transition:.3s;

}

.feature:hover{

transform:translateX(8px);

box-shadow:0 10px 20px rgba(0,0,0,.1);

}

.feature h3{

margin-bottom:10px;

color:#222;

}

.stats{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

margin-top:80px;

}

.stat{

background:#C58F5C;

color:white;

text-align:center;

padding:40px;

border-radius:15px;

}

.stat h2{

font-size:42px;

margin-bottom:10px;

}

.stat p{

font-size:18px;

}

.services{

padding:100px 10%;

background:#FFF8F3;

}

.section-title{

text-align:center;

font-size:42px;

color:#C58F5C;

margin-bottom:15px;

}

.section-subtitle{

text-align:center;

font-size:18px;

color:#666;

margin-bottom:60px;

}

.services-grid{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(280px,1fr));

gap:35px;

}

.service-card{

background:white;

border-radius:18px;

overflow:hidden;

box-shadow:0 10px 30px rgba(0,0,0,.08);

transition:.4s;

}

.service-card:hover{

transform:translateY(-12px);

box-shadow:0 20px 40px rgba(0,0,0,.15);

}

.service-card img{

width:100%;

height:250px;

object-fit:cover;

transition:.4s;

}

.service-card:hover img{

transform:scale(1.05);

}

.service-content{

padding:25px;

}

.service-content h3{

margin-bottom:15px;

font-size:24px;

}

.service-content p{

color:#666;

line-height:1.7;

margin-bottom:20px;

}

.price{

font-size:22px;

font-weight:700;

color:#C58F5C;

margin-bottom:25px;

}

.service-btn{

display:inline-block;

background:#C58F5C;

color:white;

padding:12px 28px;

border-radius:50px;

transition:.3s;

}

.service-btn:hover{

background:#A87345;

}

.badge{

position:absolute;

background:#E63946;

color:white;

padding:8px 15px;

border-radius:0 0 10px 0;

font-size:14px;

font-weight:600;

z-index:10;

}

.service-card{

position:relative;

}

.team{

padding:100px 10%;

background:white;

}

.team-grid{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(280px,1fr));

gap:40px;

margin-top:60px;

}

.team-card{

background:#FFF8F3;

padding:35px;

text-align:center;

border-radius:20px;

transition:.4s;

box-shadow:0 10px 25px rgba(0,0,0,.08);

}

.team-card:hover{

transform:translateY(-12px);

box-shadow:0 20px 40px rgba(0,0,0,.15);

}

.team-image{

width:180px;

height:180px;

margin:auto;

margin-bottom:25px;

overflow:hidden;

border-radius:50%;

border:6px solid #C58F5C;

}

.team-image img{

width:100%;

height:100%;

object-fit:cover;

transition:.4s;

}

.team-card:hover img{

transform:scale(1.08);

}

.team-card h3{

font-size:26px;

margin-bottom:10px;

}

.designation{

color:#C58F5C;

font-weight:600;

margin-bottom:15px;

}

.experience{

margin-bottom:25px;

font-weight:600;

}

.social{

display:flex;

justify-content:center;

gap:20px;

}

.social a{

padding:10px 18px;

background:#C58F5C;

color:white;

border-radius:30px;

transition:.3s;

}

.social a:hover{

background:#A87345;

}

@media(max-width:768px){

.team{

text-align:center;

}

.team-image{

width:150px;

height:150px;

}

}

.gallery{

padding:100px 10%;

background:#FFF8F3;

}

.gallery-filter{

display:flex;

justify-content:center;

gap:15px;

flex-wrap:wrap;

margin-bottom:50px;

}

.filter-btn{

padding:12px 28px;

background:white;

border:none;

border-radius:30px;

cursor:pointer;

transition:.3s;

font-weight:600;

}

.filter-btn.active{

background:#C58F5C;

color:white;

}

.filter-btn:hover{

background:#C58F5C;

color:white;

}

.gallery-grid{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(280px,1fr));

gap:25px;

}

.gallery-item{

overflow:hidden;

border-radius:18px;

cursor:pointer;

position:relative;

}

.gallery-item img{

width:100%;

height:280px;

object-fit:cover;

transition:.4s;

}

.gallery-item:hover img{

transform:scale(1.08);

}

.gallery-item::after{

content:"View";

position:absolute;

left:0;

right:0;

top:0;

bottom:0;

display:flex;

justify-content:center;

align-items:center;

background:rgba(0,0,0,.45);

color:white;

font-size:24px;

opacity:0;

transition:.3s;

}

.gallery-item:hover::after{

opacity:1;

}

.lightbox{

position:fixed;

left:0;

top:0;

width:100%;

height:100vh;

background:rgba(0,0,0,.9);

display:none;

justify-content:center;

align-items:center;

z-index:9999;

}

.lightbox img{

max-width:90%;

max-height:90%;

border-radius:12px;

}

.close-lightbox{

position:absolute;

top:30px;

right:40px;

font-size:40px;

color:white;

cursor:pointer;

}

@media(max-width:768px){

.gallery-item img{

height:220px;

}

.filter-btn{

padding:10px 18px;

}

}

.booking{

padding:100px 10%;

background:white;

}
.booking-form{

display:grid;

grid-template-columns:
repeat(2,1fr);

gap:25px;

margin-top:50px;

}

.input-group{

display:flex;

flex-direction:column;

}

.input-group label{

margin-bottom:8px;

font-weight:600;

}

.input-group input,
.input-group select,
.input-group textarea{

padding:14px;

border:1px solid #ddd;

border-radius:10px;

font-size:16px;

outline:none;

transition:.3s;

}

.input-group input:focus,
.input-group select:focus,
.input-group textarea:focus{

border-color:#C58F5C;

}
.full{

grid-column:1/3;

}

.booking-btn{

grid-column:1/3;

padding:18px;

background:#C58F5C;

color:white;

font-size:18px;

border:none;

border-radius:50px;

cursor:pointer;

transition:.3s;

}

.booking-btn:hover{

background:#A87345;

}

#successMessage{

margin-top:30px;

text-align:center;

font-size:20px;

font-weight:600;

color:green;

}

@media(max-width:768px){

.booking-form{

grid-template-columns:1fr;

}

.full{

grid-column:auto;

}

.booking-btn{

grid-column:auto;

}

}

.testimonials{

padding:100px 10%;

background:#FFF8F3;

text-align:center;

}

.testimonial{

display:none;

max-width:700px;

margin:auto;

background:white;

padding:50px;

border-radius:20px;

box-shadow:0 15px 35px rgba(0,0,0,.1);

animation:fade .5s;

}

.testimonial.active{

display:block;

}

.testimonial img{

width:110px;

height:110px;

border-radius:50%;

object-fit:cover;

margin-bottom:25px;

border:5px solid #C58F5C;

}

.stars{

color:#FFD700;

font-size:24px;

margin-bottom:20px;

}

.testimonial p{

font-size:18px;

line-height:1.8;

margin-bottom:25px;

color:#555;

font-style:italic;

}

.testimonial h3{

font-size:24px;

margin-bottom:8px;

}

.testimonial span{

color:#C58F5C;

font-weight:600;

}

.slider-controls{

display:flex;

justify-content:center;

align-items:center;

gap:25px;

margin-top:40px;

}

.slider-controls button{

width:50px;

height:50px;

border:none;

border-radius:50%;

background:#C58F5C;

color:white;

font-size:20px;

cursor:pointer;

transition:.3s;

}

.slider-controls button:hover{

background:#A87345;

}

.dots{

display:flex;

gap:12px;

}

.dot{

width:12px;

height:12px;

background:#ccc;

border-radius:50%;

cursor:pointer;

}

.dot.active{

background:#C58F5C;

}

@keyframes fade{

from{

opacity:0;

transform:translateY(20px);

}

to{

opacity:1;

transform:translateY(0);

}

}

@media(max-width:768px){

.testimonial{

padding:30px;

}

.testimonial p{

font-size:16px;

}

.slider-controls{

gap:15px;

}

}

.pricing{

padding:100px 10%;

background:white;

}

.pricing-grid{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(300px,1fr));

gap:35px;

margin-top:50px;

}

.pricing-card{

background:#FFF8F3;

padding:40px;

border-radius:20px;

text-align:center;

box-shadow:0 10px 25px rgba(0,0,0,.08);

position:relative;

transition:.4s;

}

.pricing-card:hover{

transform:translateY(-12px);

box-shadow:0 20px 40px rgba(0,0,0,.15);

}

.price{

font-size:48px;

color:#C58F5C;

margin:25px 0;

}

.pricing-card ul{

margin:30px 0;

text-align:left;

}

.pricing-card li{

margin-bottom:15px;

font-size:17px;

}

.price-btn{

display:inline-block;

padding:15px 35px;

background:#C58F5C;

color:white;

border-radius:40px;

transition:.3s;

}

.price-btn:hover{

background:#A87345;

}

.popular{

border:3px solid #C58F5C;

transform:scale(1.05);

}

.popular-badge{

position:absolute;

top:-15px;

left:50%;

transform:translateX(-50%);

background:#C58F5C;

color:white;

padding:8px 20px;

border-radius:20px;

font-size:14px;

font-weight:bold;

}

.price-toggle{

display:flex;

justify-content:center;

align-items:center;

gap:15px;

margin:40px 0;

}

.switch{

position:relative;

display:inline-block;

width:60px;

height:30px;

}

.switch input{

display:none;

}

.slider{

position:absolute;

cursor:pointer;

left:0;

right:0;

top:0;

bottom:0;

background:#ccc;

border-radius:30px;

transition:.3s;

}

.slider::before{

content:"";

position:absolute;

width:24px;

height:24px;

left:3px;

top:3px;

background:white;

border-radius:50%;

transition:.3s;

}

input:checked + .slider{

background:#C58F5C;

}

input:checked + .slider::before{

transform:translateX(30px);

}

@media(max-width:768px){

.popular{

transform:none;

}

.price{

font-size:40px;

}

}

.contact{

padding:100px 10%;

background:#FFF8F3;

}

.contact-grid{

display:grid;

grid-template-columns:1fr 1fr;

gap:50px;

margin-top:50px;

}

.info-card{

background:white;

padding:25px;

border-radius:15px;

margin-bottom:20px;

box-shadow:0 10px 25px rgba(0,0,0,.08);

}

.info-card h3{

margin-bottom:12px;

color:#C58F5C;

}

.contact-form input,
.contact-form textarea{

width:100%;

padding:15px;

margin-bottom:20px;

border:1px solid #ddd;

border-radius:10px;

font-size:16px;

}

.contact-form button{

width:100%;

padding:16px;

background:#C58F5C;

color:white;

border:none;

border-radius:50px;

font-size:18px;

cursor:pointer;

transition:.3s;

}

.contact-form button:hover{

background:#A87345;

}
.footer{

background:#222;

color:white;

padding:70px 10% 20px;

}

.footer-grid{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(220px,1fr));

gap:40px;

}

.footer a{

color:white;

line-height:2;

transition:.3s;

}

.footer a:hover{

color:#C58F5C;

}

.copyright{

margin-top:40px;

padding-top:20px;

text-align:center;

border-top:1px solid rgba(255,255,255,.2);

}