/* FONTES */
@import url('https://fonts.googleapis.com/css2?family=Raleway:ital,wght@0,100..900;1,100..900&display=swap');


/* VARIÁVEIS */
:root {
  --gray:               #999999;
  --gray-light:         #ededee;
  --red-light:          #ff0000;
  --red-medium:         #cc0000;
  --red:                #bd0a10;
  --blue:               #001fbd;
  --blue-light:         #2448ff;
  --blue-dark:          #00178a;
  --black:              #000000;
  --white:              #FFFFFF;
  --white-alpha:        rgba(255,255,255,0.8);
  --white-alpha-light:  rgba(255,255,255,0.5);
  --dummy:              #FFCC00;
}


/* GERAL */
html, body { height: auto; width: 100%; border: none; margin: 0; padding: 0; font-family: "Raleway", sans-serif; font-weight: 400; font-size: 10px; color: var(--black); }
a { text-decoration: none; display: block; }
a:hover, a:active, a:focus, button:hover, button:active, button:focus, input:hover, input:active, input:focus, textarea:hover, textarea:active, textarea:focus  { outline: 0; border: none; text-decoration: none; }
::selection { color: var(--white); background-color: var(--red); }
* { box-sizing: border-box; }

.container { width: 100%; max-width: 1280px; padding: 0 40px; margin: 0 auto; display: flex; flex-direction: column; align-items: center; align-self: stretch; position: relative; }
.container.small { max-width: 1140px; }
.container.smaller { max-width: 960px; padding: 0 20px; }
.container.min { max-width: 800px; padding: 0 20px; }


/* NAV */
nav { position: absolute; top: 0; left: 0; width: 100%; z-index: 10; background: var(--white-alpha); }
nav .container { flex-direction: row; justify-content: space-between; padding: 20px 70px; }

nav .logo img { width: 80px; }
nav .aux-mobile { flex: 1; display: flex; justify-content: space-between; align-items: center; padding-left: 5vw }
nav .menu { display: flex; justify-content: flex-end; align-items: center; }
nav .menu a { font-size: 1.5em; font-weight: 700; color: var(--black); padding: 8px 15px; margin: 0 10px; position: relative; transition: all 0.3s ease; }
nav .menu a.selected:before { content:''; width: calc(100% - 30px); position: absolute; left: 15px; bottom: 0; height: 1px; background: var(--red); }

nav .social .links { display: flex; justify-content: center; align-items: center; }
nav .social .txt { font-size: 1.2em; margin-bottom: 5px; width: 100%; text-align: center; display: none; }
nav .social a { display: block; }
nav .social .linkedin { mask-image: url('../images/ico_linkedin.svg'); mask-repeat: no-repeat; mask-size: 16px; mask-position: center; width: 32px; height: 32px; background: var(--black); } 
nav .social .facebook { mask-image: url('../images/ico_facebook.svg'); mask-repeat: no-repeat; mask-size: 16px; mask-position: center; width: 32px; height: 32px; background: var(--black); } 
nav .social .instagram { mask-image: url('../images/ico_instagram.svg'); mask-repeat: no-repeat; mask-size: 17px; mask-position: center; width: 32px; height: 32px; background: var(--black); } 
nav .social .youtube { mask-image: url('../images/ico_youtube.svg'); mask-repeat: no-repeat; mask-size: 22px; mask-position: center; width: 32px; height: 32px; background: var(--black); } 

nav .actions { display: flex; justify-content: center; align-items: center; }
nav .actions a { font-size: 1.2em; font-weight: 400; text-transform: uppercase; color: var(--black); padding: 8px; margin: 0 4px; position: relative; transition: all 0.3s ease; }

nav .bt-menu { display: none; position: absolute; top: 7px; right: 20px; z-index: 2; transition: all 0.5s ease; }
nav .bt-menu a { text-decoration: none; position: relative; display: flex; justify-content: center; align-items: center; width: 48px; height: 48px; }
nav .bt-menu .bar { width: 20px; height: 2px; border-radius: 2px; background: var(--black); }
nav .bt-menu .bar-1 { transform: rotate(0); position: absolute; top: 17px; left: 14px; transition: all 0.2s ease; }
nav .bt-menu .bar-2 { opacity: 1; transition: all 0.2s ease; }
nav .bt-menu .bar-3 { transform: rotate(0); position: absolute; top: 29px; left: 14px; transition: all 0.2s ease; }
nav.open .bt-menu .bar-1 { transform: rotate(45deg); transform-origin: 50% 50%; transition: all 0.2s ease; width: 21px; height: 3px; top: 23px; left: 13px; }
nav.open .bt-menu .bar-2 { opacity: 0; }
nav.open .bt-menu .bar-3 { transform: rotate(-45deg); transform-origin: 50% 50%; transition: all 0.2s ease; width: 21px; height: 3px; top: 23px; left: 13px; }

main { width: 100%; overflow: hidden; }
main .banner .container { padding: 0; gap: 20px; }
main .banner .slider { width: 100%; }
main .banner .slider .slide a { width: 100%; /*height: 540px;*/ aspect-ratio: 1280/540; background-repeat: no-repeat; background-position: center; background-size: contain; }
main .banner .mouse { width: 100%; display: flex; justify-content: center; align-items: center; }
main .banner .nav-slider { display: flex; justify-content: space-between; align-items: center;  width: 100%; position: absolute; left: 0; top: 50%; transform: translate(0,-50%); pointer-events: none; z-index: 2; }
main .banner .nav-slider .arrow { width: 60px; height: 100%; display: flex; justify-content: center; align-items: center; cursor: pointer; pointer-events: all; }
main .banner .nav-slider .arrow.slick-disabled { pointer-events: none; opacity: 0.5; }
main .banner .nav-slider .arrow.slick-hidden { pointer-events: none; opacity: 0; }
main .banner .slick-dots { position: absolute; left: 0; bottom: 20px; width: 100%; display: flex; justify-content: center; align-items: center; }
main .banner .slick-dots { padding: 0; list-style: none; }
main .banner .slick-dots li { margin: 0 3px; }
main .banner .slick-dots li button { font-size: 0; padding: 0; margin: 0; width: 8px; height: 8px; background: var(--gray); border-radius: 50%; border: solid 1px var(--white); }
main .banner .slick-dots li.slick-active button { background: var(--red-light); }

main .topo { background: transparent linear-gradient( 270deg, #00178a, #001fbd 28%, #000b42 ) 0 0 no-repeat; padding-top: 120px; }
main .topo .aux { width: 100%; height: 220px; display: flex; justify-content: flex-start; align-items: center; position: relative; }
main .topo .aux h1 { font-size: 4em; margin: 0; color: var(--white); text-transform: uppercase; }
main .topo .aux .breadcrumb { position: absolute; left: 0; bottom: 20px; width: 100%; display: flex; justify-content: flex-start; align-items: center; color: var(--white); text-transform: uppercase; }
main .topo .aux .breadcrumb a { color: var(--white); }
main .topo .aux .breadcrumb span { margin: -2px 8px 0 8px; line-height: 0; }
main .topo .aux .bts { position: absolute; right: 0; top: 50%; transform: translate(0,-50%); display: flex; justify-content: center; align-items: flex-end; flex-direction: column; gap: 15px; }
main .topo .aux .bt a { display: flex; justify-content: center; align-items: center; width: 160px; height: 40px; font-size: 1.2em; white-space: nowrap; color: var(--white); border: solid 1px var(--white); transition: all 0.3s ease; }
main .topo .aux .bt a:hover { background: var(--white); color: var(--blue); }

main .highlight { padding-top: 30px; margin-top: 65px; background-image: url('../images/bg_left_01.png'); background-repeat: no-repeat; background-position: calc(50% - 735px) 0; min-height: 352px; overflow: hidden; }
main .highlight .container { flex-direction: row; gap: 90px; align-items: unset; }
main .highlight .infos { flex: 1; padding-left: 50px; display: flex; justify-content: space-between; flex-direction: column; align-items: flex-start; }
main .highlight .infos h2 { font-size: 1.6em; font-weight: 400; margin: 0 0 15px 0; }
main .highlight .infos h3 { font-size: 3.8em; line-height: 1.4em; margin: 0; font-weight: 800; }
main .highlight .infos p { font-size: 1.5em; line-height: 1.8em; margin: 0; }
main .highlight .infos .bt { display: flex; justify-content: flex-end; align-items: center; width: 100%; }
main .highlight .infos .bt a { padding: 0 50px; line-height: 42px; background: var(--blue); font-size: 1.4em; font-weight: 600; color: var(--white); }
main .highlight .img { width: 60%; aspect-ratio: 640/381; background-repeat: no-repeat; background-position: center; background-size: cover; margin-top: 60px; }

main .news-slider { margin-top: 45px; padding-top: 100px; background-image: url('../images/bg_right_01.png'); background-repeat: no-repeat; background-position: calc(50% + 550px) 0; }
main .news-slider .slider { width: calc(100% + 30px); margin: 0 -15px; }
main .news-slider .slider .slide { margin: 0 15px; }
main .news-slider .slider .slide a { width: 100%; }
main .news-slider .slider .slide a .img { width: 100%; aspect-ratio: 1/1; background-repeat: no-repeat; background-position: center; background-size: cover; }
main .news-slider .slider .slide a .infos { padding: 20px 15px; }
main .news-slider .slider .slide a .infos h3 { font-size: 1.9em; font-weight: 800; color: var(--black); margin-top: 0; }
main .news-slider .slider .slide a .infos p { font-size: 1.5em; line-height: 1.8em; color: var(--black); }
main .news-slider .slider .slide a .infos .link { font-size: 1.3em; font-weight: 700; color: var(--red); }
main .news-slider .nav-slider { display: flex; justify-content: space-between; align-items: center; width: calc(100% + 200px); position: absolute; left: -100px; top: 120px; pointer-events: none; z-index: 2; }
main .news-slider .nav-slider .arrow { width: 60px; height: 100%; display: flex; justify-content: center; align-items: center; cursor: pointer; pointer-events: all; }
main .news-slider .nav-slider .arrow.left  { mask-image: url('../images/ico_arrow_left.svg'); mask-repeat: no-repeat; mask-size: 40px; mask-position: center; width: 40px; height: 60px; background: var(--gray); } 
main .news-slider .nav-slider .arrow.right  { mask-image: url('../images/ico_arrow_right.svg'); mask-repeat: no-repeat; mask-size: 40px; mask-position: center; width: 40px; height: 60px; background: var(--gray); } 
main .news-slider .nav-slider .arrow.slick-disabled { pointer-events: none; opacity: 0.5; }
main .news-slider .nav-slider .arrow.slick-hidden { pointer-events: none; opacity: 0; }

main .banners { margin: 30px 0; }
main .banners .container { flex-direction: row; gap: 30px; }
main .banners .bn { flex: 1; }
main .banners .bn a { width: 100%; aspect-ratio: 1/1; background-repeat: no-repeat; background-position: center; background-size: cover; }

main .depoimentos { margin: 30px 0; position: relative; }
main .depoimentos .container:before { content: ''; background-image: url('../images/bg_right_02.png'); background-repeat: no-repeat; background-position: center; width: 328px; height: 863px; position: absolute; right: -200px; top: 0; transform: translate(0, -50%); }

main .depoimentos .slider { width: 100%; padding-bottom: 60px; }
main .depoimentos .slider .slide { display: flex; gap: 20px; }
main .depoimentos .slider .slide .ico { margin-top: 15px; }
main .depoimentos .slider .slide .txt { padding-right: 30px; font-size: 1.5em; line-height: 1.7em; }
main .depoimentos .slick-dots { position: absolute; left: 0; bottom: 20px; width: 100%; display: flex; justify-content: center; align-items: center; }
main .depoimentos .slick-dots { padding: 0; list-style: none; }
main .depoimentos .slick-dots li { margin: 0 3px; }
main .depoimentos .slick-dots li button { font-size: 0; padding: 0; margin: 0; width: 8px; height: 8px; background: var(--white); border-radius: 50%; border: solid 1px var(--gray); }
main .depoimentos .slick-dots li.slick-active button { background: var(--red-light); }

main .cta { margin: 40px 0; }
main .cta .holder { width: 100%; background-repeat: no-repeat; background-position: center; background-size: cover; }
main .cta .holder a { width: 100%; height: 100px; padding: 0 95px; display: flex; justify-content: space-between; align-items: center; }
main .cta .holder a .chamada { font-size: 2.1em; font-weight: 800; color: var(--white); text-transform: uppercase; display: flex; justify-content: center; align-items: center; gap: 30px; }
main .cta .holder a .chamada .ico {  }
main .cta .holder a .bt { font-size: 2.1em; padding: 0 50px; height: 46px; display: flex; justify-content: center; align-items: center; border: solid 2px var(--white); color: var(--white); }

main .sobre { position: relative; background-image: url('../images/bg_right_03.png'), url('../images/bg_left_02.png'); background-repeat: no-repeat, no-repeat; background-position: calc(50% + 780px) -170px, calc(50% - 495px) 630px; }
main .sobre .container { align-items: flex-start; }
main .sobre h1 { width: 100%; margin: 50px 0 80px 0; padding-left: 100px; font-size: 3.8em; }
main .sobre h2 { font-size: 1.9em; line-height: 1.8em; font-weight: 800; margin: 0; }
main .sobre p { margin: 10px 0; line-height: 1.8em; font-size: 1.5em; }
main .sobre .infos { display: flex; justify-content: flex-start; align-items: center; gap: 30px; }
main .sobre .infos .img { width: 45%; aspect-ratio: 530/353; background-repeat: no-repeat; background-position: center; background-size: cover; }
main .sobre .infos .aux { width: 38%; }
main .sobre .premiacao .infos .img { width: 38%; }
main .sobre .premiacao .infos .aux { width: 60%; }
main .sobre .avaliacao { margin: 75px auto; }
main .sobre .avaliacao img { margin: 0 0 30px -30px; }

main .cta-inscricao { background: url('../images/bg_left_03.png') no-repeat calc(50% - 570px) 170px; padding-bottom: 100px; margin-top: 100px; }
main .cta-inscricao h2 { width: 100%; margin: 30px 0 50px 0; padding-left: 100px; font-size: 3.8em; font-weight: 800; text-transform: uppercase; position: relative; }
main .cta-inscricao h2 .triangulo { position: absolute; left: 70px; top: -30px; }
main .cta-inscricao .boxes { width: calc(100% - 100px); margin-left: 100px; display: flex; gap: 120px; }
main .cta-inscricao .boxes .box { flex: 1; }
main .cta-inscricao .boxes .box:first-child { background: var(--blue-light); }
main .cta-inscricao .boxes .box:last-child { background: linear-gradient(180deg, #999, #d4d4d4); }
main .cta-inscricao .boxes .box a { display: block; padding: 25px; }
main .cta-inscricao .boxes .box a .ico { margin-bottom: 50px; }
main .cta-inscricao .boxes .box a .infos { display: flex; justify-content: center; align-items: center; font-size: 1.6em; color: var(--white); gap: 30px; }

main .chamada-categorias { margin-top: 65px; }
main .chamada-categorias h2 { width: 100%; font-size: 1.9em; font-weight: 800; margin: 0; }
main .chamada-categorias p { width: 100%; font-size: 1.5em; line-height: 1.8em; }

main .categorias { margin-top: 40px; margin: 10px 0 50px 0; }
main .categorias .menu { width: 100%; margin-bottom: 30px; }
main .categorias .menu .categorias-nav { width: 100%; padding: 0; flex-wrap: wrap; display: flex; }
main .categorias .menu .categorias-nav .categoria { height: 60px; background: var(--gray-light); -webkit-box-flex: 1; flex: 1 1; min-width: 25%; text-align: center; display: flex; justify-content: center; align-items: center; margin-bottom: 5px; list-style: none; cursor: pointer; font-size: 1.8em; }
main .categorias .menu .categorias-nav .categoria.active { color: var(--white); font-weight: 800; background: var(--red-medium); }
main .categorias .menu .select { position: relative; display: none; }
main .categorias .menu .select .selecionado { font-size: 1.8em; color: var(--white); font-weight: 800; background: var(--red-medium); height: 60px; text-align: center; display: flex; justify-content: center; align-items: center; }
main .categorias .menu .select .ico { mask-image: url('../images/ico_arrow_cta.svg'); mask-repeat: no-repeat; mask-size: 30px; mask-position: center; width: 35px; height: 30px; background: var(--white); transform: rotate(90deg); position: absolute; right: 15px; top: 15px; }


main .categorias .conteudo { display: none; flex-wrap: wrap; gap: 30px; width: 100%; }
main .categorias .conteudo.on { display: flex; }
main .categorias .conteudo .descricao { font-size: 1.5em; line-height: 1.8em;  width: 100%; margin-bottom: 30px;  display: flex; gap: 15px; }
main .categorias .conteudo .descricao .ico { width: 95px; height: 95px; min-width: 95px; background: linear-gradient(180deg, #fff, #ededee); border-radius: 50%; display: flex; justify-content: center; align-items: center; }
main .categorias .conteudo .descricao .ico img { width: 50px; }
main .categorias .conteudo .box { width: calc(50% - 15px); display: flex; gap: 15px; margin-bottom: 100px; }
main .categorias .conteudo .box .ico { width: 95px; height: 95px; min-width: 95px; background: linear-gradient(180deg, #fff, #ededee); border-radius: 50%; display: flex; justify-content: center; align-items: center; }
main .categorias .conteudo .box .ico img { width: 50px; }
main .categorias .conteudo .box .info { display: flex; justify-content: space-between; align-items: flex-start; flex-direction: column; }
main .categorias .conteudo .box .info .titulo { font-size: 1.9em; line-height: 1.6em; font-weight: 800; height: 95px; display: flex; align-items: center; }
main .categorias .conteudo .box .info .texto { font-size: 1.5em; line-height: 1.8em; }
main .categorias .conteudo .box .info .bt { display: flex; justify-content: flex-start; align-items: center; width: 100%; margin-top: 30px; }
main .categorias .conteudo .box .info .bt a { padding: 0 50px; line-height: 42px; background: var(--blue); font-size: 1.4em; font-weight: 600; color: var(--white); }

main .chamada-jurados { margin-top: 35px; }
main .chamada-jurados p { font-size: 1.5em; line-height: 1.8em; }

main .jurados h2 { width: 100%; margin: 30px 0 20px 0; padding-left: 100px; font-size: 3.8em; font-weight: 800; color: var(--blue-dark); position: relative; }
main .jurados .slider { width: 100%; margin-bottom: 50px; }
main .jurados .slider .slick-list { padding-right: 150px; }
main .jurados .slider .slide { background-repeat: no-repeat; background-position: center; background-size: cover; aspect-ratio: 255/330; margin: 0 15px; position: relative; }
main .jurados .slider .slide a { display: block; position: relative; height: 100%; }
main .jurados .slider .slide a .nome { position: absolute; left: 0; bottom: 0; width: 100%; height: auto; color: #fff; padding: 10px 30px; background: rgba(75, 75, 75, 0.8); font-size: 1.6em; font-weight: 700; }
main .jurados .nav-slider { display: flex; justify-content: space-between; align-items: center; width: 100%; padding: 0 30px 0 45px; position: absolute; left: 0; top: 100px; pointer-events: none; z-index: 2; }
main .jurados .nav-slider .arrow { width: 60px; height: 100%; display: flex; justify-content: center; align-items: center; cursor: pointer; pointer-events: all; }
main .jurados .nav-slider .arrow.slick-disabled { pointer-events: none; opacity: 0.5; }
main .jurados .nav-slider .arrow.slick-hidden { pointer-events: none; opacity: 0; }

main .lista-jurados { margin-top: 55px; }
main .lista-jurados .jurado { margin-bottom: 100px; display: flex; justify-content: center; align-items: center; }
main .lista-jurados .jurado .img { width: 360px; aspect-ratio: 360 / 445; background-repeat: no-repeat; background-position: center; background-size: cover; }
main .lista-jurados .jurado .info { flex: 1; padding: 0 95px; }
main .lista-jurados .jurado .info h2 { font-size: 4em; font-weight: 800; color: var(--blue-dark); margin: 30px 0; }
main .lista-jurados .jurado .info p { font-size: 1.5em; line-height: 1.6em; }
main .lista-jurados .jurado:nth-child(even) { flex-direction: row-reverse; }

main .noticias .noticia a { display: flex; justify-content: center; align-items: center; gap: 30px; }
main .noticias.destaque { margin: 55px 0 30px; }
main .noticias.destaque .noticia { width: 100%; }
main .noticias.grid { margin-bottom: 55px; }
main .noticias.grid .container { flex-direction: row; gap: 30px; }
main .noticias.grid .noticia { width: calc(50% - 15px); margin-bottom: 30px; }
main .noticias.grid .alm-listing { display: flex; flex-wrap: wrap; gap: 30px; }
main .noticias.grid .alm-listing .noticia { width: calc(50% - 15px); margin-bottom: 30px; }
main .noticias .noticia .img { width: 50%; aspect-ratio: 545 / 415; background-repeat: no-repeat; background-position: center; background-size: cover; }
main .noticias .noticia .info { flex: 1; }
main .noticias .noticia .info h2 { font-size: 1.9em; line-height: 1.2em; font-weight: 800; color: var(--black); }
main .noticias .noticia .info p { font-size: 1.5em; line-height: 1.6em; color: var(--black); }
main .noticias .noticia .info .bt { font-size: 1.5em; font-weight: 700; color: var(--red-light); }

main .txt-conteudo { padding: 55px 0; }
main .txt-conteudo .container { align-items: flex-start; }
main .txt-conteudo { font-size: 1.5em; line-height: 1.8em; }
main .txt-conteudo a { display: inline-block; font-weight: 700; color: var(--red); transition: all 0.3s ease; }
main .txt-conteudo a:hover { color: var(--red-light); }
main .txt-conteudo figure { width: 100%; padding: 0; margin-left: 0; margin-right: 0; }
main .txt-conteudo figure.wp-block-embed-youtube .wp-block-embed__wrapper { position: relative; padding-bottom: 56.25%; }
main .txt-conteudo figure.wp-block-embed-youtube .wp-block-embed__wrapper iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
main .txt-conteudo img { width: 100%; height: auto; }

main .bt-back { margin-bottom: 60px; }
main .bt-back .container { flex-direction: row; justify-content: flex-end; }
main .bt-back a { font-size: 1.9em; font-weight: 700; color: var(--red); display: flex; justify-content: center; align-items: center; transition: all 0.3s ease; }
main .bt-back a .ico { mask-image: url('../images/ico_arrow_back.svg'); mask-repeat: no-repeat; mask-size: 30px; mask-position: center; width: 35px; height: 30px; background: var(--red); margin-right: 10px; transition: all 0.3s ease;  }
main .bt-back a:hover { color: var(--red-light); }
main .bt-back a:hover .ico { background: var(--red-light); }


main .hld-form { background-image: url('../images/bg_left_04.png'); background-repeat: no-repeat; background-position: calc(50% - 710px) -110px; padding: 55px 0; }
main .hld-form .container { padding-left: 150px; }
main .hld-form .aux-form { width: 100%; }
main .hld-form h2 { font-size: 3.8em; font-weight: 800; width: 100%; margin-bottom: 30px; }
main .hld-form h2 .info { font-size: 16px; font-weight: 400; }
main .hld-form p { font-size: 1.5em; line-height: 1.8em; width: 100%; }
main .hld-form h3 { font-size: 2em; line-height: 1.5em; font-weight: 700; margin-bottom: 15px; width: 100%; }
main .hld-form h3 a { display: inline-block; color: var(--blue); transition: all 0.3s ease; }
main .hld-form h3 a:hover { color: var(--blue-light); text-decoration: underline; }

main .hld-form .form { width: 100%; }
main .hld-form .cta { width: 100%; }
main .hld-form .cta .container { padding: 0; }
main .hld-form .cta .holder a { padding: 0 30px; }
main .hld-form .infos-form { width: 100%; margin: 50px 0 30px 0; }
main .hld-form .infos-form a { display: inline-block; color: var(--blue); transition: all 0.3s ease; }
main .hld-form .infos-form a:hover { color: var(--blue-light); text-decoration: underline; }
main .hld-form .infos-form h3:nth-child(2) a { color: var(--red); }
main .hld-form .infos-form h3:nth-child(2) a:hover { color: var(--red-light); }
main .hld-form.inscricao .infos-form { width: 100%; margin: 15px 0 30px 0; }

main .hld-form .infos-duvidas { width: 100%; margin: 50px 0 30px 0; }
main .hld-form .infos-duvidas h3 { font-size: 3.8em; font-weight: 800; width: 100%; margin-bottom: 30px; }
main .hld-form .infos-duvidas .item { font-size: 2em; line-height: 1.5em; font-weight: 700; margin-bottom: 15px; }
main .hld-form .infos-duvidas .item a { display: inline-block; color: var(--blue); transition: all 0.3s ease; }
main .hld-form .infos-duvidas .item a:hover { color: var(--blue-light); text-decoration: underline; }
main .hld-form .infos-duvidas .item a.red { color: var(--red); }
main .hld-form .infos-duvidas .item a.red:hover { color: var(--red-light); }
main .hld-form .infos-duvidas .bt a { font-size: 1.9em; font-weight: 700; color: var(--red); display: flex; justify-content: flex-start; align-items: center; transition: all 0.3s ease; }
main .hld-form .infos-duvidas .bt a .ico { mask-image: url('../images/ico_arrow_front.svg'); mask-repeat: no-repeat; mask-size: 30px; mask-position: center; width: 35px; height: 30px; background: var(--red); margin-left: 10px; transition: all 0.3s ease;  }
main .hld-form .infos-duvidas .bt a:hover { color: var(--red-light); }
main .hld-form .infos-duvidas .bt a:hover .ico { background: var(--red-light); }
main .hld-form .form { flex: 1; position: relative; }
main .hld-form .form .row { display: flex; justify-content: center; align-items: center; gap: 30px; width: 100%; }
main .hld-form .form .row .hld-inp { flex: 1; margin-bottom: 15px; position: relative; }
main .hld-form .form .row .hld-inp.p { flex: 0.6; }
main .hld-form .form .row .hld-inp label { display: block; font-size: 1.8em; line-height: 1.3em; font-weight: 700; margin-bottom: 5px; }
main .hld-form .form .row.checks .hld-inp label { font-size: 1.2em; }
main .hld-form .form .row .hld-inp input[type="text"] { line-height: 35px; background: 0 0; border: 1px solid #999; padding: 0 5px; font-size: 1.4em; width: 100%; }
main .hld-form .form .row .hld-inp input[type="text"]:read-only  { background: var(--gray-light); }
main .hld-form .form .row .hld-inp input[type="email"] { line-height: 35px; background: 0 0; border: 1px solid #999; padding: 0 5px; font-size: 1.4em; width: 100%; }
main .hld-form .form .row .hld-inp input[type="date"] { line-height: 35px; background: 0 0; border: 1px solid #999; padding: 0 5px; font-size: 1.4em; width: 100%; }
main .hld-form .form .row .hld-inp input[type="tel"] { line-height: 35px; background: 0 0; border: 1px solid #999; padding: 0 5px; font-size: 1.4em; width: 100%; }
main .hld-form .form .row .hld-inp input[type="password"] { line-height: 35px; background: 0 0; border: 1px solid #999; padding: 0 5px; font-size: 1.4em; width: 100%; }
main .hld-form .form .row .hld-inp .aux-file { position: relative; width: 100%; height: 60px; border: dashed 1px var(--gray); }
main .hld-form .form .row .hld-inp .aux-file input[type="file"] { position: absolute; left: 0; top: 0; width: 100%; height: 100%; opacity: 0; cursor: pointer; }
main .hld-form .form .row .hld-inp .aux-file .imagem { display: none; width: 100%; height: 350px; background-repeat: no-repeat; background-position: center; background-size: contain; }
main .hld-form .form .row .hld-inp .aux-file .bt-del { width: 20px; height: 20px; mask-repeat: no-repeat; mask-size: 16px; mask-position: center; width: 20px; height: 20px; background: var(--red); mask-image: url('../images/ico_trash.svg'); position: absolute; right: 10px; bottom: 10px; cursor: pointer; display: none; }
main .hld-form .form .row .hld-inp .aux-file.unico:before { content: 'Clique aqui e selecione o arquivo'; }
main .hld-form .form .row .hld-inp .aux-file.multiplo:before { content: 'Clique aqui e selecione os arquivos'; }
main .hld-form .form .row .hld-inp .aux-file.loading:before { content: 'Carregando'; color: var(--red); }
main .hld-form .form .row .hld-inp .aux-file.error:before { content: 'O arquivo deve ter menos de 2MB'; color: var(--red); }
main .hld-form .form .row .hld-inp .aux-file.error20:before { content: 'Os arquivos devem ter menos de 20MB'; color: var(--red); }
main .hld-form .form .row .hld-inp .aux-file.error2:before { content: 'Você pode anexar no máximo 2 arquivos'; color: var(--red); }
main .hld-form .form .row .hld-inp.full .aux-file { padding: 15px !important; }
main .hld-form .form .row .hld-inp.full .aux-file:before { display: none; }
main .hld-form .form .row .hld-inp.full .aux-file input { pointer-events: none; }
main .hld-form .form .row .hld-inp .aux-file.on { height: 350px; }
main .hld-form .form .row .hld-inp .aux-file.on .imagem { display: block; }
main .hld-form .form .row .hld-inp .aux-file.on .bt-del { display: block; }

main .hld-form .form .row .hld-inp .aux-file.lista { padding: 15px 15px 45px 15px; height: auto; }
main .hld-form .form .row .hld-inp .aux-file.lista:before { top: auto; bottom: 0; align-items: flex-end; padding-bottom: 15px; }
main .hld-form .form .row .hld-inp .aux-file.lista .item { display: flex; justify-content: space-between; align-items: center; border: solid 1px var(--gray); padding: 10px; gap: 30px; margin-bottom: -1px; }
main .hld-form .form .row .hld-inp .aux-file.lista .item .name { font-size: 1.2em; }
main .hld-form .form .row .hld-inp .aux-file.lista .item .bt-del-file { width: 20px; height: 20px; mask-repeat: no-repeat; mask-size: 16px; mask-position: center; width: 20px; height: 20px; background: var(--red); mask-image: url('../images/ico_trash.svg'); cursor: pointer; }

main .hld-form .form .row .hld-inp .aux-file.on:before { content: ''; }

main .hld-form .form .outro-reponsavel { display: none; }
main .hld-form .form .outro-reponsavel.on { display: flex; }

main .hld-form .form .row .hld-inp .aux-file:before { position: absolute; left: 0; top: 0; width: 100%; height: 100%; display: flex; justify-content: center; align-items: center; font-size: 1.2em; color: var(--gray); font-weight: 700; }
main .hld-form .form .row .hld-inp textarea { line-height: 1.5; background: 0 0; border: 1px solid #999; padding: 5px; font-size: 1.4em; width: 100%; resize: none; }
main .hld-form .form .row .hld-inp select { line-height: 37px; height: 37px; background: 0 0; border: 1px solid #999; padding: 0 5px; font-size: 1.4em; width: 100%; }
main .hld-form .form .row .hld-inp select[readonly] { background: var(--gray-light); pointer-events: none; }

main .hld-form .form .row .hld-inp.error input { border-color: var(--red); }
/*main .hld-form .form .row .hld-inp.ok input { border-color: var(--gray-light); }*/
main .hld-form .form .row .hld-inp.error textarea { border-color: var(--red); }
/*main .hld-form .form .row .hld-inp.ok textarea { border-color: var(--gray-light); }*/
main .hld-form .form .row .hld-inp.error select { border-color: var(--red); }
/*main .hld-form .form .row .hld-inp.ok select { border-color: var(--gray-light); }*/
main .hld-form .form .row .hld-inp.error label { color: var(--red); }
main .hld-form .form .row .hld-inp.error .aux-file:before { color: var(--red); }
main .hld-form .form .row .hld-inp.error .aux-file { border-color: var(--red); }

main .hld-form .form .row .hld-inp.outro { display: none; }
main .hld-form .form .row .hld-inp.outro.on { display: block; }

main .hld-form .form .row .hld-inp .info.grd { font-size: 1.6em; width: 100%; }
main .hld-form .form .row .hld-inp .infos { font-size: 1.2em; width: 100%; color: var(--gray); font-style: italic; padding: 5px 0 10px; }
main .hld-form .form .row .hld-inp .infos span { color: var(--black); }
main .hld-form .form .row .hld-inp .infos.info-categoria { color: var(--gray); font-style: none; padding: 5px 50px 10px 50px; font-size: 1.166em; font-weight: 700; }
main .hld-form .form .row .hld-inp .infos.info-subcategoria { color: var(--gray); font-style: none; padding: 5px 50px 10px 50px; font-size: 1.166em; font-weight: 700; }
main .hld-form .form .float-infos { font-size: 1.2em; width: 100%; color: var(--gray); font-style: italic; padding: 5px 0 10px; margin: -10px 0 15px 0; }

main .hld-form .form .row-submit { display: flex; justify-content: space-between; align-items: center; margin-top: 15px; }
main .hld-form .form .row-submit .hld-submit { margin: 0; }
main .hld-form .form .row-submit .bt { font-size: 1.5em; color: var(--gray); }
main .hld-form .form .row-submit .bt a { color: var(--gray); display: inline-block; transition: all 0.3s ease; }
main .hld-form .form .row-submit .bt a:hover { color: var(--blue); text-decoration: underline; }
main .hld-form .form .hld-submit { display: flex; justify-content: flex-end; margin-top: 15px; }
main .hld-form .form .hld-submit input[type="submit"] { padding: 0 50px; line-height: 42px; background: var(--blue); font-size: 1.4em; font-weight: 600; color: var(--white); border: none; transition: all 0.3s ease; }
main .hld-form .form .hld-submit input[type="submit"].disabled { background: var(--gray); pointer-events: none; } 
main .hld-form .form .inp-checkbox { margin: 5px 0; display: flex; justify-content: flex-start; align-items: flex-start; }
main .hld-form .form .inp-checkbox label { position: relative; font-size: 1.4em !important; color: var(--black); cursor: pointer; padding-left: 30px; }
main .hld-form .form .inp-checkbox label a { color: var(--blue); text-decoration: underline; display: inline; transition: all 0.3s ease; }
main .hld-form .form .inp-checkbox label a:hover { color: var(--blue-light); text-decoration: underline; }
main .hld-form .form .inp-checkbox input[type=checkbox] { display: none; }
main .hld-form .form .inp-checkbox label:before { content: ''; display: block; width: 20px; height: 20px; position: absolute; left: 0; top: -3px; border: solid 1px var(--gray); cursor: pointer; }
main .hld-form .form .inp-checkbox input[type=checkbox]:checked + label:after { content: 'X'; font-weight: 800; font-size: 1.6em; color: var(--black); width: 10px; height: 10px; position: absolute; left: 4px; top: -1px; cursor: pointer; }
main .hld-form .form .inp-checkbox input[type=checkbox]:checked + label:before { border-color: var(--black); }
main .hld-form .form .inp-checkbox.error label { color: var(--red); }
main .hld-form .form .inp-checkbox.error label:before { border-color: var(--red); }
main .hld-form .form .inp-checkbox.text label { font-weight: 400; }
main .hld-form .form .row.checks { flex-direction: column; justify-content: flex-start; margin-bottom: 30px; }
main .hld-form .form .row.checks .list-group { width: 100%; }
main .hld-form .form .row.checks .inp-checkbox { min-width: 25%; margin: 10px 0; }
main .hld-form .form .row.checks .inp-checkbox label { font-weight: 400; font-size: 1.2em; }

main .hld-form .form .hld-inp .bt-view { position: absolute; right: 0; top: 23px; width: 37px; height: 37px; justify-content: center; align-items: center; display: none; }
main .hld-form .form .hld-inp .bt-view .close { display: none; }
main .hld-form .form .hld-inp .bt-view .open { display: block; }
main .hld-form .form .hld-inp.preenchido .bt-view { display: flex; }
main .hld-form .form .hld-inp.esconder .bt-view .close { display: block; }
main .hld-form .form .hld-inp.esconder .bt-view .open { display: none; }

main .hld-form .form .row .hld-inp .aux-hld { position: relative; }
main .hld-form .form .row .hld-inp .count { position: absolute; right: 1px; bottom: 1px; background: var(--gray-light); padding: 5px 10px; font-size: 1.2em; font-weight: 700; }
main .hld-form .form .row .hld-inp.error .count { background: var(--red); color: var(--white); }


main .hld-form .form .retorno { position: absolute; left: 0; top: 0; z-index: 2; width: 100%; height: 100%; text-align: center; display: none; background: var(--white); justify-content: center; align-items: center; flex-direction: column; font-size: 1.4em; font-weight:700; color: var(--red); padding: 10px; }
main .hld-form .form .msg .retorno { display: flex; }
main .hld-form.msg .form .retorno { display: flex; }

main .hld-form .form .row.group { border: solid 1px var(--gray); padding: 15px 15px 0 15px; margin-bottom: 5px; gap: 10px; align-items: unset; }
main .hld-form .form .row.group.cadastrado input { pointer-events: none; background: none; border-color: var(--gray-light); }
main .hld-form .form .row.group.editando input { pointer-events: all; border-color: var(--gray); }

main .hld-form .form .group-calc { border: solid 1px var(--gray); padding: 15px 15px; margin-bottom: 5px; gap: 10px; align-items: unset; margin-bottom: 15px }
main .hld-form .form .group-calc .titulo { display: block; font-size: 1.4em; line-height: 1.3em; font-weight: 700; text-transform: uppercase; margin-bottom: 5px; }
main .hld-form .form .group-calc .titulo span { font-size: 0.8em; color: var(--gray); }
main .hld-form .form .group-calc .resultado { display: flex; justify-content: space-between; align-items: center; font-size: 1.4em; line-height: 1.3em; font-weight: 700; height: 35px; padding: 0 5px; text-transform: uppercase; background: var(--gray-light); }
main .hld-form .form .group-calc .resultado .valor { background: none; border: none; text-align: right; }

main .hld-form .form .row .bts { display: flex; justify-content: flex-start; align-items: center; gap: 30px; }
main .hld-form .form .row .bts .bt { width: calc(50% - 15px); }
main .hld-form .form .row .bts .bt a { width: 100%; display: flex; justify-content: center; align-items: center; padding: 0 30px; line-height: 42px; background: var(--blue); font-size: 1.4em; white-space: nowrap; font-weight: 800; color: var(--white); transition: all 0.3s ease; }
main .hld-form .form .row .bts .bt a:hover { background: var(--blue-light); }
main .hld-form .form .row .bts .bt.selected a { background: var(--red); pointer-events: none; }

main .hld-form .form .row .acoes { display: flex; justify-content: center; align-items: flex-end; gap: 5px; margin-bottom: 20px; }
main .hld-form .form .row .acoes .bt .ico { width: 20px; height: 20px; mask-repeat: no-repeat; mask-size: 16px; mask-position: center; width: 20px; height: 20px; background: var(--red); transition: all 0.3s ease; }
main .hld-form .form .row .acoes .bt-editar .ico { mask-image: url('../images/ico_edit.svg'); }
main .hld-form .form .row .acoes .bt-excluir .ico { mask-image: url('../images/ico_trash.svg'); }
main .hld-form .form .row .acoes .bt-ok .ico { mask-image: url('../images/check.svg'); }
main .hld-form .form .row .acoes .bt:hover .ico { background: var(--red-light); }

main .hld-form .form .row.group .acoes { display: none; }
main .hld-form .form .row.group .acoes .bt-ok { display: none; }
main .hld-form .form .row.group.cadastrado .acoes { display: flex; }
main .hld-form .form .row.group.editando .acoes .bt-ok { display: block; }
main .hld-form .form .row.group.editando .acoes .bt-editar { display: none; }

main .hld-form .form .hld-bt { display: flex; justify-content: space-between; align-items: center; gap: 30px; }
main .hld-form .form .hld-bt .aux { display: flex; justify-content: space-between; align-items: center; gap: 30px; }
main .hld-form .form .hld-bt.mb { margin-bottom: 50px; }
main .hld-form .form .hld-bt .bt a { display: flex; justify-content: center; align-items: center; padding: 0 30px; line-height: 42px; font-size: 1.4em; white-space: nowrap; font-weight: 800; color: var(--white); transition: all 0.3s ease; }
main .hld-form .form .hld-bt .bt-prev a { background: var(--red); }
main .hld-form .form .hld-bt .bt-prev a:hover { background: var(--red-light); }
main .hld-form .form .hld-bt .bt-next a { background: var(--red); }
main .hld-form .form .hld-bt .bt-next a:hover { background: var(--red-light); }
main .hld-form .form .hld-bt .bt-add a { background: var(--blue); }
main .hld-form .form .hld-bt .bt-add a:hover { background: var(--blue-light); }
main .hld-form .form .hld-bt .bt-salvar a { background: var(--blue); }
main .hld-form .form .hld-bt .bt-salvar a:hover { background: var(--blue-light); }
main .hld-form .form .hld-bt .bt-dash a { background: var(--red); }
main .hld-form .form .hld-bt .bt-dash a:hover { background: var(--red-light); }
main .hld-form .form .hld-bt .bt-inicio a { background: var(--blue); }
main .hld-form .form .hld-bt .bt-inicio a:hover { background: var(--blue-light); }
main .hld-form .form .hld-bt .disabled { pointer-events: none; }
main .hld-form .form .hld-bt .disabled a { background: var(--gray); }

main .hld-form .form .aux-financeiro { display: none; }
main .hld-form .form .aux-financeiro.on { display: block; }
main .hld-form .form .aux-form { display: none; }

main .hld-form .bt-back { margin-bottom: 0; margin-top: 60px; display: flex; justify-content: flex-start; width: 100%; }

main .hld-form.interno { background: none; padding: 0; }
main .hld-form.interno .container { padding-left: 20px; }
main .hld-form.interno .form { margin: 30px 0 100px 0; }


main .msg #form-inscricao .row { display: none; }
main .msg p { display: none; }
main #form-inscricao .retorno { font-size: 2.4em; }
main #form-pre-inscricao.msg .row { display: none; }
main #form-pre-inscricao .retorno { font-size: 2.4em; }
main #form-pre-inscricao .retorno span { font-size: 0.625em; color: var(--black); line-height: 1.5; font-weight: 400; padding: 30px; }
main #form-pre-inscricao .retorno .bt { margin-top: 30px; }
main #form-pre-inscricao .retorno .bt a { display: flex; justify-content: center; align-items: center; padding: 0 30px; line-height: 42px; font-size: 0.7em; white-space: nowrap; font-weight: 800; color: var(--white); background: var(--blue); transition: all 0.3s ease; }
main #form-pre-inscricao .retorno .bt a:hover { background: var(--blue-light); }

main .chamada-contato { margin: 55px 0; }
main .chamada-contato h2 { font-size: 1.9em; font-weight: 800; width: 100%; margin-bottom: 0; }
main .chamada-contato p { font-size: 1.5em; line-height: 1.8em; width: 100%; }


main .chamada-404 { margin: 65px 0 100px 0; }
main .chamada-404 h2 { width: 100%; font-size: 3.8em; font-weight: 800; margin: 0; }
main .chamada-404 p { font-size: 1.5em; line-height: 1.8em; width: 100%; }
main .chamada-404 .bt { margin-top: 30px; }
main .chamada-404 .bt a { display: flex; justify-content: center; align-items: center; padding: 0 30px; line-height: 42px; font-size: 1.4em; white-space: nowrap; font-weight: 800; color: var(--white); background: var(--red); transition: all 0.3s ease; }
main .chamada-404 .bt a:hover { background: var(--red-light); }

main .contato { margin-bottom: 100px; background-image: url('../images/bg_left_04.png'); background-repeat: no-repeat; background-position: calc(50% - 710px) -110px; }
main .hld-form.contato { padding: 0; background: none; }
main .hld-form.contato .container { padding-left: 0; }
main .contato .container { flex-direction: row; align-items: unset; gap: 30px; }
main .contato .infos { background: linear-gradient(180deg, #ededee, #fff) no-repeat; padding: 30px; display: flex; flex-direction: column; gap: 40px; width: 32%; }
main .contato .infos .item .ico { mask-repeat: no-repeat; mask-size: 40px; mask-position: center; width: 50px; height: 50px; background: var(--red); margin-bottom: 10px; }
main .contato .infos .item p { font-size: 1.3em; }
main .contato .form br { display: none; }
main .contato .form p { font-size: 1em; }
main .contato .form label { text-transform: uppercase; }
main .contato .form .wpcf7-form-control-wrap { display: block; }
main .contato .form .wpcf7-not-valid-tip { color: var(--red); font-weight:700; position: absolute; left:0; bottom: -20px; }
main .contato .form .wpcf7-response-output { border: none; margin: 20px 0 0 0; padding: 0; font-size: 1.4em; color: var(--red); font-weight: 700; position: absolute; }
main .contato .form .sent .wpcf7-response-output { color: var(--blue); }
main .contato .form .wpcf7-spinner { margin: 9px 24px 0 24px; position: absolute; }

main .regulamento { margin: 85px 0;  }
main .regulamento h2 { font-size: 2.1em; font-weight: 800; width: 100%; margin-top: 0; }
main .regulamento .box { width: 100%; display: flex; gap: 15px; flex-direction: column; }
main .regulamento .box .ico { width: 95px; height: 95px; min-width: 95px; background: linear-gradient(180deg, #fff, #ededee); border-radius: 50%; display: flex; justify-content: center; align-items: center; }
main .regulamento .box .ico img { width: 50px; }
main .regulamento .box .info { display: flex; justify-content: space-between; align-items: center; gap: 30px; }
main .regulamento .box .info .texto { font-size: 1.5em; line-height: 1.8em; }
main .regulamento .box .info .bt a { padding: 0 50px; line-height: 42px; background: var(--blue); font-size: 1.4em; white-space: nowrap; font-weight: 600; color: var(--white); }

main .chamada-logado { margin-top: 65px; }
main .chamada-logado.mb { margin-bottom: 100px; }
main .chamada-logado .creditos { width: 100%; font-size: 1.9em; font-weight: 800; margin: 0 0 30px 0; padding-bottom: 30px; border-bottom: solid 1px var(--gray-light); }
main .chamada-logado .creditos span { color: var(--red); }
main .chamada-logado .infos { display: flex; justify-content: space-between; align-items: center; gap: 30px; width: 100%; }
main .chamada-logado .infos .txt { flex: 1; font-size: 1.5em; line-height: 1.8em; }
main .chamada-logado .infos .bt a { padding: 0 30px; line-height: 42px; background: var(--red-medium); font-size: 1.4em; white-space: nowrap; font-weight: 800; color: var(--white); transition: all 0.3s ease; }
main .chamada-logado .infos .bt a:hover { background: var(--red-light); }

main .etapas-logado { margin: 50px 0; }
main .etapas-logado .container { gap: 50px; }
main .etapas-logado .etapa { width: 100%; }
main .etapas-logado .etapa .titulo { display: flex; justify-content: space-between; align-items: center; gap: 30px; width: 100%; padding-bottom: 30px;  border-bottom: solid 1px var(--gray-light); }
main .etapas-logado .etapa .titulo .ico { width: 95px; height: 95px; min-width: 95px; background: linear-gradient(180deg, #fff, #ededee); border-radius: 50%; display: flex; justify-content: center; align-items: center; }
main .etapas-logado .etapa .titulo .ico img { width: 40px; }
main .etapas-logado .etapa .titulo .txt { flex: 1; font-size: 1.9em; line-height: 1.6em; font-weight: 800; display: flex; flex-direction: column; }
main .etapas-logado .etapa .titulo .txt .infos { font-size: 0.7894em; font-weight: 400; }
main .etapas-logado .etapa .itens { padding-top: 30px; }
main .etapas-logado .etapa .itens .item { padding: 20px; background: var(--gray-light); font-size: 1.6em; font-weight: 800; margin-bottom: 5px; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 15px; position: relative; }
main .etapas-logado .etapa .itens .item span { font-size: 0.8em; font-weight: 400; }
main .etapas-logado .etapa .itens .item .aux { display: flex; justify-content: flex-start; align-items: center; gap: 15px; }
main .etapas-logado .etapa .itens .item .check a { display: block; width: 20px; height: 20px; background: var(--white); position: relative; }
main .etapas-logado .etapa .itens .item.selected { background: var(--gray); color: var(--white); }
main .etapas-logado .etapa .itens .item.selected .check a:before { content: 'X'; font-weight: 800; font-size: 1.2em; color: var(--black); width: 10px; height: 10px; position: absolute; left: 3px; top: -1px; cursor: pointer; }
main .etapas-logado .etapa .itens .item .bts { display: flex; justify-content: flex-end; align-items: center; gap: 15px; }
main .etapas-logado .etapa .itens .item .bt a { padding: 0 15px; line-height: 32px; background: var(--blue); font-size: 0.8em; white-space: nowrap; font-weight: 800; color: var(--white); transition: all 0.3s ease; }
main .etapas-logado .etapa .itens .item .bt a:hover { background: var(--blue-light); }
main .etapas-logado .etapa .itens .item .bt.vermelho a { background: var(--red); }
main .etapas-logado .etapa .itens .item .bt.vermelho a:hover { background: var(--red-light); }
main .etapas-logado .etapa .itens .item .motivo { width: 100%; font-size: 0.8em; font-weight: 400; background: var(--gray); color: var(--white); padding: 10px; line-height: 1.6; }
main .etapas-logado .etapa .itens .item .confirmacao { position: absolute; left: 0; top: 0; width: 100%; height: 100%; gap: 15px; display: flex; justify-content: space-between; align-items: center; padding: 0 20px; background: var(--gray-light); opacity: 0; pointer-events: none; transition: all 0.5s ease; }
main .etapas-logado .etapa .itens .item .confirmacao.on { opacity: 1; pointer-events: all; }
main .etapas-logado .etapa .itens .hld-bt { width: 100%; display: flex; justify-content: flex-end; align-items: center; margin-top: 30px; }
main .etapas-logado .etapa .itens .hld-bt .bt a { padding: 0 30px; line-height: 42px; background: var(--blue); font-size: 1.4em; white-space: nowrap; font-weight: 800; color: var(--white); transition: all 0.3s ease; }
main .etapas-logado .etapa .itens .hld-bt .bt a:hover { background: var(--blue-light); }
/*main .etapas-logado .etapa .itens .hld-bt.off { display: none; }*/
main .etapas-logado .etapa .itens .hld-bt.off { pointer-events: none; }
main .etapas-logado .etapa .itens .hld-bt.off .bt a { background: var(--gray); }

main .step { display: none; }
main .step.sucesso { text-align: center; background: var(--gray-light); padding: 50px 0; }
main .step.sucesso .hld-bt { justify-content: center; }
main .step.sucesso .msg-sucesso { display: none; }
main .step.sucesso .msg-sucesso.on { display: block; }
main .step.on { display: block; }

footer { background: var(--black); padding: 50px 0 16px 0; position: relative; z-index: 2; }
footer .chamada { width: 100%; font-size: 2.1em; color: var(--white); text-transform: uppercase; }
footer .logos { margin-top: 30px; width: 100%; display: flex; justify-content: center; gap: 30px; align-items: center; padding: 0 30px 15px 30px; border-bottom: solid 1px var(--white); }
footer .copyright { width: 100%; display: flex; justify-content: space-between; align-items: center; padding: 30px 0; }
footer .copyright .txt { font-size: 1.2em; color: var(--white-alpha-light); }
footer .copyright .link a { font-size: 1.2em; color: var(--white-alpha-light); transition: all 0.3s ease; }
footer .copyright .link a:hover { text-decoration: underline; color: var(--white); }
footer .copyright .bt-topo a { display: flex; justify-content: center; align-items: center; gap: 10px; font-size: 1.2em; color: var(--white-alpha-light); transition: all 0.3s ease; }
footer .copyright .bt-topo a .ico { mask-image: url('../images/ico_arrow_circle_top.svg'); mask-repeat: no-repeat; mask-size: 28px; mask-position: center; width: 28px; height: 28px; background: var(--white-alpha-light); transition: all 0.3s ease; } 
footer .copyright .bt-topo a:hover { color: var(--white); }
footer .copyright .bt-topo a:hover .ico { background: var(--white); }


/* MEDIA QUERY */
@media (min-width: 1366px) {
  /* XXL */
}

@media (max-width: 1365.98px) {
  /* XL */
}

@media (max-width: 1239.98px) {
  /* LG */
  nav .menu a { padding: 8px 10px; margin: 0 5px;  }
  nav .actions a { margin: 0; }
  nav .container { padding: 20px; }

  main .highlight .img { width: calc(60% + 80px); margin-right: -80px; }
  main .news-slider .nav-slider { width: calc(100% + 40px); left: -20px; }

  footer .copyright { padding-bottom: 70px; }
  footer .copyright .bt-topo { position: absolute; left: 50%; transform: translate(0,-50%); bottom: 0; }
}

@media (max-width: 991.98px) {
  /* MD */
  .container { padding: 0 20px; };

  nav .container { padding: 10px 20px; }
  nav .logo { z-index: 11; }
  nav .logo img { width: 40px; }
  nav .bt-menu { display: block; }
  nav .aux-mobile { position: fixed; top: -100dvh; left: 0; width: 100%; height: 100dvh; overflow-y: auto; background: var(--white); flex-direction: column; justify-content: flex-start; padding-top: 100px; transition: all 0.5s ease; }
  nav .actions { order: 1; }
  nav .menu { order: 2; flex-direction: column; margin: 70px 0 50px 0; }
  nav .social { order: 3; }
  nav .social .links { gap: 10px; }
  nav .social .txt { display: block; }
  nav .social .linkedin { mask-size: 30px; width: 45px; height: 45px; } 
  nav .social .facebook { mask-size: 30px; width: 45px; height: 45px; } 
  nav .social .instagram { mask-size: 32px; width: 45px; height: 45px; } 
  nav .social .youtube { mask-size: 40px; width: 45px; height: 45px; } 
  nav .menu .bt { width: 100%; }
  nav .menu .bt a .arrow-down { display: none; }
  nav .menu .bt a.principal { color: var(--gold); }
  nav .menu .bt a:hover { color: var(--gold); }
  nav .menu .bt a br { display: none; }

  nav.open .aux-mobile { top: 0; }

  main .topo { padding-top: 60px; }
  main .topo .aux { height: 160px; align-items: flex-start; padding-top: 20px; }
  main .topo .aux h1 { font-size: 2.4em; }
  main .topo .aux .bts { width: 100%; align-items: flex-start; justify-content: flex-start; flex-direction: row; }

  main .highlight { padding-top: 0; margin-top: 0; }
  main .highlight .container { flex-direction: column-reverse; gap: 30px; }
  main .highlight .infos { padding-left: 0; }
  main .highlight .infos .bt { margin-top: 30px; }
  main .highlight .img { width: 100%; margin-top: 85px; }

  main .news-slider { padding-top: 0; }
  main .news-slider .container.smaller { padding: 0; }
  main .news-slider .slider { margin: 0 -30px; }
  main .news-slider .slider .slick-track { padding-right: 30px; }
  main .news-slider .nav-slider { left: 0; width: 100%; }

  main .depoimentos .slider .slide { flex-direction: column; }
  main .depoimentos .slider .slide .txt { padding-right: 0; }

  main .cta .holder a { padding: 0 20px; }

  main .sobre .infos { display: flex; justify-content: flex-start; align-items: center; gap: 30px; } */
  main .sobre .infos .img { width: 40%; }
  main .sobre .infos .aux { width: 60%; }

  main .cta-inscricao h2 { padding-left: 0; }
  main .cta-inscricao h2 .triangulo { left: -20px; }
  main .cta-inscricao .boxes { width: 100%; margin-left: 0; display: flex; gap: 30px; }

  main .categorias .menu { position: relative; z-index: 2; }
  main .categorias .menu .select { display: block; cursor: pointer; }
  main .categorias .menu .select * { pointer-events: none; }
  main .categorias .menu .categorias-nav { position: absolute; left: 0; top: 60px; height: 180px; overflow-y: auto; flex-wrap: unset; flex-direction: column; background: var(--gray-light); display: none; }
  main .categorias .menu .categorias-nav .categoria { width: 100%; min-height: 60px; display: flex; justify-content: center; align-items: center; flex: unset; -webkit-box-flex: unset; margin: 0; }
  main .categorias .conteudo { justify-content: center; }
  main .categorias .conteudo .box { width: 100%; max-width: 550px; margin-bottom: 50px; }
  main .categorias .menu.on .categorias-nav { display: flex; }

  main .jurados .slider { width: calc(100% + 40px); margin: 0 -20px 50px -20px; }
  main .jurados .nav-slider { display: none; }
  main .lista-jurados .jurado { margin-bottom: 50px; flex-direction: column; }
  main .lista-jurados .jurado:nth-child(even) { flex-direction: column; }

  main .jurados h2 { padding-left: 0; font-size: 2.4em; }

  main .noticias.grid .ajax-load-more-wrap { width: 100%; }
  main .noticias.grid .noticia { width: 100%; margin-bottom: 0; }
  main .noticias.grid .alm-listing { flex-direction: column; width: 100%; } 
  main .noticias.grid .alm-listing .noticia { width: 100%; margin-bottom: 0; }

  main .hld-form .container { padding-left: 20px; }

  main .hld-form .form .row .acoes { gap: 20px; }

  main .hld-form.contato .container { padding-left: 20px; }
  main .contato .container { flex-direction: column-reverse; }
  main .contato .infos { gap: 20px; width: 100%; }
  main .contato .infos .item { text-align: center; }
  main .contato .infos .item .ico { margin: 0 auto; }

  main .chamada-logado .infos { flex-direction: column; }
  main .etapas-logado .etapa .titulo { flex-direction: column; }
  main .hld-form .form .row.group { padding: 15px; }

  footer .chamada { text-align: center; }
  footer .logos { flex-wrap: wrap; justify-content: center; }
  footer .logos .logo { margin: 10px; }
  footer .copyright { flex-direction: column; gap: 30px; padding-bottom: 15px; }
  footer .copyright .bt-topo { position: relative; left: auto; transform: none; }
}

@media (max-width: 767.98px) {
  /* XS */
  main .banners .container { flex-direction: column; }
  main .banners .bn { width: 100%; max-width: 286px; }

  main .regulamento .box .info { flex-direction: column; }

  main .cta-inscricao .boxes { flex-direction: column; }
  main .cta-inscricao .boxes .box a .infos { justify-content: space-between; }

  main .cta .holder a { padding: 30px; flex-direction: column; gap: 30px; height: auto; }

  main .lista-jurados .jurado .info { padding: 0; }

  main .sobre h1 { padding-left: 0; font-size: 3em; margin-bottom: 30px; }
  main .sobre .infos { flex-direction: column; }
  main .sobre .infos .img { width: 100%; }
  main .sobre .infos .aux { width: 100%; }
  main .sobre .premiacao .infos .img { width: 100%; }
  main .sobre .premiacao .infos .aux { width: 100%; }

  main .hld-form .cta .holder a { padding: 30px; }
  main .hld-form .form .row { flex-direction: column; gap: 30px; margin-bottom: 30px; }
  main .hld-form .form .row .hld-inp { flex: unset; width: 100%; margin: 0; }
  main .hld-form .form .row .hld-inp.p { flex: unset; width: 100%; margin: 0; }
  main .hld-form .form .row-submit { flex-direction: row; }

  main .hld-form .form .hld-bt { gap: 10px; }
  main .hld-form .form .hld-bt .bt a { padding: 0 10px; font-size:1.1em; }
}

@media (max-width: 575.98px) {
  /* XXS */
  main .noticias .noticia a { flex-direction: column; }
  main .noticias .noticia .img { width: 100%; }

  main .topo .aux { padding-top: 40px; height: 200px; }
  main .topo .aux .bts { top: calc(50% + 20px); }
  main .topo .aux .bt a { width: 130px; }
}