body{margin:0;padding:0;font-family:"Poppins",sans-serif;background:#000;color:#fff;text-align:center}
body::before{content:"";position:fixed;inset:0;background:linear-gradient(135deg,#090909,#0f0f0f,#1b1b1b,#0b0b0b);background-size:400% 400%;animation:bgMove 14s ease infinite;z-index:-2}
@keyframes bgMove{0%{background-position:0 50%}50%{background-position:100% 50%}100%{background-position:0 50%}}
.overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);backdrop-filter:blur(5px);z-index:-1}
nav{display:flex;justify-content:center;position:relative;margin-top:20px;align-items:center}
nav .links{display:flex;gap:45px}
nav .links a{color:#fff;text-decoration:none;font-size:18px;transition:.2s}
nav .links a:hover{opacity:.6}
.languages{position:absolute;right:120px;top:0;display:flex;align-items:center}
.languages img{width:28px;margin-left:10px;cursor:pointer}
.hamburger{display:none;position:absolute;right:20px;top:-5px;cursor:pointer}
.hamburger div{width:28px;height:3px;background:#fff;margin:5px 0}
.mobile-menu{display:none;position:fixed;inset:0;background:rgba(0,0,0,.98);padding-top:90px;z-index:1000}
.mobile-menu.active{display:block}
.close-mobile{font-size:34px;position:absolute;right:25px;top:20px}
.mobile-menu a{color:#fff;text-decoration:none;display:block;padding:18px;font-size:22px}
.lang-mobile img{width:32px;margin:10px}
@media(max-width:820px){nav .links{display:none}.languages{display:none}.hamburger{display:block}}
.logo{width:340px;margin-top:25px}
.line{width:260px;height:2px;margin:20px auto;background:linear-gradient(to right,#666,#fff,#666)}
.slider{width:85%;max-width:1600px;height:600px;margin:30px auto;overflow:hidden;border-radius:14px}
.slider img{width:100%;height:600px;object-fit:cover;display:none}
.slider img.active{display:block}
@media(max-width:780px){.slider,.slider img{height:270px}}
.hero-text{margin-top:25px;font-size:22px;line-height:1.8}
.section-title{margin-top:50px;font-size:32px}
.services{width:85%;max-width:1100px;margin:20px auto}
.service-box{background:rgba(255,255,255,.05);padding:18px;margin:14px 0;border-radius:10px}
.service-box img{width:22px;margin-right:6px}
.notice{margin-top:40px;font-size:18px;opacity:.9}
.booking{margin-top:50px}
form{width:90%;max-width:600px;margin:auto;display:flex;flex-direction:column;gap:15px}
input,select,textarea{background:#000;color:#fff;border:1px solid #666;border-radius:8px;padding:14px;font-size:17px}
select option{background:#000;color:#fff}
textarea{height:120px}
.btn{padding:14px;border-radius:30px;background:#fff;color:#000;font-size:18px;font-weight:600;cursor:pointer;transition:.25s}
.btn:hover{transform:scale(1.07)}
.info-box{margin-top:50px;font-size:17px;line-height:1.7}
.info-box img.i{width:22px;margin-right:8px;transform:translateY(4px)}
.socials img{width:40px;margin:8px;filter:brightness(0) invert(1)}
.copy{margin-top:30px;font-size:14px;opacity:.7;margin-bottom:50px}
.gallery-grid{width:90%;max-width:1400px;margin:40px auto;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.gallery-grid img{width:100%;height:220px;object-fit:cover;border-radius:10px;cursor:pointer;transition:.3s}
.gallery-grid img:hover{transform:scale(1.03);box-shadow:0 0 12px rgba(255,255,255,.3)}
@media(max-width:900px){.gallery-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.gallery-grid{grid-template-columns:1fr}}
.lightbox{display:none;position:fixed;inset:0;background:rgba(0,0,0,.9);z-index:2000;justify-content:center;align-items:center}
.lightbox-img{max-width:90%;max-height:90%;border-radius:10px}
.close,.prev,.next{position:absolute;font-size:40px;cursor:pointer;user-select:none;color:#fff;font-weight:300}
.close{top:25px;right:40px}
.prev{top:50%;left:40px;transform:translateY(-50%)}
.next{top:50%;right:40px;transform:translateY(-50%)}
.close:hover,.prev:hover,.next:hover{opacity:.6}
