@import "https://fonts.googleapis.com/css2?family=Caveat:wght@400;500;600&family=Quicksand:wght@300;400;500&display=swap";*,:before,:after{box-sizing:border-box}html{overflow-x:clip}html,body{margin:0;padding:0}body{font-family:var(--font-body);color:var(--text-main);background:var(--bg-base);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;min-height:100vh;line-height:1.55}img{max-width:100%;display:block}#root{min-height:100vh}.app-boot-loader{background:var(--bg-base);min-height:100vh;color:var(--text-main);place-items:center;padding:2rem;display:grid}.app-boot-loader__text{font-family:var(--font-body);letter-spacing:.04em;opacity:.85;font-size:1rem;font-weight:500}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:root{--bg-base:#f9f6f6;--bg-soft:#f3ecec;--text-main:#30272a;--text-soft:#665259;--rose-deep:#7a2333;--rose-mid:#b14a63;--rose-light:#dca5b2;--snow:#fff;--card-border:#7a233324;--glow:0 20px 50px #7a233329;--font-display:"Caveat", cursive;--font-body:"Quicksand", sans-serif}.app-shell{isolation:isolate;background:radial-gradient(circle at 15% 10%,#dca5b273,#0000 45%),radial-gradient(circle at 85% 24%,#7a233324,#0000 37%),linear-gradient(#fdfafb 0%,#f7f1f2 45%,#f2ebed 100%);position:relative}.ambient-blobs{z-index:0;pointer-events:none;position:fixed;inset:-12%;overflow:hidden}.ambient-blob{filter:blur(68px);opacity:.72;mix-blend-mode:multiply;will-change:transform;border-radius:42% 58% 62% 38%/48% 42% 58% 52%;position:absolute}.ambient-blob--1{background:radial-gradient(at 35% 35%,#ffdae1f2 0%,#dca5b28c 45%,#b14a6333 100%);width:min(52vw,420px);height:min(52vw,420px);animation:28s ease-in-out infinite blobDriftA;top:-6%;left:-14%}.ambient-blob--2{background:radial-gradient(circle at 40%,#f8c8d2d9 0%,#b14a6373 50%,#7a233326 100%);border-radius:58% 42% 48% 52%/55% 48% 52% 45%;width:min(48vw,380px);height:min(44vw,360px);animation:32s ease-in-out infinite blobDriftB;top:8%;right:-18%}.ambient-blob--3{background:radial-gradient(at 55% 40%,#ffecdcbf 0%,#dca5b266 55%,#7a23331f 100%);border-radius:48% 52% 40% 60%/52% 58% 42% 48%;width:min(62vw,520px);height:min(48vw,400px);animation:36s ease-in-out infinite blobDriftC;bottom:-12%;left:18%}.ambient-blob--4{opacity:.55;background:radial-gradient(circle,#e8c3a8b3 0%,#b14a6340 70%,#0000 100%);border-radius:52% 48% 55% 45%/44% 56% 48% 52%;width:min(36vw,300px);height:min(40vw,320px);animation:26s ease-in-out infinite reverse blobDriftB;top:42%;left:-8%}.ambient-blob--5{opacity:.5;mix-blend-mode:soft-light;background:radial-gradient(at 30% 60%,#fff5eee6 0%,#dca5b259 50%,#7a233314 100%);width:min(44vw,360px);height:min(44vw,360px);animation:30s ease-in-out -6s infinite blobDriftA;top:55%;right:5%}.ambient-blob--6{opacity:.42;background:radial-gradient(circle at 50% 40%,#c88ca080 0%,#7a23332e 100%);border-radius:60% 40% 50% 50%/50% 45% 55% 50%;width:min(28vw,240px);height:min(32vw,280px);animation:22s ease-in-out -4s infinite reverse blobDriftC;top:22%;left:38%}.grain-overlay{opacity:.05;mix-blend-mode:overlay;pointer-events:none;z-index:9999;background:url(/assets/grain-BVZAnKJ_.gif);width:100%;height:100%;position:fixed;top:0;left:0}.app-shell:before{content:"";z-index:1;pointer-events:none;filter:blur(30px);background:radial-gradient(circle at 25% 30%,#fff6,#0000 52%),radial-gradient(circle at 75% 60%,#7a233314,#0000 50%);position:fixed;inset:-20%}.app-shell:after{content:"";z-index:2;pointer-events:none;opacity:.22;mix-blend-mode:multiply;background-image:radial-gradient(#ffffffe0 .35px,#0000 .35px),radial-gradient(#7a233338 .4px,#0000 .4px),repeating-linear-gradient(-12deg,#0000,#0000 1px,#7a233305 1px 2px);background-position:0 0,2px 2px,0 0;background-size:3px 3px,5px 5px,100% 100%;position:fixed;inset:0}.panel{z-index:3;width:min(1080px,92%);margin:0 auto;padding:clamp(4rem,9vw,8rem) 0;position:relative}.eyebrow{letter-spacing:.25em;text-transform:uppercase;color:var(--rose-deep);margin:0 0 .9rem;font-size:.9rem;font-weight:500}h1,h2,h3{color:var(--rose-deep);font-family:var(--font-display);letter-spacing:.02em;margin:0;font-weight:500}h1{font-size:clamp(2.5rem,7vw,5.3rem);line-height:.95}h2{font-size:clamp(2rem,4.8vw,3.4rem);line-height:1.03}h3{font-size:clamp(1.6rem,3vw,2.2rem)}p{color:var(--text-soft);margin:0;font-weight:300}.section-heading{text-align:center;max-width:760px;margin:0 auto 3rem}.section-heading p{margin-top:1rem;font-size:clamp(1rem,1.7vw,1.2rem)}.hero-section{align-items:center;min-height:100vh;display:grid;position:relative}.hero-copy{text-align:center;z-index:2;max-width:760px;margin:0 auto;position:relative}.hero-key-portrait{max-width:min(440px,90vw);margin:clamp(1.2rem,3.2vw,2rem) auto clamp(1.35rem,3.8vw,2.35rem)}.hero-key-portrait__frame{border:1px solid var(--card-border);box-shadow:var(--glow);aspect-ratio:3/4;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffb8;border-radius:1.35rem;margin:0 auto;overflow:hidden}.hero-key-portrait__img{object-fit:cover;object-position:center 18%;width:100%;height:100%;display:block}.hero-key-portrait__line{font-family:var(--font-display);color:var(--rose-deep);letter-spacing:.02em;margin:.9rem 0 0;font-size:clamp(1.85rem,5.2vw,2.85rem);font-weight:500;line-height:1.05}.hero-message{max-width:700px;margin:1.5rem auto 0;font-size:clamp(1rem,1.8vw,1.3rem)}.bg-splashes{pointer-events:none;z-index:1;position:absolute;inset:0}.splash{filter:blur(1px);border-radius:46% 54% 52% 48%/39% 44% 56% 61%;position:absolute}.splash-one{background:#dca5b26b;width:300px;height:300px;top:12%;left:7%}.splash-two{background:#b14a6333;width:240px;height:240px;top:28%;right:10%}.splash-three{background:#7a23331a;width:360px;height:360px;bottom:-8%;left:50%;transform:translate(-50%)}.floating-decor{pointer-events:none;z-index:5;position:fixed;inset:0}.floating-decor--hidden{opacity:0;transition:opacity .45s}.floating-decor:not(.floating-decor--hidden){transition:opacity .35s}.floating-clip{filter:drop-shadow(0 5px 8px #7a23332e);-webkit-user-select:none;user-select:none;width:clamp(2rem,3.4vw,2.85rem);height:auto;position:absolute}.floating-clip:first-child{top:16%;left:6%}.floating-clip:nth-child(2){top:31%;right:7%}.floating-clip:nth-child(3){top:52%;left:10%}.floating-clip:nth-child(4){top:61%;right:14%}.floating-clip:nth-child(5){top:78%;left:12%}.floating-clip:nth-child(6){top:72%;right:8%}.milly-cat-section .section-heading,.friends-bloom-section .section-heading,.friends-abroad-section .section-heading,.friends-st-louis-section .section-heading,.us-gallery-section .section-heading{margin-bottom:clamp(2rem,5vw,3.2rem)}.cat-masonry-wrap{width:100%}.cat-masonry{margin:0 auto}.cat-masonry-sizer{pointer-events:none;width:calc(33.3333% - 7.33333px);height:0;overflow:hidden}.cat-masonry-item{border:1px solid var(--card-border);box-shadow:var(--glow);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);aspect-ratio:9/16;background:#ffffffa6;border-radius:1.1rem;min-height:0;margin:0 0 11px;overflow:hidden}.cat-masonry-item img{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.cat-masonry-sizer,.cat-masonry-item--sm,.cat-masonry-item--md,.cat-masonry-item--tall{width:calc(33.3333% - 7.33333px)}.cat-masonry-item--lg{width:calc(50% - 5.5px)}.cat-masonry-item--wide{width:calc(66.6667% - 3.66667px)}.reveal-journey{--journey-steps:2;min-height:calc(85vh + var(--journey-steps) * 28vh);padding-top:clamp(5rem,12vw,9rem)}.journey-heading-title{line-height:1.08}.journey-heading-title__line{display:block}.journey-heading-title__line+.journey-heading-title__line{margin-top:.5em}.journey-track{gap:clamp(3.2rem,12vh,6.2rem);max-width:760px;margin:0 auto;display:grid}.journey-beat{border:1px solid var(--card-border);box-shadow:var(--glow);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#ffffffb8;border-radius:1.2rem;padding:clamp(1.3rem,2.7vw,1.8rem);position:sticky;top:18vh}.beat-tag{color:var(--rose-deep);text-transform:uppercase;letter-spacing:.12em;background:#ffffffc7;border:1px solid #7a233340;border-radius:999px;margin-bottom:.8rem;padding:.35rem .72rem;font-size:.7rem;font-weight:500;display:inline-flex}.journey-beat h3{margin-bottom:.55rem}.journey-beat__photo{background:#ffffff80;border:1px solid #7a23331f;border-radius:.85rem;margin:0 0 1rem;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff59,0 8px 28px #7a233314}.journey-beat__photo img{width:100%;height:auto;display:block}.wish-cake-section{padding-bottom:clamp(4.5rem,12vw,7rem)}.wish-cake-section .section-heading{margin-bottom:clamp(2.25rem,5.5vw,3.75rem)}.wish-cake-stage{flex-direction:column;align-items:center;gap:1.5rem;max-width:480px;margin:0 auto;display:flex}.wish-cake-section--gate-closed{overscroll-behavior:contain}.wish-cake-intro{flex-direction:column;justify-content:center;align-items:center;gap:1rem;width:100%;min-height:min(360px,48vh);padding:.5rem 0 2rem;display:flex}.wish-cake-ready-btn{font-family:var(--font-body);letter-spacing:.06em;text-transform:uppercase;color:var(--rose-deep);cursor:pointer;box-shadow:var(--glow);background:#ffffffeb;border:1px solid #7a233347;border-radius:999px;padding:.85rem 1.85rem;font-size:.95rem;font-weight:500;transition:background .25s,transform .2s,box-shadow .25s}.wish-cake-ready-btn:hover{background:var(--snow);transform:translateY(-1px);box-shadow:0 12px 36px #7a23332e}.wish-cake-ready-btn:focus-visible{outline:2px solid var(--rose-mid);outline-offset:3px}.wish-cake-ready-btn:active{transform:translateY(0)}.wish-cake-celebration{opacity:0;filter:blur(14px);will-change:opacity, transform, filter;flex-direction:column;align-items:center;gap:1.5rem;width:100%;transition:opacity 1.12s cubic-bezier(.22,1,.36,1),transform 1.12s cubic-bezier(.22,1,.36,1),filter 1s;display:flex;transform:translateY(44px)scale(.9)}.wish-cake-celebration--revealed{opacity:1;filter:blur();transform:translateY(0)scale(1)}.wish-cake-celebration--revealed.wish-cake-celebration--exit{opacity:0;filter:blur(12px);pointer-events:none;transition:opacity 1.05s cubic-bezier(.4,0,.2,1),transform 1.05s cubic-bezier(.4,0,.2,1),filter 1.05s;transform:translateY(32px)scale(.93)}.wish-cake-section--reduced .wish-cake-celebration{filter:none;transition-duration:.38s,.38s,.38s}.wish-cake-section--reduced .wish-cake-celebration--revealed{filter:none}.wish-cake-section--reduced .wish-cake-celebration--revealed.wish-cake-celebration--exit{filter:none;transition-duration:.38s,.38s,.38s}.wish-cake-after-message{text-align:center;color:var(--text-soft);opacity:0;filter:blur(6px);max-width:32rem;margin:0;font-size:clamp(1.05rem,2.6vw,1.22rem);line-height:1.55;transition:opacity .85s cubic-bezier(.22,1,.36,1),transform .85s cubic-bezier(.22,1,.36,1),filter .75s;transform:translateY(14px)}.wish-cake-after-message--in{opacity:1;filter:blur();transform:translateY(0)}.wish-cake-section--reduced .wish-cake-after-message{filter:none;transition-duration:.4s,.4s,.4s}.wish-cake-section--reduced .wish-cake-after-message--in{filter:none}.wish-cake-float{flex-direction:column;align-items:center;transition:transform .5s cubic-bezier(.34,1.56,.64,1);animation:4s ease-in-out infinite wishCakeCelebrate;display:flex}.wish-cake-float:hover{transform:rotate(-2deg)scale(1.03)}.wish-cake-section--reduced .wish-cake-float{animation:none}.wish-cake-section--reduced .wish-cake-float:hover{transform:none}.wish-cake-section--reduced .wish-cake-plate,.wish-cake-section--reduced .wish-cake-buttercream-ring,.wish-cake-section--reduced .wish-cake-buttercream-ring:before,.wish-cake-section--reduced .wish-cake-cherry,.wish-cake-section--reduced .wish-cake-strawberry{animation:none}@keyframes wishCakeCelebrate{0%,to{transform:translateY(0)rotate(-.6deg)}25%{transform:translateY(-10px)rotate(.5deg)}50%{transform:translateY(-14px)rotate(.8deg)}75%{transform:translateY(-8px)rotate(-.4deg)}}.wish-cake-plate{z-index:0;background:linear-gradient(#f5ebe6 0%,#ddd2cc 50%,#b8a99e 100%);border-radius:clamp(8px,2vw,12px);width:min(300px,82vw);height:20px;margin-top:clamp(-5px,-1.2vw,-3px);animation:5.5s ease-in-out infinite wishCakePlateGlow;position:relative;box-shadow:0 4px #4838341f,0 10px 20px #7a23331a,inset 0 2px 6px #ffffffbf}.wish-cake-board{z-index:1;background:linear-gradient(90deg,#c9a88c 0%,#e8d4c4 35%,#d4b69a 100%);border-radius:clamp(5px,1.2vw,8px);width:min(270px,74vw);height:10px;margin-top:clamp(-14px,-3.5vw,-10px);box-shadow:0 2px #5a483c33,inset 0 1px #ffffff73}.wish-cake-stack{z-index:2;flex-direction:column;align-items:center;display:flex;position:relative}.wish-cake-layer{place-items:center;display:grid;position:relative}.wish-cake-layer--bottom{z-index:1;margin-top:clamp(-7px,-1.8vw,-4px);animation:3.8s ease-in-out infinite wishCakeLayerJiggle}.wish-cake-layer--top{z-index:3;animation:3.8s ease-in-out .18s infinite wishCakeLayerJiggle}.wish-cake-section--reduced .wish-cake-layer--bottom,.wish-cake-section--reduced .wish-cake-layer--top{animation:none}@keyframes wishCakeLayerJiggle{0%,to{transform:rotate(0)scale(1)}40%{transform:rotate(-.35deg)scale(1.008)}70%{transform:rotate(.25deg)scale(1)}}.wish-cake-disc{--cake-w:min(252px, 72vw);--cake-h:clamp(76px, 20vw, 92px);--cake-r:clamp(12px, 3.2vw, 20px);width:var(--cake-w);height:var(--cake-h);border-radius:var(--cake-r);background:linear-gradient(#ffeef2 0%,#f5c4d0 22%,#e8a0b4 55%,#c45a74 82%,#9e3d52 100%) 0 0/100% 100%;border:2px solid #7a233333;grid-area:1/1;animation:5s ease-in-out infinite wishCakeSpongeShine;position:relative;box-shadow:inset 0 1px #ffffffa6,inset 0 -2px #5a14281f,0 6px #7a233314,0 14px 24px #7a23332e}.wish-cake-disc--top{--cake-w:min(178px, 52vw);--cake-h:clamp(58px, 16vw, 72px);--cake-r:clamp(10px, 2.8vw, 16px);border-radius:var(--cake-r);background:linear-gradient(#fff 0%,#fce4ec 25%,#f0b8c8 55%,#d97a90 85%,#b84d62 100%) 0 0/100% 100%;border:2px solid #7a233329;animation:5.2s ease-in-out .4s infinite wishCakeSpongeShine;overflow:hidden;box-shadow:inset 0 1px #ffffffd9,inset 0 -2px #5a14281a,0 5px #7a23330f,0 12px 22px #7a233329}.wish-cake-disc--top:after{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(118deg,#0000 36%,#ffffff73 48%,#ffffff14 52%,#0000 64%);animation:4.2s ease-in-out infinite wishCakeTierShine;position:absolute;inset:-20% -40%}.wish-cake-section--reduced .wish-cake-disc,.wish-cake-section--reduced .wish-cake-disc--top{animation:none}.wish-cake-section--reduced .wish-cake-disc--top:after{opacity:0;animation:none}@keyframes wishCakeSpongeShine{0%,to{filter:brightness()}50%{filter:brightness(1.04)}}@keyframes wishCakeTierShine{0%,to{opacity:.35;transform:translate(-18%)skew(-6deg)}50%{opacity:.85;transform:translate(18%)skew(4deg)}}@keyframes wishCakePlateGlow{0%,to{box-shadow:0 4px #4838341f,0 10px 20px #7a23331a,inset 0 2px 6px #ffffffbf}50%{box-shadow:0 4px #4838341f,0 12px 28px #ffbed238,0 10px 20px #7a23331a,inset 0 2px 6px #ffffffbf}}.wish-cake-buttercream-ring{--frost-r:clamp(9px, 2.4vw, 14px);border-radius:var(--frost-r);z-index:2;background:linear-gradient(#fffefc 0%,#fff8fb 35%,#f8e2eb 100%);border:2px solid #fff;flex-shrink:0;width:min(220px,64vw);height:clamp(20px,5.2vw,28px);margin-top:0;margin-bottom:0;animation:4.8s ease-in-out infinite wishCakeFrostingPulse;position:relative;overflow:hidden;box-shadow:0 1px #7a233312,inset 0 1px #fff,inset 0 -2px #c88ca01f}.wish-cake-buttercream-ring:before{content:"";opacity:.95;pointer-events:none;background:#fffefc;border-radius:2px;width:9px;height:6px;margin-left:-50px;animation:2.6s ease-in-out infinite wishCakePipingGlimmer;position:absolute;bottom:3px;left:50%;box-shadow:13px 0 #fffefc,26px 0 #fffefc,39px 0 #fffefc,52px 0 #fffefc,65px 0 #fffefc,78px 0 #fffefc,91px 0 #fffefc}.wish-cake-cherry{background:radial-gradient(circle at 32% 28%,#ff8a9b 0%,#c41e3a 45%,#7a1020 100%);border-radius:50%;width:22px;height:22px;animation:2.4s ease-in-out infinite wishCakeToppingGleam;position:absolute;box-shadow:inset -2px -3px 6px #0003,1px 2px 4px #7a233340}.wish-cake-cherry:before{content:"";transform-origin:bottom;background:linear-gradient(#5c4033 0%,#3d2918 100%);border-radius:2px;width:3px;height:12px;margin-left:-1px;position:absolute;top:-10px;left:50%;transform:rotate(-18deg)}.wish-cake-cherry:after{content:"";background:radial-gradient(at 30% 70%,#4a7c3f 0%,#2d5a27 100%);border-radius:50% 50% 40% 40%;width:10px;height:7px;margin-left:2px;position:absolute;top:-12px;left:50%;transform:rotate(28deg)}.wish-cake-cherry--a{animation-delay:0s;top:20%;left:14%}.wish-cake-cherry--b{animation-delay:-.8s;top:26%;right:16%}.wish-cake-cherry--c{animation-delay:-1.5s;top:18%;left:10%}.wish-cake-strawberry{background:radial-gradient(80% 100% at 50% 70%,#e83d4d 0%,#a81828 72%,#6a0f18 100%);border-radius:45% 45% 50% 50%;width:26px;height:32px;animation:2.85s ease-in-out infinite wishCakeToppingGleam;position:absolute;box-shadow:inset 2px 3px 6px #ffc8c859,inset -3px -4px 8px #3c000a40,2px 4px 6px #7a233333}.wish-cake-strawberry:before{content:"";clip-path:polygon(15% 100%,0 40%,25% 0,50% 25%,75% 0,100% 40%,85% 100%);background:linear-gradient(#5a9f4a 0%,#2f6b2a 100%);border-radius:4px 4px 2px 2px;width:18px;height:10px;margin-left:-9px;position:absolute;top:-6px;left:50%}.wish-cake-strawberry:after{content:"";opacity:.75;pointer-events:none;background-image:radial-gradient(circle,#fff5dcf2 1.2px,#0000 1.5px);background-size:5px 6px;position:absolute;inset:10px 6px 8px}.wish-cake-strawberry--a{animation-delay:-.4s;top:22%;right:12%;transform:rotate(12deg)}.wish-cake-strawberry--b{animation-delay:-1.1s;top:38%;left:40%;transform:rotate(-8deg)scale(.92)}.wish-cake-strawberry--c{animation-delay:-1.75s;top:20%;right:10%;transform:rotate(-14deg)}.wish-cake-candles{z-index:5;pointer-events:none;justify-content:center;align-items:flex-end;gap:clamp(18px,5vw,28px);padding-bottom:2px;display:flex;position:absolute;bottom:100%;left:0;right:0}.wish-cake-candle{transform-origin:50% 100%;flex-direction:column;align-items:center;animation:5.6s ease-in-out infinite wishCakeCandleSway;display:flex}.wish-cake-candle:first-child{animation-delay:0s}.wish-cake-candle:nth-child(2){animation-delay:-1.85s}.wish-cake-candle:nth-child(3){animation-delay:-3.7s}.wish-cake-flame{z-index:1;filter:blur(.12px)drop-shadow(0 0 5px #ff9b50b3);transform-origin:50% 100%;background:radial-gradient(circle at 50% 88%,#fff8f0 0%,#ff9a3c 16%,#ff6b35 38%,#ff4428 62%,#0000 74%);border-radius:50%/62% 62% 38% 38%;width:15px;height:24px;margin-bottom:-2px;transition:opacity .55s,transform .55s,filter .45s;animation:.76s ease-in-out infinite alternate wishCakeFlicker,3.1s ease-in-out infinite wishCakeFlameHue;position:relative}.wish-cake-flame:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(48% 52% at 50% 78%,#ffd7828c 0%,#ff824633 48%,#0000 70%);width:240%;height:280%;margin-left:-120%;animation:.52s ease-in-out infinite alternate wishCakeFlameHalo;position:absolute;bottom:0;left:50%}.wish-cake-flame:after{content:"";mix-blend-mode:screen;pointer-events:none;background:radial-gradient(circle at 38% 36%,#fffffff2 0%,#ffebc866 52%,#0000 74%);border-radius:50%;width:44%;height:30%;margin-left:-22%;animation:.4s ease-in-out infinite alternate wishCakeFlameCore;position:absolute;bottom:46%;left:50%}.wish-cake-candle:first-child .wish-cake-flame{animation-duration:.72s,2.85s}.wish-cake-candle:nth-child(2) .wish-cake-flame{animation-duration:.88s,3.35s;animation-delay:0s,-.7s}.wish-cake-candle:nth-child(3) .wish-cake-flame{animation-duration:.8s,3.05s;animation-delay:0s,-1.4s}.wish-cake-candle:nth-child(2) .wish-cake-flame:before{animation-delay:-.2s}.wish-cake-candle:nth-child(3) .wish-cake-flame:before{animation-delay:-.38s}.wish-cake-candle:nth-child(2) .wish-cake-flame:after{animation-delay:-.15s}.wish-cake-candle:nth-child(3) .wish-cake-flame:after{animation-delay:-.28s}.wish-cake-candles--blown .wish-cake-candle .wish-cake-flame--out{transition:none;animation:1.05s cubic-bezier(.33,1,.68,1) forwards wishCakeFlameExtinguish}.wish-cake-candles--blown .wish-cake-candle:first-child .wish-cake-flame--out{animation-delay:40ms}.wish-cake-candles--blown .wish-cake-candle:nth-child(2) .wish-cake-flame--out{animation-delay:.2s}.wish-cake-candles--blown .wish-cake-candle:nth-child(3) .wish-cake-flame--out{animation-delay:.36s}.wish-cake-candles--blown .wish-cake-candle .wish-cake-flame--out:before{opacity:1;animation:1s cubic-bezier(.25,.9,.35,1) forwards wishCakeSmokeRise;transform:none}.wish-cake-candles--blown .wish-cake-candle:first-child .wish-cake-flame--out:before{animation-delay:40ms}.wish-cake-candles--blown .wish-cake-candle:nth-child(2) .wish-cake-flame--out:before{animation-delay:.2s}.wish-cake-candles--blown .wish-cake-candle:nth-child(3) .wish-cake-flame--out:before{animation-delay:.36s}.wish-cake-candles--blown .wish-cake-candle .wish-cake-flame--out:after{animation:.45s ease-out forwards wishCakeEmberSnuff}.wish-cake-candles--blown .wish-cake-candle:first-child .wish-cake-flame--out:after{animation-delay:20ms}.wish-cake-candles--blown .wish-cake-candle:nth-child(2) .wish-cake-flame--out:after{animation-delay:.18s}.wish-cake-candles--blown .wish-cake-candle:nth-child(3) .wish-cake-flame--out:after{animation-delay:.34s}.wish-cake-candles--blown .wish-cake-candle{animation:.82s cubic-bezier(.34,1.45,.64,1) forwards wishCakeCandleWindBlow}.wish-cake-candles--blown .wish-cake-candle:first-child{animation-delay:0s}.wish-cake-candles--blown .wish-cake-candle:nth-child(2){animation-delay:70ms}.wish-cake-candles--blown .wish-cake-candle:nth-child(3){animation-delay:.14s}.wish-cake-candles--blown .wish-cake-wick{animation:.85s ease-out forwards wishCakeWickCool}.wish-cake-candles--blown .wish-cake-candle:first-child .wish-cake-wick{animation-delay:.1s}.wish-cake-candles--blown .wish-cake-candle:nth-child(2) .wish-cake-wick{animation-delay:.26s}.wish-cake-candles--blown .wish-cake-candle:nth-child(3) .wish-cake-wick{animation-delay:.42s}.wish-cake-section--reduced .wish-cake-candles--blown .wish-cake-candle .wish-cake-flame--out{animation:.4s forwards wishCakeFlameExtinguishReduced}.wish-cake-section--reduced .wish-cake-candles--blown .wish-cake-candle:first-child .wish-cake-flame--out{animation-delay:0s}.wish-cake-section--reduced .wish-cake-candles--blown .wish-cake-candle:nth-child(2) .wish-cake-flame--out{animation-delay:80ms}.wish-cake-section--reduced .wish-cake-candles--blown .wish-cake-candle:nth-child(3) .wish-cake-flame--out{animation-delay:.16s}.wish-cake-section--reduced .wish-cake-candles--blown .wish-cake-flame--out:before,.wish-cake-section--reduced .wish-cake-candles--blown .wish-cake-flame--out:after{opacity:0;animation:none;transform:scale(0)}.wish-cake-section--reduced .wish-cake-candles--blown .wish-cake-candle{animation:none;transform:none}.wish-cake-section--reduced .wish-cake-candles--blown .wish-cake-wick{animation:.35s forwards wishCakeWickCoolReduced}.wish-cake-section--reduced .wish-cake-flame:not(.wish-cake-flame--out){opacity:.95;filter:blur(.12px)drop-shadow(0 0 4px #ff9b5073);animation:none}.wish-cake-section--reduced .wish-cake-flame:before,.wish-cake-section--reduced .wish-cake-flame:after{opacity:0;animation:none}.wish-cake-section--reduced .wish-cake-candle{animation:none}.wish-cake-candle:not(:has(.wish-cake-flame--out)) .wish-cake-wick{animation:1.65s ease-in-out infinite wishCakeWickEmber}.wish-cake-section--reduced .wish-cake-candle:not(:has(.wish-cake-flame--out)) .wish-cake-wick{animation:none}.wish-cake-wick{background:#2a1810;border-radius:1px;width:2px;height:4px}.wish-cake-stick{background:linear-gradient(90deg,#fff8f0 0%,#f5e6dc 45%,#e8d4c8 100%);border:1px solid #7a23331f;border-radius:2px;width:8px;height:28px;box-shadow:inset 0 1px 2px #fffc}@keyframes wishCakeFlicker{0%{opacity:1;transform:scale(1)translateY(0)skew(0)}22%{opacity:.94;transform:scale(1.1,.96)translateY(-2px)skew(-4deg)}48%{opacity:1;transform:scale(.92,1.08)translateY(1px)skew(3deg)}72%{opacity:.9;transform:scale(1.06,1.02)translateY(-1px)skew(-2deg)}to{opacity:.96;transform:scaleY(1.04)translateY(0)skew(1deg)}}@keyframes wishCakeFlameHue{0%,to{filter:blur(.12px)drop-shadow(0 0 5px #ff9b50a6)hue-rotate(-6deg)}50%{filter:blur(.1px)drop-shadow(0 0 9px #ffd282e6)hue-rotate(16deg)}}@keyframes wishCakeFlameHalo{0%{opacity:.75;transform:scale(.92,.88)}to{opacity:1;transform:scale(1.08,1.05)}}@keyframes wishCakeFlameCore{0%{opacity:.65;transform:scale(.88)translateY(1px)}to{opacity:1;transform:scale(1.06)translateY(-1px)}}@keyframes wishCakeCandleSway{0%,to{transform:rotate(-1.4deg)}50%{transform:rotate(1.4deg)}}@keyframes wishCakeWickEmber{0%,to{box-shadow:0 0 2px #ff5f288c,0 -1px 4px #ffa05059}50%{box-shadow:0 0 5px #ff823cd9,0 -2px 8px #ffbe6473}}@keyframes wishCakeFrostingPulse{0%,to{filter:brightness()saturate()}50%{filter:brightness(1.04)saturate(1.06)}}@keyframes wishCakePipingGlimmer{0%,to{opacity:.88;filter:brightness()}50%{opacity:1;filter:brightness(1.12)}}@keyframes wishCakeToppingGleam{0%,to{filter:brightness()}50%{filter:brightness(1.12)saturate(1.08)}}@keyframes wishCakeFlameExtinguish{0%{opacity:1;filter:blur(.12px)drop-shadow(0 0 5px #ff9b50bf)hue-rotate();transform:scale(1)translate(0)skew(0)}11%{opacity:1;filter:blur(.8px)drop-shadow(0 0 16px #ffe68cf2)hue-rotate(-10deg);transform:scale(1.45,.62)translate(10px,2px)skew(16deg)}26%{opacity:.82;filter:blur(2px)drop-shadow(0 0 9px #ff5a328c)hue-rotate(14deg);transform:scale(.52,1.25)translate(-12px,5px)skew(-20deg)}44%{opacity:.48;filter:blur(4px)drop-shadow(0 0 5px #bebed266);transform:scale(1.15,.42)translate(6px,14px)skew(8deg)}68%{opacity:.12;filter:blur(8px)drop-shadow(0 0 #0000);transform:scale(.3,.75)translate(-3px,18px)}to{opacity:0;filter:blur(14px);transform:scale(.06,.12)translateY(22px)}}@keyframes wishCakeSmokeRise{0%{opacity:.9;filter:blur();background:radial-gradient(48% 52% at 50% 78%,#ffd7828c 0%,#ff824638 48%,#0000 70%);transform:scale(.88,.92)translate(0)}22%{opacity:.7;filter:blur(2px);background:radial-gradient(52% 48% at 48% 74%,#e6e4ee8c 0%,#a5a8b947 52%,#0000 68%);transform:scale(1.12,1.08)translate(6px,-4px)}55%{opacity:.38;filter:blur(6px);background:radial-gradient(44% 38% at 52% 58%,#c8cad752 0%,#0000 62%);transform:scale(1.55,1.75)translate(-8px,-22px)}to{opacity:0;filter:blur(14px);background:radial-gradient(circle at 50% 40%,#0000 0% 100%);transform:scale(1.85,2.35)translate(4px,-42px)}}@keyframes wishCakeEmberSnuff{0%{opacity:1;transform:scale(1)translateY(0)}to{opacity:0;transform:scale(.15)translateY(14px)}}@keyframes wishCakeCandleWindBlow{0%{transform:rotate(-1.4deg)}16%{transform:rotate(8deg)translate(6px)}38%{transform:rotate(-5deg)translate(-4px)}62%{transform:rotate(3deg)translate(2px)}to{transform:rotate(.4deg)}}@keyframes wishCakeWickCool{0%{filter:brightness();box-shadow:0 0 2px #ff5f288c,0 -1px 4px #ffa05059}22%{filter:brightness(1.35);box-shadow:0 0 8px #ff8c46e6,0 -2px 10px #ffc87880}to{box-shadow:none;filter:brightness(.85)}}@keyframes wishCakeFlameExtinguishReduced{0%{opacity:1;filter:blur(.12px)drop-shadow(0 0 4px #ff9b5073);transform:scale(1)translateY(0)}to{opacity:0;filter:none;transform:scale(.22)translateY(6px)}}@keyframes wishCakeWickCoolReduced{0%{box-shadow:0 0 2px #ff5f2873,0 -1px 3px #ffa05040}to{box-shadow:none}}.wish-cake-hint{text-align:center;color:var(--text-soft);max-width:32rem;min-height:3em;font-size:clamp(1rem,2.4vw,1.15rem);line-height:1.5}.wish-cake-blow-btn{font-family:var(--font-body);letter-spacing:.06em;text-transform:uppercase;color:var(--rose-deep);cursor:pointer;box-shadow:var(--glow);background:#ffffffd9;border:1px solid #7a233347;border-radius:999px;padding:.75rem 1.5rem;font-size:.95rem;font-weight:500;transition:background .25s,transform .2s,box-shadow .25s}.wish-cake-blow-btn:hover{background:var(--snow);transform:translateY(-1px);box-shadow:0 12px 36px #7a23332e}.wish-cake-blow-btn:focus-visible{outline:2px solid var(--rose-mid);outline-offset:3px}.wish-cake-blow-btn:active{transform:translateY(0)}.note-shell,.shark-reveal{border:1px solid var(--card-border);box-shadow:var(--glow);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#ffffffb3}.gift-unwrap .gift-stage{place-items:center;display:grid;position:relative;overflow:visible}.gift-stack{justify-content:center;align-items:center;width:100%;max-width:520px;min-height:min(500px,82vh);margin:0 auto;padding:1.5rem 0 2.5rem;transition:max-width 3.6s cubic-bezier(.22,1,.36,1),min-height 3.6s cubic-bezier(.22,1,.36,1);display:flex;position:relative}.gift-stage.is-revealed .gift-stack{max-width:min(1040px,98vw);min-height:min(640px,90vh)}.gift-stack-core{aspect-ratio:1;z-index:1;place-items:center;width:min(300px,76vw);transition:width 3.6s cubic-bezier(.22,1,.36,1);display:grid;position:relative}.gift-stage.is-revealed .gift-stack-core{width:min(560px,92vw)}.gift-box{z-index:2;--kraft-light:#edd8c8;--kraft-mid:#d4b49a;--kraft-deep:#b89278;perspective:920px;aspect-ratio:1;cursor:pointer;background:radial-gradient(ellipse 120% 80% at 30% 25%, #ffffff59, transparent 55%), repeating-linear-gradient(-8deg, transparent, transparent 3px, #b48c6e12 3px, #b48c6e12 4px), linear-gradient(158deg, var(--kraft-light) 0%, var(--kraft-mid) 42%, var(--kraft-deep) 100%);border:0;border-radius:1.15rem 1.28rem 1.12rem 1.22rem;grid-area:1/1;width:100%;transition:transform .32s;position:relative;box-shadow:inset 0 2px #ffffff73,0 14px 28px #7a23331f,0 22px 44px #5a322814}.gift-box:hover{transform:translateY(-6px)rotate(-1deg)}.gift-stage.is-wrapped:has(.gift-box:hover) .gift-box{animation:none;transform:translateY(-8px)rotate(-1.2deg)scale(1.02)}.gift-lid{transform-origin:bottom;background:radial-gradient(100% 70% at 40% 20%,#fff6,#0000 50%),repeating-linear-gradient(6deg,#0000,#0000 3px,#b48c6e0f 3px 4px),linear-gradient(172deg,#f0e0d4 0%,#dfc4ae 50%,#c9a58c 100%);border-radius:1rem 1.15rem .95rem 1.08rem;width:106%;height:36%;transition:transform .55s cubic-bezier(.34,1.4,.64,1);position:absolute;top:-10%;left:-3%;box-shadow:inset 0 2px #ffffff59,0 10px 18px #7a23331a}.gift-ribbon-x,.gift-ribbon-y{z-index:3;background:linear-gradient(165deg, #f5dbe2 0%, var(--rose-light) 42%, var(--rose-mid) 78%, #8f3045 100%);transition:opacity .35s;position:absolute;box-shadow:0 1px 3px #7a23332e,inset 0 1px #ffffff73}.gift-stage.is-wrapped .gift-ribbon-x,.gift-stage.is-wrapped .gift-ribbon-y{opacity:1}.gift-stage.is-paper-torn .gift-ribbon-x,.gift-stage.is-paper-torn .gift-ribbon-y,.gift-stage.is-opening .gift-ribbon-x,.gift-stage.is-opening .gift-ribbon-y,.gift-stage.is-revealed .gift-ribbon-x,.gift-stage.is-revealed .gift-ribbon-y{opacity:0;pointer-events:none;animation:none}.gift-ribbon-x{border-radius:2px;width:108%;height:5.5%;top:47.25%;left:-4%}.gift-ribbon-y{border-radius:2px;width:5.5%;height:108%;top:-4%;left:47.25%}.gift-stage.is-wrapped .gift-ribbon-x,.gift-stage.is-wrapped .gift-ribbon-y{transform:translate(0)rotate(0)}.gift-paper-corner{z-index:2;pointer-events:none;opacity:0;background:linear-gradient(135deg, #ffffff38, transparent 45%), linear-gradient(158deg, var(--kraft-light) 0%, var(--kraft-mid) 55%, var(--kraft-deep) 100%);position:absolute;box-shadow:0 1px 3px #5a32281f}.gift-paper-corner--tl{clip-path:polygon(0 0,100% 0,0 100%);transform-origin:0 0;border-radius:1.05rem 0 0;width:36%;height:36%;top:-2%;left:-2%}.gift-paper-corner--tr{clip-path:polygon(0 0,100% 0,100% 100%);transform-origin:100% 0;border-radius:0 1.05rem 0 0;width:36%;height:36%;top:-2%;right:-2%}.gift-paper-corner--bl{clip-path:polygon(0 0,0 100%,100% 100%);transform-origin:0 100%;border-radius:0 0 0 1.05rem;width:36%;height:36%;bottom:-2%;left:-2%}.gift-paper-corner--br{clip-path:polygon(100% 0,100% 100%,0 100%);transform-origin:100% 100%;border-radius:0 0 1.05rem;width:36%;height:36%;bottom:-2%;right:-2%}.gift-tag{z-index:4;background:radial-gradient(circle at 35% 30%, #fff6f8, var(--rose-light) 55%, var(--rose-mid));width:2.35rem;height:2.35rem;color:var(--rose-deep);border:1px solid #7a23331f;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;bottom:10%;left:50%;transform:translate(-50%)rotate(-8deg);box-shadow:0 2px 8px #7a233333,inset 0 0 0 2px #ffffff80}.gift-heart{font-size:1.15rem;line-height:1;transform:translateY(1px)}.gift-burst{pointer-events:none;z-index:4;width:min(460px,90vw);height:min(460px,90vw);position:absolute;top:46%;left:50%;transform:translate(-50%,-50%)}.gift-burst span{opacity:0;border-radius:1px;width:14px;height:22px;position:absolute;box-shadow:0 1px 2px #0000001f}.gift-burst span:first-child{background:linear-gradient(#d4c48a,#a08060);top:9%;left:48%;transform:rotate(12deg)}.gift-burst span:nth-child(2){background:linear-gradient(135deg,#c4a574,#6b4c32);top:26%;left:79%;transform:rotate(-24deg)}.gift-burst span:nth-child(3){background:linear-gradient(90deg,#e8d9a8,#8f6b45);bottom:24%;right:12%;transform:rotate(55deg)}.gift-burst span:nth-child(4){background:linear-gradient(#a08060,#5c4228);bottom:12%;left:41%;transform:rotate(-8deg)}.gift-burst span:nth-child(5){background:linear-gradient(45deg,#d4b896,#c4a574);bottom:34%;left:6%;transform:rotate(33deg)}.gift-burst span:nth-child(6){background:linear-gradient(#e8dcc8,#a08060);top:24%;left:10%;transform:rotate(-41deg)}.gift-burst span:nth-child(7){background:linear-gradient(90deg,#f5edd8,#d4c48a);width:18px;height:12px;top:14%;left:72%;transform:rotate(72deg)}.gift-burst span:nth-child(8){background:linear-gradient(#8f6b45,#4a3420);width:11px;height:26px;bottom:40%;right:28%;transform:rotate(-18deg)}.gift-burst span:nth-child(9){background:linear-gradient(135deg,#e8d9a8,#6b4c32);width:16px;height:14px;top:48%;left:22%;transform:rotate(6deg)}.gift-burst span:nth-child(10){background:linear-gradient(90deg,#c4a574,#e8dcc8);width:20px;height:10px;bottom:18%;right:44%;transform:rotate(-52deg)}.gift-stack-core .gift-present{z-index:1;text-align:center;opacity:0;clip-path:inset(48% 24% 46% round .35rem);pointer-events:none;border-radius:1.25rem;grid-area:1/1;width:86%;min-width:0;max-width:260px;margin:0;padding:1rem;transform:scale(.52)translateY(2.4rem)}.gift-stage.is-opening .gift-present,.gift-stage.is-revealed .gift-present{z-index:5}.gift-stage.is-revealed .gift-present{pointer-events:auto;width:min(92%,720px);max-width:720px;padding:clamp(1rem,3vw,1.65rem);transition:width 3.8s cubic-bezier(.2,.9,.2,1),max-width 3.8s cubic-bezier(.2,.9,.2,1),padding 3.8s cubic-bezier(.2,.9,.2,1)}.gift-stage.is-paper-torn .gift-tag,.gift-stage.is-opening .gift-tag,.gift-stage.is-revealed .gift-tag{opacity:0;pointer-events:none;animation:none}.gift-present-media{width:100%;min-width:0;max-width:100%;margin:0 auto .75rem}.gift-video-frame{aspect-ratio:9/16;background:#0a0a0a;border-radius:1rem;width:min(100%,min(78vh,680px,100dvh - 10rem)/1.77778);min-width:0;max-width:100%;min-height:0;margin-inline:auto;position:relative;overflow:hidden;box-shadow:0 8px 32px #0000001f}.gift-present-video{object-fit:contain;object-position:center;background:#0a0a0a;width:100%;max-width:100%;height:100%;display:block}.gift-video-tap-overlay{z-index:2;cursor:pointer;text-align:center;font:inherit;background:0 0;border:none;justify-content:center;align-items:center;margin:0;padding:clamp(.75rem,4vw,1.5rem);display:flex;position:absolute;inset:0}.gift-video-tap-overlay:hover .gift-video-tap-text,.gift-video-tap-overlay:focus-visible .gift-video-tap-text{opacity:.88}.gift-video-tap-overlay:focus-visible{outline:none}.gift-video-tap-overlay:focus-visible .gift-video-tap-text{outline-offset:.25rem;border-radius:.2rem;outline:2px solid #ffffff80}.gift-video-tap-overlay--static{pointer-events:none;cursor:default}.gift-video-tap-text{font-family:var(--font-display);letter-spacing:.03em;color:#fff;text-shadow:0 2px 14px #0000008c;max-width:12em;font-size:clamp(1.4rem,5vw,2rem);font-weight:500;line-height:1.35}.gift-video-tap-overlay--static .gift-video-tap-text{color:#ffffffbf;font-size:clamp(1.05rem,3.5vw,1.35rem)}.gift-replay{cursor:pointer;font-family:var(--font-display);color:var(--text-soft);text-underline-offset:.18em;background:0 0;border:none;border-radius:.35rem;margin-top:1.35rem;padding:.4rem .6rem;font-size:clamp(1.05rem,3vw,1.35rem);text-decoration:underline}.gift-replay:hover{color:var(--text-main)}.gift-replay:focus-visible{outline-offset:2px;outline:2px solid #645a5f59}.gift-present h3{margin-bottom:.45rem;font-size:clamp(1.15rem,3.5vw,1.45rem)}.gift-present p{color:var(--text-soft);margin:0;font-size:.92rem;line-height:1.45}.love-note .note-shell{text-align:left;border-radius:1.5rem;max-width:760px;margin:0 auto;padding:clamp(1.7rem,4vw,3rem)}.note-lines{gap:.85rem;margin-top:1.2rem;display:grid}.note-line{font-size:clamp(1rem,1.6vw,1.2rem)}.signature{font-family:var(--font-display);color:var(--rose-deep);margin-top:1.8rem;font-size:1.6rem}.love-note--envelope .section-heading{text-align:center;margin-bottom:.35rem}.love-note--envelope .envelope-letter.note-shell{-webkit-backdrop-filter:blur(11px);backdrop-filter:blur(11px);border:1px solid #7a233338;max-width:none;padding:clamp(1.65rem,4.5vw,2.65rem) clamp(1.75rem,5.2vw,3.2rem) clamp(2rem,5.4vw,3.25rem) clamp(1.5rem,4.6vw,2.6rem)}.love-note--envelope .envelope-letter-body{gap:.95rem}.love-note--envelope .envelope-signature{margin-top:1.55rem;margin-bottom:.35rem;padding-bottom:.15rem}.envelope-scrolly-track{width:100%;position:relative}.envelope-scrolly-pin{box-sizing:border-box;justify-content:center;align-items:center;min-height:100svh;padding:clamp(1rem,4vw,2.5rem) 0 clamp(3rem,8vh,5rem);display:flex;overflow-x:visible}.envelope-scrolly--reduced .envelope-compose{aspect-ratio:auto;width:min(920px,94vw);min-height:min(280px,45vh);overflow:visible}.envelope-scrolly--reduced .envelope-craft{opacity:0;pointer-events:none;visibility:hidden}.envelope-scrolly--reduced .envelope-letter{max-width:94vw;max-height:min(88vh,860px);margin-left:auto;margin-right:auto;padding:clamp(2rem,5vw,3.35rem) clamp(2.15rem,5.4vw,3.85rem) clamp(2.65rem,6vw,4.1rem) clamp(1.85rem,5vw,3.35rem);position:relative;width:min(920px,94vw)!important;top:auto!important;bottom:auto!important;left:auto!important;transform:none!important}.envelope-scrolly-stage{justify-content:center;align-items:center;width:100%;max-width:min(960px,96vw);margin:0 auto;display:flex;overflow:visible}.envelope-compose{aspect-ratio:1.52;border-radius:4px;width:min(380px,91vw);max-width:100%;margin:0 auto;position:relative;overflow:hidden}.envelope-craft{z-index:2;pointer-events:none;transform-origin:50%;position:absolute;inset:0}.envelope-back{background:linear-gradient(148deg,#ffffff80 0%,#0000 42%),linear-gradient(168deg,#efe6dd 0%,#e2d4c6 48%,#d4c3b2 100%);border-radius:4px;position:absolute;inset:0;box-shadow:inset 0 1px #ffffff8c,0 18px 40px #7a23331f,0 6px 14px #5a322814}.envelope-letter{z-index:1;isolation:isolate;text-align:left;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:#7a233359 transparent;transform-origin:50% 100%;box-sizing:border-box;border-radius:1.2rem;width:91%;max-height:min(72vh,640px);margin:0;padding:clamp(1.35rem,3.8vw,2rem) clamp(1.45rem,4.3vw,2.35rem) clamp(1.55rem,4.2vw,2.45rem) clamp(1.25rem,3.8vw,2rem);position:absolute;bottom:9%;left:4.5%;overflow-y:auto;box-shadow:inset 0 2px #ffffffd9,0 14px 36px #7a233324}.love-note--envelope .envelope-letter.note-shell{box-shadow:inset 0 1px #fffffff2,inset 0 0 0 1px #fff6,0 0 0 1px #ffffffa6,0 0 0 3px #7a233312,0 10px 36px #7a23331f,0 22px 56px #7a23330f}.envelope-letter.envelope-letter--expanded{max-height:none;overflow-y:visible}.envelope-letter::-webkit-scrollbar{width:6px}.envelope-letter::-webkit-scrollbar-thumb{background:#7a233347;border-radius:99px}.envelope-letter-body{gap:.82rem;display:grid}.envelope-letter-body .note-line{margin:0;font-size:clamp(.98rem,1.65vw,1.14rem);line-height:1.55}.envelope-signature{white-space:pre-line;margin-top:1.35rem;margin-bottom:0}.envelope-pocket-face{z-index:2;clip-path:polygon(0 14%,5.5% 0,94.5% 0,100% 14%,100% 100%,0 100%);pointer-events:none;background:linear-gradient(185deg,#e8dfd4 0%,#ddd2c5 38%,#d0c2b3 100%);height:56%;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -3px 12px #5a322812}.envelope-flap-hinge{z-index:3;pointer-events:none;transform-origin:50% 100%;height:50%;position:absolute;top:0;left:0;right:0}.envelope-flap{transform-origin:50% 100%;will-change:transform;clip-path:polygon(0 100%,50% 6%,100% 100%);background:linear-gradient(168deg,#f7efe8 0%,#ebe0d4 45%,#dfd2c4 100%);width:100%;height:100%;box-shadow:inset 0 -2px #ffffff73,0 -10px 22px #7a233314}.envelope-seal-anchor{z-index:5;pointer-events:none;position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)}.envelope-seal{background:radial-gradient(circle at 32% 28%, #f5a8b8 0%, var(--rose-mid) 42%, var(--rose-deep) 92%);pointer-events:none;border-radius:50%;place-items:center;width:clamp(3.1rem,10vw,3.65rem);height:clamp(3.1rem,10vw,3.65rem);display:grid;position:relative;box-shadow:inset 0 2px 4px #7a233359,0 10px 20px #7a233338}.envelope-seal-inner{font-family:var(--font-display);color:#fffcfcf2;text-shadow:0 1px 2px #3c141e59;font-size:clamp(1.35rem,4.5vw,1.65rem);line-height:1}@media (width<=800px){.panel{width:min(1080px,90%)}.cat-masonry-sizer,.cat-masonry-item--sm,.cat-masonry-item--md,.cat-masonry-item--lg,.cat-masonry-item--wide,.cat-masonry-item--tall{width:100%}.gift-burst{width:min(360px,90vw);height:min(360px,90vw)}.gift-stack-core .gift-present{width:90%;max-width:none}.floating-clip{width:1.85rem}.floating-clip:nth-child(2),.floating-clip:nth-child(4),.floating-clip:nth-child(6){right:4%}}@keyframes confettiPop{0%{opacity:0;transform:scale(.35)translate(0)}12%{opacity:1}to{opacity:0;transform:scale(1.05) translate(var(--x), var(--y))}}@keyframes blobDriftA{0%,to{transform:translate(0)scale(1)}33%{transform:translate(4%,3%)scale(1.05)}66%{transform:translate(-3%,5%)scale(.96)}}@keyframes blobDriftB{0%,to{transform:translate(0)rotate(0)scale(1)}40%{transform:translate(-5%,-4%)rotate(4deg)scale(1.06)}70%{transform:translate(3%,2%)rotate(-3deg)scale(.94)}}@keyframes blobDriftC{0%,to{transform:translate(0)scale(1)}50%{transform:translate(5%,-5%)scale(1.08)}}@keyframes lidLoosen{0%{transform:rotate(0)skew(0)translateY(0)rotateX(0)}to{transform:rotate(-5deg)skew(-5deg)translateY(3px)rotateX(0)}}@keyframes lidLiftFromTorn{0%{transform:rotate(-5deg)skew(-5deg)translateY(3px)rotateX(0)}18%{transform:rotate(-3deg)skew(-2deg)translateY(-4px)rotateX(8deg)}42%{transform:translateY(-22px)rotateX(38deg)skew(0)rotate(.5deg)}68%{transform:translateY(-34px)rotateX(58deg)skew(0)rotate(0)}to{transform:translateY(-36px)rotateX(62deg)skew(0)rotate(0)}}@keyframes ribbonPeelX{0%{opacity:1;transform:translate(0)rotate(0)scaleX(1)}to{opacity:0;transform:translate(-140%,-220%)rotate(-52deg)scaleX(.15)}}@keyframes ribbonPeelY{0%{opacity:1;transform:translate(0)rotate(0)scaleY(1)}to{opacity:0;transform:translate(150%,-200%)rotate(44deg)scaleY(.12)}}@keyframes tagPeelAway{0%{opacity:1;transform:translate(-50%)rotate(-8deg)scale(1)}to{opacity:0;transform:translate(-50%)translateY(120%)rotate(25deg)scale(.35)}}@keyframes cornerPeelTL{0%{opacity:1;transform:rotate(0)translate(0)}to{opacity:0;transform:rotate(-42deg)translate(-55%,-65%)}}@keyframes cornerPeelTR{0%{opacity:1;transform:rotate(0)translate(0)}to{opacity:0;transform:rotate(40deg)translate(55%,-62%)}}@keyframes cornerPeelBL{0%{opacity:1;transform:rotate(0)translate(0)}to{opacity:0;transform:rotate(38deg)translate(-58%,55%)}}@keyframes cornerPeelBR{0%{opacity:1;transform:rotate(0)translate(0)}to{opacity:0;transform:rotate(-36deg)translate(58%,52%)}}@keyframes giftBoxIdle{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes ribbonGlow{0%,to{filter:brightness()saturate()}50%{filter:brightness(1.06)saturate(1.12)}}@keyframes ribbonFlutterX{0%,to{transform:translate(0)}33%{transform:translate(1.5px,-1px)}66%{transform:translate(-1px,.5px)}}@keyframes ribbonFlutterY{0%,to{transform:translate(0)}33%{transform:translate(-1px,1.5px)}66%{transform:translate(1px,-1px)}}@keyframes tagHeartbeat{0%,to{transform:translate(-50%)rotate(-8deg)scale(1)}28%{transform:translate(-50%)rotate(-8deg)scale(1.1)}45%{transform:translate(-50%)rotate(-8deg)scale(.96)}62%{transform:translate(-50%)rotate(-8deg)scale(1.05)}}@keyframes wrapOpenAway{0%{opacity:1;filter:brightness()saturate();transform:scale(1)translateY(0)rotate(0)}22%{opacity:1;filter:brightness(.99)saturate(1.02);transform:scale(.97)translateY(4px)rotate(-.5deg)}45%{opacity:1;filter:brightness(1.04)saturate(1.04);transform:scale(1.03)translateY(-10px)rotate(.8deg)}72%{opacity:.55;filter:brightness(1.06)saturate(1.06);transform:scale(.78)translateY(22px)rotate(-2.5deg)}to{opacity:0;filter:brightness(1.12)saturate(1.1);transform:scale(.48)translateY(56px)rotate(-6deg)}}@keyframes presentEmerge{0%{opacity:0;clip-path:inset(49% 27% 48% round .35rem);transform:scale(.5)translateY(2.45rem)}8%{opacity:.85;clip-path:inset(44% 22% 42% round .42rem);transform:scale(.54)translateY(2.05rem)}22%{opacity:1;clip-path:inset(36% 16% 34% round .52rem);transform:scale(.62)translateY(1.45rem)}40%{clip-path:inset(26% 10% 24% round .68rem);transform:scale(.74)translateY(.85rem)}58%{clip-path:inset(14% 5% 12% round .88rem);transform:scale(.86)translateY(.35rem)}76%{clip-path:inset(4% 1% 3% round 1.05rem);transform:scale(.95)translateY(-.35rem)}to{opacity:1;clip-path:inset(0% round 1.25rem);transform:scale(1)translateY(-2.75rem)}}@keyframes presentRevealExpand{0%{transform:scale(1)translateY(-2.75rem);box-shadow:0 20px 50px #7a233329}22%{transform:scale(1.03)translateY(-2.88rem);box-shadow:0 22px 54px #7a23332e}48%{transform:scale(1.12)translateY(-3.35rem);box-shadow:0 30px 72px #7a233338}72%{transform:scale(1.18)translateY(-3.85rem);box-shadow:0 36px 88px #7a233342}to{transform:scale(1.22)translateY(-4.1rem);box-shadow:0 40px 96px #7a233347}}@media (prefers-reduced-motion:reduce){.ambient-blob{animation:none!important}.grain-overlay{display:none}}.gift-stage.is-wrapped .gift-box{animation:3.6s ease-in-out infinite giftBoxIdle}.gift-stage.is-wrapped .gift-ribbon-x{animation:3.2s ease-in-out infinite ribbonGlow,4.3s ease-in-out infinite ribbonFlutterX}.gift-stage.is-wrapped .gift-ribbon-y{animation:3.2s ease-in-out infinite ribbonGlow,4.3s ease-in-out -.6s infinite ribbonFlutterY}.gift-stage.is-wrapped .gift-tag{animation:2.5s ease-in-out infinite tagHeartbeat}.gift-stage.is-tape-off:not(.is-paper-torn) .gift-ribbon-x{animation:1.08s cubic-bezier(.25,.88,.18,1) forwards ribbonPeelX}.gift-stage.is-tape-off:not(.is-paper-torn) .gift-ribbon-y{animation:1.08s cubic-bezier(.25,.88,.18,1) .12s forwards ribbonPeelY}.gift-stage.is-tape-off:not(.is-paper-torn) .gift-tag{animation:.92s cubic-bezier(.33,1,.32,1) 50ms forwards tagPeelAway}.gift-stage.is-paper-torn:not(.is-opening):not(.is-revealed) .gift-lid{animation:.88s cubic-bezier(.37,0,.21,1) forwards lidLoosen}.gift-stage.is-paper-torn:not(.is-opening):not(.is-revealed) .gift-paper-corner--tl{animation:1.22s cubic-bezier(.28,1,.32,1) forwards cornerPeelTL}.gift-stage.is-paper-torn:not(.is-opening):not(.is-revealed) .gift-paper-corner--tr{animation:1.22s cubic-bezier(.28,1,.32,1) 70ms forwards cornerPeelTR}.gift-stage.is-paper-torn:not(.is-opening):not(.is-revealed) .gift-paper-corner--bl{animation:1.22s cubic-bezier(.28,1,.32,1) .14s forwards cornerPeelBL}.gift-stage.is-paper-torn:not(.is-opening):not(.is-revealed) .gift-paper-corner--br{animation:1.22s cubic-bezier(.28,1,.32,1) .21s forwards cornerPeelBR}.gift-stage.is-opening .gift-lid,.gift-stage.is-revealed .gift-lid{animation:1.38s cubic-bezier(.37,0,.21,1) forwards lidLiftFromTorn}.gift-stage.is-opening .gift-box{animation:1.18s cubic-bezier(.45,.02,.15,1) .38s forwards wrapOpenAway}.gift-stage.is-revealed .gift-box{opacity:0;pointer-events:none;cursor:default;z-index:0;filter:brightness(1.12)saturate(1.1);transform:scale(.48)translateY(56px)rotate(-6deg)}.gift-stage.is-opening .gift-present{animation:1.72s cubic-bezier(.45,0,.2,1) 80ms forwards presentEmerge}.gift-stage.is-revealed .gift-present{opacity:1;clip-path:inset(0% round 1.25rem);animation:3.55s cubic-bezier(.18,.88,.22,1) forwards presentRevealExpand}.gift-stage.is-opening .gift-burst span,.gift-stage.is-revealed .gift-burst span{animation:1.2s cubic-bezier(.25,.85,.4,1) forwards confettiPop}.gift-stage.is-opening .gift-paper-corner,.gift-stage.is-revealed .gift-paper-corner{opacity:0;animation:none}.gift-stage.is-opening .gift-burst span:first-child,.gift-stage.is-revealed .gift-burst span:first-child{animation-delay:0s}.gift-stage.is-opening .gift-burst span:nth-child(2),.gift-stage.is-revealed .gift-burst span:nth-child(2){animation-delay:45ms}.gift-stage.is-opening .gift-burst span:nth-child(3),.gift-stage.is-revealed .gift-burst span:nth-child(3){animation-delay:90ms}.gift-stage.is-opening .gift-burst span:nth-child(4),.gift-stage.is-revealed .gift-burst span:nth-child(4){animation-delay:20ms}.gift-stage.is-opening .gift-burst span:nth-child(5),.gift-stage.is-revealed .gift-burst span:nth-child(5){animation-delay:70ms}.gift-stage.is-opening .gift-burst span:nth-child(6),.gift-stage.is-revealed .gift-burst span:nth-child(6){animation-delay:.11s}.gift-stage.is-opening .gift-burst span:nth-child(7),.gift-stage.is-revealed .gift-burst span:nth-child(7){animation-delay:55ms}.gift-stage.is-opening .gift-burst span:nth-child(8),.gift-stage.is-revealed .gift-burst span:nth-child(8){animation-delay:0s}.gift-stage.is-opening .gift-burst span:nth-child(9),.gift-stage.is-revealed .gift-burst span:nth-child(9){animation-delay:85ms}.gift-stage.is-opening .gift-burst span:nth-child(10),.gift-stage.is-revealed .gift-burst span:nth-child(10){animation-delay:.13s}.gift-stage .gift-burst span:first-child{--x:0px;--y:-120px}.gift-stage .gift-burst span:nth-child(2){--x:95px;--y:-70px}.gift-stage .gift-burst span:nth-child(3){--x:130px;--y:90px}.gift-stage .gift-burst span:nth-child(4){--x:0px;--y:120px}.gift-stage .gift-burst span:nth-child(5){--x:-100px;--y:75px}.gift-stage .gift-burst span:nth-child(6){--x:-120px;--y:-70px}.gift-stage .gift-burst span:nth-child(7){--x:108px;--y:-40px}.gift-stage .gift-burst span:nth-child(8){--x:-88px;--y:95px}.gift-stage .gift-burst span:nth-child(9){--x:-40px;--y:-100px}.gift-stage .gift-burst span:nth-child(10){--x:72px;--y:88px}@media (width<=800px){.gift-stage .gift-burst span:nth-child(2){--x:70px}.gift-stage .gift-burst span:nth-child(3){--x:90px}.gift-stage .gift-burst span:nth-child(5){--x:-70px}.gift-stage .gift-burst span:nth-child(6){--x:-90px}.gift-stage .gift-burst span:nth-child(7){--x:75px}.gift-stage .gift-burst span:nth-child(8){--x:-65px}.gift-stage .gift-burst span:nth-child(9){--x:-32px}.gift-stage .gift-burst span:nth-child(10){--x:55px}}@media (prefers-reduced-motion:reduce){.gift-stage.is-wrapped .gift-box,.gift-stage.is-wrapped .gift-ribbon-x,.gift-stage.is-wrapped .gift-ribbon-y,.gift-stage.is-wrapped .gift-tag{animation:none}.gift-stage.is-tape-off:not(.is-paper-torn) .gift-ribbon-x,.gift-stage.is-tape-off:not(.is-paper-torn) .gift-ribbon-y,.gift-stage.is-tape-off:not(.is-paper-torn) .gift-tag{opacity:0;animation:none}.gift-stage.is-paper-torn:not(.is-opening):not(.is-revealed) .gift-lid{animation:none;transform:rotate(-5deg)skew(-5deg)translateY(3px)}.gift-stage.is-paper-torn:not(.is-opening):not(.is-revealed) .gift-paper-corner{opacity:0;animation:none}.gift-stage.is-opening .gift-lid,.gift-stage.is-revealed .gift-lid{animation:none;transform:translateY(-26px)rotateX(52deg)}.gift-stage.is-opening .gift-burst span,.gift-stage.is-revealed .gift-burst span{opacity:0;animation:none}.gift-stage.is-opening .gift-box{opacity:0;pointer-events:none;animation:none;transform:scale(.85)translateY(12px)}.gift-stage.is-revealed .gift-box{opacity:0;pointer-events:none;cursor:default;z-index:0;transform:scale(.85)translateY(12px)}.gift-stage.is-opening .gift-present,.gift-stage.is-revealed .gift-present{opacity:1;clip-path:none;animation:none;transform:scale(1.08)translateY(0)}.app-shell:after{animation:none}}.intro-gate{z-index:9999;color:var(--text-main);isolation:isolate;background:radial-gradient(120% 80% at 50% 0,#dca5b238,#0000 50%),radial-gradient(80% 50% at 80% 100%,#7a233314,#0000 45%),linear-gradient(168deg,#fcf9fa 0%,#f5ecee 42%,#ebe2e4 100%);place-items:center;padding:clamp(1.25rem,4vw,2.5rem);display:grid;position:fixed;inset:0}.intro-gate__content{flex-direction:column;align-items:center;gap:1.75rem;display:flex}.intro-gate__content--password{width:min(100%,26rem)}.intro-gate__content--record{gap:1.35rem;width:min(100%,24rem)}.intro-gate__card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(145deg,#fffffff0 0%,#fffafbe0 100%);border:1px solid #7a23331a;border-radius:1.15rem;width:100%;padding:clamp(1.75rem,5vw,2.35rem) clamp(1.5rem,4vw,2rem) clamp(1.85rem,5vw,2.45rem);position:relative;box-shadow:inset 0 1px #ffffffd9,0 24px 48px #30272a14,0 8px 16px #7a23330f}.intro-gate__card-accent{background:linear-gradient(90deg, transparent, var(--rose-light) 20%, var(--rose-mid) 50%, var(--rose-light) 80%, transparent);opacity:.85;border-radius:0 0 4px 4px;width:3rem;height:3px;position:absolute;top:0;left:50%;translate:-50%}.intro-gate__title{font-family:var(--font-display);color:var(--rose-deep);text-align:center;letter-spacing:.01em;margin:.35rem 0 0;font-size:clamp(1.75rem,5vw,2.25rem);font-weight:600;line-height:1.22}.intro-gate__hint{font-family:var(--font-body);color:var(--text-soft);text-align:center;opacity:.92;margin:.65rem 0 0;font-size:.95rem;font-style:italic;font-weight:400;line-height:1.45}.intro-gate__form{flex-direction:column;gap:1rem;width:100%;margin-top:1.5rem;display:flex}.intro-gate__form--shake{animation:.5s ease-in-out introGateShake}@keyframes introGateShake{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(8px)}60%{transform:translate(-5px)}80%{transform:translate(5px)}}.intro-gate__input{width:100%;font-family:var(--font-body);color:var(--text-main);background:#ffffffeb;border:1px solid #7a23331f;border-radius:.75rem;padding:.82rem 1.05rem;font-size:1rem;transition:border-color .2s,box-shadow .2s;box-shadow:0 2px 8px #30272a0a}.intro-gate__input::placeholder{color:#6652598c}.intro-gate__input:focus{border-color:#b14a6373;outline:none;box-shadow:0 0 0 3px #b14a631f,0 4px 14px #7a233314}.intro-gate__submit{font-family:var(--font-body);letter-spacing:.06em;color:var(--snow);background:linear-gradient(160deg, var(--rose-mid) 0%, var(--rose-deep) 55%, #5c1a28 100%);cursor:pointer;border:none;border-radius:.75rem;align-self:stretch;padding:.8rem 1.25rem;font-size:.95rem;font-weight:600;transition:transform .18s,box-shadow .18s;box-shadow:inset 0 1px #fff3,0 12px 28px #7a233347}.intro-gate__submit:hover{transform:translateY(-1px);box-shadow:inset 0 1px #ffffff38,0 14px 34px #7a233357}.intro-gate__submit:active{transform:translateY(0)}.intro-gate__error{font-family:var(--font-body);color:var(--rose-deep);text-align:center;margin:0;font-size:.88rem}.intro-gate__deck{width:min(94vw,380px);margin:.25rem 0 0}.intro-gate__deck-chassis{background:linear-gradient(125deg,#ffffff1f 0%,#0000 42%),linear-gradient(#5c4a42 0%,#3d2f2a 18%,#2a211e 50%,#352b27 78%,#2a221f 100%);border-radius:1rem;padding:.55rem;position:relative;box-shadow:inset 0 2px #ffffff0f,0 20px 40px #140e0c73,0 8px 16px #30272a33}.intro-gate__deck-feet{pointer-events:none;justify-content:space-between;display:flex;position:absolute;bottom:-2px;left:8%;right:8%}.intro-gate__deck-feet span{background:linear-gradient(#1a1513,#0d0a09);border-radius:0 0 3px 3px;width:10px;height:5px;box-shadow:0 2px 4px #00000059}.intro-gate__deck-plate{background:linear-gradient(165deg,#ffffff17 0%,#0000 38%),linear-gradient(#4a4548 0%,#353234 35%,#2a282b 100%);border-radius:.65rem;justify-content:space-between;align-items:center;gap:.35rem;min-height:168px;padding:.85rem .65rem 1rem .85rem;display:flex;position:relative;box-shadow:inset 0 1px #ffffff24,inset 0 -12px 24px #00000059}.intro-gate__deck-brand{opacity:.7;background:linear-gradient(90deg,#0000,#dca5b259,#ffffff26,#dca5b240,#0000);border-radius:2px;width:2.5rem;height:2px;position:absolute;top:.5rem;left:50%;translate:-50%}.intro-gate__platter-zone{aspect-ratio:1;flex:58%;place-items:center;max-width:58%;margin-top:.35rem;display:grid;position:relative}.intro-gate__well-ring{pointer-events:none;background:radial-gradient(circle,#0000 48%,#0000008c 49%,#00000059 52%,#282426e6 56%,#1c1a1b 100%);border-radius:50%;position:absolute;inset:-2%;box-shadow:inset 0 4px 12px #000000a6,0 1px #ffffff0d}.intro-gate__spin{z-index:1;place-items:center;width:86%;height:86%;display:grid;position:relative}.intro-gate__spin--pulse{animation:1.1s ease-in-out infinite introPlatterPulse}.intro-gate__spin--spin{animation:2.75s linear infinite introPlatterSpin}@keyframes introPlatterPulse{0%,to{filter:brightness();transform:scale(1)}50%{filter:brightness(1.06);transform:scale(1.018)}}@keyframes introPlatterSpin{to{transform:rotate(360deg)}}.intro-gate__mat{opacity:.55;filter:contrast(1.1);pointer-events:none;background:radial-gradient(circle,#0000 72%,#0003 100%),repeating-conic-gradient(#1a1819 0deg 2deg,#141212 2deg 4deg);border-radius:50%;position:absolute;inset:-2.5%}.intro-gate__record{background:radial-gradient(circle at 50% 48%,#252022 0%,#121011 55%,#0a0909 100%);border-radius:50%;width:100%;height:100%;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff0d,inset 0 -16px 32px #0000008c,0 4px 14px #0006}.intro-gate__grooves{opacity:.88;pointer-events:none;background:repeating-radial-gradient(circle,#080607fa 0 .4px,#161214f2 .4px 1.15px),repeating-radial-gradient(circle,#0000 0 2px,#0000001f 2px 2.6px);border-radius:50%;position:absolute;inset:0}.intro-gate__grooves:after{content:"";mix-blend-mode:soft-light;pointer-events:none;background:linear-gradient(125deg,#fff0 35%,#ffffff0a 48%,#ffffff17 52%,#fff0 65%);border-radius:50%;position:absolute;inset:0}.intro-gate__label{z-index:2;background:radial-gradient(circle at 38% 32%, #fffcfdfa 0%, var(--rose-light) 42%, var(--rose-mid) 88%, var(--rose-deep) 100%);border-radius:50%;place-items:center;width:38%;height:38%;display:grid;position:absolute;top:50%;left:50%;translate:-50% -50%;box-shadow:inset 0 -8px 14px #7a233338,inset 0 2px 6px #ffffff59,0 2px 10px #00000059}.intro-gate__label span{font-family:var(--font-display);color:var(--rose-deep);text-align:center;padding:.2rem;font-size:clamp(.62rem,2.5vw,.82rem);font-weight:600;line-height:1.15}.intro-gate__spindle{z-index:3;background:radial-gradient(circle at 32% 28%,#f0ecee,#8a8286 45%,#3a3436);border-radius:50%;width:9%;height:9%;position:absolute;top:50%;left:50%;translate:-50% -50%;box-shadow:0 1px 2px #00000080,inset 0 1px #ffffff40}.intro-gate__arm-column{flex-direction:column;flex:0 0 38%;justify-content:center;align-items:center;gap:.15rem;min-height:150px;padding-top:.5rem;display:flex}.intro-gate__knob{background:radial-gradient(circle at 35% 30%,#8f878b,#3f3a3d 55%,#1e1c1d);border-radius:50%;box-shadow:0 2px 4px #0006,inset 0 1px #ffffff1f}.intro-gate__knob--small{width:14px;height:14px;margin-bottom:.15rem}.intro-gate__knob--large{width:22px;height:22px;margin-top:auto;margin-bottom:.15rem}.intro-gate__pivot{background:radial-gradient(circle at 40% 35%,#6a6467,#2e2b2d 70%,#151314);border-radius:50%;place-items:center;width:28px;height:28px;display:grid;box-shadow:inset 0 2px 4px #00000080,0 2px 6px #00000059}.intro-gate__pivot-cap{background:radial-gradient(circle at 30% 28%,#d8d4d6,#6e686b 60%,#2a2829);border-radius:50%;width:14px;height:14px;box-shadow:inset 0 -1px 2px #0006}.intro-gate__tonearm{transform-origin:85% 19%;pointer-events:none;z-index:4;filter:drop-shadow(0 6px 10px #00000059);width:100%;max-width:132px;height:148px;margin-top:-10px;margin-left:-22%;transition:transform 1.05s cubic-bezier(.33,1,.25,1);transform:rotate(-56deg)}.intro-gate__tonearm--down{transform:rotate(19deg)}.intro-gate__tonearm-svg{width:100%;height:100%;display:block}.intro-gate__status{min-height:1.35em;font-family:var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--text-soft);text-align:center;opacity:.88;margin:0;font-size:.88rem;font-weight:500}.intro-gate__status--message{letter-spacing:.02em;text-transform:none;max-width:22rem;min-height:2.85em;color:var(--text-main);opacity:.9;padding:0 .35rem;font-size:clamp(.95rem,3.2vw,1.05rem);font-style:italic;font-weight:400;line-height:1.45}.intro-gate__begin{font-family:var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--snow);background:linear-gradient(160deg, var(--rose-mid) 0%, var(--rose-deep) 55%, #5c1a28 100%);cursor:pointer;opacity:0;visibility:hidden;border:none;border-radius:999px;margin-top:.15rem;padding:.82rem 2.5rem;font-size:.92rem;font-weight:600;transition:opacity 1.15s,visibility 1.15s,transform 1.15s,box-shadow .2s;transform:translateY(10px);box-shadow:inset 0 1px #ffffff2e,0 12px 36px #7a233352}.intro-gate__begin--visible{opacity:1;visibility:visible;transform:translateY(0)}.intro-gate__begin:hover{box-shadow:inset 0 1px #fff3,0 14px 40px #7a233361}@media (prefers-reduced-motion:reduce){.intro-gate__form--shake,.intro-gate__spin--pulse,.intro-gate__spin--spin{animation:none}.intro-gate__tonearm{transition:none}.intro-gate__tonearm--down{transform:rotate(19deg)}.intro-gate__begin{transition:opacity .2s,visibility .2s;transform:none}}
