/* Quietly 1.3 — booking page; intentionally independent from the generic detail grids. */
.q13-booking{--q13-forest:#263d30;--q13-ink:#263a2d;--q13-cream:#f9f7f0;color:var(--q13-ink);background:var(--q13-cream);min-height:80vh}
.q13-booking-intro{position:relative;overflow:hidden;text-align:center;padding:clamp(56px,7vw,110px) 22px clamp(65px,8vw,112px);background:radial-gradient(ellipse 42% 95% at 50% 0%,#ecede3 0%,#f9f7f0 83%)}
.q13-booking-intro>*{position:relative;z-index:1}.q13-back{display:inline-block;text-decoration:none;color:#526355;font-size:13px;margin:0 0 40px}.q13-back:hover{text-decoration:underline}.q13-booking-kicker,.q13-section-overline{letter-spacing:.19em;text-transform:uppercase;font-size:11px;font-weight:600;color:#59705f}
.q13-tree{display:block;width:220px;max-width:45vw;height:auto;object-fit:contain;margin:32px auto 3px}.q13-booking-intro h1{font:400 clamp(48px,6.6vw,102px)/1.08 Georgia,serif;letter-spacing:-.055em;margin:0 auto 24px;max-width:1000px;color:#243b2c}
.q13-booking-intro>p{max-width:620px;margin:0 auto;color:#546458;line-height:1.8;font-size:clamp(16px,1.45vw,20px)}.q13-booking-notes{display:flex;justify-content:center;gap:clamp(12px,3vw,55px);flex-wrap:wrap;margin:50px auto 0;color:#54665a;font-size:12px;letter-spacing:.03em}
.q13-booking-shell{max-width:1150px;margin:0 auto;padding:clamp(30px,5vw,70px) clamp(18px,4vw,55px) 70px;background:#fffdf8;box-shadow:0 14px 90px rgba(33,60,40,.035);border:1px solid rgba(45,67,48,.11);border-radius:22px;position:relative;top:-24px}
.q13-booking-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:0 0 32px;border-bottom:1px solid #dce2d8}.q13-booking-head h2{font:400 clamp(36px,4vw,60px)/1.16 Georgia,serif;letter-spacing:-.045em;margin:10px 0 0}.q13-booking-provider{color:#617164;font-size:13px;padding-bottom:8px}
.q13-booking-consent{text-align:center;max-width:630px;margin:70px auto 76px}.q13-booking-consent-art img{display:block;max-width:190px;width:40%;height:auto;margin:0 auto 20px;opacity:.6}.q13-booking-consent h3{font:400 clamp(29px,3vw,42px)/1.25 Georgia,serif;letter-spacing:-.03em;margin:0 0 20px}.q13-booking-consent p,.q13-booking-message p{font-size:15px;line-height:1.85;color:#586a5a;margin:0 auto 27px;max-width:560px}
.q13-action{display:inline-flex;justify-content:center;align-items:center;gap:12px;border:1px solid #263d30;border-radius:50px;padding:17px 30px;font-size:15px;line-height:1.25;background:#263d30;color:white!important;text-decoration:none;cursor:pointer;min-height:54px}.q13-action:hover,.q13-action:focus-visible{background:#385443;outline-offset:4px}.q13-booking-frame-wrap{max-width:1020px;margin:18px auto 32px}.q13-booking-frame-wrap[hidden],.q13-booking-consent[hidden]{display:none!important}.q13-booking-frame-info{font-size:14px;text-align:center;color:#596a5f;padding:15px}.q13-booking-frame-info[hidden]{display:none}.q13-booking-frame-wrap iframe{display:block;width:100%;border:1px solid #e0e5dd;border-radius:12px;background:#fff;min-height:650px}
.q13-booking-message{padding:55px 15px;text-align:center}.q13-booking-fallback{display:flex;align-items:center;gap:10px 28px;justify-content:center;flex-wrap:wrap;padding:20px 0 32px;border-top:1px solid #e0e5dd;color:#607067;font-size:14px}.q13-link-external{color:#263d30;font-weight:600;text-underline-offset:4px}.q13-booking-privacy{font-size:12px!important;color:#637268;line-height:1.8;max-width:730px;margin:16px auto 0;text-align:center}.q13-booking-end{padding:54px 18px 100px;text-align:center;display:flex;gap:12px;flex-direction:column;align-items:center}.q13-booking-end span{color:#657666;letter-spacing:.18em;font-size:11px}.q13-booking-end a{font:400 clamp(21px,2vw,30px)/1.3 Georgia,serif;color:#273d30;text-underline-offset:6px}
@media(max-width:640px){.q13-booking-intro{padding:40px 18px 75px}.q13-back{margin-bottom:18px}.q13-tree{width:168px;margin:23px auto 0}.q13-booking-intro h1{font-size:clamp(44px,10vw,62px)}.q13-booking-notes{gap:9px 16px;font-size:11px;margin-top:30px}.q13-booking-shell{border-radius:12px;top:-20px;padding:32px 17px 46px;margin:0 11px}.q13-booking-head{display:block}.q13-booking-provider{display:block;margin-top:12px}.q13-booking-consent{margin:42px auto}.q13-booking-fallback{flex-direction:column;text-align:center}.q13-booking-frame-wrap iframe{min-height:700px}.q13-booking-end{padding-bottom:70px}}
@media(prefers-reduced-motion:reduce){.q13-booking *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* 1.3.1: permanent, readable fallback after consent and accessible reset. */
.q13-frame-help{margin:18px 0 18px;padding:20px 24px;border-radius:14px;background:#f3f4ee;color:#4d6052;text-align:center;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px 22px}
.q13-frame-help[hidden]{display:none!important}
.q13-frame-help p{flex-basis:100%;font-size:14px;line-height:1.65;margin:0}
.q13-frame-help a{font-size:14px;text-underline-offset:4px}
.q13-reset{font:inherit;background:transparent;color:#405647;border:1px solid #99a99c;cursor:pointer;border-radius:30px;padding:10px 16px;min-height:44px}
.q13-reset:focus-visible{outline:3px solid #789481;outline-offset:3px}
@media(max-width:640px){.q13-frame-help{padding:20px 12px}.q13-frame-help>*{width:100%;text-align:center}}

/* 1.7.13: keep the calendar top clear of the sticky header after "Vis kalender". */
.q13-booking-frame-wrap{scroll-margin-top:110px}
