@media screen and (max-width: 1200px) { .wrapper { width: auto; padding: 0 20px; }
  #form-contacts .wrapper { padding: 0; }
  footer .top .wrapper { padding: 30px 20px; }
  footer .top .btn-jumptop { right: 20px; }
  footer .bot .wrapper { padding: 17px 20px; flex-wrap: wrap; justify-content: center; }
  #secbanner .contents h1, #secbanner .contents h1 * { font-size: 40px; line-height: 45px; } }
@media screen and (max-width: 1024px) { h2, h2 * { font-size: 35px; line-height: 40px; }
  .general-detail h1, .general-detail h1 * { font-size: 40px; line-height: 45px; }
  header .right nav li a { font-size: 16px; }
  #home-banner .animation-banner { width: 120%; }
  #home-banner .animation-banner .camada-1, #home-banner .animation-banner .camada-2, #home-banner .animation-banner .camada-3, #home-banner .animation-banner .camada-4, #home-banner .animation-banner .camada-5 { left: 50%; margin-left: -50%; width: 100%; height: 100%; }
  .grid-c .grid-item a .text { padding: 20px; }
  .grid-c .grid-item a .name { font-size: 20px; line-height: 23px; }
  .grid-c .grid-item a .role { font-size: 16px; line-height: 20px; } }
@media screen and (max-width: 960px) { h1, h1 * { font-size: 50px; line-height: 55px; }
  #secbanner .contents h1, #secbanner .contents h1 * { font-size: 30px; line-height: 35px; }
  .general-detail h1, .general-detail h1 * { font-size: 35px; line-height: 40px; }
  .btn { min-width: 0; width: 100%; max-width: 240px; }
  input[type="submit"] { min-width: 240px; }
  header nav { display: none; }
  header .right { margin-right: 50px; }
  #mobile-menu-switch { display: flex !important; }
  #mobile-menu { display: block !important; }
  #home-presentation .wrapper .left { width: 30%; }
  #home-presentation .wrapper .mid { width: 45%; }
  #home-presentation .wrapper .right { width: 25%; }
  #home-presentation .wrapper .right .sidetext, #home-presentation .wrapper .right .sidetext * { font-size: 12px; line-height: 19px; }
  #home-presentation .wrapper .mid p, #home-presentation .wrapper .mid p * { font-size: 16px; line-height: 21px; }
  #home-activities .wrapper { flex-direction: column-reverse; padding-bottom: 90px; position: relative; }
  #home-activities .wrapper .left { width: 100%; padding-right: 0; }
  #home-activities .wrapper .right { width: 100%; padding-left: 0; border: none; }
  #home-activities .wrapper .right .box-knowmore { padding-top: 0; position: absolute; bottom: 0; width: calc(100% - 40px); }
  #home-activities .wrapper .right .box-knowmore .btn { width: fit-content; min-width: 200px; }
  .grid-a { grid-template-columns: repeat(2, 1fr); }
  .grid-c .grid-item a { flex-direction: column; }
  .grid-c .grid-item a .right { padding-top: 0; position: relative; margin-top: -35px; }
  .grid-c .grid-item a .contents { border-radius: 20px; }
  .grid-c .grid-item a .contents:before { display: none; } }
@media screen and (max-width: 768px) { h1, h1 * { font-size: 40px; line-height: 45px; }
  .general-detail h1, .general-detail h1 * { font-size: 30px; line-height: 35px; }
  h2.title-a:before, h2.title-a:after { display: none; }
  h2.title-a { white-space: normal; }
  .detail #secbanner { padding-top: 20%; }
  #secbanner .contents h1, #secbanner .contents h1 * { font-size: 25px; line-height: 30px; }
  #secbanner .contents .right * { font-size: 16px; }
  footer .top .left { width: 40%; }
  footer .top .left a { width: 100%; }
  footer .top .left img { width: 100%; height: auto; }
  #home-presentation .wrapper { flex-wrap: wrap; }
  #home-presentation .wrapper .left { margin-bottom: 30px; width: 100%; padding-right: 0; text-align: center; }
  #home-presentation .wrapper .left img { max-width: 50%; }
  #home-presentation .wrapper .mid { width: 70%; }
  #home-presentation .wrapper .right { width: 30%; }
  #home-publications .wrapper { flex-direction: column; }
  #home-publications .wrapper .left { width: 100%; padding-right: 0; order: 2; }
  #home-publications .wrapper .left h2, #home-publications .wrapper .left h2 * { margin-bottom: 10px; }
  #home-publications .wrapper .right { width: 100%; order: 1; margin-bottom: 30px; }
  #home-activities .wrapper .left .grid a { flex-direction: column; align-items: center; }
  #home-activities .wrapper .left .grid a .image { width: 100%; height: 0; padding-bottom: 100%; }
  #home-activities .wrapper .left .grid a .contents { padding: 20px; }
  #home-activities .wrapper .left .grid a .knowmore { font-size: 16px; }
  #home-activities .wrapper .left .grid a .knowmore:after { background-position: -240px -20px; background-size: 400px; width: 20px; height: 20px; }
  .grid-c { grid-template-columns: repeat(1, 1fr); }
  .grid-c .grid-item a { flex-direction: row; }
  .grid-c .grid-item a .right { padding-top: 10px; position: relative; margin-top: 0px; }
  .grid-c .grid-item a .contents { border-radius: 0 20px 20px 0; }
  .grid-c .grid-item a .contents:before { display: block; }
  #positions-container .grid { grid-template-columns: repeat(1, 1fr); }
  #contacts-container form .top { flex-direction: column; }
  #contacts-container form .top .left { padding-right: 0; width: 100%; display: flex; flex-wrap: wrap; }
  #contacts-container form .top .left .box-name { width: 50%; padding-right: 15px; }
  #contacts-container form .top .left .box-email { width: 50%; padding-left: 15px; }
  #contacts-container form .top .left .box-subject { width: 100%; }
  #contacts-container form .top .right { padding-left: 0; width: 100%; padding-top: 30px; } }
@media screen and (max-width: 600px) { .general-section { padding: 80px 0; }
  .detail #secbanner { padding-top: 30%; }
  .detail #secbanner .secbanner-animation { height: 300px; }
  #secbanner .contents { flex-direction: column; }
  #secbanner .contents .left { width: 100%; padding-right: 0; }
  #secbanner .contents .right { width: 100%; padding-left: 0; padding-top: 30px; margin-top: 30px; border: none; border-top: dotted 1px #fff; }
  footer .top .wrapper { flex-direction: column; }
  footer .top .left { width: 50%; margin-bottom: 30px; }
  footer .top .right .box-social { flex-direction: column; align-items: center; }
  footer .top .right .box-social ul { margin-left: 0; margin-top: 10px; }
  #home-presentation { padding-top: 50px; }
  #home-presentation * { text-align: center; }
  #home-presentation .wrapper .mid { width: 100%; padding: 0 0 20px 0; margin-bottom: 20px; border: none; border-bottom: dotted 1px #fff; }
  #home-presentation .wrapper .mid h2 { text-align: center; }
  #home-presentation .wrapper .right { width: 100%; padding: 0; justify-content: center; }
  .general-presentation .description, .general-detail .description { -webkit-column-count: 1; -moz-column-count: 1; column-count: 1; }
  .grid-a { grid-template-columns: repeat(1, 1fr); }
  #contacts-container form .top .left .box-name { width: 100%; padding-right: 0; }
  #contacts-container form .top .left .box-email { width: 100%; padding-left: 0; }
  #contacts-container form .top .left .box-subject { width: 100%; }
  #contacts-container form .bot .mandatory { width: 100%; justify-content: center; } }
@media screen and (max-width: 480px) { *, #positions-container .grid .grid-item a .desc { font-size: 16px; }
  .general-detail h1, .general-detail h1 * { font-size: 25px; line-height: 30px; }
  header .left a { height: 40px; }
  header .left a:before { background-size: contain; background-position: 0 center; }
  footer .top .left { align-self: center; }
  footer .top .mid p { text-align: center; }
  footer .top .mid { justify-content: center; }
  #home-activities .wrapper .left .grid { grid-template-columns: repeat(1, 1fr); }
  #home-activities .wrapper .left .grid a { flex-direction: row; }
  #home-activities .wrapper .left .grid a .image { width: 50%; padding-bottom: 50%; }
  #home-activities .wrapper .right .box-knowmore { text-align: center; }
  .grid-c .grid-item a { flex-direction: column; }
  .grid-c .grid-item a .right { padding-top: 0; position: relative; margin-top: -35px; }
  .grid-c .grid-item a .contents { border-radius: 20px; }
  .grid-c .grid-item a .contents:before { display: none; } }
@media screen and (max-width: 380px) { .detail #secbanner { padding-top: 40%; }
  .detail #secbanner .secbanner-animation { height: 250px; }
  #home-activities .wrapper .left .grid a { flex-direction: column; }
  #home-activities .wrapper .left .grid a .image { width: 100%; padding-bottom: 100%; }
  .grid-c .grid-item a { align-items: center; }
  .grid-c .grid-item a .right { margin-top: -45px; }
  .grid-c .grid-item a .contents { flex-direction: column; height: auto; padding-top: 50px; }
  .grid-c .grid-item a .box-knowmore { width: 100%; height: 50px; border-left: none; border-top: solid 1px #EEEAE8; border-radius: 0 0 20px 20px; }
  .grid-c .grid-item a .box-knowmore .in2 { bottom: -50px; top: auto; margin-left: auto; }
  .grid-c .grid-item a:hover .box-knowmore .in2 { bottom: 0px; margin-left: auto; border-radius: 0 0 20px 20px; } }
