/* Consistent backing keeps the supplied logo colours and proportions intact. */
.client-logo.unified-logo:before,.case-logo-plate,.creative-poster .case-logo-plate{background:#68778c;border-color:#c8d5e64a;box-shadow:inset 0 1px 0 #ffffff20,0 10px 24px #0002}
.client-logo.unified-logo img,.case-logo-plate img,.original-logo-light{background:transparent;padding:0;border-radius:0}
/* Three static rows, followed by the remaining customer logos on request. */
.client-showcase{padding:26px}
.client-showcase .client-band-heading{padding:0;margin-bottom:20px}
.client-logo-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin:0;padding:0;list-style:none}
.client-logo-grid .client-logo{width:100%;height:84px;min-width:0;padding:18px 20px}
.client-logo-grid .client-logo:before{inset:0;border-radius:12px}
.client-logo-grid .client-logo img{max-height:48px}
.client-logo-grid .logo-artwork{--logo-height:48px;position:relative;display:block;width:min(100%,calc(var(--logo-height)*var(--art-ratio)));aspect-ratio:var(--art-ratio);overflow:hidden}
.client-logo-grid .client-logo.unified-logo .logo-artwork img{position:absolute;width:var(--source-width);height:auto;max-width:none;max-height:none;left:var(--source-left);top:var(--source-top)}
@media(max-width:680px){.client-logo-grid .logo-artwork{--logo-height:44px}.client-logo-grid .client-logo.unified-logo .logo-artwork img{max-height:none}}
.client-logo-grid .client-logo[hidden],.client-showcase-footer [hidden]{display:none}
.client-showcase-footer{display:flex;justify-content:center;margin-top:22px}
.client-show-more{display:inline-flex;align-items:center;justify-content:center;gap:15px;min-height:44px;padding:10px 20px;border:1px solid #c8d5e64a;border-radius:12px;background:#ffffff08;color:#f7f8fa;font:600 12px/1.5 Montserrat,sans-serif;cursor:pointer;transition:background .2s,border-color .2s}
.client-show-more:hover{background:#ffffff14;border-color:#c8d5e688}
.client-show-more:focus-visible{outline:2px solid #80b2ff;outline-offset:4px}
.client-show-more span{color:#80b2ff}
.client-showcase-note{margin:0;min-height:44px;display:flex;align-items:center;color:#b5c1d2;font-size:12px;line-height:1.6;text-align:center}
.client-showcase-note:focus{outline:none}
@media(max-width:900px){.client-logo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:680px){.client-showcase{padding:18px}.client-showcase .client-band-heading{margin-bottom:16px}.client-logo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.client-logo-grid .client-logo{height:72px;padding:14px}.client-logo-grid .client-logo img{max-height:44px}.client-showcase-footer{margin-top:18px}}
@media(max-width:420px){.client-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* A personal contact in the fixed navigation. */
.header .header-cta{position:relative;overflow:visible;margin-left:15px;padding-left:32px}
.header-paul{position:absolute;top:-11px;left:-19px;width:41px;height:41px;border-radius:50%;border:2px solid #a3b8d1;background:#152133;box-shadow:0 5px 16px #0005;display:block}
.header-paul>img{width:100%;height:100%;object-fit:cover;object-position:50% 18%;border-radius:50%}
.header-paul .availability-dot{position:absolute;bottom:-1px;right:-1px;width:11px;height:11px;background:#58d69b;border:2px solid #152133;border-radius:50%}
.availability-dot:after{content:'';position:absolute;inset:-3px;border:1px solid #58d69b;border-radius:50%;animation:availabilityPulse 2.2s ease-out infinite}
@keyframes availabilityPulse{0%{transform:scale(.8);opacity:.8}100%{transform:scale(2);opacity:0}}
.header .desktop-nav{gap:25px;margin-left:0}
/* Real landing pages and the supplied Connect dashboard. */
.real-campaign{height:540px}
.real-phone{position:absolute;top:47px;left:4px;width:178px;height:360px;border:1px solid #b3cae35c;border-radius:25px;background:#172333;padding:12px 8px 8px;transform:rotate(-4deg);box-shadow:0 25px 50px #0007;z-index:2;overflow:hidden}
.real-phone .phone-speaker{margin-bottom:10px}
.landingpage-screen{height:calc(100% - 14px);overflow:auto;border-radius:13px;background:#fff;scrollbar-width:none;overscroll-behavior:contain}
.customer-phone .landingpage-screen{background:#000}
.landingpage-screen img{width:100%;height:auto;display:block}
.real-connect{position:absolute;left:145px;right:0;top:91px;border:1px solid #a9c2e350;border-radius:16px;background:#0c192c;box-shadow:0 25px 50px #0006;transform:rotate(2deg);overflow:hidden}
.real-connect-heading{display:grid;gap:5px;padding:16px 20px;border-bottom:1px solid #a9c2e32a;background:#ffffff04}
.real-connect-heading>span{font-size:9px;color:#91aac9}.real-connect-heading strong{font-size:15px;letter-spacing:-.02em}
.connect-request-image{display:block;width:100%;height:auto}
.connect-original-window{position:relative;aspect-ratio:2.24;overflow:hidden}
.connect-original-window>img{position:absolute;width:191.6%;max-width:none;height:auto;left:-53.2%;top:-50%;display:block}
.real-connect-caption{font-size:8px;color:#8ca3bf;padding:9px 16px;margin:0;text-align:right}
.real-campaign .mock-route{bottom:13px}
.editing-visual{height:455px;padding:12px 8px 34px}
.editing-photo{height:100%;margin:0;border-radius:20px;overflow:hidden;border:1px solid #c1d8f13a;position:relative;transform:rotate(2deg);box-shadow:0 20px 40px #0005}
.editing-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 42%;display:block}
.editing-photo:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#07101cd9)}
.editing-photo figcaption{position:absolute;left:25px;right:25px;bottom:62px;z-index:1;font-size:15px;font-weight:700}
.editing-visual .content-production{bottom:6px;left:0;right:24px;gap:12px;min-height:79px}
.editing-visual .content-production>span:first-child{font-size:15px;line-height:1.45;font-weight:600}
.editing-visual .content-production strong{color:#87b6ff;font-weight:800}.editing-visual .content-production small{font-size:10px}
@media(max-width:1100px){.header .desktop-nav{gap:16px}.header .header-cta{font-size:10px;gap:15px;padding-left:28px}.real-phone{width:150px;height:325px}.real-connect{left:120px;top:104px}.real-connect-heading{padding:14px 17px}.real-connect-heading strong{font-size:12px}.real-campaign{height:440px}}
@media(max-width:850px){.header .desktop-nav{gap:12px}.header .desktop-nav a{font-size:9px}.header .header-cta{gap:10px;padding-right:12px}.header-paul{width:36px;height:36px;left:-16px}}
@media(max-width:760px){.real-campaign{height:460px}.real-phone{width:175px;height:353px}.real-connect{left:140px;top:91px}.real-connect-heading strong{font-size:14px}.editing-visual{height:440px}}
@media(max-width:680px){.header .header-cta{display:flex;min-height:35px;font-size:9px;padding:10px 11px 10px 25px;margin-left:auto;margin-right:12px;gap:8px}.header-paul{width:33px;height:33px;top:-8px;left:-14px}.header .menu-toggle{width:30px;padding:4px}.header{padding-inline:15px}.header .brand img{width:83px}.header-paul .availability-dot{width:10px;height:10px}}
@media(max-width:480px){.real-campaign{height:385px}.real-phone{width:132px;height:276px;top:48px;left:2px;border-radius:20px;padding:10px 6px 6px}.real-connect{left:104px;top:100px;border-radius:12px}.real-connect-heading{padding:12px 14px;gap:4px}.real-connect-heading strong{font-size:10px}.real-connect-heading>span{font-size:8px}.real-connect-caption{font-size:6px;padding:8px}.editing-visual{height:370px;padding-top:7px}.editing-photo figcaption{font-size:12px;left:18px;bottom:67px}.editing-visual .content-production{right:10px;padding:13px 15px;min-height:75px}.editing-visual .content-production>span:first-child{font-size:12px}.editing-visual .content-production small{font-size:8px}}
@media(prefers-reduced-motion:reduce){.availability-dot:after{animation:none}}
