:root{--bg-darkest:#08080a;--bg-primary:#0e0e11;--bg-secondary:#1a1a1f;--bg-card:rgba(30, 30, 35, 0.4);--bg-input:rgba(18, 18, 22, 0.7);--accent:#a0aec0;--accent-rgb:160, 174, 192;--accent-hover:#cbd5e0;--accent-soft:rgba(160, 174, 192, 0.08);--accent-purple:#4a5568;--accent-purple-rgb:74, 85, 104;--text-primary:#e2e8f0;--text-secondary:#94a3b8;--text-muted:#525f7a;--border-glass:rgba(255, 255, 255, 0.04);--border-glass-focus:rgba(160, 174, 192, 0.25);--shadow-glow:0 0 20px rgba(160, 174, 192, 0.05);--shadow-card:0 10px 30px rgba(0, 0, 0, 0.7);--font-serif:'Playfair Display', Georgia, serif;--font-sans:'Montserrat', Helvetica, Arial, sans-serif;--glass-bg:rgba(13, 17, 26, 0.7);--glass-blur:blur(16px);--transition-smooth:all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);--transition-fast:all 0.2s ease}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px;background-color:var(--bg-darkest)}body{font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);line-height:1.6;overflow-x:hidden;position:relative;min-height:100vh;display:flex;flex-direction:column}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-darkest)}::-webkit-scrollbar-thumb{background:#1f2533;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--accent)}.ambient-light{position:fixed;border-radius:50%;pointer-events:none;z-index:-1;filter:blur(130px);opacity:.35}.light-1{width:400px;height:400px;background:radial-gradient(circle,var(--accent) 0%,#fff0 70%);top:-10%;right:-5%}.light-2{width:500px;height:500px;background:radial-gradient(circle,var(--accent-purple) 0%,#fff0 70%);bottom:10%;left:-10%}a{color:inherit;text-decoration:none;transition:var(--transition-fast)}button,input,select,textarea{font-family:inherit;font-size:inherit;background:none;border:none;color:inherit}button{cursor:pointer}img{max-width:100%;display:block;object-fit:cover}.app-header{position:fixed;top:0;left:0;width:100%;z-index:1000;background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-bottom:1px solid var(--border-glass);transition:var(--transition-smooth)}.header-container{max-width:1400px;margin:0 auto;padding:1.25rem 2rem;display:flex;justify-content:space-between;align-items:center}.logo{display:flex;align-items:center;gap:.75rem;font-size:1.5rem;font-weight:800;letter-spacing:.2rem;color:var(--text-primary)}.logo-symbol{color:var(--accent);text-shadow:0 0 10px rgb(255 255 255 / .4);font-size:1.3rem;animation:cameraPulse 3s infinite ease-in-out}.desktop-nav{display:flex;align-items:center;gap:2.5rem}.nav-link{font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.1rem;color:var(--text-secondary);position:relative;padding:.5rem 0}.nav-link::after{content:'';position:absolute;bottom:0;left:0;width:0;height:2px;background:linear-gradient(90deg,var(--accent),var(--accent-purple));transition:var(--transition-smooth)}.nav-link:hover{color:var(--text-primary)}.nav-link:hover::after,.nav-link.active::after{width:100%}.nav-link.active{color:var(--text-primary)}.nav-btn{background:rgb(255 255 255 / .05);border:1px solid var(--accent);padding:.6rem 1.4rem;border-radius:0;box-shadow:var(--shadow-glow);transition:var(--transition-smooth)}.nav-btn:hover{background:#fff;color:var(--bg-primary);border-color:#fff0;box-shadow:0 0 25px rgb(255 255 255 / .3);transform:translateY(-2px)}.nav-btn::after{display:none}.burger-btn{display:none;flex-direction:column;justify-content:space-between;width:28px;height:20px;z-index:1100}.burger-line{width:100%;height:2px;background-color:var(--text-primary);border-radius:4px;transition:var(--transition-smooth);transform-origin:left center}.burger-btn.open .line-1{transform:rotate(45deg) translate(2px,-2px);background-color:var(--accent)}.burger-btn.open .line-2{opacity:0;width:0}.burger-btn.open .line-3{transform:rotate(-45deg) translate(2px,2px);background-color:var(--accent)}.mobile-menu{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgb(6 7 9 / .95);backdrop-filter:blur(25px);-webkit-backdrop-filter:blur(25px);z-index:999;display:flex;justify-content:center;align-items:center;opacity:0;pointer-events:none;transition:opacity 0.4s ease,transform 0.4s ease;transform:translateY(-10px)}.mobile-menu.open{opacity:1;pointer-events:auto;transform:translateY(0)}.mobile-nav{display:flex;flex-direction:column;align-items:center;gap:2rem}.mobile-link{font-size:1.4rem;font-weight:700;text-transform:uppercase;letter-spacing:.15rem;color:var(--text-secondary)}.mobile-link:hover,.mobile-link.active{color:var(--accent);text-shadow:0 0 10px rgb(255 255 255 / .3)}.mobile-btn{border:1px solid var(--accent);padding:.8rem 2rem;border-radius:0;color:var(--accent);font-size:1.1rem}.mobile-btn:hover{background:var(--accent);color:var(--bg-primary)}.page-loader{position:fixed;top:0;left:0;width:100%;height:100%;background-color:var(--bg-primary);z-index:2000;display:flex;justify-content:center;align-items:center;transition:opacity 0.5s ease,visibility 0.5s ease}.page-loader.fade-out{opacity:0;visibility:hidden;pointer-events:none}.loader-spinner{width:50px;height:50px;border:3px solid rgb(255 255 255 / .1);border-radius:50%;border-top-color:var(--accent);animation:spin 1s linear infinite;box-shadow:0 0 15px rgb(255 255 255 / .1)}#app-content{flex:1 0 auto;margin-top:80px;position:relative;min-height:calc(100vh - 80px - 150px)}.content-fade{animation:fadeInUp 0.7s cubic-bezier(.25,.8,.25,1) forwards}.section{padding:6rem 2rem;max-width:1400px;margin:0 auto;position:relative}.section-title{text-align:center;margin-bottom:4rem}.section-title h2{font-family:var(--font-serif);font-size:3rem;font-weight:400;letter-spacing:.05rem;margin-bottom:.5rem;background:linear-gradient(135deg,var(--text-primary) 30%,var(--text-secondary));-webkit-background-clip:text;-webkit-text-fill-color:#fff0}.section-title .subtitle{font-family:var(--font-sans);font-size:.85rem;font-weight:600;color:var(--accent);text-transform:uppercase;letter-spacing:.25rem}.glass-card{background:var(--bg-card);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-glass);border-radius:16px;padding:2.5rem;box-shadow:var(--shadow-card);transition:var(--transition-smooth)}.glass-card:hover{border-color:var(--border-glass-focus);box-shadow:0 15px 35px rgb(0 0 0 / .6),0 0 25px rgb(255 255 255 / .03)}.btn-primary,.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--font-sans);font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.1rem;padding:1rem 2.2rem;border-radius:0;transition:var(--transition-smooth)}.btn-primary{background:linear-gradient(135deg,var(--accent),var(--accent-purple));color:var(--bg-darkest);box-shadow:var(--shadow-glow)}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 0 30px rgb(255 255 255 / .25)}.btn-secondary{border:1px solid var(--border-glass);background:rgb(255 255 255 / .03);color:var(--text-primary)}.btn-secondary:hover{background:rgb(255 255 255 / .08);border-color:var(--text-secondary);transform:translateY(-2px)}.form-group{margin-bottom:1.5rem;display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1rem;color:var(--text-secondary)}.form-control{width:100%;padding:1rem 1.25rem;background-color:var(--bg-input);border:1px solid var(--border-glass);border-radius:8px;color:var(--text-primary);font-size:.95rem;transition:var(--transition-fast)}.form-control:focus{outline:none;border-color:var(--accent);box-shadow:0 0 15px rgb(255 255 255 / .1)}textarea.form-control{resize:vertical;min-height:120px}.btn-loader{display:none;width:20px;height:20px;border:2px solid var(--bg-darkest);border-top-color:#fff0;border-radius:50%;animation:spin 0.8s linear infinite}button.loading .btn-loader{display:inline-block}button.loading span{display:none}.hero-section{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:calc(100vh - 80px);padding:0;overflow:hidden;position:relative}.slider-container{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.slide{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;visibility:hidden;pointer-events:none;transition:opacity 1.2s ease-in-out,visibility 1.2s ease-in-out;z-index:1}.slide.active{opacity:1;visibility:visible;pointer-events:auto;z-index:2}.slide-img{width:100%;height:100%;object-fit:cover;transform:scale(1.05);transition:transform 7.5s ease-out}.slide.active .slide-img{transform:scale(1.15) translate(10px,-5px)}.slider-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle,rgb(0 0 0 / .3) 0%,rgb(6 7 9 / .6) 60%,rgb(6 7 9 / .9) 100%);z-index:3;pointer-events:none}.slide-img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transform:scale(1.05);transition:transform 7.5s ease-out;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.slide.active .slide-img{transform:scale(1.15) translate(10px,-5px)}.slide-content{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:4;text-align:center;width:90%;max-width:800px;pointer-events:auto}.hero-subtitle{font-size:.9rem;font-weight:700;letter-spacing:.4rem;color:var(--accent);text-transform:uppercase;margin-bottom:1.5rem}.hero-title{font-family:var(--font-serif);font-size:4.5rem;font-weight:400;line-height:1.15;margin-bottom:2rem;color:#fff}.hero-title span{font-style:italic;background:linear-gradient(135deg,var(--accent),var(--accent-purple));-webkit-background-clip:text;-webkit-text-fill-color:#fff0}.hero-actions{display:flex;gap:1.5rem;justify-content:center}.slide .hero-subtitle{transform:translateY(20px);opacity:0;transition:transform 0.8s cubic-bezier(.25,.8,.25,1),opacity 0.8s ease}.slide .hero-title{transform:translateY(30px);opacity:0;transition:transform 0.8s cubic-bezier(.25,.8,.25,1) 0.15s,opacity 0.8s ease 0.15s}.slide .hero-actions{transform:translateY(40px);opacity:0;transition:transform 0.8s cubic-bezier(.25,.8,.25,1) 0.3s,opacity 0.8s ease 0.3s}.slide.active .hero-subtitle,.slide.active .hero-title,.slide.active .hero-actions{transform:translateY(0);opacity:1}.slider-nav{position:absolute;bottom:2.5rem;display:flex;align-items:center;gap:2rem;z-index:5}.slider-arrow{width:50px;height:50px;border-radius:0;border:1px solid rgb(255 255 255 / .15);background:rgb(13 17 26 / .3);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);color:var(--text-primary);display:flex;justify-content:center;align-items:center;font-size:1.1rem;transition:var(--transition-smooth)}.slider-arrow:hover{background:var(--accent);color:var(--bg-primary);border-color:#fff0;box-shadow:var(--shadow-glow);transform:scale(1.05)}.slider-dots{display:flex;gap:.75rem}.slider-dot{width:8px;height:8px;border-radius:0;background:rgb(255 255 255 / .3);transition:var(--transition-smooth)}.slider-dot.active{background:var(--accent);width:24px;border-radius:0;box-shadow:0 0 10px rgb(255 255 255 / .3)}.about-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:4rem;align-items:center}.about-img-container{position:relative}.about-img-frame{position:relative;border-radius:16px;overflow:hidden;box-shadow:var(--shadow-card)}.about-img-frame::before{content:'';position:absolute;inset:0;border:2px solid var(--accent);margin:15px;border-radius:8px;pointer-events:none;z-index:2;opacity:.6}.about-img-container::after{content:'';position:absolute;top:-20px;left:-20px;width:100px;height:100px;border-top:3px solid var(--accent-purple);border-left:3px solid var(--accent-purple);pointer-events:none;z-index:-1}.about-text h3{font-family:var(--font-serif);font-size:2.2rem;font-weight:400;margin-bottom:1.5rem}.about-bio{color:var(--text-secondary);margin-bottom:2rem}.about-bio p{margin-bottom:1rem}.about-stats{display:flex;gap:3rem;margin-bottom:3rem}.stat-item{display:flex;flex-direction:column}.stat-number{font-family:var(--font-serif);font-size:2.5rem;color:var(--accent);line-height:1;margin-bottom:.25rem}.stat-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1rem;color:var(--text-muted)}.contact-container{margin-top:6rem;display:grid;grid-template-columns:1fr 1.5fr;gap:3rem}.contact-info{display:flex;flex-direction:column;gap:2rem}.contact-info-card{display:flex;gap:1.5rem;align-items:center}.contact-icon{width:50px;height:50px;border-radius:12px;background:var(--accent-soft);border:1px solid rgb(255 255 255 / .15);display:flex;justify-content:center;align-items:center;font-size:1.25rem;color:var(--accent)}.contact-details h4{font-size:.9rem;font-weight:700;text-transform:uppercase;letter-spacing:.05rem;color:var(--text-muted);margin-bottom:.25rem}.contact-details p{font-size:1.05rem;font-weight:600}.portfolio-filters{display:flex;justify-content:center;gap:1rem;margin-bottom:3rem;flex-wrap:wrap}.filter-btn{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.15rem;padding:.75rem 1.75rem;border-radius:50px;border:1px solid var(--border-glass);background:rgb(255 255 255 / .02);transition:var(--transition-smooth)}.filter-btn:hover{background:rgb(255 255 255 / .06);border-color:var(--text-secondary)}.filter-btn.active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);box-shadow:0 0 15px rgb(255 255 255 / .1)}.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2rem}.portfolio-item{position:relative;border-radius:12px;overflow:hidden;aspect-ratio:4/5;box-shadow:var(--shadow-card);cursor:pointer;border:1px solid var(--border-glass);transition:var(--transition-smooth)}.portfolio-item.hidden{display:none}.portfolio-img{width:100%;height:100%;object-fit:cover;transition:transform 0.6s cubic-bezier(.25,.8,.25,1)}.portfolio-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgb(6 7 9 / .9) 0%,rgb(6 7 9 / .4) 50%,#fff0 100%);display:flex;flex-direction:column;justify-content:flex-end;padding:2rem;opacity:0;transition:var(--transition-smooth);z-index:2}.portfolio-item:hover{transform:translateY(-5px);border-color:var(--border-glass-focus);box-shadow:0 15px 30px rgb(255 255 255 / .04),0 10px 20px rgb(0 0 0 / .6)}.portfolio-item:hover .portfolio-img{transform:scale(1.08)}.portfolio-item:hover .portfolio-overlay{opacity:1}.portfolio-cat{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.15rem;color:var(--accent);margin-bottom:.5rem}.portfolio-title{font-family:var(--font-serif);font-size:1.5rem;font-weight:400;margin-bottom:.5rem}.portfolio-action{font-size:.8rem;font-weight:600;display:flex;align-items:center;gap:.5rem;opacity:.8;transform:translateY(10px);transition:var(--transition-smooth)}.portfolio-item:hover .portfolio-action{transform:translateY(0)}.lightbox{position:fixed;inset:0;background:rgb(4 5 7 / .96);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);z-index:25000;display:flex;justify-content:center;align-items:center;opacity:0;pointer-events:none;transition:opacity 0.35s cubic-bezier(.25,1,.5,1);padding:1.5rem;box-sizing:border-box}.lightbox.open{opacity:1;pointer-events:auto}.lightbox-content{position:relative;width:92vw;max-width:1400px;height:88vh;max-height:88vh;display:flex;flex-direction:column;align-items:center;justify-content:center;margin:auto;box-sizing:border-box}.lightbox-img{max-width:100%;max-height:calc(88vh - 7rem);width:auto;height:auto;object-fit:contain;border-radius:0;box-shadow:0 30px 80px rgb(0 0 0 / .95);border:1px solid rgb(255 255 255 / .12);transition:max-height 0.2s ease,max-width 0.2s ease}.lightbox-caption{margin-top:1.25rem;text-align:center;flex-shrink:0}.lightbox-caption h3{font-family:var(--font-serif);font-size:1.5rem;font-weight:400;margin-bottom:.25rem}.lightbox-caption p{font-size:.8rem;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:.1rem}.lightbox-close{position:absolute;top:1.5rem;right:1.5rem;width:50px;height:50px;font-size:1.5rem;border-radius:0;background:rgb(255 255 255 / .1);display:flex;justify-content:center;align-items:center;color:var(--text-primary);border:1px solid rgb(255 255 255 / .15);transition:var(--transition-smooth);z-index:25100;cursor:pointer}.lightbox-close:hover{background:var(--accent);color:var(--bg-primary);border-color:#fff0;transform:rotate(90deg)}.lightbox-arrow{position:absolute;top:50%;transform:translateY(-50%);width:60px;height:60px;border-radius:0;background:rgb(15 18 25 / .75);border:1px solid rgb(255 255 255 / .25);color:var(--text-primary);font-size:1.5rem;display:flex;justify-content:center;align-items:center;transition:var(--transition-smooth);z-index:25100;cursor:pointer}.lightbox-arrow:hover{background:var(--accent);color:var(--bg-primary);border-color:#fff0}.lightbox-prev{left:1.5rem}.lightbox-next{right:1.5rem}.client-galleries-section{text-align:center}.passcode-screen{padding:2rem;max-width:500px;margin:0 auto}.passcode-container{display:flex;flex-direction:column;align-items:center}.passcode-form{width:100%;margin:2rem 0}.input-group{display:flex;gap:1rem;margin-bottom:1rem}.passcode-input{flex:1;padding:.8rem 1rem;border-radius:var(--border-radius);border:2px solid rgb(255 255 255 / .1);background:rgb(255 255 255 / .05);color:#fff;font-size:1rem}.passcode-input::placeholder{color:var(--text-muted)}.error-message{color:#ff6b6b;min-height:1.5rem;margin-top:.5rem}.gallery-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.gallery-controls{display:flex;justify-content:center;align-items:center;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;margin-top:1.5rem}.portfolio-item{position:relative;border-radius:var(--border-radius);overflow:hidden;height:300px;box-shadow:var(--shadow-lg);cursor:pointer;transition:transform 0.3s ease}.portfolio-item:hover{transform:translateY(-5px)}.portfolio-img{width:100%;height:100%;object-fit:cover;display:block}.package-card.selected::before{content:'';position:absolute;top:0;left:0;width:4px;height:100%;background:var(--accent)}.package-details{display:flex;flex-direction:column;gap:.5rem}.package-details h3{font-family:var(--font-serif);font-size:1.4rem;font-weight:400}.package-details p{color:var(--text-secondary);font-size:.85rem}.package-features{display:flex;gap:1.5rem;margin-top:.5rem;font-size:.75rem;font-weight:600;color:var(--accent);text-transform:uppercase}.package-features span i{margin-right:.25rem}.package-price{text-align:right}.price-value{font-family:var(--font-serif);font-size:1.8rem;color:var(--text-primary);font-weight:500}.price-term{font-size:.7rem;font-weight:700;color:var(--text-muted);text-transform:uppercase}.packages-container{display:flex;flex-direction:column;gap:1.5rem}.booking-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:4rem}.booking-form-wrapper{position:sticky;top:110px}.booking-form h3{font-family:var(--font-serif);font-size:1.8rem;font-weight:400;margin-bottom:2rem}.datepicker-wrapper{margin-bottom:1.5rem}.calendar-mock{border:1px solid var(--border-glass);background:rgb(10 12 16 / .4);border-radius:8px;padding:1rem}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;font-weight:700;font-size:.9rem;text-transform:uppercase;letter-spacing:.05rem;color:var(--accent)}.calendar-days-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.5rem;text-align:center}.day-name{font-size:.7rem;font-weight:700;color:var(--text-muted);padding-bottom:.5rem}.day-number{aspect-ratio:1;display:flex;justify-content:center;align-items:center;font-size:.85rem;font-weight:600;border-radius:50%;cursor:pointer;transition:var(--transition-fast)}.day-number:hover:not(.muted):not(.disabled){background:rgb(255 255 255 / .05);color:var(--text-primary)}.day-number.muted{color:var(--text-muted);opacity:.3;pointer-events:none}.day-number.disabled{text-decoration:line-through;opacity:.2;cursor:not-allowed}.day-number.selected{background:var(--accent);color:var(--bg-primary);font-weight:700;box-shadow:0 0 10px rgb(255 255 255 / .2)}.month-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}.month-btn{background:rgb(255 255 255 / .03);border:1px solid var(--border-glass);border-radius:6px;padding:.6rem .5rem;text-align:center;cursor:pointer;transition:var(--transition-fast);color:var(--text-primary)}.month-btn:hover{background:rgb(255 255 255 / .07);border-color:var(--accent)}.month-btn .month-name{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.05rem;display:block;margin-bottom:.2rem}.month-btn .month-info{font-size:.65rem;color:var(--text-muted);display:block}.month-btn.past{opacity:.3;pointer-events:none}.month-btn.selected{background:rgb(255 255 255 / .1);border-color:var(--accent);box-shadow:0 0 8px rgb(255 255 255 / .1)}.calendar-back-btn{background:#fff0;border:1px solid var(--border-glass);color:var(--text-secondary);padding:.3rem .6rem;border-radius:4px;font-size:.7rem;cursor:pointer;transition:var(--transition-fast)}.calendar-back-btn:hover{background:rgb(255 255 255 / .05);color:var(--text-primary)}.slots-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:.5rem;margin-top:1rem}.slot-btn{font-size:.75rem;font-weight:700;text-align:center;padding:.6rem 0;border:1px solid var(--border-glass);background:rgb(10 12 16 / .4);border-radius:6px;color:var(--text-secondary);transition:var(--transition-fast)}.slot-btn:hover{border-color:var(--text-secondary)}.slot-btn.selected{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.booking-summary-list{background:rgb(255 255 255 / .02);border:1px solid var(--border-glass);border-radius:8px;padding:1.25rem;margin-bottom:2rem;font-size:.85rem;display:flex;flex-direction:column;gap:.75rem}.summary-row{display:flex;justify-content:space-between}.summary-label{color:var(--text-secondary)}.summary-val{font-weight:700;color:var(--text-primary)}.summary-val.accent-txt{color:var(--accent)}.booking-confirm-screen{text-align:center;padding:3rem 1.5rem;display:flex;flex-direction:column;align-items:center;gap:1.5rem}.confirm-icon{width:70px;height:70px;border-radius:50%;background:var(--accent-soft);border:2px solid var(--accent);display:flex;justify-content:center;align-items:center;font-size:2rem;color:var(--accent);margin-bottom:1rem;box-shadow:var(--shadow-glow);animation:scaleIn 0.5s cubic-bezier(.175,.885,.32,1.275)}.confirm-details{background:rgb(255 255 255 / .02);border:1px solid var(--border-glass);border-radius:12px;padding:1.5rem;width:100%;text-align:left;display:flex;flex-direction:column;gap:.75rem;font-size:.9rem}.toast-container{position:fixed;bottom:2rem;right:2rem;z-index:5000;display:flex;flex-direction:column;gap:.75rem}.toast{background:rgb(19 23 34 / .95);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-left:4px solid var(--accent);border-top:1px solid var(--border-glass);border-bottom:1px solid var(--border-glass);border-right:1px solid var(--border-glass);border-radius:0 8px 8px 0;padding:1rem 1.5rem;width:320px;box-shadow:var(--shadow-card);display:flex;align-items:center;gap:1rem;transform:translateX(120%);transition:transform 0.4s cubic-bezier(.175,.885,.32,1.275),opacity 0.4s ease;opacity:0}.toast.show{transform:translateX(0);opacity:1}.toast.toast-error{border-left-color:#f36}.toast-msg-icon{font-size:1.25rem;color:var(--accent)}.toast-error .toast-msg-icon{color:#f36}.toast-body{flex-grow:1}.toast-title{font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:.05rem;margin-bottom:.15rem}.toast-desc{font-size:.8rem;color:var(--text-secondary)}.client-galleries-section{text-align:center}.client-galleries-container{max-width:1200px;margin:0 auto}.passcode-screen,.gallery-screen{transition:opacity 0.3s ease,visibility 0.3s ease}.gallery-screen{width:100%}.passcode-screen.active{opacity:1;visibility:visible}.passcode-screen.hidden{opacity:0;visibility:hidden;pointer-events:none;height:0;padding:0;margin:0;overflow:hidden}.gallery-screen.active{opacity:1;visibility:visible}.gallery-screen.hidden{opacity:0;visibility:hidden;pointer-events:none;height:0;padding:0;margin:0;overflow:hidden}.passcode-entry-container{display:flex;flex-direction:column;align-items:center;gap:1.5rem;margin:3rem 0}.passcode-input{width:200px;padding:.75rem 1rem;font-size:1.2rem;text-align:center;border-radius:8px;background:rgb(255 255 255 / .05);border:1px solid var(--border-glass);color:var(--text-primary)}.passcode-input::placeholder{color:var(--text-muted)}.passcode-error-message{color:#f36;font-size:.9rem;min-height:1.2rem}.gallery-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem}.app-footer{background:var(--bg-darkest);border-top:1px solid var(--border-glass);padding:4rem 2rem 2rem;position:relative;z-index:10}.footer-container{max-width:1400px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:2rem}.footer-brand{text-align:center}.footer-brand h3{font-size:1.2rem;font-weight:800;letter-spacing:.2rem;margin-bottom:.5rem}.footer-brand p{font-size:.85rem;color:var(--text-muted);max-width:400px}.footer-socials{display:flex;gap:1.5rem}.footer-socials a{width:40px;height:40px;border-radius:50%;border:1px solid var(--border-glass);display:flex;justify-content:center;align-items:center;color:var(--text-secondary);font-size:1.1rem}.footer-socials a:hover{color:var(--accent);border-color:var(--accent);box-shadow:0 0 10px rgb(255 255 255 / .15);transform:translateY(-2px)}.footer-copy{font-size:.75rem;color:var(--text-muted);border-top:1px solid rgb(255 255 255 / .03);width:100%;padding-top:2rem;text-align:center}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes fadeInUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{from{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes cameraPulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.8}}@media (max-width:1024px){.section{padding:4rem 1.5rem}.about-grid{grid-template-columns:1fr;gap:3rem}.about-img-container{max-width:500px;margin:0 auto}.contact-container{grid-template-columns:1fr;gap:3rem}.booking-grid{grid-template-columns:1fr;gap:3rem}.booking-form-wrapper{position:static}}@media (max-width:768px){.desktop-nav{display:none}.burger-btn{display:flex}.hero-title{font-size:2.8rem}.hero-actions{flex-direction:column;align-items:center;gap:1rem}.hero-actions button,.hero-actions a{width:100%;max-width:300px}.section-title h2{font-size:2.2rem}.about-stats{justify-content:space-around}.portfolio-grid{grid-template-columns:1fr}.lightbox-close{top:1rem;right:1rem;width:44px;height:44px}.lightbox-arrow{width:44px;height:44px;font-size:1.25rem;background:rgb(10 12 16 / .85);border:1px solid rgb(255 255 255 / .3);backdrop-filter:blur(4px);z-index:10100}.lightbox-prev{left:.5rem}.lightbox-next{right:.5rem}}@media (max-width:480px){.hero-title{font-size:2.2rem}.about-stats{flex-direction:column;align-items:center;gap:1.5rem}.toast{width:calc(100vw - 2rem);right:1rem;left:1rem}}@media (min-width:1025px){body,a,button,[role="button"],select,input,textarea,.portfolio-item,.package-card,.day-number,.slot-btn{cursor:none!important}}.custom-cursor{position:fixed;top:0;left:0;width:6px;height:6px;background-color:var(--accent);border-radius:50%;pointer-events:none;z-index:30000;transform:translate3d(-50%,-50%,0);opacity:0;transition:opacity 0.3s ease,width 0.3s ease,height 0.3s ease,background-color 0.3s ease}.custom-cursor-follower{position:fixed;top:0;left:0;width:32px;height:32px;border:1.5px solid rgb(255 255 255 / .45);border-radius:50%;pointer-events:none;z-index:29999;transform:translate3d(-50%,-50%,0);opacity:0;transition:opacity 0.3s ease,width 0.4s cubic-bezier(.25,.8,.25,1),height 0.4s cubic-bezier(.25,.8,.25,1),border-color 0.3s ease,background-color 0.3s ease}.custom-cursor.visible,.custom-cursor-follower.visible{opacity:1}.custom-cursor.hover{width:2px;height:2px}.custom-cursor-follower.hover{width:52px;height:52px;border-color:rgb(255 255 255 / .95);background-color:rgb(255 255 255 / .08);box-shadow:0 0 15px rgb(255 255 255 / .15)}.custom-cursor-follower.click{width:24px;height:24px;border-color:rgb(255 255 255 / .8);background-color:rgb(255 255 255 / .25)}@media (max-width:1024px){.custom-cursor,.custom-cursor-follower{display:none!important}}.client-area-section{position:relative;min-height:70vh;padding-top:1.5rem!important}.client-area-section .section-title{margin-top:0!important;margin-bottom:1rem!important}.client-area-section.unlocked{padding:1rem 2rem!important;margin-top:-0.5rem!important;min-height:auto!important}.client-area-section.unlocked .section-title{display:none!important}.client-area-section.unlocked .client-header-card{margin-top:0!important;margin-bottom:1.25rem!important;padding:1.75rem 2rem!important}.passcode-screen{max-width:620px;margin:0 auto 3rem;padding:3rem 2.5rem;text-align:center;position:relative;overflow:hidden;box-shadow:0 30px 60px rgb(0 0 0 / .6);border:1px solid rgb(255 255 255 / .12);backdrop-filter:blur(16px);background:rgb(12 15 22 / .75)}.passcode-screen.shake{animation:pinShake 0.45s cubic-bezier(.36,.07,.19,.97) both}@keyframes pinShake{10%,90%{transform:translate3d(-2px,0,0)}20%,80%{transform:translate3d(4px,0,0)}30%,50%,70%{transform:translate3d(-8px,0,0)}40%,60%{transform:translate3d(8px,0,0)}}.pin-lock-badge{display:inline-flex;margin-bottom:1.5rem}.lock-icon-wrapper{width:72px;height:72px;border-radius:50%;background:radial-gradient(circle,rgb(255 255 255 / .08) 0%,rgb(255 255 255 / .02) 100%);border:1px solid rgb(255 255 255 / .2);display:flex;align-items:center;justify-content:center;font-size:2rem;color:var(--accent);box-shadow:0 0 25px rgb(212 175 55 / .15);animation:pulseGlow 3s infinite ease-in-out}@keyframes pulseGlow{0%,100%{box-shadow:0 0 20px rgb(212 175 55 / .15);border-color:rgb(255 255 255 / .2)}50%{box-shadow:0 0 35px rgb(212 175 55 / .4);border-color:var(--accent)}}.pin-title{font-family:var(--font-serif);font-size:2.1rem;font-weight:500;margin-bottom:.75rem;color:var(--text-primary)}.pin-subtitle{font-size:.92rem;color:var(--text-secondary);line-height:1.6;max-width:480px;margin:0 auto 2rem}.pin-input-group{display:flex;justify-content:center;gap:.75rem;margin-bottom:1rem}.pin-box{width:52px;height:64px;border-radius:0;background:rgb(255 255 255 / .03);border:1px solid rgb(255 255 255 / .15);color:#fff;font-size:1.8rem;font-weight:700;font-family:monospace;text-align:center;outline:none;transition:all 0.2s cubic-bezier(.4,0,.2,1);box-shadow:inset 0 2px 4px rgb(0 0 0 / .4)}.pin-box:focus,.pin-box.filled{background:rgb(255 255 255 / .08);border-color:var(--accent);box-shadow:0 0 15px rgb(212 175 55 / .3),inset 0 0 8px rgb(212 175 55 / .2);transform:scale(1.04)}.passcode-error{min-height:1.5rem;color:#ff4d6d;font-size:.88rem;font-weight:600;margin-bottom:1.5rem}.pin-submit-btn{width:100%;max-width:320px;padding:.95rem 2rem;font-size:.95rem;letter-spacing:.1rem;text-transform:uppercase;margin:0 auto;display:inline-flex;justify-content:center;align-items:center;gap:.75rem}.demo-pins-container{margin-top:3rem;padding-top:2rem;border-top:1px solid rgb(255 255 255 / .08)}.demo-pins-label{font-size:.8rem;text-transform:uppercase;letter-spacing:.08rem;color:var(--text-secondary);margin-bottom:1rem}.demo-pins-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem}.demo-pin-chip{display:inline-flex;align-items:center;gap:.6rem;padding:.5rem .9rem;background:rgb(255 255 255 / .03);border:1px solid rgb(255 255 255 / .12);color:var(--text-secondary);font-size:.82rem;cursor:pointer;transition:all 0.2s ease}.demo-pin-chip:hover{background:rgb(255 255 255 / .08);border-color:var(--accent);color:var(--text-primary);transform:translateY(-2px)}.chip-pin{font-family:monospace;font-weight:700;color:var(--accent);background:rgb(0 0 0 / .4);padding:.15rem .4rem;font-size:.85rem}.chip-name{font-size:.8rem}.client-header-card{margin-bottom:2.5rem;padding:2.5rem;background:rgb(14 18 26 / .8);border:1px solid rgb(255 255 255 / .1)}.client-header-main{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1.5rem}.client-badge{display:inline-flex;align-items:center;gap:.5rem;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1rem;color:#38ef7d;background:rgb(56 239 125 / .1);border:1px solid rgb(56 239 125 / .25);padding:.35rem .8rem;margin-bottom:.75rem}.client-title{font-family:var(--font-serif);font-size:2.2rem;font-weight:400;margin-bottom:.5rem;color:var(--text-primary)}.client-meta{display:flex;flex-wrap:wrap;gap:1.5rem;font-size:.85rem;color:var(--text-secondary)}.client-meta span{display:inline-flex;align-items:center;gap:.4rem}.client-header-actions{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.download-all-btn{padding:.85rem 1.75rem;font-size:.9rem}.lock-btn{padding:.85rem 1.25rem;font-size:.85rem;background:rgb(255 255 255 / .05)}.client-card-actions{display:flex;gap:.5rem;margin-top:1rem}.card-action-btn{padding:.5rem 1rem;font-size:.8rem;display:inline-flex;align-items:center;gap:.4rem;border-radius:0;cursor:pointer;transition:all 0.2s ease}.card-action-btn.view-btn{background:rgb(255 255 255 / .15);color:#fff;border:1px solid rgb(255 255 255 / .2)}.card-action-btn.view-btn:hover{background:rgb(255 255 255 / .3)}.card-action-btn.download-btn{background:var(--accent);color:var(--bg-primary);border:none;font-weight:600}.card-action-btn.download-btn:hover{background:#fff}.lightbox-download-btn{margin-top:1.25rem;padding:.75rem 1.75rem;font-size:.85rem;letter-spacing:.05rem;display:inline-flex;align-items:center;gap:.6rem}.client-photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;width:100%;margin:0;box-sizing:border-box}.client-photo-grid .portfolio-item{height:320px;position:relative;overflow:hidden;border-radius:0;box-shadow:0 12px 30px rgb(0 0 0 / .5);border:1px solid rgb(255 255 255 / .08);transition:transform 0.4s cubic-bezier(.165,.84,.44,1),box-shadow 0.4s ease}.client-photo-grid .portfolio-item img{width:100%;height:100%;object-fit:cover;transition:transform 0.6s cubic-bezier(.25,1,.5,1)}.client-photo-grid .portfolio-item:hover img{transform:scale(1.06)}@media (max-width:1024px){.client-photo-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.passcode-screen{padding:2.5rem 1.25rem}.pin-box{width:42px;height:54px;font-size:1.5rem}.pin-input-group{gap:.4rem}.client-header-card{padding:1.5rem}.client-header-main{flex-direction:column;align-items:flex-start}.client-title{font-size:1.6rem}.client-header-actions{width:100%}.client-header-actions button{flex:1;justify-content:center}}@media (max-width:640px){.client-photo-grid{grid-template-columns:1fr}.client-photo-grid .portfolio-item,.client-photo-grid .portfolio-item.tile-wide,.client-photo-grid .portfolio-item.tile-tall{grid-column:span 1;grid-row:span 1;height:280px}}