/* Balanced parish identity and actions; customized palettes and geometry stay intact. */
.practical-home.week-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:0;padding:24px 0}
.practical-home>article{min-width:0;display:flex;flex-direction:column;gap:10px;padding:0 24px}
.practical-home>article+article{border-left:1px solid var(--line)}
.practical-home strong{font-size:clamp(16px,1.5vw,20px);line-height:1.3;text-wrap:balance}
.practical-home p,.practical-home time{font-size:13px;line-height:1.5;opacity:.8}
.practical-home a{font-size:14px;line-height:1.4;white-space:normal}
.practical-home>article>a:last-child{margin-top:auto;padding-top:6px;font-weight:600}
.practical-home .practical-event{display:grid;gap:4px}
.practical-home .practical-event strong{font-size:16px}
.practical-home .practical-alert{opacity:1;font-weight:600}
@media(max-width:760px){.practical-home.week-strip{grid-template-columns:1fr;padding:6px 20px}.practical-home>article{padding:18px 0}.practical-home>article+article{border-left:0;border-top:1px solid var(--line)}}
.site-footer .footer-brand h2{font-size:clamp(24px,2.45vw,32px);line-height:1.15;max-width:100%;text-wrap:balance}
.site-footer .footer-brand{min-width:0}
.site-header.topbar-balanced .nav-inner.wrap{display:grid;grid-template-columns:max-content minmax(0,1fr);height:auto;min-height:0;align-items:center;gap:16px;padding-block:max(14px,var(--header-padding,12px))}
.site-header.topbar-balanced.topbar-inline .nav-inner.wrap{grid-template-columns:max-content minmax(0,1fr)}
.site-header.topbar-balanced .brand{display:flex;align-items:center;gap:14px;min-width:0;margin:0;padding:0;white-space:normal;justify-self:start;flex:none;text-decoration:none}
.site-header.topbar-balanced .brand .parish-logo{flex:0 0 auto}
.site-header.topbar-balanced .brand-copy{display:flex;flex-direction:column;gap:7px;min-width:0;max-width:100%;font-family:inherit;letter-spacing:normal}
.site-header.topbar-balanced .brand-title{display:block;font:650 clamp(20px,1.8vw,25px)/1.15 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;letter-spacing:-.035em;white-space:nowrap}
.site-header.topbar-balanced .brand-copy small{display:block;margin:0;font:500 10px/1.2 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;letter-spacing:.17em;opacity:.72}
.site-header.topbar-balanced .header-actions{width:100%;min-width:0;max-width:100%;margin:0;align-items:center;justify-content:var(--actions-align,flex-end);gap:var(--header-gap,6px);flex-wrap:wrap;padding:2px 0 5px}
.site-header.topbar-balanced.topbar-inline .header-actions{flex-wrap:nowrap;overflow:visible;scrollbar-width:none;justify-content:flex-end}
.site-header.topbar-balanced.topbar-inline .header-actions::-webkit-scrollbar{display:none}
.site-header.topbar-balanced .header-actions [data-header-button]{width:calc(var(--hb-size,44px)*var(--topbar-scale,1));height:calc(var(--hb-size,44px)*var(--topbar-scale,1));min-width:calc(var(--hb-size,44px)*var(--topbar-scale,1));min-height:calc(var(--hb-size,44px)*var(--topbar-scale,1));margin:0;flex:0 0 auto}
.site-header.topbar-balanced .header-actions [data-header-button]:has(.header-label){width:auto;min-width:calc(var(--hb-size,44px)*var(--topbar-scale,1))}
.site-header.topbar-balanced .header-actions [data-header-button] svg{width:calc(var(--hb-icon,20px)*var(--topbar-scale,1));height:calc(var(--hb-icon,20px)*var(--topbar-scale,1))}
@media(max-width:760px){
 .site-header.topbar-balanced .nav-inner.wrap{width:calc(100% - 24px);gap:8px;padding-block:12px}
 .site-header.topbar-balanced .brand{gap:8px;justify-self:start;width:max-content;max-width:100%}
 .site-header.topbar-balanced .brand .parish-logo{width:32px;height:32px;min-width:32px}
 .site-header.topbar-balanced .brand-title{font-size:clamp(10.5px,3.15vw,17px);white-space:nowrap}
 .site-header.topbar-balanced .brand-copy{gap:6px}
 .site-header.topbar-balanced .brand-copy small{font-size:9px;letter-spacing:.16em}
 .site-header.topbar-balanced.topbar-inline .header-actions{justify-content:flex-end;padding-bottom:5px;gap:4px;overflow:visible}
 .site-header.topbar-balanced .header-actions .header-label{display:none!important}
 .site-header.topbar-balanced.topbar-icon-grid .header-actions{display:grid!important;grid-template-columns:repeat(var(--topbar-columns,5),max-content);justify-content:center;row-gap:max(10px,var(--header-gap,4px))}
}
@media(prefers-reduced-motion:reduce){.site-header.topbar-balanced .header-actions [data-header-button]{transition:none}}
.site-header .mobile-tools{display:none}
@media(max-width:760px){
 .site-header .mobile-tools{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid var(--menu-border)}
 .site-header .mobile-tools>strong{width:100%;font-size:13px}
 .site-header .mobile-tools [data-header-button]{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--hb-radius,50%);border:var(--hb-border-width,1px) solid var(--hb-border);background:var(--hb-bg);color:var(--hb-color);box-shadow:0 3px var(--hb-shadow,0px) #0003;padding:0}
 .site-header .mobile-tools [data-header-button] svg{width:20px;height:20px}
 .site-header .mobile-tools .header-label{display:none!important}
}
.header-live-preview.mobile .site-header.topbar-balanced .brand-title{font-size:11.5px;white-space:nowrap}
.header-live-preview.mobile .site-header.topbar-balanced .brand{justify-self:start;gap:8px;max-width:100%}
.header-live-preview.mobile .site-header.topbar-balanced .brand .parish-logo{width:32px;height:32px;min-width:32px}
.header-live-preview.mobile .site-header.topbar-balanced .nav-inner.wrap{width:calc(100% - 24px);gap:8px}
.header-live-preview.mobile .site-header.topbar-balanced .header-actions{overflow:visible;gap:4px}
.header-live-preview.mobile .site-header.topbar-balanced .header-actions .header-label{display:none!important}
.header-live-preview.mobile .site-header .mobile-tools{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.header-live-preview.mobile .site-header .mobile-tools>strong{width:100%;font-size:13px}
.header-live-preview.mobile .site-header .mobile-tools [data-header-button]{width:40px;height:40px;border-radius:var(--hb-radius,50%);background:var(--hb-bg);color:var(--hb-color);border:1px solid var(--hb-border)}
.header-live-preview.mobile .site-header .mobile-tools svg{width:20px;height:20px}
.header-live-preview.mobile .site-header.topbar-balanced.topbar-icon-grid .header-actions{display:grid!important;grid-template-columns:repeat(var(--topbar-columns,5),max-content);justify-content:center;row-gap:10px}
