:root{--ivory:#FAF9F4;--paper:#F3EEE2;--noir:#1A1A1A;--taupe:#7A6A58;--taupe-deep:#3E3126;--gold:#9B6A25;--gold-deep:#8A5D1A;--gold-light:#C9A24A;--ease:cubic-bezier(.4,0,.2,1);--seal-x:52.1%;--seal-y:48.3%;--seal-d:15%}*,:after,:before{box-sizing:border-box}body,html{height:100%}body{margin:0;overflow-x:hidden;background:var(--ivory);color:var(--noir);font-family:var(--font-montserrat),"Montserrat",system-ui,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.page{min-height:100%;flex-direction:column;padding:calc(6vh + env(safe-area-inset-top)) calc(4vw + env(safe-area-inset-right)) calc(12vh + env(safe-area-inset-bottom)) calc(4vw + env(safe-area-inset-left));gap:5vh}.page,.stage{display:flex;align-items:center;justify-content:center}.stage{position:relative;width:min(88vw,900px)}.envelope-wrap{display:inline-block;position:relative;width:100%;line-height:0;opacity:0;transition:opacity .4s var(--ease),transform .9s var(--ease);-webkit-transition:opacity .4s var(--ease),-webkit-transform .9s var(--ease);will-change:opacity,transform}.envelope-wrap.is-loaded{opacity:1}.envelope-wrap img{display:block;width:100%;height:auto}.caption{margin:0;font-family:"Didot",var(--font-bodoni-moda),"Bodoni 72",serif;font-weight:400;text-transform:uppercase;letter-spacing:.28em;font-size:clamp(12px,1.4vw,19px);color:var(--taupe);text-align:center;max-width:54ch;line-height:1.9;transition:opacity .6s var(--ease)}.seal-btn,.seal-glow{position:absolute;left:var(--seal-x);top:var(--seal-y);width:var(--seal-d);aspect-ratio:1/1;transform:translate(-50%,-50%);-webkit-transform:translate(-50%,-50%);border-radius:50%}.seal-btn{padding:0;border:0;background:transparent;cursor:pointer;z-index:3;-webkit-appearance:none;-moz-appearance:none;appearance:none}.seal-btn:focus-visible{outline:2px solid var(--gold);outline-offset:6px}.seal-btn[disabled]{cursor:default;pointer-events:none}.seal-glow{z-index:2;pointer-events:none;box-shadow:0 0 0 0 rgba(201,162,74,0)}.is-pressing .seal-glow{animation:sealGlow .6s var(--ease) forwards}.is-pressing .envelope-wrap{transform:scale(.96);-webkit-transform:scale(.96);transition-duration:.6s}@keyframes sealGlow{0%{box-shadow:0 0 0 0 rgba(201,162,74,0)}55%{box-shadow:0 0 40px 10px rgba(201,162,74,.55)}to{box-shadow:0 0 0 0 rgba(201,162,74,0)}}.card-clip{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);-webkit-transform:translate(-50%,-50%);width:min(86vw,560px);overflow:hidden;z-index:4;pointer-events:none;visibility:hidden}.is-open .card-clip{visibility:visible;pointer-events:auto}.card-clip.is-unclipped{overflow:visible}.card{position:relative;width:100%;padding:clamp(40px,6vw,64px);border-radius:6px;border:2px solid rgba(0,0,0,.03);background-color:#F5EEE3;box-shadow:inset 0 0 0 10px #F5EEE3,inset 0 0 0 12px rgba(0,0,0,.04),0 20px 40px rgba(0,0,0,.15);color:#17120E;text-align:center;opacity:0;transform:translateY(40%);-webkit-transform:translateY(40%);transition:opacity .9s var(--ease),transform .9s var(--ease);-webkit-transition:opacity .9s var(--ease),-webkit-transform .9s var(--ease);will-change:opacity,transform}.is-open .card{opacity:1;transform:translateY(0);-webkit-transform:translateY(0)}.wordmark{display:block;width:60%;height:auto;margin:0 auto clamp(18px,3vw,26px)}.sep{display:flex;align-items:center;gap:14px;margin:0 0 clamp(18px,3vw,26px)}.sep:after,.sep:before{content:"";flex:1 1;height:1px;background:rgba(122,106,88,.3)}.sep span{font-family:var(--font-montecarlo),"MonteCarlo",cursive;font-size:22px;line-height:1;color:var(--taupe)}.card h1,.card h2{font-family:var(--font-bodoni-moda),"Bodoni Moda","Didot","Times New Roman",serif;font-weight:400;font-size:clamp(26px,3.4vw,36px);line-height:1.25;color:#17120E;margin:0 0 clamp(12px,2vw,16px)}.card .lede{font-family:var(--font-montserrat),"Montserrat",sans-serif;font-weight:300;font-size:15px;line-height:1.7;color:var(--taupe);margin:0 auto clamp(24px,4vw,34px);max-width:40ch}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap;border:0}.field{margin:0 0 22px;text-align:left}.field input{width:100%;padding:10px 2px;font-family:var(--font-montserrat),"Montserrat",sans-serif;font-weight:300;font-size:14px;letter-spacing:.02em;color:var(--noir);background:transparent;border:0;border-bottom:1px solid rgba(122,106,88,.45);border-radius:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:border-color .3s var(--ease)}.field input::placeholder{color:rgba(122,106,88,.75)}.field input:focus{outline:none;border-bottom-color:var(--gold)}.field input[aria-invalid=true]{border-bottom-color:#A4443A}.btn{display:block;width:100%;margin-top:6px;padding:16px;border:0;border-radius:2px;cursor:pointer;font-family:var(--font-montserrat),"Montserrat",sans-serif;font-weight:500;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--noir);background:linear-gradient(180deg,#D4B05C,#B8892F 45%,#9B6A25);box-shadow:inset 0 1px 0 rgba(255,240,200,.6);transition:filter .3s var(--ease),transform .12s var(--ease);-webkit-appearance:none;-moz-appearance:none;appearance:none}.btn:hover{filter:brightness(1.04)}.btn:active{transform:translateY(1px)}.btn:focus-visible{outline:2px solid var(--gold-deep);outline-offset:3px}.footnote{font-family:var(--font-montserrat),"Montserrat",sans-serif;font-weight:300;font-size:11px;line-height:1.6;color:rgba(122,106,88,.7);margin:18px 0 0}.thanks{font-family:var(--font-bodoni-moda),"Bodoni Moda","Didot",serif;font-weight:400;font-size:clamp(18px,2.4vw,22px);color:var(--noir);margin:6px 0 0}.err{font-family:var(--font-montserrat),"Montserrat",sans-serif;font-weight:300;font-size:11.5px;color:#A4443A;min-height:1em;margin:-12px 0 12px;text-align:left}.is-open .envelope-wrap{opacity:.35;transform:scale(.94);-webkit-transform:scale(.94)}.is-open .caption{opacity:0}@media (prefers-reduced-motion:reduce){.caption,.card,.envelope-wrap{transition-duration:.3s!important}.card,.is-open .envelope-wrap,.is-pressing .envelope-wrap{transform:none!important;-webkit-transform:none!important}.is-pressing .seal-glow{animation:none}}@media (max-height:760px){.card{padding:clamp(28px,4vw,44px)}.card .lede{margin-bottom:clamp(18px,3vw,24px)}.field{margin-bottom:16px}}@media (max-width:600px){.page{gap:5vh;padding-bottom:14vh}.caption{max-width:min(92vw,300px)}.sep span{font-size:20px}}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap;border:0}@media (max-height:700px){.card-clip.is-unclipped{top:0;left:0;transform:none;-webkit-transform:none;width:100%;height:100%;display:flex;align-items:flex-start;justify-content:center;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:calc(16px + env(safe-area-inset-top)) 7vw calc(24px + env(safe-area-inset-bottom))}.card-clip.is-unclipped .card{width:100%;max-width:560px}}body.is-short .card-clip.is-unclipped{top:0;left:0;transform:none;-webkit-transform:none;width:100%;height:100%;display:flex;align-items:flex-start;justify-content:center;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:calc(16px + env(safe-area-inset-top)) 7vw calc(24px + env(safe-area-inset-bottom))}body.is-short .card-clip.is-unclipped .card{width:100%;max-width:560px}@media (max-width:820px){.field input{padding:14px 2px}.btn{padding:18px}}