.sol-community,.sol-mission { color:#493444; background:#fcfbf8; font-family:Arial,sans-serif; }
.sol-community { padding:clamp(70px,8vw,130px) 0; }
/* Static paper grain sits above the color and behind the section content. */
.sol-home :is(.sol-latest,.sol-home-paths) { position:relative; isolation:isolate; }
.sol-home .sol-latest::before { content:""; position:absolute; inset:0; z-index:-1; background-image:url('../images/paper-grain.svg'); background-repeat:repeat; background-size:240px 240px; opacity:.07; pointer-events:none; }
.sol-community__shell { width:88%; max-width:1260px; margin-inline:auto; }
.sol-community h2,.sol-mission h1,.sol-mission h2 { color:inherit; font:400 clamp(42px,4.5vw,68px)/1.06 Georgia,serif; letter-spacing:-.045em; margin:0 0 28px; }
.sol-community h2 em,.sol-mission h1 em { font-weight:400; }
.sol-community p,.sol-mission p { font-size:17px; line-height:1.75; margin:0 0 20px; }
.sol-community .sol-community__label,.sol-mission .sol-community__label { font-size:11px; line-height:1.5; font-weight:700; letter-spacing:.15em; text-transform:uppercase; margin-bottom:24px; }
.sol-community__actions { display:flex; flex-wrap:wrap; gap:16px; margin-top:42px; }
.sol-community a.sol-community__button,.sol-mission a.sol-community__button { display:inline-flex; align-items:center; justify-content:space-between; gap:28px; background:#493444; color:#fffaf0; border:1px solid #493444; border-radius:999px; padding:17px 25px; font:700 14px/1.4 Arial,sans-serif; text-decoration:none; transition:background .2s,transform .2s; }
.sol-community a.sol-community__button--outline { background:transparent; color:#493444; }
.sol-community a.sol-community__button:hover,.sol-mission a.sol-community__button:hover { background:#60495a; color:#fffaf0; transform:translateY(-2px); }
/* The cards end in open paper space before the next full-width moment. */
.sol-home .sol-home-paths > .light-four-paths { padding-bottom:clamp(120px,12vw,210px); }
/* Mirror the episode composition: copy left, landscape photograph right. */
.sol-home .sol-desire-feature { display:grid; align-content:center; }
.sol-desire-feature .sol-latest__inner { grid-template-columns:minmax(0,.88fr) minmax(0,1.25fr); }
.sol-desire-feature .sol-latest__copy { padding-left:0; padding-right:clamp(0px,2vw,28px); }
.sol-desire-feature h2 span { display:block; }
.sol-desire-feature h2 span:last-child { padding-left:.3em; }
.sol-desire-feature__photo { width:100%; aspect-ratio:16/9; overflow:hidden; border-radius:4px; margin:0; box-shadow:0 15px 40px #49344412; }
.sol-desire-feature__photo img { display:block; width:100%; height:100%; object-fit:cover; object-position:center 42%; }
@media(max-width:700px){
 .sol-home .sol-home-paths > .light-four-paths { padding-bottom:95px; }
 .sol-desire-feature .sol-latest__inner { grid-template-columns:1fr; }
 .sol-desire-feature .sol-latest__copy { justify-self:start; padding:0; }
}
.sol-featured-reading .sol-community__shell { width:90%; max-width:1660px; }
.sol-featured-reading__heading { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:16px; margin-bottom:28px; }
.sol-community .sol-featured-reading__heading h2 { font:400 clamp(28px,2.5vw,40px)/1.2 Georgia,serif; letter-spacing:-.035em; margin:0; }
.sol-featured-reading__all { display:inline-flex; align-items:center; gap:16px; min-height:44px; color:#685564; font-size:14px; }
.sol-featured-reading__all span { font-size:24px; line-height:1; }
.sol-featured-reading__all:hover { text-decoration:underline; text-underline-offset:5px; }
.sol-featured-reading__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:stretch; gap:clamp(18px,1.5vw,28px); }
.sol-featured-reading__card { display:block; position:relative; width:100%; aspect-ratio:3/4; overflow:hidden; border-radius:20px; color:#fff; background:#493444; }
.sol-featured-reading__card img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .35s; }
.sol-featured-reading__card::after { content:''; position:absolute; inset:0; background:linear-gradient(transparent 38%,rgba(19,18,17,.85)); }
.sol-featured-reading__card > div { position:absolute; bottom:0; left:0; right:0; padding:clamp(20px,2vw,32px); z-index:1; }
.sol-featured-reading__card span { color:#fff; font-size:12px; }
.sol-featured-reading__card h3 { color:#fff; font:500 clamp(19px,1.5vw,26px)/1.25 Arial,sans-serif; margin:10px 0 0; letter-spacing:-.025em; }
.sol-featured-reading__card:hover img { transform:scale(1.025); }
.sol-blog-feature__card { width:100%; max-width:none; aspect-ratio:16/9; justify-self:stretch; }
.sol-blog-feature .sol-latest__copy { align-self:center; padding-top:0; }
@media(max-width:700px){.sol-blog-feature .sol-latest__copy{justify-self:stretch;max-width:none}}
.sol-featured-reading__card--soon:hover img { transform:none; }
.sol-featured-reading__card .sol-featured-reading__soon { display:inline-block; padding:5px 11px; border:1px solid #ffffff80; border-radius:999px; background:#49344455; font-size:11px; }
.sol-community a.sol-community__text-link { display:inline-flex; gap:28px; color:#493444; font-size:16px; padding-bottom:6px; margin-top:14px; border-bottom:1px solid; text-decoration:none; }
.sol-community a:focus-visible,.sol-mission a:focus-visible { outline:3px solid #493444; outline-offset:5px; }
.sol-mission { margin:0; }
.sol-mission__hero { background:#C7B5E8; padding:180px 0 90px; }
.sol-mission__hero h1 { max-width:850px; font-size:clamp(48px,6vw,86px); }
.sol-mission__hero p:last-child { max-width:620px; margin-bottom:0; }
.sol-mission__content { max-width:850px; width:88%; margin:auto; padding:80px 0; }
.sol-mission__content section { margin-bottom:65px; scroll-margin-top:35px; }
.sol-mission__content h2 { font-size:clamp(32px,3vw,44px); }
.sol-mission__content h3 { color:inherit; font:700 21px/1.4 Arial,sans-serif; margin:28px 0 12px; }
.sol-mission__prayer { background:#f7da81; padding:clamp(25px,5vw,50px); border-radius:20px; }
.sol-mission__footer { border-top:1px solid #49344430; padding:30px 6%; display:flex; gap:25px; flex-wrap:wrap; justify-content:space-between; }
.sol-mission a { color:inherit; }
@media(max-width:760px){
 .sol-featured-reading__grid { grid-template-columns:1fr; gap:24px; }
 .sol-community__actions{margin-top:28px;}
 .sol-featured-reading__card:not(.sol-blog-feature__card){max-width:520px;justify-self:center;}
 .sol-community p,.sol-mission p{font-size:16px;}
 .sol-mission__hero{padding:145px 0 65px;}
}
@media(prefers-reduced-motion:reduce){.sol-community a,.sol-community img{transition:none;}}
