*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{overflow-x:hidden;position:relative;min-width:320px}@media (max-width:374px){.container{padding-left:12px;padding-right:12px}.text-responsive{font-size:13px;line-height:1.4}.mobile-card{min-height:180px}}@media (min-width:375px) and (max-width:639px){.container{padding-left:16px;padding-right:16px}.text-responsive{font-size:14px;line-height:1.5}.mobile-card{min-height:200px}.grid-mobile{display:grid;grid-template-columns:1fr;grid-gap:16px;gap:16px}}@media (min-width:640px) and (max-width:767px){.container{padding-left:20px;padding-right:20px}.text-responsive{font-size:15px;line-height:1.5}.grid-mobile{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:16px;gap:16px}}@media (min-width:768px) and (max-width:1023px){.container{padding-left:24px;padding-right:24px;max-width:100%}.grid-mobile{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:20px;gap:20px}}@media (min-width:1024px){.container{padding-left:32px;padding-right:32px;max-width:1200px;margin:0 auto}.grid-mobile{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:24px;gap:24px}}.touch-target{min-height:44px;min-width:44px;touch-action:manipulation;cursor:pointer}.btn,.link,a,button{padding:12px 16px;margin:2px;border-radius:8px;font-size:16px;touch-action:manipulation}input,select,textarea{font-size:16px;border-radius:8px;padding:12px}@media (max-width:767px){.hover-effect:hover{transform:none!important;box-shadow:none!important}img{max-width:100%;height:auto;-webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none;user-drag:none}.mobile-menu{position:fixed;top:0;left:0;right:0;bottom:0;background:white;z-index:9999;transform:translateX(-100%);transition:transform .3s ease}.mobile-menu.open{transform:translateX(0)}.ant-drawer-body{padding:0!important;height:100%!important}.mobile-header .ant-drawer-body{display:flex!important;flex-direction:column!important}.hamburg-btn{min-width:44px!important;min-height:44px!important;touch-action:manipulation!important}.hero-banner-wrapper{position:relative;isolation:isolate;z-index:1}.hero-banner-wrapper+.hero-banner-wrapper{display:none!important}.search-wrapper-mobile{position:relative!important;bottom:auto!important;left:auto!important;transform:none!important;margin:16px!important;width:calc(100% - 32px)!important;z-index:10!important}.hero-background{z-index:1!important}.hero-overlay{z-index:2!important}.hero-bullets{z-index:5!important}.hero-content{z-index:10!important}.hero-banner-wrapper{display:block}.hero-banner-wrapper~.hero-banner-wrapper{display:none!important;visibility:hidden!important;opacity:0!important;height:0!important;overflow:hidden!important}.glide:not(:first-child),.hero-banner-wrapper .search-wrapper:not(:first-child),[data-component=HomeSearch]:not(:first-of-type){display:none!important}.mobile-form{display:flex;flex-direction:column;gap:16px}.mobile-form button,.mobile-form input,.mobile-form select{width:100%}}@media (max-width:767px) and (orientation:portrait){.hero-banner{height:50vh;min-height:400px}.portrait-stack{flex-direction:column}}@media (max-width:767px) and (orientation:landscape){.hero-banner{height:40vh;min-height:300px}.landscape-horizontal{flex-direction:row}.mobile-header{height:56px}}.scroll-container{-webkit-overflow-scrolling:touch;scroll-behavior:smooth;overflow-x:hidden}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-color-scheme:dark){.dark-mode-support{background-color:#1a1a1a;color:#ffffff}}@media (prefers-contrast:high){.btn{border:2px solid}}.mobile-header{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:white;box-shadow:0 2px 4px rgba(0,0,0,.1);height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 16px}.mobile-card{border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.1);overflow:hidden;background:white;margin-bottom:16px;position:relative}.mobile-search-form{background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;padding:20px;margin:16px;box-shadow:0 4px 12px rgba(0,0,0,.15)}.mobile-footer{padding:32px 16px;background:#f8f9fa;margin-top:40px}.mobile-footer-links{display:grid;grid-template-columns:1fr;grid-gap:24px;gap:24px}@media (min-width:640px){.mobile-footer-links{grid-template-columns:repeat(2,1fr)}}@media (min-width:768px){.mobile-footer-links{grid-template-columns:repeat(4,1fr)}}.mobile-hidden{display:none}@media (min-width:768px){.mobile-hidden{display:block}.desktop-hidden{display:none}}.text-center-mobile{text-align:center}@media (min-width:768px){.text-center-mobile{text-align:left}}.full-width-mobile{width:100%}@media (min-width:768px){.full-width-mobile{width:auto}}@supports (padding:max(0px)){.safe-area-inset-top{padding-top:max(16px,env(safe-area-inset-top))}.safe-area-inset-bottom{padding-bottom:max(16px,env(safe-area-inset-bottom))}.safe-area-inset-left{padding-left:max(16px,env(safe-area-inset-left))}.safe-area-inset-right{padding-right:max(16px,env(safe-area-inset-right))}}@media (min-width:1024px){.mobile-booking-card{display:none!important}.desktop-booking-card{display:block!important}}@media (max-width:1023px){.desktop-booking-card{display:none!important}.mobile-booking-card{display:block!important;position:fixed;bottom:0;left:0;right:0;background:white;border-top:1px solid #e5e7eb;box-shadow:0 -4px 6px -1px rgba(0,0,0,.1),0 -2px 4px -1px rgba(0,0,0,.06);padding:16px;z-index:50;margin:0!important}body{padding-bottom:env(safe-area-inset-bottom)}}select:required:invalid{color:#9ca3af}select:required:valid{color:#111827}select option{color:#111827}@media (max-width:1023px){.booking-form-mobile{display:flex;flex-direction:column;gap:12px}.booking-form-mobile button,.booking-form-mobile input,.booking-form-mobile select{width:100%;padding:12px;border-radius:8px;font-size:16px;border:1px solid #d1d5db;background:white}.booking-form-mobile button{margin-top:8px;font-weight:600;color:white;border:none;cursor:pointer;touch-action:manipulation}.booking-form-mobile .btn-primary{background-color:#059669}.booking-form-mobile .btn-primary:hover{background-color:#047857}.booking-form-mobile .btn-secondary{background-color:#2563eb}.booking-form-mobile .btn-secondary:hover{background-color:#1d4ed8}}@media (max-width:640px){.mobile-booking-card{padding:12px!important}.booking-form-mobile{gap:8px}.booking-form-mobile button,.booking-form-mobile input,.booking-form-mobile select{padding:10px;font-size:14px}.booking-form-mobile label{font-size:12px;margin-bottom:4px}}