/* About-page hero: existing photo with a left-hand readability gradient. */
.about-page .cw-about-hero{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;min-height:600px;padding:155px 0 90px;background:#14292c url('/images/about-header.jpg') center center/cover no-repeat;color:#fff;font-family:'Work Sans',sans-serif}
.about-page .cw-about-hero:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(9,26,29,.9) 0%,rgba(9,26,29,.76) 35%,rgba(9,26,29,.25) 70%,rgba(9,26,29,.08) 100%);pointer-events:none}
.about-page .cw-about-wrap{width:calc(100% - 72px);max-width:1376px;margin:0 auto}
.about-page .cw-about-copy{max-width:700px;text-align:left}
.about-page .cw-about-hero h1{font-family:inherit;font-weight:600;font-size:clamp(42px,4.6vw,68px)!important;line-height:1.06;letter-spacing:-2.5px;color:#fff;margin:0 0 27px;text-align:left}
.about-page .cw-about-hero p{max-width:580px;font-size:17px;line-height:1.8;color:#fff;margin:0;text-align:left}
.about-page .cw-about-established{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;line-height:1.5;color:#fff;margin-top:26px}
.about-page .cw-about-established span{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#deefa5;color:#1e3435;font-size:14px}
@media(max-width:1050px){.about-page .cw-about-wrap{width:calc(100% - 40px)}}
@media(max-width:600px){.about-page .cw-about-hero{padding:125px 0 55px;min-height:540px;background-image:url('/images/about-header-mob.jpg');background-position:center}.about-page .cw-about-hero:before{background:rgba(9,26,29,.78)}.about-page .cw-about-hero h1{font-size:clamp(36px,8.5vw,48px)!important;letter-spacing:-1.5px}.about-page .cw-about-hero p{font-size:15px;line-height:1.75}}

/* Team introduction aligned with the staff cards. */
.about-page .cw-team-heading{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:55px 15px 36px;text-align:left}
.about-page .cw-team-heading h2{font-family:'Work Sans',sans-serif;font-size:clamp(32px,3.5vw,46px);line-height:1.12;font-weight:600;letter-spacing:-1.5px;color:#1e3435;margin:0 0 16px;text-align:left}
.about-page .cw-team-heading p{font-size:16px;line-height:1.7;color:#61706c;margin:0;text-align:left}
.about-page .cw-team-presentation{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;flex-shrink:0;padding:16px 22px;border-radius:8px;background:#1e3435;color:#fff;font-size:14px;font-weight:600;line-height:1.5;text-decoration:none}
.about-page .cw-team-presentation:hover{background:#304c4c;color:#fff}
.about-page .cw-team-presentation:focus-visible{outline:3px solid #286348;outline-offset:4px}
@media(max-width:700px){.about-page .cw-team-heading{flex-direction:column;align-items:flex-start;gap:22px;padding-top:40px}.about-page .cw-team-heading p{font-size:15px}}

.about-page .cw-about-hero .cw-about-eyebrow{font-size:11px;font-weight:600;line-height:1.6;letter-spacing:1.8px;text-transform:uppercase;color:#deefa5;margin:0 0 22px;text-align:left}

/* Align body sections without the old Bootstrap float/clearfix layout. */
.about-page .container.team,.about-page #about-page .about-row>.container{width:calc(100% - 72px);max-width:1376px;margin-left:auto;margin-right:auto;padding-left:0;padding-right:0}
.about-page .cw-team-heading{padding-left:0;padding-right:0}
.about-page #about-page .about-row{max-width:none;padding:75px 0}
.about-page #about-page .about-row>.container{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:60px;align-items:center}
.about-page #about-page .about-row>.container:before,.about-page #about-page .about-row>.container:after{display:none}
.about-page #about-page .about-row>.container>.col-md-6{padding:0;width:auto;float:none;min-width:0;min-height:0}
.about-page #about-page .about-row.flipped>.container>.col-md-6:first-child{grid-column:2;grid-row:1}
.about-page #about-page .about-row.flipped>.container>.col-md-6:last-child{grid-column:1;grid-row:1}
@media(max-width:1050px){.about-page .container.team,.about-page #about-page .about-row>.container{width:calc(100% - 40px)}}
@media(max-width:900px){.about-page #about-page .about-row{padding:50px 0}.about-page #about-page .about-row>.container{grid-template-columns:minmax(0,1fr);gap:24px}.about-page #about-page .about-row>.container>.col-md-6:first-child,.about-page #about-page .about-row.flipped>.container>.col-md-6:first-child{grid-column:1;grid-row:2}.about-page #about-page .about-row>.container>.col-md-6:last-child,.about-page #about-page .about-row.flipped>.container>.col-md-6:last-child{grid-column:1;grid-row:1}}

/* Equal-height cards flow in complete rows, regardless of biography length. */
.about-page .cw-team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;align-items:stretch}
.about-page .cw-team-item{min-width:0;display:flex}
.about-page .cw-team-card{display:flex;flex-direction:column;width:100%;height:100%;margin-bottom:0;overflow:hidden;border-radius:13px}
.about-page .cw-team-card>a{display:block}
.about-page .cw-team-card img{width:100%;aspect-ratio:1.85;object-fit:cover;display:block;border-radius:0!important}
.about-page .cw-team-card-body{display:flex;flex-direction:column;flex:1;padding:22px;min-height:230px;text-align:left}
.about-page .cw-team-card-body p{margin-bottom:22px}
.about-page .cw-team-read-more{align-self:flex-start;margin-top:auto;color:#1e3435;font-size:14px;font-weight:600;line-height:1.5;padding:4px 0;border-bottom:1px solid #aebbb2;text-decoration:none}
.about-page .cw-team-read-more:hover{border-color:#1e3435}
.about-page .cw-team-read-more:focus-visible{outline:3px solid #286348;outline-offset:4px}
@media(max-width:991px){.about-page .cw-team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}}
@media(max-width:600px){.about-page .cw-team-grid{grid-template-columns:minmax(0,1fr)}.about-page .cw-team-card-body{min-height:0}}
