/* Final responsive and accessibility refinements */
html{scroll-padding-top:90px} img{max-width:100%} a:focus-visible,button:focus-visible{outline:3px solid #ff0054;outline-offset:5px}
.portfolio-item img{object-fit:contain!important;background:#171715}.portfolio-item{background:#171715}
.comics-wordmark{font-size:clamp(28px,3vw,52px);line-height:1.05;font-weight:700;letter-spacing:-.05em;color:#fff}.comics-wordmark strong{letter-spacing:.06em;color:var(--pink)}
.partner-text-only{display:block!important;min-height:0!important;max-width:860px;width:100%}.partner-text-only .contact-copy{border:0!important;padding:clamp(26px,5vw,60px)!important}.partner-text-only .contact-copy>p{min-height:0!important}
.work-lightbox.open{overflow:auto}.work-lightbox button{min-width:44px;min-height:44px}.work-lightbox img{object-fit:contain;max-height:85vh}
@media(min-width:761px) and (max-width:1100px){.site-header nav{gap:12px}.site-header nav a{font-size:11px}.site-header .header-cta{font-size:11px}.partners-grid{grid-template-columns:minmax(0,1fr)!important}}
@media(max-width:760px){.partners-grid{display:block!important}.partner-text-only{max-width:none!important;width:100%!important}.partner-text-only .contact-copy>p{display:block!important;overflow:visible!important}.partner-text-only .contact-actions{flex-direction:column!important;align-items:flex-start}.partner-text-only .contact-mail{overflow-wrap:anywhere}.b2b,.sectors,.process{padding:60px 20px}.b2b-head,.process-head{gap:24px;margin-bottom:32px}.b2b-head h2,.process-head h2,.sectors h2{font-size:clamp(32px,9vw,52px)}.b2b-head p,.process-head p{font-size:15px}.portfolio-item{height:auto!important;aspect-ratio:auto!important}.portfolio-item img{height:auto!important;aspect-ratio:4/5!important}.cookie-consent{max-height:65vh;overflow:auto}.site-header .brand{flex-shrink:0}.hero-v29 h1{word-break:normal!important;overflow-wrap:normal!important;font-size:clamp(30px,10.4vw,44px)!important}.social-copy h2,.portfolio-head h2{overflow-wrap:normal; font-size:clamp(30px,9vw,44px)!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal{opacity:1!important;transform:none!important}}

.reveal{opacity:1;transform:none}
.comics-wordmark{overflow-wrap:anywhere;font-size:clamp(24px,2.6vw,42px);max-width:100%}

/* Client heading keeps the same horizontal inset as surrounding sections. */
.clients-title{margin-left:max(22px,calc((100vw - 1760px)/2 + 92px))!important;margin-right:max(22px,calc((100vw - 1760px)/2 + 92px))!important}
@media(max-width:1760px){.clients-title{margin-left:clamp(22px,6vw,92px)!important;margin-right:clamp(22px,6vw,92px)!important}}
/* Masonry: pieces retain their own proportions and stack within columns. */
@media(min-width:761px){.portfolio-grid{display:block!important;column-count:5!important;column-gap:10px!important}.portfolio-item{display:inline-block!important;width:100%!important;aspect-ratio:auto!important;height:auto!important;break-inside:avoid!important;margin:0 0 10px!important;vertical-align:top}.portfolio-item img{width:100%!important;height:auto!important;aspect-ratio:auto!important;object-fit:contain!important}}
@media(min-width:761px) and (max-width:1200px){.portfolio-grid{column-count:4!important}}
@media(min-width:761px) and (max-width:960px){.portfolio-grid{column-count:3!important}}
@media(max-width:760px){.clients-title{margin-left:20px!important;margin-right:20px!important}.portfolio-grid{display:block!important;column-count:2!important;column-gap:8px!important;overflow:visible!important;padding-bottom:0!important}.portfolio-item{display:inline-block!important;width:100%!important;max-width:none!important;aspect-ratio:auto!important;height:auto!important;margin:0 0 8px!important;break-inside:avoid!important;vertical-align:top}.portfolio-item img{width:100%!important;height:auto!important;aspect-ratio:auto!important;object-fit:contain!important}}

/* Previews horizontais do portfolio, com a proporção original. */
#b2b .site-grid{align-items:start}
#b2b .site-card,#personagens .site-card{min-width:0}
#b2b .site-frame,#personagens .site-frame{overflow:hidden}
#b2b .site-frame img{display:block;width:100%;height:auto;aspect-ratio:1366/543;object-fit:cover;object-position:top;border-radius:0 0 10px 10px}
#personagens .site-frame img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;object-position:top;border-radius:0 0 10px 10px}
#b2b .site-meta,#personagens .site-meta{padding-top:18px}
#b2b .site-meta h3,#personagens .site-meta h3{margin:0 0 8px}
#b2b .site-meta p,#personagens .site-meta p{margin:0;line-height:1.4}
#b2b .site-cta{height:auto;min-height:0;aspect-ratio:1366/590;align-self:start;display:flex;align-items:center;padding:32px;box-sizing:border-box}
#personagens .character-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 32px;align-items:start}
@media(max-width:620px){#personagens .character-grid{grid-template-columns:1fr}#b2b .site-cta{aspect-ratio:auto;min-height:200px}}
