@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Caveat:wght@400;500&family=Inter:wght@400;500;600&display=swap";:root{color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--brand-blue:#004789;--brand-blue-deep:#003766;--brand-red:#d62e2f;--brand-red-deep:#ad2527;--brand-yellow:#fceea8;--brand-yellow-soft:#fff8d5;--brand-yellow-edge:#e1cd82;--paper:#faf8f3;--sheet:#fffdf8;--ink:#19334a;--muted:#495b70;--accent:var(--brand-red);--line:#0047892b;--photo-blue-start:#e5ebf2;--photo-blue-end:#cddbe9;--photo-red-start:#f4e7e4;--photo-red-end:#e6cfcc;--photo-neutral-start:var(--brand-yellow-soft);--photo-neutral-end:var(--brand-yellow);--serif:"Cormorant Garamond",Georgia,serif;--hand:"Caveat",cursive;font-family:Inter,Arial,sans-serif;font-weight:400}*{box-sizing:border-box}body{min-width:320px;margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button,a{touch-action:manipulation}a{color:inherit}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--brand-blue);outline-offset:6px}::selection{background:#dce7f3}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400}button{color:inherit}img{max-width:100%;display:block}html{scroll-behavior:smooth;scroll-padding-top:30px}section{scroll-margin-top:28px}p{line-height:1.8}.skip-link{z-index:10;background:var(--sheet);padding:12px;position:fixed;top:10px;left:10px;transform:translateY(-150%)}.skip-link:focus{transform:none}.story-loading{background:var(--brand-blue);min-height:100svh;color:var(--brand-yellow);place-items:center;margin:0;font-size:13px;display:grid}.ui-icon{vertical-align:-.14em;flex-shrink:0;width:1em;height:1em;display:inline-block;overflow:visible}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}.question-page{background:var(--brand-blue);min-height:100svh;color:var(--brand-yellow);flex-direction:column;justify-content:center;align-items:center;gap:38px;padding:40px 24px;display:flex}.question-edition{letter-spacing:2px;text-align:center;font-size:9px}.question-card{background:var(--brand-yellow);width:min(100%,520px);color:var(--brand-blue);text-align:center;padding:56px 50px 38px;animation:.65s cubic-bezier(.22,1,.36,1) both question-arrive;position:relative;box-shadow:10px 12px #002e5a66}.question-seal{background:var(--brand-red);width:50px;height:50px;color:var(--brand-yellow);border-radius:50%;place-items:center;font-size:30px;display:grid;position:absolute;top:-23px;left:calc(50% - 25px);rotate:-10deg;box-shadow:0 3px #ad2527}.question-eyebrow{letter-spacing:2px;margin-bottom:22px;font-size:9px}.question-card h1{color:var(--brand-blue);letter-spacing:-2px;font-size:clamp(55px,8vw,83px);line-height:.95}.question-card h1 em{color:var(--brand-blue)}.question-invitation{margin:24px 0 28px;font-size:12px}.question-card form{text-align:left}.question-card label{letter-spacing:1.5px;text-transform:uppercase;margin-bottom:9px;font-size:10px;display:block}.question-card input{width:100%;min-height:56px;color:var(--brand-blue);letter-spacing:2px;text-transform:uppercase;outline-offset:4px;background:#fff8d5;border:1px solid #00478966;border-radius:0;padding:12px 14px;font:500 19px Inter,Arial,sans-serif;display:block}.question-card input:focus-visible{outline:2px solid var(--brand-blue)}.question-card input[aria-invalid=true]{border-color:var(--brand-red)}.question-feedback{color:#a22021;min-height:40px;padding-top:8px;font-size:11px;line-height:1.5}.question-submit{background:var(--brand-red);color:#fff8d5;border:0;justify-content:space-between;align-items:center;width:100%;min-height:52px;padding:14px 20px;font-size:12px;transition:transform .18s ease-out,background .18s ease-out;display:flex}.question-submit:hover{background:var(--brand-red-deep);transform:translateY(-2px)}.question-submit:active{transform:translateY(0)}.question-signoff{font:26px var(--hand);color:var(--brand-blue);margin-top:28px;display:block}.question-lemon{width:36px;height:36px}@keyframes question-arrive{0%{opacity:0;transform:translateY(18px)rotate(-1deg)}to{opacity:1;transform:none}}@media (width<=600px){.question-page{gap:32px;padding:34px 24px}.question-card{padding:45px 26px 30px}.question-edition{letter-spacing:1.4px;font-size:8px}.question-invitation{font-size:11px}.question-card input{font-size:17px}.question-signoff{font-size:24px}}.question-challenge{background:var(--brand-yellow);width:min(440px,100% - 40px);max-height:calc(100svh - 40px);color:var(--brand-blue);text-align:center;border:0;margin:auto;padding:36px 28px;position:fixed;inset:0;overflow:auto;box-shadow:8px 10px #002e5a66}.question-challenge::backdrop{background:#002e5ad9}.question-challenge[open]{animation:.35s cubic-bezier(.22,1,.36,1) both question-arrive}.challenge-heart{color:var(--brand-red);margin-bottom:20px;font-size:45px;line-height:1;display:block}.question-challenge h2{color:var(--brand-blue);font-size:clamp(38px,7vw,54px);line-height:1.05}.question-challenge h2 em{color:var(--brand-red)}.question-challenge p{margin:20px 0 26px;font-size:12px;line-height:1.7}.question-page[data-folding=true]{z-index:30;position:fixed;inset:0;overflow:auto}.question-page[data-folding=true] .question-card,.question-page:not([data-attempts="0"]) .question-card{animation:none}.question-seal{outline-offset:-5px;outline:1px solid #ffffff36;font:29px Georgia,serif}.question-transition-status{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}html[data-question-handoff=pending] .paper-gift,html[data-question-handoff=pending] .paper-gift::backdrop{visibility:hidden}.question-arrival-skip{display:none}html[data-question-handoff] .question-arrival-skip{visibility:visible;color:var(--brand-yellow);background:var(--brand-blue);z-index:20;border:1px solid #fceea877;min-height:44px;padding:12px 20px;font-size:12px;display:block;position:fixed;bottom:24px;left:50%;translate:-50%}.question-arrival-skip:focus-visible{outline-color:var(--brand-yellow)}.question-envelope-backing{z-index:0;background:var(--brand-yellow);pointer-events:none;position:absolute;inset:0}.paper-gift .question-seal-proxy{z-index:15;pointer-events:none}.question-page[data-success=true] .question-card{animation:none}.question-page[data-success=true] .question-copy{visibility:hidden}.question-success{align-content:center;justify-items:center;gap:18px;padding:35px 24px;display:grid;position:absolute;inset:0;overflow:hidden}.question-success>div[role=status],.success-next,.success-continue{z-index:1;position:relative}.question-success h2{letter-spacing:-.035em;font-size:clamp(42px,7vw,62px);line-height:.98}.question-success h2 em{color:var(--brand-red)}.question-success [role=status] p{margin-top:18px;font-size:12px}.question-success .success-next{font:24px/1.2 var(--hand);max-width:28ch}.question-success-badge{background:var(--brand-red);width:70px;height:70px;color:var(--brand-yellow-soft);box-shadow:0 4px 0 var(--brand-red-deep);border-radius:50%;place-items:center;animation:.6s cubic-bezier(.2,.85,.3,1.2) both success-pop;display:grid}.question-success-badge svg{stroke:currentColor;stroke-width:4px;stroke-linecap:round;stroke-linejoin:round;width:46px;height:46px}.question-success-badge path{stroke-dasharray:1;stroke-dashoffset:0;animation:.5s ease-out .1s both success-check}.success-continue{color:var(--brand-blue);background:0 0;border:0;border-bottom:1px solid #00478955;align-items:center;gap:28px;min-height:44px;padding:8px 12px;font:500 11px Inter,Arial,sans-serif;display:flex}.question-success-pieces{pointer-events:none;position:absolute;inset:0}.question-success-pieces span{color:var(--brand-red);animation:success-hearts 1.1s ease-out var(--success-delay) both;font:24px Georgia,serif;position:absolute;top:43%;left:50%}@keyframes success-pop{0%{opacity:0;transform:scale(.55)rotate(-12deg)}to{opacity:1;transform:none}}@keyframes success-check{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@keyframes success-hearts{0%{opacity:0;transform:scale(.3)}15%{opacity:.7}to{opacity:0;transform:translate(var(--success-x),var(--success-y)) scale(1.1)}}
