.booking-layout{grid-template-columns:.85fr 1.15fr;align-items:start;gap:clamp(35px,6vw,90px);padding-top:32px;padding-bottom:100px;display:grid}.booking-intro{isolation:isolate;padding-top:24px;position:relative}.booking-intro-ribbon{opacity:.16;z-index:-1;top:0;right:0;transform:rotate(12deg);width:125px!important;position:absolute!important}.booking-intro h1{letter-spacing:-.04em;margin:25px 0;font-size:clamp(50px,5.7vw,80px);font-weight:400;line-height:1.02}.booking-intro h1 em{color:var(--velvet)}.booking-intro>p:not(.eyebrow){color:var(--muted);max-width:345px;font-size:13px;line-height:1.9}.booking-intro-steps{border-top:1px solid #dcd0c1;gap:24px;max-width:350px;margin-top:34px;padding-top:30px;display:grid}.booking-intro-steps>div{align-items:flex-start;gap:14px;display:flex}.booking-intro-steps svg{color:var(--gold);flex:none;margin-top:4px}.booking-intro-steps p{margin:0;font-size:12px;line-height:1.8}.booking-intro-steps strong,.booking-intro-steps span{display:block}.booking-intro-steps span{color:var(--muted);margin-top:3px}.booking-intro .booking-intro-footnote{margin-top:32px;font-size:11px;font-style:italic}.booking-form-wrap{min-width:0}.booking-form{background:#fffefa;border:1px solid #b18b4c38;padding:34px;box-shadow:0 18px 64px #3b071609}.booking-form fieldset{border:0;min-width:0;margin:0;padding:0}.booking-form fieldset:disabled{opacity:.7}.booking-form .inquiry-field input,.booking-form .inquiry-field select,.booking-form .inquiry-field textarea{font-size:16px}.booking-form input[type=datetime-local]{appearance:none;min-width:0;max-width:100%;display:block}.booking-step-heading{align-items:center;gap:15px;margin-bottom:26px;display:flex}.booking-step-heading>span{color:var(--gold);font-family:var(--font-display),Georgia,serif;font-size:36px;font-style:italic}.booking-step-heading .eyebrow{margin:0;font-size:8px}.booking-step-heading h2{font-family:var(--font-display),Georgia,serif;margin:8px 0 0;font-size:31px;font-weight:400;line-height:1.07}.booking-step-heading h2 em{color:var(--velvet)}.booking-contact-heading{border-top:1px solid #dcd0c1;margin-top:33px;padding-top:25px}.booking-selected-gown{background:#f4eee5;align-items:center;gap:15px;margin-bottom:24px;padding:12px;display:flex}.booking-selected-gown img{object-fit:cover;object-position:top;width:66px;height:82px}.booking-selected-gown>div{flex:1;min-width:0}.booking-selected-gown h3{font-family:var(--font-display),Georgia,serif;margin:0 0 7px;font-size:28px;font-weight:500;line-height:1}.booking-selected-gown p{color:var(--muted);margin:0 0 7px;font-size:10px}.booking-selected-gown span{color:var(--velvet);font-size:12px}.booking-selected-gown small{color:var(--muted);font-size:9px}.booking-selected-gown>a{width:44px;height:44px;color:var(--velvet);flex:none;justify-content:center;align-items:center;display:flex}.booking-date-row,.booking-contact-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.booking-field-note{color:var(--muted);margin:-6px 0 19px;font-size:10px;line-height:1.8}.booking-availability{color:var(--muted);background:#f4eee5;border:1px solid #b18b4c44;align-items:flex-start;gap:10px;min-height:68px;padding:16px;font-size:11px;line-height:1.8;display:flex}.booking-availability svg{flex:none;margin-top:2px}.booking-availability p{margin:0}.booking-availability strong{color:var(--ink);font-weight:600}.booking-availability button{color:var(--velvet);text-underline-offset:3px;min-height:44px;font:inherit;cursor:pointer;background:0 0;border:0;padding:8px 0;text-decoration:underline}.booking-availability.is-available{color:#3d5137;background:#edf2ea;border-color:#b7c7a9}.booking-availability.needs-attention{color:#694326;background:#fff1e6;border-color:#d1a87c}.booking-cleaning-note{color:#66451e;background:#fff4e4;border:1px solid #d9b486;margin-top:14px;padding:16px}.booking-cleaning-note>div{gap:10px;display:flex}.booking-cleaning-note svg{flex:none;margin-top:3px}.booking-cleaning-note p{margin:0;font-size:11px;line-height:1.85}.booking-cleaning-note label{cursor:pointer;align-items:flex-start;gap:10px;margin-top:14px;font-size:11px;line-height:1.8;display:flex}.booking-cleaning-note input{accent-color:var(--velvet);flex:none;width:19px;height:19px;margin-top:3px}.booking-call-note{color:var(--muted);align-items:flex-start;gap:11px;padding:17px 0;font-size:11px;line-height:1.85;display:flex}.booking-call-note svg{color:var(--velvet);flex:none;margin-top:3px}.booking-call-note p{margin:0}.booking-submit{justify-content:space-between;width:100%;min-height:52px}.booking-submit:disabled{opacity:.5;cursor:not-allowed}.booking-privacy-note{color:var(--muted);margin:15px 0 0;font-size:10px;line-height:1.9}.booking-privacy-note a{text-underline-offset:3px;text-decoration:underline}.booking-error{color:#7d2030;background:#fbebeb;border:1px solid #ce9b9b;margin-top:17px;padding:14px;font-size:12px;line-height:1.8}.booking-error p{margin:0}.booking-error p+p{margin-top:7px;font-size:10px}.booking-demo-note{color:#664e35;background:#f1e5d7;border:1px solid #d8c4ab;margin:0 0 15px;padding:13px 16px;font-size:11px;line-height:1.8}.booking-demo-note span{letter-spacing:.15em;margin-bottom:4px;font-size:8px;font-weight:700;display:block}.booking-service-note{background:#f3e8e5;border:1px solid #d9b8b5;align-items:flex-start;gap:12px;margin-bottom:18px;padding:20px;display:flex}.booking-service-note>svg{color:var(--velvet);flex:none;margin-top:2px}.booking-service-note strong{font-size:14px}.booking-service-note p{color:var(--muted);margin:7px 0 12px;font-size:12px;line-height:1.8}.booking-service-note .text-link{min-height:44px;font-size:11px}.booking-messenger-option{text-align:center;margin:24px 0 0}.booking-messenger-option p{font-family:var(--font-display),Georgia,serif;margin:0 0 8px;font-size:24px}.booking-messenger-option a{min-height:44px;color:var(--velvet);text-underline-offset:5px;align-items:center;gap:8px;font-size:12px;text-decoration:underline;display:inline-flex}.booking-confirmation{background:#fffefa;border:1px solid #b18b4c55;min-width:0;padding:36px}.booking-success-icon{color:#3d5137;background:#edf2ea;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:27px;display:flex}.booking-confirmation h2{font-family:var(--font-display),Georgia,serif;letter-spacing:-.025em;margin:20px 0;font-size:clamp(38px,4vw,55px);font-weight:400;line-height:1.02}.booking-confirmation h2 em{color:var(--velvet)}.booking-confirmation>p:not(.eyebrow){color:var(--muted);font-size:13px;line-height:1.8}.booking-confirmation>p strong{color:var(--ink);overflow-wrap:anywhere}.booking-status-pill{color:var(--velvet);background:#f5e9e8;align-items:center;gap:7px;margin-bottom:8px;padding:9px 12px;font-size:10px;display:inline-flex}.booking-receipt{border-block:1px solid #dcd0c1;gap:13px;margin:22px 0 5px;padding:16px 0;display:grid}.booking-receipt>div{justify-content:space-between;gap:20px;font-size:11px;line-height:1.6;display:flex}.booking-receipt dt{color:var(--muted);flex:none}.booking-receipt dd{text-align:right;margin:0}.booking-confirmation>.button{gap:10px;width:100%;margin-top:10px}.booking-back-link{min-height:44px;color:var(--velvet);justify-content:center;align-items:center;gap:8px;margin-top:12px;font-size:12px;display:flex}@media (min-width:1000px){.booking-intro{position:sticky;top:125px}}@media (max-width:1050px){.booking-form{padding:27px}.booking-date-row,.booking-contact-row{grid-template-columns:1fr;gap:0}.booking-intro h1{font-size:57px}}@media (max-width:760px){.booking-layout{padding-top:10px;padding-bottom:65px;display:block}.booking-intro{margin-bottom:30px;padding-top:7px}.booking-intro h1{margin:17px 0 19px;font-size:48px}.booking-intro h1 br:first-child{display:none}.booking-intro>p:not(.eyebrow){max-width:440px;font-size:12px}.booking-intro-steps{grid-template-columns:1fr 1fr;gap:17px;max-width:none;margin-top:22px;padding-top:20px}.booking-intro-steps>div{gap:8px}.booking-intro-steps p{font-size:10px}.booking-intro .booking-intro-footnote{display:none}.booking-intro-ribbon{right:5px;width:100px!important}.booking-form{padding:25px 21px}.booking-step-heading h2{font-size:31px}.booking-step-heading{gap:12px}.booking-confirmation{padding:28px 23px}.booking-receipt>div{gap:12px;font-size:10px}}@media (max-width:360px){.booking-form{padding:23px 16px}.booking-intro h1{font-size:43px}.booking-intro-steps{grid-template-columns:1fr}.booking-step-heading h2{font-size:28px}.booking-selected-gown{gap:10px}.booking-selected-gown img{width:55px;height:72px}.booking-selected-gown small{margin-top:3px;display:block}}.booking-date-warning{color:#944958;background:#fff0ed;border-left:2px solid #b94755;margin:0 0 20px;padding:12px 14px;font-size:12px;line-height:1.8}
