:root{--green:#15392e;--green2:#234b3a;--brass:#b58a5a;--cream:#fbf8f1;--cream2:#f3ede2;--ink:#292824;--line:#d9d4ca;--muted:#6c675f;--white:#fff;--radius:24px}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,system-ui,sans-serif}.booking-header{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-bottom:1px solid rgba(21,57,46,.12);background:rgba(251,248,241,.96);position:sticky;top:0;z-index:5}.brand img{width:210px;display:block}.secure-note{font-size:13px;color:var(--green);font-weight:600;letter-spacing:.04em}.booking-shell{max-width:1080px;margin:0 auto;padding:52px 24px 72px}.progress-wrap{margin-bottom:42px}.progress-meta{display:flex;justify-content:space-between;gap:20px;font-size:13px;color:var(--muted);margin-bottom:10px}.progress-meta span:last-child{font-weight:600;color:var(--green)}.progress-track{height:4px;background:#dfdbd2;border-radius:99px;overflow:hidden}.progress-bar{height:100%;background:var(--green);width:14.285%;transition:width .25s ease}.step{display:none;background:#fff;border:1px solid rgba(21,57,46,.14);border-radius:var(--radius);padding:52px;box-shadow:0 18px 45px rgba(38,36,31,.07)}.step.is-active{display:block}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:700;color:var(--brass);margin:0 0 14px}.step h1{font-family:'Cormorant Garamond',serif;font-size:clamp(42px,6vw,72px);line-height:.95;color:var(--green);margin:0 0 18px;font-weight:600}.lead{font-size:18px;line-height:1.6;color:#514d46;max-width:700px;margin:0 0 36px}.field{display:flex;flex-direction:column;gap:8px}.field label{font-size:14px;font-weight:600;color:var(--green)}.field label span{font-weight:400;color:var(--muted)}.field input,.field select{appearance:none;border:1px solid var(--line);border-radius:12px;background:#fff;padding:14px 15px;font:inherit;color:var(--ink);min-height:50px}.field input:focus,.field select:focus{outline:2px solid rgba(21,57,46,.15);border-color:var(--green)}.field small{color:var(--muted);font-size:12px}.narrow{max-width:420px}.top-gap{margin-top:28px}.choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.choice-grid.two{grid-template-columns:repeat(2,1fr)}.choice-card{border:1px solid var(--line);border-radius:18px;padding:0;display:flex;min-height:170px;background:#fff;cursor:pointer;transition:.18s ease;position:relative}.choice-card:hover{transform:translateY(-2px);border-color:#b9b1a3}.choice-card input{position:absolute;opacity:0;pointer-events:none}.choice-card span{display:flex;flex-direction:column;gap:10px;padding:24px;width:100%}.choice-card strong{font-family:'Cormorant Garamond',serif;font-size:28px;color:var(--green)}.choice-card small{font-size:14px;line-height:1.5;color:var(--muted)}.choice-card em{margin-top:auto;font-style:normal;font-weight:700;color:var(--green)}.choice-card:has(input:checked){border:2px solid var(--green);box-shadow:0 0 0 3px rgba(21,57,46,.07)}.choice-card.muted{background:#f5f2eb;cursor:not-allowed;opacity:.7}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.span-2{grid-column:1/-1}.notice{margin-top:24px;padding:16px 18px;border-radius:14px;background:#edf4f0;color:var(--green);font-size:14px;line-height:1.5}.notice.error{background:#f7e9e6;color:#8d2d1f}.notice.soft{background:var(--cream2);color:#625c54}.review-grid{display:grid;grid-template-columns:1.4fr .8fr;gap:24px}.review-card,.price-card{border:1px solid var(--line);border-radius:18px;padding:26px;background:#fff}.review-card h2{font-family:'Cormorant Garamond',serif;color:var(--green);font-size:32px;margin:0 0 18px}.review-card dl{display:grid;grid-template-columns:1fr 1.4fr;gap:12px 20px;margin:0}.review-card dt{color:var(--muted);font-size:13px}.review-card dd{margin:0;font-weight:600}.price-card{background:var(--green);color:#fff;display:flex;flex-direction:column;gap:12px}.price-card span{font-size:13px;opacity:.75;text-transform:uppercase;letter-spacing:.08em}.price-card strong{font-family:'Cormorant Garamond',serif;font-size:46px}.price-card small{line-height:1.5;opacity:.85}.actions{display:flex;justify-content:flex-end;gap:12px;margin-top:22px}.button{border:0;border-radius:999px;padding:14px 24px;font-weight:700;font-size:15px;cursor:pointer}.button.primary{background:var(--green);color:#fff}.button.secondary{background:transparent;color:var(--green);border:1px solid rgba(21,57,46,.25)}.button:disabled{opacity:.45;cursor:wait}.booking-footer{max-width:1080px;margin:0 auto;padding:0 24px 38px;display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:12px}.booking-footer a{color:inherit;text-decoration:none}@media(max-width:780px){.booking-header{height:72px;padding:0 20px}.brand img{width:165px}.secure-note{display:none}.booking-shell{padding:32px 16px 52px}.step{padding:30px 22px;border-radius:18px}.choice-grid,.choice-grid.two,.review-grid,.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.step h1{font-size:48px}.booking-footer{flex-direction:column;padding:0 20px 28px}.actions{justify-content:space-between}.button{flex:1}.review-card dl{grid-template-columns:1fr}.review-card dd{margin-bottom:6px}}