/* Approach chapter: the same limestone, emerald glass and editorial rail as services. */
.about-page .about-approach{position:relative;isolation:isolate;padding:68px 0 62px;background:linear-gradient(145deg,#edf1e8,#f4f5ef 58%,#eef3ec)}
.about-approach:before{content:"";position:absolute;inset:0 0 auto;height:60px;background:linear-gradient(#e4ece380,transparent);z-index:-1;pointer-events:none}
.about-approach-shell{display:grid;grid-template-columns:84px minmax(0,1fr);gap:40px;align-items:start}
.about-approach-marker{padding-top:4px;min-width:0}
.about-approach-marker>span{display:block;font-size:20px;line-height:1;color:#2c6048;letter-spacing:-.04em}
.about-approach-marker>span:after{content:"";display:block;width:32px;height:1px;background:#91ac96;margin:17px 0}
.about-page .about-approach-marker .nexo-eyebrow{font-size:9px;letter-spacing:.18em;line-height:1.8;margin:0;display:block;color:#476651;overflow-wrap:anywhere}
.about-approach-marker .nexo-eyebrow:after{display:none}
.about-approach-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.43fr);gap:36px;align-items:end;margin-bottom:34px}
.about-page .about-approach .nexo-title{font-size:clamp(36px,3.2vw,56px);line-height:1.04;letter-spacing:-.052em;margin:0;max-width:880px;text-wrap:initial;overflow-wrap:normal}
.about-page .about-approach .nexo-title span{background-image:linear-gradient(105deg,#086341,#0e8c59)}
.about-page .about-approach-heading .nexo-lead{font-size:15px;line-height:1.7;color:#5b6d5e;max-width:360px;margin:0 0 3px}
.about-approach-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch}
.about-approach-card{position:relative;isolation:isolate;min-width:0;display:flex;flex-direction:column;padding:26px 27px 20px;border:1px solid #cddacc;border-radius:7px;background:linear-gradient(145deg,#f7f7f1d9,#edeee6d9);overflow:hidden;transition:border-color .3s,box-shadow .3s}
.about-approach-card:before{content:"";position:absolute;inset:auto -30% -30%;height:72%;z-index:-1;background:radial-gradient(ellipse at center,#cfdfcc66,transparent 66%);pointer-events:none}
.about-approach-card-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px}
.about-approach-index{font-size:11px;font-variant-numeric:tabular-nums;letter-spacing:.05em;color:#527960}
.about-approach-symbol{width:25px;height:25px;color:#477f59;flex-shrink:0}
.about-page .about-approach-card h3{font-size:clamp(24px,1.85vw,29px);line-height:1.08;letter-spacing:-.04em;margin:0 0 15px;color:#102b1b}
.about-page .about-approach-card p{font-size:14px;line-height:1.7;color:#5a6d5b;margin:0;overflow-wrap:anywhere}
.about-approach-card-art{height:190px;margin:24px 0 0;display:grid;place-items:center;position:relative;flex-shrink:0}
.about-approach-card-art:after{content:"";position:absolute;left:7%;right:7%;bottom:0;height:1px;background:linear-gradient(90deg,transparent,#9bad964d,transparent)}
.about-approach-card-art img{display:block;width:100%;height:100%;max-height:190px;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 7px 6px #3149320a);transition:transform .45s cubic-bezier(.2,.7,.2,1)}
.about-approach-card-copy{flex:1}
.about-approach-card-link{margin-top:20px;font-size:13px;line-height:1.6;color:#17633d}
.about-approach-action{margin-top:26px;display:flex;justify-content:flex-end}
.about-approach-action .nexo-btn{min-height:48px;font-size:13px;padding:13px 22px;gap:24px;background:transparent;border-color:#8aaa93;color:#164b31}
.about-approach-action .nexo-btn:is(:hover,:focus-visible){background:var(--forest);color:white;border-color:var(--forest)}
@media(hover:hover){.about-approach-card:hover{border-color:#98b59e;box-shadow:0 12px 28px #2e533c09}.about-approach-card:hover img{transform:translateY(-3px)}}
@media(max-width:1200px){
 .about-approach-shell{grid-template-columns:60px minmax(0,1fr);gap:26px}
 .about-approach-heading{grid-template-columns:minmax(0,1fr) 260px;gap:26px}
 .about-page .about-approach .nexo-title{font-size:42px}
 .about-page .about-approach-heading .nexo-lead{font-size:14px}
 .about-approach-card{padding:22px 21px 18px}
 .about-approach-cards{gap:16px}
 .about-page .about-approach-card h3{font-size:25px}
 .about-page .about-approach-card p{font-size:13px}
 .about-approach-card-art{height:165px}
 .about-approach-card-art img{max-height:165px}
}
@media(max-width:1000px){
 .about-page .about-approach{padding:52px 0}
 .about-approach-shell{display:block}
 .about-approach-marker{display:flex;align-items:center;gap:18px;padding:0;margin-bottom:24px}
 .about-approach-marker>span{font-size:12px}
 .about-approach-marker>span:after{display:none}
 .about-page .about-approach-marker .nexo-eyebrow{font-size:10px}
 .about-approach-heading{grid-template-columns:minmax(0,1fr);gap:20px;margin-bottom:28px}
 .about-page .about-approach-heading .nexo-lead{max-width:600px;font-size:16px}
}
@media(max-width:760px){
 .about-approach-cards{grid-template-columns:minmax(0,1fr);gap:16px}
 .about-approach-card{display:grid;grid-template-columns:minmax(0,1fr) 150px;column-gap:20px;padding:23px 24px;align-items:center}
 .about-approach-card-top{grid-column:1;align-self:start;margin-bottom:18px}
 .about-approach-card-copy{grid-column:1;align-self:start}
 .about-approach-card-art{grid-column:2;grid-row:1/3;margin:0;height:180px}
 .about-approach-card-art img{max-height:180px}
 .about-approach-card-link{grid-column:1/-1}
 .about-page .about-approach-card p{font-size:14px}
 .about-approach-action{justify-content:flex-start}
}
@media(max-width:500px){
 .about-page .about-approach{padding:40px 0}
 .about-page .about-approach .nexo-title{font-size:clamp(33px,8.8vw,43px);overflow-wrap:break-word}
 .about-page .about-approach-heading .nexo-lead{font-size:15px;line-height:1.7}
 .about-approach-card{display:flex;padding:22px 23px 18px;align-items:stretch}
 .about-approach-card-top{align-self:stretch;margin-bottom:23px}
 .about-page .about-approach-card h3{font-size:27px}
 .about-approach-card-art{height:170px;margin:20px 0 0;width:100%}
 .about-approach-card-art img{max-height:170px}
 .about-approach-action .nexo-btn{font-size:13px;gap:18px;max-width:100%;padding:13px 18px}
}
@media(prefers-reduced-motion:reduce){.about-approach-card,.about-approach-card-art img{transition:none}.about-approach-card:hover img{transform:none}}
@media(forced-colors:active){.about-approach-card{background:Canvas;border-color:CanvasText}.about-approach-card-art{display:none}.about-approach-card:before,.about-approach:before{display:none}}
