/* Basic Reset */ * { margin: 0; padding: 0; box-sizing: border-box; } /* Loading Screen Styles */ #loading-screen { position: fixed; width: 100%; height: 100vh; background-color: #fff; /* Change to match your theme */ display: flex; justify-content: center; align-items: center; flex-direction: column; z-index: 9999999; } /* Simple Spinner Animation */ .spinner { width: 50px; height: 50px; border: 5px solid #ccc; border-top: 5px solid #007bff; border-radius: 50%; animation: spin 1s linear infinite; } @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } body { overflow: hidden; font-family: Arial, sans-serif; line-height: 1.6; background-color: #f9f9f9; color: #333; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; min-height: 100vh; } body.unlocked { overflow: auto; } .snowflake { color: #fff; font-size: 1em; font-family: Arial; text-shadow: 0 0 1px #000; } @-webkit-keyframes snowflakes-fall{0%{top:-10%}100%{top:100%}}@-webkit-keyframes snowflakes-shake{0%{-webkit-transform:translateX(0px);transform:translateX(0px)}50%{-webkit-transform:translateX(80px);transform:translateX(80px)}100%{-webkit-transform:translateX(0px);transform:translateX(0px)}}@keyframes snowflakes-fall{0%{top:-10%}100%{top:100%}}@keyframes snowflakes-shake{0%{transform:translateX(0px)}50%{transform:translateX(80px)}100%{transform:translateX(0px)}}.snowflake{position:fixed;top:-10%;z-index:9999;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default;-webkit-animation-name:snowflakes-fall,snowflakes-shake;-webkit-animation-duration:10s,3s;-webkit-animation-timing-function:linear,ease-in-out;-webkit-animation-iteration-count:infinite,infinite;-webkit-animation-play-state:running,running;animation-name:snowflakes-fall,snowflakes-shake;animation-duration:10s,3s;animation-timing-function:linear,ease-in-out;animation-iteration-count:infinite,infinite;animation-play-state:running,running}.snowflake:nth-of-type(0){left:1%;-webkit-animation-delay:0s,0s;animation-delay:0s,0s}.snowflake:nth-of-type(1){left:10%;-webkit-animation-delay:1s,1s;animation-delay:1s,1s}.snowflake:nth-of-type(2){left:20%;-webkit-animation-delay:6s,.5s;animation-delay:6s,.5s}.snowflake:nth-of-type(3){left:30%;-webkit-animation-delay:4s,2s;animation-delay:4s,2s}.snowflake:nth-of-type(4){left:40%;-webkit-animation-delay:2s,2s;animation-delay:2s,2s}.snowflake:nth-of-type(5){left:50%;-webkit-animation-delay:8s,3s;animation-delay:8s,3s}.snowflake:nth-of-type(6){left:60%;-webkit-animation-delay:6s,2s;animation-delay:6s,2s}.snowflake:nth-of-type(7){left:70%;-webkit-animation-delay:https://proxy.everskies.com/a/https://proxy.everskies.com/a/2.5s,1s;animation-delay:https://proxy.everskies.com/a/https://proxy.everskies.com/a/2.5s,1s}.snowflake:nth-of-type(8){left:80%;-webkit-animation-delay:1s,0s;animation-delay:1s,0s}.snowflake:nth-of-type(9){left:90%;-webkit-animation-delay:3s,https://proxy.everskies.com/a/https://proxy.everskies.com/a/1.5s;animation-delay:3s,https://proxy.everskies.com/a/https://proxy.everskies.com/a/1.5s} /* Demo Purpose Only*/ .demo { font-family: 'Raleway', sans-serif; color:#fff; display: block; margin: 0 auto; padding: 15px 0; text-align: center; } .demo a{ font-family: 'Raleway', sans-serif; color: #000; } #pinModal { z-index: 10001; } /* Header Section ---------------*/ header { background: #ff4f58; color: white; display: flex; justify-content: center; align-items: center; height: 100vh; width: 100%; text-align: center; z-index: 10000; } .header-container { max-width: 1200px; padding: 20px; } .header-container h1 { font-size: 10vw; margin: 0; line-height: 1.0; font-family: "Agu Display", serif; font-weight: 400; font-variation-settings: "MORF" 25; } .header-container p { font-size: 3vw; margin-top: 20px; font-family: "Sacramento", serif; font-weight: 400; } @media (max-width: 768px) { .header-container h1 { font-size: 12vw; } .header-container p { font-size: 8vw; margin-top: 15px; } } @media (max-width: 480px) { .header-container h1 { font-size: 15vw; } .header-container p { font-size: 8vw; margin-top: 10px; } } /* Button Styling for Button at the header section*/ .proceed-btn { display: inline-block; font-family: "Bubblegum Sans", sans-serif; margin-top: 30px; padding: 15px 30px; background-color: #ffffff; color: #ff4f58; text-decoration: none; font-size: 1.5rem; border-radius: 5px; border: 2px solid #ff4f58; transition: background-color 0.3s ease, color 0.3s ease; } .proceed-btn:hover { background-color: #ff4f58; color: white; border: 2px solid #ff3944; } /* Main Nav ---------------*/ nav { background: #ff4f58; color: white; display: flex; align-items: center; width: 100%; text-align: center; } .navbar { font-family: 'Orbitron', sans-serif; } /* About Us Section ---------------*/ #about { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; padding: 50px 20px; background-color: #fff; margin: 20px 0; border-radius: 8px; box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); text-align: center; } .about-left { flex: 1; padding: 20px; text-align: left; max-width: 600px; } #about h2 { font-size: 2.5rem; color: #ff4f58; font-family: "Sixtyfour Convergence", sans-serif; font-optical-sizing: auto; font-weight: 400; font-style: normal; font-variation-settings: "BLED" 0, "SCAN" 0, "XELA" 0, "YELA" 0; } #about p { font-size: 1.5rem; margin-top: 10px; max-width: 800px; margin-left: auto; margin-right: auto; line-height: 1.5; font-family: "Playwrite IT Moderna", cursive; font-optical-sizing: auto; font-weight: 400; font-style: normal; } .about-right { position: relative; overflow: hidden; } .about-image { width: 100%; max-width: 400px; /* Adjust as needed */ height: auto; display: block; cursor: none; /* Hide default cursor */ } /* Magnifying glass effect */ .magnifier { position: absolute; width: 120px; /* Adjust magnifier size */ height: 120px; border-radius: 50%; border: 2px solid #ff4f58; background-repeat: no-repeat; background-size: 600% 600%; /* Zoom level */ pointer-events: none; transform: translate(-50%, -50%); display: none; /* Initially hidden */ box-shadow: 0 0 10px rgba(0, 0, 0, 0.3); } /* Responsive Font Size for Smaller Screens */ @media (max-width: 768px) { #about h2 { font-size: 2rem; } #about p { font-size: 1.2rem; } } @media (max-width: 480px) { #about h2 { font-size: 1.8rem; } #about p { font-size: 1rem; } } .about-image { width: 100%; /* Ensures responsiveness */ max-width: 400px; /* Default max size */ height: auto; display: block; margin: 0 auto; } /* Adjust for larger screens */ @media (min-width: 992px) { .about-image { max-width: 300px; /* Reduce size on large screens */ } } /* Adjust for medium screens */ @media (max-width: 991px) { .about-image { max-width: 350px; } } /* Adjust for small screens */ @media (max-width: 768px) { .about-image { max-width: 100%; /* Full width for smaller devices */ } } /* Gallery Section ---------------*/ #gallery { padding: 0px; text-align: center; } #gallery h2 { font-size: 3rem; color: #ff4f58; margin-bottom: 20px; font-family: "Bubblegum Sans", sans-serif; font-weight: 400; font-style: normal; } .gallery-wrapper { position: relative; display: flex; align-items: center; justify-content: center; } .gallery-container { display: flex; gap: 20px; overflow-x: hidden; /* Hide horizontal scroll */ scroll-snap-type: x mandatory; width: 100%; /* Show 3 images initially */ padding: 0 5px; /* Added padding to prevent cropping */ padding-bottom: 10px; transition: transform 0.5s ease; /* Smooth transition for sliding */ } .gallery-item { flex: 0 0 auto; width: 250px; /* Each image width */ height: 350px; /* Each image height */ object-fit: cover; border-radius: 8px; box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); cursor: pointer; scroll-snap-align: start; } .gallery-item img { width: 100%; height: 100%; border-radius: 8px; } /* Button Styling */ .gallery-btn { position: absolute; top: 50%; transform: translateY(-50%); background-color: rgba(255, 255, 255, 0.7); border: none; font-size: 2rem; padding: 10px; cursor: pointer; transition: background-color 0.3s; z-index: 10; } .left-btn { left: 10px; /* Positioned closer to the gallery */ } .right-btn { right: 10px; /* Positioned closer to the gallery */ } .gallery-btn:hover { background-color: rgba(255, 255, 255, 0.9); } /* Ensure smooth scrolling on smaller screens */ @media (max-width: 768px) { .gallery-container { gap: 10px; width: 100%; /* Full width on smaller screens */ } .gallery-item { width: 200px; height: 300px; } } @media (max-width: 420px) { .gallery-container { gap: 10px; width: 100%; /* Full width on smaller screens */ } .gallery-item { width: 125px; height: 200px; } } /* Modal Styling */ .modal-body { text-align: center; } #modalImage { width: 100%; height: auto; } .image-caption { margin-top: 10px; font-size: 1.2rem; font-weight: bold; text-align: center; color: black; font-family: "Playfair Display", serif; font-optical-sizing: auto; font-weight: ; font-style: normal; } /* Smooth Scroll */ html { scroll-behavior: smooth; } /* Love Letter ---------------*/ #love-letter-section { text-align: center; margin: 50px 0; } .open-letter-btn { position: fixed; bottom: 20px; right: 20px; background-color: #ff4d6d; color: white; border: none; padding: 10px 20px; font-size: 18px; cursor: pointer; border-radius: 5px; transition: 0.3s; z-index: 10001; /* Ensures it stays above other elements */ } .open-letter-btn:hover { background-color: #d93d5a; } .floating-love-letter { position: fixed; bottom: 20px; right: 20px; width: 300px; background: white; border: 2px solid #ff4d6d; padding: 20px; border-radius: 10px; box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1); transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out; opacity: 0; transform: translateY(20px); z-index: 10001; } .floating-love-letter.visible { opacity: 1; transform: translateY(0); } .hidden { display: none; /* Completely removes it from the layout */ } /* Memories Section ---------------*/ #memories { text-align: center; padding: 50px 20px; background-color: #f9f9f9; } #memories h2 { font-size: 3rem; color: #ff4f58; margin-bottom: 20px; font-family: "Bubblegum Sans", sans-serif; font-weight: 400; font-style: normal; } /* Memories Grid - Default for Large Screens */ .memories-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); /* Auto-adjusting */ gap: 10px; padding: 20px; max-width: 1000px; margin: auto; } /* Memory Item Styling */ .memory-item { position: relative; overflow: hidden; border-radius: 10px; box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); } .memory-item img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s ease-in-out; } .memory-item:hover img { transform: scale(1.1); } .memory-item::before { content: ""; position: absolute; top: -4px; left: -4px; right: -4px; bottom: -4px; border-radius: 14px; z-index: -1; background: linear-gradient(45deg, #ff4f58, #ff914d, #ffd700, #66ff66, #00bfff, #8a2be2); background-size: 300% 300%; opacity: 0; transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out; } /* Hover Effect */ .memory-item:hover { transform: scale(1.05); box-shadow: 0 6px 12px rgba(0, 0, 0, 0.3); filter: brightness(1.2); border-color: transparent; /* Keep original padding */ } /* Animate the border on hover */ .memory-item:hover::before { opacity: 1; animation: borderAnimation 1.5s linear infinite; } /* Keyframes for moving gradient */ @keyframes borderAnimation { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } } /* Caption Styling */ .caption { position: absolute; bottom: 0; left: 0; width: 100%; background: rgba(0, 0, 0, 0.7); color: #fff; text-align: center; padding: 10px; font-size: 14px; opacity: 0; transition: opacity 0.3s ease-in-out; } .memory-item:hover .caption { opacity: 1; } /* Responsive: 2 Columns on Small Screens */ @media (max-width: 768px) { .memories-grid { grid-template-columns: repeat(2, 1fr); /* Two columns */ } } /* Responsive: 1 Column on Extra Small Screens */ @media (max-width: 480px) { .memories-grid { grid-template-columns: repeat(2, 1fr); /* Two columns */ /* grid-template-columns: 1fr; /* Single column for very small screens */*/ } } /*Video Section */ /* Make video smaller and responsive */ #video-carousel video { width: 70%; /* Adjust size (smaller than 100%) */ max-width: 300px; /* Prevent it from being too large */ margin: 0 auto; display: block; } #video-carousel h2 { font-size: 3rem; color: #ff4f58; margin-bottom: 20px; font-family: "Bubblegum Sans", sans-serif; font-weight: 400; font-style: normal; } /* Adjust for smaller screens */ @media (max-width: 768px) { #video-carousel video { width: 90%; max-width: 400px; } } @media (max-width: 480px) { #video-carousel video { width: 100%; max-width: 320px; } } .carousel-control-prev-icon, .carousel-control-next-icon { filter: invert(100%); border: 5px solid white; /* Adds a white border */ padding: 8px; /* Adjust padding for better visibility */ border-radius: 50%; } /*Audio Section ---------------*/ /*#audioPlayer audio { width: 100%; max-width: 600px; margin-top: 20px; } #audioPlayer button { padding: 10px; font-size: 16px; cursor: pointer; margin-top: 10px; }*/ /* Footer Section ---------------*/ footer { text-align: center; background-color: #ff4f58; color: #f9f9f9; padding: 10px 0; width: 100%; z-index: 10003; } /* Modal Styling */ .modal-body { text-align: center; } #modalImage { width: 100%; height: auto; } /* Modal Styling */ .modal-dialog { max-width: 90%; } .modal-body img { max-width: 100%; height: auto; } .folder img { width: 100px; /* Adjust as needed */ height: auto; margin: 8px; /* Add spacing between images */ } .modal-body1 { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; } .coll { width: 150px; /* Adjust thumbnail size */ height: auto; cursor: pointer; transition: transform 0.2s; } /* Default hover effect for larger screens */ .coll:hover { transform: scale(2.1); } /* Adjust hover effect for smaller screens */ @media (max-width: 800px) { .coll:hover { transform: scale(1.2); } } #modalImage1 { max-width: 100%; height: auto; } /*#folder button{ background-color: #ffffff; color: #ff4f58; text-decoration: none; font-size: 1.5rem; border-radius: 5px; border: 2px solid #ff4f58; transition: background-color 0.3s ease, color 0.3s ease; cursor: pointer; } #folder{ font-family: "Bubblegum Sans", sans-serif; z-index: 10000; }*/ #folder h2 { font-size: 3rem; color: #ff4f58; margin-bottom: 20px; font-family: "Bubblegum Sans", sans-serif; font-weight: 400; font-style: normal; } /* Wrap preview in a responsive container */ .gallery-preview { display: flex; justify-content: center; gap: 10px; cursor: pointer; max-width: 100%; margin: auto; transition: box-shadow 0.3s ease; transform-origin: top center; width: clamp(300px, 80vw, 600px); /* Responsive width scaling */ } /* Responsive scaling for image containers */ .main-image-container { width: 45%; aspect-ratio: 2/3; /* Keep the same height-to-width ratio */ position: relative; } .main-preview { width: 100%; height: 100%; object-fit: cover; border-radius: 10px; transition: transform 0.3s ease; } .small-images-container { display: flex; flex-direction: column; justify-content: space-between; gap: 5px; width: 50%; } .small-image-row { display: flex; justify-content: space-between; gap: 5px; } .small-preview { width: 48%; /* Responsive half-width inside row */ aspect-ratio: 2/3; /* Maintain portrait shape */ object-fit: cover; border-radius: 5px; transition: transform 0.3s ease; } /* Hover effects */ .main-image-container:hover .main-preview { transform: scale(1.05); } .small-images-container .small-preview:hover { transform: scale(1.05); } /* 🎬 Scoped Video Playlist Styles */ #playlist h2 { font-size: 3rem; color: #ff4f58; margin-bottom: 20px; font-family: "Bubblegum Sans", sans-serif; font-weight: 400; font-style: normal; } .video-playlist-scope { --primary: linear-gradient(to bottom right, #ff4f58, #ff4f58); --secondary: gold; --text: #fff; min-height: 100vh; background-image: var(--primary); font-family: sans-serif; color: var(--text); display: flex; align-items: center; } .video-playlist-scope * { margin: 0; padding: 0; box-sizing: border-box; } .video-playlist-scope.container { width: 100vw; display: grid; grid-template-columns: 1.8fr 1.2fr; gap: 1rem; padding: 0.5rem 3rem; text-transform: capitalize; } .video-playlist-scope .main-video, .video-playlist-scope .video-playlist { width: 100%; height: 30rem; } .video-playlist-scope .main-video .title { margin-top: 1rem; } .video-playlist-scope .video-playlist .title { padding-left: 1rem; } .video-playlist-scope .video-playlist > p { padding: 1rem; color: var(--secondary); } .video-playlist-scope .video-playlist .videos { height: 70%; overflow-y: auto; } .video-playlist-scope .video-playlist .videos::-webkit-scrollbar { width: 0.4rem; border-radius: 0.4rem; background-color: #0005; } .video-playlist-scope .video-playlist .videos::-webkit-scrollbar-thumb { border-radius: 0.4rem; background-color: #fff; } .video-playlist-scope .video-playlist .videos .video { position: relative; width: 100%; height: 4rem; display: flex; justify-content: center; align-items: center; padding: 0 1rem; margin-top: 0.1rem; cursor: pointer; border-radius: 0.5rem; } .video-playlist-scope .video-playlist .videos .video:hover { background-color: #0003; } .video-playlist-scope .video-playlist .videos .video.active { background-color: #0003; color: var(--secondary); } .video-playlist-scope .main-video video { width: 100%; border-radius: 0.5rem; } .video-playlist-scope .video img { position: absolute; left: 1rem; top: 50%; transform: translateY(-50%); width: 1.5rem; height: 1.5rem; filter: invert(100%); } .video-playlist-scope .video-playlist .videos .video.active img { filter: invert(100%) sepia(100%) saturate(2000%) hue-rotate(360deg); } .video-playlist-scope .video p { margin-left: 2.5rem; } .video-playlist-scope .video h3 { width: 23rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font: 100 1rem sans-serif; padding: 0 0.5rem; } /* Make video playlist more responsive on mobile */ @media (max-width: 990px) { .video-playlist-scope.container { grid-template-columns: 1fr; padding: 1rem; } .video-playlist-scope .main-video, .video-playlist-scope .video-playlist { height: auto; } .video-playlist-scope .main-video video { width: 100%; max-height: 100%; object-fit: cover; } .video-playlist-scope .video-playlist .videos { max-height: 20rem; overflow-y: auto; padding: 0 0.5rem 1rem; } .video-playlist-scope .video-playlist .videos .video { flex-direction: row; align-items: center; justify-content: flex-start; padding: 0.5rem; gap: 0.5rem; height: auto; } .video-playlist-scope .video img { position: relative; top: auto; left: auto; transform: none; width: 1.2rem; height: 1.2rem; margin-right: 0.5rem; } .video-playlist-scope .video h3 { font-size: 0.95rem; width: auto; white-space: normal; overflow: visible; text-overflow: unset; } .video-playlist-scope .video p { font-size: 0.8rem; margin: 0; } } /* Smooth Scroll */ html { scroll-behavior: smooth; }