:root{--white:#ffffff;--warm:#f7f4ee;--border:#e3dfd5;--text:#33312c;--text-soft:#6b675d;--blue:#3a5a8c;--blue-deep:#2c4670;--gold:#c08a2d;--gold-text:#8f6a1f;--ease-out-strong:cubic-bezier(0.23,1,0.32,1);--ease-in-out-strong:cubic-bezier(0.77,0,0.175,1)}::selection{background:rgba(192,138,45,.28)}a{text-underline-offset:3px}h1,h2,h3{text-wrap:balance}:focus-visible{outline:2px solid var(--blue);outline-offset:2px;border-radius:4px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Source Sans\ 3,Segoe UI,Noto Sans,Verdana,sans-serif;background:var(--white);color:var(--text);line-height:1.65;font-size:17px;-webkit-font-smoothing:antialiased}.container{max-width:44rem;margin-inline:auto;padding:1.5rem 1.25rem 3rem}.appbar{justify-content:space-between;gap:1rem;padding:.9rem 1.25rem;border-bottom:1px solid var(--border)}.appbar,.appbar-nav{display:flex;align-items:center}.appbar-nav{gap:1.2rem;font-size:.95rem}.appbar-nav a{color:var(--text-soft);text-decoration:none}.appbar-nav a:hover{color:var(--text);text-decoration:underline}.wordmark{font-weight:700;font-size:1.25rem;color:var(--text);text-decoration:none}.wordmark span{color:var(--gold)}.btn{display:inline-block;background:var(--blue);color:#fff;font-weight:600;border:none;cursor:pointer;border-radius:8px;padding:.7rem 1.5rem;font-size:1rem;font-family:inherit;text-decoration:none;transition:background .2s ease,transform .14s var(--ease-out-strong)}@media (hover:hover) and (pointer:fine){.btn:hover{background:var(--blue-deep)}}.btn:active{transform:scale(.97)}.btn-quiet{transition:background .2s ease,transform .14s var(--ease-out-strong)}.btn-quiet:active{transform:scale(.97)}.btn:disabled{background:var(--border);color:var(--text-soft);cursor:default}.btn-quiet{display:inline-block;background:transparent;color:var(--blue);font-weight:600;border:1.5px solid var(--blue);border-radius:8px;padding:.65rem 1.4rem;cursor:pointer;font-family:inherit;text-decoration:none}.card{background:var(--white);border:1px solid var(--border);border-radius:10px;padding:1.6rem 1.5rem;margin-block:1rem}.card.warm{background:var(--warm)}.label{display:block;font-weight:600;margin:1.1rem 0 .3rem;font-size:.98rem}.input,.select,.textarea{width:100%;font-family:inherit;font-size:1rem;color:var(--text);background:var(--white);border:1px solid var(--border);border-radius:8px;padding:.65rem .8rem;caret-color:var(--blue);transition:border-color .15s ease,box-shadow .15s ease}.input:focus-visible,.select:focus-visible,.textarea:focus-visible{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(58,90,140,.14)}.textarea{min-height:8rem;resize:vertical}.muted{color:var(--text-soft);font-size:.95rem}.scripture-quote{font-family:Georgia,Times New Roman,serif;font-style:italic;color:var(--text-soft)}h1.page{font-size:1.7rem;font-weight:700;margin-bottom:.4rem}.candle-row{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap;margin:1.4rem 0 .6rem}@keyframes breathe{0%,to{transform:scale(1)}50%{transform:scale(1.14)}}.flame-breathe{transform-origin:50% 80%;animation:breathe 3.2s ease-in-out infinite}@keyframes kindle{0%{opacity:0;transform:scale(.85) translateY(2px)}to{opacity:1;transform:none}}@keyframes kindle-glow{0%{opacity:0}to{opacity:.5}}.flame-kindle{transform-origin:50% 80%;animation:kindle .42s var(--ease-out-strong) both}.flame-kindle.flame-breathe{animation:kindle .42s var(--ease-out-strong) both,breathe 3.2s ease-in-out .6s infinite}.glow-kindle{animation:kindle-glow .6s ease-out both}@keyframes rise-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.step-enter{animation:rise-in .22s var(--ease-out-strong) both}.rise-1{animation:rise-in .32s var(--ease-out-strong) both}.rise-2{animation:rise-in .32s var(--ease-out-strong) 60ms both}.rise-3{animation:rise-in .32s var(--ease-out-strong) .12s both}.rise-4{animation:rise-in .32s var(--ease-out-strong) .18s both}@media (prefers-reduced-motion:reduce){.flame-breathe,.flame-kindle.flame-breathe{animation:none}.flame-kindle,.glow-kindle,.rise-1,.rise-2,.rise-3,.rise-4,.step-enter{animation:fade-in .2s ease both}.btn-quiet:active,.btn:active{transform:none}}