.selfbc{--navy:#18202B;--ivory:#F4F0E8;--champagne:#B8A58C;--white:#fff;max-width:940px;margin:0 auto;padding:64px 20px 100px;color:var(--navy);font-family:Arial,sans-serif}
.selfbc-hero{padding:20px 0 38px;border-bottom:1px solid rgba(24,32,43,.14);margin-bottom:28px}
.selfbc-kicker{font-size:11px;font-weight:800;letter-spacing:.18em;color:var(--champagne);margin:0 0 10px}
.selfbc h1,.selfbc h2{font-family:Impact,"Arial Narrow",Arial,sans-serif;font-weight:400;letter-spacing:.02em;margin:0;color:var(--navy)}
.selfbc h1{font-size:clamp(42px,8vw,78px);line-height:.92;max-width:820px}
.selfbc-hero>p:last-child{font-size:16px;max-width:640px;line-height:1.6}
.selfbc-card{position:relative;background:var(--white);border:1px solid rgba(184,165,140,.55);padding:32px;margin:22px 0;box-shadow:0 14px 45px rgba(24,32,43,.06)}
.selfbc-step{display:inline-grid;place-items:center;min-width:34px;height:34px;padding:0 8px;background:var(--navy);color:#fff;font-weight:800;font-size:11px;letter-spacing:.08em;margin-bottom:18px}
.selfbc h2{font-size:34px;margin-bottom:10px}
.selfbc h3{font-size:12px;letter-spacing:.04em;margin:26px 0 6px}
.selfbc p{line-height:1.55}
.selfbc label{display:block;font-size:13px;font-weight:700;margin:18px 0 8px}
.selfbc input[type="email"],.selfbc input[type="date"],.selfbc input[type="text"],.selfbc input[type="tel"],.selfbc select{width:100%;box-sizing:border-box;margin-top:8px;padding:15px 14px;border:1px solid rgba(24,32,43,.25);background:#fff;color:var(--navy);font-size:16px;border-radius:0}
.selfbc button{border:0;background:var(--navy);color:#fff;font-size:12px;font-weight:900;letter-spacing:.08em;padding:16px 22px;cursor:pointer;margin-top:16px}
.selfbc button:disabled{opacity:.45;cursor:not-allowed}
.selfbc .selfbc-secondary{background:transparent;color:var(--navy);border:1px solid rgba(24,32,43,.25)}
.selfbc-terms{background:var(--ivory);padding:24px;margin:22px 0;max-height:540px;overflow:auto;border-left:3px solid var(--champagne)}
.selfbc-terms p{font-size:13px;margin-top:0}
.selfbc-choice{display:flex!important;gap:10px;align-items:flex-start;font-weight:500!important;line-height:1.45}
.selfbc-choice input{margin-top:3px;flex:0 0 auto}
.selfbc-agree{font-weight:800!important;padding:16px;border:1px solid rgba(24,32,43,.18)}
.selfbc-inline{display:flex;gap:26px;align-items:center}
.selfbc-booking-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:rgba(24,32,43,.12)}
.selfbc-booking-card dl>div{background:#fff;padding:16px}
.selfbc-booking-card dt{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#777}
.selfbc-booking-card dd{margin:5px 0 0;font-weight:800}
.selfbc-status{font-size:12px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:var(--champagne)}
.selfbc-sign-label{font-size:13px;font-weight:800;margin-top:22px}
#selfbc-signature{display:block;width:100%;height:180px;border:1px solid rgba(24,32,43,.3);background:#fff;touch-action:none}
.selfbc-error{color:#9d1c1c;font-size:13px;font-weight:700;margin-top:14px}
.selfbc-success{text-align:center;padding:60px 30px;background:var(--ivory)}
.selfbc-success .selfbc-step{background:var(--champagne);font-size:18px}
@media(max-width:650px){.selfbc{padding-top:36px}.selfbc-card{padding:22px 18px}.selfbc-booking-card dl{grid-template-columns:1fr}.selfbc-terms{padding:18px;max-height:440px}.selfbc h2{font-size:29px}}
