@keyframes fadeInUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-40px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-60px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(60px)}to{opacity:1;transform:translate(0)}}@keyframes zoomIn{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@keyframes heroZoom{0%{transform:scale(1)}to{transform:scale(1.05)}}@keyframes slideUpReveal{0%{opacity:0;transform:translateY(50px) scale(.95);letter-spacing:10px}60%{opacity:1;transform:translateY(-5px) scale(1.02)}to{opacity:1;transform:translateY(0) scale(1);letter-spacing:6px}}.scroll-fade-up{opacity:0;animation:fadeInUp .9s cubic-bezier(.22,1,.36,1) forwards;animation-timeline:view();animation-range:entry 0% entry 80%}.scroll-slide-left{opacity:0;animation:slideInLeft .9s cubic-bezier(.22,1,.36,1) forwards;animation-timeline:view();animation-range:entry 0% entry 80%}.scroll-slide-right{opacity:0;animation:slideInRight .9s cubic-bezier(.22,1,.36,1) forwards;animation-timeline:view();animation-range:entry 0% entry 80%}.scroll-zoom{opacity:0;animation:zoomIn .9s cubic-bezier(.22,1,.36,1) forwards;animation-timeline:view();animation-range:entry 0% entry 80%}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-4{animation-delay:.4s}.delay-5{animation-delay:.5s}.hover-scale{transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.hover-scale:hover{transform:translateY(-5px) scale(1.03);box-shadow:0 10px 30px #0000004d}.stagger-children>*{opacity:0;animation:fadeInUp .6s cubic-bezier(.22,1,.36,1) forwards;animation-timeline:view();animation-range:entry 0% entry 80%}.stagger-children>*:nth-child(1){animation-delay:.05s}.stagger-children>*:nth-child(2){animation-delay:.1s}.stagger-children>*:nth-child(3){animation-delay:.15s}.stagger-children>*:nth-child(4){animation-delay:.2s}.stagger-children>*:nth-child(5){animation-delay:.25s}.stagger-children>*:nth-child(6){animation-delay:.3s}.stagger-children>*:nth-child(7){animation-delay:.35s}.stagger-children>*:nth-child(8){animation-delay:.4s}.birthday-hero .hero-content{position:relative;z-index:2;width:100%;text-align:center}.birthday-hero .hero-text-container{max-width:800px;margin:0 auto;padding:0 20px}.birthday-hero .hero-title{font-size:88px;font-weight:700;margin-bottom:16px;line-height:1.05}.birthday-hero .title-line{display:block;font-family:Playfair Display,serif;font-size:80px;letter-spacing:6px;color:#fff;margin-bottom:10px;opacity:0;animation:slideUpReveal 1s cubic-bezier(.22,1,.36,1) .2s forwards}.birthday-hero .title-highlight{display:inline-block;font-family:Playfair Display,serif;font-size:96px;letter-spacing:3px;color:#fff;border-bottom:3px solid #FFFFFF;padding-bottom:5px;opacity:0;animation:slideUpReveal 1s cubic-bezier(.22,1,.36,1) .6s forwards}.birthday-hero .hero-divider{width:80px;height:3px;background-color:#fff;margin:25px auto;opacity:0;animation:fadeIn 1s ease .8s forwards}.birthday-intro{background-color:#000;padding:80px 0;width:100%}.birthday-intro .intro-container{display:flex;max-width:1400px;margin:0 auto;gap:60px;padding:0 40px}.birthday-intro .intro-image-column{flex:1}.birthday-intro .intro-image-wrapper{overflow:hidden;border-radius:24px;cursor:pointer;transition:transform .3s ease}.birthday-intro .intro-image-wrapper:hover{transform:scale(1.02)}.birthday-intro .intro-image{width:100%;aspect-ratio:4/5;-o-object-fit:cover;object-fit:cover;transition:transform .3s ease}.birthday-intro .intro-image-wrapper:hover .intro-image{transform:scale(1.03)}.birthday-intro .intro-content-column{flex:1;display:flex;align-items:center}.birthday-intro .intro-content-wrapper{max-width:600px}.birthday-intro .intro-badge{font-family:Inter,sans-serif;font-size:12px;letter-spacing:5px;color:#888;margin-bottom:20px;text-transform:uppercase}.birthday-intro .intro-title{font-size:42px;font-weight:600;color:#fff;font-family:Playfair Display,serif;margin-bottom:20px;line-height:1.2}.birthday-intro .intro-title-highlight{border-bottom:3px solid #FFFFFF;display:inline-block;padding-bottom:5px}.birthday-intro .intro-divider{width:60px;height:2px;background-color:#fff;margin:20px 0 25px}.birthday-intro .intro-description{font-size:15px;line-height:1.7;color:#ccc;font-family:Inter,sans-serif;margin-bottom:18px}.birthday-services{background-color:#000;padding:0;border-top:1px solid #333333;border-bottom:1px solid #333333}.birthday-services .alt-container{width:100%;background-color:#000}.birthday-services .alt-section{width:100%;padding:80px 0}.birthday-services .alt-inner{display:flex;width:100%;max-width:1400px;margin:0 auto;gap:60px;padding:0 40px}.birthday-services .alt-inner-left{flex-direction:row}.birthday-services .alt-inner-right{flex-direction:row-reverse}.birthday-services .alt-image-col{flex:1}.birthday-services .alt-image-wrap{position:relative;width:100%;overflow:hidden;border-radius:24px;cursor:pointer;transition:transform .3s ease}.birthday-services .alt-image-wrap:hover{transform:scale(1.02)}.birthday-services .alt-image{width:100%;height:100%;aspect-ratio:4/5;-o-object-fit:cover;object-fit:cover;transition:transform .3s ease}.birthday-services .alt-image-wrap:hover .alt-image{transform:scale(1.03)}.birthday-services .alt-content-col{flex:1;display:flex;align-items:center}.birthday-services .alt-content-wrap{width:100%;max-width:600px}.birthday-services .alt-badge{font-family:Inter,sans-serif;font-size:12px;letter-spacing:5px;margin-bottom:15px;text-transform:uppercase;font-weight:500;color:#888}.birthday-services .alt-title{font-size:42px;font-weight:600;color:#fff;margin-bottom:20px;font-family:Playfair Display,serif;line-height:1.2}.birthday-services .alt-title-highlight{border-bottom:3px solid #FFFFFF;display:inline-block;padding-bottom:5px}.birthday-services .alt-divider{width:60px;height:2px;background-color:#fff;margin:20px 0 25px}.birthday-services .alt-description{font-size:15px;line-height:1.7;color:#ccc;font-family:Inter,sans-serif;margin-bottom:18px}.birthday-services-section{background-color:#000;padding:60px 0;border-top:1px solid #333333;border-bottom:1px solid #333333}.birthday-services-section .section-header{text-align:center;margin-bottom:40px}.birthday-services-section .section-title{font-size:30px;font-weight:600;letter-spacing:3px;color:#fff;margin-bottom:12px;font-family:Playfair Display,serif}.birthday-services-section .section-line{width:50px;height:2px;background-color:#fff;margin:0 auto 16px}.birthday-services-section .section-subtitle{font-size:13px;color:#aaa;font-family:Inter,sans-serif;letter-spacing:1px}.birthday-services-section .services-grid{display:grid;gap:16px;max-width:1400px;margin:0 auto;padding:0 20px}.birthday-services-section .service-card{text-align:center;padding:18px 14px;background-color:#000;border:1px solid #333333;border-radius:12px;transition:all .3s ease}.birthday-services-section .service-card:hover{background-color:#1a1a1a;border-color:#fff;transform:translateY(-4px)}.birthday-services-section .service-title{font-size:16px;font-weight:600;margin-bottom:8px;font-family:Playfair Display,serif;color:#fff}.birthday-services-section .service-description{font-size:12px;line-height:1.4;font-family:Inter,sans-serif;color:#aaa;margin:0}.birthday-services-section .service-icon{border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 14px;font-weight:700;transition:all .3s ease}.birthday-gallery{background-color:#000;padding:80px 0;border-top:1px solid #333333;border-bottom:1px solid #333333}.birthday-gallery .gallery-header{text-align:center;margin-bottom:60px}.birthday-gallery .gallery-title{font-size:42px;font-weight:600;letter-spacing:4px;color:#fff;margin-bottom:15px;font-family:Playfair Display,serif}.birthday-gallery .gallery-line{width:70px;height:3px;background-color:#fff;margin:0 auto 20px}.birthday-gallery .gallery-subtitle{font-size:16px;color:#aaa;font-family:Inter,sans-serif;letter-spacing:1px}.birthday-gallery .gallery-grid{display:block;-moz-columns:3 300px;columns:3 300px;-moz-column-gap:12px;column-gap:12px;max-width:1100px;margin:0 auto;padding:0 20px}.birthday-gallery .gallery-item{display:inline-block;width:100%;margin-bottom:12px;-moz-column-break-inside:avoid;break-inside:avoid;overflow:hidden;border-radius:8px;cursor:pointer;transition:all .4s ease}.birthday-gallery .gallery-item:hover{transform:scale(1.03) translateY(-4px);box-shadow:0 15px 40px #ffffff26}.birthday-gallery .gallery-item img{width:100%;height:auto;-o-object-fit:contain;object-fit:contain;display:block;transition:transform .5s ease}.birthday-gallery .gallery-item:hover img{transform:scale(1.05)}.birthday-carousel{background-color:#000;padding:60px 0;border-top:1px solid #333333;border-bottom:1px solid #333333}.birthday-carousel .carousel-header{text-align:center;margin-bottom:40px}.birthday-carousel .carousel-title{font-size:36px;font-weight:600;letter-spacing:3px;color:#fff;margin-bottom:15px;font-family:Playfair Display,serif}.birthday-carousel .carousel-line{width:60px;height:2px;background-color:#fff;margin:0 auto 20px}.birthday-carousel .carousel-subtitle{font-size:15px;color:#aaa;font-family:Inter,sans-serif;letter-spacing:1px}.birthday-carousel .carousel-container{position:relative;max-width:900px;margin:0 auto;overflow:hidden;border-radius:16px}.birthday-carousel .carousel-wrapper{overflow:hidden}.birthday-carousel .carousel-track{display:flex;transition:transform .6s cubic-bezier(.25,.46,.45,.94)}.birthday-carousel .carousel-slide{min-width:100%;aspect-ratio:16/9;overflow:hidden;background-color:#000}.birthday-carousel .carousel-slide img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.birthday-carousel .carousel-btn{position:absolute;top:50%;transform:translateY(-50%);background:#fff3;border:2px solid rgba(255,255,255,.3);color:#fff;width:48px;height:48px;border-radius:50%;cursor:pointer;font-size:24px;display:flex;align-items:center;justify-content:center;transition:all .3s ease;z-index:10}.birthday-carousel .carousel-btn:hover{background:#fff6;border-color:#fff}.birthday-carousel .carousel-btn-prev{left:16px}.birthday-carousel .carousel-btn-next{right:16px}.birthday-carousel .carousel-dots{display:flex;justify-content:center;gap:12px;margin-top:20px}.birthday-carousel .carousel-dot{width:12px;height:12px;border-radius:50%;background:#333;cursor:pointer;transition:all .3s ease;border:2px solid transparent}.birthday-carousel .carousel-dot-active{background:#fff;border-color:#fff;transform:scale(1.2)}.birthday-faq{background-color:#000;padding:60px 0;border-top:1px solid #333333;border-bottom:1px solid #333333}.birthday-faq .faq-container{display:flex;align-items:stretch;gap:40px;max-width:1400px;margin:0 auto;padding:0 40px}.birthday-faq .faq-left{flex:2;min-width:0;display:flex;flex-direction:column}.birthday-faq .faq-right{flex:1;max-width:350px;min-width:200px;display:flex;align-items:stretch}.birthday-faq .faq-image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;border-radius:16px;box-shadow:0 8px 24px #0006;border:1px solid #333333;transition:transform .3s ease}.birthday-faq .faq-image:hover{transform:scale(1.02)}.birthday-faq .faq-header{text-align:left;margin-bottom:30px}.birthday-faq .faq-title{font-size:32px;font-weight:400;letter-spacing:3px;color:#fff;margin-bottom:12px;font-family:Playfair Display,serif}.birthday-faq .faq-line{width:50px;height:2px;background-color:#fff;margin:0 0 16px}.birthday-faq .faq-subtitle{font-size:14px;color:#aaa;font-family:Inter,sans-serif;letter-spacing:1px}.birthday-faq .faq-wrapper{max-width:100%;margin:0}.birthday-faq .faq-item{margin-bottom:12px;background-color:#111;border:1px solid #333333;border-radius:12px;overflow:hidden}.birthday-faq .faq-item.open{border-color:#fff}.birthday-faq .faq-question{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;cursor:pointer;font-size:16px;font-weight:500;color:#fff;font-family:Playfair Display,serif;transition:background-color .3s}.birthday-faq .faq-question:hover{background-color:#1a1a1a}.birthday-faq .faq-icon{font-size:22px;font-weight:700;color:#fff;flex-shrink:0;margin-left:15px}.birthday-faq .faq-answer{max-height:0;overflow:hidden;transition:max-height .3s ease;padding:0 20px}.birthday-faq .faq-answer.open{max-height:200px;padding:0 20px 16px}.birthday-faq .faq-answer p{font-size:14px;color:#ccc;line-height:1.6;font-family:Inter,sans-serif;margin:0}.birthday-cta{background-color:#000;padding:80px 0;border-top:1px solid #333333;border-bottom:1px solid #333333}.birthday-cta .cta-wrapper{text-align:center;max-width:800px;margin:0 auto;padding:0 20px}.birthday-cta .cta-title{font-size:36px;font-weight:600;letter-spacing:3px;color:#fff;margin-bottom:16px;font-family:Playfair Display,serif}.birthday-cta .cta-divider{width:70px;height:2px;background-color:#fff;margin:0 auto 22px}.birthday-cta .cta-text{font-size:16px;color:#ccc;margin-bottom:35px;max-width:550px;margin-left:auto;margin-right:auto;line-height:1.6;font-family:Inter,sans-serif}.birthday-cta .cta-button{background-color:#fff;border:none;color:#000;padding:14px 45px;font-size:13px;letter-spacing:3px;cursor:pointer;transition:all .3s ease;font-family:Inter,sans-serif;font-weight:700;text-transform:uppercase;border-radius:40px}.birthday-cta .cta-button:hover{background-color:#333;color:#fff;transform:translateY(-3px)}.birthday-other-work{background-color:#000;padding:60px 0;border-top:1px solid #333333;border-bottom:1px solid #333333}.birthday-other-work .other-work-header{text-align:center;margin-bottom:40px}.birthday-other-work .other-work-title{font-size:32px;font-weight:400;letter-spacing:3px;color:#fff;margin-bottom:12px;font-family:Playfair Display,serif}.birthday-other-work .other-work-line{width:60px;height:2px;background-color:#fff;margin:0 auto}.birthday-other-work .other-work-container{display:flex;justify-content:center;flex-wrap:wrap;gap:14px;max-width:1200px;margin:0 auto;padding:0 20px}.birthday-other-work .other-work-btn{background-size:cover;background-position:center;background-repeat:no-repeat;border:2px solid #333333;border-radius:12px;cursor:pointer;overflow:hidden;min-width:110px;max-width:150px;height:75px;padding:0;box-shadow:0 4px 12px #0000004d;position:relative;flex:1;transition:all .3s ease}.birthday-other-work .other-work-btn:hover{transform:translateY(-4px) scale(1.03);border-color:#fff;box-shadow:0 8px 25px #00000080}.birthday-other-work .other-work-btn-title{color:#fff;font-size:13px;font-weight:600;letter-spacing:1.5px;font-family:Inter,sans-serif;text-transform:uppercase;display:flex;align-items:center;justify-content:center;width:100%;height:100%;transition:all .3s ease;text-shadow:2px 2px 4px rgba(0,0,0,.8);background:#0000004d;padding:0 8px;text-align:center;white-space:normal;word-wrap:break-word;line-height:1.2}.birthday-other-work .other-work-btn:hover .other-work-btn-title{letter-spacing:2px;background:#00000026}@media(max-width:1200px){.birthday-hero .hero-title{font-size:68px}.birthday-hero .title-line{font-size:60px}.birthday-hero .title-highlight{font-size:72px}}@media(max-width:992px){.birthday-hero .hero-title{font-size:56px}.birthday-hero .title-line{font-size:50px}.birthday-hero .title-highlight{font-size:60px}.birthday-hero .hero-badge{font-size:12px;letter-spacing:6px}.birthday-intro .intro-container{flex-direction:column;text-align:center;gap:40px;padding:0 30px}.birthday-intro .intro-content-wrapper{max-width:100%}.birthday-intro .intro-divider{margin:20px auto 25px}.birthday-intro .intro-title{font-size:32px}.birthday-services .alt-inner{flex-direction:column;gap:40px;padding:0 30px}.birthday-services .alt-content-wrap{max-width:100%;text-align:center}.birthday-services .alt-divider{margin:20px auto 25px}.birthday-services .alt-title{font-size:32px}.birthday-services-section .services-grid{grid-template-columns:repeat(2,1fr)}.birthday-gallery .gallery-grid{-moz-columns:2 auto;columns:2 auto}.birthday-faq .faq-container{gap:30px;padding:0 30px}.birthday-faq .faq-right{max-width:280px;min-width:150px}.birthday-carousel .carousel-btn{width:40px;height:40px;font-size:20px}}@media(max-width:768px){.birthday-hero{padding:80px 0;height:auto;min-height:100vh}.birthday-hero .hero-title{font-size:48px}.birthday-hero .title-line{font-size:42px;letter-spacing:4px}.birthday-hero .title-highlight{font-size:52px}.birthday-hero .hero-badge{font-size:11px;letter-spacing:5px}.birthday-hero .hero-subtitle{font-size:15px}.birthday-hero .hero-divider{width:60px}.birthday-intro{padding:50px 0}.birthday-intro .intro-container{padding:0 20px;gap:30px}.birthday-intro .intro-title{font-size:28px}.birthday-intro .intro-badge{font-size:10px;letter-spacing:4px}.birthday-intro .intro-description{font-size:14px}.birthday-intro .intro-divider{width:50px}.birthday-services .alt-section{padding:50px 0}.birthday-services .alt-inner{padding:0 20px;gap:30px}.birthday-services .alt-title{font-size:28px}.birthday-services .alt-badge{font-size:10px;letter-spacing:4px}.birthday-services .alt-description{font-size:14px}.birthday-services .alt-divider{width:50px}.birthday-services-section{padding:40px 0}.birthday-services-section .services-grid{grid-template-columns:1fr;gap:12px;padding:0 16px}.birthday-services-section .section-title{font-size:24px}.birthday-services-section .section-subtitle{font-size:12px}.birthday-services-section .section-line{width:40px}.birthday-services-section .service-card{padding:16px 14px}.birthday-services-section .service-title{font-size:15px}.birthday-services-section .service-description{font-size:12px}.birthday-gallery{padding:50px 0}.birthday-gallery .gallery-grid{-moz-columns:2 auto;columns:2 auto;-moz-column-gap:8px;column-gap:8px}.birthday-gallery .gallery-item{margin-bottom:8px}.birthday-gallery .gallery-title{font-size:32px;letter-spacing:3px}.birthday-gallery .gallery-line{width:50px}.birthday-gallery .gallery-subtitle{font-size:14px}.birthday-carousel{padding:40px 0}.birthday-carousel .carousel-title{font-size:28px}.birthday-carousel .carousel-btn{width:36px;height:36px;font-size:18px}.birthday-carousel .carousel-btn-prev{left:10px}.birthday-carousel .carousel-btn-next{right:10px}.birthday-carousel .carousel-dot{width:10px;height:10px}.birthday-faq{padding:40px 0}.birthday-faq .faq-container{flex-direction:column;gap:30px;padding:0 20px}.birthday-faq .faq-right{max-width:100%;min-width:unset;height:250px;order:-1}.birthday-faq .faq-image{height:100%;-o-object-fit:cover;object-fit:cover}.birthday-faq .faq-title{font-size:26px}.birthday-faq .faq-question{font-size:14px;padding:14px 16px}.birthday-faq .faq-answer.open{padding:0 16px 14px}.birthday-faq .faq-answer p{font-size:13px}.birthday-cta{padding:60px 0}.birthday-cta .cta-title{font-size:28px}.birthday-cta .cta-text{font-size:14px}.birthday-cta .cta-button{padding:12px 35px;font-size:12px}.birthday-other-work{padding:40px 0}.birthday-other-work .other-work-title{font-size:28px}.birthday-other-work .other-work-btn{min-width:calc(33.33% - 12px);flex:0 0 calc(33.33% - 12px);max-width:none;height:65px}.birthday-other-work .other-work-btn-title{font-size:10px;line-height:1.1;padding:0 4px}}@media(max-width:576px){.birthday-hero .hero-title{font-size:38px}.birthday-hero .title-line{font-size:32px}.birthday-hero .title-highlight{font-size:38px}.birthday-hero .hero-badge{font-size:10px;letter-spacing:4px}.birthday-intro .intro-title{font-size:24px}.birthday-intro .intro-badge{font-size:9px;letter-spacing:3px}.birthday-intro .intro-description{font-size:13px}.birthday-intro .intro-divider{width:40px}.birthday-services .alt-title{font-size:24px}.birthday-services .alt-badge{font-size:9px;letter-spacing:3px}.birthday-services .alt-description{font-size:13px}.birthday-services .alt-divider{width:40px}.birthday-services-section .section-title{font-size:20px}.birthday-services-section .section-subtitle{font-size:11px}.birthday-services-section .section-line{width:35px}.birthday-services-section .service-card{padding:14px 12px}.birthday-services-section .service-title{font-size:14px}.birthday-services-section .service-description{font-size:11px}.birthday-gallery .gallery-title{font-size:28px}.birthday-gallery .gallery-subtitle{font-size:12px}.birthday-carousel .carousel-title{font-size:24px}.birthday-carousel .carousel-btn{width:30px;height:30px;font-size:14px}.birthday-carousel .carousel-btn-prev{left:6px}.birthday-carousel .carousel-btn-next{right:6px}.birthday-carousel .carousel-dot{width:8px;height:8px}.birthday-faq .faq-title{font-size:22px}.birthday-faq .faq-question{font-size:13px;padding:12px 14px}.birthday-faq .faq-icon{font-size:18px}.birthday-faq .faq-right{height:180px}.birthday-cta .cta-title{font-size:24px}.birthday-cta .cta-text{font-size:13px}.birthday-cta .cta-button{padding:10px 28px;font-size:11px;letter-spacing:2px}.birthday-cta .cta-divider{width:40px}.birthday-other-work .other-work-title{font-size:24px}.birthday-other-work .other-work-btn{min-width:calc(50% - 10px);flex:0 0 calc(50% - 10px);height:60px}.birthday-other-work .other-work-btn-title{font-size:10px}}@media(max-width:380px){.birthday-other-work .other-work-btn{min-width:100%;flex:0 0 100%;height:55px}.birthday-other-work .other-work-btn-title{font-size:11px}}.birthday-hero{position:relative;height:100vh;min-height:700px;display:flex;align-items:center;overflow:hidden}.birthday-hero .hero-background{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0}.birthday-hero .hero-image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;animation:heroZoom 10s ease-in-out infinite alternate}.birthday-hero .hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#0000008c;z-index:1}.birthday-hero .hero-content{position:relative;z-index:2;width:100%;display:flex;align-items:center;justify-content:space-between;padding:0 60px;gap:40px}.birthday-hero .hero-left{flex:1;max-width:55%}.birthday-hero .hero-text-container{max-width:600px}.birthday-hero .hero-badge{font-family:Inter,sans-serif;font-size:13px;letter-spacing:8px;color:#fff;margin-bottom:20px;text-transform:uppercase;font-weight:500;opacity:0;animation:fadeInUp .9s ease .2s forwards}.birthday-hero .hero-title{font-size:72px;font-weight:700;margin-bottom:16px;line-height:1.05}.birthday-hero .title-line{display:block;font-family:Playfair Display,serif;font-size:64px;letter-spacing:6px;color:#fff;margin-bottom:10px;opacity:0;animation:slideUpReveal 1s cubic-bezier(.22,1,.36,1) .2s forwards}.birthday-hero .title-highlight{display:inline-block;font-family:Playfair Display,serif;font-size:76px;letter-spacing:3px;color:#fff;border-bottom:3px solid #FFFFFF;padding-bottom:5px;opacity:0;animation:slideUpReveal 1s cubic-bezier(.22,1,.36,1) .6s forwards}.birthday-hero .hero-divider{width:60px;height:3px;background-color:#fff;margin:20px 0 25px;opacity:0;animation:fadeIn 1s ease .8s forwards}.birthday-hero .hero-subtitle{font-size:18px;font-family:Inter,sans-serif;color:#e0e0e0;opacity:0;animation:fadeInUp 1s ease 1s forwards}.birthday-hero .hero-right{flex:1;max-width:45%;display:flex;justify-content:center;align-items:center}.birthday-hero .hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:420px;width:100%}.birthday-hero .hero-grid-item{overflow:hidden;border-radius:16px;aspect-ratio:1 / 1;box-shadow:0 8px 30px #00000080;transition:transform .4s ease,box-shadow .4s ease;opacity:0;animation:fadeInUp .6s cubic-bezier(.22,1,.36,1) forwards}.birthday-hero .hero-grid-item:nth-child(1){animation-delay:.3s}.birthday-hero .hero-grid-item:nth-child(2){animation-delay:.4s}.birthday-hero .hero-grid-item:nth-child(3){animation-delay:.5s}.birthday-hero .hero-grid-item:nth-child(4){animation-delay:.6s}.birthday-hero .hero-grid-item:hover{transform:scale(1.08) rotate(-2deg);box-shadow:0 12px 40px #0009}.birthday-hero .hero-grid-item img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;transition:transform .5s ease}.birthday-hero .hero-grid-item:hover img{transform:scale(1.1)}@media(max-width:1024px){.birthday-hero .hero-content{padding:0 40px;gap:30px}.birthday-hero .hero-title{font-size:56px}.birthday-hero .title-line{font-size:50px}.birthday-hero .title-highlight{font-size:60px}.birthday-hero .hero-grid{gap:12px;max-width:340px}}@media(max-width:768px){.birthday-hero{padding:80px 0;height:auto;min-height:100vh}.birthday-hero .hero-content{flex-direction:column;padding:0 30px;gap:40px;text-align:center}.birthday-hero .hero-left{max-width:100%;flex:none}.birthday-hero .hero-text-container{max-width:100%;margin:0 auto}.birthday-hero .hero-divider{margin:20px auto 25px}.birthday-hero .hero-title{font-size:48px}.birthday-hero .title-line{font-size:42px;letter-spacing:4px}.birthday-hero .title-highlight{font-size:52px}.birthday-hero .hero-badge{font-size:11px;letter-spacing:5px}.birthday-hero .hero-subtitle{font-size:15px}.birthday-hero .hero-right{display:none}}@media(max-width:576px){.birthday-hero .hero-title{font-size:38px}.birthday-hero .title-line{font-size:32px}.birthday-hero .title-highlight{font-size:38px}.birthday-hero .hero-badge{font-size:10px;letter-spacing:4px}.birthday-hero .hero-content{padding:0 20px}}
