.book-page{background:var(--color-page-bg)}.book-main{background:#f6f3ee;padding:70px 0 90px}.book-layout{grid-template-columns:1fr 1.1fr;align-items:start;gap:56px;display:grid}.book-steps{flex-direction:column;gap:22px;margin:28px 0 36px;list-style:none;display:flex}.book-steps li{align-items:flex-start;gap:16px;display:flex}.step-num{background:var(--color-gold);color:#1c1813;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;font-weight:800;display:flex}.book-steps strong{color:var(--color-text);margin-bottom:4px;font-size:15px;display:block}.book-steps p{color:var(--color-text-muted);font-size:13.5px;line-height:1.65}.book-highlights{flex-direction:column;gap:18px;margin-top:8px;display:flex}.book-highlight{align-items:flex-start;gap:14px;display:flex}.bh-icon{background:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex;box-shadow:0 4px 14px -6px #281e0f26}.book-highlight h4{color:var(--color-text);margin-bottom:3px;font-size:14px;font-weight:700}.book-highlight p{color:var(--color-text-muted);font-size:13px;line-height:1.6}.book-form-wrap{position:sticky;top:24px}.book-form-card{background:#fff;border-radius:18px;padding:32px 28px;box-shadow:0 24px 60px -24px #281e0f38}.book-form-heading{font-family:var(--font-serif);color:var(--color-text);margin-bottom:8px;font-size:26px;font-weight:700}.book-form-intro{color:var(--color-text-muted);margin-bottom:24px;font-size:13.5px;line-height:1.65}.booking-form{flex-direction:column;gap:24px;display:flex}.form-section{flex-direction:column;gap:16px;display:flex}.form-section-title{font-family:var(--font-serif);color:var(--color-text);border-bottom:1px solid #ebe5da;padding-bottom:10px;font-size:18px;font-weight:600}.form-row{flex-wrap:wrap;gap:16px;display:flex}.form-row-2{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-field{border:none;flex:1;min-width:140px;margin:0;padding:0}.form-field-full{flex:100%;width:100%}.form-label{letter-spacing:.6px;color:#9a8e79;text-transform:uppercase;margin-bottom:8px;font-size:11px;font-weight:700;display:block}.form-optional{text-transform:none;letter-spacing:0;color:#b5ad9c;font-weight:500}.form-hint{color:var(--color-text-muted);margin-bottom:12px;font-size:12.5px;line-height:1.5}.form-input,.form-textarea{width:100%;font-family:var(--font-sans);color:var(--color-text);background:#f9f7f3;border:1.5px solid #e7e1d6;border-radius:10px;padding:12px 14px;font-size:14px;font-weight:500;transition:border-color .2s}.form-input:focus,.form-textarea:focus{border-color:var(--color-gold);outline:none}.form-textarea{resize:vertical;min-height:80px}.toggle-group{gap:8px;display:flex}.toggle-option{color:var(--color-text-muted);cursor:pointer;background:#f9f7f3;border:1.5px solid #e7e1d6;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:6px;padding:11px 16px;font-size:14px;font-weight:600;transition:all .2s;display:flex}.toggle-option input{opacity:0;pointer-events:none;position:absolute}.toggle-option.active{background:var(--color-dark);border-color:var(--color-dark);color:#fff}.form-submit{background:var(--color-gold);color:#1c1813;width:100%;font-family:var(--font-sans);cursor:pointer;border:none;border-radius:30px;padding:16px 24px;font-size:14px;font-weight:700;transition:opacity .2s}.form-submit:hover:not(:disabled){opacity:.9}.form-submit:disabled{opacity:.5;cursor:not-allowed}.form-alert{border-radius:10px;padding:12px 16px;font-size:13.5px;line-height:1.5}.form-alert-error{color:#991b1b;background:#fef2f2;border:1px solid #fecaca}.form-alert-success{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.availability-calendar{background:#f9f7f3;border:1.5px solid #e7e1d6;border-radius:14px;padding:16px}.cal-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.cal-month-label{font-family:var(--font-serif);color:var(--color-text);font-size:17px;font-weight:600}.cal-nav-btn{cursor:pointer;width:34px;height:34px;color:var(--color-text);background:#fff;border:1.5px solid #e7e1d6;border-radius:50%;justify-content:center;align-items:center;font-size:18px;line-height:1;display:flex}.cal-nav-btn:hover{border-color:var(--color-gold)}.cal-notice{color:#a87f3f;background:#fdf8ef;border-radius:8px;margin-bottom:12px;padding:8px 12px;font-size:12px;line-height:1.5}.cal-weekdays{grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:6px;display:grid}.cal-weekdays span{text-align:center;color:#9a8e79;text-transform:uppercase;padding:4px 0;font-size:11px;font-weight:700}.cal-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.cal-grid.cal-loading{opacity:.5;pointer-events:none}.cal-cell{aspect-ratio:1;border-radius:8px;justify-content:center;align-items:center;font-size:13px;font-weight:600;display:flex}.cal-empty{visibility:hidden}.cal-day{cursor:pointer;border:none;transition:all .15s}.cal-day.cal-available{color:var(--color-text);background:#fff}.cal-day.cal-partial{color:#a87f3f;background:#fdf8ef;border:1.5px dashed #e8c987}.cal-day.cal-unavailable{color:#c4bdb0;cursor:not-allowed;background:#f0ece5}.cal-day.cal-available:hover:not(:disabled){background:var(--color-gold);color:#1c1813}.cal-day.cal-selected{background:var(--color-dark)!important;color:#fff!important}.cal-legend{color:var(--color-text-muted);flex-wrap:wrap;gap:14px;margin-top:14px;font-size:11.5px;display:flex}.legend-dot{vertical-align:middle;border-radius:3px;width:10px;height:10px;margin-right:5px;display:inline-block}.legend-available{background:#fff;border:1.5px solid #e7e1d6}.legend-partial{background:#fdf8ef;border:1.5px dashed #e8c987}.legend-unavailable{background:#f0ece5}.cal-selected-label{color:var(--color-text);margin-top:10px;font-size:13px;font-weight:600}.book-included{background:#fff;padding:80px 0}.included-grid{grid-template-columns:repeat(3,1fr);gap:20px;margin-top:36px;display:grid}.included-card{background:#f6f3ee;border-radius:14px;padding:22px 20px}.included-card h4{font-family:var(--font-serif);color:var(--color-text);margin-bottom:8px;font-size:16px;font-weight:600}.included-card p{color:var(--color-text-muted);font-size:13px;line-height:1.65}.book-faq{background:#f6f3ee;padding:80px 0}.book-faq-grid{grid-template-columns:1fr 1fr;gap:24px;margin-top:32px;display:grid}.book-faq-item h4{color:var(--color-text);margin-bottom:8px;font-size:15px;font-weight:700}.book-faq-item p{color:var(--color-text-muted);font-size:13.5px;line-height:1.65}.book-faq-link{color:var(--color-gold);margin-top:28px;font-size:14px;font-weight:700;text-decoration:none;display:inline-block}.book-faq-link:hover{text-decoration:underline}@media (max-width:960px){.book-layout{grid-template-columns:1fr;gap:40px}.book-form-wrap{position:static}.included-grid{grid-template-columns:1fr 1fr}.book-faq-grid,.form-row-2{grid-template-columns:1fr}}@media (max-width:600px){.included-grid{grid-template-columns:1fr}.book-form-card{padding:24px 18px}}
