/* CLEAN TAGS */

html, body {height:100%; font-family: 'Roboto', sans-serif;}
body, h1, h2, h3, h4, h5, h6, ul {padding:0; margin:0;}
body {overflow-x:hidden;}
a {text-decoration:none; color:inherit;}
img {border:none;}
textarea {font-family:inherit;}
/*header::after, section::after, footer::after, .container::after {content:""; display:block; clear:both;}*/

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}


/* ESTRUTURA LAYOUT */

.container {position:relative; width:1200px; margin:0 auto;}

@media only screen and (max-width:1250px) {
	.container {width:92%; margin: 0 auto;}
}
@media only screen and (max-width:425px) {
	.container {width:90%; margin: 0 auto;}
}

header {}

  header .container {display:flex; align-items:center; /*justify-content:flex-end;*/ height:126px;}
  header .container div {}

  #logo {margin-right:auto;}
	#logo img {width:230px; height: ;}

  #lang {margin:0 20px;}
  
  #social {/*margin-right:20px;*/ display:flex; }
    #social a {margin-right:3px; height:32px;}
    #social img {width:32px; height: 32px; fill:#487633; webkit-transition:all 100ms ease-in-out; -moz-transition:all 100ms ease-in-out; -ms-transition:all 100ms ease-in-out; -o-transition:all 100ms ease-in-out; transition:all 100ms ease-in-out;}
    #social img:hover {fill:#C8AA67; webkit-transition:all 100ms ease-in-out; -moz-transition:all 100ms ease-in-out; -ms-transition:all 100ms ease-in-out; -o-transition:all 100ms ease-in-out; transition:all 100ms ease-in-out;}
    #social a.special svg {fill:#00A840;}
    #social a.special svg:hover {fill:#00D641;}
    #social a:last-child {margin-right:0;}

  #busca {
    width: 275px;
    height: 42px;
    background:#EEE;     
    border-radius:21px; 
    -webkit-border-radius:21px; 
    position: relative;    
  }
    #busca form {
      width: 100%;
      height: 42px;
      display: flex;
      justify-content: flex-start;
      align-items: center;
    }
    #busca input[type=text] {
      border:none; 
      background:none; 
      width:85%;
      padding-left: 20px;
      outline: none;       
    }
    #busca input[type=submit] {background:url(../svg/busca.svg) no-repeat; background-size:contain; height:25px; border:none; width:10%;}

@media only screen and (max-width:910px) {
	  header .container {flex-direction: column; flex-wrap: wrap; align-items:flex-end; justify-content: center;}
		#logo {height:126px; display: flex; align-items: center;}
		#social {margin-right:50px;; margin-bottom:12px;}
    #lang {position: absolute; right:0; margin:0; top:28px;}
    #busca {width: 295px;}
}
@media only screen and (max-width:560px) {
	  header .container {flex-direction:row; flex-wrap:wrap; align-items:center; justify-content:space-around; height:215px; padding:10px 0;}
		#logo {height:auto; width:100%; margin:0 auto; justify-content:center;}
		#social {margin-right:0; margin-bottom:0; margin-left:auto;}
    #lang {margin-right: auto; position: relative; top:0; margin-left: 16px;}
}
@media only screen and (max-width:330px) {
  #lang img {width:26px}
}


/* MENU DESKTOP - OFF */
#menu input, #menu label {display: none;}

@media only screen and (min-width:1024px) {

  #menu {border-top:2px solid #7DC5A1; height:65px;}
    #menu .container {display:flex; overflow:visible;}
      #menu .container div {background:#FFF; position:relative; padding:0 48px; cursor:pointer; height:63px; display:flex; align-items:center; justify-content:center; flex-direction:column; z-index: 99;}
        #menu .container div::before {content:""; position: absolute; width: 100%; height:170px; z-index:-10; top:0; background-size:cover; opacity:0; visibility: hidden;}
        #menu .container div * {z-index:1;}
        #menu .container div h2 {text-transform:uppercase; color:#333; text-align:center; font-size:18px; font-weight:700; width:100%; white-space: nowrap;}
        #menu .container div h2::before {content:""; display:block; /*background: url(../svg/ico-iba.svg) center no-repeat;*/ background-size: contain; width:50px; height:0; margin:0 auto; position: relative; top:-10px;}
        #menu .container div span {display:block; text-transform:uppercase; color:#487633; text-align:center; font-size:12px; font-weight:700;}
        #menu .container div nav {position:absolute; top:0; left:100%; width:0; display:flex; flex-direction:column; box-sizing:border-box; background:#487633; z-index:1; overflow: hidden; padding:0; min-height: 196px;padding-bottom: 20px;}
          #menu .container div nav a {margin:0 90px 0 30px; line-height:1.6; color:#FFF; font-size:15px; font-weight:300; white-space:nowrap !important;}
          #menu .container div nav a:first-child {margin-top:25px;}

  /* MENU DESKTOP - TRANSITIONS */
  #menu .container div,
  #menu .container div::before,
  #menu .container div h2::before, 
  #menu .container div nav {webkit-transition:all 100ms ease-out; -moz-transition:all 100ms ease-out; -ms-transition:all 100ms ease-out; -o-transition:all 100ms ease-out; transition:all 100ms ease-out;}

  #menu .container div:hover,
  #menu .container div:hover::before,
  #menu .container div nav {webkit-transition:all 200ms ease-in; -moz-transition:all 200ms ease-in; -ms-transition:all 200ms ease-in; -o-transition:all 200ms ease-in; transition:all 200ms ease-in;}

  /* MENU DESKTOP - HOVERS */
  #menu .container div, #menu .container div::before {}
  #menu .container div, #menu .container div::before {-webkit-transition-delay:100ms; transition-delay:100ms;}
  #menu .container div:hover {height:196px; margin-top:63px;}
    #menu .container div:hover::before {left:0; top:-170px; height:170px; opacity:1; z-index:0; visibility:visible; background-position: center;}
      #menu .container div:hover h2::before {height:47px; margin-bottom:10px; top:0;}
      #menu .container div:hover nav {-webkit-transition-delay:200ms; transition-delay:200ms; width:232px;}

  #menu .container div.ativo {background:rgba(0,100,0,.08) !important;}
  #menu .container div.ativo:hover {background:rgba(255,255,255,1) !important;}

}
/* MENU DESKTOP - RESPONSIVO */
@media only screen and (max-width:1595px) {
  #menu .container div:last-child nav {right:100%; left: inherit !important;}
}
@media only screen and (max-width:1155px) {
  .grupo_4 nav {right:100%; left: inherit !important;}
    #menu .container div {padding:0 40px;}
}

/* MENU MOBILE */
@media only screen and (max-width:1023px) {
  #menu {background:#003F14; padding-top:45px; position: relative;}
    #menu .container {max-width: none !important; width:100% !important; height:0; overflow: hidden;}
    #menu .container div * {z-index: 10;}
      #menu .container div {display:flex; flex-direction: column; padding:0;}
        #menu .container div h2 {text-align:center; background:#245A23; color:#FFF; font-size:20px; padding:5px 0;}
        #menu .container div span {display:none;}
        #menu .container div nav {display:flex; flex-direction:column; background:#487633;}
          #menu .container div nav a {color:#FFF; text-align: center; border-bottom:1px solid rgba(0,63,20,.25); padding:10px 0;}
 
    #menu input {}
    #menu label {display:block;}

    /* HAMBURGER */
    #menu label {position:absolute; top:20px; left:50%; margin-left: 15px; z-index:11;}
    #menu label, #menu label::after, #menu label::before {background:rgba(255,255,255,1); width:28px; height:2px; -webkit-transition:all 200ms ease-in; -moz-transition:all 200ms ease-in; -ms-transition:all 200ms ease-in; -o-transition:all 200ms ease-in; transition:all 200ms ease-in;} 
    #menu label::after, #menu label::before {content:""; position:absolute; display:block;}
    #menu label::before {top:-7px;}
    #menu label::after  {top:7px;}

    /* EXTRA - TEXTO "MENU" */
    #menu label span {position:absolute; display:block; top:-7px; left:-50px; text-transform:uppercase; color:rgba(255,255,255,.5); font-size:14px; height:40px; width:70px; text-align:left; margin-top:0 !important;}
    #menu label span::before {display:block; content:""; background:#FDC61C; position:absolute; right:-20px; top:-10px; width:110px; height:0; -webkit-transition:all 200ms ease-out; -moz-transition:all 200ms ease-out; -ms-transition:all 200ms ease-out; -o-transition:all 200ms ease-out; transition:all 200ms ease-out; z-index:-1; -webkit-transition-delay:200ms; transition-delay:200ms;}

    /* X - FECHAR */
    #menu input:checked + label {height:0;}
    #menu input:checked + label::before {top:0; -moz-transform:rotate(45deg); -webkit-transform:rotate(45deg); -o-transform:rotate(45deg); -ms-transform:rotate(45deg); transform:rotate(45deg); -webkit-transition:all 200ms ease-in; -moz-transition:all 200ms ease-in; -ms-transition:all 200ms ease-in; -o-transition:all 200ms ease-in; transition:all 200ms ease-in;}
    #menu input:checked + label::after  {top:0; -moz-transform:rotate(-45deg); -webkit-transform:rotate(-45deg); -o-transform:rotate(-45deg); -ms-transform:rotate(-45deg); transform:rotate(-45deg); -webkit-transition:all 200ms ease-in; -moz-transition:all 200ms ease-in; -ms-transition:all 200ms ease-in; -o-transition:all 200ms ease-in; transition:all 200ms ease-in;}

    /* AÇÃO */
    #menu .container {-webkit-transition:all 400ms ease-in; -moz-transition:all 400ms ease-in; -ms-transition:all 400ms ease-in; -o-transition:all 400ms ease-in; transition:all 400ms ease-in;}
    #menu input:checked + label + div {height:1130px; -webkit-transition:all 200ms ease-in; -moz-transition:all 400ms ease-in; -ms-transition:all 400ms ease-in; -o-transition:all 400ms ease-in; transition:all 400ms ease-in;}
    #menu input:checked {display:block; position:absolute; width:0; height:0; overflow:hidden;}
    #menu input:checked::after {display:block; position:fixed; background:rgba(0,0,0,0); width:100%; height:100%; content:""; top:0; left:0; z-index:9;}
  

}

footer {background:#313131;}

#sitemap {display:flex; padding:40px 0 55px 0; justify-content:space-between;}
#sitemap div {display:flex; flex-direction:column;}
  #sitemap strong {color:#FFF; margin-bottom: 12px;}
  #sitemap a {color:rgba(255,255,255,0.6); font-size:16px; line-height: 1.6; font-weight: 100;}
  #sitemap a:hover {color:rgba(255,255,255,1);}
  #sitemap address {color:rgba(255,255,255,0.6); background:url(../svg/pin.svg) no-repeat; padding-left:30px; font-style:normal; font-weight:100; margin-bottom: 20px;}

@media only screen and (max-width:1024px) {
    .lgbt-iframe.fancybox-content {
    width: 100% !important;
}
	#sitemap {display:flex; padding:20px 0 35px 0;}
		#sitemap div:not(:last-child) {display:none;}
		#sitemap div:last-child {flex-direction:row; flex-wrap: wrap; width: 100%; justify-content: space-around;}
		#sitemap div:last-child strong {width: 100%; text-align: center; margin-bottom: 20px;}
			#sitemap address {width: 240px; margin:10px 20px;}
}

#end {background:#487633;}
  #end .container {
    display:flex; 
    align-items:center; 
    justify-content:space-between; 
    height:auto; 
    font-weight:300;
    padding: 20px 0;
  }

#end .container div {width:auto; color:#FFF;}
  #end .container div:nth-child(2) {text-align:left;}
    #end-social {display:flex; flex-direction:row; justify-content:flex-end;}

    #end-social img {
      width:32px; 
      height: 32px; 
      margin-right:5px; 
      webkit-transition:all 100ms ease-in-out; 
      -moz-transition:all 100ms ease-in-out; 
      -ms-transition:all 100ms ease-in-out; 
      -o-transition:all 100ms ease-in-out; 
      transition:all 100ms ease-in-out;
    }
    #end-social img:hover {      
      opacity: 0.7;
      webkit-transition:all 100ms ease-in-out; 
      -moz-transition:all 100ms ease-in-out; 
      -ms-transition:all 100ms ease-in-out; 
      -o-transition:all 100ms ease-in-out; 
      transition:all 100ms ease-in-out;
    }

#logo-footer svg {width:125px;}


  #end a {text-decoration:underline;}

@media only screen and (max-width:1140px) {
	#end .container {flex-wrap:wrap; padding:15px 0; height: auto;}
		#logo-footer {order:1;}
		#end .container div:nth-child(2) {order:3; width:100%; padding:10px 0 0 0;}
		#end-social {order:2;}
    .ass-dms {order:4;}
}
@media only screen and (max-width:680px) {
	#end .container div:nth-child(2) {width:300px; line-height:1.5; margin:0 auto;}
	#end .container div:nth-child(2) span {display:none;}
  .lgbt-iframe.fancybox-content {
    width: 100% !important;
}
}
@media only screen and (min-width:681px) {
  #end br {display:none;}
}
@media only screen and (max-width:460px) {
	#end .container {flex-direction:column; align-items:center;}
		#logo-footer {margin-bottom:20px;}
}