.booking-wrap{max-width:1180px;margin:0 auto;padding:75px 25px 100px}.booking-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:32px}.booking-heading h2{font:46px/1.15 Georgia,serif;margin:12px 0;color:var(--ink)}.booking-heading p{font-size:14px;color:#68736a;max-width:460px}.booking-layout{display:grid;grid-template-columns:1.45fr 1fr;gap:30px;align-items:start}.calendar-panel,.request-panel{border:1px solid var(--line);padding:28px;background:#fffdf8}.calendar-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.calendar-bar b{font-size:13px}.calendar-nav{display:flex;gap:8px}.calendar-nav button{border:1px solid #cdd5c9;background:transparent;border-radius:50%;width:38px;height:38px;color:var(--ink)}.months{display:grid;grid-template-columns:1fr 1fr;gap:28px}.month-title{font:22px Georgia,serif;text-transform:capitalize;margin:0 0 18px}.week,.days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.week span{text-align:center;font-size:10px;color:#768174;margin-bottom:8px}.day{font-size:12px;border:0;background:transparent;color:#253f35;min-width:0;height:34px;border-radius:3px;padding:0}.day:not(:disabled):hover{background:#e4e9db}.day:disabled{color:#b6baae;cursor:default}.day.busy{background:repeating-linear-gradient(135deg,#f1e3dd,#f1e3dd 3px,#ead8cf 3px,#ead8cf 4px);color:#9a5c49}.day.selected{background:#294a3a!important;color:white!important}.day.between{background:#e1e9d8}.day.uncertain{background:#f2f1e9}.legend{display:flex;gap:20px;font-size:10px;color:#697568;margin-top:24px;flex-wrap:wrap}.legend span:before{content:'';display:inline-block;width:9px;height:9px;background:#e4e9db;margin-right:6px}.legend span.busy-key:before{background:#e8d2c6}.legend span.uncertain-key:before{background:#deded4}.calendar-notice{font-size:12px;color:#6c776b;background:#f1f2e9;padding:13px 15px;margin-top:20px}.booking-summary{display:flex;gap:20px;padding:0 0 20px;border-bottom:1px solid var(--line);font-size:13px;margin-bottom:20px}.booking-summary b{display:block;font-size:10px;letter-spacing:1.5px;color:#7c8578;margin-bottom:5px}.request-panel h3{font:26px Georgia,serif;margin:0 0 12px}.request-panel p{font-size:12px;color:#6c776b}.field{display:block;font-size:12px;margin-bottom:15px;font-weight:500}.field input,.field textarea,.field select{display:block;width:100%;margin-top:6px;border:1px solid #cbd2c6;border-radius:0;background:#fffefa;padding:11px 12px;font:14px Arial,sans-serif;color:#243e35;min-height:43px}.field textarea{resize:vertical}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.check-field{display:flex;align-items:start;gap:9px;font-size:11px;line-height:1.6;margin:17px 0}.check-field input{margin-top:3px;accent-color:#294a3a}.request-panel .button{width:100%;margin-top:8px}.button:disabled{opacity:.45;cursor:default}.message{font-size:13px;line-height:1.6;padding:12px 15px;margin:16px 0;background:#edf0e4;color:#294a3a}.message.error{background:#f4e7e1;color:#9d3e26}.message:empty{display:none}.muted{color:#75816f;font-size:12px}.booking-finn{font-size:11px;margin-top:20px;display:block;text-decoration:underline;text-underline-offset:3px}.privacy-note{margin-top:22px;font-size:11px;color:#6c776b}.privacy-note summary{cursor:pointer}.privacy-note p{font-size:11px;line-height:1.6}.hp-field{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.success-box{border-top:4px solid #365c43;background:#edf0e4;padding:22px}.success-box h3{margin-bottom:12px}.success-box .reference{font-size:18px;font-weight:bold;letter-spacing:1px}[hidden]{display:none!important}@media(max-width:850px){.booking-wrap{padding:55px 7%}.booking-heading{display:block}.booking-heading h2{font-size:38px}.booking-layout{grid-template-columns:1fr}.calendar-panel,.request-panel{padding:22px}.months{gap:20px}}@media(max-width:560px){.months{grid-template-columns:1fr}.month:nth-child(2){display:none}.day{height:38px}.two-fields{grid-template-columns:1fr}.calendar-panel{padding:18px}}

.account-booking-hint{font-size:12px;padding:12px 0 22px;color:#68736a}.account-booking-hint a{text-decoration:underline;text-underline-offset:4px}.account-link{white-space:nowrap}@media(max-width:800px){nav>a.account-link{display:inline!important;font-size:12px}header nav{gap:15px}}@media(max-width:430px){header nav .button{display:none}header .brand{font-size:24px}}
