*{margin:0;padding:0;box-sizing:border-box;font-family:Poppins}
body{background:#faf6f0;color:#333}

/* HEADER */
header{
   background:#2b0000;
color:#fff;
padding:10px 0 0;
text-align:center;
}

header a{color:#fff;text-decoration:none;margin-left:15px}

/* ===== HEADER NAVIGATION ===== */

.main-header{
  background:#2b0000;
  padding:10px 20px;
  position:sticky;
  top:0;
  z-index:1000;
}

.nav-container{
  max-width:1200px;
  margin:auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
}

.nav-left,
.nav-right{
  display:flex;
  gap:20px;
}

.nav-left a,
.nav-right a{
  color:#fff;
  text-decoration:none;
  font-weight:500;
  transition:.3s;
}

.nav-left a:hover,
.nav-right a:hover{
  color:#ff9800;
}

.nav-logo img{
  width:90px;
}

.menu-toggle{
  display:none;
  font-size:28px;
  color:#fff;
  cursor:pointer;
}

/* ===== MOBILE RESPONSIVE ===== */

@media(max-width:768px){

  .nav-left,
  .nav-right{
    position:absolute;
    top:60px;
    left:0;
    width:100%;
    background:#2b0000;
    flex-direction:column;
    align-items:center;
    display:none;
    padding:15px 0;
  }

  .nav-left.active,
  .nav-right.active{
    display:flex;
  }

  .menu-toggle{
    display:block;
  }
}

/* HERO */
.hero{
background:url('images/taramaa-homebanner.jpg') center/cover;
height:70vh;
display:flex;
align-items:center;
justify-content:center;
color:#fff;
text-align:center;
position:relative
}

.hero::after{
content:'';
position:absolute;
width:100%;height:100%;
background:rgba(133, 88, 88, 0.6)
}

.hero div{position:relative;z-index:2}

.btn{
background:#ff9800;
border:none;
padding:12px 25px;
border-radius:30px;
color:#fff;
font-weight:600;
cursor:pointer
}

/* PACKAGES */
.packages{
padding:60px 20px;
max-width:1200px;
margin:auto
}

.title{
text-align:center;
font-size:30px;
color:#8b0000;
margin-bottom:40px
}

.card-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:25px
}

.card{
background:#fff;
padding:25px;
border-radius:12px;
box-shadow:0 5px 15px rgba(0,0,0,.1);
text-align:center
}

.card h3{color:#8b0000;margin-bottom:10px}

.price{
font-size:22px;
font-weight:700;
margin:10px 0
}

.card ul{
list-style:none;
margin:15px 0;
text-align:left
}

.card ul li{padding:5px 0}

/* MODAL FORM */
.form-modal{
display:none;
position:fixed;
top:100px;left:0;
width:100%;height:100%;
background:rgba(0,0,0,.7);
overflow:auto;
padding:40px 15px;
z-index:999
}
/* CLOSE BUTTON */
.close-btn{
position:absolute;
top:15px;
right:20px;
font-size:28px;
font-weight:700;
color:#333;
cursor:pointer;
}


.form-box{
max-width:900px;
margin:auto;
background:#fff;
padding:30px;
border-radius:12px;
position:relative;
}

.step{display:none}
.step.active{display:block}

/* FORM GRID */
.grid{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:15px
}

.grid input,.grid select{
padding:12px;border:1px solid #ccc;border-radius:8px;width:100%
}

.full{grid-column:1/-1}

/* OFFERINGS */
.offer{
display:flex;
justify-content:space-between;
border-bottom:1px solid #eee;
padding:10px 0;
font-weight:600
}

/* DAKSHINA */
.dak-grid{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:15px;margin-top:15px
}

.dak{
border:2px solid #ccc;
padding:12px;
text-align:center;
border-radius:10px;
cursor:pointer
}

.dak.active{border-color:#8b0000;background:#fff0e6}

.total{
background:#fff8d6;
padding:15px;
margin-top:20px;
text-align:center;
font-weight:700
}

.nav-btns{
display:flex;
justify-content:space-between;
margin-top:25px
}

.footer{
  background:#2b0000;
  color:#fff;
  padding:50px 20px 20px;
}

.footer-container{
  max-width:1200px;
  margin:auto;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
  gap:30px;
}

.footer h3{
  margin-bottom:15px;
  color:#ff9800;
}

.footer p{
  font-size:14px;
  line-height:1.6;
}

.footer ul{
  list-style:none;
  padding:0;
}

.footer ul li{
  margin-bottom:8px;
}

.footer ul li a{
  color:#fff;
  text-decoration:none;
  font-size:14px;
}

.footer ul li a:hover{
  color:#ff9800;
}

.footer-bottom{
  text-align:center;
  margin-top:30px;
  padding-top:15px;
  border-top:1px solid rgba(255,255,255,0.2);
  font-size:13px;
}