.language-bar{background:#eef3f1;border-bottom:1px solid var(--line);padding:8px 4%;font-size:13px}.language-bar label{display:flex;align-items:center;justify-content:flex-end;gap:12px}.language-bar select{font:inherit;min-height:40px;border:1px solid #bdcdc5;border-radius:6px;background:#fff;color:var(--ink);padding:5px 30px 5px 10px;width:auto}
#booking{max-width:850px;margin:auto}#booking .simple-booking-heading{margin-bottom:26px}#booking .simple-booking-heading h1{font-size:32px}#bookingContinue{margin-top:20px;min-height:52px;min-width:200px;justify-content:space-between;gap:36px}#bookingAvailability{position:static;width:100%;padding:26px}#bookingAvailability h2{font-size:20px}.available-hours-heading{font-size:18px;margin:24px 0 12px}#booking .booking-calendar-nav{margin-top:24px}#booking .booking-time-slots{grid-template-columns:repeat(4,minmax(0,1fr))}
#booking-form{max-width:780px;margin:auto}#booking-form .page-heading{margin-bottom:24px}#booking-form h1{font-size:30px;margin:18px 0 10px}.simple-booking-form{padding:28px}#booking-form #bookingForm{display:block}#booking-form .contact-body{padding:0;overflow:visible}#booking-form .fields{margin:0;gap:18px}#booking-form label{font-size:14px;line-height:1.65}#booking-form input,#booking-form select{font:inherit;font-size:16px;min-height:48px;width:100%;margin-top:6px}#booking-form .contact-fields{grid-template-columns:1fr 1fr;gap:18px}#booking-form .contact-consents input{width:20px;height:20px;min-height:20px;flex-shrink:0;margin:0}#booking-form .check-row{display:flex;align-items:center;gap:10px;min-height:44px}#booking-form .selected-booking-time{font-size:14px;line-height:1.7;padding:14px;background:var(--paper);margin:20px 0 16px;border-radius:8px}#booking-form .contact-footer{padding:20px 0 0;margin-top:20px}#booking-form .required-mark{font-size:12px;color:var(--muted)}#booking-form [aria-invalid=true]{border-color:#a32f32}#booking-form .contact-demo-note{margin-top:18px}#booking-form .contact-consent summary{padding-left:0;display:block;padding-top:10px}#booking-form .consent-detail{font-size:13px}
html:not([lang=ko]) h1,html:not([lang=ko]) h2,html:not([lang=ko]) h3{letter-spacing:-.025em;word-break:normal}html:not([lang=ko]) .site-header nav{gap:18px}html:not([lang=ko]) .site-header nav>a{white-space:normal}
@media(max-width:600px){.language-bar{padding:7px 16px}.language-bar label{justify-content:space-between;gap:8px;font-size:12px}.language-bar select{max-width:130px}#booking,#booking-form{padding-left:16px;padding-right:16px}#bookingAvailability{padding:20px 12px}#booking .simple-booking-heading h1,#booking-form h1{font-size:26px}#bookingContinue{width:100%;justify-content:center}.simple-booking-form{padding:20px 16px}#booking-form .contact-fields{grid-template-columns:1fr}#booking-form .fields{gap:16px}#booking .booking-time-slots{grid-template-columns:repeat(3,minmax(0,1fr))}.language-bar+header{margin-top:0}}
/* Keep the language prompt compact and avoid repeating the calendar heading. */
.language-bar label{flex-direction:row}#bookingCalendarTitle{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}#bookingAvailability>.field-help:first-of-type{display:none}#booking .booking-calendar-nav{margin-top:0}
@media(max-width:600px){html:not([lang=ko]) .site-header nav{gap:12px}html:not([lang=ko]) .site-header nav>a{font-size:12px;white-space:nowrap}.language-bar label{font-size:12px}}
html:not([lang=ko]) .space-note{white-space:normal;overflow-wrap:anywhere}html:not([lang=ko]) #about img{max-width:100%}html:not([lang=ko]) #about article>div{min-width:0}
html:not([lang=ko]) .space-story>*{min-width:0}
/* CJK paragraphs must wrap at natural character boundaries in translated pages. */
html:not([lang=ko]) .page p,html:not([lang=ko]) .page li,html:not([lang=ko]) .page dd{word-break:normal;overflow-wrap:anywhere}
