/* Integration of approved desktop compositions; base V4.2 remains intact. */
.languages a{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:40px;padding:8px 6px;font-size:14px;color:inherit;text-decoration:none}
.languages a[aria-current=page]{text-decoration:underline;text-underline-offset:5px}
.languages a:focus-visible{outline:2px solid currentColor;outline-offset:1px}
.service-categories{font:400 14px/1.7 var(--sans);color:var(--muted);margin:13px auto 0;max-width:none}
.contact-heading>p+p{margin-top:12px}
.footer-compact{padding:48px 0 24px;background:var(--ink);color:var(--paper)}
.footer-contact-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:64px;align-items:start}
.footer-identity p{font:400 15px/1.5 var(--sans);margin-top:13px;color:#e7ddd4}
.footer-contact-group h2{font:500 17px/1.4 var(--sans);letter-spacing:0;margin:0 0 14px;color:var(--paper)}
.social-icons{display:flex;align-items:center;gap:8px}
.social-icon{position:relative;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;color:var(--paper);text-decoration:none;border:0}
.social-icon svg{display:block;width:24px;height:24px;fill:currentColor}
.social-icon.is-unavailable{opacity:.4;cursor:default}
.social-tooltip{display:none;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);white-space:nowrap;background:var(--paper);color:var(--ink);font:400 12px/1.4 var(--sans);padding:7px 9px;border-radius:4px;pointer-events:none;z-index:2}
.social-icon:hover .social-tooltip,.social-icon:focus-visible .social-tooltip{display:block}
.social-icon:focus-visible{outline:2px solid var(--paper);outline-offset:2px}
.footer-compact .footer-bottom{display:flex;justify-content:space-between;gap:32px;padding-top:25px;margin-top:36px;border-top:1px solid #ffffff29;font:400 13px/1.5 var(--sans)}
.footer-bottom a{color:var(--paper)}
.case-integrated .case-heading h1{font-size:52px;line-height:1.12;letter-spacing:-.035em;max-width:1180px;text-wrap:balance;overflow-wrap:normal}
.case-integrated .case-heading{padding:26px 0;margin:0 0 20px;border-bottom:1px solid var(--line)}
.case-integrated .case-heading .case-summary{font:400 17px/1.6 var(--sans);color:var(--muted);margin-top:18px;max-width:1080px}
.case-integrated-lead{display:grid;grid-template-columns:minmax(0,720fr) minmax(0,432fr);column-gap:48px;align-items:start}
.case-integrated .case-media-column{min-width:0}
.case-integrated .case-media-column.format-portrait{width:420px;max-width:100%;justify-self:start}
.case-video-slot{display:flex;gap:20px;align-items:start}
.case-video-slot .case-film{padding:0;margin:0;min-width:0;flex:1}
.case-video-slot .case-film video{display:block;width:100%;height:auto;aspect-ratio:var(--media-ratio);object-fit:contain;border-radius:8px}
.case-integrated .case-info{align-self:stretch;display:flex;flex-direction:column;min-width:0}
.case-integrated .case-description{font:400 15.5px/1.65 var(--sans)}
.case-integrated .case-description p{margin:0}
.case-integrated .case-description p+p{margin-top:12px}
.case-integrated .project-facts{margin-top:24px;font:400 15px/1.55 var(--sans)}
.case-integrated .project-facts>p{display:flex;align-items:center;min-height:56px;padding:12px 0;margin:0;border-bottom:1px solid var(--line)}
.case-integrated .cta-row{display:flex;justify-content:flex-end;margin-top:auto;padding-top:32px}
.case-integrated .case-contact-cta{margin:0;flex-shrink:0;min-height:48px;padding:13px 22px;font:500 14px/1.5 var(--sans);border-radius:7px}
.case-integrated .product-sources{margin-top:22px}
.case-integrated .product-sources h2{font:500 21px/1.3 var(--sans);letter-spacing:-.02em;margin:0 0 14px}
.case-integrated .product-photo-grid{display:flex;flex-wrap:wrap;gap:10px;max-width:none}
.case-integrated .product-photo{width:88px;height:88px;flex:0 0 88px;background:none;border-radius:7px;margin:0}
.case-integrated .product-photo img{width:100%;height:100%;object-fit:cover}
.case-integrated .case-gallery{margin-top:32px}
.case-integrated .case-gallery-track{--gallery-h:320px}
@media(min-width:1001px){
 .services{padding-block:64px 92px}
 .services-heading{margin-bottom:64px;text-align:center}
 .services h2{font-size:54px;max-width:900px}
 .services .usage{margin:24px auto 0;padding:0;font-size:16px;line-height:1.7;max-width:1000px}
 .service-categories{white-space:nowrap}
 .service-grid{column-gap:0;row-gap:22px}
 .service-grid article{padding-inline:38px}
 .service-grid article+article{border-left:1px solid var(--line)}
 .service-grid article:first-child{padding-left:0;padding-right:44px}
 .service-grid article:last-child{padding-left:44px;padding-right:0}
 .service-grid h3{font-size:26px;line-height:1.28}
 .service-grid p{font-size:16px;line-height:1.75}
 .about{grid-template-columns:320px minmax(0,1fr);column-gap:88px;row-gap:36px;padding-block:28px 0}
 .about .about-portrait{grid-column:1;grid-row:1}
 .about .about-copy{grid-column:2;grid-row:1;max-width:600px}
 .about h2{font-size:52px;line-height:1.12;margin-bottom:26px}
 .about-copy p{font-size:16px;line-height:1.72}
 .about-copy p:first-of-type{margin-top:0}
 .about-copy p+p{margin-top:18px}
 .about .earlier{grid-column:2;grid-row:2;display:block;margin:0}
 .earlier h3{font-size:19px;line-height:1.4;max-width:none;margin:0 0 20px}
 .earlier-grid{gap:16px}
 .past-item{width:calc(316px * var(--media-ratio));height:316px;flex:none}
 .past-thumb{height:100%;width:100%}
 .past-thumb img{object-fit:contain}
 .process{margin-top:144px;padding-block:0 72px}
 .process-layout{grid-template-columns:320px minmax(0,1fr);column-gap:88px;align-items:start}
 .process h2{font-size:52px;max-width:320px;position:relative;top:-16px}
 .process li{grid-template-columns:36px minmax(0,1fr);gap:18px}
 .process li>div{grid-template-columns:232px minmax(0,1fr);gap:24px}
 .process h3{font-size:21px;line-height:1.3}
 .process li p{font-size:16px;line-height:1.72}
 .process li+li{margin-top:20px;padding-top:20px}
}
@media(max-width:1000px){.service-categories{max-width:65ch}.case-integrated-lead{column-gap:28px}.case-integrated .case-heading h1{font-size:42px}}
@media(max-width:800px){.case-integrated-lead{display:block}.case-integrated .case-info{margin-top:28px}.case-integrated .cta-row{margin-top:0}.footer-contact-grid{grid-template-columns:1fr;gap:28px}.footer-compact .footer-bottom{margin-top:28px}.social-tooltip{left:0;transform:none}}

@media(min-width:1001px){html[lang=en] .hero h1{max-width:1120px}html[lang=en] .hero h1 em{white-space:nowrap}}
