.clients-section{position:relative;overflow:hidden;background:#f8f6f1}
.clients-section::before,.clients-section::after{content:"";position:absolute;border-radius:50%;pointer-events:none;z-index:0}
.clients-section::before{width:520px;height:520px;right:-220px;top:110px;background:radial-gradient(circle,rgba(245,138,60,.075) 0 34%,rgba(245,138,60,.028) 35% 54%,transparent 55%)}
.clients-section::after{width:620px;height:620px;left:-340px;bottom:-320px;background:radial-gradient(circle,rgba(24,43,62,.05) 0 38%,rgba(24,43,62,.018) 39% 57%,transparent 58%)}
.clients-layout{position:relative;z-index:1;display:grid;gap:46px}
.clients-heading{margin-bottom:0}
.clients-eyebrow{display:flex;flex-direction:column;align-items:flex-start;gap:2px}
.clients-heading h2{margin:0;font-size:clamp(2.45rem,4vw,4.35rem);line-height:1.03;white-space:nowrap}
.clients-heading h2 em{display:block;margin-top:10px;color:var(--copper)}
.client-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;border:0}
.client-principles article{position:relative;overflow:hidden;min-height:300px;padding:30px 30px 32px;border:1px solid #e0e2de;border-radius:12px;background:rgba(255,255,255,.88);box-shadow:0 12px 30px rgba(24,43,62,.045)}
.client-principles article::after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;right:-85px;bottom:-95px;background:rgba(24,43,62,.035);pointer-events:none}
.client-principles h3{position:relative;z-index:1;margin:0 0 14px;color:var(--ink);font-size:1.38rem;line-height:1.18;font-weight:500;white-space:normal}
.client-principles p{position:relative;z-index:1;margin:0;color:var(--muted);font-size:.9rem;line-height:1.63}
.client-needs{position:relative;display:grid;gap:24px;padding-top:6px}
.client-needs::before{content:"";position:absolute;right:2%;top:-8px;width:120px;height:70px;opacity:.35;background-image:radial-gradient(circle,#c6cbc7 1.4px,transparent 1.5px);background-size:13px 13px;pointer-events:none}
.client-needs-intro{position:relative;z-index:1;max-width:900px;margin:0 auto;text-align:center}.client-needs-title{margin:0 0 10px;color:var(--ink);font-size:clamp(1.75rem,2.6vw,2.5rem);line-height:1.15;letter-spacing:-.025em;text-transform:none;font-weight:400}.client-needs-intro p{max-width:820px;margin:0 auto;color:var(--muted);font-size:.95rem;line-height:1.55}
.client-needs-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.client-needs-row{position:relative;overflow:hidden;min-height:230px;padding:26px 24px 28px;border:1px solid #e1e2dd;border-radius:10px;box-shadow:0 8px 24px rgba(24,43,62,.035)}
.client-needs-row::after{content:"";position:absolute;width:115px;height:115px;border-radius:50%;right:-55px;top:-58px;opacity:.13;background:currentColor;pointer-events:none}
.client-needs-row:nth-child(1){color:#315c82;background:#eef5fa}
.client-needs-row:nth-child(2){color:#b85d22;background:#fbf1e9}
.client-needs-row:nth-child(3){color:#31745a;background:#edf6f1}
.client-needs-row:nth-child(4){color:#6655a8;background:#f2effa}
.client-needs-row h4{position:relative;z-index:1;margin:0 0 16px;color:currentColor;font-size:1.35rem;line-height:1.18;font-weight:400;display:flex;align-items:center;gap:12px}.client-needs-icon{flex:0 0 42px;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,currentColor 13%,white)}.client-needs-icon svg{width:25px;height:25px;fill:none;stroke:var(--ink);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.client-needs-row h4>span:last-child{min-width:0}
.client-needs-row p{position:relative;z-index:1;margin:0;color:var(--muted);font-size:.88rem;line-height:1.58;max-width:900px}
@media(max-width:1200px){.clients-heading h2{font-size:clamp(2.2rem,3.7vw,3.6rem)}.client-needs-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1000px){.clients-heading h2{white-space:normal}.client-principles{grid-template-columns:1fr}.client-principles article{min-height:0}}
@media(max-width:720px){.client-needs-list{grid-template-columns:1fr}.client-needs-row{min-height:0}.client-needs::before{display:none}}
@media(max-width:560px){.clients-layout{gap:34px}.clients-heading h2{font-size:2.35rem}.client-principles article{padding:24px 22px 26px}.client-principles h3{font-size:1.25rem;white-space:normal}.client-needs-row{padding:22px 20px 24px}.client-needs-row h4{font-size:1.15rem}.client-needs-row p{font-size:.88rem}}
