/* ACK St. Thomas Aquinas | About Us v2
   Page-scoped layout system; loaded after legacy CSS.
   Homepage and other public pages keep their own established styles. */
:root{
 --about-blue:#087CB8;
 --about-blue-dark:#065A88;
 --about-ink:#080B10;
 --about-muted:#526879;
 --about-border:rgba(8,124,184,.16);
 --about-shadow:0 16px 38px rgba(25,78,114,.075);
 --about-canvas:linear-gradient(116deg,#f2f9fd 0%,#f8fbfe 57%,#eaf5fa 100%);
 --about-font:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",Arial,sans-serif;
}
#main-content > :is(.about-v2-hero,.about-v2-section){
 background:var(--about-canvas)!important;
 background-image:var(--about-canvas)!important;
 color:var(--about-ink)!important;
 font-family:var(--about-font)!important;
 margin:0!important;
 padding:clamp(74px,7.5vw,106px) 0!important;
 width:100%!important;
 min-width:0!important;
 box-sizing:border-box!important;
 position:relative!important;
}
#main-content > .about-v2-hero{
 padding:clamp(66px,7vw,96px) 0 clamp(74px,8vw,112px)!important;
}
#main-content > :is(.about-v2-hero,.about-v2-section) .container{
 width:min(100% - 64px,1180px)!important;
 max-width:1180px!important;
 padding:0!important;
 margin-inline:auto!important;
 box-sizing:border-box!important;
}
#main-content .about-v2-hero-grid{
 display:grid!important;
 grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr)!important;
 align-items:center!important;
 column-gap:clamp(45px,5.7vw,86px)!important;
 row-gap:34px!important;
}
#main-content .about-v2-hero-copy{
 min-width:0!important;
 text-align:left!important;
 max-width:580px!important;
}
#main-content .about-v2-eyebrow{
 display:block!important;
 width:auto!important;
 max-width:max-content!important;
 min-height:0!important;
 padding:0!important;
 margin:0 0 19px!important;
 border:0!important;
 border-radius:0!important;
 box-shadow:none!important;
 background:transparent!important;
 color:var(--about-blue)!important;
 -webkit-text-fill-color:var(--about-blue)!important;
 font-size:.76rem!important;
 font-weight:760!important;
 letter-spacing:.13em!important;
 line-height:1.45!important;
 text-transform:uppercase!important;
 text-decoration:none!important;
}
#main-content .about-v2-eyebrow::before,
#main-content .about-v2-eyebrow::after{
 display:none!important;
 content:none!important;
}
#main-content .about-v2-hero h1{
 font-family:var(--about-font)!important;
 font-size:clamp(2.55rem,4.3vw,4.55rem)!important;
 font-weight:750!important;
 letter-spacing:-.053em!important;
 line-height:1.115!important;
 text-wrap:balance!important;
 color:var(--about-ink)!important;
 -webkit-text-fill-color:var(--about-ink)!important;
 max-width:650px!important;
 margin:0 0 24px!important;
 padding:0!important;
 text-align:left!important;
 border:0!important;
 box-shadow:none!important;
}
#main-content .about-v2-hero h1 span{
 color:var(--about-blue)!important;
 -webkit-text-fill-color:var(--about-blue)!important;
 font:inherit!important;
}
#main-content .about-v2-hero-copy > p{
 max-width:560px!important;
 font-size:clamp(1.02rem,1.25vw,1.14rem)!important;
 line-height:1.85!important;
 color:var(--about-muted)!important;
 -webkit-text-fill-color:var(--about-muted)!important;
 margin:0 0 29px!important;
}
#main-content .about-v2-actions{
 display:flex!important;
 align-items:center!important;
 justify-content:flex-start!important;
 flex-wrap:wrap!important;
 gap:12px!important;
 margin:0!important;
 padding:0!important;
}
#main-content .about-v2-actions .btn{
 display:inline-flex!important;
 align-items:center!important;
 justify-content:center!important;
 gap:9px!important;
 min-height:48px!important;
 max-width:100%!important;
 padding:12px 22px!important;
 font-size:.9rem!important;
 font-weight:710!important;
 letter-spacing:0!important;
 text-transform:none!important;
 border-radius:13px!important;
 text-decoration:none!important;
 background-image:none!important;
 box-shadow:none!important;
 transition:background-color .2s ease,border-color .2s ease,transform .2s ease!important;
}
#main-content .about-v2-actions .btn-primary{
 background:var(--about-blue)!important;
 border:1px solid var(--about-blue)!important;
 color:white!important;
 -webkit-text-fill-color:white!important;
}
#main-content .about-v2-actions .btn-primary:hover{
 background:var(--about-blue-dark)!important;
 border-color:var(--about-blue-dark)!important;
 color:white!important;
}
#main-content .about-v2-actions .btn-outline{
 background:transparent!important;
 border:1px solid var(--about-blue)!important;
 color:var(--about-blue)!important;
 -webkit-text-fill-color:var(--about-blue)!important;
}
#main-content .about-v2-actions .btn-outline:hover{
 background:#e1f0f9!important;
 color:var(--about-blue-dark)!important;
 -webkit-text-fill-color:var(--about-blue-dark)!important;
}
#main-content .about-v2-hero-media{
 position:relative!important;
 display:block!important;
 width:100%!important;
 height:auto!important;
 aspect-ratio:6/5!important;
 min-width:0!important;
 max-width:590px!important;
 max-height:520px!important;
 margin:0!important;
 padding:0!important;
 background:#dceef7!important;
 border:1px solid var(--about-border)!important;
 border-radius:27% 22px 23% 22px!important;
 overflow:hidden!important;
 box-shadow:0 25px 64px rgba(8,60,94,.12)!important;
}
#main-content .about-v2-hero-media > img{
 display:block!important;
 position:relative!important;
 width:100%!important;
 height:100%!important;
 max-width:none!important;
 max-height:none!important;
 object-fit:cover!important;
 object-position:center!important;
 margin:0!important;
 padding:0!important;
 border-radius:inherit!important;
 transform:none!important;
}
#main-content .about-v2-hero-media figcaption{
 position:absolute!important;
 bottom:19px!important;
 left:19px!important;
 display:flex!important;
 align-items:center!important;
 gap:10px!important;
 padding:12px 16px!important;
 font-size:.82rem!important;
 font-weight:680!important;
 color:#153b56!important;
 background:rgba(255,255,255,.94)!important;
 border-radius:13px!important;
 box-shadow:0 8px 25px rgba(6,55,88,.13)!important;
 max-width:calc(100% - 38px)!important;
}
#main-content .about-v2-hero-media figcaption i{color:var(--about-blue)!important}
#main-content .about-v2-section-head{
 max-width:785px!important;
 display:block!important;
 text-align:center!important;
 margin:0 auto clamp(36px,4.2vw,54px)!important;
}
#main-content .about-v2-section-head .about-v2-eyebrow{
 margin:0 auto 15px!important;
}
#main-content .about-v2-section-head h2,
#main-content .about-v2-story-heading h2,
#main-content .about-v2-invitation h2{
 font-family:var(--about-font)!important;
 color:var(--about-ink)!important;
 -webkit-text-fill-color:var(--about-ink)!important;
 font-size:clamp(2.25rem,3.65vw,3.6rem)!important;
 font-weight:755!important;
 line-height:1.16!important;
 letter-spacing:-.046em!important;
 text-wrap:balance!important;
 margin:0 0 19px!important;
 padding:0!important;
 background:none!important;
 border:0!important;
 box-shadow:none!important;
 text-decoration:none!important;
}
#main-content .about-v2-section-head > p{
 font-size:clamp(1.01rem,1.3vw,1.14rem)!important;
 line-height:1.83!important;
 color:var(--about-muted)!important;
 -webkit-text-fill-color:var(--about-muted)!important;
 max-width:720px!important;
 margin:0 auto!important;
}
#main-content .about-v2-grid{
 display:grid!important;
 width:100%!important;
 gap:clamp(16px,1.8vw,24px)!important;
 align-items:stretch!important;
 justify-items:stretch!important;
 margin:0!important;
 padding:0!important;
}
#main-content .about-v2-grid-four{
 grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
#main-content .about-v2-grid-three{
 grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
#main-content .about-v2-card{
 display:flex!important;
 flex-direction:column!important;
 align-items:flex-start!important;
 justify-content:flex-start!important;
 box-sizing:border-box!important;
 width:100%!important;
 height:100%!important;
 min-width:0!important;
 min-height:0!important;
 padding:clamp(22px,2.2vw,31px)!important;
 border:1px solid var(--about-border)!important;
 border-radius:22px!important;
 background:#fff!important;
 background-image:none!important;
 box-shadow:var(--about-shadow)!important;
 text-align:left!important;
 color:var(--about-ink)!important;
 transition:transform .2s ease,box-shadow .2s ease!important;
}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
 #main-content .about-v2-card:hover{
  transform:translateY(-3px)!important;
  box-shadow:0 23px 43px rgba(25,78,114,.11)!important;
 }
}
#main-content .about-v2-card-icon{
 display:grid!important;
 place-items:center!important;
 flex:0 0 49px!important;
 width:49px!important;
 height:49px!important;
 margin:0 0 22px!important;
 padding:0!important;
 border:0!important;
 border-radius:14px!important;
 background:#e5f3fa!important;
 box-shadow:none!important;
}
#main-content .about-v2-card-icon i{
 font-size:1.23rem!important;
 color:var(--about-blue)!important;
 -webkit-text-fill-color:var(--about-blue)!important;
}
#main-content .about-v2-card h3{
 font:740 clamp(1.08rem,1.37vw,1.32rem)/1.35 var(--about-font)!important;
 letter-spacing:-.02em!important;
 color:var(--about-ink)!important;
 -webkit-text-fill-color:var(--about-ink)!important;
 margin:0 0 13px!important;
 text-align:left!important;
}
#main-content .about-v2-card p,
#main-content .about-v2-card-body p{
 color:var(--about-muted)!important;
 -webkit-text-fill-color:var(--about-muted)!important;
 font-size:clamp(.93rem,1vw,1.005rem)!important;
 font-weight:400!important;
 line-height:1.78!important;
 margin:0 0 10px!important;
 overflow-wrap:break-word!important;
}
#main-content .about-v2-card-body p:last-child,
#main-content .about-v2-card > p:last-child{margin-bottom:0!important}
#main-content .about-v2-card-body strong{color:var(--about-ink)!important;font-weight:710!important}
#main-content .about-v2-story-grid{
 display:grid!important;
 grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr)!important;
 gap:clamp(38px,7vw,105px)!important;
 align-items:start!important;
}
#main-content .about-v2-story-heading{
 min-width:0!important;
 max-width:430px!important;
 text-align:left!important;
 position:relative!important;
}
#main-content .about-v2-story-heading h2{text-align:left!important}
#main-content .about-v2-story-heading > p{
 color:var(--about-muted)!important;
 font-size:clamp(1rem,1.15vw,1.11rem)!important;
 line-height:1.8!important;
 margin:0 0 23px!important;
}
#main-content .about-v2-story-copy{
 min-width:0!important;
 color:var(--about-muted)!important;
 text-align:left!important;
}
#main-content .about-v2-story-copy p{
 color:var(--about-muted)!important;
 font-size:clamp(1.01rem,1.15vw,1.12rem)!important;
 line-height:1.92!important;
 margin:0 0 23px!important;
 overflow-wrap:break-word!important;
}
#main-content .about-v2-story-copy p:last-child{margin-bottom:0!important}
#main-content .about-v2-text-link{
 display:inline-flex!important;align-items:center!important;gap:10px!important;
 font-size:.96rem!important;font-weight:730!important;
 color:var(--about-blue)!important;
 -webkit-text-fill-color:var(--about-blue)!important;
 text-decoration:none!important;
 border:0!important;
 background:transparent!important;
 padding:6px 0!important;
}
#main-content .about-v2-text-link:hover{
 color:var(--about-blue-dark)!important;
 -webkit-text-fill-color:var(--about-blue-dark)!important;
 text-decoration:none!important;
}
#main-content .about-v2-card-number{
 font-size:.9rem!important;
 color:var(--about-blue)!important;
 -webkit-text-fill-color:var(--about-blue)!important;
 font-weight:730!important;
 margin-bottom:16px!important;
 letter-spacing:.07em!important;
}
#main-content .about-v2-bottom-link{
 margin:30px auto 0!important;
 text-align:center!important;
}
#main-content .about-v2-leader-group + .about-v2-leader-group{
 margin-top:clamp(62px,7vw,88px)!important;
}
#main-content .about-v2-subheading{
 font:730 clamp(1.46rem,2vw,1.85rem)/1.3 var(--about-font)!important;
 color:var(--about-ink)!important;
 text-align:center!important;
 letter-spacing:-.03em!important;
 margin:0 0 clamp(25px,3vw,36px)!important;
}
#main-content .about-v2-person-grid{
 display:grid!important;
 grid-template-columns:repeat(4,minmax(0,1fr))!important;
 align-items:stretch!important;
 justify-items:stretch!important;
 gap:clamp(16px,1.8vw,24px)!important;
 width:100%!important;
 padding:0!important;
 margin:0!important;
}
#main-content .about-v2-person{
 display:flex!important;
 flex-direction:column!important;
 width:100%!important;height:100%!important;min-width:0!important;
 margin:0!important;padding:0!important;
 border-radius:22px!important;
 border:1px solid var(--about-border)!important;
 overflow:hidden!important;
 background:#fff!important;
 box-shadow:var(--about-shadow)!important;
 text-align:left!important;
}
#main-content .about-v2-portrait{
 display:block!important;
 position:relative!important;
 flex:none!important;
 aspect-ratio:4/4.6!important;
 width:100%!important;height:auto!important;
 overflow:hidden!important;
 border-radius:0!important;
 background:linear-gradient(135deg,#dceef8,#edf7fc)!important;
}
#main-content .about-v2-portrait img{
 display:block!important;
 position:absolute!important;
 inset:0!important;
 width:100%!important;height:100%!important;
 object-fit:cover!important;
 object-position:center 18%!important;
 margin:0!important;padding:0!important;
 border-radius:0!important;
 transform:none!important;
 filter:none!important;
}
#main-content .about-v2-person-placeholder{
 display:grid!important;
 place-items:center!important;
 width:100%!important;height:100%!important;
 color:var(--about-blue)!important;
}
#main-content .about-v2-person-placeholder i{
 color:var(--about-blue)!important;
 font-size:3.1rem!important;
}
#main-content .about-v2-person-info{
 display:flex!important;
 flex:1!important;
 flex-direction:column!important;
 align-items:flex-start!important;
 justify-content:flex-start!important;
 gap:4px!important;
 min-width:0!important;
 padding:clamp(17px,2vw,23px)!important;
 text-align:left!important;
}
#main-content .about-v2-person-info h4{
 font:740 clamp(1.04rem,1.2vw,1.18rem)/1.36 var(--about-font)!important;
 color:var(--about-ink)!important;
 -webkit-text-fill-color:var(--about-ink)!important;
 margin:0 0 4px!important;
 overflow-wrap:break-word!important;
}
#main-content .about-v2-person-info p{
 font-size:.9rem!important;line-height:1.63!important;
 color:var(--about-muted)!important;
 -webkit-text-fill-color:var(--about-muted)!important;
 margin:0!important;
}
#main-content .about-v2-person-info .about-v2-person-role{
 color:var(--about-blue)!important;-webkit-text-fill-color:var(--about-blue)!important;
 font-weight:650!important;
}
#main-content .about-v2-person-info .about-v2-person-period{
 font-size:.84rem!important;
}
#main-content .about-v2-person-info .about-v2-person-description{
 margin-top:10px!important;
}
#main-content .about-v2-invitation-inner{
 max-width:850px!important;
 margin:0 auto!important;
 padding:clamp(30px,5vw,65px)!important;
 border:1px solid var(--about-border)!important;
 border-radius:28px!important;
 background:rgba(255,255,255,.8)!important;
 box-shadow:var(--about-shadow)!important;
 text-align:center!important;
}
#main-content .about-v2-invitation .about-v2-eyebrow{
 margin:0 auto 18px!important;
}
#main-content .about-v2-invitation p{
 max-width:630px!important;
 margin:0 auto 28px!important;
 font-size:1.07rem!important;
 line-height:1.8!important;
 color:var(--about-muted)!important;
}
#main-content .about-v2-invitation .about-v2-actions{
 justify-content:center!important;
}
/* Explicitly preserve the existing centered blue 1px section dividers. */
#main-content > .about-v2-section{
 border-top:1px solid transparent!important;
 border-image-source:var(--ack-section-divider)!important;
 border-image-slice:1!important;
 border-image-width:1 0 0!important;
 border-image-repeat:stretch!important;
}
/* No fake-button labels or decorative underline bars. */
#main-content :is(.about-v2-eyebrow,.about-v2-section-head h2,.about-v2-subheading)::after,
#main-content :is(.about-v2-eyebrow,.about-v2-section-head h2,.about-v2-subheading)::before{
 content:none!important;display:none!important;
}
#main-content .about-v2-hero a:focus-visible,
#main-content .about-v2-section a:focus-visible{
 outline:2px solid var(--about-blue)!important;outline-offset:4px!important;
}
@media(max-width:1050px){
 #main-content .about-v2-grid-four,
 #main-content .about-v2-person-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
 }
 #main-content .about-v2-hero-grid{
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)!important;
  column-gap:36px!important;
 }
}
@media(max-width:760px){
 #main-content > :is(.about-v2-hero,.about-v2-section){
  padding:clamp(56px,11vw,78px) 0!important;
 }
 #main-content > :is(.about-v2-hero,.about-v2-section) .container{
  width:min(100% - 34px,1180px)!important;
 }
 #main-content .about-v2-hero-grid,
 #main-content .about-v2-story-grid{
  grid-template-columns:minmax(0,1fr)!important;
  gap:32px!important;
 }
 #main-content .about-v2-hero-media{
  max-width:100%!important;
  aspect-ratio:6/4.6!important;
  border-radius:76px 18px 58px 18px!important;
 }
 #main-content .about-v2-hero h1{
  font-size:clamp(2.33rem,8vw,3.65rem)!important;
 }
 #main-content .about-v2-story-heading{
  max-width:720px!important;
 }
 #main-content .about-v2-grid-three{
  grid-template-columns:minmax(0,1fr)!important;
 }
}
@media(max-width:520px){
 #main-content .about-v2-grid-four,
 #main-content .about-v2-person-grid{
  grid-template-columns:minmax(0,1fr)!important;
 }
 #main-content .about-v2-actions .btn{
  width:100%!important;
 }
 #main-content .about-v2-hero-media figcaption{
  bottom:12px!important;left:12px!important;
  max-width:calc(100% - 24px)!important;
 }
 #main-content .about-v2-card{
  padding:25px!important;
 }
}
@media(prefers-reduced-motion:reduce){
 #main-content .about-v2-card,
 #main-content .about-v2-actions .btn{
  transition:none!important;
 }
}
/* Final specificity guard: older global !important section spacing must not
   override About v2's independent grid-and-section rhythm. */
#main-content:not(:has(> .academy-hero)) > section.about-v2-hero{
 padding:clamp(66px,7vw,96px) 0 clamp(74px,8vw,112px)!important;
 min-height:0!important;
}
#main-content:not(:has(> .academy-hero)) > section.about-v2-section{
 padding:clamp(74px,7.5vw,106px) 0!important;
 min-height:0!important;
}
@media(max-width:760px){
 #main-content:not(:has(> .academy-hero)) > section.about-v2-hero,
 #main-content:not(:has(> .academy-hero)) > section.about-v2-section{
  padding:clamp(56px,11vw,78px) 0!important;
 }
}