/* One semantic scale per brand, shared by home, services, collections and cases. */
body.visual-system{--title:clamp(30px,3.333333vw,64px);--body:clamp(20px,2.083333vw,40px);--label:clamp(20px,1.666667vw,32px);--small:clamp(14px,1.333333vw,22px);--aux:clamp(12px,1vw,16px);--card-title:clamp(20px,1.833333vw,30px);--card-copy:clamp(16px,1.333333vw,20px);--gutter:clamp(20px,3.333333vw,64px);--gap:clamp(16px,1.666667vw,32px);--section:clamp(48px,6.666667vw,128px);font-family:var(--font);color:var(--ink);margin:0}
body.visual-system.sensitive{--title:clamp(32px,4.583333vw,88px)!important;--body:clamp(18px,1.666667vw,32px)!important;--label:clamp(20px,1.666667vw,32px)!important;--small:clamp(14px,1.166667vw,20px)!important}
.visual-system h1{font-family:var(--font);font-size:var(--title);line-height:1.15;font-weight:400;letter-spacing:normal}
.visual-system h2,.visual-system h3{font-family:var(--font);font-size:var(--label);line-height:1.25;font-weight:400}
.visual-system .site-header{position:relative!important;inset:auto!important;transform:none!important;margin:0 var(--gutter)!important;padding:0!important;height:128px!important;min-height:128px;display:grid!important;grid-template-columns:1fr 1.5fr 1fr!important;gap:var(--gap);align-items:center;border-bottom:1px solid var(--line);font:400 16px/1.4 var(--font);background:transparent;z-index:5}
.visual-system .site-header a{color:var(--ink)!important;text-decoration:none}.visual-system .brand{display:block;width:110px!important}.visual-system .brand img{width:100%;height:auto}.visual-system .main-nav{display:flex;justify-content:space-between;justify-self:stretch;align-items:center;gap:24px;grid-column:2;grid-row:1;font:inherit;margin:0;padding:0;border:0;border-radius:0}.visual-system .main-nav a{white-space:nowrap;padding:0}.visual-system .main-nav .active{background:transparent;color:var(--ink)}.visual-system .main-nav a[aria-current]{text-decoration:underline;text-underline-offset:5px}.visual-system .contact-link{grid-column:3;grid-row:1;justify-self:end;min-width:0;padding:14px 24px!important;border-radius:100px;font:500 16px/1.4 var(--font);background:var(--button)}.visual-system.sensitive .contact-link{color:#fff!important}
.visual-system .site-footer{padding:var(--section) var(--gutter) 32px!important;margin:0!important;border-top:1px solid var(--line);color:var(--ink);background:var(--paper);font:400 var(--small)/1.4 var(--font)}.visual-system .site-footer a{color:inherit!important}.visual-system .footer-cta{font-size:var(--title)!important;line-height:1.15}.visual-system .footer-copy{font-size:var(--body)!important;line-height:1.35}.visual-system .site-footer .pill{font-size:var(--small)}.visual-system.sensitive .site-footer .pill{color:#fff!important}.visual-system .footer-bottom{font-size:var(--aux);align-items:start;gap:24px}.footer-navigation{display:flex;flex-wrap:wrap;gap:12px 24px}.footer-contacts{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:24px;font-size:var(--small)}
.visual-system .masthead,.visual-system .filter-page{padding-top:clamp(48px,5.833333vw,112px)}.visual-system .masthead-main{max-width:1000px}.visual-system .deck,.visual-system .sensitive .deck{font-size:var(--body);line-height:1.35}.visual-system .crumb,.visual-system .eyebrow,.visual-system .meta-row,.visual-system .micro,.visual-system .scope,.visual-system .tag,.visual-system .filter-option,.visual-system .filter-panel>summary,.visual-system .filters legend,.visual-system .filter-tools{font-size:var(--aux)!important;line-height:1.4}.visual-system .crumb,.visual-system .eyebrow,.visual-system .meta-row,.visual-system .micro{color:var(--muted)}.visual-system .copy p,.visual-system .filter-intro{font-size:var(--body);line-height:1.35}.visual-system .copy h2{font-size:var(--label)}
.visual-system .project-grid,.visual-system .synced-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px var(--gap)}
.visual-system .project-card{font-family:var(--font);color:var(--ink);min-width:0;display:flex;flex-direction:column}.visual-system .project-card[hidden]{display:none!important}.visual-system .project-card a{color:inherit!important;text-decoration:none}.visual-system .project-card a:hover{text-decoration:underline;text-underline-offset:4px}.visual-system .project-cover{display:block;overflow:hidden;border-radius:5px}.visual-system .project-cover img{display:block;width:100%;height:auto;aspect-ratio:1.5;object-fit:cover;border-radius:5px}.visual-system .project-card h2{font-size:var(--card-title)!important;line-height:1.25;margin:18px 0 10px;font-weight:400}.visual-system .project-card .project-summary{font-size:var(--card-copy)!important;line-height:1.4;color:var(--muted);margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.visual-system .project-meta{border:0;margin:16px 0 0;padding:0;display:flex;flex-direction:column;gap:4px}.visual-system .project-meta p{font-size:var(--aux)!important;line-height:1.45;margin:0;color:var(--muted)}
.visual-system .synced-projects{font-family:var(--font);margin:48px var(--gutter)}.visual-system .synced-tag{font-family:var(--font);font-size:var(--aux)}.visual-system .home-projects{margin:var(--section) var(--gutter)}.home-projects>h2{margin:0 0 32px}.home-projects>.collection-more{display:inline-block;margin-top:32px;font-size:var(--small)}
.visual-system .hub-list{display:grid;gap:20px}.visual-system .hub-item{display:grid;grid-template-columns:1fr 1.5fr auto;gap:var(--gap);align-items:start;border:1px solid var(--line);border-radius:32px;padding:40px;color:inherit!important;text-decoration:none!important}.visual-system .hub-item h2{font-size:var(--label);margin:0}.visual-system .hub-item p{font-size:var(--small);color:var(--muted);line-height:1.45}.hub-item .arrow{font-size:28px;line-height:1}.hub-item:hover{background:var(--line)}.hub-intro{margin-bottom:48px}.hub-projects{margin-top:var(--section)}.hub-projects>h2{margin-bottom:32px}
/* Legacy outer content uses the same semantic roles. Project artwork stays isolated in its iframe. */
.visual-system .fields-page-heading{max-width:none;margin:0;padding:64px var(--gutter) 32px}.visual-system .fields-page-heading h1,.visual-system h1.fields-semantic{font-size:var(--title)!important;line-height:1.15!important}.visual-system .fields-service-guide{font-size:var(--small);font-family:var(--font)}.visual-system .fields-service-guide h2{font-size:var(--label)}
@media(max-width:760px){.visual-system .site-header{height:124px!important;min-height:124px;padding:20px 0 16px!important;grid-template-columns:1fr auto!important;row-gap:16px}.visual-system .brand{width:90px!important}.visual-system .contact-link{grid-column:2;padding:10px 16px!important;font-size:14px}.visual-system .main-nav{grid-column:1/-1;grid-row:2;justify-content:start;gap:24px;font-size:14px;padding:0!important}.visual-system .project-grid,.visual-system .synced-grid{grid-template-columns:1fr;row-gap:36px}.visual-system .project-card h2{font-size:20px!important}.visual-system .hub-item{grid-template-columns:1fr auto;padding:24px;border-radius:24px}.visual-system .hub-item p{grid-column:1;grid-row:2;font-size:16px}.visual-system .hub-item .arrow{grid-column:2;grid-row:1}.visual-system .footer-bottom{flex-direction:column}.visual-system .deck{font-size:var(--body)!important}}
.visual-system .project-cover video{display:block;width:100%;aspect-ratio:1.5;object-fit:cover;border-radius:5px;background:var(--line)}
.visual-system .service-siblings{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:24px;font-size:var(--aux);color:var(--muted)}
.visual-system .home-intro{padding:clamp(48px,5.833333vw,112px) var(--gutter) var(--section);max-width:1200px}.visual-system .home-intro h1{font-size:var(--title)!important;line-height:1.15}.home-intro .pill{margin-top:32px;font-size:var(--small);color:var(--ink)!important}.sensitive .home-intro .pill{color:#fff!important}.home-section{display:grid;grid-template-columns:1fr 3fr;gap:var(--gap);margin:var(--section) var(--gutter)}.home-section h2{margin:0}.home-section p{font-size:var(--body);line-height:1.35;margin:0}.home-section .home-facts{display:flex;flex-wrap:wrap;gap:32px;margin-top:32px}.home-facts p{font-size:var(--aux)}.home-facts strong{display:block;font-size:var(--label);font-weight:400;margin-bottom:8px}.home-services{margin:0 var(--gutter) var(--section)}
@media(max-width:760px){.home-section{grid-template-columns:1fr;gap:24px}}

/* Industry directory: compact links share the existing tag treatment. */
.visual-system .industry-buttons{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0}.visual-system .industry-buttons .tag{display:inline-flex;align-items:center;margin:0;max-width:100%}
.visual-system .industry-buttons .tag span{margin-left:6px}
.visual-system [data-case-client] a{text-decoration:underline;text-underline-offset:3px}
.visual-system [data-case-client]{max-width:100%;overflow-wrap:anywhere}
