.availability{background:radial-gradient(ellipse at top left,#0a3154,transparent 65%),#03070d;color:#fff}.availability-main{max-width:1120px;margin:auto;padding:42px 28px 64px}.availability-brand{display:inline-block;margin-bottom:60px;font:1.65rem Georgia,serif;text-decoration:none}.availability-brand em{color:#cfe8ff}.availability h1{font-size:clamp(2.7rem,5.5vw,4.7rem);line-height:1.05;letter-spacing:-.035em}.wait-layout{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.availability p{color:#d8e2ed;line-height:1.7}.availability-card{padding:32px;background:#f7f9fc;color:#0c1826;border-radius:16px;border:1px solid #cfe8ff}.availability-card h2{font-size:2rem;line-height:1.15}.availability-card label{display:block;font-size:1rem;font-weight:600;margin-bottom:20px}.availability-card input:not([type=checkbox]):not([type=radio]){display:block;width:100%;min-height:52px;margin-top:8px;padding:12px;border:1px solid #8998a8;border-radius:6px;background:white;font:inherit;color:#0c1826}.availability-card .consent,.availability-card .choice{display:flex;align-items:flex-start;gap:12px;font-weight:400}.availability-card input[type=checkbox],.availability-card input[type=radio]{width:22px;height:22px;flex-shrink:0;margin-top:4px;accent-color:#0a3154}.availability-card p{color:#394e63}.availability-card details{margin-bottom:24px;font-size:1rem}.availability-card summary{cursor:pointer}.availability-card .button{background:#0a3154;color:white;cursor:pointer;border-radius:6px;font-size:1.05rem}.availability-card .button:disabled{opacity:.65;cursor:wait}.opening-date{padding:18px 0;border-top:1px solid #526d86;border-bottom:1px solid #526d86}.availability small,.help,.support{font-size:1rem}.availability-footer{padding:30px 24px;border-top:1px solid #263a4b;text-align:center;font:1.5rem Georgia,serif}.availability-footer small{display:block;margin-top:10px;font: .9rem/1.6 Arial,sans-serif;color:#b6c6d5}.trap{position:absolute;left:-10000px}.admin-card{max-width:800px}.availability fieldset{border:0;padding:0;margin:0 0 20px}.availability legend{font-size:1.2rem;font-weight:bold;margin-bottom:16px}.date-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.availability input:focus-visible{outline:3px solid #438fc6;outline-offset:3px}#form-message,#save-message{margin:18px 0 0}.support{margin:24px 0 0;overflow-wrap:anywhere}@media(max-width:760px){.wait-layout{grid-template-columns:1fr;gap:28px}.availability-main{padding:28px 20px 44px}.availability-brand{margin-bottom:36px}.availability-card{padding:24px 20px}.date-grid{grid-template-columns:1fr;gap:0}}
.wait-layout{gap:clamp(32px,5vw,72px);align-items:start;padding:12px 0 32px}.wait-intro{padding-top:18px}.wait-intro .kicker{display:flex;align-items:center;gap:12px;font-size:.875rem;letter-spacing:.14em;margin-bottom:26px}.wait-intro .kicker:before{content:"";width:34px;height:1px;background:#a7cceb}.wait-intro h1{margin-bottom:30px;line-height:1.08}.wait-description{font-size:1.1875rem;line-height:1.65;max-width:520px}.wait-description p{line-height:inherit;margin-bottom:18px;color:#e0e9f2}.wait-intro .opening-date{display:grid;gap:7px;margin:30px 0;padding:18px 22px;border:0;border-left:2px solid #a7cceb;background:linear-gradient(90deg,rgba(207,232,255,.07),transparent);border-radius:0 12px 12px 0}.opening-label{font-size:.875rem;letter-spacing:.12em;color:#cfe8ff}.opening-day{font-size:1.125rem;color:#e0e9f2}.opening-time{font-size:1.25rem;font-weight:500;font-variant-numeric:tabular-nums;line-height:1.5;letter-spacing:.02em}.opening-time span{margin-left:5px}.wait-intro .wait-emotion{max-width:470px;font-size:1.125rem;line-height:1.7;color:#c9d9e8;margin:30px 0 0}.wait-emotion strong{font-weight:500;color:white}.wait-card{background:linear-gradient(145deg,#fff,#f2f6fa);box-shadow:0 22px 64px rgba(0,0,0,.25),0 1px 0 rgba(255,255,255,.65) inset;border:1px solid #d5e2ef;padding:34px;border-radius:16px}.wait-card h2{font-size:2rem;margin-bottom:28px;letter-spacing:-.025em}.wait-card label{font-size:1.0625rem;margin-bottom:22px}.wait-card input:not([type=checkbox]):not([type=radio]){min-height:54px;font-size:1.125rem;border-color:#93a4b5;border-radius:8px}.wait-card .consent{align-items:center;font-size:1rem;line-height:1.55;margin-top:25px;margin-bottom:16px}.wait-card .consent input{margin-top:0}.wait-card details{font-size:1rem;margin-bottom:26px}.wait-card summary{text-decoration:underline;text-underline-offset:4px;color:#31536e}.wait-card details p{margin:12px 0 0;font-size:1rem}.wait-card .button{min-height:56px;font-size:1.125rem;border-radius:8px;background:linear-gradient(110deg,#0a3154,#16486d);transition:filter .2s ease;transform:none}.wait-card .button:hover{filter:brightness(1.12)}.wait-card .support{font-size:1rem;margin-top:26px;padding-top:22px;border-top:1px solid #d6e0e9}.wait-card .support a{display:block;text-underline-offset:4px}.wait-success{padding:10px 0}.wait-success h3{font-size:1.75rem;line-height:1.3;margin-bottom:20px}.wait-success p{font-size:1.125rem;line-height:1.65}.wait-success p:last-child{margin-bottom:0}@media(max-width:760px){.wait-layout{padding-top:0;gap:32px}.wait-intro{padding-top:0}.wait-intro h1{font-size:clamp(2.65rem,9.7vw,3.7rem);line-height:1.1}.wait-card{padding:26px 24px}.wait-description{font-size:1.1875rem}.wait-intro .opening-date{margin:26px 0;padding:16px 20px}.wait-intro .wait-emotion{margin-top:26px}.wait-card h2{font-size:1.9rem}}@media(prefers-reduced-motion:reduce){.wait-card .button{transition:none}}
/* Compact mobile introduction: bring the waitlist form into view sooner. */
@media(max-width:760px){
  .availability:has(.wait-layout) .availability-main{padding-top:22px}
  .availability:has(.wait-layout) .availability-brand{margin-bottom:24px}
  .wait-layout{gap:20px}
  .wait-intro .kicker{margin-bottom:18px}
  .wait-intro h1{margin-bottom:22px}
  .wait-description p{margin-bottom:14px}
  .wait-intro .opening-date{margin:20px 0;padding:12px 18px;gap:4px}
  .wait-intro .wait-emotion{font-size:1rem;line-height:1.5;margin-top:16px;margin-bottom:0;max-width:100%}
}
.wait-intro .opening-inline{display:block;font-size:.875rem;line-height:1.6;padding:10px 0 10px 10px;letter-spacing:0;color:#cfe8ff}.opening-inline strong{font-weight:500;color:#fff}
.wait-intro .opening-inline{font-size:1rem;line-height:1.55}
.page-access{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:800px;margin:28px 0 36px}.page-access a{display:flex;flex-direction:column;gap:8px;padding:22px;border:1px solid #496985;border-radius:12px;text-decoration:none;background:linear-gradient(140deg,#102e48,#081827)}.page-access a:hover{border-color:#cfe8ff}.page-access span{font-size:.875rem;color:#b9d6ed}.page-access strong{font:1.45rem/1.25 Georgia,serif;color:#fff}.page-access small{font-size:1rem;color:#d4e0eb}.admin-card{scroll-margin-top:24px}
@media(max-width:760px){.availability:has(.wait-layout) .availability-brand{font-size:1.3rem;margin-bottom:20px}.wait-intro .opening-inline{font-size:clamp(.9375rem,3.9vw,1rem)}.page-access{grid-template-columns:1fr}.page-access a{padding:18px 20px}}
