/* Bolder use of the approved Confluence palette. Facts and station geometry stay in the base components. */
:root{--display-bold:80px;--heading-bold:42px;--reading-on-brand:#fff;--focus-on-color:#fff}
.site-header{border-bottom:1px solid var(--brand)}
.identity{font-size:23px;line-height:30px}
.site-header nav a[aria-current]{text-decoration-thickness:3.2px;text-underline-offset:8px}
h1{font-size:64px;line-height:70px;letter-spacing:-.025em}
.brand-intro{background:var(--brand);color:var(--reading-on-brand)}
.brand-intro .page-intro{padding-block:72px;gap:28px}
.brand-intro h1{color:var(--reading-on-brand);max-width:1000px}
body[data-route='/'] .brand-intro h1{font-size:var(--display-bold);line-height:84px;max-width:1030px}
.brand-intro .intro-copy{font-size:22px;line-height:34px;max-width:760px}
.brand-intro .page-intro>p:not(.meta){font-size:21px;line-height:33px}
.brand-intro .meta,.brand-intro .pastoral-quote figcaption,.brand-intro .pastoral-quote a{color:var(--reading-on-brand)}
.brand-intro .meta{font-size:16px;line-height:24px}
.brand-intro .pastoral-quote{max-width:820px}
.brand-intro .pastoral-quote blockquote{font-size:25px;line-height:37px}
.brand-intro .pastoral-quote figcaption{font-size:14px;line-height:23px;max-width:800px}
.brand-intro .button{min-height:52px;background:var(--surface);border-color:var(--surface);color:var(--brand)}
.brand-intro .button:hover{background:var(--surface-subtle);border-color:var(--surface-subtle)}
.brand-intro .button.secondary{background:transparent;color:var(--reading-on-brand);border-color:var(--surface)}
.brand-intro .button.secondary:hover{background:var(--surface);color:var(--brand)}
.brand-intro :focus-visible,.scripture-section :focus-visible,.selected-session :focus-visible{outline-color:var(--focus-on-color)}
.brand-intro ::selection,.scripture-section ::selection{background:var(--surface);color:var(--brand)}
.coming-up{padding-block:72px;gap:72px;grid-template-columns:280px minmax(0,1fr)}
.coming-intro h2,.renewal-home>h2,.next-step>h2,.planning-band>.stack>h2{font-size:var(--heading-bold);line-height:49px;letter-spacing:-.025em}
.coming-intro h2{max-width:240px}
.event-list .event-row{padding:24px 16px}
.event-list .event-date{font-size:25px;line-height:34px;color:var(--label);width:150px}
.event-list .event-title{font-size:21px;line-height:31px}
.event-list .event-info p{font-size:16px;line-height:26px}
.coming-up .quiet{padding-left:16px;text-decoration:underline;text-underline-offset:5px}
.planning-band{background:var(--surface-subtle)}
.planning-band>.section{padding-block:72px}
.renewal-home{gap:28px}
.renewal-home>h2{max-width:900px}
.renewal-home>p{font-size:21px;line-height:32px}
.current-window{padding:24px;gap:24px;background:var(--current-surface)}
.current-window .event-title{font-size:21px;line-height:31px}
.current-window .small-reading{font-size:16px;line-height:26px;color:var(--text)}
.phase-sequence{padding-block:4px 8px}
.phase h3{font-weight:600;font-size:27px;line-height:35px}
.phase-text{gap:14px}
.phase .small-reading{color:var(--text);font-size:16px;line-height:25px}
.planning-band .phase:before{background:var(--rule)}
.planning-band .phase-0:before{background:var(--brand)}
.scripture-section{background:var(--label);color:var(--surface);padding-block:72px}
.scripture{max-width:960px;padding:40px 48px;border-color:var(--surface);gap:24px}
.scripture blockquote{font-size:32px;line-height:46px}
.scripture figcaption,.scripture figcaption a{color:var(--surface);font-size:16px;line-height:24px}
.next-step{padding-block:72px;gap:24px}
.next-step>h2{max-width:780px}
.next-step>p{max-width:780px;font-size:21px;line-height:32px}
.next-step>.info-row{width:100%;padding-block:24px;border-block:1px solid var(--rule)}
.next-step .info-row h3{color:var(--brand);font-size:21px;line-height:29px}
.next-step .meta{font-size:17px;line-height:25px}
.next-step>.quiet{padding-left:0;text-decoration:underline;text-underline-offset:5px}
.initiative-bar{background:var(--surface-subtle);border-bottom-color:var(--rule)}
.initiative-identity>a{font-weight:600}
.road-section{padding-block:64px}
.track-copy h2{font-size:24px;line-height:31px}
.track-copy .small-reading{font-size:16px;line-height:26px;max-width:800px}
.track-copy{padding-bottom:32px}
.road-row{min-height:128px}
.current-row .track-copy{padding:24px}
.current-row h2{font:600 21px/31px var(--font-body)}
.resource-intro{gap:32px}
.resource-intro .reading-section{gap:20px}
.resource-list .info-row{padding-block:24px}
.resource-list h3{font-size:21px;line-height:29px}
body[data-route='/renewal/resources/'] #resources{padding-top:32px}
body[data-route='/renewal/'] #updates{padding-block:64px}
body[data-route='/renewal/'] #updates h2{font-size:42px;line-height:49px}
.directory-intro{background:var(--surface-subtle)}
.directory-status{background:var(--brand);color:var(--surface)}
.directory-search input{border-color:var(--brand)}
.directory-count{color:var(--brand);font-size:21px;line-height:29px}
.parish-name{font-size:24px;line-height:31px;color:var(--brand)}
.parish-name a{color:var(--brand)}
.parish-listing{padding-bottom:28px;margin-bottom:28px}
.parish-detail>.info-row{border-bottom:1px solid var(--rule);padding-block:20px}
.detail-label{color:var(--brand);font-size:18px;line-height:27px}
.selected-session{background:var(--brand);color:var(--surface);padding:32px;gap:20px}
.selected-session .selected-session-date{color:var(--surface);font-size:29px;line-height:38px}
.selected-session .detail-label,.selected-session .meta,.selected-session a,.selected-session .info-row>p{color:var(--surface)}
.selected-session .button{background:var(--surface);color:var(--brand);border-color:var(--surface);min-height:52px}
.selected-session .button:hover{background:var(--surface-subtle);border-color:var(--surface-subtle)}
.event-detail .event-description{font-size:23px;line-height:35px}
.site-footer{padding-block:48px}
.footer-title{font-size:26px;line-height:34px}
.site-footer nav a,.footer-languages a{text-decoration:underline;text-underline-offset:5px}
@media(max-width:1050px){
 .coming-up{grid-template-columns:230px minmax(0,1fr);gap:40px}
 .event-list .event-date{width:110px;font-size:23px;line-height:32px}
 .phase h3{font-size:24px;line-height:31px}
}
@media(max-width:950px){
 .brand-intro .page-intro{padding-block:56px}
 .identity{font-size:21px;line-height:28px}
}
@media(max-width:700px){
 :root{--heading-bold:34px}
 h1{font-size:42px;line-height:48px}
 .brand-intro .page-intro{padding-block:40px;gap:24px}
 body[data-route='/'] .brand-intro h1{font-size:44px;line-height:50px;letter-spacing:-.025em}
 .brand-intro .intro-copy,.brand-intro .page-intro>p:not(.meta){font-size:19px;line-height:31px}
 .brand-intro .pastoral-quote blockquote{font-size:22px;line-height:34px}
 .brand-intro .pastoral-quote figcaption{font-size:13px;line-height:21px}
 .coming-up{padding-block:40px;gap:24px}
 .coming-intro h2,.renewal-home>h2,.next-step>h2,.planning-band>.stack>h2{font-size:34px;line-height:41px;letter-spacing:-.02em}
 .event-list .event-row{padding:24px 12px;gap:8px}
 .event-list .event-date{font-size:23px;line-height:31px;width:auto}
 .event-list .event-title{font-size:19px;line-height:29px}
 .event-list .event-info p{font-size:15px;line-height:25px}
 .planning-band>.section{padding-block:40px}
 .renewal-home{gap:24px}
 .renewal-home>p{font-size:19px;line-height:30px}
 .current-window{padding:20px;gap:8px}
 .current-window .event-title{font-size:19px;line-height:29px}
 .current-window .small-reading{font-size:15px;line-height:25px}
 .phase-text{gap:10px;padding-bottom:28px}
 .phase h3{font-size:22px;line-height:29px}
 .phase .small-reading{font-size:15px;line-height:25px}
 .scripture-section{padding-block:40px}
 .scripture{padding:32px 8px;gap:20px}
 .scripture blockquote{font-size:26px;line-height:39px}
 .scripture figcaption,.scripture figcaption a{font-size:15px;line-height:23px}
 .next-step{padding-block:40px;gap:20px}
 .next-step>p{font-size:19px;line-height:31px}
 .next-step .info-row h3{font-size:20px;line-height:29px}
 .next-step .meta{font-size:16px;line-height:24px}
 .track-copy h2{font-size:22px;line-height:29px}
 .track-copy .small-reading{font-size:15px;line-height:25px}
 .current-row .track-copy{padding:16px}
 .current-row h2{font:600 19px/29px var(--font-body)}
 .road-row{min-height:140px}
 .resource-intro{gap:28px}
 .resource-list h3{font-size:19px;line-height:28px}
 body[data-route='/renewal/'] #updates h2{font-size:34px;line-height:41px}
 .parish-name{font-size:22px;line-height:29px}
 .selected-session{padding:24px 20px}
 .selected-session .selected-session-date{font-size:25px;line-height:34px}
 .event-detail .event-description{font-size:21px;line-height:33px}
 .site-footer{padding-block:40px}
 .footer-title{font-size:23px;line-height:31px}
}
@media(max-width:370px){body[data-route='/'] .brand-intro h1{font-size:40px;line-height:47px}.brand-intro h1{font-size:38px;line-height:45px}.selected-session .selected-session-date{font-size:23px;line-height:32px}}
@media print{
 .brand-intro,.planning-band,.scripture-section,.selected-session{background:white;color:var(--text)}
 .brand-intro h1,.brand-intro p,.brand-intro a,.scripture figcaption,.scripture figcaption a,.selected-session *{color:var(--text)}
 .scripture{border-color:var(--rule)}
 body[data-route='/'] .brand-intro h1{font-size:36pt;line-height:1.1}
}

/* A complete time remains one readable unit, particularly on phones. */
.selected-session-date{display:flex;flex-wrap:wrap;column-gap:8px;row-gap:4px}
.selected-session-time{white-space:nowrap}
@media(max-width:700px){.selected-session-date{display:block}.selected-session-time{display:block;margin-top:4px}.session-separator{display:none}}
