/* V2.0.Filmorama — um sistema editorial; sem componentes duplicados do tema legado. */
:root { --v20-paper:#f3f1eb;--v20-surface:#fffdf8;--v20-ink:#1c2520;--v20-green:#294436;--v20-soft:#e2e9e1;--v20-muted:#59685e;--v20-stroke:#d3d9d0;--v20-font:Arial,Helvetica,sans-serif;--v20-width:1300px; }
html{scroll-behavior:smooth;scroll-padding-top:95px}
body.v20-site{margin:0;background:var(--v20-paper);color:var(--v20-ink);font:400 16px/1.65 var(--v20-font);-webkit-font-smoothing:antialiased}
body.v20-site *,body.v20-site *::before,body.v20-site *::after{box-sizing:border-box}
body.v20-site a{color:inherit;text-decoration:none}
body.v20-site img{max-width:100%}
body.v20-site h1,body.v20-site h2,body.v20-site h3,body.v20-site p{margin-top:0}
body.v20-site h1,body.v20-site h2,body.v20-site h3{font-family:var(--v20-font);line-height:1.17;color:var(--v20-ink);font-weight:700;letter-spacing:-.035em}
body.v20-site h1{font-size:clamp(36px,4.8vw,64px)}
body.v20-site h2{font-size:30px}
body.v20-site h3{font-size:20px}
body.v20-site :focus-visible{outline:3px solid #4a8662;outline-offset:4px}
.v20-container{max-width:var(--v20-width);width:calc(100% - 72px);margin-inline:auto}
.v20-skip{position:absolute;left:-9999px;top:0;z-index:1000;padding:10px;background:#fff}
.v20-skip:focus{left:8px}
.v20-header{position:relative;z-index:30;min-height:74px;background:#f7f6f1;color:var(--v20-ink)}
.v20-header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:74px;border-bottom:1px solid var(--v20-stroke)}
.v20-wordmark{font-weight:800;letter-spacing:.26em;font-size:21px;white-space:nowrap}
.v20-nav{display:flex;gap:clamp(10px,2vw,28px);align-items:center;justify-content:end}
.v20-nav a,.v20-mobile-nav a{font-size:14px;line-height:1.2;font-weight:500}
.v20-nav a:hover,.v20-small-link:hover,.v20-footer a:hover{text-decoration:underline;text-underline-offset:5px}
.v20-mobile-nav{display:none}
.v20-main{min-height:55vh}
.v20-page{padding-top:42px;padding-bottom:60px}
.v20-eyebrow{font-size:11px;line-height:1.6;letter-spacing:.2em;font-weight:700;text-transform:uppercase;color:var(--v20-muted);margin-bottom:10px}
.v20-section{padding-top:40px;padding-bottom:42px}
.v20-section-top{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin-bottom:20px}
.v20-section-top h2{font-size:27px;letter-spacing:-.03em;margin-bottom:0}
.v20-count{font-size:13px;font-weight:400;letter-spacing:.025em;color:var(--v20-muted);margin-left:8px}
.v20-small-link{font-size:14px;font-weight:500;white-space:nowrap}
.v20-button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 24px;background:var(--v20-green);color:#fff!important;border:1px solid var(--v20-green);font-size:14px;font-weight:600;line-height:1.25;letter-spacing:.005em;text-align:center;text-decoration:none!important;transition:background-color .15s ease}
.v20-button:hover{background:#172b20}
.v20-button-outline{background:transparent;color:var(--v20-green)!important}
.v20-button-outline:hover{background:var(--v20-soft)}
.v20-button-light{background:transparent;color:var(--v20-ink)!important;border-color:var(--v20-ink)}
.v20-button-inverse{background:transparent;color:#fff!important;border-color:#ddd}
.v20-copy{font-size:16px;line-height:1.65;text-align:justify;text-align-last:left;hyphens:none;-webkit-hyphens:none;overflow-wrap:normal;word-spacing:normal;margin:0 0 16px}
.v20-page-heading{margin:0 0 48px;max-width:950px}
.v20-page-heading h1{margin-bottom:14px}
.v20-intro{font-size:18px;line-height:1.55;color:var(--v20-muted);max-width:760px;margin:0}
/* HOME */
.v20-home{padding-top:34px}
/* HOME / abertura editorial compacta: mesma tipografia do restante do site. */
.v20-home-hero{display:block;padding:26px 0 24px;margin:0}
.v20-home-hero-main{max-width:1120px}
.v20-home-hero h1{font-size:clamp(26px,2.6vw,35px);font-weight:700;line-height:1.22;letter-spacing:-.028em;margin:0 0 13px;text-wrap:pretty}
.v20-home-hero p{font-size:16px;line-height:1.65;max-width:960px;margin:0 0 18px}
.v20-home-hero .v20-button{min-height:43px}
.v20-home-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.v20-home-tile{min-width:0}
.v20-home-tile>a{display:block;aspect-ratio:16/9;overflow:hidden;background:#dbdad3}
.v20-home-tile img{width:100%;height:100%;display:block;object-fit:contain;transition:transform .15s ease}
.v20-home-tile a:hover img{transform:scale(1.012)}
.v20-home-tile-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:8px;font-size:13px;line-height:1.45}
.v20-home-tile-meta span{overflow-wrap:anywhere}
.v20-home-tile-meta>a{font-size:18px}
.v20-home-services{background:var(--v20-soft);margin:32px 0 0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);padding:44px 42px;gap:32px}
.v20-home-services-lead{padding-right:25px}
.v20-home-services-lead h2{font-size:clamp(30px,3.3vw,43px);line-height:1.15;margin-bottom:18px}
.v20-home-services-lead p:not(.v20-eyebrow){max-width:310px}
.v20-home-services-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px;row-gap:3px;align-content:start}
.v20-home-services-list a{display:grid;grid-template-columns:30px minmax(0,1fr) 16px;gap:12px;align-items:baseline;padding:13px 0;border-bottom:1px solid #b7c6b7;min-height:64px;font-size:15px;line-height:1.35}
.v20-home-services-list a:hover{color:var(--v20-green);border-bottom-color:var(--v20-green)}
.v20-service-counter{color:var(--v20-muted);font-size:13px}
.v20-home-news{padding:48px 0 44px;display:grid;grid-template-columns:1.55fr 1fr;gap:36px}
.v20-home-caderno-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.v20-home-caderno-cards article img{aspect-ratio:1.48/1;object-fit:cover;width:100%;background:#ddd;display:block;margin-bottom:13px}
.v20-home-caderno-cards h3{font-size:20px;line-height:1.22;margin:0}
.v20-home-radar{padding-left:32px;border-left:1px solid var(--v20-stroke)}
.v20-home-radar article{padding:11px 0 17px;margin-bottom:10px;border-bottom:1px solid var(--v20-stroke)}
.v20-home-radar article small{display:block;font-size:12px;color:var(--v20-muted);margin-bottom:8px}
.v20-home-radar article h3{font-size:16px;line-height:1.45;letter-spacing:0;font-weight:500;margin:0}
.v20-home-radar .v20-button{margin-top:7px}
.v20-home-contact{background:#1c2520;color:#fff}
.v20-home-contact>.v20-container{min-height:120px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.v20-home-contact h2{color:#fff;margin:0;font-size:25px}
/* FILMORAMA */
.v20-about-lead{display:grid;grid-template-columns:1.55fr .8fr;gap:52px;align-items:start;padding-bottom:50px}
.v20-about-lead h2{font-size:27px;margin:0 0 18px}
.v20-credential{background:var(--v20-soft);padding:30px}
.v20-credential p{margin:0 0 12px;line-height:1.5}
.v20-credential p:last-child{font-size:14px;margin:16px 0 0}
.v20-about-services{scroll-margin-top:88px}
.v20-section-intro{max-width:790px;margin:0 0 26px}
.v20-services-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.v20-service-card{min-width:0;display:flex;flex-direction:column;background:var(--v20-surface);padding:30px;scroll-margin-top:95px}
.v20-service-head{display:flex;align-items:baseline;gap:15px;margin-bottom:17px;min-height:33px}
.v20-service-head h3{font-size:20px;line-height:1.3;letter-spacing:-.018em;margin:0;font-weight:700}
.v20-service-number{font-size:12px;color:var(--v20-muted);flex:0 0 23px}
.v20-service-card .v20-copy{flex:1}
.v20-deliverables{font-size:14px;line-height:1.45;color:var(--v20-muted);margin-bottom:19px}
.v20-deliverables strong{color:var(--v20-ink)}
.v20-service-card .v20-button{align-self:start}
.v20-profile{display:grid;grid-template-columns:.58fr 1.42fr;gap:50px;align-items:center;background:var(--v20-soft);margin-top:35px;padding:40px}
.v20-profile-photo{width:100%;aspect-ratio:4/5;background:#b7c5bc;overflow:hidden}
.v20-profile-photo img{width:100%;height:100%;object-fit:cover;display:block}
.v20-profile-placeholder{height:100%;display:flex;justify-content:center;align-items:center;font-size:64px;font-weight:700;letter-spacing:-.06em;color:#fff;background:linear-gradient(145deg,#5b7462,#25382c)}
.v20-profile h2{font-size:30px;margin:0 0 8px}
.v20-profile-role{margin:0 0 20px;color:var(--v20-muted)}
.v20-links{display:flex;gap:15px;flex-wrap:wrap;font-size:14px;font-weight:600}
.v20-links a{text-decoration:underline}
.v20-about-contact{display:flex;align-items:center;justify-content:space-between;gap:55px;padding:62px 0 16px}
.v20-about-contact>div{max-width:800px}
.v20-about-contact h2{margin:0 0 16px}
/* PROJETOS */
.v20-projects .v20-category{padding-top:30px;padding-bottom:40px}
.v20-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.v20-project-card{display:flex;flex-direction:column;min-width:0;background:var(--v20-surface);scroll-margin-top:105px}
.v20-project-image{width:100%;aspect-ratio:16/9;background:#e8e3da}
.v20-project-image img{display:block;width:100%;height:100%;object-fit:contain}
.v20-project-body{padding:29px 30px 31px;display:flex;flex-direction:column;flex:1}
.v20-project-body h3{font-size:21px;letter-spacing:-.028em;line-height:1.25;margin-bottom:12px;overflow-wrap:break-word}
.v20-project-facts{font-size:14px;color:var(--v20-muted);margin:0 0 17px;line-height:1.5}
.v20-project-body .v20-copy{min-height:0;flex:1}
.v20-project-credits{font-size:13px;line-height:1.5;color:var(--v20-muted);margin:0 0 16px}
.v20-project-status{color:var(--v20-muted);font-size:15px;margin:0 0 22px;flex:1}
.v20-project-body .v20-button{align-self:start;margin-top:auto}



/* LEGACY pages: only global navigation/footer change; existing content templates kept intact until validation. */
.v20-footer{background:#19221c;color:#fff;padding:32px 0;font-size:13px}
.v20-footer-inner{display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.v20-footer .v20-wordmark{font-size:18px;margin-right:auto;color:#fff}
.v20-footer-meta,.v20-socials{display:flex;flex-wrap:wrap;gap:16px;color:#e2e9e1}
.v20-footer a{color:inherit}
@media(max-width:1050px){.v20-nav{gap:11px}.v20-nav a{font-size:13px}.v20-home-services{grid-template-columns:1fr 1.5fr;padding:35px 26px}.v20-home-services-list{column-gap:20px}.v20-home-hero{gap:28px}}
@media(max-width:900px){.v20-nav{display:none}.v20-mobile-nav{display:block;position:relative;font-size:14px}.v20-mobile-nav summary{list-style:none;cursor:pointer;border:1px solid var(--v20-stroke);padding:8px 12px}.v20-mobile-nav summary::-webkit-details-marker{display:none}.v20-mobile-nav nav{position:absolute;right:0;top:100%;background:var(--v20-surface);box-shadow:0 10px 24px #0002;display:flex;flex-direction:column;min-width:185px;padding:9px;z-index:80}.v20-mobile-nav nav a{padding:10px}.v20-home-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v20-home-services{grid-template-columns:1fr;margin:30px 0 0}.v20-home-news{grid-template-columns:1fr}.v20-home-radar{padding-left:0;border-left:0}.v20-about-lead{grid-template-columns:1fr}.v20-about-contact{flex-direction:column;align-items:start;gap:16px}.v20-profile{gap:26px}}
@media(max-width:700px){.v20-container{width:calc(100% - 32px)}.v20-header,.v20-header-inner{min-height:62px}.v20-wordmark{font-size:16px;letter-spacing:.17em}.v20-page{padding-top:26px;padding-bottom:44px}.v20-home-hero{display:block;padding:14px 0 28px}.v20-home-hero h1{font-size:clamp(25px,6.8vw,32px);line-height:1.22}.v20-section{padding-top:28px;padding-bottom:32px}.v20-section-top h2{font-size:24px}.v20-section-top{align-items:start}.v20-home-project-grid,.v20-home-services-list,.v20-home-caderno-cards,.v20-services-grid,.v20-project-grid{grid-template-columns:1fr}.v20-home-services{padding:30px 20px}.v20-home-services-list a{min-height:48px}.v20-home-news{padding:32px 0}.v20-home-contact>.v20-container{display:block;padding-block:24px}.v20-home-contact h2{font-size:23px;margin-bottom:14px}.v20-page-heading{margin-bottom:30px}.v20-page-heading h1{font-size:36px}.v20-intro{font-size:16px}.v20-copy{text-align:justify;text-align-last:left;hyphens:none;line-height:1.65}.v20-service-card{padding:25px 20px}.v20-service-head h3{font-size:19px}.v20-service-card .v20-button,.v20-project-body .v20-button{width:100%}.v20-profile{grid-template-columns:1fr;padding:24px}.v20-profile-photo{max-width:280px}.v20-profile-placeholder{height:260px}.v20-about-contact{padding-top:38px}.v20-project-body{padding:24px 20px}.v20-project-body h3{font-size:20px}.v20-project-grid>.v20-project-card:last-child:nth-child(odd){grid-column:auto;display:flex}.v20-project-grid>.v20-project-card:last-child:nth-child(odd) .v20-project-image{aspect-ratio:16/9}.v20-footer-inner{align-items:start;flex-direction:column}.v20-footer .v20-wordmark{margin-right:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}body.v20-site *{transition:none!important}}

