main{flex:1;margin-top:80px;margin-bottom:80px;overflow-y:auto}.container-fluid{display:flex;flex-direction:column;flex:1}.album-nombres-novios{font-family:Montserrat;font-size:1.3rem}.font-alt,.font-alt4{font-family:'Crimson Foam',sans-serif !important;font-weight:500;font-size:90px}.gallery-wrapper{flex:1;clear:both;width:100%;background-size:50vh;background-position:center center;background-repeat:no-repeat;padding:0}@media(max-width:767px){body{font-size:.9rem}.font-alt{font-size:80px !important}.font-alt4{font-size:62px !important}.btn-modal{top:70px;position:relative}}.modal-body-album{height:100vh;display:flex;align-items:center;justify-content:center;padding:0;flex-direction:column}#carouselWedding{width:100vw;height:100vh;overflow:hidden;position:relative}.carousel-inner{width:100%;height:100%}.carousel-item{height:100%}.carousel-item img{width:100%;height:auto;object-fit:contain}.carousel-item video{max-height:100%;max-width:100%;height:100%;object-fit:contain}.carousel-control-prev,.carousel-control-next{position:absolute;top:50%;transform:translateY(-50%);z-index:1050}.carousel.pointer-event{touch-action:pan-x pan-y pinch-zoom}.btn-modal{top:70px;position:relative}.error{color:#f00;text-align:center}.list-group-item{cursor:pointer}.selected-item{background-color:#f0f0f0}.custom-modal-content{background-color:#f6f4ed}.carousel-indicators{z-index:1060}.thumbnail{display:inline-block;position:relative;top:50%;left:50%;transform:translate(50%,-30%)}.media-wrapper{position:relative;display:inline-block}.video-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:48px;opacity:.8;pointer-events:none}.video-overlay i{pointer-events:none}.photoGallery{display:grid;gap:3px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-auto-rows:300px;padding:0}@media(max-width:768px){.photoGallery{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-auto-rows:200px}.video-overlay{font-size:35px}}@media(max-width:512px){.photoGallery{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-auto-rows:150px}}@media(max-width:425px){.photoGallery{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));grid-auto-rows:120px}}@media(max-width:380px){.photoGallery{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));grid-auto-rows:100px}}.photoGallery img{width:100%;height:100%;object-fit:cover;transition:opacity 1s ease}.photoGallery img.loading{opacity:0}.photoGallery img.loaded{opacity:1;cursor:pointer}.parent-container{position:relative;width:100%;height:100%}.placeholder-container{position:absolute;top:0;right:0;height:100%;width:100%;background-color:rgba(255,255,255,.5)}.placeholder-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-weight:bold;color:#a9a5a5}.placeholder-rotate{position:relative;width:100%;height:100%;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;animation:rotate 2s linear infinite;transform:translate(-50%,-50%)}.placeholder-item{position:absolute;background-color:#fff;border-radius:50%}Position dots in a circular pattern with increasing size .placeholder-item:nth-child(1){width:2px;height:2px;transform:rotate(0deg) translateX(15px) rotate(0deg)}.placeholder-item:nth-child(2){width:3px;height:3px;transform:rotate(45deg) translateX(15px) rotate(-45deg)}.placeholder-item:nth-child(3){width:4px;height:4px;transform:rotate(90deg) translateX(15px) rotate(-90deg)}.placeholder-item:nth-child(4){width:5px;height:5px;transform:rotate(135deg) translateX(15px) rotate(-135deg)}.placeholder-item:nth-child(5){width:6px;height:6px;transform:rotate(180deg) translateX(15px) rotate(-180deg)}.placeholder-item:nth-child(6){width:7px;height:7px;transform:rotate(225deg) translateX(15px) rotate(-225deg)}.placeholder-item:nth-child(7){width:8px;height:8px;transform:rotate(270deg) translateX(15px) rotate(-270deg)}.placeholder-item:nth-child(8){width:9px;height:9px;transform:rotate(315deg) translateX(15px) rotate(-315deg)}@keyframes rotate{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.retry-icon{background-color:#e9ecef;border-radius:50%;padding:11px;display:inherit;cursor:pointer}.retry-message{font-size:.9rem;font-weight:500;line-height:1.2;cursor:pointer}@media(max-width:768px){.retry-message{font-size:10px;font-weight:500;line-height:1.2;cursor:pointer}}.image-wrapper{position:relative}.dots-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;gap:8px}.dot{width:12px;height:12px;background-color:rgba(255,255,255,.5);border-radius:50%;animation:bounce 1.5s infinite ease-in-out}.dot:nth-child(2){animation-delay:.2s}.dot:nth-child(3){animation-delay:.4s}@keyframes bounce{0%,100%{transform:scale(1)}50%{transform:scale(1.5)}}.placeholder-grid{display:grid;gap:3px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-auto-rows:300px;padding:0;background-color:#333;position:relative;overflow:hidden}.placeholder-griditem{height:300px;background-color:rgba(200,200,200,.15);border-radius:5px}@media(max-width:768px){.placeholder-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-auto-rows:200px}.placeholder-griditem{height:200px}}@media(max-width:512px){.placeholder-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-auto-rows:150px}.placeholder-griditem{height:150px}}@media(max-width:425px){.placeholder-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));grid-auto-rows:120px}.placeholder-griditem{height:120px}}@media(max-width:380px){.placeholder-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));grid-auto-rows:100px}.placeholder-griditem{height:100px}}.placeholder-grid::before{content:"";position:absolute;top:0;left:0;width:200%;height:100%;background:linear-gradient(90deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.2) 50%,rgba(255,255,255,0) 100%);animation:shimmer-grid 1.5s infinite}@keyframes shimmer-grid{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}.video-loader{width:150px;height:150px;position:relative;border:2px solid #ccc;border-radius:5px;display:flex;justify-content:center;align-items:center;background-color:#333;overflow:hidden}.video-loader svg{width:80px;height:80px;fill:none;stroke:#ccc;stroke-width:2}.video-loader::before{content:"";position:absolute;top:100%;left:0;width:100%;height:100%;background-color:rgba(255,255,255,.1);animation:fillUp 3s ease-in-out infinite}@keyframes fillUp{0%{top:100%}100%{top:0}}#messageModal .modal-body{padding:20px}