.s-comp25{padding:50px 0 0 0}.s-comp25{position:relative}.s-comp19{padding:75px 0 0 0}.s-comp19{position:relative}.booking-wrapper{width:100%;padding:0 40px 0}.step{display:none}.step.active{display:block;animation:fadeIn 0.3s ease}@keyframes fadeIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.step-label{font-family:'Lato',sans-serif;font-size:13px;letter-spacing:4px;color:#BCA17F;font-weight:500;text-transform:uppercase;text-align:center;margin-bottom:10px}.step-title{font-family:"BonVivantSerif",sans-serif,sans-serif;font-size:42px;font-weight:400;text-align:center;color:var(--text-dark);margin-bottom:36px;line-height:1.15}.locations-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;margin-bottom:32px}.location-card{background:#FAF8F6;border:1px solid #fff0;border-radius:4px;padding:22px 24px;cursor:pointer;transition:border-color 0.18s,background 0.18s;user-select:none}.location-card:hover{border-color:#BCA17F;background:#F7F3ED}.location-card.selected{border-color:#BCA17F;background:#F7F3ED}.location-name{font-family:'Cormorant Garamond',serif;font-size:20px;font-weight:500;color:var(--text-dark);margin-bottom:10px}.location-address{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-mid);font-weight:300}.icon{width:14px;height:14px;color:var(--gold);flex-shrink:0}.step-footer{display:flex;align-items:center;justify-content:space-between;padding-top:8px;position:sticky;bottom:0;background-color:#fff;padding-bottom:20px;padding-top:20px;width:calc(100% + 78px);margin-left:-39px;padding-left:40px;padding-right:40px}.back-btn{display:flex;align-items:center;gap:8px;background:none;border:none;cursor:pointer;font-family:'Jost',sans-serif;font-size:13px;letter-spacing:.08em;color:var(--text-mid);font-weight:400;padding:4px 0;transition:color 0.18s}.back-btn:hover{color:var(--text-dark)}.back-btn svg{width:16px;height:16px}.next-btn{display:inline-flex;align-items:center;gap:10px;background:#321D0C;;color:#fff;border:none;padding:14px 34px;font-family:'Lato',sans-serif;font-size:13px;font-weight:600;text-transform:uppercase;cursor:pointer;border-radius:50px;transition:background 0.18s,opacity 0.18s}.next-btn:hover:not(:disabled){background:#BCA17F}.next-btn:disabled{opacity:.35;cursor:not-allowed}.next-btn svg{width:14px;height:14px}.contact-card{max-width:640px;margin:0 auto 32px;background:#FAF8F6;border:1px solid #BCA17F;border-radius:4px;padding:36px 40px;text-align:center}.contact-card .location-name{font-size:26px}.contact-card .location-address{justify-content:center}.contact-intro{font-family:'Lato',sans-serif;font-size:15px;font-weight:300;color:var(--text-mid);line-height:1.6;margin:22px 0 26px}.contact-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.booking-wrapper .contact-actions a{text-decoration:none}.booking-wrapper .contact-actions a.next-btn{color:#fff}.booking-wrapper .contact-actions a.outline-btn{color:#321D0C}.booking-wrapper .contact-actions a.outline-btn:hover{color:#fff}.outline-btn{display:inline-flex;align-items:center;gap:10px;background:none;color:#321D0C;border:1px solid #321D0C;padding:13px 30px;font-family:'Lato',sans-serif;font-size:13px;font-weight:600;text-transform:uppercase;border-radius:50px;transition:background 0.18s,color 0.18s}.outline-btn:hover{background:#321D0C;color:#fff}.contact-actions svg{width:14px;height:14px}.contact-hint{font-family:'Lato',sans-serif;font-size:14px;font-weight:400;color:#321D0C;line-height:1.6;background:#fff;border-left:2px solid #BCA17F;padding:12px 16px;margin:-8px auto 26px;max-width:460px;text-align:left}.contact-hint strong{font-weight:700}.booking-wrapper .contact-actions a.mail-btn{text-transform:none;font-weight:500;font-size:14px}.contact-alt{font-family:'Lato',sans-serif;font-size:13px;font-weight:300;color:var(--text-mid);margin-top:24px;line-height:1.7}.contact-alt a{color:#321D0C;text-decoration:underline;text-underline-offset:3px}.contact-alt a:hover{color:#BCA17F}@media (max-width:576px){.booking-wrapper{padding:0 20px}.step-title{font-size:32px}.contact-card{padding:28px 20px}.contact-actions .next-btn,.contact-actions .outline-btn{width:100%;justify-content:center}.step-footer{width:calc(100% + 40px);margin-left:-20px;padding-left:20px;padding-right:20px}}