.bk-vacation { color:#242321; background:#fbf4f6; border-block:1px solid #ead4dc; font-size:16px; line-height:1.5; }
.bk-vacation__inner { max-width:1440px; margin-inline:auto; padding:18px 32px; display:flex; align-items:center; gap:18px; }
.bk-vacation__icon { flex:0 0 auto; color:#ae0a3b; }
.bk-vacation__copy { min-width:0; flex:1; overflow-wrap:anywhere; }
.bk-vacation__copy strong { display:block; font-size:15px; font-weight:700; }
.bk-vacation__copy p { margin:3px 0 0; font-size:14px; }
.bk-vacation__extra { color:#4b4743; }
.bk-vacation__details { flex:0 0 auto; display:flex; align-items:center; gap:20px; padding:9px 14px; min-height:44px; border:1px solid #c9a6b2; border-radius:4px; background:transparent; color:#8e0830; font:inherit; font-size:14px; font-weight:700; cursor:pointer; }
.bk-vacation__details[hidden] { display:none; }
.bk-vacation-dialog { width:calc(100% - 32px); max-width:540px; max-height:calc(100vh - 32px); max-height:calc(100dvh - 32px); box-sizing:border-box; padding:0; margin:auto; border:1px solid #e5e5e5; border-radius:6px; background:#fff; color:#242321; overflow:auto; overscroll-behavior:contain; box-shadow:0 24px 80px rgb(0 0 0 / 18%); text-align:left; font:inherit; }
.bk-vacation-dialog:not([open]) { display:none; }
.bk-vacation-dialog::backdrop { background:rgb(25 23 24 / 56%); }
.bk-vacation-dialog__content { position:relative; padding:38px 36px 32px; border-top:5px solid #ae0a3b; }
.bk-vacation-dialog__close { position:absolute; top:8px; right:8px; display:grid; place-items:center; width:44px; height:44px; border:0; border-radius:4px; color:#4b4743; background:transparent; font:inherit; font-size:30px; cursor:pointer; }
.bk-vacation-dialog__eyebrow { margin:0 28px 16px 0; color:#8e0830; font-size:11px; line-height:1.5; font-weight:700; letter-spacing:.08em; text-transform:uppercase; overflow-wrap:anywhere; }
.bk-vacation-dialog h2 { margin:0 0 12px; color:#242321; font-size:30px; line-height:1.15; letter-spacing:-.025em; font-weight:700; overflow-wrap:anywhere; }
.bk-vacation-dialog__period { margin:0 0 24px; color:#8e0830; font-size:20px; line-height:1.4; font-weight:600; overflow-wrap:anywhere; }
.bk-vacation-dialog__description p { margin:0 0 14px; color:#4b4743; font-size:15px; line-height:1.65; overflow-wrap:anywhere; }
.bk-vacation-dialog__resume { display:flex; flex-direction:column; gap:5px; margin-top:24px; padding:17px 20px; border-left:3px solid #ae0a3b; background:#fbf4f6; }
.bk-vacation-dialog__resume span { color:#4b4743; font-size:13px; }
.bk-vacation-dialog__resume strong { font-size:25px; line-height:1.3; }
.bk-vacation-dialog__thanks { margin:20px 0; color:#4b4743; font-size:14px; }
.bk-vacation-dialog__confirm { display:block; width:100%; min-height:48px; padding:12px 20px; border:1px solid #ae0a3b; border-radius:4px; color:#fff; background:#ae0a3b; font:inherit; font-size:15px; font-weight:700; cursor:pointer; }
.bk-vacation button:focus-visible { outline:3px solid #ae0a3b; outline-offset:3px; }
.bk-vacation button:active { transform:scale(.98); }
@media (hover:hover) and (pointer:fine) {
 .bk-vacation__details:hover,.bk-vacation-dialog__close:hover { background:#f3e6eb; }
 .bk-vacation-dialog__confirm:hover { background:#8e0830; }
}
@media (max-width:600px) {
 .bk-vacation__inner { padding:16px; gap:12px; align-items:flex-start; flex-wrap:wrap; }
 .bk-vacation__copy { flex-basis:calc(100% - 38px); }
 .bk-vacation__details { margin-left:38px; }
 .bk-vacation-dialog__content { padding:36px 24px 24px; }
 .bk-vacation-dialog h2 { font-size:27px; }
 .bk-vacation-dialog__period { font-size:18px; }
}
@media (prefers-reduced-motion:reduce) { .bk-vacation button:active { transform:none; } }
@media print { .bk-vacation__details,.bk-vacation-dialog { display:none !important; } }
