.hero-container{position:relative;height:450px;overflow:hidden;background-color:#f0f0f0;margin-bottom:3rem}.parallax-img{width:100%;height:120%;object-fit:cover;object-position:center;opacity:0;transform:scale(1.1);transition:opacity 1s ease-in-out,transform 1s ease-out;will-change:transform,opacity;position:absolute;top:-10%;left:0;z-index:1}.parallax-img.loaded{opacity:1;transform:scale(1)}.hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(to bottom,rgba(0,0,0,0.2) 0%,rgba(0,0,0,0.7) 100%);z-index:2}.hero-content{position:relative;z-index:3;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:0 15px}.hero-title{text-shadow:0 4px 15px rgba(0,0,0,0.6);letter-spacing:1px;will-change:transform,opacity;-webkit-font-smoothing:antialiased;transform:translate3d(0,0,0);backface-visibility:hidden}.photo-wrapper{position:relative;z-index:1;transition:z-index 0s linear 0.1s}.photo-card{background-color:#fff;padding:12px;border-radius:2px;opacity:0;box-shadow:0 15px 35px rgba(50,50,93,0.15),0 5px 15px rgba(0,0,0,0.1);transition:transform 0.3s ease,box-shadow 0.3s ease,opacity 1s ease-in-out;will-change:opacity,transform}.photo-card.loaded{opacity:1}.rotate-left .photo-card{transform:rotate(-2deg)}.rotate-right .photo-card{transform:rotate(2deg)}.photo-wrapper:hover{z-index:10}.photo-wrapper:hover .photo-card{transform:scale(1.03) rotate(0deg);box-shadow:0 30px 60px rgba(50,50,93,0.25),0 18px 36px rgba(0,0,0,0.15)}.bento-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}.bento-item .card{height:100%}.bento-item .card-img-top{object-fit:cover;height:100%;min-height:200px}@media (min-width:992px){.bento-grid{grid-template-columns:repeat(4,1fr);grid-auto-rows:250px}.bento-item:nth-child(1){grid-column:span 2;grid-row:span 2}.bento-item:nth-child(1) .card-img-top{min-height:350px}.bento-item:nth-child(n+2){grid-column:span 1;grid-row:span 1}}.reveal-float{opacity:0;transform:translateY(50px);transition:opacity 0.8s cubic-bezier(0.25,0.8,0.25,1),transform 0.8s cubic-bezier(0.25,0.8,0.25,1);will-change:opacity,transform}.reveal-float.is-visible{opacity:1;transform:translateY(0)}.bento-item .card,.reveal-float .card{box-shadow:0 10px 30px rgba(0,0,0,0.08)!important}.reveal-float .card:hover{transform:translateY(-5px);box-shadow:0 15px 35px rgba(0,0,0,0.15)!important;transition:all 0.3s ease}