@charset "UTF-8";@keyframes petal-fall{0%{transform:translate3d(0,-12vh,0) rotate(0)}to{transform:translate3d(8vw,112vh,0) rotate(540deg)}}@keyframes glow{50%{box-shadow:0 0 46px #d8ae634d}}@keyframes pulse-heart{50%{transform:scale(1.08)}}:root{font-family:Manrope,sans-serif;color:#fff8ee;background:#09060b;font-synthesis:none;--font-heading: "Playfair Display", serif;--font-romantic: "Great Vibes", cursive;--font-body: "Manrope", sans-serif}body{margin:0;min-width:320px;background:#09060b;color:#fff8ee;overflow-x:hidden}button,input{font:inherit}button{color:inherit}img{display:block;width:100%}.birthday-app{min-height:100vh;background:radial-gradient(circle at 70% 10%,rgba(143,24,56,.22),transparent 28%),#09060b}.birthday-nav{position:fixed;inset:0 0 auto;z-index:50;height:76px;padding:0 max(24px,(100vw - 1180px) / 2);display:flex;align-items:center;justify-content:space-between;transition:.35s}.birthday-nav--glass{background:#0c080fa6;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.08)}.birthday-nav button{background:none;border:0;cursor:pointer}.birthday-nav__brand{display:flex;gap:10px;align-items:center;color:#d8ae63;font:1.35rem var(--font-heading)!important}.birthday-nav__brand svg{width:18px;fill:currentColor}.birthday-nav nav{display:flex;gap:28px}.birthday-nav nav button{color:#c8bfc5;font-size:.82rem;letter-spacing:.06em;transition:.2s}.birthday-nav nav button:hover{color:#d8ae63}.birthday-nav__menu{display:none}.cinematic-intro{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;text-align:center;background:radial-gradient(circle,#321421,#09060b 58%);padding:24px}.cinematic-intro div{max-width:650px}.cinematic-intro svg{width:42px;height:42px;color:#d8ae63;fill:currentColor;animation:pulse-heart 1.8s infinite}.cinematic-intro span{display:block;color:#d8ae63;text-transform:uppercase;letter-spacing:.22em;font-size:.75rem;font-weight:700;margin-top:20px}.cinematic-intro h1{margin:16px 0 8px;font:clamp(4rem,12vw,8rem)/1 var(--font-romantic);color:#d8ae63}.cinematic-intro p{color:#c8bfc5;line-height:1.8}.cinematic-intro button,.birthday-hero button,.birthday-surprise button,.final-message button{border:1px solid rgba(216,174,99,.5);border-radius:999px;background:linear-gradient(120deg,#d8ae63,#b8873f);color:#190d10;padding:14px 24px;font-weight:700;cursor:pointer}.birthday-hero{min-height:100vh;position:relative;display:grid;place-items:center;overflow:hidden}.birthday-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#09060bf2 10%,#09060b66,#8f183824)}.birthday-hero__canvas{position:absolute;top:0;right:0;bottom:0;left:44%}.birthday-hero__copy{position:relative;z-index:2;width:min(1180px,100% - 40px);margin:auto}.birthday-hero__copy>span,.birthday-section header>span,.humna-section>div>span,.birthday-surprise__copy>span,.final-message>span{color:#d8ae63;text-transform:uppercase;letter-spacing:.22em;font-size:.75rem;font-weight:700}.birthday-hero h1{font:clamp(3.6rem,8vw,7rem)/.95 var(--font-heading);max-width:760px;margin:22px 0}.birthday-hero h1 em{display:block;color:#d8ae63;font:clamp(5rem,11vw,9rem)/.9 var(--font-romantic)}.birthday-hero p{max-width:610px;color:#c8bfc5;font-size:1.08rem;line-height:1.8}.birthday-hero button{display:flex;align-items:center;gap:10px;margin-top:34px}.birthday-section{width:min(1180px,100% - 40px);margin-inline:auto;padding:110px 0}.birthday-section>header{max-width:720px;margin-bottom:54px}.birthday-section h2,.humna-section h2,.birthday-surprise h2,.final-message h2{font:clamp(2.6rem,6vw,5rem)/1.08 var(--font-heading);margin:12px 0}.humna-section{width:min(1180px,100% - 40px);margin-inline:auto;padding:110px 0;display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:clamp(40px,8vw,100px)}.humna-section__photo{aspect-ratio:4/5;position:relative;border:12px solid #fff8ee;background:linear-gradient(145deg,#402534,#181016);box-shadow:0 30px 80px #0000008c}.humna-section__photo img{height:100%;object-fit:cover}img.is-missing{opacity:0}.humna-section__photo svg{position:absolute;right:-25px;bottom:-25px;color:#d8ae63;fill:currentColor;width:64px;height:64px}.humna-section p{color:#c8bfc5;line-height:1.9}.humna-section blockquote{font:2rem var(--font-romantic);color:#d8ae63;margin:28px 0 0}.reasons__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;perspective:1000px}.reasons article{background:#ffffff12;border:1px solid rgba(255,255,255,.12);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);min-height:230px;padding:30px;border-radius:22px;position:relative}.reasons article svg{color:#d66085;fill:currentColor}.reasons article>span{position:absolute;right:22px;top:18px;color:#ffffff2e;font:3rem var(--font-heading)}.reasons article p{margin-top:52px;line-height:1.7}.birthday-surprise{min-height:82vh;position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center;background:radial-gradient(circle at 30% 50%,rgba(216,174,99,.13),transparent 35%),#160d17}.birthday-surprise__canvas{height:650px}.birthday-surprise__copy{padding:50px;max-width:620px}.birthday-surprise__copy p{color:#c8bfc5;line-height:1.8}.birthday-surprise button,.final-message button{display:flex;align-items:center;gap:10px}.final-message{min-height:75vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:100px 24px;background:radial-gradient(circle,rgba(143,24,56,.3),transparent 60%)}.final-message h2{color:#d8ae63}.final-message p{max-width:620px;color:#c8bfc5;line-height:1.8}.final-message strong{font:3.2rem var(--font-romantic);margin:20px 0 36px}.birthday-footer{display:flex;justify-content:space-between;padding:30px max(24px,(100vw - 1180px) / 2);border-top:1px solid rgba(255,255,255,.08);color:#c8bfc5;font-size:.82rem}.birthday-footer strong{color:#d8ae63}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:grid;place-items:center;padding:30px;background:#050306eb;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.lightbox img{max-width:1050px;max-height:84vh;object-fit:contain}.lightbox button{position:absolute;right:28px;top:28px;background:#ffffff14;border:0;border-radius:50%;padding:12px;cursor:pointer}@media (max-width: 760px){.birthday-nav nav{display:none;position:absolute;top:66px;left:16px;right:16px;padding:18px;flex-direction:column;background:#0c080ff0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:18px}.birthday-nav nav.is-open{display:flex}.birthday-nav__menu{display:block}.birthday-hero__canvas{top:0;right:0;bottom:0;left:0;opacity:.42}.birthday-hero__copy{text-align:center}.birthday-hero button{margin-inline:auto}.reasons__grid,.humna-section,.birthday-surprise{grid-template-columns:1fr}.birthday-surprise__canvas{height:420px}.birthday-surprise__copy{padding:24px 24px 80px;text-align:center}.birthday-surprise button{margin-inline:auto}.birthday-footer{flex-direction:column;gap:8px;text-align:center}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}.immersive-birthday{--gold: #d9ad62;--pale-gold: #f0cf8d;--ivory: #fff7ed;--rose: #e77da0;min-height:100vh;background:#070306;color:var(--ivory);overflow:clip}.immersive-birthday button,.immersive-birthday a{font:inherit}.route-loader{min-height:100vh;display:grid;place-content:center;gap:8px;text-align:center;background:#070306;color:#d9ad62}.route-loader span{font:4rem var(--font-romantic)}.route-loader p{color:#9f9299;font-size:.75rem;letter-spacing:.12em}.immersive-birthday button:focus-visible,.immersive-birthday a:focus-visible{outline:2px solid var(--pale-gold);outline-offset:5px}.private-entry{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:grid;place-items:center;padding:28px;overflow-y:auto;overscroll-behavior:contain;background:radial-gradient(circle at 50% 45%,#230b16,#070306 62%);text-align:center}.private-entry:before{content:"∞";position:absolute;color:#d9ad6217;font:min(62vw,720px)/1 var(--font-heading);filter:blur(3px)}.private-entry__grain{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.45'/%3E%3C/svg%3E");pointer-events:none}.private-entry__dust,.final-portrait__dust{position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle,rgba(240,207,141,.8) 0 1px,transparent 1.5px);background-size:83px 77px;opacity:.25;animation:dust-drift 18s linear infinite}.private-entry__content{position:relative;z-index:2}.private-entry__content>span,.chapter-heading span,.mehndi-world__copy span,.family-constellation__copy>span,.letter-scene__instruction>span,.birthday-chest__copy>span,.final-portrait__copy>span{color:var(--gold);text-transform:uppercase;letter-spacing:.3em;font-size:.68rem}.private-entry h1{margin:18px 0;font:clamp(4.8rem,13vw,10rem)/.8 var(--font-heading)}.private-entry h1 em{color:var(--gold);font:1.1em var(--font-romantic)}.private-entry p{color:#c8bfc5;font:clamp(1rem,2vw,1.3rem)/1.8 var(--font-heading)}.private-entry__content>div{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:34px}.private-entry button,.immersive-hero button,.birthday-chest button,.final-portrait button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid rgba(217,173,98,.5);border-radius:999px;padding:13px 20px;background:linear-gradient(130deg,var(--pale-gold),#af7e34);color:#19080e;font-weight:700;cursor:pointer}.private-entry .button-ghost{background:#ffffff09;color:var(--ivory)}.private-entry .skip-intro{display:block;margin:22px auto 0;padding:5px;border:0;background:none;color:#988d94;font-size:.72rem}.entry-quiz{position:relative;z-index:2;width:min(760px,100% - 36px);padding:clamp(28px,5vw,58px);border:1px solid rgba(217,173,98,.22);background:linear-gradient(145deg,#1d0912eb,#070306c2);box-shadow:0 35px 110px #00000094;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.entry-quiz>span{display:block;margin-top:32px;color:var(--gold);text-align:center;text-transform:uppercase;letter-spacing:.28em;font-size:.68rem}.entry-quiz h2,.entry-ready h2{margin:18px auto 30px;max-width:680px;color:var(--ivory);text-align:center;font:clamp(2.5rem,5vw,4.6rem)/1.05 var(--font-heading)}.entry-quiz__progress{position:relative;height:2px;background:#d9ad6226}.entry-quiz__progress i{position:absolute;left:0;top:0;height:100%;background:linear-gradient(90deg,var(--rose),var(--pale-gold));box-shadow:0 0 12px #f0cf8d66;transition:width .55s ease}.entry-quiz__progress span{position:absolute;right:0;bottom:10px;color:#9e9299;letter-spacing:.15em;font-size:.65rem}.entry-quiz__options{display:grid;gap:11px;max-width:620px;margin:auto}.entry-quiz__options button{display:flex;align-items:center;gap:14px;width:100%;padding:14px 18px;border:1px solid rgba(217,173,98,.22);border-radius:14px;background:#ffffff06;color:#e8dfe3;text-align:left;cursor:pointer;transition:transform .25s,border-color .25s,background .25s}.entry-quiz__options button:hover:not(:disabled){transform:translate(5px);border-color:#f0cf8db3;background:#d9ad6214}.entry-quiz__options button:disabled{cursor:default}.entry-quiz__options button small{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border:1px solid rgba(217,173,98,.35);border-radius:50%;color:var(--gold)}.entry-quiz__options button.is-correct{border-color:#f0cf8de6;background:#d9ad6226;box-shadow:0 0 24px #d9ad621f}.entry-quiz__options button.is-wrong{border-color:#8f2347cc;background:#8f234724}.entry-quiz__response{display:flex;align-items:center;gap:13px;max-width:620px;margin:20px auto 0;padding:14px 16px;border-radius:14px;background:#d9ad6212;color:var(--gold)}.entry-quiz__response>svg{flex:0 0 25px;fill:currentColor}.entry-quiz__response p{flex:1;margin:0;color:#aaa0a7;font-size:.78rem;line-height:1.5}.entry-quiz__response strong{display:block;color:var(--pale-gold);font:1rem var(--font-heading)}.entry-quiz__response button{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;padding:10px 13px;border:0;border-radius:999px;background:var(--gold);color:#210b14;font-weight:700;cursor:pointer}.entry-ready{width:min(900px,100% - 36px)}.entry-ready h2{font-size:clamp(3.3rem,8vw,7rem)}.entry-ready p{max-width:650px;margin-inline:auto}.entry-quiz{max-height:calc(100dvh - 32px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(217,173,98,.55) transparent}.private-entry .entry-quiz__options button{display:grid;grid-template-columns:32px minmax(0,1fr);justify-content:initial;align-items:center;padding-inline:24%;text-align:left}.private-entry .entry-quiz__options button small{width:30px}.private-entry .entry-quiz__options button:hover:not(:disabled){transform:translate(5px)}.cinematic-progress{position:fixed;z-index:90;left:0;right:0;top:0;height:2px;background:#ffffff0f}.cinematic-progress i{display:block;height:100%;transform-origin:left;background:linear-gradient(90deg,#8f2347,var(--pale-gold))}.cinematic-progress span{position:absolute;right:18px;top:12px;color:#ffffff75;font-size:.62rem}.immersive-audio{position:fixed;right:22px;bottom:22px;z-index:80;width:44px;height:44px;border-radius:50%;border:1px solid rgba(217,173,98,.4);background:#070306ad;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);color:var(--gold);cursor:pointer}.immersive-hero{min-height:100svh;position:relative;display:grid;place-items:center;background:radial-gradient(circle at 65% 45%,#230b16,transparent 40%),#070306}.immersive-hero__visual{position:absolute;top:0;right:0;bottom:0;left:34%}.scene-loader{height:100%;display:grid;place-items:center;color:var(--gold);letter-spacing:.16em;font-size:.72rem}.infinity-fallback{height:100%;display:grid;place-items:center;color:#d9ad626b;font:38vw/.8 var(--font-heading);filter:drop-shadow(0 0 55px rgba(217,173,98,.18))}.immersive-hero__copy{width:min(1180px,100% - 40px);position:relative;z-index:2}.immersive-hero__copy>span{color:var(--gold);letter-spacing:.28em;font-size:.7rem}.immersive-hero__copy i{color:var(--rose)}.immersive-hero h1{max-width:780px;margin:24px 0;font:clamp(4rem,9vw,8rem)/.82 var(--font-heading)}.immersive-hero h1 em{display:block;color:var(--pale-gold);font:1.04em var(--font-romantic)}.immersive-hero p{max-width:520px;color:#c8bfc5;line-height:1.8}.immersive-hero button{margin-top:28px}.portrait-portal{position:absolute;z-index:1;right:clamp(35px,7vw,140px);top:50%;width:min(42vw,610px);height:min(78vh,720px);transform:translateY(-50%)}.portal-frame{position:absolute;z-index:3;left:50%;top:50%;width:min(25vw,350px);height:min(64vh,540px);padding:9px;border:1px solid rgba(240,207,141,.85);border-radius:48% 48% 18px 18px;background:linear-gradient(145deg,#f5d995,#8b5b1f);box-shadow:0 35px 110px #000000d1,0 0 55px #d9ad6233;transform:translate(-50%,-50%)}.portal-frame:before{content:"";position:absolute;top:5px;right:5px;bottom:5px;left:5px;z-index:2;border:1px solid rgba(75,20,41,.5);border-radius:inherit;pointer-events:none}.portal-frame img{width:100%;height:calc(100% - 48px);border-radius:46% 46% 9px 9px;object-fit:cover;object-position:center 25%;filter:saturate(.92) contrast(1.04)}.portal-frame span{display:grid;place-items:center;height:42px;color:#421126;text-align:center;font:1.08rem var(--font-romantic)}.portal-frame__orbit{position:absolute;z-index:-1;top:-12%;right:-12%;bottom:-12%;left:-12%;border:1px solid rgba(240,207,141,.48);border-radius:50%;transform:rotate(-16deg);box-shadow:0 0 28px #d9ad6226;animation:portal-orbit 13s linear infinite}.portal-frame__orbit:before,.portal-frame__orbit:after{content:"";position:absolute;width:9px;height:9px;border-radius:50%;background:var(--pale-gold);box-shadow:0 0 18px var(--gold)}.portal-frame__orbit:before{left:8%;top:23%}.portal-frame__orbit:after{right:8%;bottom:23%}.portal-memory{position:absolute;z-index:1;width:min(14vw,190px);height:min(32vh,270px);margin:0;padding:6px 6px 16px;border:1px solid rgba(217,173,98,.38);background:#d2af76;box-shadow:0 24px 65px #000000b8;opacity:.58}.portal-memory img{width:100%;height:100%;object-fit:cover}.portal-memory--left{left:0;top:18%;transform:rotate(-9deg)}.portal-memory--right{right:0;bottom:12%;transform:rotate(8deg)}.portal-sparkles{position:absolute;top:0;right:0;bottom:0;left:0}.portal-sparkles i{position:absolute;width:3px;height:3px;border-radius:50%;background:var(--pale-gold);box-shadow:0 0 12px var(--gold);animation:portal-sparkle 3.2s ease-in-out infinite}.portal-sparkles i:nth-child(1){left:8%;top:12%}.portal-sparkles i:nth-child(2){left:24%;top:4%;animation-delay:-.4s}.portal-sparkles i:nth-child(3){right:18%;top:9%;animation-delay:-1.2s}.portal-sparkles i:nth-child(4){right:3%;top:32%;animation-delay:-.8s}.portal-sparkles i:nth-child(5){right:10%;bottom:16%;animation-delay:-1.8s}.portal-sparkles i:nth-child(6){right:35%;bottom:4%;animation-delay:-.2s}.portal-sparkles i:nth-child(7){left:18%;bottom:8%;animation-delay:-2.4s}.portal-sparkles i:nth-child(8){left:3%;bottom:35%;animation-delay:-1.4s}.portal-sparkles i:nth-child(n+9){left:50%;top:50%;opacity:.4}.portal-sparkles i:nth-child(3n){width:5px;height:5px}.immersive-hero__copy{padding-right:min(47vw,610px)}.portal-frame{translate:-50% -50%}.portal-memory--left{rotate:-9deg}.portal-memory--right{rotate:8deg}.chapter-heading{width:min(900px,100% - 40px);margin:0 auto 90px;text-align:center}.chapter-heading h2,.mehndi-world h2,.family-constellation h2,.letter-scene h2,.birthday-chest h2,.final-portrait h2{margin:12px 0;font:clamp(3rem,7vw,6.2rem)/.95 var(--font-heading)}.chapter-heading p{max-width:580px;margin-inline:auto;color:#aaa0a7;line-height:1.8}.memory-path{padding:140px 0 200px;perspective:1100px;background:linear-gradient(#070306,#12070d 35%,#070306)}.memory-path__rail{width:min(1050px,100% - 40px);margin:auto;position:relative;display:grid;gap:160px}.memory-path__rail:before,.memory-path__trail{content:"";position:absolute;left:50%;top:0;width:1px;background:#d9ad6229}.memory-path__rail:before{bottom:0}.memory-path__trail{z-index:1;background:linear-gradient(var(--pale-gold),#8f2347);box-shadow:0 0 18px var(--gold)}.memory-frame{width:46%;min-height:560px;position:relative;display:grid;align-items:end;filter:saturate(.75);transition:filter .6s}.memory-frame:nth-child(odd){margin-left:54%}.memory-frame:hover{filter:saturate(1)}.memory-frame__image{position:absolute;top:0;right:0;bottom:0;left:0;border:9px solid #1c1117;outline:1px solid rgba(217,173,98,.4);background:radial-gradient(circle,#321421,#0b0709);overflow:hidden;box-shadow:0 35px 90px #000000a6}.memory-frame__image img{width:100%;height:100%;object-fit:contain;position:relative;z-index:1}.memory-frame__image img.is-missing{visibility:hidden}.memory-frame__image span{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#d9ad6247;font:13rem var(--font-romantic)}.memory-frame__date{position:absolute;z-index:3;top:-62px;left:-5vw;color:#ffffff12;white-space:nowrap;font:clamp(3rem,7vw,7rem) var(--font-heading)}.memory-frame__copy{position:relative;z-index:3;padding:44px 34px;background:linear-gradient(transparent,#070306f2)}.memory-frame__copy small{color:var(--gold)}.memory-frame__copy h3{margin:7px 0;color:var(--pale-gold);font:2.6rem var(--font-heading)}.memory-frame__copy p{color:#d3c8ce}.mehndi-world{min-height:145vh;position:relative;overflow:hidden;background:radial-gradient(circle at 20% 50%,#314019,transparent 30%),radial-gradient(circle at 80% 40%,#6c163a,transparent 30%),#0b0907}.mehndi-world__pattern{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.09;background:repeating-radial-gradient(circle at 20% 20%,transparent 0 18px,var(--gold) 19px 20px)}.mehndi-world__arch{position:absolute;width:70vw;height:90vh;left:15vw;top:12vh;border:3px solid rgba(217,173,98,.28);border-radius:45vw 45vw 0 0;box-shadow:0 0 90px #d9ad621f}.mehndi-photo{position:absolute;margin:0;padding:8px;background:#d9ad62;box-shadow:0 35px 80px #0009}.mehndi-photo img{width:100%;height:100%;object-fit:contain;background:#1a0d14}.mehndi-photo img.is-missing{visibility:hidden}.mehndi-photo--hands{width:min(32vw,390px);height:65vh;left:8vw;top:38vh;transform:rotate(-4deg)}.mehndi-photo--green{width:min(34vw,430px);height:72vh;right:8vw;top:22vh;transform:rotate(4deg)}.mehndi-photo figcaption{position:absolute;bottom:-34px;color:var(--pale-gold);font:1.5rem var(--font-romantic)}.mehndi-world__copy{position:absolute;width:min(520px,80vw);left:50%;bottom:10vh;transform:translate(-50%);text-align:center}.mehndi-world__copy p{color:#e0d1d7;line-height:1.9}.barat-cinematic{background:#050203;padding-bottom:25vh}.barat-date{min-height:70vh;display:grid;place-content:center;text-align:center}.barat-date span{color:var(--gold);font:clamp(8rem,22vw,20rem)/.7 var(--font-heading)}.barat-date p{letter-spacing:.4em;color:#9b8e94}.barat-moment{min-height:125vh;margin:0;display:grid;place-content:center;text-align:center;background:radial-gradient(circle,rgba(75,20,41,.45),transparent 52%)}.barat-moment>div{width:min(720px,82vw);height:min(82vh,920px);padding:10px;border:1px solid rgba(217,173,98,.45);background:#16090f;box-shadow:0 40px 120px #000c}.barat-moment img{width:100%;height:100%;object-fit:contain}.barat-moment img.is-missing{visibility:hidden}.barat-moment figcaption{max-width:760px;margin:34px auto 0;color:var(--pale-gold);font:clamp(1.8rem,4vw,3.5rem)/1.2 var(--font-heading)}.family-constellation,.memory-constellation{min-height:100vh;position:relative;background:radial-gradient(circle at 50% 45%,#121c2e,#070306 68%)}.family-constellation{overflow:hidden}.family-constellation:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 48%,#0703061f,#070306d1 72%),linear-gradient(90deg,rgba(7,3,6,.7),transparent 50%,rgba(7,3,6,.7));pointer-events:none}.family-constellation__portrait{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;filter:saturate(.72) contrast(1.08)}.family-sky{position:absolute;z-index:1;top:0;right:0;bottom:0;left:0}.family-star{position:absolute;width:22px;height:22px;border-radius:50%;background:var(--pale-gold);box-shadow:0 0 35px 12px #f0cf8d59}.family-star--one{left:30%;top:48%}.family-star--two{right:30%;top:48%}.family-star--three{left:calc(50% - 8px);top:62%;width:16px;height:16px;animation:glow-child 2.8s infinite}.family-sky svg{position:absolute;width:50%;height:60%;left:25%;top:26%}.family-sky path{fill:none;stroke:#d9ad6261;stroke-width:1;stroke-dasharray:6 12}.family-constellation__copy{position:relative;z-index:3;width:min(720px,100% - 40px);margin:auto;min-height:100vh;display:flex;flex-direction:column;justify-content:center;text-align:center;text-shadow:0 3px 24px #070306}.family-constellation__copy em{color:var(--pale-gold);font:clamp(6rem,16vw,13rem)/.8 var(--font-romantic)}.family-constellation__copy h3{color:#e6dae0;font:1.2rem var(--font-heading)}.family-constellation__copy p{max-width:560px;margin-inline:auto;color:#c9bec5;line-height:1.8}.family-photo-cloud{position:absolute;z-index:2;top:0;right:0;bottom:0;left:0;pointer-events:none}.family-photo-card{position:absolute;width:clamp(125px,12vw,190px);height:clamp(170px,17vw,255px);margin:0;padding:7px 7px 20px;border:1px solid rgba(217,173,98,.6);background:linear-gradient(145deg,#f3dfbb,#bd8c44);box-shadow:0 26px 65px #000000b8,0 0 24px #d9ad6221}.family-photo-card:after{content:"";position:absolute;top:5px;right:5px;bottom:5px;left:5px;border:1px solid rgba(75,20,41,.38);pointer-events:none}.family-photo-card img{width:100%;height:100%;object-fit:cover}.family-photo-card--top-left{left:5vw;top:7%}.family-photo-card--top-right{right:5vw;top:8%}.family-photo-card--bottom-left{left:7vw;bottom:7%}.family-photo-card--bottom-right{right:7vw;bottom:6%}.family-photo-card--top-left img{object-position:center 42%}.family-photo-card--top-right img{object-position:center 35%}.family-photo-card--bottom-left img{object-position:center 32%}.family-photo-card--bottom-right img{object-position:center}.memory-constellation{padding:140px 0}.constellation-map{width:min(1100px,100% - 40px);height:680px;position:relative;margin:auto;border-radius:50%;background:radial-gradient(circle,rgba(32,39,61,.5),transparent 65%)}.constellation-map>button{position:absolute;left:var(--x);top:var(--y);border:0;background:none;color:#c8bfc5;cursor:pointer;transform:translate(-50%,-50%)}.constellation-map button i{display:block;width:8px;height:8px;margin:auto;border-radius:50%;background:var(--gold);box-shadow:0 0 16px var(--pale-gold);transition:.3s}.constellation-map button span{display:block;margin-top:8px;white-space:nowrap;opacity:.55;font-size:.7rem}.constellation-map button.is-active i{transform:scale(2);background:var(--ivory)}.constellation-map button.is-active span{opacity:1;color:var(--pale-gold)}.constellation-map>svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.constellation-map>svg path{fill:none;stroke:#d9ad622e;stroke-width:1;stroke-dasharray:4 9}.constellation-message{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);text-align:center;width:min(350px,65%)}.constellation-message strong{color:var(--pale-gold);font:2.4rem var(--font-heading)}.constellation-message p{color:#aaa0a7;line-height:1.7}.letter-scene{min-height:125vh;position:relative;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;background:radial-gradient(circle at 30% 50%,#321b16,#070306 55%);padding:100px 7vw}.letter-scene__light{position:absolute;width:35vw;height:35vw;left:6vw;border-radius:50%;background:#f0b15c1a;filter:blur(60px)}.antique-envelope{width:min(560px,78vw);height:340px;position:relative;isolation:isolate;perspective:1100px;background:#c9b697;box-shadow:0 45px 100px #000000b3,inset 0 0 40px #52362324;transform:rotateX(5deg) rotate(-3deg);transform-style:preserve-3d}.antique-envelope__back{position:absolute;z-index:0;top:0;right:0;bottom:0;left:0;background:linear-gradient(145deg,#e8d6b7,#bda888)}.antique-envelope__flap{position:absolute;z-index:4;top:0;right:0;bottom:0;left:0;clip-path:polygon(0 0,50% 70%,100% 0);background:linear-gradient(160deg,#f3e3c6,#d1bb98);transform-origin:top center;backface-visibility:hidden;transition:transform 1s cubic-bezier(.22,1,.36,1),z-index 0s .48s;filter:drop-shadow(0 8px 8px rgba(73,43,25,.16))}.letter-scene.is-open .antique-envelope__flap{z-index:1;transform:rotateX(178deg)}.antique-envelope__front{position:absolute;z-index:5;top:0;right:0;bottom:0;left:0;clip-path:polygon(0 100%,0 34%,50% 73%,100% 34%,100% 100%);background:linear-gradient(155deg,#d9c5a7,#b9a486);box-shadow:inset 0 10px 18px #573a251f;pointer-events:none}.wax-seal{position:absolute;z-index:7;left:50%;top:55%;width:72px;height:72px;transform:translate(-50%,-50%);border:5px double #5c1028;border-radius:50%;background:radial-gradient(circle at 35% 28%,#b13860,#761631 70%);box-shadow:0 8px 18px #32071473,inset 0 2px 5px #ffc2d147;color:var(--gold);font:2rem var(--font-heading);cursor:pointer}.antique-envelope article{position:absolute;z-index:3;left:7%;top:0;width:86%;min-height:650px;padding:45px;border:1px solid rgba(122,83,55,.18);background:linear-gradient(100deg,#fff9ef,#f8eddd);color:#2c1820;box-shadow:0 35px 80px #00000080,inset 0 0 45px #9169440f;transform-origin:center bottom}.antique-envelope article:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:.12;background-image:radial-gradient(#75543e .45px,transparent .7px);background-size:5px 5px;pointer-events:none}.antique-envelope article h2,.antique-envelope article p,.antique-envelope article strong,.letter-fold{position:relative;z-index:1}.antique-envelope article h2{font-size:2.5rem}.antique-envelope article p{line-height:1.75;font-size:.9rem}.antique-envelope article strong{display:block;text-align:right;color:#8f2347;font:2.4rem var(--font-romantic)}.letter-fold{float:right;margin:-24px -24px 8px 14px;padding:8px 11px;border:1px solid rgba(92,16,40,.22);border-radius:999px;background:#8f234712;color:#6e2039;font:.68rem var(--font-body);letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.letter-scene__instruction{position:relative;z-index:2}.letter-scene__instruction p{color:#aaa0a7;line-height:1.8}.letter-scene.is-open .antique-envelope__front{z-index:2;filter:brightness(.88)}.letter-scene.is-open .antique-envelope article{z-index:4;min-height:610px;padding:38px 42px}.letter-scene.is-open .antique-envelope article h2{font-size:2.35rem}.letter-scene.is-open .antique-envelope article p{line-height:1.65;font-size:.88rem}.letter-scene.is-open .antique-envelope article strong{font-size:2.25rem}.birthday-chest{min-height:110vh;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;overflow:hidden;background:radial-gradient(circle at 35% 50%,rgba(75,20,41,.5),transparent 45%),#070306}.birthday-chest__scene{height:720px;position:relative;overflow:hidden}.birthday-chest__scene canvas{position:relative;z-index:1}.chest-reveal{position:absolute;z-index:3;left:50%;top:15%;width:clamp(175px,14vw,225px);max-height:390px;margin:0;padding:7px 7px 14px;transform-origin:50% 100%;border:1px solid rgba(240,207,141,.75);background:linear-gradient(145deg,#f8e8c9,#c99546);box-shadow:0 0 35px #f0cf8d94,0 24px 55px #000000bf}.chest-reveal:before{content:"";position:absolute;top:5px;right:5px;bottom:5px;left:5px;z-index:2;border:1px solid rgba(92,16,40,.45);pointer-events:none}.chest-reveal img{display:block;width:100%;height:clamp(220px,31vh,295px);object-fit:cover;object-position:center 24%;filter:saturate(1.08) contrast(1.04)}.chest-reveal figcaption{position:relative;z-index:3;margin-top:9px;color:#421126;text-align:center;font:.95rem var(--font-romantic)}.chest-reveal__halo{position:absolute;z-index:-1;top:-35%;right:-35%;bottom:-35%;left:-35%;border-radius:50%;background:radial-gradient(circle,rgba(255,236,177,.75),rgba(217,173,98,.18) 38%,transparent 68%);filter:blur(10px)}.birthday-chest__copy{position:relative;z-index:4;max-width:560px;padding:40px}.birthday-chest h2 em{display:block;color:var(--pale-gold);font:1.25em var(--font-romantic)}.birthday-chest__copy p{color:#aaa0a7;line-height:1.8}.birthday-chest__copy strong{display:block;margin:24px 0;color:var(--pale-gold);font:1.25rem var(--font-heading)}.birthday-chest button{margin-top:25px}.chest-fallback{width:180px;height:180px;margin:250px auto;color:var(--gold);filter:drop-shadow(0 0 35px rgba(217,173,98,.4))}.final-portrait{min-height:100svh;position:relative;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 78% 45%,rgba(75,20,41,.52),transparent 34%),radial-gradient(circle at 18% 42%,#190811,#070306 68%)}.final-portrait>img{position:absolute;z-index:1;right:clamp(32px,7vw,130px);left:auto;top:50%;width:min(32vw,470px);height:min(72vh,690px);padding:9px;border:1px solid rgba(217,173,98,.58);background:#16090f;object-fit:cover;object-position:center;transform:translateY(-50%) rotate(3deg);box-shadow:0 35px 100px #000000c7,0 0 45px #d9ad6221}.final-portrait>img.is-missing{visibility:hidden}.final-portrait:after{content:"";position:absolute;z-index:2;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,rgba(7,3,6,.3),transparent 58%,rgba(7,3,6,.18));pointer-events:none}.final-portrait__copy{position:relative;z-index:3;width:min(1200px,100% - 80px);padding-right:min(38vw,540px)}.final-portrait h2{max-width:720px}.final-portrait h2 em{display:block;color:var(--pale-gold);font:1.2em var(--font-romantic)}.final-portrait__copy p{color:var(--gold);font:2rem var(--font-romantic)}.final-portrait__copy>div{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:32px}.final-portrait__copy a{color:var(--pale-gold);padding:12px}.final-portrait footer{position:absolute;z-index:4;left:0;right:0;bottom:0;padding:24px;text-align:center;color:#93868d;font-size:.75rem;letter-spacing:.12em}@keyframes dust-drift{to{background-position:83px 154px}}@keyframes glow-child{50%{transform:scale(1.35);box-shadow:0 0 50px 20px #f0cf8d80}}@keyframes portrait-zoom{to{transform:scale(1.06)}}@keyframes portal-orbit{to{transform:rotate(344deg)}}@keyframes portal-sparkle{50%{opacity:.25;transform:translateY(-12px) scale(.55)}}@media (max-width: 760px){.immersive-hero__visual{top:0;right:0;bottom:0;left:0;opacity:.52}.immersive-hero__copy{text-align:center}.immersive-hero__copy button{margin-inline:auto}.memory-path__rail{gap:100px}.memory-path__rail:before,.memory-path__trail{left:12px}.memory-frame,.memory-frame:nth-child(odd){width:calc(100% - 38px);min-height:520px;margin-left:38px}.memory-frame__date{left:0;top:-48px;font-size:2.5rem}.mehndi-world{min-height:1500px}.mehndi-photo--hands,.mehndi-photo--green{width:65vw;height:500px}.mehndi-photo--hands{left:-5vw;top:260px}.mehndi-photo--green{right:-5vw;top:680px}.mehndi-world__copy{bottom:70px}.barat-moment>div{width:90vw;height:70vh}.family-star--one{left:18%}.family-star--two{right:18%}.constellation-map{height:760px}.constellation-map button span{white-space:normal;max-width:80px}.letter-scene,.birthday-chest{grid-template-columns:1fr}.letter-scene{padding:120px 20px 260px;gap:240px}.antique-envelope{margin:auto}.antique-envelope article{min-height:690px;padding:28px}.birthday-chest__scene{height:480px}.chest-reveal{top:9%;width:170px;max-height:320px}.chest-reveal img{height:235px}.birthday-chest__copy{padding:20px 24px 100px;text-align:center}.birthday-chest button{margin-inline:auto}.final-portrait{min-height:1180px;align-items:start;padding-top:90px}.final-portrait>img{top:auto;right:50%;bottom:110px;width:min(72vw,320px);height:430px;transform:translate(50%) rotate(2deg)}.final-portrait__copy{width:calc(100% - 36px);padding-right:0;text-align:center}.final-portrait__copy>div{justify-content:center}.private-entry__content>div{flex-direction:column}}@media (max-width: 1100px){.family-photo-card{width:130px;height:180px}.family-photo-card--top-left,.family-photo-card--bottom-left{left:2vw}.family-photo-card--top-right,.family-photo-card--bottom-right{right:2vw}}@media (max-width: 760px){.family-constellation,.family-constellation__copy{min-height:1080px}.family-constellation__copy{width:calc(100% - 30px)}.family-constellation__copy h2{font-size:clamp(2.8rem,13vw,4.5rem)}.family-constellation__copy em{font-size:clamp(5.5rem,26vw,8rem)}.family-photo-card{width:100px;height:138px;padding:5px 5px 13px}.family-photo-card--top-left{left:5vw;top:3%}.family-photo-card--top-right{right:5vw;top:4%}.family-photo-card--bottom-left{left:7vw;bottom:4%}.family-photo-card--bottom-right{right:7vw;bottom:3%}}@media (max-width: 760px){.immersive-hero{min-height:1120px;align-items:start;padding-top:85px}.immersive-hero__copy{padding-right:0}.portrait-portal{top:auto;right:50%;bottom:45px;width:90vw;height:510px;transform:translate(50%)}.portal-frame{width:min(58vw,255px);height:390px}.portal-memory{width:118px;height:175px}.portal-memory--left{left:2%;top:20%}.portal-memory--right{right:2%;bottom:5%}.portal-frame span{font-size:.9rem}}@media (max-width: 600px){.entry-quiz{padding:30px 18px}.entry-quiz>span{letter-spacing:.18em}.entry-quiz h2{font-size:2.35rem}.entry-quiz__response{align-items:flex-start;flex-wrap:wrap}.entry-quiz__response button{width:100%;justify-content:center}.entry-ready h2{font-size:3.25rem}.entry-ready p{font-size:.9rem}.entry-ready>div{flex-direction:column}}@media (max-width: 700px){.private-entry .entry-quiz__options button{padding-inline:16%}}@media (max-height: 900px) and (min-width: 601px){.entry-quiz{padding:28px 48px 24px}.entry-quiz>span{margin-top:20px}.entry-quiz h2{margin:12px auto 20px;font-size:clamp(2.5rem,4.3vw,3.65rem)}.entry-quiz__options{gap:8px}.entry-quiz__options button{padding:10px 16px}.entry-quiz__options button small{width:27px;height:27px;flex-basis:27px}.entry-quiz__response{margin-top:12px;padding:10px 14px}.entry-quiz .skip-intro{margin-top:10px}}@media (prefers-reduced-motion: reduce){.private-entry__dust,.final-portrait__dust,.family-star--three,.final-portrait>img{animation:none!important}}.classic-birthday{isolation:isolate}.classic-birthday:after{content:"Classic birthday experience";position:fixed;left:16px;bottom:14px;z-index:44;color:#ffffff73;font-size:.65rem;letter-spacing:.08em;pointer-events:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#07090d}button{font:inherit}.saba-cinema{min-height:100vh;overflow:clip;color:#eee6d7;background:#07090d;font-family:Montserrat,sans-serif;font-weight:300}.saba-cinema button{color:inherit}.film-grain{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;pointer-events:none;opacity:.055;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E")}.saba-intro{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;text-align:center;background:#030405}.saba-intro>p,.saba-intro__title>span{color:#c6bda9;text-transform:uppercase;font-size:clamp(.65rem,1vw,.85rem);letter-spacing:.25em}.saba-intro__beam{position:absolute;width:70vw;height:90vh;background:conic-gradient(from 250deg at 50% 50%,transparent 0deg,rgba(222,190,125,.09) 12deg,transparent 30deg);filter:blur(12px);animation:beam 8s ease-in-out infinite alternate}.saba-intro__title{position:relative}.saba-intro__title h1{margin:.05em 0;color:#ead59f;font:500 clamp(5rem,18vw,13rem)/.8 "Cormorant Garamond",serif;letter-spacing:.05em;text-shadow:0 0 45px rgba(201,169,106,.24);text-transform:uppercase}.saba-intro__title p{margin:1.4rem 0 2.7rem;letter-spacing:.45em;text-transform:uppercase}.saba-intro__title button,.cake-scene button,.grand-finale button{padding:.9rem 1.35rem;border:1px solid rgba(201,169,106,.55);background:transparent;text-transform:uppercase;letter-spacing:.16em;font-size:.67rem;cursor:pointer;transition:.3s}.saba-intro__title button:hover,.cake-scene button:hover{background:#c9a96a;color:#090909}.saba-intro__title i{margin-left:1rem;font-style:normal}.chapter-progress{position:fixed;z-index:80;left:2rem;top:50%;display:grid;gap:.7rem;justify-items:center;color:#c9a96a;font-size:.65rem;letter-spacing:.18em}.chapter-progress i{width:1px;height:65px;background:linear-gradient(#c9a96a,#c9a96a1a)}.music-dock{position:fixed;z-index:80;right:1.5rem;bottom:1.5rem;display:flex;border:1px solid rgba(201,169,106,.3);background:#07090dc7;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.music-dock button{width:42px;height:42px;border:0;background:transparent;cursor:pointer}.music-dock svg{width:16px}.saba-hero{position:relative;min-height:100svh;display:grid;place-items:center;isolation:isolate;overflow:hidden}.saba-hero>img{position:absolute;z-index:-2;top:-8%;right:0;bottom:0;left:0;width:100%;height:116%;object-fit:cover;filter:grayscale(.35) brightness(.55)}.saba-hero>img{object-position:64% 38%}.saba-hero__shade{position:absolute;z-index:-1;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#04070bf5,#04070b52 55%,#04070ba6),linear-gradient(0deg,#07090d 0%,transparent 35%)}.saba-hero__copy{width:min(1200px,86vw)}.saba-hero__copy span,.chapter-header span,.birthday-letter>span,.cake-scene__copy>span{color:#c9a96a;text-transform:uppercase;letter-spacing:.35em;font-size:.7rem}.saba-hero h1{margin:.03em 0;font:400 clamp(6.5rem,17vw,15rem)/.72 "Cormorant Garamond",serif;text-transform:uppercase}.saba-hero p{font:italic 400 clamp(1.25rem,2.4vw,2rem) "Cormorant Garamond",serif}.saba-hero time{display:inline-block;margin-top:1.2rem;color:#c7bdab;letter-spacing:.22em;text-transform:uppercase;font-size:.7rem}.saba-hero>small{position:absolute;bottom:2rem;display:flex;gap:1rem;align-items:center;text-transform:uppercase;letter-spacing:.2em;font-size:.57rem}.saba-hero>small i{display:block;width:55px;height:1px;background:#c9a96a}.story-section{padding:clamp(6rem,12vw,11rem) max(8vw,2rem)}.chapter-header{max-width:900px;margin-bottom:clamp(3rem,7vw,6rem)}.chapter-header h2,.birthday-letter h2,.cake-scene h2{margin:.12em 0;font:400 clamp(3.5rem,8vw,7.5rem)/.92 "Cormorant Garamond",serif}.chapter-header p{color:#a9a394;font:italic 400 clamp(1.15rem,2vw,1.6rem) "Cormorant Garamond",serif}.timeline-section{background:linear-gradient(180deg,#07090d,#0b1019)}.story-timeline{max-width:1050px;margin-left:auto}.story-timeline article{position:relative;min-height:330px;width:60%;padding:3rem 0 3rem 6rem;border-left:1px solid rgba(201,169,106,.25)}.story-timeline article:nth-child(2n){margin-left:30%}.story-timeline article>div{position:absolute;right:calc(100% + 2rem);top:3rem;width:180px;height:230px;overflow:hidden}.story-timeline img{width:100%;height:100%;object-fit:cover;filter:sepia(.2) grayscale(.2);transition:.5s}.story-timeline article:hover img{transform:scale(1.04)}.story-timeline span,.cinema-gallery span span{color:#c9a96a;font-size:.65rem;letter-spacing:.2em;text-transform:uppercase}.story-timeline h3,.trait-list h3{margin:.35em 0;font:400 clamp(2rem,4vw,3.4rem) "Cormorant Garamond",serif}.story-timeline p,.trait-list p{max-width:470px;color:#aaa496;line-height:1.8;font-size:.86rem}.trait-section{background:#e6dece;color:#101216}.trait-section .chapter-header span{color:#806330}.trait-section .chapter-header p{color:#625e55}.trait-list{max-width:1100px;margin-left:auto}.trait-list article{display:grid;grid-template-columns:60px 1fr auto;align-items:center;border-top:1px solid rgba(12,13,16,.2);padding:1.35rem 0}.trait-list article:last-child{border-bottom:1px solid rgba(12,13,16,.2)}.trait-list article>span{color:#8a6d3d;font-size:.68rem}.trait-list h3,.trait-list p{margin:0}.gallery-section{background:#080b10}.cinema-gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:1.25rem}.cinema-gallery button{position:relative;grid-column:span 4;height:540px;padding:0;border:0;background:#15171a;overflow:hidden;cursor:pointer;text-align:left}.cinema-gallery button:nth-child(2),.cinema-gallery button:nth-child(5){height:400px}.cinema-gallery button:nth-child(4){grid-column:span 8;height:460px}.cinema-gallery img{width:100%;height:100%;object-fit:cover;transition:.7s}.cinema-gallery button:hover img{transform:scale(1.045);filter:brightness(.65)}.cinema-gallery span{position:absolute;inset:auto 1.3rem 1.3rem;display:grid;gap:.35rem;text-transform:uppercase;font-size:.6rem;letter-spacing:.18em;text-shadow:0 2px 8px #000}.cinema-gallery strong{font:400 1.8rem Cormorant Garamond,serif;text-transform:none;letter-spacing:0}.cast-section{text-align:center;background:radial-gradient(circle at 50% 35%,#19202b,#07090d 56%)}.cast-section .chapter-header{margin-inline:auto}.credits{max-width:670px;margin:auto}.credits>p,.credits>em{display:block;color:#c9a96a;letter-spacing:.3em;text-transform:uppercase;font-size:.6rem;margin:3rem}.credits div{display:grid;grid-template-columns:1fr 1fr;gap:3rem;padding:1.25rem;border-bottom:1px solid rgba(255,255,255,.08);text-align:left}.credits strong{font:400 1.8rem Cormorant Garamond,serif}.credits span{text-align:right;color:#aaa496;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}.reviews-section{background:#d8ccb7;color:#101216}.reviews-section .chapter-header span{color:#806330}.reviews-section .chapter-header p{color:#625e55}.reviews-track{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#00000029}.reviews-track article{padding:clamp(2rem,4vw,4rem);background:#d8ccb7}.reviews-track span{color:#806330;letter-spacing:.2em}.reviews-track blockquote{margin:2rem 0;font:italic 400 clamp(1.6rem,2.5vw,2.4rem)/1.25 "Cormorant Garamond",serif}.reviews-track cite{font-size:.65rem;letter-spacing:.16em;text-transform:uppercase}.behind-section{background:#0c1016}.film-slider{position:relative}.film-strip{display:flex;gap:2rem;overflow-x:auto;padding:2rem max(3rem,(100vw - 1180px) / 2) 4rem;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;overscroll-behavior-inline:contain}.film-strip::-webkit-scrollbar{display:none}.film-strip:focus-visible{outline:1px solid rgba(201,169,106,.55);outline-offset:8px}.film-strip figure{flex:0 0 min(360px,75vw);padding:12px 12px 25px;margin:0;background:#e3d9c6;color:#171717;scroll-snap-align:center;box-shadow:0 20px 40px #0008;transition:transform .45s ease,box-shadow .45s ease}.film-strip figure:hover{transform:translateY(-10px) rotate(0)!important;box-shadow:0 28px 60px #000b}.film-strip img{width:100%;aspect-ratio:4/5;object-fit:cover}.film-strip figcaption{padding-top:1rem;font:italic 1.3rem Cormorant Garamond,serif;text-align:center}.film-slider__controls{display:flex;align-items:center;justify-content:center;gap:1.2rem}.film-slider__controls>button{display:grid;place-items:center;width:48px;height:48px;border:1px solid rgba(201,169,106,.38);border-radius:50%;background:#c9a96a0f;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:.3s}.film-slider__controls>button:hover{color:#090b0e;background:#c9a96a;transform:scale(1.08)}.film-slider__controls svg{width:18px}.film-slider__dots{display:flex;align-items:center;gap:.25rem;padding:.55rem .7rem;border:1px solid rgba(201,169,106,.18);border-radius:999px;background:#07090d99}.film-slider__dots button{width:25px;height:22px;padding:0;border:0;background:transparent;cursor:pointer}.film-slider__dots i{display:block;width:6px;height:6px;margin:auto;border-radius:999px;background:#77736b;transition:.35s}.film-slider__dots button.is-active i{width:22px;background:#c9a96a;box-shadow:0 0 14px #c9a96a8c}.birthday-letter{min-height:100svh;display:grid;place-content:center;padding:8vw;text-align:center;background:radial-gradient(circle,#1f1b16,#07090d 60%)}.birthday-letter p{max-width:850px;margin:2rem auto;color:#c6beaf;font:italic 400 clamp(1.4rem,2.8vw,2.25rem)/1.55 "Cormorant Garamond",serif}.birthday-letter strong{color:#c9a96a;font:400 clamp(1.5rem,3vw,2.2rem) "Cormorant Garamond",serif}.cake-scene{position:relative;min-height:100svh;display:grid;grid-template-columns:1fr 1fr;place-items:center;padding:8vw;background:#05070a}.cake-scene__glow{position:absolute;left:25%;width:40vw;height:40vw;border-radius:50%;background:#c9a96a21;filter:blur(80px);opacity:.2;transition:1s}.cake-scene--lit .cake-scene__glow,.cake-scene--wish .cake-scene__glow{opacity:1}.cake{position:relative;width:min(380px,75vw);height:380px}.cake__tier{position:absolute;bottom:55px;width:100%;height:170px;border-radius:18px 18px 5px 5px;background:linear-gradient(90deg,#a88a58,#e4cca0 45%,#8b6b3b);box-shadow:inset 0 10px 15px #fff5}.cake__tier span{display:grid;place-items:center;height:100%;color:#4b3820;font:5rem Cormorant Garamond,serif}.cake__top{position:absolute;bottom:205px;width:100%;height:55px;border-radius:50%;background:#ead8b8}.cake__plate{position:absolute;bottom:35px;left:-10%;width:120%;height:25px;border-radius:50%;background:#6f6658}.cake__candles{position:absolute;z-index:2;bottom:230px;left:10%;width:80%;display:flex;justify-content:space-around}.cake__candles i{position:relative;width:8px;height:70px;background:repeating-linear-gradient(45deg,#e8d8b7 0,#e8d8b7 7px,#a88448 7px,#a88448 12px)}.cake__candles b{position:absolute;bottom:calc(100% + 5px);left:-7px;width:22px;height:34px;border-radius:60% 40% 55% 45%;background:#ffc454;box-shadow:0 0 20px 8px #e4a34188;animation:flame .7s ease-in-out infinite alternate}.cake-scene__copy{position:relative;max-width:580px}.cake-scene__copy h2{font-size:clamp(3rem,6vw,5.5rem)}.cinema-lightbox{position:fixed;z-index:110;top:0;right:0;bottom:0;left:0;display:grid;grid-template-columns:auto minmax(0,850px) auto;place-content:center;align-items:center;gap:1rem;padding:4rem;background:#030405f5}.cinema-lightbox button{border:0;background:transparent;cursor:pointer}.cinema-lightbox figure{margin:0}.cinema-lightbox img{display:block;max-width:100%;max-height:75vh;margin:auto;object-fit:contain}.cinema-lightbox figcaption{display:grid;margin-top:1rem;font:1.5rem Cormorant Garamond,serif}.cinema-lightbox figcaption span{color:#c9a96a;font:500 .58rem Montserrat,sans-serif;letter-spacing:.2em;text-transform:uppercase}.cinema-lightbox__close{position:absolute;right:2rem;top:2rem}.grand-finale{position:fixed;z-index:120;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;text-align:center;background:radial-gradient(circle,#2d261a,#030405 55%)}.grand-finale>strong{font:400 13rem Cormorant Garamond,serif;color:#c9a96a}.grand-finale>div>span{color:#c9a96a;letter-spacing:.5em;text-transform:uppercase}.grand-finale h2{margin:0;font:400 clamp(7rem,20vw,18rem)/.75 "Cormorant Garamond",serif;text-transform:uppercase}.grand-finale p{font:italic 1.7rem Cormorant Garamond,serif}.grand-finale em{display:block;color:#c9a96a;margin:1.5rem}.grand-finale button{margin:.5rem}.grand-finale>i{position:absolute;top:-20px;left:var(--x);width:4px;height:16px;background:#c9a96a;animation:confetti 4s var(--d) linear infinite}@keyframes beam{to{transform:translate(10%) rotate(5deg)}}@keyframes flame{to{transform:scale(.88) skew(4deg)}}@keyframes confetti{to{transform:translateY(105vh) rotate(720deg);opacity:0}}@media (max-width: 800px){.chapter-progress{display:none}.story-section{padding-inline:1.25rem}.saba-hero__copy{width:88vw}.saba-hero h1{font-size:clamp(5.5rem,28vw,8rem)}.story-timeline article,.story-timeline article:nth-child(2n){width:100%;margin-left:0;padding:2rem 0 3rem 5rem}.story-timeline article>div{position:static;width:100%;height:280px;margin-bottom:1.5rem}.trait-list article{grid-template-columns:40px 1fr}.trait-list p{display:none}.cinema-gallery{display:block}.cinema-gallery button,.cinema-gallery button:nth-child(2),.cinema-gallery button:nth-child(4),.cinema-gallery button:nth-child(5){display:block;width:100%;height:70vw;margin-bottom:1rem}.reviews-track{grid-template-columns:1fr}.cake-scene{grid-template-columns:1fr;padding:6rem 1.25rem;text-align:center}.cake{height:330px}.cinema-lightbox{grid-template-columns:35px minmax(0,1fr) 35px;padding:4rem .5rem}.grand-finale h2{font-size:24vw}.grand-finale>div{padding:1rem}.saba-intro__title p{letter-spacing:.25em}}@media (max-width: 380px){.story-timeline article{padding-left:2rem}.cake{transform:scale(.88)}.credits div{grid-template-columns:1fr;gap:.4rem}.credits span{text-align:left}.music-dock{right:.75rem;bottom:.75rem}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.saba-cinema *,.saba-cinema *:before,.saba-cinema *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.story-timeline{position:relative}.story-timeline__line{position:relative;display:grid;gap:60px}.story-timeline__line:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:1px;background:linear-gradient(#d8ae63,#d66085,transparent)}.timeline-card{width:calc(50% - 45px);display:grid;grid-template-columns:.9fr 1.1fr;overflow:hidden;border-radius:24px;background:#ffffff0e;border:1px solid rgba(255,255,255,.11);position:relative}.timeline-card:nth-child(2n){margin-left:calc(50% + 45px)}.timeline-card:after{content:"";position:absolute;width:11px;height:11px;border-radius:50%;background:#d8ae63;top:50%;right:-51px;box-shadow:0 0 18px currentColor}.timeline-card:nth-child(2n):after{right:auto;left:-51px}.timeline-card__date{position:absolute;z-index:2;left:14px;top:14px;padding:7px 10px;background:#09060bc7;border-radius:999px;font-size:.68rem;letter-spacing:.08em}.timeline-card__photo{min-height:290px;background:linear-gradient(145deg,#3b2432,#130d13);position:relative;display:grid;place-items:center;overflow:hidden;cursor:pointer}.timeline-card__photo img{position:absolute;top:0;right:0;bottom:0;left:0;height:100%;object-fit:cover}.timeline-card__photo svg{color:#d8ae63}.timeline-card__photo span{margin-top:48px;color:#c8bfc5;font-size:.7rem}.timeline-card__copy{padding:28px;align-self:center}.timeline-card__copy>span{color:#ffffff29;font:2.5rem var(--font-heading)}.timeline-card h3{margin:3px 0;color:#d8ae63;font:2rem var(--font-heading)}.timeline-card h4{margin:0 0 15px;font:italic 1rem var(--font-heading)}.timeline-card p{color:#c8bfc5;font-size:.84rem;line-height:1.7}@media (max-width: 900px){.story-timeline__line:before{left:10px}.timeline-card,.timeline-card:nth-child(2n){width:calc(100% - 32px);margin-left:32px;grid-template-columns:1fr}.timeline-card:after,.timeline-card:nth-child(2n):after{left:-27px;right:auto}}.memory-gallery__grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:190px;gap:14px}.memory-gallery__grid button{grid-column:span 4;grid-row:span 2;position:relative;border:0;border-radius:18px;overflow:hidden;padding:0;background:linear-gradient(145deg,#402534,#151016);color:#fff8ee;cursor:pointer}.memory-gallery__grid button:nth-child(2),.memory-gallery__grid button:nth-child(5){grid-column:span 5}.memory-gallery__grid img{position:absolute;top:0;right:0;bottom:0;left:0;height:100%;object-fit:cover}.memory-gallery__grid button:after{content:"";position:absolute;top:35%;right:0;bottom:0;left:0;background:linear-gradient(transparent,#000000db)}.memory-gallery__grid span{position:absolute;z-index:2;left:18px;bottom:16px;display:flex;align-items:center;gap:8px}.memory-gallery__grid small{position:absolute;z-index:2;right:16px;top:14px}@media (max-width: 760px){.memory-gallery__grid{display:grid;grid-template-columns:1fr;grid-auto-rows:320px}.memory-gallery__grid button,.memory-gallery__grid button:nth-child(2),.memory-gallery__grid button:nth-child(5){grid-column:auto;grid-row:auto}}.love-letter{text-align:center}.love-letter>header{margin-inline:auto}.love-letter__envelope{min-height:460px;position:relative;display:flex;justify-content:center;align-items:flex-start;padding-top:70px;border-radius:30px;background:radial-gradient(circle,rgba(216,174,99,.15),transparent 60%)}.love-letter__envelope>button{position:absolute;top:0;display:flex;align-items:center;gap:9px;padding:13px 20px;color:#d8ae63;background:#ffffff12;border:1px solid rgba(216,174,99,.35);border-radius:999px;cursor:pointer}.love-letter article{width:min(680px,92%);padding:clamp(28px,6vw,60px);background:#fff8ee;color:#3d2931;text-align:left;box-shadow:0 35px 90px #00000080}.love-letter article>svg{color:#8f1838;fill:currentColor}.love-letter article p{line-height:1.9;white-space:pre-line}.love-letter article strong{display:block;text-align:right;color:#8f1838;font:2.7rem var(--font-romantic)}.music-control{position:fixed;right:22px;bottom:22px;z-index:45;display:flex;align-items:center;gap:9px;padding:11px 15px;border-radius:999px;border:1px solid rgba(216,174,99,.38);background:#0c080fb8;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);color:#d8ae63;cursor:pointer}.music-control svg{width:17px}.music-control span{color:#c8bfc5;font-size:.72rem}.petals{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;pointer-events:none;overflow:hidden}.petals i{--i: 0;position:absolute;top:-5vh;left:calc(var(--i) * 7.2%);width:9px;height:15px;border-radius:80% 0;background:#d66085;opacity:.32;animation:petal-fall calc(10s + var(--i) * .7s) linear infinite;animation-delay:calc(var(--i) * -.9s)}
