/* 0.1.19 Who we work for v5 (Designer, approved). Scoped under .fp-who. Source: design/who-v5/who.css */

.fp-who{--navy:#122A47;--deep:#104778;--blue:#2152D0;--light:#85ADCA;font-family:Poppins,system-ui,sans-serif;background:#fff}
.fp-who .fp-who__head{max-width:1200px;margin:0 auto;padding:88px 24px 56px;display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:end}
.fp-who .fp-eyebrow{display:flex;align-items:center;gap:14px;margin:0 0 18px;font-size:14px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--blue)}
.fp-who .fp-eyebrow::before{content:"";width:44px;height:4px;border-radius:2px;background:var(--blue)}
.fp-who .fp-who__head h2{margin:0;font-size:52px;line-height:1.1;font-weight:600;letter-spacing:-.015em;color:var(--navy)}
.fp-who .fp-who__head>p{margin:0;font-size:18px;line-height:1.7;color:#42556B;padding-left:28px;border-left:4px solid var(--blue)}

.fp-who .fp-panels{position:relative;display:flex;background:var(--blue)}   
.fp-who .fp-panel{position:relative;flex:1 1 50%;min-height:660px;display:flex;align-items:flex-end;color:#fff;overflow:hidden;background:var(--navy)}
.fp-who .fp-panel--a{z-index:2;clip-path:polygon(0 0,100% 0,calc(100% - 64px) 100%,0 100%)}
.fp-who .fp-panel--b{margin-left:-56px;clip-path:polygon(64px 0,100% 0,100% 100%,0 100%)}
.fp-who .fp-panel picture{position:absolute;inset:0}.fp-who .fp-panel img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.fp-who .fp-panel::before{content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(180deg,rgba(18,42,71,0) 0%,rgba(18,42,71,.18) 40%,rgba(14,32,58,.86) 74%,rgba(11,26,48,.96) 100%)}
.fp-who .fp-panel__body{position:relative;z-index:2;width:100%;padding:0 72px 64px 56px}
.fp-who .fp-panel--b .fp-panel__body{padding:0 56px 64px 112px}
.fp-who .fp-icon{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;margin-bottom:26px;background:var(--blue);
  border:3px solid rgba(133,173,202,.85);box-shadow:0 0 0 10px rgba(133,173,202,.22),0 10px 28px rgba(33,82,208,.55)}
.fp-who .fp-icon svg{width:38px;height:38px;fill:none;stroke:#fff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.fp-who .fp-panel h3{margin:0 0 22px;font-size:46px;line-height:1.1;font-weight:600;letter-spacing:-.01em;color:#fff}
.fp-who .fp-list{margin:0;padding:0;list-style:none;display:grid;gap:14px}
.fp-who .fp-list li{display:flex;align-items:center;gap:14px;font-size:18px;line-height:1.4;font-weight:500;color:#fff}
.fp-who .fp-list li::before{content:"";flex:none;width:24px;height:24px;border-radius:50%;background:var(--blue) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E") center/16px no-repeat}
.fp-who .fp-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

@media (max-width:1024px){
  .fp-who .fp-who__head{padding:64px 24px 44px;gap:32px}.fp-who .fp-who__head h2{font-size:40px}.fp-who .fp-who__head p{font-size:16px}
  .fp-who .fp-panel{min-height:600px}.fp-who .fp-panel--a{clip-path:polygon(0 0,100% 0,calc(100% - 48px) 100%,0 100%)}
  .fp-who .fp-panel--b{margin-left:-40px;clip-path:polygon(48px 0,100% 0,100% 100%,0 100%)}
  .fp-who .fp-panel__body{padding:0 52px 48px 32px}.fp-who .fp-panel--b .fp-panel__body{padding:0 32px 48px 80px}
  .fp-who .fp-panel h3{font-size:36px}.fp-who .fp-list li{font-size:16px}.fp-who .fp-icon{width:64px;height:64px}.fp-who .fp-icon svg{width:34px;height:34px}}

@media (max-width:767px){
  .fp-who .fp-who__head{grid-template-columns:1fr;gap:22px;padding:48px 20px 36px}.fp-who .fp-who__head h2{font-size:32px}
  .fp-who .fp-who__head p{font-size:15px;padding-left:18px}
  .fp-who .fp-panels{flex-direction:column}.fp-who .fp-panel{min-height:560px;flex:none}
  .fp-who .fp-panel--a{clip-path:polygon(0 0,100% 0,100% calc(100% - 40px),0 100%)}
  .fp-who .fp-panel--b{margin:-32px 0 0;clip-path:polygon(0 40px,100% 0,100% 100%,0 100%)}
  .fp-who .fp-panel__body,.fp-who .fp-panel--b .fp-panel__body{padding:0 22px 64px}.fp-who .fp-panel--b .fp-panel__body{padding-bottom:40px}
  .fp-who .fp-panel h3{font-size:34px}.fp-who .fp-list li{font-size:16px}}

/* Toolkit 0.1.19 adjustments: section top on the site scale (112/96/80 visible), and panel bottom
   padding = the same scale so the last checklist item never sits on the panel edge (Chappy). */
.fp-who{position:relative;overflow:hidden}
.fp-who .fp-who__head{padding-top:112px}
.fp-who .fp-panel__body,.fp-who .fp-panel--b .fp-panel__body{padding-bottom:112px}
.fp-who .fp-panel{min-height:700px}
@media (max-width:1024px){.fp-who .fp-who__head{padding-top:96px}.fp-who .fp-panel__body,.fp-who .fp-panel--b .fp-panel__body{padding-bottom:96px}.fp-who .fp-panel{min-height:640px}}
@media (max-width:767px){.fp-who .fp-who__head{padding-top:80px}.fp-who .fp-panel__body,.fp-who .fp-panel--b .fp-panel__body{padding-bottom:80px}.fp-who .fp-panel{min-height:600px}}
/* old Who section and widgets hidden in case they remain */
body.flowpro .fp-who-old,body.flowpro .elementor-element-673d4f97,body.flowpro .elementor-element-5a7e4b19,body.flowpro .elementor-element-70d633e2,body.flowpro .elementor-element-617e8cd1,body.flowpro .elementor-element-1f50c0db{display:none!important}

/* 0.1.20 Full bleed – 0.1.21: tablet and phone only (<=1024px). Desktop stays contained (Chappy).
   --fp-vw = documentElement.clientWidth (who-v5.js, excludes the scrollbar); 100vw fallback, root overflow-x clipped. */
@media (max-width:1024px){
.fp-who{width:var(--fp-vw,100vw)!important;max-width:none!important;margin-left:calc(50% - var(--fp-vw,100vw)/2)!important;margin-right:0!important;box-sizing:border-box}
html:has(.fp-who){overflow-x:clip}
/* 0.1.21 square, no card look on tablet/phone (round icon and tick bullets stay round, approved spec) */
html body .fp-who,html body .fp-who .fp-panel,html body .fp-who .fp-panels,html body .fp-who .fp-panel picture,html body .fp-who .fp-panel img,html body .fp-who .fp-panel::before,html body .fp-who .fp-panel::after,html body .fp-who .fp-panel__body{border-radius:0!important;box-shadow:none!important;outline:0!important}
html body .fp-who .fp-panels{margin-left:0!important;margin-right:0!important;width:100%!important;max-width:none!important;padding:0!important}
html body :is(.e-con,.e-con-inner,.elementor-widget,.elementor-widget-container,.elementor-section,.elementor-container,.elementor-column,.elementor-widget-wrap):has(.fp-who){border-radius:0!important;box-shadow:none!important}
}
/* 0.1.21 desktop: panels contained to the heading/intro content width (head content box: max 1200px, 24px side padding). */
@media (min-width:1025px){
html body .fp-who{width:auto!important;margin-left:0!important;margin-right:0!important}
html body .fp-who .fp-panels{width:calc(100% - 48px)!important;max-width:1200px!important;margin-left:auto!important;margin-right:auto!important}
}
/* checklist space under the last tick (floor 48 phone / 64 tablet / 80 desktop; the section scale 80/96/112 applies) */
html body .fp-who .fp-panel__body,html body .fp-who .fp-panel--b .fp-panel__body{padding-bottom:112px!important}
@media (max-width:1024px){html body .fp-who .fp-panel__body,html body .fp-who .fp-panel--b .fp-panel__body{padding-bottom:96px!important}}
@media (max-width:767px){html body .fp-who .fp-panel__body,html body .fp-who .fp-panel--b .fp-panel__body{padding-bottom:80px!important}}
