.demo-ribbon{background:#e8ecdf;display:flex;align-items:center;justify-content:center;gap:16px;padding:9px 5%;font-size:10px;letter-spacing:.6px;flex-wrap:wrap}.demo-ribbon button,.footer-tools button{border:0;background:none;color:inherit;text-decoration:underline;cursor:pointer;font:inherit}.demo-tag{border:1px solid #a7b59c;border-radius:20px;padding:3px 9px;font-size:9px;letter-spacing:1px}.demo-note{color:#61705e;font-size:11px!important;line-height:1.6}.booking-section{background:#eadbcc;display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.booking-section h2{margin:15px 0 22px}.booking-card{background:var(--cream);padding:32px;border-radius:5px;box-shadow:0 12px 35px #243f3409}.booking-card ol{padding-left:20px;margin:22px 0}.booking-card li{padding:9px 0;font-size:13px;line-height:1.6}.booking-card .button{width:100%;cursor:pointer}.category-section{padding-top:65px}.category-layout{display:grid;grid-template-columns:1fr 1.3fr;gap:7%;margin-top:35px}.category-tabs{display:flex;gap:9px;flex-wrap:wrap;margin:25px 0}.category-tabs button{padding:12px 20px;border:1px solid var(--line);border-radius:30px;background:transparent;color:var(--ink);cursor:pointer}.category-tabs button[aria-selected=true]{background:var(--ink);color:var(--cream)}.category-panel{background:#e8ecdf;padding:30px;border-radius:4px}.category-panel h3{font-size:38px}.category-items{display:grid;grid-template-columns:1fr 1fr;gap:12px}.category-items span{border-bottom:1px solid #b9c7b1;padding:13px 0;font-size:13px}.category-panel[hidden]{display:none}.footer-tools{display:flex;gap:20px;flex-wrap:wrap;font-size:11px;margin-top:22px}.demo-dialog{border:0;padding:0;background:var(--cream);color:var(--ink);width:min(580px,calc(100vw - 30px));max-height:85dvh;border-radius:7px;box-shadow:0 30px 100px #0004}.demo-dialog::backdrop{background:#173027b8;backdrop-filter:blur(6px)}.dialog-content{padding:36px}.dialog-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}.dialog-close{border:1px solid var(--line);background:none;border-radius:50%;width:36px;height:36px;font-size:22px;cursor:pointer;color:inherit}.demo-dialog h2{font-size:44px;margin:15px 0 22px}.demo-dialog h3{font-size:27px;margin-top:25px}.demo-dialog p,.demo-dialog li{font-size:13px;line-height:1.75}.demo-dialog label{display:block;font-size:12px;margin:18px 0 8px}.demo-dialog select{padding:14px;width:100%;border:1px solid #b7c3af;background:#fffdf6;color:var(--ink);border-radius:3px;font:inherit;font-size:14px}.demo-dialog .button{cursor:pointer;margin-top:20px;width:100%}.demo-dialog .result{border-left:3px solid var(--orange);padding:15px;background:#e8ecdf;margin-top:20px}.mobile-contact{display:none}.img-fallback{background:#e0e5d6}dialog[open]{animation:dialog-in .25s ease-out}@keyframes dialog-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(max-width:800px){.booking-section,.category-layout{grid-template-columns:1fr;gap:25px}.booking-card,.category-panel{padding:24px}.demo-ribbon{font-size:9px;gap:9px;padding:8px 4%}.dialog-content{padding:25px}.demo-dialog h2{font-size:37px}.mobile-contact{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:20;padding:10px 6% max(10px,env(safe-area-inset-bottom));background:var(--cream);border-top:1px solid var(--line);gap:12px}.mobile-contact .button{padding:13px 15px;flex:1;font-size:11px;cursor:pointer}footer{padding-bottom:100px}.footnote{gap:17px}.category-items{gap:8px}.demo-ribbon>span:nth-child(2){display:none}}@media(prefers-reduced-motion:reduce){dialog[open]{animation:none}}

.dialog-top{position:sticky;top:-1px;background:var(--cream);padding:10px 0;z-index:2}.demo-dialog .dialog-content{padding-top:20px}.demo-dialog .dialog-close:focus-visible{outline:3px solid var(--orange);outline-offset:3px}

@media(max-width:800px){h1{font-size:clamp(52px,12vw,76px);letter-spacing:-2px}.hero-copy{min-width:0}.brand strong{font-size:clamp(21px,6vw,26px)}.brand{gap:8px}.brand svg{width:32px}.brand small{letter-spacing:1px;font-size:7px}header{gap:10px}.menu{flex-shrink:0}.actions .button{max-width:100%}.contact-box .phone{font-size:clamp(29px,8vw,38px)}.demo-dialog{overflow-wrap:anywhere}.demo-ribbon button{min-height:32px}.category-tabs button{min-height:44px}.footer-tools button,.footer-tools a{min-height:36px;display:inline-flex;align-items:center}.demo-dialog select{font-size:16px}.mobile-contact{z-index:20}.hero-photo img{width:100%}summary{gap:20px}}

button.text-link{border:0;border-bottom:1px solid var(--ink);background:none;color:inherit;cursor:pointer;font-family:inherit} .contact-box .phone{font-size:32px}
