.demo-banner{padding:12px 5%;background:#e8d6b3;color:#24392d;font-size:14px;text-align:center}.booking{max-width:1400px;margin:auto;padding:58px 5% 80px;display:grid;grid-template-columns:1.18fr 1fr;gap:7%}.booking h1{font-size:clamp(52px,5.4vw,80px);margin-bottom:22px}.booking .eyebrow{font-size:13px;margin-bottom:16px}.lead{color:#536158;font-size:17px}.booking fieldset{border:0;border-top:1px solid var(--line);padding:22px 0 10px;margin:28px 0 0;min-width:0}.booking legend{font:600 24px var(--serif);padding-right:14px}.booking legend span{font:14px 'DM Sans',Arial;margin-right:12px;color:#776347}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.booking label{display:block;font-size:14px;font-weight:600}.booking input,.booking select,.booking textarea{display:block;width:100%;min-width:0;background:#fffdf8;border:1px solid #adb7aa;color:var(--ink);border-radius:3px;padding:13px 12px;margin-top:7px;font:16px/1.5 'DM Sans',Arial}.booking input,.booking select{min-height:52px}.booking textarea{resize:vertical}.booking :is(input,select,textarea,button):focus-visible{outline:3px solid #947643;outline-offset:3px}.notes{margin-top:20px}.optional{font-weight:400;color:#647064}.field-note,.privacy{font-size:14px;color:#586258;line-height:1.6;margin:12px 0}.submit{width:100%;cursor:pointer;font-size:16px;margin-top:9px}.booking-photo{height:240px;position:relative}.booking-photo img{object-position:center 55%}.booking-photo figcaption{position:absolute;bottom:0;left:0;right:0;padding:8px 16px;background:#102c25ce;color:white;font-size:12px}.message-panel{background:#173c32;padding:30px;color:#f6f2e9}.message-panel h2{font-size:39px;margin:0 0 24px}.message-panel>.eyebrow{color:#dec497}.whatsapp-head{display:flex;align-items:center;gap:12px;padding-bottom:15px}.wa-symbol{display:grid;place-items:center;border-radius:50%;background:#d5ebca;color:#173c32;width:40px;height:40px;font-size:24px}.whatsapp-head strong{font-size:16px}.whatsapp-head small{display:block;font-size:12px;color:#cbd8cd}.chat-surface{background:#e7e5db;padding:20px 15px;border-radius:5px}.bubble{background:#fffef8;color:#20382c;border-radius:0 12px 12px;padding:18px;font-size:14px;box-shadow:0 2px 3px #102c2520}.bubble>strong{font-size:13px}.bubble p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.75;margin:12px 0 18px}.bubble>span{font-size:12px;color:#786338;border-top:1px solid #ddd;padding-top:10px;display:block}.message-note{font-size:14px;line-height:1.6;color:#d3ded3;margin:16px 0 22px}.booking-steps{border-top:1px solid #ffffff30;padding-top:18px}.booking-steps p{font-size:14px;margin:4px 0}.booking-steps b{color:#dec497;margin-right:8px}.location-note{padding:20px 0;font-size:14px}.location-note span{display:block}.location-note a{text-decoration:underline}#form-status:not(:empty){background:#e5eadc;padding:18px;font-size:16px;border-left:3px solid #627844;margin-top:18px}footer p{margin:0}@media(max-width:800px){.booking{grid-template-columns:1fr;gap:36px;padding-top:32px}.booking-side{max-width:620px}.booking-photo{height:220px}header{padding:0 5%;height:85px;gap:12px}header nav{display:none}header .button{padding:10px;font-size:14px}.brand{width:100px}.message-panel{padding:24px}footer{flex-wrap:wrap}}@media(max-width:420px){.form-grid{grid-template-columns:1fr}.booking h1{font-size:52px}.demo-banner{text-align:left}}
/* Center telephone labels inside their header buttons. */
header .contact-actions .button{justify-content:center;align-items:center;text-align:center}

header .brand{width:220px;height:126px;flex:0 0 220px}@media(max-width:760px){header .brand{width:190px;height:109px;flex-basis:190px}}
