html{scroll-behavior:smooth;height:auto;overflow-y:auto!important;overflow-x:hidden}body{font-family:Instrument Sans,sans-serif;background:#0a0a0a;color:#fff;cursor:none;overflow-x:hidden;overflow-y:auto!important;min-height:100vh;height:auto}.app{min-height:100vh;position:relative;height:auto}.cursor{position:fixed;width:40px;height:40px;border:1px solid rgba(201,169,98,.5);border-radius:50%;transform:translate(-50%,-50%);transition:width .3s ease,height .3s ease,border-color .3s ease;pointer-events:none;z-index:9999}.cursor.expanded{width:80px;height:80px;border-color:#c9a9624d}.cursor-dot{position:fixed;width:6px;height:6px;background:#c9a962;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:9999}.grain{position:fixed;top:0;right:0;bottom:0;left:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");opacity:.03;z-index:1000;pointer-events:none}.vignette{position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at center,transparent 0%,rgba(0,0,0,.4) 100%);z-index:999;pointer-events:none}.header{position:fixed;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:32px 48px;z-index:100;background:linear-gradient(to bottom,rgba(10,10,10,.9) 0%,transparent 100%);opacity:0;transform:translateY(-20px);transition:all .8s cubic-bezier(.16,1,.3,1)}.header.visible{opacity:1;transform:translateY(0)}.logo{display:flex;align-items:center;gap:12px}.logo-mark{font-size:24px;color:#c9a962}.logo-text{font-family:Cormorant Garamond,serif;font-size:20px;font-weight:400;letter-spacing:6px;color:#fff}.nav{display:flex;gap:40px}.nav-link{color:#999;text-decoration:none;font-size:13px;letter-spacing:2px;text-transform:uppercase;font-weight:500;position:relative;transition:color .3s ease}.nav-link:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:1px;background:#c9a962;transition:width .3s ease}.nav-link:hover{color:#fff}.nav-link:hover:after{width:100%}.hamburger-btn{display:none;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:44px;height:44px;background:transparent;border:none;cursor:pointer;padding:10px;z-index:200;position:relative}.hamburger-line{display:block;width:24px;height:1.5px;background:#fff;transition:all .3s cubic-bezier(.16,1,.3,1);transform-origin:center}.hamburger-btn.open .hamburger-line:nth-child(1){transform:rotate(45deg) translate(5px,5px);background:#c9a962}.hamburger-btn.open .hamburger-line:nth-child(2){opacity:0;transform:scaleX(0)}.hamburger-btn.open .hamburger-line:nth-child(3){transform:rotate(-45deg) translate(5px,-5px);background:#c9a962}.mobile-menu-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0a0a0afa;z-index:150;display:flex;flex-direction:column;justify-content:center;align-items:center;opacity:0;visibility:hidden;transition:all .4s cubic-bezier(.16,1,.3,1)}.mobile-menu-overlay.open{opacity:1;visibility:visible}.mobile-nav{display:flex;flex-direction:column;align-items:center;gap:8px}.mobile-nav-link{display:flex;align-items:center;gap:16px;padding:16px 32px;text-decoration:none;opacity:0;transform:translateY(20px);transition:all .3s ease}.mobile-menu-overlay.open .mobile-nav-link{opacity:1;transform:translateY(0);animation:slideUp .5s cubic-bezier(.16,1,.3,1) forwards}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.mobile-nav-number{font-family:Cormorant Garamond,serif;font-size:14px;color:#c9a962;font-weight:400}.mobile-nav-label{font-family:Cormorant Garamond,serif;font-size:36px;font-weight:300;color:#fff;letter-spacing:2px;transition:all .3s ease}.mobile-nav-link:hover .mobile-nav-label,.mobile-nav-link:active .mobile-nav-label{color:#c9a962;letter-spacing:4px}.mobile-nav-link:hover .mobile-nav-number,.mobile-nav-link:active .mobile-nav-number{transform:translate(-4px)}.mobile-menu-footer{position:absolute;bottom:48px;display:flex;flex-direction:column;align-items:center;gap:24px;opacity:0;transition:opacity .4s ease .3s}.mobile-menu-overlay.open .mobile-menu-footer{opacity:1}.mobile-social-link{font-size:12px;letter-spacing:3px;text-transform:uppercase;color:#666;text-decoration:none;transition:color .3s ease}.mobile-social-link:hover{color:#c9a962}.hero{height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;position:relative;padding:0 48px;opacity:0;transition:opacity 1s ease .3s}.hero.visible{opacity:1}.hero-content{text-align:center;max-width:900px}.hero-subtitle{font-size:12px;letter-spacing:6px;text-transform:uppercase;color:#c9a962;margin-bottom:32px;font-weight:500}.hero-title{font-family:Cormorant Garamond,serif;font-size:clamp(48px,10vw,120px);font-weight:300;line-height:1.1;display:flex;flex-direction:column}.title-line{opacity:0;transform:translateY(40px);animation:fadeUp .8s cubic-bezier(.16,1,.3,1) forwards}.title-line:nth-child(1){animation-delay:.5s}.title-line:nth-child(2){animation-delay:.7s}.title-line.accent{color:#c9a962;font-style:italic}.hero-line{width:60px;height:1px;background:linear-gradient(90deg,transparent,#c9a962,transparent);margin:48px auto 0;opacity:0;animation:fadeIn .8s ease 1s forwards}.scroll-indicator{position:absolute;bottom:48px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:12px;opacity:0;animation:fadeIn .8s ease 1.2s forwards;cursor:pointer;transition:transform .3s ease;z-index:10;background:transparent;border:none;padding:16px;outline:none}.scroll-indicator:hover{transform:translate(-50%) translateY(5px)}.scroll-indicator:hover .scroll-text{color:#c9a962}.scroll-text{font-size:11px;letter-spacing:3px;text-transform:uppercase;color:#666;transition:color .3s ease;font-family:Instrument Sans,sans-serif}.scroll-line{width:1px;height:40px;background:linear-gradient(to bottom,#c9a962,transparent);animation:scrollPulse 2s ease-in-out infinite}@keyframes scrollPulse{0%,to{opacity:1;transform:scaleY(1)}50%{opacity:.5;transform:scaleY(.8)}}.filter-section{padding:0 48px 60px;display:flex;justify-content:center}.filter-container{display:flex;gap:32px}.filter-btn{background:transparent;border:1px solid transparent;padding:10px 20px;font-size:12px;letter-spacing:3px;text-transform:uppercase;cursor:pointer;font-family:Instrument Sans,sans-serif;font-weight:500;color:#666;transition:all .3s ease}.filter-btn:hover{color:#fff}.filter-btn.active{color:#c9a962;border-color:#c9a962}.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:24px;padding:0 48px 120px;max-width:1800px;margin:0 auto}.photo-card{position:relative;overflow:hidden;cursor:pointer;border-radius:2px;opacity:0;transform:translateY(40px);transition:all .6s cubic-bezier(.16,1,.3,1)}.photo-card.visible{opacity:1;transform:translateY(0)}.photo-card:hover{transform:scale(1.02)}.photo-card img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.16,1,.3,1);filter:contrast(1.05) saturate(.95)}.photo-card:hover img{transform:scale(1.05)}.photo-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(0,0,0,.9) 0%,rgba(0,0,0,.3) 50%,transparent 100%);display:flex;flex-direction:column;justify-content:flex-end;padding:32px;opacity:0;transition:opacity .4s ease}.photo-card:hover .photo-overlay{opacity:1}.photo-category{font-size:11px;letter-spacing:3px;text-transform:uppercase;color:#c9a962;margin-bottom:8px}.photo-title{font-family:Cormorant Garamond,serif;font-size:28px;font-weight:400;color:#fff}.view-icon{position:absolute;top:24px;right:24px;color:#fff;opacity:.8}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000f5;display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:2000;padding:48px;animation:fadeIn .4s ease;overflow-y:auto}.close-btn{position:fixed;top:32px;right:32px;background:transparent;border:none;color:#fff;cursor:pointer;padding:12px;opacity:.7;transition:all .3s ease;z-index:2001}.close-btn:hover{opacity:1;transform:rotate(90deg)}.lightbox-content{display:flex;flex-direction:row;gap:48px;max-width:1400px;width:100%;max-height:85vh;position:relative;animation:fadeUp .5s cubic-bezier(.16,1,.3,1);align-items:center}.lightbox-image-container{flex:1;display:flex;justify-content:center;align-items:center;min-width:0}.lightbox-image-container img{max-width:100%;max-height:75vh;object-fit:contain;filter:contrast(1.05) saturate(.95);border-radius:2px}.lightbox-info{flex:0 0 350px;display:flex;flex-direction:column;justify-content:center;padding:24px 0}.lightbox-header{margin-bottom:24px}.lightbox-category{font-size:11px;letter-spacing:3px;text-transform:uppercase;color:#c9a962;display:block;margin-bottom:12px}.lightbox-title{font-family:Cormorant Garamond,serif;font-size:36px;font-weight:400;color:#fff;line-height:1.2}.lightbox-divider{width:60px;height:1px;background:linear-gradient(90deg,#c9a962,transparent);margin-bottom:24px}.lightbox-description{font-size:15px;line-height:1.8;color:#999;font-weight:400;letter-spacing:.3px}.social-share{margin-top:32px;padding-top:24px;border-top:1px solid #222}.share-label{font-size:10px;letter-spacing:3px;text-transform:uppercase;color:#555;display:block;margin-bottom:16px}.share-buttons{display:flex;gap:12px;flex-wrap:wrap}.share-btn{display:flex;align-items:center;gap:10px;padding:14px 28px;border:1px solid #333;border-radius:2px;background:transparent;color:#999;font-family:Instrument Sans,sans-serif;font-size:12px;letter-spacing:2px;text-transform:uppercase;cursor:pointer;transition:all .3s ease}.share-btn svg{transition:transform .3s ease}.share-btn:hover{transform:translateY(-2px);border-color:#c9a962;color:#c9a962;background:#c9a9621a}.share-btn:hover svg{transform:scale(1.1)}.share-btn.share-main.success{border-color:#4ade80;color:#4ade80;background:#4ade801a}.share-btn:disabled{opacity:.7;cursor:wait;transform:none!important}.share-hint{font-size:11px;color:#444;margin-top:12px;font-style:italic}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.share-btn svg.spin{animation:spin 1s linear infinite}@media (max-width: 1024px){.social-share{margin-top:24px;padding-top:20px}.share-label{text-align:center}.share-buttons{justify-content:center}.share-hint{text-align:center}}@media (max-width: 480px){.share-btn{width:100%;justify-content:center}}@media (max-width: 1024px){.social-share{margin-top:24px;padding-top:20px}.share-label{text-align:center}.share-buttons{justify-content:center}}@media (max-width: 480px){.share-buttons{flex-direction:column}.share-btn{width:100%;justify-content:center}}.lightbox-hint{position:fixed;bottom:32px;left:50%;transform:translate(-50%);font-size:11px;letter-spacing:2px;text-transform:uppercase;color:#555}@media (max-width: 1024px){.lightbox{padding:80px 24px 24px}.lightbox-content{flex-direction:column;gap:32px;max-height:none;overflow-y:auto}.lightbox-image-container img{max-height:50vh}.lightbox-info{flex:none;width:100%;max-width:600px;text-align:center;padding-bottom:60px}.lightbox-header{margin-bottom:20px}.lightbox-title{font-size:28px}.lightbox-divider{margin:0 auto 20px}.lightbox-description{font-size:14px;line-height:1.7}}.about{padding:120px 48px;max-width:1400px;margin:0 auto;opacity:0;transform:translateY(40px);transition:all .8s cubic-bezier(.16,1,.3,1)}.about.visible{opacity:1;transform:translateY(0)}.about-container{display:grid;grid-template-columns:1fr 1.4fr;gap:80px;align-items:center}.about-image-wrapper{position:relative;display:flex;justify-content:center;align-items:center}.about-image-frame{position:relative;width:320px;height:320px;border-radius:50%;overflow:hidden;border:3px solid #c9a962;padding:6px;background:#0a0a0a}.about-image{width:100%;height:100%;object-fit:cover;border-radius:50%;filter:contrast(1.05) saturate(.95);transition:transform .8s cubic-bezier(.16,1,.3,1)}.about-image-wrapper:hover .about-image{transform:scale(1.05)}.about-image-accent{position:absolute;top:-15px;left:-15px;right:-15px;bottom:-15px;border:1px solid rgba(201,169,98,.3);border-radius:50%;z-index:-1}.about-image-accent:before{content:"";position:absolute;top:-15px;left:-15px;right:-15px;bottom:-15px;border:1px solid rgba(201,169,98,.15);border-radius:50%}.about-content{padding:20px 0}.about-label{font-size:11px;letter-spacing:4px;text-transform:uppercase;color:#c9a962;font-weight:500;display:block;margin-bottom:20px}.about-title{font-family:Cormorant Garamond,serif;font-size:clamp(36px,5vw,56px);font-weight:300;line-height:1.2;margin-bottom:24px;display:flex;flex-direction:column}.about-title-accent{color:#c9a962;font-style:italic;font-size:clamp(24px,3vw,32px);margin-top:8px}.about-divider{width:80px;height:1px;background:linear-gradient(90deg,#c9a962,transparent);margin-bottom:32px}.about-text{margin-bottom:40px}.about-text p{font-size:15px;line-height:1.9;color:#999;margin-bottom:20px;letter-spacing:.3px}.about-text p:last-child{margin-bottom:0}.about-stats{display:flex;gap:48px;margin-bottom:40px;padding:32px 0;border-top:1px solid #1a1a1a;border-bottom:1px solid #1a1a1a}.stat{display:flex;flex-direction:column;gap:8px}.stat-number{font-family:Cormorant Garamond,serif;font-size:42px;font-weight:400;color:#c9a962;line-height:1}.stat-label{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:#666}.about-cta{display:flex;gap:20px}.about-btn{display:inline-block;padding:16px 32px;background:#c9a962;color:#0a0a0a;text-decoration:none;font-size:12px;letter-spacing:2px;text-transform:uppercase;font-weight:600;border-radius:2px;transition:all .3s ease}.about-btn:hover{background:#d4b876;transform:translateY(-2px)}.about-btn-outline{display:inline-block;padding:16px 32px;background:transparent;color:#fff;text-decoration:none;font-size:12px;letter-spacing:2px;text-transform:uppercase;font-weight:500;border:1px solid #333;border-radius:2px;transition:all .3s ease}.about-btn-outline:hover{border-color:#c9a962;color:#c9a962}@media (max-width: 1024px){.about{padding:80px 24px}.about-container{grid-template-columns:1fr;gap:48px}.about-image-wrapper{justify-content:center}.about-image-frame{width:280px;height:280px}.about-content{text-align:center}.about-divider{margin:0 auto 32px}.about-stats{justify-content:center;gap:32px}.stat{align-items:center}.about-cta{justify-content:center;flex-wrap:wrap}}@media (max-width: 480px){.about-image-frame{width:220px;height:220px}.about-stats{flex-direction:column;gap:24px}.about-cta{flex-direction:column}.about-btn,.about-btn-outline{width:100%;text-align:center}}.contact{padding:120px 48px;text-align:center;opacity:0;transform:translateY(40px);transition:all .8s cubic-bezier(.16,1,.3,1)}.contact.visible{opacity:1;transform:translateY(0)}.contact-container{max-width:600px;margin:0 auto}.contact-label{font-size:11px;letter-spacing:4px;text-transform:uppercase;color:#c9a962;font-weight:500;display:block;margin-bottom:24px}.contact-title{font-family:Cormorant Garamond,serif;font-size:clamp(36px,6vw,56px);font-weight:300;line-height:1.2;margin-bottom:24px;color:#fff}.contact-text{font-size:16px;line-height:1.8;color:#777;margin-bottom:40px}.contact-btn{display:inline-flex;align-items:center;gap:12px;padding:18px 36px;background:linear-gradient(135deg,#c9a962,#d4b876);color:#0a0a0a;text-decoration:none;font-size:13px;letter-spacing:2px;text-transform:uppercase;font-weight:600;border-radius:2px;transition:all .3s ease;position:relative;overflow:hidden}.contact-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(135deg,#d4b876,#e0c88a);transition:left .3s ease;z-index:0}.contact-btn:hover:before{left:0}.contact-btn svg,.contact-btn span{position:relative;z-index:1}.contact-btn:hover{transform:translateY(-3px);box-shadow:0 10px 30px #c9a9624d}.contact-btn svg{transition:transform .3s ease}.contact-btn:hover svg{transform:scale(1.1)}.contact-decorative{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:60px}.decorative-line{width:60px;height:1px;background:linear-gradient(90deg,transparent,#333,transparent)}.decorative-icon{color:#c9a962;font-size:16px;opacity:.5}@media (max-width: 768px){.contact{padding:80px 24px}.contact-text{font-size:15px}.contact-btn{padding:16px 32px;font-size:12px}}.footer{border-top:1px solid #1a1a1a;padding:48px}.footer-content{max-width:1800px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.footer-text{font-size:12px;color:#666;letter-spacing:1px}.social-links{display:flex;gap:32px}.social-link{font-size:12px;color:#666;text-decoration:none;letter-spacing:2px;text-transform:uppercase;transition:color .3s ease}.social-link:hover{color:#c9a962}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){body{cursor:auto}.cursor,.cursor-dot{display:none}.header{padding:24px}.nav{display:none}.hamburger-btn{display:flex}.hero{padding:0 24px}.gallery{grid-template-columns:1fr;padding:0 24px 80px}.filter-section{padding:0 24px 40px}.filter-container{gap:16px;flex-wrap:wrap;justify-content:center}.filter-btn{padding:8px 16px;font-size:11px}.footer-content{flex-direction:column;gap:24px;text-align:center}.mobile-nav-label{font-size:32px}.mobile-menu-footer{bottom:32px}}@media (max-width: 480px){.header{padding:20px 16px}.logo-text{font-size:16px;letter-spacing:4px}.mobile-nav-label{font-size:28px}.mobile-nav-link{padding:12px 24px}}.lightbox-meta{display:flex;align-items:center;gap:1rem}.lightbox-date{font-family:Instrument Sans,sans-serif;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:#ffffff80}.lightbox-meta .lightbox-category:after{content:"•";margin-left:1rem;color:#ffffff4d}.scroll-to-top{position:fixed;bottom:2rem;right:2rem;width:50px;height:50px;background:#c9a962e6;border:none;border-radius:50%;color:#0a0a0a;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transform:translateY(20px);transition:all .3s ease;z-index:999;box-shadow:0 4px 20px #0000004d}.scroll-to-top.visible{opacity:1;visibility:visible;transform:translateY(0)}.scroll-to-top:hover{background:#c9a962;transform:translateY(-3px);box-shadow:0 6px 25px #c9a96266}.scroll-to-top:active{transform:translateY(0)}.scroll-to-top svg{transition:transform .3s ease}.scroll-to-top:hover svg{transform:translateY(-2px)}@media (max-width: 768px){.scroll-to-top{bottom:1.5rem;right:1.5rem;width:45px;height:45px}}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;overflow-y:auto!important}body{margin:0;padding:0;overflow-y:auto!important}#root{min-height:100vh;height:auto}.cursor{position:fixed;width:40px;height:40px;border:1px solid rgba(201,169,98,.5);border-radius:50%;pointer-events:none;z-index:9999;transition:transform .2s ease;mix-blend-mode:difference;transform:translate(-50%,-50%)}.cursor.expanded{transform:translate(-50%,-50%) scale(2)}.cursor-dot{position:fixed;width:6px;height:6px;background:#c9a962;border-radius:50%;pointer-events:none;z-index:9999;transform:translate(-50%,-50%)}.grain{position:fixed;top:-100%;left:-100%;width:300%;height:300%;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");opacity:.03;pointer-events:none;z-index:1000;animation:grain 8s steps(10) infinite}@keyframes grain{0%,to{transform:translate(0)}10%{transform:translate(-5%,-10%)}20%{transform:translate(-15%,5%)}30%{transform:translate(7%,-25%)}40%{transform:translate(-5%,25%)}50%{transform:translate(-15%,10%)}60%{transform:translate(15%)}70%{transform:translateY(15%)}80%{transform:translate(3%,35%)}90%{transform:translate(-10%,10%)}}.vignette{position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(ellipse at center,transparent 0%,rgba(0,0,0,.4) 100%);pointer-events:none;z-index:999}@keyframes fadeDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:#0a0a0a}::-webkit-scrollbar-thumb{background:#333;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#555}
