@import"https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,700;1,400&family=Inter:wght@300;400;600&display=swap";.upsc-finale-section{position:relative;padding:5rem 1rem 6rem;background:radial-gradient(1100px 420px at 50% -4%,rgba(251,191,36,.16),transparent 62%),linear-gradient(180deg,#121f3a,#0f172a 56%,#0b1326);overflow:hidden}.upsc-finale-glow{position:absolute;border-radius:50%;filter:blur(52px);pointer-events:none}.upsc-finale-glow-top{width:260px;height:260px;top:-110px;left:-90px;background:#16a34a24}.upsc-finale-glow-bottom{width:320px;height:320px;bottom:-150px;right:-120px;background:#f973161f}.upsc-finale-card{position:relative;max-width:760px;margin:0 auto;padding:2.6rem 2rem;border-radius:22px;text-align:center;background:linear-gradient(125deg,#0f172aeb,#1e293bc7);border:1px solid rgba(251,191,36,.32);box-shadow:0 22px 45px #00000054,inset 0 1px #ffffff14;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;transform-origin:center}.upsc-finale-card:before,.upsc-finale-card:after{content:"";position:absolute;width:76px;height:76px;border:1px solid rgba(251,191,36,.5)}.upsc-finale-card:before{top:14px;left:14px;border-right:0;border-bottom:0}.upsc-finale-card:after{right:14px;bottom:14px;border-left:0;border-top:0}.upsc-finale-tag{width:fit-content;margin:0 auto 1.2rem;display:inline-flex;align-items:center;gap:.45rem;padding:.36rem .85rem;border-radius:999px;font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;color:#f8fafc;border:1px solid rgba(251,191,36,.55);background:#0f172abd}.upsc-finale-emblem{width:86px;height:86px;margin:0 auto 1rem;filter:drop-shadow(0 0 16px rgba(251,191,36,.2))}.upsc-finale-emblem img{width:100%;height:100%;object-fit:contain}.upsc-finale-title{font-size:clamp(2.2rem,4vw,3.2rem);line-height:1.08;color:#fefefe}.upsc-finale-subtitle{margin-top:.3rem;font-family:Inter,sans-serif;font-size:clamp(.9rem,2vw,1.1rem);letter-spacing:.34em;text-transform:uppercase;color:#fbbf24}.upsc-finale-divider{margin:1.6rem auto 1.25rem;width:min(420px,100%);display:grid;grid-template-columns:auto 1fr auto 1fr auto;align-items:center;gap:.7rem;color:#fbbf24;opacity:.95}.upsc-finale-divider span{height:1px;background:linear-gradient(to right,transparent,rgba(251,191,36,.72),transparent)}.upsc-finale-message,.upsc-finale-journey{font-family:Playfair Display,serif;color:#e5e7eb;font-size:clamp(1rem,2.2vw,1.2rem);line-height:1.75}.upsc-finale-journey{margin-top:.8rem;color:#f8fafc;font-style:italic}.upsc-finale-quote{margin:1.7rem auto 0;padding-top:1.3rem;border-top:1px solid rgba(148,163,184,.35);color:#cbd5e1;font-size:.95rem;letter-spacing:.02em;line-height:1.75;text-transform:uppercase}@media(hover:hover)and (pointer:fine){.upsc-finale-card:hover{transform:translateY(-8px) scale(1.015);border-color:#fbbf2494;box-shadow:0 28px 52px #00000061,inset 0 1px #ffffff1a}}.upsc-finale-card:active{transform:scale(.992)}@media(max-width:640px){.upsc-finale-section{padding:4.2rem .9rem 5rem}.upsc-finale-card{padding:2rem 1.1rem;border-radius:16px}.upsc-finale-card:before,.upsc-finale-card:after{width:54px;height:54px}.upsc-finale-subtitle{letter-spacing:.2em}.upsc-finale-quote{font-size:.84rem}}:root{--primary: #0f172a;--secondary: #1e293b;--accent: #f43f5e;--gold: #fbbf24;--text-light: #f8fafc;--text-muted: #94a3b8}*{margin:0;padding:0;box-sizing:border-box}body{background-color:var(--primary);color:var(--text-light);font-family:Inter,sans-serif;overflow-x:hidden}h1,h2,h3{font-family:Playfair Display,serif}.music-player-container{position:fixed;bottom:20px;right:20px;z-index:100}.music-btn{background:var(--accent);border:none;border-radius:50px;padding:10px 20px;display:flex;align-items:center;gap:10px;color:#fff;cursor:pointer;box-shadow:0 4px 15px #f43f5e66}.hero-section{height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;position:relative;background-image:url(/birthday-wisher/assets/background.png);background-size:cover;background-position:center;overflow:hidden}.hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(15,23,42,.6),var(--primary));z-index:1}.hero-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:600px;height:600px;background:radial-gradient(circle,rgba(251,191,36,.15) 0%,transparent 70%);border-radius:50%;pointer-events:none;z-index:2}.hero-content{position:relative;z-index:10;padding:2rem;max-width:800px}.hero-title{font-size:4.5rem;margin-bottom:.5rem;background:linear-gradient(to right,#fff,#e2e8f0,#cbd5e1);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:0 4px 20px rgba(255,255,255,.1);line-height:1.1;display:inline-block}.hero-title span{display:inline-block}.hero-subtitle{font-size:1.8rem;color:var(--gold);margin-bottom:3rem;letter-spacing:6px;text-transform:uppercase;display:flex;align-items:center;justify-content:center;gap:15px}.subtitle-decoration{font-size:1.2rem;opacity:.8}.hero-quote-container{max-width:700px;margin:0 auto;position:relative;padding:20px 0}.quote-line{height:1px;width:100px;background:linear-gradient(to right,transparent,var(--text-muted),transparent);margin:10px auto;opacity:.5}.hero-quote{font-family:Playfair Display,serif;font-style:italic;font-size:1.4rem;color:#e2e8f0;line-height:1.6;text-shadow:0 2px 4px rgba(0,0,0,.5)}.scroll-indicator{position:absolute;bottom:40px;display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--text-muted);font-size:.8rem;letter-spacing:2px;text-transform:uppercase;z-index:10;opacity:.8}.chakra-bg{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1;pointer-events:none}@media(max-width:768px){.hero-title{font-size:3rem}.hero-subtitle{font-size:1.2rem;letter-spacing:3px;flex-wrap:wrap}.hero-quote{font-size:1.1rem}.hero-glow{width:300px;height:300px}}.section-title{text-align:center;font-size:2.5rem;margin-bottom:3rem;color:var(--gold)}.timeline-section{padding:4rem 1rem;background:var(--primary)}.timeline-container{max-width:800px;margin:0 auto;position:relative}.timeline-line{position:absolute;left:50%;transform:translate(-50%);width:2px;height:100%;background:var(--secondary)}.timeline-item{display:flex;justify-content:space-between;align-items:center;margin-bottom:4rem;position:relative}.timeline-dot{width:40px;height:40px;background:var(--gold);border-radius:50%;position:absolute;left:50%;transform:translate(-50%);display:flex;justify-content:center;align-items:center;z-index:2;box-shadow:0 0 10px #fbbf2480}.timeline-content{width:45%;background:var(--secondary);padding:1.5rem;border-radius:12px;border:1px solid rgba(255,255,255,.05);box-shadow:0 4px 6px #0000001a;transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease;transform-origin:center}.timeline-item.left .timeline-content{margin-right:auto;text-align:right}.timeline-item.right .timeline-content{margin-left:auto;text-align:left}.timeline-year{font-size:.9rem;color:var(--accent);font-weight:600;margin-bottom:.5rem}.timeline-title{font-size:1.25rem;margin-bottom:.5rem}.timeline-desc{color:var(--text-muted);font-size:.95rem;line-height:1.5}.gallery-section{padding:4rem 1rem;background:var(--secondary)}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;max-width:1000px;margin:0 auto}.gallery-item{aspect-ratio:1}.gallery-placeholder{width:100%;height:100%;background:#ffffff0d;border-radius:12px;display:flex;justify-content:center;align-items:center;border:1px dashed var(--text-muted);color:var(--text-muted);transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease,background .24s ease;transform-origin:center}.gallery-placeholder:hover{background:#ffffff1a;border-color:var(--gold)}@media(hover:hover)and (pointer:fine){.timeline-content:hover,.gallery-placeholder:hover{transform:translateY(-6px) scale(1.02);box-shadow:0 14px 28px #0000003d;border-color:#fbbf24a6}}.timeline-content:active,.gallery-placeholder:active{transform:scale(.985)}.gallery-note{text-align:center;margin-top:2rem;font-style:italic;color:var(--text-muted)}.celebration-section{min-height:80vh;display:flex;justify-content:center;align-items:center;position:relative;background:radial-gradient(circle at bottom,#1e1b4b,var(--primary));padding:2rem;text-align:center}@media(max-width:768px){.hero-title{font-size:2.5rem}.timeline-line,.timeline-dot{left:20px}.timeline-item{flex-direction:column;align-items:flex-start;padding-left:50px}.timeline-content{width:100%;margin:0!important;text-align:left!important}}
