/* Brand: an open task frame and a check that breaks out of it. */
.brand-lockup{gap:9px;letter-spacing:-.035em}.brand-mark{width:38px;height:38px;flex:none;display:block;fill:none;stroke:var(--purple);stroke-width:9;stroke-linecap:round;stroke-linejoin:round}.brand-type{display:flex;flex-direction:column;align-items:flex-start;gap:3px;font-size:11px;font-weight:800;line-height:1;letter-spacing:.015em}.brand-type .brand-done{font-size:18px;font-weight:850;letter-spacing:-.065em;color:var(--purple)}.brand-period{color:var(--ink)}.footer-wordmark.brand-lockup{gap:8px}.footer-wordmark .brand-mark{width:29px;height:29px}.header-actions{display:flex;align-items:center;gap:12px;flex:none}.site-header nav{margin-right:16px;gap:25px}.install-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:10px 12px;min-height:43px;border:1px solid #e1d8ec;border-radius:9px;background:transparent;color:#65576f;font-size:11px;font-weight:600;white-space:nowrap;transition:background .2s,border-color .2s}.install-button:hover{background:var(--lavender);border-color:#cdb9eb}.install-button .icon{width:16px;height:16px}.footer-install{border:0;background:transparent;color:inherit;font-size:10px;display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0}.footer-install:hover{color:var(--purple)}.footer-install .icon{width:13px;height:13px}[hidden]{display:none!important}

/* Content stays visible without JavaScript and when reduced motion is selected. */
.hero-line{display:block;white-space:nowrap}.hero-word{display:inline-block;white-space:nowrap}.hero-letter{display:inline-block;transform-origin:50% 75%;vertical-align:baseline}.hero-space{display:inline-block;width:.25em;font-size:inherit;letter-spacing:0}.hero h1{font-kerning:none}.intro-playing .hero-letter{animation:letter-assemble 2000ms cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--delay,0ms) * 2)}.intro-playing .hero-period{animation-name:period-land;animation-duration:1600ms}.intro-playing .hero-eyebrow{animation:gentle-in 700ms ease both;animation-delay:100ms}.intro-playing .hero-subtitle{animation:gentle-in 800ms ease both;animation-delay:750ms}.intro-playing .hero-explanation{animation:gentle-in 800ms ease both;animation-delay:880ms}.intro-playing .hero-button{animation:gentle-in 750ms ease both;animation-delay:980ms}.intro-playing .hero-reassurance{animation:gentle-in 750ms ease both;animation-delay:1080ms}.intro-playing .hero-footer{animation:gentle-in 900ms ease both;animation-delay:1150ms}.intro-playing .logo-frame{animation:logo-draw 1000ms cubic-bezier(.2,.7,.2,1) both;stroke-dasharray:1;animation-delay:120ms}.intro-playing .logo-tick{animation:logo-draw 700ms cubic-bezier(.2,.7,.2,1) both;stroke-dasharray:1;animation-delay:680ms}.reveal-pending{opacity:0;transform:translate3d(0,25px,0);transition:opacity 750ms ease,transform 750ms cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}.reveal-pending.is-visible,.reveal-pending:focus-within{opacity:1;transform:none}.intro-playing .hero-button:focus-visible{animation:none;opacity:1;transform:none}
@keyframes letter-assemble{0%{opacity:0;transform:translate(var(--x),var(--y)) rotate(var(--r)) scale(.88);filter:blur(5px)}65%{opacity:1;filter:blur(0)}100%{opacity:1;transform:translate(0,0) rotate(0) scale(1);filter:blur(0)}}
@keyframes period-land{0%{opacity:0;transform:translate(.1em,-.65em) scale(.65)}68%{opacity:1;transform:translate(0,.045em) scale(1.08)}100%{opacity:1;transform:translate(0,0) scale(1)}}
@keyframes gentle-in{from{opacity:0;transform:translate3d(0,13px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@keyframes logo-draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}

/* Installation is a small optional utility, not a second product flow. */
.install-dialog{width:min(450px,calc(100% - 36px));max-height:calc(100dvh - 48px);padding:36px;border:1px solid var(--line);border-radius:26px;background:#fff;color:var(--ink);box-shadow:0 24px 90px #24152c28;overflow:auto;overscroll-behavior:contain}.install-dialog::backdrop{background:rgba(36,26,48,.28);backdrop-filter:blur(5px)}.dialog-close{position:absolute;right:15px;top:15px;display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:50%;background:#f5f1f9;color:#746982}.dialog-close:hover{background:#ece4f5}.dialog-close .icon{width:18px;height:18px}.install-app-icon{display:block;width:68px;height:68px;margin-bottom:22px;border-radius:17px}.install-dialog>.eyebrow{font-size:9px;margin-bottom:12px}.install-dialog h2{font-size:37px;line-height:1.08;letter-spacing:-.055em}.install-dialog>p:not(.eyebrow){font-size:13px;line-height:1.75;color:var(--muted);margin-top:16px}.install-instructions{margin-top:24px;padding:19px;background:#f7f3fc;border:1px solid #e9e0f3;border-radius:13px}.install-instructions h3{font-size:13px;font-weight:650;letter-spacing:-.02em}.install-instructions ol{padding-left:18px;margin:12px 0 0;font-size:12px;line-height:1.8;color:#6b5e79}.install-instructions li+li{margin-top:8px}.install-instructions li::marker{color:var(--purple);font-weight:700}.install-dialog>.button{width:100%;margin-top:20px;min-height:48px;font-size:12px}.install-dialog>.install-small{font-size:10px!important;margin-top:19px!important;text-align:center}.install-feedback:empty{display:none}.network-notice{position:fixed;bottom:max(16px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);z-index:25;background:#2c2338;color:white;padding:13px 19px;border-radius:12px;width:min(490px,calc(100% - 32px));font-size:12px;line-height:1.6;box-shadow:0 8px 32px #1d142324}body{padding-bottom:env(safe-area-inset-bottom)}
@media(max-width:950px) and (min-width:761px){.site-header nav{gap:18px;margin-right:0}.install-button{padding-inline:11px}.install-button>span{display:none}.header-actions{gap:9px}}
@media(max-width:760px){.brand-mark{width:33px;height:33px}.brand-type{font-size:10px;gap:3px}.brand-type .brand-done{font-size:16px}.header-actions{gap:8px}.install-button{width:37px;min-height:39px;padding:9px;border-radius:9px}.install-button>span{display:none}.hero-space{width:.24em}.footer-links{flex-wrap:wrap;column-gap:18px}.footer-install{font-size:10px;min-height:35px}.install-dialog{padding:29px 25px;border-radius:22px}.install-dialog h2{font-size:33px}}
@media(max-width:380px){.brand-lockup{gap:6px}.brand-mark{width:31px;height:31px}.brand-type{font-size:9px}.brand-type .brand-done{font-size:15px}.header-actions{gap:6px}.header-actions .button-small{font-size:10px;padding:10px;gap:6px}.install-button{width:34px;min-height:37px}.install-button .icon{width:15px}.hero h1{font-size:15.3vw}.footer-wordmark.brand-lockup{gap:5px}.footer-wordmark .brand-mark{width:24px;height:24px}}
@media(display-mode:standalone){.install-button,.footer-install{display:none!important}.site-header{padding-top:env(safe-area-inset-top)}html{scroll-padding-top:calc(104px + env(safe-area-inset-top))}}
@media(prefers-reduced-motion:reduce){.intro-playing .hero-letter,.intro-playing .hero-eyebrow,.intro-playing .hero-subtitle,.intro-playing .hero-explanation,.intro-playing .hero-button,.intro-playing .hero-reassurance,.intro-playing .hero-footer,.intro-playing .logo-frame,.intro-playing .logo-tick{animation:none!important;opacity:1;transform:none;filter:none;stroke-dashoffset:0}.reveal-pending{opacity:1;transform:none;transition:none!important}}
