.birthday2024-container{min-height:100vh;background:linear-gradient(135deg,#fff8e1,#fffde7,#fff9e6);max-width:820px;margin:0 auto;padding:40px 20px}.birthday2024-header{text-align:center;margin-bottom:60px;position:relative;padding:40px 20px;background:linear-gradient(135deg,#ffeb3b33,#fff59d4d);border-radius:24px;box-shadow:0 8px 32px #ffc10726;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid rgba(255,213,79,.3)}.birthday2024-title{font-size:clamp(2rem,5vw,3rem);font-weight:800;color:#f57c00;margin:0;text-shadow:2px 2px 4px rgba(255,193,7,.3),0 0 20px rgba(255,235,59,.2);letter-spacing:2px}.birthday2024-subtitle{font-size:clamp(1rem,3vw,1.4rem);color:#ff9800;margin:12px 0 0;font-weight:600;letter-spacing:4px;text-transform:uppercase}.content-section{margin:0 auto 40px;padding:32px;background:#fff;border-radius:20px;box-shadow:0 4px 20px #00000014;animation:fadeInUp .8s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.section-header{text-align:center;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:3px solid #ffd54f}.section-title{font-size:2.2rem;font-weight:700;color:#f57c00;margin-bottom:.5rem}.section-subtitle{font-size:1rem;color:#666;font-weight:500;text-transform:uppercase;letter-spacing:2px}.designer-credit{font-size:1rem;color:#888;font-style:italic;margin-top:.5rem}.participants-section{margin:0 auto 40px;padding:32px;background:linear-gradient(135deg,#ffc1071a,#ffeb3b1a);border-radius:20px;box-shadow:0 4px 20px #ffc10726;animation:fadeInUp .8s ease-out .2s both}.participants-image-container{display:flex;justify-content:center;align-items:center;margin-top:1.5rem}.participants-image{max-width:100%;height:auto;border-radius:16px;box-shadow:0 8px 30px #00000026;cursor:pointer;transition:all .4s ease}.participants-image:hover{transform:scale(1.02);box-shadow:0 12px 40px #ffc1074d}.album-section{animation-delay:.3s}.album-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:2rem}.album-item{position:relative;border-radius:16px;overflow:hidden;box-shadow:0 4px 15px #0000001a;cursor:pointer;transition:all .4s ease;aspect-ratio:16/9}.album-item img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.album-item:hover{transform:translateY(-8px);box-shadow:0 12px 30px #ffc1074d}.album-item:hover img{transform:scale(1.05)}.album-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.7) 0%,transparent 50%);display:flex;align-items:flex-end;justify-content:center;padding:1.5rem;opacity:0;transition:opacity .3s ease}.album-item:hover .album-overlay{opacity:1}.view-text{color:#fff;font-size:1.1rem;font-weight:600;text-shadow:0 2px 4px rgba(0,0,0,.5)}.video-section{animation-delay:.4s}.video-container{display:flex;justify-content:center;align-items:center;margin-top:2rem}.birthday-video{width:100%;max-width:800px;border-radius:16px;box-shadow:0 8px 30px #00000026;transition:all .4s ease}.birthday-video:hover{box-shadow:0 12px 40px #ffc1074d}.calendar-section{animation-delay:.6s}.eki-section{animation-delay:.5s}.eki-main-posters{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-bottom:2rem}.eki-poster-item{position:relative;border-radius:16px;overflow:hidden;box-shadow:0 4px 15px #0000001a;cursor:pointer;transition:all .4s ease;aspect-ratio:3/4}.eki-poster-item img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.eki-poster-item:hover{transform:translateY(-8px);box-shadow:0 12px 30px #ffc1074d}.eki-poster-item:hover img{transform:scale(1.05)}.eki-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.7) 0%,transparent 50%);display:flex;align-items:flex-end;justify-content:center;padding:1.5rem;opacity:0;transition:opacity .3s ease}.eki-poster-item:hover .eki-overlay{opacity:1}.eki-small-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-top:1.5rem}.eki-small-item{position:relative;border-radius:12px;overflow:hidden;box-shadow:0 4px 15px #0000001a;cursor:pointer;transition:all .4s ease;aspect-ratio:1}.eki-small-item img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.eki-small-item:hover{transform:translateY(-5px) scale(1.02);box-shadow:0 12px 30px #ffc1074d;z-index:10}.eki-small-item:hover img{transform:scale(1.1)}.eki-small-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.6) 0%,transparent 50%);display:flex;align-items:flex-end;justify-content:center;padding:.75rem;opacity:0;transition:opacity .3s ease}.eki-small-item:hover .eki-small-overlay{opacity:1}.eki-small-overlay .view-text{font-size:.9rem}.calendar-section{animation-delay:.7s}.calendar-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1.5rem;margin-top:2rem}.calendar-item{position:relative;border-radius:12px;overflow:hidden;box-shadow:0 4px 15px #0000001a;cursor:pointer;transition:all .4s ease;aspect-ratio:1}.calendar-item.featured{grid-column:span 2;grid-row:span 2;aspect-ratio:4/3}.calendar-item img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.calendar-item:hover{transform:translateY(-5px) scale(1.02);box-shadow:0 12px 30px #ffc1074d;z-index:10}.calendar-item:hover img{transform:scale(1.1)}.calendar-label{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,.8) 0%,transparent 100%);color:#fff;padding:1rem .75rem .75rem;font-size:1rem;font-weight:600;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5)}.calendar-item.featured .calendar-label{font-size:1.5rem;padding:1.5rem 1rem 1rem}.image-modal{position:fixed;inset:0;background:#000000e6;display:flex;justify-content:center;align-items:center;z-index:1000;padding:2rem;animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.modal-content{position:relative;max-width:90vw;max-height:90vh;display:flex;flex-direction:column;align-items:center;animation:zoomIn .3s ease}@keyframes zoomIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.modal-content img{max-width:100%;max-height:80vh;object-fit:contain;border-radius:12px;box-shadow:0 20px 60px #00000080}.modal-close{position:absolute;top:-40px;right:0;background:#fff3;border:2px solid white;color:#fff;font-size:2rem;width:45px;height:45px;border-radius:50%;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;line-height:1;padding:0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.modal-close:hover{background:#ffc107cc;transform:rotate(90deg);border-color:#ffc107}.modal-caption{color:#fff;font-size:1.2rem;margin-top:1.5rem;font-weight:600;text-shadow:0 2px 10px rgba(0,0,0,.8);text-align:center}@media(max-width:768px){.birthday2024-container{padding:20px 12px}.birthday2024-header{margin-bottom:40px;padding:30px 16px}.birthday2024-title{font-size:2rem}.birthday2024-subtitle{font-size:1rem}.section-title{font-size:1.8rem}.content-section,.participants-section{padding:24px 20px}.album-gallery,.eki-main-posters{grid-template-columns:1fr;gap:1.5rem}.eki-small-gallery{grid-template-columns:repeat(2,1fr);gap:.75rem}.calendar-gallery{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem}.calendar-item.featured{grid-column:span 2;grid-row:span 1;aspect-ratio:16/9}.modal-content{padding:1rem}.modal-close{top:-35px;width:40px;height:40px;font-size:1.5rem}}@media(max-width:480px){.birthday2024-container{padding:20px 12px}.birthday2024-header{padding:30px 16px}.birthday2024-title{font-size:1.5rem}.content-section{padding:1.5rem;margin-bottom:2rem}.participants-section{padding:1.5rem}.section-title{font-size:1.5rem}.calendar-gallery{grid-template-columns:repeat(2,1fr)}.calendar-item.featured{grid-column:span 2}}@media(min-width:768px)and (max-width:1024px){.birthday2024-container{max-width:900px;padding:40px 24px}}@media(min-width:1024px){.birthday2024-container{max-width:1000px;padding:40px 32px}}@media(min-width:1440px){.birthday2024-container{max-width:1100px;padding:40px}}
