/* A newspaper-framed invitation, using the existing Figma brand assets. */
.scroll-invite[open]{display:block}.scroll-invite{position:fixed;inset:0;width:min(900px,calc(100% - 48px));max-width:none;max-height:calc(100dvh - 40px);margin:auto;padding:12px;border:0;color:white;background:#d8d8d3 var(--surface-paper-image) center/900px auto;overflow:auto;box-shadow:0 25px 100px #0009;overscroll-behavior:contain;scrollbar-width:thin}
.scroll-invite::backdrop{background:#02080ce3;backdrop-filter:blur(3px);animation:invite-backdrop .35s ease both}
.scroll-invite-shell{background:#192c3b;position:relative;isolation:isolate}
.scroll-invite-top{position:sticky;top:0;z-index:4;display:flex;align-items:center;justify-content:center;min-height:62px;border-bottom:1px solid #ffffff30;background:#132633;padding:8px 58px}
.scroll-invite-top>a{font:28px/1.3 var(--display);text-decoration:none;letter-spacing:.7px}
.scroll-invite-top>a:hover{color:#b6cff1}
.scroll-invite-close{position:absolute;right:10px;top:8px;width:44px;height:44px;border:1px solid #ffffff60;background:transparent;color:white;font:32px/1 Arial;border-radius:50%;display:grid;place-items:center}
.scroll-invite-close:hover{background:#ffffff18}
.scroll-invite-grid{display:grid;grid-template-columns:1fr 1.05fr}
.scroll-invite-story{position:relative;padding:36px 32px 40px;overflow:hidden;background:radial-gradient(ellipse at 0 95%,#45688765,transparent 65%),#192c3b}
.scroll-invite-story h2{position:relative;z-index:1;font:clamp(40px,5vw,62px)/1.12 var(--display);letter-spacing:-.3px;text-transform:uppercase;outline:none;margin:0 0 23px}
.scroll-invite-story h2>span:first-child{display:block;color:#a9c3e7}
.scroll-invite-dots{display:block;color:#f04b38;line-height:.55;margin:0 0 12px;letter-spacing:8px}
.scroll-invite-story>p{position:relative;z-index:1;max-width:290px;margin:0 0 40px;color:#e0e7ed;font-size:16px;line-height:1.65}
.scroll-invite-watermark{position:absolute;width:280px;right:-72px;bottom:-20px;color:#6489a31c;transform:rotate(-15deg);pointer-events:none}
.scroll-invite-stamp{display:inline-block;position:relative;z-index:1;padding:3px 11px 7px;border:4px solid #ef4d3a;border-radius:11px;font:42px/1.05 var(--display);text-transform:uppercase;white-space:nowrap;color:#ef4d3a;transform:rotate(-7deg);box-shadow:4px 5px 0 #ef4d3a30}
.scroll-invite-contact{padding:30px;background:#f6f5ef;color:#192c3b}
.scroll-invite-contact h3{font:29px/1.15 var(--display);text-transform:uppercase;margin:0 0 9px}
.scroll-invite-contact form>p:first-of-type{font-size:14px;line-height:1.45;margin:0 0 20px;color:#40515b;max-width:300px}
.scroll-invite-fields{display:grid;gap:13px}
.scroll-invite-fields label{display:block;font-size:12px;line-height:1.3;font-weight:800;letter-spacing:.1px}
.scroll-invite-fields label>span{font-weight:400;color:#556570}
.scroll-invite-fields input{display:block;width:100%;min-height:46px;border:1px solid #617b8d;border-radius:3px;background:#fff;color:#192c3b;padding:10px 12px;margin:6px 0 0;font-size:16px;line-height:1.4;box-shadow:0 2px 0 #192c3b12}
.scroll-invite-fields input:focus{border-color:#192c3b;outline:2px solid #7195c9;outline-offset:2px}
.scroll-invite-fields input::placeholder{color:#687880;opacity:1}
.scroll-invite-submit{display:flex;justify-content:space-between;align-items:center;gap:15px;width:100%;border:0;border-radius:7px;padding:12px 17px;background:#7195c9;color:#0c2334;font:25px/1.25 var(--display);text-transform:uppercase;margin:20px 0 10px;box-shadow:3px 4px 0 #192c3b}
.scroll-invite-submit>svg{width:35px;height:28px;transition:transform .2s}
.scroll-invite-submit:hover{background:#83a5d4}.scroll-invite-submit:hover>svg{transform:translateX(4px)}
.scroll-invite-contact .scroll-invite-privacy{font-size:11px;line-height:1.4;margin:12px 0 6px;color:#40515b}
.scroll-invite-contact .scroll-invite-preview-note{font-size:10px;line-height:1.4;margin:0;color:#566772}
.scroll-invite-bottom{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 26px;background:#090f14;border-top:1px solid #ffffff20}
.scroll-invite-bottom>button{border:0;padding:7px 0;background:transparent;color:#e4eaf0;text-decoration:underline;text-underline-offset:4px;min-height:44px;font-size:13px}
.scroll-invite-bottom>button:hover{color:#a9c3e7}
.scroll-invite-bottom>button>span{display:inline-block;margin-left:7px;color:#8cadda;font-size:20px}
.scroll-invite-bottom>span{font:14px/1.3 var(--display);letter-spacing:.3px;color:#9db4c5}
.scroll-invite-success{padding:30px 0;min-height:370px;display:flex;flex-direction:column;justify-content:center;align-items:start;gap:23px}
.scroll-invite-success[hidden]{display:none}.scroll-invite-success .scroll-invite-stamp{font-size:34px;margin-bottom:4px}
.scroll-invite-success h3{font-size:36px}.scroll-invite-success p{font-size:15px;line-height:1.6;margin:0}
.scroll-invite-success .scroll-invite-submit{margin-top:0;font-size:22px}
.scroll-invite-flight{position:fixed;z-index:2147483646;inset:0;pointer-events:none;overflow:hidden;contain:strict}
.scroll-invite-flight[hidden]{display:none}
.scroll-invite-flight>svg{position:absolute;top:26%;left:-44vw;width:clamp(220px,34vw,440px);height:auto;color:#ecece4;filter:drop-shadow(7px 8px 0 #c83427) drop-shadow(0 0 14px #0008);animation:invite-flight 2.5s cubic-bezier(.32,.15,.55,.88) both}
.scroll-invite-bird-far{transform-origin:150px 140px}.scroll-invite-bird-near{transform-origin:165px 142px}
.scroll-invite-flight .scroll-invite-bird-far{animation:invite-wing-far .68s ease-in-out infinite alternate}
.scroll-invite-flight .scroll-invite-bird-near{animation:invite-wing-near .68s ease-in-out infinite alternate}
.scroll-invite.is-entering .scroll-invite-shell{animation:invite-land .45s cubic-bezier(.17,.8,.3,1.15) both}
.scroll-invite.is-entering .scroll-invite-stamp{animation:invite-stamp .55s .2s cubic-bezier(.14,.85,.32,1.2) both}
.scroll-invite-preview-tools{position:fixed;bottom:22px;left:22px;z-index:100;display:flex;align-items:center;gap:12px;flex-wrap:wrap;max-width:calc(100% - 44px);padding:12px 16px;background:#0a141e;color:white;border:1px solid #8ba8bd;box-shadow:3px 4px 0 #0007;font-size:12px}
.scroll-invite-preview-tools>span{color:#a9c3e7}.scroll-invite-preview-tools button{border:1px solid #7195c9;background:#7195c9;padding:8px 12px;min-height:40px;color:#102533;font-weight:700;font-size:12px}
@keyframes invite-flight{0%{transform:translate(0,12vh) rotate(-14deg) scale(.7)}42%{transform:translate(85vw,-5vh) rotate(4deg) scale(1.07)}100%{transform:translate(190vw,-13vh) rotate(-8deg) scale(.65)}}
@keyframes invite-wing-far{from{transform:rotate(3deg) scaleY(1)}to{transform:rotate(18deg) scaleY(.65)}}
@keyframes invite-wing-near{from{transform:rotate(-3deg) scaleY(1)}to{transform:rotate(-13deg) scaleY(.75)}}
@keyframes invite-backdrop{from{background:#02080c00;backdrop-filter:blur(0)}to{background:#02080ce3;backdrop-filter:blur(3px)}}
@keyframes invite-land{from{opacity:0;transform:translateY(22px) scale(.97)}to{opacity:1;transform:none}}
@keyframes invite-stamp{0%{opacity:0;transform:rotate(-13deg) scale(1.55)}65%{opacity:1;transform:rotate(-7deg) scale(.96)}100%{opacity:1;transform:rotate(-7deg) scale(1)}}
@media(max-width:640px){
 .scroll-invite{width:calc(100% - 24px);max-height:calc(100dvh - 24px);padding:7px}
 .scroll-invite-top{min-height:52px;padding:4px 48px}.scroll-invite-top>a{font-size:25px}.scroll-invite-close{width:38px;height:38px;top:6px;right:6px;font-size:28px}
 .scroll-invite-grid{grid-template-columns:1fr}
 .scroll-invite-story{padding:22px 22px 24px}.scroll-invite-story h2{font-size:clamp(31px,8.8vw,46px);line-height:1.12;margin:0 0 13px;max-width:100%}.scroll-invite-story h2>span:first-child{display:inline;color:white}.scroll-invite-dots{display:inline;letter-spacing:0;line-height:1;color:#ef4d3a}
 .scroll-invite-story>p{font-size:12px;line-height:1.5;max-width:55%;margin:0}
 .scroll-invite-stamp{font-size:25px;border-width:3px;border-radius:7px;padding:2px 8px 5px;box-shadow:3px 4px 0 #ef4d3a30}.scroll-invite-story>.scroll-invite-stamp{position:absolute;right:16px;bottom:30px}
 .scroll-invite-watermark{width:180px;right:-43px;bottom:-10px;color:#789ab329}
 .scroll-invite-contact{padding:20px 22px}.scroll-invite-contact h3{font-size:24px;margin:0 0 16px}.scroll-invite-contact h3 br{display:none}.scroll-invite-contact form>p:first-of-type{display:none}
 .scroll-invite-fields{gap:12px}.scroll-invite-fields input{min-height:44px;padding:9px 11px;margin-top:5px}.scroll-invite-submit{margin-top:17px;font-size:23px;padding:11px 15px}.scroll-invite-contact .scroll-invite-privacy{font-size:10px;margin:11px 0 5px}
 .scroll-invite-bottom{justify-content:center;padding:8px 16px}.scroll-invite-bottom>span{display:none}.scroll-invite-bottom>button{font-size:12px;min-height:38px}
 .scroll-invite-success{min-height:300px;padding:20px 0}.scroll-invite-success h3{font-size:32px}
 .scroll-invite-flight>svg{width:70vw;left:-75vw;top:27%;animation-name:invite-flight-mobile}
 .scroll-invite-preview-tools{left:12px;bottom:80px;max-width:calc(100% - 24px);gap:7px;padding:9px 11px}.scroll-invite-preview-tools>span{display:none}
}
@keyframes invite-flight-mobile{0%{transform:translate(0,12vh) rotate(-14deg) scale(.8)}45%{transform:translate(100vw,-2vh) rotate(4deg) scale(1)}100%{transform:translate(250vw,-13vh) rotate(-8deg) scale(.7)}}
@media(max-width:360px){.scroll-invite-story>p{max-width:100%}.scroll-invite-story>.scroll-invite-stamp{position:relative;right:auto;bottom:auto;margin:17px 0 4px 3px}.scroll-invite-story{padding:20px}.scroll-invite-contact{padding:20px}.scroll-invite-story h2{font-size:30px}}
@media(prefers-reduced-motion:reduce){.scroll-invite-flight{display:none!important}.scroll-invite::backdrop,.scroll-invite.is-entering .scroll-invite-shell,.scroll-invite.is-entering .scroll-invite-stamp{animation:none}.scroll-invite-submit>svg{transition:none}}
