 .gallery-hero {
	position: relative;
	height: 65vh;
	min-height: 520px;
	background-image: url('/assets/images/bg-gallery.jpeg'); /* fallback */
	background-size: cover;
	background-position: center 30%;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	isolation: isolate;
	overflow: hidden;
}

.gallery-hero::before {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(135deg, rgba(0,0,0,0.65) 0%, rgba(0,0,0,0.45) 100%);
	z-index: 1;
}

.hero1-content {
	position: relative;
	z-index: 2;
	max-width: 800px;
	padding: 0 1.5rem;
	animation: fadeUp 1.2s cubic-bezier(0.2, 0.9, 0.4, 1.1) forwards;
}

.hero1-content h1 {
	font-size: clamp(2.5rem, 8vw, 4.5rem);
	font-weight: 700;
	color: white;
	letter-spacing: -0.02em;
	text-shadow: 0 10px 25px rgba(0,0,0,0.2);
	margin-bottom: 1rem;
}

.hero1-content p {
	font-size: clamp(1.1rem, 4vw, 1.5rem);
	color: rgba(255,255,255,0.92);
	font-weight: 400;
	backdrop-filter: blur(2px);
}

.booking-modal{
    display:none;
    position:fixed;
    inset:0;
    background:rgba(0,0,0,0.7);
    z-index:9999;
    justify-content:center;
    align-items:center;
}

.booking-content{
    background:var(--bg-primary);
    width:90%;
    max-width:450px;
    padding:30px;
    border-radius:16px;
    position:relative;
}

.booking-content input{
    width:100%;
    padding:14px;
    margin-bottom:15px;
    border:1px solid #ddd;
    border-radius:8px;
}

.booking-content button{
    width:100%;
    padding:14px;
    border:none;
    border-radius:8px;
    cursor:pointer;
}

.close-booking{
    position:absolute;
    right:15px;
    top:10px;
	color: var(--accent-primary);
    font-size:1.5rem;
    cursor:pointer;
}