*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;overflow-x:hidden;font-size:16px}
body,button,input,textarea,select{font-family:inherit}
button,input,textarea,select{font-size:16px}
button,a,summary{touch-action:manipulation}
button{color:inherit;cursor:pointer}
a{color:inherit}
img{display:block;width:100%;max-width:100%;height:auto}
[hidden]{display:none!important}
.currency-pending [data-example-price]{visibility:hidden}
.blind-test [data-audit-tier]{display:none!important}
:focus-visible{outline:3px solid currentColor;outline-offset:4px}
h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}dialog{overscroll-behavior:contain}.skip-link{position:fixed;left:16px;top:12px;z-index:1000;padding:12px 16px;background:#fff;color:#111;font-weight:800;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}

.concept-bar{min-height:54px;padding:9px max(18px,calc((100% - 1280px)/2));display:grid;grid-template-columns:auto minmax(220px,1fr) auto;align-items:center;gap:24px;font-size:13px;line-height:1.35;position:relative;z-index:50}
.concept-bar>div{display:flex;align-items:center;gap:13px;white-space:nowrap}
.concept-bar>div span{padding-left:13px;border-left:1px solid currentColor}
.concept-bar>p{margin:0;text-align:center}
.concept-bar nav{display:flex;align-items:center;gap:16px;white-space:nowrap}
.concept-bar a{font-weight:700;text-underline-offset:3px}
.concept-bar a,.site-footer a,#site-navigation a,#site-navigation summary{display:inline-flex;align-items:center;min-height:44px}#site-navigation a,#site-navigation summary{padding-inline:6px}

.site-menu-toggle{display:none;align-items:center;justify-content:center;flex:0 0 48px;flex-direction:column;width:48px;height:48px;padding:0;border:0;background:transparent}
.site-menu-toggle span{display:block;width:22px;height:2px;margin:2px 0;background:currentColor;transition:transform .2s,opacity .2s}
.site-menu-toggle b{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.site-menu-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.site-menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}
.site-menu-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

.booking-dialog{width:min(630px,calc(100% - 28px));padding:0;border:0;border-radius:22px;color:#17211d;box-shadow:0 30px 100px rgba(0,0,0,.35)}
.booking-dialog::backdrop{background:rgba(9,15,12,.68);backdrop-filter:blur(5px)}
.dialog-shell{position:relative;padding:34px;background:#fbf7ee}
.dialog-close{position:absolute;right:16px;top:16px;width:44px;height:44px;border:0;border-radius:50%;background:#e8e2d6;font-size:28px;line-height:1}
.dialog-eyebrow{margin:0 0 8px;text-transform:uppercase;letter-spacing:.14em;font-size:13px;font-weight:800}
.dialog-shell h2{margin:0 50px 10px 0;font-size:clamp(30px,5vw,42px);line-height:1.05}
.dialog-shell>p:not(.dialog-eyebrow,.dialog-feedback){margin:0 0 22px;color:#56615b}
.dialog-shell fieldset{margin:20px 0;padding:0;border:0}
.dialog-shell legend{margin-bottom:9px;font-weight:800}
.booking-options{display:flex;flex-wrap:wrap;gap:9px}
.booking-options button{min-width:82px;min-height:52px;padding:9px 14px;border:1px solid #b8beb8;border-radius:10px;background:#fff}
.booking-options button small{display:block;font-size:12px}
.booking-options button.is-selected{background:#173e32;color:#fff;border-color:#173e32}
.booking-continue{width:100%;min-height:52px;margin-top:8px;border:0;border-radius:10px;background:#173e32;color:#fff;font-weight:800}
.dialog-feedback{min-height:24px;margin:13px 0 0;font-size:14px;font-weight:700}

.demo-form{display:grid;gap:18px}
.demo-form h2{margin:0}
.demo-form label{display:grid;gap:7px;font-weight:700}
.demo-form input,.demo-form textarea{width:100%;padding:13px;border:1px solid currentColor;border-radius:0;background:rgba(255,255,255,.76);color:#17211d}
.demo-form textarea{resize:vertical}
.demo-form button[type=submit]{min-height:52px;border:0;font-weight:800}
.demo-form small{font-size:13px;line-height:1.45}
.demo-form .form-status{min-height:24px;margin:0;font-weight:700}
.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}

@media(max-width:900px){
  .concept-bar{grid-template-columns:1fr auto;gap:7px 16px;padding-block:10px}
  .concept-bar>p{grid-column:1/-1;grid-row:2;text-align:left;font-size:12px}
  .concept-bar nav a:first-child{display:none}
}

@media(max-width:760px){
  .concept-bar{display:flex;flex-wrap:wrap;min-height:62px;gap:6px 12px;font-size:12px}
  .concept-bar>div{width:100%;justify-content:space-between}
  .concept-bar>p{display:none}
  .concept-bar nav{width:100%;justify-content:space-between}
  .site-menu-toggle{display:flex}
  .form-pair{grid-template-columns:1fr}
  .dialog-shell{padding:28px 20px}
}

@media(max-width:430px){
  .concept-bar nav a:first-child{display:none}
  .concept-bar>div span{padding-left:8px}
  .booking-options button{flex:1 1 70px}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
