/* Filmorama 2.0.2 — regras canônicas comuns a todas as páginas. */
:root {
  --v20-width:1200px; --v20-font:Arial,Helvetica,sans-serif;
  --display:var(--v20-font); --reading:var(--v20-font); --ui:var(--v20-font);
  --fm-display:var(--v20-font); --fm-reading:var(--v20-font);
  --fm-page-max:var(--v20-width); --fm-reading-max:760px;
  --fm-form-max:760px; --fm-gutter:32px; --fm-page-top:40px;
  --fm-ink:var(--v20-ink); --fm-accent:var(--v20-green);
  --fm-paper:var(--v20-paper); --fm-rule:1px solid var(--v20-stroke);
}
body.v20-site {font:400 16px/1.65 var(--v20-font);background:var(--v20-paper);color:var(--v20-ink)}
body.v20-site :is(h1,h2,h3,h4,h5,h6,p,li,a,span,strong,small,label,input,button,select,textarea,th,td,figcaption,dt,dd,summary) {
  font-family:var(--v20-font)!important;
  -webkit-hyphens:none!important;hyphens:none!important;word-break:normal!important;
}
body.v20-site :is(h1,h2,h3,h4,h5,h6) {
  font-weight:700!important;line-height:1.3!important;letter-spacing:-.02em!important;
  text-transform:none!important;text-align:left!important;text-wrap:pretty;overflow-wrap:normal!important;
}
body.v20-site h1 {font-size:clamp(28px,3vw,36px)!important;line-height:1.2!important;color:var(--v20-ink)!important}
body.v20-site h2 {font-size:26px!important}
body.v20-site h3 {font-size:20px!important}
body.v20-site h4 {font-size:18px!important}
body.v20-site p {font-size:16px;line-height:1.65;text-align:justify;text-align-last:left;overflow-wrap:normal;word-spacing:normal}
body.v20-site :is(.v20-copy,.fm-body-text,.caderno-body,.radar-single-body,.privacy-copy,.prose,.svc-detail-text) {
  font-family:var(--v20-font)!important;font-size:16px!important;line-height:1.7!important;
}
body.v20-site :is(.v20-copy,.fm-body-text p,.caderno-body p,.radar-single-body p,.privacy-copy p,.prose p,.svc-detail-text p,.radar-card>p,.caderno-card-copy>p,.svc-lead) {
  font-size:16px!important;line-height:1.7!important;text-align:justify!important;text-align-last:left!important;
  margin-top:0;margin-bottom:1em;
}
body.v20-site :is(.v20-project-facts,.v20-project-credits,.v20-project-status,.v20-deliverables,
  .v20-profile-role,.v20-intro,.v20-eyebrow,.v20-section-intro,.fm-page-subtitle,.editorial-byline,
  .contact-required,.radar-source,.caderno-source,figcaption,.calendar-location,.calendar-event-label) {
  text-align:left!important;text-align-last:auto!important;
}
body.v20-site :is(.v20-project-facts,.v20-project-credits,.v20-project-status,.v20-deliverables) {font-size:14px;line-height:1.5}
body.v20-site :is(.v20-intro,.fm-page-subtitle) {font-size:17px!important;line-height:1.5!important;font-weight:400!important;letter-spacing:0!important;text-transform:none!important;color:var(--v20-muted)}
body.v20-site .v20-eyebrow {font-size:11px!important;line-height:1.5!important;font-weight:700;letter-spacing:.12em!important;text-transform:uppercase}
body.v20-site .v20-count {font-size:13px!important;line-height:1.5!important;letter-spacing:0!important}
body.v20-site :is(.v20-main .shell,.v20-container,.fm-page-shell) {width:calc(100% - 64px);max-width:var(--v20-width);margin-inline:auto}
body.v20-site :is(.v20-page,.fm-page-shell,.privacy-page,.single-content,.caderno-single,.radar-single) {padding-top:40px;padding-bottom:48px}
body.v20-site :is(.v20-page-heading,.fm-page-header,.privacy-page>.v20-page-heading,.single-content>header) {
  display:block;max-width:none;padding:0 0 24px;margin:0 0 28px;border:0;border-bottom:var(--fm-rule);
}
body.v20-site :is(.v20-page-heading,.fm-page-header)>h1 {margin:0 0 12px}
body.v20-site .fm-page-header .filmorama-languages {position:static;margin-top:16px}
body.v20-site .fm-page-subtitle {max-width:76ch!important;margin:0}
body.v20-site .fm-page-header>.fm-page-subtitle:last-child {margin-bottom:0}
.v20-section {padding-block:28px}
.v20-section-top {align-items:baseline;gap:12px;margin-bottom:20px;flex-wrap:wrap}
.v20-section-top h2 {margin:0}
.v20-home {padding-top:8px!important}
.v20-home-services {grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:32px;margin:24px 0 0;padding:32px}
.v20-home-services>* {min-width:0}
.v20-home-services-lead {padding:0}
.v20-home-services-lead p {max-width:none!important}
.v20-home-news {gap:32px;padding-block:36px}
.v20-home-contact h2 {color:#fff!important;font-size:24px!important}
.v20-home-radar article h3 {font-size:18px!important;line-height:1.4!important}
.v20-about-lead {grid-template-columns:minmax(0,1fr) minmax(300px,.75fr);gap:32px;padding-bottom:8px;align-items:start}
.v20-credential {display:grid;grid-template-columns:90px minmax(0,1fr);gap:20px;align-items:start;padding:20px}
.v20-brand-symbol {display:block;width:90px;height:auto;margin:0;align-self:start;object-fit:contain}
.v20-credential p {font-size:14px;line-height:1.5;margin:0 0 10px;text-align:left}
.v20-credential p:last-child {font-size:13px;margin:12px 0 0}
.v20-credential .v20-eyebrow {margin-bottom:12px}
.v20-services-grid {gap:20px;align-items:stretch}
.v20-service-card {padding:24px;min-width:0}
.v20-service-head {min-height:0;align-items:baseline;gap:10px;margin-bottom:16px}
.v20-service-head :is(h2,h3) {margin:0;font-size:20px!important}
.v20-service-number {flex-basis:22px}
.v20-deliverables {margin:0 0 20px}
.v20-profile {grid-template-columns:220px minmax(0,1fr);align-items:start;gap:32px;margin-top:28px;padding:28px}
.v20-profile-photo {max-width:220px}
.v20-profile-role {margin-bottom:16px}
.v20-about-contact {display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;padding:32px 0 0}
.v20-about-contact .v20-copy {margin-bottom:0}
.v20-about-contact>.v20-button {white-space:nowrap}
body.v20-site .v20-button {font-size:14px!important;line-height:1.4!important;letter-spacing:0!important;min-height:44px;flex-shrink:0;max-width:100%;white-space:normal}
body.v20-site .v20-button-outline {color:var(--v20-green)!important}
.v20-projects .v20-category {padding-block:20px 28px}
.v20-project-body {padding:24px}
body.v20-site .v20-project-body h3 {font-size:20px!important;line-height:1.35!important}
body.v20-site .v20-project-body h3.v20-project-title-long {font-size:18px!important}
.v20-project-image {overflow:hidden}
.privacy-copy {max-width:760px;margin-inline:auto}
.privacy-copy h2 {margin:28px 0 12px}
.privacy-copy h2:first-child {margin-top:0}
body.v20-site .privacy-copy h2 {font-size:22px!important}
.privacy-page>.v20-page-heading>p:last-child {font-size:14px;text-align:left;margin:0}
.fm-reading-column,.caderno-single-head,.caderno-single .caderno-body,.radar-single .radar-single-body {max-width:760px}
body.v20-site .fm-article-title {font-size:clamp(28px,3vw,36px)!important}
body.v20-site :is(.radar-card h2,.caderno-card h2) {font-size:22px!important;line-height:1.35!important}
body.v20-site .radar-archive .radar-card {padding:20px;border-left:0;border-bottom:var(--fm-rule);min-height:0}
.radar-archive .radar-grid {gap:0 24px;border-top:0}
body.v20-site .radar-archive .radar-card .radar-deadline-row {min-height:0;margin:12px 0 0}
body.v20-site .radar-archive .radar-card .radar-deadline-row:empty {display:none}
body.v20-site a.radar-category,body.v20-site a.radar-category:visited {background:var(--v20-green);color:white!important;font-size:12px;line-height:1.3;letter-spacing:0}
.radar-card-meta {font-size:12px;line-height:1.5}
body.v20-site .caderno-card-meta {min-height:0;font-size:12px;line-height:1.5}
body.v20-site .caderno-card-image img {display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
body.v20-site .calendar-dashboard {align-items:start}
body.v20-site .calendar-month-head h2 {font-size:20px!important;text-align:center!important}
body.v20-site .calendar-event-card h3 {font-size:20px!important}
body.v20-site :is(.calendar-upcoming h2,.calendar-other h2) {font-size:20px!important}
body.v20-site [hidden] {display:none!important}
.v20-header {background:var(--v20-paper)}
.v20-header-inner {position:relative;min-height:80px;gap:24px}
body.v20-site .v20-wordmark {display:inline-flex;align-items:center;width:188px;flex:0 0 auto;line-height:1;letter-spacing:0;font-size:26px}
.v20-wordmark svg {display:block;width:100%;height:auto;fill:currentColor}
.v20-nav {gap:22px}
.v20-nav a {padding:14px 0;border-bottom:2px solid transparent;white-space:nowrap}
.v20-nav a[aria-current] {border-bottom-color:var(--v20-green);color:var(--v20-green);font-weight:700}
.v20-mobile-nav:not([open])>nav {display:none}
.v20-mobile-nav summary {list-style:none;min-height:44px;display:flex;align-items:center;gap:12px}
.v20-mobile-nav summary::-webkit-details-marker {display:none}
.v20-mobile-nav nav a[aria-current] {background:var(--v20-soft);font-weight:700}
.v20-footer {margin-top:0}
.v20-footer-inner {gap:24px}
body.v20-site .v20-footer .v20-wordmark {width:150px;color:#fff}
.v20-footer-meta {gap:12px 20px;line-height:1.6}
.v20-main {min-height:55vh}
.v20-visually-hidden {position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;margin:0!important;padding:0!important}
body.v20-site :is(.prose,.fm-body-text) a {text-decoration:underline;text-underline-offset:3px}
body.v20-site :is(.prose,.fm-body-text,.privacy-copy) a[href] {overflow-wrap:anywhere}
body.v20-site .contact-form :is(input,textarea,select) {font-size:16px;line-height:1.5}
body.v20-site .contact-form button {font-size:14px;letter-spacing:0;min-height:44px}
.v20-services-page .v20-section {padding-top:0}
@media(max-width:1000px) {
  .v20-nav {display:none}.v20-mobile-nav {display:block;position:relative}
  .v20-mobile-nav nav {right:0;max-width:calc(100vw - 32px);min-width:230px}
  .v20-mobile-nav nav a {min-height:44px;display:flex;align-items:center}
  .v20-about-lead {grid-template-columns:1fr;gap:20px}
  .v20-credential {grid-template-columns:76px minmax(0,1fr);max-width:100%}
  .v20-brand-symbol {width:76px}
  .v20-home-services {grid-template-columns:1fr}
  .v20-profile {grid-template-columns:180px minmax(0,1fr);gap:24px}
}
@media(max-width:700px) {
  :root {--fm-gutter:16px;--fm-page-top:28px}
  body.v20-site :is(.v20-main .shell,.v20-container,.fm-page-shell) {width:calc(100% - 32px)}
  body.v20-site :is(.v20-page,.fm-page-shell,.privacy-page,.single-content,.caderno-single,.radar-single) {padding-block:28px 36px}
  body.v20-site h1 {font-size:28px!important}
  body.v20-site h2 {font-size:24px!important}
  body.v20-site :is(.v20-page-heading,.fm-page-header) {margin-bottom:24px;padding-bottom:20px}
  body.v20-site :is(.v20-intro,.fm-page-subtitle) {font-size:16px!important}
  .v20-header-inner {min-height:68px}
  body.v20-site .v20-header .v20-wordmark {width:155px}
  .v20-home-services {padding:24px 20px;gap:20px}
  .v20-section-top .v20-small-link {white-space:normal}
  .v20-services-grid,.v20-project-grid {grid-template-columns:1fr}
  .v20-service-card,.v20-project-body {padding:20px}
  .v20-profile {grid-template-columns:1fr;padding:20px;gap:20px;margin-top:24px}
  .v20-profile-photo {max-width:200px}
  .v20-about-contact {grid-template-columns:1fr;padding-top:28px;gap:18px}
  .v20-about-contact>.v20-button {justify-self:start}
  .v20-about-lead {padding-bottom:0}
  .v20-credential {padding:18px;gap:16px}
  body.v20-site .radar-archive .radar-card {padding:20px 0}
  .v20-footer-meta {flex-direction:column;gap:8px}
}
@media print {
  .v20-header,.v20-footer,.v20-mobile-nav,.v20-button,.v20-skip {display:none!important}
  body.v20-site {background:#fff}
  body.v20-site .v20-main {min-height:0}
  body.v20-site :is(.v20-main .shell,.v20-container) {width:100%;max-width:none}
  body.v20-site :is(.v20-page,.fm-page-shell) {padding:0}
  .v20-service-card,.v20-project-card,.v20-profile,.v20-credential {break-inside:avoid}
  .v20-about-lead,.v20-profile {grid-template-columns:1fr}
  .v20-profile-photo {width:120px}
}

/* Filmorama 2.3.1: home services heading centered in first grid column */
.v20-home-services-lead{display:flex;align-items:center;justify-content:center;padding:0;text-align:center}
.v20-home-services-lead h2{margin:0;text-align:center}

/* Filmorama 2.3.2 — alinhamento de navegação, rodapé e identidade */
@media (min-width:901px){.v20-header-inner{justify-content:center;flex-wrap:wrap;column-gap:clamp(24px,4vw,64px)}.v20-nav{justify-content:center}}
.v20-footer-inner{justify-content:center;text-align:center;flex-direction:column;align-items:center;gap:14px}
.v20-footer .v20-wordmark,body.v20-site .v20-footer .v20-wordmark{margin:0 auto}
.v20-footer-meta,.v20-socials{justify-content:center;text-align:center}
.v20-about-lead .v20-credential{display:flex;align-items:center;justify-content:center;background:transparent;padding:0}
.v20-about-lead .v20-brand-symbol{display:block;max-width:min(100%,230px);height:auto;object-fit:contain;margin:auto}
@media(max-width:900px){.v20-header-inner{justify-content:space-between}.v20-footer-inner{align-items:center}.v20-about-lead .v20-brand-symbol{max-width:170px}}

/* Filmorama 2.3.5: assinatura à esquerda e informações centralizadas em linha */
.v20-footer-inner{display:grid;grid-template-columns:160px minmax(0,1fr) 160px;align-items:center;gap:16px;position:relative;text-align:center}
.v20-footer .v20-wordmark,body.v20-site .v20-footer .v20-wordmark{grid-column:1;grid-row:1;justify-self:start;margin:0;width:150px}
.v20-footer-meta{grid-column:2;grid-row:1;display:flex;align-items:center;justify-content:center;gap:8px 16px;flex-wrap:nowrap;white-space:nowrap;text-align:center}
.v20-footer .v20-socials{grid-column:3;grid-row:1;justify-content:flex-end}
@media(max-width:1150px){.v20-footer-inner{grid-template-columns:1fr;justify-items:center}.v20-footer .v20-wordmark,body.v20-site .v20-footer .v20-wordmark,.v20-footer-meta,.v20-footer .v20-socials{grid-column:1;grid-row:auto}.v20-footer .v20-wordmark,body.v20-site .v20-footer .v20-wordmark{justify-self:start}.v20-footer-meta{flex-wrap:wrap;white-space:normal;flex-direction:row}.v20-footer .v20-socials{justify-content:center}}
@media(max-width:700px){.v20-footer .v20-wordmark,body.v20-site .v20-footer .v20-wordmark{justify-self:start}.v20-footer-meta{flex-direction:column;gap:6px}}
