/* One explicit banner surface. No layered pseudo-element panels or inherited
   grid placement: image and content cannot detach into empty columns. */
.closing-section{position:relative;isolation:isolate;overflow:hidden;background:#0b2d60 url('assets/campus-architecture.png') right 48%/auto 420px no-repeat;color:#fff}
.closing-section:before{content:'';position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,#0b2d60 0%,#0b2d60 37%,#0b2d60e8 58%,#0b2d6080 100%);opacity:1;pointer-events:none}
.closing-section:after{content:none;display:none}
.closing-section .closing-inner{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:42px;height:auto;min-height:220px;padding:32px 68px 32px 326px}
.closing-section .closing-pennant{position:absolute;inset:0 auto 0 0;display:block;width:300px;height:100%;margin:0;background:url('assets/campus-shared-campaign.png') 49% 31%/auto 620px no-repeat;mask-image:linear-gradient(90deg,#000 65%,transparent 100%);opacity:.95;filter:none;animation:none;transform:none;pointer-events:none}
.closing-section .closing-inner h2{position:relative;grid-column:auto;font:400 60px/1.02 var(--font-display);letter-spacing:-.015em;max-width:550px;margin:0;color:#fff}
.closing-section .closing-inner h2 em{color:#39cbed;font-style:normal}
.closing-section .closing-inner>div:last-child{position:relative;grid-column:auto;display:block;flex:0 0 255px;margin:0}
.closing-section .button{width:100%;max-width:none;min-height:50px;background:#39ceeb;color:#0a3267}
@media(min-width:681px) and (max-width:1100px){.closing-section .closing-inner{padding-left:205px;padding-right:40px;gap:30px}.closing-section .closing-pennant{width:200px;background-size:auto 530px}.closing-section .closing-inner h2{font-size:47px}.closing-section .closing-inner>div:last-child{flex-basis:218px}}
@media(max-width:680px){.closing-section{background-position:right center;background-size:auto 360px}.closing-section:before{background:linear-gradient(90deg,#0b2d60f5,#0b2d60d9 55%,#0b2d6090)}.closing-section .closing-inner{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:25px;min-height:260px;padding:33px 22px}.closing-section .closing-pennant{display:none}.closing-section .closing-inner h2{font-size:49px;max-width:100%;line-height:1.04}.closing-section .closing-inner>div:last-child{flex:0 0 auto;width:220px;align-self:flex-start}.closing-section .button{font-size:12px;min-height:49px}.footer-attribution .powered{flex-shrink:0;white-space:nowrap;gap:7px}.footer-attribution .powered img{width:112px}.footer-attribution small{white-space:nowrap;font-size:9px}.footer-attribution{gap:10px}}
@media(max-width:370px){.closing-section .closing-inner{padding-left:17px;padding-right:17px}.closing-section .closing-inner h2{font-size:43px}.footer-attribution .powered{font-size:8px}.footer-attribution .powered img{width:100px}.footer-attribution small{font-size:8px}}
@media(min-width:681px) and (max-width:800px){.closing-section .closing-inner{padding-left:40px;gap:24px}.closing-section .closing-pennant{display:none}.closing-section .closing-inner h2{font-size:42px}.closing-section .closing-inner>div:last-child{flex-basis:210px}}
/* Shared campaign flag; no participating organization is singled out. */
.closing-section .closing-pennant{background-position:62% 27%}
/* Match the header's reversed campaign flag. */
.closing-section .closing-pennant{background-image:url('assets/campus-white-flag-blue.png');background-position:52% 27%}
