.booking-intro{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(40px,7vw,100px);align-items:center;padding-top:80px;padding-bottom:80px}.booking-intro h1{font-size:clamp(3rem,5.2vw,5.2rem);line-height:1.06;letter-spacing:-.035em;margin:24px 0}.booking-intro h1 em,.booking-guide h2 em,.booking-close h2 em{color:var(--sage);font-weight:400}.booking-lead{max-width:42ch;font-size:1.15rem}.booking-facts{display:flex;flex-wrap:wrap;gap:8px 18px;margin:24px 0;color:var(--sage);font-size:.82rem}.booking-facts span+span:before{content:"\b7";margin-right:18px}.booking-jump{display:inline-flex;align-items:center;gap:36px;min-height:48px;text-decoration:none;border-bottom:1px solid var(--field);font-size:.88rem}.booking-portrait{margin:0;overflow:hidden;border-radius:3px;box-shadow:0 24px 60px #293c3310}.booking-portrait img{width:100%;height:auto;aspect-ratio:1.15;object-fit:cover;object-position:50% 35%}.booking-portrait figcaption{display:flex;flex-direction:column;background:#293c33;color:var(--air);padding:20px 26px}.booking-portrait strong{font:1.55rem var(--display);font-weight:400}.booking-portrait figcaption span{font-size:.82rem;color:#dae0d3;margin-top:4px}.booking-section{background:var(--linen);padding:80px 0;scroll-margin-top:80px}.booking-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(40px,7vw,100px);align-items:start}.booking-guide h2,.booking-close h2{font-size:clamp(2.5rem,3.7vw,3.6rem);line-height:1.1;margin:20px 0 24px}.booking-guide>p{max-width:35ch}.booking-guide ol{list-style:none;margin:32px 0;padding:0}.booking-guide li{display:flex;gap:20px;padding:20px 0;border-top:1px solid #d5d8cb}.booking-guide li>span{color:var(--sage);font-size:.75rem;padding-top:6px}.booking-guide h3{font:1.45rem var(--display);margin:0 0 6px}.booking-guide li p{font-size:.95rem;line-height:1.65;margin:0;color:var(--muted)}.booking-direct{font-size:.9rem;line-height:2}.booking-card{padding:clamp(24px,3.5vw,48px);background:var(--air);border:1px solid #e1e1d7;border-radius:6px;box-shadow:0 16px 50px #293c3306}.booking-card fieldset{border:0;padding:0;margin:0}.booking-card legend{font:1.8rem var(--display);line-height:1.2;margin:0 0 12px;padding:0}.booking-helper{font-size:.85rem;color:var(--muted);line-height:1.6;margin:10px 0 18px}.booking-options{display:grid;gap:12px;margin:24px 0 32px}.booking-option{position:relative;display:flex;gap:12px;align-items:center;border:1px solid #cbd0c2;border-radius:4px;padding:18px;cursor:pointer;transition:background .18s,border-color .18s}.booking-option:hover{background:#f0f2e9}.booking-option:has(input:checked){border-color:#53694e;background:#e8ede1}.booking-option:has(input:focus-visible){outline:2px solid var(--pine);outline-offset:3px}.booking-option input{position:absolute;opacity:0;width:1px;height:1px}.booking-option strong{font-size:1rem;font-weight:500;display:block;line-height:1.4}.booking-option small{display:block;font-size:.85rem;color:var(--muted);line-height:1.6;margin-top:3px}.booking-check{margin-left:auto;flex:none;width:20px;height:20px;border-radius:50%;border:1px solid #819077}.booking-option input:checked~.booking-check{border:5px solid #53694e;background:var(--air)}.booking-form-heading{border-top:1px solid #d5d8cb;padding-top:28px}.booking-card h3{font:1.65rem var(--display);margin:0 0 10px}.booking-form-heading p,#calendar-panel>p{font-size:.95rem;color:var(--muted);line-height:1.65;margin:0 0 24px}.booking-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.booking-card label:not(.booking-option){display:block;font-size:.88rem;margin:14px 0 8px}.booking-card label>span:not(.booking-check){color:var(--muted)}.booking-card input:not([type=radio]),.booking-card textarea{width:100%;min-height:50px;border:1px solid #bdc5b7;background:#fff;padding:13px 14px;font:1rem var(--body);color:var(--pine);border-radius:3px;resize:vertical}.booking-card input::placeholder,.booking-card textarea::placeholder{color:#72796f}.booking-primary{display:flex;justify-content:space-between;align-items:center;gap:20px;width:100%;min-height:56px;padding:17px 22px;margin-top:28px;background:#293c33;color:#fcfbf8;border:0;border-radius:3px;font:500 .96rem var(--body);text-decoration:none;cursor:pointer;transition:background .18s}.booking-primary:hover{background:#405340}.booking-primary:focus-visible{outline-color:#ac784c}.booking-primary span{font-size:1.3rem}.booking-send-note{margin:16px 0 0}#booking-status:not(:empty){padding:16px;border-left:2px solid #53694e;background:#edf0e6;font-size:.9rem}#email-fallback p{font-size:.9rem}#calendar-panel{border-top:1px solid #d5d8cb;padding-top:28px}.booking-close{text-align:center;padding-top:80px;padding-bottom:90px}.booking-close p{color:var(--sage)}[hidden]{display:none!important}@media(max-width:900px){.booking-intro{gap:36px}.booking-grid{gap:36px;grid-template-columns:.8fr 1.2fr}.booking-fields{grid-template-columns:1fr}}@media(max-width:760px){.booking-intro,.booking-grid{grid-template-columns:1fr}.booking-intro{padding-top:44px;padding-bottom:48px}.booking-intro h1{font-size:clamp(2.7rem,9vw,4rem)}.booking-portrait{max-width:540px}.booking-section{padding:48px 0}.booking-guide ol{margin:24px 0}.booking-guide>p{max-width:50ch}.booking-card{padding:24px}.booking-close{padding-top:48px;padding-bottom:56px}.booking-facts{gap:8px 12px;font-size:.76rem}.booking-facts span+span:before{margin-right:12px}.booking-guide h2{font-size:2.7rem}.booking-card legend{font-size:1.65rem}.booking-option{padding:15px}.booking-option strong{font-size:.95rem}.booking-lead{font-size:1.05rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.booking-option,.booking-primary{transition:none}}@media(max-width:760px){.nav .nav__cta{display:none}.navtoggle{min-height:44px;min-width:44px}}
