/* Solutions: the principle, the work, the deliverable. Scoped to this page. */
.solutions-principle{background:radial-gradient(ellipse at 10% 80%,#f8f0e1,transparent 65%),#fcfbf7;padding:66px 0 64px;border-bottom:1px solid #d8e3df}
.solutions-principle-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:80px;align-items:center}
.solutions-principle h1{font-size:clamp(44px,4.4vw,68px);line-height:1.08;letter-spacing:-.04em;margin:22px 0 28px;max-width:830px}
.solutions-principle h1 span{color:#27756f}.solutions-principle .lead{font-size:19px;line-height:1.7;max-width:690px;margin-bottom:26px;color:var(--muted)}
.solutions-principle-image{position:relative;height:390px;overflow:hidden;border-radius:4px 72px 4px 4px;margin:0;background:#dce6df}
.solutions-principle-image img{height:100%;width:100%;object-fit:cover;object-position:center 38%}
.solutions-principle-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0e3439f0,transparent 88%)}
.solutions-principle-image>div{position:absolute;z-index:1;left:30px;bottom:36px;color:#fff}.solutions-principle-image>div>span{display:block;font-size:10px;letter-spacing:1.2px;color:#e3eee8}.solutions-principle-image strong{display:block;font-size:35px;line-height:1.1;font-weight:400;letter-spacing:-.02em;margin-top:16px}
.solutions-principle-image figcaption{position:absolute;z-index:2;right:12px;bottom:9px;color:#d9e9e3;font-size:10px}
.solutions-catalog{padding-top:80px;padding-bottom:80px}.solutions-catalog .section-heading{align-items:end;margin-bottom:36px}.solutions-catalog .section-heading>p{max-width:390px}
.solutions-directory{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #cadbd3;border-left:1px solid #cadbd3;margin-bottom:48px}
.solutions-directory a{display:flex;align-items:center;gap:13px;padding:19px 18px;border-right:1px solid #cadbd3;border-bottom:1px solid #cadbd3;font-size:16px;line-height:1.35;min-height:76px;background:#f2f5ef;transition:background .2s,color .2s}
.solutions-directory a>span{font-size:12px;color:#52746c;flex:none}.solutions-directory a b{margin-left:auto;font-weight:400;font-size:22px;color:#237970}.solutions-directory a:hover{background:#e1eee6;color:#12554e}
.solution-row{display:grid;grid-template-columns:1fr 1.3fr .85fr;gap:45px;padding:44px 0;border-bottom:1px solid #d2dfd8;scroll-margin-top:120px}
.solution-identity{display:grid;grid-template-columns:32px 1fr;align-content:start;column-gap:16px;row-gap:18px}.solution-number{grid-column:1;grid-row:1;color:#658278;font-size:13px;align-self:center}.solution-icon{grid-column:2;grid-row:1;width:43px;height:43px;border:1px solid #c4dcd0;border-radius:50%;display:grid;place-items:center;background:#eaf1e9}.solution-icon svg{width:23px;height:23px;stroke:#267a6b;stroke-width:1.4;fill:none;stroke-linecap:round;stroke-linejoin:round}.solution-identity h3{grid-column:2;margin:0;font-size:27px;line-height:1.16;letter-spacing:-.025em;max-width:270px}
.solution-description h4{font-size:21px;line-height:1.3;letter-spacing:-.015em;margin:0 0 13px}.solution-description p{font-size:16px;line-height:1.7;margin:0;color:#4c6668}.solution-description .solution-examples{font-size:13px;color:#34685d;line-height:1.65;margin-top:18px}
.solution-deliverable{border-left:2px solid #d0ded1;padding-left:22px;align-self:start;margin-top:3px}.solution-deliverable>span{font-size:10px;letter-spacing:1.3px;color:#4b6c61;font-weight:500}.solution-deliverable p{font-size:17px;line-height:1.55;color:#234a44;margin:12px 0 0}
.solutions-scope{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-top:26px}.solutions-scope>p{font-size:14px;color:#526b65;max-width:660px;margin:0}.solutions-scope>a{flex:none}
.virtual-staff-section{display:grid;grid-template-columns:1fr 1.15fr;background:#173f42;border-radius:4px;overflow:hidden;scroll-margin-top:120px}.virtual-staff-image{margin:0;min-height:580px;position:relative}.virtual-staff-image img{height:100%;width:100%;object-fit:cover;object-position:60% center;position:absolute;inset:0}.virtual-staff-image figcaption{position:absolute;bottom:12px;left:16px;font-size:10px;color:#fff;background:#163840ab;padding:4px 7px}.virtual-staff-copy{padding:52px 52px 56px;color:#fff}.virtual-staff-copy .eyebrow{color:#d3e8da}.virtual-staff-copy h2{font-size:clamp(37px,3.4vw,52px);line-height:1.08;margin:23px 0}.virtual-staff-copy h2>span{color:#b8d9c4}.virtual-staff-copy p{font-size:17px;line-height:1.65;color:#e0eae3}.virtual-staff-copy ul{list-style:none;padding:0;margin:26px 0}.virtual-staff-copy li{padding:12px 0;border-bottom:1px solid #ffffff25;font-size:16px;display:flex;gap:12px}.virtual-staff-copy li:before{content:'↗';color:#b7d9c3}.virtual-staff-copy .staff-deliverable{font-size:14px;color:#c4d9d1;margin-bottom:28px}.staff-deliverable strong{color:#fff;font-weight:500}.virtual-staff-copy .button{background:#f7f3e7;color:#173f42;border-color:#f7f3e7;gap:20px;line-height:1.4}.virtual-staff-copy .button:hover{background:#e4eddd}
.solution-principles{display:grid;grid-template-columns:1fr 1.15fr;gap:90px}.solution-principles h2{font-size:clamp(32px,3vw,46px);line-height:1.12;margin:23px 0}.solution-principles article{padding:0 0 26px}.solution-principles article+article{padding-top:26px;border-top:1px solid #d2dfd8}.solution-principles h3{font-size:24px;line-height:1.3;margin:0 0 13px}.solution-principles p{font-size:16px;color:#536e67;line-height:1.65;margin:0}
.solutions-final{background:#e7eee4;padding:70px 0}.solutions-final>.container{display:flex;justify-content:space-between;align-items:center;gap:35px}.solutions-final h2{font-size:clamp(36px,3.8vw,56px);line-height:1.1;margin:22px 0}.solutions-final p{font-size:17px;max-width:520px;color:#52685e;margin-bottom:0}.solutions-final .button{flex:none}
.solutions-directory a:focus-visible,.solution-principles a:focus-visible{outline:3px solid #bb672e;outline-offset:4px}
@media(max-width:1100px){.solutions-principle-grid{gap:40px;grid-template-columns:1.4fr 1fr}.solutions-principle h1{font-size:50px}.solutions-principle-image{height:380px}.solution-row{gap:28px;grid-template-columns:1fr 1.3fr}.solution-deliverable{grid-column:2;margin:0}.solution-identity{grid-row:1/3}.virtual-staff-copy{padding:36px}.solution-principles{gap:45px}.solutions-directory{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.solutions-principle{padding:40px 0}.solutions-principle-grid{grid-template-columns:1fr;gap:30px}.solutions-principle h1{font-size:clamp(35px,8.9vw,48px);margin:18px 0 23px;line-height:1.12}.solutions-principle .lead{font-size:17px;line-height:1.65}.solutions-principle-image{height:240px;border-radius:4px 45px 4px 4px}.solutions-principle-image strong{font-size:28px}.solutions-principle-image>div{left:22px;bottom:24px}.solutions-principle-image>div>span{font-size:9px}.solutions-catalog{padding-top:50px;padding-bottom:45px}.solutions-catalog .section-heading{gap:20px;align-items:stretch}.solutions-catalog .section-heading>p{font-size:16px}.solutions-directory{grid-template-columns:1fr;margin-bottom:20px}.solutions-directory a{min-height:61px;padding:14px 16px;font-size:16px}.solution-row{grid-template-columns:1fr;padding:30px 0;gap:20px;scroll-margin-top:100px}.solution-identity{grid-row:auto;grid-template-columns:28px 39px 1fr;gap:12px;align-items:center}.solution-identity h3{grid-column:3;grid-row:1;font-size:24px;max-width:none}.solution-icon{width:37px;height:37px}.solution-number{font-size:12px}.solution-description h4{font-size:20px}.solution-description p{font-size:16px}.solution-deliverable{grid-column:1;padding-left:17px}.solution-deliverable p{font-size:16px;margin-top:8px}.solutions-scope{display:block}.solutions-scope>a{margin-top:20px;display:inline-flex}.virtual-staff-section{grid-template-columns:1fr;scroll-margin-top:100px}.virtual-staff-image{min-height:280px}.virtual-staff-image img{object-position:center 40%}.virtual-staff-copy{padding:32px 25px}.virtual-staff-copy h2{font-size:39px}.virtual-staff-copy .button{font-size:14px;padding:16px 18px}.solution-principles{grid-template-columns:1fr;gap:35px;padding:55px 0}.solution-principles h3{font-size:23px}.solutions-final{padding:50px 0}.solutions-final>.container{display:block}.solutions-final .button{margin-top:27px}}
