.suma-booking{--booking-bg:#101b16;--booking-surface:#192920;--booking-line:#354b3d;--booking-cream:#f2ede1;--booking-muted:#b0bcaf;--booking-jade:#6ba786;background:var(--booking-bg);min-height:100svh;color:var(--booking-cream);flex-direction:column;font-family:Geist,Arial,sans-serif;display:flex}.suma-booking *{box-sizing:border-box}.suma-booking a{color:inherit;text-decoration:none}.suma-booking button,.suma-booking input,.suma-booking textarea{font:inherit}.suma-booking button{cursor:pointer}.suma-booking :is(a,button,textarea,input):focus-visible{outline-offset:4px;outline:2px solid #a9d3b8}.booking-skip{background:var(--booking-cream);z-index:10;padding:10px 14px;position:absolute;top:-100px;left:20px;color:var(--booking-bg)!important}.booking-skip:focus{top:12px}.booking-header{border-bottom:1px solid var(--booking-line);justify-content:space-between;align-items:center;height:90px;padding:0 clamp(24px,5vw,80px);display:flex}.booking-brand{letter-spacing:-.04em;align-items:center;gap:7px;font-family:Iowan Old Style,Palatino Linotype,Georgia,serif;font-size:27px;font-weight:600;line-height:1;display:inline-flex}.booking-brand img{width:32px;height:32px;display:block}.booking-home{align-items:center;gap:9px;font-size:14px;transition:color .2s;display:inline-flex;color:var(--booking-muted)!important}.booking-home:hover{color:var(--booking-cream)!important}.booking-main{grid-template-columns:minmax(0,.92fr) minmax(0,1fr);align-items:center;gap:clamp(44px,7vw,132px);width:min(1330px,100%);margin:auto;padding:clamp(56px,8vw,130px) clamp(24px,5vw,80px);display:grid}.booking-intro{align-self:center;padding-bottom:24px}.booking-eyebrow,.booking-step-label{color:#a4d3b4;letter-spacing:.14em;font-family:Geist,Arial,sans-serif;font-size:11px;font-weight:500}.booking-eyebrow{margin:0 0 28px}.booking-intro h1{letter-spacing:-.065em;margin:0 0 30px;font-size:clamp(48px,4.8vw,72px);font-weight:400;line-height:1.05}.booking-intro h1 span{color:#9bbda6}.booking-intro>p:not(.booking-eyebrow){color:var(--booking-muted);max-width:440px;margin:0;font-size:clamp(16px,1.15vw,18px);line-height:1.65}.booking-aside{color:#93ad9a;align-items:center;gap:11px;margin-top:34px;font-size:13px;display:flex}.booking-panel{background:var(--booking-surface);border:1px solid var(--booking-line);border-radius:12px;min-height:535px;padding:clamp(25px,3.2vw,47px);box-shadow:0 18px 70px #07130d45}.booking-progress{color:var(--booking-muted);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;font-family:Geist,Arial,sans-serif;font-size:11px;display:flex}.booking-track{background:#395141;width:100%;height:2px;margin:15px 0 48px}.booking-track span{background:#a1caae;height:100%;transition:width .35s cubic-bezier(.22,1,.36,1);display:block}.booking-step{animation:.33s cubic-bezier(.22,1,.36,1) both booking-step-in}@keyframes booking-step-in{0%{opacity:.6;transform:translate(16px)}to{opacity:1;transform:translate(0)}}.booking-step-label{margin:0 0 15px}.booking-step h2,.booking-complete h2{color:var(--booking-cream);letter-spacing:-.045em;outline:none;margin:0 0 13px;font-size:clamp(30px,2.6vw,42px);font-weight:400;line-height:1.15}.booking-prompt{color:var(--booking-muted);max-width:480px;margin:0 0 34px;font-size:15px;line-height:1.55}.booking-step label{color:#e4e9df;margin-bottom:10px;font-size:13px;display:block}.booking-step textarea,.booking-step input{width:100%;color:var(--booking-cream);background:#102018;border:1px solid #536c59;border-radius:8px;padding:15px 17px;transition:border-color .2s,background .2s}.booking-step textarea{resize:vertical;min-height:144px;display:block}.booking-step :is(textarea,input)::placeholder{color:#8ea494}.booking-step :is(textarea,input):hover{border-color:#8cae97}.booking-fields{gap:22px;display:grid}.booking-fields input{height:52px;margin-top:10px;display:block}.booking-actions{justify-content:flex-end;align-items:center;gap:22px;margin-top:32px;display:flex}.booking-back,.booking-edit{color:var(--booking-muted);background:0 0;border:0;align-items:center;gap:8px;padding:11px 3px;display:inline-flex}.booking-back:hover,.booking-edit:hover{color:var(--booking-cream)}.booking-next{background:#bad7c3;border:1px solid #b3d0bb;border-radius:7px;justify-content:center;align-items:center;gap:18px;min-height:52px;padding:13px 19px;font-size:14px;font-weight:500;transition:background .2s,transform .2s;display:inline-flex;color:#102219!important}.booking-next:hover:not(:disabled){background:#d2e4d4;transform:translateY(-2px)}.booking-next:disabled{opacity:.62;cursor:not-allowed}.booking-error{color:#ffd1bf;margin:18px 0 0;font-size:13px;line-height:1.5}.booking-error a{text-underline-offset:3px;text-decoration:underline}.booking-complete{flex-direction:column;justify-content:center;align-items:flex-start;min-height:440px;animation:.4s cubic-bezier(.22,1,.36,1) both booking-step-in;display:flex}.booking-complete-mark{color:#a7d3b4;border:1px solid #86b89a;border-radius:50%;place-items:center;width:53px;height:53px;margin-bottom:30px;display:grid}.booking-complete>p:not(.booking-step-label):not(.booking-link-note){max-width:430px;color:var(--booking-muted);margin:4px 0 31px;line-height:1.65}.booking-calendar{margin-bottom:18px}.booking-link-note{color:var(--booking-muted);font-size:12px}.booking-edit{font-size:13px}.booking-footer{border-top:1px solid var(--booking-line);color:#91a597;align-items:center;gap:28px;min-height:75px;padding:20px clamp(24px,5vw,80px);font-size:12px;display:flex}.booking-footer span{margin-right:auto}.booking-footer a:hover{color:var(--booking-cream)}@media (max-width:850px){.booking-main{grid-template-columns:1fr;gap:42px;max-width:660px;padding-top:65px;padding-bottom:75px}.booking-intro{padding-bottom:0}.booking-intro h1{font-size:clamp(44px,8vw,65px)}.booking-panel{min-height:0}}@media (max-width:560px){.booking-header{height:72px}.booking-brand{font-size:24px}.booking-home{gap:0;font-size:0}.booking-home svg{width:22px;height:22px}.booking-main{gap:37px;padding-top:48px}.booking-intro h1{margin-bottom:22px;font-size:clamp(43px,11vw,60px)}.booking-aside{margin-top:22px}.booking-panel{padding:24px}.booking-track{margin-bottom:38px}.booking-step h2,.booking-complete h2{font-size:31px}.booking-actions{gap:14px}.booking-next{gap:11px}.booking-footer{flex-wrap:wrap;gap:16px}.booking-footer span{flex-basis:100%}}
