.inv-opening{z-index:60;text-align:center;background:radial-gradient(ellipse at 50% 30%, color-mix(in srgb, var(--inv-accent) 12%, transparent), transparent 65%), var(--inv-bg);color:var(--inv-ink);flex-direction:column;justify-content:center;align-items:center;gap:22px;padding:28px 24px;display:flex;position:fixed;inset:0;overflow:auto}.inv-opening-eyebrow{letter-spacing:.24em;text-transform:uppercase;max-width:280px;color:var(--inv-muted);font-size:10px;line-height:1.8}.inv-opening-object{cursor:pointer;perspective:1000px;text-align:center;flex-shrink:0;width:min(310px,78vw);min-height:210px;margin:22px 0;position:relative}.inv-opening-object:focus-visible{outline:2px solid var(--inv-accent);outline-offset:14px}.inv-opening-back,.inv-opening-letter,.inv-opening-pocket,.inv-opening-flap{border-radius:5px;position:absolute;inset:0}.inv-opening-back{background:color-mix(in srgb, var(--inv-accent) 23%, var(--inv-bg));box-shadow:0 25px 55px -20px #0005}.inv-opening-letter{background:var(--inv-bg);border:1px solid var(--inv-border);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:16px;display:flex;inset:10px 13px 8px}.inv-opening-letter .inv-display{overflow-wrap:anywhere;font-size:clamp(20px,6vw,30px);line-height:1.2}.inv-opening-caption{overflow-wrap:anywhere;letter-spacing:.2em;text-transform:uppercase;max-width:100%;font-size:9px;line-height:1.7;display:block}.inv-opening-pocket{z-index:3;clip-path:polygon(0 0,50% 54%,100% 0,100% 100%,0 100%);background:linear-gradient(135deg, color-mix(in srgb, var(--inv-accent) 35%, var(--inv-bg)), color-mix(in srgb, var(--inv-accent) 16%, var(--inv-bg)))}.inv-opening-flap{z-index:4;transform-origin:top;clip-path:polygon(0 0,100% 0,50% 58%);background:color-mix(in srgb, var(--inv-accent) 27%, var(--inv-bg));backface-visibility:hidden}.inv-opening-seal{z-index:5;background:var(--inv-accent);width:50px;height:50px;color:var(--inv-bg);border-radius:50%;place-items:center;display:grid;position:absolute;top:44%;left:calc(50% - 25px);box-shadow:0 4px 12px #0003,inset 0 0 0 4px #ffffff24}.inv-opening-cta{border-radius:999px;min-height:46px;padding:12px 28px;font-size:13px}.inv-opening-ticket .inv-opening-object,.inv-opening-storybook .inv-opening-object{background:var(--inv-bg);border:1px solid var(--inv-accent);min-height:300px;box-shadow:14px 18px 0 -6px color-mix(in srgb, var(--inv-accent) 15%, transparent), 0 24px 60px -25px #0006;flex-direction:column;justify-content:center;align-items:center;gap:20px;padding:30px 24px;display:flex}.inv-opening-name{overflow-wrap:anywhere;max-width:100%;font-size:clamp(28px,8vw,42px);line-height:1.15}.inv-opening-icon{color:var(--inv-accent)}.inv-opening-detail{border-top:1px dashed var(--inv-accent);letter-spacing:.22em;width:100%;padding-top:18px;font-size:10px;display:block}.inv-opening-ticket .inv-opening-object{background:repeating-linear-gradient(125deg, transparent 0 18px, color-mix(in srgb, var(--inv-accent) 4%, transparent) 19px 20px), var(--inv-bg);border-radius:18px}.inv-opening-storybook .inv-opening-object{transform-origin:0;background:radial-gradient(circle at 70% 20%, color-mix(in srgb, var(--inv-accent) 18%, transparent), transparent 55%), var(--inv-bg);border-left-width:12px;border-radius:4px 18px 18px 4px}@media (prefers-reduced-motion:no-preference){.inv-opening.is-opening{pointer-events:none;animation:.5s 1.3s both inv-opening-away}.inv-opening-envelope.is-opening{animation:.7s 3.5s both inv-opening-away}.is-opening .inv-opening-flap{animation:1s .25s forwards inv-flap}.is-opening .inv-opening-seal{animation:.5s forwards inv-seal}.is-opening .inv-opening-letter{animation:1.4s 1s forwards inv-letter}.inv-opening-ticket.is-opening .inv-opening-object{animation:1.3s forwards inv-ticket}.inv-opening-storybook.is-opening .inv-opening-object{animation:1.3s forwards inv-book}}@keyframes inv-flap{to{transform:rotateX(180deg)}}@keyframes inv-seal{to{opacity:0;transform:scale(1.4)}}@keyframes inv-letter{to{z-index:6;transform:translateY(-42%)}}@keyframes inv-ticket{40%{transform:rotate(-5deg)scale(1.05)}to{opacity:0;transform:translateY(-30px)rotate(8deg)scale(1.15)}}@keyframes inv-book{to{opacity:0;transform:perspective(1000px)rotateY(-100deg)}}@keyframes inv-opening-away{to{opacity:0;visibility:hidden}}@media (prefers-reduced-motion:reduce){.inv-opening.is-opening{opacity:0;transition:opacity .18s}}@media (max-height:600px){.inv-opening{justify-content:flex-start;gap:10px}.inv-opening-object{margin:10px 0}}@media (max-width:767px){.inv-experience-v3 .wedding-hero{width:calc(100% - 1rem);margin-top:.5rem}.inv-experience-v3 .wedding-hero-paper{padding:2rem 1.6rem 1.5rem}.inv-experience-v3 .wedding-seal{width:32px;height:32px;margin-bottom:1rem;font-size:11px}.inv-experience-v3 .wedding-overline{font-size:8px}.inv-experience-v3 .wedding-hero .wedding-names{margin-top:1rem;font-size:clamp(2.65rem,12vw,3.7rem);line-height:1.05}.inv-experience-v3 .wedding-ampersand{margin:0 .15em;font-size:.7em;display:inline}.inv-experience-v3 .wedding-hero-subtitle{max-width:240px;margin-top:1rem;font-size:12px}.inv-experience-v3 .wedding-date-rule{margin-top:1rem;font-size:10px}.inv-experience-v3 .wedding-hero-cta{min-height:44px;margin-top:1rem;padding:.6rem 1rem}.inv-experience-v3 .wedding-hero-photo{border-radius:48% 48% 2px 2px;height:42svh;min-height:230px;max-height:360px;margin:0 1rem 1rem}.inv-experience-v3 .wedding-photo-caption{font-size:8px;bottom:1.3rem}}@media (prefers-reduced-motion:no-preference){:is(.inv-experience-v3:not(:has(.inv-opening)) .designed-hero .design-names,.inv-experience-v3:not(:has(.inv-opening)) .wedding-hero-paper>:not(.wedding-hero-branch)){animation:.85s cubic-bezier(.2,.7,.25,1) both inv-copy-arrive}.inv-experience-v3:not(:has(.inv-opening)) .designed-hero .design-photo img{animation:1.5s cubic-bezier(.2,.7,.25,1) both inv-photo-arrive}.inv-experience-v3:not(:has(.inv-opening)) .wedding-hero-photo img{animation:1.5s cubic-bezier(.2,.7,.25,1) both inv-photo-arrive}}@keyframes inv-copy-arrive{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes inv-photo-arrive{0%{opacity:.45;transform:scale(1.055)}to{opacity:1;transform:scale(1)}}.inv-opening-envelope-title{overflow-wrap:anywhere;max-width:290px;font-size:clamp(24px,7vw,34px);line-height:1.15}
