body{background:var(--cream)}.header{background:#fff}.reservation-nav{display:flex!important}.reservation-title{padding:35px 0 38px}.breadcrumb{font-size:11px;color:var(--muted)}.reservation-title .eyebrow{margin-top:30px;margin-bottom:16px;color:var(--red)}.reservation-title h1{font-size:clamp(44px,4.7vw,66px)}.reservation-title>p:last-child{font-size:15px;color:var(--muted);margin:20px 0 0}.booking-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:46px;align-items:start;padding-bottom:70px}.booking-main{min-width:0}.preview-notice{background:#eeebe1;border-left:3px solid #a58a58;padding:16px 20px;font-size:12px;margin-bottom:22px}.preview-notice p{margin:4px 0 0}.preview-notice a{text-decoration:underline}.required-note{font-size:11px;color:var(--muted);margin:0 0 23px}#booking{background:white;border:1px solid var(--line);border-radius:4px;padding:32px}fieldset{border:0;border-bottom:1px solid var(--line);padding:0 0 25px;margin:0 0 28px;min-width:0}fieldset:last-of-type{margin-bottom:20px}legend{font-family:Georgia,serif;font-size:25px;line-height:1.4;padding:0;display:flex;align-items:center;gap:16px}legend>span{font-family:Arial,sans-serif;font-size:11px;font-weight:700;letter-spacing:.05em;display:inline-flex;justify-content:center;align-items:center;border:1px solid var(--line);width:30px;height:30px;border-radius:50%;color:var(--red)}.field-intro{font-size:12px;color:var(--muted);margin:8px 0 22px;padding-left:46px}.fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px 22px}.field.full{grid-column:1/-1}.field label{display:block;font-size:12px;font-weight:600;margin-bottom:8px}.optional{font-weight:400;color:var(--muted);margin-left:8px;font-size:10px}.field input,.field select,.field textarea{background:#fff;border:1px solid #aebdc4;border-radius:3px;width:100%;min-width:0;font:inherit;font-size:14px;color:var(--navy);min-height:48px;padding:11px 12px}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--navy);outline-offset:2px}.field input::placeholder,.field textarea::placeholder{color:#657885}.field textarea{resize:vertical}.input-unit{position:relative}.input-unit input{padding-right:70px}.input-unit span{position:absolute;right:13px;top:14px;font-size:12px;color:var(--muted);pointer-events:none}.hint{font-size:10px;color:var(--muted);line-height:1.5;margin:6px 0 0}.field-error{font-size:11px;line-height:1.5;color:#a63029;margin:5px 0 0}.field-error:empty{display:none}[aria-invalid=true]{border-color:var(--red)!important;background:#fffaf8!important}.error-summary{background:#fff5f1;border:1px solid var(--red);color:var(--red);font-size:13px;padding:15px;margin-bottom:26px}.form-bottom p{font-size:11px;color:var(--muted);max-width:440px;margin-bottom:20px}.form-bottom .button{border:0}.booking-aside{background:white;border:1px solid var(--line);border-radius:4px;overflow:hidden;position:sticky;top:130px}.booking-photo{height:235px;position:relative}.booking-photo img{width:100%;height:100%;object-fit:cover;object-position:center 67%}.booking-photo span{position:absolute;bottom:0;left:0;right:0;font-size:9px;letter-spacing:.14em;color:white;background:linear-gradient(transparent,#122f40bd);padding:30px 25px 18px}.trip-summary{padding:26px}.trip-summary .eyebrow{font-size:9px;margin-bottom:12px}dl{margin:0}.trip-summary dl>div{display:flex;gap:20px;justify-content:space-between;padding:11px 0;border-bottom:1px solid var(--line);font-size:12px}dt{color:var(--muted)}dd{margin:0;font-weight:600;text-align:right}.booking-help{padding:25px 0 15px}.booking-help h2{font-size:27px}.booking-help p{font-size:12px;color:var(--muted);margin:8px 0}.booking-help a{font-size:21px;font-family:Georgia,serif}.booking-address{font-size:11px;color:var(--muted);margin:0;padding-top:10px}#review{background:#fff;color:var(--navy);width:min(610px,94vw);padding:26px}#review .lightbox-toolbar{font-size:10px;border-bottom:1px solid var(--line);margin-bottom:20px}#review .lightbox-toolbar button{color:var(--navy);font-size:11px}#review h2{font-size:34px}.review-intro{font-size:13px;color:var(--muted)}#review-details>div{display:flex;justify-content:space-between;gap:20px;padding:8px 0;border-bottom:1px solid var(--line);font-size:12px}#review-details dd{overflow-wrap:anywhere;max-width:70%}#review-message{white-space:pre-wrap;font-size:12px;max-height:110px;overflow:auto;overflow-wrap:anywhere}#review-preview,#send-status{font-size:12px;color:var(--muted)}.review-actions{display:flex;gap:15px;justify-content:space-between;align-items:center;flex-wrap:wrap;margin-top:23px}#review .review-edit{color:var(--navy);border:1px solid var(--line);font-size:12px}#review .button{color:white;border:0;font-size:12px}#review [hidden], [hidden]{display:none!important}button:disabled{opacity:.65;cursor:wait}footer{border-top:1px solid var(--line)}
@media(max-width:900px){.booking-layout{gap:25px;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}#booking{padding:24px}.fields{gap:15px}.trip-summary{padding:20px}.booking-photo{height:190px}.reservation-nav{position:static!important;padding:0!important;flex-direction:row!important;border:0!important;gap:20px!important}.header .reservation-nav a{padding:0}}
@media(max-width:640px){.reservation-title{padding:25px 0 30px}.reservation-title .eyebrow{margin-top:24px}.reservation-title>p:last-child{font-size:14px}.booking-layout{grid-template-columns:1fr;padding-bottom:35px}.booking-aside{position:static}.booking-photo{height:200px}.fields{grid-template-columns:1fr;gap:16px}.field.full{grid-column:auto}.field input,.field select,.field textarea{font-size:16px}#booking{padding:23px 20px}legend{font-size:23px}.field-intro{padding-left:0;margin-top:12px}.reservation-nav{font-size:11px!important;gap:10px!important}.reservation-nav a:last-child{display:none}.form-bottom .button{width:100%;font-size:14px}.preview-notice{padding:14px 16px}#review{padding:20px}.review-actions{align-items:stretch;flex-direction:column}.review-actions>*{width:100%}.reservation-title h1{font-size:43px}footer{padding-bottom:25px}.trip-summary .eyebrow{font-size:10px}.trip-summary dl>div{font-size:13px}}
@media(min-width:641px){.booking-aside{top:156px}}
