
:root{--plum:#39243f;--deep:#302038;--ink:#392b3e;--ivory:#fffaf2;--lav:#f1e7ef;--accent:#68446f}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;width:100%;min-width:0;background:var(--plum);color:var(--ink);font:17px/1.7 "DM Sans",sans-serif}button,input,textarea{font:inherit}button{cursor:pointer}a{color:var(--accent);text-underline-offset:3px}:focus-visible{outline:3px solid #82598c;outline-offset:3px}.hidden{display:none!important}
.shell{width:100%;padding:0 16px;background:radial-gradient(ellipse at 50% 20%,#594160,#39243f 65%,#302038)}.paper{position:relative;isolation:isolate;width:100%;max-width:1140px;margin:auto;background:var(--ivory);box-shadow:0 0 75px #1b102045;overflow:hidden}.paper:before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(ellipse at top left,#f2e8ef,transparent 34%),radial-gradient(ellipse at bottom right,#f0e6ed,transparent 32%);pointer-events:none}
.inner{position:relative;z-index:2;max-width:850px;margin:auto}.masthead{text-align:center;padding:48px 20px 18px}.eyebrow,.kicker,.small-label{font-size:12px;letter-spacing:.14em;text-transform:uppercase}.eyebrow{margin:0;font-weight:700;color:#795783}.title{margin:10px auto 12px;font:400 clamp(36px,5vw,57px)/1.14 Fraunces,serif;color:var(--plum)}.title-line{display:block;font:inherit}.title-italic{font-style:italic;color:#795783}.intro{max-width:600px;margin:0 auto 9px}.motion-button{min-height:44px;margin:9px auto 0;border:1px solid #d7bfd6;border-radius:30px;background:var(--ivory);padding:8px 16px;color:#513259}
.psalm-feature{position:relative;z-index:2;max-width:760px;margin:14px auto 24px;padding:23px 36px 24px;text-align:center;background:linear-gradient(105deg,#eee0ec,#fffaf2 42%,#f0e4ee);border-top:1px solid #d5bfd4;border-bottom:1px solid #d5bfd4}.psalm-feature blockquote{font:italic 400 clamp(26px,4vw,37px)/1.25 Fraunces,serif;margin:5px 0;color:var(--plum)}.psalm-feature p{margin:5px 0}.psalm-feature a{display:inline-block;min-height:44px;padding:8px}
.nav-wrap{position:relative;z-index:5;border-block:1px solid #eadde8}.nav-inner{max-width:1060px;margin:auto;padding:9px 16px}.nav-list{display:flex;justify-content:center;flex-wrap:wrap;gap:2px}.nav-button{border:0;border-radius:6px;background:transparent;color:var(--plum);font-size:14px;font-weight:600;padding:10px;min-height:44px}.nav-button:hover,.nav-button[aria-current=page]{background:#eee1ed}.menu-button{display:none}
.view{position:relative;z-index:2;padding:28px 25px 100px}.garden-heading,.section-title,.panel-title,.reading-title{font-family:Fraunces,serif;font-weight:400;color:var(--plum);line-height:1.2}.garden-heading{text-align:center;margin:0 0 20px}.section-title{margin:0 0 12px}.panel-title{margin:0 0 22px}.short-intro{max-width:700px;margin:0 0 22px}.choice-grid,.feeling-grid,.song-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.choice,.feeling-button{min-width:0;min-height:62px;border:1px solid #d9c6d9;border-radius:10px;background:#f5edf3;text-align:left;color:var(--deep);padding:12px 16px;font-weight:600;overflow-wrap:anywhere}.choice:hover,.feeling-button:hover{background:#ebe0ed;border-color:#ab8bad}
.action-row,.email-options{display:flex;flex-wrap:wrap;gap:10px;margin:21px 0}.primary,.secondary,.back,.small-action{border:0;border-radius:7px;padding:11px 18px;min-height:46px;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;text-align:center}.primary,.back{background:#68446f;color:#fff}.secondary,.small-action{background:#eee1ed;color:#39243f}.primary:hover,.back:hover{background:#513259}.secondary:hover,.small-action:hover{background:#dfcce0}.small-action{font-size:15px}.more-wrap{text-align:center;margin:18px 0}
.panel,.reading-panel{max-width:740px;margin:auto}.prayer,.source-prayer{white-space:pre-line;line-height:1.78;font-size:18px;margin:0 0 22px}.source-prayer{padding:22px 24px;border-left:3px solid #98749e;background:#fffdf9;overflow-wrap:anywhere}.reading-title{margin:0 0 16px}.scripture-box,.soft-panel{border-left:3px solid #98749e;background:#f1e7ef;padding:18px 21px;margin:0 0 20px}.small-label{display:block;font-weight:700}.reference{font-family:Fraunces,serif;font-size:21px}.reflection{margin-bottom:20px}
.scripture-card{max-width:720px;margin:25px auto 0;padding:25px;border:1px solid #d9c6d9;border-radius:12px;background:#fffdf9;box-shadow:0 10px 30px #39243f0b}.scripture-quote{font:400 clamp(21px,3vw,28px)/1.5 Fraunces,serif;margin:14px 0}.scripture-card a{display:inline-block;min-height:44px;padding:7px 0}.note{font-size:15px;color:#624f66}.step-picker{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.step-picker button{border:1px solid #cfb9d0;background:#f5edf3;border-radius:7px;padding:9px 12px;min-height:44px}.step-picker button[aria-current=step]{background:#68446f;color:white}.step-panel{max-width:750px;border-top:1px solid #e2d2e2;padding-top:17px}.step-panel h3,.lesson summary,.song h3{font-family:Fraunces,serif;color:var(--plum)}.step-panel h3{font-size:28px}.lesson{border-bottom:1px solid #e5d7e5;padding:3px 0}.lesson summary{cursor:pointer;min-height:52px;padding:11px 4px;font-size:21px}.lesson-body{max-width:740px;padding:0 6px 17px}.song{padding:20px;border:1px solid #e0d1df;border-radius:10px;background:#fffdf9}.song h3{font-size:23px;margin:0 0 5px}.song p{margin:7px 0}.song a{display:inline-block;min-height:44px;padding:9px 0}.story-copy{max-width:740px}.story-copy p{margin:0 0 17px}.footer{position:relative;z-index:2;border-top:1px solid #e4d6e3;padding:18px;text-align:center}.creator{position:relative;z-index:2;max-width:850px;margin:0 auto 25px;padding:24px;border-top:1px solid #e4d6e3;text-align:center}.creator h2{font:400 25px Fraunces,serif;color:var(--plum)}
.botanical,.butterfly{position:absolute;z-index:1;pointer-events:none;aria-hidden:true}.botanical{fill:none}.upper{width:240px;right:0;top:0;opacity:.75}.lower-left{width:300px;left:0;top:270px;opacity:.85}.lower-right{width:205px;right:0;top:505px;opacity:.7}.butterfly{width:var(--size,75px);height:auto;transform:rotate(var(--angle,0deg));opacity:.88}.butterfly svg{width:100%;overflow:visible}.wing-left{transform-origin:50% 50%;animation:wing 2.5s ease-in-out infinite}.wing-right{transform-origin:50% 50%;animation:wing 2.5s ease-in-out infinite reverse}.b1{--size:165px;--angle:-12deg;right:2%;top:135px;animation:drift 15s ease-in-out infinite}.b2{--size:73px;--angle:18deg;left:9%;top:48px}.b3{--size:59px;--angle:-18deg;right:20%;top:27px}.b4{--size:62px;left:5%;top:475px}.b5{--size:54px;right:7%;top:640px;animation:drift 17s ease-in-out infinite reverse}.b6{--size:69px;left:3%;bottom:470px}.b7{--size:56px;right:8%;bottom:120px}.sway{transform-origin:bottom center;animation:sway 11s ease-in-out infinite}@keyframes sway{50%{transform:rotate(1.5deg)}}@keyframes drift{50%{translate:18px -13px}}@keyframes wing{50%{transform:scaleX(.68)}}.motion-off *,.motion-off *:before,.motion-off *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
.status{min-height:24px;margin:10px 0}.email-address{font-weight:700;overflow-wrap:anywhere}.form-field{margin:15px 0}.form-field label{display:block;font-weight:600}.form-field input,.form-field textarea{display:block;width:100%;border:1px solid #bda8be;border-radius:7px;background:#fffdf9;padding:12px;font-size:16px}.form-field textarea{min-height:150px;resize:vertical}.check-row{display:flex;gap:10px;margin:16px 0}.check-row input{width:20px;height:20px;flex:none}.check-row label{line-height:1.5}
@media(max-width:700px){.menu-button{display:block;width:100%;min-height:44px;text-align:left;border:1px solid #d9c6d9;background:#f5edf3;border-radius:7px;padding:9px 14px;font-weight:600}.nav-list{display:none;flex-direction:column;align-items:stretch;padding:7px 0}.nav-list.open{display:flex}.nav-button{text-align:left;white-space:normal}.upper{width:155px}.lower-left{width:180px;top:335px}.lower-right{width:125px;top:520px}.b1{--size:112px;top:150px;right:0}.b2{--size:48px;left:1%;top:30px}.b3,.b4,.b5{display:none}.b6{--size:44px;left:0}.b7{--size:43px;right:0}}
@media(max-width:600px){.shell{padding:0}.paper{box-shadow:none}.masthead{padding:29px 18px 15px}.title{font-size:clamp(34px,9vw,43px)}.intro{max-width:270px}.psalm-feature{margin:12px 17px 18px;padding:19px 25px}.view{padding:25px 18px 85px}.choice-grid,.feeling-grid,.song-grid{grid-template-columns:minmax(0,1fr)}.action-row,.email-options{flex-direction:column;align-items:stretch}.source-prayer{padding:17px}.prayer,.source-prayer{font-size:17px}.scripture-card{padding:19px}.step-picker{display:grid;grid-template-columns:1fr 1fr}.step-picker button{text-align:left}.botanical{opacity:.4}}
@media(max-width:350px){.step-picker{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
