:root {
    --sbs-primary: #6F5275;
    --sbs-primary-hover: #5A4060;
    --sbs-primary-light: #F9F5FA;
    --sbs-primary-border: #B99DBF;
    --sbs-bg-subtle: #FAFAFA;
    --sbs-text-dark: #1F1F1F;
    --sbs-text-muted: #706F72;
    --sbs-border: #E3D9E5;
    --sbs-font-heading: 'Playfair Display', Georgia, serif;
    --sbs-font-body: 'Plus Jakarta Sans', sans-serif;
    --sbs-font-mono: 'JetBrains Mono', monospace;
    --sbs-radius: 12px;
    --sbs-pill-radius: 100px;
    --sbs-transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}

.sbs-booking-container {
    display: flex;
    gap: 40px;
    max-width: 1180px;
    margin: 0 auto;
    padding: 20px 0;
    font-family: var(--sbs-font-body);
    color: var(--sbs-text-dark);
}

.sbs-form-wrapper { flex: 1 1 65%; }

/* STEP CONTROLS */
.sbs-step { display: none; }
.sbs-step.sbs-step-active { 
    display: block !important; 
    animation: sbsFadeIn 0.3s ease; 
}

@keyframes sbsFadeIn {
    from { opacity: 0; transform: translateY(6px); }
    to { opacity: 1; transform: translateY(0); }
}

.sbs-step-title {
    font-family: var(--sbs-font-heading);
    font-size: 1.55rem;
    font-weight: 500;
    margin: 0 0 6px 0;
    color: var(--sbs-text-dark);
}

.sbs-step-subtitle {
    font-size: 0.88rem;
    color: var(--sbs-text-muted);
    margin: 0 0 24px 0;
}

.sbs-options-grid {
    display: flex; flex-direction: column; gap: 16px; margin-bottom: 30px;
}

.sbs-radio-card, .sbs-checkbox-card {
    display: flex; align-items: flex-start; padding: 20px 22px;
    border: 1px solid var(--sbs-border); border-radius: var(--sbs-radius);
    background-color: #ffffff; box-shadow: 0 2px 10px rgba(0,0,0,0.02);
    cursor: pointer; transition: var(--sbs-transition);
}

.sbs-radio-card:hover, .sbs-checkbox-card:hover { border-color: var(--sbs-primary-border); }
.sbs-radio-card input[type="radio"], .sbs-checkbox-card input[type="checkbox"] { position: absolute; opacity: 0; pointer-events: none; }

.sbs-radio-custom, .sbs-checkbox-custom {
    width: 20px; height: 20px; border: 1.5px solid var(--sbs-primary-border);
    border-radius: 50%; margin-right: 18px; margin-top: 2px;
    flex-shrink: 0; transition: var(--sbs-transition);
}

.sbs-checkbox-custom { border-radius: 6px; }

.sbs-radio-card input[type="radio"]:checked ~ .sbs-radio-custom {
    border-color: var(--sbs-primary); background-color: var(--sbs-primary);
    box-shadow: inset 0 0 0 3px #ffffff;
}

.sbs-checkbox-card input[type="checkbox"]:checked ~ .sbs-checkbox-custom {
    border-color: var(--sbs-primary); background-color: var(--sbs-primary);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");
    background-size: 12px; background-position: center; background-repeat: no-repeat;
}

.sbs-radio-card:has(input:checked), .sbs-checkbox-card:has(input:checked) {
    border-color: var(--sbs-primary-border) !important; background-color: #ffffff !important;
}

.sbs-card-content { width: 100%; }
.sbs-card-header { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 6px; }
.sbs-card-header h3 { font-family: var(--sbs-font-heading); font-size: 1.15rem; font-weight: 600; margin: 0; color: var(--sbs-text-dark); }
.sbs-event-subtitle { display: block; font-size: 0.85rem; font-style: italic; color: var(--sbs-primary); margin-top: 2px; }
.sbs-price { font-family: var(--sbs-font-heading); font-size: 1.15rem; font-weight: 600; color: var(--sbs-text-dark); margin-left: 16px; }

.sbs-card-content p, .sbs-inq-checkbox-card p, .sbs-event-desc {
    font-family: var(--sbs-font-body) !important; text-transform: none !important;
    letter-spacing: normal !important; font-size: 0.86rem !important; color: var(--sbs-text-muted) !important; line-height: 1.55 !important; margin: 0;
}

#sbs-inquiry-modal .sbs-inq-checkbox-card .sbs-card-header h3,
#sbs-inquiry-modal .sbs-inq-checkbox-card .sbs-card-header .sbs-price {
    font-family: var(--sbs-font-body) !important; font-weight: 600 !important; text-transform: none !important; letter-spacing: normal !important;
}

#sbs-inquiry-modal .sbs-inq-checkbox-card .sbs-card-header h3 { font-size: 0.95rem !important; }
#sbs-inquiry-modal .sbs-inq-checkbox-card .sbs-card-header .sbs-price { font-size: 0.95rem !important; margin-left: 12px !important; }

.sbs-enhancements-section { margin: 28px 0 20px 0; padding-top: 10px; }
.sbs-enhancements-section h4 { font-family: var(--sbs-font-heading); font-size: 1.1rem; font-weight: 600; margin: 0 0 14px 0; color: var(--sbs-text-dark); }

.sbs-section-divider { display: flex; align-items: center; text-align: center; margin: 28px 0 16px 0; }
.sbs-section-divider::before, .sbs-section-divider::after { content: ''; flex: 1; border-bottom: 1px solid var(--sbs-border); }
.sbs-section-divider span { padding: 0 16px; font-family: var(--sbs-font-mono); font-size: 0.72rem; letter-spacing: 1.2px; color: var(--sbs-text-muted); }

.sbs-public-event-card { border: 1.5px solid var(--sbs-primary-border); background: var(--sbs-primary-light); }
.sbs-event-meta-row { display: flex; gap: 18px; margin: 8px 0 12px 0; font-size: 0.82rem; color: var(--sbs-primary); font-weight: 500; }
.sbs-event-meta-row span { display: inline-flex; align-items: center; gap: 6px; }
.sbs-event-links { margin-top: 12px; font-size: 0.85rem; position: relative; z-index: 10; }
.sbs-modal-trigger { color: var(--sbs-primary); font-weight: 600; text-decoration: underline; cursor: pointer; transition: var(--sbs-transition); }
.sbs-modal-trigger:hover { color: var(--sbs-primary-hover); }
.sbs-bullet { margin: 0 8px; color: var(--sbs-text-muted); }

/* STEP 2 FORM FIELDS */
.sbs-form-fields { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; margin-bottom: 24px; }
.sbs-field-group { display: flex; flex-direction: column; gap: 6px; }
.sbs-field-group.full-width { grid-column: span 2; }
.sbs-field-group label, .sbs-field-label { font-family: var(--sbs-font-mono); font-size: 0.72rem; font-weight: 500; letter-spacing: 0.8px; color: var(--sbs-text-muted); text-transform: uppercase; }

.sbs-label-with-limit { display: flex; justify-content: space-between; align-items: center; }
.sbs-char-counter { font-family: var(--sbs-font-mono); font-size: 0.7rem; color: var(--sbs-text-muted); }

/* INPUTS & DROPDOWNS */
.sbs-field-group input, .sbs-field-group select, .sbs-field-group textarea {
    width: 100%; height: 48px; padding: 0 22px; line-height: 48px; border: 1px solid var(--sbs-border); border-radius: var(--sbs-pill-radius);
    font-family: var(--sbs-font-body); font-size: 0.92rem; background-color: #FFFFFF; outline: none; color: var(--sbs-text-dark);
    transition: var(--sbs-transition); box-shadow: 0 2px 6px rgba(0,0,0,0.01); accent-color: var(--sbs-primary) !important;
    -webkit-appearance: none; -moz-appearance: none; appearance: none;
}

.sbs-input-icon-wrap { position: relative; display: flex; align-items: center; }
.sbs-input-icon-wrap svg { position: absolute; left: 16px; pointer-events: none; }
.sbs-input-icon-wrap input { padding-left: 44px !important; }

.sbs-field-group select {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%3C6F5275' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat; background-position: right 18px center; padding-right: 42px !important; cursor: pointer;
}

.sbs-field-group select option { background-color: #FFFFFF !important; color: var(--sbs-text-dark) !important; padding: 10px 14px !important; }
.sbs-field-group select option:hover, .sbs-field-group select option:focus, .sbs-field-group select option:active, .sbs-field-group select option:checked {
    background-color: var(--sbs-primary) !important; background: linear-gradient(0deg, var(--sbs-primary) 0%, var(--sbs-primary) 100%) !important; color: #FFFFFF !important;
}

.sbs-field-group textarea { height: auto !important; min-height: 110px; line-height: 1.5; padding: 14px 20px !important; border-radius: 18px !important; }
.sbs-field-group input::placeholder, .sbs-field-group textarea::placeholder { font-family: var(--sbs-font-body); color: #AAA; }
.sbs-field-group input:focus, .sbs-field-group select:focus, .sbs-field-group textarea:focus { border-color: var(--sbs-primary); box-shadow: 0 0 0 3px rgba(111, 82, 117, 0.12); }

.sbs-phone-input-wrap { display: flex; gap: 10px; }
.sbs-country-code-select { width: 105px !important; height: 48px !important; line-height: 48px !important; padding: 0 12px !important; flex-shrink: 0; border-radius: var(--sbs-pill-radius) !important; background-color: var(--sbs-bg-subtle) !important; }

.sbs-inquiry-price-banner {
    display: flex; justify-content: space-between; align-items: center; background: var(--sbs-primary-light);
    border: 1.5px solid var(--sbs-primary-border); border-radius: 16px; padding: 16px 22px; margin-bottom: 22px;
}

.sbs-price-label { font-family: var(--sbs-font-mono); font-size: 0.72rem; letter-spacing: 1px; color: var(--sbs-text-muted); }
.sbs-price-value { font-family: var(--sbs-font-heading); font-size: 1.55rem; font-weight: 600; color: var(--sbs-primary); }
.sbs-inq-checkbox-card { border-radius: 16px !important; background: var(--sbs-bg-subtle); padding: 16px 18px; }

/* STEP 3: SQUARE PAYMENT & SECURITY BADGE/DISCLAIMER STYLING */
.sbs-square-card-wrapper {
    background-color: #FFFFFF;
    border: 1px solid var(--sbs-border);
    border-radius: 16px;
    padding: 24px;
    margin-bottom: 20px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.02);
}

.sbs-terms-checkbox-wrapper {
    margin-top: 18px;
    padding-top: 16px;
    border-top: 1px solid var(--sbs-border);
}

.sbs-terms-checkbox-wrapper.sbs-terms-invalid {
    animation: sbsShake 0.4s ease;
}

.sbs-terms-checkbox-wrapper.sbs-terms-invalid .sbs-terms-text {
    color: #D93838;
    font-weight: 600;
}

@keyframes sbsShake {
    0%, 100% { transform: translateX(0); }
    20%, 60% { transform: translateX(-6px); }
    40%, 80% { transform: translateX(6px); }
}

.sbs-checkbox-label {
    display: flex;
    align-items: center;
    gap: 12px;
    cursor: pointer;
}

.sbs-checkbox-label input[type="checkbox"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.sbs-custom-check {
    width: 20px;
    height: 20px;
    border: 1.5px solid var(--sbs-primary-border);
    border-radius: 5px;
    flex-shrink: 0;
    transition: var(--sbs-transition);
}

.sbs-checkbox-label input[type="checkbox"]:checked ~ .sbs-custom-check {
    background-color: var(--sbs-primary);
    border-color: var(--sbs-primary);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");
    background-size: 12px;
    background-position: center;
    background-repeat: no-repeat;
}

.sbs-terms-text {
    font-size: 0.88rem;
    color: var(--sbs-text-muted);
}

/* DISCLAIMER / SECURITY BADGE IN STEP 3 CHECKOUT */
.sbs-security-badge {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    background-color: var(--sbs-primary-light);
    border: 1px solid var(--sbs-primary-border);
    border-radius: 12px;
    padding: 14px 16px;
    margin-top: 18px;
    font-size: 0.82rem;
    line-height: 1.5;
    color: var(--sbs-text-muted);
}

.sbs-security-badge svg {
    flex-shrink: 0;
    margin-top: 2px;
}

/* CALENDAR & TIME PICKER */
.sbs-calendar-section, .sbs-time-section { margin-bottom: 24px; }
.sbs-date-grid, .sbs-time-grid { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 10px; }

.sbs-date-btn, .sbs-time-btn {
    display: inline-flex; flex-direction: column; align-items: center; justify-content: center;
    padding: 12px 20px; border: 1px solid var(--sbs-border); border-radius: var(--sbs-radius);
    background-color: #FFFFFF; color: var(--sbs-text-dark); font-family: var(--sbs-font-body);
    font-size: 0.9rem; font-weight: 600; cursor: pointer; transition: var(--sbs-transition); min-width: 120px;
}

.sbs-date-btn .sbs-day-name { font-family: var(--sbs-font-mono); font-size: 0.72rem; color: var(--sbs-text-muted); text-transform: uppercase; margin-bottom: 2px; }
.sbs-date-btn .sbs-day-num { font-size: 1.05rem; font-weight: 700; }
.sbs-date-btn:hover, .sbs-time-btn:hover { border-color: var(--sbs-primary-border); background-color: var(--sbs-primary-light); color: var(--sbs-primary); }

.sbs-date-btn.selected, .sbs-time-btn.selected {
    background-color: var(--sbs-primary) !important; border-color: var(--sbs-primary) !important; color: #FFFFFF !important; box-shadow: 0 4px 12px rgba(111, 82, 117, 0.25);
}
.sbs-date-btn.selected .sbs-day-name { color: rgba(255, 255, 255, 0.85) !important; }

.sbs-inline-error { background-color: #FDF2F2; color: #D93838; border: 1px solid #F5C6C6; padding: 12px 18px; border-radius: var(--sbs-radius); font-size: 0.88rem; margin-top: 16px; }

/* BUTTON STYLES */
.sbs-actions { display: flex; justify-content: flex-end; gap: 14px; margin-top: 28px; }
.sbs-actions-center { justify-content: center; }
.sbs-actions-between { justify-content: space-between; }

.sbs-btn {
    display: inline-flex; align-items: center; justify-content: center; gap: 10px; padding: 15px 36px;
    border: none; border-radius: var(--sbs-pill-radius); font-family: var(--sbs-font-body); font-size: 0.95rem; font-weight: 700;
    cursor: pointer; transition: var(--sbs-transition); text-decoration: none; outline: none;
}

.sbs-btn-full { width: 100%; }
.sbs-btn-next, .sbs-btn-pay { background-color: var(--sbs-primary) !important; color: #FFFFFF !important; box-shadow: 0 4px 14px rgba(111, 82, 117, 0.25); }
.sbs-btn-next:hover, .sbs-btn-pay:hover { background-color: var(--sbs-primary-hover) !important; transform: translateY(-2px); box-shadow: 0 6px 20px rgba(90, 64, 96, 0.35); }
.sbs-btn-next:active, .sbs-btn-pay:active { transform: translateY(1px); box-shadow: 0 2px 8px rgba(90, 64, 96, 0.2); }

.sbs-btn-secondary { background-color: #FFFFFF !important; color: var(--sbs-text-dark) !important; border: 1px solid var(--sbs-border) !important; box-shadow: 0 2px 8px rgba(0,0,0,0.03); }
.sbs-btn-secondary:hover { border-color: var(--sbs-primary-border) !important; color: var(--sbs-primary) !important; }

.sbs-btn-dark { background-color: #1F1F1F !important; color: #FFFFFF !important; }
.sbs-btn-dark:hover { background-color: #000000 !important; transform: translateY(-2px); }

/* POPUP MODALS & TERMS SPACING */
.sbs-modal-overlay {
    position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; background: rgba(0, 0, 0, 0.65);
    backdrop-filter: blur(4px); display: none; align-items: center; justify-content: center; z-index: 999999; padding: 20px;
}

.sbs-modal-overlay.sbs-modal-open { display: flex !important; animation: sbsFadeIn 0.25s ease; }
.sbs-modal-content { background: #FFFFFF; border-radius: 20px; width: 100%; max-width: 600px; max-height: 88vh; padding: 34px 30px; position: relative; box-shadow: 0 10px 30px rgba(0,0,0,0.2); overflow-y: auto; }
.sbs-modal-lg { max-width: 720px; }

button.sbs-modal-close {
    position: absolute !important; top: 18px !important; right: 22px !important; width: 38px !important; height: 38px !important;
    border-radius: 100px !important; background: #FAFAFA !important; border: 1px solid #EAEAEA !important; font-size: 1.4rem !important;
    line-height: 1 !important; display: inline-flex !important; align-items: center !important; justify-content: center !important;
    color: var(--sbs-text-muted) !important; cursor: pointer !important; transition: var(--sbs-transition) !important; outline: none !important; padding: 0 !important;
}

button.sbs-modal-close:hover { background-color: var(--sbs-primary) !important; border-color: var(--sbs-primary) !important; color: #FFFFFF !important; transform: rotate(90deg) scale(1.05) !important; }

.sbs-modal-header h3 { font-family: var(--sbs-font-heading); font-size: 1.5rem; font-weight: 500; margin: 0 0 6px 0; }
.sbs-modal-header p { font-size: 0.88rem; color: var(--sbs-text-muted); margin: 0 0 22px 0; }

.sbs-text-content h4 { font-family: var(--sbs-font-heading); font-size: 1.25rem; margin: 18px 0 14px 0; color: var(--sbs-primary); border-bottom: 1px solid var(--sbs-border); padding-bottom: 8px; }
.sbs-text-content h5 { font-family: var(--sbs-font-body); font-size: 0.98rem; font-weight: 700; margin: 20px 0 8px 0; color: var(--sbs-text-dark); }
.sbs-text-content p, .sbs-text-content li { font-size: 0.88rem; line-height: 1.65; color: var(--sbs-text-muted); margin-bottom: 14px; }

/* SPACING BETWEEN HEALTH DECLARATION & RELEASE OF LIABILITY */
.sbs-terms-section {
    margin-bottom: 24px;
    padding-bottom: 8px;
}

.sbs-terms-section:not(:last-child) {
    border-bottom: 1px dashed var(--sbs-border);
}

.sbs-text-content ul { padding-left: 20px; margin-bottom: 16px; }
.sbs-highlight-note { background: var(--sbs-primary-light); border-left: 3px solid var(--sbs-primary); padding: 14px 16px; border-radius: 8px; font-weight: 500; color: var(--sbs-text-dark) !important; margin-top: 18px; }

/* SIDEBAR SUMMARY */
.sbs-summary-sidebar {
    flex: 1 1 35%; background-color: var(--sbs-bg-subtle); border: 1px solid var(--sbs-border);
    border-radius: var(--sbs-radius); padding: 24px; height: fit-content; position: sticky; top: 20px;
}

.sbs-summary-title { font-family: var(--sbs-font-heading); font-size: 0.95rem; font-weight: 600; letter-spacing: 1px; color: var(--sbs-text-dark); margin-bottom: 18px; padding-bottom: 10px; border-bottom: 1px solid var(--sbs-border); }
.sbs-summary-block { margin-bottom: 18px; }
.sbs-summary-label { display: block; font-family: var(--sbs-font-mono); font-size: 0.68rem; letter-spacing: 0.8px; color: var(--sbs-text-muted); margin-bottom: 6px; }
.sbs-sum-value { font-family: var(--sbs-font-heading); font-size: 1.05rem; font-weight: 600; }
.sbs-sum-subtext { font-size: 0.82rem; color: var(--sbs-text-muted); }
.sbs-divider { border: none; border-top: 1px solid var(--sbs-border); margin: 20px 0; }
.sbs-summary-total { display: flex; justify-content: space-between; align-items: center; }
.sbs-summary-total span { font-family: var(--sbs-font-mono); font-size: 0.72rem; letter-spacing: 0.8px; color: var(--sbs-text-muted); }
.sbs-total-amount { font-family: var(--sbs-font-heading) !important; font-size: 1.75rem !important; font-weight: 600 !important; color: var(--sbs-text-dark) !important; }
.sbs-disclaimer { font-size: 0.75rem; color: var(--sbs-text-muted); line-height: 1.4; margin-top: 14px; }

/* ==================== THANK YOU SCREENS ==================== */
.sbs-thankyou-card {
    background: #FFFFFF; border: 1px solid var(--sbs-border); border-radius: 24px;
    padding: 42px 36px; text-align: center; position: relative; overflow: hidden; box-shadow: 0 4px 25px rgba(0, 0, 0, 0.03);
}

.sbs-ty-icon-wrap { display: flex; justify-content: center; margin-bottom: 18px; }
.sbs-ty-check-circle { width: 64px; height: 64px; border-radius: 50%; background-color: var(--sbs-primary-light); display: flex; align-items: center; justify-content: center; }
.sbs-ty-kicker { font-family: var(--sbs-font-mono); font-size: 0.78rem; font-weight: 600; letter-spacing: 1.5px; color: var(--sbs-primary); display: block; margin-bottom: 8px; }
.sbs-ty-heading { font-family: var(--sbs-font-heading); font-size: 2.6rem; font-weight: 500; margin: 0 0 12px 0; color: var(--sbs-text-dark); }
.sbs-ty-subheading { font-size: 0.95rem; color: var(--sbs-text-muted); max-width: 540px; margin: 0 auto 32px auto; line-height: 1.6; }

/* RECEIPT BOX FOR PAID TICKET */
.sbs-ty-receipt-card { background-color: #FAF8F5; border: 1px solid #ECE6DE; border-radius: 18px; padding: 26px; text-align: left; max-width: 580px; margin: 0 auto 28px auto; }
.sbs-ty-row { display: flex; justify-content: space-between; align-items: center; }
.sbs-ty-conf-row { border-bottom: 1px dashed #E2D9CD; padding-bottom: 14px; margin-bottom: 16px; }
.sbs-ty-label { font-family: var(--sbs-font-mono); font-size: 0.72rem; letter-spacing: 1px; color: var(--sbs-text-muted); }
.sbs-ty-conf-val { font-family: var(--sbs-font-mono); font-size: 1rem; font-weight: 700; color: var(--sbs-text-dark); }
.sbs-ty-service-details h3 { font-family: var(--sbs-font-heading); font-size: 1.25rem; font-weight: 600; margin: 0 0 10px 0; color: var(--sbs-text-dark); }
.sbs-ty-meta-item { display: flex; align-items: center; gap: 10px; font-size: 0.88rem; color: var(--sbs-text-muted); margin-bottom: 6px; }
.sbs-ty-total-row { border-top: 1px dashed #E2D9CD; padding-top: 16px; margin-top: 16px; }
.sbs-ty-price-val { font-family: var(--sbs-font-heading); font-size: 1.55rem; font-weight: 600; color: var(--sbs-primary); }

/* INQUIRY STATUS BOX */
.sbs-inquiry-ty-card { border-radius: 28px; padding: 54px 40px; }
.sbs-ty-watermark-paperplane { position: absolute; top: 20px; right: 20px; pointer-events: none; opacity: 0.6; }
.sbs-ty-inquiry-box { background-color: var(--sbs-primary-light); border: 1px solid var(--sbs-primary-border); border-radius: 16px; padding: 22px 28px; max-width: 480px; margin: 0 auto 30px auto; }
.sbs-inq-status-row { display: flex; justify-content: space-between; align-items: center; padding: 6px 0; }
.sbs-ty-val-bold { font-family: var(--sbs-font-mono); font-size: 0.88rem; font-weight: 700; color: var(--sbs-text-dark); }
.sbs-ty-status-tag { font-family: var(--sbs-font-mono); font-size: 0.75rem; font-weight: 700; letter-spacing: 0.8px; color: var(--sbs-primary); }
.sbs-ty-footer-note { font-size: 0.88rem; color: var(--sbs-text-muted); max-width: 480px; margin: 0 auto 30px auto; line-height: 1.55; }

/* RESPONSIVE LAYOUT */
@media (max-width: 992px) {
    .sbs-booking-container { flex-direction: column; gap: 24px; padding: 10px; }
    .sbs-form-wrapper { width: 100%; }
    .sbs-summary-sidebar { width: 100%; position: static; order: 2; }
    .sbs-btn { width: 100%; }
}

@media (max-width: 600px) {
    .sbs-form-fields { grid-template-columns: 1fr; }
    .sbs-field-group.full-width { grid-column: span 1; }
    .sbs-modal-content { padding: 24px 18px; }
    .sbs-phone-input-wrap { flex-direction: row; }

    .sbs-actions, .sbs-actions-between, .sbs-actions-center {
        flex-direction: column-reverse !important;
        gap: 12px !important;
        width: 100% !important;
    }

    .sbs-btn { width: 100% !important; justify-content: center !important; }
}