/* css/book-now.css - CLEAN BOOKING FORM + GREY BACKGROUND */
.book-hero {
    background:#b44124;
    color:#fff;
    padding:180px 5% 120px;
    text-align:center;
    position:relative;
}
.book-hero::before {
    content:''; position:absolute; inset:0;
    background:url('https://images.unsplash.com/photo-1556742111-a301076d9d41?ixlib=rb-4.0.3&auto=format&fit=crop&w=1950&q=90') center/cover;
    opacity:0.25;
}
.book-hero h1 { font-family:'Playfair Display',serif; font-size:4.8rem; }
.book-hero .subtitle { font-size:1.5rem; margin-top:1rem; }

.section-grey-bg { background:#f4f6f9; padding:80px 5%; }

.booking-form-wrapper {
    max-width:900px;
    margin:0 auto;
    background:#fff;
    padding:3rem;
    border-radius:20px;
    box-shadow:0 20px 60px rgba(0,0,0,0.12);
}
.form-grid {
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:1.5rem;
    margin-bottom:2rem;
}
input, select, textarea {
    width:100%;
    padding:1rem 1.5rem;
    border:2px solid #eee;
    border-radius:12px;
    font-size:1.1rem;
    transition:all .3s;
}
input:focus, select:focus, textarea:focus {
    outline:none;
    border-color:var(--red);
    box-shadow:0 0 0 4px rgba(220,53,69,.1);
}
.submit-btn {
    background:var(--red-gradient);
    color:#fff;
    font-size:1.3rem;
    padding:1.3rem 3rem;
    width:100%;
    margin-top:1rem;
}
.btn.large { font-size:1.8rem; padding:1.8rem 4rem; }

@media (max-width:768px) {
    .book-hero h1 { font-size:3.5rem; }
    .form-grid { grid-template-columns:1fr; }
}