*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg-primary: #0a0a0f;--bg-secondary: #12121a;--bg-card: #1a1a28;--bg-card-hover: #222235;--text-primary: #f0f0f5;--text-secondary: #8888a0;--text-muted: #555570;--accent: #e94560;--accent-glow: rgba(233, 69, 96, .4);--accent-hover: #ff5a75;--border: #2a2a3a;--radius: 12px;--radius-sm: 8px;--max-width: 1200px;--transition: .3s cubic-bezier(.4, 0, .2, 1)}html{scroll-behavior:smooth}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;background:var(--bg-primary);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}a{color:var(--accent);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--accent-hover)}img{display:block;max-width:100%}h1,h2,h3,h4{font-weight:700;line-height:1.2;letter-spacing:-.02em}h1{font-size:clamp(2rem,5vw,3.5rem)}h2{font-size:clamp(1.5rem,3vw,2.2rem)}h3{font-size:clamp(1.2rem,2vw,1.5rem)}.container{max-width:var(--max-width);margin:0 auto;padding:0 1.5rem}.section{padding:5rem 0}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:var(--radius-sm);font-weight:600;font-size:.95rem;transition:all var(--transition);border:none;cursor:pointer}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover);box-shadow:0 0 30px var(--accent-glow);transform:translateY(-1px);color:#fff}.btn-outline{background:transparent;color:var(--text-primary);border:1px solid var(--border)}.btn-outline:hover{border-color:var(--accent);color:var(--accent)}.masonry-grid{display:flex;gap:1rem}.masonry-col{flex:1;display:flex;flex-direction:column;gap:1rem}.masonry-col-2{margin-top:4rem}.masonry-col-3{margin-top:2rem}.masonry-grid .gallery-item{display:block;overflow:hidden}.masonry-grid .gallery-item img{width:100%;display:block}@media(max-width:768px){.masonry-grid{flex-wrap:wrap}.masonry-col{flex:0 0 calc(50% - .5rem)}.masonry-col-3{margin-top:0}}@media(max-width:480px){.masonry-col{flex:0 0 100%}.masonry-col-2{margin-top:0}}.gallery-item.gallery-item-pending{opacity:0;transform:translateY(30px);min-height:100px;transition:opacity .5s ease-out,transform .5s ease-out}.gallery-item.gallery-item-visible{opacity:1;transform:translateY(0)}.gallery-item{position:relative;border-radius:var(--radius);overflow:hidden;cursor:pointer;transition:all var(--transition)}.gallery-item img{width:100%;height:auto;display:block;transition:transform .5s cubic-bezier(.4,0,.2,1)}.gallery-item:hover img{transform:scale(1.05)}.gallery-item:after{content:"";position:absolute;inset:0;border-radius:var(--radius);opacity:0;transition:opacity var(--transition);box-shadow:inset 0 0 0 2px var(--accent),0 0 30px var(--accent-glow);pointer-events:none}.gallery-item:hover:after{opacity:1}.gallery-item .overlay{position:absolute;bottom:0;left:0;right:0;padding:2rem 1rem 1rem;background:linear-gradient(transparent,#000c);opacity:0;transform:translateY(10px);transition:all var(--transition)}.gallery-item:hover .overlay{opacity:1;transform:translateY(0)}.overlay h3{font-size:.95rem;margin-bottom:.25rem}.overlay span{font-size:.8rem;color:var(--text-secondary)}.filter-bar{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:2rem}.filter-btn{padding:.5rem 1rem;border-radius:100px;border:1px solid var(--border);background:transparent;color:var(--text-secondary);font-size:.85rem;cursor:pointer;transition:all var(--transition)}.filter-btn:hover,.filter-btn.active{border-color:var(--accent);color:var(--accent);background:#e945601a}.card{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border);padding:1.5rem;transition:all var(--transition)}.card:hover{background:var(--bg-card-hover);border-color:var(--accent);transform:translateY(-4px);box-shadow:0 10px 40px #0000004d}.ba-slider{position:relative;overflow:hidden;border-radius:var(--radius);cursor:ew-resize;user-select:none;-webkit-user-select:none}.ba-slider img{display:block;width:100%;height:auto}.ba-slider .ba-after{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden}.ba-slider .ba-after img{display:block;width:100%;height:100%;object-fit:cover}.ba-slider .ba-handle{position:absolute;top:0;bottom:0;width:3px;background:#fff;cursor:ew-resize;z-index:10;box-shadow:0 0 10px #00000080}.ba-slider .ba-handle:after{content:"⟨ ⟩";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;color:#333;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;box-shadow:0 2px 10px #0000004d}.ba-labels{position:absolute;bottom:1rem;left:0;right:0;display:flex;justify-content:space-between;padding:0 1rem;pointer-events:none;z-index:5}.ba-label{background:#0009;backdrop-filter:blur(4px);padding:.3rem .75rem;border-radius:100px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:1rem 0;background:#0a0a0fcc;backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.05)}.nav-inner{display:flex;align-items:center;justify-content:space-between}.nav-logo{font-size:1.1rem;font-weight:700;color:var(--text-primary);letter-spacing:-.02em}.nav-logo span{color:var(--accent)}.nav-links{display:flex;gap:2rem;list-style:none}.nav-links a{color:var(--text-secondary);font-size:.9rem;font-weight:500;transition:color var(--transition)}.nav-links a:hover{color:var(--text-primary)}.footer{border-top:1px solid var(--border);padding:3rem 0;text-align:center;color:var(--text-muted);font-size:.85rem}.footer-cta{margin-bottom:2rem}.footer-cta h3{margin-bottom:.5rem;color:var(--text-primary)}.footer-cta p{color:var(--text-secondary);margin-bottom:1rem}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulse-glow{0%,to{box-shadow:0 0 20px var(--accent-glow)}50%{box-shadow:0 0 40px var(--accent-glow)}}.animate-in{animation:fadeInUp .6s ease-out forwards;opacity:0}.animate-in:nth-child(1){animation-delay:0s}.animate-in:nth-child(2){animation-delay:.1s}.animate-in:nth-child(3){animation-delay:.15s}.animate-in:nth-child(4){animation-delay:.2s}.animate-in:nth-child(5){animation-delay:.25s}.animate-in:nth-child(6){animation-delay:.3s}.animate-in:nth-child(7){animation-delay:.35s}.animate-in:nth-child(8){animation-delay:.4s}.animate-in:nth-child(9){animation-delay:.45s}.animate-in:nth-child(10){animation-delay:.5s}.animate-in:nth-child(11){animation-delay:.55s}.animate-in:nth-child(12){animation-delay:.6s}.scroll-indicator{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);animation:bounce 2s infinite}@keyframes bounce{0%,20%,50%,80%,to{transform:translate(-50%) translateY(0)}40%{transform:translate(-50%) translateY(-10px)}60%{transform:translate(-50%) translateY(-5px)}}.scroll-indicator svg{width:24px;height:24px;stroke:var(--text-muted)}
