


/* fontes tem que ser incluidas nas publicações e commits */


@font-face {
	font-family: PT_Sans-Web-Italic;
	src: url('../font/PT_Sans-Web-Italic.ttf') format('truetype');
}

@font-face {
	font-family: PT_Sans-Web-Bold;
	src: url('../font/PT_Sans-Web-Bold.ttf') format('truetype');
}

@font-face {
	font-family: PT_Sans-Web-Regular;
	src: url('../font/PT_Sans-Web-Regular.ttf') format('truetype');
}


@font-face {
    font-family: 'Lato-Black';
    src: url('../font/Lato-Black.ttf') format('truetype');
}

@font-face {
    font-family: 'Lato-Regular';
    src: url('../font/Lato-Regular.ttf') format('truetype');
}


@font-face {
    font-family: 'Lato-Bold';
    src: url('../font/Lato-Bold.ttf') format('truetype');
}



a
{
   color: #3c5dbc;
    }


h4, .h4 {
    font-size: 22px;
    font-weight: normal;
    margin-top: 20px;
}


body {
    position: absolute;
    width: 100%;
    height: 100%;
    font-family: 'PT_Sans-Web-Regular';
    font-size: 16px;
}

form 
{
    position: relative;
    height: 100%;
}

.fd 
{
    position: relative;
    /* height: 100%; */
    width: 100%;
    }

.container-page 
{
    position: relative;
    min-height: 100%;
}

.container
{
	padding: 0;
	margin: auto;
	width:  60%;
}

.row
{
	margin: 0;
	padding: 0 15px;
}

.logo
{
	padding: 15px 0 15px 15px;
}

.logo-ie 
{
   margin: auto;
   display: block;
   height: 55px;
   margin-top: 50px;
   padding-right: 25px;
}

.header 
{
    background: #3c5dbc;
    height: 165px;
    width: 100%;
    }


.language-container {
    height: 25px;
    position: absolute;
    z-index: 9;
    left: 0;
    right: 0;
}

.margin-title 
{
    margin-top: 25px;
    }


.center 
{
    margin-right: auto;
    margin-left: auto;
    display: table;
    }

.language-container li
{
    margin-right: 10px;
    }
 
    
 .language-container > li > a {
	text-decoration: none;
    color: #D4D4D4 !important;
    opacity: 0.5;
}


 .language-container > li.active > a {
	text-decoration: none;
    color: white !important;
}


.fd.footer
{
	border-top: 1px solid white;
	clear: both;
}



.border-container 
{
    border: 1px solid grey;
    }

.authTitle {
    text-align: center;
    font-family: Lato-Black;
    color: #2A2A2A;
    width: 100%;
    margin-bottom: 4%;
    margin-top: 4%;
    font-size: 1.1em;
    text-transform: uppercase;
}

.body-container 
{
    width:100%;
    max-width: 750px;
    margin:auto;
    min-height:calc(100% - 365px);
    min-height:-moz-calc(100% - 365px);
    min-height:-webkit-calc(100% - 365px);
    padding-bottom: 40px;
}


.container-page-height
{
    min-height: calc(100% - 225px);
    min-height:-moz-calc(100% - 225px);
    min-height:-webkit-calc(100% - 225px);
}


.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12
{
	position: relative;
	min-height: 1px;
	padding-right: 0;
	padding-left: 0;
}


#ctl00_MainContent_divSimpleAuthentication h3 
{
    margin-top: 0px;
    margin-bottom: 40px;
    }
    
#ctl00_MainContent_lbl_DemandedAttr 
{
    color: #333;
    }
    
 #ctl00_MainContent_lbl_OptionalAttrs 
 {
     color: #333;
     }   

h1
{
	color: #3c5dbc;
    font-size: 28px;
    text-transform: none;
    padding: 10px;
    text-align: center;
    margin: 0;
    margin-top: 50px;
}

h1.user
{
	background: #4e8abe url(imagens/user.png) 10% bottom no-repeat;
	padding-left: 10px;
	font-size: 15px;
	margin-top: 40px;
}

h1 span
{
	display: block;
	font-size: 15px;
	text-transform: uppercase;
	padding-top: 20px;
}

h2
{
	color: #000;
	font-size: 1.2em;
	text-transform: uppercase;
}

h3
{
	color: #3c5dbc;
	font-size: 24px;
	text-transform: none;
	font-weight: bold;
	vertical-align: baseline;
	margin-top: 35px;
}

.navbar-right
{
	margin-right: 0 !important;
	margin-left: 0 !important;
}

.navbar-right li {
	padding: 5px;
}

.navbar
{
	position: relative;
	min-height: 10px;
	margin-bottom: 0;
	background: none;
}

.navbar-default
{
	background-color: transparent;
	border: 0;
}

.navbar-right
{
	background-color: #3c5dbc;
	padding-left: 5px;
}
.navbar-nav li a, .navbar-nav li a:hover
{
	color: #fff;
	letter-spacing: .10em;
	font-weight: bold;
	font-size: .8em;
}

.navbar-nav li a:hover, .navbar-nav li a.active
{
	text-decoration: underline;
	color: #fff !important;
}

/*.navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:hover, .navbar-default .navbar-nav > .active > a:focus, .navbar-default .navbar-nav li a
{
    background-color: #fff;
}*/

.navbar-default .navbar-nav li:last-child a
{
	border-right: 0;
}

.navbar-default .navbar-nav li:first-child a
{
	/*padding-left:8px;*/
}

/**/

.btn-confirm-right 
{
    display: inline-block; 
    float: right;
    text-transform: uppercase;
	
    }

.inline 
{
    display: inline-block;
    }


.lang
{
	background: transparent;
	font-size: 0.8em;
	padding: 3px 15px 0px 0;
}

.headerLinks 
{
    background-color: #3c5dbc;
	font-size: 0.8em;
	padding: 0px;
}

.headerLinksFont {
	font-weight: bold !important;
}

.nav.lang > li > a
{
	letter-spacing: normal;
	padding-top: 0;
	padding-bottom: 0;
	padding-left: 0;
}

.navbar-nav.lang > li > a
{
	line-height: normal;
}
.nav.lang > li:last-child > a
{
	padding-right: 0;
	border-right: 0;
}

.lang li a
{
	text-decoration:none; 
    color: white !important;
    opacity: 0.3;
    text-transform: uppercase;
    border-right: 1px solid white;
}

.linkButton
{
    text-decoration:none; 
    color: white !important;
    opacity: 0.3;
    text-transform: uppercase;
}
.linkButton:hover
{
	color: white !important;
    background: none;
    font-weight: bold !important;
    cursor:  pointer;
	text-decoration: none !important;
	opacity: 1;
}

.link-padding{
    padding-right: 25px;
    border-right: 1px solid white;

}

.last-link{
    padding-right: 0;
    border-right: none;
}


.lang li.active a, .lang li a:hover
{
	color: white !important;
    background: none;
    font-weight: bold !important;
    cursor:  pointer;
	text-decoration: none !important;
	opacity: 1;
}

.lang-disable-text 
{
    text-decoration:none; 
    color: white !important;
    opacity: 0.3;
    }

/**/

.area-destaque
{
	width: 75%;
    margin-left: auto;
    margin-right: auto;
}

.texto-destaque
{
	color: #3c5dbc;
	font-weight: bold;
}

.texto-destaque-2
{
	color: #fff;
	font-weight: bold;
}

.texto-destaque-3
{
	color: #30a440;
	font-weight: bold;
	text-align: left;
	padding-left: 20px;
	font-size: .9em;
}

.destaque
{
	background: #3c5dbc;
	padding: 0px 20px;
	color: #fff;
	line-height: normal;
}

.destaque-img .texto
{
	background: #eee;
	opacity: 0.8;
	filter: alpha(opacity=80); /* For IE8 and earlier */
	padding-top: 20px;
	padding-bottom: 20px;
	padding-left: 20px;
	margin-top: 1%; /*margin-bottom:20%;*/
}

.destaque-img .texto p
{
	font-size: 1em;
	padding-left: 10px;
	padding-right: 10px;
}

.destaque-footer
{
	background: #3c5dbc !important;
	margin-left: 0;
	margin-right: 0;
	padding: 10px;
	color: #fff;
	text-align: right;
	margin-top: 20%;
}
.destaque-footer img
{
	margin: 10px;
	padding-left: 10px;
}

.destaque-footer ul
{
	text-align: left;
	margin-left: 80%;
}

.icon-list
{
	font-size: 1.5em;
}

/************************/

.margin70 
{
    margin-top:70px;
    }


.margin40 
{
    margin-top: 40px;
    margin-bottom: 40px;
    }

.margin20 
{
    margin: 20px 0px;
    }


.margin-bottom60 
{
   margin-bottom: 60px;
    }
    
.image-error 
{
    display: inline-block;
    }
    


.btn-default:hover, .btn-default:focus, .btn-default.focus, .btn-default:active, .btn-default.active, .open > .dropdown-toggle.btn-default {
    color: #333;
    background-color: white;
    border: 1px solid #3c5dbc;
    color: #3c5dbc;
    padding: 14px 59px;
    text-transform: uppercase;
	
}


.margin-bottom-title 
{
    margin-bottom: 60px;}

/******Process bar******/


.progress {
    height: 5px;
    margin-bottom: 20px;
    overflow: hidden;
    background-color: #f5f5f5;
    border-radius: 4px;
    -webkit-box-shadow: inset 0 1px 2px rgba(0,0,0,.1);
    box-shadow: inset 0 1px 2px rgba(0,0,0,.1);
}


.progress-bar {
    float: left;
    width: 0;
    height: 100%;
    font-size: 12px;
    line-height: 20px;
    color: #fff;
    text-align: center;
    background-color: #ededed;
    -webkit-box-shadow: inset 0 -1px 0 rgba(0,0,0,.15);
    box-shadow: none;
    -webkit-transition: width .6s ease;
    -o-transition: width .6s ease;
    transition: width .6s ease;
    border-radius: 0px;
}



.info-first-ball 
{
    float: left;
    margin-top: -37px;
    margin-left: 20px;
    color: #3c5dbc;
    }


.info-last-ball {
    float: right;
    margin-top: -37px;
    margin-right: 20px;
}

.process-first-ball {
    width: 20px;
    height: 20px;
    position: absolute;
    border-radius: 20px;
    background-color: #9fafdf !important;
    float: left;
    margin-right: -18px;
    margin-top: 27px;
    margin-left: -95px;

}
    
.process-last-ball {
    width: 20px;
    height: 20px;
    background-color: #ededed !important;
    border-radius: 20px;
    display: block;
    float: right;
    margin-left: 65px;
    margin-top: 8px;
    position: absolute;
}
    
.container-process-bar 
{
    margin-top: 65px;
    margin-bottom: 70px;
    width: 500px;
    margin-right: auto;
    margin-left: auto;
}    
    



.destaque-form
{
	background: #4e8abe;
	opacity: 0.8;
	filter: alpha(opacity=80); /* For IE8 and earlier */
	padding: 20px;
	margin-top: 1%;
	color: #000; /*margin-bottom:20%;*/
}



/*[ca] renomei "form" para "Xform", pois estava a aparecer o texto underline */
Xform a
{
	color: #000;
	text-decoration: underline;
}

label
{
	color: #000;
	display: block;
	font-weight: normal;
}

label.asterisco
{
	color: red;
	display: inline !important;
	font-weight: bold;
}

input
{
	/*width:100%;*/
}


.titleCitizenConfirmation 
{
    font-size: 24px;
    font-weight: normal;
    margin-top: 23px;
    color: #3c5dbc;
    line-height: 1.4;
    }

.demandAttrListli {
	margin-left: 0px;
	/*margin-top: 20px;*/
    list-style-type: none;
    padding: 0;
}



.attributeListItem:first-child{
  /*  border-top: solid 1px #E6E7E8;
    border-bottom: solid 1px #E6E7E8;*/
    padding-top: 2%;
    padding-bottom: 2%;
    font-family: Lato-Bold;
    font-size: 1.004em;
}

.attributeListItem:not(:first-child){
   /* border-top: solid 1px #E6E7E8;
    border-bottom: solid 1px #E6E7E8;*/

    padding-top: 2%;
    padding-bottom: 2%;
    font-family: Lato-Bold;
    font-size: 1.004em;
}

.pHolderDemandedAttrs li 
{
    list-style: outside none none;
    margin-bottom: 5px;
    }

.lblOptionalAttr li 
{
    list-style: outside none none;
    margin-bottom: 5px;
    }
    
.pHolderDemandedAttrs, .lblOptionalAttr 
{
    margin-left: 0px;
    padding-left: 20px;
    }
    
 

.passo img
{
	border-bottom: 1px solid #4e8abe;
	padding-bottom: 10px;
}

.passo .passo_num
{
	font-size: 5em;
	float: left;
	color: #4e8abe;
	font-weight: bold;
	padding-right: 20px;
}

.passo h3
{
	float: left;
	font-weight: bold;
	font-size: 1.5em;
	text-align: right; /*padding-left:20px;*/
	padding-right: 10px;
}

.passo h3 span
{
	color: #4e8abe;
	display: block;
	padding-top: 10px;
}

.passo-anterior
{
	display: block;
	float: left;
	margin-top: 20px;
	margin-bottom: 20px;
}

.passo-seguinte
{
	display: block;
	float: right;
	margin-top: 20px;
	margin-bottom: 20px;
}

 .font-color-h h3 
 {
    color: #3c5dbc;
	font-size: 26px;
    font-weight: normal !important;
    vertical-align: baseline;
    margin-top: 65px;
    margin-bottom: 50px;
    font-weight: bold;
}

 .font-color-h h1 span
 {
     text-align: center;
    font-family: LatoBlack;
    color: #2A2A2A !important;
    font-size: 1.1em;
 }

#ctl00_MainContent_divAttributesDisplay ul li 
{
    margin-bottom: 5px;
}
  
#ctl00_MainContent_divAttributesDisplay ul li span 
{
    margin-left: 10px; 
}
   
.checkbox-list-style 
{
	margin-left: -20px;
}
    
.checkbox-list-style li 
{
    list-style: none !important;
}

/*#divLoading 
{
    margin-right: auto;
    margin-left: auto;
    width: 275px;
    margin-top: 20%;
}
    
#divLoadingSocial 
{
    margin-bottom: 60px;
    padding: 0px 200px;
}*/


/* success box */


.success-box {
    border: 1px solid #dff0d8;
    padding: 25px;
}
   
.success-box .success-span {
    background-color: #dff0d8;
    padding: 3px 8px;
    position: absolute;
    top: 0;
    left: 0;
    width: 60px;
    height: 20px;
    color: #333333;
    text-transform: uppercase;
    font-size: 10px;
    margin-left: 0px !important;
}

.collapse.in 
{
    background-color: White;
    }

  /* info box */  
 
 
.title-info-box 
 {
     color:#9FB0DE;
     } 
  
.info-box {
border: 1px solid #9FB0DE;
padding: 30px 25px 25px;
}
   
.info-box .info-span {
background-color: #9FB0DE;
padding: 2px 8px;
position: absolute;
top: 0;
left: 0;
width: 40px;
height: 20px;
color: #333333;
text-transform: uppercase;
font-size: 10px;
margin-left: 0px !important;
}

#infoMessageBtn {
position: absolute;
   top: 5px;
   right: 5px;
}

/*error box */

.error-box {
    border: 1px solid #ED5350;
    padding: 25px;
}

.erro-span  
{
    background-color: #ED5350;
    padding: 2px 8px;
    position: absolute;
	top: 0;
	left: 0;
	width:40px;
	height: 20px;
	color: White;
	text-transform: uppercase;
	font-size: 10px;
    }


.info-icon {
    background-image: url('../image/infoicon.svg');
    background-size: 20px;
    display: block;
    background-position: center;
    height: 20px;
    width: 20px;
    background-repeat: no-repeat;
    display: inline-block;
}

/**********TABS**************/
.nav-tabs
{
    width: 100%;
    position: relative;
    border: transparent;
    border-bottom: 1px solid #e0e0e0;
}

.nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus
{
    background: #fff;
    color: #3c5dbc;
    outline: none;
    padding: 25px 25px 15px;
    margin-bottom: -1px;
}

.nav-tabs > li.inactive a 
{
	color: #999;
	cursor: default;
	background-color: white;
	border: 1px solid #000;
	border-bottom-color: transparent !important;
}

.nav-tabs > li > a:hover
{    
    background: white;
    padding: 25px 25px 15px;
}


input[type="radio"], input[type="checkbox"] 
{
    margin: 10px 0px 0px -15px;
    margin-top: 1px;
    line-height: normal;
}

.nav-tabs > li > a
{
	margin-right: 0px;
	line-height: 1.42857143;
	border-radius: 0;
	background: #f3f3f3;
	color: #555;
	text-transform: uppercase;
	font-size: 14px;
}

.nav-tabs > li > a:focus 
{
    outline: none;    
}

.nav-tabs > li 
{
    float: none;
    display: inline-block;
    margin-bottom: -1px;
    margin-top: 0px;
    margin-right: -4px !important;
}

.nav > li > a
{
	position: relative;
	display: block;
	padding: 10px 25px 15px;
}

.tab-content form label
{
	color: #000;
	margin-top: 10px;
}

.btn
{
	font-weight: regular;
	border: none;
	border-radius: 0;
	text-transform: uppercase;
}

.btn-default
{
	background: #3c5dbc;
	color: #fff;
	margin-top: 20px;
	text-transform: none;
	padding: 15px 60px;
	margin-right: 10px;
	text-transform: uppercase;
}

.btn-red 
{
    background: white;
    border: 1px solid #ed5351;
    color: #ed5351;
    text-transform: uppercase;
}
    
.btn-red:hover 
{
    background-color: #ed5351;
    color: White;
    border: none;
    border: 1px solid #ed5351;
    padding: 15px 60px;
    text-transform: uppercase;
}

.btn-success
{

	background: #3c5dbc;
	border-color: #000;
}
/************************/

#ctl00_MainContent_divAuthForm div 
{
    margin-bottom: 10px;
}

.inputs-ccc 
{
    margin-left: 45px; 
}

.container-input-points 
{
    border: 1px solid #D3D3D3;
    margin-top: 50px;
    margin-bottom: 30px;
}

.container-input-points h3 
{
    margin-top: -30px;
    background-color: white;
    padding: 15px;
    max-width: 295px;
    margin-left: 10px;
    color: #333;
}
    
.container-input-points p 
{   
    margin-bottom: 30px;
    margin-top: 10px;
}

.white-line 
{
    height: 30px;
    position: absolute;
    width: 100%;
    border-bottom: 1px solid white;
    z-index: 1;
    opacity: 0.2;
}

.full-width 
{
    width: 100%;
}

.contactsCitizenConsentContainer 
{
    width: 100%;
}

.imgCitizenConsentContactContainer
{
    width: 100%;
}
 
.contactsCitizenConsentContainer img 
{
    margin-left: auto;
    margin-right: auto;
    display: block;
    padding-right: 20px;
}
    
.imgCitizenConsentContact 
{
    margin-left: auto;
    margin-right: auto;
    display: block;
}    

.contactsCitizenConsentContainer div:first-child
{
    border-top: 1px dotted #D4D4D4;
    margin-top: 40px;
    padding-top: 30px;
    width: 100%;
}  
    
#ctl00_MainContent_img_cc_frame 
{
    float: left; 
    margin-right: 25%;
}

#contactsCitizenConfirmation img 
{
    margin-left: auto; 
    margin-right: auto;
    display: block;
}

#contactsCitizenConfirmation .linhaapoio 
{
    margin-left: auto; 
    margin-right: auto;
    display: block;
}

/*******waitingpages******/

.imgswaitingPage 
{
    margin-top:150px; 
}

.imgswaitingPage .img-contact-content
{
    margin-right: auto;
    margin-left: auto;
    display: block;
}

/*******accordion********/

.accordion-container 
{
    width: 70%;
    margin-left: auto;
    margin-right: auto;
    min-width: 600px;
}

.panel-heading 
{
    border-radius: 0px;
}

.panel-group .panel 
{
    border-radius: 0px;
    background-color: #EDEDED;
    border-color: #D6D6D6;
}

.panel-default > .panel-heading 
{
    padding: 25px;
    background-color: #EDEDED;
}

hr
{
	display: block;
	margin-top: 0.8em;
	margin-bottom: 0.8em;
	margin-left: auto;
	margin-right: auto;
	background: #5e5e5e;
	border: 0;
	height: 1px;
}

.footer hr
{
	width: 80%;
	margin-left: 0;
}

.footer
{
	background: white;
	padding: 10px;
	font-size: 10px;
	margin-top: 40px;
	width: 100%;
	padding-top: 25px;
}

.footer ul
{
	list-style-type: none;
    display: inline-block;
    padding-left: 10px;
    margin-bottom: 15px;
    margin-right: 20px;
}

.footer ul li 
{
    display: inline-block;
}

.footer ul li a
{
	color: #666;
    text-transform: uppercase;
    border-right: 1px solid #666;;
    padding: 0 10px 0 8px;
}

.footer ul li a:hover
{
	text-decoration: none;
	color: #3c5dbc;
	border-right: 1px solid #666;;
}

.footer ul li a.menu-active
{
	color: #3c5dbc;
	border-right: 1px solid #666;;
}

.footer ul li:last-child a
{
    border: none;
}

.info-footer 
{
    margin-bottom: 50px;
    font-size: 14px;
}

.center 
{
    text-align: center;
}

.centerImage 
{
    margin-left: auto;
    margin-right: auto;
    display: block;
    padding-right: 20px;
}

.copyright
{
	text-align: center;
    text-transform: uppercase;
    color: black;
    background-color: white;
    padding: 3px;
    border: none;
}

.helpContent ul 
{
    list-style: none;
    padding-left: 0px;
    }
    
.helpContent a:hover, .helpContent a:focus
{
    text-decoration: none;
    }

.copyright a
{
	color: #3c5dbc;
	text-transform: none;
}

.colorBlue 
{
  color: #3c5dbc;
    }


.helpContent h2 {
    color: #3c5dbc;
    font-size: 20px;
    margin: 40px 0px;
    text-transform: none;
}


.logo-ama
{
    display: inline-block;
    margin: 10px 0px;
}

/*[ca] adicionei class para as linhas de apoio */
.linhaapoio
{
	font-size:0.9em;
	float:left;
	color:#3c5dbc;
	font-weight:bold;
	padding-right:20px;
	width: 100%;
    text-align: center;
}

/* martinho: página de ajuda - INICIO*/
.ajuda-pad {
	padding-left: 15px;
	padding-top: 15px;
	padding-right: 15px;
}

#accordion img {
	max-width: 550px;
	border: 1px solid #ccc;
}

.panel-default-custom > .panel-heading:hover {
	cursor: pointer;
}

.inner-panel-custom > .panel-heading:hover {
	cursor: pointer;	
}

.panel-default > .panel-heading-custom {
	background: #779EC7; 	
}

.mybtn {
  padding: 2px;
  width: 100%;
  max-width: 180px;
}

.mybtnmodal {
  padding: 2px;
  width: 100%;
}

.ruim_spacer {
  margin-top: 2em;
  margin-bottom: 2em;
  font-weight: bold;	
}

.myanchor120 {
	font-size: 1.2em;
	font-weight: bold;
}

.myanchor90 {
	font-size: 0.9em;	
}

.clearfix:before,
.clearfix:after {
  content: "";
  display: table;
}

.clearfix:after {
  clear: both;
}


#ctl00_MainContent_img_cc_frame .linhaapoio
{
    margin-top: 15px;
    }

/* blink blink! */
@-webkit-keyframes blink {
	0% {
		opacity: 1;
	}
	49% {
		opacity: 1;
	}
	50% {
		opacity: 0;
	}
	100% {
		opacity: 0;
	}
}
@-moz-keyframes blink {
	0% {
		opacity: 1;
	}
	49% {
		opacity: 1;
	}
	50% {
		opacity: 0;
	}
	100% {
		opacity: 0;
	}
}
@-o-keyframes blink {
	0% {
		opacity: 1;
	}
	49% {
		opacity: 1;
	}
	50% {
		opacity: 0;
	}
	100% {
		opacity: 0;
	}
}
.myblink {
	-webkit-animation: blink 1s;
	-webkit-animation-iteration-count: infinite;
	-moz-animation: blink 1s;
	-moz-animation-iteration-count: infinite;
	-o-animation: blink 1s;
	-o-animation-iteration-count: infinite;
	float: left;	
}

@-webkit-keyframes shake {    
    10%, 30%, 50%, 70%, 90% {-webkit-transform: translateX(10px);}
    0%, 20%, 40%, 60%, 80%, 100% {-webkit-transform: translateX(0px);}
}
@keyframes shake {   
    10%, 30%, 50%, 70%, 90% {transform: translateX(10px);}
    0%, 20%, 40%, 60%, 80%, 100% {transform: translateX(0px);}
}
.shake {
    -webkit-animation: shake 5s infinite;
    animation: shake 5s infinite;    
}

.animated {
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;   
}

.myarrow 
{
    font-size: 2em;
    vertical-align: middle;
    padding-right: 15px;
    margin-top: -0.2em;
}
/* martinho: página de ajuda - FIM*/

/* SimpleAuthentication CSS - BEGIN */
.emailtextbox {
    height: 45px;
    padding-left: 10px;
    width: 200px;
}

#ctl00_MainContent_txtPassword {
    height: 45px;  
    width: 200px;
    padding-left: 10px;
}
    
.inputs-ccc p {
    display: inline-block;
    margin-right: 50px;
}
/* SimpleAuthentication CSS - END */


input[type="checkbox"]:checked + label:after {
    color: #09ad7e;
}

/* Media queries for responsive screen - BEGIN */
@media only screen and (max-device-width: 1140px) {
    .container
    {
	    padding: 0;
	    margin: auto;
	    width:  70%;
    }
}
@media only screen and (max-width: 1140px) {
    .container
    {
	    padding: 0;
	    margin: auto;
	    width:  70%;
    }
}
@media only screen and (max-device-width: 980px) {
    .container
    {
	    padding: 0;
	    margin: auto;
	    width:  80%;
    }
}
@media only screen and (max-width: 980px) {
    .container
    {
	    padding: 0;
	    margin: auto;
	    width:  80%;
    }
}
@media only screen and (max-device-width: 860px) {
    .container
    {
	    padding: 0;
	    margin: auto;
	    width:  90%;
    }
}
@media only screen and (max-width: 860px) {
    .container
    {
	    padding: 0;
	    margin: auto;
	    width:  90%;
    }
}
@media only screen and (max-device-width: 765px) {
    .container
    {
	    padding: 0;
	    margin: auto;
	    width:  100%;
    }
        #cmdAuthOptions{
        width: 90%;
        margin-left: 10px;
    }

}
@media only screen and (max-width: 765px) {
    .container
    {
	    padding: 0;
	    margin: auto;
	    width:  100%;
    }
}
/* Media queries for responsive screen - END */

/* Mobile CSS - BEGIN */
/* Caso seja preciso alterar este tamanho do ecrã em Mobile, alterar também a verificação no fim da página CitizenConsent */
@media only screen and (max-device-width: 680px) {
	.nav-tabs {
        margin-bottom: 70px;
        width: 100%;
        margin-left: auto;
        margin-right: auto;
        text-align: center;
        border-bottom: none;
    }
        
    .nav > li {
	    /*position: absolute;*/
    }

	.nav-tabs > li {
        float: none;
        display: table-row;
        border-bottom: 1px solid #e0e0e0;
        border-top: 1px solid #e0e0e0;
        margin-right: auto;
        margin-left: auto;
        width: 100%
    }

	.nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus {
        color: #3c5dbc;
        cursor: default;
        background-color: #fff;
        border: 1px solid #3c5dbc;
        border-left-color: transparent;
        border-right-color: transparent;
        padding: 10px 25px 15px;
    }
    
    .language-container {
	    /*display: none;*/
    }
        
    .nav-tabs > li > a:hover {    
        background: white;
        padding: 10px 25px 15px;
    }
        
    .area-destaque {
        width: 100%;
        margin-left: auto;
        margin-right: auto;
    }
    
    .container {
	    width: 100%;
    }
        
    .container-process-bar {
        margin-top: 50px;
        margin-bottom: 50px;
        width: 100%;
        margin-right: auto;
        margin-left: auto;
    }
        
    .btn-confirm-right {
        display: inline-block;
        float: none;
    }
        
    .error-box {
        border: 1px solid #ED5350;
        padding: 25px;
        margin-top: 140px;
    }
    
    #ctl00_MainContent_tabCMD {
	    margin-top: 48px;
    }
    
    #ctl00_MainContent_tabSimpleAuthentication {
	    margin-top: 96px;
    }
    
    #ctl00_MainContent_tabSocialNetwork {
	    margin-top: 144px;
    }
    
    #span1 {
	    display: none;
    }
    
    #span2 {
	    display: none;
    }
    
    #span3 {
	    display: none;
    }
    
    .spanBar {
	    padding: 0px;
    }
    
    .divMainButtons {
	    text-align: center;
    }
    
    #ctl00_MainContent_Button3 {
	    /*width: 190px;*/
    }
    
    .socialNetworkOptions {
        text-align: center;
    }
    
    #divCitizenConfirmationButtons {
	    text-align: center;
    }
    
    #ctl00_MainContent_linkCancel_new {
	    width: 190px;
    }
}
@media only screen and (max-width: 680px) {
	.nav-tabs {
        margin-bottom: 70px;
        width: 100%;
        margin-left: auto;
        margin-right: auto;
        text-align: center;
        border-bottom: none;
    }
        
    .nav > li {
	    /*position: absolute;*/
    }

	.nav-tabs > li {
        float: none;
        display: table-row;
        border-bottom: 1px solid #e0e0e0;
        border-top: 1px solid #e0e0e0;
        margin-right: auto;
        margin-left: auto;
        width: 100%
    }

	.nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus {
        color: #3c5dbc;
        cursor: default;
        background-color: #fff;
        border: 1px solid #3c5dbc;
        border-left-color: transparent;
        border-right-color: transparent;
        padding: 10px 25px 15px;
    }
    
    .language-container {
	    /*display: none;*/
    }
        
    .nav-tabs > li > a:hover {    
        background: white;
        padding: 10px 25px 15px;
    }
        
    .area-destaque {
        width: 100%;
        margin-left: auto;
        margin-right: auto;
        padding: 0 10px;
    }
    
    .container {
	    width: 100%;
    }
        
    .container-process-bar {
        margin-top: 50px;
        margin-bottom: 50px;
        width: 100%;
        margin-right: auto;
        margin-left: auto;
    }
        
    .btn-confirm-right {
        display: inline-block;
        float: none;
    }
        
    .error-box {
        border: 1px solid #ED5350;
        padding: 25px;
        margin-top: 140px;
    }
    
    #ctl00_MainContent_tabCMD {
	    margin-top: 48px;
    }
    
    #ctl00_MainContent_tabSimpleAuthentication {
	    margin-top: 96px;
    }
    
    #ctl00_MainContent_tabSocialNetwork {
	    margin-top: 144px;
    }
    
    #span1 {
	    display: none;
    }
    
    #span2 {
	    display: none;
    }
    
    #span3 {
	    display: none;
    }
    
    .spanBar {
	    padding: 0px;
    }
    
    .divMainButtons {
	    text-align: center;
    }
    
    #ctl00_MainContent_Button3 {
	    /*width: 190px;*/
    }
    
    .socialNetworkOptions {
        text-align: center;
    }
    
    #divCitizenConfirmationButtons {
	    text-align: center;
    }
    
    #ctl00_MainContent_linkCancel_new {
	    width: 190px;
    }
}
/* Mobile CSS - END */

/* Tooltip CSS - BEGIN */
.faTooltip + .tooltip > .tooltip-inner {
    background-color: White;
    color: #333;
	font-family: 'PT_Sans-Web-Regular';
	font-size: 14px;
	padding: 10px;
	border: 1px solid #3C5DBC;
	border-radius: 0px;
	font-weight: normal;
	margin-left: 5px;
}

.faTooltip + .tooltip > .tooltip-arrow {
    border-right-color: #3C5DBC;
    border-width: 10px 10px 10px 0px !important;
}

.tooltipTitle {
    font-size: 14px;
    color: #3C5DBC;
    padding: 10px;
}
/* Tooltip CSS - END */

.glyphiconSize {
    font-size: 18px;
}

.spanBar {
	margin-right:  -5px;
	padding: 11px 0px 16px;
	background: #f3f3f3;
	border-bottom: 1px solid #e0e0e0;
}

.MainBox {
   
    padding-bottom: 50px;
}

.divMainButtons {
    text-align:center;
	margin-top: 30px;
}

.simpleAuthenticationOptions {
	margin-top: 30px;
}

/* Social Network Authentication CSS - BEGIN */
.socialNetworkOptions {
	margin-top: 60px;
}

.loadingSocial {
    height: 50px;
    background: url('../../img/loading_anim.gif') left top no-repeat;
    margin: 10px auto;
}

/* Twitter */
.twitterIcon {
    background: url('../Image/Twitter_White.png') left center;
    background-repeat: no-repeat;
    background-size: 40px;
    border: 1px solid #3c5dbc;
    padding: 10px 0px;
    background-color: #3c5dbc;
    color: White;
}
                            
.twitterIcon:hover {
    background: url('../Image/Twitter_Blue.png') left center;
    background-repeat: no-repeat;
    background-size: 40px;
    background-color: White;
    color: #3c5dbc;
}
                            
.twitterButton {
    background: transparent;
    border: transparent;
    padding: 9px 20px;
    width: 208px;
    font-size: 16px !important;
}
                            
.twitterImg {
    width: 40px;
}

.twitterImg:hover {
    background-image: url('../Image/Twitter_Blue.png');
}

/* Facebook */
.fb_iframe_widget iframe {
    opacity: 0;
}

.fb_iframe_widget > span {
    background-position: left center, center;
    background-image: url('../image/fb_white.ico'), url('../image/facebook_white.png');
    background-repeat: no-repeat;
    background-size: 25px, 70px;
    background-color: #3c5dbc;
    width: 210px !important;
    height: 40px !important;
    border: 1px solid #3c5dbc;
    padding: 5px;
}

.fb_iframe_widget > span:hover {
    background-position: left center, center;
    background-image: url('../image/fb_blue.ico'), url('../image/facebook_blue.png');
    background-repeat: no-repeat;
    background-size: 25px, 70px;
    background-color: White;
}

/* Google */
#customBtn {
    display: inline-block;
    white-space: nowrap;
    border: 1px solid #3c5dbc;
    width: 210px;
    background-color: #3c5dbc;
    color: White;
    text-align: left;
}

#customBtn:hover {
    cursor: pointer;
    background-color: White;
    color: #3c5dbc;
}

#customBtn > .icon {
    background-image: url('../image/google-plus-logo-white.svg');
    background-repeat: no-repeat;
    background-size: 20px;
    width: 20px;
	height: 20px;
	margin: 10px;
	display: block;
}

#customBtn:hover > .icon {
    background-image: url('../image/google-plus-logo-blue.svg');
    background-repeat: no-repeat;
    background-size: 20px;
    width: 20px;
	height: 20px;
	margin: 10px;
	display: block;
}

span.buttonText {
    display: block;
    vertical-align: middle;
    padding: 7px 80px;
    font-size: 16px;
    margin-top: -38px;
}

.googleImg {
	width: 33px; 
	margin: 3px; 
	background-color: White;
	border-radius: 2px;
}

/* LinkedIn */
.IN-widget a {
	opacity: 0;
	width: 210px;
	height: 40px !important;
}

.IN-widget {
    background-position: 10px, center;
    background-image: url('../Image/linkedin-letters-white.svg'), url('../Image/LinkedIn_White.png');
    background-repeat: no-repeat;
    background-size: 20px, 65px;
    background-color: #3c5dbc;
    border: 1px solid #3c5dbc;
    color: White;
    width: 210px;
    height: 40px !important;
}

.IN-widget:hover {
    background-position: 10px, center;
    background-image: url('../Image/linkedin-letters-blue.svg'), url('../Image/LinkedIn_Blue.png');
    background-repeat: no-repeat;
    background-size: 20px, 65px;
    background-color: White;
	color: #3c5dbc;
	border: 1px solid #3c5dbc;
}
/* Social Network Authentication CSS - END */

.copyright {
	text-transform: uppercase;
	color: #333;
}

@media only screen and (max-device-width: 480px) {
    .nav-tabs {
        margin-bottom: 40px;
        width: 100%;
        margin-left: auto;
        margin-right: auto;
        text-align: center;
        border-bottom: none;
    }
}

@media only screen and (max-width: 480px) {
      .nav-tabs {
        margin-bottom: 40px;
        width: 100%;
        margin-left: auto;
        margin-right: auto;
        text-align: center;
        border-bottom: none;
    }
}


.loaderbg {
    background-color: rgba(0,0,0,0.1);
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.loader {
    top: 50%;
    left: 50%;
    position: absolute;
    border: 7px solid #f3f3f3;
    border-radius: 50%;
    border-top: 7px solid #3654a9;
    width: 60px;
    height: 60px;
    -webkit-animation: spin 2s linear infinite; /* Safari */
    animation: spin 2s linear infinite;
    margin: -30px 0px 0px -30px;
}

/* Safari */
@-webkit-keyframes spin {
    0% {
        -webkit-transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(360deg);
    }
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

.authSelectOption input[type=radio]
{
    -webkit-appearance: none;
    -moz-appearance: none;
}

.authSelectOption {
    margin-top:10px;
}

.authSelectOption label  
{
    font-family: Lato-Regular;
	font-size: 1.004em;
    display: block;
    color: #000;
    cursor: pointer;
}


.authSelectOption input[type="radio"].selectedOption
{
    border           : 0.1em solid #3C5DBC;
    background       : #3C5DBC;
    font-family      : Lato-Bold;
}

.authSelectOption input[type="radio"] {
	width: 1.25em;
	height: 1.25em;
	border: 0.1em solid #3C5DBC;
	border-radius: 0.625em;
	vertical-align: middle;
	line-height: 1.25em;
}

.selectAuth{
    padding-left: 10%;
}

.cmdAuthTitle{
    font-family: Lato-Black;
    color: #3c5dbc !important;
    font-size:1em;
}

.loading {
position: fixed;
z-index: 999;
height: 2em;
width: 2em;
overflow: show;
margin: auto;
top: 50%;
left: 50%;
margin: -30px 0px 0px -30px;
}

.loading:before {
content: '';
display: block;
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: rgba(0,0,0,0.3);
}


.loading:not(:required) {
/* hide "loading..." text */
font: 0/0 a;
color: transparent;
text-shadow: none;
background-color: transparent;
border: 0;

}

.loading:not(:required):after {
content: '';
display: block;
font-size: 10px;
width: 6em;
height: 6em;
/*margin-top: 10em !important;*/
-webkit-animation: spinner 1500ms infinite linear;
-moz-animation: spinner 1500ms infinite linear;
-ms-animation: spinner 1500ms infinite linear;
-o-animation: spinner 1500ms infinite linear;
animation: spinner 1500ms infinite linear;
 border: 7px solid #f3f3f3;
    border-radius: 50%;
    border-top: 7px solid #3654a9;
}

@-webkit-keyframes spinner {
0% {
-webkit-transform: rotate(0deg);
-moz-transform: rotate(0deg);
-ms-transform: rotate(0deg);
-o-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(360deg);
-moz-transform: rotate(360deg);
-ms-transform: rotate(360deg);
-o-transform: rotate(360deg);
transform: rotate(360deg);
}
}
@-moz-keyframes spinner {
0% {
-webkit-transform: rotate(0deg);
-moz-transform: rotate(0deg);
-ms-transform: rotate(0deg);
-o-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(360deg);
-moz-transform: rotate(360deg);
-ms-transform: rotate(360deg);
-o-transform: rotate(360deg);
transform: rotate(360deg);
}
}
@-o-keyframes spinner {
0% {
-webkit-transform: rotate(0deg);
-moz-transform: rotate(0deg);
-ms-transform: rotate(0deg);
-o-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(360deg);
-moz-transform: rotate(360deg);
-ms-transform: rotate(360deg);
-o-transform: rotate(360deg);
transform: rotate(360deg);
}
}
@keyframes spinner {
0% {
-webkit-transform: rotate(0deg);
-moz-transform: rotate(0deg);
-ms-transform: rotate(0deg);
-o-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(360deg);
-moz-transform: rotate(360deg);
-ms-transform: rotate(360deg);
-o-transform: rotate(360deg);
transform: rotate(360deg);
}
}


.authProgressBar{
    margin-bottom: 1%;
}

.wrapperModal-progress-bar {
    opacity: 1;
    display:inline-block;
    position:relative;
    padding: 5px;
    border: 3px solid #F1F1F2;
    border-left: white;
    border-right: white;
    border-top: white;
    margin-bottom:2%;
}

.bar0
{
    height: 10px; 
    width: 0px; 
    background-color: #DBE1F2;
}

.bar30
{
    height: 10px; 
    width: 27%; 
    background-color: #DBE1F2;
}

.bar100
{
    height: 10px; 
    width: 90%; 
    background-color: #DBE1F2;
}

.percent0
{
    text-align: left;
    font: 12px/24px Lato;
    font-weight: bold;
    letter-spacing: 0;
    color: #3C5DBC;
    opacity: 1;
    position:absolute;
    top: -1px;
    left: 0px;
    font-family: inherit;
    font-style: inherit;
    font-size: 0.85em;
}

.percent30
{
    text-align: left;
    font: 12px/24px Lato;
    font-weight: bold;
    letter-spacing: 0;
    color: #3C5DBC;
    opacity: 1;
    position:absolute;
    top: -1px;
    left: 28%;
    font-family: inherit;
    font-style: inherit;
    font-size: 0.85em;
}

.percent100
{
    text-align: left;
    font: 12px/24px Lato;
    font-weight: bold;
    letter-spacing: 0;
    color: #3C5DBC;
    opacity: 1;
    position:absolute;
    top: -1px;
    left: 91%;
    font-family: inherit;
    font-style: inherit;
    font-size: 0.85em;
}

.btn-back-modal {
    background-color: #F1F1F2;
    font-size: 1.004em;
    font-family: Lato-Bold;
    border: 0;
    color: #3C5DBC;
    text-transform: uppercase;
    padding: 2% 5% 2% 25%;
    background-image: url('../../Images/left_arrow.svg');
    background-position: 10% 50%;
    background-repeat: no-repeat;
    background-size: 12%;
}

.btn-back-modal:hover {
	background-color: #F1F1F2;
    font-family     : Lato-Bold;
    font-size       : 1.004em;
	border          : 0;
	color           : #3C5DBC;
	text-transform  : uppercase;
	padding         : 2% 5% 2% 25%;
	    background-image: url('../../Images/left_arrow.svg');
	background-position: 10% 50%;
	background-repeat: no-repeat;
	background-size : 12%;
}

.btn-back-modal:focus {
	background-color: #F1F1F2;
    font-family     : Lato-Bold;
    font-size       : 1.004em;
	border          : 0;
	color           : #3C5DBC;
	text-transform  : uppercase;
	/*padding         : 2% 5% 2% 25%;*/
    padding         : 2% 5% 2% 20%;
	    background-image: url('../../Images/left_arrow.svg');
	background-position: 10% 50%;
	background-repeat: no-repeat;
	background-size : 12%;
}

.btn-forward-modal {
	background-color: #3C5DBC;
	border          : 0;
    font-size       : 1.004em;
    font-family     : Lato-Bold;
	color           : #FFFFFF;
	text-transform  : uppercase;
	padding         : 2% 20% 2% 5%;
	background-image: url('../../Images/right_arrow.svg');
	background-position: 90% 50%;
	background-repeat: no-repeat;
	background-size : 12%;
}

.btn-forward-modal:hover {
	background-color: #3C5DBC;
	border          : 0;
    font-size       : 1.004em;
    font-family     : Lato-Bold;
	color           : #FFFFFF;
	text-transform  : uppercase;
	padding         : 2% 20% 2% 5%;
	background-image: url('../../Images/right_arrow.svg');
	background-position: 90% 50%;
	background-repeat: no-repeat;
	background-size : 12%;
}

.btn-forward-modal:focus {
	background-color: #3C5DBC;
	border          : 0;
    font-size       : 1.004em;
    font-family     : Lato-Bold;
	color           : #FFFFFF;
	text-transform  : uppercase;
	padding         : 2% 20% 2% 5%;
	background-image: url('../../Images/right_arrow.svg');
	background-position: 90% 50%;
	background-repeat: no-repeat;
	background-size : 12%;
}

.authSelectTitle {
    font-family     : Lato-Bold;
    font-size       : 1.04em;
    color           : #3C5DBC;
    margin-left     : 5%;
    margin-bottom   : 5%;
}


@media only screen and (max-device-width: 420px) {

    .btn-forward-modal{

        padding: 2% 11% 2% 5% !important;
    }

    .btn-back-modal{
        padding: 2% 5% 2% 15% !important;
    }

}