/* Rivali replica: Book a detail (#booking). Round 22: primarily white; dark text; Rivali purple (#73378a) for selection and buttons. */
.bk{background:#fff;color:#1d1b20;padding:40px 32px 64px;font-family:Barlow,"Open Sans",sans-serif;min-height:70vh}
.bk *{box-sizing:border-box}.bk__inner{max-width:1180px;margin:0 auto}
.bk .bk__h1{font-family:SweetSansProRegular,Barlow,sans-serif!important;font-weight:400!important;text-transform:uppercase;letter-spacing:.08em;font-size:clamp(24px,2.4vw,34px)!important;color:#111!important;margin:0 0 8px!important;text-align:left!important;line-height:1.15!important}
.bk .bk__lede{color:#4a4650!important;font-size:16px!important;margin:0 0 24px!important;text-align:left!important}
.bk__demo{border:1px dashed #73378a;background:#f7f1fa;padding:10px 14px;color:#4b2259;font-size:14px;margin:0 0 18px}
.bk__form{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:20px 44px}
.bk__form[hidden],.bk__done[hidden]{display:none!important}
.bk .bk__h2{font-family:SweetSansProRegular,Barlow,sans-serif!important;font-weight:400!important;text-transform:uppercase;letter-spacing:.12em;font-size:15px!important;color:#111!important;margin:6px 0 10px!important;text-align:left!important}
.bk__cards{display:grid;gap:10px;margin:0 0 22px}
.bk__card{border:1px solid #d9d5dd;background:#fff;transition:border-color .2s,box-shadow .2s}
.bk__card:hover{border-color:#a98bb8}
.bk__card:has(input:checked){border-color:#73378a;box-shadow:inset 4px 0 0 #73378a;background:#faf6fc}
.bk__pick{display:flex;gap:12px;align-items:flex-start;padding:14px 16px 10px;cursor:pointer;margin:0}
.bk__pick input{width:20px;height:20px;margin:2px 0 0;accent-color:#73378a;flex:none}
.bk__cardhead{display:block;min-width:0}
.bk__name{display:block;font-family:SweetSansProRegular,Barlow,sans-serif;text-transform:uppercase;letter-spacing:.1em;font-size:14px;color:#111}
.bk__sum{display:block;font-size:14.5px;color:#3d3943;margin-top:4px;line-height:1.45}
.bk__dur{display:block;font-size:13px;color:#5a5560;margin-top:6px}.bk__durl{font-weight:600;color:#4b2259}
.bk__inc{padding:0 16px 12px 48px}
.bk__inc summary{cursor:pointer;color:#5e2a73;font-weight:600;font-size:13.5px;letter-spacing:.04em;min-height:32px;display:flex;align-items:center;list-style:none}
.bk__inc summary::-webkit-details-marker{display:none}
.bk__inc summary::before{content:"+";display:inline-grid;place-items:center;width:18px;height:18px;border:1px solid currentColor;border-radius:50%;margin-right:8px;font-size:13px;line-height:1}
.bk__inc[open] summary::before{content:"\2212"}
.bk__inc ul{margin:6px 0 2px;padding:0 0 0 18px;color:#2f2b34;font-size:14px;line-height:1.5}.bk__inc li{margin:0 0 3px}
.bk__f{margin:0 0 12px;min-width:0}.bk__f label{display:block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#4a4650;margin:0 0 6px;font-weight:600}
.bk__opt{text-transform:none;letter-spacing:0;font-weight:400}
.bk__row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.bk__row3{display:grid;grid-template-columns:90px 1fr 1fr;gap:12px}
.bk input:not([type=radio]),.bk select,.bk textarea{width:100%;background:#fff;color:#111;border:1px solid #b9b4bf;border-radius:0;padding:11px 12px;font:400 16px Barlow,sans-serif;min-height:48px;color-scheme:light}
.bk input:not([type=radio]):focus,.bk select:focus,.bk textarea:focus{border-color:#73378a}
.bk input:focus-visible,.bk select:focus-visible,.bk textarea:focus-visible,.bk button:focus-visible,.bk a:focus-visible,.bk summary:focus-visible,.bk__card:has(input:focus-visible){outline:2px solid #73378a;outline-offset:2px}
.bk .bk__fine{font-size:13.5px!important;color:#55505b!important;margin:0 0 14px!important;line-height:1.45!important}.bk .bk__fine a{color:#5e2a73!important;font-weight:600}
.bk .bk__quote{background:#f4f1f6;border-left:3px solid #73378a;padding:9px 12px;margin:0 0 12px!important;color:#2f2b34!important}
.bk__hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.bk__err{color:#a3122c;font-size:14px;margin:0 0 10px;font-weight:600}
.bk__submit{width:100%;min-height:54px;background:#73378a;border:1px solid #73378a;color:#fff;font:600 15px Barlow,sans-serif;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;margin:0 0 12px}
.bk__submit:hover{background:#5e2a73}.bk__submit:disabled{opacity:.6;cursor:wait}
.bk__done{border:1px solid #73378a;background:#faf6fc;padding:22px 22px 10px;max-width:640px;outline:none}
.bk__donetitle{font-family:SweetSansProRegular,Barlow,sans-serif;text-transform:uppercase;letter-spacing:.08em;font-size:20px;color:#111;margin:0 0 8px}
html:has(#booking) .np-mhead,html:has(#booking) .np-mhead *{background-image:none!important}html:has(#booking) .np-mhead{background-color:#000!important}
@media (max-width:900px){.bk{padding:24px 16px 44px}.bk__form{grid-template-columns:1fr}.bk__row3{grid-template-columns:80px 1fr 1fr}.bk__inc{padding-left:20px}.bk__inc ul{padding-left:22px}}
@media (max-width:420px){.bk__row2{grid-template-columns:1fr}.bk__row3{grid-template-columns:1fr 1fr}.bk__row3 .bk__f:first-child{grid-column:1/-1}}
