@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300;0,400;0,600;0,700;0,800;1,300;1,400;1,600;1,700;1,800&display=swap');

form {
	width: 940px;
	margin: 13px auto 0 auto;
	display: block;
	position: relative;
	overflow: hidden;
}

form .linha {
	width: 100%;
	margin-top: 28px;
	float: left;
}

form .linha .coluna {
	margin-left: 20px;
	float: left;
}
form .linha .coluna:first-child { margin-left: 0; }

form fieldset { padding-bottom: 50px; }

form legend {
	font: 2.6em 'Open Sans', sans-serif;
	color: #ffb434;
	font-weight:600;
}

form legend small {
  color: #fff;
  font-size: 14px;
  display: block;
}

form label {
	margin-bottom: 5px;
	display: block;
	font: 1.8em 'Open Sans', sans-serif;
	color: #fff;
}

form label.inline {
  display: inline;
  line-height: 48px;
  margin: 0 10px 0 0;
}

form input,
form select {
	height: 48px;
	font: 1.8em 'Open Sans', sans-serif;
	color: #000;
	background-color: #fff;
}
form input {
	width: 284px;
	padding-left: 16px;
}
form input.disabled {
  background: #66a0dd;
  color: #003b79;
}
form select {
	width: 300px;
	padding: 5px 5px 5px 12px;
}

form input.largura-dupla { width: 604px; }
form input.largura-nome { width: 500px; }
form input.largura-cep { width: 170px; }

form div.largura-cep { width: 300px; }

form .checkbox input {
  width: auto;
	height: auto;
	background-color: transparent;
}

form .radio {
	margin: 12px 20px 0 0;
	float: left;
}
form .radio input {
	width: auto;
	height: auto;
	background-color: transparent;
}

form .delimitador {
	margin-top: 26px;
}

form p {
	font: 1.6em/25px 'Open Sans', sans-serif;
	color: #fff;
	margin: 10px 0;
}

form .adicionar-membro {
	width: 310px;
	height: 50px;
	margin-top: 32px;
	padding-left: 65px;
	font: bold 1.8em 'Open Sans', sans-serif;
	text-transform: uppercase;
	color: #fff;
	cursor: pointer;
	background: url(../images/btn/adicionar.gif) no-repeat;
}

form .dependente.sucessor {
	width: 100%;
	margin-top: 35px;
	float: left;
	border-top: 1px solid #fff;
}

form #desconto-contribuicao {
	margin-top: 28px;
	position: relative;
}

form #desconto-contribuicao label,
form #desconto-contribuicao input,
form #desconto-contribuicao span { float: left; }

form #desconto-contribuicao label {
	margin-top: 10px;
	padding-right: 10px;
}
form #desconto-contribuicao span {
	margin-top: 8px;
	padding: 0 6px;
	font: 2.5em 'Open Sans', sans-serif;
	color: #fff;
}

form #desconto-contribuicao .largura-porcentagem { width: 50px; }
form #desconto-contribuicao .largura-extenso { width: 180px; float: right; }

form #desconto-contribuicao .descricao-topo,
form #desconto-contribuicao .descricao-rodape {
	position: absolute;
	font-size: 1.6em;
}
form #desconto-contribuicao .descricao-topo { top: -32px; right: -5px; }
form #desconto-contribuicao .descricao-rodape { bottom: -70px; right: -5px; }

form #beneficiarios .nota {
	line-height: 20px;
	font-size: 1.4em;
}

form #termo-opcao p { margin-bottom: 10px; }
form #termo-opcao label {
	width: 100%;
	margin-left: 5px;
	font-size: 1.6em;
}

form .obs {
  float: left;
  line-height: 57px;
  font-style: italic;
}

form #gerar-arquivo {
	width: 438px;
	height: 104px;
	margin-top: 20px;
	padding-left: 0;
	float: right;
	background: url(../images/btn/gerar_arquivo.png) no-repeat;
}
form #simular {
  width: 117px;
	height: 57px;
	padding-left: 0;
	float: right;
	background: url(../images/btn/simular.png) no-repeat;
}
form #simular-2 {
  width: 117px;
	height: 57px;
	padding-left: 0;
	float: left;
	background: url(../images/btn/simular.png) no-repeat;
	margin: 27px 0 0 18px;
}

/*
 FORM ERROR
*/
form .error {
	border: 4px solid #ffb434;
}
form input.error { width: 276px; height: 40px; }
form select.error { width: 292px; }
form #endereco.error { width: 596px; }
form #nome.error { width: 492px; }
form input.largura-dupla.error { width: 596px !important; }
form #cep.error { width: 162px; }
form #porcentagem.error { width: 76px; }
form #extenso.error { width: 256px; }
form .radio input { width: auto; height: auto; }
form .radio input.error { box-shadow: 0 0 0 2px #FFB434; }
form .erro {
	width: 610px;
	margin-top: 20px;
	padding: 19px 50px 15px 50px;
	display: none;
	background-color: #ffb435;
}
form .erro button {
	font: 2.0em 'Open Sans', sans-serif;
	color: #0050a6;
	line-height: 31px;
	background: none;
}

/*
 Tabela
*/

#tabela-simulacao .tabela-simulacao-conteudo {
  border-top: 1px solid #eeaf3e;
  border-bottom: 1px solid #eeaf3e;
  margin: 30px 0;
  padding: 30px 0;
}

#tabela-simulacao p {
	font: 1.6em/25px 'Open Sans', sans-serif;
	color: #fff;
	font-style: italic;
}

#tabela-simulacao form p {
  float: left;
  width: 100%;
  margin: 20px 0 0;
}

#tabela-simulacao table {
  width: 100%;
  margin: 20px 0;
}

#tabela-simulacao table th {
  background: #ffb434;
  color: #fff;
  font-family: 'Open Sans', sans-serif;
	font-size: 1.8em;
	font-weight: normal;
	padding: 10px 0;
}

#tabela-simulacao table td {
  background: #0050a7;
  color: #fff;
  font-family: 'Open Sans', sans-serif;
  font-size: 1.8em;
  line-height: 49px;
  text-align: center;
  border-bottom: 1px solid #005ec2;
}

#tabela-simulacao table .impar td {
  background: #004da0;
}