.inv{position:relative}.inv-name{max-width:100%;font-family:var(--t-font-accent);overflow-wrap:anywhere;padding:0 .15em;font-size:clamp(3rem,16vw,5.75rem);line-height:1.05;display:block}.inv-shimmer{background-image:linear-gradient(105deg, var(--t-text) 0%, var(--t-accent) 30%, var(--t-ornament) 45%, var(--t-accent) 60%, var(--t-text) 100%);color:#0000;background-size:260% 100%;-webkit-background-clip:text;background-clip:text;animation:7s linear infinite inv-shimmer}.inv[data-scheme=dark] .inv-shimmer{background-image:linear-gradient(105deg, var(--t-ornament) 0%, var(--t-accent) 35%, #fff4d6 48%, var(--t-accent) 62%, var(--t-ornament) 100%)}@keyframes inv-shimmer{0%{background-position:130% 0}to{background-position:-130% 0}}.inv-spin{animation:90s linear infinite inv-spin}@keyframes inv-spin{to{rotate:360deg}}.inv-hero__ornament{opacity:.16;pointer-events:none;z-index:-1;width:min(96vw,560px);height:min(96vw,560px);position:absolute;top:50%;left:50%;translate:-50% -50%}.inv[data-look=marigold] .inv-hero__ornament{opacity:.22;animation-duration:60s}.inv-toran{transform-origin:50% 0;width:100%;height:64px;animation:5s ease-in-out infinite alternate inv-swing;position:absolute;top:0;left:0}@keyframes inv-swing{0%{rotate:-.8deg}to{rotate:.8deg}}.inv-corner{pointer-events:none;width:min(44vw,230px);height:auto;transition:scale calc(var(--gift-dur) * 2) var(--gift-ease) calc(var(--gift-dur) * .6);position:absolute}.inv-corner--tl{top:-8px;left:-8px;transform:rotate(90deg)scaleX(-1)}.inv-corner--tr{top:-8px;right:-8px;transform:rotate(180deg)}.inv-corner--bl{bottom:-8px;left:-8px}.inv-corner--br{bottom:-8px;right:-8px;transform:scaleX(-1)}.kheyal-gift:has(.gift-gate-toggle:not(:checked)) .inv-hero .inv-corner{scale:0}.inv-datebox{border-radius:var(--t-radius);background:color-mix(in srgb, var(--t-surface) 82%, transparent);min-width:15rem;box-shadow:var(--t-shadow);padding:1rem 1.5rem}.inv[data-look=royal] .inv-datebox{border:1px solid var(--t-ornament);outline:1px solid color-mix(in srgb, var(--t-ornament) 55%, transparent);outline-offset:5px}.inv[data-look=floral] .inv-datebox{border-radius:999px;padding:1.1rem 2.2rem}.inv[data-look=marigold] .inv-datebox{border-top:4px solid var(--t-ornament);border-bottom:4px solid var(--t-ornament)}.inv-scroll-cue{animation:2.4s ease-in-out infinite inv-bob}@keyframes inv-bob{50%{translate:0 6px}}.inv-particles{z-index:-1;pointer-events:none;position:fixed;inset:0;overflow:hidden}.inv-particles>span{left:var(--x);animation:inv-fall var(--dur) linear var(--delay) infinite;display:block;position:absolute;top:-6%}@keyframes inv-fall{0%{transform:translate3d(0, 0, 0) rotate(0deg) scale(var(--s))}50%{transform:translate3d(var(--sway), 55vh, 0) rotate(200deg) scale(var(--s))}to{transform:translate3d(0, 112vh, 0) rotate(420deg) scale(var(--s))}}.inv-particles--petals>span{background:var(--t-accent);opacity:.45;border-radius:0 80%;width:12px;height:15px}.inv-particles--marigold>span{background:radial-gradient(circle, var(--t-accent) 0 28%, var(--t-ornament) 32%);opacity:.6;border-radius:50%;width:11px;height:11px}.inv-particles--sparkles>span{background:var(--t-ornament);clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);width:9px;height:9px;animation-name:inv-rise;top:auto;bottom:-4%}@keyframes inv-rise{0%{transform:translate3d(0, 0, 0) scale(var(--s));opacity:0}15%{opacity:.85}50%{transform:translate3d(var(--sway), -55vh, 0) scale(var(--s));opacity:.35}70%{opacity:.8}to{transform:translate3d(0, -110vh, 0) scale(var(--s));opacity:0}}.inv-frame{isolation:isolate;aspect-ratio:3/4;border-radius:var(--t-radius);position:relative}.inv-frame>img{border-radius:inherit}.inv-frame--single{aspect-ratio:4/5;max-width:20rem;margin:0 auto}.inv-frame--royal{border:3px solid var(--t-ornament);outline:1px solid var(--t-ornament);outline-offset:6px;border-radius:999px 999px 14px 14px}.inv-frame--floral{aspect-ratio:1;border-radius:50%}.inv-frame--floral:before{content:"";z-index:-1;border:2px dashed var(--t-ornament);border-radius:50%;animation:40s linear infinite inv-spin;position:absolute;inset:-9px}.inv-frame--marigold{border-radius:20px;rotate:-2deg}.inv-portrait:nth-child(2) .inv-frame--marigold{rotate:2deg}.inv-frame--marigold:before{content:"";z-index:-1;background:repeating-conic-gradient(from 0deg, var(--t-ornament) 0 9deg, var(--t-accent) 9deg 18deg);border-radius:26px;position:absolute;inset:-8px}.inv-card{border-radius:var(--t-radius);background:var(--t-surface);box-shadow:var(--t-shadow);padding:1.75rem 1.25rem 1.5rem;position:relative}.inv-card__icon{width:3.5rem;height:3.5rem;color:var(--t-accent);border:1.5px solid var(--t-ornament);border-radius:50%;place-items:center;margin:0 auto;display:grid}.inv-card__divider{background:linear-gradient(90deg, transparent, var(--t-ornament), transparent);width:70%;height:1px;margin:1rem auto}.inv-card--royal{border:1px solid var(--t-ornament);outline:1px solid color-mix(in srgb, var(--t-ornament) 50%, transparent);outline-offset:5px;border-radius:160px 160px 18px 18px;padding-top:2.5rem}.inv-card--floral{border:1px solid color-mix(in srgb, var(--t-ornament) 45%, transparent);border-radius:28px}.inv-card--marigold{border-top:6px solid var(--t-ornament);background-image:radial-gradient(circle at 0 50%, var(--t-bg) 0 10px, transparent 11px), radial-gradient(circle at 100% 50%, var(--t-bg) 0 10px, transparent 11px);border-radius:16px}.inv-card--marigold .inv-card__divider{border-top:2px dashed var(--t-ornament);background:0 0;width:100%;height:0}.inv-btn{border:1.5px solid var(--t-accent);min-height:2.75rem;color:var(--t-text);text-align:center;border-radius:999px;flex:1;justify-content:center;align-items:center;padding:0 1rem;font-size:.9rem;font-weight:600;transition:transform .2s,background-color .2s;display:inline-flex}.inv-btn:active{transform:scale(.97)}.inv-btn--primary{background:var(--t-accent);color:var(--t-on-accent)}.gift-gate[data-variant=custom] .gift-gate__cta{background:color-mix(in srgb, var(--t-bg) 86%, transparent);border-radius:999px;padding:.6rem 1.4rem .7rem;box-shadow:0 6px 24px -10px #00000059}.inv-doors{perspective:1600px;display:flex;position:absolute;inset:0}.inv-door{background:radial-gradient(circle, var(--t-ornament) 0 2px, transparent 2.5px) 0 0 / 34px 34px, linear-gradient(160deg, var(--t-surface), var(--t-bg));border:2px solid var(--t-ornament);transform-origin:0;transition:transform calc(var(--gift-dur) * 2.2) cubic-bezier(.6, .05, .2, 1);backface-visibility:hidden;flex:1;position:relative}.inv-door--right{transform-origin:100%}.inv-door__arch{border:2px solid var(--t-ornament);box-shadow:inset 0 0 0 6px color-mix(in srgb, var(--t-ornament) 25%, transparent);border-radius:999px 999px 8px 8px;position:absolute;inset:12% 14% 10%}.gift-gate-toggle:checked+.gift-gate .inv-door--left{transform:rotateY(-108deg)}.gift-gate-toggle:checked+.gift-gate .inv-door--right{transform:rotateY(108deg)}.inv-medallion{background:radial-gradient(circle, var(--t-surface) 55%, transparent 56%);width:9.5rem;height:9.5rem;color:var(--t-ornament);filter:drop-shadow(0 0 22px color-mix(in srgb, var(--t-ornament) 60%, transparent));transition:opacity .5s ease, scale .7s var(--gift-ease);border-radius:50%;place-items:center;animation:2.8s ease-in-out infinite inv-glow;display:grid;position:relative}.inv-medallion__ring{position:absolute;inset:0}.inv-medallion__letters{color:var(--t-text);letter-spacing:.05em;font-size:2rem;font-weight:600;position:relative}.inv-medallion__amp{color:var(--t-ornament);margin:0 .2em;font-size:.8em}@keyframes inv-glow{50%{filter:drop-shadow(0 0 34px color-mix(in srgb, var(--t-ornament) 85%, transparent))}}.gift-gate-toggle:checked+.gift-gate .inv-medallion{opacity:0;scale:1.6}.inv-garden{background:var(--t-bg);transition:opacity calc(var(--gift-dur) * 1.4) ease calc(var(--gift-dur) * .8);position:absolute;inset:0}.inv-garden .inv-corner{animation:6s ease-in-out infinite alternate inv-sway}@keyframes inv-sway{to{scale:1.06}}.gift-gate-toggle:checked+.gift-gate .inv-garden{opacity:0}.inv-wax{background:var(--t-accent);color:var(--t-on-accent);letter-spacing:.06em}.inv-garlands{background:var(--t-bg);transition:background-color .3s ease calc(var(--gift-dur) * 1.2);position:absolute;inset:0}.inv-toran--gate{z-index:2;transition:opacity .4s ease calc(var(--gift-dur) * 1.4)}.inv-garland{top:0;left:var(--x);background:linear-gradient(var(--t-ornament), var(--t-ornament)) 50% 0 / 1.5px 100% no-repeat, radial-gradient(circle at 50% 14px, var(--t-ornament) 0 7.5px, transparent 8px) 0 0 / 18px 30px repeat-y, radial-gradient(circle at 50% 14px, var(--t-accent) 0 3px, transparent 3.5px) 0 0 / 18px 30px repeat-y;opacity:.9;width:18px;height:100%;animation:3.5s ease-in-out infinite alternate inv-garland-sway;animation-delay:calc(var(--i) * -.3s);transform-origin:50% 0;transition:transform calc(var(--gift-dur) * 1.6) cubic-bezier(.7, 0, .3, 1) calc(var(--i) * 45ms);position:absolute;translate:-50%}@keyframes inv-garland-sway{0%{rotate:-1.2deg}to{rotate:1.2deg}}.gift-gate-toggle:checked+.gift-gate .inv-garland{transform:translateY(-112%)}.gift-gate-toggle:checked+.gift-gate .inv-garlands{background-color:#0000}.gift-gate-toggle:checked+.gift-gate .inv-toran--gate{opacity:0}.inv-badge{background:var(--t-accent);width:9rem;height:9rem;color:var(--t-on-accent);box-shadow:0 0 0 6px var(--t-bg), 0 0 0 9px var(--t-ornament);transition:opacity .4s ease, scale .6s var(--gift-ease);border-radius:50%;grid-auto-flow:column;place-content:center;align-items:center;font-size:2rem;font-weight:700;animation:2.6s ease-in-out infinite gift-pulse;display:grid;position:relative}.inv-badge:after{content:"";border:3px dotted var(--t-ornament);border-radius:50%;animation:24s linear infinite inv-spin;position:absolute;inset:-20px}.inv-badge__amp{margin:0 .15em;font-size:.7em}.gift-gate-toggle:checked+.gift-gate .inv-badge{opacity:0;scale:.6}@media (prefers-reduced-motion:reduce){.inv-spin,.inv-toran,.inv-scroll-cue,.inv-medallion,.inv-badge,.inv-badge:after,.inv-garland,.inv-garden .inv-corner,.inv-frame--floral:before,.inv-shimmer{animation:none}.inv-particles{display:none}.inv-door,.inv-garland,.inv-corner{transition:none}.gift-gate-toggle:checked+.gift-gate .inv-door,.gift-gate-toggle:checked+.gift-gate .inv-garland{transform:none}.kheyal-gift:has(.gift-gate-toggle:not(:checked)) .inv-hero .inv-corner{scale:1}}
