:root{--navy:#10233f;--navy-soft:#1b365d;--teal:#078494;--teal-dark:#056875;--aqua:#d9f3f2;--ink:#17263a;--muted:#526477;--paper:#fffdfa;--surface:#fff;--line:#d7e0e4;--danger:#8a382b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:radial-gradient(circle at 85% 0%, #dff7f5 0, transparent 30rem), var(--paper);color:var(--ink);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:17px;line-height:1.65}a{color:var(--teal-dark);text-underline-offset:.2em;text-decoration-thickness:.1em}a:hover{color:var(--navy)}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--teal);outline-offset:4px}.site-header{background:#fffdfaeb;border-bottom:1px solid #10233f1a}.header-inner,main,footer{width:min(1120px,100% - 40px);margin-inline:auto}.header-inner{justify-content:space-between;align-items:center;gap:24px;padding:18px 0;display:flex}.brand{color:var(--navy);white-space:nowrap;align-items:center;gap:10px;font-size:1.05rem;font-weight:800;text-decoration:none;display:inline-flex}.brand-mark{background:var(--navy);color:#fff;width:44px;height:44px;box-shadow:inset 0 -3px 0 var(--teal);border-radius:13px;place-items:center;font-size:.92rem;display:inline-grid}nav ul{flex-wrap:wrap;justify-content:flex-end;gap:4px 18px;margin:0;padding:0;list-style:none;display:flex}nav a{min-height:44px;color:var(--navy);align-items:center;font-size:.91rem;font-weight:700;text-decoration:none;display:inline-flex}main{min-height:62vh;padding-block:clamp(48px,8vw,88px)}main>*{max-width:760px}main>.hero,main>section,main>.card-grid,main>.steps{max-width:none}h1,h2,h3{color:var(--navy);text-wrap:balance;line-height:1.15}h1{letter-spacing:-.05em;max-width:820px;margin:0 0 20px;font-size:clamp(2.5rem,7vw,5.25rem)}h2{letter-spacing:-.025em;margin-top:42px;font-size:clamp(1.65rem,3vw,2.4rem)}h3{margin-top:0;font-size:1.25rem}.hero{padding-block:clamp(20px,5vw,60px) clamp(70px,10vw,120px)}.eyebrow{color:var(--teal-dark);letter-spacing:.12em;text-transform:uppercase;margin-bottom:14px;font-size:.82rem;font-weight:800}.lede{max-width:760px;color:var(--muted);font-size:clamp(1.18rem,2.4vw,1.45rem)}.actions{flex-wrap:wrap;gap:14px;margin-top:30px;display:flex}.button{border:2px solid var(--navy);background:var(--navy);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-height:50px;padding:11px 20px;font-weight:800;text-decoration:none;display:inline-flex}.button:hover{background:var(--navy-soft);color:#fff}.button.secondary{color:var(--navy);background:0 0}.invitation-page{text-align:center;width:min(680px,100%);margin-inline:auto}.invitation-kicker{color:var(--teal-dark);letter-spacing:.18em;text-transform:uppercase;margin:0 0 10px;font-size:.78rem;font-weight:900}.invitation-title{letter-spacing:.015em;margin-inline:auto;font-size:clamp(2.25rem,8vw,4.4rem)}.invitation-intro{max-width:580px;color:var(--muted);margin:0 auto 34px;font-size:clamp(1.05rem,2.5vw,1.25rem)}.invitation-envelope{width:min(460px,100%);min-height:270px;color:var(--navy);background:linear-gradient(155deg,#eaf9f7 0%,#b9e7e3 100%);border:2px solid #10233f24;border-radius:28px;place-items:end center;margin:0 auto 28px;padding:32px;text-decoration:none;transition:box-shadow .16s,transform .16s;display:grid;position:relative;overflow:hidden;transform:translateY(0);box-shadow:0 22px 55px #10233f29}.invitation-envelope:before,.invitation-envelope:after{content:"";background:#d9f3f2;height:68%;position:absolute;inset:auto 0 0}.invitation-envelope:before{clip-path:polygon(0 0,52% 100%,0 100%)}.invitation-envelope:after{clip-path:polygon(100% 0,48% 100%,100% 100%)}.invitation-envelope:hover{color:var(--navy);transform:translateY(-3px);box-shadow:0 26px 65px #10233f38}.invitation-envelope-flap{z-index:1;clip-path:polygon(0 0,50% 100%,100% 0);background:#c9eeeb;height:62%;position:absolute;inset:0 0 auto}.invitation-seal{z-index:3;background:var(--navy);color:#fff;border:4px solid #ffffffb3;border-radius:50%;place-items:center;width:68px;height:68px;font-size:1.3rem;font-weight:900;display:grid;position:absolute;top:116px;box-shadow:0 8px 22px #10233f3d}.invitation-envelope-copy{z-index:3;letter-spacing:.035em;font-size:1.05rem;font-weight:900;position:relative}.invitation-unavailable{max-width:560px;color:var(--danger);background:#fff4f1;border:1px solid #e3b9b0;border-radius:20px;gap:6px;margin:0 auto 28px;padding:22px;display:grid}.invitation-unavailable span,.invitation-privacy,.invitation-install-note{color:var(--muted);font-size:.94rem}.invitation-privacy,.invitation-install-note,.invitation-links{max-width:560px;margin-inline:auto}.invitation-install-note{margin-top:8px}.invitation-links{margin-top:26px}@media (prefers-reduced-motion:reduce){.invitation-envelope{transition:none}}.card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:28px 0 72px;display:grid}.card{border:1px solid var(--line);background:var(--surface);border-radius:24px;padding:clamp(22px,3vw,32px);box-shadow:0 18px 50px #10233f12}.card h2{margin-top:0;font-size:1.45rem}.callout{background:var(--navy);color:#fff;border-radius:28px;grid-template-columns:1fr auto;align-items:end;gap:24px;padding:clamp(28px,5vw,48px);display:grid}.callout h2,.callout .eyebrow,.callout a{color:#fff}.callout h2{margin-top:0}.steps{gap:18px;margin:38px 0 54px;padding:0;list-style:none;display:grid}.steps li{border:1px solid var(--line);background:#fff;border-radius:20px;grid-template-columns:52px 1fr;gap:20px;padding:24px;display:grid}.steps li>span{background:var(--aqua);width:48px;height:48px;color:var(--navy);border-radius:50%;place-items:center;font-weight:900;display:grid}.steps h2{margin:0 0 8px;font-size:1.35rem}.steps p{margin:0}.notice{border-left:5px solid var(--teal);background:var(--surface);border-radius:14px;margin:30px 0;padding:20px 22px;box-shadow:0 12px 38px #10233f0f}.notice h2{margin-top:0}.form{border:1px solid var(--line);background:#fff;border-radius:18px;gap:10px;max-width:680px;margin:28px 0;padding:22px;display:grid}.form input{width:100%;min-height:48px;color:var(--ink);font:inherit;background:#fff;border:1px solid #829399;border-radius:10px;padding:10px 12px}.form button{background:var(--teal-dark);color:#fff;cursor:pointer;min-height:48px;font:inherit;border:0;border-radius:10px;margin-top:8px;padding:10px 16px;font-weight:800}.form button.danger{background:var(--danger)}.form button.secondary{border:1px solid var(--teal-dark);color:var(--teal-dark);background:0 0}.form button:disabled{cursor:not-allowed;opacity:.55}.turnstile-wrap{min-height:108px;margin-top:8px;overflow:hidden}.turnstile-wrap>div{max-width:100%}.form-help{color:var(--muted);margin:6px 0 0;font-size:.88rem}.challenge-page{background:#fff;place-content:center;min-height:100vh;padding:20px;display:grid}.challenge-page h1{color:var(--navy);text-align:center;margin:0 0 12px;font-size:1.35rem}.receipt,.receipt code{overflow-wrap:anywhere}.receipt code{-webkit-user-select:all;user-select:all}footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:24px;padding-block:32px 50px;font-size:.92rem;display:flex}footer p{margin:0}.skip{z-index:10;background:#fff;padding:12px;position:absolute;top:-100px;left:16px}.skip:focus{top:8px}@media (max-width:860px){.header-inner{flex-direction:column;align-items:flex-start}nav ul{justify-content:flex-start}.card-grid,.callout{grid-template-columns:1fr}footer{flex-direction:column}}@media (max-width:520px){.header-inner,main,footer{width:min(100% - 28px,1120px)}nav ul{gap:0 14px}.steps li{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
