/* Instituto Pangeia: manual pages 16-18. Neutral tints support the five brand colors. */
@font-face { font-family: "Maven Pro"; src: url("fonts/MavenPro-Variable.ttf") format("truetype"); font-style: normal; font-weight: 400 900; font-display: swap; }
/* Hansom FY files have not been supplied. Use installed copies, otherwise Maven Pro. */
@font-face { font-family: "Hansom FY"; src: local("Hansom FY Regular"), local("HansomFY-Regular"), local("Hansom FY"); font-style: normal; font-weight: 400; font-display: swap; }
@font-face { font-family: "Hansom FY"; src: local("Hansom FY Bold"), local("HansomFY-Bold"); font-style: normal; font-weight: 700; font-display: swap; }
:root,:is(#___griddo[data-theme="pangeia-theme"], #___griddo [data-theme="pangeia-theme"]) {
  --font-primary: "Hansom FY", "Maven Pro", sans-serif;
  --font-secondary: "Maven Pro", sans-serif;
  --title-weight: 700;
  --body-font-weight: 400;
  --bodyTight-font-weight: 400;
  --subtitle-font-weight: 400;
  --subtitleLink-font-weight: 700;
  --small-font-weight: 400;
  --brand1: #063C70;
  --brand2: #34BB6A;
  --brand3: #0D80F0;
  --brand4: #0D80F0;
  --brand5: #fff;
  --ui01: #fff;
  --ui02: #F3F6F9;
  --ui03: #0D80F0;
  --ui04: #F3F6F9;
  --ui05: #063C70;
  --ui06: #0D80F0;
  --ui07: hsla(0,0%,100%,0);
  --ui08: hsla(0,0%,100%,0);
  --ui09: hsla(0,0%,100%,0);
  --ui10: hsla(0,0%,100%,0);
  --ui11: hsla(0,0%,100%,0);
  --ui12: hsla(0,0%,100%,0);
  --ui13: hsla(0,0%,100%,0);
  --ui14: hsla(0,0%,100%,0);
  --ui15: #F3F6F9;
  --ui16: #0D80F0;
  --ui17: rgba(89,90,93,.08);
  --ui18: rgba(13,128,240,.06);
  --ui21: hsla(0,0%,100%,0);
  --bg-disabled: rgba(89,90,93,.08);
  --interactive01: #34BB6A;
  --interactive01Hover: #3BD278;
  --interactive01Active: #34BB6A;
  --interactive01Focus: #34BB6A;
  --interactive01Disabled: #595A5D;
  --interactive01border: #34BB6A;
  --interactive02: #fff;
  --interactive02Hover: #fff;
  --interactive02Active: rgba(52,187,106,.2);
  --interactive02Focus: rgba(52,187,106,.1);
  --interactive02Disabled: #595A5D;
  --interactive03: #fff;
  --interactive03Hover: rgba(52,187,106,.1);
  --interactive03Active: rgba(52,187,106,.2);
  --interactive03Focus: #3BD278;
  --interactive03Disabled: #595A5D;
  --interactive04: #fff;
  --interactive04Hover: rgba(52,187,106,.1);
  --interactive04Active: rgba(52,187,106,.2);
  --interactive04Focus: rgba(52,187,106,.2);
  --interactive04Disabled: #595A5D;
  --interactive05: hsla(0,0%,100%,0);
  --interactive05Hover: hsla(0,0%,100%,0);
  --interactive05Active: hsla(0,0%,100%,0);
  --interactive05Focus: hsla(0,0%,100%,0);
  --interactive05Disabled: hsla(0,0%,100%,0);
  --borderOnInteractive01: hsla(0,0%,100%,0);
  --borderOnInteractive01Hover: hsla(0,0%,100%,0);
  --borderOnInteractive01Active: hsla(0,0%,100%,0);
  --borderOnInteractive01Focus: hsla(0,0%,100%,0);
  --borderOnInteractive01Disabled: hsla(0,0%,100%,0);
  --borderOnInteractive02: #34BB6A;
  --borderOnInteractive02Hover: #3BD278;
  --borderOnInteractive02Active: #34BB6A;
  --borderOnInteractive02Focus: #34BB6A;
  --borderOnInteractive02Disabled: #595A5D;
  --borderOnInteractive03: #34BB6A;
  --borderOnInteractive03Hover: #3BD278;
  --borderOnInteractive03Active: #34BB6A;
  --borderOnInteractive03Focus: #34BB6A;
  --borderOnInteractive03Disabled: #595A5D;
  --borderOnInteractive04: #34BB6A;
  --borderOnInteractive04Hover: #3BD278;
  --borderOnInteractive04Active: #34BB6A;
  --borderOnInteractive04Focus: #34BB6A;
  --borderOnInteractive04Disabled: #595A5D;
  --borderOnInteractive05: hsla(0,0%,100%,0);
  --borderOnInteractive05Hover: hsla(0,0%,100%,0);
  --borderOnInteractive05Active: hsla(0,0%,100%,0);
  --borderOnInteractive05Focus: hsla(0,0%,100%,0);
  --borderOnInteractive05Disabled: hsla(0,0%,100%,0);
  --textOnInteractive01: #063C70;
  --textOnInteractive01Hover: #063C70;
  --textOnInteractive01Active: #063C70;
  --textOnInteractive01Focus: #063C70;
  --textOnInteractive01Disabled: rgba(89,90,93,.08);
  --textOnInteractive02: #063C70;
  --textOnInteractive02Hover: #063C70;
  --textOnInteractive02Active: #063C70;
  --textOnInteractive02Focus: #063C70;
  --textOnInteractive02Disabled: rgba(89,90,93,.08);
  --textOnInteractive03: #063C70;
  --textOnInteractive03Hover: #063C70;
  --textOnInteractive03Active: #063C70;
  --textOnInteractive03Focus: #063C70;
  --textOnInteractive03Disabled: rgba(89,90,93,.08);
  --textOnInteractive04: #063C70;
  --textOnInteractive04Hover: #063C70;
  --textOnInteractive04Active: #063C70;
  --textOnInteractive04Focus: #063C70;
  --textOnInteractive04Disabled: rgba(89,90,93,.08);
  --textOnInteractive05: hsla(0,0%,100%,0);
  --textOnInteractive05Hover: hsla(0,0%,100%,0);
  --textOnInteractive05Active: hsla(0,0%,100%,0);
  --textOnInteractive05Focus: hsla(0,0%,100%,0);
  --textOnInteractive05Disabled: hsla(0,0%,100%,0);
  --link01: #0D80F0;
  --link01Hover: #063C70;
  --link01Active: #063C70;
  --link01Focus: #0D80F0;
  --text01: #063C70;
  --text02: #595A5D;
  --text03: #063C70;
  --text04: #063C70;
  --text05: #063C70;
  --text06: #fff;
  --text07: hsla(0,0%,100%,0);
  --text08: hsla(0,0%,100%,0);
  --text10: #063C70;
  --textAccent: #0D80F0;
  --textRegular: #595A5D;
  --textInverse: #fff;
  --icon01: #063C70;
  --icon02: #fff;
  --icon03: #fff;
  --icon04: #063C70;
  --icon05: hsla(0,0%,100%,0);
  --icon06: hsla(0,0%,100%,0);
  --icon07: hsla(0,0%,100%,0);
  --icon08: hsla(0,0%,100%,0);
  --border01: #0D80F0;
  --border02: #0D80F0;
  --border03: hsla(0,0%,100%,0);
  --border04: rgba(89,90,93,.25);
  --border05: hsla(0,0%,100%,0);
  --border06: hsla(0,0%,100%,0);
  --border07: hsla(0,0%,100%,0);
  --border08: #0D80F0;
  --border09: hsla(0,0%,100%,0);
  --border11: #0D80F0;
  --fixed02: #063C70;
  --fixed03: #595A5D;
  --gradient-bg: linear-gradient(180deg,rgba(252,80,21,0) 15%,#063C70);
  --gradient01: linear-gradient(270deg,transparent 1%,#063C70);
  --lightboxBg: #fff;
  --lightboxBorder: rgba(89,90,93,.08);
  --dot: rgba(89,90,93,.25);
  --dot-active: #595A5D;
}
:is(#___griddo[data-theme="pangeia-theme"], #___griddo [data-theme="pangeia-theme"]) [data-subtheme=default],:is(#___griddo[data-theme="pangeia-theme"], #___griddo [data-theme="pangeia-theme"])[data-subtheme=default] {
  --text01: #063C70;
  --icon01: #063C70;
  --link01: #0D80F0;
}
:is(#___griddo[data-theme="pangeia-theme"], #___griddo [data-theme="pangeia-theme"]) [data-subtheme=defaultAlt],:is(#___griddo[data-theme="pangeia-theme"], #___griddo [data-theme="pangeia-theme"]) [data-subtheme=default],:is(#___griddo[data-theme="pangeia-theme"], #___griddo [data-theme="pangeia-theme"])[data-subtheme=defaultAlt],:is(#___griddo[data-theme="pangeia-theme"], #___griddo [data-theme="pangeia-theme"])[data-subtheme=default] {
  --ui01: #fff;
  --ui04: #F3F6F9;
  --ui05: #063C70;
  --ui15: #F3F6F9;
  --border09: hsla(0,0%,100%,0);
  --text02: #595A5D;
  --text05: #fff;
  --text06: #fff;
  --icon06: hsla(0,0%,100%,0);
  --textOnInteractive02: #063C70;
  --borderOnInteractive02: #34BB6A;
  --interactive02: #fff;
  --link01Active: #063C70;
}
:is(#___griddo[data-theme="pangeia-theme"], #___griddo [data-theme="pangeia-theme"]) [data-subtheme=defaultAlt],:is(#___griddo[data-theme="pangeia-theme"], #___griddo [data-theme="pangeia-theme"])[data-subtheme=defaultAlt] {
  --ui01: #F3F6F9;
  --ui02: #fff;
  --ui04: #fff;
  --ui15: #fff;
  --text01: #063C70;
  --text02: #063C70;
  --text06: #063C70;
  --icon01: #063C70;
  --interactive01: #fff;
  --interactive01Hover: rgba(89,90,93,.08);
  --interactive01Active: rgba(89,90,93,.25);
  --interactive01Focus: rgba(89,90,93,.25);
  --interactive01border: #595A5D;
  --textOnInteractive01: #063C70;
  --link01: #0D80F0;
  --link01Active: #fff;
}
:is(#___griddo[data-theme="pangeia-theme"], #___griddo [data-theme="pangeia-theme"]) [data-subtheme=accent],:is(#___griddo[data-theme="pangeia-theme"], #___griddo [data-theme="pangeia-theme"])[data-subtheme=accent] {
  --ui01: #fff;
  --ui04: #F3F6F9;
  --ui05: #063C70;
  --ui15: #F3F6F9;
  --border09: hsla(0,0%,100%,0);
  --text01: #063C70;
  --text02: #595A5D;
  --text05: #fff;
  --text06: #fff;
  --icon01: #063C70;
  --icon06: hsla(0,0%,100%,0);
  --borderOnInteractive02: #34BB6A;
  --link01: #0D80F0;
  --link01Active: #063C70;
  --ui01: #063C70;
  --ui04: #063C70;
  --ui05: #fff;
  --ui06: #0D80F0;
  --ui15: #fff;
  --border09: rgba(52,187,106,.08);
  --text01: #fff;
  --text02: #fff;
  --text06: #063C70;
  --icon01: #fff;
  --icon06: #fff;
  --textOnInteractive02: #063C70;
  --borderOnInteractive02: #fff;
  --interactive02: #fff;
  --link01: #34BB6A;
  --link01Active: rgba(89,90,93,.25);
}
:is(#___griddo[data-theme="pangeia-theme"], #___griddo [data-theme="pangeia-theme"]) [data-subtheme=accentAlt],:is(#___griddo[data-theme="pangeia-theme"], #___griddo [data-theme="pangeia-theme"])[data-subtheme=accentAlt] {
  --ui01: #fff;
  --ui04: #F3F6F9;
  --ui05: #063C70;
  --ui15: #F3F6F9;
  --border09: hsla(0,0%,100%,0);
  --text01: #063C70;
  --text02: #595A5D;
  --text05: #fff;
  --text06: #fff;
  --icon01: #063C70;
  --icon06: hsla(0,0%,100%,0);
  --textOnInteractive02: #063C70;
  --borderOnInteractive02: #34BB6A;
  --interactive02: #fff;
  --link01: #0D80F0;
  --link01Active: #063C70;
  --ui01: #0D80F0;
  --ui04: #fff;
  --ui05: #fff;
  --ui06: #0D80F0;
  --ui15: #fff;
  --text01: #fff;
  --text06: #063C70;
  --icon01: #fff;
  --brand4: #fff;
  --border01: #fff;
  --interactive01: #fff;
  --interactive01Hover: rgba(89,90,93,.08);
  --interactive01Active: rgba(89,90,93,.25);
  --interactive01Focus: rgba(89,90,93,.25);
  --interactive01border: #595A5D;
  --interactive01: #34BB6A;
  --interactive01Hover: #3BD278;
  --interactive01Active: #34BB6A;
  --interactive01Focus: #34BB6A;
  --interactive01Disabled: #595A5D;
  --interactive01border: #34BB6A;
  --textOnInteractive01: #063C70;
  --textOnInteractive02: #595A5D;
  --borderOnInteractive02: #0D80F0;
  --link01: #34BB6A;
  --link01Active: #fff;
}
:is(#___griddo[data-theme="pangeia-theme"], #___griddo [data-theme="pangeia-theme"]) [data-subtheme=accentLight],:is(#___griddo[data-theme="pangeia-theme"], #___griddo [data-theme="pangeia-theme"])[data-subtheme=accentLight] {
  --ui01: #fff;
  --ui04: #F3F6F9;
  --ui05: #063C70;
  --ui15: #F3F6F9;
  --border09: hsla(0,0%,100%,0);
  --text02: #595A5D;
  --text05: #fff;
  --text06: #fff;
  --icon06: hsla(0,0%,100%,0);
  --textOnInteractive02: #063C70;
  --borderOnInteractive02: #34BB6A;
  --interactive02: #fff;
  --link01Active: #063C70;
  --ui01: #34BB6A;
  --ui05: #fff;
  --ui06: #34BB6A;
  --ui15: #fff;
  --border01: #fff;
  --text01: #063C70;
  --text02: #063C70;
  --text06: #063C70;
  --icon01: #063C70;
  --interactive01: #fff;
  --interactive01Hover: rgba(89,90,93,.08);
  --interactive01Active: rgba(89,90,93,.25);
  --interactive01Focus: rgba(89,90,93,.25);
  --interactive01border: #595A5D;
  --textOnInteractive01: #063C70;
  --textOnInteractive02: #fff;
  --borderOnInteractive02: #fff;
  --link01: #0D80F0;
  --link01Active: #fff;
}

body, button, input, select, textarea { font-family: "Maven Pro", sans-serif; }
#___griddo, #___griddo * { font-family: var(--font-secondary) !important; }
#___griddo :is(h1, h2, h3, h4, h5, h6),
#___griddo :is(h1, h2, h3, h4, h5, h6) * { font-family: var(--font-primary) !important; }
#___griddo :is(.bodyBold, .bodyTightBold, .leadBold, .smallBold, .tinyBold, .tinyTightBold) { font-weight: 900; }
#___griddo :is(.subtitle01Bold, .subtitleLBold, .subtitleSBold, .title01Bold, .title02Bold, .title05Bold) { font-weight: 700; }

/* Titulo do banner principal sem negrito, como no site do IADE (--title-weight e global
   e tambem controla os titulos de secao, entao o ajuste fica so dentro do banner). */
#heroWithVideo .title01 { font-weight: 400 !important; }

/* Keep the removed search section hidden if remote content renders it again. */
#___griddo section.styles-module--outerClass--e95ed { display: none !important; }

/* Cookie popup removed from this local homepage. */
#onetrust-consent-sdk, #onetrust-banner-sdk, #onetrust-pc-sdk, .onetrust-pc-dark-filter, #ot-sdk-btn-floating { display: none !important; }

#___griddo .pangeia-course-detail,
#___griddo .pangeia-course-detail * { font-weight: 400 !important; }

/* "Formações em destaque": categories menu under the course grid. */
.pangeia-all-courses {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 48px;
}
.pangeia-all-courses-menu {
  position: absolute;
  top: calc(100% + 8px);
  z-index: 20;
  min-width: 240px;
  padding: 8px 0;
  border: 1px solid #0D80F0;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(6, 60, 112, .15);
}
.pangeia-all-courses-menu[hidden] { display: none; }
.pangeia-all-courses-menu a {
  display: block;
  padding: 10px 20px;
  color: #063C70;
  text-decoration: none;
}
.pangeia-all-courses-menu a:hover,
.pangeia-all-courses-menu a:focus-visible { background: #F3F6F9; }


/* A busca do site original dependia da API dele, que ja nao e chamada. No desktop o topo inteiro
   esta oculto; no mobile a lupa e um svg solto ao lado do hamburguer. */
[class*="mobileNav-module--headerIcons"] > svg {
  display: none !important;
}

/* Dentro do menu mobile ficava escondida a barra secundaria do site original, que reaparece agora
   que o painel abre: Agenda, Noticias, Blog, Alumni, Biblioteca, area do estudante,
   selector de idioma e a busca. Nada disso pertence ao Instituto Pangeia. */
[class*="mobileNav-module--mobileMenuContent"] [class*="mobile-module--topMenuItem"],
[class*="mobileNav-module--mobileMenuContent"] [class*="mobile-module--searchBtn"],
[class*="mobileNav-module--mobileMenuContent"] [class*="languageSelectorWrapper"],
[class*="mobileNav-module--mobileMenuContent"] *:has(> [class*="studentAreaLabel"]) {
  display: none !important;
}

/* "Proximas turmas": no template original do IADE este bloco (as duas fotos, Prof Thais
   e Prof Jamile) so existe na versao desktop (classe "hidden desktop-grid", sem nenhuma
   alternativa criada para tablet/celular) e por isso nunca aparecia no celular. Mostra
   empilhado abaixo do breakpoint desktop (1280px). */
@media (max-width: 1279px) {
  .styles-module--rowTwoColumnsCard--7f71d {
    display: flex !important;
    flex-direction: column !important;
    gap: 24px;
  }
  .styles-module--rowTwoColumnsCard--7f71d > * { width: 100% !important; }
}
/* No celular (nao no tablet) cada card fica com a foto em cima e o texto embaixo, com a
   foto num tamanho menor, em vez do layout lado a lado herdado do desktop. */
@media (max-width: 767px) {
  .styles-module--rowTwoColumnsCard--7f71d .styles-module--wrapper--234d3 {
    flex-direction: column !important;
  }
  .styles-module--rowTwoColumnsCard--7f71d .styles-module--wrapperImg--1bdaf {
    flex: 0 0 auto !important;
    width: 220px !important;
    max-width: 220px !important;
    height: 220px !important;
    margin: 0 auto !important;
  }
  .styles-module--rowTwoColumnsCard--7f71d .styles-module--wrapperBtn--8b736 {
    justify-content: center !important;
  }
}

/* Banner principal: no IADE a imagem ocupa 465px de altura num ecra de 390px de largura
   (proporcao ~26:31); a nossa estava em 525px (13% mais alta). Ajusta so no mobile, que
   foi onde a diferenca foi comparada. */
@media (max-width: 767px) {
  #heroWithVideo { height: 465px !important; }
}

/* "A opinião dos nossos alunos": no celular o carrossel mostrava as 3 cartas de cada
   pagina espremidas lado a lado (texto ilegivel, uma palavra por linha) e as setas de
   navegacao so aparecem a partir de 768px, entao a segunda pagina (3 dos 6 depoimentos)
   ficava inacessivel. Abaixo de 768px empilha todos os depoimentos numa coluna.
   Escopado em .wrapperCarouselAll--1bc52 (unico desta secao) porque o carrossel do
   banner principal reaproveita os mesmos nomes de classe internos (viewport,
   movingContainer) e nao pode ser afetado. */
@media (max-width: 767px) {
  .styles-module--wrapperCarouselAll--1bc52 [class*="styles-module--viewport--"] {
    overflow: visible !important;
  }
  .styles-module--wrapperCarouselAll--1bc52 [class*="styles-module--movingContainer--"] {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    transform: none !important;
  }
  .styles-module--wrapperCarouselAll--1bc52 [class*="styles-module--carouselPage--"] {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    gap: 16px;
  }
  .styles-module--wrapperCarouselAll--1bc52 [class*="styles-module--carouselPageCard--"] {
    width: 100% !important;
    flex: 0 0 auto !important;
  }
}
