.resource-catalog .catalog-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:32px;align-items:start;width:100%}.resource-catalog .catalog-sidebar{border:1px solid var(--color-border,#d9dde3);padding:20px;border-radius:4px;min-width:0}.catalog-sidebar summary{font-weight:600;cursor:pointer}.catalog-sidebar fieldset{border:0;border-top:1px solid var(--color-border,#d9dde3);padding:20px 0 0;margin:20px 0 0;min-width:0}.catalog-sidebar legend{font-weight:600}.catalog-sidebar label{display:block;margin:10px 0}.catalog-sidebar input[type=search],.catalog-sidebar select{width:100%;max-width:100%;padding:10px;background:var(--color-bg,#fff);color:var(--color-text,#222);border:1px solid var(--color-border,#aaa)}.catalog-sidebar input[type=checkbox]{margin-right:8px}.catalog-sidebar button{margin-top:16px;padding:10px 18px;cursor:pointer}.catalog-toolbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;margin-bottom:20px}.catalog-toolbar select{padding:8px;max-width:100%;background:var(--color-bg,#fff);color:var(--color-text,#222)}.catalog-results{min-width:0}.resource-catalog .articles-gridola{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}.catalog-active{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}.catalog-active a{padding:6px 10px;border:1px solid var(--color-border,#aaa);border-radius:4px;font-size:.85rem}.catalog-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:24px 0 40px}.catalog-group{display:block;padding:24px;border:1px solid var(--color-border,#aaa);border-radius:4px;color:inherit;text-decoration:none}.catalog-group h2{font-size:1.25rem}.catalog-sidebar a{display:inline-block;margin-top:12px}.catalog-empty{padding:32px 0}.resource-catalog .solution-card{min-width:0}.resource-catalog .pagination{margin-top:32px}@media(min-width:768px){.catalog-sidebar summary{pointer-events:none}}@media(max-width:767px){.resource-catalog .catalog-layout{grid-template-columns:minmax(0,1fr)}.catalog-groups{grid-template-columns:1fr}}@media(max-width:560px){.resource-catalog .articles-gridola{grid-template-columns:minmax(0,1fr)}.catalog-toolbar{align-items:flex-start;flex-direction:column}}

/* Dimensões consistentes mesmo com títulos longos, poucas entradas e capas variadas. */
.resource-catalog .articles-gridola{align-items:stretch;width:100%;margin:0;padding:0}
.resource-catalog .articles-gridola>.solution-card{width:100%;max-width:none;min-width:0;box-sizing:border-box;display:flex;flex-direction:column;height:100%;overflow-wrap:anywhere}
.resource-catalog .solution-card>.solution-card-content{flex:1;width:100%;box-sizing:border-box}
.resource-catalog .solution-card>.solution-card-content>div{width:100%;min-width:0}
.resource-catalog .article-thumbnail{width:100%;aspect-ratio:16/9}
.resource-catalog .article-thumbnail picture{display:block;width:100%;height:100%}
.resource-catalog .article-thumbnail img{display:block;width:100%;height:100%;object-fit:cover}
/* Filtros por grupo, listas limitadas e ações fora da área de rolagem. */
.resource-catalog .catalog-sidebar{padding:0;overflow:hidden}
.resource-catalog .catalog-sidebar>summary{padding:18px 20px}
.resource-catalog #catalog-filters{padding:0 20px;min-height:0}
.catalog-filter-fields{min-height:0}
.resource-catalog .catalog-filter-group{border-top:1px solid var(--color-border,#d9dde3);margin-top:16px}
.resource-catalog .catalog-filter-group>summary{display:list-item;padding:14px 0;cursor:pointer;pointer-events:auto;font-weight:600}
.resource-catalog .catalog-filter-options{max-height:220px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding-right:6px}
.resource-catalog .catalog-filter-options label{display:flex;align-items:baseline;gap:8px;line-height:1.45;overflow-wrap:anywhere}
.resource-catalog .catalog-filter-options input{flex:none;margin:0}
.catalog-selected-count{display:inline-block;margin-left:8px;font-size:.75rem;padding:1px 6px;border:1px solid var(--color-border,#aaa);border-radius:12px}
.resource-catalog .catalog-filter-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:16px 0;border-top:1px solid var(--color-border,#d9dde3);margin-top:12px}
.resource-catalog .catalog-filter-actions button,.resource-catalog .catalog-filter-actions a{margin:0}
@media(min-width:768px){
 .resource-catalog .catalog-sidebar{position:sticky;top:var(--catalog-sticky-top,180px);--catalog-panel-height:min(var(--catalog-results-height,100dvh),calc(100dvh - var(--catalog-sticky-top,180px) - 24px));height:var(--catalog-panel-height);max-height:var(--catalog-panel-height);box-sizing:border-box}
 .resource-catalog .catalog-sidebar[open]{display:flex;flex-direction:column}
 .resource-catalog .catalog-sidebar>summary{flex:none;list-style:none}
 .resource-catalog #catalog-filters{display:flex;flex-direction:column;overflow:hidden}
 .resource-catalog .catalog-filter-fields{overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding-right:4px}
 .resource-catalog .catalog-filter-actions{flex:none}
}
@media(max-width:767px){
 .resource-catalog .catalog-filter-options{max-height:240px}
 .resource-catalog .catalog-sidebar>summary{pointer-events:auto}
}
@media(min-width:768px){
 .resource-catalog #catalog-filters{height:calc(var(--catalog-panel-height) - var(--catalog-summary-height,60px) - 2px);max-height:calc(var(--catalog-panel-height) - var(--catalog-summary-height,60px) - 2px);box-sizing:border-box}
 .resource-catalog .catalog-filter-fields{flex:1 1 auto}
}

/* Hierarquia e navegação das opções; uma única área de rolagem no painel. */
.resource-catalog .catalog-filter-group{margin-top:12px}
.resource-catalog .catalog-filter-group>summary{list-style:none;display:flex;align-items:center;gap:8px;font-size:.92rem}
.resource-catalog .catalog-filter-group>summary::-webkit-details-marker{display:none}
.resource-catalog .catalog-filter-group>summary::after{content:'+';font-size:1.2rem;font-weight:400;margin-left:auto}
.resource-catalog .catalog-filter-group[open]>summary::after{content:'−'}
.resource-catalog .catalog-filter-options{max-height:none;overflow:visible;padding:0;scrollbar-gutter:auto}
.resource-catalog .catalog-filter-options label{display:flex;align-items:flex-start;padding:8px 6px;margin:0;border-radius:4px;gap:8px;font-size:.85rem;cursor:pointer;overflow-wrap:normal}
.resource-catalog .catalog-filter-options label:hover{background:rgba(7,91,247,.05)}
.resource-catalog .catalog-filter-options label:has(input:checked){background:rgba(7,91,247,.08)}
.resource-catalog .catalog-filter-options input{margin-top:3px;accent-color:#075bf7;width:15px;height:15px}
.resource-catalog .catalog-option-name{flex:1;min-width:0;overflow-wrap:anywhere}
.resource-catalog .catalog-option-count{flex:none;font-size:.75rem;opacity:.7;min-width:20px;text-align:right;padding-top:1px;font-variant-numeric:tabular-nums}
.resource-catalog .catalog-filter-options label[hidden],.resource-catalog .catalog-options-more[hidden],.resource-catalog .catalog-option-status[hidden],.resource-catalog .catalog-selected-count[hidden]{display:none}
.resource-catalog .catalog-option-search{font-size:.85rem;margin-bottom:10px;border-radius:4px}
.resource-catalog button.catalog-options-more{display:block;margin:8px 0 14px;padding:4px 6px;border:0;background:transparent;color:var(--color-primary,#075bf7);font-size:.85rem;font-weight:600;text-align:left}
.resource-catalog .catalog-option-status{font-size:.8rem;line-height:1.4;margin:10px 0}
.resource-catalog .catalog-filter-actions{gap:10px}
.resource-catalog .catalog-filter-actions button{width:100%;border:0;border-radius:4px;background:#075bf7;color:#fff;font-size:.9rem;font-weight:600;padding:12px}
.resource-catalog .catalog-filter-actions a{font-size:.85rem;text-decoration:none}
.resource-catalog :is(input,select,button,summary,a):focus-visible{outline:2px solid #075bf7;outline-offset:3px}

/* Mesmas proporções e breakpoints da busca publicada em a3aengenharia.com.br. */
@media(min-width:768px) and (max-width:1023px){
 .resource-catalog .catalog-layout{grid-template-columns:250px minmax(0,1fr);gap:clamp(24px,4vw,40px)}
 .resource-catalog .articles-gridola{grid-template-columns:minmax(0,1fr)}
}
@media(min-width:1024px){
 .resource-catalog .catalog-layout{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(30px,5vw,100px)}
 .resource-catalog .catalog-sidebar{grid-column:span 1}
 .resource-catalog .catalog-results{grid-column:span 3}
 .resource-catalog .articles-gridola{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
}

.resource-catalog .catalog-filter-actions a[hidden]{display:none}

.resource-catalog .catalog-pagination{margin-top:36px;padding-top:24px;border-top:1px solid var(--color-border,#d9dde3)}
.catalog-page-links{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px}
.resource-catalog .catalog-page{display:inline-flex;align-items:center;justify-content:center;min-width:42px;min-height:44px;box-sizing:border-box;padding:8px 12px;border:1px solid var(--color-border,#d9dde3);border-radius:5px;font-size:.9rem;line-height:1.25;text-decoration:none;color:inherit}
.resource-catalog a.catalog-page:hover{border-color:#075bf7;color:#075bf7;background:rgba(7,91,247,.05)}
.resource-catalog .catalog-page-current{background:#075bf7;color:#fff;border-color:#075bf7;font-weight:600}
.resource-catalog .catalog-page[aria-disabled]{opacity:.4}
.catalog-page-gap{padding:0 4px}
.catalog-page-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:20px;font-size:.85rem}
.catalog-page-footer p{margin:0}
.catalog-page-jump{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.catalog-page-jump input{width:72px;min-height:40px;padding:8px;border:1px solid var(--color-border,#aaa);border-radius:4px;background:var(--color-bg,#fff);color:inherit;font:inherit}
.catalog-page-jump button{min-height:40px;padding:8px 14px;border:1px solid var(--color-border,#aaa);border-radius:4px;background:transparent;color:inherit;font:inherit;cursor:pointer}
@media(max-width:767px){
 .resource-catalog .catalog-page-desktop,.catalog-page-gap{display:none}
 .catalog-page-links{gap:4px}
 .resource-catalog .catalog-page{min-width:34px;padding:8px;font-size:.8rem}
 .resource-catalog .catalog-page-step{min-width:0}
 .catalog-page-footer{justify-content:center;text-align:center}
 .catalog-page-jump{justify-content:center;width:100%}
}

/* Header transparente sobre o hero, preservando o espaço anterior do conjunto. */
.resource-catalog{--catalog-header-height:175px}
.resource-catalog>.hero-section{height:calc(400px + var(--catalog-header-height));padding-top:calc(5% + var(--catalog-header-height))}
@media(max-width:1024px){.resource-catalog{--catalog-header-height:101px}}
@media(min-width:1200px){.resource-catalog>.hero-section{height:calc(465px + var(--catalog-header-height))}}

/* Abertura/fechamento nativos, com interpolação da altura do conteúdo. */
@supports (interpolate-size:allow-keywords) and selector(details::details-content){
 .resource-catalog .catalog-filter-group{interpolate-size:allow-keywords}
 .resource-catalog .catalog-filter-group::details-content{block-size:0;opacity:0;overflow:clip;transition:block-size 240ms cubic-bezier(.2,0,0,1),opacity 180ms ease,content-visibility 240ms allow-discrete}
 .resource-catalog .catalog-filter-group[open]::details-content{block-size:auto;opacity:1}
 @media(max-width:767px){
  .resource-catalog .catalog-sidebar{interpolate-size:allow-keywords}
  .resource-catalog .catalog-sidebar::details-content{block-size:0;opacity:0;overflow:clip;transition:block-size 260ms cubic-bezier(.2,0,0,1),opacity 180ms ease,content-visibility 260ms allow-discrete}
  .resource-catalog .catalog-sidebar[open]::details-content{block-size:auto;opacity:1}
 }
}
.resource-catalog .catalog-filter-group>summary::after{content:'';width:7px;height:7px;flex:none;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform 220ms ease;margin-right:3px}
.resource-catalog .catalog-filter-group[open]>summary::after{content:'';transform:rotate(225deg)}
@media(prefers-reduced-motion:reduce){
 .resource-catalog .catalog-filter-group::details-content,.resource-catalog .catalog-sidebar::details-content,.resource-catalog .catalog-filter-group>summary::after{transition:none}
}
