.reservations-hero {display:grid;gap:var(--space-10);align-items:center;}
@media (min-width: 900px){.reservations-hero{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);}}
.reservations-hero-title{font-size:var(--font-size-4xl);margin-bottom:var(--space-3);}
.reservations-hero-lead{font-size:var(--font-size-md);max-width:34rem;}
.reservations-hero-ctas{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-5);margin-bottom:var(--space-4);}
.reservations-hero-meta{margin-top:var(--space-4);border-radius:var(--radius-lg);background:rgba(5,6,8,0.8);border:1px solid rgba(201,210,227,0.16);padding:var(--space-4);box-shadow:var(--shadow-soft);}
.reservations-hero-media{position:relative;}
.reservations-hero-image-wrapper{border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-soft-lg);background:radial-gradient(circle at top,rgba(32,227,162,0.18),rgba(5,6,8,1));}
.reservations-hero-image{width:100%;height:100%;object-fit:cover;transform:scale(1.02);transition:transform var(--transition-slow);}
.reservations-hero-image-wrapper:hover .reservations-hero-image{transform:scale(1.05);} 

.reservations-main-grid{align-items:flex-start;}
.reservations-form-column{min-width:0;}
.reservations-form{position:relative;}
.reservations-form-row{margin-bottom:var(--space-4);}
.reservations-field{min-width:0;}
.reservations-label{display:block;font-size:var(--font-size-sm);margin-bottom:0.4rem;color:var(--color-text);}
.reservations-helper-text{font-size:var(--font-size-xs);margin-bottom:var(--space-3);} 
.reservations-fieldset{margin-bottom:var(--space-5);border-radius:var(--radius-lg);background:rgba(5,6,8,0.7);border:1px solid rgba(201,210,227,0.16);padding:var(--space-4);}
.reservations-fieldset legend{padding:0 0.25rem;}
.reservations-consent{display:flex;align-items:flex-start;gap:0.55rem;font-size:var(--font-size-xs);line-height:var(--line-height-loose);color:var(--color-text-muted);}
.reservations-consent input[type="checkbox"]{margin-top:0.2rem;}
.reservations-form-actions{margin-top:var(--space-4);}
.reservations-submit{width:100%;max-width:260px;}
.reservations-disclaimer{font-size:var(--font-size-xs);margin-top:var(--space-3);} 

.reservations-sidebar{display:flex;flex-direction:column;gap:var(--space-6);}
@media (max-width: 900px){.reservations-main-grid{grid-template-columns:minmax(0,1fr);} .reservations-sidebar{order:-1;}}
.reservations-sidebar-card{padding:var(--space-5);}
.reservations-sidebar-image-wrapper{border-radius:var(--radius-lg);overflow:hidden;background:rgba(5,6,8,0.9);}
.reservations-sidebar-image{width:100%;height:100%;object-fit:cover;}
.reservations-sidebar-btn{width:100%;justify-content:center;margin-top:var(--space-2);} 
.reservations-sidebar-info{margin-top:var(--space-3);}
.reservations-sidebar-info .info-row-value small{display:block;font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:0.2rem;} 

.reservations-bottom{display:flex;justify-content:center;}
.reservations-bottom-text{max-width:48rem;text-align:center;}
.reservations-bottom-text h2{margin-bottom:var(--space-3);}
.reservations-bottom-ctas{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-3);margin-top:var(--space-4);} 

@media (max-width: 600px){.reservations-hero-title{font-size:var(--font-size-3xl);} .reservations-hero-ctas{flex-direction:column;align-items:flex-start;} .reservations-submit{width:100%;}}
