:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;padding:0;min-width:320px;min-height:100vh;width:100%;overflow-x:hidden;font-family:system-ui,Avenir,Helvetica,Arial,sans-serif}#root{width:100%;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}html{font-size:16px;scroll-behavior:smooth}body{margin:0;padding:0;width:100%;overflow-x:hidden;line-height:1.6}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 15px}@media (min-width: 576px){.container{padding:0 20px}html{font-size:16px}}@media (min-width: 768px){.container{padding:0 25px}html{font-size:17px}}@media (min-width: 992px){.container{padding:0 30px}html{font-size:18px}}@media (min-width: 1200px){.container{padding:0 40px}}@media (min-width: 1400px){.container{max-width:1320px}}h1,h2,h3,h4,h5,h6{margin:0 0 1rem;line-height:1.2;font-weight:600}h1{font-size:clamp(1.75rem,4vw,3.5rem)}h2{font-size:clamp(1.5rem,3.5vw,2.5rem)}h3{font-size:clamp(1.25rem,3vw,2rem)}h4{font-size:clamp(1.1rem,2.5vw,1.5rem)}p{font-size:clamp(.9rem,2vw,1.125rem);margin:0 0 1rem}img{max-width:100%;height:auto;display:block}.row{display:flex;flex-wrap:wrap;margin:0 -15px}.col{flex:1;padding:0 15px}.col-12{flex:0 0 100%;max-width:100%}.col-11{flex:0 0 91.666667%;max-width:91.666667%}.col-10{flex:0 0 83.333333%;max-width:83.333333%}.col-9{flex:0 0 75%;max-width:75%}.col-8{flex:0 0 66.666667%;max-width:66.666667%}.col-7{flex:0 0 58.333333%;max-width:58.333333%}.col-6{flex:0 0 50%;max-width:50%}.col-5{flex:0 0 41.666667%;max-width:41.666667%}.col-4{flex:0 0 33.333333%;max-width:33.333333%}.col-3{flex:0 0 25%;max-width:25%}.col-2{flex:0 0 16.666667%;max-width:16.666667%}.col-1{flex:0 0 8.333333%;max-width:8.333333%}@media (min-width: 576px){.col-sm-12{flex:0 0 100%;max-width:100%}.col-sm-11{flex:0 0 91.666667%;max-width:91.666667%}.col-sm-10{flex:0 0 83.333333%;max-width:83.333333%}.col-sm-9{flex:0 0 75%;max-width:75%}.col-sm-8{flex:0 0 66.666667%;max-width:66.666667%}.col-sm-7{flex:0 0 58.333333%;max-width:58.333333%}.col-sm-6{flex:0 0 50%;max-width:50%}.col-sm-5{flex:0 0 41.666667%;max-width:41.666667%}.col-sm-4{flex:0 0 33.333333%;max-width:33.333333%}.col-sm-3{flex:0 0 25%;max-width:25%}.col-sm-2{flex:0 0 16.666667%;max-width:16.666667%}.col-sm-1{flex:0 0 8.333333%;max-width:8.333333%}}@media (min-width: 768px){.col-md-12{flex:0 0 100%;max-width:100%}.col-md-11{flex:0 0 91.666667%;max-width:91.666667%}.col-md-10{flex:0 0 83.333333%;max-width:83.333333%}.col-md-9{flex:0 0 75%;max-width:75%}.col-md-8{flex:0 0 66.666667%;max-width:66.666667%}.col-md-7{flex:0 0 58.333333%;max-width:58.333333%}.col-md-6{flex:0 0 50%;max-width:50%}.col-md-5{flex:0 0 41.666667%;max-width:41.666667%}.col-md-4{flex:0 0 33.333333%;max-width:33.333333%}.col-md-3{flex:0 0 25%;max-width:25%}.col-md-2{flex:0 0 16.666667%;max-width:16.666667%}.col-md-1{flex:0 0 8.333333%;max-width:8.333333%}}@media (min-width: 992px){.col-lg-12{flex:0 0 100%;max-width:100%}.col-lg-11{flex:0 0 91.666667%;max-width:91.666667%}.col-lg-10{flex:0 0 83.333333%;max-width:83.333333%}.col-lg-9{flex:0 0 75%;max-width:75%}.col-lg-8{flex:0 0 66.666667%;max-width:66.666667%}.col-lg-7{flex:0 0 58.333333%;max-width:58.333333%}.col-lg-6{flex:0 0 50%;max-width:50%}.col-lg-5{flex:0 0 41.666667%;max-width:41.666667%}.col-lg-4{flex:0 0 33.333333%;max-width:33.333333%}.col-lg-3{flex:0 0 25%;max-width:25%}.col-lg-2{flex:0 0 16.666667%;max-width:16.666667%}.col-lg-1{flex:0 0 8.333333%;max-width:8.333333%}}@media (min-width: 1200px){.col-xl-12{flex:0 0 100%;max-width:100%}.col-xl-11{flex:0 0 91.666667%;max-width:91.666667%}.col-xl-10{flex:0 0 83.333333%;max-width:83.333333%}.col-xl-9{flex:0 0 75%;max-width:75%}.col-xl-8{flex:0 0 66.666667%;max-width:66.666667%}.col-xl-7{flex:0 0 58.333333%;max-width:58.333333%}.col-xl-6{flex:0 0 50%;max-width:50%}.col-xl-5{flex:0 0 41.666667%;max-width:41.666667%}.col-xl-4{flex:0 0 33.333333%;max-width:33.333333%}.col-xl-3{flex:0 0 25%;max-width:25%}.col-xl-2{flex:0 0 16.666667%;max-width:16.666667%}.col-xl-1{flex:0 0 8.333333%;max-width:8.333333%}}.d-none{display:none!important}.d-block{display:block!important}.d-flex{display:flex!important}.d-grid{display:grid!important}@media (max-width: 575.98px){.d-sm-none{display:none!important}.d-sm-block{display:block!important}.d-sm-flex{display:flex!important}}@media (min-width: 576px) and (max-width: 767.98px){.d-md-none{display:none!important}.d-md-block{display:block!important}.d-md-flex{display:flex!important}}@media (min-width: 768px) and (max-width: 991.98px){.d-lg-none{display:none!important}.d-lg-block{display:block!important}.d-lg-flex{display:flex!important}}@media (min-width: 992px){.d-xl-none{display:none!important}.d-xl-block{display:block!important}.d-xl-flex{display:flex!important}}.p-0{padding:0!important}.p-1{padding:.25rem!important}.p-2{padding:.5rem!important}.p-3{padding:1rem!important}.p-4{padding:1.5rem!important}.p-5{padding:3rem!important}.m-0{margin:0!important}.m-1{margin:.25rem!important}.m-2{margin:.5rem!important}.m-3{margin:1rem!important}.m-4{margin:1.5rem!important}.m-5{margin:3rem!important}.text-left{text-align:left!important}.text-center{text-align:center!important}.text-right{text-align:right!important}@media (max-width: 767.98px){.text-sm-left{text-align:left!important}.text-sm-center{text-align:center!important}.text-sm-right{text-align:right!important}}@media (min-width: 768px){.text-md-left{text-align:left!important}.text-md-center{text-align:center!important}.text-md-right{text-align:right!important}}.btn{display:inline-block;padding:.75rem 1.5rem;margin:.25rem;border:none;border-radius:.375rem;font-size:1rem;font-weight:500;text-align:center;text-decoration:none;cursor:pointer;transition:all .3s ease}@media (max-width: 575.98px){.btn{padding:.625rem 1.25rem;font-size:.9rem;width:100%;margin:.125rem 0}}.card{background:#fff;border-radius:.5rem;box-shadow:0 2px 10px #0000001a;margin-bottom:1rem;overflow:hidden}.card-body{padding:1.5rem}@media (max-width: 575.98px){.card-body{padding:1rem}}.rtl{direction:rtl;text-align:right}.rtl .container{padding-left:15px;padding-right:15px}@media (max-width: 767.98px){.navbar-menu{position:absolute!important;top:100%!important;left:0!important;width:100%!important;height:calc(100vh - 70px)!important;background:#fffffffa!important;backdrop-filter:blur(10px)!important;flex-direction:column!important;padding:20px 0!important;transform:translate(-100%)!important;transition:transform .3s ease!important;box-shadow:0 5px 20px #0000001a!important;overflow-y:auto!important}.navbar-menu.active{transform:translate(0)!important;background:#fff!important}}.hero-section{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem 0}@media (max-width: 767.98px){.hero-section{min-height:80vh;padding:1rem 0}}@media (max-width: 575.98px){.hero-section{min-height:70vh;padding:.5rem 0}}@media (max-width: 767.98px){button,.btn,a[role=button],input[type=submit],input[type=button]{min-height:44px;min-width:44px}}.language-switcher{position:relative;z-index:1000}.language-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#1e293be6;border:1px solid rgba(96,165,250,.3);border-radius:.5rem;color:#fff;cursor:pointer;transition:all .3s ease;font-size:.875rem;backdrop-filter:blur(10px);text-shadow:1px 1px 2px rgba(0,0,0,.5);box-shadow:0 2px 4px #0000001a}.language-btn:hover{background:#60a5fa33;border-color:#60a5fa80;transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.current-lang{display:flex;align-items:center;gap:.25rem}.flag{font-size:1rem}.lang-code{font-weight:600;font-size:.75rem;color:#fff}.chevron{transition:transform .2s ease;color:#fff}.chevron.rotated{transform:rotate(180deg)}.language-dropdown{position:absolute;top:calc(100% + .5rem);right:0;min-width:180px;background:#1e293b;border:1px solid #475569;border-radius:.75rem;box-shadow:0 10px 25px -5px #0000004d,0 10px 10px -5px #0003;overflow:hidden;backdrop-filter:blur(10px);animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.language-option{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;border:none;background:none;text-align:left;cursor:pointer;transition:background-color .2s ease;font-size:.875rem;color:#e2e8f0}.language-option:hover{background-color:#334155}.language-option.active{background-color:#60a5fa33;color:#60a5fa;font-weight:600}.language-option .flag{font-size:1.125rem;min-width:1.5rem}.language-option .lang-name{flex:1;font-weight:500}.language-option .lang-code{font-size:.75rem;font-weight:600;color:#94a3b8;opacity:.8}.language-option.active .lang-code{color:#60a5fa;opacity:1}@media (max-width: 768px){.language-btn{padding:.25rem .5rem;font-size:.75rem;min-width:fit-content}.current-lang{gap:.125rem}.flag{font-size:.875rem}.lang-code{font-size:.6875rem}.language-dropdown{min-width:160px;right:-1rem}.language-option{padding:.625rem .875rem;font-size:.8125rem}.mobile-language-switcher .language-btn{border:1px solid rgba(96,165,250,.3);color:#fff;padding:.5rem .75rem;font-size:.75rem;text-shadow:1px 1px 2px rgba(0,0,0,.5);box-shadow:0 2px 4px #0000001a}.mobile-language-switcher .language-btn:hover{background:#60a5fa40;border-color:#60a5fa80;box-shadow:0 4px 8px #00000026}.mobile-language-switcher .language-dropdown{right:0;top:calc(100% + .25rem);min-width:150px}}@media (max-width: 480px){.language-btn{padding:.25rem .375rem;font-size:.6875rem;gap:.25rem}.current-lang{gap:.125rem}.flag{font-size:.8125rem}.lang-code{font-size:.625rem}.mobile-language-switcher .language-btn{padding:.375rem .5rem;font-size:.6875rem}}[dir=rtl] .language-dropdown{right:auto;left:0}[dir=rtl] .language-option{text-align:right}.theme-toggle-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#1e293b99;border:1px solid rgba(71,85,105,.3);border-radius:.5rem;color:#e2e8f0;cursor:pointer;transition:all .3s ease;outline:none;padding:0;backdrop-filter:blur(10px);box-shadow:0 2px 8px #0000001a}.theme-toggle-btn:hover{background:#60a5fa26;border-color:#60a5fa80;color:#60a5fa;transform:translateY(-2px);box-shadow:0 4px 16px #60a5fa33}.theme-toggle-btn:active{transform:translateY(-1px);background:#60a5fa40;box-shadow:0 2px 8px #60a5fa4d}.theme-toggle-icon{font-size:1.1rem;transition:all .3s ease;filter:drop-shadow(0 1px 2px rgba(0,0,0,.2))}.theme-toggle-btn:hover .theme-toggle-icon{transform:scale(1.1)}.theme-toggle-text{display:none}body.light-mode .theme-toggle-btn{background:#ffffffe6;border:1px solid rgba(229,231,235,.6);box-shadow:0 2px 8px #0000000d}body.light-mode .theme-toggle-btn:hover{background:#2563eb14;border-color:#2563eb66;color:#2563eb;box-shadow:0 4px 16px #2563eb26}body.light-mode .theme-toggle-btn:active{background:#2563eb26;box-shadow:0 2px 8px #2563eb40}body.light-mode .theme-toggle-icon{filter:drop-shadow(0 1px 2px rgba(0,0,0,.1))}@media (max-width: 768px){.theme-toggle-btn.mobile{width:44px;height:44px;padding:12px;background:#60a5fa26!important;border:2px solid rgba(96,165,250,.5)!important;border-radius:8px!important;color:#60a5fa!important;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #60a5fa33!important;transition:all .2s ease;margin:15px 20px}.theme-toggle-btn.mobile:hover{background:#60a5fa40!important;border-color:#60a5facc!important;color:#fff!important;transform:translateY(-1px);box-shadow:0 4px 12px #60a5fa4d!important}.theme-toggle-btn.mobile:active{background:#60a5fa59!important;transform:translateY(0);box-shadow:0 2px 8px #60a5fa66!important}.theme-toggle-btn.mobile .theme-toggle-text{display:none!important}body.light-mode .theme-toggle-btn.mobile{background:#2563eb1a!important;border:2px solid rgba(37,99,235,.4)!important;color:#2563eb!important;box-shadow:0 2px 8px #2563eb26!important}body.light-mode .theme-toggle-btn.mobile:hover{background:#2563eb33!important;border-color:#2563eb99!important;color:#1e40af!important;box-shadow:0 4px 12px #2563eb40!important}body.light-mode .theme-toggle-btn.mobile:active{background:#2563eb4d!important;box-shadow:0 2px 8px #2563eb59!important}.theme-toggle-btn:not(.mobile){width:44px;height:44px;padding:.5rem;background:#1e293bcc;border:1px solid rgba(71,85,105,.4);box-shadow:0 3px 12px #00000026}.theme-toggle-btn:not(.mobile):hover{transform:translateY(-3px);box-shadow:0 6px 20px #60a5fa40}.theme-toggle-icon{font-size:1.2rem}}.theme-toggle-btn.desktop,.theme-toggle-btn.mobile{width:40px;height:40px;padding:0;margin:0;min-width:auto;text-transform:none;letter-spacing:normal;font-weight:400;gap:0;font-size:inherit}@media (max-width: 768px){.theme-toggle-btn.desktop,.theme-toggle-btn.mobile{width:44px;height:44px}}.navbar{background:#0f172af2;backdrop-filter:blur(10px);position:relative;width:100%;z-index:1000;border-bottom:1px solid rgba(71,85,105,.5);box-shadow:0 2px 20px #0000004d}@media (min-width: 769px){.navbar{position:fixed;top:0;left:0;right:0}}.navbar-container{max-width:1200px;margin:0 auto;padding:0 20px;display:flex;justify-content:space-between;align-items:center;height:70px}.navbar-logo{display:flex;align-items:center;text-decoration:none;color:#fff;font-size:24px;font-weight:700;gap:8px}.navbar-logo-img{height:44px;width:auto;min-width:150px;transition:transform .3s ease}.navbar-logo:hover .navbar-logo-img{transform:scale(1.05)}.logo-icon{color:#60a5fa;width:28px;height:28px}.navbar-menu{display:flex;align-items:center;gap:30px}.navbar-link{text-decoration:none;color:#e2e8f0;font-weight:500;font-size:16px;transition:color .3s ease;position:relative;min-width:fit-content}.navbar-link:hover{color:#60a5fa}.navbar-link:after{content:"";position:absolute;width:0;height:2px;bottom:-5px;left:0;background-color:#60a5fa;transition:width .3s ease}.navbar-link:hover:after{width:100%}.navbar-auth{display:flex;align-items:center;gap:15px}.google-signin-container{display:flex;align-items:center;justify-content:center;border-radius:50%;min-height:44px;background:#fff;padding:6px;box-shadow:0 2px 6px #00000026;transition:all .2s ease}.google-signin-container iframe{border-radius:50%!important;overflow:hidden!important}.google-signin-container>div{border-radius:50%!important;overflow:hidden!important;background:#fff!important;box-shadow:none!important}.mobile-signin .google-signin-container{background:#fff;border-radius:50%;padding:4px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #00000026;transition:all .2s ease}.mobile-signin .google-signin-container iframe{border-radius:50%!important;width:36px!important;height:36px!important;overflow:hidden!important}.mobile-signin .google-signin-container>div{border-radius:50%!important;background:#fff!important;box-shadow:none!important;overflow:hidden!important}.mobile-signin .google-signin-container *{border-radius:50%!important;background:#fff!important}.desktop-signin .google-signin-container{background:#fff;border-radius:50%;padding:6px;width:48px;height:48px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #00000026;transition:all .2s ease}.desktop-signin .google-signin-container iframe{border-radius:50%!important;width:36px!important;height:36px!important;overflow:hidden!important}.desktop-signin .google-signin-container>div{border-radius:50%!important;background:#fff!important;box-shadow:none!important;overflow:hidden!important}.desktop-signin .google-signin-container *{border-radius:50%!important;background:#fff!important}.user-menu{display:flex;align-items:center;gap:.75rem;border:1px solid rgba(96,165,250,.3);border-radius:2rem;padding:.375rem .875rem .375rem .375rem;box-shadow:0 2px 6px #00000026;transition:all .2s ease;height:44px;min-height:44px;overflow:hidden;flex-shrink:0}.user-menu:hover{border-color:#60a5fa80;box-shadow:0 4px 12px #0003}.user-avatar{width:40px;height:40px;border-radius:50%;border:2px solid rgba(96,165,250,.6);object-fit:cover;transition:border-color .2s ease;flex-shrink:0}.user-menu:hover .user-avatar{border-color:#60a5facc}.user-name{color:#e2e8f0;font-size:.875rem;font-weight:500;text-shadow:1px 1px 2px rgba(0,0,0,.3);white-space:nowrap}.sign-out-btn{background:#475569cc;color:#fff;border:none;padding:.375rem .75rem;border-radius:50px;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s ease;text-shadow:1px 1px 2px rgba(0,0,0,.3);min-width:70px;height:36px;display:flex;align-items:center;justify-content:center}.sign-out-btn:hover{background:#60a5facc;transform:translateY(-1px);box-shadow:0 2px 8px #60a5fa4d}.navbar-toggle{display:none;color:#e2e8f0;cursor:pointer;font-size:24px;background:#1e293b99;border:1px solid rgba(71,85,105,.3);border-radius:.375rem;padding:.5rem;transition:all .2s ease}.navbar-toggle:hover{background:#60a5fa33;border-color:#60a5fa66;color:#60a5fa;transform:translateY(-1px)}.navbar-toggle:active{transform:translateY(0);background:#60a5fa4d}.mobile-top-bar{display:none}.mobile-auth{display:flex;align-items:center}.mobile-auth .user-menu{display:flex;flex-direction:row;align-items:center;gap:.5rem;background:inherit;border:1px solid rgba(96,165,250,.3);padding:.25rem .5rem .25rem .25rem;border-radius:1.5rem;box-shadow:0 2px 4px #0000001a;transition:all .2s ease;height:44px;min-height:44px}.mobile-auth .user-menu:hover{background:#1e293be6;border-color:#60a5fa80;box-shadow:0 4px 8px #00000026}.mobile-auth .user-avatar{width:32px;height:32px;border-radius:50%;border:2px solid rgba(96,165,250,.6);object-fit:cover;transition:border-color .2s ease}.mobile-auth .user-menu:hover .user-avatar{border-color:#60a5facc}.mobile-auth .user-name{color:#e2e8f0;font-size:.75rem;font-weight:500;text-shadow:1px 1px 2px rgba(0,0,0,.3)}.mobile-auth .sign-out-btn{background:#475569cc;color:#fff;border:none;padding:.25rem .5rem;border-radius:50px;font-size:.6875rem;cursor:pointer;transition:all .2s ease;font-weight:500;text-shadow:1px 1px 2px rgba(0,0,0,.3);min-width:60px;height:36px;display:flex;align-items:center;justify-content:center}.mobile-auth .sign-out-btn:hover{background:#60a5facc;transform:translateY(-1px);box-shadow:0 2px 6px #60a5fa4d}@media (max-width: 768px){.navbar{position:relative!important;background:#0f172af2!important;color:#e2e8f0!important}.navbar-container{padding:0 15px;height:60px;display:flex;justify-content:space-between;align-items:center;background:transparent!important}.navbar-logo{font-size:20px;order:1;flex:0 0 auto;color:#fff!important}.navbar-logo-img{height:44px}.logo-icon{width:24px;height:24px}.mobile-top-bar{display:flex;align-items:center;justify-content:flex-end;order:2;flex:1;gap:.75rem;margin-left:auto;padding:.25rem 0}.mobile-language-switcher{display:block}.mobile-auth{display:flex;align-items:center}.mobile-signin{display:block}.desktop-language-switcher,.desktop-auth,.desktop-signin{display:none}.navbar-toggle{display:block;padding:10px;background:#1e293b99;border:1px solid rgba(71,85,105,.3);border-radius:.375rem;transition:all .2s ease;order:3;flex:0 0 auto;color:#e2e8f0;margin-left:10px;height:44px;align-items:center;display:flex}.navbar-toggle:hover{background:#60a5fa33;border-color:#60a5fa66;transform:translateY(-1px)}.navbar-toggle:active{transform:translateY(0);background:#60a5fa4d}.navbar-menu,.navbar-menu.active,nav .navbar-menu,nav .navbar-menu.active{background:#0f172a!important;background-color:#0f172a!important;color:#e2e8f0!important}.navbar-menu a,.navbar-menu .navbar-link,nav .navbar-menu a,nav .navbar-menu .navbar-link{color:#e2e8f0!important;background:transparent!important;text-decoration:none!important}.navbar-menu a:hover,.navbar-menu .navbar-link:hover,nav .navbar-menu a:hover,nav .navbar-menu .navbar-link:hover{color:#60a5fa!important;background:#60a5fa1a!important}.navbar-menu div,.navbar-menu span,.navbar-menu button{color:#e2e8f0!important}.navbar-menu{position:absolute;top:100%;left:0;width:100%;background:#0f172a!important;backdrop-filter:blur(10px);flex-direction:column;padding:20px 0;transform:translate(-100%);transition:transform .3s ease;box-shadow:0 5px 20px #0006;max-height:calc(100vh - 60px);overflow-y:auto;border:1px solid rgba(71,85,105,.3);z-index:9999}.navbar-menu.active{transform:translate(0);background:#0f172a!important;height:100vh!important;max-height:100vh!important}.navbar-menu *{color:#e2e8f0!important}.navbar-link{padding:18px 20px;width:100%;text-align:left;border-bottom:1px solid rgba(71,85,105,.3)!important;font-size:16px;display:flex;align-items:center;color:#e2e8f0!important;background:transparent!important;text-decoration:none!important;min-height:44px;transition:all .2s ease;font-weight:500}.navbar-link:hover{background-color:#60a5fa1a!important;color:#60a5fa!important}.navbar-link:visited{color:#e2e8f0!important}.navbar-link:last-of-type{border-bottom:none!important}.navbar-auth{padding:20px;border-top:2px solid rgba(96,165,250,.3);flex-direction:column;gap:15px;background:#1e293bb3;backdrop-filter:blur(10px);border-radius:.5rem;margin:10px;border:1px solid rgba(71,85,105,.3)}.navbar-auth .user-menu{flex-direction:column;gap:12px;align-items:center;padding:1rem;background:#33415580;border-radius:.5rem;border:1px solid rgba(96,165,250,.2)}.mobile-auth .user-menu{flex-direction:row!important;gap:.5rem!important;padding:.25rem .5rem .25rem .25rem!important;border-radius:1.5rem!important;background:transparent!important;border:1px solid rgba(96,165,250,.3)!important;box-shadow:0 2px 4px #0000001a!important;align-items:center!important;width:auto!important;max-width:none!important;height:44px!important;min-height:44px!important}.user-name{font-size:16px;color:#e2e8f0;font-weight:500}.navbar-auth .sign-out-btn{padding:8px 16px;font-size:12px;min-height:44px;height:44px;width:auto;max-width:120px;background:#475569cc;color:#fff;border:none;border-radius:50px;font-weight:500;transition:all .2s ease;display:flex;align-items:center;justify-content:center;min-width:80px}.navbar-auth .sign-out-btn:hover{background:#60a5facc;transform:translateY(-1px);box-shadow:0 2px 6px #60a5fa4d}.mobile-auth .sign-out-btn{padding:.25rem .5rem!important;font-size:.6875rem!important;min-height:36px!important;height:36px!important;width:auto!important;max-width:none!important;border-radius:50px!important;background:#475569cc!important;font-weight:500!important;text-shadow:1px 1px 2px rgba(0,0,0,.3)!important;min-width:60px!important;display:flex!important;align-items:center!important;justify-content:center!important}.mobile-auth .sign-out-btn:hover{background:#60a5facc!important;transform:translateY(-1px);box-shadow:0 2px 6px #60a5fa4d}.google-signin-container{width:100%;max-width:200px;border:1px solid rgba(96,165,250,.2);padding:0}}@media (max-width: 480px){.navbar-container{padding:0 10px;height:56px}.navbar-logo{font-size:18px}.navbar-menu{top:100%;max-height:calc(100vh - 56px)}.navbar-link{padding:16px 15px;font-size:15px}.navbar-auth{padding:0;margin:0}}@media (min-width: 769px){.navbar-toggle{display:none}.navbar-menu{position:static;flex-direction:row;background:transparent;width:auto;box-shadow:none;padding:0;margin-top:0;transform:none;opacity:1;visibility:visible}.navbar-link{color:#e2e8f0;padding:.5rem .1rem;border-bottom:none;transition:color .2s ease}.navbar-link:hover{color:#60a5fa}.navbar-auth{flex-direction:row;gap:1rem}.navbar-auth .user-menu{flex-direction:row;gap:.75rem;padding:.375rem .875rem .375rem .375rem;max-width:none;overflow:hidden}.user-avatar{margin-left:2px}.navbar-auth .sign-out-btn{margin-left:.5rem;margin-right:0}.google-signin-container:not(.desktop-signin .google-signin-container):not(.mobile-signin .google-signin-container){background:transparent!important;box-shadow:none!important;padding:0!important}.mobile-top-bar,.mobile-language-switcher,.mobile-auth,.mobile-signin{display:none}.desktop-language-switcher{display:block;margin-right:1rem}.desktop-auth{display:block}.desktop-signin{display:block!important}.user-name{white-space:nowrap}.theme-toggle-btn{flex-shrink:0}.navbar-auth .sign-out-btn{background:#60a5fae6;padding:.25rem .875rem;font-size:.8125rem;min-width:70px;width:auto;height:36px;line-height:1}.navbar-auth .sign-out-btn:hover{background:#60a5fa;transform:translateY(-1px);box-shadow:0 2px 4px #60a5fa4d}.navbar-auth .user-menu{padding-right:1.5rem}.navbar-auth .sign-out-btn{margin-left:.75rem}}body.light-mode .navbar{background:#fffffff2!important;backdrop-filter:blur(10px)!important;border-bottom:1px solid rgba(229,231,235,.8)!important;box-shadow:0 2px 20px #0000001a!important}@media (min-width: 769px){body.light-mode .navbar{position:fixed!important;top:0!important;left:0!important;right:0!important;width:100%!important;z-index:1000!important}}body.light-mode .navbar-logo{color:#1f2937!important}body.light-mode .logo-icon{color:#2563eb!important}body.light-mode .navbar-link{color:#4b5563!important}body.light-mode .navbar-link:hover{color:#2563eb!important}body.light-mode .navbar-link:after{background-color:#2563eb!important}body.light-mode .user-name{color:#374151!important}body.light-mode .navbar-toggle{background:#fffc!important;border:1px solid rgba(229,231,235,.5)!important;color:#374151!important}body.light-mode .navbar-toggle:hover{background:#ffffffe6!important;border-color:#e5e7ebcc!important}@media (max-width: 768px){body.light-mode .navbar-menu{background:#fff!important;border:1px solid rgba(229,231,235,.8)!important;box-shadow:0 4px 20px #0000001a!important}body.light-mode .navbar-menu.active{background:#fff!important;height:100vh!important;max-height:100vh!important}body.light-mode .navbar-link{color:#374151!important}body.light-mode .navbar-link:hover{color:#2563eb!important;background:#2563eb0d!important}}@supports (-webkit-touch-callout: none){@media (max-width: 768px){.navbar-menu{-webkit-transform:translateX(-100%);-webkit-transition:-webkit-transform .3s ease;-webkit-backface-visibility:hidden;transform:translateZ(0);will-change:transform}.navbar-menu.active{-webkit-transform:translateX(0);transform:translate(0) translateZ(0);background:#0f172a!important;height:100vh!important;max-height:100vh!important}body.light-mode .navbar-menu{background:#fff!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}body.light-mode .navbar-menu.active{background:#fff!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;height:100vh!important;max-height:100vh!important}.navbar-menu .navbar-link{-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility}.navbar-menu a,.navbar-link,.navbar-toggle{-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.navbar{padding-top:env(safe-area-inset-top)}.navbar-menu{top:calc(60px + env(safe-area-inset-top));height:calc(100vh - 60px - env(safe-area-inset-top))}}body.light-mode .navbar{background:#fff!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}}@font-face{font-family:swiper-icons;src:url(data:application/font-woff;charset=utf-8;base64,\ d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA);font-weight:400;font-style:normal}:root{--swiper-theme-color: #007aff}:host{position:relative;display:block;margin-left:auto;margin-right:auto;z-index:1}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1;display:block}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function, initial);box-sizing:content-box}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translateZ(0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform;display:block}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px}.swiper-3d .swiper-slide,.swiper-3d .swiper-cube-shadow{transform-style:preserve-3d}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-css-mode.swiper-horizontal>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-css-mode.swiper-vertical>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-css-mode.swiper-free-mode>.swiper-wrapper{scroll-snap-type:none}.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}.swiper-css-mode.swiper-centered>.swiper-wrapper:before{content:"";flex-shrink:0;order:9999}.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-slide-shadow-bottom{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:#00000026}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom,#00000080,#0000)}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color, var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader{animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color: #fff}.swiper-lazy-preloader-black{--swiper-preloader-color: #000}@keyframes swiper-preloader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:root{--swiper-navigation-size: 44px}.swiper-button-prev,.swiper-button-next{position:absolute;top:var(--swiper-navigation-top-offset, 50%);width:calc(var(--swiper-navigation-size) / 44 * 27);height:var(--swiper-navigation-size);margin-top:calc(0px - (var(--swiper-navigation-size) / 2));z-index:10;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--swiper-navigation-color, var(--swiper-theme-color))}.swiper-button-prev.swiper-button-disabled,.swiper-button-next.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-prev.swiper-button-hidden,.swiper-button-next.swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled .swiper-button-prev,.swiper-navigation-disabled .swiper-button-next{display:none!important}.swiper-button-prev svg,.swiper-button-next svg{width:100%;height:100%;object-fit:contain;transform-origin:center}.swiper-rtl .swiper-button-prev svg,.swiper-rtl .swiper-button-next svg{transform:rotate(180deg)}.swiper-button-prev,.swiper-rtl .swiper-button-next{left:var(--swiper-navigation-sides-offset, 10px);right:auto}.swiper-button-lock{display:none}.swiper-button-prev:after,.swiper-button-next:after{font-family:swiper-icons;font-size:var(--swiper-navigation-size);text-transform:none!important;letter-spacing:0;font-variant:initial;line-height:1}.swiper-button-prev:after,.swiper-rtl .swiper-button-next:after{content:"prev"}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:var(--swiper-navigation-sides-offset, 10px);left:auto}.swiper-button-next:after,.swiper-rtl .swiper-button-prev:after{content:"next"}.swiper-pagination{position:absolute;text-align:center;transition:.3s opacity;transform:translateZ(0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{display:none!important}.swiper-pagination-fraction,.swiper-pagination-custom,.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal{bottom:var(--swiper-pagination-bottom, 8px);top:var(--swiper-pagination-top, auto);left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transform:scale(.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));height:var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));display:inline-block;border-radius:var(--swiper-pagination-bullet-border-radius, 50%);background:var(--swiper-pagination-bullet-inactive-color, #000);opacity:var(--swiper-pagination-bullet-inactive-opacity, .2)}button.swiper-pagination-bullet{border:none;margin:0;padding:0;box-shadow:none;-webkit-appearance:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity, 1);background:var(--swiper-pagination-color, var(--swiper-theme-color))}.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets{right:var(--swiper-pagination-right, 8px);left:var(--swiper-pagination-left, auto);top:50%;transform:translate3d(0,-50%,0)}.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap, 6px) 0;display:block}.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px}.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:.2s transform,.2s top}.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap, 4px)}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{left:50%;transform:translate(-50%);white-space:nowrap}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s left}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s right}.swiper-pagination-fraction{color:var(--swiper-pagination-fraction-color, inherit)}.swiper-pagination-progressbar{background:var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, .25));position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color, var(--swiper-theme-color));position:absolute;left:0;top:0;width:100%;height:100%;transform:scale(0);transform-origin:left top}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:right top}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite{width:100%;height:var(--swiper-pagination-progressbar-size, 4px);left:0;top:0}.swiper-vertical>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite{width:var(--swiper-pagination-progressbar-size, 4px);height:100%;left:0;top:0}.swiper-pagination-lock{display:none}.swiper-fade.swiper-free-mode .swiper-slide{transition-timing-function:ease-out}.swiper-fade .swiper-slide{pointer-events:none;transition-property:opacity}.swiper-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-fade .swiper-slide-active,.swiper-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.home{min-height:100vh;background:linear-gradient(135deg,#0f172a,#1e293b);color:#fff}.hero{position:relative;height:60vh;min-height:400px;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#0f172a66;z-index:2}.hero-content{position:relative;z-index:3;text-align:center;max-width:800px;animation:fadeInUp 1s ease-out}.hero-content .container{max-width:100%}.hero-logo{height:80px;margin-bottom:2rem;opacity:.9}.hero h2{font-size:clamp(2.5rem,5vw,3.5rem);font-weight:500;margin-bottom:20px;color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol;line-height:1.3;letter-spacing:-.02em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.hero p{font-size:1.3rem;line-height:1.6;margin-bottom:2rem;color:#f8fafc;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.hero-location{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:2.5rem;font-size:1.1rem;color:#cbd5e1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.location-icon{width:20px;height:20px}.cta-button{display:inline-block;padding:16px 32px;background:#3b82f6;color:#fff;text-decoration:none;border-radius:12px;font-weight:600;font-size:1.1rem;transition:all .3s ease;box-shadow:0 4px 15px #3b82f666;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.cta-button:hover{background:#1d4ed8;transform:translateY(-2px);box-shadow:0 6px 20px #3b82f680}.carousel-section{padding:80px 0;background:linear-gradient(135deg,#1e293b,#334155)}.carousel-section h2{font-size:2.5rem;font-weight:700;text-align:center;margin-bottom:1rem;color:#fff}.carousel-subtitle{text-align:center;font-size:1.2rem;color:#cbd5e1;margin-bottom:3rem}.gallery-link{color:#60a5fa;text-decoration:none;font-weight:500;transition:color .3s ease}.gallery-link:hover{color:#93c5fd}.carousel-container{max-width:1000px;margin:0 auto;border-radius:20px;overflow:hidden;box-shadow:0 20px 60px #0000004d}.property-carousel{height:500px}.slide-content{position:relative;height:100%}.slide-content img{width:100%;height:100%;object-fit:cover}.slide-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#000c);padding:40px 30px 30px;color:#fff}.slide-overlay h3{font-size:1.5rem;font-weight:600;margin:0}.property-carousel .swiper-button-next,.property-carousel .swiper-button-prev{color:#fff;background:#00000080;width:50px;height:50px;border-radius:50%}.property-carousel .swiper-button-next:after,.property-carousel .swiper-button-prev:after{font-size:20px}.property-carousel .swiper-pagination-bullet{width:12px;height:12px;background:#ffffff80}.property-carousel .swiper-pagination-bullet-active{background:#3b82f6}.property-details{padding:80px 0;background:linear-gradient(135deg,#0f172a,#1e293b)}.details-grid{display:grid;grid-template-columns:1fr 320px;gap:60px;align-items:start}.details-content h2{font-size:2.5rem;font-weight:700;margin-bottom:1.5rem;color:#fff}.details-content p{font-size:1.1rem;line-height:1.8;color:#cbd5e1;margin-bottom:2rem}.property-specs{display:flex;gap:20px;margin-bottom:2rem;flex-wrap:wrap}.spec-item{display:flex;align-items:center;gap:8px;color:#e2e8f0;font-weight:500}.spec-icon{width:20px;height:20px;color:#3b82f6}.amenities-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.amenity-item{display:flex;align-items:center;gap:10px;color:#e2e8f0;font-weight:500}.amenity-item svg{width:20px;height:20px;color:#3b82f6}.booking-card{background:#1e293be6;backdrop-filter:blur(15px);border:1px solid rgba(71,85,105,.5);border-radius:20px;padding:30px;position:sticky;top:100px;box-shadow:0 20px 45px #0006;max-width:600px}.price-section{text-align:center;padding:25px 20px;background:#33415599;border-radius:15px;margin-bottom:25px;border:1px solid rgba(71,85,105,.3)}.price{font-size:2.5rem;font-weight:700;color:#60a5fa;display:block}.period{color:#94a3b8;font-size:1.1rem;margin-top:5px}.book-now-btn{width:100%;padding:16px;background:#3b82f6;color:#fff;border:none;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;text-decoration:none;display:block;text-align:center;transition:all .3s ease;margin-bottom:15px}.book-now-btn:hover{background:#1d4ed8;transform:translateY(-2px)}.booking-note{font-size:.9rem;color:#94a3b8;text-align:center;line-height:1.4}.features{padding:80px 0;background:linear-gradient(135deg,#1e293b,#334155)}.features h2{font-size:2.5rem;font-weight:700;text-align:center;margin-bottom:3rem;color:#fff}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:40px}.feature-card{background:#334155cc;backdrop-filter:blur(10px);padding:40px 30px;border-radius:20px;text-align:center;border:1px solid rgba(71,85,105,.3);transition:all .3s ease;box-shadow:0 15px 35px #0000004d;max-width:600px}.feature-card:hover{transform:translateY(-5px);background:#334155e6;border-color:#60a5fa4d;box-shadow:0 20px 50px #0006}.feature-icon{width:60px;height:60px;color:#3b82f6;margin-bottom:20px}.feature-card .feature-icon:has(path[d*=M]),.amenity-item svg:has(path[d*=M]){background:linear-gradient(135deg,#22c55e,#16a34a,#84cc16,#65a30d,#eab308);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 2px 4px rgba(34,197,94,.3))}.feature-icon svg[data-lucide=mountain],.amenity-item svg[data-lucide=mountain]{color:#22c55e!important;filter:drop-shadow(1px 0 0 #16a34a) drop-shadow(-1px 0 0 #84cc16) drop-shadow(0 1px 0 #65a30d) drop-shadow(0 -1px 0 #eab308) drop-shadow(0 0 8px rgba(34,197,94,.4))}.feature-card h3{font-size:1.5rem;font-weight:600;margin-bottom:15px;color:#fff}.feature-card p{color:#cbd5e1;line-height:1.6;font-size:1rem}body.light-mode{background:#fff!important;background-color:#fff!important}body.light-mode .home{background:#f8fafc!important;color:#374151!important}html body.light-mode .home,body.light-mode.light-mode .home{background:#f8fafc!important;background-color:#f8fafc!important;background-image:none!important;color:#374151!important}body.light-mode .hero-overlay{background:#00000026!important}body.light-mode .hero{height:65vh!important;min-height:400px!important}body.light-mode .hero-content{position:relative!important;z-index:3!important;text-align:center!important;max-width:800px!important;animation:fadeInUp 1s ease-out!important}body.light-mode .hero-content .container{max-width:100%!important;padding:0!important;margin:0!important}body.light-mode .hero h2{color:#fff!important;font-size:clamp(2.5rem,5vw,3.5rem)!important;font-weight:500!important;margin-bottom:20px!important;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol!important;line-height:1.3!important;letter-spacing:-.02em!important;-webkit-font-smoothing:antialiased!important;-moz-osx-font-smoothing:grayscale!important}body.light-mode .hero p{color:#fff!important;font-size:1.3rem!important;line-height:1.6!important;margin-bottom:2rem!important;text-shadow:0 2px 4px rgba(0,0,0,.8),0 0 6px rgba(0,0,0,.5)!important;-webkit-font-smoothing:antialiased!important;-moz-osx-font-smoothing:grayscale!important}body.light-mode .hero-location{color:#fff!important;font-size:1.1rem!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:.5rem!important;margin-bottom:2.5rem!important;text-shadow:0 2px 4px rgba(0,0,0,.8),0 0 6px rgba(0,0,0,.5)!important;-webkit-font-smoothing:antialiased!important;-moz-osx-font-smoothing:grayscale!important}body.light-mode .location-icon{color:#fff!important}body.light-mode .cta-button{display:inline-block!important;padding:16px 32px!important;background:#2563eb!important;color:#fff!important;text-decoration:none!important;border-radius:12px!important;font-weight:600!important;font-size:1.1rem!important;transition:all .3s ease!important;box-shadow:0 4px 15px #2563eb66!important;-webkit-font-smoothing:antialiased!important;-moz-osx-font-smoothing:grayscale!important}body.light-mode .cta-button:hover{background:#1d4ed8!important;transform:translateY(-2px)!important;box-shadow:0 6px 20px #2563eb80!important}body.light-mode .carousel-section,html body.light-mode .carousel-section,body.light-mode .home .carousel-section{background:#ffffffd9!important;background-color:#ffffffd9!important;background-image:none!important;border-radius:16px!important;padding:40px!important;margin:30px 0!important;border:1px solid rgba(255,255,255,.3)!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f!important}body.light-mode .carousel-section h2{color:#111827!important;font-weight:700!important;font-size:2.5rem!important;text-shadow:none!important;line-height:1.2!important}body.light-mode .carousel-subtitle{color:#374151!important}body.light-mode .gallery-link{color:#2563eb!important;font-weight:500!important}body.light-mode .gallery-link:hover{color:#1d4ed8!important}body.light-mode .carousel-container{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f!important;border:1px solid #e5e7eb!important}body.light-mode .property-carousel .swiper-button-next,body.light-mode .property-carousel .swiper-button-prev{background:#ffffffe6!important;color:#374151!important;box-shadow:0 2px 4px #0000001a!important}body.light-mode .property-carousel .swiper-pagination-bullet{background:#d1d5db!important}body.light-mode .property-carousel .swiper-pagination-bullet-active{background:#2563eb!important}body.light-mode .property-details{background:#ffffffd9!important;background-color:#ffffffd9!important;background-image:none!important;border-radius:16px!important;padding:40px!important;margin:30px 0!important;border:1px solid rgba(255,255,255,.3)!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f!important}html body.light-mode .property-details,body.light-mode .home .property-details{background:#fff!important;background-color:#fff!important;background-image:none!important;border-radius:16px!important;padding:40px!important;margin:30px 0!important;border:1px solid #e5e7eb!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f!important}body.light-mode .details-content h2{color:#111827!important;font-weight:700!important;font-size:2.25rem!important;text-shadow:none!important;line-height:1.2!important}body.light-mode .details-content p{color:#4b5563!important}body.light-mode .spec-item{color:#374151!important;background:#f8fafc!important;padding:15px 20px!important;border-radius:12px!important;border:1px solid #e5e7eb!important;transition:all .3s ease!important}body.light-mode .spec-item:hover{background:#fff!important;border-color:#2563eb!important;transform:translateY(-2px)!important;box-shadow:0 4px 12px #2563eb1a!important}body.light-mode .spec-icon{color:#3b82f6!important}body.light-mode .amenity-item{color:#374151!important;background:#f8fafc!important;padding:15px 20px!important;border-radius:12px!important;border:1px solid #e5e7eb!important;transition:all .3s ease!important;display:flex!important;align-items:center!important;gap:12px!important}body.light-mode .amenity-item:hover{background:#fff!important;border-color:#2563eb!important;transform:translateY(-2px)!important;box-shadow:0 4px 12px #2563eb1a!important}body.light-mode .amenity-item svg{color:#3b82f6!important}body.light-mode .booking-card{background:#ffffffd9!important;border:2px solid rgba(255,255,255,.3)!important;border-radius:20px!important;padding:30px!important;box-shadow:0 10px 25px #00000014!important}body.light-mode .price-section{background:#f8fafc!important;border:1px solid #e5e7eb!important;border-radius:15px!important;padding:25px 20px!important;margin-bottom:25px!important;text-align:center!important}body.light-mode .price{color:#1e40af!important;font-weight:700!important}body.light-mode .period{color:#4b5563!important}body.light-mode .book-now-btn{background:#2563eb!important;color:#fff!important;font-weight:600!important;width:100%!important;padding:16px!important;border:none!important;border-radius:12px!important;font-size:1.1rem!important;cursor:pointer!important;text-decoration:none!important;display:block!important;text-align:center!important;transition:all .3s ease!important;margin-bottom:15px!important}body.light-mode .book-now-btn:hover{background:#1d4ed8!important;transform:translateY(-2px)!important}body.light-mode .booking-note{color:#4b5563!important}body.light-mode .features{background:#ffffffd9!important;background-color:#ffffffd9!important;background-image:none!important;border-radius:16px!important;padding:40px!important;margin:30px 0!important;border:1px solid rgba(255,255,255,.3)!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f!important}html body.light-mode .features,body.light-mode .home .features{background:#ffffffd9!important;background-color:#ffffffd9!important;backdrop-filter:blur(10px)!important;background-image:none!important;border-radius:16px!important;padding:40px!important;margin:30px 0!important;border:1px solid rgba(255,255,255,.3)!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f!important}body.light-mode .features h2{color:#111827!important;font-weight:700!important;font-size:2.25rem!important;text-shadow:none!important;line-height:1.2!important}body.light-mode .feature-card{background:#ffffffd9!important;backdrop-filter:blur(10px)!important;border:2px solid rgba(255,255,255,.3)!important;border-radius:20px!important;padding:40px 30px!important;text-align:center!important;transition:all .3s ease!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f!important}body.light-mode .feature-card:hover{background:#fffffff2!important;backdrop-filter:blur(15px)!important;border-color:#2563eb!important;box-shadow:0 10px 25px #2563eb26,0 4px 6px -2px #0000000d!important;transform:translateY(-5px)!important}body.light-mode .feature-card h3{color:#111827!important;font-weight:700!important;font-size:1.25rem!important;line-height:1.3!important}body.light-mode .feature-card p{color:#4b5563!important}body.light-mode .feature-icon{color:#3b82f6!important;width:60px!important;height:60px!important;margin-bottom:20px!important}body.light-mode .feature-icon svg[data-lucide=mountain],body.light-mode .amenity-item svg[data-lucide=mountain]{color:#7c3aed!important;filter:drop-shadow(1px 0 0 #8b5cf6) drop-shadow(-1px 0 0 #a855f7) drop-shadow(0 1px 0 #6d28d9) drop-shadow(0 -1px 0 #c084fc) drop-shadow(0 0 6px rgba(124,58,237,.4))}body.light-mode .feature-card .feature-icon:has(path[d*=M]),body.light-mode .amenity-item svg:has(path[d*=M]){background:linear-gradient(135deg,#7c3aed,#8b5cf6,#a855f7,#6d28d9,#c084fc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 2px 4px rgba(124,58,237,.3))}@media (max-width: 1199.98px){.hero h1{font-size:clamp(2.5rem,5vw,3.5rem)}.details-grid{grid-template-columns:1fr 280px;gap:40px}}@media (max-width: 991.98px){.hero{height:65vh}.hero h1{font-size:clamp(2.2rem,4.5vw,3rem)}.hero p{font-size:clamp(1rem,2.5vw,1.2rem)}.carousel-section h2,.features h2,.details-content h2{font-size:clamp(1.8rem,3.5vw,2.2rem)}.details-grid{grid-template-columns:1fr;gap:40px}.booking-card{position:static;max-width:500px;margin:0 auto}.property-specs{justify-content:center;flex-wrap:wrap;gap:20px}.amenities-grid{grid-template-columns:repeat(2,1fr);gap:20px}.property-carousel{height:450px}.property-carousel .swiper-pagination,.slide-overlay{display:none!important}.features-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px}}@media (max-width: 767.98px){.hero{height:65vh;min-height:350px;padding:20px 0}.hero-content{padding:0 15px}.hero-logo{display:none}.hero h1{font-size:clamp(2rem,4vw,2.5rem)}.hero p{font-size:clamp(.95rem,2.2vw,1.1rem)}.carousel-section,.property-details,.features{padding:60px 0}.carousel-section h2,.features h2,.details-content h2{font-size:clamp(1.6rem,3.2vw,2rem)}.property-specs{flex-direction:column;gap:15px;align-items:center}.amenities-grid{grid-template-columns:1fr;gap:15px}.property-carousel{height:350px}.property-carousel .swiper-pagination,.slide-overlay{display:none!important}.features-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:25px}.feature-card{padding:25px 20px;border-radius:15px}.booking-card{max-width:100%;padding:25px;border-radius:15px}.price{font-size:2.3rem}.price-section{padding:18px 15px;margin-bottom:20px}}@media (max-width: 575.98px){.hero{height:65vh;min-height:300px;padding:15px 0}.hero-content{padding:0 10px}.hero h1{font-size:clamp(1.8rem,3.5vw,2.2rem);margin-bottom:.8rem}.hero p{font-size:clamp(.9rem,2vw,1rem);margin-bottom:1.5rem}.hero-location{font-size:1rem;margin-bottom:1.5rem}.cta-button{padding:12px 25px;font-size:1rem}.carousel-section,.property-details,.features{padding:40px 0}.carousel-section h2,.features h2,.details-content h2{font-size:clamp(1.4rem,3vw,1.8rem);margin-bottom:.8rem}.carousel-subtitle{font-size:1rem;margin-bottom:2rem}.details-content p{font-size:.95rem;line-height:1.6}.property-carousel{height:280px}.carousel-container{border-radius:15px}.slide-overlay{display:none!important}.feature-card{padding:20px 15px;border-radius:15px}.feature-icon{width:50px;height:50px;margin-bottom:15px}.feature-card h3{font-size:1.25rem;margin-bottom:10px}.feature-card p{font-size:.9rem}.booking-card{padding:20px;border-radius:12px}.price{font-size:2.1rem}.price-section{padding:18px 12px;margin-bottom:20px}.period{font-size:1rem}.book-now-btn{padding:12px;font-size:1rem;border-radius:8px}.booking-note{font-size:.85rem}.property-carousel .swiper-button-next,.property-carousel .swiper-button-prev{width:40px;height:40px}.property-carousel .swiper-button-next:after,.property-carousel .swiper-button-prev:after{font-size:16px}.property-carousel .swiper-pagination{display:none!important}}@media (max-width: 479.98px){.container{padding:0 15px}.hero{height:65vh;min-height:300px}.hero h1{font-size:clamp(1.6rem,3.2vw,2rem)}.carousel-section,.property-details,.features{padding:30px 0}.property-carousel{height:250px}.property-carousel .swiper-pagination,.slide-overlay{display:none!important}.feature-card{padding:15px 10px}.booking-card{padding:15px}}@media (min-width: 1024px){.hero h1{color:#fff;font-size:clamp(3rem,4vw,4rem)}.hero p{color:#f8fafc;font-size:1.4rem;line-height:1.7}.carousel-section{background:linear-gradient(135deg,#1e293b,#334155)}.carousel-section h2{color:#fff;font-size:3rem}.property-details{background:linear-gradient(135deg,#0f172a,#1e293b)}.details-content h2{color:#fff;font-size:3rem}.details-content p{color:#f1f5f9;font-size:1.2rem;line-height:1.8}.booking-card{background:#1e293be6;border:1px solid rgba(71,85,105,.5);box-shadow:0 20px 45px #0006}.features{background:linear-gradient(135deg,#1e293b,#334155)}.features h2{color:#fff;font-size:3rem}.feature-card{background:#334155cc;border:1px solid rgba(71,85,105,.3);box-shadow:0 15px 35px #0000004d}.feature-card:hover{background:#334155e6;border-color:#60a5fa4d;box-shadow:0 20px 50px #0006}body.light-mode .carousel-section{background:#ffffffd9!important;background-color:#ffffffd9!important;backdrop-filter:blur(10px)!important;background-image:none!important;border-radius:16px!important;padding:40px!important;margin:30px 0!important;border:1px solid rgba(255,255,255,.3)!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f!important}body.light-mode .carousel-section h2{color:#1f2937!important;font-weight:600!important;font-size:2.5rem!important}body.light-mode .property-details{background:#ffffffd9!important;background-color:#ffffffd9!important;backdrop-filter:blur(10px)!important;background-image:none!important;border-radius:16px!important;padding:40px!important;margin:30px 0!important;border:1px solid rgba(255,255,255,.3)!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f!important}body.light-mode .details-content h2{color:#1f2937!important;font-weight:600!important;font-size:2.5rem!important}body.light-mode .details-content p{color:#4b5563!important}body.light-mode .booking-card{background:#ffffffd9!important;background-color:#ffffffd9!important;backdrop-filter:blur(10px)!important;border:2px solid rgba(255,255,255,.3)!important;border-radius:20px!important;padding:30px!important;box-shadow:0 10px 25px #00000014!important}body.light-mode .features{background:#ffffffd9!important;background-color:#ffffffd9!important;backdrop-filter:blur(10px)!important;background-image:none!important;border-radius:16px!important;padding:40px!important;margin:30px 0!important;border:1px solid rgba(255,255,255,.3)!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f!important}body.light-mode .features h2{color:#1f2937!important;font-weight:600!important;font-size:2.5rem!important}body.light-mode .feature-card{background:#fff!important;background-color:#fff!important;backdrop-filter:none!important;border:2px solid #e5e7eb!important;border-radius:20px!important;padding:40px 30px!important;text-align:center!important;transition:all .3s ease!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f!important}body.light-mode .feature-card:hover{background:#fff!important;background-color:#fff!important;border-color:#2563eb!important;box-shadow:0 10px 25px #2563eb26,0 4px 6px -2px #0000000d!important;transform:translateY(-5px)!important}}@media (min-width: 1440px){.hero h1{font-size:clamp(3.5rem,4vw,4.5rem)}.hero p{font-size:1.5rem}.carousel-section h2,.features h2,.details-content h2{font-size:3.5rem}.details-content p{font-size:1.3rem;line-height:1.9}.feature-card{padding:50px 40px}.booking-card{padding:40px}body.light-mode .carousel-section h2,body.light-mode .features h2,body.light-mode .details-content h2{color:#1f2937!important;font-weight:600!important;font-size:2.8rem!important}body.light-mode .details-content p{color:#4b5563!important}}@media (max-width: 991.98px){body.light-mode .hero{height:65vh!important}}@media (max-width: 767.98px){body.light-mode .hero{height:65vh!important;min-height:350px!important}}@media (max-width: 575.98px){body.light-mode .hero{height:65vh!important;min-height:300px!important}}@media (max-width: 479.98px){body.light-mode .hero{height:65vh!important;min-height:300px!important}}body.light-mode .carousel-section .container{padding:0 20px}@supports (-webkit-touch-callout: none){.hero{height:60vh;min-height:-webkit-fill-available;min-height:400px}.home{min-height:-webkit-fill-available}.hero h2,.hero p,.hero-location,.cta-button{-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility}.hero-content{-webkit-transform:translateZ(0);transform:translateZ(0);will-change:transform}.hero-background img{-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.cta-button{-webkit-appearance:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;cursor:pointer;border:none;outline:none}input,select,textarea{font-size:16px!important}}@media only screen and (device-width: 393px) and (device-height: 852px) and (-webkit-device-pixel-ratio: 3){.hero{height:65vh;min-height:65vh}.hero h2{font-size:clamp(2.2rem,4.5vw,3.2rem);line-height:1.2}.hero p{font-size:1.2rem;line-height:1.5}.hero-content{padding:0 10px;max-width:90%}.container{padding:0 16px}}@media screen and (max-width: 428px){@supports (-webkit-touch-callout: none){.home{overflow-x:hidden;width:100%;max-width:100vw}.container{width:100%;max-width:100%;padding:0 15px;margin:0 auto;box-sizing:border-box}.hero{height:65vh;min-height:65vh;max-height:65vh;width:100%;position:relative;display:flex;align-items:center;justify-content:center}.hero-background{width:100%;height:100%;position:absolute;top:0;left:0}.hero-background img{width:100%;height:100%;object-fit:cover;object-position:center;-webkit-transform:translateZ(0);transform:translateZ(0)}.hero-content{width:100%;max-width:95%;padding:0 10px;text-align:center;position:relative;z-index:3}.hero h2{font-size:clamp(2rem,8vw,2.8rem);line-height:1.1;margin-bottom:16px;font-weight:600;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.hero p{font-size:1.1rem;line-height:1.4;margin-bottom:1.5rem;-webkit-font-smoothing:antialiased}.hero-location{font-size:1rem;margin-bottom:2rem;gap:.4rem}.cta-button{padding:14px 28px;font-size:1rem;border-radius:10px;-webkit-appearance:none;-webkit-touch-callout:none;touch-action:manipulation}}}@supports (-webkit-touch-callout: none){body.light-mode .hero{background:linear-gradient(135deg,#f8fafc,#e2e8f0)}body.light-mode .hero-overlay{background:#f8fafc4d}body.light-mode .hero h2,body.light-mode .hero p,body.light-mode .hero-location{-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility}}@media screen and (max-device-width: 428px){@supports (-webkit-touch-callout: none){*{-webkit-tap-highlight-color:transparent}a,button,.cta-button{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;touch-action:manipulation}.cta-button:active{transform:translateY(-1px) scale(.98);transition:all .1s ease}}}@supports (-webkit-touch-callout: none){h1,h2,h3,h4,h5,h6{hyphens:none!important;-webkit-hyphens:none!important;word-break:keep-all!important;overflow-wrap:break-word!important;word-wrap:break-word!important}.hero h2,.hero p,.hero-location,.features h2,.feature-card h3{hyphens:none!important;-webkit-hyphens:none!important;word-break:keep-all!important;overflow-wrap:break-word!important;word-wrap:break-word!important;white-space:normal!important}@media (max-width: 768px){.hero h2,.hero p,.features h2,.feature-card h3,.testimonials h2,.cta h2{hyphens:none!important;-webkit-hyphens:none!important;word-break:keep-all!important;overflow-wrap:break-word!important;word-wrap:break-word!important;white-space:normal!important}}}.reservation-timer{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#e8f4fd;border:2px solid #3498db;border-radius:8px;margin:16px 0;font-weight:500;color:#2c3e50;transition:all .3s ease}.reservation-timer.warning{background:#fff3cd;border-color:#ffc107;color:#856404;animation:pulse 1s infinite}.reservation-timer.expired{background:#f8d7da;border-color:#dc3545;color:#721c24}.reservation-timer svg{color:#3498db;flex-shrink:0}.reservation-timer.warning svg{color:#ffc107}.reservation-timer.expired svg{color:#dc3545}.timer-text{font-size:1rem}.timer-text strong{font-size:1.1rem;font-weight:700}.warning-text{font-size:.9rem;font-weight:600;color:#d63384;margin-left:8px}@keyframes pulse{0%{transform:scale(1);box-shadow:0 0 #ffc10766}50%{transform:scale(1.02);box-shadow:0 0 0 8px #ffc1071a}to{transform:scale(1);box-shadow:0 0 #ffc10700}}@media (max-width: 768px){.reservation-timer{flex-direction:column;align-items:flex-start;gap:4px;padding:10px 12px}.timer-text{font-size:.9rem}.warning-text{font-size:.8rem;margin-left:0}}.credit-card-form{background:#fff;border-radius:16px;padding:24px;box-shadow:0 4px 20px #00000014;max-width:500px;margin:0 auto}.card-preview{margin-bottom:32px;perspective:1000px}.card-display{width:100%;height:200px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;padding:24px;color:#fff;position:relative;box-shadow:0 8px 32px #00000026;transition:all .3s ease;transform-style:preserve-3d}.card-display:hover{transform:rotateY(5deg) rotateX(5deg);box-shadow:0 12px 40px #0003}.card-display.visa{background:linear-gradient(135deg,#1e3c72,#2a5298)}.card-display.mastercard{background:linear-gradient(135deg,#eb3349,#f45c43)}.card-display.amex{background:linear-gradient(135deg,#2c5530,#416045)}.card-display.discover{background:linear-gradient(135deg,#ff6b35,#f7931e)}.card-display.default{background:linear-gradient(135deg,#667eea,#764ba2)}.card-number-display{font-family:Courier New,monospace;font-size:20px;font-weight:500;letter-spacing:2px;margin-bottom:24px;text-shadow:0 2px 4px rgba(0,0,0,.2)}.card-info{display:flex;justify-content:space-between;align-items:flex-end;position:absolute;bottom:24px;left:24px;right:24px}.card-name{font-family:Courier New,monospace;font-size:14px;font-weight:600;letter-spacing:1px;text-shadow:0 1px 2px rgba(0,0,0,.2);max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-expiry{font-family:Courier New,monospace;font-size:14px;font-weight:500;text-shadow:0 1px 2px rgba(0,0,0,.2)}.card-type-icon{position:absolute;top:20px;right:20px;font-size:32px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.form-fields{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:600;color:#2c3e50;font-size:14px;display:flex;align-items:center;gap:8px}.field-icon{width:16px;height:16px;color:#3498db}.card-type-label{color:#27ae60;font-weight:500;font-size:12px}.cvv-length{color:#7f8c8d;font-weight:400;font-size:12px}.card-input{padding:16px;border:2px solid #e1e8ed;border-radius:12px;font-size:16px;font-family:Segoe UI,sans-serif;transition:all .3s ease;background:#fff;color:#2c3e50}.card-input:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;transform:translateY(-2px)}.card-input:disabled{background:#f8f9fa;color:#adb5bd;cursor:not-allowed}.card-input[id=cardNumber]{font-family:Courier New,monospace;letter-spacing:1px;font-size:18px}.card-input.has-card-type{border-color:#27ae60;background:#f8fff8}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.cvv-input-container{position:relative;display:flex;align-items:center}.cvv-input{font-family:Courier New,monospace;letter-spacing:2px;padding-right:48px}.cvv-toggle{position:absolute;right:12px;background:none;border:none;color:#7f8c8d;cursor:pointer;padding:4px;border-radius:4px;transition:all .2s ease}.cvv-toggle:hover{color:#3498db;background:#3498db1a}.form-group.error .card-input{border-color:#e74c3c;background:#fdf2f2;animation:shake .3s ease-in-out}.error-message{color:#e74c3c;font-size:12px;font-weight:500;margin-top:4px;display:flex;align-items:center;gap:4px}.error-message:before{content:"⚠️";font-size:14px}.success-message{color:#27ae60;font-size:12px;font-weight:500;margin-top:4px;display:flex;align-items:center;gap:4px}.security-info{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:24px;padding:12px;background:#3498db0d;border-radius:8px;color:#3498db;font-size:14px;font-weight:500}.security-icon{width:16px;height:16px}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.credit-card-form{animation:fadeIn .5s ease-out}@media (max-width: 768px){.credit-card-form{padding:20px;margin:0 16px}.card-display{height:180px;padding:20px}.card-number-display{font-size:18px;margin-bottom:20px}.card-name{font-size:12px;max-width:150px}.card-expiry{font-size:12px}.form-row{grid-template-columns:1fr;gap:16px}.card-input{padding:14px;font-size:16px}}@media (max-width: 480px){.card-display{height:160px;padding:16px}.card-number-display{font-size:16px;margin-bottom:16px}.card-info{bottom:16px;left:16px;right:16px}.card-type-icon{top:12px;right:12px;font-size:24px}}.card-input:focus-visible{outline:2px solid #3498db;outline-offset:2px}.cvv-toggle:focus-visible{outline:2px solid #3498db;outline-offset:2px}@media (prefers-contrast: high){.card-display{border:2px solid #000}.card-input{border-width:3px}.error-message{background:#fff;padding:4px 8px;border-radius:4px}}@media (prefers-reduced-motion: reduce){.card-display{transition:none}.card-display:hover{transform:none}.card-input{transition:none}.credit-card-form{animation:none}}.guest-info-section{margin-bottom:2rem}.guest-info-section h3{color:#e2e8f0;font-size:1.5rem;font-weight:600;margin-bottom:1.5rem;display:flex;align-items:center;gap:.5rem}.guest-info-section .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.guest-info-section .form-group{margin-bottom:1.5rem}.guest-info-section .form-group label{display:block;color:#cbd5e1;font-weight:500;margin-bottom:.5rem;font-size:1rem}.guest-info-section .form-group input,.guest-info-section .form-group textarea{width:100%;padding:.875rem 1rem;background:#2d3748;border:1px solid #4a5568;border-radius:8px;color:#e2e8f0;font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease}.guest-info-section .form-group input::placeholder,.guest-info-section .form-group textarea::placeholder{color:#a0aec0}.guest-info-section .form-group input:focus,.guest-info-section .form-group textarea:focus{outline:none;border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa1a}.guest-info-section .form-group input.error,.guest-info-section .form-group textarea.error{border-color:#ef4444;background:#ef44441a}.guest-info-section .form-group textarea{resize:vertical;min-height:80px}.guest-info-section .error-message{color:#ef4444;font-size:.875rem;margin-top:.5rem;padding:.5rem;background:#ef44441a;border-radius:4px;border-left:3px solid #ef4444}.guest-info-section .success-message{color:#10b981;font-size:.875rem;margin-top:.5rem;padding:.5rem;background:#10b9811a;border-radius:4px;border-left:3px solid #10b981}.guest-info-section .warning-message{color:#f59e0b;font-size:.875rem;margin-top:.5rem;padding:.5rem;background:#f59e0b1a;border-radius:4px;border-left:3px solid #f59e0b}.guest-info-section .country-info{opacity:.8;font-weight:400}@media (max-width: 768px){.guest-info-section .form-row{grid-template-columns:1fr;gap:0}.guest-info-section h3{font-size:1.3rem}.guest-info-section .form-group{margin-bottom:1rem}.guest-info-section .form-group input,.guest-info-section .form-group textarea{padding:.75rem;font-size:.95rem}}body.light-mode .guest-info-section h3{color:#1f2937}body.light-mode .guest-info-section .form-group label{color:#374151}body.light-mode .guest-info-section .form-group input,body.light-mode .guest-info-section .form-group textarea{background:#fff;border:1px solid #d1d5db;color:#111827}body.light-mode .guest-info-section .form-group input::placeholder,body.light-mode .guest-info-section .form-group textarea::placeholder{color:#6b7280}body.light-mode .guest-info-section .form-group input:focus,body.light-mode .guest-info-section .form-group textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}body.light-mode .guest-info-section .form-group input.error,body.light-mode .guest-info-section .form-group textarea.error{border-color:#dc2626;background:#fef2f2}@media (max-width: 768px){body.light-mode .guest-info-section .form-group input,body.light-mode .guest-info-section .form-group textarea{background:#fff!important;border:2px solid #e5e7eb!important;color:#111827!important;font-weight:500!important;border-radius:8px!important;padding:14px 16px!important;font-size:16px!important;line-height:1.4!important;transition:all .2s ease!important;box-shadow:0 1px 3px #0000001a!important}body.light-mode .guest-info-section input[name=firstName],body.light-mode .guest-info-section input[id=firstName],body.light-mode .guest-info-section input[name=lastName],body.light-mode .guest-info-section input[id=lastName],body.light-mode .guest-info-section input[type=email],body.light-mode .guest-info-section input[type=tel]{background:#fff!important;border:2px solid #d1d5db!important;color:#111827!important;font-weight:600!important;border-radius:10px!important;padding:16px 18px!important;font-size:16px!important;line-height:1.5!important;box-shadow:0 2px 4px #00000014!important;transition:all .3s ease!important}body.light-mode .guest-info-section .form-group label{color:#111827!important;font-weight:700!important;font-size:16px!important;margin-bottom:8px!important}body.light-mode .guest-info-section .form-group input::placeholder,body.light-mode .guest-info-section .form-group textarea::placeholder{color:#6b7280!important;opacity:.8!important;font-weight:400!important}body.light-mode .guest-info-section .form-group input:focus,body.light-mode .guest-info-section .form-group textarea:focus{border-color:#2563eb!important;box-shadow:0 0 0 3px #2563eb1a,0 2px 8px #2563eb26!important;transform:translateY(-1px)!important}body.light-mode .guest-info-section input[name=firstName]:focus,body.light-mode .guest-info-section input[id=firstName]:focus{border-color:#2563eb!important;box-shadow:0 0 0 4px #2563eb1f,0 4px 12px #2563eb33!important;transform:translateY(-2px)!important;background:#fff!important}body.light-mode .guest-info-section .form-group input.error,body.light-mode .guest-info-section .form-group textarea.error{border-color:#dc2626!important;background:#fef2f2!important;box-shadow:0 0 0 3px #dc26261a!important}body.light-mode .guest-info-section input[name=firstName].error,body.light-mode .guest-info-section input[id=firstName].error{border-color:#dc2626!important;background:#fef2f2!important;box-shadow:0 0 0 4px #dc26261f,0 2px 8px #dc262626!important}body.light-mode .guest-info-section .form-group textarea{border-radius:10px!important;padding:16px 18px!important;font-size:16px!important;line-height:1.6!important;min-height:100px!important}body.light-mode .guest-info-section .error-message{color:#dc2626!important;background:#fef2f2!important;border-left:4px solid #dc2626!important;border-radius:8px!important;padding:12px 16px!important;font-weight:500!important;font-size:14px!important;margin-top:8px!important}body.light-mode .guest-info-section .success-message{color:#059669!important;background:#f0fdf4!important;border-left:4px solid #059669!important;border-radius:8px!important;padding:12px 16px!important;font-weight:500!important;font-size:14px!important;margin-top:8px!important}body.light-mode .guest-info-section .warning-message{color:#d97706!important;background:#fffbeb!important;border-left:4px solid #d97706!important;border-radius:8px!important;padding:12px 16px!important;font-weight:500!important;font-size:14px!important;margin-top:8px!important}body.light-mode .guest-info-section h3{color:#111827!important;font-weight:800!important;font-size:20px!important;margin-bottom:24px!important;border-bottom:2px solid #e5e7eb!important;padding-bottom:12px!important}body.light-mode .guest-info-section .form-group{margin-bottom:20px!important}body.light-mode .guest-info-section .form-row{gap:16px!important;margin-bottom:16px!important}}.booking-page{min-height:100vh;background:#0f172a;color:#e2e8f0;padding:100px 0 80px}.booking-header{text-align:center;margin-bottom:50px;background:linear-gradient(135deg,#1e293b,#334155);border-radius:16px;padding:30px 20px;border:1px solid #475569;backdrop-filter:blur(10px)}.booking-logo{height:60px;width:auto;margin-bottom:1.5rem;filter:brightness(1.2) contrast(1.1) drop-shadow(0 4px 8px rgba(0,0,0,.3));display:none}.booking-header h1{font-size:2.5rem;color:#fff;margin-bottom:10px;font-weight:700;text-shadow:none}.booking-header p{font-size:1.1rem;color:#cbd5e1}.booking-grid{display:grid;grid-template-columns:1fr 400px;gap:50px;align-items:start}.booking-form{background:#1e293b;border:1px solid #475569;border-radius:20px;padding:40px;box-shadow:0 10px 30px #0000004d}.form-section{margin-bottom:40px}.form-section:last-child{margin-bottom:0}.form-section h3{font-size:1.5rem;color:#fff;margin-bottom:20px;font-weight:700;padding-bottom:10px;border-bottom:2px solid #60a5fa;text-shadow:0 1px 3px rgba(0,0,0,.5)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:700;color:#fff;font-size:1rem;text-shadow:0 1px 3px rgba(0,0,0,.5)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px 16px;border:2px solid #475569;border-radius:10px;font-size:16px;transition:all .3s ease;background:#334155;color:#fff;caret-color:#60a5fa}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 4px #3b82f640;background:#1e293b;color:#fff;transform:translateY(-1px)}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:#ef4444;background-color:#ef44441a}.form-group input.error:focus,.form-group select.error:focus,.form-group textarea.error:focus{border-color:#ef4444;box-shadow:0 0 0 3px #ef444433}.input-with-icon{position:relative}.input-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:#e2e8f0;width:18px;height:18px;pointer-events:none}.input-with-icon input,.input-with-icon select{padding-left:50px}.input-with-icon select{padding-right:40px;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right 12px center;background-repeat:no-repeat;background-size:16px}.form-group textarea{resize:vertical;min-height:80px}.payment-methods{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:25px}.payment-method{display:flex;align-items:center;gap:12px;padding:20px;border:2px solid #475569;border-radius:12px;cursor:pointer;transition:all .3s ease;background:#334155;color:#fff}.payment-method:hover{border-color:#3b82f6;background:#1e293b}.payment-method.active,.payment-method.selected{border-color:#3b82f6;background:#3b82f61a;color:#60a5fa}.payment-method input[type=radio]{margin:0;width:auto}.payment-icon{width:24px;height:24px;color:#60a5fa}.payment-method span{font-weight:500;color:#fff}.card-element-container label{display:block;margin-bottom:10px;font-weight:500;color:#2c3e50}.card-element{padding:16px;border:2px solid #e1e8ed;border-radius:10px;background:#fff;transition:border-color .3s ease}.card-element:focus-within{border-color:#3498db}.availability-check-btn{background:#60a5fa;color:#0f172a;border:none;padding:12px 20px;border-radius:10px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px;margin-bottom:15px;box-shadow:0 4px 12px #60a5fa66}.availability-check-btn:hover:not(:disabled){background:#3b82f6;transform:translateY(-2px);box-shadow:0 6px 16px #60a5fa80}.availability-check-btn:disabled{background:#334155;color:#64748b;cursor:not-allowed;transform:none;box-shadow:none;opacity:.6;border:2px solid #475569}.availability-status{padding:15px;border-radius:8px;border:2px solid;margin-top:10px}.availability-status.available{background:#d4edda;border-color:#27ae60;color:#155724}.availability-status.unavailable{background:#f8d7da;border-color:#e74c3c;color:#721c24}.status-text{font-weight:500;display:block;margin-bottom:8px}.conflict-details{margin-top:10px;font-size:.9rem}.conflict-details strong{display:block;margin-bottom:5px}.conflict-details ul{margin:0;padding-left:20px}.conflict-details li{margin-bottom:3px}.paypal-container{margin-top:20px}.apple-pay-payment{margin-top:20px;padding:20px;border:2px solid #000;border-radius:12px;background:#f8f9fa}.apple-pay-info{margin-bottom:15px}.apple-pay-info p{display:flex;align-items:center;gap:8px;color:#2c3e50;font-weight:500;margin:0}.apple-pay-info svg{color:#007aff}.apple-pay-payment .StripeElement{border-radius:8px;overflow:hidden}.apple-pay-payment button{width:100%;min-height:48px;border-radius:8px;border:none;background:#000;color:#fff;font-weight:600;font-size:16px;cursor:pointer;transition:all .3s ease}.apple-pay-payment button:hover{background:#333;transform:translateY(-1px)}.apple-pay-payment button:disabled{background:#ccc;cursor:not-allowed;transform:none}.google-pay-payment{margin-top:20px;padding:20px;border:2px solid #4285f4;border-radius:12px;background:#f8f9ff}.google-pay-info{margin-bottom:15px}.google-pay-info p{display:flex;align-items:center;gap:8px;color:#2c3e50;font-weight:500;margin:0}.google-pay-info svg{color:#4285f4}.google-pay-payment .StripeElement{border-radius:8px;overflow:hidden}.google-pay-payment button{width:100%;min-height:48px;border-radius:8px;border:none;background:#4285f4;color:#fff;font-weight:600;font-size:16px;cursor:pointer;transition:all .3s ease}.google-pay-payment button:hover{background:#3367d6;transform:translateY(-1px)}.google-pay-payment button:disabled{background:#ccc;cursor:not-allowed;transform:none}.payment-method-selector{display:flex;gap:20px;margin-bottom:30px;justify-content:flex-start}.payment-methods{display:flex;gap:20px}.payment-method{background:#fff;border:2px solid #e1e8ed;border-radius:12px;padding:18px 28px;display:flex;align-items:center;cursor:pointer;transition:border-color .2s,box-shadow .2s;min-width:160px;box-shadow:0 2px 8px #3498db0a;position:relative}.payment-method.selected,.payment-method input[type=radio]:checked+label{border-color:#3498db;box-shadow:0 0 0 3px #3498db1f;background:#f8f9ff}.payment-method input[type=radio]{margin-right:12px;accent-color:#3498db}.payment-method-label{display:flex;align-items:center;gap:12px;cursor:pointer;width:100%}.payment-method-info{display:flex;align-items:center;gap:10px}.payment-icons{display:flex;gap:4px;margin-left:8px}.payment-option:has(input[value=apple_pay]) svg{color:#007aff}.payment-option:has(input[value=apple_pay]):hover{border-color:#007aff;background:#f0f8ff}.payment-option:has(input[value=apple_pay]).selected{border-color:#007aff;background:#f0f8ff;box-shadow:0 0 0 3px #007aff1a}.payment-option:has(input[value=google_pay]) svg{color:#4285f4}.payment-option:has(input[value=google_pay]):hover{border-color:#4285f4;background:#f8f9ff}.payment-option:has(input[value=google_pay]).selected{border-color:#4285f4;background:#f8f9ff;box-shadow:0 0 0 3px #4285f41a}@media (max-width: 768px){.payment-method-selector{grid-template-columns:1fr}.payment-methods{flex-direction:column;gap:15px}.payment-method{min-width:100%;padding:15px 20px}.apple-pay-payment{padding:15px}.apple-pay-form,.google-pay-form{margin-top:15px}.apple-pay-form .StripeElement,.google-pay-form .StripeElement{min-height:48px}}.submit-button,.btn-check-availability,.btn-proceed,.btn-pay-deposit,.btn-complete-booking{width:100%;background:#3498db;color:#fff;border:none;padding:16px;border-radius:12px;font-size:18px;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:20px}.submit-button:hover:not(:disabled),.btn-check-availability:hover:not(:disabled),.btn-proceed:hover:not(:disabled),.btn-pay-deposit:hover:not(:disabled),.btn-complete-booking:hover:not(:disabled){background:#2980b9;transform:translateY(-2px);box-shadow:0 4px 12px #3498db4d}.submit-button:disabled,.btn-check-availability:disabled,.btn-proceed:disabled,.btn-pay-deposit:disabled,.btn-complete-booking:disabled{background:#334155;color:#64748b;cursor:not-allowed;transform:none;box-shadow:none;opacity:.6;border:2px solid #475569}.charges-summary{background:#f8f9fa;border:2px solid #e9ecef;border-radius:12px;padding:25px;margin:25px 0;box-shadow:0 4px 12px #0000000d}.charges-summary h3{color:#2c3e50;margin-bottom:20px;font-size:1.3rem;font-weight:600;border-bottom:2px solid #dee2e6;padding-bottom:10px}.charges-breakdown{display:flex;flex-direction:column;gap:12px}.charge-line{display:flex;justify-content:space-between;align-items:center;padding:8px 0;font-size:1rem}.charge-line.vat-line{color:#6c757d;font-style:italic}.charge-line.total-line{border-top:2px solid #dee2e6;border-bottom:2px solid #dee2e6;margin:10px 0;font-size:1.1rem;background:#3498db0d;border-radius:8px;padding:15px}.charge-line.payment-line{background:#28a7451a;border-radius:8px;padding:15px;font-weight:600;color:#28a745;border:2px solid rgba(40,167,69,.2)}.charge-line.balance-line{background:#ffc1071a;border-radius:8px;padding:12px 15px;color:#856404;border:1px solid rgba(255,193,7,.3)}.charge-label{flex:1}.charge-amount{font-weight:600;color:#2c3e50}.charge-line.payment-line .charge-amount{color:#28a745;font-size:1.1rem}.payment-amount{font-size:1.2rem!important;font-weight:700!important}.vat-notice{margin-top:15px;padding-top:15px;border-top:1px solid #dee2e6;color:#6c757d;font-style:italic}.vat-notice p{margin:0}.total-with-vat{font-size:1.1rem;color:#2c3e50;font-weight:600;margin-top:8px;padding-top:8px;border-top:1px solid #dee2e6}.charge-line.discount-line{background:#d4edda;padding:12px 15px;border-radius:8px;border-left:4px solid #28a745;color:#155724;margin:8px 0}.discount-amount{color:#28a745;font-weight:600}.coupon-section{background:#fff;border-radius:12px;padding:20px;margin-bottom:25px;border:2px solid #e9ecef;box-shadow:0 2px 8px #0000000d}.coupon-section h3{color:#2c3e50;margin-bottom:15px;font-size:1.2rem;display:flex;align-items:center;gap:8px}.coupon-section h3:before{content:"🎫";font-size:1.2rem}.coupon-input-row{display:flex;gap:12px;align-items:flex-end}.coupon-input{flex:1;margin:0}.coupon-input input{width:100%;padding:12px 16px;border:2px solid #e9ecef;border-radius:8px;font-size:14px;font-weight:500;text-transform:uppercase;letter-spacing:1px;transition:all .3s ease}.coupon-input input:focus{border-color:#3498db;outline:none;box-shadow:0 0 0 3px #3498db1a}.coupon-input input.error{border-color:#e74c3c}.btn-apply-coupon{padding:12px 20px;background:linear-gradient(135deg,#3498db,#2980b9);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap;display:flex;align-items:center;gap:8px;min-height:48px}.btn-apply-coupon:hover:not(:disabled){background:linear-gradient(135deg,#2980b9,#1f5f8b);transform:translateY(-1px);box-shadow:0 4px 12px #3498db4d}.btn-apply-coupon:disabled{background:#95a5a6;cursor:not-allowed;transform:none;box-shadow:none}.spinner-small{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}.applied-coupon{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#d4edda,#c3e6cb);padding:16px;border-radius:8px;border:2px solid #28a745}.coupon-details{display:flex;flex-direction:column;gap:4px}.coupon-code{font-weight:700;font-size:16px;color:#155724;letter-spacing:1px}.coupon-description{font-size:14px;color:#155724;opacity:.8}.coupon-savings{font-weight:600;color:#28a745;font-size:14px}.btn-remove-coupon{padding:8px 12px;background:#dc3545;color:#fff;border:none;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .3s ease}.btn-remove-coupon:hover{background:#c82333;transform:translateY(-1px)}.coupon-error{margin-top:8px;padding:8px 12px;background:#f8d7da;color:#721c24;border-radius:6px;font-size:14px;border-left:4px solid #dc3545}.coupon-success{margin-top:8px;padding:8px 12px;background:#d4edda;color:#155724;border-radius:6px;font-size:14px;border-left:4px solid #28a745;font-weight:500}.legal-agreement{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;padding:15px;margin:15px 0;font-size:.9rem;color:#6c757d}.legal-agreement p{margin:0;line-height:1.5}.legal-agreement a{color:#3498db;text-decoration:none;font-weight:500}.legal-agreement a:hover{color:#2980b9;text-decoration:underline}.error-message{color:#e74c3c;background:#fbeeea;border:1px solid #e74c3c;border-radius:8px;padding:10px 16px;margin-top:12px;font-size:1rem}.success-message{color:#27ae60;background:#f0f8f0;border:1px solid #27ae60;border-radius:8px;padding:10px 16px;margin-top:12px;font-size:1rem}.success-message .country-info{color:#666;font-size:.9rem;font-weight:400}.warning-message{color:#f39c12;background:#fdf6e3;border:1px solid #f39c12;border-radius:8px;padding:10px 16px;margin-top:12px;font-size:1rem}.booking-summary{background:#fff;border-radius:20px;padding:30px;box-shadow:0 10px 30px #0000001a;position:sticky;top:100px;height:fit-content}.booking-summary h3{font-size:1.5rem;color:#2c3e50;margin-bottom:20px;font-weight:600}.property-info{padding-bottom:20px;border-bottom:1px solid #eee;margin-bottom:20px}.property-info h4{font-size:1.25rem;color:#2c3e50;margin-bottom:5px;font-weight:600}.property-info p{color:#666;margin:0}.summary-details{margin-bottom:20px}.summary-row{display:flex;justify-content:space-between;margin-bottom:12px;color:#2c3e50}.summary-row.price-row{padding-top:12px;border-top:1px solid #eee;font-weight:500}.total-price{background:#f8f9fa;padding:20px;border-radius:12px;text-align:center;font-size:1.5rem;color:#e74c3c;margin-bottom:25px}.cancellation-policy{background:#f8f9ff;padding:20px;border-radius:12px;border:1px solid #e1e8ed}.cancellation-policy h4{font-size:1.1rem;color:#2c3e50;margin-bottom:10px;font-weight:600}.cancellation-policy p{color:#666;margin:0;font-size:14px;line-height:1.5}.booking-success{min-height:100vh;background:#f8f9fa;display:flex;align-items:center;justify-content:center;padding:50px 20px}.success-content{background:#fff;border-radius:20px;padding:50px;text-align:center;box-shadow:0 20px 60px #0000001a;max-width:600px}.success-icon{font-size:4rem;color:#27ae60;background:#d5f4e6;width:100px;height:100px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 30px;font-weight:700}.success-content h1{font-size:2.5rem;color:#2c3e50;margin-bottom:20px;font-weight:700}.success-content>p{font-size:1.1rem;color:#666;margin-bottom:30px;line-height:1.6}.booking-details{background:#f8f9fa;padding:25px;border-radius:12px;margin-bottom:25px;text-align:left}.booking-details h3{color:#2c3e50;margin-bottom:15px;font-weight:600}.booking-details p{margin:8px 0;color:#2c3e50}.confirmation-note{color:#666;font-style:italic;margin:0}@media (max-width: 968px){.booking-grid{grid-template-columns:1fr;gap:30px}.booking-summary{position:static;order:-1}.payment-methods{grid-template-columns:1fr;gap:12px}.booking-header h1{font-size:2.2rem}.progress-step{min-width:120px}}@media (max-width: 768px){.booking-page{padding:60px 0 40px}.booking-header{margin-bottom:30px}.booking-header h1{font-size:1.75rem;line-height:1.2;margin-bottom:15px;padding:0 15px}.booking-header p{font-size:1rem;padding:0 15px;margin-bottom:0}.booking-logo{display:none}.booking-form,.booking-summary{padding:20px;border-radius:15px}.form-row{grid-template-columns:1fr;gap:0}.form-section{margin-bottom:30px}.form-section h3{font-size:1.3rem;margin-bottom:15px}.payment-methods{grid-template-columns:1fr;gap:10px}.payment-method{padding:15px;flex-direction:row;text-align:left}.payment-method span{font-size:.95rem}.card-element-container{margin-top:15px}.card-element{padding:15px;font-size:16px}.submit-button,.btn-check-availability,.btn-proceed,.btn-pay-deposit,.btn-complete-booking{padding:15px 25px;font-size:16px;width:100%;margin-top:10px}.form-group input,.form-group select,.form-group textarea{padding:15px 16px;font-size:16px;border-radius:8px}.success-content{padding:30px 20px;margin:0 10px}.success-icon{width:80px;height:80px;font-size:3rem}.success-content h1{font-size:1.8rem}.rate-options{grid-template-columns:1fr;gap:15px}.rate-option{padding:20px 15px}.rate-header{flex-direction:column;align-items:flex-start;gap:10px}.popular-badge{position:static;align-self:flex-start;margin-bottom:10px}.document-container{margin:20px 0}.document-header{padding:15px;flex-direction:column;text-align:center;gap:10px}.document-content{padding:20px 15px;font-size:.9rem;line-height:1.5}}@media (max-width: 480px){.container{padding:0 10px}.booking-form,.booking-summary{padding:15px;margin:0 5px}.form-section h3{font-size:1.2rem}.booking-header{margin-bottom:20px}.booking-header h1{font-size:1.5rem;padding:0 10px;margin-bottom:10px}.booking-header p{font-size:.9rem;padding:0 10px}.booking-logo{display:none}.total-price{font-size:1.2rem}.payment-method{padding:12px;font-size:.9rem}.form-group input,.form-group select,.form-group textarea{padding:12px 14px}.booking-summary{position:relative;box-shadow:0 4px 15px #0000001a}.summary-row{padding:8px 0;font-size:.9rem}.total-price{font-size:1.1rem;padding:12px 0}}@media (hover: none) and (pointer: coarse){.payment-method,.rate-option,.submit-button,.btn-check-availability,.btn-proceed,.btn-pay-deposit,.btn-complete-booking,.form-group input,.form-group select,.form-group textarea{min-height:44px}}@supports (-webkit-touch-callout: none){.form-group input,.form-group select,.form-group textarea{-webkit-appearance:none;border-radius:8px}.form-group select{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right 12px center;background-repeat:no-repeat;background-size:16px}}.booking-container{max-width:1200px;margin:0 auto;padding:40px 20px;min-height:100vh;background:linear-gradient(135deg,#f8f9fa,#e9ecef)}@media (max-width: 768px){.booking-container{padding:20px 10px}}@media (max-width: 480px){.booking-container{padding:15px 5px}}.booking-progress{display:flex;justify-content:center;align-items:flex-start;gap:.75rem;margin:3rem 0;padding:2rem 1rem;background:linear-gradient(135deg,#1e293b,#334155);border:1px solid #475569;border-radius:20px;box-shadow:0 4px 15px #0000004d;position:relative;overflow:hidden}.booking-progress:before{content:"";position:absolute;top:50%;left:8%;right:8%;height:4px;background:linear-gradient(90deg,#475569 0% 100%);transform:translateY(-50%);z-index:1;border-radius:2px}.progress-step{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:1.5rem .75rem;border-radius:16px;transition:all .4s cubic-bezier(.4,0,.2,1);min-width:160px;min-height:175px;position:relative;z-index:2;background:#1e293bcc;border:1px solid #475569;color:#e2e8f0;backdrop-filter:blur(10px)}.progress-step:hover{background:#1e293be6;border-color:#64748b}.progress-step.completed{background:#22c55e26;border-color:#22c55e;color:#4ade80;box-shadow:0 4px 12px #22c55e33;transform:scale(1.02)}.progress-step.current{background:#3b82f626;border-color:#3b82f6;color:#60a5fa;box-shadow:0 8px 25px #3b82f64d;transform:scale(1.05)}.step-icon{width:60px;height:60px;border:3px solid #475569;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .4s cubic-bezier(.4,0,.2,1);background:#1e293be6;position:relative;overflow:hidden;box-shadow:0 4px 12px #0000004d;color:#e2e8f0}.step-icon:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 0%,rgba(255,255,255,.1) 100%);border-radius:50%}.progress-step.completed .step-icon{background:#22c55e4d;border-color:#22c55e;color:#4ade80;transform:rotate(360deg);box-shadow:0 6px 20px #22c55e66}.progress-step.current .step-icon{background:#3b82f64d;border-color:#3b82f6;color:#60a5fa;animation:currentPulse 2s ease-in-out infinite}@keyframes currentPulse{0%,to{box-shadow:0 4px 12px #0000004d,0 0 #3b82f666}50%{box-shadow:0 4px 12px #0000004d,0 0 0 10px #3b82f600}}.step-title{font-size:.9rem;text-align:center;font-weight:700;line-height:1.3;letter-spacing:.3px;text-transform:uppercase;color:#e2e8f0}.progress-step.completed .step-title{color:#4ade80}.progress-step.current .step-title{color:#60a5fa}.booking-stage{background:linear-gradient(135deg,#1e293b,#334155);border:1px solid #475569;color:#e2e8f0;padding:30px;border-radius:16px;margin-bottom:30px}.booking-stage h2{color:#fff;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.5)}.booking-form h3,.form-section h3,.guest-information h3,.payment-section h3,.pricing-summary h3{color:#fff!important;font-weight:700!important;text-shadow:0 1px 3px rgba(0,0,0,.5)!important}.booking-form p,.form-section p,.guest-information p,.payment-section p,.pricing-summary p{color:#e2e8f0!important;font-weight:500!important}.card-element-container label{color:#fff!important;font-weight:700!important;text-shadow:0 1px 3px rgba(0,0,0,.5)!important}.pricing-details p,.deposit-info,.balance-info{color:#e2e8f0!important}.deposit-notice{color:#cbd5e1!important}.form-group label{color:#fff!important;font-weight:700!important;font-size:1rem!important;text-shadow:0 1px 3px rgba(0,0,0,.5)!important;margin-bottom:8px!important;display:block!important}.form-group input,.form-group select,.form-group textarea{background:#334155;border:2px solid #475569;color:#fff;caret-color:#60a5fa}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{background:#1e293b;border-color:#3b82f6;box-shadow:0 0 0 4px #3b82f640;color:#fff}.minimum-stay-notice{background:#d9770640!important;border:2px solid #d97706!important;color:#fff!important;font-weight:600!important;padding:16px 20px!important;box-shadow:0 4px 12px #d977064d!important}.minimum-stay-notice svg{color:#fbbf24!important;flex-shrink:0!important}.deposit-notice{background:#3b82f633!important;border:2px solid #3b82f6!important;color:#fff!important;font-weight:600!important;box-shadow:0 4px 12px #3b82f64d!important}.availability-result.available{background:#22c55e1a;border-color:#22c55e;color:#4ade80}.availability-result.unavailable{background:#ef44441a;border-color:#ef4444;color:#f87171}.payment-method{background:#334155;border:2px solid #475569;color:#fff}.payment-method:hover{background:#1e293b;border-color:#3b82f6}.payment-method.selected,.payment-method input[type=radio]:checked+label{background:#3b82f61a;border-color:#3b82f6;color:#60a5fa}.payment-method span{color:#fff}.submit-button,.btn-check-availability,.btn-proceed,.btn-pay-deposit,.btn-complete-booking{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;border:none}.submit-button:hover:not(:disabled),.btn-check-availability:hover:not(:disabled),.btn-proceed:hover:not(:disabled),.btn-pay-deposit:hover:not(:disabled),.btn-complete-booking:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1e40af);box-shadow:0 4px 12px #3b82f666}.charges-summary{background:#1e293b;border:2px solid #475569;color:#e2e8f0}.charges-summary h3{color:#fff;border-bottom-color:#475569}.charge-line.total-line{background:#3b82f61a;border-color:#475569}.charge-line.payment-line{background:#22c55e1a;border-color:#22c55e4d;color:#4ade80}.card-element-container{background:#334155;border:2px solid #475569}.card-element{background:#334155;color:#fff}.apple-pay-payment,.google-pay-payment{background:#1e293b;border-color:#475569}.btn-back{background:#334155;color:#e2e8f0;border-color:#475569}.btn-back:hover:not(:disabled){background:#3b82f6;color:#fff;border-color:#3b82f6}.btn-next{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff}.validation-success{background:#22c55e1a;border-color:#22c55e;color:#4ade80}.validation-errors{background:#ef44441a;border-color:#ef4444;color:#f87171}.error-message{background:#ef44441a;border:1px solid #ef4444;color:#f87171;padding:12px 16px;border-radius:8px;margin:10px 0}.agreement-checkbox{background:#334155;border-color:#475569;color:#e2e8f0}.agreement-checkbox:hover{background:#1e293b;border-color:#3b82f6}.agreement-checkbox input[type=checkbox]:checked+label{color:#60a5fa}.payment-security-note{background:#d977061a;border-color:#d97706;color:#fbbf24}.payment-security-note strong{color:#fed7aa}.success-content{background:#1e293b;color:#e2e8f0}.success-message h3{color:#4ade80}.booking-summary{background:#334155;border:1px solid #475569;color:#e2e8f0}.booking-summary h4{color:#fff}.summary-item{border-bottom-color:#475569}.next-steps{background:#d977061a;border-color:#d97706;color:#fbbf24}.next-steps h4{color:#fed7aa}.tooltip-text{background:#1e293b;color:#e2e8f0;border:1px solid #475569}.tooltip-text:after{border-color:#1e293b transparent transparent transparent}.rate-options{background:transparent}.rate-option{background:#334155;border:2px solid #475569;color:#e2e8f0}.rate-option:hover{background:#1e293b;border-color:#3b82f6;transform:translateY(-2px);box-shadow:0 8px 25px #3b82f633}.rate-option.selected{background:#3b82f61a;border-color:#3b82f6;color:#60a5fa;box-shadow:0 8px 25px #3b82f64d}.rate-header h3{color:#fff}.rate-price{color:#4ade80}.rate-features li{color:#cbd5e1}.rate-features li:before{color:#4ade80}.popular-badge{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.booking-stage h2{color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.5)}.booking-stage h3{color:#f1f5f9}.booking-stage p{color:#cbd5e1}@media (max-width: 768px){.booking-header{background:linear-gradient(135deg,#1e293b,#334155);border-radius:12px;padding:20px 15px;margin-bottom:30px;border:1px solid #475569}.booking-header h1{color:#fff!important;font-size:1.75rem!important}.booking-header p{color:#cbd5e1!important;font-size:1rem!important}.booking-logo{filter:brightness(1.3) contrast(1.2)}.form-group label{color:#fff!important;font-weight:700!important;font-size:1.1rem!important;text-shadow:0 1px 3px rgba(0,0,0,.7)!important;margin-bottom:10px!important}.booking-form h3,.form-section h3{color:#fff!important;font-weight:700!important;font-size:1.4rem!important;text-shadow:0 2px 4px rgba(0,0,0,.7)!important}.booking-form p,.form-section p{color:#e2e8f0!important;font-weight:500!important;font-size:1rem!important}.minimum-stay-notice{background:#d977064d!important;border:2px solid #f59e0b!important;color:#fff!important;font-weight:700!important;padding:18px 22px!important;font-size:1.1rem!important;border-radius:12px!important;box-shadow:0 6px 15px #d9770666!important}.minimum-stay-notice svg{color:#fbbf24!important;width:20px!important;height:20px!important}}@media (max-width: 480px){.booking-header{padding:15px 10px;margin-bottom:20px}.booking-header h1{font-size:1.5rem!important}.booking-header p{font-size:.9rem!important}.form-group label{color:#fff!important;font-weight:700!important;font-size:1rem!important;text-shadow:0 1px 3px rgba(0,0,0,.8)!important;margin-bottom:8px!important}.booking-form h3,.form-section h3{color:#fff!important;font-weight:700!important;font-size:1.3rem!important;text-shadow:0 2px 4px rgba(0,0,0,.8)!important}.booking-form p,.form-section p{color:#e2e8f0!important;font-weight:500!important;font-size:.95rem!important}.minimum-stay-notice{background:#d9770659!important;border:2px solid #f59e0b!important;color:#fff!important;font-weight:700!important;padding:16px 20px!important;font-size:1rem!important;border-radius:10px!important;box-shadow:0 6px 15px #d9770680!important;margin-bottom:20px!important}.minimum-stay-notice svg{color:#fbbf24!important;width:18px!important;height:18px!important;flex-shrink:0!important}}@media (max-width: 968px){.booking-progress{flex-direction:column;gap:.5rem;padding:1.5rem 1rem;margin:2rem 0;border-radius:16px}.booking-progress:before{display:none}.progress-step{min-width:100%;min-height:auto;flex-direction:row;justify-content:flex-start;padding:1rem;text-align:left;transform:none!important;border-radius:12px}.progress-step.current{transform:none!important}.step-icon{width:50px;height:50px;flex-shrink:0;margin-right:1rem;transform:none!important}.progress-step.completed .step-icon{transform:none!important}.step-title{margin:0;font-size:1rem;text-transform:none;font-weight:600;letter-spacing:0;text-align:left;line-height:1.4}@media (prefers-color-scheme: dark){.booking-progress{background:linear-gradient(135deg,#1e293b,#334155);border:1px solid #475569;box-shadow:0 4px 15px #0006}.progress-step{background:#1e293bcc;border:1px solid #475569;color:#e2e8f0}.progress-step.completed{background:#22c55e26;border-color:#22c55e;color:#4ade80}.progress-step.current{background:#3b82f626;border-color:#3b82f6;color:#60a5fa}.step-icon{background:#1e293be6;border-color:#475569;color:#e2e8f0}.progress-step.completed .step-icon{background:#22c55e4d;border-color:#22c55e;color:#4ade80}.progress-step.current .step-icon{background:#3b82f64d;border-color:#3b82f6;color:#60a5fa}.step-title{color:#e2e8f0}.progress-step.completed .step-title{color:#4ade80}.progress-step.current .step-title{color:#60a5fa}}}@media (max-width: 768px){.booking-progress{gap:.75rem;padding:1.25rem .75rem;margin:1.5rem 0;border-radius:12px}.progress-step{padding:.875rem;border-radius:10px;box-shadow:0 2px 8px #0000000f}.progress-step.current{box-shadow:0 4px 12px #007bff26}.step-icon{width:44px;height:44px;margin-right:.875rem}.step-title{font-size:.95rem;font-weight:600}}@media (max-width: 480px){.booking-progress{gap:.5rem;padding:1rem .5rem;margin:1rem 0;border-radius:10px}.progress-step{padding:.75rem;border-radius:8px}.step-icon{width:40px;height:40px;margin-right:.75rem}.step-title{font-size:.875rem;font-weight:600}}@media (max-width: 768px){.booking-progress.compact{background:transparent;box-shadow:none;padding:0;gap:0}.booking-progress.compact .progress-step{background:#fff;border:1px solid #e2e8f0;margin-bottom:.5rem;box-shadow:0 1px 3px #0000001a}.booking-progress.compact .progress-step:last-child{margin-bottom:0}.booking-progress.compact .progress-step.current{border-color:#007bff;background:#f8f9ff}.booking-progress.compact .progress-step.completed{border-color:#28a745;background:#f0f8f0}}@media (max-width: 768px){.booking-stage{border-radius:16px;padding:30px 20px;margin-bottom:20px;box-shadow:0 4px 16px #00000014}}@media (max-width: 480px){.booking-stage{border-radius:12px;padding:25px 15px;margin-bottom:15px;box-shadow:0 2px 12px #0000000f}}.booking-stage:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 0%,rgba(255,255,255,.1) 100%);pointer-events:none}@media (max-width: 768px){.booking-stage h2{font-size:1.75rem;margin-bottom:20px;line-height:1.3}}@media (max-width: 480px){.booking-stage h2{font-size:1.5rem;margin-bottom:15px;line-height:1.2}}.minimum-stay-notice{display:flex;align-items:center;gap:8px;background:#fff3cd;color:#856404;padding:12px 16px;border-radius:8px;margin-bottom:25px;border:1px solid #ffeaa7}.booking-form{display:grid;gap:20px}.pricing-summary h3{margin-bottom:15px;font-size:1.3rem}.pricing-details{margin:15px 0}.pricing-details p{margin:8px 0}.deposit-info{background:#007bff1a;padding:12px;border-radius:6px;border-left:4px solid #007bff}.balance-info{font-size:.9rem;color:#6c757d}.deposit-notice{background:#e3f2fd;color:#1565c0;padding:16px;border-radius:8px;margin-bottom:25px;border-left:4px solid #2196f3}.guest-information{margin-bottom:30px}.guest-information h3{color:#2c3e50;margin-bottom:20px;font-size:1.3rem}@media (max-width: 768px){.form-row{grid-template-columns:1fr}}.payment-section{border-top:2px solid #e9ecef;padding-top:25px}.payment-section h3{color:#2c3e50;margin-bottom:20px;font-size:1.3rem}.payment-method-selector{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:25px}.payment-option{display:flex;align-items:center;gap:12px;padding:16px;border:2px solid #e9ecef;border-radius:8px;cursor:pointer;transition:all .3s ease;background:#fff}.payment-option:hover{border-color:#007bff;background:#f8f9ff}.payment-option.selected{border-color:#007bff;background:#e3f2fd;color:#1565c0}.payment-option input[type=radio]{margin:0}.stripe-payment,.paypal-payment{margin-top:20px}.card-element-container{background:#fff;border:2px solid #e9ecef;border-radius:8px;padding:16px;margin-bottom:20px}.btn-pay-deposit{background:#007bff;color:#fff;border:none;padding:15px 30px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;width:100%}.btn-pay-deposit:hover:not(:disabled){background:#0056b3;transform:translateY(-2px)}.btn-pay-deposit:disabled{background:#6c757d;cursor:not-allowed}.btn-pay{background:#3182ce;color:#fff;border:2px solid #3182ce;font-weight:700;box-shadow:0 4px 12px #3182ce40;font-size:16px;padding:14px 24px;border-radius:8px;transition:all .2s ease;width:100%;cursor:pointer}.btn-pay:hover:not(:disabled){background:#2c5282;border-color:#2c5282;box-shadow:0 6px 16px #3182ce59;transform:translateY(-2px)}.btn-pay:disabled{background:#4a5568;color:#a0aec0;border:2px solid #4a5568;box-shadow:none;opacity:1;cursor:not-allowed;transform:none}.confirmation-details{text-align:center}.success-message{margin-bottom:30px}.success-icon{color:#28a745;margin-bottom:15px}.success-message h3{color:#28a745;font-size:1.5rem;margin-bottom:10px}.booking-summary{background:#f8f9fa;border-radius:12px;padding:25px;margin:25px 0;text-align:left}.booking-summary h4{color:#2c3e50;margin-bottom:20px;text-align:center}.summary-grid{display:grid;gap:12px}.summary-item{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid #e1e8ed}.summary-item:last-child{border-bottom:none}.summary-item strong{color:#2c3e50}.next-steps{background:#fff3cd;border:2px solid #ffc107;border-radius:12px;padding:25px;text-align:left}.next-steps h4{margin-top:0;margin-bottom:15px;color:#856404}.next-steps ul{margin:0;padding-left:20px;color:#856404}.next-steps li{margin-bottom:8px;line-height:1.5}@media (max-width: 768px){.confirmation-container{padding:20px 15px}.confirmation-number{font-size:1rem;padding:10px 15px}.summary-item{flex-direction:column;align-items:flex-start;gap:5px}}.edit-mode-notice{background:#e6fffa;border:2px solid #38b2ac;border-radius:12px;padding:1rem 1.5rem;margin:1rem 0;color:#234e52;text-align:center}.edit-mode-notice p{margin:0;font-weight:600;font-size:1.1rem}.edit-mode-notice strong{color:#2c7a7b}@media (max-width: 768px){.charges-summary{padding:20px 15px;margin:20px 0}.charges-summary h3{font-size:1.2rem}.charge-line{flex-direction:column;align-items:flex-start;gap:5px;padding:10px 0}.charge-line.total-line,.charge-line.payment-line,.charge-line.balance-line{flex-direction:row;align-items:center;justify-content:space-between}.charge-amount{font-size:1rem}.payment-amount{font-size:1.1rem!important}.coupon-section{padding:15px;margin-bottom:20px}.coupon-section h3{font-size:1.1rem;margin-bottom:12px}.coupon-input-row{flex-direction:column;gap:10px;align-items:stretch}.btn-apply-coupon{padding:14px 20px;font-size:16px;justify-content:center}.applied-coupon{flex-direction:column;gap:12px;align-items:stretch;text-align:center}.coupon-details{align-items:center}.btn-remove-coupon{align-self:center;padding:10px 16px;font-size:14px}}.booking-navigation{display:flex;justify-content:space-between;align-items:center;margin-top:40px;padding:20px 0;border-top:1px solid #e1e8ed}.btn-navigation{padding:12px 24px;border:2px solid #3498db;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-flex;align-items:center;gap:8px;min-width:120px;justify-content:center}.btn-back{background:#1e293b;color:#60a5fa;border:2px solid #60a5fa}.btn-back:hover:not(:disabled){background:#60a5fa;color:#0f172a;border-color:#60a5fa;transform:translateY(-2px);box-shadow:0 4px 15px #60a5fa66}.btn-next{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;border:none}.btn-next:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1e40af);transform:translateY(-2px);box-shadow:0 4px 15px #3b82f666}.btn-navigation:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}.btn-navigation:disabled:hover{background:#475569!important;color:#e2e8f0!important;border-color:#475569!important}.btn-next:disabled:hover{background:#475569!important;color:#e2e8f0!important}@media (max-width: 768px){.booking-navigation{flex-direction:column-reverse;gap:15px;margin-top:30px}.btn-navigation{width:100%;min-width:auto}}.tooltip-container{position:relative;display:inline-block}.tooltip-text{visibility:hidden;width:300px;background:#2c3e50;color:#fff;text-align:left;border-radius:8px;padding:12px 16px;position:absolute;z-index:1000;bottom:125%;left:50%;margin-left:-150px;font-size:14px;line-height:1.4;box-shadow:0 4px 20px #00000026;opacity:0;transition:opacity .3s,visibility .3s}.tooltip-text:after{content:"";position:absolute;top:100%;left:50%;margin-left:-8px;border-width:8px;border-style:solid;border-color:#2c3e50 transparent transparent transparent}.tooltip-container:hover .tooltip-text{visibility:visible;opacity:1}@media (max-width: 768px){.tooltip-text{width:280px;margin-left:-140px;font-size:13px;padding:10px 14px}}.tooltip-container{z-index:999}.tooltip-text{transform:translateY(4px);transition:opacity .3s,visibility .3s,transform .3s}.tooltip-container:hover .tooltip-text{transform:translateY(0)}.rate-selector{margin:30px 0}.rate-selector h3{color:#fff;font-size:1.5rem;margin-bottom:20px;text-align:center;font-weight:600}.rate-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-bottom:30px}.rate-option{background:#334155;border:2px solid #475569;border-radius:16px;padding:25px;cursor:pointer;transition:all .3s ease;position:relative;box-shadow:0 4px 15px #0000004d;color:#e2e8f0}.rate-option:hover{transform:translateY(-2px);box-shadow:0 8px 25px #3b82f64d;border-color:#3b82f6;background:#1e293b}.rate-option.selected{border-color:#3b82f6;background:#3b82f626;box-shadow:0 8px 25px #3b82f666;transform:translateY(-2px);color:#60a5fa}.rate-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px;position:relative}.rate-title{font-size:1.2rem;font-weight:700;color:#fff;margin:0;line-height:1.3}.rate-price{font-size:1.4rem;font-weight:800;color:#4ade80;margin:0;text-align:right}.popular-badge{position:absolute;top:-38px;right:-10px;background:linear-gradient(135deg,#e74c3c,#f39c12);color:#fff;padding:6px 12px;border-radius:12px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 4px 12px #e74c3c4d}.rate-features{list-style:none;padding:0;margin:15px 0 0}.rate-features li{display:flex;align-items:center;gap:10px;padding:8px 0;color:#cbd5e1;font-size:.9rem;line-height:1.4}.rate-features li:before{content:"✓";color:#4ade80;font-weight:700;font-size:1rem;width:16px;height:16px;display:flex;align-items:center;justify-content:center;background:#4ade8033;border-radius:50%;flex-shrink:0}.rate-description{color:#e2e8f0;font-size:.85rem;margin-top:12px;padding-top:12px;border-top:1px solid #475569;font-style:italic}.rate-option.flexible{border-left:4px solid #3498db}.rate-option.standard{border-left:4px solid #27ae60}.rate-option.pay-full{border-left:4px solid #e74c3c}.rate-option.weekly{border-left:4px solid #f39c12}.rate-option input[type=radio]{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.rate-option .radio-custom{position:absolute;top:20px;right:20px;height:24px;width:24px;background-color:#1e293b;border:2px solid #475569;border-radius:50%;transition:all .3s ease}.rate-option input[type=radio]:checked~.radio-custom{background-color:#3b82f6;border-color:#3b82f6}.rate-option .radio-custom:after{content:"";position:absolute;display:none;top:50%;left:50%;width:8px;height:8px;border-radius:50%;background:#fff;transform:translate(-50%,-50%)}.rate-option input[type=radio]:checked~.radio-custom:after{display:block}.validation-toggle{margin-bottom:20px;padding:18px;background:#f8f9fa;border:2px solid #e9ecef;border-radius:12px;transition:all .3s ease}.validation-toggle:hover{border-color:#007bff;background:#f0f8ff;transform:translateY(-1px);box-shadow:0 4px 15px #007bff1a}.toggle-container{display:flex;align-items:flex-start;cursor:pointer;gap:15px;position:relative;line-height:1.5}.toggle-container input[type=checkbox]{appearance:none;width:50px;height:26px;background:#ccc;border-radius:13px;position:relative;cursor:pointer;transition:all .3s ease;flex-shrink:0;margin-top:2px}.toggle-container input[type=checkbox]:checked{background:#007bff}.toggle-container input[type=checkbox]:before{content:"";position:absolute;width:22px;height:22px;border-radius:50%;background:#fff;top:2px;left:2px;transition:all .3s ease;box-shadow:0 2px 5px #0003}.toggle-container input[type=checkbox]:checked:before{transform:translate(24px)}.toggle-label{display:flex;flex-direction:column;gap:8px;flex:1;font-size:1rem;font-weight:600;color:#333;line-height:1.4;letter-spacing:.2px}.toggle-description{font-size:.875rem;font-weight:400;color:#666;line-height:1.5;margin-top:4px;letter-spacing:.1px}.agreement-checkbox{display:flex;align-items:flex-start;gap:12px;margin:20px 0;padding:16px;background:#f8f9fa;border:2px solid #e9ecef;border-radius:10px;cursor:pointer;transition:all .3s ease;line-height:1.5}.agreement-checkbox:hover{border-color:#007bff;background:#f0f8ff;transform:translateY(-1px);box-shadow:0 3px 10px #007bff1a}.agreement-checkbox input[type=checkbox]{width:20px;height:20px;margin:2px 0 0;cursor:pointer;accent-color:#007bff;flex-shrink:0}.agreement-checkbox label{flex:1;cursor:pointer;font-size:.95rem;line-height:1.6;color:#333;letter-spacing:.2px}.agreement-checkbox input[type=checkbox]:checked+label{color:#007bff}.validation-status{margin:15px 0;padding:12px 16px;border-radius:8px;font-size:.9rem;line-height:1.4;letter-spacing:.1px}.validation-success{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.validation-errors{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.validation-error{margin-bottom:6px;line-height:1.4}.validation-error:last-child{margin-bottom:0}.card-type-detected{font-style:italic;opacity:.8;margin-left:6px}.payment-security-note{margin:15px 0;padding:16px;background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;font-size:.9rem;line-height:1.5;color:#856404;letter-spacing:.1px}.payment-security-note strong{color:#533f03}@media (max-width: 768px){.validation-toggle{padding:16px}.toggle-container{gap:12px}.toggle-container input[type=checkbox]{width:44px;height:24px}.toggle-container input[type=checkbox]:before{width:20px;height:20px}.toggle-container input[type=checkbox]:checked:before{transform:translate(20px)}.toggle-label{font-size:.95rem}.toggle-description{font-size:.8rem}.agreement-checkbox{gap:10px;padding:14px}.agreement-checkbox label{font-size:.9rem}.validation-status{margin:12px 0;padding:10px 14px;font-size:.85rem}}body.light-mode .booking-page{background:#f8fafc!important;color:#1f2937!important}body.light-mode .booking-header{background:#fffffff2!important;border:1px solid #e5e7eb!important;color:#1f2937!important;backdrop-filter:blur(10px)!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f!important}body.light-mode .booking-header h1{color:#111827!important;text-shadow:none!important}body.light-mode .booking-header p{color:#6b7280!important}body.light-mode .booking-logo{filter:brightness(.8) contrast(1.2)!important}body.light-mode .booking-form{background:#fffffff2!important;border:1px solid #e5e7eb!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f!important}body.light-mode .form-section h3{color:#111827!important;border-bottom:2px solid #2563eb!important;text-shadow:none!important}body.light-mode .form-group label{color:#374151!important;text-shadow:none!important}body.light-mode .form-group input,body.light-mode .form-group select,body.light-mode .form-group textarea{background:#fff!important;border:2px solid #d1d5db!important;color:#1f2937!important}body.light-mode .form-group input::placeholder,body.light-mode .form-group textarea::placeholder{color:#9ca3af!important}body.light-mode .form-group input:focus,body.light-mode .form-group select:focus,body.light-mode .form-group textarea:focus{border-color:#2563eb!important;background:#fff!important;color:#1f2937!important;box-shadow:0 0 0 4px #2563eb40!important}body.light-mode .form-group input.error,body.light-mode .form-group select.error,body.light-mode .form-group textarea.error{border-color:#ef4444!important;background-color:#ef44440d!important}body.light-mode .input-icon{color:#6b7280!important}body.light-mode .payment-method{background:#fff!important;border:2px solid #e5e7eb!important;color:#1f2937!important}body.light-mode .payment-method:hover{border-color:#2563eb!important;background:#f8fafc!important}body.light-mode .payment-method.active,body.light-mode .payment-method.selected{border-color:#2563eb!important;background:#2563eb0d!important}body.light-mode .payment-icon{color:#2563eb!important}body.light-mode .card-element-container{background:#fff!important;border:2px solid #d1d5db!important}body.light-mode .card-element-container label{color:#374151!important}body.light-mode .card-element{background:#fff!important;color:#1f2937!important}body.light-mode .availability-check-btn,body.light-mode .submit-button,body.light-mode .btn-pay-deposit,body.light-mode .btn-next,body.light-mode .btn-apply-coupon{background:#2563eb!important;color:#fff!important;border:1px solid #2563eb!important}body.light-mode .availability-check-btn:hover:not(:disabled),body.light-mode .submit-button:hover:not(:disabled),body.light-mode .btn-pay-deposit:hover:not(:disabled),body.light-mode .btn-next:hover:not(:disabled),body.light-mode .btn-apply-coupon:hover:not(:disabled){background:#1d4ed8!important;border-color:#1d4ed8!important;box-shadow:0 4px 12px #2563eb40!important}body.light-mode .btn-back{background:#fff!important;color:#374151!important;border:2px solid #d1d5db!important}body.light-mode .btn-back:hover:not(:disabled){background:#f9fafb!important;border-color:#2563eb!important;color:#2563eb!important}body.light-mode .btn-remove-coupon{background:#ef44441a!important;color:#dc2626!important;border:1px solid #f87171!important}body.light-mode .btn-remove-coupon:hover{background:#ef444433!important;color:#b91c1c!important}body.light-mode .availability-status.available{background:#22c55e1a!important;border:1px solid #22c55e!important;color:#166534!important}body.light-mode .availability-status.unavailable{background:#ef44441a!important;border:1px solid #ef4444!important;color:#dc2626!important}body.light-mode .apple-pay-payment,body.light-mode .google-pay-payment{background:#fff!important;border:2px solid #d1d5db!important}body.light-mode .apple-pay-info,body.light-mode .google-pay-info{color:#374151!important}body.light-mode .charges-summary{background:#fffffff2!important;border:1px solid #e5e7eb!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f!important}body.light-mode .charges-summary h3{color:#111827!important;border-bottom:2px solid #2563eb!important}body.light-mode .charge-line{color:#374151!important;border-bottom:1px solid #f3f4f6!important}body.light-mode .charge-line.vat-line{background:#f9fafbcc!important;border-color:#e5e7eb!important}body.light-mode .charge-line.total-line{background:#2563eb0d!important;border-color:#d1d5db!important;color:#111827!important;font-weight:700!important}body.light-mode .charge-line.payment-line{background:#22c55e0d!important;border-color:#22c55e4d!important;color:#059669!important}body.light-mode .charge-line.balance-line{background:#f59e0b0d!important;color:#d97706!important}body.light-mode .charge-line.discount-line{background:#22c55e0d!important;color:#059669!important}body.light-mode .coupon-section{background:#fffffff2!important;border:1px solid #e5e7eb!important}body.light-mode .coupon-section h3{color:#111827!important}body.light-mode .coupon-input{background:#fff!important;border:2px solid #d1d5db!important}body.light-mode .coupon-input input{background:#fff!important;color:#1f2937!important;border:none!important}body.light-mode .coupon-input input:focus{background:#fff!important;color:#1f2937!important}body.light-mode .applied-coupon{background:#22c55e1a!important;border:1px solid #22c55e!important;color:#166534!important}body.light-mode .coupon-code{color:#059669!important}body.light-mode .coupon-description{color:#374151!important}body.light-mode .coupon-savings{color:#059669!important}body.light-mode .error-message{background:#ef44441a!important;border:1px solid #f87171!important;color:#dc2626!important}body.light-mode .success-message{background:#22c55e1a!important;border:1px solid #22c55e!important;color:#166534!important}body.light-mode .warning-message{background:#f59e0b1a!important;border:1px solid #fbbf24!important;color:#d97706!important}body.light-mode .minimum-stay-notice{background:#f59e0b1a!important;border:2px solid #fbbf24!important;color:#92400e!important}body.light-mode .booking-summary{background:#fffffff2!important;border:1px solid #e5e7eb!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f!important}body.light-mode .booking-summary h3,body.light-mode .booking-summary h4,body.light-mode .property-info h4{color:#111827!important}body.light-mode .property-info p{color:#6b7280!important}body.light-mode .summary-row{color:#374151!important;border-bottom:1px solid #f3f4f6!important}body.light-mode .summary-row.price-row{background:#2563eb0d!important;color:#111827!important;font-weight:700!important}body.light-mode .total-price{color:#2563eb!important}body.light-mode .cancellation-policy{background:#f9fafbe6!important;border:1px solid #e5e7eb!important}body.light-mode .cancellation-policy h4{color:#111827!important}body.light-mode .cancellation-policy p{color:#4b5563!important}body.light-mode .legal-agreement{background:#f9fafbe6!important;border:1px solid #e5e7eb!important;color:#4b5563!important}body.light-mode .legal-agreement a{color:#2563eb!important}body.light-mode .legal-agreement a:hover{color:#1d4ed8!important}body.light-mode .agreement-checkbox{background:#fff!important;border:2px solid #d1d5db!important;color:#374151!important}body.light-mode .agreement-checkbox:hover{background:#f9fafb!important;border-color:#2563eb!important}body.light-mode .agreement-checkbox input[type=checkbox]:checked+label{color:#2563eb!important}body.light-mode .booking-success{background:#f8fafc!important}body.light-mode .success-content{background:#fffffff2!important;border:1px solid #e5e7eb!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f!important}body.light-mode .success-icon{color:#22c55e!important;background:#22c55e1a!important}body.light-mode .success-content h1{color:#111827!important}body.light-mode .success-content>p{color:#6b7280!important}body.light-mode .booking-details h3{color:#111827!important}body.light-mode .booking-details p{color:#4b5563!important}body.light-mode .confirmation-note{background:#22c55e1a!important;border:1px solid #22c55e!important;color:#166534!important}body.light-mode .booking-progress{background:#ffffffe6!important;border:1px solid #e5e7eb!important}body.light-mode .progress-step{background:#f9fafb!important;border:2px solid #e5e7eb!important;color:#6b7280!important}body.light-mode .progress-step:hover{background:#f3f4f6!important}body.light-mode .progress-step.completed{background:#22c55e1a!important;border-color:#22c55e!important;color:#059669!important}body.light-mode .progress-step.current{background:#2563eb1a!important;border-color:#2563eb!important;color:#2563eb!important}body.light-mode .step-icon{background:#e5e7eb!important;color:#6b7280!important}body.light-mode .progress-step.completed .step-icon{background:#22c55e!important;color:#fff!important}body.light-mode .progress-step.current .step-icon{background:#2563eb!important;color:#fff!important}body.light-mode .step-title{color:#6b7280!important}body.light-mode .progress-step.completed .step-title{color:#059669!important}body.light-mode .progress-step.current .step-title{color:#2563eb!important}body.light-mode .rate-selector{background:#fffffff2!important;border:1px solid #e5e7eb!important}body.light-mode .rate-selector h3{color:#111827!important}body.light-mode .rate-option{background:#fff!important;border:2px solid #e5e7eb!important;color:#1f2937!important}body.light-mode .rate-option:hover{border-color:#2563eb!important;box-shadow:0 4px 6px -1px #0000001a!important}body.light-mode .rate-option.selected{border-color:#2563eb!important;background:#2563eb0d!important}body.light-mode .rate-header h3{color:#111827!important}body.light-mode .rate-price{color:#2563eb!important}body.light-mode .rate-features li{color:#374151!important}body.light-mode .rate-features li:before{color:#22c55e!important}body.light-mode .popular-badge{background:#2563eb!important;color:#fff!important}body.light-mode .rate-description{color:#6b7280!important}body.light-mode .validation-success{background:#22c55e1a!important;border:1px solid #22c55e!important;color:#166534!important}body.light-mode .validation-errors{background:#ef44441a!important;border:1px solid #ef4444!important;color:#dc2626!important}body.light-mode .validation-error{color:#dc2626!important}body.light-mode .payment-security-note{background:#f59e0b1a!important;border:1px solid #fbbf24!important;color:#92400e!important}body.light-mode .payment-security-note strong{color:#78350f!important}body.light-mode .vat-notice{background:#f9fafbe6!important;border:1px solid #e5e7eb!important;color:#4b5563!important}body.light-mode .booking-stage{background:#fffffff2!important;border:1px solid #e5e7eb!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f!important}body.light-mode .booking-stage h2{color:#111827!important;text-shadow:none!important}body.light-mode .booking-stage h3{color:#374151!important}body.light-mode .booking-stage p{color:#4b5563!important}body.light-mode .tooltip-text{background:#1f2937!important;color:#fff!important;border:1px solid #374151!important}body.light-mode .tooltip-text:after{border-color:#1f2937 transparent transparent transparent!important}body.light-mode .edit-mode-notice{background:#f59e0b1a!important;border:1px solid #fbbf24!important;color:#92400e!important}body.light-mode .edit-mode-notice strong{color:#78350f!important}body.light-mode .next-steps{background:#f9fafbe6!important;border:1px solid #e5e7eb!important}body.light-mode .next-steps h4{color:#111827!important}body.light-mode .next-steps li{color:#4b5563!important}body.light-mode .summary-grid{border-top:1px solid #e5e7eb!important}body.light-mode .summary-item{border-bottom:1px solid #f3f4f6!important;color:#374151!important}body.light-mode .summary-item:last-child{border-bottom:none!important}body.light-mode .summary-item strong{color:#111827!important}body.light-mode .submit-button:disabled,body.light-mode .btn-pay-deposit:disabled,body.light-mode .btn-next:disabled,body.light-mode .availability-check-btn:disabled,body.light-mode .btn-apply-coupon:disabled{background:#f3f4f6!important;color:#9ca3af!important;border-color:#e5e7eb!important}body.light-mode .card-type-detected{color:#2563eb!important;background:#2563eb1a!important}@media (max-width: 768px){body.light-mode .booking-header,body.light-mode .booking-form,body.light-mode .booking-summary,body.light-mode .charges-summary{background:#fff!important;box-shadow:0 2px 4px #0000001a!important}body.light-mode .form-group label,body.light-mode .booking-form h3,body.light-mode .form-section h3{color:#111827!important;font-weight:700!important}body.light-mode .booking-form p,body.light-mode .form-section p{color:#4b5563!important}body.light-mode .minimum-stay-notice{background:#f59e0b26!important;border:2px solid #f59e0b!important;color:#78350f!important}}@media (max-width: 480px){body.light-mode .booking-header{background:#fff!important}body.light-mode .booking-header h1{color:#111827!important}body.light-mode .booking-header p{color:#6b7280!important}}@media (max-width: 768px){body.light-mode .payment-method{background:#fff!important;border:2px solid #d1d5db!important;color:#111827!important;box-shadow:0 2px 4px #0000001a!important}body.light-mode .payment-method:hover{border-color:#2563eb!important;background:#f8fafc!important;box-shadow:0 4px 8px #2563eb26!important}body.light-mode .payment-method.active,body.light-mode .payment-method.selected{border-color:#2563eb!important;background:#2563eb0d!important;box-shadow:0 0 0 3px #2563eb1a!important}body.light-mode .payment-method-name{color:#111827!important;font-weight:600!important}body.light-mode .payment-icon{color:#2563eb!important}body.light-mode .card-icon,body.light-mode .paypal-icon,body.light-mode .apple-pay-icon,body.light-mode .google-pay-icon{filter:brightness(.8) contrast(1.2)!important}body.light-mode .form-group label{color:#111827!important;font-weight:700!important;font-size:1rem!important;margin-bottom:8px!important}body.light-mode .form-group input,body.light-mode .form-group select,body.light-mode .form-group textarea{background:#fff!important;border:2px solid #e5e7eb!important;color:#111827!important;font-weight:500!important}body.light-mode .form-group input::placeholder,body.light-mode .form-group textarea::placeholder{color:#6b7280!important;font-weight:400!important}body.light-mode .form-group input:focus,body.light-mode .form-group select:focus,body.light-mode .form-group textarea:focus{border-color:#2563eb!important;background:#fff!important;color:#111827!important;box-shadow:0 0 0 3px #2563eb1a!important}body.light-mode .input-icon{color:#374151!important}body.light-mode .validation-toggle{background:#f8fafce6!important;border:1px solid #e5e7eb!important;border-radius:12px!important;padding:16px!important}body.light-mode .toggle-label{color:#111827!important;font-weight:600!important}body.light-mode .toggle-description{color:#6b7280!important;font-weight:400!important}body.light-mode .document-container{background:#fffffff2!important;border:2px solid #e5e7eb!important;box-shadow:0 4px 6px -1px #0000001a!important}body.light-mode .document-header h3{color:#111827!important;font-weight:700!important}body.light-mode .document-content h4{color:#1f2937!important;font-weight:600!important}body.light-mode .document-content ul li{color:#374151!important;font-weight:500!important}body.light-mode .document-content ul li strong{color:#111827!important;font-weight:700!important}body.light-mode .agreement-checkbox label{color:#111827!important;font-weight:600!important}body.light-mode .agreement-checkbox input[type=checkbox]{accent-color:#2563eb!important}body.light-mode .form-group input,body.light-mode .form-group textarea,body.light-mode .form-group select{background:#fff!important;color:#111827!important;border:2px solid #e5e7eb!important;font-weight:500!important}body.light-mode .form-group input::placeholder,body.light-mode .form-group textarea::placeholder{color:#6b7280!important;opacity:.8!important;font-weight:400!important}body.light-mode .form-group input:focus,body.light-mode .form-group textarea:focus,body.light-mode .form-group select:focus{background:#fff!important;color:#111827!important;border-color:#2563eb!important;box-shadow:0 0 0 3px #2563eb1a!important}body.light-mode .form-group input.error,body.light-mode .form-group textarea.error{border-color:#dc2626!important;color:#111827!important;background:#fef2f2!important}body.light-mode .form-group input.error:focus,body.light-mode .form-group textarea.error:focus{box-shadow:0 0 0 3px #dc26261a!important}body.light-mode .coupon-input input{background:#fff!important;color:#111827!important;border:2px solid #e5e7eb!important;font-weight:500!important}body.light-mode .coupon-input input::placeholder{color:#6b7280!important;opacity:.8!important}body.light-mode .coupon-input input:focus{border-color:#2563eb!important;color:#111827!important;box-shadow:0 0 0 3px #2563eb1a!important}body.light-mode .btn-check-availability{background:#2563eb!important;color:#fff!important;border:2px solid #2563eb!important;font-weight:700!important;box-shadow:0 4px 12px #2563eb40!important;font-size:16px!important;padding:14px 20px!important;border-radius:12px!important;transition:all .2s ease!important}body.light-mode .btn-check-availability:hover:not(:disabled){background:#1d4ed8!important;border-color:#1d4ed8!important;color:#fff!important;box-shadow:0 6px 16px #2563eb59!important;transform:translateY(-2px)!important}body.light-mode .btn-check-availability:disabled{background:#d1d5db!important;color:#6b7280!important;border:2px solid #d1d5db!important;box-shadow:none!important;opacity:1!important;cursor:not-allowed!important;transform:none!important}body.light-mode .btn-check-availability:disabled:hover{background:#d1d5db!important;border-color:#d1d5db!important;transform:none!important;box-shadow:none!important}body.light-mode .btn-proceed{background:#2563eb!important;color:#fff!important;border:2px solid #2563eb!important;font-weight:700!important;box-shadow:0 4px 12px #2563eb40!important;font-size:16px!important;padding:14px 20px!important;border-radius:12px!important;transition:all .2s ease!important}body.light-mode .btn-proceed:hover:not(:disabled){background:#1d4ed8!important;border-color:#1d4ed8!important;color:#fff!important;box-shadow:0 6px 16px #2563eb59!important;transform:translateY(-2px)!important}body.light-mode .btn-proceed:disabled{background:#d1d5db!important;color:#6b7280!important;border:2px solid #d1d5db!important;box-shadow:none!important;opacity:1!important;cursor:not-allowed!important;transform:none!important}body.light-mode .btn-pay{background:#2563eb!important;color:#fff!important;border:2px solid #2563eb!important;font-weight:700!important;box-shadow:0 4px 12px #2563eb40!important;font-size:16px!important;padding:14px 24px!important;border-radius:8px!important;transition:all .2s ease!important;width:100%!important}body.light-mode .btn-pay:hover:not(:disabled){background:#1d4ed8!important;border-color:#1d4ed8!important;box-shadow:0 6px 16px #2563eb59!important;transform:translateY(-2px)!important}body.light-mode .btn-pay:disabled{background:#d1d5db!important;color:#6b7280!important;border:2px solid #d1d5db!important;box-shadow:none!important;opacity:1!important;cursor:not-allowed!important;transform:none!important}body.light-mode .availability-check-btn{padding:14px 20px!important}body.light-mode .availability-check-btn:hover:not(:disabled){background:#1d4ed8!important;border-color:#1d4ed8!important;color:#fff!important;box-shadow:0 6px 16px #2563eb59!important;transform:translateY(-2px)!important}body.light-mode .availability-check-btn:disabled{background:#d1d5db!important;color:#6b7280!important;border:2px solid #d1d5db!important;box-shadow:none!important;opacity:1!important;cursor:not-allowed!important;transform:none!important}body.light-mode .availability-check-btn:disabled:hover{background:#d1d5db!important;border-color:#d1d5db!important;transform:none!important;box-shadow:none!important}}@supports (-webkit-touch-callout: none){h1,h2,h3,h4,h5,h6{hyphens:none!important;-webkit-hyphens:none!important;word-break:keep-all!important;overflow-wrap:break-word!important;word-wrap:break-word!important}.booking-hero h2,.booking-hero p,.booking-steps h2,.step-card h3,.booking-form h2,.booking-form h3,.form-section h3,.error-message h3,.success-message h3{hyphens:none!important;-webkit-hyphens:none!important;word-break:keep-all!important;overflow-wrap:break-word!important;word-wrap:break-word!important;white-space:normal!important}@media (max-width: 768px){.booking-hero h2,.booking-hero p,.booking-steps h2,.step-card h3,.booking-form h2,.booking-form h3,.form-section h3,.error-message h3,.success-message h3{hyphens:none!important;-webkit-hyphens:none!important;word-break:keep-all!important;overflow-wrap:break-word!important;word-wrap:break-word!important;white-space:normal!important}}}.about-page{min-height:100vh;background-color:#0f172a;color:#e2e8f0}.hero-content h2{font-size:3rem;font-weight:500;margin-bottom:1rem;text-shadow:2px 2px 4px rgba(0,0,0,.3);color:#fff;letter-spacing:-.02em;line-height:1.3}.hero-content p{font-size:1.25rem;text-shadow:1px 1px 2px rgba(0,0,0,.3);color:#e2e8f0}.our-story{padding:80px 0;background:#1e293b}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.story-content h2{font-size:2.5rem;color:#fff;margin-bottom:2rem;font-weight:700;hyphens:none;word-break:keep-all;overflow-wrap:break-word;word-wrap:break-word}.story-content p{font-size:1.1rem;line-height:1.8;color:#e2e8f0;margin-bottom:1.5rem}.story-stats{display:flex;gap:40px;margin-top:3rem}.stat-item{display:flex;align-items:center;gap:15px}.stat-icon{width:40px;height:40px;color:#60a5fa;background:#60a5fa1a;padding:8px;border-radius:50%}.stat-item div{display:flex;flex-direction:column}.stat-number{font-size:1.5rem;font-weight:700;color:#fff;line-height:1}.stat-label{font-size:.9rem;color:#cbd5e1}.story-image{border-radius:20px;overflow:hidden;box-shadow:0 20px 60px #0006;border:1px solid rgba(71,85,105,.3)}.story-image img{width:100%;height:400px;object-fit:cover;transition:transform .3s ease}.story-image:hover img{transform:scale(1.05)}.hosts-section{padding:80px 0;background:#0f172a}.hosts-section h2{text-align:center;font-size:2.5rem;color:#fff;margin-bottom:3rem;font-weight:700}.hosts-grid{display:flex;justify-content:center}.host-card{background:#334155;border-radius:20px;padding:40px;box-shadow:0 15px 35px #0000004d;display:flex;gap:30px;max-width:800px;align-items:center;border:1px solid rgba(71,85,105,.3)}.host-image{flex-shrink:0;width:150px;height:150px}.host-image img{width:150px;height:150px;object-fit:cover;border-radius:50%;border:4px solid #60a5fa;transition:transform .3s ease}.host-image img:hover{transform:scale(1.05)}.host-placeholder{width:150px;height:150px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,#334155,#475569);border:4px solid #60a5fa;border-radius:50%;color:#cbd5e1;text-align:center;gap:8px}.host-placeholder span{font-weight:600;font-size:1.1rem;color:#e2e8f0}.host-info h3{font-size:1.5rem;color:#fff;margin-bottom:5px;font-weight:600}.host-title{color:#60a5fa;font-weight:500;margin-bottom:15px!important}.host-info p{color:#e2e8f0;line-height:1.6;margin-bottom:20px}.host-languages{display:flex;gap:10px}.language{background:#60a5fa;color:#fff;padding:5px 12px;border-radius:15px;font-size:.9rem}.location-section{padding:80px 0;background:#1e293b}.location-section h2{text-align:center;font-size:2.5rem;color:#fff;margin-bottom:3rem;font-weight:700}.location-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.location-content h3{font-size:1.8rem;color:#fff;margin-bottom:1.5rem;font-weight:600}.location-content p{font-size:1.1rem;line-height:1.8;color:#e2e8f0;margin-bottom:2rem}.nearby-attractions h4{font-size:1.3rem;color:#fff;margin-bottom:1.5rem;font-weight:600}.attractions-list{display:flex;flex-direction:column;gap:15px}.attraction-item{display:flex;align-items:center;gap:15px;padding:15px;background:#334155;border-radius:12px;border:1px solid rgba(71,85,105,.3);transition:all .3s ease}.attraction-item:hover{background:#475569;transform:translateY(-2px)}.attraction-icon{width:24px;height:24px;color:#60a5fa;flex-shrink:0}.attraction-item div{display:flex;flex-direction:column}.attraction-item strong{color:#fff;margin-bottom:2px}.attraction-item span{color:#cbd5e1;font-size:.9rem}.castle-link{color:#60a5fa;text-decoration:none;transition:color .3s ease}.castle-link:hover{color:#3b82f6;text-decoration:underline}.interactive-map{background:#334155;border-radius:20px;padding:0;box-shadow:0 8px 32px #0000004d;overflow:hidden;border:1px solid rgba(71,85,105,.3)}.map-header{display:flex;align-items:center;gap:15px;padding:20px 30px;background:linear-gradient(135deg,#475569,#334155);border-bottom:1px solid rgba(71,85,105,.3)}.map-header .map-icon{width:32px;height:32px;color:#60a5fa;flex-shrink:0}.map-header div{flex:1}.map-header h4{color:#fff;margin:0 0 5px;font-size:1.3rem;font-weight:600}.map-header p{color:#cbd5e1;margin:0;font-size:.95rem}.map-container{position:relative;width:100%;height:400px;background:#1e293b}.map-container iframe{width:100%;height:100%;border:none}.map-footer{display:flex;justify-content:space-between;align-items:center;padding:20px 30px;background:#475569;border-top:1px solid rgba(71,85,105,.3)}.address-display{background:linear-gradient(135deg,#334155,#475569);padding:12px 20px;border-radius:16px;border:1px solid rgba(71,85,105,.3);box-shadow:0 2px 8px #0003}.address-link{color:#fff;text-decoration:none;font-weight:600;font-size:.95rem;display:flex;align-items:center;transition:all .3s ease;position:relative}.address-link:hover{color:#60a5fa;transform:translate(2px)}.address-link:before{content:"📍";margin-right:8px;font-size:1rem}.map-actions{display:flex;gap:16px;align-items:center;justify-content:center;flex-wrap:wrap}.map-button{display:inline-flex;align-items:center;justify-content:center;padding:14px 24px;border-radius:12px;text-decoration:none;font-size:.9rem;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #0003;min-width:180px;position:relative;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.map-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.map-button:hover:before{left:100%}.map-button.primary{background:linear-gradient(135deg,#60a5fa,#3b82f6);color:#fff;border:none}.map-button.primary:hover{background:linear-gradient(135deg,#3b82f6,#2563eb);transform:translateY(-2px);box-shadow:0 6px 20px #60a5fa66}.map-button.secondary{background:transparent;color:#60a5fa;border:2px solid #60a5fa}.map-button.secondary:hover{background:linear-gradient(135deg,#60a5fa,#3b82f6);color:#fff;border-color:#3b82f6;transform:translateY(-2px);box-shadow:0 6px 20px #60a5fa4d}.map-button.address{background:#ffffffe6;color:#374151;border:2px solid #e5e7eb;font-weight:600}.map-button.address:hover{background:#2563eb0d;border-color:#2563eb;color:#2563eb;transform:translateY(-2px);box-shadow:0 6px 20px #2563eb26}.contact-section{padding:80px 0;background:#f8f9fa}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}.contact-info h2{font-size:2.5rem;color:#2c3e50;margin-bottom:1.5rem;font-weight:700}.contact-info>p{font-size:1.1rem;line-height:1.8;color:#555;margin-bottom:2.5rem}.contact-methods{display:flex;flex-direction:column;gap:25px}.contact-item{display:flex;align-items:flex-start;gap:20px;padding:20px;background:#fff;border-radius:15px;box-shadow:0 5px 15px #0000001a}.contact-icon{width:24px;height:24px;color:#3498db;flex-shrink:0;margin-top:2px}.contact-item strong{color:#2c3e50;font-weight:600}.contact-item a{color:#3498db;text-decoration:none;transition:color .3s ease}.contact-item a:hover{color:#2980b9;text-decoration:underline}.contact-item span{color:#666;line-height:1.4}.contact-form{background:#fff;padding:40px;border-radius:20px;box-shadow:0 15px 35px #0000001a}.contact-form h3{font-size:1.5rem;color:#2c3e50;margin-bottom:25px;font-weight:600}.form-group label{margin-bottom:8px;font-weight:500;color:#2c3e50}.form-group input,.form-group textarea{padding:12px 16px;border:2px solid #e1e8ed;border-radius:10px;font-size:16px;transition:border-color .3s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#3498db}.submit-btn{background:#3498db;color:#fff;border:none;padding:15px 30px;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease}.submit-btn:hover:not(:disabled){background:#2980b9;transform:translateY(-2px)}.submit-btn:disabled{background:#bdc3c7;cursor:not-allowed;transform:none}.submit-btn .btn-icon,.submit-btn .spinner{width:18px;height:18px;margin-right:8px}.form-message{display:flex;align-items:flex-start;gap:12px;padding:20px;border-radius:12px;margin-bottom:25px;animation:slideInUp .3s ease-out}.form-message.success{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.form-message.error{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.form-message p{margin:0;font-size:.95rem;line-height:1.4}.form-message li{margin-bottom:5px;font-size:.9rem}.form-message a{color:inherit;text-decoration:underline;font-weight:500}.form-message a:hover{text-decoration:none}.regulations-section{padding:80px 0;background:#0f172a}.regulations-section h2{text-align:center;font-size:2.5rem;color:#fff;margin-bottom:3rem;font-weight:700}.regulations-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px;margin-top:2rem}.regulations-card{background:#334155;padding:30px;border-radius:20px;box-shadow:0 8px 32px #0000004d;transition:transform .3s ease,box-shadow .3s ease;border:1px solid rgba(71,85,105,.3)}.regulations-card:hover{transform:translateY(-5px);box-shadow:0 12px 40px #0006}.regulation-icon{width:48px;height:48px;color:#60a5fa;margin-bottom:1.5rem}.regulations-card h3{font-size:1.5rem;color:#fff;margin-bottom:1.5rem;font-weight:600}.time-info{display:flex;flex-direction:column;gap:15px;margin-bottom:1.5rem;background:#475569;padding:20px;border-radius:12px;border:1px solid rgba(71,85,105,.3)}.time-item{display:flex;justify-content:space-between;align-items:center;padding:10px 0}.time-item strong{color:#fff;font-weight:600}.time-item span{color:#60a5fa;font-weight:600}.regulations-card ul{list-style:none;padding:0;margin:0}.regulations-card li{color:#e2e8f0;border-bottom:1px solid rgba(71,85,105,.2);padding:12px 0 12px 25px;position:relative}.regulations-card li:before{content:"✓";position:absolute;left:0;color:#60a5fa;font-weight:700;font-size:1.1rem}.regulations-card li:last-child{border-bottom:none}.cancellation-policy{margin-top:1rem}.policy-tier{margin-bottom:1.5rem;padding:15px;background:#475569;border-radius:10px;border-left:4px solid #60a5fa;border:1px solid rgba(71,85,105,.3)}.policy-tier.no-refund{border-left-color:#ef4444}.timeframe{font-weight:600;color:#fff;margin-bottom:5px}.refund{color:#60a5fa;font-weight:500}.policy-tier.no-refund .refund{color:#ef4444}.regulations-card p{color:#e2e8f0;line-height:1.6;margin-top:1rem;font-style:italic}.property-info{margin-top:1rem}.info-item{background:#475569;padding:15px;border-radius:10px;margin-bottom:10px;border:1px solid rgba(71,85,105,.3)}.info-item strong{color:#fff;display:block;margin-bottom:5px}.instruction-link{color:#60a5fa;text-decoration:none;font-weight:500}.instruction-link:hover{color:#3b82f6;text-decoration:underline}.damage-policy ul{list-style:none;padding:0;margin:0}.damage-policy li{color:#e2e8f0;border-bottom:1px solid rgba(71,85,105,.2);padding:10px 0 10px 25px;position:relative;line-height:1.5}.damage-policy li strong{color:#60a5fa;font-weight:600}.social-section{padding:80px 0;background:#1e293b;text-align:center}.social-section h2{font-size:2.5rem;color:#fff;margin-bottom:1rem;font-weight:700}.social-section>p{color:#e2e8f0;font-size:1.1rem;margin-bottom:3rem}.social-links{display:flex;justify-content:center;gap:20px;flex-wrap:wrap}.social-link{display:inline-flex;align-items:center;gap:10px;padding:15px 25px;background:#334155;border-radius:50px;text-decoration:none;transition:all .3s ease;border:2px solid transparent}.social-icon{width:24px;height:24px}.social-link span{font-weight:600;font-size:1rem}.social-link.facebook{color:#1877f2;border-color:#1877f24d}.social-link.instagram{color:#e4405f;border-color:#e4405f4d}.social-link.youtube{color:red;border-color:#ff00004d}.social-link.tripadvisor{color:#00af87;border-color:#00af874d}.social-link:hover{transform:translateY(-3px);box-shadow:0 8px 25px #0000004d;background:#475569}.social-placeholder{color:#cbd5e1;font-style:italic;padding:40px;background:#334155;border-radius:15px;border:1px solid rgba(71,85,105,.3)}.social-placeholder p{margin:0;font-size:1.1rem}@media (max-width: 1199.98px){.story-grid,.location-grid{gap:50px}.contact-grid{gap:40px}}@media (max-width: 991.98px){.story-grid,.location-grid,.contact-grid{grid-template-columns:1fr;gap:40px}.story-stats{justify-content:center;flex-wrap:wrap;gap:30px}.host-card{flex-direction:column;text-align:center;max-width:500px;margin:0 auto}.contact-form{max-width:600px;margin:0 auto}}@media (max-width: 767.98px){.about-hero{height:65vh;min-height:65vh}.hero-content{padding:0 15px}.about-hero-logo{display:none}.hero-content h1{font-size:clamp(2rem,4vw,2.5rem)}.hero-content p{font-size:clamp(.95rem,2.2vw,1.1rem)}.about-hero-logo{height:60px}.our-story,.hosts-section,.location-section,.contact-section,.regulations-section,.social-section{padding:50px 0}.story-content h2,.hosts-section h2,.location-section h2,.contact-info h2,.regulations-section h2,.social-section h2{font-size:clamp(1.6rem,3.2vw,2rem);hyphens:none;word-break:keep-all;overflow-wrap:break-word;word-wrap:break-word}.story-content p,.location-content p,.contact-info>p,.social-section>p{font-size:clamp(.9rem,2vw,1rem)}.story-stats{gap:25px}.host-card{padding:30px 25px;border-radius:15px}.contact-form{padding:30px 25px;border-radius:15px;max-width:100%;margin:0}.form-row{grid-template-columns:1fr;gap:0}.regulations-card{padding:25px 20px}.time-info{flex-direction:column;gap:15px}.social-links{gap:15px;flex-wrap:wrap;justify-content:center}.social-link{padding:12px 20px;font-size:.95rem;min-width:200px;justify-content:center}.social-icon{width:20px;height:20px}}@media (max-width: 575.98px){.about-hero{height:65vh;min-height:65vh}.hero-content{padding:0 10px}.hero-content .container{max-width:100%}.about-hero-logo{display:none}.hero-content h1{font-size:clamp(1.8rem,3.5vw,2.2rem);margin-bottom:.8rem}.hero-content p{font-size:clamp(.9rem,2vw,1rem)}.our-story,.hosts-section,.location-section,.contact-section,.social-section{padding:40px 0}.story-content h2,.hosts-section h2,.location-section h2,.contact-info h2,.social-section h2{font-size:clamp(1.4rem,3vw,1.8rem);margin-bottom:1rem;hyphens:none;word-break:keep-all;overflow-wrap:break-word;word-wrap:break-word}.story-content p,.location-content p,.contact-info>p{font-size:clamp(.85rem,1.8vw,.95rem);line-height:1.6}.story-stats{flex-direction:column;align-items:center;gap:20px}.stat-item{text-align:center}.stat-number{font-size:clamp(1.8rem,3.5vw,2.2rem)}.stat-label{font-size:clamp(.8rem,1.6vw,.9rem)}.host-card{padding:25px 20px;border-radius:12px}.host-image,.host-image img,.host-placeholder{width:120px;height:120px}.host-info h3{font-size:clamp(1.2rem,2.5vw,1.4rem)}.host-info p{font-size:clamp(.85rem,1.8vw,.95rem)}.host-languages{justify-content:center;flex-wrap:wrap;gap:8px}.language{padding:6px 12px;font-size:.8rem}.location-content h3{font-size:clamp(1.2rem,2.5vw,1.4rem)}.nearby-attractions h4{font-size:clamp(1rem,2.2vw,1.2rem)}.attractions-list{gap:12px}.attraction-item{padding:15px;border-radius:10px}.attraction-item strong{font-size:clamp(.9rem,1.8vw,1rem)}.attraction-item span{font-size:clamp(.8rem,1.6vw,.85rem)}.interactive-map{border-radius:12px}.map-header{padding:15px 20px;flex-direction:column;align-items:flex-start;gap:10px}.map-header .map-icon{width:28px;height:28px}.map-header h4{font-size:clamp(1rem,2.2vw,1.2rem)}.map-header p{font-size:clamp(.8rem,1.6vw,.9rem)}.map-container{height:300px}.map-footer{padding:15px 20px;flex-direction:column;gap:15px;align-items:center}.map-actions{flex-direction:column;gap:12px;width:100%}.map-button{justify-content:center;padding:14px 20px;width:100%;max-width:280px;min-width:200px;font-size:.95rem}.address-display{padding:10px 16px}.address-link{font-size:clamp(.85rem,1.8vw,.9rem);justify-content:center;text-align:center}.contact-form{padding:25px 20px;border-radius:12px;max-width:100%;margin:0}.contact-form h3{font-size:clamp(1.2rem,2.5vw,1.4rem)}.form-group label{font-size:clamp(.85rem,1.8vw,.9rem)}.form-group input,.form-group textarea{padding:12px;font-size:clamp(.85rem,1.8vw,.9rem)}.submit-btn{padding:12px 24px;font-size:clamp(.9rem,1.8vw,1rem)}.social-section>p{font-size:clamp(.85rem,1.8vw,.95rem)}.social-links{gap:12px;justify-content:center}.social-link{padding:14px 18px;font-size:.9rem;min-width:180px;width:auto;height:auto;justify-content:center}.social-link span{font-size:.9rem}.social-placeholder{padding:25px 20px;border-radius:12px}.social-placeholder p{font-size:clamp(.8rem,1.6vw,.9rem)}}@media (max-width: 479.98px){.about-hero{height:65vh;min-height:65vh}.hero-content h1{font-size:clamp(1.6rem,3.2vw,2rem)}.our-story,.hosts-section,.location-section,.contact-section,.social-section{padding:30px 0}.story-content h2,.hosts-section h2,.location-section h2,.contact-info h2,.social-section h2{font-size:clamp(1.3rem,2.8vw,1.6rem)}.host-card{padding:20px 15px}.host-image,.host-image img,.host-placeholder{width:100px;height:100px}.attraction-item{padding:12px}.contact-form{padding:20px 15px;max-width:100%;margin:0}.interactive-map .map-header,.interactive-map .map-footer{padding:12px 15px}.map-container{height:250px}.address-display{padding:8px 12px}.map-button{padding:12px 18px;font-size:.85rem;min-width:160px;max-width:240px}.social-placeholder{padding:20px 15px}.social-links{gap:10px;justify-content:center}.social-link{padding:12px 16px;font-size:.85rem;min-width:160px;width:auto;height:auto;justify-content:center}.social-icon{width:18px;height:18px}.social-link span{font-size:.85rem}}body.light-mode .about-page{background:#f8fafc!important;color:#374151!important}body.light-mode .hero-content{position:relative!important;z-index:3!important;color:#fff!important;text-align:center!important;width:100%!important;padding:5px!important}body.light-mode .hero-content .container{max-width:700px!important;margin:0 auto!important;padding:50px 60px!important;border-radius:25px!important;box-shadow:0 25px 60px #0000004d,0 0 0 1px #fff3!important}body.light-mode .hero-content h2{color:#fff!important;font-size:clamp(2.5rem,5vw,3rem)!important;font-weight:500!important;margin-bottom:1rem!important;text-shadow:0 2px 4px rgba(0,0,0,.5)!important;line-height:1.3!important;letter-spacing:-.02em!important}body.light-mode .hero-content p{color:#fff!important;font-size:clamp(1.1rem,2.5vw,1.25rem)!important;font-weight:500!important;text-shadow:0 1px 2px rgba(0,0,0,.5)!important;line-height:1.6!important}body.light-mode .our-story{background:#fff!important;background-color:#ffffffd9!important;backdrop-filter:blur(10px)!important;border-radius:16px!important;padding:80px 40px!important;margin:30px 0!important;border:1px solid rgba(255,255,255,.3)!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f!important}body.light-mode .story-content h2{color:#111827!important;font-weight:700!important;text-shadow:none!important;hyphens:none;word-break:keep-all;overflow-wrap:break-word;word-wrap:break-word}body.light-mode .story-content p{color:#374151!important;font-weight:400!important}body.light-mode .stat-number{color:#2563eb!important;font-weight:700!important}body.light-mode .stat-label{color:#6b7280!important}body.light-mode .stat-icon{color:#2563eb!important;background:#2563eb1a!important}body.light-mode .story-image{border:1px solid rgba(255,255,255,.3)!important;box-shadow:0 10px 30px #00000026!important}body.light-mode .hosts-section{background:#fff!important;background-color:#ffffffd9!important;backdrop-filter:blur(10px)!important;border-radius:16px!important;padding:80px 40px!important;margin:30px 0!important;border:1px solid rgba(255,255,255,.3)!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f!important}body.light-mode .hosts-section h2{color:#111827!important;font-weight:700!important;text-shadow:none!important}body.light-mode .host-card{background:#ffffffd9!important;backdrop-filter:blur(10px)!important;border:2px solid rgba(255,255,255,.3)!important;border-radius:20px!important;padding:40px!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f!important;max-width:600px!important}body.light-mode .host-card:hover{background:#fffffff2!important;backdrop-filter:blur(15px)!important;border-color:#2563eb!important;box-shadow:0 10px 25px #2563eb26,0 4px 6px -2px #0000000d!important;transform:translateY(-2px)!important}body.light-mode .host-info h3{color:#111827!important;font-weight:700!important}body.light-mode .host-title{color:#2563eb!important;font-weight:600!important}body.light-mode .host-info p{color:#4b5563!important}body.light-mode .language{background:#f3f4f6!important;color:#374151!important;border:1px solid #e5e7eb!important}body.light-mode .location-section{background:#fff!important;background-color:#ffffffd9!important;backdrop-filter:blur(10px)!important;border-radius:16px!important;padding:80px 40px!important;margin:30px 0!important;border:1px solid rgba(255,255,255,.3)!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f!important}body.light-mode .location-section h2{color:#111827!important;font-weight:700!important;text-shadow:none!important}body.light-mode .location-content h3{color:#111827!important;font-weight:600!important}body.light-mode .location-content p{color:#374151!important}body.light-mode .nearby-attractions h4{color:#111827!important;font-weight:600!important}body.light-mode .attraction-item{background:#f8fafc!important;border:1px solid #e5e7eb!important;border-radius:12px!important;transition:all .3s ease!important}body.light-mode .attraction-item:hover{background:#fff!important;border-color:#2563eb!important;box-shadow:0 4px 12px #2563eb1a!important;transform:translateY(-2px)!important}body.light-mode .attraction-icon{color:#2563eb!important}body.light-mode .attraction-item strong{color:#111827!important}body.light-mode .attraction-item span{color:#6b7280!important}body.light-mode .castle-link{color:#2563eb!important;font-weight:500!important}body.light-mode .castle-link:hover{color:#1d4ed8!important}body.light-mode .interactive-map{background:#ffffffd9!important;backdrop-filter:blur(10px)!important;border:1px solid rgba(255,255,255,.3)!important;border-radius:20px!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f!important;max-width:600px!important}body.light-mode .map-header{background:#f8fafc!important;border-bottom:1px solid #e5e7eb!important}body.light-mode .map-container{background:#fff!important}body.light-mode .map-footer{background:#f8fafc!important;border-top:1px solid #e5e7eb!important}body.light-mode .map-header h4{color:#111827!important;font-weight:600!important}body.light-mode .map-header p{color:#4b5563!important}body.light-mode .map-header .map-icon{color:#2563eb!important}body.light-mode .address-display{background:#fff!important;color:#374151!important;border:1px solid #e5e7eb!important;box-shadow:0 2px 4px #0000000d!important}body.light-mode .address-link{color:#2563eb!important;font-weight:600!important}body.light-mode .address-link:hover{color:#1d4ed8!important;background:#2563eb0d!important;border-radius:8px!important;padding:2px 4px!important;margin:-2px -4px!important}body.light-mode .map-button{background:#2563eb!important;color:#fff!important;border:none!important;box-shadow:0 2px 8px #2563eb4d!important}body.light-mode .map-button:hover{background:#1d4ed8!important;transform:translateY(-2px)!important;box-shadow:0 4px 12px #2563eb66!important}body.light-mode .map-button.primary{background:#2563eb!important;color:#fff!important;border:none!important;box-shadow:0 2px 8px #2563eb4d!important}body.light-mode .map-button.primary:hover{background:#1d4ed8!important;transform:translateY(-2px)!important;box-shadow:0 4px 12px #2563eb66!important}body.light-mode .map-button.secondary{background:#fff!important;color:#2563eb!important;border:2px solid #2563eb!important;box-shadow:0 2px 8px #0000001a!important}body.light-mode .map-button.secondary:hover{background:#2563eb!important;color:#fff!important;border-color:#2563eb!important;box-shadow:0 4px 12px #2563eb66!important}body.light-mode .map-button.address{background:#fffffff2!important;color:#374151!important;border:2px solid #e5e7eb!important;font-weight:600!important}body.light-mode .map-button.address:hover{background:#2563eb0d!important;border-color:#2563eb!important;color:#2563eb!important;box-shadow:0 4px 12px #2563eb26!important;transform:translateY(-2px)!important}body.light-mode .contact-section{background:#fff!important;background-color:#ffffffd9!important;backdrop-filter:blur(10px)!important;border-radius:16px!important;padding:80px 40px!important;margin:30px 0!important;border:1px solid rgba(255,255,255,.3)!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f!important}body.light-mode .contact-info h2{color:#111827!important;font-weight:700!important;text-shadow:none!important}body.light-mode .contact-info>p{color:#374151!important}body.light-mode .contact-item{background:#f8fafc!important;border:1px solid #e5e7eb!important;border-radius:12px!important;transition:all .3s ease!important}body.light-mode .contact-item:hover{background:#fff!important;border-color:#2563eb!important;box-shadow:0 4px 12px #2563eb1a!important;transform:translateY(-2px)!important}body.light-mode .contact-icon{color:#2563eb!important;background:#2563eb1a!important}body.light-mode .contact-item strong{color:#111827!important}body.light-mode .contact-item span{color:#6b7280!important}body.light-mode .contact-item a{color:#2563eb!important}body.light-mode .contact-item a:hover{color:#1d4ed8!important}body.light-mode .contact-form{background:#ffffffd9!important;backdrop-filter:blur(10px)!important;border:1px solid rgba(255,255,255,.3)!important;border-radius:20px!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f!important;max-width:600px!important}body.light-mode .contact-form h3{color:#111827!important;font-weight:600!important}body.light-mode .form-group label{color:#374151!important;font-weight:500!important}body.light-mode .form-group input,body.light-mode .form-group textarea{background:#fff!important;border:2px solid #e5e7eb!important;color:#111827!important}body.light-mode .form-group input:focus,body.light-mode .form-group textarea:focus{border-color:#2563eb!important;box-shadow:0 0 0 3px #2563eb1a!important}body.light-mode .submit-btn{background:#2563eb!important;color:#fff!important;border:none!important}body.light-mode .submit-btn:hover:not(:disabled){background:#1d4ed8!important;transform:translateY(-2px)!important}body.light-mode .submit-btn:disabled{background:#9ca3af!important;color:#fff!important}body.light-mode .regulations-section{background:#fff!important;background-color:#ffffffd9!important;backdrop-filter:blur(10px)!important;border-radius:16px!important;padding:80px 40px!important;margin:30px 0!important;border:1px solid rgba(255,255,255,.3)!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f!important}body.light-mode .regulations-section h2{color:#111827!important;font-weight:700!important;text-shadow:none!important}body.light-mode .regulations-card{background:#ffffffd9!important;backdrop-filter:blur(10px)!important;border:2px solid rgba(255,255,255,.3)!important;border-radius:20px!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f!important;max-width:600px!important}body.light-mode .regulations-card:hover{background:#fffffff2!important;backdrop-filter:blur(15px)!important;border-color:#2563eb!important;box-shadow:0 10px 25px #2563eb26,0 4px 6px -2px #0000000d!important;transform:translateY(-2px)!important}body.light-mode .regulation-icon{color:#2563eb!important;background:#2563eb1a!important}body.light-mode .regulations-card h3{color:#111827!important;font-weight:600!important}body.light-mode .time-item strong{color:#111827!important}body.light-mode .time-item span{color:#6b7280!important}body.light-mode .time-info{background:#f9fafbe6!important;border:1px solid rgba(229,231,235,.6)!important;backdrop-filter:blur(8px)!important}body.light-mode .regulations-card li{color:#374151!important}body.light-mode .regulations-card p{color:#4b5563!important}body.light-mode .timeframe{background:#f3f4f6!important;color:#111827!important;border:1px solid #e5e7eb!important}body.light-mode .refund{color:#059669!important;font-weight:600!important}body.light-mode .policy-tier.no-refund .refund{color:#dc2626!important}body.light-mode .instruction-link{color:#2563eb!important;font-weight:500!important}body.light-mode .instruction-link:hover{color:#1d4ed8!important}body.light-mode .property-info{margin-top:1rem!important}body.light-mode .info-item{background:#f9fafbe6!important;border:1px solid rgba(229,231,235,.6)!important;backdrop-filter:blur(8px)!important;box-shadow:0 2px 4px #0000000d!important;color:#374151!important}body.light-mode .info-item strong{color:#111827!important;font-weight:600!important}body.light-mode .social-section{background:#fff!important;background-color:#ffffffd9!important;backdrop-filter:blur(10px)!important;border-radius:16px!important;padding:80px 40px!important;margin:30px 0!important;border:1px solid rgba(255,255,255,.3)!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f!important}body.light-mode .social-section h2{color:#111827!important;font-weight:700!important;text-shadow:none!important}body.light-mode .social-section>p{color:#374151!important}body.light-mode .social-link{background:#fff!important;border:2px solid #e5e7eb!important;color:#374151!important;transition:all .3s ease!important}body.light-mode .social-link:hover{border-color:#2563eb!important;box-shadow:0 4px 12px #2563eb1a!important;transform:translateY(-2px)!important}body.light-mode .social-link.facebook:hover{background:#3b82f6!important;color:#fff!important;border-color:#3b82f6!important}body.light-mode .social-link.instagram:hover{background:linear-gradient(45deg,#f56040,#e935c1)!important;color:#fff!important;border-color:transparent!important}body.light-mode .social-link.youtube:hover{background:#dc2626!important;color:#fff!important;border-color:#dc2626!important}body.light-mode .social-link.tripadvisor:hover{background:#059669!important;color:#fff!important;border-color:#059669!important}body.light-mode .social-placeholder{background:#f8fafc!important;border:2px dashed #d1d5db!important;color:#6b7280!important}body.light-mode .social-placeholder p{color:#9ca3af!important}@media (max-width: 768px){body.light-mode .hero-content .container{padding:30px 40px!important}body.light-mode .our-story,body.light-mode .hosts-section,body.light-mode .location-section,body.light-mode .contact-section,body.light-mode .regulations-section,body.light-mode .social-section{padding:60px 30px!important}}@media (max-width: 480px){body.light-mode .hero-content .container{padding:25px 30px!important}body.light-mode .our-story,body.light-mode .hosts-section,body.light-mode .location-section,body.light-mode .contact-section,body.light-mode .regulations-section,body.light-mode .social-section{padding:40px 20px!important}}@media (min-width: 1024px){body.light-mode .our-story .container,body.light-mode .hosts-section .container,body.light-mode .location-section .container,body.light-mode .contact-section .container,body.light-mode .regulations-section .container,body.light-mode .social-section .container{max-width:900px!important;padding:0!important;margin:0 auto!important}}@media (prefers-color-scheme: dark){@media (min-width: 1024px){body.light-mode .our-story .container,body.light-mode .hosts-section .container,body.light-mode .location-section .container,body.light-mode .contact-section .container,body.light-mode .regulations-section .container,body.light-mode .social-section .container{max-width:900px!important;padding:0!important;margin:0 auto!important}}}@media (max-width: 768px){body.light-mode .damage-policy ul{background:#f8fafce6!important;border-radius:12px!important;padding:16px!important;border:1px solid #e5e7eb!important}body.light-mode .damage-policy li{color:#1f2937!important;border-bottom:1px solid rgba(229,231,235,.5)!important;font-weight:500!important;padding:12px 0!important}body.light-mode .damage-policy li strong{color:#111827!important;font-weight:700!important}body.light-mode .damage-policy li:last-child{margin-bottom:0!important}}@supports (-webkit-touch-callout: none){h1,h2,h3,h4,h5,h6{hyphens:none!important;-webkit-hyphens:none!important;word-break:keep-all!important;overflow-wrap:break-word!important;word-wrap:break-word!important}.story-content h2,body.light-mode .story-content h2{hyphens:none!important;-webkit-hyphens:none!important;word-break:keep-all!important;overflow-wrap:break-word!important;word-wrap:break-word!important;white-space:normal!important}@media (max-width: 768px){.story-content h2,.hosts-section h2,.location-section h2,.contact-info h2,.regulations-section h2,.social-section h2{hyphens:none!important;-webkit-hyphens:none!important;word-break:keep-all!important;overflow-wrap:break-word!important;word-wrap:break-word!important;white-space:normal!important}}}.about-page{min-height:100vh;background:#0f172a;color:#e2e8f0}.about-hero{position:relative;height:60vh;min-height:400px;display:flex;align-items:center;overflow:hidden}.about-hero-logo{height:80px;width:auto;margin-bottom:2rem;filter:drop-shadow(2px 2px 4px rgba(0,0,0,.3));animation:fadeInUp 1s ease-out}.hero-content h1{font-size:3rem;font-weight:700;margin-bottom:1rem;text-shadow:2px 2px 4px rgba(0,0,0,.3)}.hero-content p{font-size:1.25rem;text-shadow:1px 1px 2px rgba(0,0,0,.3)}.contact-section{padding:80px 0;background:#0f172a}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.contact-info h2{font-size:2.5rem;color:#fff;margin-bottom:2rem;font-weight:700}.contact-info>p{font-size:1.1rem;line-height:1.8;color:#cbd5e1;margin-bottom:2rem}.contact-methods{display:flex;flex-direction:column;gap:20px}.contact-item{display:flex;align-items:center;gap:20px;padding:25px;background:#1e293b;border:1px solid #334155;border-radius:15px;box-shadow:0 5px 15px #0000004d;transition:all .3s ease}.contact-item:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0006}.contact-icon{width:32px;height:32px;color:#60a5fa;flex-shrink:0}.contact-item div{display:flex;flex-direction:column;gap:5px}.contact-item strong{color:#fff;font-weight:700;font-size:1.1rem}.contact-item a{color:#60a5fa;text-decoration:none;transition:color .3s ease}.contact-item a:hover{color:#3b82f6;text-decoration:underline}.contact-item span{color:#e2e8f0;font-weight:500}.contact-form{background:#1e293b;border:1px solid #334155;padding:40px;border-radius:20px;box-shadow:0 15px 35px #0000004d}.contact-form h3{font-size:1.8rem;color:#fff;margin-bottom:2rem;font-weight:600}.message-form{display:flex;flex-direction:column;gap:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-group{display:flex;flex-direction:column}.form-group label{color:#fff;font-weight:600;margin-bottom:8px}.form-group input,.form-group textarea{padding:15px;border:2px solid #475569;border-radius:12px;font-size:1rem;background:#334155;color:#fff;transition:all .3s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#3b82f6;background:#1e293b;box-shadow:0 0 0 3px #3b82f61a}.form-group input::placeholder,.form-group textarea::placeholder{color:#e2e8f0}.submit-btn{display:flex;align-items:center;justify-content:center;gap:10px;padding:15px 30px;background:#3b82f6;color:#fff;border:none;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:10px}.submit-btn:hover:not(:disabled){background:#2563eb;transform:translateY(-2px);box-shadow:0 8px 25px #3b82f64d}.submit-btn:disabled{background:#475569;cursor:not-allowed;transform:none}.submit-btn .btn-icon{width:20px;height:20px}.submit-btn .spinner{width:20px;height:20px;border:2px solid #ffffff;border-top:2px solid transparent;border-radius:50%;animation:spin 1s linear infinite}.form-message{display:flex;align-items:flex-start;gap:15px;padding:20px;border-radius:12px;margin-bottom:20px;border:1px solid}.form-message.success{background:#22c55e1a;border-color:#22c55e;color:#16a34a}.form-message.error{background:#ef44441a;border-color:#ef4444;color:#dc2626}.message-icon{width:24px;height:24px;flex-shrink:0;margin-top:2px}.form-message h4{margin:0 0 5px;font-size:1.1rem;font-weight:600}.form-message p{margin:0;line-height:1.5}.form-message ul{margin:10px 0 0;padding-left:20px}.form-message li{margin-bottom:5px}.form-message a{color:inherit;font-weight:600}.form-message a:hover{text-decoration:underline}@media (max-width: 1199.98px){.contact-grid{gap:40px}}@media (max-width: 991.98px){.contact-grid{grid-template-columns:1fr;gap:50px}.contact-form{max-width:600px;margin:0 auto}}@media (max-width: 767.98px){.about-hero{height:65vh;min-height:65vh}.hero-content{padding:0 15px}.hero-content h1{font-size:2.5rem}.hero-content p{font-size:1.1rem}.about-hero-logo{display:none}.contact-section{padding:60px 0}.contact-info h2{font-size:2rem;margin-bottom:1.5rem}.contact-info>p{font-size:1rem;line-height:1.6}.contact-form{padding:30px 25px;border-radius:15px;max-width:100%;margin:0}.contact-form h3{font-size:1.5rem;margin-bottom:1.5rem}.form-row{grid-template-columns:1fr;gap:0}.contact-item{background:#1e293b;border:1px solid #475569;box-shadow:0 4px 12px #0006}.contact-item strong{color:#fff;font-weight:700;font-size:1rem}.contact-item span{color:#e2e8f0;font-weight:500;font-size:.95rem}.contact-item a{color:#60a5fa;font-weight:500}.contact-icon{color:#60a5fa;width:28px;height:28px}}@media (max-width: 575.98px){.about-hero{height:65vh;min-height:65vh}.hero-content{padding:0 10px}.hero-content .container{max-width:100%}.about-hero-logo{display:none}.hero-content h1{font-size:clamp(1.8rem,3.5vw,2.2rem);margin-bottom:.8rem}.hero-content p{font-size:clamp(.9rem,2vw,1rem)}.contact-section{padding:40px 0}.contact-info h2{font-size:clamp(1.4rem,3vw,1.8rem);margin-bottom:1rem}.contact-info>p{font-size:clamp(.85rem,1.8vw,.95rem);line-height:1.6}.contact-form{padding:25px 20px;border-radius:12px;max-width:100%;margin:0}.contact-form h3{font-size:clamp(1.2rem,2.5vw,1.4rem)}.form-group label{font-size:clamp(.85rem,1.8vw,.9rem)}.form-group input,.form-group textarea{padding:12px;font-size:clamp(.85rem,1.8vw,.9rem)}.submit-btn{padding:12px 24px;font-size:clamp(.9rem,1.8vw,1rem)}}@media (max-width: 479.98px){.about-hero{height:65vh;min-height:65vh}.hero-content h1{font-size:clamp(1.6rem,3.2vw,2rem)}.contact-section{padding:30px 0}.contact-info h2{font-size:clamp(1.3rem,2.8vw,1.6rem)}.contact-form{padding:20px 15px;max-width:100%;margin:0}.contact-item strong{color:#fff;font-weight:700;font-size:.95rem}.contact-item span{color:#e2e8f0;font-weight:500;font-size:.9rem}.contact-icon{width:26px;height:26px}}@supports (-webkit-touch-callout: none){h1,h2,h3,h4,h5,h6{hyphens:none!important;-webkit-hyphens:none!important;word-break:keep-all!important;overflow-wrap:break-word!important;word-wrap:break-word!important}.contact-hero h2,.contact-hero p,.contact-section h2,.contact-info h3,.contact-form h3{hyphens:none!important;-webkit-hyphens:none!important;word-break:keep-all!important;overflow-wrap:break-word!important;word-wrap:break-word!important;white-space:normal!important}@media (max-width: 768px){.contact-hero h2,.contact-hero p,.contact-section h2,.contact-info h3,.contact-form h3{hyphens:none!important;-webkit-hyphens:none!important;word-break:keep-all!important;overflow-wrap:break-word!important;word-wrap:break-word!important;white-space:normal!important}}}.gallery-page{min-height:100vh;background:#0f172a}.gallery-hero{position:relative;height:60vh;min-height:400px;display:flex;align-items:center;overflow:hidden}.hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#0f172ad9,#1e293bbf);z-index:2}.gallery-hero-logo{height:70px;width:auto;margin-bottom:1.5rem;filter:drop-shadow(2px 2px 4px rgba(0,0,0,.3));animation:fadeInUp 1s ease-out}.hero-icon{color:#60a5fa;margin-bottom:20px}.gallery-hero h2{font-size:clamp(2.5rem,5vw,3.5rem);font-weight:500;margin-bottom:20px;letter-spacing:-.02em;line-height:1.3}.gallery-hero p{font-size:clamp(1.1rem,2.5vw,1.3rem);margin-bottom:30px;opacity:.9}.hero-location{display:flex;align-items:center;justify-content:center;gap:8px;font-size:1.1rem;margin-bottom:20px}.location-icon{color:#60a5fa}.gallery-section{padding:60px 0;background:#1e293b}.gallery-header{text-align:center;margin-bottom:50px}.gallery-header h2{font-size:clamp(2rem,4vw,2.5rem);color:#fff;margin-bottom:15px}.gallery-header p{font-size:clamp(1rem,2.2vw,1.2rem);color:#cbd5e1;max-width:600px;margin:0 auto}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:25px;margin-bottom:50px}.gallery-item{position:relative;border-radius:20px;overflow:hidden;height:300px;cursor:pointer;transition:all .3s ease;box-shadow:0 10px 30px #0000004d;border:1px solid #475569;max-width:600px}.gallery-item:hover{transform:translateY(-10px);box-shadow:0 20px 40px #60a5fa33;border-color:#60a5fa}.gallery-item.featured{grid-column:span 2}.image-container{width:100%;height:100%;position:relative}.gallery-item.featured .image-container{height:100%}.image-container img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.gallery-item:hover .image-container img{transform:scale(1.05)}.image-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#0000004d,#000c);color:#fff;padding:40px 30px 30px;transform:translateY(50px);opacity:0;transition:all .3s ease}.gallery-item:hover .image-overlay{transform:translateY(0);opacity:1}.overlay-content h3{font-size:1.3rem;font-weight:600;margin-bottom:8px}.overlay-content p{font-size:.95rem;opacity:.9;margin-bottom:15px}.view-full{background:#60a5fa33;color:#fff;border:1px solid rgba(96,165,250,.3);padding:8px 16px;border-radius:20px;font-size:.85rem;font-weight:500}.view-full:hover{background:#60a5fa4d;border-color:#60a5fa80}.gallery-stats{display:flex;justify-content:center;gap:48px;padding:40px 20px;margin:0 20px;background:#334155;border-radius:16px;box-shadow:0 4px 6px -1px #0000004d;border:1px solid #475569;flex-wrap:wrap}.stat-item{text-align:center}.stat-number{display:block;font-size:2.5rem;font-weight:700;color:#60a5fa;margin-bottom:4px}.stat-label{font-size:.9rem;color:#cbd5e1;text-transform:uppercase;letter-spacing:.5px}.lightbox-overlay{position:fixed;inset:0;background:#000000f2;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease}.lightbox-container{position:relative;max-width:min(600px,90vw);max-height:90vh;display:flex;align-items:center;justify-content:center}.lightbox-content{position:relative;display:flex;flex-direction:column;align-items:center;max-width:100%;max-height:100%}.lightbox-content img{max-width:100%;max-height:70vh;object-fit:contain;border-radius:8px;box-shadow:0 25px 50px -12px #00000080}.lightbox-info{background:#1e293bf2;backdrop-filter:blur(10px);color:#fff;padding:20px 24px;border-radius:12px;margin-top:16px;text-align:center;max-width:400px;border:1px solid #475569}.lightbox-info h3{font-size:1.25rem;font-weight:600;margin-bottom:8px;color:#fff}.lightbox-info p{font-size:.95rem;color:#cbd5e1;margin-bottom:12px;line-height:1.5}.image-counter{font-size:.85rem;color:#e2e8f0;font-weight:500}.lightbox-close{position:absolute;top:-50px;right:-50px;background:#ffffff1a;backdrop-filter:blur(10px);border:none;color:#fff;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;z-index:10}.lightbox-close:hover{background:#fff3;transform:scale(1.1)}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);background:#ffffff1a;backdrop-filter:blur(10px);border:none;color:#fff;width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;z-index:10}.lightbox-nav:hover{background:#fff3;transform:translateY(-50%) scale(1.1)}.lightbox-prev{left:-70px}.lightbox-next{right:-70px}.gallery-cta{background:linear-gradient(135deg,#1e293b,#334155);color:#fff;padding:80px 0;text-align:center}.cta-content h2{font-size:2.5rem;font-weight:700;margin-bottom:16px}.cta-content p{font-size:1.1rem;opacity:.9;margin-bottom:32px;max-width:600px;margin-left:auto;margin-right:auto;line-height:1.6}.cta-buttons{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.cta-button{padding:16px 32px;border-radius:50px;font-weight:600;text-decoration:none;transition:all .3s ease;display:inline-flex;align-items:center;gap:8px;font-size:1rem}.cta-button.primary{background:#60a5fa;color:#0f172a}.cta-button.primary:hover{background:#3b82f6;transform:translateY(-2px);box-shadow:0 10px 20px #60a5fa66}.cta-button.secondary{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.3)}.cta-button.secondary:hover{background:#ffffff1a;border-color:#ffffff80;transform:translateY(-2px)}@media (max-width: 1199.98px){.gallery-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:25px}}@media (max-width: 991.98px){.gallery-hero{height:55vh;min-height:380px}.gallery-hero h1{font-size:clamp(2.2rem,4.5vw,2.8rem)}.gallery-hero p{font-size:clamp(1rem,2.5vw,1.15rem)}.gallery-section{padding:50px 0}.gallery-header h2{font-size:clamp(1.8rem,3.5vw,2.2rem)}.gallery-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.gallery-stats{gap:30px;padding:40px 25px}}@media (max-width: 767.98px){.gallery-hero{height:65vh;min-height:65vh}.hero-content{padding:0 15px}.gallery-hero h1{font-size:clamp(2rem,4vw,2.5rem)}.gallery-hero p{font-size:clamp(.95rem,2.2vw,1.1rem)}.gallery-hero-logo{display:none}.gallery-section{padding:40px 0}.gallery-header h2{font-size:clamp(1.6rem,3.2vw,2rem)}.gallery-header p{font-size:clamp(.9rem,2vw,1rem)}.gallery-grid{grid-template-columns:1fr;gap:20px}.gallery-item.featured{grid-column:span 1}.image-overlay{display:none!important}.gallery-stats{gap:24px;padding:32px 20px;margin:0 15px}.stat-number{font-size:clamp(1.8rem,3.5vw,2.2rem)}.stat-label{font-size:clamp(.8rem,1.8vw,.9rem)}.lightbox-container{max-width:95vw;max-height:95vh}.lightbox-close{top:-40px;right:-10px;width:40px;height:40px}.lightbox-nav{width:44px;height:44px}.lightbox-prev{left:-60px}.lightbox-next{right:-60px}.gallery-cta{padding:50px 0}.cta-content h2{font-size:clamp(1.6rem,3.2vw,2rem)}.cta-content p{font-size:clamp(.95rem,2vw,1rem)}.cta-buttons{flex-direction:column;align-items:center;gap:12px}.cta-button{width:100%;max-width:280px;justify-content:center;padding:14px 28px;font-size:.95rem}}@media (max-width: 575.98px){.gallery-hero{height:65vh;min-height:65vh}.hero-content{padding:0 10px}.hero-content .container{max-width:100%}.gallery-hero-logo{display:none}.gallery-hero h1{font-size:clamp(1.8rem,3.5vw,2.2rem);margin-bottom:.8rem}.gallery-hero p{font-size:clamp(.9rem,2vw,1rem);margin-bottom:1rem}.hero-location{font-size:.9rem;margin-bottom:1.5rem}.hero-stats{gap:1.5rem;margin-top:1.5rem;padding-top:1.5rem}.hero-stats .stat-number{font-size:1.5rem}.hero-stats .stat-label{font-size:.75rem}.gallery-section{padding:30px 0}.gallery-header{margin-bottom:1.5rem}.gallery-header h2{font-size:clamp(1.4rem,3vw,1.8rem);margin-bottom:.5rem}.gallery-header p{font-size:clamp(.85rem,1.8vw,.95rem)}.gallery-grid{gap:15px}.gallery-item{border-radius:12px;height:250px}.image-overlay{display:none!important}.overlay-content{padding:16px}.overlay-content h3{font-size:1.1rem;margin-bottom:.5rem}.overlay-content p{font-size:.85rem}.view-full{font-size:.8rem;padding:6px 12px}.gallery-stats{gap:20px;padding:25px 15px;margin:0 15px;border-radius:12px;flex-direction:column}.stat-item{min-width:0;flex:1}.stat-number{font-size:clamp(1.6rem,3.2vw,2rem)}.stat-label{font-size:clamp(.75rem,1.6vw,.85rem)}.lightbox-container{max-width:98vw;max-height:98vh;margin:1vh auto}.lightbox-content{flex-direction:column}.lightbox-content img{max-height:60vh;object-fit:contain}.lightbox-info{margin:12px;padding:16px 20px;border-radius:8px}.lightbox-info h3{font-size:1.1rem;margin-bottom:.5rem}.lightbox-info p{font-size:.85rem}.image-counter{font-size:.8rem}.lightbox-close{top:-35px;right:-5px;width:35px;height:35px;font-size:16px}.lightbox-nav{display:none}.gallery-cta{padding:40px 0}.cta-content h2{font-size:clamp(1.4rem,3vw,1.8rem);margin-bottom:12px}.cta-content p{font-size:clamp(.85rem,1.8vw,.95rem);margin-bottom:24px}.cta-button{padding:12px 24px;font-size:.9rem;border-radius:25px}}@media (max-width: 479.98px){.gallery-hero{height:65vh;min-height:65vh}.gallery-hero h1{font-size:clamp(1.6rem,3.2vw,2rem)}.hero-location{flex-direction:column;gap:4px;font-size:.85rem}.gallery-section{padding:25px 0}.gallery-item{height:220px;border-radius:10px}.image-overlay{display:none!important}.overlay-content{padding:12px}.overlay-content h3{font-size:1rem}.overlay-content p{font-size:.8rem}.gallery-stats{padding:20px 12px;margin:0 12px;gap:15px;flex-direction:column}.lightbox-container{margin:.5vh auto}.lightbox-content img{max-height:55vh}.lightbox-info{margin:8px;padding:12px 16px}.gallery-cta{padding:30px 0}}body.light-mode .gallery-page{background:#f8fafc;color:#1f2937}body.light-mode .gallery-hero{background:#f8fafc}body.light-mode .hero-content{color:#1f2937;padding:5px}body.light-mode .hero-icon{color:#2563eb}body.light-mode .gallery-hero h2{color:#fff;font-weight:500;text-shadow:0 2px 4px rgba(0,0,0,.5);letter-spacing:-.02em;line-height:1.3}body.light-mode .gallery-hero p{color:#374151;font-weight:500;text-shadow:0 1px 2px rgba(0,0,0,.1);opacity:.9}body.light-mode .location-icon{color:#2563eb}body.light-mode .hero-location{color:#1f2937;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.1)}.hero-stats{display:flex;justify-content:center;gap:2rem;margin-top:2rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,.2)}.hero-stats .stat{text-align:center;display:flex;flex-direction:column;gap:.5rem}.hero-stats .stat-number{font-size:2rem;font-weight:700;color:#60a5fa;line-height:1}.hero-stats .stat-label{font-size:.875rem;font-weight:500;color:#fffc;text-transform:uppercase;letter-spacing:.05em}body.light-mode .hero-stats{border-top:1px solid rgba(0,0,0,.1)}body.light-mode .hero-stats .stat-number{color:#2563eb}body.light-mode .hero-stats .stat-label{color:#6b7280}body.light-mode .gallery-section{background:#fff}body.light-mode .gallery-header h2{color:#111827!important}body.light-mode .gallery-header p{color:#6b7280}body.light-mode .gallery-item{background:#ffffffd9;border:1px solid rgba(255,255,255,.3);box-shadow:0 10px 30px #0000001a}body.light-mode .gallery-item:hover{box-shadow:0 20px 40px #2563eb26;border-color:#2563eb}body.light-mode .image-overlay{background:linear-gradient(transparent,#ffffff4d,#ffffffe6);color:#1f2937}body.light-mode .overlay-content h3{color:#1f2937;font-weight:600}body.light-mode .overlay-content p{color:#4b5563}body.light-mode .view-full{background:#2563eb;color:#fff}body.light-mode .view-full:hover{background:#1d4ed8}body.light-mode .gallery-stats{background:#fff;border:1px solid #e5e7eb;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}body.light-mode .lightbox-overlay{background:#000000e6}body.light-mode .lightbox-container{background:#fffffff2;border:1px solid rgba(255,255,255,.3)}body.light-mode .lightbox-info{background:#fff;color:#1f2937}body.light-mode .lightbox-info h3{color:#1f2937}body.light-mode .lightbox-info p{color:#6b7280}body.light-mode .image-counter{color:#6b7280;background:#f8fafce6}body.light-mode .lightbox-close{background:#f8fafce6;color:#374151;border:1px solid #e5e7eb}body.light-mode .lightbox-close:hover{background:#f1f5f9;color:#1f2937}body.light-mode .lightbox-nav{background:#f8fafce6;color:#374151;border:1px solid #e5e7eb}body.light-mode .lightbox-nav:hover{background:#f1f5f9;color:#1f2937}body.light-mode .gallery-cta{background:#f8fafc;border-top:1px solid #e5e7eb}@media (max-width: 991.98px){body.light-mode .gallery-stats{background:#ffffffe6}}@media (max-width: 767.98px){body.light-mode .lightbox-container{background:#fff}body.light-mode .lightbox-info{background:#f8fafc}}@media (max-width: 575.98px){body.light-mode .gallery-cta{background:#fff}}body.light-mode .gallery-section .container{max-width:1200px;margin:0 auto;padding:0 20px}body.light-mode .hero-content .container{max-width:700px;margin:0 auto;padding:50px 60px;border-radius:25px;box-shadow:0 25px 60px #0000004d,0 0 0 1px #fff3}@media (max-width: 479.98px){body.light-mode .gallery-hero{height:65vh;min-height:65vh}}@supports (-webkit-touch-callout: none){.gallery-hero{height:60vh;min-height:-webkit-fill-available;min-height:400px}.gallery-page{min-height:-webkit-fill-available}.gallery-hero h2,.gallery-hero p,.hero-location,.cta-button{-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility}.hero-content{-webkit-transform:translateZ(0);transform:translateZ(0);will-change:transform}.hero-background img{-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.cta-button,.gallery-item,.view-full{-webkit-appearance:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;cursor:pointer;border:none;outline:none}.gallery-grid{-webkit-transform:translateZ(0);transform:translateZ(0)}.gallery-item{-webkit-transform:translateZ(0);transform:translateZ(0);will-change:transform}}@media only screen and (device-width: 393px) and (device-height: 852px) and (-webkit-device-pixel-ratio: 3){.gallery-hero{height:55vh;min-height:450px}.gallery-hero h2{font-size:clamp(2.2rem,4.5vw,3.2rem);line-height:1.2}.gallery-hero p{font-size:1.2rem;line-height:1.5}.hero-content{padding:0 10px;max-width:90%}.container{padding:0 16px}.gallery-grid{grid-template-columns:1fr;gap:20px}.gallery-item{height:280px}.gallery-item.featured{grid-column:span 1;height:320px}}@media screen and (max-width: 428px){@supports (-webkit-touch-callout: none){.gallery-page{overflow-x:hidden;width:100%;max-width:100vw}.container{width:100%;max-width:100%;padding:0 15px;margin:0 auto;box-sizing:border-box}.gallery-hero{height:65vh;min-height:400px;max-height:600px;width:100%;position:relative;display:flex;align-items:center;justify-content:center}.hero-background{width:100%;height:100%;position:absolute;top:0;left:0}.hero-background img{width:100%;height:100%;object-fit:cover;object-position:center;-webkit-transform:translateZ(0);transform:translateZ(0)}.hero-content{width:100%;max-width:95%;padding:0 10px;text-align:center;position:relative;z-index:3}.gallery-hero h2{font-size:clamp(2rem,8vw,2.8rem);line-height:1.1;margin-bottom:16px;font-weight:600;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.gallery-hero p{font-size:1.1rem;line-height:1.4;margin-bottom:1.5rem;-webkit-font-smoothing:antialiased}.hero-location{font-size:1rem;margin-bottom:2rem;gap:.4rem}.cta-button{padding:14px 28px;font-size:1rem;border-radius:10px;-webkit-appearance:none;-webkit-touch-callout:none;touch-action:manipulation}.gallery-grid{grid-template-columns:1fr;gap:16px;padding:0}.gallery-item{height:250px;border-radius:15px;margin:0}.gallery-item.featured{grid-column:span 1;height:280px}.image-overlay{padding:20px 15px 15px}.overlay-content h3{font-size:1.1rem;margin-bottom:6px}.overlay-content p{font-size:.9rem;line-height:1.3}}}@supports (-webkit-touch-callout: none){body.light-mode .gallery-hero{background:linear-gradient(135deg,#f8fafc,#e2e8f0)}body.light-mode .hero-overlay{background:linear-gradient(135deg,#f8fafcd9,#e2e8f0bf)}body.light-mode .gallery-hero h2,body.light-mode .gallery-hero p,body.light-mode .hero-location{-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility}body.light-mode .gallery-section{background:linear-gradient(135deg,#f1f5f9,#e2e8f0)}}@media screen and (max-device-width: 428px){@supports (-webkit-touch-callout: none){*{-webkit-tap-highlight-color:transparent}a,button,.cta-button,.gallery-item,.view-full{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;touch-action:manipulation}.cta-button:active,.gallery-item:active{transform:translateY(-1px) scale(.98);transition:all .1s ease}.lightbox-overlay,.lightbox-container{-webkit-transform:translateZ(0);transform:translateZ(0)}}}@supports (-webkit-touch-callout: none){h1,h2,h3,h4,h5,h6{hyphens:none!important;-webkit-hyphens:none!important;word-break:keep-all!important;overflow-wrap:break-word!important;word-wrap:break-word!important}.gallery-hero h2,.gallery-hero p,.gallery-section h2{hyphens:none!important;-webkit-hyphens:none!important;word-break:keep-all!important;overflow-wrap:break-word!important;word-wrap:break-word!important;white-space:normal!important}@media (max-width: 768px){.gallery-hero h2,.gallery-hero p,.gallery-section h2{hyphens:none!important;-webkit-hyphens:none!important;word-break:keep-all!important;overflow-wrap:break-word!important;word-wrap:break-word!important;white-space:normal!important}}}.attractions-page{min-height:100vh;background-color:#0f172a;color:#e2e8f0}.attractions-hero{position:relative;height:65vh;min-height:500px;display:flex;align-items:center;overflow:hidden}.hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#0f172acc,#1e293b99)}.hero-content{position:relative;z-index:2;color:#fff;text-align:center;max-width:600px;padding:0 20px;margin:0 auto}.hero-content h2{font-size:3.5rem;font-weight:700;margin-bottom:1.5rem;text-shadow:3px 3px 6px rgba(0,0,0,.8);color:#fff;letter-spacing:-.02em;line-height:1.3}.hero-content p{font-size:1.25rem;margin-bottom:3rem;max-width:600px;margin-left:auto;margin-right:auto;opacity:1;color:#fff;font-weight:500;text-shadow:2px 2px 4px rgba(0,0,0,.6)}.hero-stats{display:flex;justify-content:center;gap:3rem;margin-top:2rem}.stat{text-align:center}.stat-number{display:block;font-size:2.5rem;font-weight:700;color:#60a5fa;margin-bottom:.5rem}.stat-label{font-size:.875rem;text-transform:uppercase;letter-spacing:1px;opacity:.8;color:#cbd5e1}.category-filter{background:#1e293b;padding:2rem 0;border-bottom:1px solid rgba(71,85,105,.3);position:sticky;top:80px;z-index:100;box-shadow:0 2px 4px #0000004d}.filter-tabs{display:flex;gap:1rem;overflow-x:auto;padding-bottom:.5rem}.filter-tab{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:2px solid rgba(71,85,105,.3)!important;border-radius:50px;background:#334155!important;color:#cbd5e1!important;font-weight:500;cursor:pointer;transition:all .3s ease;white-space:nowrap;min-width:fit-content}.filter-tab:hover{border-color:#60a5fa!important;color:#60a5fa!important;transform:translateY(-2px);background:#475569!important}.filter-tab.active{background:#60a5fa!important;border-color:#60a5fa!important;color:#fff!important;transform:translateY(-2px);box-shadow:0 4px 12px #60a5fa66}.attractions-page .filter-tabs .filter-tab{background:#334155!important;color:#cbd5e1!important;border:2px solid rgba(71,85,105,.3)!important}.attractions-page .filter-tabs .filter-tab:hover{background:#475569!important;color:#60a5fa!important;border-color:#60a5fa!important}.attractions-page .filter-tabs .filter-tab.active{background:#60a5fa!important;color:#fff!important;border-color:#60a5fa!important}.featured-attractions{padding:4rem 0;background:#1e293b}.featured-attractions h2{font-size:2.5rem;font-weight:700;text-align:center;margin-bottom:1rem;color:#fff}.featured-attractions p{text-align:center;font-size:1.125rem;color:#cbd5e1;margin-bottom:3rem;max-width:600px;margin-left:auto;margin-right:auto}.featured-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem;margin-top:3rem}.featured-card{background:#334155;border-radius:1rem;overflow:hidden;box-shadow:0 4px 6px #0000004d;transition:all .3s ease;border:1px solid rgba(71,85,105,.3);max-width:600px}.featured-card:hover{transform:translateY(-8px);box-shadow:0 20px 25px #0006;border-color:#60a5fa}.attractions-grid{padding:4rem 0;background:#0f172a}.attractions-grid h2{font-size:2.5rem;font-weight:700;text-align:center;margin-bottom:3rem;color:#fff}.attractions-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem}.attraction-card{background:#334155;border-radius:1rem;overflow:hidden;box-shadow:0 4px 6px #0000004d;transition:all .3s ease;border:1px solid rgba(71,85,105,.3);max-width:600px}.attraction-card:hover{transform:translateY(-4px);box-shadow:0 12px 20px #0006;border-color:#60a5fa}.card-image{position:relative;height:200px;overflow:hidden}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.attraction-card:hover .card-image img,.featured-card:hover .card-image img{transform:scale(1.05)}.card-badge{position:absolute;top:1rem;left:1rem;display:flex;align-items:center;gap:.25rem;padding:.5rem .75rem;border-radius:50px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.featured-badge{background:linear-gradient(135deg,#60a5fa,#3b82f6);color:#fff}.card-category{position:absolute;top:1rem;right:1rem;padding:.25rem .75rem;border-radius:50px;font-size:.75rem;font-weight:600;color:#fff;text-transform:uppercase;letter-spacing:.5px}.card-content{padding:1.5rem}.card-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.attraction-icon{color:#60a5fa;flex-shrink:0}.card-content h3{font-size:1.25rem;font-weight:600;color:#fff;margin-bottom:.75rem;line-height:1.4}.card-content p{color:#cbd5e1;line-height:1.6;margin-bottom:1.5rem}.card-details{display:flex;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.detail{display:flex;align-items:center;gap:.25rem;font-size:.875rem;color:#e2e8f0}.detail.rating{color:#60a5fa;font-weight:600}.card-highlights{display:flex;flex-wrap:wrap;gap:.5rem}.highlight{padding:.25rem .75rem;background:#475569;border-radius:50px;font-size:.75rem;color:#e2e8f0;font-weight:500;border:1px solid rgba(71,85,105,.3)}.planning-section{padding:4rem 0;background:#1e293b}.planning-section h2{font-size:2.5rem;font-weight:700;text-align:center;margin-bottom:3rem;color:#fff}.planning-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.planning-card{background:#334155;padding:2rem;border-radius:1rem;text-align:center;box-shadow:0 4px 6px #0000004d;transition:all .3s ease;max-width:600px;border:1px solid rgba(71,85,105,.3)}.planning-card:hover{transform:translateY(-4px);box-shadow:0 12px 20px #0006;border-color:#60a5fa}.planning-icon{display:inline-flex;align-items:center;justify-content:center;width:4rem;height:4rem;background:linear-gradient(135deg,#60a5fa,#3b82f6);border-radius:50%;color:#fff;margin-bottom:1.5rem}.planning-card h3{font-size:1.5rem;font-weight:600;margin-bottom:1rem;color:#fff}.planning-card p{color:#cbd5e1;margin-bottom:1.5rem;line-height:1.6}.planning-card ul{text-align:left;list-style:none;padding:0}.planning-card li{color:#e2e8f0;position:relative;padding:.5rem 0 .5rem 1.5rem}.planning-card li:before{content:"✓";position:absolute;left:0;color:#60a5fa;font-weight:700}.attractions-cta{padding:4rem 0;background:linear-gradient(135deg,#0f172a,#1e293b);color:#fff;text-align:center}.cta-content h2{font-size:2.5rem;font-weight:700;margin-bottom:1rem;color:#fff}.cta-content p{font-size:1.125rem;margin-bottom:2rem;opacity:.9;max-width:600px;margin-left:auto;margin-right:auto;color:#e2e8f0}.cta-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.cta-button{display:inline-flex;align-items:center;padding:1rem 2rem;border-radius:.5rem;font-weight:600;text-decoration:none;transition:all .3s ease;font-size:1rem}.cta-button.primary{background:#60a5fa;color:#fff}.cta-button.primary:hover{background:#3b82f6;transform:translateY(-2px);box-shadow:0 8px 16px #60a5fa66}.cta-button.secondary{background:transparent;color:#fff;border:2px solid white}.cta-button.secondary:hover{background:#fff;color:#0f172a;transform:translateY(-2px)}@media (max-width: 768px){.hero-content h2{font-size:2.5rem;color:#fff}.hero-content p{font-size:1rem;color:#e2e8f0}.hero-stats{gap:2rem}.stat-number{font-size:2rem;color:#60a5fa}.filter-tabs{padding:0 1rem}.filter-tab{padding:.5rem 1rem;font-size:.875rem;background:#334155!important;border-color:#4755694d!important;color:#cbd5e1!important}.filter-tab.active{background:#60a5fa!important;color:#fff!important}.featured-grid,.attractions-list,.planning-grid{grid-template-columns:1fr}.card-details{flex-direction:column;gap:.5rem}.cta-buttons{flex-direction:column;align-items:center}.cta-button{width:100%;max-width:300px;justify-content:center}}@media (max-width: 480px){.hero-content h1{font-size:2rem;color:#fff}.hero-stats{flex-direction:column;gap:1.5rem}.featured-grid,.attractions-list{grid-template-columns:1fr;gap:1.5rem}.card-content{padding:1rem}.planning-card{padding:1.5rem}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.attraction-card,.featured-card,.planning-card{animation:fadeInUp .6s ease-out}.filter-tab:focus,.cta-button:focus{outline:2px solid #10B981;outline-offset:2px}@media print{.category-filter,.attractions-cta{display:none}.attraction-card,.featured-card{break-inside:avoid;box-shadow:none;border:1px solid #E5E7EB}}body.light-mode .attractions-page{background-color:#f8fafc;color:#1f2937}body.light-mode .hero-overlay{background:#0003}body.light-mode .hero-content{color:#1f2937}body.light-mode .hero-content h1{color:#1f2937;font-weight:800;text-shadow:0 2px 4px rgba(0,0,0,.1)}body.light-mode .hero-content p{color:#fff!important;font-weight:500;text-shadow:0 1px 2px rgba(0,0,0,.1);opacity:.9}body.light-mode .stat-number{color:#2563eb}body.light-mode .stat-label{color:#6b7280}body.light-mode .hero-content{max-width:700px;padding:5px}body.light-mode .category-filter{background:#fff;border-bottom:1px solid rgba(229,231,235,.8);box-shadow:0 2px 4px #0000001a}body.light-mode .filter-tab{background:#f8fafc!important;color:#6b7280!important;border:2px solid #e5e7eb!important}body.light-mode .filter-tab:hover{background:#f1f5f9!important;color:#2563eb!important;border-color:#2563eb!important}body.light-mode .filter-tab.active{background:#2563eb!important;color:#fff!important;border-color:#2563eb!important;box-shadow:0 4px 12px #2563eb66}body.light-mode .featured-attractions{background:#fff}body.light-mode .featured-attractions h2{color:#1f2937}body.light-mode .featured-attractions p{color:#6b7280}body.light-mode .featured-card{background:#ffffffd9;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);box-shadow:0 4px 6px #0000001a}body.light-mode .featured-card:hover{box-shadow:0 20px 40px #2563eb26;border-color:#2563eb}body.light-mode .attractions-grid h2{color:#1f2937}body.light-mode .attraction-card{background:#ffffffd9;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);box-shadow:0 4px 6px #0000001a}body.light-mode .attraction-card:hover{box-shadow:0 20px 40px #2563eb26;border-color:#2563eb}body.light-mode .card-badge{background:#2563eb;color:#fff}body.light-mode .featured-badge{background:#10b981;color:#fff}body.light-mode .card-content h3{color:#1f2937}body.light-mode .card-content p,body.light-mode .detail{color:#6b7280}body.light-mode .attraction-icon{color:#2563eb}body.light-mode .highlight{background:#2563eb1a;color:#2563eb}body.light-mode .planning-section{background:#f8fafc}body.light-mode .planning-section h2{color:#1f2937}body.light-mode .planning-card{background:#ffffffd9;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);box-shadow:0 4px 6px #0000000d}body.light-mode .planning-card:hover{box-shadow:0 10px 25px #2563eb26;border-color:#2563eb}body.light-mode .planning-icon{color:#2563eb}body.light-mode .planning-card h3{color:#1f2937}body.light-mode .planning-card p,body.light-mode .planning-card li{color:#6b7280}body.light-mode .planning-card li:before{color:#2563eb}body.light-mode .attractions-cta{background:#fff;border-top:1px solid #e5e7eb}body.light-mode .cta-content h2{color:#1f2937}body.light-mode .cta-content p{color:#6b7280}body.light-mode .cta-button{border:1px solid #e5e7eb;color:#374151}body.light-mode .cta-button.primary{background:#2563eb;color:#fff;border-color:#2563eb}body.light-mode .cta-button.primary:hover{background:#1d4ed8;border-color:#1d4ed8}body.light-mode .cta-button.secondary{background:#fff;color:#2563eb;border-color:#2563eb}body.light-mode .cta-button.secondary:hover{background:#dbeafe}@media (min-width: 1024px){body.light-mode .featured-attractions .container,body.light-mode .attractions-grid .container{background:#ffffffd9;backdrop-filter:blur(10px);border:1px solid #e5e7eb;border-radius:20px;box-shadow:0 8px 32px #00000014;padding:40px 32px;margin:20px auto}}@media (prefers-color-scheme: dark){@media (min-width: 1024px){body.light-mode .featured-attractions .container,body.light-mode .attractions-grid .container{background:#ffffffd9!important;backdrop-filter:blur(10px)!important;border:1px solid #e5e7eb!important;border-radius:20px!important;box-shadow:0 8px 32px #00000014!important;padding:40px 32px!important;margin:20px auto!important}}}@media (max-width: 768px){body.light-mode .hero-content{padding:30px 40px}body.light-mode .category-filter{background:#fff;box-shadow:0 2px 4px #0000000d}body.light-mode .featured-attractions{background:#fff}}@media (max-width: 480px){body.light-mode .hero-content{padding:0 15px}body.light-mode .attractions-page{background:#f8fafc}}@supports (-webkit-touch-callout: none){.attractions-hero{height:65vh;min-height:-webkit-fill-available;min-height:500px}.attractions-page{min-height:-webkit-fill-available}.hero-content h2,.hero-content p,.cta-button{-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility}.hero-content{-webkit-transform:translateZ(0);transform:translateZ(0);will-change:transform}.hero-background img{-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.cta-button,.filter-tab,.attraction-card{-webkit-appearance:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;cursor:pointer;border:none;outline:none}.category-filter{-webkit-transform:translateZ(0);transform:translateZ(0);position:-webkit-sticky;position:sticky}.filter-tabs{-webkit-overflow-scrolling:touch}.attractions-list,.featured-grid{-webkit-transform:translateZ(0);transform:translateZ(0)}.attraction-card,.featured-card{-webkit-transform:translateZ(0);transform:translateZ(0);will-change:transform}}@media only screen and (device-width: 393px) and (device-height: 852px) and (-webkit-device-pixel-ratio: 3){.attractions-hero{height:65vh;min-height:65vh}.hero-content h2{font-size:clamp(2.5rem,5vw,3.2rem);line-height:1.2}.hero-content p{font-size:1.15rem;line-height:1.5}.hero-content{padding:0 15px;max-width:90%}.container{padding:0 16px}.featured-grid,.attractions-list{grid-template-columns:1fr;gap:20px}.attraction-card{max-width:100%}.hero-stats{gap:2rem}.stat-number{font-size:2rem}}@media screen and (max-width: 428px){@supports (-webkit-touch-callout: none){.attractions-page{overflow-x:hidden;width:100%;max-width:100vw}.container{width:100%;max-width:100%;padding:0 15px;margin:0 auto;box-sizing:border-box}.attractions-hero{height:60vh;min-height:450px;max-height:650px;width:100%;position:relative;display:flex;align-items:center;justify-content:center}.hero-background{width:100%;height:100%;position:absolute;top:0;left:0}.hero-background img{width:100%;height:100%;object-fit:cover;object-position:center;-webkit-transform:translateZ(0);transform:translateZ(0)}.hero-content{width:100%;max-width:95%;padding:0 10px;text-align:center;position:relative;z-index:3}.hero-content h2{font-size:clamp(2.2rem,8vw,3rem);line-height:1.1;margin-bottom:16px;font-weight:700;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.hero-content p{font-size:1.1rem;line-height:1.4;margin-bottom:2rem;-webkit-font-smoothing:antialiased}.hero-stats{gap:1.5rem;margin-bottom:2rem}.stat-number{font-size:1.8rem}.stat-label{font-size:.75rem}.cta-button{padding:14px 28px;font-size:1rem;border-radius:10px;-webkit-appearance:none;-webkit-touch-callout:none;touch-action:manipulation}.category-filter{padding:1.5rem 0;top:0;position:relative}.filter-tabs{gap:.8rem;padding:0 15px;padding-bottom:.5rem}.filter-tab{padding:10px 16px;font-size:.9rem;border-radius:25px}.featured-grid,.attractions-list{grid-template-columns:1fr;gap:16px;padding:0}.attraction-card,.featured-card{margin:0;border-radius:15px}.card-content{padding:16px}.card-content h3{font-size:1.1rem;margin-bottom:8px}.card-content p{font-size:.9rem;line-height:1.4}.planning-grid{grid-template-columns:1fr;gap:16px}.planning-card{padding:20px;border-radius:15px}}}@supports (-webkit-touch-callout: none){body.light-mode .attractions-hero{background:linear-gradient(135deg,#f8fafc,#e2e8f0)}body.light-mode .hero-overlay{background:linear-gradient(135deg,#f8fafccc,#e2e8f099)}body.light-mode .hero-content h2,body.light-mode .hero-content p{-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility}body.light-mode .featured-attractions{background:linear-gradient(135deg,#f1f5f9,#e2e8f0)}body.light-mode .category-filter{background:#f8fafcf2;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}}@media screen and (max-device-width: 428px){@supports (-webkit-touch-callout: none){*{-webkit-tap-highlight-color:transparent}a,button,.cta-button,.filter-tab,.attraction-card{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;touch-action:manipulation}.cta-button:active,.filter-tab:active,.attraction-card:active{transform:translateY(-1px) scale(.98);transition:all .1s ease}.filter-tabs{scroll-behavior:smooth;-webkit-overflow-scrolling:touch}}}@supports (-webkit-touch-callout: none){h1,h2,h3,h4,h5,h6{hyphens:none!important;-webkit-hyphens:none!important;word-break:keep-all!important;overflow-wrap:break-word!important;word-wrap:break-word!important}.attractions-hero h2,.attractions-hero p,.hero-content h2,.attraction-card h3,.attraction-card h4{hyphens:none!important;-webkit-hyphens:none!important;word-break:keep-all!important;overflow-wrap:break-word!important;word-wrap:break-word!important;white-space:normal!important}@media (max-width: 768px){.attractions-hero h2,.attractions-hero p,.hero-content h2,.attraction-card h3,.attraction-card h4{hyphens:none!important;-webkit-hyphens:none!important;word-break:keep-all!important;overflow-wrap:break-word!important;word-wrap:break-word!important;white-space:normal!important}}}.reservation-management{min-height:100vh;background:#0f172a}.auth-selector{display:flex;justify-content:center;margin-bottom:2rem;background:#1e293b;border:1px solid #475569;border-radius:12px;padding:.5rem;box-shadow:0 4px 20px #0006;max-width:500px;margin-left:auto;margin-right:auto;gap:.5rem}.auth-tab{flex:1;padding:1rem 1.5rem;border:none;background:transparent;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;color:#cbd5e1}.auth-tab.active{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;box-shadow:0 2px 10px #3b82f666}.auth-tab:hover:not(.active){background:#334155;color:#e2e8f0}.alert{display:flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;border-radius:12px;margin-bottom:1.5rem;font-weight:500;box-shadow:0 2px 10px #0000004d}.alert-error{background:#ef44441a;color:#f87171;border:1px solid #ef4444}.alert-success{background:#22c55e1a;color:#4ade80;border:1px solid #22c55e}.auth-section{background:#1e293b;border:1px solid #475569;border-radius:16px;padding:2rem;box-shadow:0 8px 32px #0006;margin-bottom:2rem;max-width:500px;margin-left:auto;margin-right:auto}.auth-section h3{text-align:center;color:#fff;margin-bottom:1.5rem;font-size:1.5rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:#fff}.form-input,.form-textarea{width:100%;padding:.875rem 1rem;border:2px solid #475569;border-radius:8px;font-size:1rem;transition:all .3s ease;background:#334155;color:#fff}.form-input:focus,.form-textarea:focus{outline:none;border-color:#3b82f6;background:#1e293b;box-shadow:0 0 0 3px #3b82f640}.form-input::placeholder,.form-textarea::placeholder{color:#e2e8f0}.form-textarea{resize:vertical;min-height:100px}.btn-primary,.btn-secondary,.btn-danger,.btn-cancel,.btn-edit,.btn-view{padding:.875rem 1.5rem;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:.5rem;text-decoration:none;font-size:1rem}.btn-primary{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;box-shadow:0 4px 15px #3b82f666}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #3b82f680}.btn-secondary{background:#475569;color:#e2e8f0;border:1px solid #64748b}.btn-secondary:hover:not(:disabled){background:#334155;color:#fff}.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.btn-danger:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #ef444466}.btn-cancel{background:#ef44441a;color:#f87171;border:1px solid #ef4444}.btn-cancel:hover:not(:disabled){background:#ef444433;color:#fff}.btn-edit{background:#3b82f61a;color:#60a5fa;border:1px solid #3b82f6}.btn-edit:hover:not(:disabled){background:#3b82f633;color:#fff}.btn-view{background:#22c55e1a;color:#4ade80;border:1px solid #22c55e;font-size:.875rem;padding:.5rem 1rem}.btn-view:hover:not(:disabled){background:#22c55e33;color:#fff}button:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.google-signin-container{display:flex;align-items:center;justify-content:center}.google-signin-container>div{border-radius:8px;box-shadow:0 2px 10px #0000004d}.google-signin-container iframe{border-radius:8px!important}.user-info{display:flex;align-items:center;gap:1rem;background:#1e293b;border:1px solid #475569;padding:1.5rem;border-radius:12px;box-shadow:0 4px 20px #0006;margin-bottom:2rem}.user-avatar{width:60px;height:60px;border-radius:50%;border:3px solid #60a5fa}.user-info h3{margin:0;color:#fff}.user-info p{margin:0;color:#cbd5e1}.reservations-list{background:#1e293b;border:1px solid #475569;border-radius:16px;padding:2rem;box-shadow:0 8px 32px #0006}.reservations-list h3{margin-bottom:1.5rem;color:#fff}.reservation-card{border:2px solid #334155;border-radius:12px;padding:1.5rem;margin-bottom:1rem;transition:all .3s ease;background:#334155}.reservation-card:hover{border-color:#60a5fa;box-shadow:0 4px 15px #60a5fa33;background:#1e293b}.card-header{display:flex;justify-content:between;align-items:center;margin-bottom:1rem}.confirmation{font-weight:700;color:#fff;font-size:1.1rem}.status{padding:.25rem .75rem;border-radius:20px;font-size:.875rem;font-weight:600;text-transform:capitalize}.status.confirmed{background:#22c55e33;color:#4ade80;border:1px solid #22c55e}.status.cancelled{background:#ef444433;color:#f87171;border:1px solid #ef4444}.status.pending{background:#f59e0b33;color:#fbbf24;border:1px solid #f59e0b}.card-content p{margin:.5rem 0;color:#e2e8f0}.reservation-details{background:#1e293b;border:1px solid #475569;border-radius:16px;padding:2rem;box-shadow:0 8px 32px #0006;margin-bottom:2rem}.reservation-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #475569}.reservation-header h2{margin:0;color:#fff}.status-badge{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:25px;font-weight:600;text-transform:capitalize}.status-badge.confirmed{background:#22c55e33;color:#4ade80;border:1px solid #22c55e}.status-badge.cancelled{background:#ef444433;color:#f87171;border:1px solid #ef4444}.status-badge.pending{background:#f59e0b33;color:#fbbf24;border:1px solid #f59e0b}.info-section{margin-bottom:2rem;padding:1.5rem;background:#334155;border-radius:12px;border-left:4px solid #60a5fa;border:1px solid #475569}.info-section h4{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;color:#fff;font-size:1.2rem}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.info-item{color:#cbd5e1;line-height:1.6}.info-item strong{color:#e2e8f0}.cancellation-section{background:#ef44441a;border:2px solid #ef4444;border-radius:12px;padding:1.5rem;margin-top:2rem}.policy-info{margin-bottom:1.5rem}.policy-info p{margin:.5rem 0;color:#e2e8f0}.refund-info{padding:1rem;border-radius:8px;margin-top:1rem;font-weight:600}.refund-info.positive{background:#22c55e1a;color:#4ade80;border:1px solid #22c55e}.refund-info.negative{background:#ef44441a;color:#f87171;border:1px solid #ef4444}.refund-amount{font-size:1.2rem;font-weight:700;margin-left:.5rem}.action-buttons{display:flex;gap:1rem;flex-wrap:wrap;align-items:center;justify-content:flex-start;margin-top:1.5rem}.modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.reservation-management .modal-content{background:#1e293b;border:1px solid #475569;border-radius:16px;padding:2rem;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #00000080}.reservation-management .modal-content h3{margin-bottom:1rem;color:#fff}.cancellation-details{background:#334155;border:1px solid #475569;padding:1rem;border-radius:8px;margin:1rem 0;color:#e2e8f0}.refund-summary{padding:1rem;border-radius:8px;margin-top:1rem}.refund-summary.positive{background:#22c55e1a;border:1px solid #22c55e;color:#4ade80}.refund-summary.negative{background:#ef44441a;border:1px solid #ef4444;color:#f87171}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;align-items:center;margin-top:2rem;flex-wrap:wrap}@media (max-width: 768px){.reservation-hero{height:50vh;min-height:350px}.hero-content{padding:0 15px}.hero-content h1{font-size:2rem}.hero-content p{font-size:1rem}.auth-selector{flex-direction:column;gap:.5rem;background:#1e293b;border:1px solid #475569}.auth-tab{text-align:center;color:#cbd5e1}.auth-tab.active{color:#fff}.reservation-header{flex-direction:column;align-items:flex-start;gap:1rem}.info-grid{grid-template-columns:1fr}.action-buttons{flex-direction:column;gap:1rem;align-items:stretch}.modal-actions{flex-direction:column;gap:1rem;align-items:stretch;justify-content:center}.card-header{flex-direction:column;align-items:flex-start;gap:.5rem}}@media (max-width: 480px){.container{padding:0 .5rem}.reservation-hero{height:45vh;min-height:300px}.hero-content{padding:0 10px}.hero-content .container{max-width:100%}.hero-content h1{font-size:1.75rem;margin-bottom:.8rem}.hero-content p{font-size:.95rem;margin-bottom:1.5rem}.auth-section,.reservation-details,.reservations-list{padding:1rem;background:#1e293b;border:1px solid #475569}.reservation-management .modal-content{padding:1rem;margin:.5rem;background:#1e293b;border:1px solid #475569}}.reservation-hero{position:relative;height:60vh;min-height:400px;display:flex;align-items:center;overflow:hidden}.hero-background{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.hero-background img{width:100%;height:100%;object-fit:cover}.hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#0f172acc,#1e293b99);z-index:2}.hero-content{position:relative;z-index:3;color:#fff;text-align:center;width:100%;padding:0 20px}.hero-content .container{max-width:600px;margin:0 auto}.hero-content h2{font-size:3rem;font-weight:500;margin-bottom:1rem;color:#fff;text-shadow:2px 2px 4px rgba(0,0,0,.5);letter-spacing:-.02em;line-height:1.3}.hero-content p{font-size:1.25rem;margin-bottom:2rem;max-width:600px;margin-left:auto;margin-right:auto;opacity:.95;color:#e2e8f0;text-shadow:1px 1px 2px rgba(0,0,0,.5)}.reservation-management>.container{padding:2rem 1rem}body.light-mode .reservation-management{background:#f8fafc!important;color:#1f2937!important}body.light-mode .hero-overlay{background:#0003!important}body.light-mode .hero-content h2{color:#fff!important;font-weight:500!important;text-shadow:0 2px 4px rgba(0,0,0,.5)!important;letter-spacing:-.02em!important;line-height:1.3!important}body.light-mode .hero-content p{color:#fff!important;text-shadow:0 1px 2px rgba(0,0,0,.5)!important}body.light-mode .auth-selector{background:#ffffffd9!important;backdrop-filter:blur(10px)!important;border:2px solid rgba(255,255,255,.3)!important;box-shadow:0 4px 12px #0000001a!important}body.light-mode .auth-tab{color:#374151!important;font-weight:600!important}body.light-mode .auth-tab.active{background:linear-gradient(135deg,#2563eb,#1d4ed8)!important;color:#fff!important;box-shadow:0 2px 10px #2563eb66!important}body.light-mode .auth-tab:hover:not(.active){background:#f1f5f9!important;color:#2563eb!important}body.light-mode .alert-error{background:#ef44441a!important;color:#dc2626!important;border:1px solid #ef4444!important}body.light-mode .alert-success{background:#22c55e1a!important;color:#16a34a!important;border:1px solid #22c55e!important}body.light-mode .auth-section{background:#ffffffd9!important;backdrop-filter:blur(10px)!important;border:2px solid rgba(255,255,255,.3)!important;box-shadow:0 8px 20px #0000001a!important;max-width:600px!important}body.light-mode .auth-section h3{color:#111827!important}body.light-mode .form-group label{color:#374151!important}body.light-mode .form-input,body.light-mode .form-textarea{background:#fff!important;border:2px solid #e5e7eb!important;color:#111827!important}body.light-mode .form-input:focus,body.light-mode .form-textarea:focus{border-color:#2563eb!important;background:#fff!important;box-shadow:0 0 0 3px #2563eb1a!important}body.light-mode .form-input::placeholder,body.light-mode .form-textarea::placeholder{color:#9ca3af!important}body.light-mode .btn-primary{background:linear-gradient(135deg,#2563eb,#1d4ed8)!important;color:#fff!important;box-shadow:0 4px 12px #2563eb4d!important}body.light-mode .btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#1d4ed8,#1e40af)!important;box-shadow:0 6px 16px #2563eb66!important}body.light-mode .btn-secondary{background:#f8fafc!important;color:#374151!important;border:2px solid #e5e7eb!important}body.light-mode .btn-secondary:hover:not(:disabled){background:#fff!important;color:#111827!important;border-color:#2563eb!important}body.light-mode .btn-danger{background:linear-gradient(135deg,#dc2626,#b91c1c)!important;color:#fff!important}body.light-mode .btn-danger:hover:not(:disabled){background:linear-gradient(135deg,#b91c1c,#991b1b)!important;box-shadow:0 6px 16px #dc262666!important}body.light-mode .btn-cancel{background:#ef44441a!important;color:#dc2626!important;border:1px solid #ef4444!important}body.light-mode .btn-cancel:hover:not(:disabled){background:#ef444433!important;color:#b91c1c!important}body.light-mode .btn-edit{background:#2563eb1a!important;color:#2563eb!important;border:1px solid #3b82f6!important}body.light-mode .btn-edit:hover:not(:disabled){background:#2563eb33!important;color:#1d4ed8!important}body.light-mode .btn-view{background:#22c55e1a!important;color:#16a34a!important;border:1px solid #22c55e!important}body.light-mode .btn-view:hover:not(:disabled){background:#22c55e33!important;color:#15803d!important}body.light-mode .user-info{background:#ffffffd9!important;backdrop-filter:blur(10px)!important;border:2px solid rgba(255,255,255,.3)!important;box-shadow:0 4px 12px #0000001a!important;max-width:600px!important}body.light-mode .user-info h3{color:#111827!important}body.light-mode .user-info p{color:#6b7280!important}body.light-mode .user-avatar{border:3px solid #2563eb!important}body.light-mode .reservations-list{background:#ffffffd9!important;backdrop-filter:blur(10px)!important;border:2px solid rgba(255,255,255,.3)!important;box-shadow:0 8px 20px #0000001a!important;max-width:600px!important}body.light-mode .reservations-list h3{color:#111827!important}body.light-mode .reservation-card{border:2px solid #e5e7eb!important;background:#f8fafc!important}body.light-mode .reservation-card:hover{border-color:#2563eb!important;box-shadow:0 4px 12px #2563eb1a!important;background:#fff!important}body.light-mode .confirmation{color:#111827!important}body.light-mode .status.confirmed{background:#22c55e1a!important;color:#16a34a!important;border:1px solid #22c55e!important}body.light-mode .status.cancelled{background:#ef44441a!important;color:#dc2626!important;border:1px solid #ef4444!important}body.light-mode .status.pending{background:#f59e0b1a!important;color:#d97706!important;border:1px solid #f59e0b!important}body.light-mode .card-content p{color:#4b5563!important}body.light-mode .reservation-details{background:#ffffffd9!important;backdrop-filter:blur(10px)!important;border:2px solid rgba(255,255,255,.3)!important;box-shadow:0 8px 20px #0000001a!important;max-width:600px!important}body.light-mode .reservation-header{border-bottom:2px solid #e5e7eb!important}body.light-mode .reservation-header h2{color:#111827!important}body.light-mode .status-badge.confirmed{background:#22c55e1a!important;color:#16a34a!important;border:1px solid #22c55e!important}body.light-mode .status-badge.cancelled{background:#ef44441a!important;color:#dc2626!important;border:1px solid #ef4444!important}body.light-mode .status-badge.pending{background:#f59e0b1a!important;color:#d97706!important;border:1px solid #f59e0b!important}body.light-mode .info-section{background:#f8fafc!important;border:1px solid #e5e7eb!important;border-left:4px solid #2563eb!important}body.light-mode .info-section h4{color:#111827!important}body.light-mode .info-item{color:#4b5563!important}body.light-mode .info-item strong{color:#374151!important}body.light-mode .cancellation-section{background:#ef44440d!important;border:2px solid #fecaca!important}body.light-mode .policy-info p{color:#374151!important}body.light-mode .refund-info.positive{background:#22c55e1a!important;color:#16a34a!important;border:1px solid #22c55e!important}body.light-mode .refund-info.negative{background:#ef44441a!important;color:#dc2626!important;border:1px solid #ef4444!important}body.light-mode .modal-overlay{background:#0009!important}body.light-mode .reservation-management .modal-content{background:#fffffff2!important;backdrop-filter:blur(10px)!important;border:2px solid rgba(255,255,255,.3)!important;box-shadow:0 20px 40px #0003!important}body.light-mode .reservation-management .modal-content h3{color:#111827!important}body.light-mode .cancellation-details{background:#f8fafc!important;border:1px solid #e5e7eb!important;color:#374151!important}body.light-mode .refund-summary.positive{background:#22c55e1a!important;border:1px solid #22c55e!important;color:#16a34a!important}body.light-mode .refund-summary.negative{background:#ef44441a!important;border:1px solid #ef4444!important;color:#dc2626!important}@supports (-webkit-touch-callout: none){h1,h2,h3,h4,h5,h6{hyphens:none!important;-webkit-hyphens:none!important;word-break:keep-all!important;overflow-wrap:break-word!important;word-wrap:break-word!important}.reservation-hero h2,.reservation-hero p,.reservation-form h2,.reservation-form h3,.reservation-details h3,.booking-card h3,.status-message h3{hyphens:none!important;-webkit-hyphens:none!important;word-break:keep-all!important;overflow-wrap:break-word!important;word-wrap:break-word!important;white-space:normal!important}@media (max-width: 768px){.reservation-hero h2,.reservation-hero p,.reservation-form h2,.reservation-form h3,.reservation-details h3,.booking-card h3,.status-message h3{hyphens:none!important;-webkit-hyphens:none!important;word-break:keep-all!important;overflow-wrap:break-word!important;word-wrap:break-word!important;white-space:normal!important}}}.modal-overlay{position:fixed;inset:0;background:#0f172acc;backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px;animation:fadeIn .2s ease-out}.booking-modal{background:#fff;border-radius:24px;width:100%;max-width:1200px;min-width:800px;max-height:95vh;overflow:hidden;box-shadow:0 25px 50px -12px #00000040,0 0 0 1px #ffffff0d;animation:slideUp .3s ease-out;display:flex;flex-direction:column}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{background:linear-gradient(135deg,#1e293b,#334155);color:#fff;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.1);flex-shrink:0}.modal-header h2{margin:0;font-size:24px;font-weight:700;letter-spacing:-.025em}.close-btn{background:#ffffff1a;border:none;color:#fff;width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:20px;transition:all .2s ease}.close-btn:hover{background:#fff3;transform:scale(1.05)}.modal-content{flex:1;overflow-y:auto;padding:0;min-height:0;display:block!important}.error-message{margin:16px 24px 0;background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:16px 20px;border-radius:12px;font-size:14px;font-weight:500}.booking-info{padding:16px 24px 24px;display:grid;gap:20px;flex:1;min-height:0}.info-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;overflow:hidden}.info-section h3{background:#f1f5f9;margin:0;padding:16px 24px;font-size:17px;font-weight:700;color:#1e293b;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;gap:12px}.info-section h3:before{content:"";width:4px;height:20px;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:2px}.info-grid{padding:20px 24px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));align-items:start}.info-grid.two-column{grid-template-columns:repeat(2,1fr);gap:24px}.info-grid.three-column{grid-template-columns:repeat(3,1fr);gap:20px}.info-grid.four-column{grid-template-columns:repeat(4,1fr);gap:18px}.info-item{display:flex;flex-direction:column;gap:6px;align-items:flex-start;justify-content:flex-start}.info-item label{font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.05em;line-height:1.2;margin:0;padding:0;height:15px;display:flex;align-items:center}.info-item span{font-size:15px;font-weight:600;color:#1e293b;line-height:1.3;margin:0;padding:0;min-height:20px;display:flex;align-items:center}.booking-id{font-family:SF Mono,Monaco,monospace;background:#f1f5f9;padding:8px 12px;border-radius:8px;font-size:13px;color:#475569;border:1px solid #e2e8f0;line-height:1.2;display:inline-flex;align-items:center;min-height:20px}.confirmation-number{font-family:SF Mono,Monaco,monospace;background:linear-gradient(135deg,#dbeafe,#bfdbfe);padding:8px 12px;border-radius:8px;font-size:13px;color:#1e40af;border:1px solid #93c5fd;font-weight:700;line-height:1.2;display:inline-flex;align-items:center;min-height:20px}.status{padding:6px 12px;border-radius:20px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;display:inline-flex;align-items:center;gap:6px}.status.confirmed{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}.status.pending{background:#fef3c7;color:#92400e;border:1px solid #fde68a}.status.cancelled{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.price{font-size:18px;font-weight:800;color:#059669}.payment-balance{font-size:16px;font-weight:700;color:#059669}.payment-status{font-size:11px;color:#64748b;font-weight:500;margin-left:8px}.edit-input,.edit-textarea{width:100%;padding:12px 16px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;font-weight:500;color:#1e293b;background:#fff;transition:all .2s ease}.edit-input:focus,.edit-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.edit-textarea{resize:vertical;min-height:80px;font-family:inherit}.special-requests{margin:0;padding:20px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#475569;line-height:1.6;font-size:14px}.refund-policy{background:linear-gradient(135deg,#fffbeb,#fef3c7)!important;border:1px solid #f59e0b!important}.refund-policy h3{background:#fef3c7!important;color:#92400e!important;border-bottom-color:#f59e0b!important}.policy-grid{padding:24px!important;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:20px}.policy-item{background:#fff;padding:16px;border-radius:12px;border:1px solid #f59e0b;text-align:center;transition:all .2s ease}.policy-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #f59e0b26}.policy-timeframe{font-size:13px;font-weight:700;color:#92400e;margin-bottom:8px;text-transform:uppercase;letter-spacing:.05em}.policy-refund{font-size:12px;font-weight:700;padding:4px 8px;border-radius:12px;text-transform:uppercase;letter-spacing:.05em}.policy-refund:not(.no-refund){background:#dcfce7;color:#166534}.policy-refund.no-refund{background:#fee2e2;color:#991b1b}.current-refund{background:#fff;padding:20px;border-radius:12px;border:2px solid #059669;text-align:center;font-weight:700;color:#059669;font-size:16px}.booking-modal.available-day{max-width:500px}.availability-info{padding:40px;text-align:center}.date-info h3{margin:0 0 24px;font-size:22px;font-weight:700;color:#1e293b}.price-display{display:flex;align-items:baseline;justify-content:center;gap:12px;margin:24px 0}.price-display .price{font-size:32px;font-weight:800;color:#059669}.per-night{font-size:16px;color:#64748b;font-weight:500}.day-status{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:20px;font-weight:700;font-size:14px;margin-top:24px}.day-status.available{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}.status-indicator{width:8px;height:8px;border-radius:50%;background:currentColor}.availability-note{margin-top:24px;padding:16px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:12px;border-left:4px solid #22c55e}.availability-note p{margin:0;font-size:14px;color:#166534;line-height:1.5}.modal-actions{background:#f8fafc;border-top:1px solid #e2e8f0;padding:20px 24px;display:flex;gap:12px;justify-content:flex-end;flex-shrink:0}.btn-primary,.btn-secondary,.btn-danger{padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;border:none;transition:all .2s ease;min-width:120px;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn-primary{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;box-shadow:0 1px 3px #0000001a}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #3b82f666}.btn-secondary{background:#fff;color:#475569;border:1px solid #d1d5db}.btn-secondary:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af;transform:translateY(-1px)}.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 1px 3px #0000001a}.btn-danger:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #ef444466}.btn-primary:disabled,.btn-secondary:disabled,.btn-danger:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.status-notice{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:24px;text-align:center;color:#64748b;flex:1}.status-notice p{margin:0;font-size:14px;line-height:1.5}.status-notice p:first-child{margin-bottom:8px}.status-notice strong{color:#1e293b;font-weight:600}@media (max-width: 1024px){.booking-modal{min-width:600px;max-width:calc(100vw - 48px)}.info-grid.four-column{grid-template-columns:repeat(2,1fr);gap:20px}}@media (max-width: 768px){.modal-overlay{padding:16px}.booking-modal{max-height:95vh;border-radius:16px;max-width:calc(100vw - 32px);min-width:unset}.modal-header{padding:18px 24px}.modal-header h2{font-size:20px}.booking-info{padding:16px 24px 20px}.info-grid{grid-template-columns:1fr!important;gap:16px;padding:18px 20px}.modal-actions{padding:18px 24px;flex-direction:column}.btn-primary,.btn-secondary,.btn-danger{width:100%;min-width:unset}}@media (max-width: 480px){.modal-header,.booking-info{padding:16px 20px}.info-section h3{padding:14px 18px;font-size:16px}.info-grid{padding:16px 18px}.modal-actions{padding:16px 20px}}.modal-content::-webkit-scrollbar{width:6px}.modal-content::-webkit-scrollbar-track{background:#f1f5f9}.modal-content::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.modal-content::-webkit-scrollbar-thumb:hover{background:#94a3b8}.booking-calendar{background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;padding:24px;margin:24px 0}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #f0f0f0}.calendar-header h2{color:#2c3e50;font-size:24px;font-weight:600;margin:0}.nav-btn{background:#3498db;color:#fff;border:none;width:40px;height:40px;border-radius:50%;font-size:18px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.nav-btn:hover{background:#2980b9;transform:scale(1.05)}.calendar-legend{display:flex;gap:24px;margin-bottom:20px;justify-content:center}.legend-item{display:flex;align-items:center;gap:8px;font-size:14px;color:#666}.legend-dot{width:16px;height:16px;border-radius:50%;border:2px solid #ddd}.legend-dot.available{background:linear-gradient(135deg,#27ae60,#2ecc71);border-color:#27ae60}.legend-dot.booked{background:linear-gradient(135deg,#f39c12,#e67e22);border-color:#f39c12}.calendar-grid{overflow-x:auto}.weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;margin-bottom:1px}.weekday{background:#34495e;color:#fff;padding:12px;text-align:center;font-weight:600;font-size:14px;text-transform:uppercase;letter-spacing:.5px}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:#ecf0f1}.calendar-day{background:#fff;min-height:100px;padding:8px;cursor:pointer;border:1px solid transparent;transition:all .3s ease;position:relative;display:flex;flex-direction:column;justify-content:space-between}.calendar-day:hover{border-color:#3498db;transform:scale(1.02);box-shadow:0 2px 8px #3498db4d}.calendar-day.other-month{background:#f8f9fa;color:#bdc3c7}.calendar-day.today{border:2px solid #e74c3c;background:#fff5f5}.calendar-day.available{background:linear-gradient(135deg,#d5f4e6,#e8f8f5);border-left:4px solid #27ae60}.calendar-day.booked{background:linear-gradient(135deg,#fdf2e9,#fbeee6);border-left:4px solid #f39c12}.day-number{font-size:16px;font-weight:600;color:#2c3e50;align-self:flex-start}.calendar-day.other-month .day-number{color:#bdc3c7}.calendar-day.today .day-number{color:#e74c3c}.day-price{font-size:12px;font-weight:500;color:#27ae60;background:#27ae601a;padding:2px 6px;border-radius:4px;align-self:flex-start;margin-top:4px}.calendar-day.booked .day-price{color:#f39c12;background:#f39c121a}.booking-info{margin-top:auto;padding-top:4px;display:flex;flex-direction:column;gap:2px}.booking-id{font-size:10px;font-weight:600;color:#2c3e50;background:#3498db1a;padding:1px 4px;border-radius:3px;text-align:center}.guest-count{font-size:11px;color:#e67e22;background:#e67e221a;padding:2px 4px;border-radius:3px;text-align:center}.available-indicator{font-size:10px;color:#27ae60;background:#27ae601a;padding:2px 4px;border-radius:3px;text-align:center;margin-top:auto}.calendar-loading{display:flex;align-items:center;justify-content:center;height:200px;font-size:16px;color:#666}@media (max-width: 768px){.booking-calendar{padding:16px;margin:16px 0}.calendar-header{flex-direction:column;gap:16px}.calendar-header h2{font-size:20px}.nav-btn{width:36px;height:36px;font-size:16px}.calendar-legend{flex-wrap:wrap;gap:16px}.calendar-day{min-height:80px;padding:6px}.day-number{font-size:14px}.day-price{font-size:10px}.weekday{padding:8px;font-size:12px}}@media (max-width: 480px){.calendar-days{gap:0}.calendar-day{min-height:70px;padding:4px}.day-number{font-size:12px}.day-price{font-size:9px;padding:1px 3px}.guest-count{font-size:9px;padding:1px 2px}}.nav-controls{display:flex;gap:8px}.calendar-day.partially-booked{background:linear-gradient(45deg,#d5f4e6 0% 50%,#fdf2e9 50% 100%);border-left:4px solid #f1c40f}.calendar-day.unavailable{background:#ecf0f1;color:#95a5a6;cursor:not-allowed}.calendar-day.unavailable:hover{transform:none;border-color:transparent;box-shadow:none}.admin-login{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f8f9fa}.login-container{background:#fff;padding:40px;border-radius:12px;box-shadow:0 4px 20px #0000001a;max-width:400px;width:100%}.login-container h2{text-align:center;margin-bottom:30px;color:#2c3e50}.login-container .form-group{margin-bottom:20px}.login-container label{display:block;margin-bottom:5px;font-weight:500;color:#2c3e50}.login-container input{width:100%;padding:12px;border:2px solid #e1e8ed;border-radius:8px;font-size:16px}.login-container input:focus{outline:none;border-color:#3498db}.login-container button{width:100%;background:#3498db;color:#fff;border:none;padding:12px;border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;transition:background .3s}.login-container button:hover{background:#2980b9}.setup-note{margin-top:20px;padding:15px;background:#f8f9fa;border-radius:8px;font-size:14px;color:#666}.admin-dashboard{min-height:100vh;background:#f8f9fa;padding:20px}.dashboard-header{display:flex;justify-content:space-between;align-items:center;background:#fff;padding:20px 30px;border-radius:12px;box-shadow:0 2px 10px #0000001a;margin-bottom:30px}.dashboard-header h1{color:#2c3e50;margin:0}.logout-btn{background:#e74c3c;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-weight:500}.logout-btn:hover{background:#c0392b}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:30px}.stat-card{background:#fff;padding:25px;border-radius:12px;box-shadow:0 2px 10px #0000001a;text-align:center}.stat-card h3{margin:0 0 10px;color:#666;font-size:14px;text-transform:uppercase;letter-spacing:1px}.stat-number{margin:0;font-size:2.5rem;font-weight:700;color:#3498db}.bookings-section{background:#fff;padding:30px;border-radius:12px;box-shadow:0 2px 10px #0000001a}.bookings-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px;gap:20px}.bookings-header h2{margin:0;color:#2c3e50}.bookings-filters{display:flex;gap:15px;flex-wrap:wrap;align-items:end}.filter-group{display:flex;flex-direction:column;gap:5px}.filter-group label{font-size:12px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}.filter-group select,.filter-group input{padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;min-width:150px}.filter-group input[type=text]{min-width:250px}.bookings-summary{margin-bottom:15px;padding:10px 15px;background:#f8f9fa;border-radius:6px;border-left:4px solid #3498db}.bookings-summary p{margin:0;font-size:14px;color:#666}.bookings-table{overflow-x:auto}.bookings-table table{width:100%;border-collapse:collapse;font-size:14px}.bookings-table th,.bookings-table td{padding:12px;text-align:left;border-bottom:1px solid #e1e8ed}.bookings-table th{background:#f8f9fa;font-weight:600;color:#2c3e50}.bookings-table tr:hover{background:#f8f9fa}.clickable-row{cursor:pointer;transition:background-color .2s ease}.clickable-row:hover{background:#e3f2fd!important}.payment-status{padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.payment-status.pending{background:#fff3cd;color:#856404}.payment-status.completed{background:#d4edda;color:#155724}.payment-status.failed{background:#f8d7da;color:#721c24}.no-bookings{text-align:center;padding:40px 20px;color:#666;font-style:italic}.status{padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500;text-transform:uppercase}.status.confirmed{background:#d4edda;color:#155724}.status.completed{background:#cce5ff;color:#004085}.status.cancelled{background:#f8d7da;color:#721c24}.status.no-show{background:#fff3cd;color:#856404}.bookings-table select{padding:6px;border:1px solid #ddd;border-radius:4px;font-size:12px}.loading{display:flex;align-items:center;justify-content:center;min-height:100vh;font-size:18px;color:#666}.error-message{background:#f8d7da;color:#721c24;padding:12px;border-radius:6px;margin-bottom:20px;border:1px solid #f5c6cb}@media (max-width: 768px){.admin-dashboard{padding:10px}.dashboard-header{padding:15px 20px;flex-direction:column;gap:15px;text-align:center}.stats-grid{grid-template-columns:1fr}.bookings-section{padding:20px}.bookings-header{flex-direction:column;align-items:stretch;gap:15px}.bookings-filters{flex-direction:column;gap:10px}.filter-group select,.filter-group input{min-width:100%}.bookings-table{font-size:12px}.bookings-table th,.bookings-table td{padding:8px 4px}}.calendar-section{margin:2rem 0}.calendar-section h2{color:#2c3e50;margin-bottom:1rem;font-size:1.5rem;font-weight:600}.legal-page{padding:2rem 0;min-height:100vh;background:#0f172a;color:#e2e8f0}.container{max-width:1200px;margin:0 auto;padding:0 1rem}.legal-header{text-align:center;margin-bottom:3rem;background:linear-gradient(135deg,#1e293b,#334155);padding:2rem;border-radius:15px;box-shadow:0 10px 30px #0000004d;border:1px solid #475569;max-width:900px;margin:0 auto 3rem}.legal-logo{height:80px;margin-bottom:1rem;filter:brightness(1.2)}.legal-header h2{color:#fff;font-size:2.5rem;font-weight:500;margin-bottom:.5rem;text-shadow:0 2px 4px rgba(0,0,0,.5);letter-spacing:-.02em;line-height:1.3}.last-updated{color:#cbd5e1;font-style:italic;font-size:.9rem}.consent-section{background:#1e293b;padding:1.5rem;border-radius:15px;box-shadow:0 10px 30px #0000004d;margin-bottom:2rem;border:2px solid #475569;transition:all .3s ease;max-width:600px}.consent-section:hover{border-color:#60a5fa;box-shadow:0 15px 40px #60a5fa33}.consent-checkbox{margin-bottom:1rem}.consent-label{display:flex;align-items:flex-start;cursor:pointer;padding:1rem;border:2px solid #475569;border-radius:12px;transition:all .3s ease;background:#334155;position:relative;gap:.75rem;line-height:1.5}.consent-label:hover{border-color:#60a5fa;background:#1e293b;transform:translateY(-1px);box-shadow:0 4px 12px #60a5fa40}.consent-label:has(.consent-input:checked){border-color:#60a5fa;background:#60a5fa26;box-shadow:0 2px 8px #60a5fa4d}.consent-label:has(.consent-input:focus){outline:2px solid #60a5fa;outline-offset:2px}.consent-input{width:20px;height:20px;margin:2px 0 0;cursor:pointer;transform:scale(1.1);accent-color:#60a5fa;flex-shrink:0}.consent-text{flex:1;font-size:1rem;line-height:1.6;color:#e2e8f0;font-weight:400;letter-spacing:.3px}.consent-check-icon{margin-left:auto;width:22px;height:22px;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#60a5fa}.acceptance-message{display:flex;align-items:center;background:#22c55e;color:#fff;padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;animation:slideIn .3s ease-out}.acceptance-message .message-icon{width:20px;height:20px;margin-right:.5rem}@keyframes slideIn{0%{transform:translateY(-10px);opacity:0}to{transform:translateY(0);opacity:1}}.consent-warning{display:flex;align-items:center;background:#f59e0b33;color:#fbbf24;padding:.75rem 1rem;border-radius:8px;border:1px solid #f59e0b}.consent-warning .warning-icon{width:20px;height:20px;margin-right:.5rem;color:#f59e0b}.legal-content{background:#1e293b;padding:1.5rem;border-radius:15px;box-shadow:0 10px 30px #0000004d;border:1px solid #475569;max-width:900px;margin:0 auto}.legal-section{margin-bottom:3rem;padding-bottom:2rem;border-bottom:1px solid #475569}.legal-section:last-child{border-bottom:none;margin-bottom:0}.legal-section h2{color:#fff;font-size:1.8rem;font-weight:600;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem;text-shadow:0 2px 4px rgba(0,0,0,.5)}.legal-section h3{color:#60a5fa;font-size:1.3rem;font-weight:600;margin:1.5rem 0 1rem}.section-icon{color:#60a5fa;width:24px;height:24px}.legal-section p{line-height:1.7;margin-bottom:1rem;color:#e2e8f0;font-size:1rem}.legal-section ul{margin:1rem 0 1rem 1.5rem;padding-left:0}.legal-section li{margin-bottom:.5rem;line-height:1.6;color:#e2e8f0;position:relative}.legal-section li::marker{color:#60a5fa}.legal-section strong{color:#fff;font-weight:600}.contact-section{background:#334155;padding:2rem;border-radius:10px;margin-top:2rem;border:1px solid #475569}.contact-info{display:grid;gap:1.5rem;margin-top:1.5rem}.contact-item{display:flex;align-items:flex-start;gap:1rem}.contact-icon{color:#60a5fa;width:20px;height:20px;margin-top:.2rem;flex-shrink:0}.contact-item a{color:#60a5fa;text-decoration:none;font-weight:500}.contact-item a:hover{text-decoration:underline;color:#3b82f6}@media (max-width: 768px){.legal-page{padding:1rem 0}.container{padding:0 .5rem}.legal-header{padding:1.5rem;margin-bottom:2rem}.legal-header h1{font-size:2rem}.legal-logo{height:60px}.consent-section{padding:1.5rem}.consent-label{padding:.75rem;flex-direction:row;align-items:center;gap:.5rem}.consent-input{width:18px;height:18px;margin-right:.75rem;transform:scale(1.1);flex-shrink:0}.consent-text{font-size:.9rem;flex:1;line-height:1.4}.consent-check-icon{margin-left:.5rem;width:20px;height:20px;flex-shrink:0}.legal-content{padding:1.5rem}.legal-section h2{font-size:1.5rem}.legal-section h3{font-size:1.2rem}.contact-section{padding:1.5rem}.contact-info{gap:1rem}.contact-item{flex-direction:column;gap:.5rem}.contact-icon{align-self:flex-start}}@media (max-width: 480px){.legal-header h1{font-size:1.75rem}.consent-section,.legal-content{padding:1rem}.legal-section{margin-bottom:2rem}}@media print{.legal-page{background:#fff;padding:0;color:#000}.legal-header,.legal-content{box-shadow:none;border-radius:0;background:#fff;color:#000}.legal-header h1,.legal-section h2{color:#000;text-shadow:none}.legal-section h3{color:#333}.legal-section p,.legal-section li{color:#000}.section-icon{color:#333!important;-webkit-print-color-adjust:exact;color-adjust:exact}.legal-section h2{border-bottom:2px solid #333}.contact-item a{color:#333!important;text-decoration:underline}}body.light-mode .legal-page{background:#f8fafc;color:#1f2937}body.light-mode .container{max-width:1200px;margin:0 auto;padding:0 1rem}body.light-mode .legal-header{background:#ffffffd9!important;backdrop-filter:blur(10px)!important;border:2px solid rgba(255,255,255,.3)!important;box-shadow:0 8px 25px #00000014!important;max-width:900px!important;margin:0 auto 2rem!important}body.light-mode .legal-header h2{color:#1f2937;text-shadow:none;font-weight:500;letter-spacing:-.02em;line-height:1.3}body.light-mode .last-updated{color:#6b7280}body.light-mode .consent-section{background:#ffffffd9!important;backdrop-filter:blur(10px)!important;border:2px solid rgba(255,255,255,.3)!important;box-shadow:0 8px 25px #00000014!important;max-width:900px!important;margin:0 auto 2rem!important}body.light-mode .consent-section:hover{border-color:#2563eb;box-shadow:0 15px 40px #2563eb26}body.light-mode .consent-label{background:#f8fafc;border:2px solid #e5e7eb;color:#1f2937}body.light-mode .consent-label:hover{border-color:#2563eb;background:#f1f5f9;box-shadow:0 4px 12px #2563eb26}body.light-mode .consent-label:has(.consent-input:checked){border-color:#2563eb;background:#2563eb0d;box-shadow:0 2px 8px #2563eb33}body.light-mode .consent-label:has(.consent-input:focus){outline:2px solid #2563eb;outline-offset:2px}body.light-mode .consent-input{accent-color:#2563eb;border:2px solid #d1d5db}body.light-mode .consent-input:checked{background-color:#2563eb;border-color:#2563eb}body.light-mode .consent-text{color:#374151}body.light-mode .consent-check-icon{color:#10b981}body.light-mode .acceptance-message{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}body.light-mode .acceptance-message .message-icon{color:#10b981}body.light-mode .consent-warning{background:#fef3c7;color:#92400e;border:1px solid #fde68a}body.light-mode .consent-warning .warning-icon{color:#f59e0b}body.light-mode .legal-content{background:#ffffffd9!important;backdrop-filter:blur(10px)!important;border:2px solid rgba(255,255,255,.3)!important;box-shadow:0 8px 25px #00000014!important;max-width:900px!important;margin:0 auto!important}body.light-mode .legal-section{border-bottom:1px solid #e5e7eb}body.light-mode .legal-section:last-child{border-bottom:none}body.light-mode .legal-section h2{color:#1f2937;text-shadow:none}body.light-mode .legal-section h3,body.light-mode .section-icon{color:#2563eb}body.light-mode .legal-section p,body.light-mode .legal-section li{color:#4b5563}body.light-mode .legal-section li::marker{color:#2563eb}body.light-mode .legal-section strong{color:#1f2937}body.light-mode .contact-section{background:#f8fafc;border:1px solid #e5e7eb;box-shadow:0 4px 12px #0000000d}body.light-mode .contact-icon,body.light-mode .contact-item a{color:#2563eb}body.light-mode .contact-item a:hover{color:#1d4ed8}body.light-mode .contact-item div{color:#374151}body.light-mode .contact-item strong{color:#1f2937}body.light-mode .legal-section a{color:#2563eb;text-decoration:underline}body.light-mode .legal-section a:hover{color:#1d4ed8;text-decoration:none}@media (min-width: 1024px){body.light-mode .legal-content{background:#ffffffd9!important;backdrop-filter:blur(10px)!important;border:2px solid rgba(255,255,255,.3)!important;border-radius:20px!important;box-shadow:0 8px 25px #00000014!important;padding:40px 32px!important;margin:0 auto!important;max-width:900px!important}body.light-mode .legal-header,body.light-mode .consent-section{background:#ffffffd9!important;backdrop-filter:blur(10px)!important;border:2px solid rgba(255,255,255,.3)!important;border-radius:20px!important;box-shadow:0 8px 25px #00000014!important;margin:0 auto 2rem!important;max-width:900px!important}}@media (prefers-color-scheme: dark){@media (min-width: 1024px){body.light-mode .legal-content{background:#ffffffd9!important;backdrop-filter:blur(10px)!important;border:1px solid #e5e7eb!important;border-radius:20px!important;box-shadow:0 8px 32px #00000014!important;padding:40px 32px!important;margin:20px auto!important}body.light-mode .legal-header{background:#ffffffd9!important;backdrop-filter:blur(10px)!important;border:1px solid #e5e7eb!important;border-radius:20px!important;box-shadow:0 8px 32px #00000014!important;margin-bottom:20px!important}body.light-mode .consent-section{background:#ffffffd9!important;backdrop-filter:blur(10px)!important;border:2px solid #e5e7eb!important;border-radius:20px!important;box-shadow:0 8px 32px #00000014!important;margin:20px 0!important}}}@media (max-width: 768px){body.light-mode .legal-content,body.light-mode .legal-header,body.light-mode .consent-section{background:#fff;box-shadow:0 4px 12px #0000000d}}@media (max-width: 480px){body.light-mode .legal-page{background:#fff}body.light-mode .legal-content{background:#f8fafc}}@media print{body.light-mode .legal-page{background:#fff!important;color:#000!important}body.light-mode .legal-header,body.light-mode .legal-content{box-shadow:none!important;background:#fff!important;border:1px solid #ccc!important}body.light-mode .section-icon,body.light-mode .contact-icon{color:#666!important}body.light-mode .legal-section h2,body.light-mode .legal-section h3{color:#000!important}body.light-mode .legal-section a{color:#06c!important}}.footer{background:linear-gradient(135deg,#2c3e50,#34495e);color:#fff;padding:60px 0 20px;margin-top:auto}.footer-content{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:40px;margin-bottom:40px}.footer-section h4{color:#fff;font-size:1.2rem;font-weight:600;margin-bottom:20px;position:relative}.footer-section h4:after{content:"";position:absolute;bottom:-8px;left:0;width:30px;height:2px;background:#3498db}.footer-logo{margin-bottom:20px}.footer-logo-img{height:50px;width:auto;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.footer-description{color:#fffc;line-height:1.6;font-size:.95rem}.footer-links{list-style:none;padding:0;margin:0}.footer-links li{margin-bottom:12px}.footer-links a{color:#fffc;text-decoration:none;font-size:.95rem;transition:color .3s ease;position:relative}.footer-links a:hover{color:#3498db}.footer-links a:before{content:"";position:absolute;width:0;height:1px;bottom:-2px;left:0;background-color:#3498db;transition:width .3s ease}.footer-links a:hover:before{width:100%}.contact-info{display:flex;flex-direction:column;gap:15px}.contact-item{display:flex;align-items:center;gap:12px;padding:10px;border-radius:5px;background:transparent;border:none}.contact-icon{width:18px;height:18px;color:#3498db;flex-shrink:0}.contact-item a,.contact-item span{text-decoration:none;font-size:.95rem;transition:color .3s ease;color:#fffc}.contact-item a:hover,.contact-item a.address-link,.contact-item a.address-link:hover{color:#3498db}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:20px}.footer-bottom-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:15px}.footer-bottom p{margin:0;color:#ffffffb3;font-size:.9rem}.made-with-love{display:flex;align-items:center;gap:5px}.heart-icon{width:16px;height:16px;color:#e74c3c;animation:heartbeat 2s ease-in-out infinite}@keyframes heartbeat{0%{transform:scale(1)}14%{transform:scale(1.1)}28%{transform:scale(1)}42%{transform:scale(1.1)}70%{transform:scale(1)}}@media (max-width: 1024px){.footer-content{grid-template-columns:1fr 1fr;gap:30px}}@media (max-width: 768px){.footer{padding:40px 0 20px}.footer-content{grid-template-columns:1fr;gap:30px;text-align:center}.footer-logo{display:none}.footer-section h4:after{left:50%;transform:translate(-50%)}.footer-bottom-content{flex-direction:column;text-align:center;gap:10px}.contact-info{align-items:center;gap:18px}.contact-item{justify-content:flex-start;flex-direction:row;gap:12px;padding:20px;background:#ffffff1a;border-radius:16px;border:1px solid rgba(255,255,255,.15);backdrop-filter:blur(10px);min-width:280px;max-width:320px;width:100%;align-items:center;text-align:left;transition:all .3s ease}.contact-item:hover{background:#ffffff26;transform:translateY(-2px);box-shadow:0 8px 20px #00000026}.contact-icon{width:28px;height:28px;color:#74b9ff;flex-shrink:0}.contact-item a,.contact-item span{font-size:1.1rem;line-height:1.4;font-weight:600;color:#fff}.contact-item a{color:#fff;text-decoration:none}.contact-item a:hover{color:#74b9ff;text-decoration:underline}}@media (max-width: 480px){.footer{padding:30px 0 15px}.container{padding:0 15px}.footer-content{gap:25px}.footer-logo{display:none}.footer-logo-img{height:40px}.footer-section h4{font-size:1.1rem;margin-bottom:15px}.footer-description,.footer-links a{font-size:.9rem;color:#fffffff2!important}.contact-info{gap:15px}.contact-item{min-width:260px;max-width:300px;padding:18px 16px;gap:10px;flex-direction:row;align-items:center;text-align:left}.contact-icon{width:26px;height:26px;color:#74b9ff;flex-shrink:0}.contact-item a,.contact-item span{font-size:1rem;line-height:1.3;font-weight:600;color:#fff!important}.contact-item a{color:#fff!important}.contact-item a:hover{color:#74b9ff!important}}@media (max-width: 360px){.footer-logo{display:none}.contact-item{min-width:240px;max-width:280px;padding:16px 14px;gap:8px;flex-direction:row;align-items:center;text-align:left}.contact-icon{width:24px;height:24px;color:#74b9ff;flex-shrink:0}.contact-item a,.contact-item span{font-size:.95rem;line-height:1.2;font-weight:600;color:#fff!important}.contact-item a{color:#fff!important}.contact-item a:hover{color:#74b9ff!important}.footer-section h4{font-size:1rem;margin-bottom:12px}}@media (prefers-color-scheme: dark){.footer{background:linear-gradient(135deg,#0f172a,#1e293b);color:#e2e8f0}.footer-section h4{color:#fff}.footer-description,.footer-links a{color:#ffffffe6}.footer-links a:hover{color:#60a5fa}.contact-item a,.contact-item span{color:#ffffffe6}.contact-item a:hover,.contact-icon{color:#60a5fa}.footer-bottom p{color:#fffc}@media (max-width: 768px){.footer-logo{display:none}.contact-item{background:#ffffff1a;border:1px solid rgba(255,255,255,.2)}.contact-item:hover{background:#ffffff26}.contact-item a,.contact-item span{color:#fff!important;font-weight:600}.contact-item a:hover,.contact-icon{color:#60a5fa!important}}@media (max-width: 480px){.footer-logo{display:none}.contact-item a,.contact-item span{color:#fff!important;font-weight:600}.contact-item a:hover,.contact-icon{color:#60a5fa!important}.footer-description,.footer-links a{color:#fffffff2!important}}@media (max-width: 360px){.footer-logo{display:none}.contact-item a,.contact-item span{color:#fff!important;font-weight:600}.contact-item a:hover,.contact-icon{color:#60a5fa!important}}}body.light-mode .footer{background:linear-gradient(135deg,#f8fafc,#e2e8f0)!important;color:#1f2937!important;border-top:1px solid #e5e7eb!important}body.light-mode .footer-section h4{color:#111827!important}body.light-mode .footer-section h4:after{background:#2563eb!important}body.light-mode .footer-description{color:#4b5563!important}body.light-mode .footer-links a{color:#6b7280!important}body.light-mode .footer-links a:hover{color:#2563eb!important}body.light-mode .footer-links a:before{background-color:#2563eb!important}body.light-mode .contact-item a,body.light-mode .contact-item span{color:#6b7280!important}body.light-mode .contact-item a:hover,body.light-mode .contact-icon{color:#2563eb!important}body.light-mode .footer-bottom{border-top:1px solid #e5e7eb!important}body.light-mode .footer-bottom p{color:#9ca3af!important}body.light-mode .contact-item a.address-link{color:#2563eb!important}body.light-mode .contact-item a.address-link:hover{color:#1d4ed8!important}@media (max-width: 768px){body.light-mode .contact-item{background:#fff!important;border:1px solid #e5e7eb!important;box-shadow:0 1px 3px #0000001a!important}body.light-mode .contact-item:hover{background:#f8fafc!important;border-color:#2563eb!important;box-shadow:0 4px 6px #2563eb1a!important}body.light-mode .contact-item a,body.light-mode .contact-item span{color:#374151!important;font-weight:600!important}body.light-mode .contact-item a:hover,body.light-mode .contact-icon{color:#2563eb!important}}@media (max-width: 480px){body.light-mode .footer-description,body.light-mode .footer-links a{color:#4b5563!important}body.light-mode .contact-item a,body.light-mode .contact-item span{color:#374151!important;font-weight:600!important}body.light-mode .contact-item a:hover,body.light-mode .contact-icon{color:#2563eb!important}}@media (max-width: 360px){body.light-mode .contact-item a,body.light-mode .contact-item span{color:#374151!important;font-weight:600!important}body.light-mode .contact-item a:hover,body.light-mode .contact-icon{color:#2563eb!important}}@supports (-webkit-touch-callout: none){h1,h2,h3,h4,h5,h6{hyphens:none!important;-webkit-hyphens:none!important;word-break:keep-all!important;overflow-wrap:break-word!important;word-wrap:break-word!important}.footer h3,.footer h4,.footer-brand h3,.footer-section h4{hyphens:none!important;-webkit-hyphens:none!important;word-break:keep-all!important;overflow-wrap:break-word!important;word-wrap:break-word!important;white-space:normal!important}@media (max-width: 768px){.footer h3,.footer h4,.footer-brand h3,.footer-section h4{hyphens:none!important;-webkit-hyphens:none!important;word-break:keep-all!important;overflow-wrap:break-word!important;word-wrap:break-word!important;white-space:normal!important}}}.whatsapp-float{position:fixed;bottom:20px;right:20px;width:60px;height:60px;background-color:#25d366;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 12px #25d36666;z-index:1000;transition:all .3s ease}.whatsapp-float:hover{transform:scale(1.1);box-shadow:0 6px 20px #25d36699}.whatsapp-icon{color:#fff;width:28px;height:28px}.whatsapp-tooltip{position:absolute;right:70px;top:50%;transform:translateY(-50%);background-color:#000c;color:#fff;padding:8px 12px;border-radius:6px;font-size:14px;white-space:nowrap;opacity:0;visibility:hidden;transition:all .3s ease;pointer-events:none}.whatsapp-tooltip:after{content:"";position:absolute;left:100%;top:50%;transform:translateY(-50%);border:6px solid transparent;border-left-color:#000c}.whatsapp-float:hover .whatsapp-tooltip{opacity:1;visibility:visible}@media (max-width: 768px){.whatsapp-float{width:50px;height:50px;bottom:15px;right:15px}.whatsapp-icon{width:24px;height:24px}.whatsapp-tooltip{font-size:12px;padding:6px 10px;right:60px}}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.whatsapp-float{animation:pulse 2s infinite}.whatsapp-float:hover{animation:none}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6;color:#e2e8f0;background-color:#0f172a;overflow-x:hidden}@media (min-width: 769px){body{padding-top:70px}}:root{--bg-primary: #0f172a;--bg-secondary: #1e293b;--bg-tertiary: #334155;--text-primary: #ffffff;--text-secondary: #e2e8f0;--text-muted: #cbd5e1;--accent-primary: #60a5fa;--accent-secondary: #3b82f6;--border-primary: #475569;--border-secondary: #64748b}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2;margin-bottom:1rem}h1{font-size:2.8rem!important;color:#fff!important;margin-bottom:10px!important;font-weight:600!important;text-shadow:none!important;letter-spacing:-.02em!important}h2{font-size:2.5rem!important;color:#fff!important;margin-bottom:10px!important;font-weight:500!important;text-shadow:none!important;letter-spacing:-.02em!important}h2{color:#fff!important;text-shadow:0 2px 4px rgba(0,0,0,.5)!important}p{margin-bottom:1rem}a{color:#60a5fa;text-decoration:none;transition:color .3s ease}a:hover{color:#3b82f6}button{font-family:inherit;cursor:pointer;border:none;outline:none;transition:all .3s ease;background-color:#60a5fa;color:#fff;border:1px solid #475569}button:hover:not(:disabled){background-color:#3b82f6;box-shadow:0 4px 12px #60a5fa40}button:disabled{cursor:not-allowed;opacity:.6;background-color:#334155;color:#cbd5e1}input,select,textarea{font-family:inherit;border:none;outline:none}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.container{max-width:1200px;margin:0 auto;padding:0 20px}.flex{display:flex}.flex-center{display:flex;align-items:center;justify-content:center}.grid{display:grid}.hidden{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:1rem}.mb-4{margin-bottom:1.5rem}.mb-5{margin-bottom:3rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:1rem}.mt-4{margin-top:1.5rem}.mt-5{margin-top:3rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:1rem}.p-4{padding:1.5rem}.p-5{padding:3rem}.text-primary{color:#3498db}.text-secondary{color:#666}.text-success{color:#27ae60}.text-danger{color:#e74c3c}.text-warning{color:#f39c12}.bg-primary{background-color:#3498db}.bg-secondary{background-color:#f8f9fa}.bg-success{background-color:#27ae60}.bg-danger{background-color:#e74c3c}.bg-warning{background-color:#f39c12}.border{border:1px solid #e1e8ed}.border-primary{border:1px solid #3498db}.border-secondary{border:1px solid #e1e8ed}.border-radius{border-radius:8px}.border-radius-lg{border-radius:12px}.border-radius-xl{border-radius:20px}.shadow-sm{box-shadow:0 2px 4px #0000001a}.shadow{box-shadow:0 4px 6px #0000001a}.shadow-lg{box-shadow:0 10px 15px #0000001a}.shadow-xl{box-shadow:0 20px 25px #0000001a}.fade-in{animation:fadeIn .5s ease-in}.slide-in-up{animation:slideInUp .5s ease-out}.bounce-in{animation:bounceIn .6s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes bounceIn{0%{transform:scale(.3);opacity:0}50%{transform:scale(1.1);opacity:1}to{transform:scale(1);opacity:1}}.spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #3498db;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.container{padding:0 15px}.hide-mobile{display:none}}@media (min-width: 769px){.hide-desktop{display:none}}@media print{*{background:transparent!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}a,a:visited{text-decoration:underline}.no-print{display:none!important}}button:focus,input:focus,select:focus,textarea:focus,a:focus{outline:2px solid #3498db;outline-offset:2px}@media (prefers-contrast: high){*{border-color:#000!important}}@media (prefers-color-scheme: dark){body{background-color:var(--bg-primary);color:var(--text-secondary)}h1,h2,h3,h4,h5,h6{color:var(--text-primary)}p{color:var(--text-secondary)}a{color:var(--accent-primary)}a:hover{color:var(--accent-secondary)}button{background-color:var(--accent-primary);color:var(--text-primary);border:1px solid var(--border-primary)}button:hover:not(:disabled){background-color:var(--accent-secondary);box-shadow:0 4px 12px #60a5fa40}button:disabled{background-color:var(--bg-tertiary);color:var(--text-muted)}input,select,textarea{background-color:var(--bg-tertiary);color:var(--text-primary);border:2px solid var(--border-primary)}input:focus,select:focus,textarea:focus{background-color:var(--bg-secondary);border-color:var(--accent-primary);box-shadow:0 0 0 3px #60a5fa40}input::placeholder,textarea::placeholder{color:var(--text-muted)}.bg-primary{background-color:var(--accent-primary)}.bg-secondary{background-color:var(--bg-secondary)}.bg-success{background-color:#22c55e}.bg-danger{background-color:#ef4444}.bg-warning{background-color:#f59e0b}.text-primary{color:var(--accent-primary)}.text-secondary{color:var(--text-muted)}.text-success{color:#4ade80}.text-danger{color:#f87171}.text-warning{color:#fbbf24}.border{border-color:var(--border-primary)}.border-primary{border-color:var(--accent-primary)}.border-secondary{border-color:var(--border-secondary)}.shadow-sm{box-shadow:0 2px 4px #0000004d}.shadow{box-shadow:0 4px 6px #0000004d}.shadow-lg{box-shadow:0 10px 15px #0000004d}.shadow-xl{box-shadow:0 20px 25px #0000004d}.spinner{border-color:var(--bg-tertiary);border-top-color:var(--accent-primary)}button:focus,input:focus,select:focus,textarea:focus,a:focus{outline-color:var(--accent-primary);box-shadow:0 0 0 3px #60a5fa40}@media (min-width: 1024px){body{background:linear-gradient(135deg,#0f172a,#1e293b)}.container{background:#1e293b4d;border-radius:12px;backdrop-filter:blur(10px);box-shadow:0 8px 32px #0000004d;margin-top:20px;margin-bottom:20px;padding:30px 40px}h1{background:linear-gradient(135deg,#fff,#cbd5e1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 2px 4px rgba(0,0,0,.3)}h2,h3{color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.3)}p{color:#f1f5f9;line-height:1.7}button{backdrop-filter:blur(10px);border:1px solid rgba(96,165,250,.3)}button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 25px #60a5fa66}section{background:#1e293b80;border-radius:16px;padding:40px;margin:30px 0;border:1px solid rgba(71,85,105,.3);backdrop-filter:blur(10px)}}@media (min-width: 1440px){.container{max-width:1400px;padding:0 40px}section{padding:120px 0}h1{font-size:3.5rem}h2{font-size:2.5rem}p{font-size:1.2rem}}@media (min-width: 1024px){body.light-mode{background:#f8fafc!important;background-color:#f8fafc!important;background-image:none!important}body.light-mode .container{background:transparent!important;background-color:transparent!important;backdrop-filter:none!important;box-shadow:none!important;border-radius:0!important;padding:0 20px!important;max-width:1200px!important;margin:0 auto!important}body.light-mode h1{background:none!important;-webkit-background-clip:unset!important;-webkit-text-fill-color:#1f2937!important;background-clip:unset!important;text-shadow:none!important;color:#1f2937!important}body.light-mode h2,body.light-mode h3{color:#1f2937!important;text-shadow:none!important}body.light-mode p{color:#4b5563!important;line-height:1.6!important}body.light-mode button{backdrop-filter:none!important;border:1px solid #2563eb!important;background-color:#2563eb!important}body.light-mode button:hover:not(:disabled){transform:translateY(-1px)!important;box-shadow:0 8px 25px #2563eb40!important}body.light-mode section{background:#fff!important;background-color:#fff!important;border-radius:16px!important;padding:40px!important;margin:30px 0!important;border:1px solid #e5e7eb!important;backdrop-filter:none!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f!important}}}body.light-mode{background-color:#f8fafc;color:#1f2937}@media (min-width: 769px){body.light-mode{padding-top:70px}}body.light-mode h1,body.light-mode h2,body.light-mode h3,body.light-mode h4,body.light-mode h5,body.light-mode h6{color:#1f2937;text-shadow:none}@media (max-width: 768px){body.light-mode h2,body.light-mode .hero h2,body.light-mode .gallery-hero h2,body.light-mode .hero-content h2,body.light-mode .carousel-section h2,body.light-mode .features h2,body.light-mode .details-content h2,body.light-mode .gallery-header h2,body.light-mode .featured-attractions h2,body.light-mode .attractions-grid h2,body.light-mode .planning-section h2,body.light-mode .cta-content h2,body.light-mode .story-content h2,body.light-mode .hosts-section h2,body.light-mode .location-section h2,body.light-mode .contact-info h2,body.light-mode .regulations-section h2,body.light-mode .social-section h2,body.light-mode .legal-header h2,body.light-mode .legal-section h2,body.light-mode .reservation-header h2{color:#111827!important;text-shadow:none!important;font-weight:700!important}body.light-mode .hero h2,body.light-mode .gallery-hero h2,body.light-mode .hero-content h2{color:#fff!important;text-shadow:2px 2px 6px rgba(0,0,0,.8)!important;font-weight:600!important}}@media (max-width: 575.98px){body.light-mode h2,body.light-mode .carousel-section h2,body.light-mode .features h2,body.light-mode .details-content h2,body.light-mode .gallery-header h2,body.light-mode .featured-attractions h2,body.light-mode .attractions-grid h2,body.light-mode .planning-section h2,body.light-mode .cta-content h2,body.light-mode .story-content h2,body.light-mode .hosts-section h2,body.light-mode .location-section h2,body.light-mode .contact-info h2,body.light-mode .regulations-section h2,body.light-mode .social-section h2{color:#111827!important;text-shadow:none!important;font-weight:700!important;font-size:clamp(1.8rem,4vw,2.2rem)!important}body.light-mode .hero h2,body.light-mode .gallery-hero h2,body.light-mode .hero-content h2{color:#fff!important;text-shadow:3px 3px 8px rgba(0,0,0,.9)!important;font-weight:600!important}}@media (max-width: 479.98px){body.light-mode h2,body.light-mode .carousel-section h2,body.light-mode .features h2,body.light-mode .details-content h2,body.light-mode .gallery-header h2,body.light-mode .featured-attractions h2,body.light-mode .attractions-grid h2,body.light-mode .planning-section h2,body.light-mode .cta-content h2,body.light-mode .story-content h2,body.light-mode .hosts-section h2,body.light-mode .location-section h2,body.light-mode .contact-info h2,body.light-mode .regulations-section h2,body.light-mode .social-section h2{color:#111827!important;text-shadow:none!important;font-weight:700!important;font-size:clamp(1.6rem,4.5vw,2rem)!important}body.light-mode .hero h2,body.light-mode .gallery-hero h2,body.light-mode .hero-content h2{color:#fff!important;text-shadow:3px 3px 8px rgba(0,0,0,.9),0 0 10px rgba(0,0,0,.7)!important;font-weight:600!important}}body.light-mode p{color:#4b5563}body.light-mode a{color:#2563eb}body.light-mode a:hover{color:#1d4ed8}body.light-mode button{background-color:#2563eb;color:#fff;border:1px solid #2563eb}body.light-mode button:hover:not(:disabled){background-color:#1d4ed8;box-shadow:0 4px 12px #2563eb40}body.light-mode button:disabled{background-color:#e5e7eb;color:#9ca3af}body.light-mode input,body.light-mode select,body.light-mode textarea{background-color:#fff;color:#1f2937;border:1px solid #d1d5db}body.light-mode input:focus,body.light-mode select:focus,body.light-mode textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}body.light-mode input::placeholder,body.light-mode textarea::placeholder{color:#9ca3af}body.light-mode .bg-primary{background-color:#2563eb}body.light-mode .bg-secondary{background-color:#f8fafc}body.light-mode .bg-success{background-color:#10b981}body.light-mode .bg-danger{background-color:#ef4444}body.light-mode .bg-warning{background-color:#f59e0b}body.light-mode .text-primary{color:#2563eb}body.light-mode .text-secondary{color:#6b7280}body.light-mode .text-success{color:#10b981}body.light-mode .text-danger{color:#ef4444}body.light-mode .text-warning{color:#f59e0b}body.light-mode .border{border-color:#e5e7eb}body.light-mode .border-primary{border-color:#2563eb}body.light-mode .border-secondary{border-color:#d1d5db}body.light-mode .shadow-sm{box-shadow:0 2px 4px #0000001a}body.light-mode .shadow{box-shadow:0 4px 6px #0000001a}body.light-mode .shadow-lg{box-shadow:0 10px 15px #0000001a}body.light-mode .shadow-xl{box-shadow:0 20px 25px #0000001a}@supports (-webkit-touch-callout: none){h1,h2,h3,h4,h5,h6{hyphens:none!important;-webkit-hyphens:none!important;word-break:keep-all!important;overflow-wrap:break-word!important;word-wrap:break-word!important}.hero h1,.hero h2,.hero p,.section-title,.card-title,.modal-title,.error-title,.success-title{hyphens:none!important;-webkit-hyphens:none!important;word-break:keep-all!important;overflow-wrap:break-word!important;word-wrap:break-word!important;white-space:normal!important}@media (max-width: 768px){h1,h2,h3,h4,h5,h6,.hero h1,.hero h2,.hero p,.section-title,.card-title,.modal-title,.error-title,.success-title{hyphens:none!important;-webkit-hyphens:none!important;word-break:keep-all!important;overflow-wrap:break-word!important;word-wrap:break-word!important;white-space:normal!important}}}*{box-sizing:border-box}html,body{overflow-x:hidden;width:100%}@supports (-webkit-touch-callout: none){.booking-page{min-height:-webkit-fill-available}input[type=text],input[type=email],input[type=tel],input[type=number],input[type=date],select,textarea{font-size:16px!important;-webkit-appearance:none;border-radius:0}select{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;padding-right:40px}}@media (hover: none) and (pointer: coarse){button,.btn,.payment-method,.rate-option,input[type=submit],input[type=button]{min-height:44px;min-width:44px;padding:12px 16px}.navbar-toggle,.close-btn,.icon-btn{min-width:44px;padding:10px;height:44px;align-items:center;display:flex}}@media (max-width: 768px){.container{padding-left:15px;padding-right:15px;max-width:100%}.booking-form,.booking-summary,.rate-option,.document-container{margin-left:10px;margin-right:10px;border-radius:12px}h1,h2,h3,h4,h5,h6{line-height:1.2;word-wrap:break-word;hyphens:auto}.form-group{margin-bottom:18px}.form-group label{font-size:14px;margin-bottom:6px;display:block}.payment-methods{gap:12px}.payment-method{padding:16px;border-radius:10px;min-height:60px;display:flex;align-items:center}.payment-method span{font-size:15px;line-height:1.3}.booking-progress{overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.booking-progress::-webkit-scrollbar{display:none}.form-section{margin-bottom:25px;padding-bottom:20px;border-bottom:1px solid #f0f0f0}.form-section:last-child{border-bottom:none}.modal:not(.booking-modal),.overlay{padding:20px}.modal-content:not(.booking-modal .modal-content){max-width:calc(100vw - 40px);max-height:calc(100vh - 40px);overflow-y:auto}}@media (max-width: 480px){.container{padding-left:10px;padding-right:10px}.booking-form,.booking-summary{margin-left:5px;margin-right:5px;padding:16px}.form-group{margin-bottom:16px}.form-row{gap:12px}.booking-header h1{font-size:1.5rem;line-height:1.2;margin-bottom:15px}.form-section h3{font-size:1.1rem;margin-bottom:12px}.payment-method{padding:14px;min-height:54px}.payment-method span{font-size:14px}button,.btn{font-size:15px;padding:14px 18px;border-radius:8px}.summary-row{font-size:14px;padding:10px 0}.total-price{font-size:1.1rem}}@media (max-width: 768px) and (orientation: landscape){.booking-page{padding-top:20px;padding-bottom:40px}.booking-header{margin-bottom:30px}.booking-header h1{font-size:1.6rem;margin-bottom:10px}.booking-progress{margin:15px 0;padding:15px 10px}.progress-step{padding:10px}}@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 192dpi){.booking-form,.booking-summary,.payment-method,.rate-option{border-width:.5px}}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-color-scheme: dark){@media (max-width: 768px){.booking-form,.booking-summary{background:#1e293b;color:#fff;border:1px solid #475569}.form-group label{color:#f1f5f9;font-weight:600}.form-group input,.form-group select,.form-group textarea{background:#334155;color:#fff;border:2px solid #475569;caret-color:#60a5fa}.form-group input::placeholder,.form-group textarea::placeholder{color:#94a3b8}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{background:#1e293b;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f640}.payment-method{background:#334155;border:2px solid #475569;color:#fff}.payment-method:hover{background:#1e293b;border-color:#3b82f6}.payment-method.selected{background:#3b82f61a;border-color:#3b82f6;color:#60a5fa}.form-section{border-bottom-color:#475569}.form-section h3{color:#fff;border-bottom-color:#475569}.submit-button,.btn-check-availability,.btn-proceed,.btn-pay-deposit,.btn-complete-booking{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff}.submit-button:hover:not(:disabled),.btn-check-availability:hover:not(:disabled),.btn-proceed:hover:not(:disabled),.btn-pay-deposit:hover:not(:disabled),.btn-complete-booking:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1e40af);box-shadow:0 4px 12px #3b82f666}.error-message{background:#ef44441a;border:1px solid #ef4444;color:#f87171}.charges-summary{background:#1e293b;border:2px solid #475569;color:#e2e8f0}.charges-summary h3{color:#fff;border-bottom-color:#475569}.charge-line.total-line{background:#3b82f61a;border-color:#475569}.summary-row{color:#e2e8f0}.total-price{color:#4ade80}}}@media (max-width: 768px){.sticky,.fixed{position:relative!important}.booking-summary{position:relative;top:auto;width:100%}}@supports (-webkit-touch-callout: none){h1,h2,h3,h4,h5,h6{hyphens:none!important;-webkit-hyphens:none!important;word-break:keep-all!important;overflow-wrap:break-word!important;word-wrap:break-word!important}@media (max-width: 768px){h1,h2,h3,h4,h5,h6,.hero h1,.hero h2,.hero p,.section-title,.card-title,.modal-title,.error-title,.success-title,.story-content h2,.booking-form h2,.gallery-hero h2,.attractions-hero h2,.contact-hero h2,.btn,.button,.cta-button,.submit-btn,.btn-check-availability{hyphens:none!important;-webkit-hyphens:none!important;word-break:keep-all!important;overflow-wrap:break-word!important;word-wrap:break-word!important;white-space:normal!important}}}
