:root{--primary:#1d1d1f;--accent:#8e8e93;--gold:#d4af37;--bg:#f5f5f7;--glass:#ffffffe0;--border:#00000014;--shadow:0 15px 35px #00000012;--radius:30px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;min-height:100%;overflow-x:hidden}body{background-color:var(--bg);color:var(--primary);-webkit-font-smoothing:antialiased;font-family:Montserrat,sans-serif;line-height:1.6}@keyframes pageIn{0%{opacity:0;filter:blur(4px);transform:translateY(18px)scale(.99)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.reveal{opacity:0;transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1);transform:translateY(22px)}.reveal.revealed{opacity:1;transform:translateY(0)}[data-reveal-list]>*{opacity:0;transition:opacity .55s cubic-bezier(.16,1,.3,1),transform .55s cubic-bezier(.16,1,.3,1);transform:translateY(22px)}[data-reveal-list]>.revealed{opacity:1;transform:translateY(0)}.page{max-width:960px;margin:0 auto;padding:24px 20px 140px;animation:.55s cubic-bezier(.16,1,.3,1) both pageIn}h1{letter-spacing:-1.5px;color:var(--primary);margin-bottom:8px;font-size:clamp(2rem,7vw,3.5rem);font-weight:600;line-height:1.1}.subtitle{color:var(--accent);margin-bottom:35px;font-size:1rem;font-weight:300}.back-btn{color:var(--accent);cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;margin-bottom:28px;padding:0;font-family:inherit;font-size:.9rem;text-decoration:none;transition:opacity .2s;display:inline-flex}.back-btn:hover{opacity:.6}.menu-toggle{border:1px solid var(--border);width:56px;height:56px;box-shadow:var(--shadow);z-index:3000;cursor:pointer;color:var(--primary);background:#fff;border-radius:50%;justify-content:center;align-items:center;font-size:1.1rem;transition:transform .35s cubic-bezier(.16,1,.3,1),background .2s;display:flex;position:fixed;bottom:30px;right:30px}.menu-toggle:hover{transform:scale(1.08)}.menu-toggle:active{transition-duration:80ms;transform:scale(.92)}nav.site-nav{-webkit-backdrop-filter:blur(28px)saturate(180%);border:1px solid var(--border);z-index:2000;opacity:0;visibility:hidden;background:#ffffffeb;border-radius:28px;flex-direction:column;align-items:center;gap:4px;width:80px;padding:10px 8px;transition:opacity .35s cubic-bezier(.16,1,.3,1),transform .35s cubic-bezier(.16,1,.3,1),visibility .35s;display:flex;position:fixed;bottom:100px;right:30px;transform:translateY(14px)scale(.93);box-shadow:0 24px 60px #0000001f,inset 0 1px #fffc}nav.site-nav.open{opacity:1;visibility:visible;transform:translateY(0)scale(1)}.nav-item{color:var(--accent);border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:60px;height:52px;font-size:1.15rem;text-decoration:none;transition:color .2s,background .2s,transform .3s cubic-bezier(.16,1,.3,1);display:flex}.nav-item i{font-size:1.1rem}.nav-label{letter-spacing:.5px;text-transform:uppercase;opacity:.7;font-size:.55rem;font-weight:600}.nav-item:hover{color:var(--primary);background:#0000000d;transform:scale(1.05)}.nav-item.active{color:var(--gold);background:#d4af371a}.nav-item.active .nav-label{opacity:1}.gallery-grid img{aspect-ratio:4/3;object-fit:cover;border:1px solid var(--border);cursor:zoom-in;border-radius:22px;width:100%;transition:transform .5s cubic-bezier(.16,1,.3,1),box-shadow .5s cubic-bezier(.16,1,.3,1);display:block;box-shadow:0 4px 15px #0000000d}.gallery-grid img:hover{transform:scale(1.03);box-shadow:0 16px 40px #00000021}.lightbox-overlay{z-index:9999;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#000000ed;justify-content:center;align-items:center;animation:.3s both fadeUp;display:flex;position:fixed;inset:0}.lightbox-overlay img{object-fit:contain;border-radius:18px;max-width:92vw;max-height:88vh;box-shadow:0 30px 60px #0009}.lightbox-close{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10000;background:#ffffff24;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.3rem;transition:background .2s;display:flex;position:fixed;top:28px;right:24px}.lightbox-close:hover{background:#ffffff40}.lightbox-counter{color:#fff;letter-spacing:1px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10000;background:#ffffff24;border:1px solid #fff3;border-radius:20px;padding:6px 16px;font-size:.8rem;font-weight:600;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}.split-card{border-radius:var(--radius);color:inherit;border:1px solid var(--border);box-shadow:var(--shadow);will-change:transform;background:#fff;height:200px;text-decoration:none;transition:transform .45s cubic-bezier(.16,1,.3,1),box-shadow .45s cubic-bezier(.16,1,.3,1);display:flex;overflow:hidden}.split-card.reverse{flex-direction:row-reverse}.split-card:hover{transform:translateY(-6px);box-shadow:0 30px 60px #0000001f}.split-card:active{transition-duration:.1s;transform:scale(.97)}.card-media{flex-shrink:0;width:40%;overflow:hidden}.card-media img{object-fit:cover;width:100%;height:100%;transition:transform .6s cubic-bezier(.16,1,.3,1)}.split-card:hover .card-media img{transform:scale(1.08)}.card-media.icon-bg{color:#fff;justify-content:center;align-items:center;font-size:2.5rem;display:flex}.card-content{flex-direction:column;flex:1;justify-content:center;padding:22px;display:flex;position:relative}.card-label{color:var(--accent);letter-spacing:2px;text-transform:uppercase;margin-bottom:7px;font-size:9px;font-weight:700}.card-content h2{margin-bottom:6px;font-size:1.3rem;font-weight:600}.card-content p{color:var(--accent);font-size:.83rem;line-height:1.5}.card-arrow{color:var(--primary);opacity:.2;font-size:.85rem;position:absolute;bottom:18px;right:20px}.chapter-card{aspect-ratio:16/9;border:1px solid var(--border);width:100%;box-shadow:var(--shadow);cursor:pointer;will-change:transform;border-radius:22px;text-decoration:none;transition:transform .5s cubic-bezier(.16,1,.3,1),box-shadow .5s cubic-bezier(.16,1,.3,1);display:block;position:relative;overflow:hidden}.chapter-card:hover{transform:translateY(-7px)scale(1.01);box-shadow:0 30px 55px #00000024}.chapter-card:active{transition-duration:.1s;transform:scale(.98)}.chapter-card img{object-fit:cover;width:100%;height:100%;transition:transform .7s cubic-bezier(.16,1,.3,1)}.chapter-card:hover img{transform:scale(1.08)}.chapter-overlay{color:#fff;background:linear-gradient(#0000,#000000bf);padding:20px 22px;position:absolute;inset:auto 0 0}.chapter-overlay h2{font-size:1.2rem;font-weight:600}.rezerva-btn{background:var(--gold);color:#fff;letter-spacing:.3px;z-index:3000;border-radius:30px;align-items:center;gap:9px;height:60px;padding:0 22px;font-size:.88rem;font-weight:600;text-decoration:none;transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;bottom:30px;right:100px;box-shadow:0 8px 24px #d4af3766}.rezerva-btn:hover{transform:translateY(-4px)scale(1.03);box-shadow:0 18px 36px #d4af378c}.rezerva-btn:active{transition-duration:80ms;transform:scale(.93)}.rezerva-btn i{font-size:1.05rem}.booking-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.booking-field{flex-direction:column;gap:6px;display:flex}.booking-field label{text-transform:uppercase;letter-spacing:1.5px;color:var(--accent);font-size:.72rem;font-weight:700}.booking-field input{border:1.5px solid var(--border);width:100%;color:var(--primary);appearance:none;background:#fff;border-radius:18px;outline:none;padding:14px 16px;font-family:inherit;font-size:.95rem;transition:border-color .2s,box-shadow .2s}.booking-field input:focus{border-color:var(--gold);box-shadow:0 0 0 3px #d4af3726}.nights-badge{background:var(--primary);color:#fff;border-radius:18px;align-items:center;gap:8px;padding:12px 18px;font-size:.9rem;font-weight:600;display:flex}.book-submit{color:#fff;cursor:pointer;background:#25d366;border:none;border-radius:20px;justify-content:center;align-items:center;gap:10px;width:100%;margin-top:6px;padding:18px;font-family:inherit;font-size:1rem;font-weight:700;transition:opacity .2s,transform .2s;display:flex;box-shadow:0 10px 28px #25d36659}.book-submit:hover:not(:disabled){opacity:.9;transform:translateY(-2px)}.book-submit:active:not(:disabled){transform:scale(.97)}.book-submit:disabled{opacity:.4;cursor:default}.booking-success{text-align:center;border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;flex-direction:column;align-items:center;gap:14px;padding:40px 24px;animation:.6s cubic-bezier(.16,1,.3,1) both pageIn;display:flex}.booking-success h2{font-size:1.5rem;font-weight:600}.booking-success p{color:var(--accent);font-size:.9rem;line-height:1.6}.booking-success .book-submit{width:100%}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.img-skeleton{border-radius:inherit;background:linear-gradient(90deg,#e8e8e8 25%,#f2f2f2 50%,#e8e8e8 75%) 0 0/800px 100%;animation:1.4s linear infinite shimmer}.lang-pill{z-index:1000;border:1px solid var(--border);letter-spacing:2px;cursor:pointer;color:var(--primary);background:#fff;border-radius:20px;padding:7px 14px;font-size:.72rem;font-weight:700;transition:background .2s,color .2s,transform .2s;position:fixed;bottom:28px;left:24px;box-shadow:0 4px 16px #00000014}.lang-pill:hover{background:var(--primary);color:#fff;transform:translateY(-1px)}.description-layout{flex-direction:column;align-items:center;gap:28px;display:flex}.description-img{object-fit:cover;border:4px solid #fff;border-radius:50%;flex-shrink:0;width:220px;height:220px;display:block;box-shadow:0 15px 35px #0000001a}.location-map{border:1px solid var(--border);width:100%;height:380px;box-shadow:var(--shadow);background:#eee;border-radius:30px;margin-bottom:24px;overflow:hidden}.nav-btn{background:var(--primary);color:#fff;border-radius:25px;justify-content:center;align-items:center;gap:12px;padding:20px;font-size:1rem;font-weight:600;text-decoration:none;transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s cubic-bezier(.16,1,.3,1);display:flex;box-shadow:0 10px 25px #00000026}.nav-btn:hover{transform:translateY(-3px);box-shadow:0 18px 35px #0003}.dest-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:28px;display:grid}.dest-card{border:1px solid var(--border);color:inherit;box-shadow:var(--shadow);will-change:transform;background:#fff;border-radius:24px;flex-direction:column;text-decoration:none;transition:transform .45s cubic-bezier(.16,1,.3,1),box-shadow .45s cubic-bezier(.16,1,.3,1);display:flex;overflow:hidden}.dest-card:hover{transform:translateY(-7px);box-shadow:0 28px 55px #0000001c}.dest-card:active{transition-duration:.1s;transform:scale(.98)}.dest-img{height:220px;overflow:hidden}.dest-img img{object-fit:cover;width:100%;height:100%;transition:transform .6s cubic-bezier(.16,1,.3,1);display:block}.dest-card:hover .dest-img img{transform:scale(1.07)}.dest-body{flex-direction:column;flex-grow:1;padding:24px;display:flex}.dest-tag{letter-spacing:2px;color:var(--gold);text-transform:uppercase;margin-bottom:10px;font-size:.68rem;font-weight:700;display:block}.dest-title{margin-bottom:10px;font-family:Playfair Display,serif;font-size:1.5rem}.dest-desc{color:#666;flex-grow:1;margin-bottom:16px;font-size:.87rem;font-weight:300;line-height:1.7}.dest-link{color:var(--gold);text-transform:uppercase;align-items:center;gap:7px;font-size:.72rem;font-weight:700;display:flex}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;display:grid}.camera-grid{flex-direction:column;gap:28px;display:flex}.camera-media-box{border:1px solid var(--border);aspect-ratio:4/5;border-radius:35px;overflow:hidden;box-shadow:0 15px 40px #0000001a}@media (width>=800px){.page{padding:44px 40px 140px}.split-card{height:260px}.split-card.reverse{flex-direction:row}.camera-grid{flex-direction:row;align-items:stretch}.camera-media-box{aspect-ratio:3/4;flex:1;max-height:70vh}.description-layout{flex-direction:row;align-items:flex-start}.description-img{width:260px;height:260px;margin:0}.location-map{height:480px}.dest-grid{grid-template-columns:repeat(2,1fr)}.dest-img{height:260px}.gallery-grid{grid-template-columns:repeat(3,1fr)}}
