
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Lato',sans-serif;line-height:1.6;color:#333;background:#fff}
header{background:#003B64;color:#fff;padding:0.5rem 1rem}
header .topbar{display:flex;justify-content:space-between;align-items:center;font-size:0.9rem}
header nav ul{display:flex;gap:1rem;list-style:none;margin-top:0.5rem;flex-wrap:wrap}
header nav a{color:#fff;text-decoration:none;font-weight:600;font-family:'Montserrat',sans-serif}
.btn-book, .btn-primary{background:#00A3E0;color:#fff;padding:0.5rem 1rem;border-radius:4px;text-decoration:none;font-weight:700}
.hero{position:relative;text-align:center;color:#fff}
.hero img{width:100%;height:60vh;object-fit:cover;opacity:0.8}
.hero h1{font-size:2.5rem;font-family:'Montserrat',sans-serif;position:absolute;top:30%;left:50%;transform:translateX(-50%)}
.hero h2{font-size:1.2rem;max-width:90%;margin:0 auto;position:absolute;top:45%;left:50%;transform:translateX(-50%)}
main{padding:2rem 1rem;max-width:1200px;margin:auto}
section{margin-bottom:3rem}
h2{font-size:1.8rem;font-family:'Montserrat',sans-serif;margin-bottom:1rem;text-align:center}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}
.card{border:1px solid #eee;padding:1rem;border-radius:8px;text-align:center}
.card img{width:100%;height:200px;object-fit:cover;border-radius:8px}
footer{background:#f2f2f2;padding:1rem;text-align:center;font-size:0.85rem}
details{margin-bottom:1rem;border:1px solid #ddd;padding:0.5rem;border-radius:4px}
details summary{font-weight:700;cursor:pointer}
