:root{--paper:#f5f1eb;--ink:#262522;--muted:#625d56;--sage:#34443e;--sand:#ded3c7;--line:rgba(38,37,34,.18)}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,sans-serif}a{color:inherit}.booking-header{min-height:86px;padding:0 clamp(24px,5vw,72px);display:flex;align-items:center;justify-content:space-between;gap:24px}.booking-header>a:last-child{font-size:11px;text-decoration:none;border-bottom:1px solid;padding-bottom:4px}.logo{display:flex;flex-direction:column;line-height:1;text-decoration:none}.logo span{font:400 25px/1 Georgia,serif}.logo small{margin-top:7px;font-size:8px;letter-spacing:3px}.booking-layout{display:grid;grid-template-columns:.85fr 1.15fr;min-height:calc(100vh - 86px)}.booking-intro{position:sticky;top:0;height:100vh;padding:clamp(70px,9vw,135px) clamp(35px,6vw,92px);display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(rgba(31,42,38,.84),rgba(31,42,38,.9)),url('/images/portfolio-20-1200.webp') center/cover;color:white}.eyebrow{margin:0 0 26px;font-size:9px;letter-spacing:2px}.booking-intro h1{margin:0;font:400 clamp(62px,7.5vw,108px)/.88 Georgia,serif;letter-spacing:-3px}.booking-intro h1 em{font-weight:400}.booking-intro>div>p:last-child{max-width:510px;margin:35px 0 0;color:#dbe1de;font-size:15px;line-height:1.8}.booking-steps{display:grid;gap:0;border-top:1px solid rgba(255,255,255,.24)}.booking-steps span{padding:15px 0;border-bottom:1px solid rgba(255,255,255,.24);color:#e5eae7;font-size:10px;letter-spacing:.5px}.form-section{padding:clamp(55px,7vw,105px) clamp(28px,7vw,105px)}.form-heading{display:flex;justify-content:space-between;gap:20px;margin-bottom:28px;padding-bottom:16px;border-bottom:1px solid var(--line);font-size:9px;letter-spacing:1.4px}.form-heading strong{color:#817b73;font-weight:400;letter-spacing:0}.form-heading.second{margin-top:60px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px 20px}.form-grid label{display:flex;flex-direction:column;gap:9px;font-size:11px}.form-grid input,.form-grid select,.form-grid textarea{width:100%;padding:14px 0;border:0;border-bottom:1px solid #a9a29a;border-radius:0;background:transparent;color:inherit;font:14px Arial,sans-serif;outline:none}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:var(--sage);box-shadow:0 1px 0 var(--sage)}.form-grid textarea{min-height:100px;resize:vertical}.form-grid .wide{grid-column:1/-1}.consent{display:flex;align-items:flex-start;gap:12px;margin:32px 0;color:var(--muted);font-size:11px;line-height:1.5}.consent input{margin-top:2px}.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.submit-row{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:25px 0;border-top:1px solid var(--line)}.submit-row>div{display:flex;flex-direction:column;gap:6px}.submit-row strong{font:400 25px Georgia,serif}.submit-row>div span{color:var(--muted);font-size:10px}.submit-row button{display:flex;align-items:center;gap:30px;padding:17px 20px;border:0;background:var(--sage);color:white;cursor:pointer;font-size:11px}.submit-row button:disabled{opacity:.55;cursor:wait}.form-error{min-height:20px;margin:12px 0 0;color:#8a3328;font-size:12px}.success{padding:clamp(50px,7vw,100px) 0}.success>p:first-child{font-size:9px;letter-spacing:2px}.success h2{max-width:700px;margin:22px 0 32px;font:400 clamp(48px,6vw,80px)/.98 Georgia,serif}.success strong{display:inline-block;padding:13px 16px;background:var(--sand);font:400 23px Georgia,serif}.success>p:not(:first-child){max-width:610px;margin:30px 0;color:var(--muted);font-size:14px;line-height:1.8}.success a{display:inline-block;padding-bottom:4px;border-bottom:1px solid;font-size:11px}footer{min-height:120px;padding:35px max(5vw,28px);display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:10px}footer nav{display:flex;gap:18px}@media(max-width:800px){.booking-header{min-height:72px;padding:0 20px}.logo span{font-size:21px}.booking-layout{grid-template-columns:1fr}.booking-intro{position:relative;height:auto;min-height:640px;padding:85px 24px 45px}.booking-intro h1{font-size:64px}.booking-steps{margin-top:90px}.form-section{padding:70px 24px}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.form-heading{align-items:flex-start;flex-direction:column}.submit-row{align-items:stretch;flex-direction:column}.submit-row button{justify-content:space-between}footer{align-items:flex-start;flex-direction:column}}
