.gallery_wrapper__l8GEi{min-height:100vh;background:#fafafa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;color:#333;line-height:1.6;scroll-behavior:smooth;overflow:visible!important}.gallery_logoutBtn__tu3Ej{position:fixed;top:20px;right:20px;background:hsla(0,0%,100%,.95);border:1px solid #ddd;padding:10px 20px;border-radius:8px;font-size:14px;cursor:pointer;z-index:1000;transition:all .3s ease;box-shadow:0 2px 10px rgba(0,0,0,.1)}.gallery_logoutBtn__tu3Ej:hover{background:#fff;box-shadow:0 4px 20px rgba(0,0,0,.15);transform:translateY(-2px)}.gallery_logoWrap__XHisF{text-align:center;padding:10px 0}.gallery_logo__nCbCg{width:60px;height:60px;object-fit:contain;filter:brightness(.8);transition:all .3s ease}.gallery_logo__nCbCg:hover{filter:brightness(1);transform:scale(1.05)}.gallery_title__tXv7T{text-align:center;margin-bottom:40px;padding:0 20px}.gallery_title__tXv7T h1{font-size:2.5rem;font-weight:300;color:#222;margin:0 0 10px;letter-spacing:-.5px}.gallery_title__tXv7T p{font-size:1.1rem;color:#666;margin:0;font-weight:400}.gallery_categories__LzOea{display:flex;justify-content:center;gap:15px;margin-bottom:50px;flex-wrap:wrap;padding:0 20px}.gallery_categoryBtn__UuCeA{background:transparent;border:2px solid #ddd;color:#666;padding:12px 24px;border-radius:30px;cursor:pointer;font-size:14px;font-weight:500;text-transform:uppercase;letter-spacing:1px;transition:all .3s ease;min-width:120px}.gallery_categoryBtn__UuCeA:hover{border-color:#333;color:#333;background:rgba(0,0,0,.02)}.gallery_categoryBtn__UuCeA.gallery_active__5ZaCQ{background:#333;border-color:#333;color:#fff}.gallery_albums__PP8Kf{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;max-width:1400px;margin:0 auto;padding:0 40px 60px}.gallery_albumCard__7H5oy{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 4px 20px rgba(0,0,0,.08);transition:all .4s ease;cursor:pointer;position:relative}.gallery_albumCard__7H5oy:hover{transform:translateY(-8px);box-shadow:0 12px 40px rgba(0,0,0,.15)}.gallery_albumImage__Q085R{width:100%;height:280px;object-fit:cover;background:#f5f5f5;transition:all .4s ease}.gallery_albumCard__7H5oy:hover .gallery_albumImage__Q085R{transform:scale(1.05)}.gallery_albumInfo__Y7XYY{padding:24px}.gallery_albumTitle__C69M4{font-size:1.2rem;font-weight:600;color:#222;margin:0 0 8px;line-height:1.3}.gallery_albumDate__ai3Yu{font-size:.9rem;color:#888;margin:0;font-weight:400}.gallery_albumCount__SKCf_{position:absolute;top:16px;right:16px;background:rgba(0,0,0,.7);color:#fff;padding:6px 12px;border-radius:20px;font-size:.8rem;font-weight:500;backdrop-filter:blur(10px)}.gallery_footer__bkQwe{background:none;color:#222;padding:80px 40px 60px;text-align:center;margin-top:auto;position:relative;border-top:1px solid #eee;overflow:hidden}.gallery_footer__bkQwe:before{content:"";position:absolute;top:-18px;left:0;width:100%;height:36px;background:url('data:image/svg+xml;utf8,<svg width="100%25" height="36" viewBox="0 0 1200 36" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0 36V0C150 24 350 24 600 0C850 24 1050 24 1200 0V36H0Z" fill="%23f5f5f5"/></svg>') repeat-x;z-index:1;pointer-events:none}.gallery_footerContent__xBq_8{position:relative;z-index:2}.gallery_footerTitle__Qv7Ou{font-size:1.8rem;font-weight:600;margin:0 0 10px;color:#222;letter-spacing:1px;transition:color .3s}.gallery_footerSubtitle__ddS2F{font-size:1rem;color:#555;margin:0 0 30px;letter-spacing:.5px}.gallery_socials__MgdpB{display:flex;justify-content:center;gap:20px;margin-bottom:30px}.gallery_socials__MgdpB a{display:flex;align-items:center;justify-content:center;width:50px;height:50px;background:#f5f5f5;border-radius:50%;color:#555;transition:all .3s cubic-bezier(.4,2,.3,1);border:1px solid #eee;font-size:1.2rem;box-shadow:0 2px 8px rgba(0,0,0,.04);will-change:transform}.gallery_socials__MgdpB a:hover{background:#e0e0e0;color:#222;transform:translateY(-6px) scale(1.08) rotate(-8deg);box-shadow:0 8px 24px rgba(44,62,80,.1)}.gallery_socials__MgdpB svg{width:22px;height:22px;color:#555;transition:color .3s,transform .3s}.gallery_socials__MgdpB a:hover svg{color:#222;animation:gallery_iconWiggle__wFOln .5s}@keyframes gallery_iconWiggle__wFOln{0%{transform:rotate(0deg)}20%{transform:rotate(-15deg)}40%{transform:rotate(10deg)}60%{transform:rotate(-8deg)}80%{transform:rotate(6deg)}to{transform:rotate(0deg)}}.gallery_footerLinks__Sy45o{display:flex;justify-content:center;gap:30px;margin-bottom:30px;flex-wrap:wrap}.gallery_footerLinks__Sy45o a,.gallery_footerLinks__Sy45o span{color:#444;text-decoration:none;font-size:1rem;transition:color .3s,text-shadow .3s;cursor:pointer;font-weight:500;letter-spacing:.5px;padding:2px 8px;border-radius:6px}.gallery_footerLinks__Sy45o a:hover{color:#222;background:#f5f5f5;text-shadow:0 2px 8px #e0e0e0}.gallery_footerLinks__Sy45o span{cursor:default}.gallery_footerCopyright__rvPzo{font-size:.9rem;color:#888;margin:0;border-top:1px solid #eee;padding-top:20px;letter-spacing:.5px}.gallery_contactInfo__Yr007{display:flex;justify-content:center;gap:40px;margin-bottom:30px;flex-wrap:wrap}.gallery_contactItem__Ug5PG{display:flex;align-items:center;gap:8px;color:#555;font-size:.95rem;transition:color .3s}.gallery_contactItem__Ug5PG svg{width:16px;height:16px;color:#888;opacity:.8;transition:color .3s}.gallery_contactItem__Ug5PG:hover,.gallery_contactItem__Ug5PG:hover svg{color:#222}.gallery_header__ygZMC{position:fixed;top:0;left:0;right:0;z-index:1000;background:hsla(0,0%,100%,.95);backdrop-filter:blur(10px);border-bottom:1px solid rgba(0,0,0,.1);transition:transform .3s ease-in-out;padding:1rem 0}.gallery_headerHidden__5TKZu{transform:translateY(-100%)}.gallery_headerContent__c8sLb{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:2rem}.gallery_logo__nCbCg{display:flex;flex-direction:column;align-items:flex-start}.gallery_backLink__bNP_o{color:#7f8c8d;text-decoration:none;font-size:.9rem;margin-bottom:.5rem;transition:color .3s ease}.gallery_backLink__bNP_o:hover{color:#2c3e50}.gallery_siteTitle__nygjZ{font-size:1.8rem;font-weight:700;color:#2c3e50;margin:0;font-family:Playfair Display,serif}.gallery_siteSubtitle___L3_R{font-size:.9rem;color:#7f8c8d;margin:0;font-style:italic}.gallery_backBtn__H8rQ4{background:#f8f9fa;border:1px solid #dee2e6;color:#6c757d;padding:8px 16px;border-radius:6px;font-size:14px;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-block}.gallery_backBtn__H8rQ4:hover{background:#e9ecef;color:#495057;border-color:#adb5bd}.gallery_folderMenuWrap__kzI9u{position:sticky;top:0;z-index:999;background:#fafafa;padding-top:8px;margin-bottom:16px;box-shadow:0 2px 12px rgba(0,0,0,.04);transition:box-shadow .2s}@media (max-width:700px){.gallery_folderMenuWrap__kzI9u{padding-top:4px;margin-bottom:8px}}.gallery_folderMenuWrap__kzI9u.gallery_headerHidden__5TKZu{transform:translateY(-100%)}.gallery_folderMenu__2Wn9y{display:flex;gap:1rem;max-width:1200px;padding:0 2rem;overflow-x:auto;scrollbar-width:none;margin:0 auto}.gallery_folderMenu__2Wn9y::-webkit-scrollbar{display:none}.gallery_folderBtn__kHpF0{background:none;border:none;padding:.5rem 1rem;font-size:.9rem;color:#7f8c8d;cursor:pointer;transition:all .3s ease;border-radius:20px;font-weight:500;white-space:nowrap}.gallery_folderBtn__kHpF0:hover{color:#2c3e50;background:rgba(44,62,80,.1)}.gallery_folderActive__d2zSL{color:#fff;background:#2c3e50}.gallery_folderCount__eb_84{background:hsla(0,0%,100%,.2);color:inherit;padding:2px 6px;border-radius:10px;font-size:.7rem;margin-left:5px}.gallery_folderPhotoContainer__fCdzf{margin-top:0;padding:0 .5rem;width:100%;max-width:100vw;height:auto;overflow:visible!important;display:flex;flex-direction:column;align-items:flex-end}.gallery_folderPhotoGroup__W9vsx{margin-bottom:2rem}.gallery_folderPhotoGroup__W9vsx:last-child{margin-bottom:0}.gallery_albumDetail__ehNZn{text-align:center;padding:2rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;margin-bottom:2rem}.gallery_albumDetailImage__em8El{width:200px;height:200px;object-fit:cover;border-radius:12px;margin:0 auto 1rem;box-shadow:0 8px 25px rgba(0,0,0,.3)}.gallery_albumDetailTitle__LSduV{font-size:2rem;font-weight:700;margin:0 0 .5rem;font-family:Playfair Display,serif}.gallery_albumDetailNames__ebyfn{font-size:1.1rem;opacity:.9;margin:0 0 .5rem}.gallery_albumDetailDate__5ChlV{font-size:.9rem;opacity:.8;margin:0}@media (max-width:1200px){.gallery_albums__PP8Kf{grid-template-columns:repeat(3,1fr);gap:25px;padding:0 30px 50px}.gallery_folderPhotoContainer__fCdzf{padding:0 1.5rem}.gallery_albumDetail__ehNZn{padding:1.5rem}}@media (max-width:900px){.gallery_albums__PP8Kf{grid-template-columns:repeat(2,1fr);gap:20px;padding:0 25px 40px}.gallery_folderMenuWrap__kzI9u,.gallery_header__ygZMC{padding:.75rem 0}.gallery_folderMenu__2Wn9y{padding:0 1.5rem}.gallery_folderPhotoContainer__fCdzf{margin-top:140px;padding:0 1rem}.gallery_albumDetail__ehNZn{padding:1rem}.gallery_albumDetailTitle__LSduV{font-size:1.5rem}}@media (max-width:600px){.gallery_albums__PP8Kf{grid-template-columns:repeat(2,1fr);gap:10px;padding:0 5px 20px}.gallery_folderPhotoContainer__fCdzf{padding:0 2px;align-items:flex-end}.gallery_title__tXv7T h1{font-size:2rem}.gallery_categories__LzOea{gap:10px;margin-bottom:30px}.gallery_categoryBtn__UuCeA{padding:10px 20px;font-size:13px;min-width:100px}.gallery_folderMenuWrap__kzI9u,.gallery_header__ygZMC{padding:.5rem 0}.gallery_folderMenu__2Wn9y{padding:0 1rem}.gallery_folderBtn__kHpF0{padding:.4rem .8rem;font-size:.8rem}.gallery_folderPhotoContainer__fCdzf{margin-top:120px;padding:0 .5rem}.gallery_albumDetail__ehNZn{padding:.75rem}.gallery_albumDetailImage__em8El{width:150px;height:150px}.gallery_albumDetailTitle__LSduV{font-size:1.3rem}.gallery_footer__bkQwe{padding:30px 2vw 20px}.gallery_socials__MgdpB{gap:15px}.gallery_socials__MgdpB a{width:38px;height:38px;font-size:1rem}.gallery_socials__MgdpB svg{width:18px;height:18px}}@media (max-width:768px){.gallery_footer__bkQwe{padding:50px 20px 30px}.gallery_footerTitle__Qv7Ou{font-size:1.5rem}.gallery_footerSubtitle__ddS2F{font-size:.9rem}.gallery_socials__MgdpB{gap:12px}.gallery_socials__MgdpB a{width:40px;height:40px}.gallery_socials__MgdpB svg{width:16px;height:16px}.gallery_footerLinks__Sy45o{gap:20px}.gallery_footerLinks__Sy45o a{font-size:.8rem}.gallery_contactInfo__Yr007{gap:20px}.gallery_contactItem__Ug5PG{font-size:.8rem}}@media (max-width:480px){.gallery_footer__bkQwe{padding:40px 15px 25px}.gallery_footerLogo__fhTjS{width:40px;height:40px}.gallery_footerTitle__Qv7Ou{font-size:1.3rem}.gallery_footerSubtitle__ddS2F{font-size:.8rem}.gallery_socials__MgdpB{gap:10px}.gallery_socials__MgdpB a{width:35px;height:35px}.gallery_socials__MgdpB svg{width:14px;height:14px}.gallery_footerLinks__Sy45o{gap:15px;flex-direction:column}.gallery_footerLinks__Sy45o a{font-size:.75rem}.gallery_contactInfo__Yr007{flex-direction:column;gap:10px;align-items:center}.gallery_contactItem__Ug5PG{font-size:.75rem}.gallery_footerCopyright__rvPzo{font-size:.7rem}}@media (max-width:600px){.gallery_albumDetail__ehNZn,.gallery_albumDetail__ehNZn *{display:block!important;float:none!important;flex:none!important;grid:none!important;width:100%!important;max-width:100vw!important;box-sizing:border-box!important;margin:0 auto 8px!important;padding:0!important;text-align:center!important}.gallery_albumDetailImage__em8El{width:100vw!important;max-width:100vw!important;height:auto!important;border-radius:0!important;margin:0 auto 8px!important;display:block!important;box-shadow:none!important}.gallery_albumBrideGroom__QzMXf{margin:8px 0 0!important;font-weight:600!important}.gallery_albumBrideGroom__QzMXf,.gallery_albumDetailNames__ebyfn{font-size:1.1rem!important;color:#222!important;text-align:center!important;width:100%!important;display:block!important}.gallery_albumDetailNames__ebyfn{margin:0 0 4px!important}.gallery_albumDetailExtra___a5Tr,.gallery_siteSubtitle___L3_R{display:none!important}.my-masonry-grid_column{width:50%!important;padding-left:8px}}.my-masonry-grid{display:flex;margin-left:-16px;width:auto}.my-masonry-grid_column{padding-left:16px;background-clip:padding-box}@media (max-width:800px){.my-masonry-grid{margin-left:-12px}.my-masonry-grid_column{padding-left:12px}}@media (max-width:500px){.my-masonry-grid{margin-left:-8px}.my-masonry-grid_column{padding-left:8px}}.my-masonry-grid_column>div{margin-bottom:16px;transition:all .3s cubic-bezier(.4,0,.2,1)}.my-masonry-grid_column>div:hover{transform:translateY(-4px)}.photo-skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:loading 1.5s infinite;border-radius:12px;height:200px}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}