.gallery-section{position:relative;padding:100px 0 0;background:linear-gradient(160deg,#fff8e7,#fdf4e3 40%,#fceee0);overflow:hidden;min-height:100vh;perspective:1200px;--tiltX:0deg;--tiltY:0deg}.gallery-bg-waves{position:absolute;inset:0;pointer-events:none;z-index:0}.wave-blob{position:absolute;filter:blur(90px);opacity:.18;border-radius:50%;animation:float-blob 22s ease-in-out infinite alternate}.blob1{width:650px;height:650px;background:radial-gradient(circle,#8b2635 0,transparent 70%);top:-8%;right:-6%}.blob2{width:550px;height:550px;background:radial-gradient(circle,#d4af37 0,transparent 70%);bottom:5%;left:-8%;animation-delay:-7s}.blob3{width:420px;height:420px;background:radial-gradient(circle,#c0392b 0,transparent 70%);top:45%;left:35%;animation-delay:-13s}@keyframes float-blob{0%{transform:translate(0) scale(1)}to{transform:translate(60px,120px) scale(1.12)}}.gallery-container{max-width:1600px;margin:0 auto;position:relative;z-index:2;padding:0 40px}.gallery-header{text-align:center;margin-bottom:70px;position:relative;z-index:2}.gallery-subtitle{font-family:Lato,sans-serif;color:#d4af37;letter-spacing:.35em;font-weight:700;font-size:.85rem;display:block;margin-bottom:14px;text-transform:uppercase}.gallery-title{font-family:Libre Baskerville,serif;font-size:4rem;color:#8b2635;font-weight:700;margin:0;line-height:1.1;letter-spacing:.04em}.title-underline{width:80px;height:4px;background:linear-gradient(90deg,#8b2635,#d4af37);margin:22px auto 0;border-radius:2px}.gallery-3d-stage{perspective:1000px;perspective-origin:50% 40%;transform-style:preserve-3d;display:flex;flex-direction:column;gap:28px;transform:rotateX(var(--tiltX)) rotateY(var(--tiltY));transition:transform .3s ease;margin-bottom:60px}.gallery-track-wrapper{width:100%;overflow:hidden;mask-image:linear-gradient(90deg,transparent 0,#000 8%,#000 92%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 8%,#000 92%,transparent)}.gallery-track{display:flex;gap:20px;width:-moz-max-content;width:max-content;animation:scroll-left linear infinite}.gallery-track.track-reverse{animation-name:scroll-right}@keyframes scroll-left{0%{transform:translateX(0)}to{transform:translateX(-50%)}}@keyframes scroll-right{0%{transform:translateX(-50%)}to{transform:translateX(0)}}.gallery-track-wrapper:hover .gallery-track{animation-play-state:paused}.gallery-card{flex-shrink:0;width:300px;height:210px;border-radius:20px;overflow:hidden;position:relative;cursor:pointer;transform:rotate(var(--rotation,0deg)) translateZ(0);transition:transform .5s cubic-bezier(.23,1,.32,1),box-shadow .5s ease;box-shadow:0 8px 24px rgba(139,38,53,.12),0 2px 6px rgba(0,0,0,.08)}.gallery-card:hover{transform:rotate(0deg) translateZ(40px) scale(1.06);box-shadow:0 24px 60px rgba(139,38,53,.3),0 8px 20px rgba(0,0,0,.15);z-index:10}.gallery-card-inner{width:100%;height:100%;position:relative;overflow:hidden}.gallery-card-inner img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .7s cubic-bezier(.23,1,.32,1)}.gallery-card:hover .gallery-card-inner img{transform:scale(1.12)}.gallery-card-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(139,38,53,.72) 0,rgba(139,38,53,.1) 45%,transparent 70%);display:flex;align-items:flex-end;justify-content:center;padding:20px 16px;opacity:0;transition:opacity .45s ease}.gallery-card:hover .gallery-card-overlay{opacity:1}.gallery-card-label{color:#fff;font-family:Lato,sans-serif;font-weight:700;font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;transform:translateY(8px);transition:transform .45s ease;text-shadow:0 1px 4px rgba(0,0,0,.4)}.gallery-card:hover .gallery-card-label{transform:translateY(0)}.gallery-cols-container{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:40px;position:relative;height:500px;overflow:hidden}.gallery-side-col{width:250px;height:100%;position:relative;flex-shrink:0;mask-image:linear-gradient(180deg,transparent 0,#000 10%,#000 90%,transparent);-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 10%,#000 90%,transparent)}.gallery-cylinder-section{flex-grow:1;display:flex;justify-content:center;align-items:center;height:100%;perspective:2000px;position:relative;overflow:visible}.vertical-col-wrapper{width:100%;height:100%;overflow:hidden}.vertical-track{display:flex;flex-direction:column;gap:20px;width:100%}.vertical-track.track-down{animation:scroll-down linear infinite}.vertical-track.track-up{animation:scroll-up linear infinite}@keyframes scroll-down{0%{transform:translateY(-50%)}to{transform:translateY(0)}}@keyframes scroll-up{0%{transform:translateY(0)}to{transform:translateY(-50%)}}.vertical-card{width:100%;height:180px;border-radius:16px;overflow:hidden;flex-shrink:0;cursor:pointer;transition:transform .3s ease;box-shadow:0 4px 12px rgba(0,0,0,.1)}.vertical-card:hover{transform:scale(1.05);box-shadow:0 8px 20px rgba(0,0,0,.15)}.vertical-card img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.cylinder-stage{perspective:2000px;transform-style:preserve-3d;width:300px;height:200px;position:relative;transform:rotateX(-5deg)}.cylinder-rotor{width:100%;height:100%;position:absolute;transform-style:preserve-3d;animation:rotate-cylinder 10s linear infinite;transform-origin:center center}.cylinder-stage:hover .cylinder-rotor{animation-play-state:paused}@keyframes rotate-cylinder{0%{transform:rotateY(0deg)}to{transform:rotateY(1turn)}}.cylinder-item{position:absolute;top:0;left:0;width:260px;height:180px;transform:rotateY(var(--rotateY)) translateZ(var(--radius));backface-visibility:visible;cursor:pointer;transition:transform .3s ease,filter .3s ease;border-radius:12px;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,.2)}.cylinder-item:hover{filter:brightness(1.2);transform:rotateY(var(--rotateY)) translateZ(var(--radius)) scale(1.1);z-index:100}.cylinder-item-inner{width:100%;height:100%;position:relative}.cylinder-item img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.cylinder-overlay{position:absolute;inset:0;background:rgba(139,38,53,.4);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease}.cylinder-item:hover .cylinder-overlay{opacity:1}.cylinder-overlay span{color:#fff;font-weight:800;letter-spacing:2px;border:2px solid #fff;padding:4px 12px;font-size:.8rem}.lightbox-overlay{position:fixed;inset:0;background:rgba(0,0,0,.9);z-index:9999;display:flex;align-items:center;justify-content:center;padding:40px;backdrop-filter:blur(8px);animation:fadeIn .3s ease}.lightbox-content{position:relative;max-width:90vw;max-height:90vh}.lightbox-image{max-width:100%;max-height:85vh;-o-object-fit:contain;object-fit:contain;border-radius:4px;box-shadow:0 0 50px rgba(0,0,0,.5);animation:scaleIn .3s cubic-bezier(.175,.885,.32,1.275)}.lightbox-close{position:absolute;top:-40px;right:-20px;background:none;border:none;font-size:2.5rem;color:#fff;cursor:pointer;transition:color .2s}.lightbox-close:hover{color:#fc0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}@media (max-width:768px){.gallery-title{font-size:2.5rem}.gallery-card{width:220px;height:155px}.gallery-3d-stage{gap:18px;margin-bottom:80px}.gallery-cols-container{height:400px;flex-direction:column}.gallery-side-col{display:none}.gallery-cylinder-section{width:100%;height:100%;perspective:800px}.cylinder-rotor{transform-origin:center center}.cylinder-item{width:160px;height:120px}}