:root{--cep-ink:#102033;--cep-muted:#667085;--cep-line:rgba(16,32,51,.12);--cep-bg:#fbfaf7;--cep-soft:#f7f2ea;--cep-panel:#fff;--cep-gold:#b78933;--cep-teal:#00a9b4;--cep-green:#70856d;--cep-heart:#b86a58;--cep-shadow:0 18px 48px rgba(16,32,51,.08)}
.cep-app-shell{background:linear-gradient(180deg,#fff 0%,var(--cep-bg) 100%);color:var(--cep-ink);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:100vh}
.cep-app{max-width:1480px;margin:0 auto;background:rgba(255,255,255,.58);box-shadow:0 18px 60px rgba(16,32,51,.08)}
.cep-topbar{height:78px;display:grid;grid-template-columns:280px 1fr 64px;align-items:center;border-bottom:1px solid var(--cep-line);background:rgba(255,255,255,.84);backdrop-filter:blur(12px);padding:0 28px;gap:24px;position:sticky;top:0;z-index:10}
.cep-top-brand{display:flex;align-items:center;gap:14px}.cep-logo-mark{width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--cep-ink);color:#fff;font-weight:900;font-size:.95rem}.cep-top-brand strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:1.2rem;line-height:1.1}.cep-top-brand span{display:block;color:var(--cep-muted);font-size:.82rem;margin-top:2px}
.cep-top-nav{display:flex;justify-content:center;gap:18px;height:100%;align-items:center}.cep-top-nav a{height:100%;display:flex;align-items:center;color:var(--cep-ink);text-decoration:none;font-weight:650;padding:0 10px;border-bottom:2px solid transparent}.cep-top-nav a:hover,.cep-top-nav a.is-active{border-bottom-color:var(--cep-green);color:#344536}.cep-profile-dot{width:42px;height:42px;border-radius:50%;background:linear-gradient(145deg,#e2c19f,#f6e6d1);display:flex;align-items:center;justify-content:center;font-weight:900;color:var(--cep-ink)}
.cep-layout{display:grid;grid-template-columns:280px minmax(0,1fr) 340px;gap:26px;padding:28px}
.cep-left-nav,.cep-right-rail{display:flex;flex-direction:column;gap:18px}.cep-left-nav,.cep-right-rail{position:sticky;top:106px;align-self:start}
.cep-side-nav,.cep-quote-card,.cep-card{background:rgba(255,255,255,.92);border:1px solid var(--cep-line);border-radius:18px;box-shadow:0 10px 30px rgba(16,32,51,.045)}
.cep-side-nav{padding:12px;display:grid;gap:4px}.cep-side-nav a{display:flex;align-items:center;gap:14px;color:var(--cep-ink);text-decoration:none;padding:12px 14px;border-radius:12px;font-weight:700}.cep-side-nav a span{width:22px;text-align:center;color:var(--cep-muted)}.cep-side-nav a:hover,.cep-side-nav a.is-active{background:rgba(0,169,180,.11);color:#006b73}.cep-side-nav a:hover span,.cep-side-nav a.is-active span{color:#006b73}.cep-divider{height:1px;background:var(--cep-line);margin:2px 10px}.cep-side-nav-secondary{box-shadow:none}
.cep-quote-card{padding:26px;text-align:center;background:linear-gradient(145deg,#fff,#f8f3e8)}.cep-quote-mark{font-family:Georgia,"Times New Roman",serif;font-size:2.4rem;line-height:1;color:var(--cep-ink)}.cep-quote-card p{font-family:Georgia,"Times New Roman",serif;font-size:1.25rem;line-height:1.45;margin:4px 0 12px;color:var(--cep-ink)}.cep-quote-card span{font-size:.82rem;color:var(--cep-muted)}
.cep-main-content{display:grid;gap:22px}.cep-greeting{padding:12px 24px 0}.cep-date{color:var(--cep-muted);margin:0 0 6px}.cep-greeting h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.1rem,3.6vw,3.35rem);line-height:1;letter-spacing:-.04em;margin:0 0 10px;color:var(--cep-ink)}.cep-greeting p:last-child{color:var(--cep-muted);font-size:1.08rem;margin:0}
.cep-hero-card{min-height:310px;border-radius:18px;overflow:hidden;box-shadow:var(--cep-shadow);background:url("images/living-water-hero-clean-v032.png");background-size:cover;background-position:center;display:flex;align-items:end;padding:40px;color:#fff}.cep-hero-card>div{width:100%;max-width:1000px}.cep-hero-card h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2rem,4vw,3.2rem);line-height:1;margin:0 0 14px;color:#fff;text-shadow:0 3px 18px rgba(0,0,0,.72)}.cep-hero-card p{max-width:760px;font-size:1.12rem;line-height:1.6;margin:0 0 24px;color:rgba(255,255,255,.96);text-shadow:0 2px 14px rgba(0,0,0,.72)}.cep-hero-actions{display:flex;justify-content:space-between;align-items:center;gap:18px}.cep-dark-button,.cep-outline-button,.cep-panel-link{display:inline-flex;align-items:center;text-decoration:none;font-weight:800}.cep-dark-button,.cep-outline-button{padding:13px 22px;border-radius:999px;color:#fff!important}.cep-dark-button{background:rgba(16,32,51,.86);border:1px solid rgba(255,255,255,.22)}.cep-dark-button:hover{background:#102033}.cep-outline-button{background:rgba(16,32,51,.38);border:1px solid rgba(255,255,255,.78);backdrop-filter:blur(3px)}.cep-outline-button:hover{background:rgba(16,32,51,.62)}.cep-panel-link{color:#102033!important;margin-top:10px;font-size:.92rem}
.cep-card{padding:24px}.cep-card h2{font-family:Georgia,"Times New Roman",serif;font-size:1.65rem;line-height:1.15;margin:0 0 8px;color:var(--cep-ink)}.cep-card h3{font-size:1.05rem;margin:0 0 8px;color:var(--cep-ink)}.cep-card p,.cep-card small{color:var(--cep-muted);line-height:1.55}.cep-card-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}.cep-card-header a,.cep-card-subtitle{font-size:.9rem;color:#102033;text-decoration:none;font-weight:750}.cep-card-subtitle{color:var(--cep-muted)}
.cep-invitation-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--cep-line);border-radius:16px;overflow:hidden}.cep-invitation-grid article{padding:20px;text-align:center;border-right:1px solid var(--cep-line);min-height:190px}.cep-invitation-grid article:last-child{border-right:0}.cep-invite-icon{font-size:2rem;margin-bottom:14px}.cep-invitation-grid h3{font-family:Georgia,"Times New Roman",serif;font-size:1.2rem}.cep-invitation-grid p{font-size:.9rem;margin:0 0 12px}.cep-invitation-grid a{font-size:.86rem;color:#102033;text-decoration:none;font-weight:750}
.cep-journal-content{display:grid;grid-template-columns:72px 1fr 220px;gap:20px;align-items:stretch}.cep-journal-date{background:var(--cep-soft);border-radius:12px;align-self:start;text-align:center;padding:12px}.cep-journal-date span{display:block;color:var(--cep-muted);font-size:.72rem;font-weight:800}.cep-journal-date strong{display:block;font-size:1.5rem;font-family:Georgia,"Times New Roman",serif}.cep-journal-lines p{margin:.15rem 0;color:var(--cep-ink);font-size:.94rem}.cep-journal-lines p:nth-child(even){color:var(--cep-muted)}.cep-journal-lines span{display:block;margin-top:12px;color:var(--cep-muted);font-size:.88rem}.cep-journal-image{border-radius:14px;background:url("https://images.unsplash.com/photo-1517842645767-c639042777db?auto=format&fit=crop&w=900&q=80");background-size:cover;background-position:center;min-height:190px}
.cep-practices{padding:0 12px}.cep-practice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.cep-practice-grid article{background:rgba(255,255,255,.72);border:1px solid var(--cep-line);border-radius:16px;padding:14px}.cep-practice-image{height:130px;border-radius:12px;background-size:cover;background-position:center;margin-bottom:14px}.cep-practice-silence{background-image:url("images/lectio-divina-stained-glass.webp")}.cep-practice-lectio{background-image:url("images/lectio-divina-stained-glass.webp")}.cep-practice-living-word{background-image:url("images/living-word-stained-glass.webp")}.cep-practice-presence{background-image:url("images/presence-of-god-stained-glass.webp")}.cep-practice-generosity{background-image:url("images/presence-of-god-stained-glass.webp")}.cep-practice-grid h3{font-family:Georgia,"Times New Roman",serif;font-size:1.15rem;margin:0 0 6px}.cep-practice-grid p{font-size:.9rem;margin:0 0 8px}.cep-practice-grid a{color:#102033;text-decoration:none;font-size:.88rem;font-weight:750}
.cep-closing-quote{background:linear-gradient(145deg,#f1efe7,#fff);border:1px solid var(--cep-line);border-radius:18px;padding:28px 34px;display:grid;grid-template-columns:70px 1fr;gap:18px;align-items:center;margin:0 12px}.cep-closing-quote span{font-size:2.4rem;text-align:center}.cep-closing-quote p{font-family:Georgia,"Times New Roman",serif;font-size:1.45rem;line-height:1.35;margin:0;color:var(--cep-ink)}.cep-closing-quote small{grid-column:2;color:var(--cep-muted)}
.cep-rhythm-card h2,.cep-community-card h2,.cep-upcoming-card h2,.cep-office-card h2{font-family:Georgia,"Times New Roman",serif;font-size:1.5rem;margin:0 0 6px}.cep-rhythm-card>p,.cep-community-card>p{margin:0 0 18px;color:var(--cep-muted)}
.cep-rhythm-list{display:grid;gap:14px}.cep-rhythm-list>div{display:grid;grid-template-columns:32px 1fr 28px;gap:12px;align-items:center}.cep-rhythm-list span{font-size:1.35rem;color:var(--cep-gold)}.cep-rhythm-list strong{display:block;color:var(--cep-ink)}.cep-rhythm-list small{display:block;color:var(--cep-muted)}.cep-rhythm-list em{width:24px;height:24px;border:1px solid var(--cep-line);border-radius:50%;display:flex;align-items:center;justify-content:center;font-style:normal;color:#fff}.cep-rhythm-list .is-complete em{background:var(--cep-green);border-color:var(--cep-green)}
.cep-community-post{display:grid;grid-template-columns:40px 1fr;gap:12px;border-bottom:1px solid var(--cep-line);padding:14px 0}.cep-community-post:last-of-type{border-bottom:0}.cep-avatar{width:38px;height:38px;border-radius:50%;background:linear-gradient(145deg,#e6c6aa,#f8eadd);display:flex;align-items:center;justify-content:center;font-weight:900}.cep-community-post header{display:flex;justify-content:space-between;gap:10px}.cep-community-post p{margin:6px 0;font-size:.92rem;color:var(--cep-ink)}.cep-community-post span{font-size:.82rem;color:var(--cep-heart)}.cep-community-post span a{color:var(--cep-heart);text-decoration:none}.cep-community-post span a:hover{text-decoration:underline}
.cep-upcoming-card div,.cep-office-card div,.cep-office-card .cep-office-row{display:grid;grid-template-columns:34px 1fr;gap:10px;margin:14px 0}.cep-office-card .cep-office-row{text-decoration:none;color:inherit;border-radius:12px;padding:2px 0}.cep-office-card .cep-office-row:hover strong{color:#006b73}.cep-upcoming-card span,.cep-office-card span{font-size:1.3rem;color:var(--cep-gold)}.cep-upcoming-card p,.cep-office-card p{margin:0}.cep-upcoming-card strong,.cep-office-card strong{display:block;color:var(--cep-ink)}.cep-upcoming-card small,.cep-office-card small{display:block;color:var(--cep-muted)}
@media(max-width:1280px){.cep-layout{grid-template-columns:240px minmax(0,1fr)}.cep-right-rail{position:static;grid-column:2;display:grid;grid-template-columns:repeat(2,1fr)}.cep-topbar{grid-template-columns:240px 1fr 64px}}
@media(max-width:980px){.cep-topbar{grid-template-columns:1fr 48px}.cep-top-nav{display:none}.cep-layout{grid-template-columns:1fr}.cep-left-nav,.cep-right-rail{position:static;grid-column:auto}.cep-left-nav{display:none}.cep-right-rail{grid-template-columns:1fr}.cep-invitation-grid{grid-template-columns:1fr 1fr}.cep-invitation-grid article{border-right:0;border-bottom:1px solid var(--cep-line)}.cep-journal-content{grid-template-columns:1fr}.cep-journal-date{width:72px}.cep-journal-image{min-height:220px}.cep-practice-grid{grid-template-columns:1fr}}
@media(max-width:640px){.cep-app{box-shadow:none}.cep-topbar{height:auto;padding:18px}.cep-layout{padding:18px}.cep-greeting{padding:0}.cep-greeting h1{font-size:2.2rem}.cep-hero-card{padding:28px;min-height:260px}.cep-hero-actions{display:grid;grid-template-columns:1fr}.cep-invitation-grid{grid-template-columns:1fr}.cep-card{padding:20px}.cep-closing-quote{grid-template-columns:1fr;margin:0;padding:24px}.cep-closing-quote small{grid-column:auto}.cep-dark-button,.cep-outline-button{width:100%;justify-content:center}}
.cep-prayer-image{background-image:url("images/prayer-reflection-water.png")}

.cep-office-image{display:block;width:100%;max-height:260px;object-fit:cover;object-position:center;border-radius:18px;margin:4px 0 18px;box-shadow:0 12px 28px rgba(16,32,51,.10)}


.cep-initiative-row{display:grid;grid-template-columns:34px 1fr 24px;gap:10px;align-items:center;margin:0;padding:14px 0;text-decoration:none;color:inherit;border-bottom:1px solid var(--cep-line)}
.cep-initiative-row:last-of-type{border-bottom:0}
.cep-initiative-row span{font-size:1.35rem;color:var(--cep-gold)}
.cep-initiative-row p{margin:0}
.cep-initiative-row strong{display:block;color:var(--cep-ink)}
.cep-initiative-row em{font-style:normal;color:var(--cep-ink);font-weight:900;text-align:right}
.cep-initiative-row:hover strong{color:#006b73}


.cep-articles-card h2{font-family:Georgia,"Times New Roman",serif;font-size:1.5rem;margin:0 0 12px}
.cep-article-row{display:grid;grid-template-columns:34px 1fr 24px;gap:10px;align-items:center;margin:0;padding:12px 0;text-decoration:none;color:inherit;border-bottom:1px solid var(--cep-line)}
.cep-article-row:last-of-type{border-bottom:0}
.cep-article-row span{font-size:1.15rem;color:var(--cep-gold)}
.cep-article-row p{margin:0}
.cep-article-row strong{display:block;color:var(--cep-ink)}
.cep-article-row em{font-style:normal;color:var(--cep-ink);font-weight:900;text-align:right}
.cep-article-row:hover strong{color:#006b73}


.cep-connections-card h2{font-family:Georgia,"Times New Roman",serif;font-size:1.5rem;margin:0 0 12px}
.cep-connection-row{display:grid;grid-template-columns:34px 1fr 24px;gap:10px;align-items:center;margin:0;padding:12px 0;text-decoration:none;color:inherit;border-bottom:1px solid var(--cep-line)}
.cep-connection-row:last-of-type{border-bottom:0}
.cep-connection-row span{font-size:1.15rem;color:var(--cep-gold)}
.cep-connection-row p{margin:0}
.cep-connection-row strong{display:block;color:var(--cep-ink)}
.cep-connection-row em{font-style:normal;color:var(--cep-ink);font-weight:900;text-align:right}
.cep-connection-row:hover strong{color:#006b73}


/* My Prayers page */
.cep-prayer-page{max-width:1180px;margin:0 auto;padding:36px 20px;display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:32px;color:var(--cep-ink)}
.cep-prayer-header{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:22px}
.cep-prayer-header h1{font-family:Georgia,"Times New Roman",serif;font-size:2.7rem;line-height:1.05;margin:0 0 10px;color:var(--cep-ink)}
.cep-prayer-header p:not(.cep-eyebrow){max-width:680px;font-size:1.05rem;line-height:1.6;color:var(--cep-muted);margin:0}
.cep-eyebrow{font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;color:var(--cep-gold);font-weight:800;margin:0 0 8px}
.cep-prayer-card{border:1px solid var(--cep-line);border-radius:20px;background:#fff;box-shadow:0 18px 35px rgba(13,31,55,.06);display:grid;grid-template-columns:112px 1fr;gap:20px;padding:22px}
.cep-prayer-date{background:#f7f0e7;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:112px;align-self:start;color:var(--cep-ink)}
.cep-prayer-date span{text-transform:uppercase;font-size:.8rem;font-weight:800;color:var(--cep-muted)}
.cep-prayer-date strong{font-family:Georgia,"Times New Roman",serif;font-size:2.2rem;line-height:1.1}
.cep-prayer-date small{text-transform:uppercase;font-size:.72rem;color:var(--cep-muted)}
.cep-prayer-prompts{display:grid;gap:0}
.cep-prayer-prompt{display:grid;grid-template-columns:52px 1fr;gap:18px;padding:14px 0;border-bottom:1px solid var(--cep-line)}
.cep-prayer-prompt:last-of-type{border-bottom:0}
.cep-prayer-icon{width:38px;height:38px;border-radius:50%;background:#f7f0e7;color:var(--cep-gold);display:flex;align-items:center;justify-content:center;font-size:1.2rem;font-weight:800;margin-top:2px}
.cep-prayer-content label strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:1.15rem;color:var(--cep-ink);margin-bottom:4px}
.cep-prayer-content label span{display:block;color:var(--cep-muted);font-size:.95rem;line-height:1.45;margin-bottom:8px}
.cep-prayer-content textarea{width:100%;border:0;border-bottom:1px solid var(--cep-line);resize:vertical;min-height:54px;font:inherit;color:var(--cep-ink);padding:8px 0;background:transparent;outline:none}
.cep-prayer-content textarea:focus{border-bottom-color:var(--cep-gold)}
.cep-prayer-content textarea::placeholder{color:#9aa4b3}
.cep-email-panel{margin-top:18px;padding:20px;border-radius:18px;background:#fbfaf8;border:1px solid var(--cep-line)}
.cep-email-panel h2{font-family:Georgia,"Times New Roman",serif;font-size:1.45rem;margin:0 0 8px;color:var(--cep-ink)}
.cep-email-panel p{margin:0 0 16px;color:var(--cep-muted);line-height:1.55}
.cep-email-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px}
.cep-email-fields label span{display:block;font-size:.82rem;font-weight:800;color:var(--cep-muted);margin-bottom:6px}
.cep-email-fields input{width:100%;border:1px solid var(--cep-line);border-radius:12px;padding:12px 14px;font:inherit;color:var(--cep-ink)}
.cep-email-panel button{border:0;border-radius:999px;background:var(--cep-ink);color:#fff;padding:12px 20px;font-weight:900;cursor:pointer}
.cep-email-panel button:hover{opacity:.92}
.cep-form-message{border-radius:14px;padding:14px 16px;margin:0 0 18px;font-weight:700}
.cep-form-message-success{background:#edf8ef;color:#23603a;border:1px solid #cfead5}
.cep-form-message-error{background:#fff1f1;color:#8a2b2b;border:1px solid #f0c6c6}
.cep-prayer-aside{display:grid;gap:18px;align-self:start}
.cep-prayer-scripture-card,.cep-prayer-tip-card,.cep-prayer-return-card{border:1px solid var(--cep-line);border-radius:18px;background:#fff;box-shadow:0 14px 30px rgba(13,31,55,.06);overflow:hidden}
.cep-prayer-scripture-card img{width:100%;height:180px;object-fit:cover;display:block}
.cep-prayer-scripture-card blockquote{font-size:1rem;line-height:1.55;margin:18px 18px 10px;color:var(--cep-ink)}
.cep-prayer-scripture-card cite{display:block;margin:0 18px 20px;color:var(--cep-gold);font-style:normal}
.cep-prayer-tip-card,.cep-prayer-return-card{padding:20px}
.cep-prayer-tip-card h2,.cep-prayer-return-card h2{font-family:Georgia,"Times New Roman",serif;margin:0 0 10px;font-size:1.35rem;color:var(--cep-ink)}
.cep-prayer-tip-card p{margin:0;color:var(--cep-muted);line-height:1.55}
.cep-prayer-tip-card span{display:block;text-align:right;color:var(--cep-gold);font-size:1.8rem}
.cep-prayer-return-card a{display:block;color:var(--cep-ink);text-decoration:none;font-weight:800;padding:10px 0;border-top:1px solid var(--cep-line)}
.cep-prayer-return-card a:hover{color:#006b73}
@media (max-width:900px){.cep-prayer-page{grid-template-columns:1fr}.cep-prayer-card{grid-template-columns:1fr}.cep-prayer-date{width:110px}.cep-email-fields{grid-template-columns:1fr}}


/* My Reflections page */
.cep-reflection-page .cep-prayer-icon{color:#6f8f6a}
.cep-reflection-page .cep-email-panel button{background:#213a2c}
.cep-reflection-page .cep-prayer-content textarea:focus{border-bottom-color:#6f8f6a}
