@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(../media/cormorant-garamond-latin-400-normal.1fm7t8dmldrtt.woff2)format("woff2"),url(../media/cormorant-garamond-latin-400-normal.38f0-_0_stt74.woff)format("woff")}
@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(../media/cormorant-garamond-latin-400-italic.1zhb_kb4w2oq1.woff2)format("woff2"),url(../media/cormorant-garamond-latin-400-italic.3qhckdzyyfe93.woff)format("woff")}
@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(../media/cormorant-garamond-latin-500-normal.1ua6lqq3rsqyo.woff2)format("woff2"),url(../media/cormorant-garamond-latin-500-normal.410p0bora3wvy.woff)format("woff")}
@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(../media/cormorant-garamond-latin-600-normal.2k7r9iymu8ux8.woff2)format("woff2"),url(../media/cormorant-garamond-latin-600-normal.0ya_yl54k7n41.woff)format("woff")}
@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:300;src:url(../media/inter-latin-300-normal.27_7dh3ayjpp4.woff2)format("woff2"),url(../media/inter-latin-300-normal.3aoj3_jvre448.woff)format("woff")}
@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(../media/inter-latin-400-normal.2qdljeg3s-lsl.woff2)format("woff2"),url(../media/inter-latin-400-normal.102grxki9ek3x.woff)format("woff")}
@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(../media/inter-latin-500-normal.1d14jwmkqqa0f.woff2)format("woff2"),url(../media/inter-latin-500-normal.3mx_ru0c2nzc3.woff)format("woff")}
@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(../media/inter-latin-600-normal.2dov6rjg62vru.woff2)format("woff2"),url(../media/inter-latin-600-normal.2mum3nstrlzrd.woff)format("woff")}
:root{--forest:#0b1d15;--raised:#1a2e26;--inset:#0b261d;--wash:#c5a0590d;--edge:#1f3630;--gold:#c5a059;--gold-soft:#a0864b;--ivory:#f5f5f0;--near:#e9eae5;--label:#c6cac4;--reading:#afb4ae;--body:#979f98;--caption:#808983;--warn:#f0a08c;--paper:#faf7ef;--paper-ink:#2a2824;--paper-muted:#8b8577;--paper-shadow:#dcd6c6;--serif:"Cormorant Garamond", "Iowan Old Style", Palatino, Georgia, serif;--sans:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--ease-out:cubic-bezier(.22, .8, .24, 1);--ease-in-out:cubic-bezier(.6, 0, .3, 1);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;background:var(--forest)}body{background:var(--forest);color:var(--reading);font-family:var(--sans);overscroll-behavior-y:none;-webkit-font-smoothing:antialiased;margin:0;font-size:1.0625rem;font-weight:400;line-height:1.625}main{max-width:34rem;padding:2.75rem 1.5rem calc(3.5rem + env(safe-area-inset-bottom));padding-left:max(1.5rem, env(safe-area-inset-left));padding-right:max(1.5rem, env(safe-area-inset-right));margin:0 auto}h1{font-family:var(--serif);color:var(--ivory);text-wrap:balance;margin:0 0 1.25rem;font-size:clamp(2.3rem,9.5vw,3.1rem);font-weight:500;line-height:1.08}h2{font-family:var(--serif);color:var(--ivory);text-wrap:balance;margin:2.75rem 0 .75rem;font-size:1.7rem;font-weight:500;line-height:1.15}p{margin:0 0 1rem}a{color:var(--gold);text-underline-offset:.2em}strong{color:var(--near);font-weight:500}.eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--gold-soft);margin:0 0 1.5rem;font-size:.75rem;font-weight:500}.eyebrow a{color:inherit;text-decoration:none}.soft{color:var(--body)}.small{font-size:.875rem;line-height:1.55}.error{color:var(--warn);font-size:.95rem}.wordmark{font-family:var(--serif);letter-spacing:.04em;color:var(--ivory);align-items:center;gap:.55rem;font-size:1.15rem;font-weight:500;text-decoration:none;display:inline-flex}.wordmark svg{width:1.5rem;height:1.5rem}label,legend{color:var(--label);margin:1.2rem 0 .4rem;padding:0;font-size:.875rem;font-weight:500;display:block}input[type=email],input[type=text],input[type=password],input[type=date],input[type=time],select,textarea{width:100%;font:inherit;color:var(--ivory);background:var(--inset);border:1px solid var(--edge);appearance:none;transition:border-color .15s var(--ease-in-out);border-radius:.9rem;padding:.8rem .95rem;font-size:1.0625rem}input::placeholder,textarea::placeholder{color:var(--caption)}textarea{resize:vertical;min-height:3.3rem;line-height:1.5}input:focus,select:focus,textarea:focus{border-color:var(--gold);outline:none}button:focus-visible,a:focus-visible,.choice input:focus-visible+span{outline:2px solid var(--gold);outline-offset:3px}.check{color:var(--reading);align-items:flex-start;gap:.75rem;margin:1.2rem 0;font-size:1rem;font-weight:400;display:flex}.check input{width:1.35rem;height:1.35rem;accent-color:var(--gold);flex:none;margin:.12rem 0 0}button,.button{font-family:var(--sans);color:var(--forest);background:var(--gold);cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;min-height:3rem;transition:transform .14s var(--ease-out), opacity .15s var(--ease-in-out), background-color .15s var(--ease-in-out);border:0;border-radius:999px;justify-content:center;align-items:center;gap:.5rem;padding:.8rem 1.75rem;font-size:1.0625rem;font-weight:500;text-decoration:none;display:inline-flex}button:active:not(:disabled){transform:scale(.97)}button:disabled{cursor:default;color:var(--gold-soft);box-shadow:inset 0 0 0 1px var(--gold-soft);opacity:.75;background:0 0}button.quiet{color:var(--near);background:var(--inset);border:1px solid var(--edge)}button.danger{color:var(--warn);border:1px solid var(--warn);background:0 0}button.wide{width:100%}.choices{grid-template-columns:repeat(2,1fr);gap:.6rem;margin:.4rem 0 .2rem;display:grid}.choice{margin:0;position:relative}.choice input{opacity:0;position:absolute;inset:0}.choice span{text-align:center;color:var(--near);border:1px solid var(--edge);background:var(--inset);cursor:pointer;transition:border-color .15s var(--ease-in-out), color .15s var(--ease-in-out);border-radius:.9rem;padding:.85rem .5rem;font-size:1rem;font-weight:500;display:block}.choice input:checked+span{border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold);color:var(--gold)}.notice{border-left:1px solid var(--gold-soft);margin:1.5rem 0;padding:.1rem 0 .1rem 1rem}.card{background:var(--wash);border:1px solid var(--edge);border-radius:1.25rem;margin:0 0 1rem;padding:1.25rem 1.35rem}.gift{max-width:none;padding:0;overflow-x:clip}.stage{z-index:5;padding:2rem 1.5rem calc(2rem + env(safe-area-inset-bottom));background:var(--forest);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1.5rem;display:flex;position:fixed;inset:0}.stage .wordmark{top:max(1.5rem, env(safe-area-inset-top));position:absolute;left:50%;transform:translate(-50%)}.stage h1{margin:0;font-size:clamp(2rem,8.5vw,2.8rem)}.stage .from{color:var(--body);margin:-.75rem 0 0;font-weight:300}.envelope{aspect-ratio:7/5;perspective:900px;width:min(17.5rem,78vw);margin:1.5rem 0 .5rem;position:relative}.envelope .halo{filter:blur(22px);animation:breathe 4.5s var(--ease-in-out) infinite;pointer-events:none;background:radial-gradient(circle,#c5a05957 0%,#c5a05900 62%);position:absolute;inset:-45% -30%}.env-back,.env-front,.env-flap,.env-letter{border-radius:.6rem;position:absolute;inset:0}.env-letter{background:var(--paper);border-radius:.35rem;flex-direction:column;gap:.45rem;padding:12% 12% 0;display:flex;inset:6% 7% 8%;box-shadow:0 0 0 1px #2a282414}.env-letter i{background:#2a282429;border-radius:2px;height:2px;display:block}.env-letter i:nth-child(2){width:82%}.env-letter i:nth-child(3){width:64%}.env-front{clip-path:polygon(0 0,50% 52%,100% 0,100% 100%,0 100%);background:linear-gradient(#efe9dc 0%,#e4dccb 100%);justify-content:center;align-items:flex-end;padding-bottom:11%;display:flex}.env-front span{font-family:var(--serif);color:var(--paper-ink);text-overflow:ellipsis;white-space:nowrap;max-width:80%;font-size:1.35rem;font-style:italic;overflow:hidden}.env-flap{clip-path:polygon(0 0,100% 0,50% 56%);transform-origin:50% 0;backface-visibility:hidden;z-index:2;background:linear-gradient(#e9e2d2 0%,#ddd5c2 100%)}.seal{z-index:3;width:3.5rem;height:3.5rem;color:var(--forest);background:radial-gradient(circle at 35% 30%,#dcbd7c 0%,#c5a059 45%,#94743a 100%);border-radius:50%;place-items:center;margin:-1.75rem 0 0 -1.75rem;display:grid;position:absolute;top:56%;left:50%;box-shadow:inset 0 0 0 2px #ffffff1f,inset 0 -3px 6px #00000040,0 3px 10px #0006}.seal svg{width:1.9rem;height:1.9rem}.motes{z-index:4;pointer-events:none;width:0;height:0;position:absolute;top:56%;left:50%}.motes i{background:var(--gold);opacity:0;border-radius:50%;width:5px;height:5px;margin:-2.5px;position:absolute;box-shadow:0 0 8px #c5a059e6}@keyframes breathe{0%,to{opacity:.65;transform:scale(.96)}50%{opacity:1;transform:scale(1.04)}}.gift[data-state=opening] .motes i{animation:mote .9s var(--ease-out) .18s forwards}.gift[data-state=opening] .stage-copy{animation:fade-out .32s var(--ease-in-out) forwards}.gift[data-state=open] .stage{display:none}@keyframes seal-go{35%{opacity:1;transform:scale(1.14)rotate(-6deg)}to{opacity:0;transform:scale(.5)rotate(14deg)translateY(1.5rem)}}@keyframes mote{0%{opacity:0;transform:rotate(var(--a)) translateX(.5rem) scale(1)}25%{opacity:1}to{opacity:0;transform:rotate(var(--a)) translateX(var(--d)) scale(.3)}}@keyframes flap-up{to{opacity:.25;transform:rotateX(178deg)}}@keyframes letter-up{60%{transform:translateY(-74%)}to{transform:translateY(-80%)scale(1.06)}}@keyframes fade-out{to{opacity:0;visibility:hidden}}.inside{max-width:34rem;padding:2.25rem 1.5rem calc(4rem + env(safe-area-inset-bottom));padding-left:max(1.5rem, env(safe-area-inset-left));padding-right:max(1.5rem, env(safe-area-inset-right));margin:0 auto}.gift[data-state=sealed] .inside,.gift[data-state=opening] .inside{visibility:hidden;height:100dvh;overflow:hidden}.inside>header{text-align:center;flex-direction:column;align-items:center;gap:.9rem;margin-bottom:2.25rem;display:flex}.inside>header .eyebrow{margin:0}.gift section{margin-top:4.5rem}.gift section>h2{margin-top:0;font-size:clamp(1.9rem,7.6vw,2.4rem);line-height:1.1}.gift .lead{color:var(--reading);font-size:1.15rem;font-weight:300;line-height:1.6}.begins{border:1px solid var(--edge);background:var(--wash);font-family:var(--serif);color:var(--ivory);text-align:center;border-radius:1.25rem;margin-top:1.5rem;padding:1rem 1.25rem;font-size:1.4rem;line-height:1.25}.begins strong{color:var(--gold);font-weight:500}.kicker{letter-spacing:.16em;text-transform:uppercase;color:var(--gold-soft);align-items:center;gap:.6rem;margin:0 0 1rem;font-size:.75rem;font-weight:500;display:flex}.kicker:before{content:"";background:var(--gold-soft);width:1.5rem;height:1px}.letter{background:var(--paper);color:var(--paper-ink);box-shadow:4px 4px 0 0 var(--paper-shadow), 0 2rem 4rem #00000073;border-radius:.5rem;padding:1.9rem 1.6rem 1.6rem;position:relative;transform:rotate(-.6deg)}.letter .to{letter-spacing:.16em;text-transform:uppercase;color:var(--paper-muted);margin:0 0 1rem;font-size:.72rem;font-weight:500}.letter blockquote{font-family:var(--serif);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:1.5rem;font-weight:500;line-height:1.35}.letter figcaption{font-family:var(--serif);color:var(--paper-ink);margin-top:1.25rem;font-size:1.25rem;font-style:italic}figure.letter{margin:0}.verse{text-align:center;margin:0;padding:0}.verse blockquote{font-family:var(--serif);color:var(--ivory);text-wrap:balance;margin:0;font-size:clamp(1.45rem,6vw,1.8rem);font-style:italic;line-height:1.35}.verse figcaption{letter-spacing:.16em;text-transform:uppercase;color:var(--gold-soft);margin-top:1rem;font-size:.75rem;font-weight:500}.lantern{background:linear-gradient(#102d23cc 0%,#0000004d 100%);border-radius:1.75rem;padding:1.6rem 1.4rem .6rem;position:relative;overflow:hidden;box-shadow:inset 0 0 0 2px #c5a05940,0 0 40px #c5a05926,0 0 80px #c5a05914}.lantern:before{content:"";opacity:.6;pointer-events:none;background:radial-gradient(circle,#c5a05940 0%,#c5a05900 60%);height:60%;position:absolute;top:-30%;left:20%;right:20%}.lantern .when{text-align:center;letter-spacing:.04em;color:var(--caption);margin:0 0 1.1rem;font-size:.75rem;position:relative}.parts{margin:0;padding:0;list-style:none;position:relative}.parts li{border-top:1px solid #38554b59;grid-template-columns:2.75rem 1fr;align-items:start;gap:.9rem;padding:1rem 0;display:grid}.parts .glyph{width:2.75rem;height:2.75rem;color:var(--gold);background:radial-gradient(circle,#c5a0592e 0%,#c5a05900 70%);border-radius:50%;place-items:center;display:grid}.parts .glyph svg{width:1.6rem;height:1.6rem}.parts h3{font-family:var(--serif);color:var(--near);margin:0 0 .15rem;font-size:1.35rem;font-weight:600;line-height:1.2}.parts p{color:var(--body);margin:0;font-size:.95rem;line-height:1.5}.seasons{background:var(--wash);border:1px solid var(--edge);border-radius:1.25rem;height:9.5rem;margin:1.5rem 0 0;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(#0000,#000 28% 72%,#0000);mask-image:linear-gradient(#0000,#000 28% 72%,#0000)}.seasons ul{margin:0;padding:0;list-style:none;animation:26s linear infinite scroll-up}.seasons li{height:3rem;font-family:var(--serif);color:var(--near);place-items:center;font-size:1.35rem;font-style:italic;display:grid}@keyframes scroll-up{to{transform:translateY(-50%)}}.shelf{border-top:1px solid var(--gold-soft);margin:1.5rem 0 0;padding:0;list-style:none}.shelf li{border-bottom:1px solid var(--edge);justify-content:space-between;align-items:baseline;gap:1rem;padding:.7rem 0;display:flex}.shelf .title{font-family:var(--serif);color:var(--near);font-size:1.2rem;font-weight:500;line-height:1.25}.shelf .by{text-wrap:balance;letter-spacing:.12em;text-transform:uppercase;color:var(--caption);text-align:right;flex:0 46%;font-size:.7rem;font-weight:500}.shelf li.first .title{color:var(--gold)}.promises{gap:.75rem;margin:1.5rem 0 0;padding:0;list-style:none;display:grid}.promises li{background:var(--wash);border:1px solid var(--edge);border-radius:1.25rem;padding:1.1rem 1.25rem}.promises h3{font-family:var(--serif);color:var(--ivory);margin:0 0 .25rem;font-size:1.3rem;font-weight:500;line-height:1.2}.promises p{color:var(--body);margin:0;font-size:.95rem;line-height:1.55}.invitation{background:var(--raised);border:1px solid var(--edge);border-radius:1.25rem;padding:1.75rem 1.4rem 1.5rem}.invitation h2{text-align:center;margin-top:0}.invitation>p{text-align:center}.invitation .reassure{text-align:center;color:var(--caption);margin:1rem 0 0;font-size:.82rem;font-weight:300}.gift footer{border-top:1px solid var(--edge);color:var(--caption);text-align:center;margin-top:3.5rem;padding-top:1.5rem;font-size:.82rem}.reveal{opacity:0;transition:opacity .62s var(--ease-out), transform .62s var(--ease-out);transition-delay:var(--delay,0s);transform:translateY(18px)}.reveal.in{opacity:1;transform:none}.letter.reveal{transform:translateY(26px)rotate(-2.4deg)}.letter.reveal.in{transform:rotate(-.6deg)}.talk{flex-direction:column;max-width:34rem;min-height:100dvh;margin:0 auto;display:flex}.talk-head{z-index:1;background:var(--forest);padding:1rem 1.5rem .6rem;padding-top:max(1rem, env(safe-area-inset-top));letter-spacing:.16em;text-transform:uppercase;color:var(--gold-soft);justify-content:space-between;align-items:center;font-size:.75rem;font-weight:500;display:flex;position:sticky;top:0}.talk-head .wordmark{letter-spacing:.04em;text-transform:none;font-size:1rem}.talk-head .wordmark svg{width:1.25rem;height:1.25rem}.lines{flex-direction:column;flex:1;gap:1.1rem;padding:1.25rem 1.5rem 1.5rem;display:flex}.line{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.line.ask{font-family:var(--serif);color:var(--ivory);text-wrap:pretty;font-size:1.55rem;font-weight:500;line-height:1.25}.line.note{color:var(--reading);font-weight:300}.line.mine{background:var(--raised);border:1px solid var(--edge);max-width:88%;color:var(--near);border-radius:1.2rem 1.2rem .3rem;align-self:flex-end;padding:.75rem 1rem;font-size:1rem;line-height:1.5}.line.enter{animation:rise .42s var(--ease-out) both}.line.ask.enter{animation-delay:.12s}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.waiting{gap:.35rem;padding:.4rem 0;display:inline-flex}.waiting i{background:var(--gold);width:.4rem;height:.4rem;animation:pulse 1.4s var(--ease-in-out) infinite;border-radius:50%}.waiting i:nth-child(2){animation-delay:.16s}.waiting i:nth-child(3){animation-delay:.32s}@keyframes pulse{0%,80%,to{opacity:.2}40%{opacity:1}}.composer{background:linear-gradient(to bottom, #0b1d1500, var(--forest) 1.1rem);padding:1.35rem 1.5rem calc(.9rem + env(safe-area-inset-bottom));position:sticky;bottom:0}.composer form{align-items:flex-end;gap:.6rem;display:flex}.composer textarea{resize:none;background:var(--raised);border-radius:1.5rem;flex:1;max-height:40dvh}.composer button{flex:none}.composer .hint{color:var(--caption);margin:.55rem .25rem 0;font-size:.78rem;font-weight:300}.people-row{grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:.5rem;display:grid}.people-row .wide-cell{grid-column:1/-1;gap:.5rem;display:flex}.people-row button{min-height:2.6rem;padding:.4rem .9rem;font-size:.9rem}.sticky-confirm{border-top:1px solid var(--edge);margin-top:2.75rem;padding-top:1.5rem}.admin{font-size:1rem}.admin.home{padding-top:max(1.5rem, env(safe-area-inset-top))}.admin-top{justify-content:space-between;align-items:center;margin-bottom:2.75rem;display:flex}.textlink,button.textlink{min-height:2.75rem;color:var(--body);box-shadow:none;background:0 0;border:0;padding:0 .25rem;font-size:.875rem;font-weight:400}.admin.home h1{margin-bottom:.6rem}.admin.home .button.wide{justify-content:center;align-items:center;width:100%;min-height:3.5rem;margin-top:1.5rem;font-size:1.125rem;text-decoration:none;display:flex;box-shadow:0 0 2.5rem #c5a05938}.counts{border-top:1px solid var(--edge);border-bottom:1px solid var(--edge);grid-template-columns:repeat(4,1fr);margin:2.5rem 0 .75rem;display:grid}.counts div{padding:1rem 0 .9rem}.counts div+div{border-left:1px solid var(--edge);padding-left:.7rem}.counts dt{letter-spacing:.1em;text-transform:uppercase;color:var(--caption);font-size:.62rem;font-weight:500}.counts dd{font-family:var(--serif);color:var(--ivory);font-variant-numeric:lining-nums tabular-nums;margin:.2rem 0 0;font-size:2.1rem;line-height:1}.card.call{border-color:var(--warn);margin-top:2rem}.gifts{border-top:1px solid var(--edge);margin:0 0 2rem;padding:0;list-style:none}.gifts li{border-bottom:1px solid var(--edge);padding:1rem 0 .85rem}.gift-row{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.gift-name{font-family:var(--serif);color:var(--ivory);margin:0;font-size:1.5rem;line-height:1.15}.gift-name a{color:inherit;-webkit-text-decoration-color:var(--gold-soft);text-decoration-color:var(--gold-soft);text-underline-offset:.2em}.gift-sub{color:var(--body);margin:.2rem 0 0;font-size:.875rem}.more{margin-top:.5rem}.more summary{min-height:2.75rem;color:var(--body);cursor:pointer;text-decoration:underline;-webkit-text-decoration-color:var(--edge);text-decoration-color:var(--edge);text-underline-offset:.25em;align-items:center;font-size:.875rem;list-style:none;display:inline-flex}.more summary::-webkit-details-marker{display:none}.more[open]>:not(summary){animation:arrive .36s var(--ease-out) both}.more p{margin:0 0 .75rem}.install{border-top:1px solid var(--edge);margin-top:1.5rem;padding-top:1.25rem}.admin .row{flex-wrap:wrap;align-items:flex-end;gap:.75rem;display:flex}.admin .row>div{flex:10rem}.give{align-content:start;min-height:calc(100dvh - 7rem);display:grid}.give-top{margin-top:calc(-1.25rem + env(safe-area-inset-top));justify-content:space-between;align-items:center;display:flex}.give-top a{min-height:2.75rem;color:var(--body);align-items:center;font-size:.875rem;text-decoration:none;display:inline-flex}.dots{gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.dots li{background:var(--edge);width:1.5rem;height:2px;transition:background-color .4s var(--ease-out);border-radius:2px}.dots li[data-on]{background:var(--gold)}.give-envelope{place-items:center;padding:1.75rem 0 2rem;display:grid}.give-envelope .envelope{width:min(13.5rem,58vw);animation:settle .9s var(--ease-out) both;margin:0}.give-envelope .seal{width:2.9rem;height:2.9rem;margin:-1.45rem 0 0 -1.45rem}.give-envelope .seal svg{width:1.6rem;height:1.6rem}.give-envelope .env-front span{font-size:1.15rem}.step:not([hidden]){animation:arrive .52s var(--ease-out) both}.give h1{margin-bottom:1rem;font-size:clamp(2rem,8.5vw,2.6rem)}.give fieldset{border:0;margin:1.5rem 0 0;padding:0}.give fieldset.when{margin-top:0}.starters{gap:.5rem;margin-top:1.25rem;display:grid}.starters p{margin:0 0 .15rem}.starters button{min-height:0;font-family:var(--serif);text-align:left;color:var(--near);background:var(--inset);border:1px solid var(--edge);box-shadow:none;border-radius:.9rem;padding:.85rem 1rem;font-size:1.1rem;font-weight:400;line-height:1.35}figure.give-letter{margin:.5rem 0 1.25rem;transform:rotate(-.6deg)}.give-facts{font-family:var(--serif);color:var(--ivory);margin:0 0 .4rem;font-size:1.3rem;line-height:1.3}.give-nav{padding:.9rem 0 calc(.9rem + env(safe-area-inset-bottom));background:linear-gradient(180deg, #0b1d1500 0%, var(--forest) 32%);justify-content:space-between;align-items:center;gap:.75rem;margin-top:2rem;display:flex;position:sticky;bottom:0}.give-nav button{min-width:7.5rem}.give.done{gap:.75rem;min-height:0}.give.done h1,.give.done>p{margin:0}.give.done label{margin-top:1rem}.told{min-height:1.4rem;color:var(--gold);text-align:center;margin:0;font-size:.875rem}.give-after{flex-wrap:wrap;gap:.5rem 1.5rem;margin:.75rem 0 0;font-size:.95rem;display:flex}.give-after a{align-items:center;min-height:2.75rem;display:inline-flex}.tag{background:var(--raised);color:var(--label);white-space:nowrap;border-radius:999px;padding:.1rem .55rem;font-size:.72rem;font-weight:500;display:inline-block}.tag.on{color:var(--gold);background:#c5a05929}.tag.off{color:var(--caption)}.tag.alert{background:var(--warn);color:var(--forest)}.linkbox{color:var(--near);word-break:break-all;background:var(--inset);border:1px solid var(--edge);-webkit-user-select:all;user-select:all;border-radius:.9rem;padding:.75rem .9rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem}@media (hover:hover){button:hover:not(:disabled),.button:hover{opacity:.9}.choice span:hover{border-color:var(--gold-soft)}}main>ul:not([class]){margin:0 0 1rem;padding-left:1.2rem}main>ul:not([class]) li{margin-bottom:.3rem}main>ul:not([class]) li::marker{color:var(--gold-soft)}::selection{background:var(--gold);color:var(--forest)}html{scrollbar-color:var(--edge) var(--forest);scroll-behavior:smooth}input,textarea{caret-color:var(--gold)}.land{--gutter:clamp(1.5rem, 5vw, 4rem);max-width:72rem;padding:0 var(--gutter);margin:0 auto;overflow-x:clip}.land-top{padding:max(1.5rem, env(safe-area-inset-top)) 0 0;justify-content:space-between;align-items:center;display:flex}.land-top a:last-child{color:var(--gold);border:1px solid var(--edge);transition:border-color .15s var(--ease-in-out);border-radius:999px;padding:.45rem 1rem;font-size:.875rem;font-weight:500;text-decoration:none}.land h2{margin:0 0 1.25rem;font-size:clamp(2rem,5.2vw,3rem);line-height:1.08}.land section{padding:clamp(4.5rem,11vw,8rem) 0 0}.land .hero{align-items:center;gap:2.5rem;padding-top:clamp(2rem,6vw,4.5rem);display:grid}.hero h1{letter-spacing:-.01em;margin-bottom:1.25rem;font-size:clamp(2.6rem,8.4vw,4.5rem);line-height:1.02}.hero .lead{color:var(--reading);max-width:34rem;margin-bottom:1.75rem;font-size:clamp(1.1rem,2.4vw,1.25rem);font-weight:300;line-height:1.6}.hero-object{order:-1;place-items:center;padding:1.5rem 0 .5rem;display:grid}.hero-object .envelope{width:min(19rem,72vw);margin:0}.address{animation:write .52s var(--ease-out) both;display:inline-block}@keyframes write{0%{opacity:0;filter:blur(4px);transform:translateY(3px)}to{opacity:1;filter:none;transform:none}}.envelope.settle{animation:settle 1.1s var(--ease-out) both}.seal.press{animation:press .9s var(--ease-out) .62s both}@keyframes settle{0%{opacity:0;filter:blur(6px);transform:translateY(22px)rotate(-3deg)scale(.96)}to{opacity:1;filter:none;transform:none}}@keyframes press{0%{opacity:0;filter:blur(3px);transform:scale(1.5)}55%{opacity:1;filter:none;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@media (min-width:56rem){.land .hero{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:4rem;min-height:min(46rem,100dvh - 6rem)}.hero-object{order:0;padding:0}.hero-object .envelope{width:min(26rem,100%)}.hero-object .seal{width:4.75rem;height:4.75rem;margin:-2.375rem 0 0 -2.375rem}.hero-object .seal svg{width:2.6rem;height:2.6rem}.hero-object .env-front span{font-size:1.9rem}}.place{background:var(--raised);border:1px solid var(--edge);border-radius:1.25rem;max-width:30rem;padding:1.25rem 1.25rem 1.1rem}.place-fields{gap:.75rem;display:grid}.place label,.place legend{margin-top:0}.place fieldset{border:0;margin:1rem 0 1.1rem;padding:0}.want{grid-template-columns:repeat(3,1fr);gap:.5rem;display:grid}.want .choice span{padding:.7rem .25rem;font-size:.95rem}.trap{width:1px;height:1px;position:absolute;left:-200vw;overflow:hidden}.place .reassure,.saved p:last-child{color:var(--caption);text-align:center;margin:.85rem 0 0;font-size:.82rem;font-weight:300}.saved{background:var(--raised);border:1px solid var(--gold-soft);text-align:center;border-radius:1.25rem;max-width:30rem;padding:1.5rem 1.25rem}.saved-line{font-family:var(--serif);color:var(--ivory);margin:0;font-size:1.6rem;line-height:1.2}@media (min-width:30rem){.place-fields{grid-template-columns:.8fr 1.2fr}}.passage>*,.how>h2,.proof>h2,.proof-note,.price>*{max-width:38rem}.passage p,.how p{color:var(--reading);font-size:clamp(1.08rem,2.1vw,1.2rem);line-height:1.65}.passage .turn{font-family:var(--serif);color:var(--ivory);margin-top:1.75rem;font-size:clamp(1.7rem,4.4vw,2.3rem);line-height:1.15}@media (min-width:60rem){.passage,.price{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;column-gap:clamp(2.5rem,6vw,5rem);display:grid}.passage>h2,.price>h2{grid-area:1/1/span 12;max-width:15ch;margin:0}.passage>:not(h2),.price>:not(h2){grid-column:2}.passage>h2+*,.price>h2+*{margin-top:.55rem}}.plain{border-top:1px solid var(--edge);margin:1.5rem 0;padding:0;list-style:none}.plain li{border-bottom:1px solid var(--edge);color:var(--near);padding:.95rem 0;line-height:1.5}.steps{gap:2.25rem;margin:2.5rem 0 0;padding:0;list-style:none;display:grid}.steps li{border-top:1px solid var(--gold-soft);padding-top:1.25rem}.steps h3{font-family:var(--serif);color:var(--ivory);margin:0 0 .6rem;font-size:1.6rem;font-weight:500;line-height:1.15}.steps p{margin:0;font-size:1.02rem}@media (min-width:56rem){.steps{grid-template-columns:repeat(3,1fr);gap:3rem}}.proof-note{color:var(--body);font-size:.98rem}.rise.armed{opacity:0;clip-path:inset(0 0 22%);transition:opacity .9s var(--ease-out), transform .9s var(--ease-out), clip-path 1.1s var(--ease-out);transform:translateY(40px)}.rise.armed.in{opacity:1;clip-path:inset(0);transform:none}.letter.sample{max-width:40rem;font-family:var(--serif);margin:2.5rem auto 0;padding:clamp(1.6rem,5vw,3.25rem);font-size:1.22rem;line-height:1.5;transform:none;box-shadow:inset 0 1px #ffffff80,0 2.5rem 5rem #00000080,0 .4rem 1rem #00000040}.letter.sample ::selection{background:var(--paper-ink);color:var(--paper)}.letter.sample .anchor{margin:0;font-size:1.5rem;font-style:italic;line-height:1.25}.letter.sample h3{font-family:var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--paper-muted);border-top:1px solid var(--paper-shadow);margin:2.25rem 0 .9rem;padding-top:1.1rem;font-size:.74rem;font-weight:600}.letter.sample p{margin:0 0 .9rem}.letter.sample b{font-weight:600}.scripture{margin:0 0 1.1rem}.scripture p{font-size:1.42rem;font-style:italic;line-height:1.35}.scripture cite{font-family:var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--paper-muted);font-size:.74rem;font-style:normal;font-weight:500}.letter.sample .becoming{font-size:1.3rem;font-style:italic;line-height:1.35}.letter.sample .part-title{margin-bottom:.5rem;font-size:1.4rem;font-weight:600;line-height:1.2}.letter.sample .source{font-family:var(--sans);color:var(--paper-muted);font-size:.8rem}.checkin{border:1px solid var(--paper-shadow);border-radius:.75rem;margin:1.5rem 0 0;padding:1rem 1.1rem}.checkin p{margin:0 0 .75rem}.checkin-taps{gap:.5rem;display:flex}.checkin-taps span{font-family:var(--sans);border:1px solid var(--paper-ink);border-radius:999px;padding:.4rem .95rem;font-size:.85rem;font-weight:500}.checkin-taps span:first-child{background:var(--paper-ink);color:var(--paper)}.letter.sample footer{border-top:1px solid var(--paper-shadow);font-family:var(--sans);color:var(--paper-muted);margin-top:2rem;padding-top:1.1rem;font-size:.82rem}.price h2{font-size:clamp(2.2rem,6vw,3.4rem)}.price .amount{color:var(--gold)}.price-now{font-family:var(--serif);color:var(--near);font-size:clamp(1.4rem,3.4vw,1.8rem)}.from .signed{font-family:var(--serif);color:var(--ivory);margin-top:1.5rem;font-size:1.8rem;font-style:italic}.land .close{text-align:center;justify-items:center;padding-bottom:1rem;display:grid}.close h2{max-width:18ch}.close .place,.close .saved{text-align:left;width:100%}.land-foot{padding:2rem 0 calc(2.5rem + env(safe-area-inset-bottom));border-top:1px solid var(--edge);text-align:center;color:var(--caption);justify-items:center;gap:.4rem;margin-top:clamp(4.5rem,10vw,7rem);font-size:.82rem;display:grid}.land-foot p{margin:0}@media (hover:hover){.land-top a:last-child:hover{border-color:var(--gold-soft)}}html.intro-on{--after-intro:1.9s}.intro{z-index:100;background:var(--forest);animation:intro-out .7s var(--ease-in-out) 2.05s both;place-items:center;display:grid;position:fixed;inset:0}html.seen .intro{display:none}.intro.gone{animation:intro-out .32s var(--ease-in-out) both}.intro:before{content:"";aspect-ratio:1;filter:blur(26px);width:min(34rem,130vw);animation:intro-glow 1.5s var(--ease-out) .35s both;background:radial-gradient(circle,#c5a0594d 0%,#c5a05900 60%);position:absolute;top:50%;left:50%;translate:-50% -58%}.intro-in{animation:intro-lift .7s var(--ease-in-out) 2.05s both;justify-items:center;display:grid;position:relative}.intro-mark{width:5.5rem;height:5.5rem;color:var(--gold);overflow:visible}.i-stone{transform-box:fill-box;transform-origin:50%;animation:intro-stone .62s var(--ease-out) .12s both}.i-sun{animation:intro-sun .95s var(--ease-out) .42s both}.i-ray{stroke-dasharray:7;stroke-dashoffset:7px;opacity:0;animation:intro-ray .42s var(--ease-out) both;animation-delay:calc(1.05s + var(--i) * 70ms)}.intro-word{font-family:var(--serif);letter-spacing:.05em;color:var(--ivory);animation:intro-word .76s var(--ease-out) 1.15s both;margin:1.1rem 0 0;font-size:2.3rem;font-weight:500;line-height:1}.intro-line{letter-spacing:.26em;text-transform:uppercase;color:var(--gold-soft);animation:intro-word .7s var(--ease-out) 1.45s both;margin:.85rem 0 0;font-size:.7rem;font-weight:500}@keyframes intro-stone{0%{opacity:0;transform:scaleX(.2)}to{opacity:1;transform:none}}@keyframes intro-sun{0%{transform:translateY(10px)}to{transform:none}}@keyframes intro-ray{to{stroke-dashoffset:0;opacity:1}}@keyframes intro-glow{0%{opacity:0;scale:.55}to{opacity:1;scale:1}}@keyframes intro-word{0%{opacity:0;filter:blur(5px);transform:translateY(10px)}to{opacity:1;filter:none;transform:none}}@keyframes intro-lift{to{transform:translateY(-14px)scale(1.03)}}@keyframes intro-out{to{opacity:0;visibility:hidden}}.envelope.settle{animation-delay:var(--after-intro,0s)}.seal.press{animation-delay:calc(var(--after-intro,0s) + .62s)}.arrive>*{animation:arrive .8s var(--ease-out) both;animation-delay:calc(var(--after-intro,0s) + var(--n,0) * .11s)}.arrive>:nth-child(2){--n:1}.arrive>:nth-child(3){--n:2}.arrive>:nth-child(4){--n:3}.arrive>:nth-child(n+5){--n:4}@keyframes arrive{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.armed [data-come]{opacity:0;transition:opacity .76s var(--ease-out), transform .76s var(--ease-out);transition-delay:var(--delay,0s);transform:translateY(22px)}.armed [data-come].in{opacity:1;transform:none}.letter.sample.excerpt{margin-top:1.5rem;padding:1.6rem 1.5rem 1.4rem;font-size:1.15rem}.letter.sample.excerpt.reveal.in{transform:none}.letter.sample.excerpt h3{border-top:0;margin-top:0;padding-top:0}.lantern .when.last{border-top:1px solid var(--edge);margin:1.25rem 0 0;padding-top:1.1rem}.invitation .button.wide{justify-content:center;align-items:center;text-decoration:none;display:flex}a.textlink,a.button{justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.want.two{grid-template-columns:repeat(2,1fr)}.place .check{margin:1rem 0;font-size:.9rem;line-height:1.45}a.button.wide{width:100%;display:flex}.maker .signed{font-family:var(--serif);color:var(--ivory);margin-top:1.25rem;font-size:1.8rem;font-style:italic}.letter.sample.in-gift{margin-top:1.5rem;padding:1.6rem 1.4rem 1.4rem;font-size:1.15rem}:root{--grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .35  0 0 0 0 .28  0 0 0 0 .18  0 0 0 .15 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.letter{background-image:var(--grain), linear-gradient(180deg, #fcf9f1 0%, #f7f2e6 100%);background-blend-mode:multiply, normal;box-shadow:0 1px 0 #ffffffb3 inset, 0 0 0 1px #78643c14, 4px 4px 0 0 var(--paper-shadow), 0 2.2rem 4.5rem #00000080, 0 .3rem .9rem #00000040}.env-front{background-image:var(--grain), linear-gradient(180deg, #f1ebde 0%, #e2d9c6 100%);background-blend-mode:multiply, normal}.env-flap{background-image:var(--grain), linear-gradient(180deg, #ece5d5 0%, #dcd3bf 100%);background-blend-mode:multiply, normal}.envelope{filter:drop-shadow(0 .15rem .2rem #281c0a2e)}.env-back{background:repeating-linear-gradient(135deg,#c5a05942 0 1px,#0000 1px .55rem),repeating-linear-gradient(45deg,#c5a05924 0 1px,#0000 1px .55rem),linear-gradient(#15392c 0%,#0e2a20 100%);box-shadow:0 0 0 1px #c5a05966,inset 0 0 0 .3rem #e6decd,0 1.75rem 3.5rem #00000080}.env-letter{background-image:var(--grain), linear-gradient(180deg, #fdfaf3, #f6f1e4);background-blend-mode:multiply, normal}.env-front span{letter-spacing:.01em;text-shadow:0 1px #fff9}.seal{background:radial-gradient(circle at 34% 28%,#fff4d6bf 0%,#fff4d600 30%),radial-gradient(circle,#c9a55e 0%,#b8924b 52%,#8e6d33 100%);border-radius:47% 53% 51% 49%/52% 48% 53% 47%;box-shadow:inset 0 0 0 .16rem #6e501e61,inset 0 0 0 .3rem #ffecbe33,inset 0 -.2rem .4rem #3c280a59,0 .2rem .5rem #00000073,0 0 1.6rem #c5a05959}.seal svg{filter:drop-shadow(0 1px #ffecbe73)}@keyframes rest{0%,to{transform:translateY(0)rotate(-.4deg)}50%{transform:translateY(-.4rem)rotate(.4deg)}}.gift[data-state=sealed] .stage>.stage-copy{animation:arrive .9s var(--ease-out) both;animation-delay:calc(var(--after-intro,0s) + .15s)}.gift[data-state=sealed] .stage>.stage-copy:last-child{animation-delay:calc(var(--after-intro,0s) + .65s)}.gift[data-state=sealed] .stage>.envelope{animation:settle 1.2s var(--ease-out) calc(var(--after-intro,0s) + .3s) both, rest 7s var(--ease-in-out) calc(var(--after-intro,0s) + 1.5s) infinite}.drift{pointer-events:none;position:absolute;inset:0;overflow:hidden}.drift i{left:var(--x);width:calc(3px * var(--s));height:calc(3px * var(--s));background:var(--gold);opacity:0;animation:drift var(--t) linear var(--w) infinite;border-radius:50%;position:absolute;bottom:-2%;box-shadow:0 0 .6rem #c5a059cc}@keyframes drift{0%{opacity:0;transform:translate(0)}12%{opacity:.55}80%{opacity:.3}to{opacity:0;transform:translate(1.2rem,-92vh)}}.gift[data-state=opening] .drift{animation:fade-out .5s var(--ease-in-out) forwards}.ring{opacity:0;pointer-events:none;z-index:3;border:1px solid #c5a059e6;border-radius:50%;width:3.5rem;height:3.5rem;margin:-1.75rem 0 0 -1.75rem;position:absolute;top:56%;left:50%;box-shadow:0 0 1.2rem #c5a05980}.gift[data-state=opening] .ring{animation:ring 1.1s var(--ease-out) .12s forwards}@keyframes ring{0%{opacity:.9;transform:scale(.6)}to{opacity:0;transform:scale(4.2)}}.gift[data-state=opening] .halo{animation:halo-up 1.4s var(--ease-out) forwards}@keyframes halo-up{to{opacity:1;transform:scale(1.35)}}.gift[data-state=opening] .seal{animation:seal-go .64s var(--ease-in-out) forwards}.gift[data-state=opening] .env-flap{animation:flap-up .76s var(--ease-in-out) .38s forwards}.gift[data-state=opening] .env-letter{animation:letter-up .98s var(--ease-out) .82s forwards}.gift[data-state=opening] .stage{animation:fade-out .52s var(--ease-in-out) 1.6s forwards}.letter.note{transform-origin:50% 0}.letter.note.reveal{transition:opacity .9s var(--ease-out), transform 1.3s var(--ease-out);transform:perspective(60rem)rotateX(-16deg)translateY(2rem)rotate(-1.6deg)}.letter.note.reveal.in{transform:rotate(-.6deg)}.letter.note:before{content:"";pointer-events:none;background:linear-gradient(#5a461e00 0%,#5a461e12 46%,#ffffffa6 54%,#fff0 100%);height:.6rem;margin-top:-.3rem;position:absolute;top:50%;left:0;right:0}.ink{opacity:0}.letter.note.in .ink{animation:ink .7s var(--ease-out) var(--d) both}@keyframes ink{0%{opacity:0;filter:blur(3px);transform:translateY(.18em)}to{opacity:1;filter:none;transform:none}}.ink{display:inline-block}.letter.note figcaption{opacity:0;padding-bottom:.45rem;font-size:1.45rem;display:inline-block;position:relative}.letter.note.in figcaption{animation:ink .9s var(--ease-out) var(--sig) both}.letter.note figcaption:after{content:"";background:linear-gradient(90deg, var(--gold), #c5a05900);transform-origin:0;width:100%;min-width:3.5rem;height:1px;position:absolute;bottom:0;left:0;transform:scaleX(0)}.letter.note.in figcaption:after{animation:draw .9s var(--ease-out) calc(var(--sig) + .35s) both}@keyframes draw{to{transform:scaleX(1)}}.letter-seal{width:2.7rem;height:2.7rem;color:var(--forest);opacity:0;background:radial-gradient(circle at 34% 28%,#fff4d6bf 0%,#fff4d600 30%),radial-gradient(circle,#c9a55e 0%,#b8924b 52%,#8e6d33 100%);border-radius:47% 53% 51% 49%/52% 48% 53% 47%;place-items:center;display:grid;position:absolute;top:-1.15rem;right:1.25rem;transform:rotate(9deg);box-shadow:inset 0 0 0 .12rem #6e501e61,inset 0 -.15rem .3rem #3c280a59,0 .2rem .5rem #00000059}.letter-seal svg{width:1.45rem;height:1.45rem}.letter.note.in .letter-seal{animation:stamp .8s var(--ease-out) .9s both}@keyframes stamp{0%{opacity:0;filter:blur(3px);transform:rotate(9deg)scale(1.5)}55%{opacity:1;filter:none;transform:rotate(9deg)scale(.94)}to{opacity:1;transform:rotate(9deg)scale(1)}}.gift section>h2{padding-bottom:.9rem;position:relative}.gift section>h2:after{content:"";background:var(--gold);transform-origin:0;width:2.75rem;height:1px;transition:transform .9s var(--ease-out) .35s;position:absolute;bottom:0;left:0;transform:scaleX(0)}.gift section>h2.in:after{transform:scaleX(1)}.invitation{position:relative;box-shadow:0 0 0 1px #c5a05947,0 0 4rem #c5a0591a,0 1.5rem 3rem #00000059}.how-card{background:linear-gradient(#1a2e26e6,#11241ce6);border-radius:1.25rem;gap:1.4rem;margin:1.75rem 0 0;padding:1.5rem 1.35rem 1.35rem;list-style:none;display:grid;box-shadow:0 0 0 1px #c5a05938,0 0 3.5rem #c5a05912,0 1.25rem 2.5rem #0000004d}.how-card li{grid-template-columns:2.4rem 1fr;align-items:start;gap:.9rem;display:grid;position:relative}.how-card li+li:before{content:"";background:linear-gradient(#c5a0598c,#c5a05926);width:1px;height:1.4rem;position:absolute;top:-1.4rem;left:1.2rem}.how-card .num{width:2.4rem;height:2.4rem;font-family:var(--serif);color:var(--gold);font-variant-numeric:lining-nums;border:1px solid #c5a0598c;border-radius:50%;place-items:center;font-size:1.25rem;line-height:1;display:grid}.how-card h3{font-family:var(--serif);color:var(--ivory);margin:.25rem 0 .2rem;font-size:1.4rem;font-weight:500;line-height:1.15}.how-card p{color:var(--reading);margin:0;font-size:.98rem;line-height:1.5}.how-card.reveal li{opacity:0;transition:opacity .7s var(--ease-out), transform .7s var(--ease-out);transform:translateY(.6rem)}.how-card.reveal.in li{opacity:1;transform:none}.how-card.reveal.in li:first-child{transition-delay:.2s}.how-card.reveal.in li:nth-child(2){transition-delay:.48s}.how-card.reveal.in li:nth-child(3){transition-delay:.76s}.counts.two{grid-template-columns:repeat(2,1fr)}.inside{position:relative}.gift[data-state=open]:before,.gift[data-state=open]:after{content:"";z-index:0;pointer-events:none;filter:blur(60px);border-radius:50%;position:fixed}.gift[data-state=open]:before{width:26rem;height:26rem;animation:glow-a 16s var(--ease-in-out) infinite;background:radial-gradient(circle,#c5a05933 0%,#c5a05900 65%);top:12%;left:-30%}.gift[data-state=open]:after{width:28rem;height:28rem;animation:glow-a 19s var(--ease-in-out) -6s infinite reverse;background:radial-gradient(circle,#408c6c3d 0%,#408c6c00 65%);bottom:6%;right:-35%}@keyframes glow-a{0%,to{opacity:.8;transform:translate(0)}50%{opacity:1;transform:translate(1.5rem,-1.5rem)}}.inside>*{z-index:1;position:relative}.how-card,.promises li,.gift .invitation,.gift .begins{-webkit-backdrop-filter:blur(18px)saturate(130%);backdrop-filter:blur(18px)saturate(130%);background:linear-gradient(#fff1,#ffffff06);border:1px solid #ffffff17;box-shadow:inset 0 1px #ffffff1f,0 0 0 1px #c5a0591a,0 1.25rem 2.5rem #00000047}.gift .invitation{box-shadow:inset 0 1px #ffffff24,0 0 0 1px #c5a05947,0 0 4rem #c5a0591a,0 1.5rem 3rem #00000059}.letter.note:before{background:linear-gradient(#5a461e00 0%,#5a461e08 46%,#ffffff4d 54%,#fff0 100%)}.lantern:before{opacity:.7;background:radial-gradient(closest-side,#c5a05938 0%,#c5a05900 100%);height:70%;top:-35%;left:5%;right:5%}.lantern{-webkit-backdrop-filter:blur(18px)saturate(130%);backdrop-filter:blur(18px)saturate(130%);background:linear-gradient(#ffffff0f,#ffffff05);box-shadow:inset 0 1px #ffffff1f,0 0 0 1px #c5a0593d,0 0 3.5rem #c5a05917,0 1.25rem 2.5rem #00000047}.how-card{gap:0;padding:1.6rem 1.35rem 1.5rem}.how-card li{grid-template-columns:2.5rem 1fr;gap:1rem;padding-bottom:1.6rem}.how-card li:last-child{padding-bottom:0}.how-card li+li:before{content:none}.how-card li:not(:last-child):after{content:"";transform-origin:50% 0;background:linear-gradient(#c5a05999,#c5a05940);width:1px;position:absolute;top:2.5rem;bottom:0;left:1.25rem}.how-card .num{background:#c5a0591a;border-color:#c5a059b3;width:2.5rem;height:2.5rem;font-size:1.3rem;box-shadow:0 0 1.1rem #c5a0592e}.how-card .when{letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin:.1rem 0 .15rem;font-size:.68rem;font-weight:600}.how-card h3{margin:0 0 .3rem;font-size:1.5rem}.how-card p:not(.when){color:var(--reading);text-wrap:pretty;font-size:.98rem;line-height:1.5}.how-card .num svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:1.2rem;height:1.2rem}.keep-line{text-align:center;font-family:var(--serif);color:var(--near);text-wrap:balance;margin:1.1rem 0 0;font-size:1.2rem;font-style:italic;line-height:1.4}.how-card.reveal li:not(:last-child):after{transition:transform .7s var(--ease-out);transform:scaleY(0)}.how-card.reveal.in li:first-child:after{transition-delay:.52s;transform:scaleY(1)}.how-card.reveal.in li:nth-child(2):after{transition-delay:.8s;transform:scaleY(1)}.gift .seasons{margin-top:1.5rem}.talk-head{background:linear-gradient(180deg, var(--forest) 70%, #0b1d1500);flex-wrap:wrap;padding-bottom:1rem}.talk-bar{background:var(--edge);border-radius:2px;flex:0 0 100%;height:2px;margin-top:.7rem;overflow:hidden}.talk-bar i{background:linear-gradient(90deg, var(--gold-soft), var(--gold));transform-origin:0;height:100%;transition:transform .9s var(--ease-out);display:block}.line.past{opacity:.42;transition:opacity .6s var(--ease-out)}.line.ask{font-size:1.7rem;line-height:1.22}.line.ask.past{font-size:1.2rem}.line.mine{background:linear-gradient(#ffffff12,#ffffff08);border-color:#ffffff17}.composer{background:linear-gradient(to bottom, #0b1d1500, var(--forest) 1.4rem);padding-top:1.6rem}.composer form{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:box-shadow .25s var(--ease-out);background:linear-gradient(#ffffff14,#ffffff08);border-radius:1.6rem;align-items:stretch;gap:.5rem;padding:.4rem;box-shadow:inset 0 1px #ffffff1f,0 0 0 1px #c5a05938,0 1rem 2rem #0000004d}.composer form:focus-within{box-shadow:inset 0 1px #ffffff24,0 0 0 1px #c5a05999,0 0 2.5rem #c5a05924,0 1rem 2rem #0000004d}.composer textarea{min-height:3.6rem;box-shadow:none;background:0 0;border:0;border-radius:1.2rem;padding:.7rem .9rem;font-size:1.0625rem;line-height:1.45}.composer textarea:focus{box-shadow:none;outline:none}.composer button{border-radius:1.25rem;align-self:flex-end;min-height:2.9rem;padding:0 1.3rem}.composer .hint{text-align:center}.review .part{background:linear-gradient(#ffffff0f,#ffffff06);border:1px solid #ffffff14;border-radius:1.25rem;margin-top:.85rem;padding:1.15rem 1.2rem 1.2rem;box-shadow:inset 0 1px #ffffff1a,0 1rem 2rem #00000038}.review form>.part:first-child{margin-top:1.75rem}.part-head{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.4rem;display:flex}.review .part h2{margin:0;font-size:1.45rem}.part-head .textlink{min-height:2.75rem;color:var(--gold);padding:0 .2rem;font-size:.9rem;font-weight:500}.part-read{gap:.85rem;margin:0;display:grid}.part-read dt{letter-spacing:.14em;text-transform:uppercase;color:var(--caption);font-size:.68rem;font-weight:600}.part-read dd{font-family:var(--serif);color:var(--near);white-space:pre-wrap;overflow-wrap:anywhere;margin:.15rem 0 0;font-size:1.22rem;line-height:1.35}.part-edit{animation:arrive .38s var(--ease-out) both}.review .part.last{border-color:#c5a0594d;margin-top:1.5rem}.review .part.last h2{margin-bottom:.9rem}.two-up{grid-template-columns:1fr 1fr;gap:.75rem;margin-top:.5rem;display:grid}.two-up>div{min-width:0}.two-up select,.two-up input{width:100%}.review .sticky-confirm{border-top:0;margin-top:1.5rem;padding-top:.5rem}.starters-row{scrollbar-width:none;-webkit-overflow-scrolling:touch;animation:arrive .5s var(--ease-out) both;gap:.45rem;margin:0 0 .6rem;padding:0 .1rem .15rem;display:flex;overflow-x:auto}.composer .nudge{color:var(--reading);text-wrap:pretty;animation:arrive .5s var(--ease-out) both;margin:0 .15rem .55rem;font-size:.86rem;line-height:1.4}.starters-row::-webkit-scrollbar{display:none}.composer .starters-row button{min-height:2.4rem;font-family:var(--serif);color:var(--near);box-shadow:none;white-space:nowrap;background:linear-gradient(#ffffff14,#ffffff08);border:1px solid #c5a0594d;border-radius:999px;flex:none;padding:0 .95rem;font-size:1.05rem;font-style:italic;font-weight:400}.composer .hint .skip{min-height:0;box-shadow:none;font:inherit;color:var(--gold);text-underline-offset:.2em;background:0 0;border:0;border-radius:0;padding:0;text-decoration:underline}.talk-head{background:var(--forest)}.talk-head:after{content:"";background:linear-gradient(180deg, var(--forest), #0b1d1500);pointer-events:none;height:1.1rem;position:absolute;top:100%;left:0;right:0}.goal-row{grid-template-columns:6.5rem 1fr;gap:.5rem;margin-bottom:.6rem;display:grid}.goal-row button{grid-column:1/-1;justify-self:start;min-height:2.4rem;padding:.3rem .9rem;font-size:.9rem}.talk-head span b{color:var(--ivory);margin-right:.6rem;font-weight:500}.give.one{min-height:0;display:block}.give.one .give-top{justify-content:flex-end}.give.one .give-envelope{padding:1.25rem 0 1.5rem}.give.one.inline{margin-top:.5rem}.give.one.inline .give-envelope{padding-top:.5rem}.give.one textarea{min-height:5.5rem}.give.one .starters{margin-top:.75rem}.give.one .more,.give.one .more fieldset{margin-top:1rem}.give.one>button.wide{min-height:3.5rem;margin-top:1.5rem;font-size:1.125rem;box-shadow:0 0 2.5rem #c5a05938}.admin.home .counts{margin-top:3rem}.give.one .more.starts,.give.one .more.starts .starters{margin-top:.25rem}.give.done .way{animation:arrive .6s var(--ease-out) both;background:linear-gradient(#ffffff0f,#ffffff06);border:1px solid #ffffff17;border-radius:1.25rem;margin-top:.5rem;padding:1.2rem 1.2rem 1.25rem;box-shadow:inset 0 1px #ffffff1a,0 0 0 1px #c5a0591a}.give.done .way:nth-of-type(2){animation-delay:90ms}.give.done .way:nth-of-type(3){animation-delay:.18s}.give.done .way h2{margin:0 0 .3rem;font-size:1.55rem}.give.done .way>p{margin:0 0 .85rem}.give.done .way label{margin-top:0}.give.done .way form{gap:.6rem;display:grid}.give.done .way textarea{margin-bottom:.6rem}.give.done .way .way-see{flex-wrap:wrap;justify-content:center;gap:.4rem 1.5rem;margin:.7rem 0 0;display:flex}.give.done .way .way-note{text-align:center;margin:.6rem 0 0}.give.done .way-done{color:var(--near);text-align:center;border:1px solid #c5a05966;border-radius:.9rem;margin:.2rem 0 0;padding:.85rem 1rem}.give.done .qr{background:#fff;border-radius:1rem;width:10.5rem;margin:.25rem auto 1rem;padding:.8rem;box-shadow:0 0 2.5rem #c5a0592e}.give.done .qr svg,.print-card .pc-qr svg{width:100%;height:auto;display:block}.give.done .copy-link{justify-self:center;margin-top:.6rem}.shortlink{color:var(--caption);text-align:center;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.8rem;overflow:hidden}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.print-card{display:none}@media print{@page{margin:.6in}html,body{background:#fff!important}body>:not(.print-card){display:none!important}.print-card{color:#14251c;-webkit-print-color-adjust:exact;print-color-adjust:exact;place-items:center;min-height:9in;display:grid}.print-card .pc-frame{outline-offset:5px;text-align:center;border:1px solid #c5a059;border-radius:6px;outline:1px solid #c5a059;align-content:center;justify-items:center;gap:.12in;width:5in;min-height:7in;padding:.5in .45in .45in;display:grid}.print-card p{color:#14251c;margin:0}.print-card .pc-brand{font-family:var(--serif);letter-spacing:.04em;align-items:center;gap:.08in;font-size:15pt;display:flex}.print-card .pc-brand svg{width:.26in;height:.26in}.print-card .pc-eyebrow{letter-spacing:.24em;text-transform:uppercase;color:#8a6a2f;margin-top:.2in;font-size:7.5pt;font-weight:600}.print-card .pc-name{font-family:var(--serif);font-size:34pt;font-style:italic;line-height:1.05}.print-card .pc-note{max-width:3.9in;font-family:var(--serif);white-space:pre-line;margin-top:.08in;font-size:13.5pt;font-style:italic;line-height:1.4}.print-card .pc-from{font-family:var(--serif);font-size:14pt}.print-card .pc-qr{width:1.7in;margin-top:.22in}.print-card .pc-how{color:#3c4a42;font-size:9pt}.print-card .pc-link{letter-spacing:.02em;color:#3c4a42;word-break:break-all;font-size:8.5pt}.print-card .pc-what{max-width:3.4in;font-family:var(--serif);color:#3c4a42;margin-top:.18in;font-size:11.5pt;font-style:italic;line-height:1.35}}.give.one textarea#note{min-height:11.5rem;font-family:var(--serif);font-size:1.2rem;line-height:1.45}.give.one .note-hint{margin:.5rem 0 .55rem}.note-picks{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:.45rem;margin:0 -1.25rem;padding:0 1.25rem .2rem;display:flex;overflow-x:auto}.note-picks::-webkit-scrollbar{display:none}.give .note-picks button{min-height:2.5rem;color:var(--near);box-shadow:none;white-space:nowrap;transition:border-color .18s var(--ease-out), color .18s var(--ease-out);background:linear-gradient(#ffffff14,#ffffff08);border:1px solid #ffffff1f;border-radius:999px;flex:none;padding:0 1rem;font-size:.92rem;font-weight:500}.give .note-picks button[aria-pressed=true]{color:var(--gold);border-color:#c5a059b3}.quiet-door{max-width:34rem;min-height:100dvh;padding:calc(2rem + env(safe-area-inset-top)) 1.5rem calc(2rem + env(safe-area-inset-bottom));text-align:center;align-content:center;justify-items:center;gap:.9rem;margin:0 auto;display:grid}.quiet-door .eyebrow{margin:0 0 .5rem}.quiet-door .hero-object{order:0;padding:.5rem 0 1.25rem}.quiet-door h1{text-wrap:balance;margin:0;font-size:clamp(2.1rem,8.5vw,3rem)}.quiet-door p{margin:0}.quiet-door .lead{font-family:var(--serif);color:var(--near);font-size:1.4rem;font-style:italic}.quiet-door footer{color:var(--caption);gap:.35rem;margin-top:2.25rem;font-size:.82rem;display:grid}
