.cms-public { background: var(--c-areia); color: var(--c-tinta); min-height: 70dvh; }
.cms-public-hero { padding:clamp(7.5rem,10vw,9rem) clamp(1.25rem,6vw,6rem) clamp(2.75rem,5vw,4rem); background:var(--c-floresta-900); color:var(--c-areia); }
.cms-public-hero-inner,.cms-public-content { width:min(100%,76rem); margin-inline:auto; }
.cms-public-eyebrow { font:500 .64rem/1.4 var(--font-body); text-transform:uppercase; letter-spacing:.2em; color:var(--c-dourado-light); }
.cms-public-title { max-width:26ch; margin-block:.7rem 1rem; color:var(--c-areia); font:500 clamp(2.45rem,5.2vw,4.65rem)/.98 var(--font-display); text-wrap:balance; }
.cms-public-lead { max-width:55rem; font:300 clamp(1rem,2vw,1.2rem)/1.7 var(--font-body); color:var(--c-areia-200); }
.cms-public-cover { width:min(100%,76rem); margin:0 auto; padding:clamp(1.25rem,4vw,3rem) clamp(1.25rem,4vw,3rem) 0; }
.cms-public-cover img { display:block; width:100%; max-height:min(68vh,48rem); aspect-ratio:16/9; object-fit:cover; background:var(--c-areia-200); }
.cms-public-content { padding:clamp(3rem,8vw,7rem) clamp(1.25rem,4vw,3rem); }
.cms-public-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr)); gap:1rem; }
.cms-public-card { display:flex; flex-direction:column; min-width:0; background:var(--c-areia-100); border:1px solid var(--c-areia-300); }
.cms-public-card img { width:100%; aspect-ratio:16/10; object-fit:cover; background:var(--c-areia-200); }
.cms-public-card-body { display:flex; flex:1; flex-direction:column; gap:.75rem; padding:1.25rem; }
.cms-public-card h2 { font:500 clamp(1.3rem,2vw,1.7rem)/1.1 var(--font-display); color:var(--c-floresta); }
.cms-public-card p { font:300 .84rem/1.65 var(--font-body); color:var(--c-tinta-muted); }
.cms-public-card a { color:inherit; text-decoration:none; }
.cms-public-card-link { margin-block-start:auto; min-height:44px; display:inline-flex; align-items:center; color:var(--c-floresta)!important; font:500 .72rem var(--font-body); text-transform:uppercase; letter-spacing:.12em; }
.cms-public-meta { display:flex; flex-wrap:wrap; gap:.5rem 1rem; color:var(--c-tinta-soft); font:400 .7rem/1.5 var(--font-body); }
.cms-public-prose { width:min(100%,47rem); margin-inline:auto; overflow-wrap:anywhere; font:300 1rem/1.85 var(--font-body); }
.cms-public-prose h2,.cms-public-prose h3,.cms-public-prose h4 { color:var(--c-floresta); font-family:var(--font-display); line-height:1.1; margin-block:1.8em .65em; }
.cms-public-prose h2{font-size:clamp(2rem,4vw,3rem)}.cms-public-prose h3{font-size:clamp(1.55rem,3vw,2.2rem)}.cms-public-prose h4{font-size:1.35rem}
.cms-public-prose p,.cms-public-prose ul,.cms-public-prose ol,.cms-public-prose blockquote{margin-block:1.15rem}.cms-public-prose ul,.cms-public-prose ol{padding-inline-start:1.5rem}.cms-public-prose a{color:var(--c-floresta);text-decoration-color:var(--c-dourado);text-underline-offset:.18em}.cms-public-prose img{width:100%;height:auto;margin-block:2rem}.cms-public-prose blockquote{border-inline-start:3px solid var(--c-dourado);padding-inline-start:1.25rem;color:var(--c-tinta-muted)}.cms-public-prose hr{border:0;border-top:1px solid var(--c-areia-300);margin-block:3rem}
.cms-public-prose table{display:block;width:100%;overflow-x:auto;border-collapse:collapse;margin-block:2rem}.cms-public-prose th,.cms-public-prose td{min-width:12rem;padding:.75rem;border:1px solid var(--c-areia-300);text-align:start;vertical-align:top}.cms-public-prose th{background:var(--c-areia-100);color:var(--c-floresta);font-weight:500}
.cms-public-note { width:min(100%,47rem); margin:3rem auto 0; padding:1.25rem; background:var(--c-areia-100); border-inline-start:3px solid var(--c-dourado); font:300 .78rem/1.7 var(--font-body); color:var(--c-tinta-muted); }
.cms-public-pagination { display:flex; justify-content:center; flex-wrap:wrap; gap:.5rem; margin-block-start:2.5rem; }.cms-public-pagination a{display:inline-flex;min-width:44px;min-height:44px;align-items:center;justify-content:center;border:1px solid var(--c-areia-300);color:var(--c-floresta);text-decoration:none}.cms-public-pagination a[aria-current=page]{background:var(--c-floresta);color:var(--c-areia)}
@media(max-width:30rem){.cms-public-hero{padding-block:7rem 2.5rem}.cms-public-title{font-size:2.25rem}.cms-public-content{padding-inline:1rem}}
