:root{--ease:cubic-bezier(.2,.75,.25,1)}
body{background:#eddee2}.shell{max-width:860px}.top{border-bottom:1px solid #641c3812}
.utility-actions{display:flex;align-items:center;justify-content:flex-end;gap:16px}.utility-actions button{font:inherit;border:0;background:none;color:var(--muted);padding:8px 0}
.draft-note{border-radius:3px;padding:4px 8px;font-size:.63rem;max-width:max-content}.audio-note{font-size:.6rem}
.slide{animation:page-arrive .65s var(--ease) both;max-width:620px;margin:auto}
.cover{max-width:none;padding-top:26px;padding-bottom:32px;background:radial-gradient(ellipse at 70% 56%,#e5bac6 0,#f5e4e8 42%,#fff9f4 78%)}
.cover-grid{display:grid}.cover h1{font-size:clamp(3rem,13vw,5.1rem);margin-bottom:18px;line-height:.96}
.cover-description{font-size:.88rem!important;line-height:1.7!important;max-width:28em;margin-bottom:8px!important}
.kit-note{font-size:.7rem!important;color:var(--muted);line-height:1.7!important;margin-bottom:0!important}
.friend-arrival{font-size:.78rem!important;line-height:1.6!important;padding:12px 16px;border-left:2px solid var(--wine);background:#ffffff85;margin-bottom:18px!important}
.kit-scene{position:relative;width:100%;height:373px;perspective:1100px;margin:3px auto 12px;isolation:isolate}
.kit-book{position:absolute;width:55%;max-width:248px;left:21%;top:21px;transform:rotateY(-13deg) rotateZ(-6deg);transform-style:preserve-3d;animation:book-breathe 6.5s ease-in-out infinite;z-index:2;filter:drop-shadow(9px 22px 18px #49112835)}
.kit-book>img{width:100%;height:auto;display:block;box-shadow:inset 0 0 12px #0002;border-radius:1px 3px 3px 1px;position:relative;z-index:2}
.book-spine{position:absolute;left:-12px;top:0;bottom:0;width:14px;transform:rotateY(-35deg);transform-origin:right;background:linear-gradient(90deg,#3f1123,#a76b80);z-index:1}
.book-pages{position:absolute;right:-7px;left:4px;top:5px;bottom:-7px;background:repeating-linear-gradient(0deg,#e9ddd5 0 1px,#fffaf5 1px 3px);border-radius:0 4px 3px 0;transform:translateZ(-9px)}
.kit-paper{position:absolute;background:var(--paper);color:var(--wine);box-shadow:0 12px 23px #54152e1c;padding:20px 15px}
.paper-back{width:54%;height:237px;right:6%;top:5px;transform:rotate(10deg);animation:paper-breathe 8s ease-in-out infinite}
.paper-back>span{font:500 1.5rem Bodoni,serif}.paper-back p{font-size:.6rem;line-height:1.6;margin-top:10px}
.paper-rule{display:block;width:70%;height:1px;margin-top:20px;background:#d4b8c3}
.prayer-card{width:47%;left:0;bottom:31px;z-index:3;background:var(--wine);color:var(--paper);transform:rotate(-8deg);padding:24px 20px;animation:card-breathe 7s ease-in-out infinite}
.prayer-card>span{display:block;font:500 clamp(.9rem,3.2vw,1.15rem)/1.35 Bodoni,serif}.prayer-card small{display:block;font-size:.5rem;margin-top:13px;opacity:.8}
.scene-caption{position:absolute;bottom:0;right:0;color:var(--muted);font-size:.53rem!important;line-height:1.4!important;margin:0!important}
.cover-actions>.primary{display:flex;align-items:center;justify-content:space-between;font-size:.9rem;padding:17px 21px;box-shadow:0 8px 18px #641c3817}
.primary{transition:background .2s,box-shadow .25s,transform .25s;text-align:center;display:block;text-decoration:none}
.primary:hover{background:#7b2948;box-shadow:0 7px 19px #641c3821}.primary:active{transform:translateY(1px)}
.cover .signoff{font-size:.95rem;text-align:center;margin:0}
.text-button{background:transparent;border:0;color:var(--wine);display:block;text-align:center;min-height:44px;padding:12px 6px;text-underline-offset:5px;font-size:.78rem;text-decoration:underline;cursor:pointer}
.cover-actions>.text-button{width:100%;font-size:.75rem}
.editorial-photo{margin:36px 0 0}.editorial-photo img{display:block;width:100%;height:auto;border-radius:2px}
.editorial-photo figcaption{font-size:.53rem;line-height:1.5;color:var(--muted);text-align:right;margin-top:6px}
.photo-open{max-width:360px;margin:38px auto 0;padding:13px;background:#fff9f4;box-shadow:0 15px 28px #641c3812;transform:rotate(-2deg)}
.photo-open img{aspect-ratio:2/3;object-fit:contain}.photo-medium img{max-height:420px;object-fit:cover;object-position:50% 20%}
.photo-wide{margin-left:-8px;margin-right:-8px}.closing-photo{margin:0 -8px 33px}.closing-photo .editorial-photo{margin-top:0}
.photo-close img{max-height:390px;object-fit:cover;object-position:50% 25%}.close .letter{font-size:1.6rem}
.finish-prayer{display:flex;align-items:center;justify-content:space-between;width:100%;margin:28px 0 0;background:#fff9f4;border:1px solid #b78397;color:var(--wine);padding:16px 18px;border-radius:5px;font-weight:600;font-size:.84rem}
.finish-prayer:disabled{opacity:.8}.finish-status{font-size:.74rem!important;line-height:1.6!important;margin:9px 0 0!important}
.friend-invite{margin:34px -8px 0;border:1px solid #b990a0;background:var(--paper);overflow:hidden;border-radius:3px}
.friend-invite>img{width:100%;height:auto;display:block}.friend-copy{padding:25px 20px 22px}
.friend-copy h3{font:500 2.35rem/1.05 Bodoni,serif;color:var(--wine);margin:0 0 16px}.friend-copy h3 em{font-weight:500}
.friend-copy p{font-size:.86rem;line-height:1.8;margin-bottom:20px}.friend-copy .primary{font-size:.76rem;display:flex;align-items:center;justify-content:center;gap:10px;padding:15px 10px}
.friend-copy svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;flex-shrink:0}
.sheet{width:calc(100% - 24px);max-width:540px;max-height:calc(100svh - 24px);border:0;border-radius:9px;background:var(--paper);color:var(--ink);padding:40px 24px 26px;box-shadow:0 25px 100px #210a1c55;overscroll-behavior:contain}
.sheet[open]{animation:sheet-arrive .35s var(--ease) both}.sheet::backdrop{background:#30112099;backdrop-filter:blur(6px)}
.dialog-close{position:absolute;top:7px;right:9px;width:44px;height:44px;border:0;background:transparent;color:var(--wine);font-size:2rem;line-height:1}
.sheet h2{font:500 clamp(2rem,8.8vw,3.15rem)/1.05 Bodoni,serif;letter-spacing:-.03em;color:var(--wine);margin:15px 0 20px}.sheet h2 em{font-weight:500}
.sheet p{font-size:.85rem;line-height:1.7}.step-label{font-size:.66rem!important;color:var(--muted);padding-right:25px}
.answer{display:flex;gap:11px;align-items:flex-start;min-height:57px;padding:15px 13px;border:1px solid #d5b8c3;border-radius:5px;font-size:.84rem;line-height:1.6;margin:10px 0;cursor:pointer;transition:border-color .2s,background .2s,transform .2s}
.answer:hover{border-color:#9d5e78;transform:translateX(2px)}.answer:has(input:checked){border-color:var(--wine);background:#f2dde2}
.answer input{width:18px;height:18px;margin:3px 0 0;accent-color:var(--wine);flex-shrink:0}.question-privacy{font-size:.65rem!important;color:var(--muted);margin:17px 0}
.sheet .primary{font-size:.86rem}.sheet>.text-button,.sheet form>.text-button{width:100%}
.invite-sheet>img{width:100%;height:auto;display:block;border-radius:4px;margin-bottom:22px}
.invite-sheet textarea{width:100%;max-width:100%;resize:vertical;min-height:150px;border:1px solid var(--line);border-radius:4px;background:#fffdf9;color:var(--ink);padding:14px;font:400 .83rem/1.65 Manrope,sans-serif}
.invite-sheet .small{font-size:.71rem;line-height:1.7}.secondary{margin-top:10px;min-height:48px;background:none;border:1px solid #ad8293;color:var(--wine);width:100%;border-radius:5px;font-size:.83rem}
a[aria-disabled=true]{opacity:.45;cursor:default;pointer-events:none}
.notice{background:#fff9f470;border:1px solid #cfafbb;border-radius:4px;padding:24px 20px;margin-top:34px}
.bottom{backdrop-filter:blur(12px);background:#fff9f4ef}.progress button:before{transition:background .35s,transform .35s}.progress button[aria-current=step]:before{transform:scaleY(1.5)}
[data-reveal]{transition:opacity .7s var(--ease),translate .7s var(--ease)}.js-motion [data-reveal]:not(.is-revealed){opacity:0;translate:0 14px}
.motion-paused *{animation-play-state:paused!important;transition:none!important}.motion-paused .slide,.motion-paused .sheet{animation:none!important}
.motion-paused [data-reveal]{opacity:1!important;translate:none!important}
@keyframes page-arrive{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@keyframes sheet-arrive{from{opacity:0;transform:translateY(24px) scale(.985)}to{opacity:1;transform:none}}
@keyframes book-breathe{0%,100%{transform:translateY(2px) rotateY(-13deg) rotateZ(-6deg)}50%{transform:translateY(-7px) rotateY(-9deg) rotateZ(-4deg)}}
@keyframes paper-breathe{0%,100%{transform:translateY(0) rotate(10deg)}50%{transform:translateY(-5px) rotate(12deg)}}
@keyframes card-breathe{0%,100%{transform:translateY(0) rotate(-8deg)}50%{transform:translateY(4px) rotate(-6deg)}}
@media(min-width:700px){.cover{padding:44px 40px 36px}.cover-grid{grid-template-columns:1fr 1fr;align-items:center;column-gap:20px}.cover h1{font-size:4.9rem}.cover-copy{grid-column:1;grid-row:1}.kit-scene{grid-column:2;grid-row:1/3;height:440px;margin:0}.kit-book{width:73%;max-width:280px;left:13%;top:48px}.paper-back{width:70%;height:265px;right:-1%;top:15px}.prayer-card{width:68%;left:-6%;bottom:30px}.cover-actions{grid-column:1;grid-row:2;align-self:start;margin-top:20px}.kit-note{font-size:.78rem!important}.cover-description{font-size:.94rem!important}.scene-caption{bottom:0}.cover>.portrait img{height:auto}.sheet{padding:40px 34px 30px}.photo-close img{max-height:430px}}
@media(max-width:350px){.utility{font-size:.6rem;gap:7px}.utility-actions{gap:8px}.signature{font-size:.68rem;letter-spacing:.14em}.cover{padding-left:20px;padding-right:20px}.cover h1{font-size:3.35rem}.kit-scene{height:324px}.kit-book{top:25px;width:58%;left:22%}.paper-back{height:207px}.prayer-card{width:49%;left:-2%;bottom:27px;padding:17px 14px}.prayer-card>span{font-size:.86rem}.friend-copy .primary{font-size:.68rem}.sheet{padding-left:20px;padding-right:20px}.notice{padding:22px 14px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.js-motion [data-reveal]{opacity:1;translate:none}.kit-book{transform:rotateY(-10deg) rotateZ(-5deg)}}
