/* Styles for the inner pages. The pages are WordPress blocks carrying these class names, so the same
   rules dress the public page (.ps-content) and the block editor (.editor-styles-wrapper). */
:is(.ps-content,.editor-styles-wrapper){font-size:18px;line-height:1.65}
:is(.ps-content,.editor-styles-wrapper) *{box-sizing:border-box}
/* The page editor: no width cap of its own, rows stay rows, and the page title sits like a label above the page. */
.editor-styles-wrapper .wp-block{max-width:none}
.editor-styles-wrapper .wp-block-group__inner-container{display:contents}
.editor-styles-wrapper .wp-block-post-title{max-width:1180px;margin:24px auto;padding:0 40px;font-family:system-ui,sans-serif;font-size:28px}
:is(.ps-content,.editor-styles-wrapper) a:not(.wp-block-button__link){color:var(--ps-accent)}
:is(.ps-content,.editor-styles-wrapper) p{margin:0 0 16px}
:is(.ps-content,.editor-styles-wrapper) figure.wp-block-image{margin:0}
:is(.ps-content,.editor-styles-wrapper) h2{font-family:var(--ps-head);font-weight:700;font-size:clamp(28px,3.4vw,40px);line-height:1.15;margin:0 0 16px}
:is(.ps-content,.editor-styles-wrapper) h3{font-family:var(--ps-head);font-weight:700;font-size:22px;line-height:1.25;margin:0 0 8px}
/* blocks a church adds outside one of our sections still get page margins */
.ps-content>:not(.ps-sec){max-width:760px;margin-left:auto;margin-right:auto;padding-left:20px;padding-right:20px}
.ps-content>:not(.ps-sec):first-child{margin-top:56px}
.ps-content>:not(.ps-sec):last-child{margin-bottom:56px}
.ps-sec{padding:68px 40px;margin:0}
.ps-sec.tint{background:var(--ps-tint)}
.ps-sec.dark{background:var(--ps-dark);color:#fff}
.ps-sec.accent{background:var(--ps-accent);color:#fff}
.ps-sec.dark a:not(.wp-block-button__link),.ps-sec.accent a:not(.wp-block-button__link){color:inherit}
.ps-in{max-width:1100px;margin:0 auto}
.ps-in.narrow{max-width:760px}
.ps-center{text-align:center}
.ps-lead{font-size:22px;line-height:1.5}
.ps-kicker{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ps-accent);margin:0 0 10px!important}
.ps-sec.dark .ps-kicker,.ps-sec.accent .ps-kicker,.ps-feature .ps-kicker{color:inherit;opacity:.85}
.wp-block-columns.ps-split{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center;margin:0}
.wp-block-columns.ps-split.top{align-items:start}
.ps-split>.wp-block-column{min-width:0;margin:0}
.ps-split img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--ps-radius);display:block}
.ps-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;margin-top:32px}
.ps-card{background:var(--ps-card);color:var(--ps-cardtext);border:1px solid var(--ps-line);border-radius:var(--ps-radius);overflow:hidden;margin:0}
.ps-card img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block}
.ps-card>:not(figure){margin-left:24px!important;margin-right:24px!important}
.ps-card>figure+*,.ps-card>:first-child:not(figure){margin-top:22px!important}
.ps-card>:last-child{margin-bottom:26px!important}
.ps-staff{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.ps-staff img{aspect-ratio:1/1}
.ps-pos-40-30 img{object-position:40% 30%}.ps-pos-50-20 img{object-position:50% 20%}.ps-pos-55-25 img{object-position:55% 25%}.ps-pos-88-30 img{object-position:88% 30%}
.ps-role{font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ps-accent);margin-bottom:10px!important}
:is(.ps-content,.editor-styles-wrapper) .wp-block-buttons{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0 0}
.ps-center .wp-block-buttons{justify-content:center}
:is(.ps-content,.editor-styles-wrapper) .wp-block-button{margin:0}
:is(.ps-content,.editor-styles-wrapper) .wp-block-button__link{display:inline-block;background:var(--ps-accent);color:#fff;text-decoration:none;padding:14px 26px;border-radius:var(--ps-radius);font-weight:700;font-size:14px;line-height:1.4;letter-spacing:.08em;text-transform:uppercase;border:0}
:is(.ps-content,.editor-styles-wrapper) .wp-block-button.is-style-outline .wp-block-button__link{background:transparent;color:inherit;border:1.5px solid currentColor;padding:12.5px 26px}
:is(.ps-sec.accent,.ps-sec.dark,.ps-feature) .wp-block-button:not(.is-style-outline) .wp-block-button__link{background:#fff;color:#16181d}
.ps-rows{margin:28px 0 0;padding:0;border-top:1px solid var(--ps-line)}
.ps-row{display:grid;grid-template-columns:96px 1fr;gap:6px 28px;padding:20px 0;margin:0;border-bottom:1px solid var(--ps-line);align-items:center}
.ps-row p{margin:0!important}
.ps-row>*{margin:0}
.ps-date{font-family:var(--ps-head);font-weight:700;color:var(--ps-accent);line-height:1.1;font-size:15px;letter-spacing:.08em;text-transform:uppercase}
.ps-date strong{display:block;font-size:34px;letter-spacing:0}
.ps-meta{font-size:15px;opacity:.75}
.ps-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:28px;margin-top:28px}
.ps-facts>p{border-top:3px solid var(--ps-accent);padding-top:14px;margin:0!important}
.ps-sec.accent .ps-facts>p,.ps-sec.dark .ps-facts>p{border-color:rgba(255,255,255,.6)}
.ps-facts strong{display:block;font-family:var(--ps-head);font-size:22px;line-height:1.25;margin-bottom:4px}
.ps-quote{font-family:var(--ps-head);font-size:clamp(22px,2.6vw,30px);line-height:1.4;margin:0 0 14px!important}
.ps-feature{position:relative;color:#fff;border-radius:var(--ps-radius);overflow:hidden;min-height:400px;display:flex;align-items:flex-end;background:var(--ps-dark);margin:0}
.ps-feature>figure{position:absolute;inset:0;margin:0}
.ps-feature>figure img{width:100%;height:100%;object-fit:cover;display:block}
.ps-feature>figure:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.2),rgba(0,0,0,.78))}
.ps-feature .b{position:relative;z-index:1;padding:40px;max-width:720px;margin:0}
.ps-feature h2{margin:4px 0 8px}
.ps-list{margin:0 0 16px;padding-left:22px}
.ps-list li{margin-bottom:8px}
/* sermons, events and giving, when a church turns them on */
.ps-videos{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-top:28px}
.ps-video{display:block;text-decoration:none;color:inherit!important}
.ps-video img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:var(--ps-radius);display:block;background:#000}
.ps-video b{display:block;font-family:var(--ps-head);font-size:19px;line-height:1.3;margin-top:12px}
.ps-video span{font-size:15px;opacity:.75}
.ps-give{display:inline-block;background:var(--ps-accent);color:#fff!important;text-decoration:none;padding:16px 32px;border-radius:var(--ps-radius);font-weight:700;font-size:15px;letter-spacing:.08em;text-transform:uppercase}
@media(max-width:760px){.ps-sec{padding:46px 20px}.wp-block-columns.ps-split{grid-template-columns:1fr;gap:26px}.ps-row{grid-template-columns:74px 1fr;gap:6px 16px}.ps-feature .b{padding:26px}}
