*{box-sizing:border-box}.invitation-page,.invite-cover{--inv-bg:#153d30;--inv-text:#f9eedc;--inv-accent:#d9b574;color:var(--inv-text);background:var(--inv-bg);font:16px/1.7 Arial,sans-serif;position:relative;overflow:hidden}.invitation-page{min-height:100vh;text-align:center}.invite-art{position:absolute;inset:0;pointer-events:none;color:var(--inv-accent);overflow:hidden}.invite-art svg{display:block;width:100%;height:100%;object-fit:cover}.invitation-page>.invite-art{height:850px;max-width:900px;left:50%;transform:translateX(-50%);width:100%}.invite-inner{position:relative;z-index:1;max-width:750px;margin:auto;padding:125px 28px 40px;outline:none}.invite-kicker{font-size:10px;letter-spacing:.25em;color:var(--inv-accent);text-transform:uppercase;font-weight:600}.invite-title{font:normal clamp(42px,7vw,78px)/1.1 Georgia,serif;margin:22px 0;overflow-wrap:anywhere}.invite-hosts{font:italic 22px/1.5 Georgia,serif;color:var(--inv-accent);margin:0 0 24px}.invite-message{max-width:440px;margin:0 auto 32px;white-space:pre-line;overflow-wrap:anywhere;opacity:.85}.invite-date{border-block:1px solid color-mix(in srgb,var(--inv-accent) 50%,transparent);max-width:300px;padding:18px;margin:25px auto;display:flex;align-items:center;flex-direction:column;line-height:1.6}.invite-day{font:52px/1.1 Georgia,serif;color:var(--inv-accent)}.invite-weekday,.invite-month{text-transform:uppercase;font-size:11px;letter-spacing:.16em}.invite-time{font-size:12px;margin-top:9px}.invite-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.invite-button{font:600 12px Arial,sans-serif;background:var(--inv-accent);color:var(--inv-bg);border:1px solid var(--inv-accent);border-radius:3px;padding:14px 20px;text-decoration:none;cursor:pointer;display:inline-block}.invite-button.outline{background:transparent;color:var(--inv-text)}.invite-button:focus-visible,.opening-seal:focus-visible,.opening-skip:focus-visible{outline:3px solid var(--inv-accent);outline-offset:5px}.invite-countdown{display:flex;justify-content:center;gap:28px;margin:32px 0 60px;color:var(--inv-accent);font:italic 20px Georgia,serif}.invite-countdown b{font:28px Georgia,serif;display:block}.invite-countdown small{font:8px Arial,sans-serif;letter-spacing:.14em}.invite-details{background:color-mix(in srgb,var(--inv-text) 5%,transparent);padding:35px 20px;margin:30px auto;max-width:480px}.invite-details section{margin:0 0 28px}.invite-details section:last-child{margin:0}.invite-details small{font-size:9px;letter-spacing:.17em;color:var(--inv-accent)}.invite-details p{font-size:15px;margin:10px 0;white-space:pre-line;overflow-wrap:anywhere}.invite-reply{padding:25px 0}.invite-reply h2{font:normal 30px/1.2 Georgia,serif}.invite-small{font:11px/1.6 Arial,sans-serif;opacity:.75;overflow-wrap:anywhere}.invite-signoff{font:italic 24px Georgia,serif;margin-top:50px;color:var(--inv-accent)}.invite-credit{display:block;font:10px Arial,sans-serif;color:inherit;opacity:.6;margin:25px 0}.invite-photo{max-width:100%;width:330px;height:260px;object-fit:cover;border-radius:180px 180px 3px 3px;border:1px solid var(--inv-accent);padding:6px;margin:15px 0}.template-photo .invite-inner{padding-top:45px}.template-photo .invite-title{font-size:48px}.design-disco .invite-inner,.design-rainbow .invite-inner,.design-reveal .invite-inner,.design-grad .invite-inner,.design-school .invite-inner{padding-top:265px}.design-modern .invite-title{font-family:Arial,sans-serif;font-weight:800;text-align:left;letter-spacing:-.06em}.design-modern .invite-inner{text-align:left}.design-modern .invite-date{margin-inline:0}.design-dino .invite-title,.design-rainbow .invite-title,.design-ocean .invite-title{font-family:Georgia,serif;font-weight:bold}.template-school-colors .invite-title{font-family:Arial,sans-serif;font-weight:800;text-transform:uppercase}.template-garden-shower .invite-inner{max-width:600px}.template-coastal-wedding .invite-title{font-style:italic}.template-golden-anniversary .invite-inner{padding-top:245px}.template-modern-save-date .invite-kicker{margin-bottom:20px}.template-pastel-reveal .invite-title{font-style:italic}.template-dusty-rose .invite-title{font-style:italic}.template-candlelit-engagement .invite-inner{border:1px solid color-mix(in srgb,var(--inv-accent) 30%,transparent);margin:20px auto;padding-top:110px}.template-night-celebrate .invite-title{font-family:Arial,sans-serif;letter-spacing:-.04em;font-weight:800}.template-soft-blue .invite-title{font-style:italic}.invite-cover{position:absolute;inset:0;min-height:720px;height:100%;z-index:10;display:flex;justify-content:center;text-align:center}.invite-cover>.invite-art{height:820px;max-width:800px;left:50%;transform:translateX(-50%);width:100%;opacity:.65}.cover-copy{position:relative;z-index:1;padding:100px 15px 40px;width:100%;height:800px;display:flex;align-items:center;flex-direction:column}.cover-copy h2{font:normal 42px/1.2 Georgia,serif;margin:12px 0 55px}.cover-prompt{font-size:9px;letter-spacing:.18em;color:var(--inv-accent);margin-top:30px}.opening-object{width:min(300px,78vw);height:200px;position:relative;perspective:900px;box-shadow:0 25px 50px #0003}.opening-left,.opening-right,.opening-flap{position:absolute;inset:0;transition:transform 1s,opacity .8s}.opening-envelope .opening-object{background:#e0d5be}.opening-envelope .opening-left{background:linear-gradient(35deg,#f5ead4 50%,transparent 50%);z-index:2}.opening-envelope .opening-right{background:linear-gradient(-35deg,#e6d8bc 50%,transparent 50%);z-index:2}.opening-envelope .opening-flap{clip-path:polygon(0 0,100% 0,50% 62%);background:linear-gradient(#fef6e4,#d3c6a9);transform-origin:top;z-index:3}.opening-seal{position:absolute;z-index:4;top:calc(50% - 28px);left:calc(50% - 30px);width:60px;height:60px;border-radius:47%;border:4px double color-mix(in srgb,var(--inv-accent) 55%,#fff);color:var(--inv-bg);background:var(--inv-accent);box-shadow:0 4px 9px #0005;font:30px Georgia,serif;cursor:pointer;transition:transform .7s,opacity .6s}.opening-skip{border:0;background:transparent;color:inherit;font:12px Arial,sans-serif;text-decoration:underline;margin-top:20px;cursor:pointer;padding:12px}.opening-doors .opening-object,.opening-curtains .opening-object{height:290px;width:245px;background:var(--inv-bg);border:2px solid var(--inv-accent)}.opening-doors .opening-left,.opening-doors .opening-right{width:50%;background:linear-gradient(110deg,color-mix(in srgb,var(--inv-bg) 78%,#000),var(--inv-bg));border:3px double var(--inv-accent);transform-origin:left}.opening-doors .opening-right{left:50%;transform-origin:right}.opening-doors .opening-flap{display:none}.opening-curtains .opening-left,.opening-curtains .opening-right{width:50%;transform-origin:left;background:repeating-linear-gradient(90deg,var(--inv-accent),color-mix(in srgb,var(--inv-accent) 60%,#000) 15%,var(--inv-accent) 27%)}.opening-curtains .opening-right{left:50%}.opening-curtains .opening-flap{height:45px;bottom:auto;background:var(--inv-accent);border-radius:0 0 50% 50%;z-index:2}.opening-gift .opening-object{width:230px;height:215px;background:var(--inv-accent);margin-top:15px;border-radius:4px}.opening-gift .opening-left{width:30px;left:calc(50% - 15px);background:var(--inv-bg)}.opening-gift .opening-right{height:30px;top:85px;background:var(--inv-bg)}.opening-gift .opening-flap{height:55px;top:-15px;background:var(--inv-accent);border:1px solid color-mix(in srgb,var(--inv-bg) 30%,transparent);box-shadow:0 7px 8px #0002;z-index:3}.opening-gift .opening-flap:before,.opening-gift .opening-flap:after{content:'';position:absolute;width:60px;height:35px;border:8px solid var(--inv-bg);border-radius:60% 60% 0 60%;top:-35px;left:50%;transform:translateX(-100%) rotate(10deg)}.opening-gift .opening-flap:after{transform:scaleX(-1) rotate(10deg)}.is-opening .opening-seal{transform:scale(.4) translateY(50px);opacity:0}.is-opening.opening-envelope .opening-flap{transform:rotateX(180deg)}.is-opening.opening-doors .opening-left{transform:rotateY(-115deg)}.is-opening.opening-doors .opening-right{transform:rotateY(115deg)}.is-opening.opening-curtains .opening-left{transform:translateX(-100%)}.is-opening.opening-curtains .opening-right{transform:translateX(100%)}.is-opening.opening-gift .opening-flap{transform:translateY(-140px) rotate(-8deg);opacity:0}@media(max-width:500px){.invite-inner{padding-top:110px}.design-disco .invite-inner,.design-rainbow .invite-inner,.design-reveal .invite-inner,.design-grad .invite-inner,.design-school .invite-inner{padding-top:230px}.invite-countdown{gap:23px}.invite-photo{height:220px}.cover-copy{padding-top:85px}.cover-copy h2{font-size:36px}.template-candlelit-engagement .invite-inner{margin:15px}.template-golden-anniversary .invite-inner{padding-top:220px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}body{margin:0}button,a{touch-action:manipulation}
