*{margin:0;padding:0;box-sizing:border-box}
body{font-family:Poppins,sans-serif;background:#f9f6f1;color:#3b1a1a}

/* HERO */
.hero{height:100vh;background-size:cover;background-position:center;position:relative}
.overlay{position:absolute;inset:0;background:rgba(80,0,0,.6)}
.hero-content{position:relative;z-index:2;color:#ffd27d;text-align:center;top:50%;transform:translateY(-50%)}
.hero h1{font-family:Playfair Display;font-size:50px}
.om{font-size:50px}

.btn{padding:12px 20px;border-radius:8px;text-decoration:none;color:#fff;margin:5px;display:inline-block}
.call{background:#8b1e1e}
.wa{background:#22c55e}

.price-tag{background:#fff;color:#8b1e1e;display:inline-block;padding:10px 20px;border-radius:10px;margin-top:20px}

/* SECTIONS */
section{padding:60px 20px;text-align:center}

.features, .room-grid, .gallery-grid, .booking-grid{
display:grid;gap:20px;max-width:1100px;margin:auto;
}

.features, .room-grid, .gallery-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));}

.feature,.room-card,.map-box,.form-box{background:#fff;padding:20px;border-radius:12px}

.room-card img,.gallery-grid img{width:100%;height:200px;object-fit:cover;border-radius:10px}

.book{display:block;background:#22c55e;color:#fff;padding:10px;border-radius:8px;margin-top:10px;text-decoration:none}

.booking-grid{grid-template-columns:1fr 1fr}

form input,form textarea,form button{width:100%;padding:10px;margin-bottom:10px;border-radius:8px;border:1px solid #ccc}
form button{background:#22c55e;color:#fff;border:none;font-weight:bold}

footer{background:#3b1a1a;color:#fff;padding:20px}

@media(max-width:768px){
.hero h1{font-size:36px}
.booking-grid{grid-template-columns:1fr}
}
