/* Fábrica de Personagens: vitrine navegável de módulos (estilos isolados) */
.fdp-module-hub {--fdp-blue:#168BFF;--fdp-deep:#091A38;--fdp-border:#d5eaff;margin:26px 0 42px;padding:28px;border:1px solid var(--fdp-border);border-radius:24px;background:linear-gradient(142deg,#f6fbff 0%,#e9f4ff 100%);color:var(--fdp-deep);box-shadow:0 16px 36px rgba(9,26,56,.045);min-width:0}
.fdp-module-hub *{box-sizing:border-box}
.fdp-module-head{display:flex;align-items:end;justify-content:space-between;gap:22px;margin-bottom:24px}
.fdp-module-eyebrow{font:700 10px 'DM Sans',sans-serif;letter-spacing:2px;color:#1375d4;margin:0 0 9px}
.fdp-module-head h2{font:800 clamp(22px,3vw,34px)/1.12 'Outfit',sans-serif;letter-spacing:-.8px;margin:0 0 10px;color:var(--fdp-deep)}
.fdp-module-head h2 em{font-style:normal;color:var(--fdp-blue)}
.fdp-module-subtitle{margin:0;color:#576d87;font-size:13px;line-height:1.6;max-width:670px}
.fdp-module-controls{display:flex;gap:8px;flex-shrink:0}
.fdp-module-arrow{width:40px;height:40px;display:grid;place-items:center;border:1px solid #a9d6ff;background:#fff;border-radius:50%;color:#0c65b3;font-size:20px;cursor:pointer;transition:background .2s,transform .2s}
.fdp-module-arrow:hover{background:#d5ebff;transform:translateY(-2px)}
.fdp-module-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:15px;min-width:0}
.fdp-module-card{display:flex;flex-direction:column;min-width:0;border:1px solid #cbdef2;background:#fff;border-radius:16px;overflow:hidden;text-align:left;padding:0 0 17px;cursor:pointer;box-shadow:0 8px 23px rgba(9,26,56,.08);transition:transform .25s,box-shadow .25s,border-color .25s;color:#091a38;font-family:'DM Sans',sans-serif}
.fdp-module-card:hover{transform:translateY(-5px);box-shadow:0 14px 26px rgba(9,26,56,.16);border-color:var(--fdp-blue)}
.fdp-module-card:focus-visible,.fdp-module-quicklinks button:focus-visible,.fdp-module-arrow:focus-visible{outline:3px solid #168bff;outline-offset:3px}
.fdp-module-cover{width:100%;aspect-ratio:9/16;display:block;overflow:hidden;background:#031329;align-self:center}
.fdp-module-cover img{display:block;width:100%;height:100%;object-fit:contain;background:#031329}
.fdp-module-card .fdp-module-meta{font:800 9px 'DM Sans',sans-serif;letter-spacing:1px;color:#168bff;margin:15px 12px 6px}
.fdp-module-card strong{font:700 15px/1.25 'Outfit',sans-serif;color:var(--fdp-deep);margin:0 12px 7px;min-height:38px}
.fdp-module-description{display:block;font:400 11px/1.45 'DM Sans',sans-serif;color:#607287;margin:0 12px 12px;flex:1}
.fdp-module-open{font:700 11px 'DM Sans',sans-serif;color:#127feb;margin:0 12px}
.fdp-module-quicklinks{margin-top:18px;display:flex;flex-wrap:wrap;gap:9px}
.fdp-module-quicklinks button{background:#fff;border:1px solid #c2e2ff;border-radius:100px;color:#163b66;font:700 12px 'DM Sans',sans-serif;padding:11px 14px;display:flex;align-items:center;gap:9px;cursor:pointer}
.fdp-module-quicklinks button:hover{border-color:#168bff;background:#e6f4ff}
.fdp-module-quicklinks button>span{color:#168bff}
.fdp-module-quicklinks button small{font:800 8px 'DM Sans',sans-serif;color:#127feb;letter-spacing:.4px}
@media(min-width:1191px){.fdp-module-controls{display:none}}
/* Tablet and mobile: horizontal scroll, images maintain their full 9:16 proportion. */
@media(max-width:1190px){.fdp-module-grid{display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding:2px;scrollbar-width:thin;scrollbar-color:#168bff #cbeaff;padding:4px 2px 14px;margin-bottom:-4px}.fdp-module-card{flex:0 0 clamp(168px,23vw,215px);scroll-snap-align:start}.fdp-module-head{align-items:center}}
@media(max-width:650px){.fdp-module-hub{padding:16px;border-radius:19px;margin:20px 0 32px}.fdp-module-head{align-items:start}.fdp-module-head h2{font-size:24px}.fdp-module-head .fdp-module-subtitle{font-size:12px}.fdp-module-arrow{width:34px;height:34px}.fdp-module-controls{margin-top:7px}.fdp-module-card{flex-basis:clamp(142px,62vw,208px)}.fdp-module-quicklinks{gap:7px}.fdp-module-quicklinks button{font-size:11px;padding:9px 11px}}
@media(prefers-reduced-motion:reduce){.fdp-module-card,.fdp-module-arrow{transition:none}}
