/*
 * Booking module styles.
 *
 * Part 1: the booking card rules of the design (the three single-tour pages carry the same rules in their page CSS).
 * They are repeated here, scoped under .mk-bk, so the card renders on every tour page and in the thank-you page without
 * depending on a page stylesheet, and they cannot change other pages (the tailor-made form also uses .mk-fl / .mk-stp).
 * Part 2: new elements of the module (consent, errors, honeypot, thank-you page), mk- design tokens only.
 */
.mk-bk{scroll-margin-top:150px;border-radius:24px;background:#fff;border:1px solid var(--mk-line);box-shadow:0 30px 60px -36px rgba(16,43,69,.55);padding:20px;display:grid;gap:14px}
.mk-bk-p{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.mk-bk-p>div{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px}
.mk-bk-p small{flex-basis:100%;font-size:12.5px;font-weight:700;color:var(--mk-text)}
.mk-bk-p s{font-size:16px;color:var(--mk-text)}
.mk-bk-p b{font-size:34px;font-weight:800;color:var(--mk-ink);letter-spacing:-.03em;line-height:1}
.mk-bk-p span:not(.mk-sale){font-size:13.5px;font-weight:600}
.mk-bk .mk-sale{position:static;background:var(--mk-orange);color:#fff;font-size:12px;font-weight:800;padding:6px 10px;border-radius:999px;white-space:nowrap}
.mk-bk-tabs{display:grid;grid-template-columns:1fr 1fr;padding:4px;border-radius:14px;background:var(--mk-soft)}
.mk-bk-tabs button{height:42px;border:0;border-radius:11px;background:none;font-weight:800;font-size:14px;color:var(--mk-text);display:inline-flex;align-items:center;justify-content:center;gap:7px}
.mk-bk-tabs button[aria-selected="true"]{background:#fff;color:var(--mk-ink);box-shadow:0 4px 12px -6px rgba(16,43,69,.4)}
.mk-bk[data-mode="booking_only"] .mk-bk-tabs,.mk-bk[data-mode="inquiry_only"] .mk-bk-tabs{display:none}
.mk-bk-f{display:grid;gap:12px}
.mk-bstep{display:grid;gap:12px}
.mk-bk .mk-fl{display:grid;gap:5px}
.mk-bk .mk-fl span{font-size:12.5px;font-weight:800;color:var(--mk-ink)}
.mk-bk .mk-fl input,.mk-bk .mk-fl textarea{width:100%;min-height:46px;border-radius:12px;border:1.5px solid var(--mk-line);padding:10px 12px;font:inherit;font-size:15px;color:var(--mk-ink);background:#fff}
.mk-bk .mk-fl textarea{min-height:84px;resize:vertical}
.mk-bk .mk-fl input:focus,.mk-bk .mk-fl textarea:focus{outline:none;border-color:var(--mk-blue);box-shadow:0 0 0 4px var(--mk-tint)}
.mk-bk .mk-fl input.is-err{border-color:#C8432B}
.mk-bk .mk-f2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mk-bk .mk-f2 .mk-full{grid-column:1/-1}
.mk-bk .mk-f2>*,.mk-bk .mk-fl input{min-width:0}
.mk-bk{min-width:0}
.mk-bk .mk-trv{border:1.5px solid var(--mk-line);border-radius:14px;padding:4px 12px}
.mk-bk .mk-trv-r{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 0}
.mk-bk .mk-trv-r+.mk-trv-r{border-top:1px solid var(--mk-line)}
.mk-bk .mk-trv-r span{display:flex;flex-direction:column;line-height:1.25}
.mk-bk .mk-trv-r b{font-size:14.5px;color:var(--mk-ink)}
.mk-bk .mk-trv-r small{font-size:12px;color:var(--mk-text)}
.mk-bk .mk-stp{display:flex;align-items:center;gap:6px}
.mk-bk .mk-stp button{width:34px;height:34px;border-radius:50%;border:1.5px solid var(--mk-line);background:#fff;font-size:18px;font-weight:700;color:var(--mk-ink);line-height:1}
.mk-bk .mk-stp button:hover:not(:disabled){border-color:var(--mk-blue);color:var(--mk-blue)}
.mk-bk .mk-stp button:disabled{opacity:.35}
.mk-bk .mk-stp output{min-width:22px;text-align:center;font-weight:800;color:var(--mk-ink)}
.mk-bk .mk-sum{border-radius:14px;background:var(--mk-soft);padding:12px 14px;display:grid;gap:6px;font-size:14px}
.mk-bk .mk-sum>div{display:flex;justify-content:space-between;gap:10px}
.mk-bk .mk-sum .st{padding-top:8px;border-top:1px dashed #C9D6DF;font-weight:800;color:var(--mk-ink);font-size:15.5px}
.mk-bk .mk-sum .sd{color:var(--mk-blue);font-weight:800}
.mk-bk .mk-sum .sx{font-size:12.5px;color:var(--mk-text)}
.mk-bk .mk-sum .hol{color:var(--mk-orange-ink);font-weight:700}
.mk-bk-go{width:100%;min-height:54px;font-size:16px;border-radius:14px}
.mk-bk .mk-back{justify-self:start;border:0;background:none;display:inline-flex;align-items:center;gap:4px;font-weight:800;font-size:13.5px;color:var(--mk-blue);padding:0}
.mk-bk .mk-sec-note{display:flex;gap:8px;align-items:flex-start;margin:0;font-size:12.5px;color:var(--mk-text)}
.mk-bk .mk-sec-note .mk-i-sm{flex:none;color:#0E9F6E}
.mk-bk .mk-done{display:grid;justify-items:center;text-align:center;gap:4px;padding:18px;border-radius:14px;background:#F2FBF7}
.mk-bk .mk-done .mk-i{width:40px;height:40px;color:#0E9F6E}
.mk-bk .mk-done b{color:var(--mk-ink)}
.mk-bk .mk-done span{font-size:13.5px}
.mk-bk-t{list-style:none;margin:0;padding:12px 0 0;border-top:1px solid var(--mk-line);display:grid;gap:8px}
.mk-bk-t li{display:flex;gap:9px;align-items:center;font-size:13.5px;font-weight:600;color:var(--mk-ink)}
.mk-bk-t .mk-i-sm{color:#0E9F6E}
.mk-bk-wa{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:18px;border:1px solid var(--mk-line);background:#fff}
.mk-bk-wa:hover{border-color:var(--mk-wa)}
.mk-bk-wa span{display:flex;flex-direction:column}
.mk-bk-wa b{font-size:14.5px;color:var(--mk-ink)}
.mk-bk-wa small{font-size:12.5px}
.mk-mbk{display:none}
.mk-bk .mk-bcat{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.mk-bk .mk-bcat button{height:42px;border-radius:11px;border:1.5px solid var(--mk-line);background:#fff;font-weight:800;font-size:13.5px;color:var(--mk-ink)}
.mk-bk .mk-bcat button[aria-checked="true"]{border-color:var(--mk-blue);background:var(--mk-tint);color:var(--mk-blue)}
.mk-bk .mk-bseason{margin:-4px 0 0;font-size:12.5px;font-weight:700;color:var(--mk-blue)}
.mk-bk .mk-bprog{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.mk-bk .mk-bprog button{display:flex;flex-direction:column;align-items:flex-start;padding:9px 12px;border-radius:12px;border:1.5px solid var(--mk-line);background:#fff;color:var(--mk-ink);text-align:left}
.mk-bk .mk-bprog b{font-size:14.5px}
.mk-bk .mk-bprog small{font-size:12px;color:var(--mk-text)}
.mk-bk .mk-bprog button[aria-checked="true"]{border-color:var(--mk-blue);background:var(--mk-tint)}
.mk-bk .mk-bprog button[aria-checked="true"] small{color:var(--mk-blue)}
.mk-bk .mk-sail{display:flex;flex-wrap:wrap;gap:6px;margin-top:-4px}
.mk-bk .mk-sail button{height:32px;padding:0 11px;border-radius:999px;border:1.5px solid var(--mk-line);background:#fff;font-size:12.5px;font-weight:700;color:var(--mk-ink)}
.mk-bk .mk-sail button:hover{border-color:var(--mk-blue);color:var(--mk-blue)}
.mk-bk .mk-sail button.is-on{background:var(--mk-ink);border-color:var(--mk-ink);color:#fff}
.mk-bk .mk-snap{font-size:12.5px;font-weight:700;color:var(--mk-orange-ink);margin:0}
/* mobile bar (design) */
@media (max-width:1000px){.mk-mbk{display:flex;position:fixed;left:10px;right:10px;bottom:calc(var(--mk-bar) + 10px + env(safe-area-inset-bottom,0px));z-index:58;align-items:center;justify-content:space-between;gap:12px;padding:10px 10px 10px 16px;border-radius:18px;background:var(--mk-ink);color:#fff;box-shadow:0 18px 40px -16px rgba(16,43,69,.7);transform:translateY(160%);transition:transform .3s}.mk-mbk.is-on{transform:none}.mk-mbk>div{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.mk-mbk small{font-size:12px;opacity:.75}.mk-mbk s{font-size:13px;opacity:.6}.mk-mbk b{font-size:22px}.mk-mbk .mk-btn{min-height:46px;font-size:14.5px;width:auto;flex:none}}

/* ---- Part 2: module elements ---- */
.mkb-hp{position:absolute!important;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.mk-bk .mk-fl select{width:100%;min-height:46px;border-radius:12px;border:1.5px solid var(--mk-line);padding:10px 12px;font:inherit;font-size:15px;color:var(--mk-ink);background:#fff}
.mk-bk .mk-fl select:focus{outline:none;border-color:var(--mk-blue);box-shadow:0 0 0 4px var(--mk-tint)}
.mk-bk .mkb-err{margin:0;padding:10px 12px;border-radius:12px;background:#FDECE8;color:#8F1D12;font-size:13.5px;font-weight:700}
.mk-bk .mkb-live{margin:0;font-size:12.5px;color:var(--mk-text)}
.mkb-check{display:flex;gap:9px;align-items:flex-start;font-size:12.5px;line-height:1.45;color:var(--mk-text);cursor:pointer}
.mkb-check input{width:18px;height:18px;margin-top:1px;flex:none;accent-color:var(--mk-blue)}
.mkb-check a{color:var(--mk-blue);text-decoration:underline}
.mkb-check.is-err{color:#8F1D12}
.mk-bk .mkb-extras{gap:6px}
.mk-bk .mkb-extras .mkb-check{font-size:13.5px;font-weight:600;color:var(--mk-ink)}
.mk-bk .mk-sum:empty{display:none}
.mk-bk .mk-sum.is-loading{opacity:.55}
.mk-bk .mk-bcat[data-n="2"]{grid-template-columns:1fr 1fr}
.mk-bk .mk-bcat[data-n="1"]{grid-template-columns:1fr}
.mk-bk .mk-bcat button{padding:6px 8px;line-height:1.2}
.mk-bk .mk-bk-go:disabled{opacity:.6;cursor:progress}
.mkb-note{margin:10px 0 0;font-size:12.5px;line-height:1.5;color:var(--mk-text)}
.mkb-note a{color:var(--mk-blue);text-decoration:underline}
.mkb-form-err{margin:10px 0 0;padding:10px 12px;border-radius:12px;background:#FDECE8;color:#8F1D12;font-size:13.5px;font-weight:700}

/* Thank-you / payment result */
.mkb-ty{max-width:720px;margin:0 auto;display:grid;justify-items:center;text-align:center;gap:6px}
.mkb-ty-ico{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;margin-bottom:8px}
.mkb-ty-ico.is-ok{background:#E6F6EE;color:#0E9F6E}
.mkb-ty-ico.is-wait{background:#FFF0D9;color:#B8650A}
.mkb-ty-ico.is-bad{background:#FDECE8;color:#C8432B}
.mkb-ty-h{margin-top:4px}
.mkb-ty-lead{margin:6px 0 4px;max-width:56ch;font-size:17px}
.mkb-ty-ref{display:grid;gap:2px;margin:14px 0 6px;padding:12px 22px;border-radius:16px;background:var(--mk-soft);border:1px dashed #C9D6DF}
.mkb-ty-ref span{font-size:12.5px;font-weight:700;color:var(--mk-text)}
.mkb-ty-ref b{font-size:24px;letter-spacing:.04em;color:var(--mk-ink)}
.mkb-ty-rows{width:100%;margin:8px 0 0;text-align:left;border:1px solid var(--mk-line);border-radius:16px;padding:4px 16px}
.mkb-ty-rows>div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;font-size:14.5px}
.mkb-ty-rows>div+div{border-top:1px solid var(--mk-line)}
.mkb-ty-rows dt{font-weight:800;color:var(--mk-ink)}
.mkb-ty-rows dd{margin:0;text-align:right}
.mkb-ty-act{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:18px}
.mkb-ty-act .mk-btn-wa{width:auto;padding:0 18px;gap:8px}
@media (max-width:560px){.mkb-ty-rows>div{flex-direction:column;gap:2px}.mkb-ty-rows dd{text-align:left}}
@media (prefers-reduced-motion:no-preference){.mk-bk .mk-sum{transition:opacity .15s}}
.mkb-ty-next{width:100%;margin-top:14px;padding:14px 18px;border-radius:16px;background:var(--mk-soft);text-align:left}
.mkb-ty-next b{color:var(--mk-ink);font-size:14px}
.mkb-ty-next p{margin:4px 0 0;font-size:14.5px}
.mkb-ty-act .mk-btn-wa{width:auto;min-width:0;padding:0 20px;gap:8px;white-space:nowrap;color:#fff}
.mkb-ty-act .mk-btn-wa svg{flex:none}
