/* Free-consultation page, new booking flow (/consult-new): blurred calendar "prize", two quick questions, time picker, confirmation. */
.bk { max-width: 760px; margin: 28px auto 0; text-align: left; }
.bk [hidden] { display: none !important; }
.bk-lock { position: relative; min-height: 700px; border-radius: 16px; overflow: hidden; background: #fff; border: 1px solid #e5e7eb; }
.bk-preview { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 14px; padding: 22px; filter: blur(7px); user-select: none; pointer-events: none; opacity: .95; }
.bk-col { display: grid; gap: 8px; align-content: start; }
.bk-col b { font-size: 16px; text-align: center; padding-bottom: 6px; border-bottom: 1px solid #e5e7eb; }
.bk-col span { border: 1px solid #c9a227; border-radius: 8px; padding: 10px 0; text-align: center; font-weight: 600; background: #fffdf5; }
.bk-card, .bk-panel { background: #fff; color: #000; border-top: 6px solid var(--gold-8, #c9a227); border-radius: 10px; box-shadow: 0 10px 40px rgba(16, 25, 53, .22); padding: 26px; }
.bk-card { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); width: min(460px, calc(100% - 24px)); }
.bk-panel { max-width: 560px; margin: 0 auto; }
.bk h3 { font-family: var(--font-headline, "Poppins", sans-serif); font-size: 24px; line-height: 1.25; margin: 0 0 6px; text-align: center; }
.bk-sub { text-align: center; color: #4b5563; margin: 0 0 16px; font-size: 16px; }
.bk .cd-form { gap: 12px; }
.bk .cd-field label { font-size: 15px; }
.bk .cd-form button[type=submit], .bk [data-confirm] { width: 100%; }
.bk select.cd-input { appearance: auto; }
.bk-days { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin: 4px 0 14px; }
.bk-day { border: 1px solid #cbd5e1; background: #fff; border-radius: 999px; padding: 8px 16px; font-weight: 700; cursor: pointer; display: grid; line-height: 1.15; text-align: center; }
.bk-day small { font-weight: 500; font-size: 12px; color: #6b7280; }
.bk-day[aria-pressed=true] { background: var(--gold-gradient, #e3c76b); border-color: #c9a227; }
.bk-times { display: grid; grid-template-columns: repeat(auto-fill, minmax(104px, 1fr)); gap: 8px; margin-bottom: 16px; max-height: 340px; overflow-y: auto; }
.bk-time { border: 1px solid #c9a227; background: #fffdf5; border-radius: 8px; padding: 11px 0; font-weight: 700; cursor: pointer; font-size: 15px; }
.bk-time[aria-pressed=true] { background: var(--gold-gradient, #e3c76b); box-shadow: 0 0 0 2px #101935 inset; }
.bk-steps { margin: 14px 0 0; padding-left: 22px; display: grid; gap: 8px; font-size: 16px; list-style: decimal; }
.bk-steps li { display: list-item; list-style: decimal; }
.bk-when { font-weight: 800; font-size: 20px; text-align: center; margin: 4px 0 8px; }
.bk-ics { display: block; text-align: center; margin: 12px auto 0; font-weight: 700; text-decoration: underline; }
@media (max-width: 640px) { .bk-card, .bk-panel { padding: 22px 18px; } .bk h3 { font-size: 21px; } .bk-lock { min-height: 780px; } }
