/* ==========================================================================
   Import fonts
   ========================================================================== */
   
@font-face {
    font-family: "FuturaWeb";
    font-style: normal;
    font-weight: 500;
    src: url('../fonts/futura.woff');
}

@font-face {
    font-family: "FuturaWeb";
    font-style: normal;
    font-weight: 600;
    src: url('../fonts/FuturaLT-Heavy.ttf');
}

@font-face {
    font-family: "FuturaWeb";
    font-style: normal;
    font-weight: 700;
    src: url('../fonts/futura-bold.woff');
}

@font-face {
    font-family: "FuturaWeb";
    font-style: italic;
    font-weight: 700;
    src: url('../fonts/FuturaLT-BoldOblique.ttf');
}

@font-face {
    font-family: "Icons";
    font-style: normal;
    font-weight: 700;
    src: url('../fonts/icons.ttf');
}

/* ==========================================================================
   Helper classes
   ========================================================================== */

/* Hide only visually, but have it available for screenreaders */
.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

/* Clearfix */
.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

/* Image replacement */
.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
}

.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%;
}


/* ==========================================================================
   Typography, colors and other universal styles
   ========================================================================== */
   
* {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
}

html,
button,
input,
select,
textarea {
    color: #1f2a47;
}

body, html {
    min-height: 100%;
    height: auto !important;
    height: 100%;
}

body {
    background: #fff;
    color: #1f2a47;
    font-family: sans-serif;
    -webkit-font-smoothing: antialiased;
    font-smoothing: antialiased;
    -webkit-font-variant-ligatures: common-ligatures;
       -moz-font-variant-ligatures: common-ligatures;
        -ms-font-variant-ligatures: common-ligatures;
            font-variant-ligatures: common-ligatures;
}

::-moz-selection {
    background: #058ce1;
    color: #fff;
    text-shadow: none;
}

::selection {
    background: #058ce1;
    color: #fff;
    text-shadow: none;
}

a {
	cursor:pointer;
    border-bottom: 1px solid transparent;
    color: #006bae;
    text-decoration: none;
    -webkit-transition: color .2s, border-bottom-color .2s;
       -moz-transition: color .2s, border-bottom-color .2s;
            transition: color .2s, border-bottom-color .2s;
}

a:hover {
    border-bottom-color: #e8e9ec;
    color: #006bae;
}
.white-header a:hover {
    border-bottom-color: #006bae;
}
.white-header a.soft:hover {
    border-bottom-color: #f8931b;
}

.image-link {
    border-bottom: 0;
}

/* Headings: base 20px @ scale 1:1.2 */
.giga, .mega, .kilo,
.alpha, .beta, .gamma, .delta, .epsilon, .zeta,
h1, h2, h3, h4, h5, h6 {
    margin-top: 0;
    font-family: "FuturaWeb", sans-serif;
    line-height: 1.2;
    font-weight: 700;
    letter-spacing: -.035em;
}
.heading6, .heading7, h6 {
letter-spacing: 0;
font-weight: 500;
}
.zeta, h6 {
    letter-spacing: 0;
    font-weight: 500;
}

.giga, .mega, .kilo {
    letter-spacing: -.05em;
    line-height: 1.1;
}

.giga {
    font-size: 4.3rem;
}

.mega {
    font-size: 3.583rem;
}

.kilo {
    font-size: 2.986rem;
}

h1,
.alpha {
    font-size: 2.488rem;
}

h2,
.beta {
    font-size: 2.074rem;
}

h3,
.gamma {
    font-size: 1.728rem;
}

h4,
.delta {
    font-size: 1.44rem;
}

h5,
.epsilon {
    font-size: 1.2rem;
}

h6,
.zeta { 
    font-size: 1.4rem;
}

small,
.milli {
    font-size: .875rem;
}

.caption {
    padding: .833em;
    background: #fff;
    font-style: italic;
}
.heading7 {
    font-size: 1.4rem;
}
/* Paragraphs, lists */
p {
    color: #4c556c;
    font-size: 1rem;
    line-height: 1.35;
}

p:first-child {
    margin-top: 0;
}

p:last-child {
    margin-bottom: 0;
}

.lighter {
	color: #4c556c;
}

.super-lighter {
	color: #a5aab5;
}

li {
    margin-bottom: .5em;
}

.link-list li {
	margin-bottom: 1.2em;
}

.link-desc-list li {
	margin-bottom: 3em;
}

ol {
    padding-left: 0;
    list-style: none;
    counter-reset: decimal;
}

ol li:before {
    margin-right: .5em;
    content: counters(decimal, ".");
    counter-increment: decimal;
    color: #b3b3af;
}

.steps-list {
    counter-reset: li;
}
.steps-list li {
    position: relative;
    margin-bottom: 3em;
    padding-left: 3em;
}
.steps-list li:before {
    position: absolute;
    left: 0;
    top: 0;
    content: counters(decimal, ".");
    counter-increment: decimal;
    font-size: 1.728rem;
    font-family: "FuturaWeb", sans-serif;
    font-weight: 700;
    line-height: 1;
    color: #f8931b;
}

dt {
	margin-bottom: .5em;
}

dd {
	margin-left: 0;
}

.no-bullets {
    list-style: none;
    padding: 0;
    margin: 0;
}

.no-bullets li:before {
    display: none;
    content: " ";
}

.no-bullets.small-margin li {
    margin:10px 0;
}

.hyphenated {
    -webkit-hyphens: auto;
       -moz-hyphens: auto;
        -ms-hyphens: auto;
            hyphens: auto;
}

h3.bordered:after {
    content:'';
    background:#e9ecf0;
    width:50px;
    height:4px;
    display:block;
    margin:20px 0 0;
}


/* ==========================================================================
   Images and video related
   ========================================================================== */

img {
    vertical-align: middle;
}

.responsive-img {
    max-width: 100%;
}

/* ==========================================================================
   Forms
   ========================================================================== */

.form-d {
	 margin-top: 1em;
}

fieldset {
	border: 0;
	margin: 0;
	padding: 0;
}

.form-row {
	margin-bottom: 0;
}

.control-item {
	margin-bottom: 2em;
}

.label-d {
	display: block;
	margin-bottom: .5em;
	line-height: 1.5;
}

.check-radio-label {
	/* display: block;
	padding-left: 1.5em; */
	margin-top: -1.5em;
}

.label-extra-desc {
	display: block;
	margin-top: .5em;
	color: #4c556c;
	line-height: 1.5;
}

input,
select,
button {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.field-d {
	width: 100%;
	min-height: 3em;
	border: 1px solid #a5aab5;
	border-top-color: #8f94a1;
	outline: 0;
	padding: 0 .6em;
	border-radius: 2px;
	box-shadow: 5px 5px 8px rgba(165,170,181, .25) inset;
}

.field-d:focus {
	border: 1px solid #058ce1;
	box-shadow: 5px 5px 8px rgba(165,170,181, .25) inset, 0 0 0 1px #058ce1;
}

[disabled="disabled"] {
	cursor: no-drop !important;
}

.field-disabled {
	opacity: .5 !important;
	background: #e8e9ec !important;
}

.select-d {
	width: 100%;
}

input[type="radio"],
input[type="checkbox"] {
	margin-right: .6em;
}

.textarea-d {
	min-height: 10em;
	padding: .6em;
	resize: vertical;
}

.submit-d {
	position: relative;
	display: inline-block;
	height: 2.65em;
	min-width: 6em;
	width: 100%;
	border-width: 1px;
	border-style: solid;
	padding: 0 1.5em;
	border-radius: 2px;
	box-shadow: 0px 2px 0 rgba(31,42,71,.1);
    font-family: "FuturaWeb", sans-serif;
	font-size: 1.125em;
	line-height: 1;
	outline: none;
}

a.submit-d {
    line-height: 2.8rem;
    cursor: pointer;
}

a.submit-small {
    line-height: 2.6rem;
}

a.submit-d:hover {
    color: #fff;
}

.submit-d:focus,
.submit-selected {
	box-shadow: 5px 5px 5px rgba(0,0,0,.15) inset; 
}

.submit-non-fluid {
	width: auto;
}

.submit-left {
    float:left;
}

.submit-disabled {
	border-color: #a5aab5 !important;
	background: #fff;
	background: -webkit-linear-gradient(top,#fff 0%, #e9e9ec 100%) !important;
	background: linear-gradient(to bottom,#fff 0%, #e9e9ec 100%) !important;
	color: #4c556c !important;
	opacity: .4 !important;
}

.submit-small {
	font-size: 1em;
}

.submit-big {
	font-size: 1.2em;
}

.submit-white {
    border-color: #a5aab5;
    background: -webkit-linear-gradient(top,#fff 0%, #e9e9ec 100%);
    background: linear-gradient(to bottom,#fff 0%, #e9e9ec 100%);
    color: #006bae;
}

.submit-d.submit-transparent {
	background: transparent;
    border-color: transparent;
    box-shadow: none;
}

.submit-white:hover {
	border-color: #8c909a;
	background: -webkit-linear-gradient(top,#fff 0%, #f4f4f6 100%);
	background: linear-gradient(to bottom,#fff 0%, #f4f4f6 100%);
}

.submit-white:focus,
.submit-white.submit-selected {
	background: #dcdddf;
	border-top-color: #4c556c;
	color: #005d98;
}

.submit-blue {
	border-color: #1f2a47;
	background: -webkit-linear-gradient(top,#058ce0 0%, #047ecb 100%);
	background: linear-gradient(to bottom,#058ce0 0%, #047ecb 100%);
	color: #fff;
}

.submit-blue:hover {
	border-color: #171d2f;
	background: -webkit-linear-gradient(top,#119af0 0%, #0f8cda 100%);
	background: linear-gradient(to bottom,#119af0 0%, #0f8cda 100%);
}

.submit-blue:focus,
.submit-blue.submit-selected {
	background: #0b6daa;
	border-top-color: #000;
	color: #fff;
}

.submit-orange {	
	background: -webkit-linear-gradient(top,#fda917 0%, #fc8f01 100%); 
	background: linear-gradient(to bottom,#fda917 0%, #fc8f01 100%); 
	border-color: #9f6705;
	color: #fff;	
}

.submit-orange:hover {
	border-color: #6c4105;
	background: -webkit-linear-gradient(top,#ffb32d 0%, #ff9a00 100%);
	background: linear-gradient(to bottom,#ffb32d 0%, #ff9a00 100%);
}

.submit-orange:focus,
.submit-orange.submit-selected {
	background: #dd790d;
	border-top-color: #462d09;
	color: #fff;
}

.secondary-action {
	display: inline-block;
	margin-top: 1em;
	color: #a5aab5;
}

/* Button arrows */
.div_button{
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	padding: 0.7em 1.5em;
	cursor:pointer;
	text-align: center;
}
.bt-arrow {
	display: inline-block;
	vertical-align: middle;
	font-size: .6em;
}

/* Button symbols */

.bt-symbol {
	font-family: "Icons";
	font-size: .888em;
}

/* Button and input groups */

.button-group,
.control-group  {
	display: table;
	margin-bottom: 2em;
}

.button-group-item,
.group-inline-item {
	display: table-cell;
}

.group-inline-item {
	padding-right: 2em;
}

.group-block-item {
	margin-bottom: 1em;
}

.button-group-item button {
	border-left-width: 0;
	border-radius: 0;
}

.button-group-item:first-child button {
	border-left-width: 1px;
}

.button-group-item:first-child button {
	border-radius: 2px 0 0 2px;
}

.button-group-item:last-child button {
	border-radius: 0 2px 2px 0;
}

.field-button-group {
	position: relative;
}

.embedded-field {
	padding-right: 3em;	
}

.submit-d.embedded-button {
	position: absolute;
	top: 0;
	right: 0;
	min-width: 3em;
	height: 100%;
	padding: 0;
}

/* Custom selects */

.select-button {
	display: table;
	position: relative;
	width: 100%;
	height: 2.65em;
	border: 1px solid #a5aab5;
	padding: 0 .6em;
	background: -webkit-linear-gradient(top,#fff 0%, #e9e9ec 100%);
	background: linear-gradient(to bottom,#fff 0%, #e9e9ec 100%);
	border-radius: 2px;
	box-shadow: 0px 2px 0 rgba(31,42,71,.1);
	line-height: 1;
	outline: none;
}

.select-button:hover {
	border-color: #8c909a;
	background: -webkit-linear-gradient(top,#fff 0%, #f4f4f6 100%);
	background: linear-gradient(to bottom,#fff 0%, #f4f4f6 100%);
}

.select-label {
	display: table-cell;
	height: 100%;
	vertical-align: middle;
}

.select-button .select-d {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin: 0;
	border: 0;
}

/* ==========================================================================
   Tables
   ========================================================================== */

.simple-table {
	width: 100%;
}

.simple-table tr {
	border-bottom: 1px solid #eee;
}

.simple-table td {
	padding: 1em .25em;
}

.responsive-table {
    overflow-x:auto;
}

.responsive-table > table {
    min-width:850px;
}


/* ==========================================================================
   Layout
   ========================================================================== */

*,
*:after,
*:before {
       -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}

/* Centralizes grid and website */
.body-margin {
    width: 90%;
    margin: 0 auto;
}

.wrapper {
    min-height: 100%;
    height: auto !important;
    height: 100%;
}

.generated .content-section,
.generated .content-hero {
    -webkit-filter:grayscale(100%);
}

/* Column grid */

.column-span-single {
	margin-bottom: 2em;
}

/* ==========================================================================
   Grid overlay and syleguide
   ========================================================================== */

.grid-overlay,
.grid-overlay__wrapper {
    height: 100%;
}

.grid-overlay {
    display: none;
    position: fixed;
    top: 0;
    width: 100%;
    pointer-events: none;
    z-index: 10;
}

.row:before,
.row:after {
  display: table;
  content: " ";
}

.row:after {
  clear: both;
}

.row:before,
.row:after {
  display: table;
  content: " ";
}

.row:after {
  clear: both;
}

[class*="col-"] {
    float: left;
    margin-left: 5%;
    height: 100%;
}

.col-1 {
    width: 12.5%;
}

.col-2 {
    width: 30%;
}

.col-3 {
    width: 47.5%;
}

.col-7 {
    width: 100%;
    margin-left: 0;
}

.col-10 {
    width: 100%;
    margin-left: 0;
}

.grid-overlay [class*="col-"] {
    background: red;
    opacity: .2;
}

:first-child[class*="col-"] {
    margin-left: 0;
}

.styleguide-wrapper {
    margin-top: 4em;
    margin-bottom: 6em;
}

.styleguide-label {
    color: #a5aab5;
}

.visible-mobile {
    display:block;
}

.hidden-mobile {
    display:none;
}

.visible-desktop {
    display:none;
}

@media screen and (min-width: 37.5em) {
    .visible-mobile { display:none !important; }
    .hidden-mobile { display:block; }
}

@media screen and (min-width: 62.5em) {
    .hidden-desktop { display:none; }
    .visible-mobile { display:none !important; }
    .visible-desktop { display:block; }
}

/*
    Header
*/
.main-header {
    background:#296fa7;
}
.main-header.white-header {
    background:#f4f4f6;
    border-bottom: 1px solid #ff6200;
    margin-bottom: 5px;
    outline: 5px solid #f8931b;
}

#main-logo {
    position:absolute;
    float:left;
    width:149px;
    background:transparent;
    padding:22px 0;
    border-right:1px solid #215986;
}

#main-logo > a {
    background:url(../images/sprites.png) no-repeat -112px 0;
    width:115px;
    height:25px;
    display:block;
    margin:0 auto;
}

.header-content {
    height:70px;
    padding-left:149px;
    border-bottom:1px solid #15527e;
}


.header-content > .hotlinks {
    display:none;
    float:right;
    padding-right:10px;
    width:100%;
}

.header-content > .hotlinks > ul {
    list-style:none;
    padding-right:40px;
    text-align:right;
    float:right;
    margin:5px 0 8px;
}

.header-content > .hotlinks > ul > li {
    display:inline;
}

.header-content > .hotlinks > ul > li > a {
    color:#93CCEC;
    font-size:13px;
    margin:0 15px;
}

.header-content > .hotlinks > ul > li > a.highlight {
    color:#fff;
}

.header-content > .hotlinks > ul > li:first-child > a {
    margin-left:0;
}

.header-content > .hotlinks > ul > li:last-child > a {
    margin-right:0;
}

.header-content > .hotlinks > .helper {
    float:right;
    padding-right:5px;
}

.header-content > .hotlinks > .languages {
    padding:0;
    text-align:left;
    float:right;
}

.header-content > .hotlinks > .languages > li {
    color:#1d6496;
    font-size:12px;
}

.header-content > .hotlinks > .languages > li > a {
    margin:0 2px;
}

.main-menu {
    display:none;
    float:left;
    width:70%;
    min-width: 710px;
}

.main-menu > ul {
    width:70%;
    min-width:526px;
    list-style:none;
    padding:0;
    font-family:"FuturaWeb", sans-serif;
    float:left;
    margin-right:3%;
}
.poder-publico .main-menu > ul {
    
    min-width:74%;
}

.main-menu > ul > li {
    display:inline;
    margin:0 10px;
}


.main-menu > ul > li > a {
    position:relative;
    color:#fff;
}

.main-menu > ul > li.has-submenu > a {
    padding-right:12px;
}

.main-menu > ul > li.has-submenu > a:after {
    content:'';
    position:absolute;
    right:0;
    bottom:5px;
    display:block;
    background:url(../images/sprites.png) no-repeat -73px -100px;
    width:9px;
    height:6px;
}

.main-menu > ul > li > a.soft {
    color:#a1e2ff;
}

.submenu {
    display:none;
    position:absolute;
    background:#eef4f7;
    width:100%;
    top:100px;
    left:0;
    z-index:5;
    box-shadow:0 12px 40px rgba(0, 0, 0, 0.3);
}

.submenu:before {
    content:'';
    position:absolute;
    top:-28px;
    left:180px;
    width:0;
    height:0;
    border:14px solid transparent;
    border-bottom-color:#eef4f7;
}

.submenu-beneficios:before {
    left:300px;
}

.submenu-atendimento:before {
    left:435px;
}

.submenu.active {
    display:block;
}

.submenu-column.highlight {
    background:#e7ecef;
}

.submenu-column {
    float:left;
    padding:45px;
    width:33.33333336%;
}

.submenu-title {
    color:#1f2a47;
    font-size:1.4rem;
}

.submenu-column > ul {
    list-style:none;
    padding:0;
}

.submenu-column > ul > li {
    line-height:2.6rem;
}

.submenu-produtos .submenu-column > ul > li {
    line-height:2rem;
}

.submenu-column > ul > li > a {
    font-size:1.1rem;
}

.submenu-produtos .submenu-column > ul > .see-more {
    padding-top:10px;
}

.submenu-column > ul > .see-more > a {
    color:#ff7200 !important;
    font-size:1rem;
    font-weight:600;
}

.search-box {
    position:relative;
    float:left;
    margin-top:5px;
    width:22%;
}

.search-input::-webkit-input-placeholder {
   color:#cfddea;
}

.white-header .search-input::-webkit-input-placeholder {
   color:#a5aab6;
}


.search-input {
    background-color:#2971a7;
    border:1px solid #174e70;
    border-radius:3px;
    color:#fff;
    font-size:.8rem;
    width:100%;
    height:45px;
    padding:0 35px 0 15px;
    box-sizing:border-box;
    box-shadow:inset 2px 1px 8px rgba(28, 94, 136, 0.6);
    outline:none;
}

.white-header .search-input { 
    background-color:#f4f4f6;
    box-shadow: inset 2px 1px 8px rgba(0, 0, 0, 0.2);
    border:1px solid #767678;
}

body.sociais .search-input {
    background-color:rgba(0, 0, 0, 0.2);
    border-color:rgba(0, 0, 0, 0.2);
    box-shadow:inset 2px 1px 8px rgba(0, 0, 0, 0.1);
}


body.sociais .search-input::-webkit-input-placeholder {
   color:#b3b3b3;
}

.search-box button {
    display:inline-block;
    background:url(../images/sprites.png) no-repeat -38px -100px;
    width:17px;
    height:17px;
    position:absolute;
    top:13px;
    right:15px;
    overflow:hidden;
}
.white-header .search-box button {
    background-position:  -38px -120px;
}

.ipad .search-box button {
    display:none;
}

.account {
    display:none;
    float:right;
    width:25%;
    margin-top:5px;
    min-width:270px;
}

.account >  input[type=text], 
.account >  input[type=password] {
    background:#fff;
    border:1px solid #133e5a;
    border-radius:3px;
    width:30%;
    padding:14px 10px;
    font-size:.8rem;
    box-sizing:border-box;
    box-shadow:inset 2px 1px 8px rgba(0, 0, 0, 0.2);
}
.white-header .account >  input[type=text], 
.white-header .account >  input[type=password] {
    border:1px solid #767678;
}

.account >  input[type=text]:first-child {
    width:28%;
}

.account >  button {
    background:#2e7db1;
    background:-webkit-gradient(linear, left top, left bottom, color-stop(0%,#2e7db1), color-stop(100%,#005f9e));
    background:-webkit-linear-gradient(top,  #2e7db1 0%,#005f9e 100%);
    background:linear-gradient(to bottom,  #2e7db1 0%,#005f9e 100%);
    border:1px solid #1b5981;
    border-radius:3px;
    width:35%;
    padding:12px 10px;
    font-size:.9rem;
    box-sizing:border-box;
    box-shadow:inset 0 1px rgba(255, 255, 255, 0.1), 0 1px rgba(0, 0, 0, 0.1);
    font-family:"FuturaWeb", sans-serif;
    color:#fff;
    float:right;
    margin-right:9px;
}

.account >  button > .icon {
    display:inline-block;
    background:url(../images/sprites.png) no-repeat -55px -100px;
    width:9px;
    height:12px;
    margin:0 2px;
}

.mobile-menu,
.mobile-account  {
    float:left;
    text-align:center;
    width:50%;
}

.mobile-account  {
    border-right:1px solid #215986;
}

.mobile-account > a,
.mobile-menu > a {
    -webkit-transition:none;
    position:relative;
    display:inline-block;
    font-family:"FuturaWeb", sans-serif;
    font-size:1.2rem;
    color:#fff;
    padding:21px 35px 22px 5px;
    border:none;
    max-height:69px;
}

.mobile-account > a:hover,
.mobile-menu > a:hover {
    border:none;
}

.mobile-account > a:before,
.mobile-menu > a:before {
    content:'';
    position:absolute;
    right:0;
    top:24px;
    display:block;
    background:url(../images/sprites.png) no-repeat;
    width:22px;
    height:20px;
}

.mobile-menu > a:before {
    background-position:0 -100px;
    top:26px;
}

.mobile-account > a:before {
    background-position:-22px -100px;
    width:16px;
    right:5px;
}

.mobile-menu.open-menu {
    background:rgba(0,0,0,0.15);
}

.poder-publico .mobile-menu.open-menu {
    background:rgba(0,0,0,0.05);
}

.mobile-menu.open-menu > a:before  {
    background-position:-55px -120px;
    width:14px;
    height:14px;
    right:4px;
    top:28px;
}
.white-header .mobile-menu.open-menu > a:before {
    background-position:-55px -134px;
}
.mobile-account.open-account {
    background:rgba(0,0,0,0.15);
}

.poder-publico .mobile-account.open-account {
    background:rgba(0,0,0,0.05);
}

.mobile-account.open-account > a:before {
    background-position:-55px -120px;
    width:14px;
    height:14px;
    right:4px;
    top:28px;
}

.mobile-account-access {
    display:none;
    position:absolute;
    z-index:3;
    width:100%;
    left:0;
    top:69px;
    background:#f4f4f6;
    padding:30px;
    border-top:1px solid #d2d4da;
    border-bottom:5px solid #15426e;
}

.mobile-account-access.active {
    display:block;
}

.mobile-account-access .field-d {
    margin-bottom:20px;
}

/* ==========================================================================
   Search suggest
   ========================================================================== */

.suggest-box {
	position: absolute;
	visibility: hidden;
	width: 25em;
	height: 0;
	border-radius: 4px;
	box-shadow: 0 0 0 1px rgba(0,0,0,.15), 0 6px 20px 10px rgba(0,0,0,.2);
	overflow: hidden;
	z-index: 20;
	background: #fff;
}

.suggest-box-visible {
	visibility: visible;
	height: auto;
}

.suggest-item {
	margin-bottom: 0;
}

.suggest-title {
	margin-bottom: 0;
}

.suggest-link,
.suggest-all-link {
	padding-left: 1.25em;
	padding-right: 1.25em
}

.suggest-link {
	display: block;
	height: 100%;
	padding-top: 1em;
	padding-bottom: 1em;
	border: 1px solid #fff;
	-webkit-transition: none;
	   -moz-transition: none;
	        transition: none;
}

.suggest-link:focus,
.suggest-link:hover {
	border: 1px solid #096aa8;
	background: #0b85d2;
	color: #fff;
}

.suggest-link:hover dd {
	color: #fff;
}

.suggest-all-link {
	display: block;
	border-top: 1px solid #d2d4da;
	border-bottom: 0;
	padding-top: 1.5em;
	padding-bottom: 1.5em;
	background: #f4f4f6;
	color: #1f2a47;
}

/*
    Acima de 600px
*/
@media screen and (min-width: 37.5em) {
    .main-header {
        border-bottom:1px solid #15527e;
    }

    #main-logo {
        padding:42px 0;
        border:none;
    }

    #main-logo > a {
        background-position:-112px 0;
    }

    .header-content {
        background:transparent;
        height:108px;
        padding-left:180px;
        border-bottom:none;
    }

    .account {
        display:block;
    }

    .mobile-menu {
        float:right;
        text-align:left;
        width:auto;
    }

    .mobile-account > a,
    .mobile-menu > a {
        color:#fff;
        display:inline-block;
        padding:15px 55px 15px 0;
    }
    .white-header .mobile-account > a,
    .white-header .mobile-menu > a {
        color:#0164a8;
    }

    .mobile-menu > a:before {
        right:20px;
        top:20px;
    }

    .mobile-menu > a:before {
        background-position:0 -120px;
    } 
    .white-header .mobile-menu > a:before {
        background-position:0 -120px;
    }

    .poder-publico .mobile-menu.open-menu {
        background:transparent;
    }

    .mobile-menu.open-menu > a:before {
        background-position:-55px -120px;
        right:24px;
        top:22px;
    }
}

/*
    Até 600px
*/
@media screen and (max-width: 37.5em) {
    #main-logo {
        width:129px;
    }
    .main-header.white-header {
        background: #f4f4f6;
        border-bottom: 1px solid #ff6200;
        margin-bottom: 5px;
        outline: 5px solid #f8931b;
    }
    .white-header .header-content {
        border-color: transparent; 
    }
    .white-header .mobile-account > a,
    .white-header .mobile-menu > a {
        color: #006bae;
    }
    .white-header .mobile-account > a:before {
        background-position: -22px -120px;
    }
    .white-header .mobile-menu > a:before {
        background-position: 0 -120px;
        top: 26px;
    }
    .white-header .mobile-account,
    .white-header #main-logo {
        border-right: 1px solid #cadde9;
    }
    #main-logo > a {
        -webkit-transform:scale(0.9);
        transform:scale(0.9);
    }

    .header-content {
        padding-left:129px;
    }

    #main-nav .main-menu {
        top:69px;
    }
    .white-header .mobile-account.open-account > a:before {
        background-position: -55px -134px;
    }
    #main-nav .submenu-column {
        width:100%;
        float:none;
        padding:35px 35px 0;
    }

    #main-nav .submenu-column:first-child {
        padding-left:35px;
        padding-top:35px;
    }

    .submenu {
        padding-bottom:20px;
    }
}

/* 
    Tablet, 600px -> 1000px
*/
@media screen and (min-width: 37.5em) and (max-width: 62.5em) {
    #main-logo {
        padding:30px 0;
        width:131px;
    }
    
    .header-content {
        height:86px;
        padding-left:156px;
    }

    #main-nav {
        padding-top:15px;
    }

    .account {
        float:left;
        width:65%;
    }

    .account >  input[type=text]:first-child {
        width: 30%;
    }

    .account >  input[type=text] {
        width:34%;
    }

    .account >  button {
        width:30%;
    }

    .mobile-menu > a:before {
        background-position:0 -100px;
    }
}

/*
    Tablet, até 800px
*/
@media screen and (min-width: 37.5em) and (max-width: 50em) {
    .mobile-menu > a:before {
        background-position:0 -100px;
    }
}

/*
    menu versão mobile, < 1000px
*/
@media screen and (max-width: 62.5em) {

    .main-menu {
        position:absolute;
        top:85px;
        left:0;
        width:100%;
        min-width:100%;
        padding-top:99px;
        background:#f4f4f6;
        border-top:1px solid #d2d4da;
        border-bottom:5px solid #15426e;
        z-index:10;
    }

    .main-menu.active {
        display:block;
    }

    .main-menu > ul, 
    .white-header .main-menu > ul {
        width:100%;
        min-width:100%;
        margin:0;
    }

    .main-menu > ul > li {
        display:block;
        clear:both;
        margin:0;
        border-bottom:1px solid #d2d4da;
    }
    .main-menu > ul > li:last-child {
        border-bottom:none;
    }

    .main-menu > ul > li:last-child > a {
        display:inline-block;
        width:auto;
        border-bottom:none;
    }

    .main-menu > ul > li > a,
    .white-header .main-menu > ul > li > a {
        display:block;
        width:96%;
        margin-left:2%;
        color:#006bae;
        font-size:1.2rem;
        font-weight:normal;
        padding:20px 0;
    }

    .main-menu > ul > li.has-submenu > a:after,
    .white-header #main-nav .main-menu > ul > li.has-submenu > a:after {
        background-position:-69px -120px;
        top:50%;
        right:2px;
        width:13px;
        height:6px;
        margin-top:-3px;
    }

    .main-menu > ul > li:last-child > a:after {
        content:' ›';
    }

    .main-menu > ul > li.active > a:after, .white-header #main-nav .main-menu > ul > li.active > a:after {
        background-position:-69px -126px;
    }

    .main-menu > ul > li > a.soft {
        font-family:sans-serif;
        color:#4c556c;
        font-size:.9rem;
    }

    .submenu {
        position:relative;
        top:auto;
        left:auto;
        background:#e8e9ec;
        box-shadow:none;
        border-top:1px solid #d2d4da;
        box-shadow:inset 7px 0 #006bae;
    }

    .submenu-column {
        padding:30px;
    }

    .submenu-two-columns .submenu-column {
        width:45%;
    }

    .submenu-column:first-child {
        padding-left:37px;
    }

    .submenu-column.highlight {
        background:transparent;
    }

    .submenu-title {
        font-size:1rem;
    }

    .submenu-column > ul > li {
        line-height:2rem;
    }

    .submenu-column > ul > li > a {
        font-size:1rem;
    }

    .submenu:before {
        display:none;
    }

   .search-box,
   .poder-publico .search-box  {
        position:absolute;
        top:22px;
        left:0;
        width:100%;
        padding-bottom:26px;
        border-bottom:1px solid #d2d4da;
    }

    .search-input,
    .poder-publico .search-input {
        background:#fff;
        box-shadow:none;
        border:1px solid #d1d2d8;
        color:#4c556c;
        width:96%;
        margin-left:2%;
        font-size:.9rem;
    }

    .search-input::-webkit-input-placeholder {
       color:#d1d2d8;
    }

    .search-box button {
        background-position:-38px -120px;
        right:28px;
    }
    a:hover, .poder-publico a:hover {
        border-bottom-color: transparent;
    }
    .menu-hotlinks {
        margin-left:2%;
    }

    .menu-hotlinks > ul {
        padding:0;
        margin:0 0 20px 0;
        list-style:none;
        float:left;
        min-width:140px;
    }

    .menu-hotlinks > ul > li > a {
        color:#4c556c;
        font-size:.9rem;
    }
}

/*
    > 1000px
*/
@media screen and (min-width: 62.5em) {
    .header-content > .hotlinks {
        display:block;
    }

    .main-menu {
        display:block;
    }
    
    .submenu:before {
        left:200px;
    }

    .submenu-column {
        min-height:320px;
    }

    .submenu-beneficios:before {
        left:320px;
    }

    .submenu-atendimento:before {
        left:455px;
    }

    .submenu-apoio:before {
        left:245px;
    }

    .submenu-programas:before {
        left:400px;
    }
    .poder-publico .main-menu > ul > li {
        margin:0 .8%;
    }
}

/*
    1000px -> 1164px
*/
@media screen and (min-width: 62.5em) and (max-width: 72.8em) {
    .main-menu {
        min-width:630px;
    }

    .main-menu > ul {
        font-size:0.9rem;
        min-width:455px;
        margin-top:17px;
    }

    .poder-publico .main-menu > ul {
        min-width:60%;
    }

    .main-menu > ul > li {
        margin:0 6px;
    }
    

    .account {
        min-width: 240px;
    }

    .account >  input[type=text] {
        width: 25%;
    }

    .account >  input[type=text]:first-child {
        width: 24%;
    }

    .account >  button {
        width: 88px;
        margin-right:0;
        float:none;
    }
}

/*
    Intervalo na tipografia, 1000px -> 1064px
*/
@media screen and (min-width: 62.5em) and (max-width: 66.5em) {
    .header-content {
        padding-left:160px;
    }

    .main-menu {
        min-width: 590px;
    }

    .search-box {
        width: 18%;
    }

    .poder-publico .search-box {
        width: 14%;
    }
}

/*
    > 1200px
*/
@media screen and (min-width: 75em) {
    .main-header {
        padding-left:1%;
        padding-right:1%;
    }

    #main-logo {
        width:179px;
    }

    .header-content {
        padding-left:190px;
    }

    .submenu:before {
        left:220px;
        margin-left:1%;
    }

    .submenu-beneficios:before {
        left:360px;
    }

    .submenu-atendimento:before {
        left:525px;
    }

    .submenu-apoio:before {
        left:280px;
    }

    .submenu-programas:before {
        left:470px;
    }
}

/*
    > 1300px
*/
@media screen and (min-width: 81.25em) {
    .main-header {
        padding-left:4%;
        padding-right:4%;
    }

    .submenu:before {
        margin-left:4%;
    }
}

/*
    > 1440px
*/
@media screen and (min-width: 90em) {
    .main-menu > ul > li {
        font-size:1.1rem;
    }
}
