/* Same native vector vocabulary; varied editorial compositions for the approach. */
.approach-intro{display:grid;grid-template-columns:1.5fr .65fr;gap:55px;align-items:center}
.approach-intro h1{font-size:clamp(42px,4.4vw,62px)}
.approach-intro>div>p{font-size:20px;line-height:1.65;color:#6b5f63;margin:28px 0 0;max-width:780px}
.approach-hero-art{text-align:center}
.art-field{background:#f8f2f3;padding:28px 20px;position:relative;box-shadow:12px 12px 0 #eadcdf;transform:rotate(-3deg)}
.clarity .approach-hero-art .service-motion{width:230px;height:230px;max-width:100%;margin:auto;transform:rotate(3deg)}
.approach-hero-art>p{font-size:13px;color:#6b5f63;margin:28px 0 0}
.approach .process{background:#fff;border-top:1px solid #eadcdf}
.approach .steps{grid-template-columns:1fr 1fr;gap:32px}
.approach .step{position:relative;display:grid;grid-template-columns:110px 1fr;gap:0 25px;border-top:0;padding:32px;background:#f8f2f3;align-items:start}
.approach .step:nth-child(2),.approach .step:nth-child(3){background:#fff;border:1px solid #eadcdf}
.approach .step .number{position:absolute;right:22px;top:15px;margin:0;font-size:12px}
.approach .step .service-motion{grid-row:1/3;margin:0;width:105px;height:105px}
.approach .step h3{font-size:23px;padding-top:5px;margin:0 0 16px}
.approach .step p{grid-column:2;font-size:16px;margin:0}
.approach .workflow-mapping{background:#f8f2f3}
.approach .workflow-example{background:#8b1e2d;color:white;width:100%;max-width:none;padding:75px max(5%,calc((100vw - 1220px)/2))}
.approach .workflow-example .label,.approach .workflow-example .section-title p,.approach .workflow-example .workflow-chain span,.approach .workflow-example .workflow-chain p,.approach .workflow-example .example-note{color:#f3d9de}
.approach .workflow-chain li{border-color:#d89da9}
.approach .workflow-chain li:after{color:white}
.approach .workflow-example .example-note{border-color:#b46c79}
:is(.service,[data-motion]).is-animating .document-scan{animation:document-read 4.5s ease-in-out infinite}
:is(.service,[data-motion]).is-animating .document-check{animation:document-approved 4.5s ease-in-out infinite;transform-box:fill-box;transform-origin:center}
:is(.service,[data-motion]).is-animating .voice{animation:voice-talk 2.4s ease-in-out infinite;transform-box:fill-box;transform-origin:center}
:is(.service,[data-motion]).is-animating .voice-b{animation-delay:-.4s}
:is(.service,[data-motion]).is-animating .voice-c{animation-delay:-.9s}
:is(.service,[data-motion]).is-animating .voice-d{animation-delay:-1.3s}
:is(.service,[data-motion]).is-animating .voice-e{animation-delay:-1.7s}
@keyframes document-read{0%,90%,100%{transform:translateY(-6px);opacity:.5}45%,60%{transform:translateY(60px);opacity:1}}
@keyframes document-approved{0%,35%,100%{transform:scale(.92)}55%,80%{transform:scale(1.05)}}
@keyframes voice-talk{0%,100%{transform:scaleY(.6)}35%{transform:scaleY(1)}65%{transform:scaleY(.4)}}
@media(max-width:1000px){.approach-intro{grid-template-columns:1.4fr .7fr;gap:30px}.clarity .approach-hero-art .service-motion{width:190px;height:190px}.approach .step{grid-template-columns:85px 1fr;padding:25px;gap:0 18px}.approach .step .service-motion{width:85px;height:85px}}
@media(max-width:800px){.approach-intro{grid-template-columns:1fr}.approach-intro>div>p{font-size:18px}.approach-hero-art{max-width:280px;justify-self:center;width:100%;margin:10px 0}.approach .steps{grid-template-columns:1fr}.approach .step{grid-template-columns:90px 1fr}.approach .workflow-example{padding-top:55px;padding-bottom:55px}}
@media(max-width:400px){.approach .step{grid-template-columns:1fr}.approach .step .service-motion{grid-row:auto;margin-bottom:15px}.approach .step p{grid-column:1}.approach-intro h1{font-size:38px}}
@media(prefers-reduced-motion:reduce){[data-motion].is-animating svg *{animation:none!important}}
