.client-page { background: #090c10; }
.client-header nav { display:flex; align-items:center; gap:.6rem; font-size:.875rem; }
.game-registration-note { padding:1.25rem; margin-bottom:1.5rem; background:#dbeefa; border:1px solid #aacddd; color:#132a38; font-size:1rem; }
.game-registration-note p { margin:.65rem 0; line-height:1.5; }
.game-registration-note a { display:inline-block; text-decoration:underline; }
.game-registration-note button { display:block; margin-top:.8rem; padding:.7rem; cursor:pointer; }
.game-registration-note button[hidden] { display:none; }
.client-header { display: flex; justify-content: space-between; align-items: center; gap: 1.5rem; max-width: 1500px; margin: 0 auto; padding: 1.7rem var(--page-pad); border-bottom: 1px solid var(--line-dark); }
.client-header > a:last-child { color: #c8cdd3; font-size: .875rem; }
.client-layout { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); align-items: start; gap: clamp(2rem, 5vw, 5rem); max-width: 1500px; margin: 0 auto; padding: clamp(3rem, 6vw, 6rem) var(--page-pad); }
.client-intro { padding-top: 1rem; }
.client-intro h1 { margin: 1.5rem 0 2rem; font-size: clamp(3.4rem, 5.4vw, 6rem); font-weight: 600; line-height: .96; letter-spacing: -.065em; }
.client-intro h1 em { color: var(--blue); font-style: normal; }
.client-intro > p { max-width: 28rem; color: #acb4be; font-size: 1.06rem; line-height: 1.7; }
.client-detail { display: flex; align-items: flex-start; gap: 1.3rem; max-width: 28rem; margin-top: 2rem; padding-top: 1.5rem; border-top: 1px solid var(--line-dark); }
.client-detail > span { color: var(--blue); font-family: var(--mono); font-size: .9rem; }
.client-detail strong { font-size: 1rem; font-weight: 500; }
.client-detail p { margin: .5rem 0 0; color: #969faa; font-size: .95rem; line-height: 1.6; }
.client-help { display: grid; gap: .4rem; margin-top: 2.5rem; }
.client-help > span { color: #969faa; font-size: .875rem; }
.client-help a { width: fit-content; border-bottom: 1px solid #526577; padding-bottom: .2rem; }
.client-share { margin-top: 1.7rem; color: var(--blue); font-size: .8rem; cursor: pointer; }
.client-intro .share-status { min-height: 1.5em; font-size: .8rem; }
.client-form-panel { min-width: 0; padding: clamp(1.5rem, 3vw, 3rem); background: var(--paper); color: var(--ink); }
.client-form-heading { border-bottom: 1px solid var(--line-light); padding-bottom: 1.5rem; }
.client-form-heading h2, .booking-panel h2 { margin: 1rem 0; font-size: clamp(2.5rem, 4.1vw, 4rem); line-height: .96; letter-spacing: -.06em; }
.client-form-heading p { margin: 0; color: #555c62; font-size: .85rem; }
.registration-form { gap: 1.5rem 1.2rem; }
.registration-form label > span { font-size: .7rem; }
.registration-form small { font-family: var(--sans); font-size: inherit; text-transform: none; letter-spacing: 0; }
.registration-form .briefing-summary textarea { font-size: .83rem; }
.registration-form input[type="submit"] { width: 100%; min-height: 3.75rem; font-size: .95rem; }
.registration-form .form-hint { color: #4d555f; font-size: .84rem; }
.client-footer { display: flex; justify-content: space-between; gap: 1rem; max-width: 1500px; margin: 0 auto; padding: 1.5rem var(--page-pad) 2.5rem; border-top: 1px solid var(--line-dark); color: #aab2bb; font-size: .8rem; }
.scheduling-page .client-layout { min-height: calc(100svh - 180px); align-items: center; }
.scheduling-page .client-intro > .text-link { display: inline-block; margin-top: 2rem; }
.booking-days { margin: 2rem 0 1.5rem; font-size: 1rem; font-weight: 600; }
.booking-windows { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; padding: 1.5rem 0; border-top: 1px solid var(--line-light); border-bottom: 1px solid var(--line-light); }
.booking-windows span { display: block; margin-bottom: .5rem; color: #535d66; font-family: var(--mono); font-size: .75rem; }
.booking-windows strong { display: block; font-size: clamp(1.1rem, 1.6vw, 1.5rem); font-weight: 500; white-space: nowrap; }
.booking-windows i { font-style: normal; color: #6a7986; }
.booking-timezone { margin: 1rem 0; color: #535d66; font-size: .8rem; }
.booking-request { margin-top: 2rem; }
.booking-request > p { color: #434c55; line-height: 1.65; }
.booking-request .button { margin-top: .5rem; width: 100%; padding-right: 1rem; padding-left: 1rem; font-size: .8rem; text-align: center; }
.booking-request .booking-note { margin-top: 1rem; font-size: .78rem; }
@media (max-width: 980px) {
  .client-layout { grid-template-columns: 1fr; max-width: 760px; }
  .client-intro h1 { font-size: clamp(3.2rem, 8vw, 5rem); }
  .client-intro > p { max-width: 37rem; }
  .client-detail { max-width: none; }
  .scheduling-page .client-layout { align-items: start; }
}
@media (max-width: 480px) {
  .client-header .brand { width: 6.5rem; }
  .client-header > a:last-child { font-size: .8rem; }
  .client-layout { padding-top: 2rem; }
  .client-intro h1 { font-size: 3.05rem; }
  .client-footer { flex-direction: column; }
  .booking-windows { grid-template-columns: 1fr; gap: 1.5rem; }
  .booking-windows strong { font-size: 1.5rem; }
}
.registration-form label>span{font-size:14px}.registration-form input,.registration-form select,.registration-form textarea{font-size:16px}.client-header nav{flex-wrap:wrap;justify-content:flex-end}.game-registration-note .button{text-decoration:none;margin-top:8px}.booking-note,.booking-timezone{font-size:14px!important}
