@font-face{font-family:Fallback;src:local('Arial')}
:root{--ink:#282a25;--muted:#626259;--paper:#fffdf6;--bg:#f5edda;--lavender:#c7b9e8;--pink:#eeb4ba;--yellow:#f6e686;--line:#b0aa99;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.5}button,input,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #66528c;outline-offset:5px}button:disabled{cursor:default}button{color:var(--ink)}[hidden]{display:none!important}::selection{background:var(--lavender);color:var(--ink)}
.skip-link{position:fixed;top:-80px;left:20px;z-index:100;padding:12px;background:var(--ink);color:var(--paper)}.skip-link:focus{top:12px}.site-header{min-height:112px;margin:0 5%;display:flex;align-items:center;gap:32px;border-bottom:1px solid var(--line)}.wordmark{font-size:42px;letter-spacing:-3px;font-weight:800;text-decoration:none;line-height:1}.wordmark-dot{color:#705295}.header-dept{font-family:monospace;font-size:10px;line-height:1.5;letter-spacing:1px;border-left:1px solid var(--line);padding-left:25px}.sound-toggle{display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--ink);background:transparent;border-radius:100px;min-height:43px;padding:8px 18px;font-size:12px;margin-left:auto;white-space:nowrap;transition:background .2s}.sound-toggle:hover{background:var(--paper)}.sound-bars{display:flex;align-items:center;gap:3px;height:16px}.sound-bars i{display:block;width:2px;height:6px;background:currentColor}.sound-bars i:nth-child(2){height:14px}.sound-bars i:nth-child(3){height:10px}.sound-bars i:nth-child(4){height:16px}.sound-toggle[aria-pressed=true] .sound-bars i{animation:equalizer .7s ease-in-out infinite alternate}.sound-toggle[aria-pressed=true] .sound-bars i:nth-child(2n){animation-delay:-.4s}
main:focus{outline:none}.create-page{max-width:1440px;margin:auto;display:grid;grid-template-columns:1fr .92fr;gap:5%;padding:64px 7% 55px}.eyebrow{font:10px/1.5 monospace;letter-spacing:1.3px;text-transform:uppercase}.intro-eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:26px}.status-dot{display:inline-block;flex-shrink:0;width:7px;height:7px;border-radius:50%;background:#66784c;margin-right:7px}h1,h2,p{margin-top:0}h1{font-size:clamp(54px,5.8vw,86px);letter-spacing:-4px;line-height:1.015;font-weight:500;margin-bottom:28px}h1 em,h2 em{font-family:var(--serif);font-weight:400}h1 em{letter-spacing:-4px}.intro-copy{font-size:17px;line-height:1.65;color:#55574f}.intro-bottom{display:flex;align-items:center;margin-top:23px}.mascot{width:157px;flex-shrink:0;overflow:visible}.hat{fill:var(--lavender);stroke:currentColor;stroke-width:2.5}.mascot-note{font-family:var(--serif);font-size:18px;font-style:italic;line-height:1.25;transform:rotate(-7deg);padding:0 0 30px 28px}.mascot-note svg{display:block;width:90px;margin:8px 0 0 -45px}.form-section{align-self:center}.paper-card{border:1.5px solid var(--ink);background:var(--paper);box-shadow:7px 8px 0 #282a25;position:relative}.form-section .paper-card{transform:rotate(1deg)}.form-topline{border-bottom:1px solid var(--ink);display:flex;justify-content:space-between;gap:12px;padding:14px 23px;background:var(--lavender)}.form-topline .eyebrow{font-size:9px;letter-spacing:1px}.paper-body{padding:30px}.form-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px}h2{font-weight:500;letter-spacing:-1.8px;font-size:39px;line-height:1.1;margin-bottom:8px}.asterisk{width:62px;flex-shrink:0;color:#a895cc}.asterisk svg{width:100%;transform:rotate(10deg)}.form-subtitle{font-size:14px;color:var(--muted);margin-bottom:27px}form label,.share-link-section label{font-size:13px;font-weight:600;display:block;margin-bottom:9px}input{width:100%;background:transparent;border:1px solid #8c8e80;border-radius:0;padding:13px 14px;min-height:49px;color:var(--ink);font-size:15px}input::placeholder{color:#75766c;opacity:1}input:focus{border-color:#66528c;background:white}.field-hint{font-size:11px;color:var(--muted);line-height:1.5;margin:9px 0 23px}.primary{display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--ink);border:1px solid var(--ink);color:var(--paper);width:100%;min-height:54px;padding:15px 19px;font-size:14px;font-weight:500;text-decoration:none;line-height:1.4;transition:background .2s,box-shadow .2s}.primary:hover{background:#44473b;box-shadow:3px 3px 0 var(--lavender)}.primary span{font-size:22px;line-height:1}.primary:disabled{background:#4d5145;box-shadow:none;font-size:12px}.form-footnote{font:10px/1.5 monospace;color:var(--muted);text-align:center;margin:13px 0 0}.paper-footer{display:flex;justify-content:space-between;gap:12px;border-top:1px dashed #9e9c90;padding:13px 20px;font:8px/1.5 monospace;letter-spacing:.5px}.under-card{text-align:center;font-family:var(--serif);font-size:15px;font-style:italic;margin:23px 0 0}.error{font-size:12px;color:#9b2b35;margin:0 0 12px}.error:empty{display:none}.ticker{display:flex;align-items:center;justify-content:space-around;gap:24px;overflow:hidden;white-space:nowrap;background:var(--lavender);border-block:1px solid var(--ink);min-height:54px;padding:12px 35px;font:11px/1.5 monospace;letter-spacing:1.5px}.ticker span:nth-child(even){font-size:21px}.site-footer{min-height:97px;display:flex;align-items:center;gap:25px;justify-content:space-between;padding:22px 5%;font-size:10px;color:var(--muted)}.labs-link{text-decoration:none}.labs-link strong{font-weight:600;color:var(--ink);margin-left:4px}.labs-link:hover strong{text-decoration:underline}.text-button{font:inherit;border:0;border-bottom:1px solid currentColor;border-radius:0;padding:10px 0;min-height:44px;background:transparent;transition:color .2s}.text-button:hover{color:#6b498d}.site-footer .text-button{font-size:10px;white-space:nowrap}
.share-page{display:grid;grid-template-columns:.85fr 1fr;gap:8%;max-width:1250px;padding:70px 7% 85px;margin:auto}.share-intro{align-self:center}.share-intro .eyebrow{display:block;margin-bottom:25px}.share-intro h1{font-size:clamp(54px,6vw,82px)}.share-intro>p{color:var(--muted);font-size:15px;max-width:250px}.share-intro .text-button{font-size:12px;margin-top:15px}.share-card .form-topline{background:var(--pink)}.share-card .paper-body>.eyebrow{color:var(--muted)}.card-preview{font-size:37px;line-height:1.2;margin:24px 0 20px;overflow-wrap:anywhere}.share-card .paper-body>p{font-size:13px;color:var(--muted)}.share-link-section{border-top:1px solid #d2cfc4;margin-top:25px;padding-top:25px}.share-link-section label{font-size:11px}.share-link-row{display:flex}.share-link-row input{min-width:0;font-size:12px;padding-inline:10px}.copy-button{border:1px solid var(--ink);border-left:0;background:var(--lavender);font-size:11px;white-space:nowrap;padding:8px 13px;min-height:49px}.copy-button:hover{background:#b5a2e1}.share-link-section .field-hint{margin-bottom:20px}.fine-print{font-size:11px!important;line-height:1.6;color:var(--muted);margin:16px 0 0}.secondary{display:flex;align-items:center;justify-content:center;gap:25px;padding:13px 20px;min-height:49px;background:transparent;border:1px solid var(--ink);font-size:13px;transition:background .2s}.secondary:hover{background:var(--paper)}#native-share{width:100%;margin-top:12px}
.receive-page{padding:44px 24px 55px;position:relative;overflow:hidden}.celebration{text-align:center;max-width:850px;margin:auto}.celebration>.eyebrow{display:block;margin:0 auto 10px}.recipient-mascot .mascot{width:115px;height:117px;display:block;margin:0 auto 12px}.celebration h1{font-size:clamp(43px,5.6vw,75px);letter-spacing:-3px;line-height:1.05;overflow-wrap:anywhere;max-width:850px;margin:0 auto 24px}.celebration h1 em{background:var(--pink);box-shadow:8px 0 var(--pink),-8px 0 var(--pink);padding:0 4px;box-decoration-break:clone;-webkit-box-decoration-break:clone}.period{margin-left:7px}.recipient-copy{font-size:14px;color:var(--muted);line-height:1.6}.recognize-button{width:min(100%,330px);margin:24px auto 0;background:var(--lavender);color:var(--ink);min-height:59px;padding-inline:23px;box-shadow:4px 4px 0 var(--ink)}.recognize-button:hover{background:#b7a4df;box-shadow:2px 2px 0 var(--ink)}.recognize-note{font:10px/1.5 monospace;color:var(--muted);margin:17px 0 0}.recognition{margin:30px auto 0;max-width:620px}.recognition-banner{display:flex;align-items:center;justify-content:center;gap:20px;background:var(--yellow);border:1px solid var(--ink);padding:22px 15px;box-shadow:4px 4px 0 var(--ink);transform:rotate(-1.5deg)}.recognition-banner h2{margin:0;font:italic 35px/1.2 var(--serif);letter-spacing:-1.3px}.recognition-banner>span{font-size:26px}.recognition>p{font-size:12px;margin:21px 0 0;color:var(--muted)}.recognition .text-button{font-size:11px}.hug-section{margin:34px auto 25px;padding-top:25px;border-top:1px dashed var(--line);max-width:400px}.hug-section>p{font:italic 21px/1.4 var(--serif);margin-bottom:15px}.hug-section .secondary{margin:auto}.hug-section .field-hint{display:block;margin:12px 0 0;font-size:10px}.make-another{display:inline-block;font-size:10px;color:var(--muted);padding:10px;max-width:100%}.make-another:hover{color:var(--ink)}.missing-page{text-align:center;padding:70px 20px}.missing-page .mascot{display:block;margin:30px auto}.missing-page h1{font-size:60px}.missing-page p{font-size:14px;color:var(--muted)}.missing-page .primary{max-width:280px;margin:30px auto}
.dialog{position:fixed;inset:0;width:min(90vw,510px);max-height:85dvh;overflow:auto;padding:28px;border:1.5px solid var(--ink);background:var(--paper);color:var(--ink);box-shadow:8px 8px 0 var(--ink)}.dialog::backdrop{background:#282a2599;backdrop-filter:blur(3px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:20px}.dialog-heading .eyebrow{font-size:9px}.dialog .close-dialog[aria-label]{border:0;background:transparent;font-size:25px;min-height:44px;min-width:44px;margin:-10px -10px -10px 0}.dialog h2{font-size:43px;margin:25px 0 17px}.dialog p{font-size:14px;line-height:1.65}.dialog .dialog-lead{font-size:20px;font-family:var(--serif);font-style:italic}.dialog .primary{margin-top:25px;font-size:12px}.denied-stamp{display:inline-block;border:2px solid #a73340;color:#a73340;padding:7px 14px;font:600 15px/1.4 monospace;letter-spacing:2px;transform:rotate(-7deg);margin:10px 0}.noscript{padding:25px;border:2px solid var(--ink);background:var(--yellow);position:fixed;bottom:20px;left:5%;right:5%}#confetti{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:10}.confetti-piece{position:absolute;top:-30px;left:var(--x);width:9px;height:17px;background:var(--color);animation:confetti-fall var(--duration) var(--delay) cubic-bezier(.15,.4,.8,1) both}.confetti-piece.shape-1{border-radius:50%;width:9px;height:9px}.confetti-piece.shape-2{width:6px;height:24px}@keyframes confetti-fall{0%{transform:translate3d(0,-30px,0) rotate(0);opacity:1}90%{opacity:1}100%{transform:translate3d(var(--drift),110vh,0) rotate(var(--spin));opacity:0}}@keyframes equalizer{to{transform:scaleY(.3)}}
@media(min-width:1450px){.create-page{padding-top:85px;padding-bottom:80px}}
@media(max-width:1000px){.create-page{padding:55px 5% 50px;gap:5%;grid-template-columns:1fr 1fr}h1{font-size:61px;letter-spacing:-3px}h1 em{letter-spacing:-3px}.eyebrow{font-size:9px}.paper-body{padding:25px}.form-topline{padding:12px 17px}.form-topline .eyebrow{font-size:8px}h2{font-size:33px}.intro-eyebrow{font-size:8px}.asterisk{width:48px}.field-hint{font-size:10px}.intro-copy{font-size:15px}.paper-footer{font-size:7px;padding-inline:15px}.ticker{justify-content:flex-start;font-size:10px}.site-footer{font-size:9px;gap:15px}.share-page{gap:6%;padding-inline:5%}.card-preview{font-size:33px}}
@media(max-width:720px){.site-header{min-height:90px;margin-inline:6%;gap:15px;flex-wrap:wrap}.wordmark{font-size:36px;letter-spacing:-2.5px}.header-dept{display:none}.sound-toggle{font-size:10px;padding:8px 12px;min-height:44px}.create-page{grid-template-columns:1fr;padding:38px 7% 45px;gap:25px;max-width:550px}.intro-eyebrow{font-size:8px;letter-spacing:.8px;margin-bottom:22px}h1{font-size:clamp(51px,10.4vw,70px);letter-spacing:-3px;margin-bottom:21px}.intro h1 em{letter-spacing:-3px}.desktop-break{display:none}.intro-copy{font-size:14px}.intro-bottom{margin-top:0;position:absolute;right:7%;top:315px;pointer-events:none}.intro-bottom .mascot{width:80px}.mascot-note{display:none}.intro{position:relative}.intro-bottom{position:static;justify-content:flex-end;margin-top:-90px;height:100px}.form-section{margin:12px 2px 0 0}.form-section .paper-card{transform:rotate(.6deg)}.paper-body{padding:27px 23px}h2{font-size:36px}.asterisk{width:55px}.form-subtitle{margin-bottom:25px}.form-topline .eyebrow{font-size:8px}.field-hint{font-size:11px;margin-bottom:22px}.paper-footer{font-size:7px;padding-inline:17px}.primary{font-size:13px}.form-footnote{font-size:9px}.under-card{font-size:14px;margin-top:21px}.site-footer{flex-direction:column;gap:7px;text-align:center;padding:24px 18px 18px;font-size:10px}.site-footer .text-button{padding:6px 0}.ticker{min-height:48px;padding-inline:20px;font-size:9px;gap:22px}.ticker span:nth-child(even){font-size:18px}.share-page{grid-template-columns:1fr;gap:30px;padding:40px 7% 50px;max-width:550px}.share-intro h1{font-size:58px}.share-intro>p{max-width:none;font-size:14px}.share-intro .text-button{margin-top:0}.share-intro .eyebrow{font-size:9px;margin-bottom:18px}.share-card .card-preview{font-size:34px}.share-link-section label{font-size:10px}.receive-page{padding:32px 7% 35px}.celebration>.eyebrow{font-size:8px;letter-spacing:.8px}.recipient-mascot .mascot{width:104px;height:110px;margin-top:8px}.celebration h1{font-size:clamp(42px,9vw,60px);letter-spacing:-2.2px;line-height:1.09}.celebration h1 em{letter-spacing:-2px}.recipient-copy{font-size:13px}.recognize-note{font-size:8px}.recognition-banner{gap:10px;padding:22px 10px}.recognition-banner h2{font-size:29px}.recognition-banner>span{font-size:19px}.recognition>p{font-size:11px}.hug-section>p{font-size:20px}.make-another{font-size:9px}.dialog{padding:23px}.dialog h2{font-size:37px}.dialog-heading .eyebrow{font-size:8px}.missing-page h1{font-size:48px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;scroll-behavior:auto!important;transition:none!important}.confetti-piece{opacity:.65;transform:rotate(var(--spin))}}

/* A generously funded, one-balloon recipient celebration. */
.recognition-photo{width:min(100%,430px);margin:28px auto 27px;padding:10px 10px 0;background:var(--paper);border:1px solid var(--ink);box-shadow:4px 5px 0 #282a25;transform:rotate(1deg)}
.recognition-photo img{display:block;width:100%;height:auto;aspect-ratio:1.9;object-fit:cover;object-position:50% 40%;border:1px solid #b0aa99}
.recognition-photo figcaption{padding:13px 8px 11px;text-align:center;line-height:1.4}
.recognition-photo figcaption>span{display:block;font:italic 15px/1.4 var(--serif)}
.recognition-photo figcaption>a{display:inline-flex;align-items:center;min-height:32px;font:9px/1.5 var(--sans);color:var(--muted);text-underline-offset:3px}
.recognition-photo figcaption>a:hover{color:var(--ink)}
@media(max-width:720px){.recognition-photo{margin:26px auto 25px;padding:8px 8px 0}.recognition-photo figcaption{padding:12px 3px 8px}.recognition-photo figcaption>span{font-size:14px}.recognition-photo img{aspect-ratio:1.65}}

/* Shared copyright footer, beneath the existing footer content. */
.site-footer{display:block}
.footer-top{display:flex;align-items:center;justify-content:space-between;gap:25px}
.footer-copyright{border-top:1px solid var(--line);margin-top:14px;padding-top:10px;text-align:center;font-size:11px;line-height:1.8}
.footer-copyright a{display:inline-flex;align-items:center;min-height:44px;color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.footer-copyright a:hover{color:#6b498d}
@media(max-width:720px){.footer-top{flex-direction:column;gap:7px}.footer-copyright{margin-top:14px;font-size:11px}.copyright-rights{display:block}}

.copyright-rights{margin-left:5px}
@media(max-width:720px){.copyright-rights{margin-left:0}}

/* Recognition gets the celebration budget. */
:root{--celebrate-green:#137641;--celebrate-light:#c4efaa;--celebrate-ink:#103d27}
.recognize-button{width:min(100%,570px);min-height:98px;padding:24px 30px;font-size:clamp(23px,3vw,34px);font-weight:750;line-height:1.2;background:var(--celebrate-light);color:var(--celebrate-ink);border:2px solid var(--celebrate-ink);box-shadow:7px 7px 0 var(--celebrate-ink)}
.recognize-button:hover{background:#a8e782;box-shadow:4px 4px 0 var(--celebrate-ink)}
.recognize-button span{font-size:37px}
.recognize-note{font-size:11px;margin-top:20px}
.recognition-banner{display:block;padding:0;background:none;border:0;box-shadow:none;transform:none}
.recognized-stamp{width:100%;min-height:120px;padding:20px;background:var(--celebrate-green);color:white;border:5px double #d5f4c1;border-radius:5px;outline:2px solid var(--celebrate-green);font:750 clamp(28px,4vw,43px)/1.15 var(--sans);transform:rotate(-2deg);cursor:pointer}
.recognized-stamp span{display:block;margin-top:9px;font-size:12px;font-weight:400;letter-spacing:.3px}
.recognition .confetti-boost{margin:16px auto 0}
.hug-section{max-width:570px;padding-top:32px;margin-top:44px}
.hug-section .secondary{width:min(100%,440px);min-height:72px;background:var(--paper);border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);font-size:20px;font-weight:600;gap:28px}
.hug-section .secondary:hover{background:var(--pink)}
.confetti-boost{min-height:54px;background:var(--lavender);font-size:14px;padding:16px 22px}
.confetti-boost:hover{background:#b5a2e0}
.recognition-dialog{width:min(94vw,890px);max-height:92dvh;padding:65px 30px 30px;border:0;background:transparent;box-shadow:none;overflow:visible;text-align:center}
.recognition-dialog::backdrop{background:#f5eddaeb;backdrop-filter:blur(2px)}
.recognition-stamp{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:13px;width:100%;min-height:285px;padding:32px 20px;background:var(--celebrate-green);color:#fffdf6;border:9px double #d0efbc;border-radius:8px;outline:5px solid var(--celebrate-green);outline-offset:5px;box-shadow:14px 18px 0 #103d2724;transform:rotate(-6deg);cursor:pointer}
.recognition-stamp>span{font:800 clamp(28px,5vw,56px)/1 var(--sans);letter-spacing:5px}
.recognition-stamp>strong{font:900 clamp(30px,8.1vw,92px)/1 var(--sans);letter-spacing:-3px}
.recognition-stamp>small{font:11px/1.6 monospace;letter-spacing:2px}
.recognition-stamp:hover{background:#0c6636}
.recognition-dialog[open] .recognition-stamp{animation:recognition-impact .65s cubic-bezier(.16,.7,.28,1) both}
.stamp-controls{position:relative;z-index:1;display:flex;align-items:center;flex-direction:column;gap:7px;margin-top:50px}
.stamp-controls>.text-button{font-size:13px;background:var(--bg);padding:12px 14px}
.stamp-close{position:absolute;z-index:2;top:0;right:8px;min-width:48px;min-height:48px;background:var(--paper);color:var(--ink);border:1px solid var(--ink);border-radius:50%;font-size:30px;cursor:pointer}
.dialog-confetti{position:fixed;inset:0;pointer-events:none;z-index:3;overflow:hidden}
.confetti-burst{position:fixed;inset:0;pointer-events:none;overflow:hidden}
@keyframes recognition-impact{0%{opacity:0;transform:translateY(-70px) scale(1.65) rotate(-16deg)}62%{opacity:1;transform:translateY(3px) scale(.95) rotate(-5deg)}82%{transform:translateY(0) scale(1.035) rotate(-7deg)}100%{opacity:1;transform:scale(1) rotate(-6deg)}}
@media(max-width:720px){.recognize-button{min-height:88px;padding:20px 21px;font-size:25px}.recognize-button span{font-size:30px}.hug-section .secondary{min-height:67px;font-size:18px}.recognition-dialog{padding:65px 12px 24px}.recognition-stamp{min-height:215px;padding:28px 7px;border-width:7px;gap:14px;outline-width:3px;outline-offset:3px}.recognition-stamp>strong{letter-spacing:-1.5px}.recognition-stamp>span{letter-spacing:3px}.recognition-stamp>small{font-size:8px;letter-spacing:1px}.stamp-controls{margin-top:39px}.stamp-controls .confetti-boost{font-size:12px;padding-inline:14px}.confetti-boost{font-size:12px}.recognition>p{margin-top:23px}}
@media(max-height:500px){.recognition-dialog{max-height:92dvh;overflow:auto}.recognition-stamp{min-height:180px}.stamp-controls{margin-top:25px}}
@media(prefers-reduced-motion:reduce){.recognition-dialog[open] .recognition-stamp{animation:none}.recognition-stamp{transform:none}}
