/* ---------- 2. booking request ---------- */
.book-grid{display:grid;grid-template-columns:.86fr 1.14fr;gap:52px;align-items:start}
.book-intro h2{font-size:clamp(2rem,4.4vw,3.1rem);margin:14px 0 12px}
.book-intro > p{color:var(--dim);font-size:1.05rem;max-width:34em}
.book-points{list-style:none;margin:24px 0 0;display:grid;gap:12px}
.book-points li{display:flex;align-items:center;gap:12px;color:var(--txt-soft);font-size:.98rem}
.book-points svg{width:20px;height:20px;color:var(--accent);flex:none}
.book-card{background:var(--card);border:1px solid var(--line2);border-top:3px solid var(--accent);border-radius:var(--radius);padding:30px;box-shadow:0 26px 60px -40px rgba(0,0,0,.9)}
.bookform .field{margin-bottom:16px}
.bookform textarea{min-height:92px;resize:vertical}
.bookform input[type="date"]{color-scheme:dark;-webkit-appearance:none;appearance:none;min-height:51px;display:block;text-align:left}
.bookform input[type="date"]::-webkit-date-and-time-value{text-align:left}
.bookform label .opt{color:var(--faint);font-weight:600;letter-spacing:.06em}
.bookform .fnote{font-size:.8rem;color:var(--faint);margin:-8px 0 16px}
.bookform .btn[disabled]{opacity:.65;cursor:progress;transform:none}
.book-err{display:none;margin-top:14px;padding:12px 14px;border-radius:12px;border:1px solid rgba(225,29,46,.5);background:var(--accent-soft);color:var(--txt);font-size:.92rem}
.book-err a{text-decoration:underline}
.book-ok{display:none;text-align:center;padding:34px 8px}
.book-ok svg{width:54px;height:54px;color:var(--accent);margin:0 auto 14px;display:block}
.book-ok h3{font-size:1.5rem;margin-bottom:8px}
.book-ok p{color:var(--txt-soft);font-size:1.05rem}
.book-card.sent .bookform{display:none}
.book-card.sent .book-ok{display:block}

/* ---------- 3. Nick line ---------- */
.nick{margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}
.nick-line{color:var(--txt-soft);font-size:.95rem;margin:0 0 14px}
.nick-line b{color:var(--txt)}
.nick-actions{display:flex;gap:10px;flex-wrap:wrap}
.nick-actions .btn{flex:1 1 140px;width:auto;margin-top:0;padding:.75rem 1.2rem}
.nick-actions .btn svg{color:var(--accent)}
.info-card .nick-line,.fallback-card .nick-line{margin:16px 0 18px}
.book-intro .nick{max-width:420px}

@media(max-width:900px){
  .book-grid{grid-template-columns:1fr;gap:28px}
  .book-intro .nick,.book-points{display:none}
}
@media(max-width:520px){.book-card{padding:22px 18px}}

.b-booking-section{padding-top:65px;margin-bottom:45px}.b-booking-section .book-wrap{display:grid;grid-template-columns:1.5fr 1fr;gap:22px;align-items:start}.b-booking-section .book-card,.b-booking-section .fallback-card{border-radius:24px;background:#181818;padding:28px}.b-booking-section .row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.b-booking-section .field{margin-bottom:16px}.b-booking-section label{display:block;color:#ddd;font-size:12px;margin-bottom:6px}.b-booking-section input,.b-booking-section select,.b-booking-section textarea{width:100%;background:#101010;color:#fff;border:1px solid #555;border-radius:10px;padding:12px;min-height:48px}.b-booking-section .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:#c9283c;color:#fff;border:0;border-radius:10px;padding:14px 20px;font-size:12px;cursor:pointer}.b-booking-section .btn svg{width:18px;height:18px}.b-booking-section .hint,.b-booking-section .nick-line{font-size:12px;color:#ccc;margin-top:14px}.b-booking-section .fallback-actions{display:flex;gap:12px;flex-wrap:wrap}.b-booking-section .bk-ic{display:none}.b-booking-section .fallback-card h3{font-size:32px;margin:0 0 20px}.b-booking-section .b-heading h2{font-size:44px;margin:10px 0 24px}@media(max-width:760px){.b-booking-section .book-wrap,.b-booking-section .row{grid-template-columns:1fr}.b-booking-section .book-card,.b-booking-section .fallback-card{padding:24px}}