/* Customer case studies and authentic customer logos. */
.project-section{padding-top:110px;padding-bottom:40px}.project-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:end;margin-bottom:30px}.project-heading .eyebrow{margin-bottom:22px}.project-heading>p{max-width:400px;color:var(--muted);font-size:14px}
.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:stretch}.project-card{min-width:0;background:white;border:1px solid #dedee9;border-radius:12px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 16px 40px #11152d06}.project-visual.chapter-art{height:320px;min-height:320px;perspective:1000px;isolation:isolate}.project-files{background:radial-gradient(ellipse at 30% 10%,#fff,#e9e6ff 75%)}.project-care{background:radial-gradient(ellipse at 70% 60%,#202144,#0c1023 75%)}.project-visual-label{position:absolute;left:28px;top:24px;font-size:8px;letter-spacing:1.5px;font-weight:700;color:#625ba0;z-index:2}.project-care .project-visual-label{color:#adb5da}.project-visual-foot{position:absolute;bottom:16px;font-size:6px;letter-spacing:1px;color:#746e93}.project-care .project-visual-foot{color:#929bbd}
.project-files-scene{width:260px;height:210px;position:relative;transform-style:preserve-3d;transform:rotateX(9deg) rotateY(-17deg) rotateZ(-6deg);animation:project-float 9s ease-in-out infinite}.project-file-sheet{position:absolute;inset:0;border-radius:10px;background:#c2b7fa;box-shadow:10px 20px 30px #4632da20}.sheet-rear{transform:translate3d(22px,18px,-30px)}.sheet-front{background:#fff;padding:22px 26px;transform:translateZ(10px);border:1px solid #f1edff;display:flex;flex-direction:column;align-items:start}.sheet-front>span{font-size:8px;letter-spacing:1.4px;color:#8179a5}.project-folder{position:relative;width:65px;height:45px;background:#4632da;border-radius:3px 8px 5px 5px;margin:25px 0 18px;box-shadow:5px 5px 0 #c5baf5}.project-folder:before{content:"";position:absolute;top:-7px;left:0;width:28px;height:12px;border-radius:4px;background:#4632da}.sheet-front b{font-size:12px;color:#332c59}.sheet-front i{display:block;width:90%;height:4px;background:#eeebf9;margin-top:10px}.sheet-front i:last-child{width:60%}.project-node{position:absolute;padding:12px 18px;background:#fff;color:#4632da;border:1px solid #ebe7fa;border-radius:7px;font-size:9px;box-shadow:0 14px 25px #34268718;transform:translateZ(50px);z-index:3}.node-office{left:-75px;top:38px}.node-team{right:-77px;bottom:12px}.project-connection{position:absolute;inset:20px -60px;border:1px solid #aaa0e5;border-radius:50%;transform:translateZ(-60px) rotate(-18deg)}
.project-care-scene{position:relative;width:290px;height:215px;transform-style:preserve-3d;transform:rotateX(8deg) rotateY(-16deg) rotateZ(-5deg);animation:project-float 10s ease-in-out infinite reverse}.project-care-base{position:absolute;inset:30px -10px -20px;background:#29254e;border:1px solid #4a4480;border-radius:10px;transform:translateZ(-45px) translate(16px,12px)}.project-monitor{position:absolute;inset:0;background:linear-gradient(145deg,#292e50,#171b35);border:1px solid #7473a9;border-radius:9px;padding:22px;box-shadow:8px 10px 0 #38315e,15px 24px 40px #0005}.project-monitor-head{font-size:8px;letter-spacing:1.5px;color:#acb4d7;display:flex;align-items:center;gap:9px;margin-bottom:20px}.project-monitor-head>span{width:5px;height:5px;background:var(--cyan);border-radius:50%}.project-check-line{font-size:11px;color:#d8deee;display:flex;gap:15px;align-items:center;border-top:1px solid #ffffff0b;padding:9px 0}.project-check-line b{font-size:14px;color:var(--cyan)}.project-shield{position:absolute;right:-20px;top:8px;width:62px;height:70px;display:grid;place-items:center;clip-path:polygon(50% 0,100% 18%,92% 72%,50% 100%,8% 72%,0 18%);background:var(--cyan);color:#181943;font-size:28px;transform:translateZ(65px);filter:drop-shadow(5px 7px 0 #325fa5)}
.project-body{padding:32px;display:flex;flex-direction:column;flex:1}.project-meta{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin-bottom:23px}.project-meta>span:first-child{font-size:8px;letter-spacing:1px;font-weight:650;color:#68647c}.project-body h3{font-size:30px;letter-spacing:-1.1px;line-height:1.2;margin-bottom:28px;min-height:108px}.project-body h3>span{color:var(--violet)}.project-story{margin:0;display:grid;gap:22px}.project-story dt{font-size:10px;font-weight:800;margin-bottom:7px}.project-story dd{margin:0;font-size:12px;line-height:1.8;color:var(--muted)}.project-outcome{display:flex;gap:15px;margin:26px 0;padding:20px 0;border-block:1px solid #e7e4f1}.project-outcome>span{font-size:30px;color:var(--violet);line-height:1}.project-outcome small{font-size:7px;letter-spacing:1px;font-weight:750;color:var(--violet)}.project-outcome p{font-size:12px;line-height:1.7;margin-top:7px}.project-body>.chapter-link{margin-top:0}
@keyframes project-float{50%{transform:translateY(-8px) rotateX(12deg) rotateY(-10deg) rotateZ(-3deg)}}
@media(max-width:1000px){.project-body{padding:25px}.project-body h3{font-size:26px;min-height:100px}.project-files-scene,.project-care-scene{scale:.8}.project-grid{gap:20px}}
@media(max-width:700px){.project-section{padding-top:65px;padding-bottom:10px}.project-heading{display:block;margin-bottom:24px}.project-heading>p{font-size:13px;margin-top:20px}.project-heading h2{font-size:35px}.project-grid{grid-template-columns:1fr;gap:28px}.project-visual.chapter-art{min-height:250px;height:250px}.project-visual-label{left:22px;top:20px;font-size:7px}.project-files-scene,.project-care-scene{scale:.74}.project-files-scene{width:235px}.node-office{left:-40px}.node-team{right:-40px}.project-body{padding:24px}.project-body h3{min-height:0;font-size:27px}.project-meta{gap:8px}.project-meta>span:first-child{font-size:7px;letter-spacing:.7px}}
@media(prefers-reduced-motion:reduce){.project-files-scene,.project-care-scene{animation:none}}

.project-client-logo{height:108px;display:flex;align-items:center;margin-bottom:24px}
.project-client-logo img{width:auto;height:auto;max-width:min(100%,250px);max-height:108px;object-fit:contain}
.project-director{margin-top:auto;margin-bottom:24px;display:grid;gap:5px}
.project-director small{font-size:10px;color:var(--muted)}
.project-director strong{font-size:13px;font-weight:700}
.project-cost-note{font-size:11px;line-height:1.8;color:var(--muted);margin-top:22px;max-width:820px}
.clients.client-logos{display:block}
.clients.client-logos>p{margin-bottom:26px}
.clients.client-logos>.client-logo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;align-items:center;width:100%}
.client-logo-grid .client-logo{min-width:0;height:110px;display:flex;align-items:center;justify-content:center}
.client-logo-grid img{display:block;width:auto;height:auto;max-width:100%;max-height:95px;object-fit:contain}
@media(max-width:800px){.clients.client-logos>.client-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.client-logo-grid .client-logo{height:95px}.client-logo-grid img{max-height:85px}}
@media(max-width:500px){.clients.client-logos>.client-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 28px}.project-client-logo{height:90px}.project-client-logo img{max-height:90px;max-width:min(100%,230px)}}

.client-logo-grid .client-logo[hidden],.client-logo-grid:not([data-ready]) .client-logo:nth-child(n+5){display:none}
.clients.client-logos>.logo-controls{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}
.clients.client-logos>.logo-controls[hidden]{display:none}
.logo-controls button{min-height:44px;min-width:44px;padding:10px;border:0;border-radius:6px;background:transparent;color:#77758c;font:inherit;font-size:19px;cursor:pointer}
.logo-controls button:hover{background:#edeafa}.logo-controls button:focus-visible{outline:3px solid #4632da;outline-offset:3px}.logo-controls button:disabled{opacity:.6;cursor:default}
@media(max-width:800px){.client-logo-grid:not([data-ready]) .client-logo:nth-child(n+3){display:none}}

.project-testimonial{margin:0 0 28px;margin-top:auto;padding:24px;background:#f5f3fc;border-radius:8px}
.project-testimonial blockquote{margin:0}.project-testimonial blockquote p{margin:0;font-size:16px;line-height:1.8;letter-spacing:-.15px;color:#332c59;overflow-wrap:break-word}
.project-testimonial figcaption{display:grid;gap:5px;margin-top:20px}.project-testimonial figcaption strong{font-size:12px;color:var(--ink)}.project-testimonial figcaption span{font-size:10px;line-height:1.6;color:var(--muted)}
@media(max-width:700px){.project-testimonial{padding:20px}.project-testimonial blockquote p{font-size:15px}}
