/* ============================================
   Faculdade de Economia — UKB · style.css
   ============================================ */
:root{
  --ink:#0B2545;
  --ink-deep:#081A33;
  --paper:#F5F2E8;
  --paper-dim:#EAE6D8;
  --red:#D6262C;
  --red-deep:#B01E23;
  --green:#2E7D46;
  --text-on-paper:#14181D;
  --text-muted:#5B5F55;
  --text-on-ink:#F5F2E8;
  --text-on-ink-muted:#9FB0C4;
  --rule:#C9C3AE;
  --rule-on-ink:rgba(245,242,232,0.18);
  --radius:2px;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--paper);
  color:var(--text-on-paper);
  font-family:'Inter',sans-serif;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,.display{
  font-family:'Fraunces',serif;
  font-weight:600;
  letter-spacing:-0.01em;
  margin:0;
}
.mono{font-family:'IBM Plex Mono',monospace;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
.wrap{max-width:1180px;margin:0 auto;padding:0 32px;}
@media (max-width:640px){.wrap{padding:0 20px;}}

/* PAGE HERO (secondary pages) */
.page-hero{
  background:var(--ink);color:var(--text-on-ink);
  padding:64px 0 54px;position:relative;
}
.page-hero .idx{font-family:'IBM Plex Mono',monospace;font-size:12px;color:#EDD9A3;text-transform:uppercase;letter-spacing:0.12em;margin-bottom:14px;display:block;}
.page-hero h1{font-size:clamp(28px,4vw,44px);color:#fff;max-width:720px;}
.page-hero p{margin-top:16px;max-width:560px;color:var(--text-on-ink-muted);font-size:15.5px;line-height:1.6;}
.breadcrumb{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--text-on-ink-muted);margin-bottom:20px;}
.breadcrumb a:hover{color:#fff;}

/* TOPBAR — barra de serviços */
.topbar{
  background:var(--ink-deep);
  border-bottom:1px solid var(--rule-on-ink);
}
.topbar .wrap{
  display:flex;justify-content:flex-end;align-items:center;
  height:34px;gap:22px;
}
.topbar a{
  font-family:'IBM Plex Mono',monospace;font-size:11px;
  color:var(--text-on-ink-muted);text-transform:uppercase;letter-spacing:0.04em;
  display:flex;align-items:center;gap:6px;transition:color .15s;
}
.topbar a:hover{color:#EDD9A3;}
.topbar a .sep{color:var(--rule-on-ink);}
@media (max-width:640px){
  .topbar .wrap{justify-content:center;gap:14px;flex-wrap:wrap;height:auto;padding-top:8px;padding-bottom:8px;}
}

/* NAV */
header.site{
  position:sticky;top:0;z-index:100;
  background:var(--ink);
  border-bottom:1px solid var(--rule-on-ink);
}
nav.wrap{
  display:flex;align-items:center;justify-content:space-between;
  height:80px;
}
.brand{display:flex;align-items:center;gap:14px;}
.brand .logo-chip{
  background:#fff;border-radius:50%;padding:4px;
  width:52px;height:52px;display:flex;align-items:center;justify-content:center;
  box-shadow:0 1px 3px rgba(0,0,0,0.25);
}
.brand .logo-chip img{height:44px;width:44px;object-fit:contain;}
.brand-text{display:flex;flex-direction:column;line-height:1.15;}
.brand-text .b1{font-family:'Fraunces',serif;font-size:16px;font-weight:600;color:var(--text-on-ink);}
.brand-text .b2{font-size:10px;letter-spacing:0.08em;text-transform:uppercase;color:var(--text-on-ink-muted);}
nav ul{list-style:none;display:flex;gap:28px;margin:0;padding:0;}
nav ul > li{position:relative;}
nav ul a{
  font-size:13px;color:var(--text-on-ink-muted);
  text-transform:uppercase;letter-spacing:0.06em;font-weight:500;
  transition:color .15s;
  padding:4px 0;border-bottom:1px solid transparent;
  display:inline-flex;align-items:center;gap:5px;
}
nav ul a:hover,nav ul a.active{color:var(--text-on-ink);border-bottom-color:var(--red);}
nav ul a .caret{font-size:9px;opacity:0.7;}
.submenu{
  display:none;position:absolute;top:100%;left:0;margin-top:14px;
  background:var(--ink);border:1px solid var(--rule-on-ink);min-width:230px;
  padding:8px 0;z-index:150;box-shadow:0 12px 30px rgba(0,0,0,0.35);
}
li.has-sub:hover .submenu,li.has-sub:focus-within .submenu{display:block;}
.submenu a{
  display:block;padding:11px 20px;font-size:12.5px;text-transform:none;
  letter-spacing:0.01em;font-weight:400;color:var(--text-on-ink-muted);border-bottom:none;
}
.submenu a:hover{color:#fff;background:rgba(255,255,255,0.05);border-bottom:none;}
.nav-cta{
  background:var(--red);color:#fff !important;
  padding:10px 20px;font-size:13px;font-weight:600;
  text-transform:uppercase;letter-spacing:0.05em;
  border-radius:var(--radius);
  white-space:nowrap;
}
.nav-cta:hover{background:var(--red-deep);}
.navlinks{display:flex;align-items:center;gap:32px;}
.menu-toggle{display:none;background:none;border:0;color:var(--text-on-ink);font-size:26px;cursor:pointer;line-height:0;padding:6px;}
.mobile-panel{display:none;}
@media (max-width:960px){
  .navlinks{display:none;}
  .menu-toggle{display:block;}
  .mobile-panel{
    display:block;position:fixed;inset:80px 0 0 0;z-index:99;
    background:var(--ink);transform:translateY(-8px);opacity:0;pointer-events:none;
    transition:opacity .2s ease, transform .2s ease;overflow-y:auto;
  }
  .mobile-panel.open{opacity:1;transform:translateY(0);pointer-events:auto;}
  .mobile-panel ul{list-style:none;margin:0;padding:20px 32px 30px;display:flex;flex-direction:column;}
  .mobile-panel ul li{border-bottom:1px solid var(--rule-on-ink);}
  .mobile-panel ul a{display:block;padding:18px 0;font-size:17px;color:#fff;text-transform:uppercase;letter-spacing:0.04em;}
  .mobile-panel .submenu-mobile{display:flex;flex-direction:column;padding-bottom:12px;}
  .mobile-panel .submenu-mobile a{
    padding:12px 0 12px 18px;font-size:14px;color:var(--text-on-ink-muted);
    text-transform:none;border-top:1px solid var(--rule-on-ink);
  }
  .mobile-panel .nav-cta{display:block;margin:10px 32px 0;text-align:center;}
}

/* TICKER — signature element */
.ticker-bar{
  background:var(--ink-deep);
  border-bottom:1px solid var(--rule-on-ink);
  overflow:hidden;
  white-space:nowrap;
  position:relative;
}
.ticker-bar::before,.ticker-bar::after{
  content:"";position:absolute;top:0;bottom:0;width:60px;z-index:2;pointer-events:none;
}
.ticker-bar::before{left:0;background:linear-gradient(90deg,var(--ink-deep),transparent);}
.ticker-bar::after{right:0;background:linear-gradient(270deg,var(--ink-deep),transparent);}
.ticker-track{
  display:inline-flex;gap:48px;padding:9px 0;
  animation:scroll-left 38s linear infinite;
}
.ticker-track span{
  font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--text-on-ink-muted);
  letter-spacing:0.02em;
}
.ticker-track span b{color:var(--text-on-ink);font-weight:500;}
.ticker-track .up{color:#5FBF7A;}
.ticker-track .down{color:#E5757A;}
@keyframes scroll-left{
  from{transform:translateX(0);}
  to{transform:translateX(-50%);}
}

/* HERO (homepage) */
.hero{position:relative;background:var(--ink);color:var(--text-on-ink);overflow:hidden;}
.hero-media{position:absolute;inset:0;background-size:cover;background-position:center 62%;opacity:1;}
.hero-grad{
  position:absolute;inset:0;
  background:
    linear-gradient(90deg, rgba(8,26,51,0.80) 0%, rgba(8,26,51,0.45) 32%, rgba(8,26,51,0.08) 58%, rgba(8,26,51,0) 72%),
    linear-gradient(180deg, rgba(8,26,51,0.05) 0%, rgba(8,26,51,0.05) 70%, rgba(8,26,51,0.55) 100%);
}
.hero-inner{position:relative;z-index:2;padding:88px 32px 0;max-width:1180px;margin:0 auto;}
.eyebrow{display:flex;align-items:center;gap:10px;font-family:'IBM Plex Mono',monospace;font-size:12.5px;color:var(--text-on-ink-muted);text-transform:uppercase;letter-spacing:0.14em;margin-bottom:26px;}
.eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--red);}
.hero h1{font-size:clamp(32px,5.2vw,60px);line-height:1.08;max-width:840px;color:#fff;}
.hero h1 em{font-style:italic;color:#EDD9A3;font-weight:500;}
.hero p.lead{margin-top:24px;max-width:560px;font-size:16.5px;line-height:1.6;color:var(--text-on-ink-muted);}
.hero-ctas{display:flex;gap:16px;margin-top:38px;flex-wrap:wrap;}
.btn{display:inline-block;padding:14px 26px;font-size:13.5px;font-weight:600;text-transform:uppercase;letter-spacing:0.05em;border-radius:var(--radius);border:1px solid transparent;transition:all .15s;font-family:'Inter',sans-serif;cursor:pointer;}
.btn-primary{background:var(--red);color:#fff;}
.btn-primary:hover{background:var(--red-deep);}
.btn-ghost{border-color:rgba(245,242,232,0.35);color:#fff;background:transparent;}
.btn-ghost:hover{border-color:#fff;background:rgba(255,255,255,0.06);}
.btn-outline-ink{border-color:var(--ink);color:var(--ink);background:transparent;}
.btn-outline-ink:hover{background:var(--ink);color:#fff;}
.btn[disabled]{opacity:0.55;cursor:not-allowed;}

.hero-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--rule-on-ink);margin-top:64px;border-top:1px solid var(--rule-on-ink);border-bottom:1px solid var(--rule-on-ink);}
.hero-stats div{background:var(--ink);padding:22px 4px 6px;}
.hero-stats .num{font-family:'Fraunces',serif;font-size:29px;font-weight:600;color:#fff;}
.hero-stats .lbl{font-size:11.5px;color:var(--text-on-ink-muted);margin-top:6px;text-transform:uppercase;letter-spacing:0.06em;}
@media (max-width:720px){.hero-stats{grid-template-columns:repeat(2,1fr);}}

/* SECTION generic */
section{padding:88px 0;}
.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:52px;border-bottom:1px solid var(--rule);padding-bottom:24px;}
.section-head .idx{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--red);letter-spacing:0.1em;margin-bottom:10px;display:block;}
.section-head h2{font-size:clamp(26px,3.2vw,40px);}
.section-head p{max-width:360px;color:var(--text-muted);font-size:14.5px;line-height:1.55;}
@media (max-width:720px){.section-head{flex-direction:column;align-items:flex-start;}}

/* SOBRE */
.sobre-grid{display:grid;grid-template-columns:1.15fr 0.85fr;gap:64px;}
.sobre-grid .lede{font-size:19px;line-height:1.6;font-family:'Fraunces',serif;font-weight:400;color:var(--ink);}
.sobre-grid .body-text{margin-top:20px;font-size:15px;line-height:1.75;color:var(--text-muted);}
.ledger{border-top:1px solid var(--rule);margin-top:30px;}
.ledger-row{display:flex;justify-content:space-between;gap:20px;padding:15px 0;border-bottom:1px solid var(--rule);font-size:13.5px;}
.ledger-row .k{color:var(--text-muted);}
.ledger-row .v{font-family:'IBM Plex Mono',monospace;font-weight:500;text-align:right;}
@media (max-width:820px){.sobre-grid{grid-template-columns:1fr;}}

.legal-note{
  margin-top:36px;padding:18px 20px;background:var(--paper-dim);border-left:3px solid var(--ink);
  font-size:12.5px;line-height:1.65;color:var(--text-muted);
}
.legal-note b{color:var(--ink);}

/* LIDERANÇA */
.lideranca-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule);margin-top:10px;}
.lider-card{background:var(--paper);padding:32px 28px;}
.lider-card .tag{font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--red);text-transform:uppercase;letter-spacing:0.06em;}
.lider-card h3{font-size:19px;margin-top:12px;color:var(--ink);line-height:1.3;}
.lider-card .role{font-size:12.5px;color:var(--text-muted);margin-top:6px;}
@media (max-width:820px){.lideranca-grid{grid-template-columns:1fr;}}

/* ORGANOGRAMA */
.org-chart{margin-top:10px;}
.org-level{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:14px;justify-content:center;}
.org-box{
  background:var(--ink);color:#fff;padding:14px 18px;font-size:13px;text-align:center;
  border-radius:var(--radius);min-width:150px;flex:1 1 150px;max-width:240px;
}
.org-box.secondary{background:var(--paper-dim);color:var(--text-on-paper);border:1px solid var(--rule);}
.org-box.accent{background:var(--red);}
.org-connector{width:1px;height:22px;background:var(--rule);margin:0 auto;}
.org-group{border:1px solid var(--rule);padding:20px;margin-top:8px;}
.org-group h4{font-size:12.5px;text-transform:uppercase;letter-spacing:0.06em;color:var(--red);margin-bottom:14px;font-family:'IBM Plex Mono',monospace;}
.org-group ul{margin:0;padding-left:18px;font-size:13.5px;color:var(--text-muted);line-height:1.9;}

/* CURSOS */
.filter-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:34px;}
.filter-btn{
  font-family:'IBM Plex Mono',monospace;font-size:12.5px;
  padding:9px 16px;border:1px solid var(--rule);background:transparent;
  color:var(--text-muted);cursor:pointer;border-radius:20px;
  text-transform:uppercase;letter-spacing:0.03em;transition:all .15s;
}
.filter-btn:hover{border-color:var(--ink);color:var(--ink);}
.filter-btn.active{background:var(--ink);border-color:var(--ink);color:#fff;}
.filter-row.on-ink .filter-btn{border-color:var(--rule-on-ink);color:var(--text-on-ink-muted);}
.filter-row.on-ink .filter-btn:hover{border-color:#fff;color:#fff;}
.filter-row.on-ink .filter-btn.active{background:var(--red);border-color:var(--red);color:#fff;}
.hidden{display:none !important;}

.cursos-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule);}
.curso-card{background:var(--paper);padding:32px 28px;display:flex;flex-direction:column;min-height:220px;}
.curso-card .code{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--red);letter-spacing:0.05em;}
.curso-card h3{font-size:19px;margin-top:14px;color:var(--ink);}
.curso-card p{font-size:13.5px;color:var(--text-muted);line-height:1.6;margin-top:12px;flex:1;}
.curso-card .meta{display:flex;justify-content:space-between;font-size:11.5px;color:var(--text-muted);margin-top:18px;padding-top:16px;border-top:1px solid var(--rule);text-transform:uppercase;letter-spacing:0.05em;}
@media (max-width:920px){.cursos-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:640px){.cursos-grid{grid-template-columns:1fr;}}

/* CORPO DOCENTE */
.docentes-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;}
.docente-card{border-top:2px solid var(--ink);padding-top:16px;}
.docente-card.leader{border-top-color:var(--red);}
.docente-avatar{width:100%;aspect-ratio:1;background:var(--paper-dim);display:flex;align-items:center;justify-content:center;font-family:'Fraunces',serif;font-size:24px;color:var(--ink);border:1px solid var(--rule);margin-bottom:14px;}
.docente-card h3{font-size:16px;color:var(--ink);}
.docente-card .role{font-size:12px;color:var(--red);margin-top:4px;text-transform:uppercase;letter-spacing:0.04em;}
.docente-card .desc{font-size:12.5px;color:var(--text-muted);margin-top:9px;line-height:1.55;}
@media (max-width:920px){.docentes-grid{grid-template-columns:1fr 1fr;}}

/* ADMISSOES */
.admissoes-hero{background:var(--ink);color:var(--text-on-ink);}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--rule-on-ink);border:1px solid var(--rule-on-ink);}
.step{background:var(--ink);padding:28px 24px;}
.step .n{font-family:'IBM Plex Mono',monospace;font-size:13px;color:#EDD9A3;}
.step h3{font-size:16.5px;margin-top:12px;color:#fff;}
.step p{font-size:13px;color:var(--text-on-ink-muted);margin-top:9px;line-height:1.6;}
@media (max-width:920px){.steps{grid-template-columns:1fr 1fr;}}
@media (max-width:640px){.steps{grid-template-columns:1fr;}}
.admissoes-cta{margin-top:44px;display:flex;align-items:center;gap:24px;flex-wrap:wrap;border-top:1px solid var(--rule-on-ink);padding-top:32px;}
.date-box{font-family:'IBM Plex Mono',monospace;font-size:12.5px;color:var(--text-on-ink-muted);}
.date-box b{color:#fff;display:block;font-family:'Fraunces',serif;font-size:20px;margin-top:4px;}

.apply-form{max-width:820px;margin-top:56px;padding:36px 34px;background:var(--paper);border:1px solid var(--rule);display:none;}
.apply-form.open{display:block;}
.apply-form h3{font-size:21px;color:var(--ink);}
.apply-form .sub{font-size:13.5px;color:var(--text-muted);margin-top:8px;margin-bottom:26px;}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.field{grid-column:auto;}
.field.full{grid-column:1 / -1;}
.field label{display:block;font-size:11.5px;text-transform:uppercase;letter-spacing:0.05em;color:var(--text-muted);margin-bottom:7px;font-family:'IBM Plex Mono',monospace;}
.field input,.field select,.field textarea{
  width:100%;padding:12px 14px;font-family:'Inter',sans-serif;font-size:14.5px;
  border:1px solid var(--rule);background:#fff;color:var(--text-on-paper);border-radius:var(--radius);
}
.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--ink);outline-offset:1px;}
.field textarea{resize:vertical;min-height:88px;}
.err-msg{color:var(--red);font-size:11.5px;margin-top:6px;display:none;}
.field.error input,.field.error select,.field.error textarea{border-color:var(--red);}
.field.error .err-msg{display:block;}
.form-actions{display:flex;align-items:center;gap:20px;margin-top:24px;flex-wrap:wrap;}
.form-note{font-size:12px;color:var(--text-muted);}

.form-success{
  display:none;align-items:flex-start;gap:16px;max-width:820px;margin-top:30px;
  padding:22px 24px;background:#fff;border-left:3px solid var(--green);
}
.form-success.show{display:flex;}
.form-success .ok{color:var(--green);font-family:'IBM Plex Mono',monospace;font-weight:600;font-size:18px;}
.form-success h3{font-size:16px;color:var(--ink);}
.form-success p{font-size:13.5px;color:var(--text-muted);margin-top:6px;line-height:1.6;}

.faq-list{margin-top:20px;max-width:800px;}
.faq-item{border-bottom:1px solid var(--rule-on-ink);}
.faq-q{
  display:flex;justify-content:space-between;align-items:center;gap:20px;
  width:100%;text-align:left;background:none;border:0;
  padding:20px 0;cursor:pointer;font-size:15px;color:#fff;font-weight:500;font-family:'Inter',sans-serif;
}
.faq-q .plus{font-family:'IBM Plex Mono',monospace;font-size:18px;color:var(--text-on-ink-muted);transition:transform .2s;flex-shrink:0;}
.faq-item.open .faq-q .plus{transform:rotate(45deg);color:#EDD9A3;}
.faq-a{max-height:0;overflow:hidden;transition:max-height .25s ease;}
.faq-a p{font-size:13.5px;line-height:1.65;color:var(--text-on-ink-muted);padding-bottom:20px;max-width:600px;margin:0;}

/* NOTICIAS */
.noticias-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px;}
.noticia-card .tag{font-family:'IBM Plex Mono',monospace;font-size:11.5px;color:var(--green);text-transform:uppercase;letter-spacing:0.06em;}
.noticia-card .thumb{width:100%;height:150px;background:linear-gradient(135deg,var(--ink) 0%, #123a63 100%);margin-top:14px;position:relative;overflow:hidden;}
.noticia-card .thumb::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(115deg, rgba(255,255,255,0.05) 0 2px, transparent 2px 26px);}
.noticia-card h3{font-size:18px;margin-top:16px;color:var(--ink);line-height:1.3;}
.noticia-card p{font-size:13.5px;color:var(--text-muted);margin-top:10px;line-height:1.6;}
.noticia-card .date{font-size:11.5px;color:var(--text-muted);margin-top:14px;font-family:'IBM Plex Mono',monospace;}
@media (max-width:820px){.noticias-grid{grid-template-columns:1fr;}}

/* CONTACTOS */
.contactos-grid{display:grid;grid-template-columns:0.9fr 1.1fr;gap:0;border:1px solid var(--rule);}
.contactos-info{padding:44px 40px;background:var(--paper);}
.contactos-info .row{display:flex;gap:16px;margin-bottom:24px;}
.contactos-info .row .lbl{width:34px;font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--red);padding-top:2px;}
.contactos-info .row .val{font-size:14px;line-height:1.6;color:var(--text-on-paper);}
.contactos-info .row .val .sub{display:block;font-size:12px;color:var(--text-muted);margin-top:2px;}
.map-block{background:var(--ink-deep);position:relative;min-height:320px;background-image:linear-gradient(rgba(255,255,255,0.05) 1px, transparent 1px),linear-gradient(90deg, rgba(255,255,255,0.05) 1px, transparent 1px);background-size:36px 36px;}
.map-pin{position:absolute;left:52%;top:46%;transform:translate(-50%,-100%);display:flex;flex-direction:column;align-items:center;}
.map-pin .dot{width:16px;height:16px;border-radius:50% 50% 50% 0;background:var(--red);transform:rotate(-45deg);box-shadow:0 0 0 6px rgba(214,38,44,0.18);}
.map-pin .lbl{margin-top:12px;background:var(--paper);color:var(--ink);font-size:12px;padding:6px 12px;font-family:'IBM Plex Mono',monospace;white-space:nowrap;}
@media (max-width:820px){.contactos-grid{grid-template-columns:1fr;}}

.contact-form{margin-top:28px;}
.contact-success{
  display:none;margin-top:18px;padding:14px 16px;background:#fff;border-left:3px solid var(--green);
  font-size:13px;color:var(--text-muted);
}
.contact-success.show{display:block;}

/* QUICK LINKS (home) */
.quicklinks{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule);}
@media (max-width:960px){.quicklinks{grid-template-columns:repeat(2,1fr);}}
.quicklink{background:var(--paper);padding:36px 30px;transition:background .15s;}
.quicklink:hover{background:var(--paper-dim);}
.quicklink .idx{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--red);}
.quicklink h3{font-size:20px;margin-top:14px;color:var(--ink);}
.quicklink p{font-size:13.5px;color:var(--text-muted);margin-top:10px;line-height:1.6;}
.quicklink .arrow{margin-top:18px;font-family:'IBM Plex Mono',monospace;font-size:13px;color:var(--ink);}
@media (max-width:820px){.quicklinks{grid-template-columns:1fr;}}

/* FOOTER */
footer{background:var(--ink-deep);color:var(--text-on-ink-muted);padding:60px 0 28px;}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;padding-bottom:40px;border-bottom:1px solid var(--rule-on-ink);}
.footer-grid h4{font-size:12px;text-transform:uppercase;letter-spacing:0.08em;color:#fff;margin-bottom:18px;font-family:'Inter',sans-serif;font-weight:600;}
.footer-grid ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;font-size:13.5px;}
.footer-brand{display:flex;align-items:center;gap:12px;margin-bottom:16px;}
.footer-brand .logo-chip{background:#fff;border-radius:50%;padding:3px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;}
.footer-brand .logo-chip img{height:34px;width:34px;object-fit:contain;}
.footer-brand span{font-family:'Fraunces',serif;font-size:14px;color:#fff;}
footer .bottom{display:flex;justify-content:space-between;padding-top:22px;font-size:12px;flex-wrap:wrap;gap:10px;}
@media (max-width:820px){.footer-grid{grid-template-columns:1fr 1fr;}}

/* CURRICULUM DECANATO */
.cv-person{border-top:2px solid var(--red);padding-top:30px;margin-top:56px;}
.cv-person:first-child{margin-top:0;}
.cv-head{display:flex;gap:26px;align-items:flex-start;flex-wrap:wrap;margin-bottom:26px;}
.cv-avatar{width:104px;height:104px;background:var(--paper-dim);border:1px solid var(--rule);display:flex;align-items:center;justify-content:center;font-family:'Fraunces',serif;font-size:30px;color:var(--ink);flex-shrink:0;}
.cv-head-text h3{font-size:23px;color:var(--ink);}
.cv-head-text .role{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--red);text-transform:uppercase;letter-spacing:0.05em;margin-top:8px;}
.cv-head-text .meta-line{font-size:13px;color:var(--text-muted);margin-top:10px;line-height:1.6;max-width:640px;}
.cv-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:30px;}
.cv-section{margin-top:8px;}
.cv-section h4{font-family:'IBM Plex Mono',monospace;font-size:11px;text-transform:uppercase;letter-spacing:0.06em;color:var(--ink);margin-bottom:12px;border-bottom:1px solid var(--rule);padding-bottom:8px;}
.cv-section ul{margin:0;padding-left:18px;font-size:13.5px;color:var(--text-muted);line-height:1.85;}
.cv-section ul ul{margin-top:6px;padding-left:16px;font-size:12.5px;}
.cv-section p{font-size:13.5px;color:var(--text-muted);line-height:1.8;margin:0;}
@media (max-width:760px){.cv-grid{grid-template-columns:1fr;}}

.empty-msg{font-size:14px;color:var(--text-muted);margin-top:20px;display:none;}

/* ARTIGO LONGO — Percurso Histórico */
.article-block{max-width:820px;}
.article-block h3{font-size:21px;color:var(--ink);margin-top:46px;margin-bottom:16px;}
.article-block h3:first-child{margin-top:0;}
.article-block p{font-size:14.5px;line-height:1.8;color:var(--text-muted);margin-top:14px;}
.article-block p:first-of-type{margin-top:0;}
.article-block .lede{font-size:18px;line-height:1.65;font-family:'Fraunces',serif;font-weight:400;color:var(--ink);margin-top:0;}
.article-photo{margin:32px 0;border:1px solid var(--rule);}
.article-photo img{width:100%;display:block;}
.article-photo .cap{font-family:'IBM Plex Mono',monospace;font-size:11.5px;color:var(--text-muted);padding:10px 14px;border-top:1px solid var(--rule);background:var(--paper-dim);}

.timeline{border-top:1px solid var(--rule);margin-top:8px;}
.timeline-item{padding:24px 0;border-bottom:1px solid var(--rule);}
.timeline-item .period{font-family:'IBM Plex Mono',monospace;font-size:11.5px;color:var(--red);text-transform:uppercase;letter-spacing:0.05em;}
.timeline-item h4{font-size:17px;color:var(--ink);margin-top:8px;}
.timeline-item p{font-size:13.5px;color:var(--text-muted);margin-top:8px;line-height:1.75;}

.dept-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule);margin-top:10px;}
.dept-card{background:var(--paper);padding:28px 26px;}
.dept-card .tag{font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--red);text-transform:uppercase;letter-spacing:0.05em;}
.dept-card h4{font-size:17px;margin-top:12px;color:var(--ink);}
.dept-card p{font-size:13px;color:var(--text-muted);margin-top:10px;line-height:1.65;}
@media (max-width:820px){.dept-grid{grid-template-columns:1fr;}}

.assoc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule);margin-top:10px;}
.assoc-card{background:var(--paper);padding:24px 26px;}
.assoc-card .tag{font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--red);text-transform:uppercase;letter-spacing:0.05em;}
.assoc-card h4{font-size:15.5px;margin-top:10px;color:var(--ink);}
.assoc-card .names{font-size:13px;color:var(--text-muted);margin-top:8px;line-height:1.7;}
@media (max-width:720px){.assoc-grid{grid-template-columns:1fr;}}

/* MISSÃO · VISÃO · VALORES (home) */
.mvv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule);}
.mvv-card{background:var(--paper);padding:34px 30px;}
.mvv-card .idx{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--red);text-transform:uppercase;letter-spacing:0.06em;}
.mvv-card h3{font-size:19px;margin-top:14px;color:var(--ink);}
.mvv-card p{font-size:13.5px;color:var(--text-muted);margin-top:12px;line-height:1.7;font-style:italic;}
.mvv-card p.placeholder{color:#A8A398;}
@media (max-width:820px){.mvv-grid{grid-template-columns:1fr;}}

/* DOCUMENTOS INSTITUCIONAIS (links/downloads) */
.doc-links{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--rule-on-ink);border:1px solid var(--rule-on-ink);margin-top:30px;}
.doc-link{
  background:var(--ink-deep);padding:20px 22px;display:flex;align-items:center;gap:14px;
  transition:background .15s;
}
.doc-link:not(.disabled):hover{background:rgba(255,255,255,0.04);}
.doc-link .icon{
  width:38px;height:38px;border:1px solid var(--rule-on-ink);flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
  font-family:'IBM Plex Mono',monospace;font-size:10px;color:#EDD9A3;
}
.doc-link .text h4{font-size:13.5px;color:#fff;line-height:1.35;}
.doc-link .text span{font-size:11px;color:var(--text-on-ink-muted);display:block;margin-top:5px;font-family:'IBM Plex Mono',monospace;}
.doc-link.disabled{opacity:0.55;pointer-events:none;}
@media (max-width:920px){.doc-links{grid-template-columns:1fr;}}

