:root{color-scheme:light;--navy-deep: #083552;--navy: #0f4d70;--navy-dark: #0a3a57;--accent: #1d7faa;--accent-bright: #2796c4;--accent-deep: #0e4f6e;--accent-soft: #e3f0f7;--blue-pale: #f2f8fc;--white: #ffffff;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-800: #1f2937;--success: #0f9d6b;--success-light: #d6f3e6;--danger: #dc2626;--danger-light: #fee2e2;--warn: #d97706;--warn-light: #fef3c7;--bg: #f5f7fa;--surface: var(--white);--line: #e5eaf0;--text: var(--gray-800);--muted: var(--gray-500);--accent-grad: linear-gradient(135deg, #2391bf 0%, #136284 100%);--radius: 14px;--radius-sm: 9px;--shadow-xs: 0 1px 2px rgba(8, 53, 82, .05);--shadow-sm: 0 1px 2px rgba(8, 53, 82, .06), 0 2px 6px rgba(8, 53, 82, .05);--shadow: 0 6px 18px rgba(8, 53, 82, .1), 0 1px 3px rgba(8, 53, 82, .06);--ring: 0 0 0 3px var(--accent-soft);--font-head: "Montserrat", system-ui, sans-serif;--font-body: "Open Sans", system-ui, sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0}[hidden]{display:none!important}body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}::selection{background:var(--accent-soft);color:var(--accent-deep)}h1,h2,h3{font-family:var(--font-head);color:var(--navy-deep);margin:0 0 .5rem;letter-spacing:-.01em}h1{font-size:1.5rem;font-weight:700}h2{font-size:1.15rem;font-weight:700}h3{font-size:1rem;font-weight:600}p{margin:0 0 .6rem}a{color:var(--accent-deep);text-decoration:none}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.bk-shell{min-height:100vh;display:flex;flex-direction:column;padding:env(safe-area-inset-top,0px) 0 env(safe-area-inset-bottom,0px)}.bk-header,.bk-main,.bk-footer{width:100%;max-width:1080px;margin:0 auto;padding-left:16px;padding-right:16px}.bk-header{padding-top:20px;padding-bottom:16px}.bk-brand{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-head);font-weight:700;font-size:.95rem;color:var(--navy-deep)}.bk-brand:hover{text-decoration:none}.bk-brand img{width:32px;height:32px;display:block}.bk-main{flex:1;padding-bottom:40px}.bk-footer{padding-top:12px;padding-bottom:24px;text-align:center;font-size:.8rem;color:var(--muted)}.bk-footer a{color:var(--muted)}.bk-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.bk-message{padding:28px 24px;max-width:560px;margin:24px auto;text-align:center}.bk-message p:last-child{margin-bottom:0}.bk-muted{color:var(--muted)}.bk-small{font-size:.82rem}.bk-eyebrow{font-family:var(--font-head);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin-bottom:.35rem}.bk-when{font-weight:600;color:var(--navy-deep)}.bk-struck{text-decoration:line-through;color:var(--gray-500)}.bk-notice,.bk-error,.bk-success{border-radius:var(--radius-sm);padding:10px 12px;font-size:.9rem;margin:12px 0}.bk-notice{background:var(--warn-light);color:#7a4a06}.bk-error{background:var(--danger-light);color:#991b1b}.bk-success{background:var(--success-light);color:#0b6b49}button{font-family:var(--font-head);font-weight:600;font-size:.9rem;border:0;border-radius:var(--radius-sm);cursor:pointer;background:none;color:inherit;transition:background .15s,border-color .15s,color .15s,box-shadow .15s,filter .15s}button:disabled{cursor:default}.bk-primary,.bk-secondary,.bk-ghost,.bk-danger{padding:.65rem 1.2rem;display:inline-flex;align-items:center;justify-content:center}.bk-primary{background:var(--accent-grad);color:#fff;box-shadow:0 2px 8px #1d7faa47}.bk-primary:hover:not(:disabled){filter:brightness(1.06)}.bk-primary:disabled{opacity:.55;box-shadow:none}.bk-secondary{background:var(--navy);color:#fff}.bk-secondary:hover:not(:disabled){background:var(--navy-dark)}.bk-ghost{background:var(--white);color:var(--navy);border:1px solid var(--gray-300)}.bk-ghost:hover:not(:disabled){background:var(--gray-50);border-color:var(--gray-400)}.bk-danger{background:var(--danger);color:#fff}.bk-danger:hover:not(:disabled){filter:brightness(.94)}.bk-link-btn{padding:.4rem .5rem;color:var(--accent-deep);font-weight:600}.bk-link-btn:hover:not(:disabled){text-decoration:underline}.bk-secondary:disabled,.bk-ghost:disabled,.bk-danger:disabled,.bk-link-btn:disabled{opacity:.55}.bk-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:18px}.bk-landing{max-width:720px;margin:16px auto 0}.bk-landing-intro{text-align:center;margin-bottom:28px}.bk-landing-intro h1{font-size:1.75rem}.bk-type-cards{list-style:none;margin:0;padding:0;display:grid;gap:14px}.bk-type-card{display:flex;flex-direction:column;gap:4px;padding:20px 22px;color:var(--text);transition:border-color .15s,box-shadow .15s}.bk-type-card:hover{text-decoration:none;border-color:var(--accent);box-shadow:var(--shadow)}.bk-type-card-title{font-family:var(--font-head);font-weight:700;font-size:1.1rem;color:var(--navy-deep)}.bk-type-card-meta{font-size:.85rem;color:var(--muted)}.bk-type-card-desc{margin-top:6px;color:var(--gray-600)}.bk-type-card-cta{margin-top:10px;font-family:var(--font-head);font-weight:600;font-size:.88rem;color:var(--accent)}.bk-event{display:grid;grid-template-columns:1fr;overflow:hidden}.bk-col{padding:24px 22px;min-width:0}.bk-col+.bk-col{border-top:1px solid var(--line)}.bk-type-title{font-size:1.4rem}.bk-meta{list-style:none;margin:0 0 14px;padding:0;display:grid;gap:6px;color:var(--gray-600);font-size:.92rem}.bk-meta li{display:flex;align-items:center;gap:8px}.bk-meta li:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent);flex:none}.bk-desc{color:var(--gray-600);white-space:pre-line}@media (min-width: 900px){.bk-event{grid-template-columns:280px minmax(0,1fr) 260px}.bk-event.is-form{grid-template-columns:280px minmax(0,1fr)}.bk-event .bk-col+.bk-col{border-top:0;border-left:1px solid var(--line)}.bk-col-slots{max-height:560px;overflow-y:auto}}.bk-month-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.bk-month-title{margin:0;font-size:1.05rem}.bk-month-nav{display:flex;gap:6px}.bk-icon-btn{width:34px;height:34px;border-radius:50%;font-size:1.3rem;line-height:1;color:var(--navy);display:inline-flex;align-items:center;justify-content:center}.bk-icon-btn:hover:not(:disabled){background:var(--accent-soft)}.bk-icon-btn:disabled{color:var(--gray-300)}.bk-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.bk-weekday{text-align:center;font-family:var(--font-head);font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);padding-bottom:6px}.bk-day{position:relative;aspect-ratio:1;max-height:52px;width:100%;border-radius:var(--radius-sm);font-family:var(--font-body);font-weight:500;font-size:.92rem;color:var(--gray-400)}.bk-day.is-open{background:var(--accent-soft);color:var(--accent-deep);font-weight:700}.bk-day.is-open:hover{background:#cfe5f1}.bk-day.is-selected,.bk-day.is-selected:hover{background:var(--navy-deep);color:#fff}.bk-day.is-today:after{content:"";position:absolute;left:50%;bottom:6px;width:4px;height:4px;margin-left:-2px;border-radius:50%;background:currentColor}.bk-tz{display:grid;gap:4px;margin-bottom:16px}.bk-tz label{font-size:.78rem;font-weight:600;color:var(--muted)}.bk-tz select,.bk-field input,.bk-field textarea{font:inherit;font-size:.92rem;color:var(--text);background:var(--white);border:1px solid var(--gray-300);border-radius:var(--radius-sm);padding:.55rem .7rem;width:100%}.bk-tz select:focus,.bk-field input:focus,.bk-field textarea:focus{border-color:var(--accent);box-shadow:var(--ring);outline:none}.bk-slots-day{font-size:.95rem;margin-bottom:12px}.bk-slot-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.bk-slot{width:100%;padding:.7rem .8rem;border:1px solid var(--accent);color:var(--accent-deep);background:var(--white);font-size:.95rem}.bk-slot:hover{background:var(--accent);color:#fff}.bk-form{max-width:520px}.bk-back{padding:.3rem 0;margin-bottom:12px;color:var(--accent-deep);font-size:.85rem}.bk-back:hover{text-decoration:underline}.bk-form .bk-when{margin-bottom:18px}.bk-field{display:grid;gap:4px;margin-bottom:14px}.bk-field label{font-size:.85rem;font-weight:600;color:var(--gray-600)}.bk-field textarea{resize:vertical;min-height:96px}.bk-optional{font-weight:400;color:var(--muted)}.bk-field-row{display:grid;gap:0 14px;grid-template-columns:1fr}@media (min-width: 560px){.bk-field-row{grid-template-columns:1fr 1fr}}.bk-hp{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.bk-turnstile{margin:4px 0 14px;min-height:65px}.bk-form .bk-primary{width:100%;margin-top:4px}.bk-form .bk-small{margin-top:8px;text-align:center}.bk-confirm{max-width:560px;margin:24px auto;padding:36px 28px;text-align:center}.bk-check{width:52px;height:52px;margin:0 auto 14px;border-radius:50%;background:var(--success-light);color:var(--success);font-size:1.6rem;font-weight:700;display:flex;align-items:center;justify-content:center}.bk-confirm-title{font-family:var(--font-head);font-weight:600;color:var(--gray-600)}.bk-manage-link{margin-top:18px;padding-top:16px;border-top:1px solid var(--line);font-size:.9rem}.bk-manage{max-width:860px;margin:8px auto 0;display:grid;gap:16px}.bk-summary-card{padding:28px 26px}.bk-reschedule{overflow:hidden}.bk-reschedule-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 22px 0}.bk-reschedule-head h2{margin:0}.bk-reschedule-confirm{padding:18px 22px 24px}.bk-picker{display:grid;grid-template-columns:1fr}@media (min-width: 760px){.bk-picker{grid-template-columns:minmax(0,1fr) 260px}.bk-picker .bk-col+.bk-col{border-top:0;border-left:1px solid var(--line)}}.bk-request-lede{background:var(--blue-pale);border:1px solid var(--accent-soft);border-radius:var(--radius-sm);padding:10px 12px;color:var(--navy-deep);font-size:.92rem;margin-bottom:18px}.bk-request-form h2{margin-bottom:12px}.bk-request-sent{max-width:520px;padding:12px 0;text-align:center}.bk-request-sent .bk-muted{margin-bottom:0}.bk-request-only{text-align:left}.bk-request-only .bk-form{margin:0 auto}
