*{box-sizing:border-box}
body{
	margin:0;
	color:#222;
	font:16px system-ui,-apple-system,Segoe UI,sans-serif;
	background:#fff;
}
header{
	height:72px;
	border-bottom:1px solid #eee;
	display:flex;
	align-items:center;
	gap:28px;
	padding:0 max(5vw,24px);
	color:#666;
}
.brand{font-weight:800;font-size:24px;color:#e6375a;text-decoration:none}
main{max-width:1180px;margin:auto;padding:34px 24px 70px}
h1{font-size:clamp(30px,4vw,48px);margin:8px 0}
h2{margin-top:36px}
.hero{padding:28px 0 38px}
.hero p,.muted{color:#6a6a6a}
.search{display:flex;gap:10px;max-width:720px;margin-top:24px}
.search input,label input{border:1px solid #ddd;border-radius:10px;padding:14px;font:inherit}
.search input:first-child{flex:1}
.search input:nth-child(2){width:130px}
button{border:0;border-radius:10px;background:#e6375a;color:white;font-weight:700;padding:14px 22px;font:inherit;cursor:pointer}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px}
.card{border:1px solid #eee;border-radius:15px;overflow:hidden;color:inherit;text-decoration:none;box-shadow:0 2px 8px #0000000b}
.card img{display:block;width:100%;height:210px;object-fit:cover}
.card div{padding:15px}
.card p{margin:0}
.card h3{margin:6px 0}
.detail{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(290px,.8fr);gap:45px;margin-top:20px}
.cover{width:100%;max-height:510px;object-fit:cover;border-radius:16px}
.booking{height:max-content;border:1px solid #ddd;border-radius:15px;padding:22px;box-shadow:0 6px 20px #00000014}
.booking h2{margin:0 0 18px}
.booking small{font-size:14px;font-weight:400}
.booking form{display:grid;gap:12px}
.booking label{display:grid;gap:6px;font-size:14px;font-weight:600}
.booking button{margin-top:8px}
.back{color:#444;display:block;margin-bottom:12px}
.flash{background:#e7f8ee;color:#176239;padding:14px;border-radius:10px;margin-bottom:18px}
@media(max-width:700px){
	header span{display:none}
	.search,.detail{display:grid;grid-template-columns:1fr}
	.search input:nth-child(2){width:100%}
	.detail{gap:25px}
}
