/* Página e popup de conselheiros. Os textos e fotos vêm de dados/conselheiros.js. */
.db-advisors-page { padding-top: var(--header-height,74px); background: #fff; }
.db-advisors-container { width: min(1160px,calc(100% - 80px)); margin-inline:auto; }
.db-advisors-hero { padding:58px 0 64px; color:#07152f; background:#f6f8fc; border-bottom:1px solid #e3e8f1; }
.db-breadcrumb { display:flex; align-items:center; gap:11px; margin:0 0 40px; color:#64728b; font-size:11px; }
.db-breadcrumb a:hover { color:#003099; }
.db-advisors-hero-inner { display:grid; grid-template-columns:1.3fr 1fr; align-items:end; gap:64px; }
.db-advisors-hero .eyebrow { color:#003099; margin-bottom:18px; letter-spacing:.18em; }
.db-advisors-title { margin:0; font-family:var(--serif,Georgia,serif); font-size:clamp(48px,5.2vw,78px); line-height:1.02; font-weight:500; letter-spacing:-.025em; }
.db-advisors-title em { color:#003099; font-weight:500; }
.db-advisors-intro { max-width:440px; margin:0 0 7px; font-size:16px; line-height:1.85; color:#64728b; }
.db-advisors-list { padding:50px 0 94px; }
.db-advisors-toolbar { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:27px; color:#64728b; font-size:11px; letter-spacing:.09em; text-transform:uppercase; }
.db-advisors-toolbar strong { color:#07152f; font-weight:800; }
.db-advisors-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px 28px; }
.db-advisor-card { display:block; min-width:0; color:#07152f; background:#fff; border-bottom:1px solid #e4e9f1; }
.db-advisor-photo { position:relative; overflow:hidden; background:#071b48; border-radius:7px; aspect-ratio:4/5; }
.db-advisor-photo img { width:100%; height:100%; object-fit:cover; object-position:50% 25%; transition:transform .45s ease; }
.db-advisor-photo::after { content:''; position:absolute; inset:65% 0 0; background:linear-gradient(transparent,#0311307a); pointer-events:none; }
.db-advisor-number { position:absolute; z-index:1; top:16px; left:17px; padding:4px 9px; border:1px solid #ffffff4a; border-radius:4px; color:#fff; background:#07152f33; font-size:10px; letter-spacing:.13em; }
.db-advisor-open { position:absolute; z-index:1; right:16px; bottom:16px; display:grid; place-items:center; width:40px; height:40px; border:1px solid #ffffff7a; border-radius:50%; color:#fff; background:#ffffff0f; transition:background .2s,color .2s; }
.db-advisor-card:hover .db-advisor-photo img { transform:scale(1.035); }
.db-advisor-card:hover .db-advisor-open { background:#ffcc29; border-color:#ffcc29; color:#07152f; }
.db-advisor-caption { padding:19px 0 22px; }
.db-advisor-caption h2 { font-family:var(--sans,Arial,sans-serif); font-size:19px; line-height:1.4; font-weight:750; }
.db-advisor-caption p { margin:7px 0 0; color:#65728a; font-size:12px; line-height:1.65; }
.db-advisors-page a:focus-visible,.db-profile-dialog :focus-visible { outline:3px solid #1661de; outline-offset:4px; }
body.db-profile-open { overflow:hidden; }
.db-profile-dialog { padding:0; width:min(1100px,calc(100% - 60px)); height:min(650px,calc(100dvh - 64px)); max-width:none; max-height:calc(100dvh - 32px); margin:auto; border:0; border-radius:12px; background:#fff; color:#111827; font-family:var(--sans,Arial,sans-serif); box-shadow:0 30px 100px #00000045; }
.db-profile-dialog::backdrop { background:#030c21b3; backdrop-filter:blur(5px); }
.db-profile-dialog[open] { display:block; }
.db-profile-layout { display:grid; grid-template-columns:270px minmax(0,1fr); height:100%; }
.db-profile-aside { color:#fff; background:#07152f; overflow:auto; }
.db-profile-photo { display:block; width:100%; height:335px; object-fit:cover; object-position:50% 25%; }
.db-profile-meta { padding:27px 27px 32px; }
.db-profile-kicker { color:#d9b581; margin:0 0 13px; font-size:9px; line-height:1.7; font-weight:800; letter-spacing:.15em; text-transform:uppercase; }
.db-profile-occupation { margin:0 0 24px; font-size:14px; line-height:1.7; color:#d9e1f1; }
.db-profile-occupation strong { display:block; color:#fff; font-weight:700; }
.db-profile-links { display:flex; flex-wrap:wrap; gap:15px; font-size:11px; color:#e0e8f6; }
.db-profile-links a { color:inherit; text-decoration:none; border-bottom:1px solid #ffffff40; padding-bottom:3px; }
.db-profile-links a:hover { color:#ffcc29; }
.db-profile-body { display:flex; flex-direction:column; min-width:0; min-height:0; padding:38px 36px 24px; }
.db-profile-header { padding-right:34px; margin-bottom:27px; }
.db-profile-header .db-profile-kicker { color:#003099; margin-bottom:9px; }
.db-profile-name { margin:0; color:#07152f; font-family:var(--serif,Georgia,serif); font-size:40px; line-height:1.12; font-weight:500; }
.db-profile-close { position:absolute; z-index:2; top:16px; right:17px; display:grid; place-items:center; width:36px; height:36px; border:1px solid #e3e8f0; border-radius:50%; background:#fff; color:#07152f; font-size:24px; line-height:1; cursor:pointer; }
.db-profile-close:hover { background:#f2f5fa; }
.db-profile-tabs { display:flex; flex:0 0 auto; gap:4px; overflow-x:auto; overscroll-behavior-x:contain; border-bottom:1px solid #dde4ed; scrollbar-width:thin; }
.db-profile-tab { position:relative; flex:0 0 auto; padding:13px 10px 16px; border:0; background:transparent; color:#6a7890; font:600 11px/1.5 var(--sans,Arial,sans-serif); cursor:pointer; white-space:nowrap; }
.db-profile-tab[aria-selected='true'] { color:#003099; }
.db-profile-tab[aria-selected='true']::after { content:''; position:absolute; bottom:0; left:10px; right:10px; height:3px; background:#003099; border-radius:3px 3px 0 0; }
.db-profile-panels { flex:1; min-height:0; overflow-y:auto; overscroll-behavior:contain; padding:26px 3px 18px 0; scrollbar-width:thin; }
.db-profile-panel { min-height:150px; font-size:13px; line-height:1.9; color:#617089; }
.db-profile-panel[hidden] { display:none!important; }
.db-profile-panel:focus-visible { outline-offset:-3px; }
.db-profile-panel h3 { margin:0 0 17px; color:#07152f; font:700 15px/1.5 var(--sans,Arial,sans-serif); }
.db-profile-panel p { margin:0 0 16px; }
.db-profile-panel p:last-child { margin-bottom:0; }
.db-profile-facts { margin:25px 0 0; padding:21px 0 0; border-top:1px solid #e7ebf2; }
.db-profile-facts dt { margin-bottom:7px; color:#003099; font-size:10px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.db-profile-facts dd { margin:0 0 17px; font-size:12px; color:#617089; }
.db-profile-facts ul { padding:0; margin:0; list-style:none; }
.db-profile-item { padding:0 0 20px 17px; margin-bottom:20px; border-left:2px solid #dce5f4; border-bottom:1px solid #edf0f6; }
.db-profile-item:last-child { margin-bottom:0; border-bottom:0; }
.db-profile-item h4 { margin:0 0 7px; color:#07152f; font:700 13px/1.65 var(--sans,Arial,sans-serif); }
.db-profile-item .db-profile-period { margin-bottom:5px; color:#003099; font-size:10px; font-weight:700; letter-spacing:.04em; }
.db-profile-item p { font-size:12px; }
.db-profile-program { display:block; padding:17px 19px; margin-bottom:12px; border:1px solid #e2e8f2; border-radius:6px; background:#f8fafe; text-decoration:none; color:inherit; }
a.db-profile-program:hover { border-color:#afc1e0; background:#f0f5ff; }
.db-profile-program .db-profile-period { display:block; margin-bottom:6px; color:#003099; font-size:9px; font-weight:800; letter-spacing:.11em; text-transform:uppercase; }
.db-profile-program h4 { margin:0; color:#07152f; font:700 13px/1.7 var(--sans,Arial,sans-serif); }
.db-profile-program p { margin:8px 0 0; font-size:12px; }
.db-profile-program-arrow { float:right; color:#003099; padding-left:8px; }
.db-profile-fallback { padding:12px 0; font-size:12px; }
@media(max-width:1023px) {
 .db-advisors-hero-inner { gap:35px; }
 .db-advisors-grid { gap:26px 20px; }
 .db-profile-layout { grid-template-columns:225px minmax(0,1fr); }
 .db-profile-body { padding:34px 24px 24px; }
 .db-profile-tab { font-size:10px; padding-inline:9px; }
 .db-profile-photo { height:300px; }
}
@media(max-width:767px) {
 .db-advisors-container { width:calc(100% - 40px); }
 .db-advisors-hero { padding:32px 0 40px; }
 .db-breadcrumb { margin-bottom:31px; font-size:10px; }
 .db-advisors-hero-inner { grid-template-columns:1fr; gap:23px; }
 .db-advisors-title { font-size:53px; }
 .db-advisors-intro { font-size:14px; line-height:1.8; max-width:460px; }
 .db-advisors-list { padding:32px 0 60px; }
 .db-advisors-toolbar { font-size:9px; letter-spacing:.03em; gap:9px; margin-bottom:20px; }
 .db-advisors-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 16px; }
 .db-advisor-caption { padding:13px 0 16px; }
 .db-advisor-caption h2 { font-size:14px; }
 .db-advisor-caption p { font-size:10px; line-height:1.7; }
 .db-advisor-photo { border-radius:5px; }
 .db-advisor-number { top:10px; left:10px; font-size:9px; padding:2px 6px; }
 .db-advisor-open { right:10px; bottom:10px; width:31px; height:31px; font-size:14px; }
 .db-profile-dialog { width:calc(100% - 24px); height:min(760px,calc(100dvh - 28px)); max-height:calc(100dvh - 24px); border-radius:9px; }
 .db-profile-layout { display:flex; flex-direction:column; }
 .db-profile-aside { display:flex; flex:0 0 auto; align-items:center; gap:18px; padding:18px 50px 18px 20px; overflow:visible; }
 .db-profile-photo { width:74px; height:99px; flex:0 0 74px; border-radius:4px; }
 .db-profile-meta { padding:0; }
 .db-profile-meta .db-profile-kicker { font-size:8px; margin-bottom:7px; }
 .db-profile-occupation { font-size:11px; line-height:1.65; margin-bottom:9px; }
 .db-profile-links { gap:11px; font-size:10px; }
 .db-profile-body { flex:1; min-height:0; padding:22px 21px 16px; }
 .db-profile-header { margin-bottom:18px; padding-right:0; }
 .db-profile-header .db-profile-kicker { display:none; }
 .db-profile-name { font-size:32px; }
 .db-profile-close { top:12px; right:12px; width:30px; height:30px; font-size:22px; }
 .db-profile-tabs { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:0; overflow:visible; border:0; }
 .db-profile-tab { grid-column:span 2; display:flex; align-items:center; justify-content:center; min-height:44px; font-size:10px; padding:10px 5px; white-space:normal; text-align:center; border-bottom:1px solid #dde4ed; }
 .db-profile-tab:nth-child(n+4) { grid-column:span 3; }
 .db-profile-panels { padding-top:21px; }
 .db-profile-panel { font-size:12px; }
 .db-profile-panel h3 { font-size:14px; }
}
@media(max-width:359px) {
 .db-advisors-title { font-size:44px; }
 .db-advisors-toolbar span:last-child { max-width:130px; text-align:right; }
 .db-advisors-grid { gap:22px 12px; }
 .db-advisor-caption h2 { font-size:13px; }
}
@media(prefers-reduced-motion:reduce) {
 .db-advisor-photo img,.db-advisor-open { transition:none; }
}

/* As páginas reutilizam os dois componentes de divisória da home. */
.db-advisors-hero { position:relative; padding-bottom:128px; background:#07152f; color:#fff; border-bottom:0; }
.db-advisors-hero .db-breadcrumb { color:#b7c6de; }
.db-advisors-hero .db-breadcrumb a:hover { color:#ffcc29; }
.db-advisors-hero .eyebrow { color:#d9b581; }
.db-advisors-hero .db-advisors-title { color:#fff; }
.db-advisors-hero .db-advisors-title em { color:#d9b581; }
.db-advisors-hero .db-advisors-intro { color:#c9d5e7; }
.db-advisors-list { background:#f6f8fc; }
.db-advisor-card { border-radius:7px; overflow:hidden; }
.db-advisor-caption { padding-inline:18px; }
@media(max-width:767px) { .db-advisors-hero { padding-bottom:112px; } .db-advisor-caption { padding-inline:12px; } }
