/* Story v2 — page-scoped, matched to About v2 and homepage. */
:root{--story-ink:#080B10;--story-blue:#087CB8;--story-deep:#065A88;--story-muted:#526879;--story-border:rgba(8,124,184,.16);--story-shadow:0 16px 38px rgba(25,78,114,.075);--story-hue:linear-gradient(116deg,#f2f9fd 0%,#f8fbfe 57%,#eaf5fa 100%);--story-font:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",Arial,sans-serif}
#main-content:not(:has(> .academy-hero)) > :is(.story-v2-hero,.story-v2-section){
 position:relative!important;width:100%!important;min-height:0!important;
 margin:0!important;padding:clamp(72px,7.5vw,106px) 0!important;
 color:var(--story-ink)!important;background:var(--story-hue)!important;
 background-image:var(--story-hue)!important;
 font-family:var(--story-font)!important;box-sizing:border-box!important}
#main-content:not(:has(> .academy-hero)) > .story-v2-hero{padding:clamp(67px,7vw,100px) 0 clamp(78px,8vw,114px)!important}
#main-content > :is(.story-v2-hero,.story-v2-section) .container{
 width:min(100% - 64px,1180px)!important;max-width:1180px!important;
 margin-inline:auto!important;padding:0!important;box-sizing:border-box!important}
#main-content .story-v2-hero-grid{display:grid!important;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr)!important;
 align-items:center!important;gap:clamp(36px,5.7vw,86px)!important}
#main-content .story-v2-hero-copy{min-width:0!important;text-align:left!important;max-width:590px!important}
#main-content .story-v2-breadcrumb{
 display:flex!important;flex-wrap:wrap!important;gap:9px!important;
 align-items:center!important;margin:0 0 30px!important;
 background:transparent!important;border:0!important;padding:0!important}
#main-content .story-v2-breadcrumb :is(a,span){
 font-size:.85rem!important;font-weight:550!important;color:#526879!important;
 -webkit-text-fill-color:#526879!important;text-decoration:none!important}
#main-content .story-v2-breadcrumb a:hover{color:var(--story-blue)!important;-webkit-text-fill-color:var(--story-blue)!important}
#main-content .story-v2-breadcrumb [aria-current]{font-weight:700!important;color:var(--story-blue)!important;-webkit-text-fill-color:var(--story-blue)!important}
#main-content .story-v2-eyebrow{
 display:block!important;width:max-content!important;max-width:100%!important;
 min-height:0!important;background:transparent!important;background-image:none!important;
 padding:0!important;margin:0 0 18px!important;border:0!important;border-radius:0!important;box-shadow:none!important;
 color:var(--story-blue)!important;-webkit-text-fill-color:var(--story-blue)!important;
 font:.75rem/1.5 var(--story-font)!important;font-weight:760!important;
 letter-spacing:.13em!important;text-transform:uppercase!important;text-decoration:none!important}
#main-content .story-v2-eyebrow::before,#main-content .story-v2-eyebrow::after{display:none!important;content:none!important}
#main-content :is(.story-v2-hero,.story-v2-section) :is(h1,h2,h3){
 font-family:var(--story-font)!important;color:var(--story-ink)!important;
 -webkit-text-fill-color:var(--story-ink)!important;
 letter-spacing:-.044em!important;text-shadow:none!important;
 text-decoration:none!important;border-bottom:0!important;box-shadow:none!important}
#main-content .story-v2-hero h1{
 font-size:clamp(3rem,5.1vw,5.15rem)!important;font-weight:760!important;
 line-height:1.1!important;max-width:650px!important;margin:0 0 24px!important;text-wrap:balance!important}
#main-content .story-v2-hero-copy > p{
 max-width:570px!important;color:var(--story-muted)!important;-webkit-text-fill-color:var(--story-muted)!important;
 font-size:clamp(1.03rem,1.3vw,1.15rem)!important;line-height:1.83!important;margin:0 0 30px!important}
#main-content .story-v2-actions{
 display:flex!important;flex-wrap:wrap!important;align-items:center!important;justify-content:flex-start!important;
 gap:12px!important;padding:0!important;margin:0!important}
#main-content .story-v2-actions .btn{
 display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;
 padding:12px 22px!important;min-height:48px!important;
 border-radius:13px!important;font:.91rem/1.4 var(--story-font)!important;
 font-weight:710!important;text-transform:none!important;letter-spacing:0!important;
 background-image:none!important;box-shadow:none!important;text-decoration:none!important}
#main-content .story-v2-actions .btn-primary{
 background:var(--story-blue)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;
 border:1px solid var(--story-blue)!important}
#main-content .story-v2-actions .btn-primary:hover{
 background:var(--story-deep)!important;border-color:var(--story-deep)!important}
#main-content .story-v2-actions .btn-outline{
 background:transparent!important;border:1px solid var(--story-blue)!important;
 color:var(--story-blue)!important;-webkit-text-fill-color:var(--story-blue)!important}
#main-content .story-v2-actions .btn-outline:hover{background:#e1f0f9!important;color:var(--story-deep)!important}
#main-content .story-v2-hero-media{
 position:relative!important;display:block!important;
 width:100%!important;min-width:0!important;aspect-ratio:6/5!important;max-height:520px!important;
 margin:0!important;padding:0!important;border:1px solid var(--story-border)!important;
 border-radius:27% 22px 23% 22px!important;background:#e1eef7!important;
 overflow:hidden!important;box-shadow:0 25px 64px rgba(8,60,94,.12)!important}
#main-content .story-v2-hero-media img{
 display:block!important;position:relative!important;
 width:100%!important;height:100%!important;max-width:none!important;
 object-fit:cover!important;object-position:center!important;
 transform:none!important;filter:none!important;margin:0!important}
#main-content .story-v2-hero-media figcaption{
 position:absolute!important;left:19px!important;bottom:19px!important;
 display:flex!important;gap:9px!important;align-items:center!important;
 border-radius:13px!important;max-width:calc(100% - 38px)!important;
 padding:12px 16px!important;background:rgba(255,255,255,.95)!important;
 color:#153b56!important;font-size:.83rem!important;font-weight:690!important;
 box-shadow:0 8px 25px rgba(6,55,88,.13)!important}
#main-content .story-v2-hero-media figcaption i{color:var(--story-blue)!important}
#main-content .story-v2-header{
 max-width:780px!important;margin:0 auto clamp(36px,4vw,54px)!important;text-align:center!important}
#main-content .story-v2-header .story-v2-eyebrow{margin:0 auto 16px!important}
#main-content .story-v2-header h2,#main-content .story-v2-invitation h2{
 font-size:clamp(2.35rem,3.8vw,3.7rem)!important;
 font-weight:755!important;line-height:1.16!important;margin:0 0 18px!important;text-wrap:balance!important}
#main-content .story-v2-header p{
 max-width:700px!important;margin:0 auto!important;
 font-size:clamp(1.02rem,1.2vw,1.12rem)!important;line-height:1.8!important;
 color:var(--story-muted)!important;-webkit-text-fill-color:var(--story-muted)!important}
#main-content .story-v2-milestones{
 display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
 gap:clamp(17px,2vw,24px)!important;align-items:stretch!important}
#main-content .story-v2-milestone{
 display:flex!important;flex-direction:column!important;justify-content:flex-start!important;
 min-width:0!important;gap:10px!important;height:100%!important;
 padding:clamp(25px,3vw,38px)!important;border:1px solid var(--story-border)!important;
 border-radius:22px!important;background:#fff!important;box-shadow:var(--story-shadow)!important}
#main-content .story-v2-milestone strong{
 font:760 clamp(1.65rem,2.3vw,2.3rem)/1.15 var(--story-font)!important;
 letter-spacing:-.05em!important;color:var(--story-blue)!important}
#main-content .story-v2-milestone span{
 font-size:.98rem!important;line-height:1.65!important;
 color:var(--story-muted)!important}
#main-content .story-v2-chapter-grid{
 display:grid!important;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)!important;
 gap:clamp(36px,7vw,105px)!important;align-items:start!important}
#main-content .story-v2-chapter-heading{max-width:450px!important;min-width:0!important;text-align:left!important}
#main-content .story-v2-chapter-heading h2{
 font-size:clamp(2.35rem,3.65vw,3.65rem)!important;
 font-weight:755!important;line-height:1.16!important;margin:0 0 22px!important;text-wrap:balance!important}
#main-content .story-v2-chapter-heading > p{
 font-size:clamp(1.04rem,1.26vw,1.14rem)!important;line-height:1.8!important;
 color:var(--story-muted)!important;margin:0!important}
#main-content .story-v2-chapter-copy{min-width:0!important}
#main-content .story-v2-chapter-copy p{
 color:var(--story-muted)!important;-webkit-text-fill-color:var(--story-muted)!important;
 font-size:clamp(1.02rem,1.18vw,1.12rem)!important;
 line-height:1.95!important;margin:0 0 23px!important;overflow-wrap:break-word!important}
#main-content .story-v2-chapter-copy p:last-child{margin-bottom:0!important}
#main-content .story-v2-number-art{
 width:min(100%,290px)!important;min-height:155px!important;
 display:flex!important;align-items:center!important;justify-content:space-between!important;
 padding:0!important;margin-top:35px!important;
 border-top:1px solid rgba(8,124,184,.18)!important;
 background:transparent!important;box-shadow:none!important}
#main-content .story-v2-number-art span{
 font:760 clamp(5rem,7vw,8rem)/1 var(--story-font)!important;
 letter-spacing:-.09em!important;color:#cce5f4!important}
#main-content .story-v2-number-art i{
 font-size:clamp(2.2rem,3.5vw,3.7rem)!important;color:var(--story-blue)!important}
#main-content .story-v2-quote{
 max-width:850px!important;margin:0 auto!important;
 padding:clamp(34px,5vw,70px)!important;
 border:1px solid var(--story-border)!important;border-radius:25px!important;
 background:#fff!important;box-shadow:var(--story-shadow)!important;text-align:center!important}
#main-content .story-v2-quote .story-v2-eyebrow{margin:0 auto 16px!important}
#main-content .story-v2-quote h2{
 font-size:clamp(2.35rem,3.7vw,3.6rem)!important;
 font-weight:750!important;line-height:1.16!important;margin:0 0 22px!important}
#main-content .story-v2-quote p{
 max-width:700px!important;margin:0 auto!important;
 font-size:clamp(1.04rem,1.35vw,1.2rem)!important;
 line-height:1.85!important;color:var(--story-muted)!important}
#main-content .story-v2-gallery-grid{
 display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
 gap:clamp(35px,6vw,90px)!important;align-items:center!important}
#main-content .story-v2-gallery-copy{min-width:0!important;max-width:550px!important}
#main-content .story-v2-gallery-copy h2{
 font-size:clamp(2.35rem,3.8vw,3.65rem)!important;
 line-height:1.16!important;font-weight:750!important;margin:0 0 24px!important}
#main-content .story-v2-gallery-copy p{
 color:var(--story-muted)!important;font-size:1.08rem!important;
 line-height:1.85!important;margin:0 0 25px!important}
#main-content .story-v2-text-link{
 display:inline-flex!important;align-items:center!important;gap:10px!important;
 color:var(--story-blue)!important;-webkit-text-fill-color:var(--story-blue)!important;
 text-decoration:none!important;border:0!important;padding:6px 0!important;
 font-size:.96rem!important;font-weight:730!important}
#main-content .story-v2-text-link:hover{color:var(--story-deep)!important}
#main-content .story-v2-gallery-media{
 width:100%!important;aspect-ratio:6/4.4!important;
 min-width:0!important;margin:0!important;overflow:hidden!important;
 border-radius:22px 22% 22px 22%!important;
 border:1px solid var(--story-border)!important;background:#e2eef7!important;
 box-shadow:0 23px 58px rgba(8,60,94,.1)!important}
#main-content .story-v2-gallery-media img{
 width:100%!important;height:100%!important;max-width:none!important;
 display:block!important;object-fit:cover!important;object-position:center!important;
 transform:none!important}
#main-content .story-v2-invitation-inner{
 max-width:850px!important;margin:0 auto!important;
 padding:clamp(34px,5vw,65px)!important;
 border-radius:25px!important;border:1px solid var(--story-border)!important;
 background:rgba(255,255,255,.84)!important;box-shadow:var(--story-shadow)!important;
 text-align:center!important}
#main-content .story-v2-invitation .story-v2-eyebrow{margin:0 auto 19px!important}
#main-content .story-v2-invitation p{
 max-width:640px!important;margin:0 auto 28px!important;
 font-size:1.07rem!important;line-height:1.85!important;color:var(--story-muted)!important}
#main-content .story-v2-invitation .story-v2-actions{justify-content:center!important}
#main-content:not(:has(> .academy-hero)) > section.story-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}
/* Plain labels; accessible focus on real navigation and controls only. */
#main-content .story-v2-hero a:focus-visible,#main-content .story-v2-section a:focus-visible{
 outline:2px solid var(--story-blue)!important;outline-offset:4px!important}
@media(max-width:1050px){
 #main-content .story-v2-hero-grid{gap:36px!important}
 #main-content .story-v2-chapter-grid{gap:44px!important}
}
@media(max-width:760px){
 #main-content:not(:has(> .academy-hero)) > :is(.story-v2-hero,.story-v2-section){
  padding:clamp(56px,11vw,78px) 0!important}
 #main-content > :is(.story-v2-hero,.story-v2-section) .container{
  width:min(100% - 34px,1180px)!important}
 #main-content .story-v2-hero-grid,#main-content .story-v2-chapter-grid,
 #main-content .story-v2-gallery-grid{grid-template-columns:minmax(0,1fr)!important;gap:32px!important}
 #main-content .story-v2-milestones{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 #main-content .story-v2-hero-media{aspect-ratio:6/4.6!important;border-radius:76px 18px 58px 18px!important}
 #main-content .story-v2-hero h1{font-size:clamp(2.6rem,8vw,4rem)!important}
 #main-content .story-v2-number-art{min-height:105px!important;margin-top:15px!important}
}
@media(max-width:520px){
 #main-content .story-v2-milestones{grid-template-columns:minmax(0,1fr)!important}
 #main-content .story-v2-actions .btn{width:100%!important}
 #main-content .story-v2-hero-media figcaption{left:12px!important;bottom:12px!important;max-width:calc(100% - 24px)!important}
 #main-content .story-v2-quote{padding:30px 23px!important}
}
@media(prefers-reduced-motion:reduce){
 #main-content .story-v2-actions .btn{transition:none!important}
}
