/************ ST. AGNES SHARED BRAND ************/
body {
    --primary-color-rgb: 15, 29, 58;
    --secondary-color-rgb: 32, 85, 61;
    --tertiary-color-rgb: 250, 247, 240;
    --title-font-family: 'Marcellus', Georgia, serif;
    --body-font-family: 'Nunito Sans', Arial, sans-serif;
    --section-navigation-bg: #faf7f0;
    --section-footer-bg: #0f1d3a;
    --main-menu-bg: #182746;
    --main-menu-text-color: #faf7f0;
    --main-menu-text-color-hover: #fff;
    --side-menu-bg: #0f1d3a;
    --button-default-bg: #20553d;
    --button-default-text-color: #fff;
}
body, p { font-family: var(--body-font-family); }
.agnes-navigation > .g-content,
.agnes-navigation .g-array-item,
.agnes-navigation .g-array-item-text,
.agnes-navigation .g-content-array,
.agnes-navigation .g-content-array > .g-grid,
.agnes-navigation .g-array-item > .g-content { margin: 0; padding: 0; }
/************ NAVIGATION ************/
body #g-navigation {
    background: #faf7f0;
    padding: 0;
    --main-menu-bg: #182746;
    --main-menu-text-color: #faf7f0;
}
body #g-navigation > .g-container { max-width: none; padding: 0!important; width: 100%; }
.agnes-masthead { max-width: 1240px; padding: 12px 0; margin: auto; min-height: 104px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.agnes-brand { display: flex; align-items: center; gap: 10px; color: #343833; text-decoration: none; }
.agnes-brand img { width: 64px; height: 84px; object-fit: contain; }
.agnes-brand > span { font: 48px/1 var(--title-font-family); font-variant: small-caps; white-space: nowrap; }
.agnes-brand small { display: block; font: 17px/1.3 var(--title-font-family); text-transform: uppercase; margin-top: 4px; }
.agnes-header-actions { display:flex; gap:12px; align-items:center; }
.agnes-header-actions .button { font: 14px/1.2 var(--body-font-family); text-transform:none; letter-spacing:0; padding:12px 17px; border-radius:0; border:1px solid #346b74; }
.agnes-outline { background:transparent!important; color:#182746!important; }
.agnes-green { background:#20553d!important; color:#fff!important; }
.agnes-menu-wrapper { background:#182746; }
.agnes-menu-wrapper .g-main-nav { max-width:1240px; margin:auto; }
.agnes-menu-wrapper .g-toplevel { display:flex; justify-content:space-between; align-items:center; }
.agnes-menu-wrapper .g-toplevel > li > .g-menu-item-container { color:#faf7f0!important; font:14px/1.4 var(--body-font-family); padding:15px 13px; min-height:48px; text-transform:none; }
.agnes-menu-wrapper .g-toplevel > li.active > .g-menu-item-container,
.agnes-menu-wrapper .g-toplevel > li > .g-menu-item-container:hover { background:#20553d!important; color:#fff!important; }
.agnes-menu-wrapper .g-social { display:flex; gap:15px; }
.agnes-menu-wrapper .g-social a { color:#fff!important; }
body #g-navigation .g-main-nav .g-dropdown,
body #g-navigation .g-main-nav .g-sublevel { background:#182746!important; }
body #g-navigation .g-main-nav .g-sublevel > li > .g-menu-item-container,
body #g-navigation .g-main-nav .g-sublevel .g-menu-item-title { color:#fff!important; font-family:var(--body-font-family); }
body #g-navigation .g-main-nav .g-sublevel > li > .g-menu-item-container:is(:hover,:focus-visible),
body #g-navigation .g-main-nav .g-sublevel > li.active > .g-menu-item-container { color:#fff!important; background:#20553d!important; }
.agnes-site-header a:focus-visible, .agnes-footer a:focus-visible { outline:3px solid #c4ac6a; outline-offset:3px; }
/************ HOMEPAGE STRUCTURE ************/
body.site-home { background:#faf7f0; --section-header-bg:#faf7f0; --section-utility-bg:#faf7f0; --section-expanded-bg:transparent; --section-extension-bg:#faf7f0; }
.site-home #g-page-surround { background:#faf7f0; }
.site-home :is(#g-slideshow,#g-header,#g-utility,#g-expanded,#g-extension) > .g-container { width:100%; max-width:none; padding:0!important; }
.site-home :is(.agnes-mission-display,.agnes-news-display,.agnes-instagram-display,.agnes-newsletters-display,.agnes-testimonials-display) > .g-content { margin:0; padding:0; }
.site-home :is(.agnes-mission-display,.agnes-news-display,.agnes-instagram-display,.agnes-newsletters-display,.agnes-testimonials-display) .g-array-item { margin:0; padding:0; }
.site-home :is(.agnes-mission-display,.agnes-news-display,.agnes-instagram-display,.agnes-newsletters-display,.agnes-testimonials-display) > .g-content > .g-content-array > .g-grid,
.site-home :is(.agnes-mission-display,.agnes-news-display,.agnes-instagram-display,.agnes-newsletters-display,.agnes-testimonials-display) .g-array-item-text { margin:0; padding:0; }
.site-home #g-slideshow { position:relative; }
.site-home .agnes-hero > .g-content { margin:0; padding:0; }
.site-home .agnes-hero .swiper-wrapper { height:36.5vw!important; max-height:680px; }
.site-home .agnes-hero .swiper-slide img { width:100%; height:100%; object-fit:cover; object-position:center; }
.site-home .agnes-hero .swiper-bg { background-size:cover; background-position:center; }
.site-home .agnes-hero .swiper-slide:after { background:transparent!important; }
.site-home .agnes-quicklinks { position:absolute; z-index:4; bottom:24px; left:50%; transform:translateX(-50%); width:calc(100% - 48px); max-width:1240px; }
.site-home .agnes-quicklinks > .g-content { padding:0; margin:0; }
.site-home .agnes-quicklinks .g-blockcontent-subcontent { gap:12px; flex-wrap:nowrap; }
.site-home .agnes-quicklinks .g-blockcontent-subcontent-block { flex:1; width:auto; min-width:0; }
.site-home .agnes-quicklinks .g-blockcontent-subcontent-block-content { margin:0; padding:0; }
.site-home .agnes-quicklinks .g-blockcontent-subcontent-title { display:none; }
.site-home .agnes-quicklinks .g-blockcontent-buttons { margin:0; }
.site-home .agnes-quicklinks .button { display:flex; align-items:center; justify-content:center; min-height:60px; width:100%; margin:0; padding:10px; border:1px solid #9fa5ab; background:rgba(15,29,58,.95); color:#fff; border-radius:0; font:700 18px/1.25 var(--body-font-family); text-transform:none; letter-spacing:0; transition:background .2s,transform .2s; }
.site-home .agnes-quicklinks .agnes-ql-green .button { background:#20553d; }
.site-home .agnes-quicklinks .button:is(:hover,:focus-visible) { background:#346b4f; transform:translateY(-3px); outline:3px solid #f0e5c9; outline-offset:2px; }
.site-home #g-header { position:relative; background:#faf7f0; }
.site-home #g-header:before { content:""; position:absolute; right:3%; top:24px; width:390px; height:490px; background:url('/images/pub/agnes/brandmark.png') center/contain no-repeat; opacity:.065; pointer-events:none; }
.site-home .agnes-mission { position:relative; padding:60px 24px 70px; text-align:center; max-width:1240px; margin:auto; }
.site-home .agnes-section-title { font:400 38px/1.25 var(--title-font-family); letter-spacing:0; text-transform:none; color:#182746; margin:0 0 24px; padding:0; border:0; }
.site-home .agnes-section-title:before,.site-home .agnes-section-title:after { content:""; display:inline-block; width:32px; height:1px; background:#648975; vertical-align:middle; margin:0 12px; }
.site-home .agnes-mission h1 { color:#20553d; }
.site-home .agnes-mission p { font:24px/1.6 var(--title-font-family); color:#182746; margin:0; }
.site-home #g-utility { position:relative; background:#faf7f0; padding:25px 24px 30px; }
.site-home .agnes-pillars { max-width:1240px; margin:auto; width:100%; }
.site-home .agnes-pillars > .g-content { margin:0; padding:0; }
.site-home .agnes-pillars .g-blockcontent-subcontent { display:flex; gap:15px; }
.site-home .agnes-pillars .g-blockcontent-subcontent-block { flex:1; min-width:0; }
.site-home .agnes-pillars .g-blockcontent-subcontent-block-content { position:relative; height:200px; margin:0; padding:0; overflow:hidden; }
.site-home .agnes-pillars img { width:100%; height:100%; object-fit:cover; transition:transform .35s; }
.site-home .agnes-pillars .g-blockcontent-subcontent-title { display:none; }
.site-home .agnes-pillars .g-blockcontent-buttons { position:absolute; inset:0; margin:0; background:rgba(10,24,25,.42); }
.site-home .agnes-pillars .button { position:absolute; inset:11px; display:flex; justify-content:center; align-items:center; margin:0; padding:15px; border:1px solid rgba(255,255,255,.7); background:transparent; border-radius:0; font:400 20px/1.25 var(--title-font-family); color:#fff; text-transform:uppercase; letter-spacing:0; white-space:normal; }
.site-home .agnes-pillars .g-blockcontent-subcontent-block-content:is(:hover,:focus-within) img { transform:scale(1.05); }
.site-home .agnes-pillars .button:focus-visible { outline:3px solid #fff; outline-offset:-5px; }
/************ NEWS AND INSTAGRAM ************/
.site-home #g-expanded { background:linear-gradient(rgba(232,238,231,.84),rgba(232,238,231,.84)),url('/images/pub/agnes/news-background.jpg') center/cover; padding:52px 24px 56px; }
.site-home #g-expanded > .g-container { max-width:1240px; margin:auto; }
.site-home #g-expanded > .g-container > .g-grid { gap:48px; flex-wrap:nowrap; }
.site-home .agnes-news-display { flex:1.6; min-width:0; }
.site-home .agnes-instagram-display { flex:1; min-width:0; }
.site-home .agnes-news .agnes-section-title,.site-home .agnes-instagram .agnes-section-title { font-size:46px; }
.site-home .agnes-news-feed .g-array-item { position:relative; display:grid; grid-template-columns:160px 1fr; background:#fff; margin:0 0 17px; min-height:188px; box-shadow:0 1px 5px #13213a16; }
.site-home .agnes-news-feed .g-array-item-image { grid-column:1; grid-row:1 / span 3; width:160px; height:100%; margin:0; }
.site-home .agnes-news-feed .g-array-item-image img { width:100%; height:100%; max-height:220px; object-fit:cover; }
.site-home .agnes-news-feed .g-array-item-title { grid-column:2; font:600 24px/1.25 var(--title-font-family); margin:22px 20px 8px; text-transform:none; }
.site-home .agnes-news-feed .g-array-item-title a { color:#20553d; }
.site-home .agnes-news-feed .g-array-item-text { grid-column:2; margin:0 20px!important; font:16px/1.7 var(--body-font-family); color:#424a46; }
.site-home .agnes-news-feed .g-array-item-text p { margin:0; }
.site-home .agnes-news-feed .g-array-item-read-more { grid-column:2; margin:10px 20px 22px; }
.site-home .agnes-news-feed .g-array-item-read-more .button { background:none; border:0; padding:0; font:14px/1.4 var(--body-font-family); text-transform:none; text-decoration:underline; color:#20553d; }
.site-home .agnes-news-feed .g-array-item-read-more a:after { content:""; position:absolute; inset:0; }
.site-home .agnes-news-feed .g-array-item:is(:hover,:focus-within) { box-shadow:0 5px 14px #13213a29; }
.site-home .agnes-news-feed .g-array-item:focus-within { outline:3px solid #20553d; }
.site-home .agnes-news .agnes-view-all { text-align:center; margin:22px 0 0; }
.site-home .agnes-view-all .button { border-radius:30px; background:#182746; color:#fff; font:14px/1.2 var(--body-font-family); text-transform:none; padding:15px 26px; }
.site-home .agnes-instagram .s-widget-feed { height:660px; overflow:auto; border-radius:22px; background:#faf7f0; padding:18px; }
.site-home .agnes-instagram .s-widget-feed:empty { min-height:480px; }
/************ NEWSLETTERS AND TESTIMONIALS ************/
.site-home .agnes-newsletters { padding:56px 24px; background:#faf7f0; text-align:center; }
.site-home .agnes-newsletters .agnes-section-title,.site-home .agnes-testimonials .agnes-section-title { font-size:32px; }
.site-home .agnes-newsletter-list { max-width:720px; margin:28px auto; list-style:none; padding:0; }
.site-home .agnes-newsletter-list li { margin:15px 0; }
.site-home .agnes-newsletter-list a { display:flex; align-items:center; gap:20px; padding:22px 26px; border:1px solid #ded9cb; box-shadow:0 2px 4px #13213a0c; background:#fff; text-align:left; color:#182746; }
.site-home .agnes-newsletter-list a:before { content:"\f15c"; font-family:"Font Awesome 6 Free"; font-size:28px; color:#20553d; }
.site-home .agnes-newsletter-list a:after { content:"↗"; margin-left:auto; }
.site-home .agnes-newsletter-list strong { display:block; font-size:18px; }
.site-home .agnes-newsletter-list small { display:block; color:#686c6c; font-size:14px; margin-top:4px; }
.site-home .agnes-archive { border:1px solid #182746; background:transparent; color:#182746; padding:15px 24px; font:16px/1.2 var(--body-font-family); text-transform:none; border-radius:0; }
.site-home .agnes-testimonials { text-align:center; padding:55px 24px 65px; min-height:365px; background:linear-gradient(rgba(250,247,240,.87),rgba(250,247,240,.67)),url('/images/pub/agnes/testimonials.jpg') center 82%/cover; }
.site-home .agnes-testimonials blockquote { max-width:740px; margin:20px auto; padding:0; border:0; color:#20553d; font:25px/1.6 var(--title-font-family); }
.site-home .agnes-testimonials cite { font:14px/1.5 var(--body-font-family); color:#5b605f; }
.site-home .agnes-testimonial-controls { display:flex; justify-content:center; align-items:center; gap:20px; margin-top:28px; color:#4b5452; }
.site-home .agnes-testimonial-controls button { background:transparent; color:#182746; border:0; padding:8px 14px; font-size:22px; }
/************ SHARED FOOTER ************/
body #g-footer { background:#0f1d3a; color:#ecede9; }
body #g-footer > .g-container { max-width:1240px; padding:60px 0!important; }
.agnes-footer { display:grid; grid-template-columns:1.25fr 1fr .8fr; gap:70px; font:18px/1.6 var(--body-font-family); color:#d8dce2; }
.agnes-footer a { color:inherit; }
.agnes-footer h2 { font:32px/1.3 var(--title-font-family); color:#faf7f0; margin:0 0 24px; }
.agnes-footer h3 { color:#d8bd79; font:600 17px/1.4 var(--title-font-family); font-variant:small-caps; letter-spacing:2px; margin:0 0 20px; }
.agnes-footer p { margin:0 0 24px; }
.agnes-footer .button { border-radius:0; background:#20553d; color:#fff; font:700 17px/1.3 var(--body-font-family); text-transform:none; padding:15px 20px; }
.agnes-footer ul { list-style:none; padding:0; margin:0; }
.agnes-footer li { margin:0 0 16px; }
.agnes-footer-credit { text-align:center; margin:36px 0 0; color:#bac2cd; font-size:14px; }
/************ RESPONSIVE ************/
@media(min-width:51rem) {
    .agnes-navigation-section > .g-container > .g-grid:not(:has(.agnes-navigation)) { display:none; }
}
@media(max-width:80rem) and (min-width:51rem) {
    .agnes-masthead { padding:12px 28px; }
    .agnes-brand > span { font-size:36px; }
    .agnes-brand small { font-size:13px; }
    .agnes-header-actions .button { padding:10px 12px; font-size:12px; }
    .agnes-menu-wrapper .g-toplevel > li > .g-menu-item-container { font-size:12px; padding:14px 9px; }
    body #g-footer > .g-container { padding:48px 28px!important; }
    .site-home .agnes-news-feed .g-array-item { grid-template-columns:130px 1fr; }
    .site-home .agnes-news-feed .g-array-item-image { width:130px; }
}
@media(max-width:50.99rem) {
    body #g-navigation { min-height:110px; }
    .agnes-navigation .g-block.hidden { display:block!important; visibility:visible!important; }
    .agnes-masthead { min-height:95px; padding:14px 18px 14px 55px; gap:16px; flex-wrap:wrap; }
    .agnes-brand img { width:38px; height:54px; }
    .agnes-brand > span { font-size:32px; }
    .agnes-brand small { font-size:10px; }
    .agnes-header-actions { width:100%; justify-content:center; gap:7px; }
    .agnes-header-actions .button { font-size:11px; padding:9px 8px; }
    .agnes-menu-wrapper { display:none; }
    body .g-offcanvas-toggle { color:#182746; top:26px; left:17px; font-size:23px; }
    .site-home .agnes-hero .swiper-wrapper { height:70vw!important; max-height:520px; }
    .site-home .agnes-quicklinks { position:relative; bottom:auto; left:auto; transform:none; width:100%; padding:14px; background:#182746; }
    .site-home .agnes-quicklinks .g-blockcontent-subcontent { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
    .site-home .agnes-quicklinks .g-blockcontent-subcontent-block:first-child { grid-column:1/-1; }
    .site-home .agnes-quicklinks .button { min-height:48px; font-size:15px; }
    .site-home .agnes-mission { padding:42px 22px 32px; }
    .site-home .agnes-section-title { font-size:30px; margin-bottom:20px; }
    .site-home .agnes-section-title:before,.site-home .agnes-section-title:after { width:20px; margin:0 8px; }
    .site-home .agnes-mission p { font-size:20px; }
    .site-home .agnes-desktop-break { display:none; }
    .site-home #g-header:before { width:220px; right:0; height:370px; }
    .site-home #g-utility { padding:10px 18px 35px; }
    .site-home .agnes-pillars .g-blockcontent-subcontent { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
    .site-home .agnes-pillars .g-blockcontent-subcontent-block-content { height:180px; }
    .site-home .agnes-pillars .button { font-size:16px; padding:9px; inset:8px; }
    .site-home #g-expanded { padding:38px 18px; }
    .site-home #g-expanded > .g-container > .g-grid { flex-direction:column; gap:38px; }
    .site-home #g-expanded .agnes-news-display,.site-home #g-expanded .agnes-instagram-display { width:100%; flex-basis:auto; }
    .site-home .agnes-news .agnes-section-title,.site-home .agnes-instagram .agnes-section-title { font-size:32px; text-align:center; }
    .site-home .agnes-news-feed .g-array-item { grid-template-columns:110px 1fr; min-height:170px; }
    .site-home .agnes-news-feed .g-array-item-image { width:110px; }
    .site-home .agnes-news-feed .g-array-item-title { font-size:20px; margin:15px 14px 8px; }
    .site-home .agnes-news-feed .g-array-item-text { font-size:14px; line-height:1.6; margin:0 14px!important; }
    .site-home .agnes-news-feed .g-array-item-read-more { margin:10px 14px 15px; }
    .site-home .agnes-instagram .s-widget-feed { height:620px; max-width:500px; margin:auto; }
    .site-home .agnes-newsletters { padding:40px 18px; }
    .site-home .agnes-newsletters .agnes-section-title,.site-home .agnes-testimonials .agnes-section-title { font-size:26px; }
    .site-home .agnes-newsletter-list a { padding:18px; }
    .site-home .agnes-newsletter-list strong { font-size:16px; }
    .site-home .agnes-testimonials { padding:40px 20px; min-height:350px; }
    .site-home .agnes-testimonials blockquote { font-size:21px; }
    body #g-footer > .g-container { padding:42px 24px!important; }
    .agnes-footer { grid-template-columns:1fr; gap:25px; font-size:16px; }
    .agnes-footer h2 { font-size:28px; }
}
@media(prefers-reduced-motion:reduce) { .site-home .agnes-pillars img,.site-home .agnes-quicklinks .button { transition:none; } }

/************ THEME COMPATIBILITY ************/
body.site #g-navigation > .g-container > .g-grid:before { display:none!important; }
body.site #g-navigation { background:#faf7f0!important; }
body.site #g-navigation > .g-container { max-width:none!important; width:100%!important; }
body.site #g-navigation .agnes-menu-wrapper { background:#182746; }
body.site #g-navigation .agnes-menu-wrapper .g-toplevel > li > .g-menu-item-container { font:14px/1.4 var(--body-font-family); letter-spacing:0; text-transform:none; color:#faf7f0!important; padding:15px 13px; }
body.site-home #g-slideshow > .g-container { max-width:none!important; width:100%!important; }
.site-home .agnes-hero .swiper-bg { position:absolute; inset:0; z-index:1; }
.site-home .agnes-hero .swiper-slide > img[src*="default-rotator"] { display:none; }
.site-home .agnes-testimonial-feed .g-array-item[hidden] { display:none!important; }
.site-home .agnes-testimonial-feed .g-array-item { padding:0; }
body.site #g-footer .g-array-item-text { width:100%; }
@media(max-width:50.99rem) {
    body.site #g-navigation .agnes-site-header { width:100%; }
}

/************ RENDERED CONTENT ADAPTERS ************/
body.site #g-navigation .agnes-navigation .g-grid:has(.g-main-nav):before { display:none!important; }
body.site-home #g-expanded { padding:52px 24px 56px!important; }
body.site-home #g-expanded > .g-container { max-width:1240px!important; width:100%!important; }
body.site-home #g-utility { padding:25px 24px 30px!important; }
.site-home .agnes-news-feed > .g-content-array > .g-grid,
.site-home .agnes-news-feed .g-content-array > .g-grid { margin:0 0 17px!important; }
.site-home .agnes-news-feed .g-array-item { margin:0; }
.site-home .agnes-news-feed .g-array-item-title h3 { font:600 24px/1.25 var(--title-font-family); margin:0; padding:0; border:0; }
.site-home .agnes-news-feed .g-array-item-image a { display:block; height:100%; }
.site-home .agnes-news-feed .g-array-item-image img { object-fit:cover; min-height:100%; }
.site-home .agnes-news-feed .g-item-title a { text-decoration:none; }
.site-home .agnes-instagram .s-widget-feed { position:relative; }
@media(max-width:50.99rem) {
    body.site-home #g-expanded { padding:38px 18px!important; }
    body.site-home #g-utility { padding:10px 18px 35px!important; }
    .site-home .agnes-news-feed .g-array-item-title h3 { font-size:20px; }
}

/************ AUDIT REFINEMENTS ************/
body.site #g-navigation > .g-container > .g-grid:has(.agnes-navigation) { background:transparent!important; }
body.site #g-navigation .agnes-masthead { background:#faf7f0; }
.site-home .agnes-news-feed .g-item-title,
.site-home .agnes-news-feed .g-item-title a { font:600 24px/1.25 var(--title-font-family)!important; border:0!important; }
body.site-home #g-extension > .g-container { max-width:none!important; width:100%!important; }
.agnes-footer h3 { border:0; padding:0; }
.site-home .agnes-testimonials cite:before { content:none; }
@media(min-width:51rem) {
    .site-sub.site.withmaxwidth #g-header > .g-container { width:100%; max-width:100%; }
    .site-sub #hero-title-text { width:100%; max-width:1440px; transform:translateX(-50%); left:50%; right:unset; padding-left:min(5vw,5rem); }
}
@media(max-width:50.99rem) {
    .site-home .agnes-news-feed .g-content-array { display:flex; overflow-x:auto; gap:14px; scroll-snap-type:x mandatory; padding:3px 3px 15px; }
    .site-home .agnes-news-feed .g-content-array > .g-grid { flex:0 0 88%; min-width:0; margin:0!important; scroll-snap-align:start; }
    .site-home .agnes-news-feed .g-array-item { display:flex; flex-direction:column; height:100%; }
    .site-home .agnes-news-feed .g-array-item-image { width:100%; height:230px; flex:none; }
    .site-home .agnes-news-feed .g-array-item-image img { width:100%; height:230px; max-height:230px; object-fit:cover; object-position:center 25%; }
    .site-home .agnes-news-feed .g-item-title,
    .site-home .agnes-news-feed .g-item-title a { font-size:21px!important; }
    .site-home .agnes-news-feed .g-array-item-text { flex:1; }
    .agnes-footer .agnes-visit { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
    .agnes-footer .agnes-visit h3 { grid-column:1/-1; margin-bottom:0; }
    .agnes-footer .agnes-contact p { margin-bottom:16px; }
    .agnes-footer .agnes-hours { min-width:0; }
    body #g-top-nav .g-logo img { max-width:100%; max-height:40px; width:auto; object-fit:contain; }
}

/************ KEYBOARD NAVIGATION ************/
@media(min-width:51rem) {
    body #g-navigation .agnes-menu-wrapper .g-parent:focus-within:not(.agnes-menu-dismissed) > .g-dropdown { display:block; opacity:1; visibility:visible; transform:none; pointer-events:auto; }
    body #g-navigation .agnes-menu-wrapper .g-parent.agnes-menu-dismissed > .g-dropdown { opacity:0; visibility:hidden; }
    body #g-navigation .agnes-menu-wrapper .g-toplevel > li > a .g-menu-item-title { text-transform:none!important; letter-spacing:0; font-weight:400; }
}
.site-home .agnes-instagram .s-widget-feed { box-sizing:border-box; overflow-x:hidden; }

/************ DISPLAY ARTICLE WRAPPERS ************/
.site-home :is(.agnes-mission-display,.agnes-news-display,.agnes-instagram-display,.agnes-newsletters-display,.agnes-testimonials-display) > .g-content > .g-content-array > .g-grid > .g-block > .g-content { margin:0; padding:0; }
.site-home .agnes-newsletters-display > .g-content > .g-content-array > .g-grid,
.site-home .agnes-testimonials-display > .g-content > .g-content-array > .g-grid { margin:0; }
.site-home .agnes-testimonials-display .g-array-item-text { width:100%; }

/************ GANTRY CONTAINER SPACING ************/
body.site-home.site.withmaxwidth :is(#g-slideshow,#g-header,#g-utility,#g-expanded,#g-extension) > .g-container { padding:0!important; }
body.site .agnes-archive { background:transparent; border:1px solid #182746; color:#182746; border-radius:0; padding:15px 24px; font:16px/1.2 var(--body-font-family); text-transform:none; }
@media(max-width:50.99rem) { body.site.withmaxwidth #g-footer > .g-container { padding:42px 24px!important; } }


/************ PUNCH LIST 2026-11-12 ************/
/* Shared helpers */
.agnes-sr { position:absolute!important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }

/* Content link color */
:where(body.site) a:where(:not(.button)) { color:#20553d; }
:where(body.site) a:where(:not(.button)):where(:hover,:focus-visible) { color:#163d2b; }
.grid-articles .g-array-item-text a:not(.button) { color:#20553d; }

/* Header: social icons left of toplinks, thicker toplink outlines */
.agnes-header-right { display:flex; align-items:center; gap:22px; }
.agnes-header-social { display:flex; align-items:center; gap:14px; }
.agnes-header-social a { display:inline-flex; align-items:center; justify-content:center; width:34px; height:34px; color:#182746; text-decoration:none; transition:color .2s, transform .2s; }
.agnes-header-social a::before { font-size:22px; line-height:1; -webkit-font-smoothing:antialiased; }
.agnes-header-social .agnes-social-facebook::before { content:"\f082"; font-family:"Font Awesome 6 Brands"; font-weight:400; }
.agnes-header-social .agnes-social-instagram::before { content:"\f16d"; font-family:"Font Awesome 6 Brands"; font-weight:400; }
.agnes-header-social .agnes-social-search::before { content:"\f002"; font-family:"Font Awesome 6 Free"; font-weight:900; font-size:19px; }
.agnes-header-social a:is(:hover,:focus-visible) { color:#20553d; transform:translateY(-2px); }
.agnes-header-actions .button { border-width:2px!important; border-style:solid!important; }
.agnes-header-actions .agnes-outline { border-color:#182746!important; }
.agnes-header-actions .agnes-green { border-color:#20553d!important; }
@media(min-width:51rem) {
    .agnes-menu-wrapper .g-toplevel > li.g-menu-item-144 { display:none; }
}

/* Mass Times popup (content lives in navigation article 277) */
.agnes-masstimes-panel { display:none; }
.agnes-masstimes-panel.is-open { display:flex; position:fixed; inset:0; z-index:100000; align-items:center; justify-content:center; padding:20px; background:rgba(15,29,58,.72); }
.agnes-masstimes-card { position:relative; width:min(440px,100%); max-height:calc(100vh - 40px); overflow:auto; background:#faf7f0; color:#182746; text-align:center; padding:44px 32px 32px; border-top:6px solid #20553d; box-shadow:0 18px 50px rgba(0,0,0,.35); }
.agnes-masstimes-card::before { content:""; display:block; width:56px; height:72px; margin:0 auto 10px; background:url('/images/pub/agnes/brandmark.png') center/contain no-repeat; }
.agnes-masstimes-card h2 { font:400 34px/1.2 var(--title-font-family); color:#182746; margin:0 0 18px; padding:0; border:0; text-transform:none; font-variant:normal; }
.agnes-masstimes-card h3 { font:600 17px/1.4 var(--title-font-family); color:#20553d; font-variant:small-caps; letter-spacing:2px; margin:18px 0 6px; padding:0; border:0; text-transform:none; }
.agnes-masstimes-card p { font:17px/1.6 var(--body-font-family); color:#182746; margin:0; }
.agnes-masstimes-card .agnes-masstimes-more { margin-top:24px; }
.agnes-masstimes-card .button { border-radius:0; padding:13px 22px; font:700 15px/1.2 var(--body-font-family); text-transform:none; letter-spacing:0; }
.agnes-masstimes-close { position:absolute; top:10px; right:10px; width:40px; height:40px; display:flex; align-items:center; justify-content:center; padding:0; border:0; border-radius:0; background:transparent; color:#182746; font-size:28px; line-height:1; cursor:pointer; box-shadow:none; }
.agnes-masstimes-close:is(:hover,:focus-visible) { color:#20553d; outline:2px solid #20553d; outline-offset:-2px; }
html.agnes-modal-open { overflow:hidden; }

/* Homepage: St. Agnes watermark continues behind the pillar quicklinks */
body.site-home #g-header { overflow:visible; }
body.site-home #g-utility { background:transparent!important; --section-utility-bg:transparent; z-index:1; }
body.site-home #g-header::before { z-index:0; }
.site-home .agnes-mission { z-index:1; }

/* Homepage: default rotator image must be allowed to render */
.site-home .agnes-hero .swiper-slide > img[src*="default-rotator"] { display:block; }

/* News feed: stop hover flicker, align cards, sharp View All */
.site-home .agnes-news-feed .g-array-item-read-more .button,
.site-home .agnes-news-feed .g-array-item-read-more .button:is(:hover,:focus,:focus-visible,:active) { transform:none!important; box-shadow:none!important; }
.site-home .agnes-news-feed .g-array-item { transition:box-shadow .2s ease; }
.site-home .agnes-news-feed .g-array-item-image img { transition:none; }
.site-home .agnes-news-feed .g-content-array > .g-grid > .g-block > .g-content { margin:0!important; padding:0!important; }
.site-home .agnes-news-feed .g-item-title a:is(:hover,:focus-visible) { text-decoration:underline; }
.site-home .agnes-view-all .button { border-radius:0; }

/* Testimonials: stronger overlay, fixed height between quotes */
.site-home .agnes-testimonials { background:linear-gradient(rgba(250,247,240,.94),rgba(250,247,240,.86)),url('/images/pub/agnes/testimonials.jpg') center 82%/cover; }
.site-home .agnes-testimonial-feed .g-content-array { display:grid; }
.site-home .agnes-testimonial-feed .g-content-array > .g-grid { grid-area:1/1; margin:0; align-self:center; }
.site-home .agnes-testimonial-feed .g-array-item[hidden] { display:block!important; visibility:hidden; opacity:0; }
.site-home .agnes-testimonial-feed .g-array-item { opacity:1; transition:opacity .35s ease; }
.site-home .agnes-testimonial-controls button { box-shadow:none; }

/* Footer */
.agnes-footer { font-size:16px; line-height:1.6; align-items:start; }
.agnes-footer h2 a { text-decoration:none; }
.agnes-footer p, .agnes-footer li, .agnes-footer li a { font-size:16px; }
.agnes-footer li { margin:0 0 12px; }
.agnes-footer .agnes-contact p { margin:0 0 14px; }
.agnes-footer a:not(.button) { color:#d8dce2; text-decoration:none; }
.agnes-footer a:not(.button):is(:hover,:focus-visible) { color:#fff; text-decoration:underline; }
.agnes-footer .button:is(:hover,:focus-visible) { background:#2b6b4e; color:#fff; }
.agnes-footer-credit { margin:44px 0 0; padding:24px 0 0; border-top:1px solid rgba(216,220,226,.18); }
body #g-copyright { background:#0f1d3a; padding:0 0 22px; }
body #g-copyright > .g-container { max-width:1240px; padding:0 24px!important; }
body #g-copyright .adminfootericon { text-align:center; text-shadow:none!important; color:#bac2cd; font-size:12px!important; line-height:1.6!important; }
body #g-copyright .adminfootericon br + br { display:none; }
body #g-copyright .adminfootericon a { color:#bac2cd!important; text-decoration:none; }
body #g-copyright .adminfootericon a:is(:hover,:focus-visible) { color:#fff!important; text-decoration:underline; }
body #g-copyright .adminfootericon a[href*="administrator"] { font-size:14px!important; opacity:.6; }

/* Mobile */
@media(max-width:50.99rem) {
    .agnes-masthead { justify-content:center; padding:14px 18px; text-align:center; }
    .agnes-brand { margin:0 auto; }
    .agnes-header-right { width:100%; flex-direction:column; gap:10px; }
    .agnes-header-social { display:none; }
    .agnes-header-actions { justify-content:center; }
    .agnes-masstimes-card { padding:40px 22px 26px; }
    .agnes-masstimes-card h2 { font-size:28px; }
    .agnes-footer-credit { margin-top:28px; }
    .site-home .agnes-news-feed .g-content-array { align-items:stretch; }
}
@media(max-width:50.99rem) and (display-mode:standalone) {
    body .g-offcanvas-toggle { z-index:1001!important; color:#fff!important; background:none!important; border:0!important; }
}
@media(prefers-reduced-motion:reduce) {
    .agnes-header-social a, .site-home .agnes-testimonial-feed .g-array-item { transition:none; }
    .agnes-header-social a:is(:hover,:focus-visible) { transform:none; }
}
body #g-copyright #custom-4449-particle { width:100%; }
body #g-copyright .adminfootericon { position:static!important; display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:6px 18px; width:100%; }
body #g-copyright .adminfootericon br { display:none; }

/************ FOOTER ICONS + CORNER CREDITS (2026-11-12) ************/
.agnes-footer { --agnes-icon-pin:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0'/><circle cx='12' cy='10' r='3'/></svg>"); --agnes-icon-phone:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z'/></svg>"); --agnes-icon-clock:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='10'/><polyline points='12 6 12 12 16 14'/></svg>"); --agnes-icon-steps:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M4 16v-2.38C4 11.5 2.97 10.5 3 8c.03-2.72 1.49-6 4.5-6C9.37 2 10 3.8 10 5.5c0 3.11-2 5.66-2 8.68V16a2 2 0 1 1-4 0Z'/><path d='M20 20v-2.38c0-2.12 1.03-3.12 1-5.62-.03-2.72-1.49-6-4.5-6C14.63 6 14 7.8 14 9.5c0 3.11 2 5.66 2 8.68V20a2 2 0 1 0 4 0Z'/><path d='M16 17h4'/><path d='M4 13h4'/></svg>"); }
.agnes-footer .agnes-contact p, .agnes-footer .agnes-hours { position:relative; padding-left:32px; }
.agnes-footer .agnes-contact p::before, .agnes-footer .agnes-hours::before { content:""; position:absolute; left:0; top:.2em; width:20px; height:20px; background:currentColor; -webkit-mask:var(--agnes-icon-pin) center/contain no-repeat; mask:var(--agnes-icon-pin) center/contain no-repeat; }
.agnes-footer .agnes-contact p:has(a[href^="tel:"])::before { -webkit-mask-image:var(--agnes-icon-phone); mask-image:var(--agnes-icon-phone); }
.agnes-footer .agnes-hours::before { -webkit-mask-image:var(--agnes-icon-clock); mask-image:var(--agnes-icon-clock); }
.agnes-footer .agnes-contact p, .agnes-footer .agnes-hours { color:#d8dce2; }
.agnes-footer h2 + .button { display:inline-flex; align-items:center; gap:9px; }
.agnes-footer h2 + .button::before { content:""; flex:none; width:17px; height:17px; background:currentColor; -webkit-mask:var(--agnes-icon-steps) center/contain no-repeat; mask:var(--agnes-icon-steps) center/contain no-repeat; }

/* Solutio credits back in the bottom-right corner */
body #g-footer > .g-container { padding-bottom:30px!important; }
.agnes-footer-credit { padding-left:190px; padding-right:190px; }
body #g-copyright { position:relative; padding:0; height:0; }
body #g-copyright .adminfootericon { position:absolute!important; right:max(24px, calc((100% - 1240px) / 2)); bottom:22px; width:auto; display:block; text-align:right; }
body #g-copyright .adminfootericon br { display:inline; }
body #g-copyright .adminfootericon br + br { display:none; }
body #g-copyright .adminfootericon a[href*="administrator"] { display:inline-block; margin-bottom:2px; }
@media(max-width:50.99rem) {
    body #g-footer > .g-container { padding-bottom:20px!important; }
    .agnes-footer-credit { padding-left:0; padding-right:0; }
    body #g-copyright { height:auto; padding:0 24px 22px; }
    body #g-copyright .adminfootericon { position:static!important; text-align:right; }
}

/************ COLOR LOGO LOCKUP (2026-11-12) ************/
.agnes-brand.agnes-brand-color { display:block; line-height:0; flex:0 1 auto; min-width:0; }
.agnes-brand.agnes-brand-color img.agnes-logo-color { display:block; width:auto; height:80px; max-width:100%; object-fit:contain; object-position:left center; }
.agnes-brand.agnes-brand-color:is(:hover,:focus-visible) img { opacity:.88; }
@media(max-width:80rem) and (min-width:51rem) {
    .agnes-brand.agnes-brand-color img.agnes-logo-color { height:64px; }
}
@media(max-width:50.99rem) {
    .agnes-brand.agnes-brand-color { margin:0 auto; max-width:calc(100% - 96px); }
    .agnes-brand.agnes-brand-color img.agnes-logo-color { height:auto; width:240px; max-width:100%; object-position:center; }
}

/************ PWA TOP BAR: HAMBURGER + COLOR LOGO (2026-11-12) ************/
@media(max-width:50.99rem) and (display-mode:standalone) {
    body .g-offcanvas-toggle { position:fixed!important; top:0!important; left:6pt!important; width:40pt!important; height:40pt!important; display:flex!important; align-items:center; justify-content:center; padding:0!important; margin:0!important; z-index:1001!important; color:#fff!important; background:none!important; border:0!important; border-radius:0!important; box-shadow:none!important; font-size:20pt!important; }
    body .g-offcanvas-toggle .fa-fw { color:#fff!important; text-shadow:none; }
    body #g-top-nav .g-logo { padding:0 52pt; box-sizing:border-box; }
    body #g-top-nav .g-logo img { display:block; height:30pt!important; max-height:30pt!important; width:auto!important; max-width:100%!important; object-fit:contain; margin:0 auto; }
    body #g-top-nav .g-logo span:empty { display:none; }
}
