[hidden]{display:none!important}button{cursor:pointer;font:inherit}dialog{color:var(--ink,#19362c);border:0;border-radius:20px;padding:28px;background:#fff}dialog::backdrop{background:rgb(10 35 24 / .6)}body:has(dialog[open]){overflow:hidden}.joomla-booking{width:min(560px,calc(100vw - 32px));max-height:90dvh;margin:auto;overflow:auto;overscroll-behavior:contain}.joomla-mobile{width:min(390px,100vw);height:100dvh;max-height:100dvh;margin:0 0 0 auto;border-radius:0;padding:24px}.joomla-mobile[open]{display:flex;flex-direction:column}.joomla-mobile .mobile-nav{overflow:auto;flex:1}.dialog-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.dialog-top h2{font-size:1.5rem;margin:0}.dialog-top button{min-width:44px;min-height:44px;font-size:1.7rem;background:transparent;border:0}.joomla-booking>p{margin:12px 0 20px}.booking-form select{width:100%;height:50px;border:1px solid #c9d3cb;border-radius:10px;padding:8px;font-size:16px}.consent input{width:22px;height:22px;flex-shrink:0}.faq-item summary{padding:20px 0;font-weight:600;cursor:pointer}.faq-item[open] summary{color:#287e64}.migration-commercial-group,.migration-commercial-group>.cards{display:contents}.cards>[data-category]>.service-card{height:100%}.catalogue-tabs button[aria-pressed=true]{background:#244d3b;color:white}.menu-toggle{background:transparent;border:0;font-size:28px;min-height:44px;min-width:44px}.form-result{padding:16px;background:#edf7ef;border-radius:10px}.form-error{color:#9b2121}
[data-booking],.booking-form button[type=submit]{display:inline-flex;align-items:center;justify-content:center;background:var(--primary);color:var(--primary-foreground);border:0}
[data-booking].btn-outline{background:transparent;color:var(--forest);border:1px solid var(--border)}
[data-booking].btn-light{background:#fafbf7;color:var(--forest)}
[data-booking].btn-gold{background:#d8c699;color:var(--forest)}
.migration-commercial-group>.commercial-cards{display:contents}
@media(max-width:600px){.header-book[data-booking]{display:none}.header-inner{gap:12px}.header .brand{min-width:0;max-width:calc(100% - 56px)}}

