:root{
--bg:#ffffff;
--card:#ffffff;
--card-soft:#f8fbf9;
--line:#d9e4dc;
--line-soft:#e8efea;

--text:#1f2a33;
--muted:#5b6b76;
--muted-2:#7b8b96;

--primary:#0C7A2B;
--primary-hover:#095f21;
--primary-soft:#edf8f0;
--primary-soft-2:#f6fcf7;

--ok:#176534;
--ok-bg:#edf9f0;
--ok-line:#b9e3c4;

--no:#9f1c1c;
--no-bg:#fff1f1;
--no-line:#efb5b5;

--abs:#8a5a00;
--abs-bg:#fff8e8;
--abs-line:#edd08f;

--nv:#435466;
--nv-bg:#f3f6f8;
--nv-line:#d7e0e6;

--pres-bg:#fff5da;
--pres-text:#8a5a00;
--pres-line:#f0d48a;

--info-bg:#f6fbfd;
--warn-bg:#fff4e5;
--warn-line:#f6c56f;
--warn-text:#8a4b00;

--radius-xs:8px;
--radius-sm:10px;
--radius-md:14px;
--radius-lg:18px;
--radius-pill:999px;

--shadow-sm:0 2px 8px rgba(15, 23, 42, .05);
--shadow-md:0 8px 24px rgba(15, 23, 42, .08);
--shadow-lg:0 12px 32px rgba(15, 23, 42, .10);
}

*{box-sizing:border-box}

body{
margin:0;
background:#ffffff;
color:var(--text);
font-family:Arial, Helvetica, sans-serif;
}

.wrap{
max-width:1440px;
margin:0 auto;
padding:24px;
}

.topo,.card,.paginacao-wrap,.explicativo,.filtro-box,.sem-resultado{
background:var(--card);
border:1px solid var(--line);
border-radius:var(--radius-md);
box-shadow:var(--shadow-sm);
}

.topo{
padding:22px;
margin-bottom:18px;
}

.filtros-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:18px;
}

.filtro-box{
padding:16px;
background:#fbfcfd;
}

.filtro-box h2{
margin:0 0 14px;
font-size:18px;
color:var(--primary);
}

.explicativo{
padding:18px 20px;
margin-bottom:20px;
background:var(--info-bg);
}

.explicativo p{
margin:0;
line-height:1.65;
color:#334e68;
}

.sem-resultado{
padding:28px 24px;
margin-top:18px;
background:var(--warn-bg);
border-color:var(--warn-line);
text-align:center;
}

.sem-resultado .icone{
font-size:58px;
line-height:1;
display:block;
margin-bottom:12px;
}

.sem-resultado h2{
margin:0 0 10px;
color:var(--warn-text);
font-size:26px;
}

.sem-resultado p{
margin:0;
color:#7a4b00;
font-size:16px;
line-height:1.6;
}

h1{
margin:0 0 18px;
font-size:32px;
color:var(--primary);
letter-spacing:-.02em;
}

h2.info-title{
margin:0 0 10px;
font-size:22px;
color:var(--primary);
}

.filtros{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
gap:14px;
}

.campo{
display:flex;
flex-direction:column;
gap:6px;
}

.campo label{
font-size:14px;
font-weight:700;
color:#334e68;
}

.campo select,
.campo input{
padding:11px 12px;
border:1px solid #c8d2d9;
border-radius:var(--radius-xs);
font-size:15px;
background:#fff;
color:var(--text);
transition:border-color .2s ease, box-shadow .2s ease;
}

.campo select:focus,
.campo input:focus{
outline:none;
border-color:var(--primary);
box-shadow:0 0 0 4px rgba(12,122,43,.10);
}

.acoes{
display:flex;
gap:10px;
align-items:end;
flex-wrap:wrap;
margin-top:14px;
}

.btn{
padding:11px 18px;
border:none;
border-radius:var(--radius-xs);
background:var(--primary);
color:#fff;
cursor:pointer;
font-weight:700;
text-decoration:none;
display:inline-flex;
align-items:center;
justify-content:center;
gap:8px;
transition:background .2s ease, transform .2s ease, box-shadow .2s ease;
box-shadow:0 6px 16px rgba(12,122,43,.18);
}

.btn:hover{
background:var(--primary-hover);
transform:translateY(-1px);
}

.btn-sec{
background:#5c8f69;
box-shadow:none;
}

.btn-sec:hover{
background:#4d7d59;
}

.info{
margin-top:16px;
font-size:18px;
font-weight:700;
}

.info-init{
margin-top:8px;
color:#425466;
font-size:14px;
}

.lista{
display:flex;
flex-direction:column;
gap:18px;
}

.card{
overflow:hidden;
border-radius:var(--radius-lg);
}

.card-head{
padding:18px 20px 16px;
background:linear-gradient(180deg,var(--primary-soft) 0%, var(--primary-soft-2) 100%);
border-bottom:1px solid var(--line);
}

.titulo-wrap{
display:flex;
align-items:flex-start;
justify-content:space-between;
gap:18px;
}

.titulo{
margin:0;
flex:1;
font-size:clamp(24px,2vw,34px);
line-height:1.15;
letter-spacing:-.02em;
color:#16321f;
}

.ementa-linha{
display:flex;
align-items:flex-start;
justify-content:space-between;
gap:16px;
margin:12px 0 14px;
}

.ementa-topo{
margin:0;
flex:1;
color:#425466;
line-height:1.65;
font-size:15px;
}

.acoes-materia{
display:flex;
align-items:center;
gap:10px;
flex-shrink:0;
}

.icone-materia{
display:flex;
flex-direction:column;
align-items:center;
justify-content:center;
gap:3px;
min-width:60px;
min-height:56px;
padding:8px 10px;
border-radius:12px;
border:1px solid #cfe7d6;
background:rgba(255,255,255,.75);
color:var(--primary);
text-decoration:none;
transition:all .2s ease;
box-shadow:var(--shadow-sm);
}

.icone-materia span{
font-size:18px;
line-height:1;
}

.icone-materia small{
font-size:11px;
font-weight:700;
letter-spacing:.04em;
}

.icone-materia:hover{
background:#ffffff;
border-color:var(--primary);
transform:translateY(-2px);
box-shadow:var(--shadow-md);
}

.resultado-badge{
margin-left:auto;
flex-shrink:0;
display:inline-flex;
align-items:center;
gap:10px;
padding:9px 14px 9px 10px;
border-radius:var(--radius-pill);
font-weight:800;
border:1px solid transparent;
box-shadow:var(--shadow-sm);
}

.resultado-icone-destaque{
width:36px;
height:36px;
border-radius:50%;
display:inline-flex;
align-items:center;
justify-content:center;
font-size:18px;
background:#fff;
box-shadow:0 4px 10px rgba(0,0,0,.10);
}

.resultado-texto{
white-space:nowrap;
font-size:14px;
letter-spacing:.01em;
}

.resultado-aprovado{
color:var(--ok);
background:var(--ok-bg);
border-color:var(--ok-line);
}

.resultado-rejeitado,
.resultado-reprovado{
color:var(--no);
background:var(--no-bg);
border-color:var(--no-line);
}

.resultado-adiado{
color:var(--abs);
background:var(--abs-bg);
border-color:var(--abs-line);
}

.resultado-retirado,
.resultado-neutro{
color:var(--nv);
background:var(--nv-bg);
border-color:var(--nv-line);
}

.meta{
display:grid;
gap:8px 16px;
font-size:14px;
color:var(--muted);
margin-top:12px;
}

.meta-topo{
grid-template-columns:minmax(280px,1.5fr) minmax(180px,1fr);
}

.meta-resumo{
grid-template-columns:repeat(4,minmax(140px,1fr));
margin-top:8px;
}

.card-body{
padding:18px;
background:#fff;
}

.resumo{
display:grid;
grid-template-columns:repeat(6,minmax(120px,1fr));
gap:12px;
margin-bottom:18px;
}

.box{
border:1px solid var(--line-soft);
border-radius:12px;
padding:16px;
background:linear-gradient(180deg,#ffffff 0%, #fafcfd 100%);
text-align:center;
box-shadow:var(--shadow-sm);
}

.box .icone{
display:block;
font-size:28px;
line-height:1;
margin-bottom:8px;
}

.box .rotulo{
display:block;
font-size:13px;
color:var(--muted);
margin-bottom:6px;
}

.box .valor{
font-size:28px;
font-weight:700;
display:block;
}

.sim{color:var(--ok)}
.nao{color:var(--no)}
.abs{color:var(--abs)}
.nv{color:var(--nv)}

.lista-ausentes{
border:1px solid #f1dfbf;
border-radius:12px;
padding:14px;
background:#fffaf5;
margin-bottom:16px;
}

.lista-ausentes strong{
display:block;
margin-bottom:8px;
}

.bloco-texto{
border:1px solid var(--line-soft);
border-radius:12px;
padding:14px;
background:#fcfcfc;
margin-top:16px;
}

.bloco-texto strong{
display:block;
margin-bottom:6px;
color:#24543a;
}

table{
width:100%;
border-collapse:collapse;
font-size:14px;
}

th,td{
padding:12px 14px;
border-bottom:1px solid #e6edf1;
text-align:left;
vertical-align:middle;
}

th{
background:#f8fafb;
color:#334e68;
font-size:12px;
text-transform:uppercase;
letter-spacing:.05em;
}

tr:hover td{
background:#fbfdfe;
}

.presidente-row td{
background:#f4fbf6 !important;
}

.presidente-destaque td:first-child{
border-left:4px solid var(--primary);
}

.parlamentar-cell{
display:flex;
align-items:center;
gap:14px;
}

.avatar,.avatar-placeholder{
width:72px;
height:72px;
border-radius:50%;
flex:0 0 72px;
}

.avatar{
object-fit:cover;
object-position:center top;
border:1px solid var(--line);
background:#fff;
}

.avatar-placeholder{
border:1px solid var(--line);
background:#eef3f6;
}

.selo-pres{
display:inline-flex;
align-items:center;
gap:4px;
padding:4px 8px;
border-radius:var(--radius-pill);
background:var(--pres-bg);
color:var(--pres-text);
border:1px solid var(--pres-line);
font-size:12px;
font-weight:700;
margin-left:8px;
}

.voto-badge,.status-badge{
display:inline-flex;
align-items:center;
gap:8px;
padding:7px 10px;
border-radius:var(--radius-pill);
font-weight:700;
border:1px solid transparent;
}

.voto-sim,
.status-votou{
background:var(--ok-bg);
color:var(--ok);
border-color:var(--ok-line);
}

.voto-nao{
background:var(--no-bg);
color:var(--no);
border-color:var(--no-line);
}

.voto-abstencao{
background:var(--abs-bg);
color:var(--abs);
border-color:var(--abs-line);
}

.voto-nao_votou,
.status-nao-votou{
background:var(--nv-bg);
color:var(--nv);
border-color:var(--nv-line);
}

.nota-votacao-topo{
margin-top:14px;
padding:12px 14px;
border-radius:12px;
background:#f8fcf9;
border:1px solid #cfe7d6;
color:#355244;
font-size:13px;
line-height:1.55;
}

.nota-votacao-topo strong{
display:block;
margin-bottom:4px;
color:#0a5b21;
}

.nota-presidente{
margin-top:8px;
padding:8px 10px;
font-size:12px;
line-height:1.5;
border-radius:8px;
background:#eef9f1;
border:1px solid #9ad0a8;
color:#0a5b21;
max-width:420px;
}

.info-presidente-final{
margin-top:16px;
padding:12px 14px;
border:1px solid #cfe7d6;
border-left:4px solid var(--primary);
border-radius:10px;
background:#f8fcf9;
color:#355244;
font-size:12px;
line-height:1.55;
}

.info-presidente-final strong{
display:block;
margin-bottom:4px;
color:#0a5b21;
font-size:13px;
}

.info-presidente-final p{
margin:0;
}

.loading-overlay{
position:fixed;
top:0;
left:0;
right:0;
bottom:0;
display:none;
align-items:center;
justify-content:center;
background:rgba(255,255,255,.82);
backdrop-filter:blur(3px);
z-index:99999;
}

.loading-overlay.active{
display:flex;
}

.loading-box{
background:#ffffff;
border:1px solid var(--line);
border-radius:16px;
padding:28px 30px;
min-width:320px;
max-width:90vw;
text-align:center;
box-shadow:var(--shadow-lg);
}

.hourglass{
font-size:46px;
display:block;
margin-bottom:12px;
animation:spin 1.4s linear infinite;
}

.loading-text{
font-size:18px;
font-weight:700;
color:var(--primary);
line-height:1.3;
}

.loading-sub{
margin-top:8px;
font-size:14px;
color:var(--muted);
line-height:1.5;
}

.paginacao-wrap{
margin-top:18px;
padding:16px;
}

.paginacao{
display:flex;
gap:8px;
flex-wrap:wrap;
align-items:center;
justify-content:center;
}

.pag-link,.pag-atual,.pag-gap{
min-width:42px;
height:42px;
padding:0 12px;
border-radius:10px;
display:inline-flex;
align-items:center;
justify-content:center;
text-decoration:none;
border:1px solid var(--line);
background:#fff;
color:var(--text);
font-weight:700;
}

.pag-link:hover{
background:#f3f8f4;
border-color:#bfd6c5;
}

.pag-atual{
background:var(--primary);
color:#fff;
border-color:var(--primary);
}

.pag-gap{
border-style:dashed;
color:var(--muted);
}

.rodape-desenvolvimento{
margin-top:18px;
text-align:center;
font-size:10px;
color:#7a8a7a;
opacity:.9;
line-height:1.7;
}

.rodape-desenvolvimento a{
color:var(--primary);
text-decoration:none;
font-weight:700;
}

.rodape-desenvolvimento a:hover{
text-decoration:underline;
}

@keyframes spin{
0%{transform:rotate(0)}
100%{transform:rotate(360deg)}
}

@media (max-width:1100px){
.filtros-grid{grid-template-columns:1fr;}
}

@media (max-width:980px){
.resumo{grid-template-columns:repeat(2,minmax(140px,1fr));}
.meta-topo{grid-template-columns:1fr;}
.meta-resumo{grid-template-columns:repeat(2,minmax(140px,1fr));}
}

@media (max-width:640px){
.titulo-wrap{
flex-direction:column;
align-items:flex-start;
}

.resultado-badge{
margin-left:0;
}

.ementa-linha{
flex-direction:column;
align-items:flex-start;
}

.acoes-materia{
margin-top:8px;
}
}

@media (max-width:560px){
.wrap{padding:14px}
h1{font-size:28px}
.titulo{font-size:22px}
.resumo{grid-template-columns:1fr}
.meta-topo,.meta-resumo{grid-template-columns:1fr}

.loading-box{
padding:22px 18px;
min-width:auto;
width:min(92vw, 360px);
}

.hourglass{
font-size:38px;
}

.loading-text{
font-size:16px;
}

.loading-sub{
font-size:13px;
}

table,thead,tbody,th,td,tr{display:block}
thead{display:none}
tr{
border:1px solid var(--line);
border-radius:10px;
margin-bottom:10px;
overflow:hidden;
background:#fff;
}
td{border-bottom:1px solid #eef3f6}
td::before{
content:attr(data-label);
display:block;
font-size:12px;
font-weight:700;
color:var(--muted);
margin-bottom:4px;
text-transform:uppercase;
}
}

html{
    -webkit-text-size-adjust:100%;
}

body{
    overflow-x:hidden;
}

img{
    max-width:100%;
    height:auto;
}

.wrap{
    width:min(100%, 1440px);
    padding:24px;
}

.topo,
.card,
.paginacao-wrap,
.explicativo,
.filtro-box,
.sem-resultado{
    min-width:0;
}

.filtros-grid,
.filtros,
.titulo-wrap,
.ementa-linha,
.meta,
.meta-topo,
.meta-resumo,
.resumo,
.parlamentar-cell,
.acoes,
.acoes-materia,
.paginacao{
    min-width:0;
}

.titulo,
.ementa-topo,
.resultado-texto,
.nota-votacao-topo,
.bloco-texto,
.info-presidente-final,
.lista-ausentes,
.campo,
.campo select,
.campo input{
    min-width:0;
    overflow-wrap:anywhere;
    word-break:break-word;
}

table{
    table-layout:fixed;
}

td,
th{
    overflow-wrap:anywhere;
    word-break:break-word;
}

.btn{
    min-height:44px;
}

.pag-link,
.pag-atual,
.pag-gap{
    min-width:42px;
    min-height:42px;
}

@media (max-width:1200px){
    .wrap{
        padding:20px;
    }

    .resumo{
        grid-template-columns:repeat(3, minmax(140px, 1fr));
    }

    .meta-topo{
        grid-template-columns:1fr;
    }
}

@media (max-width:980px){
    .topo{
        padding:18px;
    }

    .card-head,
    .card-body{
        padding:16px;
    }

    .titulo-wrap{
        flex-direction:column;
        align-items:stretch;
        gap:14px;
    }

    .resultado-badge{
        margin-left:0;
        align-self:flex-start;
        max-width:100%;
        flex-wrap:wrap;
    }

    .ementa-linha{
        flex-direction:column;
        align-items:stretch;
    }

    .acoes-materia{
        width:100%;
        flex-wrap:wrap;
    }

    .icone-materia{
        min-width:56px;
        flex:0 0 auto;
    }

    .meta-resumo{
        grid-template-columns:repeat(2, minmax(160px, 1fr));
    }

    .resumo{
        grid-template-columns:repeat(2, minmax(140px, 1fr));
    }

    .nota-presidente{
        max-width:100%;
    }
}

@media (max-width:768px){
    .wrap{
        padding:16px;
    }

    h1{
        font-size:26px;
        line-height:1.2;
    }

    h2.info-title{
        font-size:20px;
    }

    .filtros-grid{
        grid-template-columns:1fr;
        gap:14px;
    }

    .filtro-box{
        padding:14px;
    }

    .filtros{
        grid-template-columns:1fr;
        gap:12px;
    }

    .acoes{
        flex-direction:column;
        align-items:stretch;
    }

    .acoes .btn,
    .acoes a.btn{
        width:100%;
    }

    .titulo{
        font-size:22px;
        line-height:1.2;
    }

    .resultado-badge{
        width:100%;
        justify-content:flex-start;
        padding:10px 12px;
    }

    .resultado-icone-destaque{
        width:32px;
        height:32px;
        font-size:16px;
    }

    .resultado-texto{
        white-space:normal;
    }

    .meta,
    .meta-topo,
    .meta-resumo{
        grid-template-columns:1fr;
        gap:10px;
    }

    .resumo{
        grid-template-columns:1fr 1fr;
        gap:10px;
    }

    .box{
        padding:14px;
    }

    .box .valor{
        font-size:24px;
    }

    .parlamentar-cell{
        gap:10px;
        align-items:flex-start;
    }

    .avatar,
    .avatar-placeholder{
        width:56px;
        height:56px;
        flex:0 0 56px;
    }

    .selo-pres{
        margin-left:0;
        margin-top:6px;
    }

    .bloco-texto,
    .lista-ausentes,
    .nota-votacao-topo,
    .info-presidente-final{
        padding:12px;
    }

    .paginacao{
        gap:6px;
    }

    .pag-link,
    .pag-atual,
    .pag-gap{
        min-width:38px;
        height:38px;
        padding:0 10px;
    }
}

@media (max-width:560px){
    .wrap{
        padding:12px;
    }

    .topo{
        padding:14px;
    }

    h1{
        font-size:23px;
        margin-bottom:14px;
    }

    .explicativo,
    .sem-resultado,
    .paginacao-wrap{
        padding:14px;
    }

    .card-head,
    .card-body{
        padding:14px;
    }

    .titulo{
        font-size:20px;
    }

    .ementa-topo{
        font-size:14px;
        line-height:1.55;
    }

    .resultado-badge{
        border-radius:14px;
        gap:8px;
    }

    .resultado-texto{
        font-size:13px;
    }

    .resumo{
        grid-template-columns:1fr;
    }

    .box .icone{
        font-size:24px;
    }

    .box .rotulo{
        font-size:12px;
    }

    .box .valor{
        font-size:22px;
    }

    table,
    thead,
    tbody,
    th,
    td,
    tr{
        display:block;
        width:100%;
    }

    thead{
        display:none;
    }

    tbody{
        display:grid;
        gap:10px;
    }

    tr{
        border:1px solid var(--line);
        border-radius:10px;
        overflow:hidden;
        background:#fff;
        margin-bottom:0;
    }

    td{
        padding:10px 12px;
        border-bottom:1px solid #eef3f6;
    }

    td:last-child{
        border-bottom:none;
    }

    td::before{
        content:attr(data-label);
        display:block;
        margin-bottom:4px;
        font-size:11px;
        line-height:1.3;
        font-weight:700;
        color:var(--muted);
        text-transform:uppercase;
        letter-spacing:.04em;
    }

    .parlamentar-cell{
        align-items:center;
    }

    .avatar,
    .avatar-placeholder{
        width:48px;
        height:48px;
        flex:0 0 48px;
    }

    .voto-badge,
    .status-badge{
        width:100%;
        justify-content:center;
        text-align:center;
        flex-wrap:wrap;
    }

    .nota-presidente{
        max-width:100%;
        font-size:11px;
    }

    .loading-box{
        min-width:0;
        width:100%;
        max-width:calc(100vw - 24px);
    }
}

@media (max-width:380px){
    .wrap{
        padding:10px;
    }

    .topo,
    .card-head,
    .card-body,
    .filtro-box,
    .explicativo,
    .sem-resultado,
    .paginacao-wrap{
        padding-left:12px;
        padding-right:12px;
    }

    h1{
        font-size:21px;
    }

    .titulo{
        font-size:18px;
    }

    .campo label,
    .campo select,
    .campo input,
    .btn,
    .info,
    .ementa-topo,
    .bloco-texto,
    .nota-votacao-topo{
        font-size:14px;
    }

    .resultado-texto,
    .box .rotulo,
    .nota-presidente,
    .info-presidente-final{
        font-size:12px;
    }
}

.topo {
    position: relative;
    display: flex;
    align-items: flex-start;
    gap: 18px;
    overflow: hidden;
    margin-bottom: 24px;
    padding: 28px 30px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            #123f30 0%,
            #1d694d 58%,
            #2c8263 100%
        );
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 16px;
    box-shadow: 0 10px 28px rgba(20, 71, 52, 0.18);
}

.topo::before {
    position: absolute;
    top: -105px;
    right: -55px;
    width: 265px;
    height: 265px;
    content: "";
    background: rgba(255, 255, 255, 0.07);
    border-radius: 50%;
}

.topo::after {
    position: absolute;
    right: 110px;
    bottom: -115px;
    width: 220px;
    height: 220px;
    content: "";
    background: rgba(255, 255, 255, 0.045);
    border-radius: 50%;
}

.topo-icone {
    position: relative;
    z-index: 1;
    display: flex;
    flex: 0 0 64px;
    align-items: center;
    justify-content: center;
    width: 64px;
    height: 64px;
    font-size: 31px;
    line-height: 1;
    background: rgba(255, 255, 255, 0.15);
    border: 1px solid rgba(255, 255, 255, 0.28);
    border-radius: 14px;
    box-shadow: inset 0 1px rgba(255, 255, 255, 0.14);
}

.topo-conteudo {
    position: relative;
    z-index: 1;
    max-width: 900px;
}

.topo-selo {
    display: inline-block;
    margin-bottom: 7px;
    padding: 4px 10px;
    color: #e5fff3;
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    background: rgba(0, 0, 0, 0.14);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 999px;
}

.topo h1 {
    margin: 0;
    color: #ffffff;
    font-size: clamp(1.55rem, 3vw, 2.1rem);
    font-weight: 750;
    line-height: 1.15;
    letter-spacing: -0.025em;
}

.topo-subtitulo {
    margin: 9px 0 0;
    color: #effff7;
    font-size: 1.05rem;
    font-weight: 600;
    line-height: 1.45;
}

.topo-descricao {
    max-width: 850px;
    margin: 10px 0 0;
    color: rgba(255, 255, 255, 0.88);
    font-size: 0.95rem;
    line-height: 1.62;
}

.topo-informacoes {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 18px;
    margin-top: 18px;
    color: #effff7;
    font-size: 0.82rem;
    font-weight: 600;
}

.topo-informacoes span {
    white-space: nowrap;
}

@media (max-width: 640px) {
    .topo {
        gap: 14px;
        margin-bottom: 18px;
        padding: 21px 18px;
        border-radius: 13px;
    }

    .topo-icone {
        flex-basis: 48px;
        width: 48px;
        height: 48px;
        font-size: 23px;
        border-radius: 12px;
    }

    .topo-selo {
        margin-bottom: 6px;
        font-size: 0.65rem;
    }

    .topo-subtitulo {
        font-size: 0.96rem;
    }

    .topo-descricao {
        font-size: 0.88rem;
        line-height: 1.55;
    }

    .topo-informacoes {
        gap: 7px 11px;
        font-size: 0.74rem;
    }

    .topo-informacoes span {
        white-space: normal;
    }
}