/* v0.5.5 — scoped layout for the three-step approach and its closing CTA. */
.approach-section{padding-block:80px}
.approach-section .section-heading{max-width:850px}
.approach-section .section-heading h2{font-size:clamp(38px,3.6vw,50px);line-height:1.18;margin:18px 0 0;text-wrap:balance}
.approach-section .section-heading h2 br{display:none}
.approach-section .section-heading h2 em{display:block;margin-top:5px}
.approach-section .approach-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;margin-top:48px}
.approach-section .approach-grid article{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto 1fr;align-content:start;gap:0 18px;min-width:0;border-top:1px solid var(--line);padding-top:22px}
.approach-section .approach-icon{grid-column:1;grid-row:1;width:64px;height:64px;margin:0 0 22px;border-radius:18px}
.approach-section .approach-icon svg{width:39px;height:39px}
.approach-section .step{grid-column:2;grid-row:1;align-self:start;margin:8px 0 0;font-size:15px;line-height:1.5;font-variant-numeric:tabular-nums;letter-spacing:.04em}
.approach-section .approach-grid h3{grid-column:1/-1;grid-row:2;font-size:24px;line-height:1.4;letter-spacing:-.04em;min-height:0;text-wrap:balance}
.approach-section .approach-grid p{grid-column:1/-1;grid-row:3;min-width:0;margin-top:12px;font-size:17px;line-height:1.8}
.approach-section .about-strip{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:22px;margin-top:36px;padding-top:28px}
.approach-section .about-mark{width:28px;align-self:start;margin-top:5px}
.approach-section .about-mark .brand-icon{width:20px}
.approach-section .about-strip>p{min-width:0;margin:0;font-size:16px;line-height:1.8}
.approach-section .about-strip .text-action{justify-self:end;max-width:100%;min-height:50px;margin:0;padding:11px 20px;font-size:15px;line-height:1.5;white-space:normal}
@media(max-width:1100px){
 .approach-section .approach-grid{gap:28px}
 .approach-section .approach-grid h3{font-size:22px;min-height:2.8em}
 .approach-section .about-strip{grid-template-columns:28px minmax(0,1fr);gap:16px 20px}
 .approach-section .about-strip .text-action{grid-column:2;justify-self:start}
}
@media(max-width:800px){
 .approach-section{padding-block:60px}
 .approach-section .approach-grid{grid-template-columns:1fr;gap:24px;margin-top:32px}
 .approach-section .approach-grid article{grid-template-columns:56px minmax(0,1fr);grid-template-rows:auto auto auto;column-gap:18px;padding-top:24px}
 .approach-section .approach-icon{grid-column:1;grid-row:1/3;width:56px;height:56px;margin:0;border-radius:16px}
 .approach-section .approach-icon svg{width:34px;height:34px}
 .approach-section .step{grid-column:2;grid-row:1;align-self:start;margin:0 0 4px;font-size:14px;line-height:1.4}
 .approach-section .approach-grid h3{grid-column:2;grid-row:2;align-self:start;min-height:0;font-size:23px;line-height:1.4;text-wrap:initial}
 .approach-section .approach-grid p{margin-top:14px;font-size:17px;line-height:1.8}
 .approach-section .about-strip{margin-top:28px;padding-top:24px}
}
@media(max-width:600px){
 .approach-section{padding-block:48px}
 .approach-section .section-heading{max-width:100%;text-align:left}
 .approach-section .section-heading .eyebrow{font-size:11px;letter-spacing:.07em;line-height:1.7}
 .approach-section .section-heading h2{font-size:clamp(28px,7.8vw,36px);line-height:1.2;margin-top:14px;text-wrap:balance}
 .approach-section .section-heading h2 em{margin-top:7px}
 .approach-section .approach-grid{margin-top:28px;gap:22px}
 .approach-section .approach-grid article{grid-template-columns:50px minmax(0,1fr);gap:0 16px;padding-top:20px}
 .approach-section .approach-icon{width:50px;height:50px;border-radius:14px}
 .approach-section .approach-icon svg{width:31px;height:31px}
 .approach-section .approach-grid h3{font-size:21px;line-height:1.4}
 .approach-section .approach-grid p{font-size:16px;line-height:1.8;margin-top:12px}
 .approach-section .about-strip{grid-template-columns:20px minmax(0,1fr);column-gap:14px;row-gap:20px}
 .approach-section .about-mark{width:20px;margin-top:5px}
 .approach-section .about-mark .brand-icon{width:17px}
 .approach-section .about-strip>p{font-size:16px;line-height:1.8}
 .approach-section .about-strip>p br{display:none}
 .approach-section .about-strip .text-action{grid-column:1/-1;justify-self:start;max-width:100%;min-height:50px;margin:0;padding:11px 19px;font-size:15px}
}
